From b473922bac90983af4cae0cd4c5ece5c0a7f7beb Mon Sep 17 00:00:00 2001 From: artegoser Date: Tue, 23 Jan 2024 19:05:38 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20CIMEngin?= =?UTF-8?q?e/map@131d4285e94e5f3ee6439d54ad04d5f725421ea5=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.bundle.js | 7 ++++--- index.bundle.js.map | 2 +- index.css | 2 +- index.html | 4 ++-- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/index.bundle.js b/index.bundle.js index 3df9b95..3952abb 100644 --- a/index.bundle.js +++ b/index.bundle.js @@ -1,9 +1,10 @@ -var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var i={exports:{}};i.exports=function(){var e,t,i;function r(r,n){if(e)if(t){var o="self.onerror = function() { console.error('An error occurred while parsing the WebWorker bundle. This is most likely due to improper transpilation by Babel; please see https://docs.mapbox.com/mapbox-gl-js/guides/install/#transpiling'); }; var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk); self.onerror = null;",s={};e(s),i=n(s),"undefined"!=typeof window&&window&&window.URL&&window.URL.createObjectURL&&(i.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}else t=n;else e=n}r(["exports"],(function(e){var t="undefined"!=typeof self?self:{},i="2.15.0";let r;const n={API_URL:"https://api.mapbox.com",get API_URL_REGEX(){if(null==r){const e=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;try{r=null!=process.env.API_URL_REGEX?new RegExp(process.env.API_URL_REGEX):e}catch(t){r=e}}return r},get API_TILEJSON_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/v[0-9]*\/.*\.json.*$)/i},get API_SPRITE_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/styles\/v[0-9]*\/)(.*\/sprite.*\..*$)/i},get API_FONTS_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/fonts\/v[0-9]*\/)(.*\.pbf.*$)/i},get API_STYLE_REGEX(){return/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/styles\/v[0-9]*\/)(.*$)/i},get API_CDN_URL_REGEX(){return/^((https?:)?\/\/)?api\.mapbox\.c(n|om)(\/mapbox-gl-js\/)(.*$)/i},get EVENTS_URL(){if(!n.API_URL)return null;try{const e=new URL(n.API_URL);return"api.mapbox.cn"===e.hostname?"https://events.mapbox.cn/events/v2":"api.mapbox.com"===e.hostname?"https://events.mapbox.com/events/v2":null}catch(e){return null}},SESSION_PATH:"/map-sessions/v1",FEEDBACK_URL:"https://apps.mapbox.com/feedback",TILE_URL_VERSION:"v4",RASTER_URL_PREFIX:"raster/v1",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},o={supported:!1,testSupport:function(e){!l&&a&&(c?h(e):s=e)}};let s,a,l=!1,c=!1;function h(e){const t=e.createTexture();e.bindTexture(e.TEXTURE_2D,t);try{if(e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,a),e.isContextLost())return;o.supported=!0}catch(e){}e.deleteTexture(t),l=!0}t.document&&(a=t.document.createElement("img"),a.onload=function(){s&&h(s),s=null,c=!0},a.onerror=function(){l=!0,s=null},a.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");const u="01";function d(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var p=f;function f(e,t,i,r){this.cx=3*e,this.bx=3*(i-e)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*t,this.by=3*(r-t)-this.cy,this.ay=1-this.cy-this.by,this.p1x=e,this.p1y=t,this.p2x=i,this.p2y=r}f.prototype={sampleCurveX:function(e){return((this.ax*e+this.bx)*e+this.cx)*e},sampleCurveY:function(e){return((this.ay*e+this.by)*e+this.cy)*e},sampleCurveDerivativeX:function(e){return(3*this.ax*e+2*this.bx)*e+this.cx},solveCurveX:function(e,t){if(void 0===t&&(t=1e-6),e<0)return 0;if(e>1)return 1;for(var i=e,r=0;r<8;r++){var n=this.sampleCurveX(i)-e;if(Math.abs(n)n?s=i:a=i,i=.5*(a-s)+s;return i},solve:function(e,t){return this.sampleCurveY(this.solveCurveX(e,t))}};var m=d(p),_=g;function g(e,t){this.x=e,this.y=t}g.prototype={clone:function(){return new g(this.x,this.y)},add:function(e){return this.clone()._add(e)},sub:function(e){return this.clone()._sub(e)},multByPoint:function(e){return this.clone()._multByPoint(e)},divByPoint:function(e){return this.clone()._divByPoint(e)},mult:function(e){return this.clone()._mult(e)},div:function(e){return this.clone()._div(e)},rotate:function(e){return this.clone()._rotate(e)},rotateAround:function(e,t){return this.clone()._rotateAround(e,t)},matMult:function(e){return this.clone()._matMult(e)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(e){return this.x===e.x&&this.y===e.y},dist:function(e){return Math.sqrt(this.distSqr(e))},distSqr:function(e){var t=e.x-this.x,i=e.y-this.y;return t*t+i*i},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(e){return Math.atan2(this.y-e.y,this.x-e.x)},angleWith:function(e){return this.angleWithSep(e.x,e.y)},angleWithSep:function(e,t){return Math.atan2(this.x*t-this.y*e,this.x*e+this.y*t)},_matMult:function(e){var t=e[2]*this.x+e[3]*this.y;return this.x=e[0]*this.x+e[1]*this.y,this.y=t,this},_add:function(e){return this.x+=e.x,this.y+=e.y,this},_sub:function(e){return this.x-=e.x,this.y-=e.y,this},_mult:function(e){return this.x*=e,this.y*=e,this},_div:function(e){return this.x/=e,this.y/=e,this},_multByPoint:function(e){return this.x*=e.x,this.y*=e.y,this},_divByPoint:function(e){return this.x/=e.x,this.y/=e.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var e=this.y;return this.y=this.x,this.x=-e,this},_rotate:function(e){var t=Math.cos(e),i=Math.sin(e),r=i*this.x+t*this.y;return this.x=t*this.x-i*this.y,this.y=r,this},_rotateAround:function(e,t){var i=Math.cos(e),r=Math.sin(e),n=t.y+r*(this.x-t.x)+i*(this.y-t.y);return this.x=t.x+i*(this.x-t.x)-r*(this.y-t.y),this.y=n,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},g.convert=function(e){return e instanceof g?e:Array.isArray(e)?new g(e[0],e[1]):e};var y=d(_);const x=Math.PI/180,v=180/Math.PI;function b(e){return e*x}function w(e){return e*v}const T=[[0,0],[1,0],[1,1],[0,1]];function E(e){if(e<=0)return 0;if(e>=1)return 1;const t=e*e,i=t*e;return 4*(e<.5?i:3*(e-t)+i-.75)}function A(e,t,i,r){const n=new m(e,t,i,r);return function(e){return n.solve(e)}}const S=A(.25,.1,.25,1);function M(e,t,i){return Math.min(i,Math.max(t,e))}function C(e,t,i){return(i=M((i-e)/(t-e),0,1))*i*(3-2*i)}function k(e,t,i){const r=i-t,n=((e-t)%r+r)%r+t;return n===t?i:n}function I(e,t,i){if(!e.length)return i(null,[]);let r=e.length;const n=new Array(e.length);let o=null;e.forEach(((e,s)=>{t(e,((e,t)=>{e&&(o=e),n[s]=t,0==--r&&i(o,n)}))}))}function P(e){const t=[];for(const i in e)t.push(e[i]);return t}function z(e,...t){for(const i of t)for(const t in i)e[t]=i[t];return e}let L=1;function D(){return L++}function R(){return function e(t){return t?(t^Math.random()*(16>>t/4)).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,e)}()}function B(e){return e<=1?1:Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))}function O(e){return!!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e)}function F(e,t){e.forEach((e=>{t[e]&&(t[e]=t[e].bind(t))}))}function j(e,t){return-1!==e.indexOf(t,e.length-t.length)}function U(e,t,i){const r={};for(const n in e)r[n]=t.call(i||this,e[n],n,e);return r}function N(e,t,i){const r={};for(const n in e)t.call(i||this,e[n],n,e)&&(r[n]=e[n]);return r}function V(e){return Array.isArray(e)?e.map(V):"object"==typeof e&&e?U(e,V):e}const $={};function G(e){$[e]||("undefined"!=typeof console&&console.warn(e),$[e]=!0)}function q(e,t,i){return(i.y-e.y)*(t.x-e.x)>(t.y-e.y)*(i.x-e.x)}function Z(e){let t=0;for(let i,r,n=0,o=e.length,s=o-1;n@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,((e,i,r,n)=>{const o=r||n;return t[i]=!o||o.toLowerCase(),""})),t["max-age"]){const e=parseInt(t["max-age"],10);isNaN(e)?delete t["max-age"]:t["max-age"]=e}return t}let X=null;function K(e){if(null==X){const t=e.navigator?e.navigator.userAgent:null;X=!!e.safari||!(!t||!(/\b(iPad|iPhone|iPod)\b/.test(t)||t.match("Safari")&&!t.match("Chrome")))}return X}function Y(e){try{const i=t[e];return i.setItem("_mapbox_test_",1),i.removeItem("_mapbox_test_"),!0}catch(e){return!1}}function J(e,t){return[e[4*t],e[4*t+1],e[4*t+2],e[4*t+3]]}const Q="mapbox-tiles";let ee,te,ie=500,re=50;function ne(){try{return t.caches}catch(e){}}function oe(){ne()&&!ee&&(ee=t.caches.open(Q))}function se(e){const t=e.indexOf("?");if(t<0)return e;const i=function(e){const t=e.indexOf("?");return t>0?e.slice(t+1).split("&"):[]}(e),r=i.filter((e=>{const t=e.split("=");return"language"===t[0]||"worldview"===t[0]}));return r.length?`${e.slice(0,t)}?${r.join("&")}`:e.slice(0,t)}let ae=1/0;const le={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};"function"==typeof Object.freeze&&Object.freeze(le);class ce extends Error{constructor(e,t,i){401===t&&ve(i)&&(e+=": you may have provided an invalid Mapbox access token. See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes"),super(e),this.status=t,this.url=i}toString(){return`${this.name}: ${this.message} (${this.status}): ${this.url}`}}const he=W()?()=>self.worker&&self.worker.referrer:()=>("blob:"===t.location.protocol?t.parent:t).location.href,ue=function(e,i){if(!(/^file:/.test(r=e.url)||/^file:/.test(he())&&!/^\w+:/.test(r))){if(t.fetch&&t.Request&&t.AbortController&&t.Request.prototype.hasOwnProperty("signal"))return function(e,i){const r=new t.AbortController,n=new t.Request(e.url,{method:e.method||"GET",body:e.body,credentials:e.credentials,headers:e.headers,referrer:he(),referrerPolicy:e.referrerPolicy,signal:r.signal});let o=!1,s=!1;const a=(l=n.url).indexOf("sku=")>0&&ve(l);var l;"json"===e.type&&n.headers.set("Accept","application/json");const c=(r,o,l)=>{if(s)return;if(r&&"SecurityError"!==r.message&&G(r.toString()),o&&l)return h(o);const c=Date.now();t.fetch(n).then((t=>{if(t.ok){const e=a?t.clone():null;return h(t,e,c)}return i(new ce(t.statusText,t.status,e.url))})).catch((t=>{"AbortError"!==t.name&&i(new Error(`${t.message} ${e.url}`))}))},h=(r,a,l)=>{("arrayBuffer"===e.type?r.arrayBuffer():"json"===e.type?r.json():r.text()).then((e=>{s||(a&&l&&function(e,i,r){if(oe(),!ee)return;const n={status:i.status,statusText:i.statusText,headers:new t.Headers};i.headers.forEach(((e,t)=>n.headers.set(t,e)));const o=H(i.headers.get("Cache-Control")||"");if(o["no-store"])return;o["max-age"]&&n.headers.set("Expires",new Date(r+1e3*o["max-age"]).toUTCString());const s=n.headers.get("Expires");s&&(new Date(s).getTime()-r<42e4||function(e,t){if(void 0===te)try{new Response(new ReadableStream),te=!0}catch(e){te=!1}te?t(e.body):e.blob().then(t)}(i,(i=>{const r=new t.Response(i,n);oe(),ee&&ee.then((t=>t.put(se(e.url),r))).catch((e=>G(e.message)))})))}(n,a,l),o=!0,i(null,e,r.headers.get("Cache-Control"),r.headers.get("Expires")))})).catch((e=>{s||i(new Error(e.message))}))};return a?function(e,t){if(oe(),!ee)return t(null);const i=se(e.url);ee.then((e=>{e.match(i).then((r=>{const n=function(e){if(!e)return!1;const t=new Date(e.headers.get("Expires")||0),i=H(e.headers.get("Cache-Control")||"");return t>Date.now()&&!i["no-cache"]}(r);e.delete(i),n&&e.put(i,r.clone()),t(null,r,n)})).catch(t)})).catch(t)}(n,c):c(null,null),{cancel:()=>{s=!0,o||r.abort()}}}(e,i);if(W()&&self.worker&&self.worker.actor)return self.worker.actor.send("getResource",e,i,void 0,!0)}var r;return function(e,i){const r=new t.XMLHttpRequest;r.open(e.method||"GET",e.url,!0),"arrayBuffer"===e.type&&(r.responseType="arraybuffer");for(const t in e.headers)r.setRequestHeader(t,e.headers[t]);return"json"===e.type&&(r.responseType="text",r.setRequestHeader("Accept","application/json")),r.withCredentials="include"===e.credentials,r.onerror=()=>{i(new Error(r.statusText))},r.onload=()=>{if((r.status>=200&&r.status<300||0===r.status)&&null!==r.response){let t=r.response;if("json"===e.type)try{t=JSON.parse(r.response)}catch(e){return i(e)}i(null,t,r.getResponseHeader("Cache-Control"),r.getResponseHeader("Expires"))}else i(new ce(r.statusText,r.status,e.url))},r.send(e.body),{cancel:()=>r.abort()}}(e,i)},de=function(e,t){return ue(z(e,{type:"arrayBuffer"}),t)};function pe(e){const i=t.document.createElement("a");return i.href=e,i.protocol===t.document.location.protocol&&i.host===t.document.location.host}const fe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";let me,_e;me=[],_e=0;const ge=function(e,i){if(o.supported&&(e.headers||(e.headers={}),e.headers.accept="image/webp,*/*"),_e>=n.MAX_PARALLEL_IMAGE_REQUESTS){const t={requestParameters:e,callback:i,cancelled:!1,cancel(){this.cancelled=!0}};return me.push(t),t}_e++;let r=!1;const s=()=>{if(!r)for(r=!0,_e--;me.length&&_e{s(),e?i(e):r&&(t.createImageBitmap?function(e,i){const r=new t.Blob([new Uint8Array(e)],{type:"image/png"});t.createImageBitmap(r).then((e=>{i(null,e)})).catch((e=>{i(new Error(`Could not load image because of ${e.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`))}))}(r,((e,t)=>i(e,t,n,o))):function(e,i){const r=new t.Image,n=t.URL;r.onload=()=>{i(null,r),n.revokeObjectURL(r.src),r.onload=null,t.requestAnimationFrame((()=>{r.src=fe}))},r.onerror=()=>i(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));const o=new t.Blob([new Uint8Array(e)],{type:"image/png"});r.src=e.byteLength?n.createObjectURL(o):fe}(r,((e,t)=>i(e,t,n,o))))}));return{cancel:()=>{a.cancel(),s()}}},ye="NO_ACCESS_TOKEN";function xe(e){return 0===e.indexOf("mapbox:")}function ve(e){return n.API_URL_REGEX.test(e)}function be(e){return n.API_CDN_URL_REGEX.test(e)}function we(e){return n.API_STYLE_REGEX.test(e)&&!Te(e)}function Te(e){return n.API_SPRITE_REGEX.test(e)}const Ee=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Ae(e){const t=e.match(Ee);if(!t)throw new Error("Unable to parse URL object");return{protocol:t[1],authority:t[2],path:t[3]||"/",params:t[4]?t[4].split("&"):[]}}function Se(e){const t=e.params.length?`?${e.params.join("&")}`:"";return`${e.protocol}://${e.authority}${e.path}${t}`}const Me="mapbox.eventData";function Ce(e){if(!e)return null;const i=e.split(".");if(!i||3!==i.length)return null;try{return JSON.parse(decodeURIComponent(t.atob(i[1]).split("").map((e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2))).join("")))}catch(e){return null}}class ke{constructor(e){this.type=e,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null}getStorageKey(e){const i=Ce(n.ACCESS_TOKEN);let r="";return r=i&&i.u?t.btoa(encodeURIComponent(i.u).replace(/%([0-9A-F]{2})/g,((e,t)=>String.fromCharCode(Number("0x"+t))))):n.ACCESS_TOKEN||"",e?`${Me}.${e}:${r}`:`${Me}:${r}`}fetchEventData(){const e=Y("localStorage"),i=this.getStorageKey(),r=this.getStorageKey("uuid");if(e)try{const e=t.localStorage.getItem(i);e&&(this.eventData=JSON.parse(e));const n=t.localStorage.getItem(r);n&&(this.anonId=n)}catch(e){G("Unable to read from LocalStorage")}}saveEventData(){const e=Y("localStorage"),i=this.getStorageKey(),r=this.getStorageKey("uuid");if(e)try{t.localStorage.setItem(r,this.anonId),Object.keys(this.eventData).length>=1&&t.localStorage.setItem(i,JSON.stringify(this.eventData))}catch(e){G("Unable to write to LocalStorage")}}processRequests(e){}postEvent(e,t,i,r){if(!n.EVENTS_URL)return;const o=Ae(n.EVENTS_URL);o.params.push(`access_token=${r||n.ACCESS_TOKEN||""}`);const s={event:this.type,created:new Date(e).toISOString()},a=t?z(s,t):s,l={url:Se(o),headers:{"Content-Type":"text/plain"},body:JSON.stringify([a])};this.pendingRequest=function(e,t){return ue(z(e,{method:"POST"}),t)}(l,(e=>{this.pendingRequest=null,i(e),this.saveEventData(),this.processRequests(r)}))}queueRequest(e,t){this.queue.push(e),this.processRequests(t)}}const Ie=new class extends ke{constructor(e){super("appUserTurnstile"),this._customAccessToken=e}postTurnstileEvent(e,t){n.EVENTS_URL&&n.ACCESS_TOKEN&&Array.isArray(e)&&e.some((e=>xe(e)||ve(e)))&&this.queueRequest(Date.now(),t)}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();const t=Ce(n.ACCESS_TOKEN),r=t?t.u:n.ACCESS_TOKEN;let o=r!==this.eventData.tokenU;O(this.anonId)||(this.anonId=R(),o=!0);const s=this.queue.shift();if(this.eventData.lastSuccess){const e=new Date(this.eventData.lastSuccess),t=new Date(s),i=(s-this.eventData.lastSuccess)/864e5;o=o||i>=1||i<-1||e.getDate()!==t.getDate()}else o=!0;o?this.postEvent(s,{sdkIdentifier:"mapbox-gl-js",sdkVersion:i,skuId:u,"enabled.telemetry":!1,userId:this.anonId},(e=>{e||(this.eventData.lastSuccess=s,this.eventData.tokenU=r)}),e):this.processRequests()}},Pe=Ie.postTurnstileEvent.bind(Ie),ze=new class extends ke{constructor(){super("map.load"),this.success={},this.skuToken=""}postMapLoadEvent(e,t,i,r){this.skuToken=t,this.errorCb=r,n.EVENTS_URL&&(i||n.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},i):this.errorCb(new Error(ye)))}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:r}=this.queue.shift();t&&this.success[t]||(this.anonId||this.fetchEventData(),O(this.anonId)||(this.anonId=R()),this.postEvent(r,{sdkIdentifier:"mapbox-gl-js",sdkVersion:i,skuId:u,skuToken:this.skuToken,userId:this.anonId},(e=>{e?this.errorCb(e):t&&(this.success[t]=!0)}),e))}},Le=ze.postMapLoadEvent.bind(ze),De=new class extends ke{constructor(){super("gljs.performance")}postPerformanceEvent(e,t){n.EVENTS_URL&&(e||n.ACCESS_TOKEN)&&this.queueRequest({timestamp:Date.now(),performanceData:t},e)}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{timestamp:r,performanceData:n}=this.queue.shift(),o=function(e){const r=t.performance.getEntriesByType("resource"),n=t.performance.getEntriesByType("mark"),o=function(e){const t={};if(e)for(const i in e)if("other"!==i)for(const r of e[i]){const e=`${i}ResolveRangeMin`,n=`${i}ResolveRangeMax`,o=`${i}RequestCount`,s=`${i}RequestCachedCount`;t[e]=Math.min(t[e]||1/0,r.startTime),t[n]=Math.max(t[n]||-1/0,r.responseEnd);const a=e=>{void 0===t[e]&&(t[e]=0),++t[e]};void 0!==r.transferSize&&0===r.transferSize&&a(s),a(o)}return t}(function(e,t){const i={};if(e)for(const r of e){const e=t(r);void 0===i[e]&&(i[e]=[]),i[e].push(r)}return i}(r,Ne)),s=t.devicePixelRatio,a=t.navigator.connection||t.navigator.mozConnection||t.navigator.webkitConnection,l={counters:[],metadata:[],attributes:[]},c=(e,t,i)=>{null!=i&&e.push({name:t,value:i.toString()})};for(const e in o)c(l.counters,e,o[e]);if(e.interactionRange[0]!==1/0&&e.interactionRange[1]!==-1/0&&(c(l.counters,"interactionRangeMin",e.interactionRange[0]),c(l.counters,"interactionRangeMax",e.interactionRange[1])),n)for(const e of Object.keys(je)){const t=je[e],i=n.find((e=>e.name===t));i&&c(l.counters,t,i.startTime)}return c(l.counters,"visibilityHidden",e.visibilityHidden),c(l.attributes,"style",function(e){if(e)for(const t of e){const e=t.name.split("?")[0];if(we(e)){const t=e.split("/").slice(-2);if(2===t.length)return`mapbox://styles/${t[0]}/${t[1]}`}}}(r)),c(l.attributes,"terrainEnabled",e.terrainEnabled?"true":"false"),c(l.attributes,"fogEnabled",e.fogEnabled?"true":"false"),c(l.attributes,"projection",e.projection),c(l.attributes,"zoom",e.zoom),c(l.metadata,"devicePixelRatio",s),c(l.metadata,"connectionEffectiveType",a?a.effectiveType:void 0),c(l.metadata,"navigatorUserAgent",t.navigator.userAgent),c(l.metadata,"screenWidth",t.screen.width),c(l.metadata,"screenHeight",t.screen.height),c(l.metadata,"windowWidth",t.innerWidth),c(l.metadata,"windowHeight",t.innerHeight),c(l.metadata,"mapWidth",e.width/s),c(l.metadata,"mapHeight",e.height/s),c(l.metadata,"webglRenderer",e.renderer),c(l.metadata,"webglVendor",e.vendor),c(l.metadata,"sdkVersion",i),c(l.metadata,"sdkIdentifier","mapbox-gl-js"),l}(n);for(const e of o.metadata);for(const e of o.counters);for(const e of o.attributes);this.postEvent(r,o,(()=>{}),e)}},Re=De.postPerformanceEvent.bind(De),Be=new class extends ke{constructor(){super("map.auth"),this.success={},this.skuToken=""}getSession(e,t,i,r){if(!n.API_URL||!n.SESSION_PATH)return;const o=Ae(n.API_URL+n.SESSION_PATH);o.params.push(`sku=${t||""}`),o.params.push(`access_token=${r||n.ACCESS_TOKEN||""}`);const s={url:Se(o),headers:{"Content-Type":"text/plain"}};this.pendingRequest=function(e,t){return ue(z(e,{method:"GET"}),t)}(s,(e=>{this.pendingRequest=null,i(e),this.saveEventData(),this.processRequests(r)}))}getSessionAPI(e,t,i,r){this.skuToken=t,this.errorCb=r,n.SESSION_PATH&&n.API_URL&&(i||n.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},i):this.errorCb(new Error(ye)))}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:i}=this.queue.shift();t&&this.success[t]||this.getSession(i,this.skuToken,(e=>{e?this.errorCb(e):t&&(this.success[t]=!0)}),e)}},Oe=Be.getSessionAPI.bind(Be),Fe=new Set,je={create:"create",load:"load",fullLoad:"fullLoad"},Ue={mark(e){t.performance.mark(e)},measure(e,i,r){t.performance.measure(e,i,r)}};function Ne(e){const t=e.name.split("?")[0];return be(t)&&t.includes("mapbox-gl.js")?"javascript":be(t)&&t.includes("mapbox-gl.css")?"css":function(e){return n.API_FONTS_REGEX.test(e)}(t)?"fontRange":Te(t)?"sprite":we(t)?"style":function(e){return n.API_TILEJSON_REGEX.test(e)}(t)?"tilejson":"other"}const Ve=t.performance;function $e(e){const t=e?e.url.toString():void 0;return Ve.getEntriesByName(t)}let Ge,qe,Ze,We;const He={now:()=>void 0!==Ze?Ze:t.performance.now(),setNow(e){Ze=e},restoreNow(){Ze=void 0},frame(e){const i=t.requestAnimationFrame(e);return{cancel:()=>t.cancelAnimationFrame(i)}},getImageData(e,i=0){const{width:r,height:n}=e;We||(We=t.document.createElement("canvas"));const o=We.getContext("2d",{willReadFrequently:!0});if(!o)throw new Error("failed to create canvas 2d context");return(r>We.width||n>We.height)&&(We.width=r,We.height=n),o.clearRect(-i,-i,r+2*i,n+2*i),o.drawImage(e,0,0,r,n),o.getImageData(-i,-i,r+2*i,n+2*i)},resolveURL:e=>(Ge||(Ge=t.document.createElement("a")),Ge.href=e,Ge.href),get devicePixelRatio(){return t.devicePixelRatio},get prefersReducedMotion(){return!!t.matchMedia&&(null==qe&&(qe=t.matchMedia("(prefers-reduced-motion: reduce)")),qe.matches)}};function Xe(e,t,i){i[e]&&-1!==i[e].indexOf(t)||(i[e]=i[e]||[],i[e].push(t))}function Ke(e,t,i){if(i&&i[e]){const r=i[e].indexOf(t);-1!==r&&i[e].splice(r,1)}}class Ye{constructor(e,t={}){z(this,t),this.type=e}}class Je extends Ye{constructor(e,t={}){super("error",z({error:e},t))}}class Qe{on(e,t){return this._listeners=this._listeners||{},Xe(e,t,this._listeners),this}off(e,t){return Ke(e,t,this._listeners),Ke(e,t,this._oneTimeListeners),this}once(e,t){return t?(this._oneTimeListeners=this._oneTimeListeners||{},Xe(e,t,this._oneTimeListeners),this):new Promise((t=>this.once(e,t)))}fire(e,t){"string"==typeof e&&(e=new Ye(e,t||{}));const i=e.type;if(this.listens(i)){e.target=this;const t=this._listeners&&this._listeners[i]?this._listeners[i].slice():[];for(const i of t)i.call(this,e);const r=this._oneTimeListeners&&this._oneTimeListeners[i]?this._oneTimeListeners[i].slice():[];for(const t of r)Ke(i,t,this._oneTimeListeners),t.call(this,e);const n=this._eventedParent;n&&(z(e,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),n.fire(e))}else e instanceof Je&&console.error(e.error);return this}listens(e){return!!(this._listeners&&this._listeners[e]&&this._listeners[e].length>0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e))}setEventedParent(e,t){return this._eventedParent=e,this._eventedParentData=t,this}}var et=JSON.parse('{"$version":8,"$root":{"version":{"required":true,"type":"enum","values":[8]},"name":{"type":"string"},"metadata":{"type":"*"},"center":{"type":"array","value":"number"},"zoom":{"type":"number"},"bearing":{"type":"number","default":0,"period":360,"units":"degrees"},"pitch":{"type":"number","default":0,"units":"degrees"},"light":{"type":"light"},"terrain":{"type":"terrain"},"fog":{"type":"fog"},"sources":{"required":true,"type":"sources"},"sprite":{"type":"string"},"glyphs":{"type":"string"},"transition":{"type":"transition"},"projection":{"type":"projection"},"layers":{"required":true,"type":"array","value":"layer"}},"sources":{"*":{"type":"source"}},"source":["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],"source_vector":{"type":{"required":true,"type":"enum","values":{"vector":{}}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"scheme":{"type":"enum","values":{"xyz":{},"tms":{}},"default":"xyz"},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"attribution":{"type":"string"},"promoteId":{"type":"promoteId"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster":{"type":{"required":true,"type":"enum","values":{"raster":{}}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512,"units":"pixels"},"scheme":{"type":"enum","values":{"xyz":{},"tms":{}},"default":"xyz"},"attribution":{"type":"string"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_dem":{"type":{"required":true,"type":"enum","values":{"raster-dem":{}}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512,"units":"pixels"},"attribution":{"type":"string"},"encoding":{"type":"enum","values":{"terrarium":{},"mapbox":{}},"default":"mapbox"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_geojson":{"type":{"required":true,"type":"enum","values":{"geojson":{}}},"data":{"type":"*"},"maxzoom":{"type":"number","default":18},"attribution":{"type":"string"},"buffer":{"type":"number","default":128,"maximum":512,"minimum":0},"filter":{"type":"*"},"tolerance":{"type":"number","default":0.375},"cluster":{"type":"boolean","default":false},"clusterRadius":{"type":"number","default":50,"minimum":0},"clusterMaxZoom":{"type":"number"},"clusterMinPoints":{"type":"number"},"clusterProperties":{"type":"*"},"lineMetrics":{"type":"boolean","default":false},"generateId":{"type":"boolean","default":false},"promoteId":{"type":"promoteId"}},"source_video":{"type":{"required":true,"type":"enum","values":{"video":{}}},"urls":{"required":true,"type":"array","value":"string"},"coordinates":{"required":true,"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"source_image":{"type":{"required":true,"type":"enum","values":{"image":{}}},"url":{"required":true,"type":"string"},"coordinates":{"required":true,"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"layer":{"id":{"type":"string","required":true},"type":{"type":"enum","values":{"fill":{},"line":{},"symbol":{},"circle":{},"heatmap":{},"fill-extrusion":{},"raster":{},"hillshade":{},"background":{},"sky":{}},"required":true},"metadata":{"type":"*"},"source":{"type":"string"},"source-layer":{"type":"string"},"minzoom":{"type":"number","minimum":0,"maximum":24},"maxzoom":{"type":"number","minimum":0,"maximum":24},"filter":{"type":"filter"},"layout":{"type":"layout"},"paint":{"type":"paint"}},"layout":["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background","layout_sky"],"layout_background":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_sky":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_fill":{"fill-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_circle":{"circle-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_heatmap":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_fill-extrusion":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"},"fill-extrusion-edge-radius":{"type":"number","private":true,"default":0,"minimum":0,"maximum":1,"property-type":"constant"}},"layout_line":{"line-cap":{"type":"enum","values":{"butt":{},"round":{},"square":{}},"default":"butt","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-join":{"type":"enum","values":{"bevel":{},"round":{},"miter":{}},"default":"miter","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{"type":"number","default":2,"requires":[{"line-join":"miter"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-round-limit":{"type":"number","default":1.05,"requires":[{"line-join":"round"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_symbol":{"symbol-placement":{"type":"enum","values":{"point":{},"line":{},"line-center":{}},"default":"point","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"symbol-spacing":{"type":"number","default":250,"minimum":1,"units":"pixels","requires":[{"symbol-placement":"line"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{"type":"boolean","default":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{"type":"number","expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{"type":"enum","values":{"auto":{},"viewport-y":{},"source":{}},"default":"auto","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{"type":"boolean","default":false,"requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{"type":"boolean","default":false,"requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-optional":{"type":"boolean","default":false,"requires":["icon-image","text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-size":{"type":"number","default":1,"minimum":0,"units":"factor of the original icon size","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{"type":"enum","values":{"none":{},"width":{},"height":{},"both":{}},"default":"none","requires":["icon-image","text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{"type":"array","value":"number","length":4,"default":[0,0,0,0],"units":"pixels","requires":["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-image":{"type":"resolvedImage","tokens":true,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{"type":"number","default":0,"period":360,"units":"degrees","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{"type":"number","default":2,"minimum":0,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{"type":"boolean","default":false,"requires":["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"icon-offset":{"type":"array","value":"number","length":2,"default":[0,0],"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{"type":"enum","values":{"center":{},"left":{},"right":{},"top":{},"bottom":{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"default":"center","requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{"type":"enum","values":{"map":{},"viewport":{},"auto":{}},"default":"auto","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-field":{"type":"formatted","default":"","tokens":true,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-font":{"type":"array","value":"string","default":["Open Sans Regular","Arial Unicode MS Regular"],"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-size":{"type":"number","default":16,"minimum":0,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{"type":"number","default":10,"minimum":0,"units":"ems","requires":["text-field",{"symbol-placement":["point"]}],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{"type":"number","default":1.2,"units":"ems","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-letter-spacing":{"type":"number","default":0,"units":"ems","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-justify":{"type":"enum","values":{"auto":{},"left":{},"center":{},"right":{}},"default":"center","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{"type":"number","units":"ems","default":0,"requires":["text-field"],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["zoom","feature"]}},"text-variable-anchor":{"type":"array","value":"enum","values":{"center":{},"left":{},"right":{},"top":{},"bottom":{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"requires":["text-field",{"symbol-placement":["point"]}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-anchor":{"type":"enum","values":{"center":{},"left":{},"right":{},"top":{},"bottom":{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},"default":"center","requires":["text-field",{"!":"text-variable-anchor"}],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{"type":"number","default":45,"units":"degrees","requires":["text-field",{"symbol-placement":["line","line-center"]}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-writing-mode":{"type":"array","value":"enum","values":{"horizontal":{},"vertical":{}},"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-rotate":{"type":"number","default":0,"period":360,"units":"degrees","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-padding":{"type":"number","default":2,"minimum":0,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-keep-upright":{"type":"boolean","default":true,"requires":["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-transform":{"type":"enum","values":{"none":{},"uppercase":{},"lowercase":{}},"default":"none","requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-offset":{"type":"array","value":"number","units":"ems","length":2,"default":[0,0],"requires":["text-field",{"!":"text-radial-offset"}],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{"type":"boolean","default":false,"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{"type":"boolean","default":false,"requires":["text-field"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-optional":{"type":"boolean","default":false,"requires":["text-field","icon-image"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_raster":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"layout_hillshade":{"visibility":{"type":"enum","values":{"visible":{},"none":{}},"default":"visible","property-type":"constant"}},"filter":{"type":"array","value":"*"},"filter_symbol":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature","pitch","distance-from-center"]}},"filter_fill":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_line":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_circle":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_fill-extrusion":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_heatmap":{"type":"boolean","default":false,"transition":false,"property-type":"data-driven","expression":{"interpolated":false,"parameters":["zoom","feature"]}},"filter_operator":{"type":"enum","values":{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},"in":{},"!in":{},"all":{},"any":{},"none":{},"has":{},"!has":{},"within":{}}},"geometry_type":{"type":"enum","values":{"Point":{},"LineString":{},"Polygon":{}}},"function":{"expression":{"type":"expression"},"stops":{"type":"array","value":"function_stop"},"base":{"type":"number","default":1,"minimum":0},"property":{"type":"string","default":"$zoom"},"type":{"type":"enum","values":{"identity":{},"exponential":{},"interval":{},"categorical":{}},"default":"exponential"},"colorSpace":{"type":"enum","values":{"rgb":{},"lab":{},"hcl":{}},"default":"rgb"},"default":{"type":"*","required":false}},"function_stop":{"type":"array","minimum":0,"maximum":24,"value":["number","color"],"length":2},"expression":{"type":"array","value":"*","minimum":1},"fog":{"range":{"type":"array","default":[0.5,10],"minimum":-20,"maximum":20,"length":2,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"high-color":{"type":"color","property-type":"data-constant","default":"#245cdf","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"space-color":{"type":"color","property-type":"data-constant","default":["interpolate",["linear"],["zoom"],4,"#010b19",7,"#367ab9"],"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"horizon-blend":{"type":"number","property-type":"data-constant","default":["interpolate",["linear"],["zoom"],4,0.2,7,0.1],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"star-intensity":{"type":"number","property-type":"data-constant","default":["interpolate",["linear"],["zoom"],5,0.35,6,0],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"light":{"anchor":{"type":"enum","default":"viewport","values":{"map":{},"viewport":{}},"property-type":"data-constant","transition":false,"expression":{"interpolated":false,"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"intensity":{"type":"number","property-type":"data-constant","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"projection":{"name":{"type":"enum","values":{"albers":{},"equalEarth":{},"equirectangular":{},"lambertConformalConic":{},"mercator":{},"naturalEarth":{},"winkelTripel":{},"globe":{}},"default":"mercator","required":true},"center":{"type":"array","length":2,"value":"number","property-type":"data-constant","minimum":[-180,-90],"maximum":[180,90],"transition":false,"requires":[{"name":["albers","lambertConformalConic"]}]},"parallels":{"type":"array","length":2,"value":"number","property-type":"data-constant","minimum":[-90,-90],"maximum":[90,90],"transition":false,"requires":[{"name":["albers","lambertConformalConic"]}]}},"terrain":{"source":{"type":"string","required":true},"exaggeration":{"type":"number","property-type":"data-constant","default":1,"minimum":0,"maximum":1000,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true,"requires":["source"]}},"paint":["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background","paint_sky"],"paint_fill":{"fill-antialias":{"type":"boolean","default":true,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"fill-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"fill-pattern"}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{"type":"color","transition":true,"requires":[{"!":"fill-pattern"},{"fill-antialias":true}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["fill-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"fill-pattern":{"type":"resolvedImage","transition":false,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"fill-extrusion-pattern"}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["fill-extrusion-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{"type":"resolvedImage","transition":false,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-extrusion-height":{"type":"number","default":0,"minimum":0,"units":"meters","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{"type":"number","default":0,"minimum":0,"units":"meters","transition":true,"requires":["fill-extrusion-height"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{"type":"boolean","default":true,"transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-ambient-occlusion-intensity":{"property-type":"data-constant","type":"number","private":true,"default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-radius":{"property-type":"data-constant","type":"number","private":true,"default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true,"requires":["fill-extrusion-edge-radius"]},"fill-extrusion-rounded-roof":{"type":"boolean","default":true,"requires":["fill-extrusion-edge-radius"],"transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_line":{"line-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"line-pattern"}],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["line-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"line-width":{"type":"number","default":1,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{"type":"number","default":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{"type":"array","value":"number","minimum":0,"transition":false,"units":"line widths","requires":[{"!":"line-pattern"}],"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-pattern":{"type":"resolvedImage","transition":false,"expression":{"interpolated":false,"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-gradient":{"type":"color","transition":false,"requires":[{"!":"line-pattern"},{"source":"geojson","has":{"lineMetrics":true}}],"expression":{"interpolated":true,"parameters":["line-progress"]},"property-type":"color-ramp"},"line-trim-offset":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[0,0],"maximum":[1,1],"transition":false,"requires":[{"source":"geojson","has":{"lineMetrics":true}}],"property-type":"constant"}},"paint_circle":{"circle-radius":{"type":"number","default":5,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["circle-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{"type":"enum","values":{"map":{},"viewport":{}},"default":"viewport","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"}},"paint_heatmap":{"heatmap-radius":{"type":"number","default":30,"minimum":1,"transition":true,"units":"pixels","expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{"type":"number","default":1,"minimum":0,"transition":false,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"heatmap-color":{"type":"color","default":["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",0.1,"royalblue",0.3,"cyan",0.5,"lime",0.7,"yellow",1,"red"],"transition":false,"expression":{"interpolated":true,"parameters":["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_symbol":{"icon-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{"type":"color","default":"#000000","transition":true,"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","transition":true,"requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","requires":["icon-image"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["icon-image","icon-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"text-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{"type":"color","default":"#000000","transition":true,"overridable":true,"requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","transition":true,"requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"units":"pixels","requires":["text-field"],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"map","requires":["text-field","text-translate"],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_raster":{"raster-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{"type":"number","default":0,"period":360,"transition":true,"units":"degrees","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-resampling":{"type":"enum","values":{"linear":{},"nearest":{}},"default":"linear","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{"type":"number","default":300,"minimum":0,"transition":false,"units":"milliseconds","expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_hillshade":{"hillshade-illumination-direction":{"type":"number","default":335,"minimum":0,"maximum":359,"transition":false,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{"type":"enum","values":{"map":{},"viewport":{}},"default":"viewport","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{"type":"number","default":0.5,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{"type":"color","default":"#FFFFFF","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_background":{"background-color":{"type":"color","default":"#000000","transition":true,"requires":[{"!":"background-pattern"}],"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"background-pattern":{"type":"resolvedImage","transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"background-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_sky":{"sky-type":{"type":"enum","values":{"gradient":{},"atmosphere":{}},"default":"atmosphere","expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun":{"type":"array","value":"number","length":2,"units":"degrees","minimum":[0,0],"maximum":[360,180],"transition":false,"requires":[{"sky-type":"atmosphere"}],"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun-intensity":{"type":"number","requires":[{"sky-type":"atmosphere"}],"default":10,"minimum":0,"maximum":100,"transition":false,"property-type":"data-constant"},"sky-gradient-center":{"type":"array","requires":[{"sky-type":"gradient"}],"value":"number","default":[0,0],"length":2,"units":"degrees","minimum":[0,0],"maximum":[360,180],"transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-gradient-radius":{"type":"number","requires":[{"sky-type":"gradient"}],"default":90,"minimum":0,"maximum":180,"transition":false,"expression":{"interpolated":false,"parameters":["zoom"]},"property-type":"data-constant"},"sky-gradient":{"type":"color","default":["interpolate",["linear"],["sky-radial-progress"],0.8,"#87ceeb",1,"white"],"transition":false,"requires":[{"sky-type":"gradient"}],"expression":{"interpolated":true,"parameters":["sky-radial-progress"]},"property-type":"color-ramp"},"sky-atmosphere-halo-color":{"type":"color","default":"white","transition":false,"requires":[{"sky-type":"atmosphere"}],"property-type":"data-constant"},"sky-atmosphere-color":{"type":"color","default":"white","transition":false,"requires":[{"sky-type":"atmosphere"}],"property-type":"data-constant"},"sky-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"transition":{"duration":{"type":"number","default":300,"minimum":0,"units":"milliseconds"},"delay":{"type":"number","default":0,"minimum":0,"units":"milliseconds"}},"property-type":{"data-driven":{"type":"property-type"},"color-ramp":{"type":"property-type"},"data-constant":{"type":"property-type"},"constant":{"type":"property-type"}},"promoteId":{"*":{"type":"string"}}}');function tt(e,...t){for(const i of t)for(const t in i)e[t]=i[t];return e}function it(e){return e instanceof Number||e instanceof String||e instanceof Boolean?e.valueOf():e}function rt(e){if(Array.isArray(e))return e.map(rt);if(e instanceof Object&&!(e instanceof Number||e instanceof String||e instanceof Boolean)){const t={};for(const i in e)t[i]=rt(e[i]);return t}return it(e)}class nt extends Error{constructor(e,t){super(t),this.message=t,this.key=e}}var ot=nt;class st{constructor(e,t=[]){this.parent=e,this.bindings={};for(const[e,i]of t)this.bindings[e]=i}concat(e){return new st(this,e)}get(e){if(this.bindings[e])return this.bindings[e];if(this.parent)return this.parent.get(e);throw new Error(`${e} not found in scope.`)}has(e){return!!this.bindings[e]||!!this.parent&&this.parent.has(e)}}var at=st;const lt={kind:"null"},ct={kind:"number"},ht={kind:"string"},ut={kind:"boolean"},dt={kind:"color"},pt={kind:"object"},ft={kind:"value"},mt={kind:"collator"},_t={kind:"formatted"},gt={kind:"resolvedImage"};function yt(e,t){return{kind:"array",itemType:e,N:t}}function xt(e){if("array"===e.kind){const t=xt(e.itemType);return"number"==typeof e.N?`array<${t}, ${e.N}>`:"value"===e.itemType.kind?"array":`array<${t}>`}return e.kind}const vt=[lt,ct,ht,ut,dt,_t,pt,yt(ft),gt];function bt(e,t){if("error"===t.kind)return null;if("array"===e.kind){if("array"===t.kind&&(0===t.N&&"value"===t.itemType.kind||!bt(e.itemType,t.itemType))&&("number"!=typeof e.N||e.N===t.N))return null}else{if(e.kind===t.kind)return null;if("value"===e.kind)for(const e of vt)if(!bt(e,t))return null}return`Expected ${xt(e)} but found ${xt(t)} instead.`}function wt(e,t){return t.some((t=>t.kind===e.kind))}function Tt(e,t){return t.some((t=>"null"===t?null===e:"array"===t?Array.isArray(e):"object"===t?e&&!Array.isArray(e)&&"object"==typeof e:t===typeof e))}var Et,At={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function St(e){return(e=Math.round(e))<0?0:e>255?255:e}function Mt(e){return St("%"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function Ct(e){return(t="%"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))<0?0:t>1?1:t;var t}function kt(e,t,i){return i<0?i+=1:i>1&&(i-=1),6*i<1?e+(t-e)*i*6:2*i<1?t:3*i<2?e+(t-e)*(2/3-i)*6:e}try{Et={}.parseCSSColor=function(e){var t,i=e.replace(/ /g,"").toLowerCase();if(i in At)return At[i].slice();if("#"===i[0])return 4===i.length?(t=parseInt(i.substr(1),16))>=0&&t<=4095?[(3840&t)>>4|(3840&t)>>8,240&t|(240&t)>>4,15&t|(15&t)<<4,1]:null:7===i.length&&(t=parseInt(i.substr(1),16))>=0&&t<=16777215?[(16711680&t)>>16,(65280&t)>>8,255&t,1]:null;var r=i.indexOf("("),n=i.indexOf(")");if(-1!==r&&n+1===i.length){var o=i.substr(0,r),s=i.substr(r+1,n-(r+1)).split(","),a=1;switch(o){case"rgba":if(4!==s.length)return null;a=Ct(s.pop());case"rgb":return 3!==s.length?null:[Mt(s[0]),Mt(s[1]),Mt(s[2]),a];case"hsla":if(4!==s.length)return null;a=Ct(s.pop());case"hsl":if(3!==s.length)return null;var l=(parseFloat(s[0])%360+360)%360/360,c=Ct(s[1]),h=Ct(s[2]),u=h<=.5?h*(c+1):h+c-h*c,d=2*h-u;return[St(255*kt(d,u,l+1/3)),St(255*kt(d,u,l)),St(255*kt(d,u,l-1/3)),a];default:return null}}return null}}catch(e){}class It{constructor(e,t,i,r=1){this.r=e,this.g=t,this.b=i,this.a=r}static parse(e){if(!e)return;if(e instanceof It)return e;if("string"!=typeof e)return;const t=Et(e);return t?new It(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3]):void 0}toString(){const[e,t,i,r]=this.toArray();return`rgba(${Math.round(e)},${Math.round(t)},${Math.round(i)},${r})`}toArray(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[255*e/r,255*t/r,255*i/r,r]}toArray01(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[e/r,t/r,i/r,r]}toArray01PremultipliedAlpha(){const{r:e,g:t,b:i,a:r}=this;return[e,t,i,r]}}It.black=new It(0,0,0,1),It.white=new It(1,1,1,1),It.transparent=new It(0,0,0,0),It.red=new It(1,0,0,1),It.blue=new It(0,0,1,1);var Pt=It;class zt{constructor(e,t,i){this.sensitivity=e?t?"variant":"case":t?"accent":"base",this.locale=i,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(e,t){return this.collator.compare(e,t)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Lt{constructor(e,t,i,r,n){this.text=e.normalize?e.normalize():e,this.image=t,this.scale=i,this.fontStack=r,this.textColor=n}}class Dt{constructor(e){this.sections=e}static fromString(e){return new Dt([new Lt(e,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((e=>0!==e.text.length||e.image&&0!==e.image.name.length))}static factory(e){return e instanceof Dt?e:Dt.fromString(e)}toString(){return 0===this.sections.length?"":this.sections.map((e=>e.text)).join("")}serialize(){const e=["format"];for(const t of this.sections){if(t.image){e.push(["image",t.image.name]);continue}e.push(t.text);const i={};t.fontStack&&(i["text-font"]=["literal",t.fontStack.split(",")]),t.scale&&(i["font-scale"]=t.scale),t.textColor&&(i["text-color"]=["rgba"].concat(t.textColor.toArray())),e.push(i)}return e}}class Rt{constructor(e){this.name=e.name,this.available=e.available}toString(){return this.name}static fromString(e){return e?new Rt({name:e,available:!1}):null}serialize(){return["image",this.name]}}function Bt(e,t,i,r){return"number"==typeof e&&e>=0&&e<=255&&"number"==typeof t&&t>=0&&t<=255&&"number"==typeof i&&i>=0&&i<=255?void 0===r||"number"==typeof r&&r>=0&&r<=1?null:`Invalid rgba value [${[e,t,i,r].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${("number"==typeof r?[e,t,i,r]:[e,t,i]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Ot(e){if(null===e)return!0;if("string"==typeof e)return!0;if("boolean"==typeof e)return!0;if("number"==typeof e)return!0;if(e instanceof Pt)return!0;if(e instanceof zt)return!0;if(e instanceof Dt)return!0;if(e instanceof Rt)return!0;if(Array.isArray(e)){for(const t of e)if(!Ot(t))return!1;return!0}if("object"==typeof e){for(const t in e)if(!Ot(e[t]))return!1;return!0}return!1}function Ft(e){if(null===e)return lt;if("string"==typeof e)return ht;if("boolean"==typeof e)return ut;if("number"==typeof e)return ct;if(e instanceof Pt)return dt;if(e instanceof zt)return mt;if(e instanceof Dt)return _t;if(e instanceof Rt)return gt;if(Array.isArray(e)){const t=e.length;let i;for(const t of e){const e=Ft(t);if(i){if(i===e)continue;i=ft;break}i=e}return yt(i||ft,t)}return pt}function jt(e){const t=typeof e;return null===e?"":"string"===t||"number"===t||"boolean"===t?String(e):e instanceof Pt||e instanceof Dt||e instanceof Rt?e.toString():JSON.stringify(e)}class Ut{constructor(e,t){this.type=e,this.value=t}static parse(e,t){if(2!==e.length)return t.error(`'literal' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!Ot(e[1]))return t.error("invalid value");const i=e[1];let r=Ft(i);const n=t.expectedType;return"array"!==r.kind||0!==r.N||!n||"array"!==n.kind||"number"==typeof n.N&&0!==n.N||(r=n),new Ut(r,i)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}serialize(){return"array"===this.type.kind||"object"===this.type.kind?["literal",this.value]:this.value instanceof Pt?["rgba"].concat(this.value.toArray()):this.value instanceof Dt?this.value.serialize():this.value}}var Nt=Ut,Vt=class{constructor(e){this.name="ExpressionEvaluationError",this.message=e}toJSON(){return this.message}};const $t={string:ht,number:ct,boolean:ut,object:pt};class Gt{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");let i,r=1;const n=e[0];if("array"===n){let n,o;if(e.length>2){const i=e[1];if("string"!=typeof i||!(i in $t)||"object"===i)return t.error('The item type argument of "array" must be one of string, number, boolean',1);n=$t[i],r++}else n=ft;if(e.length>3){if(null!==e[2]&&("number"!=typeof e[2]||e[2]<0||e[2]!==Math.floor(e[2])))return t.error('The length argument to "array" must be a positive integer literal',2);o=e[2],r++}i=yt(n,o)}else i=$t[n];const o=[];for(;re.outputDefined()))}serialize(){const e=this.type,t=[e.kind];if("array"===e.kind){const i=e.itemType;if("string"===i.kind||"number"===i.kind||"boolean"===i.kind){t.push(i.kind);const r=e.N;("number"==typeof r||this.args.length>1)&&t.push(r)}}return t.concat(this.args.map((e=>e.serialize())))}}var qt=Gt;class Zt{constructor(e){this.type=_t,this.sections=e}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const i=e[1];if(!Array.isArray(i)&&"object"==typeof i)return t.error("First argument must be an image or text section.");const r=[];let n=!1;for(let i=1;i<=e.length-1;++i){const o=e[i];if(n&&"object"==typeof o&&!Array.isArray(o)){n=!1;let e=null;if(o["font-scale"]&&(e=t.parse(o["font-scale"],1,ct),!e))return null;let i=null;if(o["text-font"]&&(i=t.parse(o["text-font"],1,yt(ht)),!i))return null;let s=null;if(o["text-color"]&&(s=t.parse(o["text-color"],1,dt),!s))return null;const a=r[r.length-1];a.scale=e,a.font=i,a.textColor=s}else{const o=t.parse(e[i],1,ft);if(!o)return null;const s=o.type.kind;if("string"!==s&&"value"!==s&&"null"!==s&&"resolvedImage"!==s)return t.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");n=!0,r.push({content:o,scale:null,font:null,textColor:null})}}return new Zt(r)}evaluate(e){return new Dt(this.sections.map((t=>{const i=t.content.evaluate(e);return Ft(i)===gt?new Lt("",i,null,null,null):new Lt(jt(i),null,t.scale?t.scale.evaluate(e):null,t.font?t.font.evaluate(e).join(","):null,t.textColor?t.textColor.evaluate(e):null)})))}eachChild(e){for(const t of this.sections)e(t.content),t.scale&&e(t.scale),t.font&&e(t.font),t.textColor&&e(t.textColor)}outputDefined(){return!1}serialize(){const e=["format"];for(const t of this.sections){e.push(t.content.serialize());const i={};t.scale&&(i["font-scale"]=t.scale.serialize()),t.font&&(i["text-font"]=t.font.serialize()),t.textColor&&(i["text-color"]=t.textColor.serialize()),e.push(i)}return e}}class Wt{constructor(e){this.type=gt,this.input=e}static parse(e,t){if(2!==e.length)return t.error("Expected two arguments.");const i=t.parse(e[1],1,ht);return i?new Wt(i):t.error("No image name provided.")}evaluate(e){const t=this.input.evaluate(e),i=Rt.fromString(t);return i&&e.availableImages&&(i.available=e.availableImages.indexOf(t)>-1),i}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){return["image",this.input.serialize()]}}const Ht={"to-boolean":ut,"to-color":dt,"to-number":ct,"to-string":ht};class Xt{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const i=e[0];if(("to-boolean"===i||"to-string"===i)&&2!==e.length)return t.error("Expected one argument.");const r=Ht[i],n=[];for(let i=1;i4?`Invalid rbga value ${JSON.stringify(t)}: expected an array containing either three or four numeric values.`:Bt(t[0],t[1],t[2],t[3]),!i))return new Pt(t[0]/255,t[1]/255,t[2]/255,t[3])}throw new Vt(i||`Could not parse color from value '${"string"==typeof t?t:String(JSON.stringify(t))}'`)}if("number"===this.type.kind){let t=null;for(const i of this.args){if(t=i.evaluate(e),null===t)return 0;const r=Number(t);if(!isNaN(r))return r}throw new Vt(`Could not convert ${JSON.stringify(t)} to number.`)}return"formatted"===this.type.kind?Dt.fromString(jt(this.args[0].evaluate(e))):"resolvedImage"===this.type.kind?Rt.fromString(jt(this.args[0].evaluate(e))):jt(this.args[0].evaluate(e))}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){if("formatted"===this.type.kind)return new Zt([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if("resolvedImage"===this.type.kind)return new Wt(this.args[0]).serialize();const e=[`to-${this.type.kind}`];return this.eachChild((t=>{e.push(t.serialize())})),e}}var Kt=Xt;const Yt=["Unknown","Point","LineString","Polygon"];var Jt=class{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null}id(){return this.feature&&void 0!==this.feature.id?this.feature.id:null}geometryType(){return this.feature?"number"==typeof this.feature.type?Yt[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const e=this.featureDistanceData.center,t=this.featureDistanceData.scale,{x:i,y:r}=this.featureTileCoord;return this.featureDistanceData.bearing[0]*(i*t-e[0])+this.featureDistanceData.bearing[1]*(r*t-e[1])}return 0}parseColor(e){let t=this._parseColorCache[e];return t||(t=this._parseColorCache[e]=Pt.parse(e)),t}};class Qt{constructor(e,t,i,r){this.name=e,this.type=t,this._evaluate=i,this.args=r}evaluate(e){return this._evaluate(e,this.args)}eachChild(e){this.args.forEach(e)}outputDefined(){return!1}serialize(){return[this.name].concat(this.args.map((e=>e.serialize())))}static parse(e,t){const i=e[0],r=Qt.definitions[i];if(!r)return t.error(`Unknown expression "${i}". If you wanted a literal array, use ["literal", [...]].`,0);const n=Array.isArray(r)?r[0]:r.type,o=Array.isArray(r)?[[r[1],r[2]]]:r.overloads,s=o.filter((([t])=>!Array.isArray(t)||t.length===e.length-1));let a=null;for(const[r,o]of s){a=new Si(t.registry,t.path,null,t.scope);const s=[];let l=!1;for(let t=1;t{return t=e,Array.isArray(t)?`(${t.map(xt).join(", ")})`:`(${xt(t.type)}...)`;var t})).join(" | "),r=[];for(let i=1;i=t[2]||e[1]<=t[1]||e[3]>=t[3])}function oi(e,t){const i=(180+e[0])/360,r=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e[1]*Math.PI/360)))/360,n=Math.pow(2,t.z);return[Math.round(i*n*ii),Math.round(r*n*ii)]}function si(e,t,i){const r=e[0]-t[0],n=e[1]-t[1],o=e[0]-i[0],s=e[1]-i[1];return r*s-o*n==0&&r*o<=0&&n*s<=0}function ai(e,t){let i=!1;for(let s=0,a=t.length;s(r=e)[1]!=(o=a[t+1])[1]>r[1]&&r[0]<(o[0]-n[0])*(r[1]-n[1])/(o[1]-n[1])+n[0]&&(i=!i)}}var r,n,o;return i}function li(e,t){for(let i=0;i0&&a<0||s<0&&a>0}function hi(e,t,i){for(const c of i)for(let i=0;ii[2]){const t=.5*r;let n=e[0]-i[0]>t?-r:i[0]-e[0]>t?r:0;0===n&&(n=e[0]-i[2]>t?-r:i[2]-e[0]>t?r:0),e[0]+=n}ri(t,e)}function _i(e,t,i,r){const n=Math.pow(2,r.z)*ii,o=[r.x*ii,r.y*ii],s=[];if(!e)return s;for(const r of e)for(const e of r){const r=[e.x+o[0],e.y+o[1]];mi(r,t,i,n),s.push(r)}return s}function gi(e,t,i,r){const n=Math.pow(2,r.z)*ii,o=[r.x*ii,r.y*ii],s=[];if(!e)return s;for(const i of e){const e=[];for(const r of i){const i=[r.x+o[0],r.y+o[1]];ri(t,i),e.push(i)}s.push(e)}if(t[2]-t[0]<=n/2){(a=t)[0]=a[1]=1/0,a[2]=a[3]=-1/0;for(const e of s)for(const r of e)mi(r,t,i,n)}var a;return s}class yi{constructor(e,t){this.type=ut,this.geojson=e,this.geometries=t}static parse(e,t){if(2!==e.length)return t.error(`'within' expression requires exactly one argument, but found ${e.length-1} instead.`);if(Ot(e[1])){const t=e[1];if("FeatureCollection"===t.type)for(let e=0;e{t&&!vi(e)&&(t=!1)})),t}function bi(e){if(e instanceof ei&&"feature-state"===e.name)return!1;let t=!0;return e.eachChild((e=>{t&&!bi(e)&&(t=!1)})),t}function wi(e,t){if(e instanceof ei&&t.indexOf(e.name)>=0)return!1;let i=!0;return e.eachChild((e=>{i&&!wi(e,t)&&(i=!1)})),i}class Ti{constructor(e,t){this.type=t.type,this.name=e,this.boundExpression=t}static parse(e,t){if(2!==e.length||"string"!=typeof e[1])return t.error("'var' expression requires exactly one string literal argument.");const i=e[1];return t.scope.has(i)?new Ti(i,t.scope.get(i)):t.error(`Unknown variable "${i}". Make sure "${i}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(e){return this.boundExpression.evaluate(e)}eachChild(){}outputDefined(){return!1}serialize(){return["var",this.name]}}var Ei=Ti;class Ai{constructor(e,t=[],i,r=new at,n=[]){this.registry=e,this.path=t,this.key=t.map((e=>`[${e}]`)).join(""),this.scope=r,this.errors=n,this.expectedType=i}parse(e,t,i,r,n={}){return t?this.concat(t,i,r)._parse(e,n):this._parse(e,n)}_parse(e,t){function i(e,t,i){return"assert"===i?new qt(t,[e]):"coerce"===i?new Kt(t,[e]):e}if(null!==e&&"string"!=typeof e&&"boolean"!=typeof e&&"number"!=typeof e||(e=["literal",e]),Array.isArray(e)){if(0===e.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const r=e[0];if("string"!=typeof r)return this.error(`Expression name must be a string, but found ${typeof r} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;const n=this.registry[r];if(n){let r=n.parse(e,this);if(!r)return null;if(this.expectedType){const e=this.expectedType,n=r.type;if("string"!==e.kind&&"number"!==e.kind&&"boolean"!==e.kind&&"object"!==e.kind&&"array"!==e.kind||"value"!==n.kind)if("color"!==e.kind&&"formatted"!==e.kind&&"resolvedImage"!==e.kind||"value"!==n.kind&&"string"!==n.kind){if(this.checkSubtype(e,n))return null}else r=i(r,e,t.typeAnnotation||"coerce");else r=i(r,e,t.typeAnnotation||"assert")}if(!(r instanceof Nt)&&"resolvedImage"!==r.type.kind&&Mi(r)){const t=new Jt;try{r=new Nt(r.type,r.evaluate(t))}catch(e){return this.error(e.message),null}}return r}return this.error(`Unknown expression "${r}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(void 0===e?"'undefined' value invalid. Use null instead.":"object"==typeof e?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof e} instead.`)}concat(e,t,i){const r="number"==typeof e?this.path.concat(e):this.path,n=i?this.scope.concat(i):this.scope;return new Ai(this.registry,r,t||null,n,this.errors)}error(e,...t){const i=`${this.key}${t.map((e=>`[${e}]`)).join("")}`;this.errors.push(new ot(i,e))}checkSubtype(e,t){const i=bt(e,t);return i&&this.error(i),i}}var Si=Ai;function Mi(e){if(e instanceof Ei)return Mi(e.boundExpression);if(e instanceof ei&&"error"===e.name)return!1;if(e instanceof ti)return!1;if(e instanceof xi)return!1;const t=e instanceof Kt||e instanceof qt;let i=!0;return e.eachChild((e=>{i=t?i&&Mi(e):i&&e instanceof Nt})),!!i&&vi(e)&&wi(e,["zoom","heatmap-density","line-progress","sky-radial-progress","accumulated","is-supported-script","pitch","distance-from-center"])}function Ci(e,t){const i=e.length-1;let r,n,o=0,s=i,a=0;for(;o<=s;)if(a=Math.floor((o+s)/2),r=e[a],n=e[a+1],r<=t){if(a===i||tt))throw new Vt("Input is not a number.");s=a-1}return 0}class ki{constructor(e,t,i){this.type=e,this.input=t,this.labels=[],this.outputs=[];for(const[e,t]of i)this.labels.push(e),this.outputs.push(t)}static parse(e,t){if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error("Expected an even number of arguments.");const i=t.parse(e[1],1,ct);if(!i)return null;const r=[];let n=null;t.expectedType&&"value"!==t.expectedType.kind&&(n=t.expectedType);for(let i=1;i=o)return t.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',a);const c=t.parse(s,l,n);if(!c)return null;n=n||c.type,r.push([o,c])}return new ki(n,i,r)}evaluate(e){const t=this.labels,i=this.outputs;if(1===t.length)return i[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return i[0].evaluate(e);const n=t.length;return r>=t[n-1]?i[n-1].evaluate(e):i[Ci(t,r)].evaluate(e)}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){const e=["step",this.input.serialize()];for(let t=0;t0&&e.push(this.labels[t]),e.push(this.outputs[t].serialize());return e}}var Ii=ki;function Pi(e,t,i){return e*(1-i)+t*i}var zi=Object.freeze({__proto__:null,array:function(e,t,i){return e.map(((e,r)=>Pi(e,t[r],i)))},color:function(e,t,i){return new Pt(Pi(e.r,t.r,i),Pi(e.g,t.g,i),Pi(e.b,t.b,i),Pi(e.a,t.a,i))},number:Pi});const Li=.95047,Di=1.08883,Ri=4/29,Bi=6/29,Oi=3*Bi*Bi,Fi=Bi*Bi*Bi,ji=Math.PI/180,Ui=180/Math.PI;function Ni(e){return e>Fi?Math.pow(e,1/3):e/Oi+Ri}function Vi(e){return e>Bi?e*e*e:Oi*(e-Ri)}function $i(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Gi(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function qi(e){const t=Gi(e.r),i=Gi(e.g),r=Gi(e.b),n=Ni((.4124564*t+.3575761*i+.1804375*r)/Li),o=Ni((.2126729*t+.7151522*i+.072175*r)/1);return{l:116*o-16,a:500*(n-o),b:200*(o-Ni((.0193339*t+.119192*i+.9503041*r)/Di)),alpha:e.a}}function Zi(e){let t=(e.l+16)/116,i=isNaN(e.a)?t:t+e.a/500,r=isNaN(e.b)?t:t-e.b/200;return t=1*Vi(t),i=Li*Vi(i),r=Di*Vi(r),new Pt($i(3.2404542*i-1.5371385*t-.4985314*r),$i(-.969266*i+1.8760108*t+.041556*r),$i(.0556434*i-.2040259*t+1.0572252*r),e.alpha)}function Wi(e,t,i){const r=t-e;return e+i*(r>180||r<-180?r-360*Math.round(r/360):r)}const Hi={forward:qi,reverse:Zi,interpolate:function(e,t,i){return{l:Pi(e.l,t.l,i),a:Pi(e.a,t.a,i),b:Pi(e.b,t.b,i),alpha:Pi(e.alpha,t.alpha,i)}}},Xi={forward:function(e){const{l:t,a:i,b:r}=qi(e),n=Math.atan2(r,i)*Ui;return{h:n<0?n+360:n,c:Math.sqrt(i*i+r*r),l:t,alpha:e.a}},reverse:function(e){const t=e.h*ji,i=e.c;return Zi({l:e.l,a:Math.cos(t)*i,b:Math.sin(t)*i,alpha:e.alpha})},interpolate:function(e,t,i){return{h:Wi(e.h,t.h,i),c:Pi(e.c,t.c,i),l:Pi(e.l,t.l,i),alpha:Pi(e.alpha,t.alpha,i)}}};var Ki=Object.freeze({__proto__:null,hcl:Xi,lab:Hi});class Yi{constructor(e,t,i,r,n){this.type=e,this.operator=t,this.interpolation=i,this.input=r,this.labels=[],this.outputs=[];for(const[e,t]of n)this.labels.push(e),this.outputs.push(t)}static interpolationFactor(e,t,i,r){let n=0;if("exponential"===e.name)n=Ji(t,e.base,i,r);else if("linear"===e.name)n=Ji(t,1,i,r);else if("cubic-bezier"===e.name){const o=e.controlPoints;n=new m(o[0],o[1],o[2],o[3]).solve(Ji(t,1,i,r))}return n}static parse(e,t){let[i,r,n,...o]=e;if(!Array.isArray(r)||0===r.length)return t.error("Expected an interpolation type expression.",1);if("linear"===r[0])r={name:"linear"};else if("exponential"===r[0]){const e=r[1];if("number"!=typeof e)return t.error("Exponential interpolation requires a numeric base.",1,1);r={name:"exponential",base:e}}else{if("cubic-bezier"!==r[0])return t.error(`Unknown interpolation type ${String(r[0])}`,1,0);{const e=r.slice(1);if(4!==e.length||e.some((e=>"number"!=typeof e||e<0||e>1)))return t.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);r={name:"cubic-bezier",controlPoints:e}}}if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error("Expected an even number of arguments.");if(n=t.parse(n,2,ct),!n)return null;const s=[];let a=null;"interpolate-hcl"===i||"interpolate-lab"===i?a=dt:t.expectedType&&"value"!==t.expectedType.kind&&(a=t.expectedType);for(let e=0;e=i)return t.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',n);const c=t.parse(r,l,a);if(!c)return null;a=a||c.type,s.push([i,c])}return"number"===a.kind||"color"===a.kind||"array"===a.kind&&"number"===a.itemType.kind&&"number"==typeof a.N?new Yi(a,i,r,n,s):t.error(`Type ${xt(a)} is not interpolatable.`)}evaluate(e){const t=this.labels,i=this.outputs;if(1===t.length)return i[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return i[0].evaluate(e);const n=t.length;if(r>=t[n-1])return i[n-1].evaluate(e);const o=Ci(t,r),s=Yi.interpolationFactor(this.interpolation,r,t[o],t[o+1]),a=i[o].evaluate(e),l=i[o+1].evaluate(e);return"interpolate"===this.operator?zi[this.type.kind.toLowerCase()](a,l,s):"interpolate-hcl"===this.operator?Xi.reverse(Xi.interpolate(Xi.forward(a),Xi.forward(l),s)):Hi.reverse(Hi.interpolate(Hi.forward(a),Hi.forward(l),s))}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){let e;e="linear"===this.interpolation.name?["linear"]:"exponential"===this.interpolation.name?1===this.interpolation.base?["linear"]:["exponential",this.interpolation.base]:["cubic-bezier"].concat(this.interpolation.controlPoints);const t=[this.operator,e,this.input.serialize()];for(let e=0;ebt(r,e.type)));return new er(o?ft:i,n)}evaluate(e){let t,i=null,r=0;for(const n of this.args){if(r++,i=n.evaluate(e),i&&i instanceof Rt&&!i.available&&(t||(t=i),i=null,r===this.args.length))return t;if(null!==i)break}return i}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){const e=["coalesce"];return this.eachChild((t=>{e.push(t.serialize())})),e}}var tr=er;class ir{constructor(e,t){this.type=t.type,this.bindings=[].concat(e),this.result=t}evaluate(e){return this.result.evaluate(e)}eachChild(e){for(const t of this.bindings)e(t[1]);e(this.result)}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);const i=[];for(let r=1;r=i.length)throw new Vt(`Array index out of bounds: ${t} > ${i.length-1}.`);if(t!==Math.floor(t))throw new Vt(`Array index must be an integer, but found ${t} instead.`);return i[t]}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at",this.index.serialize(),this.input.serialize()]}}var or=nr;class sr{constructor(e,t){this.type=ut,this.needle=e,this.haystack=t}static parse(e,t){if(3!==e.length)return t.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,ft),r=t.parse(e[2],2,ft);return i&&r?wt(i.type,[ut,ht,ct,lt,ft])?new sr(i,r):t.error(`Expected first argument to be of type boolean, string, number or null, but found ${xt(i.type)} instead`):null}evaluate(e){const t=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(null==i)return!1;if(!Tt(t,["boolean","string","number","null"]))throw new Vt(`Expected first argument to be of type boolean, string, number or null, but found ${xt(Ft(t))} instead.`);if(!Tt(i,["string","array"]))throw new Vt(`Expected second argument to be of type array or string, but found ${xt(Ft(i))} instead.`);return i.indexOf(t)>=0}eachChild(e){e(this.needle),e(this.haystack)}outputDefined(){return!0}serialize(){return["in",this.needle.serialize(),this.haystack.serialize()]}}var ar=sr;class lr{constructor(e,t,i){this.type=ct,this.needle=e,this.haystack=t,this.fromIndex=i}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,ft),r=t.parse(e[2],2,ft);if(!i||!r)return null;if(!wt(i.type,[ut,ht,ct,lt,ft]))return t.error(`Expected first argument to be of type boolean, string, number or null, but found ${xt(i.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,ct);return n?new lr(i,r,n):null}return new lr(i,r)}evaluate(e){const t=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(!Tt(t,["boolean","string","number","null"]))throw new Vt(`Expected first argument to be of type boolean, string, number or null, but found ${xt(Ft(t))} instead.`);if(!Tt(i,["string","array"]))throw new Vt(`Expected second argument to be of type array or string, but found ${xt(Ft(i))} instead.`);if(this.fromIndex){const r=this.fromIndex.evaluate(e);return i.indexOf(t,r)}return i.indexOf(t)}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)}outputDefined(){return!1}serialize(){if(null!=this.fromIndex&&void 0!==this.fromIndex){const e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]}}var cr=lr;class hr{constructor(e,t,i,r,n,o){this.inputType=e,this.type=t,this.input=i,this.cases=r,this.outputs=n,this.otherwise=o}static parse(e,t){if(e.length<5)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!=1)return t.error("Expected an even number of arguments.");let i,r;t.expectedType&&"value"!==t.expectedType.kind&&(r=t.expectedType);const n={},o=[];for(let s=2;sNumber.MAX_SAFE_INTEGER)return c.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if("number"==typeof e&&Math.floor(e)!==e)return c.error("Numeric branch labels must be integer values.");if(i){if(c.checkSubtype(i,Ft(e)))return null}else i=Ft(e);if(void 0!==n[String(e)])return c.error("Branch labels must be unique.");n[String(e)]=o.length}const h=t.parse(l,s,r);if(!h)return null;r=r||h.type,o.push(h)}const s=t.parse(e[1],1,ft);if(!s)return null;const a=t.parse(e[e.length-1],e.length-1,r);return a?"value"!==s.type.kind&&t.concat(1).checkSubtype(i,s.type)?null:new hr(i,r,s,n,o,a):null}evaluate(e){const t=this.input.evaluate(e);return(Ft(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(e)}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=["match",this.input.serialize()],t=Object.keys(this.cases).sort(),i=[],r={};for(const e of t){const t=r[this.cases[e]];void 0===t?(r[this.cases[e]]=i.length,i.push([this.cases[e],[e]])):i[t][1].push(e)}const n=e=>"number"===this.inputType.kind?Number(e):e;for(const[t,r]of i)e.push(1===r.length?n(r[0]):r.map(n)),e.push(this.outputs[t].serialize());return e.push(this.otherwise.serialize()),e}}var ur=hr;class dr{constructor(e,t,i){this.type=e,this.branches=t,this.otherwise=i}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!=0)return t.error("Expected an odd number of arguments.");let i;t.expectedType&&"value"!==t.expectedType.kind&&(i=t.expectedType);const r=[];for(let n=1;nt.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=["case"];return this.eachChild((t=>{e.push(t.serialize())})),e}}var pr=dr;class fr{constructor(e,t,i,r){this.type=e,this.input=t,this.beginIndex=i,this.endIndex=r}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,ft),r=t.parse(e[2],2,ct);if(!i||!r)return null;if(!wt(i.type,[yt(ft),ht,ft]))return t.error(`Expected first argument to be of type array or string, but found ${xt(i.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,ct);return n?new fr(i.type,i,r,n):null}return new fr(i.type,i,r)}evaluate(e){const t=this.input.evaluate(e),i=this.beginIndex.evaluate(e);if(!Tt(t,["string","array"]))throw new Vt(`Expected first argument to be of type array or string, but found ${xt(Ft(t))} instead.`);if(this.endIndex){const r=this.endIndex.evaluate(e);return t.slice(i,r)}return t.slice(i)}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)}outputDefined(){return!1}serialize(){if(null!=this.endIndex&&void 0!==this.endIndex){const e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]}}var mr=fr;function _r(e,t){return"=="===e||"!="===e?"boolean"===t.kind||"string"===t.kind||"number"===t.kind||"null"===t.kind||"value"===t.kind:"string"===t.kind||"number"===t.kind||"value"===t.kind}function gr(e,t,i,r){return 0===r.compare(t,i)}function yr(e,t,i){const r="=="!==e&&"!="!==e;return class n{constructor(e,t,i){this.type=ut,this.lhs=e,this.rhs=t,this.collator=i,this.hasUntypedArgument="value"===e.type.kind||"value"===t.type.kind}static parse(e,t){if(3!==e.length&&4!==e.length)return t.error("Expected two or three arguments.");const i=e[0];let o=t.parse(e[1],1,ft);if(!o)return null;if(!_r(i,o.type))return t.concat(1).error(`"${i}" comparisons are not supported for type '${xt(o.type)}'.`);let s=t.parse(e[2],2,ft);if(!s)return null;if(!_r(i,s.type))return t.concat(2).error(`"${i}" comparisons are not supported for type '${xt(s.type)}'.`);if(o.type.kind!==s.type.kind&&"value"!==o.type.kind&&"value"!==s.type.kind)return t.error(`Cannot compare types '${xt(o.type)}' and '${xt(s.type)}'.`);r&&("value"===o.type.kind&&"value"!==s.type.kind?o=new qt(s.type,[o]):"value"!==o.type.kind&&"value"===s.type.kind&&(s=new qt(o.type,[s])));let a=null;if(4===e.length){if("string"!==o.type.kind&&"string"!==s.type.kind&&"value"!==o.type.kind&&"value"!==s.type.kind)return t.error("Cannot use collator to compare non-string types.");if(a=t.parse(e[3],3,mt),!a)return null}return new n(o,s,a)}evaluate(n){const o=this.lhs.evaluate(n),s=this.rhs.evaluate(n);if(r&&this.hasUntypedArgument){const t=Ft(o),i=Ft(s);if(t.kind!==i.kind||"string"!==t.kind&&"number"!==t.kind)throw new Vt(`Expected arguments for "${e}" to be (string, string) or (number, number), but found (${t.kind}, ${i.kind}) instead.`)}if(this.collator&&!r&&this.hasUntypedArgument){const e=Ft(o),i=Ft(s);if("string"!==e.kind||"string"!==i.kind)return t(n,o,s)}return this.collator?i(n,o,s,this.collator.evaluate(n)):t(n,o,s)}eachChild(e){e(this.lhs),e(this.rhs),this.collator&&e(this.collator)}outputDefined(){return!0}serialize(){const t=[e];return this.eachChild((e=>{t.push(e.serialize())})),t}}}const xr=yr("==",(function(e,t,i){return t===i}),gr),vr=yr("!=",(function(e,t,i){return t!==i}),(function(e,t,i,r){return!gr(0,t,i,r)})),br=yr("<",(function(e,t,i){return t",(function(e,t,i){return t>i}),(function(e,t,i,r){return r.compare(t,i)>0})),Tr=yr("<=",(function(e,t,i){return t<=i}),(function(e,t,i,r){return r.compare(t,i)<=0})),Er=yr(">=",(function(e,t,i){return t>=i}),(function(e,t,i,r){return r.compare(t,i)>=0}));class Ar{constructor(e,t,i,r,n,o){this.type=ht,this.number=e,this.locale=t,this.currency=i,this.unit=r,this.minFractionDigits=n,this.maxFractionDigits=o}static parse(e,t){if(3!==e.length)return t.error("Expected two arguments.");const i=t.parse(e[1],1,ct);if(!i)return null;const r=e[2];if("object"!=typeof r||Array.isArray(r))return t.error("NumberFormat options argument must be an object.");let n=null;if(r.locale&&(n=t.parse(r.locale,1,ht),!n))return null;let o=null;if(r.currency&&(o=t.parse(r.currency,1,ht),!o))return null;let s=null;if(r.unit&&(s=t.parse(r.unit,1,ht),!s))return null;let a=null;if(r["min-fraction-digits"]&&(a=t.parse(r["min-fraction-digits"],1,ct),!a))return null;let l=null;return r["max-fraction-digits"]&&(l=t.parse(r["max-fraction-digits"],1,ct),!l)?null:new Ar(i,n,o,s,a,l)}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:(this.currency?"currency":this.unit&&"unit")||"decimal",currency:this.currency?this.currency.evaluate(e):void 0,unit:this.unit?this.unit.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.unit&&e(this.unit),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)}outputDefined(){return!1}serialize(){const e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.unit&&(e.unit=this.unit.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]}}class Sr{constructor(e){this.type=ct,this.input=e}static parse(e,t){if(2!==e.length)return t.error(`Expected 1 argument, but found ${e.length-1} instead.`);const i=t.parse(e[1],1);return i?"array"!==i.type.kind&&"string"!==i.type.kind&&"value"!==i.type.kind?t.error(`Expected argument of type string or array, but found ${xt(i.type)} instead.`):new Sr(i):null}evaluate(e){const t=this.input.evaluate(e);if("string"==typeof t)return t.length;if(Array.isArray(t))return t.length;throw new Vt(`Expected value to be of type string or array, but found ${xt(Ft(t))} instead.`)}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){const e=["length"];return this.eachChild((t=>{e.push(t.serialize())})),e}}const Mr={"==":xr,"!=":vr,">":wr,"<":br,">=":Er,"<=":Tr,array:qt,at:or,boolean:qt,case:pr,coalesce:tr,collator:ti,format:Zt,image:Wt,in:ar,"index-of":cr,interpolate:Qi,"interpolate-hcl":Qi,"interpolate-lab":Qi,length:Sr,let:rr,literal:Nt,match:ur,number:qt,"number-format":Ar,object:qt,slice:mr,step:Ii,string:qt,"to-boolean":Kt,"to-color":Kt,"to-number":Kt,"to-string":Kt,var:Ei,within:xi};function Cr(e,[t,i,r,n]){t=t.evaluate(e),i=i.evaluate(e),r=r.evaluate(e);const o=n?n.evaluate(e):1,s=Bt(t,i,r,o);if(s)throw new Vt(s);return new Pt(t/255*o,i/255*o,r/255*o,o)}function kr(e,t){return e in t}function Ir(e,t){const i=t[e];return void 0===i?null:i}function Pr(e){return{type:e}}ei.register(Mr,{error:[{kind:"error"},[ht],(e,[t])=>{throw new Vt(t.evaluate(e))}],typeof:[ht,[ft],(e,[t])=>xt(Ft(t.evaluate(e)))],"to-rgba":[yt(ct,4),[dt],(e,[t])=>t.evaluate(e).toArray()],rgb:[dt,[ct,ct,ct],Cr],rgba:[dt,[ct,ct,ct,ct],Cr],has:{type:ut,overloads:[[[ht],(e,[t])=>kr(t.evaluate(e),e.properties())],[[ht,pt],(e,[t,i])=>kr(t.evaluate(e),i.evaluate(e))]]},get:{type:ft,overloads:[[[ht],(e,[t])=>Ir(t.evaluate(e),e.properties())],[[ht,pt],(e,[t,i])=>Ir(t.evaluate(e),i.evaluate(e))]]},"feature-state":[ft,[ht],(e,[t])=>Ir(t.evaluate(e),e.featureState||{})],properties:[pt,[],e=>e.properties()],"geometry-type":[ht,[],e=>e.geometryType()],id:[ft,[],e=>e.id()],zoom:[ct,[],e=>e.globals.zoom],pitch:[ct,[],e=>e.globals.pitch||0],"distance-from-center":[ct,[],e=>e.distanceFromCenter()],"heatmap-density":[ct,[],e=>e.globals.heatmapDensity||0],"line-progress":[ct,[],e=>e.globals.lineProgress||0],"sky-radial-progress":[ct,[],e=>e.globals.skyRadialProgress||0],accumulated:[ft,[],e=>void 0===e.globals.accumulated?null:e.globals.accumulated],"+":[ct,Pr(ct),(e,t)=>{let i=0;for(const r of t)i+=r.evaluate(e);return i}],"*":[ct,Pr(ct),(e,t)=>{let i=1;for(const r of t)i*=r.evaluate(e);return i}],"-":{type:ct,overloads:[[[ct,ct],(e,[t,i])=>t.evaluate(e)-i.evaluate(e)],[[ct],(e,[t])=>-t.evaluate(e)]]},"/":[ct,[ct,ct],(e,[t,i])=>t.evaluate(e)/i.evaluate(e)],"%":[ct,[ct,ct],(e,[t,i])=>t.evaluate(e)%i.evaluate(e)],ln2:[ct,[],()=>Math.LN2],pi:[ct,[],()=>Math.PI],e:[ct,[],()=>Math.E],"^":[ct,[ct,ct],(e,[t,i])=>Math.pow(t.evaluate(e),i.evaluate(e))],sqrt:[ct,[ct],(e,[t])=>Math.sqrt(t.evaluate(e))],log10:[ct,[ct],(e,[t])=>Math.log(t.evaluate(e))/Math.LN10],ln:[ct,[ct],(e,[t])=>Math.log(t.evaluate(e))],log2:[ct,[ct],(e,[t])=>Math.log(t.evaluate(e))/Math.LN2],sin:[ct,[ct],(e,[t])=>Math.sin(t.evaluate(e))],cos:[ct,[ct],(e,[t])=>Math.cos(t.evaluate(e))],tan:[ct,[ct],(e,[t])=>Math.tan(t.evaluate(e))],asin:[ct,[ct],(e,[t])=>Math.asin(t.evaluate(e))],acos:[ct,[ct],(e,[t])=>Math.acos(t.evaluate(e))],atan:[ct,[ct],(e,[t])=>Math.atan(t.evaluate(e))],min:[ct,Pr(ct),(e,t)=>Math.min(...t.map((t=>t.evaluate(e))))],max:[ct,Pr(ct),(e,t)=>Math.max(...t.map((t=>t.evaluate(e))))],abs:[ct,[ct],(e,[t])=>Math.abs(t.evaluate(e))],round:[ct,[ct],(e,[t])=>{const i=t.evaluate(e);return i<0?-Math.round(-i):Math.round(i)}],floor:[ct,[ct],(e,[t])=>Math.floor(t.evaluate(e))],ceil:[ct,[ct],(e,[t])=>Math.ceil(t.evaluate(e))],"filter-==":[ut,[ht,ft],(e,[t,i])=>e.properties()[t.value]===i.value],"filter-id-==":[ut,[ft],(e,[t])=>e.id()===t.value],"filter-type-==":[ut,[ht],(e,[t])=>e.geometryType()===t.value],"filter-<":[ut,[ht,ft],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r{const i=e.id(),r=t.value;return typeof i==typeof r&&i":[ut,[ht,ft],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r>n}],"filter-id->":[ut,[ft],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i>r}],"filter-<=":[ut,[ht,ft],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r<=n}],"filter-id-<=":[ut,[ft],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i<=r}],"filter->=":[ut,[ht,ft],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r>=n}],"filter-id->=":[ut,[ft],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i>=r}],"filter-has":[ut,[ft],(e,[t])=>t.value in e.properties()],"filter-has-id":[ut,[],e=>null!==e.id()&&void 0!==e.id()],"filter-type-in":[ut,[yt(ht)],(e,[t])=>t.value.indexOf(e.geometryType())>=0],"filter-id-in":[ut,[yt(ft)],(e,[t])=>t.value.indexOf(e.id())>=0],"filter-in-small":[ut,[ht,yt(ft)],(e,[t,i])=>i.value.indexOf(e.properties()[t.value])>=0],"filter-in-large":[ut,[ht,yt(ft)],(e,[t,i])=>function(e,t,i,r){for(;i<=r;){const n=i+r>>1;if(t[n]===e)return!0;t[n]>e?r=n-1:i=n+1}return!1}(e.properties()[t.value],i.value,0,i.value.length-1)],all:{type:ut,overloads:[[[ut,ut],(e,[t,i])=>t.evaluate(e)&&i.evaluate(e)],[Pr(ut),(e,t)=>{for(const i of t)if(!i.evaluate(e))return!1;return!0}]]},any:{type:ut,overloads:[[[ut,ut],(e,[t,i])=>t.evaluate(e)||i.evaluate(e)],[Pr(ut),(e,t)=>{for(const i of t)if(i.evaluate(e))return!0;return!1}]]},"!":[ut,[ut],(e,[t])=>!t.evaluate(e)],"is-supported-script":[ut,[ht],(e,[t])=>{const i=e.globals&&e.globals.isSupportedScript;return!i||i(t.evaluate(e))}],upcase:[ht,[ht],(e,[t])=>t.evaluate(e).toUpperCase()],downcase:[ht,[ht],(e,[t])=>t.evaluate(e).toLowerCase()],concat:[ht,Pr(ft),(e,t)=>t.map((t=>jt(t.evaluate(e)))).join("")],"resolved-locale":[ht,[mt],(e,[t])=>t.evaluate(e).resolvedLocale()]});var zr=Mr;function Lr(e){return{result:"success",value:e}}function Dr(e){return{result:"error",value:e}}function Rr(e){return"data-driven"===e["property-type"]}function Br(e){return!!e.expression&&e.expression.parameters.indexOf("zoom")>-1}function Or(e){return!!e.expression&&e.expression.interpolated}function Fr(e){return e instanceof Number?"number":e instanceof String?"string":e instanceof Boolean?"boolean":Array.isArray(e)?"array":null===e?"null":typeof e}function jr(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function Ur(e){return e}function Nr(e,t){const i="color"===t.type,r=e.stops&&"object"==typeof e.stops[0][0],n=r||!(r||void 0!==e.property),o=e.type||(Or(t)?"exponential":"interval");if(i&&((e=tt({},e)).stops&&(e.stops=e.stops.map((e=>[e[0],Pt.parse(e[1])]))),e.default=Pt.parse(e.default?e.default:t.default)),e.colorSpace&&"rgb"!==e.colorSpace&&!Ki[e.colorSpace])throw new Error(`Unknown color space: ${e.colorSpace}`);let s,a,l;if("exponential"===o)s=qr;else if("interval"===o)s=Gr;else if("categorical"===o){s=$r,a=Object.create(null);for(const t of e.stops)a[t[0]]=t[1];l=typeof e.stops[0][0]}else{if("identity"!==o)throw new Error(`Unknown function type "${o}"`);s=Zr}if(r){const i={},r=[];for(let t=0;te[0])),evaluate:({zoom:i},r)=>qr({stops:n,base:e.base},t,i).evaluate(i,r)}}if(n){const i="exponential"===o?{name:"exponential",base:void 0!==e.base?e.base:1}:null;return{kind:"camera",interpolationType:i,interpolationFactor:Qi.interpolationFactor.bind(void 0,i),zoomStops:e.stops.map((e=>e[0])),evaluate:({zoom:i})=>s(e,t,i,a,l)}}return{kind:"source",evaluate(i,r){const n=r&&r.properties?r.properties[e.property]:void 0;return void 0===n?Vr(e.default,t.default):s(e,t,n,a,l)}}}function Vr(e,t,i){return void 0!==e?e:void 0!==t?t:void 0!==i?i:void 0}function $r(e,t,i,r,n){return Vr(typeof i===n?r[i]:void 0,e.default,t.default)}function Gr(e,t,i){if("number"!==Fr(i))return Vr(e.default,t.default);const r=e.stops.length;if(1===r)return e.stops[0][1];if(i<=e.stops[0][0])return e.stops[0][1];if(i>=e.stops[r-1][0])return e.stops[r-1][1];const n=Ci(e.stops.map((e=>e[0])),i);return e.stops[n][1]}function qr(e,t,i){const r=void 0!==e.base?e.base:1;if("number"!==Fr(i))return Vr(e.default,t.default);const n=e.stops.length;if(1===n)return e.stops[0][1];if(i<=e.stops[0][0])return e.stops[0][1];if(i>=e.stops[n-1][0])return e.stops[n-1][1];const o=Ci(e.stops.map((e=>e[0])),i),s=function(e,t,i,r){const n=r-i,o=e-i;return 0===n?0:1===t?o/n:(Math.pow(t,o)-1)/(Math.pow(t,n)-1)}(i,r,e.stops[o][0],e.stops[o+1][0]),a=e.stops[o][1],l=e.stops[o+1][1];let c=zi[t.type]||Ur;if(e.colorSpace&&"rgb"!==e.colorSpace){const t=Ki[e.colorSpace];c=(e,i)=>t.reverse(t.interpolate(t.forward(e),t.forward(i),s))}return"function"==typeof a.evaluate?{evaluate(...e){const t=a.evaluate.apply(void 0,e),i=l.evaluate.apply(void 0,e);if(void 0!==t&&void 0!==i)return c(t,i,s)}}:c(a,l,s)}function Zr(e,t,i){return"color"===t.type?i=Pt.parse(i):"formatted"===t.type?i=Dt.fromString(i.toString()):"resolvedImage"===t.type?i=Rt.fromString(i.toString()):Fr(i)===t.type||"enum"===t.type&&t.values[i]||(i=void 0),Vr(i,e.default,t.default)}class Wr{constructor(e,t){this.expression=e,this._warningHistory={},this._evaluator=new Jt,this._defaultValue=t?function(e){return"color"===e.type&&(jr(e.default)||Array.isArray(e.default))?new Pt(0,0,0,0):"color"===e.type?Pt.parse(e.default)||null:void 0===e.default?null:e.default}(t):null,this._enumValues=t&&"enum"===t.type?t.values:null}evaluateWithoutErrorHandling(e,t,i,r,n,o,s,a){return this._evaluator.globals=e,this._evaluator.feature=t,this._evaluator.featureState=i,this._evaluator.canonical=r||null,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=o,this._evaluator.featureTileCoord=s||null,this._evaluator.featureDistanceData=a||null,this.expression.evaluate(this._evaluator)}evaluate(e,t,i,r,n,o,s,a){this._evaluator.globals=e,this._evaluator.feature=t||null,this._evaluator.featureState=i||null,this._evaluator.canonical=r||null,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=o||null,this._evaluator.featureTileCoord=s||null,this._evaluator.featureDistanceData=a||null;try{const e=this.expression.evaluate(this._evaluator);if(null==e||"number"==typeof e&&e!=e)return this._defaultValue;if(this._enumValues&&!(e in this._enumValues))throw new Vt(`Expected value to be one of ${Object.keys(this._enumValues).map((e=>JSON.stringify(e))).join(", ")}, but found ${JSON.stringify(e)} instead.`);return e}catch(e){return this._warningHistory[e.message]||(this._warningHistory[e.message]=!0,"undefined"!=typeof console&&console.warn(e.message)),this._defaultValue}}}function Hr(e){return Array.isArray(e)&&e.length>0&&"string"==typeof e[0]&&e[0]in zr}function Xr(e,t){const i=new Si(zr,[],t?function(e){const t={color:dt,string:ht,number:ct,enum:ht,boolean:ut,formatted:_t,resolvedImage:gt};return"array"===e.type?yt(t[e.value]||ft,e.length):t[e.type]}(t):void 0),r=i.parse(e,void 0,void 0,void 0,t&&"string"===t.type?{typeAnnotation:"coerce"}:void 0);return r?Lr(new Wr(r,t)):Dr(i.errors)}class Kr{constructor(e,t){this.kind=e,this._styleExpression=t,this.isStateDependent="constant"!==e&&!bi(t.expression)}evaluateWithoutErrorHandling(e,t,i,r,n,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,i,r,n,o)}evaluate(e,t,i,r,n,o){return this._styleExpression.evaluate(e,t,i,r,n,o)}}class Yr{constructor(e,t,i,r){this.kind=e,this.zoomStops=i,this._styleExpression=t,this.isStateDependent="camera"!==e&&!bi(t.expression),this.interpolationType=r}evaluateWithoutErrorHandling(e,t,i,r,n,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,i,r,n,o)}evaluate(e,t,i,r,n,o){return this._styleExpression.evaluate(e,t,i,r,n,o)}interpolationFactor(e,t,i){return this.interpolationType?Qi.interpolationFactor(this.interpolationType,e,t,i):0}}function Jr(e,t){if("error"===(e=Xr(e,t)).result)return e;const i=e.value.expression,r=vi(i);if(!r&&!Rr(t))return Dr([new ot("","data expressions not supported")]);const n=wi(i,["zoom","pitch","distance-from-center"]);if(!n&&!Br(t))return Dr([new ot("","zoom expressions not supported")]);const o=en(i);return o||n?o instanceof ot?Dr([o]):o instanceof Qi&&!Or(t)?Dr([new ot("",'"interpolate" expressions cannot be used with this property')]):Lr(o?new Yr(r?"camera":"composite",e.value,o.labels,o instanceof Qi?o.interpolation:void 0):new Kr(r?"constant":"source",e.value)):Dr([new ot("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class Qr{constructor(e,t){this._parameters=e,this._specification=t,tt(this,Nr(this._parameters,this._specification))}static deserialize(e){return new Qr(e._parameters,e._specification)}static serialize(e){return{_parameters:e._parameters,_specification:e._specification}}}function en(e){let t=null;if(e instanceof rr)t=en(e.result);else if(e instanceof tr){for(const i of e.args)if(t=en(i),t)break}else(e instanceof Ii||e instanceof Qi)&&e.input instanceof ei&&"zoom"===e.input.name&&(t=e);return t instanceof ot||e.eachChild((e=>{const i=en(e);i instanceof ot?t=i:!t&&i?t=new ot("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):t&&i&&t!==i&&(t=new ot("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))})),t}class tn{constructor(e,t,i,r){this.message=(e?`${e}: `:"")+i,r&&(this.identifier=r),null!=t&&t.__line__&&(this.line=t.__line__)}}function rn(e){const t=e.key,i=e.value,r=e.valueSpec||{},n=e.objectElementValidators||{},o=e.style,s=e.styleSpec;let a=[];const l=Fr(i);if("object"!==l)return[new tn(t,i,`object expected, ${l} found`)];for(const e in i){const l=e.split(".")[0];let c;n[l]?c=n[l]:r[l]?c=On:n["*"]?c=n["*"]:r["*"]&&(c=On),c?a=a.concat(c({key:(t?`${t}.`:t)+e,value:i[e],valueSpec:r[l]||r["*"],style:o,styleSpec:s,object:i,objectKey:e},i)):a.push(new tn(t,i[e],`unknown property "${e}"`))}for(const e in r)n[e]||r[e].required&&void 0===r[e].default&&void 0===i[e]&&a.push(new tn(t,i,`missing required property "${e}"`));return a}function nn(e){const t=e.value,i=e.valueSpec,r=e.style,n=e.styleSpec,o=e.key,s=e.arrayElementValidator||On;if("array"!==Fr(t))return[new tn(o,t,`array expected, ${Fr(t)} found`)];if(i.length&&t.length!==i.length)return[new tn(o,t,`array length ${i.length} expected, length ${t.length} found`)];if(i["min-length"]&&t.lengthn)return[new tn(t,i,`${i} is greater than the maximum value ${n}`)]}return[]}function sn(e){const t=e.valueSpec,i=it(e.value.type);let r,n,o,s={};const a="categorical"!==i&&void 0===e.value.property,l=!a,c="array"===Fr(e.value.stops)&&"array"===Fr(e.value.stops[0])&&"object"===Fr(e.value.stops[0][0]),h=rn({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:function(e){if("identity"===i)return[new tn(e.key,e.value,'identity function may not have a "stops" property')];let t=[];const r=e.value;return t=t.concat(nn({key:e.key,value:r,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:u})),"array"===Fr(r)&&0===r.length&&t.push(new tn(e.key,r,"array must have at least one stop")),t},default:function(e){return On({key:e.key,value:e.value,valueSpec:t,style:e.style,styleSpec:e.styleSpec})}}});return"identity"===i&&a&&h.push(new tn(e.key,e.value,'missing required property "property"')),"identity"===i||e.value.stops||h.push(new tn(e.key,e.value,'missing required property "stops"')),"exponential"===i&&e.valueSpec.expression&&!Or(e.valueSpec)&&h.push(new tn(e.key,e.value,"exponential functions not supported")),e.styleSpec.$version>=8&&(l&&!Rr(e.valueSpec)?h.push(new tn(e.key,e.value,"property functions not supported")):a&&!Br(e.valueSpec)&&h.push(new tn(e.key,e.value,"zoom functions not supported"))),"categorical"!==i&&!c||void 0!==e.value.property||h.push(new tn(e.key,e.value,'"property" property is required')),h;function u(e){let i=[];const r=e.value,a=e.key;if("array"!==Fr(r))return[new tn(a,r,`array expected, ${Fr(r)} found`)];if(2!==r.length)return[new tn(a,r,`array length 2 expected, length ${r.length} found`)];if(c){if("object"!==Fr(r[0]))return[new tn(a,r,`object expected, ${Fr(r[0])} found`)];if(void 0===r[0].zoom)return[new tn(a,r,"object stop key must have zoom")];if(void 0===r[0].value)return[new tn(a,r,"object stop key must have value")];const t=it(r[0].zoom);if("number"!=typeof t)return[new tn(a,r[0].zoom,"stop zoom values must be numbers")];if(o&&o>t)return[new tn(a,r[0].zoom,"stop zoom values must appear in ascending order")];t!==o&&(o=t,n=void 0,s={}),i=i.concat(rn({key:`${a}[0]`,value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:on,value:d}}))}else i=i.concat(d({key:`${a}[0]`,value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec},r));return Hr(rt(r[1]))?i.concat([new tn(`${a}[1]`,r[1],"expressions are not allowed in function stops.")]):i.concat(On({key:`${a}[1]`,value:r[1],valueSpec:t,style:e.style,styleSpec:e.styleSpec}))}function d(e,o){const a=Fr(e.value),l=it(e.value),c=null!==e.value?e.value:o;if(r){if(a!==r)return[new tn(e.key,c,`${a} stop domain type must match previous stop domain type ${r}`)]}else r=a;if("number"!==a&&"string"!==a&&"boolean"!==a&&"number"!=typeof l&&"string"!=typeof l&&"boolean"!=typeof l)return[new tn(e.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==a&&"categorical"!==i){let r=`number expected, ${a} found`;return Rr(t)&&void 0===i&&(r+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new tn(e.key,c,r)]}return"categorical"!==i||"number"!==a||"number"==typeof l&&isFinite(l)&&Math.floor(l)===l?"categorical"!==i&&"number"===a&&"number"==typeof l&&"number"==typeof n&&void 0!==n&&lnew tn(`${e.key}${t.key}`,e.value,t.message)));const i=t.value.expression||t.value._styleExpression.expression;if("property"===e.expressionContext&&"text-font"===e.propertyKey&&!i.outputDefined())return[new tn(e.key,e.value,`Invalid data expression for "${e.propertyKey}". Output values must be contained as literals within the expression.`)];if("property"===e.expressionContext&&"layout"===e.propertyType&&!bi(i))return[new tn(e.key,e.value,'"feature-state" data expressions are not supported with layout properties.')];if("filter"===e.expressionContext)return ln(i,e);if(e.expressionContext&&0===e.expressionContext.indexOf("cluster")){if(!wi(i,["zoom","feature-state"]))return[new tn(e.key,e.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if("cluster-initial"===e.expressionContext&&!vi(i))return[new tn(e.key,e.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function ln(e,t){const i=new Set(["zoom","feature-state","pitch","distance-from-center"]);if(t.valueSpec&&t.valueSpec.expression)for(const e of t.valueSpec.expression.parameters)i.delete(e);if(0===i.size)return[];const r=[];return e instanceof ei&&i.has(e.name)?[new tn(t.key,t.value,`["${e.name}"] expression is not supported in a filter for a ${t.object.type} layer with id: ${t.object.id}`)]:(e.eachChild((e=>{r.push(...ln(e,t))})),r)}function cn(e){const t=e.key,i=e.value,r=e.valueSpec,n=[];return Array.isArray(r.values)?-1===r.values.indexOf(it(i))&&n.push(new tn(t,i,`expected one of [${r.values.join(", ")}], ${JSON.stringify(i)} found`)):-1===Object.keys(r.values).indexOf(it(i))&&n.push(new tn(t,i,`expected one of [${Object.keys(r.values).join(", ")}], ${JSON.stringify(i)} found`)),n}function hn(e){if(!0===e||!1===e)return!0;if(!Array.isArray(e)||0===e.length)return!1;switch(e[0]){case"has":return e.length>=2&&"$id"!==e[1]&&"$type"!==e[1];case"in":return e.length>=3&&("string"!=typeof e[1]||Array.isArray(e[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==e.length||Array.isArray(e[1])||Array.isArray(e[2]);case"any":case"all":for(const t of e.slice(1))if(!hn(t)&&"boolean"!=typeof t)return!1;return!0;default:return!0}}function un(e,t="fill"){if(null==e)return{filter:()=>!0,needGeometry:!1,needFeature:!1};hn(e)||(e=yn(e));const i=e;let r=!0;try{r=function(e){if(!fn(e))return e;let t=rt(e);return pn(t),t=dn(t),t}(i)}catch(e){console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate.\nThis is most likely a bug, please report this via https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.md\nand paste the contents of this message in the report.\nThank you!\nFilter Expression:\n${JSON.stringify(i,null,2)}\n `)}const n=et[`filter_${t}`],o=Xr(r,n);let s=null;if("error"===o.result)throw new Error(o.value.map((e=>`${e.key}: ${e.message}`)).join(", "));s=(e,t,i)=>o.value.evaluate(e,t,{},i);let a=null,l=null;if(r!==i){const e=Xr(i,n);if("error"===e.result)throw new Error(e.value.map((e=>`${e.key}: ${e.message}`)).join(", "));a=(t,i,r,n,o)=>e.value.evaluate(t,i,{},r,void 0,void 0,n,o),l=!vi(e.value.expression)}return{filter:s,dynamicFilter:a||void 0,needGeometry:gn(r),needFeature:!!l}}function dn(e){if(!Array.isArray(e))return e;const t=function(e){if(mn.has(e[0]))for(let t=1;tdn(e)))}function pn(e){let t=!1;const i=[];if("case"===e[0]){for(let r=1;r",">=","<","<=","to-boolean"]);function _n(e,t){return et?1:0}function gn(e){if(!Array.isArray(e))return!1;if("within"===e[0])return!0;for(let t=1;t"===t||"<="===t||">="===t?xn(e[1],e[2],t):"any"===t?(i=e.slice(1),["any"].concat(i.map(yn))):"all"===t?["all"].concat(e.slice(1).map(yn)):"none"===t?["all"].concat(e.slice(1).map(yn).map(wn)):"in"===t?vn(e[1],e.slice(2)):"!in"===t?wn(vn(e[1],e.slice(2))):"has"===t?bn(e[1]):"!has"===t?wn(bn(e[1])):"within"!==t||e;var i}function xn(e,t,i){switch(e){case"$type":return[`filter-type-${i}`,t];case"$id":return[`filter-id-${i}`,t];default:return[`filter-${i}`,e,t]}}function vn(e,t){if(0===t.length)return!1;switch(e){case"$type":return["filter-type-in",["literal",t]];case"$id":return["filter-id-in",["literal",t]];default:return t.length>200&&!t.some((e=>typeof e!=typeof t[0]))?["filter-in-large",e,["literal",t.sort(_n)]]:["filter-in-small",e,["literal",t]]}}function bn(e){switch(e){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",e]}}function wn(e){return["!",e]}function Tn(e){return hn(rt(e.value))?an(tt({},e,{expressionContext:"filter",valueSpec:e.styleSpec[`filter_${e.layerType||"fill"}`]})):En(e)}function En(e){const t=e.value,i=e.key;if("array"!==Fr(t))return[new tn(i,t,`array expected, ${Fr(t)} found`)];const r=e.styleSpec;let n,o=[];if(t.length<1)return[new tn(i,t,"filter array must have at least 1 element")];switch(o=o.concat(cn({key:`${i}[0]`,value:t[0],valueSpec:r.filter_operator,style:e.style,styleSpec:e.styleSpec})),it(t[0])){case"<":case"<=":case">":case">=":t.length>=2&&"$type"===it(t[1])&&o.push(new tn(i,t,`"$type" cannot be use with operator "${t[0]}"`));case"==":case"!=":3!==t.length&&o.push(new tn(i,t,`filter array for operator "${t[0]}" must have 3 elements`));case"in":case"!in":t.length>=2&&(n=Fr(t[1]),"string"!==n&&o.push(new tn(`${i}[1]`,t[1],`string expected, ${n} found`)));for(let s=2;s{e in i&&t.push(new tn(r,i[e],`"${e}" is prohibited for ref layers`))})),n.layers.forEach((t=>{it(t.id)===a&&(e=t)})),e?e.ref?t.push(new tn(r,i.ref,"ref cannot reference another ref layer")):s=it(e.type):"string"==typeof a&&t.push(new tn(r,i.ref,`ref layer "${a}" not found`))}else if("background"!==s&&"sky"!==s)if(i.source){const e=n.sources&&n.sources[i.source],o=e&&it(e.type);e?"vector"===o&&"raster"===s?t.push(new tn(r,i.source,`layer "${i.id}" requires a raster source`)):"raster"===o&&"raster"!==s?t.push(new tn(r,i.source,`layer "${i.id}" requires a vector source`)):"vector"!==o||i["source-layer"]?"raster-dem"===o&&"hillshade"!==s?t.push(new tn(r,i.source,"raster-dem source can only be used with layer type 'hillshade'.")):"line"!==s||!i.paint||!i.paint["line-gradient"]&&!i.paint["line-trim-offset"]||"geojson"===o&&e.lineMetrics||t.push(new tn(r,i,`layer "${i.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):t.push(new tn(r,i,`layer "${i.id}" must specify a "source-layer"`)):t.push(new tn(r,i.source,`source "${i.source}" not found`))}else t.push(new tn(r,i,'missing required property "source"'));return t=t.concat(rn({key:r,value:i,valueSpec:o.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":()=>[],type:()=>On({key:`${r}.type`,value:i.type,valueSpec:o.layer.type,style:e.style,styleSpec:e.styleSpec,object:i,objectKey:"type"}),filter:e=>Tn(tt({layerType:s},e)),layout:e=>rn({layer:i,key:e.key,value:e.value,valueSpec:{},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":e=>Mn(tt({layerType:s},e))}}),paint:e=>rn({layer:i,key:e.key,value:e.value,valueSpec:{},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":e=>Sn(tt({layerType:s},e))}})}})),t}function kn(e){const t=e.value,i=e.key,r=Fr(t);return"string"!==r?[new tn(i,t,`string expected, ${r} found`)]:[]}const In={promoteId:function({key:e,value:t}){if("string"===Fr(t))return kn({key:e,value:t});{const i=[];for(const r in t)i.push(...kn({key:`${e}.${r}`,value:t[r]}));return i}}};function Pn(e){const t=e.value,i=e.key,r=e.styleSpec,n=e.style;if(!t.type)return[new tn(i,t,'"type" is required')];const o=it(t.type);let s;switch(o){case"vector":case"raster":case"raster-dem":return s=rn({key:i,value:t,valueSpec:r[`source_${o.replace("-","_")}`],style:e.style,styleSpec:r,objectElementValidators:In}),s;case"geojson":if(s=rn({key:i,value:t,valueSpec:r.source_geojson,style:n,styleSpec:r,objectElementValidators:In}),t.cluster)for(const e in t.clusterProperties){const[r,n]=t.clusterProperties[e],o="string"==typeof r?[r,["accumulated"],["get",e]]:r;s.push(...an({key:`${i}.${e}.map`,value:n,expressionContext:"cluster-map"})),s.push(...an({key:`${i}.${e}.reduce`,value:o,expressionContext:"cluster-reduce"}))}return s;case"video":return rn({key:i,value:t,valueSpec:r.source_video,style:n,styleSpec:r});case"image":return rn({key:i,value:t,valueSpec:r.source_image,style:n,styleSpec:r});case"canvas":return[new tn(i,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return cn({key:`${i}.type`,value:t.type,valueSpec:{values:zn(r)},style:n,styleSpec:r})}}function zn(e){return e.source.reduce(((t,i)=>{const r=e[i];return"enum"===r.type.type&&(t=t.concat(Object.keys(r.type.values))),t}),[])}function Ln(e){const t=e.value,i=e.styleSpec,r=i.light,n=e.style;let o=[];const s=Fr(t);if(void 0===t)return o;if("object"!==s)return o=o.concat([new tn("light",t,`object expected, ${s} found`)]),o;for(const e in t){const s=e.match(/^(.*)-transition$/);o=o.concat(s&&r[s[1]]&&r[s[1]].transition?On({key:e,value:t[e],valueSpec:i.transition,style:n,styleSpec:i}):r[e]?On({key:e,value:t[e],valueSpec:r[e],style:n,styleSpec:i}):[new tn(e,t[e],`unknown property "${e}"`)])}return o}function Dn(e){const t=e.value,i=e.key,r=e.style,n=e.styleSpec,o=n.terrain;let s=[];const a=Fr(t);if(void 0===t)return s;if("object"!==a)return s=s.concat([new tn("terrain",t,`object expected, ${a} found`)]),s;for(const e in t){const i=e.match(/^(.*)-transition$/);s=s.concat(i&&o[i[1]]&&o[i[1]].transition?On({key:e,value:t[e],valueSpec:n.transition,style:r,styleSpec:n}):o[e]?On({key:e,value:t[e],valueSpec:o[e],style:r,styleSpec:n}):[new tn(e,t[e],`unknown property "${e}"`)])}if(t.source){const e=r.sources&&r.sources[t.source],n=e&&it(e.type);e?"raster-dem"!==n&&s.push(new tn(i,t.source,`terrain cannot be used with a source of type ${String(n)}, it only be used with a "raster-dem" source type`)):s.push(new tn(i,t.source,`source "${t.source}" not found`))}else s.push(new tn(i,t,'terrain is missing required property "source"'));return s}function Rn(e){const t=e.value,i=e.style,r=e.styleSpec,n=r.fog;let o=[];const s=Fr(t);if(void 0===t)return o;if("object"!==s)return o=o.concat([new tn("fog",t,`object expected, ${s} found`)]),o;for(const e in t){const s=e.match(/^(.*)-transition$/);o=o.concat(s&&n[s[1]]&&n[s[1]].transition?On({key:e,value:t[e],valueSpec:r.transition,style:i,styleSpec:r}):n[e]?On({key:e,value:t[e],valueSpec:n[e],style:i,styleSpec:r}):[new tn(e,t[e],`unknown property "${e}"`)])}return o}const Bn={"*":()=>[],array:nn,boolean:function(e){const t=e.value,i=e.key,r=Fr(t);return"boolean"!==r?[new tn(i,t,`boolean expected, ${r} found`)]:[]},number:on,color:function(e){const t=e.key,i=e.value,r=Fr(i);return"string"!==r?[new tn(t,i,`color expected, ${r} found`)]:null===Et(i)?[new tn(t,i,`color expected, "${i}" found`)]:[]},enum:cn,filter:Tn,function:sn,layer:Cn,object:rn,source:Pn,light:Ln,terrain:Dn,fog:Rn,string:kn,formatted:function(e){return 0===kn(e).length?[]:an(e)},resolvedImage:function(e){return 0===kn(e).length?[]:an(e)},projection:function(e){const t=e.value,i=e.styleSpec,r=i.projection,n=e.style;let o=[];const s=Fr(t);if("object"===s)for(const e in t)o=o.concat(On({key:e,value:t[e],valueSpec:r[e],style:n,styleSpec:i}));else"string"!==s&&(o=o.concat([new tn("projection",t,`object or string expected, ${s} found`)]));return o}};function On(e){const t=e.value,i=e.valueSpec,r=e.styleSpec;return i.expression&&jr(it(t))?sn(e):i.expression&&Hr(rt(t))?an(e):i.type&&Bn[i.type]?Bn[i.type](e):rn(tt({},e,{valueSpec:i.type?r[i.type]:i}))}function Fn(e){const t=e.value,i=e.key,r=kn(e);return r.length||(-1===t.indexOf("{fontstack}")&&r.push(new tn(i,t,'"glyphs" url must include a "{fontstack}" token')),-1===t.indexOf("{range}")&&r.push(new tn(i,t,'"glyphs" url must include a "{range}" token'))),r}function jn(e,t=et){return Vn(On({key:"",value:e,valueSpec:t.$root,styleSpec:t,style:e,objectElementValidators:{glyphs:Fn,"*":()=>[]}}))}const Un=e=>Vn(Sn(e)),Nn=e=>Vn(Mn(e));function Vn(e){return e.slice().sort(((e,t)=>e.line&&t.line?e.line-t.line:0))}function $n(e,t){let i=!1;if(t&&t.length)for(const r of t)e.fire(new Je(new Error(r.message))),i=!0;return i}var Gn=Zn,qn=3;function Zn(e,t,i){var r=this.cells=[];if(e instanceof ArrayBuffer){this.arrayBuffer=e;var n=new Int32Array(this.arrayBuffer);e=n[0],this.d=(t=n[1])+2*(i=n[2]);for(var o=0;o=h[p+0]&&r>=h[p+1])?(s[d]=!0,o.push(c[d])):s[d]=!1}}},Zn.prototype._forEachCell=function(e,t,i,r,n,o,s,a){for(var l=this._convertToCellCoord(e),c=this._convertToCellCoord(t),h=this._convertToCellCoord(i),u=this._convertToCellCoord(r),d=l;d<=h;d++)for(var p=c;p<=u;p++){var f=this.d*p+d;if((!a||a(this._convertFromCellCoord(d),this._convertFromCellCoord(p),this._convertFromCellCoord(d+1),this._convertFromCellCoord(p+1)))&&n.call(this,e,t,i,r,f,o,s,a))return}},Zn.prototype._convertFromCellCoord=function(e){return(e-this.padding)/this.scale},Zn.prototype._convertToCellCoord=function(e){return Math.max(0,Math.min(this.d-1,Math.floor(e*this.scale)+this.padding))},Zn.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var e=this.cells,t=qn+this.cells.length+1+1,i=0,r=0;r=0||(n[t]=Jn(e[t],i)));e instanceof Error&&(n.message=e.message)}if(n.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==r&&(n.$name=r),n}throw new Error("can't serialize object of type "+typeof e)}function Qn(e){if(null==e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||e instanceof Boolean||e instanceof Number||e instanceof String||e instanceof Date||e instanceof RegExp||Kn(e)||Yn(e)||ArrayBuffer.isView(e)||e instanceof t.ImageData)return e;if(Array.isArray(e))return e.map(Qn);if("object"==typeof e){const t=e.$name||"Object",{klass:i}=Hn[t];if(!i)throw new Error(`can't deserialize unregistered class ${t}`);if(i.deserialize)return i.deserialize(e);const r=Object.create(i.prototype);for(const t of Object.keys(e))"$name"!==t&&(r[t]=Qn(e[t]));return r}throw new Error("can't deserialize object of type "+typeof e)}const eo={"Latin-1 Supplement":e=>e>=128&&e<=255,Arabic:e=>e>=1536&&e<=1791,"Arabic Supplement":e=>e>=1872&&e<=1919,"Arabic Extended-A":e=>e>=2208&&e<=2303,"Hangul Jamo":e=>e>=4352&&e<=4607,"Unified Canadian Aboriginal Syllabics":e=>e>=5120&&e<=5759,Khmer:e=>e>=6016&&e<=6143,"Unified Canadian Aboriginal Syllabics Extended":e=>e>=6320&&e<=6399,"General Punctuation":e=>e>=8192&&e<=8303,"Letterlike Symbols":e=>e>=8448&&e<=8527,"Number Forms":e=>e>=8528&&e<=8591,"Miscellaneous Technical":e=>e>=8960&&e<=9215,"Control Pictures":e=>e>=9216&&e<=9279,"Optical Character Recognition":e=>e>=9280&&e<=9311,"Enclosed Alphanumerics":e=>e>=9312&&e<=9471,"Geometric Shapes":e=>e>=9632&&e<=9727,"Miscellaneous Symbols":e=>e>=9728&&e<=9983,"Miscellaneous Symbols and Arrows":e=>e>=11008&&e<=11263,"CJK Radicals Supplement":e=>e>=11904&&e<=12031,"Kangxi Radicals":e=>e>=12032&&e<=12255,"Ideographic Description Characters":e=>e>=12272&&e<=12287,"CJK Symbols and Punctuation":e=>e>=12288&&e<=12351,Hiragana:e=>e>=12352&&e<=12447,Katakana:e=>e>=12448&&e<=12543,Bopomofo:e=>e>=12544&&e<=12591,"Hangul Compatibility Jamo":e=>e>=12592&&e<=12687,Kanbun:e=>e>=12688&&e<=12703,"Bopomofo Extended":e=>e>=12704&&e<=12735,"CJK Strokes":e=>e>=12736&&e<=12783,"Katakana Phonetic Extensions":e=>e>=12784&&e<=12799,"Enclosed CJK Letters and Months":e=>e>=12800&&e<=13055,"CJK Compatibility":e=>e>=13056&&e<=13311,"CJK Unified Ideographs Extension A":e=>e>=13312&&e<=19903,"Yijing Hexagram Symbols":e=>e>=19904&&e<=19967,"CJK Unified Ideographs":e=>e>=19968&&e<=40959,"Yi Syllables":e=>e>=40960&&e<=42127,"Yi Radicals":e=>e>=42128&&e<=42191,"Hangul Jamo Extended-A":e=>e>=43360&&e<=43391,"Hangul Syllables":e=>e>=44032&&e<=55215,"Hangul Jamo Extended-B":e=>e>=55216&&e<=55295,"Private Use Area":e=>e>=57344&&e<=63743,"CJK Compatibility Ideographs":e=>e>=63744&&e<=64255,"Arabic Presentation Forms-A":e=>e>=64336&&e<=65023,"Vertical Forms":e=>e>=65040&&e<=65055,"CJK Compatibility Forms":e=>e>=65072&&e<=65103,"Small Form Variants":e=>e>=65104&&e<=65135,"Arabic Presentation Forms-B":e=>e>=65136&&e<=65279,"Halfwidth and Fullwidth Forms":e=>e>=65280&&e<=65519};function to(e){for(const t of e)if(no(t.charCodeAt(0)))return!0;return!1}function io(e){for(const t of e)if(!ro(t.charCodeAt(0)))return!1;return!0}function ro(e){return!(eo.Arabic(e)||eo["Arabic Supplement"](e)||eo["Arabic Extended-A"](e)||eo["Arabic Presentation Forms-A"](e)||eo["Arabic Presentation Forms-B"](e))}function no(e){return!(746!==e&&747!==e&&(e<4352||!(eo["Bopomofo Extended"](e)||eo.Bopomofo(e)||eo["CJK Compatibility Forms"](e)&&!(e>=65097&&e<=65103)||eo["CJK Compatibility Ideographs"](e)||eo["CJK Compatibility"](e)||eo["CJK Radicals Supplement"](e)||eo["CJK Strokes"](e)||!(!eo["CJK Symbols and Punctuation"](e)||e>=12296&&e<=12305||e>=12308&&e<=12319||12336===e)||eo["CJK Unified Ideographs Extension A"](e)||eo["CJK Unified Ideographs"](e)||eo["Enclosed CJK Letters and Months"](e)||eo["Hangul Compatibility Jamo"](e)||eo["Hangul Jamo Extended-A"](e)||eo["Hangul Jamo Extended-B"](e)||eo["Hangul Jamo"](e)||eo["Hangul Syllables"](e)||eo.Hiragana(e)||eo["Ideographic Description Characters"](e)||eo.Kanbun(e)||eo["Kangxi Radicals"](e)||eo["Katakana Phonetic Extensions"](e)||eo.Katakana(e)&&12540!==e||!(!eo["Halfwidth and Fullwidth Forms"](e)||65288===e||65289===e||65293===e||e>=65306&&e<=65310||65339===e||65341===e||65343===e||e>=65371&&e<=65503||65507===e||e>=65512&&e<=65519)||!(!eo["Small Form Variants"](e)||e>=65112&&e<=65118||e>=65123&&e<=65126)||eo["Unified Canadian Aboriginal Syllabics"](e)||eo["Unified Canadian Aboriginal Syllabics Extended"](e)||eo["Vertical Forms"](e)||eo["Yijing Hexagram Symbols"](e)||eo["Yi Syllables"](e)||eo["Yi Radicals"](e))))}function oo(e){return!(no(e)||function(e){return!!(eo["Latin-1 Supplement"](e)&&(167===e||169===e||174===e||177===e||188===e||189===e||190===e||215===e||247===e)||eo["General Punctuation"](e)&&(8214===e||8224===e||8225===e||8240===e||8241===e||8251===e||8252===e||8258===e||8263===e||8264===e||8265===e||8273===e)||eo["Letterlike Symbols"](e)||eo["Number Forms"](e)||eo["Miscellaneous Technical"](e)&&(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||9003===e||e>=9085&&e<=9114||e>=9150&&e<=9165||9167===e||e>=9169&&e<=9179||e>=9186&&e<=9215)||eo["Control Pictures"](e)&&9251!==e||eo["Optical Character Recognition"](e)||eo["Enclosed Alphanumerics"](e)||eo["Geometric Shapes"](e)||eo["Miscellaneous Symbols"](e)&&!(e>=9754&&e<=9759)||eo["Miscellaneous Symbols and Arrows"](e)&&(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243)||eo["CJK Symbols and Punctuation"](e)||eo.Katakana(e)||eo["Private Use Area"](e)||eo["CJK Compatibility Forms"](e)||eo["Small Form Variants"](e)||eo["Halfwidth and Fullwidth Forms"](e)||8734===e||8756===e||8757===e||e>=9984&&e<=10087||e>=10102&&e<=10131||65532===e||65533===e)}(e))}function so(e){return e>=1424&&e<=2303||eo["Arabic Presentation Forms-A"](e)||eo["Arabic Presentation Forms-B"](e)}function ao(e,t){return!(!t&&so(e)||e>=2304&&e<=3583||e>=3840&&e<=4255||eo.Khmer(e))}function lo(e){for(const t of e)if(so(t.charCodeAt(0)))return!0;return!1}const co="deferred",ho="loading",uo="loaded";let po=null,fo="unavailable",mo=null;const _o=function(e){e&&"string"==typeof e&&e.indexOf("NetworkError")>-1&&(fo="error"),po&&po(e)};function go(){yo.fire(new Ye("pluginStateChange",{pluginStatus:fo,pluginURL:mo}))}const yo=new Qe,xo=function(){return fo},vo=function(){if(fo!==co||!mo)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");fo=ho,go(),mo&&de({url:mo},(e=>{e?_o(e):(fo=uo,go())}))},bo={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>fo===uo||null!=bo.applyArabicShaping,isLoading:()=>fo===ho,setState(e){fo=e.pluginStatus,mo=e.pluginURL},isParsed:()=>null!=bo.applyArabicShaping&&null!=bo.processBidirectionalText&&null!=bo.processStyledBidirectionalText,getPluginURL:()=>mo};class wo{constructor(e,t){this.zoom=e,t?(this.now=t.now,this.fadeDuration=t.fadeDuration,this.transition=t.transition,this.pitch=t.pitch):(this.now=0,this.fadeDuration=0,this.transition={},this.pitch=0)}isSupportedScript(e){return function(e,t){for(const i of e)if(!ao(i.charCodeAt(0),t))return!1;return!0}(e,bo.isLoaded())}}class To{constructor(e,t){this.property=e,this.value=t,this.expression=function(e,t){if(jr(e))return new Qr(e,t);if(Hr(e)){const i=Jr(e,t);if("error"===i.result)throw new Error(i.value.map((e=>`${e.key}: ${e.message}`)).join(", "));return i.value}{let i=e;return"string"==typeof e&&"color"===t.type&&(i=Pt.parse(e)),{kind:"constant",evaluate:()=>i}}}(void 0===t?e.specification.default:t,e.specification)}isDataDriven(){return"source"===this.expression.kind||"composite"===this.expression.kind}possiblyEvaluate(e,t,i){return this.property.possiblyEvaluate(this,e,t,i)}}class Eo{constructor(e){this.property=e,this.value=new To(e,void 0)}transitioned(e,t){return new So(this.property,this.value,t,z({},e.transition,this.transition),e.now)}untransitioned(){return new So(this.property,this.value,null,{},0)}}class Ao{constructor(e){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues)}getValue(e){return V(this._values[e].value.value)}setValue(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Eo(this._values[e].property)),this._values[e].value=new To(this._values[e].property,null===t?void 0:V(t))}getTransition(e){return V(this._values[e].transition)}setTransition(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new Eo(this._values[e].property)),this._values[e].transition=V(t)||void 0}serialize(){const e={};for(const t of Object.keys(this._values)){const i=this.getValue(t);void 0!==i&&(e[t]=i);const r=this.getTransition(t);void 0!==r&&(e[`${t}-transition`]=r)}return e}transitioned(e,t){const i=new Mo(this._properties);for(const r of Object.keys(this._values))i._values[r]=this._values[r].transitioned(e,t._values[r]);return i}untransitioned(){const e=new Mo(this._properties);for(const t of Object.keys(this._values))e._values[t]=this._values[t].untransitioned();return e}}class So{constructor(e,t,i,r,n){const o=r.delay||0,s=r.duration||0;n=n||0,this.property=e,this.value=t,this.begin=n+o,this.end=this.begin+s,e.specification.transition&&(r.delay||r.duration)&&(this.prior=i)}possiblyEvaluate(e,t,i){const r=e.now||0,n=this.value.possiblyEvaluate(e,t,i),o=this.prior;if(o){if(r>this.end)return this.prior=null,n;if(this.value.isDataDriven())return this.prior=null,n;if(rthis.capacity){this.capacity=Math.max(e,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const t=this.uint8;this._refreshViews(),t&&this.uint8.set(t)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}destroy(){this.int8=this.uint8=this.int16=this.uint16=this.int32=this.uint32=this.float32=null,this.arrayBuffer=null}}function jo(e,t=1){let i=0,r=0;return{members:e.map((e=>{const n=Bo[e.type].BYTES_PER_ELEMENT,o=i=Uo(i,Math.max(t,n)),s=e.components||1;return r=Math.max(r,n),i+=n*s,{name:e.name,type:e.type,components:s,offset:o}})),size:Uo(i,Math.max(r,t)),alignment:t}}function Uo(e,t){return Math.ceil(e/t)*t}class No extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.int16[r+0]=t,this.int16[r+1]=i,e}}No.prototype.bytesPerElement=4,Xn(No,"StructArrayLayout2i4");class Vo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.int16[n+0]=t,this.int16[n+1]=i,this.int16[n+2]=r,e}}Vo.prototype.bytesPerElement=6,Xn(Vo,"StructArrayLayout3i6");class $o extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.int16[o+0]=t,this.int16[o+1]=i,this.int16[o+2]=r,this.int16[o+3]=n,e}}$o.prototype.bytesPerElement=8,Xn($o,"StructArrayLayout4i8");class Go extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=6*e,c=12*e,h=3*e;return this.int16[l+0]=t,this.int16[l+1]=i,this.uint8[c+4]=r,this.uint8[c+5]=n,this.uint8[c+6]=o,this.uint8[c+7]=s,this.float32[h+2]=a,e}}Go.prototype.bytesPerElement=12,Xn(Go,"StructArrayLayout2i4ub1f12");class qo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.float32[o+0]=t,this.float32[o+1]=i,this.float32[o+2]=r,this.float32[o+3]=n,e}}qo.prototype.bytesPerElement=16,Xn(qo,"StructArrayLayout4f16");class Zo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=6*e,a=3*e;return this.uint16[s+0]=t,this.uint16[s+1]=i,this.uint16[s+2]=r,this.uint16[s+3]=n,this.float32[a+2]=o,e}}Zo.prototype.bytesPerElement=12,Xn(Zo,"StructArrayLayout4ui1f12");class Wo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.uint16[o+0]=t,this.uint16[o+1]=i,this.uint16[o+2]=r,this.uint16[o+3]=n,e}}Wo.prototype.bytesPerElement=8,Xn(Wo,"StructArrayLayout4ui8");class Ho extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,i,r,n,o)}emplace(e,t,i,r,n,o,s){const a=6*e;return this.int16[a+0]=t,this.int16[a+1]=i,this.int16[a+2]=r,this.int16[a+3]=n,this.int16[a+4]=o,this.int16[a+5]=s,e}}Ho.prototype.bytesPerElement=12,Xn(Ho,"StructArrayLayout6i12");class Xo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u){const d=this.length;return this.resize(d+1),this.emplace(d,e,t,i,r,n,o,s,a,l,c,h,u)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=12*e;return this.int16[p+0]=t,this.int16[p+1]=i,this.int16[p+2]=r,this.int16[p+3]=n,this.uint16[p+4]=o,this.uint16[p+5]=s,this.uint16[p+6]=a,this.uint16[p+7]=l,this.int16[p+8]=c,this.int16[p+9]=h,this.int16[p+10]=u,this.int16[p+11]=d,e}}Xo.prototype.bytesPerElement=24,Xn(Xo,"StructArrayLayout4i4ui4i24");class Ko extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,i,r,n,o)}emplace(e,t,i,r,n,o,s){const a=10*e,l=5*e;return this.int16[a+0]=t,this.int16[a+1]=i,this.int16[a+2]=r,this.float32[l+2]=n,this.float32[l+3]=o,this.float32[l+4]=s,e}}Ko.prototype.bytesPerElement=20,Xn(Ko,"StructArrayLayout3i3f20");class Yo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint32[1*e+0]=t,e}}Yo.prototype.bytesPerElement=4,Xn(Yo,"StructArrayLayout1ul4");class Jo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=this.length;return this.resize(p+1),this.emplace(p,e,t,i,r,n,o,s,a,l,c,h,u,d)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p){const f=20*e,m=10*e;return this.int16[f+0]=t,this.int16[f+1]=i,this.int16[f+2]=r,this.int16[f+3]=n,this.int16[f+4]=o,this.float32[m+3]=s,this.float32[m+4]=a,this.float32[m+5]=l,this.float32[m+6]=c,this.int16[f+14]=h,this.uint32[m+8]=u,this.uint16[f+18]=d,this.uint16[f+19]=p,e}}Jo.prototype.bytesPerElement=40,Xn(Jo,"StructArrayLayout5i4f1i1ul2ui40");class Qo extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=8*e;return this.int16[l+0]=t,this.int16[l+1]=i,this.int16[l+2]=r,this.int16[l+4]=n,this.int16[l+5]=o,this.int16[l+6]=s,this.int16[l+7]=a,e}}Qo.prototype.bytesPerElement=16,Xn(Qo,"StructArrayLayout3i2i2i16");class es extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=4*e,a=8*e;return this.float32[s+0]=t,this.float32[s+1]=i,this.float32[s+2]=r,this.int16[a+6]=n,this.int16[a+7]=o,e}}es.prototype.bytesPerElement=16,Xn(es,"StructArrayLayout2f1f2i16");class ts extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=12*e,s=3*e;return this.uint8[o+0]=t,this.uint8[o+1]=i,this.float32[s+1]=r,this.float32[s+2]=n,e}}ts.prototype.bytesPerElement=12,Xn(ts,"StructArrayLayout2ub2f12");class is extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.float32[n+0]=t,this.float32[n+1]=i,this.float32[n+2]=r,e}}is.prototype.bytesPerElement=12,Xn(is,"StructArrayLayout3f12");class rs extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.uint16[n+0]=t,this.uint16[n+1]=i,this.uint16[n+2]=r,e}}rs.prototype.bytesPerElement=6,Xn(rs,"StructArrayLayout3ui6");class ns extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v){const b=this.length;return this.resize(b+1),this.emplace(b,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b){const w=30*e,T=15*e,E=60*e;return this.int16[w+0]=t,this.int16[w+1]=i,this.int16[w+2]=r,this.float32[T+2]=n,this.float32[T+3]=o,this.uint16[w+8]=s,this.uint16[w+9]=a,this.uint32[T+5]=l,this.uint32[T+6]=c,this.uint32[T+7]=h,this.uint16[w+16]=u,this.uint16[w+17]=d,this.uint16[w+18]=p,this.float32[T+10]=f,this.float32[T+11]=m,this.uint8[E+48]=_,this.uint8[E+49]=g,this.uint8[E+50]=y,this.uint32[T+13]=x,this.int16[w+28]=v,this.uint8[E+58]=b,e}}ns.prototype.bytesPerElement=60,Xn(ns,"StructArrayLayout3i2f2ui3ul3ui2f3ub1ul1i1ub60");class os extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S,M,C,k){const I=this.length;return this.resize(I+1),this.emplace(I,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S,M,C,k)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S,M,C,k,I){const P=38*e,z=19*e;return this.int16[P+0]=t,this.int16[P+1]=i,this.int16[P+2]=r,this.float32[z+2]=n,this.float32[z+3]=o,this.int16[P+8]=s,this.int16[P+9]=a,this.int16[P+10]=l,this.int16[P+11]=c,this.int16[P+12]=h,this.int16[P+13]=u,this.uint16[P+14]=d,this.uint16[P+15]=p,this.uint16[P+16]=f,this.uint16[P+17]=m,this.uint16[P+18]=_,this.uint16[P+19]=g,this.uint16[P+20]=y,this.uint16[P+21]=x,this.uint16[P+22]=v,this.uint16[P+23]=b,this.uint16[P+24]=w,this.uint16[P+25]=T,this.uint16[P+26]=E,this.uint16[P+27]=A,this.uint16[P+28]=S,this.uint32[z+15]=M,this.float32[z+16]=C,this.float32[z+17]=k,this.float32[z+18]=I,e}}os.prototype.bytesPerElement=76,Xn(os,"StructArrayLayout3i2f6i15ui1ul3f76");class ss extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.float32[1*e+0]=t,e}}ss.prototype.bytesPerElement=4,Xn(ss,"StructArrayLayout1f4");class as extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=5*e;return this.float32[s+0]=t,this.float32[s+1]=i,this.float32[s+2]=r,this.float32[s+3]=n,this.float32[s+4]=o,e}}as.prototype.bytesPerElement=20,Xn(as,"StructArrayLayout5f20");class ls extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=6*e;return this.uint32[3*e+0]=t,this.uint16[o+2]=i,this.uint16[o+3]=r,this.uint16[o+4]=n,e}}ls.prototype.bytesPerElement=12,Xn(ls,"StructArrayLayout1ul3ui12");class cs extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.uint16[r+0]=t,this.uint16[r+1]=i,e}}cs.prototype.bytesPerElement=4,Xn(cs,"StructArrayLayout2ui4");class hs extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint16[1*e+0]=t,e}}hs.prototype.bytesPerElement=2,Xn(hs,"StructArrayLayout1ui2");class us extends Fo{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.float32[r+0]=t,this.float32[r+1]=i,e}}us.prototype.bytesPerElement=8,Xn(us,"StructArrayLayout2f8");class ds extends Oo{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.int16[this._pos2+3]}get tileAnchorY(){return this._structArray.int16[this._pos2+4]}get x1(){return this._structArray.float32[this._pos4+3]}get y1(){return this._structArray.float32[this._pos4+4]}get x2(){return this._structArray.float32[this._pos4+5]}get y2(){return this._structArray.float32[this._pos4+6]}get padding(){return this._structArray.int16[this._pos2+14]}get featureIndex(){return this._structArray.uint32[this._pos4+8]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+18]}get bucketIndex(){return this._structArray.uint16[this._pos2+19]}}ds.prototype.size=40;class ps extends Jo{get(e){return new ds(this,e)}}Xn(ps,"CollisionBoxArray");class fs extends Oo{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+8]}get numGlyphs(){return this._structArray.uint16[this._pos2+9]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+5]}get lineStartIndex(){return this._structArray.uint32[this._pos4+6]}get lineLength(){return this._structArray.uint32[this._pos4+7]}get segment(){return this._structArray.uint16[this._pos2+16]}get lowerSize(){return this._structArray.uint16[this._pos2+17]}get upperSize(){return this._structArray.uint16[this._pos2+18]}get lineOffsetX(){return this._structArray.float32[this._pos4+10]}get lineOffsetY(){return this._structArray.float32[this._pos4+11]}get writingMode(){return this._structArray.uint8[this._pos1+48]}get placedOrientation(){return this._structArray.uint8[this._pos1+49]}set placedOrientation(e){this._structArray.uint8[this._pos1+49]=e}get hidden(){return this._structArray.uint8[this._pos1+50]}set hidden(e){this._structArray.uint8[this._pos1+50]=e}get crossTileID(){return this._structArray.uint32[this._pos4+13]}set crossTileID(e){this._structArray.uint32[this._pos4+13]=e}get associatedIconIndex(){return this._structArray.int16[this._pos2+28]}get flipState(){return this._structArray.uint8[this._pos1+58]}set flipState(e){this._structArray.uint8[this._pos1+58]=e}}fs.prototype.size=60;class ms extends ns{get(e){return new fs(this,e)}}Xn(ms,"PlacedSymbolArray");class _s extends Oo{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+8]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+9]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+10]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+11]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+12]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+13]}get key(){return this._structArray.uint16[this._pos2+14]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+17]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+18]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+19]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+20]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+21]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+22]}get featureIndex(){return this._structArray.uint16[this._pos2+23]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+24]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+25]}get numIconVertices(){return this._structArray.uint16[this._pos2+26]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+27]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+28]}get crossTileID(){return this._structArray.uint32[this._pos4+15]}set crossTileID(e){this._structArray.uint32[this._pos4+15]=e}get textOffset0(){return this._structArray.float32[this._pos4+16]}get textOffset1(){return this._structArray.float32[this._pos4+17]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+18]}}_s.prototype.size=76;class gs extends os{get(e){return new _s(this,e)}}Xn(gs,"SymbolInstanceArray");class ys extends ss{getoffsetX(e){return this.float32[1*e+0]}}Xn(ys,"GlyphOffsetArray");class xs extends No{getx(e){return this.int16[2*e+0]}gety(e){return this.int16[2*e+1]}}Xn(xs,"SymbolLineVertexArray");class vs extends Oo{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}get layoutVertexArrayOffset(){return this._structArray.uint16[this._pos2+4]}}vs.prototype.size=12;class bs extends ls{get(e){return new vs(this,e)}}Xn(bs,"FeatureIndexArray");class ws extends cs{geta_centroid_pos0(e){return this.uint16[2*e+0]}geta_centroid_pos1(e){return this.uint16[2*e+1]}}Xn(ws,"FillExtrusionCentroidArray");const Ts=jo([{name:"a_pattern",components:4,type:"Uint16"},{name:"a_pixel_ratio",components:1,type:"Float32"}]),Es=jo([{name:"a_dash",components:4,type:"Uint16"}]);var As={exports:{}},Ss={exports:{}};Ss.exports=function(e,t){var i,r,n,o,s,a,l,c;for(r=e.length-(i=3&e.length),n=t,s=3432918353,a=461845907,c=0;c>>16)*s&65535)<<16)&4294967295)<<15|l>>>17))*a+(((l>>>16)*a&65535)<<16)&4294967295)<<13|n>>>19))+((5*(n>>>16)&65535)<<16)&4294967295))+((58964+(o>>>16)&65535)<<16);switch(l=0,i){case 3:l^=(255&e.charCodeAt(c+2))<<16;case 2:l^=(255&e.charCodeAt(c+1))<<8;case 1:n^=l=(65535&(l=(l=(65535&(l^=255&e.charCodeAt(c)))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<15|l>>>17))*a+(((l>>>16)*a&65535)<<16)&4294967295}return n^=e.length,n=2246822507*(65535&(n^=n>>>16))+((2246822507*(n>>>16)&65535)<<16)&4294967295,n=3266489909*(65535&(n^=n>>>13))+((3266489909*(n>>>16)&65535)<<16)&4294967295,(n^=n>>>16)>>>0};var Ms=Ss.exports,Cs={exports:{}};Cs.exports=function(e,t){for(var i,r=e.length,n=t^r,o=0;r>=4;)i=1540483477*(65535&(i=255&e.charCodeAt(o)|(255&e.charCodeAt(++o))<<8|(255&e.charCodeAt(++o))<<16|(255&e.charCodeAt(++o))<<24))+((1540483477*(i>>>16)&65535)<<16),n=1540483477*(65535&n)+((1540483477*(n>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),r-=4,++o;switch(r){case 3:n^=(255&e.charCodeAt(o+2))<<16;case 2:n^=(255&e.charCodeAt(o+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(o)))+((1540483477*(n>>>16)&65535)<<16)}return n=1540483477*(65535&(n^=n>>>13))+((1540483477*(n>>>16)&65535)<<16),(n^=n>>>15)>>>0};var ks=Ms,Is=Cs.exports;As.exports=ks,As.exports.murmur3=ks,As.exports.murmur2=Is;var Ps=d(As.exports);class zs{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(e,t,i,r){this.ids.push(Ls(e)),this.positions.push(t,i,r)}getPositions(e){const t=Ls(e);let i=0,r=this.ids.length-1;for(;i>1;this.ids[e]>=t?r=e:i=e+1}const n=[];for(;this.ids[i]===t;)n.push({index:this.positions[3*i],start:this.positions[3*i+1],end:this.positions[3*i+2]}),i++;return n}static serialize(e,t){const i=new Float64Array(e.ids),r=new Uint32Array(e.positions);return Ds(i,r,0,i.length-1),t&&t.push(i.buffer,r.buffer),{ids:i,positions:r}}static deserialize(e){const t=new zs;return t.ids=e.ids,t.positions=e.positions,t.indexed=!0,t}}function Ls(e){const t=+e;return!isNaN(t)&&Number.MIN_SAFE_INTEGER<=t&&t<=Number.MAX_SAFE_INTEGER?t:Ps(String(e))}function Ds(e,t,i,r){for(;i>1];let o=i-1,s=r+1;for(;;){do{o++}while(e[o]n);if(o>=s)break;Rs(e,o,s),Rs(t,3*o,3*s),Rs(t,3*o+1,3*s+1),Rs(t,3*o+2,3*s+2)}s-i`u_${e}`)),this.type=i}setUniform(e,t,i,r,n){t.set(e,n,r.constantOr(this.value))}getBinding(e,t){return"color"===this.type?new js(e):new Os(e)}}class qs{constructor(e,t){this.uniformNames=t.map((e=>`u_${e}`)),this.pattern=null,this.pixelRatio=1}setConstantPatternPositions(e){this.pixelRatio=e.pixelRatio||1,this.pattern=e.tl.concat(e.br)}setUniform(e,t,i,r,n){const o="u_pattern"===n||"u_dash"===n?this.pattern:"u_pixel_ratio"===n?this.pixelRatio:null;o&&t.set(e,n,o)}getBinding(e,t){return"u_pattern"===t||"u_dash"===t?new Fs(e):new Os(e)}}class Zs{constructor(e,t,i,r){this.expression=e,this.type=i,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:"Float32",components:"color"===i?2:1,offset:0}))),this.paintVertexArray=new r}populatePaintArray(e,t,i,r,n,o){const s=this.paintVertexArray.length,a=this.expression.evaluate(new wo(0),t,{},n,r,o);this.paintVertexArray.resize(e),this._setPaintValue(s,e,a)}updatePaintArray(e,t,i,r,n){const o=this.expression.evaluate({zoom:0},i,r,void 0,n);this._setPaintValue(e,t,o)}_setPaintValue(e,t,i){if("color"===this.type){const r=$s(i);for(let i=e;i`u_${e}_t`)),this.type=i,this.useIntegerZoom=r,this.zoom=n,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:"Float32",components:"color"===i?4:2,offset:0}))),this.paintVertexArray=new o}populatePaintArray(e,t,i,r,n,o){const s=this.expression.evaluate(new wo(this.zoom),t,{},n,r,o),a=this.expression.evaluate(new wo(this.zoom+1),t,{},n,r,o),l=this.paintVertexArray.length;this.paintVertexArray.resize(e),this._setPaintValue(l,e,s,a)}updatePaintArray(e,t,i,r,n){const o=this.expression.evaluate({zoom:this.zoom},i,r,void 0,n),s=this.expression.evaluate({zoom:this.zoom+1},i,r,void 0,n);this._setPaintValue(e,t,o,s)}_setPaintValue(e,t,i,r){if("color"===this.type){const n=$s(i),o=$s(r);for(let i=e;i!0)){this.binders={},this._buffers=[];const r=[];for(const n in e.paint._values){if(!i(n))continue;const o=e.paint.get(n);if(!(o instanceof ko&&Rr(o.property.specification)))continue;const s=Js(n,e.type),a=o.value,l=o.property.specification.type,c=!!o.property.useIntegerZoom,h="line-dasharray"===n||n.endsWith("pattern"),u="line-dasharray"===n&&"constant"!==e.layout.get("line-cap").value.kind;if("constant"!==a.kind||u)if("source"===a.kind||u||h){const t=ta(n,l,"source");this.binders[n]=h?new Hs(a,s,l,t,e.id):new Zs(a,s,l,t),r.push(`/a_${n}`)}else{const e=ta(n,l,"composite");this.binders[n]=new Ws(a,s,l,c,t,e),r.push(`/z_${n}`)}else this.binders[n]=h?new qs(a.value,s):new Gs(a.value,s,l),r.push(`/u_${n}`)}this.cacheKey=r.sort().join("")}getMaxValue(e){const t=this.binders[e];return t instanceof Zs||t instanceof Ws?t.maxValue:0}populatePaintArrays(e,t,i,r,n,o){for(const s in this.binders){const a=this.binders[s];(a instanceof Zs||a instanceof Ws||a instanceof Hs)&&a.populatePaintArray(e,t,i,r,n,o)}}setConstantPatternPositions(e){for(const t in this.binders){const i=this.binders[t];i instanceof qs&&i.setConstantPatternPositions(e)}}updatePaintArrays(e,t,i,r,n,o){let s=!1;for(const a in e){const l=t.getPositions(a);for(const t of l){const l=i.feature(t.index);for(const i in this.binders){const c=this.binders[i];if((c instanceof Zs||c instanceof Ws||c instanceof Hs)&&!0===c.expression.isStateDependent){const h=r.paint.get(i);c.expression=h.value,c.updatePaintArray(t.start,t.end,l,e[a],n,o),s=!0}}}}return s}defines(){const e=[];for(const t in this.binders){const i=this.binders[t];(i instanceof Gs||i instanceof qs)&&e.push(...i.uniformNames.map((e=>`#define HAS_UNIFORM_${e}`)))}return e}getBinderAttributes(){const e=[];for(const t in this.binders){const i=this.binders[t];if(i instanceof Zs||i instanceof Ws||i instanceof Hs)for(let t=0;t!0)){this.programConfigurations={};for(const r of e)this.programConfigurations[r.id]=new Xs(r,t,i);this.needsUpload=!1,this._featureMap=new zs,this._bufferOffset=0}populatePaintArrays(e,t,i,r,n,o,s){for(const i in this.programConfigurations)this.programConfigurations[i].populatePaintArrays(e,t,r,n,o,s);void 0!==t.id&&this._featureMap.add(t.id,i,this._bufferOffset,e),this._bufferOffset=e,this.needsUpload=!0}updatePaintArrays(e,t,i,r,n){for(const o of i)this.needsUpload=this.programConfigurations[o.id].updatePaintArrays(e,this._featureMap,t,o,r,n)||this.needsUpload}get(e){return this.programConfigurations[e]}upload(e){if(this.needsUpload){for(const t in this.programConfigurations)this.programConfigurations[t].upload(e);this.needsUpload=!1}}destroy(){for(const e in this.programConfigurations)this.programConfigurations[e].destroy()}}const Ys={"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern","pixel_ratio"],"fill-pattern":["pattern","pixel_ratio"],"fill-extrusion-pattern":["pattern","pixel_ratio"],"line-dasharray":["dash"]};function Js(e,t){return Ys[e]||[e.replace(`${t}-`,"").replace(/-/g,"_")]}const Qs={"line-pattern":{source:Zo,composite:Zo},"fill-pattern":{source:Zo,composite:Zo},"fill-extrusion-pattern":{source:Zo,composite:Zo},"line-dasharray":{source:Wo,composite:Wo}},ea={color:{source:us,composite:qo},number:{source:ss,composite:us}};function ta(e,t,i){const r=Qs[e];return r&&r[i]||ea[t][i]}Xn(Gs,"ConstantBinder"),Xn(qs,"PatternConstantBinder"),Xn(Zs,"SourceExpressionBinder"),Xn(Hs,"PatternCompositeBinder"),Xn(Ws,"CompositeExpressionBinder"),Xn(Xs,"ProgramConfiguration",{omit:["_buffers"]}),Xn(Ks,"ProgramConfigurationSet");const ia="-transition";class ra extends Qe{constructor(e,t){if(super(),this.id=e.id,this.type=e.type,this._featureFilter={filter:()=>!0,needGeometry:!1,needFeature:!1},this._filterCompiled=!1,"custom"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&"sky"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),t.layout&&(this._unevaluatedLayout=new Co(t.layout)),t.paint)){this._transitionablePaint=new Ao(t.paint);for(const t in e.paint)this.setPaintProperty(t,e.paint[t],{validate:!1});for(const t in e.layout)this.setLayoutProperty(t,e.layout[t],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Io(t.paint)}}getLayoutProperty(e){return"visibility"===e?this.visibility:this._unevaluatedLayout.getValue(e)}setLayoutProperty(e,t,i={}){null!=t&&this._validate(Nn,`layers.${this.id}.layout.${e}`,e,t,i)||("visibility"!==e?this._unevaluatedLayout.setValue(e,t):this.visibility=t)}getPaintProperty(e){return j(e,ia)?this._transitionablePaint.getTransition(e.slice(0,-11)):this._transitionablePaint.getValue(e)}setPaintProperty(e,t,i={}){if(null!=t&&this._validate(Un,`layers.${this.id}.paint.${e}`,e,t,i))return!1;if(j(e,ia))return this._transitionablePaint.setTransition(e.slice(0,-11),t||void 0),!1;{const i=this._transitionablePaint._values[e],r=i.value.isDataDriven(),n=i.value;this._transitionablePaint.setValue(e,t),this._handleSpecialPaintPropertyUpdate(e);const o=this._transitionablePaint._values[e].value,s=o.isDataDriven(),a=j(e,"pattern")||"line-dasharray"===e;return s||r||a||this._handleOverridablePaintPropertyUpdate(e,n,o)}}_handleSpecialPaintPropertyUpdate(e){}getProgramIds(){return null}getProgramConfiguration(e){return null}_handleOverridablePaintPropertyUpdate(e,t,i){return!1}isHidden(e){return!!(this.minzoom&&e=this.maxzoom)||"none"===this.visibility}updateTransitions(e){this._transitioningPaint=this._transitionablePaint.transitioned(e,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(e,t){this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(e,void 0,t)),this.paint=this._transitioningPaint.possiblyEvaluate(e,void 0,t)}serialize(){const e={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(e.layout=e.layout||{},e.layout.visibility=this.visibility),N(e,((e,t)=>!(void 0===e||"layout"===t&&!Object.keys(e).length||"paint"===t&&!Object.keys(e).length)))}_validate(e,t,i,r,n={}){return(!n||!1!==n.validate)&&$n(this,e.call(jn,{key:t,layerType:this.type,objectKey:i,value:r,styleSpec:et,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isSky(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(const e in this.paint._values){const t=this.paint.get(e);if(t instanceof ko&&Rr(t.property.specification)&&("source"===t.value.kind||"composite"===t.value.kind)&&t.value.isStateDependent)return!0}return!1}compileFilter(){this._filterCompiled||(this._featureFilter=un(this.filter),this._filterCompiled=!0)}invalidateCompiledFilter(){this._filterCompiled=!1}dynamicFilter(){return this._featureFilter.dynamicFilter}dynamicFilterNeedsFeature(){return this._featureFilter.needFeature}}const na=jo([{name:"a_pos",components:2,type:"Int16"}],4),oa=jo([{name:"a_pos_3",components:3,type:"Int16"},{name:"a_pos_normal_3",components:3,type:"Int16"}]);class sa{constructor(e=[]){this.segments=e}prepareSegment(e,t,i,r){let n=this.segments[this.segments.length-1];return e>sa.MAX_VERTEX_ARRAY_LENGTH&&G(`Max vertices per segment is ${sa.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${e}`),(!n||n.vertexLength+e>sa.MAX_VERTEX_ARRAY_LENGTH||n.sortKey!==r)&&(n={vertexOffset:t.length,primitiveOffset:i.length,vertexLength:0,primitiveLength:0},void 0!==r&&(n.sortKey=r),this.segments.push(n)),n}get(){return this.segments}destroy(){for(const e of this.segments)for(const t in e.vaos)e.vaos[t].destroy()}static simpleSegment(e,t,i,r){return new sa([{vertexOffset:e,primitiveOffset:t,vertexLength:i,primitiveLength:r,vaos:{},sortKey:0}])}}sa.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Xn(sa,"SegmentVector");var aa=8192;class la{constructor(e,t){e&&(t?this.setSouthWest(e).setNorthEast(t):4===e.length?this.setSouthWest([e[0],e[1]]).setNorthEast([e[2],e[3]]):this.setSouthWest(e[0]).setNorthEast(e[1]))}setNorthEast(e){return this._ne=e instanceof Vl?new Vl(e.lng,e.lat):Vl.convert(e),this}setSouthWest(e){return this._sw=e instanceof Vl?new Vl(e.lng,e.lat):Vl.convert(e),this}extend(e){const t=this._sw,i=this._ne;let r,n;if(e instanceof Vl)r=e,n=e;else{if(!(e instanceof la))return Array.isArray(e)?4===e.length||e.every(Array.isArray)?this.extend(la.convert(e)):this.extend(Vl.convert(e)):"object"==typeof e&&null!==e&&e.hasOwnProperty("lat")&&(e.hasOwnProperty("lon")||e.hasOwnProperty("lng"))?this.extend(Vl.convert(e)):this;if(r=e._sw,n=e._ne,!r||!n)return this}return t||i?(t.lng=Math.min(r.lng,t.lng),t.lat=Math.min(r.lat,t.lat),i.lng=Math.max(n.lng,i.lng),i.lat=Math.max(n.lat,i.lat)):(this._sw=new Vl(r.lng,r.lat),this._ne=new Vl(n.lng,n.lat)),this}getCenter(){return new Vl((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new Vl(this.getWest(),this.getNorth())}getSouthEast(){return new Vl(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(e){const{lng:t,lat:i}=Vl.convert(e);let r=this._sw.lng<=t&&t<=this._ne.lng;return this._sw.lng>this._ne.lng&&(r=this._sw.lng>=t&&t>=this._ne.lng),this._sw.lat<=i&&i<=this._ne.lat&&r}static convert(e){return!e||e instanceof la?e:new la(e)}}var ca=1e-6,ha="undefined"!=typeof Float32Array?Float32Array:Array;function ua(){var e=new ha(9);return ha!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function da(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=i[0],p=i[1],f=i[2],m=i[3],_=i[4],g=i[5],y=i[6],x=i[7],v=i[8];return e[0]=d*r+p*s+f*c,e[1]=d*n+p*a+f*h,e[2]=d*o+p*l+f*u,e[3]=m*r+_*s+g*c,e[4]=m*n+_*a+g*h,e[5]=m*o+_*l+g*u,e[6]=y*r+x*s+v*c,e[7]=y*n+x*a+v*h,e[8]=y*o+x*l+v*u,e}function pa(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function fa(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],_=t[14],g=t[15],y=i*a-r*s,x=i*l-n*s,v=i*c-o*s,b=r*l-n*a,w=r*c-o*a,T=n*c-o*l,E=h*m-u*f,A=h*_-d*f,S=h*g-p*f,M=u*_-d*m,C=u*g-p*m,k=d*g-p*_,I=y*k-x*C+v*M+b*S-w*A+T*E;return I?(e[0]=(a*k-l*C+c*M)*(I=1/I),e[1]=(n*C-r*k-o*M)*I,e[2]=(m*T-_*w+g*b)*I,e[3]=(d*w-u*T-p*b)*I,e[4]=(l*S-s*k-c*A)*I,e[5]=(i*k-n*S+o*A)*I,e[6]=(_*v-f*T-g*x)*I,e[7]=(h*T-d*v+p*x)*I,e[8]=(s*C-a*S+c*E)*I,e[9]=(r*S-i*C-o*E)*I,e[10]=(f*w-m*v+g*y)*I,e[11]=(u*v-h*w-p*y)*I,e[12]=(a*A-s*M-l*E)*I,e[13]=(i*M-r*A+n*E)*I,e[14]=(m*x-f*b-_*y)*I,e[15]=(h*b-u*x+d*y)*I,e):null}function ma(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=t[9],p=t[10],f=t[11],m=t[12],_=t[13],g=t[14],y=t[15],x=i[0],v=i[1],b=i[2],w=i[3];return e[0]=x*r+v*a+b*u+w*m,e[1]=x*n+v*l+b*d+w*_,e[2]=x*o+v*c+b*p+w*g,e[3]=x*s+v*h+b*f+w*y,e[4]=(x=i[4])*r+(v=i[5])*a+(b=i[6])*u+(w=i[7])*m,e[5]=x*n+v*l+b*d+w*_,e[6]=x*o+v*c+b*p+w*g,e[7]=x*s+v*h+b*f+w*y,e[8]=(x=i[8])*r+(v=i[9])*a+(b=i[10])*u+(w=i[11])*m,e[9]=x*n+v*l+b*d+w*_,e[10]=x*o+v*c+b*p+w*g,e[11]=x*s+v*h+b*f+w*y,e[12]=(x=i[12])*r+(v=i[13])*a+(b=i[14])*u+(w=i[15])*m,e[13]=x*n+v*l+b*d+w*_,e[14]=x*o+v*c+b*p+w*g,e[15]=x*s+v*h+b*f+w*y,e}function _a(e,t,i){var r,n,o,s,a,l,c,h,u,d,p,f,m=i[0],_=i[1],g=i[2];return t===e?(e[12]=t[0]*m+t[4]*_+t[8]*g+t[12],e[13]=t[1]*m+t[5]*_+t[9]*g+t[13],e[14]=t[2]*m+t[6]*_+t[10]*g+t[14],e[15]=t[3]*m+t[7]*_+t[11]*g+t[15]):(n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=t[9],p=t[10],f=t[11],e[0]=r=t[0],e[1]=n,e[2]=o,e[3]=s,e[4]=a,e[5]=l,e[6]=c,e[7]=h,e[8]=u,e[9]=d,e[10]=p,e[11]=f,e[12]=r*m+a*_+u*g+t[12],e[13]=n*m+l*_+d*g+t[13],e[14]=o*m+c*_+p*g+t[14],e[15]=s*m+h*_+f*g+t[15]),e}function ga(e,t,i){var r=i[0],n=i[1],o=i[2];return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*o,e[9]=t[9]*o,e[10]=t[10]*o,e[11]=t[11]*o,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function ya(e,t,i){var r=Math.sin(i),n=Math.cos(i),o=t[4],s=t[5],a=t[6],l=t[7],c=t[8],h=t[9],u=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=o*n+c*r,e[5]=s*n+h*r,e[6]=a*n+u*r,e[7]=l*n+d*r,e[8]=c*n-o*r,e[9]=h*n-s*r,e[10]=u*n-a*r,e[11]=d*n-l*r,e}function xa(e,t,i){var r=Math.sin(i),n=Math.cos(i),o=t[0],s=t[1],a=t[2],l=t[3],c=t[8],h=t[9],u=t[10],d=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*n-c*r,e[1]=s*n-h*r,e[2]=a*n-u*r,e[3]=l*n-d*r,e[8]=o*r+c*n,e[9]=s*r+h*n,e[10]=a*r+u*n,e[11]=l*r+d*n,e}function va(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function ba(e,t,i){var r,n,o,s=i[0],a=i[1],l=i[2],c=Math.hypot(s,a,l);return c0&&(o=1/Math.sqrt(o)),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o,e}function Ra(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Ba(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[0],a=i[1],l=i[2];return e[0]=n*l-o*a,e[1]=o*s-r*l,e[2]=r*a-n*s,e}function Oa(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[3]*r+i[7]*n+i[11]*o+i[15];return e[0]=(i[0]*r+i[4]*n+i[8]*o+i[12])/(s=s||1),e[1]=(i[1]*r+i[5]*n+i[9]*o+i[13])/s,e[2]=(i[2]*r+i[6]*n+i[10]*o+i[14])/s,e}function Fa(e,t,i){var r=i[0],n=i[1],o=i[2],s=t[0],a=t[1],l=t[2],c=n*l-o*a,h=o*s-r*l,u=r*a-n*s,d=n*u-o*h,p=o*c-r*u,f=r*h-n*c,m=2*i[3];return h*=m,u*=m,p*=2,f*=2,e[0]=s+(c*=m)+(d*=2),e[1]=a+h+p,e[2]=l+u+f,e}var ja,Ua=Ca,Na=ka,Va=Aa;function $a(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e}function Ga(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i*i+r*r+n*n+o*o;return s>0&&(s=1/Math.sqrt(s)),e[0]=i*s,e[1]=r*s,e[2]=n*s,e[3]=o*s,e}function qa(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3];return e[0]=i[0]*r+i[4]*n+i[8]*o+i[12]*s,e[1]=i[1]*r+i[5]*n+i[9]*o+i[13]*s,e[2]=i[2]*r+i[6]*n+i[10]*o+i[14]*s,e[3]=i[3]*r+i[7]*n+i[11]*o+i[15]*s,e}function Za(){var e=new ha(4);return ha!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function Wa(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e}function Ha(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+s*a,e[1]=n*l+o*a,e[2]=o*l-n*a,e[3]=s*l-r*a,e}function Xa(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l-o*a,e[1]=n*l+s*a,e[2]=o*l+r*a,e[3]=s*l-n*a,e}Ta(),ja=new ha(4),ha!=Float32Array&&(ja[0]=0,ja[1]=0,ja[2]=0,ja[3]=0);var Ka=Ga;Ta(),Sa(1,0,0),Sa(0,1,0),Za(),Za(),ua();const Ya=jo([{type:"Float32",name:"a_globe_pos",components:3},{type:"Float32",name:"a_uv",components:2}]),{members:Ja}=Ya,Qa=jo([{name:"a_pos_3",components:3,type:"Int16"}]);var el=jo([{name:"a_pos",type:"Int16",components:2}]);class tl{constructor(e,t){this.pos=e,this.dir=t}intersectsPlane(e,t,i){const r=Ra(t,this.dir);if(Math.abs(r)<1e-6)return!1;const n=((e[0]-this.pos[0])*t[0]+(e[1]-this.pos[1])*t[1]+(e[2]-this.pos[2])*t[2])/r;return i[0]=this.pos[0]+this.dir[0]*n,i[1]=this.pos[1]+this.dir[1]*n,i[2]=this.pos[2]+this.dir[2]*n,!0}closestPointOnSphere(e,t,i){if(function(e,t){var i=e[0],r=e[1],n=e[2],o=t[0],s=t[1],a=t[2];return Math.abs(i-o)<=ca*Math.max(1,Math.abs(i),Math.abs(o))&&Math.abs(r-s)<=ca*Math.max(1,Math.abs(r),Math.abs(s))&&Math.abs(n-a)<=ca*Math.max(1,Math.abs(n),Math.abs(a))}(this.pos,e)||0===t)return i[0]=i[1]=i[2]=0,!1;const[r,n,o]=this.dir,s=this.pos[0]-e[0],a=this.pos[1]-e[1],l=this.pos[2]-e[2],c=r*r+n*n+o*o,h=2*(s*r+a*n+l*o),u=h*h-4*c*(s*s+a*a+l*l-t*t);if(u<0){const e=Math.max(-h/2,0),c=s+r*e,u=a+n*e,d=l+o*e,p=Math.hypot(c,u,d);return i[0]=c*t/p,i[1]=u*t/p,i[2]=d*t/p,!1}{const e=(-h-Math.sqrt(u))/(2*c);if(e<0){const e=Math.hypot(s,a,l);return i[0]=s*t/e,i[1]=a*t/e,i[2]=l*t/e,!1}return i[0]=s+r*e,i[1]=a+n*e,i[2]=l+o*e,!0}}}class il{constructor(e,t,i,r,n){this.TL=e,this.TR=t,this.BR=i,this.BL=r,this.horizon=n}static fromInvProjectionMatrix(e,t,i){const r=[-1,1,1],n=[1,1,1],o=[1,-1,1],s=[-1,-1,1],a=Oa(r,r,e),l=Oa(n,n,e),c=Oa(o,o,e),h=Oa(s,s,e);return new il(a,l,c,h,t/i)}}class rl{constructor(e,t){this.points=e,this.planes=t}static fromInvProjectionMatrix(e,t,i,r){const n=Math.pow(2,i),o=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((i=>{const o=qa([],i,e),s=1/o[3]/t*n;return function(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e[3]=t[3]*i[3],e}(o,o,[s,s,r?1/o[3]:s,s])})),s=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((e=>{const t=Da([],Ba([],Ua([],o[e[0]],o[e[1]]),Ua([],o[e[2]],o[e[1]]))),i=-Ra(t,o[e[1]]);return t.concat(i)}));return new rl(o,s)}}class nl{static fromPoints(e){const t=[1/0,1/0,1/0],i=[-1/0,-1/0,-1/0];for(const r of e)Ia(t,t,r),Pa(i,i,r);return new nl(t,i)}static applyTransform(e,t){const i=e.getCorners();for(let e=0;e=0;if(0===o)return 0;o!==t.length&&(i=!1)}if(i)return 2;for(let t=0;t<3;t++){let i=Number.MAX_VALUE,r=-Number.MAX_VALUE;for(let n=0;nthis.max[t]-this.min[t])return 0}return 1}}const ol=5,sl=6,al=aa/Math.PI/2,ll=16383,cl=64,hl=[cl,32,16],ul=-al,dl=al,pl=[new nl([ul,ul,ul],[dl,dl,dl]),new nl([ul,ul,ul],[0,0,dl]),new nl([0,ul,ul],[dl,0,dl]),new nl([ul,0,ul],[0,dl,dl]),new nl([0,0,ul],[dl,dl,dl])];function fl(e){return e*al/jl}function ml(e,t,i,r=!0){const n=za([],e._camera.position,e.worldSize),o=[t,i,1,1];qa(o,o,e.pixelMatrixInverse),$a(o,o,1/o[3]);const s=Da([],Ua([],o,n)),a=e.globeMatrix,l=[a[12],a[13],a[14]],c=Ua([],l,n),h=Aa(c),u=Da([],c),d=e.worldSize/(2*Math.PI),p=Ra(u,s),f=Math.asin(d/h);if(f1?null:function(e,t,i,r){const n=Math.sin(i);return e*(Math.sin((1-r)*i)/n)+t*(Math.sin(r*i)/n)}(e.a[t],e.b[t],e.angle,M(i,0,1))+e.center[t]}function yl(e){if(e.z<=1)return pl[e.z+2*e.y+e.x];const t=El(Tl(e));return nl.fromPoints(t)}function xl(e,t,i){return za(e,e,1-i),La(e,e,t,i)}function vl(e,t){const i=Ll(t.zoom);if(0===i)return yl(e);const r=Tl(e),n=El(r),o=Gl(r.getWest())*t.worldSize,s=Gl(r.getEast())*t.worldSize,a=ql(r.getNorth())*t.worldSize,l=ql(r.getSouth())*t.worldSize,c=[o,a,0],h=[s,a,0],u=[o,l,0],d=[s,l,0],p=fa([],t.globeMatrix);return Oa(c,c,p),Oa(h,h,p),Oa(u,u,p),Oa(d,d,p),n[0]=xl(n[0],u,i),n[1]=xl(n[1],d,i),n[2]=xl(n[2],h,i),n[3]=xl(n[3],c,i),nl.fromPoints(n)}function bl(e,t,i){for(const r of e)Oa(r,r,t),za(r,r,i)}function wl(e,t,i){const r=t/e.worldSize,n=e.globeMatrix;if(i.z<=1){const e=yl(i).getCorners();return bl(e,n,r),nl.fromPoints(e)}const o=Tl(i),s=El(o);bl(s,n,r);const a=Number.MAX_VALUE,l=[-a,-a,-a],c=[a,a,a];if(o.contains(e.center)){for(const e of s)Ia(c,c,e),Pa(l,l,e);l[2]=0;const t=e.point,i=[t.x*r,t.y*r,0];return Ia(c,c,i),Pa(l,l,i),new nl(c,l)}const h=[n[12]*r,n[13]*r,n[14]*r],u=o.getCenter(),d=M(e.center.lat,-Kl,Kl),p=M(u.lat,-Kl,Kl),f=Gl(e.center.lng),m=ql(d);let _=f-Gl(u.lng);const g=m-ql(p);_>.5?_-=1:_<-.5&&(_+=1);let y=0;Math.abs(_)>Math.abs(g)?y=_>=0?1:3:(y=g>=0?0:2,La(h,h,[n[4]*r,n[5]*r,n[6]*r],-Math.sin(b(g>=0?o.getSouth():o.getNorth()))*al));const x=s[y],v=s[(y+1)%4],w=new _l(x,v,h),T=[gl(w,0)||x[0],gl(w,1)||x[1],gl(w,2)||x[2]],E=Ll(e.zoom);if(E>0){const r=function({x:e,y:t,z:i},r,n,o,s){const a=1/(1<.5?d=-1:p<-.5&&(d=1),l=((l+d)*r-(o*=r))*n+o,c=((c+d)*r-o)*n+o,h=(h*r-(s*=r))*n+s,u=(u*r-s)*n+s,[[l,u,0],[c,u,0],[c,h,0],[l,h,0]]}(i,t,e._pixelsPerMercatorPixel,f,m);for(let e=0;eMath.PI/2*1.01}const Bl=b(85),Ol=Math.cos(Bl),Fl=Math.sin(Bl),jl=6371008.8,Ul=2*Math.PI*jl;class Nl{constructor(e,t){if(isNaN(e)||isNaN(t))throw new Error(`Invalid LngLat object: (${e}, ${t})`);if(this.lng=+e,this.lat=+t,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Nl(k(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(e){const t=Math.PI/180,i=this.lat*t,r=e.lat*t,n=Math.sin(i)*Math.sin(r)+Math.cos(i)*Math.cos(r)*Math.cos((e.lng-this.lng)*t);return jl*Math.acos(Math.min(n,1))}toBounds(e=0){const t=360*e/40075017,i=t/Math.cos(Math.PI/180*this.lat);return new la(new Nl(this.lng-i,this.lat-t),new Nl(this.lng+i,this.lat+t))}toEcef(e){const t=fl(e);return Sl(this.lat,this.lng,al+t)}static convert(e){if(e instanceof Nl)return e;if(Array.isArray(e)&&(2===e.length||3===e.length))return new Nl(Number(e[0]),Number(e[1]));if(!Array.isArray(e)&&"object"==typeof e&&null!==e)return new Nl(Number("lng"in e?e.lng:e.lon),Number(e.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}var Vl=Nl;function $l(e){return Ul*Math.cos(e*Math.PI/180)}function Gl(e){return(180+e)/360}function ql(e){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e*Math.PI/360)))/360}function Zl(e,t){return e/$l(t)}function Wl(e){return 360*e-180}function Hl(e){return 360/Math.PI*Math.atan(Math.exp((180-360*e)*Math.PI/180))-90}function Xl(e,t){return e*$l(Hl(t))}const Kl=85.051129;function Yl(e){return 1/Math.cos(e*Math.PI/180)}class Jl{constructor(e,t,i=0){this.x=+e,this.y=+t,this.z=+i}static fromLngLat(e,t=0){const i=Vl.convert(e);return new Jl(Gl(i.lng),ql(i.lat),Zl(t,i.lat))}toLngLat(){return new Vl(Wl(this.x),Hl(this.y))}toAltitude(){return Xl(this.z,this.y)}meterInMercatorCoordinateUnits(){return 1/Ul*Yl(Hl(this.y))}}function Ql(e,t,i,r,n,o,s,a,l){const c=(t+r)/2,h=(i+n)/2,u=new y(c,h);a(u),function(e,t,i,r,n,o){const s=i-n,a=r-o;return Math.abs((r-t)*s-(i-e)*a)/Math.hypot(s,a)}(u.x,u.y,o.x,o.y,s.x,s.y)>=l?(Ql(e,t,i,c,h,o,u,a,l),Ql(e,c,h,r,n,u,s,a,l)):e.push(s)}function ec(e,t,i){let r=e[0],n=r.x,o=r.y;t(r);const s=[r];for(let a=1;ae.x+1||re.y+1)&&G("Geometry exceeds allowed extent, reduce your vector tile buffer size"),e}function sc(e,t,i){const r=e.loadGeometry(),n=e.extent,o=aa/n;if(t&&i&&i.projection.isReprojectedInTileSpace){const o=1<{const i=Wl((t.x+e.x/n)/o),r=Hl((t.y+e.y/n)/o),h=c.project(i,r);e.x=(h.x*s-a)*n,e.y=(h.y*s-l)*n};for(let t=0;t=n||i.y<0||i.y>=n||(h(i),e.push(i));r[t]=e}}for(const e of r)for(const t of e)oc(t,o);return r}function ac(e,t){return{type:e.type,id:e.id,properties:e.properties,geometry:t?sc(e):[]}}function lc(e,t,i,r,n){e.emplaceBack(2*t+(r+1)/2,2*i+(n+1)/2)}function cc(e,t,i){const r=16384;e.emplaceBack(t.x,t.y,t.z,i[0]*r,i[1]*r,i[2]*r)}class hc{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.id)),this.index=e.index,this.hasPattern=!1,this.projection=e.projection,this.layoutVertexArray=new No,this.indexArray=new rs,this.segments=new sa,this.programConfigurations=new Ks(e.layers,e.zoom),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id))}populate(e,t,i,r){const n=this.layers[0],o=[];let s=null;"circle"===n.type&&(s=n.layout.get("circle-sort-key"));for(const{feature:t,id:n,index:a,sourceLayerIndex:l}of e){const e=this.layers[0]._featureFilter.needGeometry,c=ac(t,e);if(!this.layers[0]._featureFilter.filter(new wo(this.zoom),c,i))continue;const h=s?s.evaluate(c,{},i):void 0,u={id:n,properties:t.properties,type:t.type,sourceLayerIndex:l,index:a,geometry:e?c.geometry:sc(t,i,r),patterns:{},sortKey:h};o.push(u)}s&&o.sort(((e,t)=>e.sortKey-t.sortKey));let a=null;"globe"===r.projection.name&&(this.globeExtVertexArray=new Ho,a=r.projection);for(const r of o){const{geometry:n,index:o,sourceLayerIndex:s}=r,l=e[o].feature;this.addFeature(r,n,o,t.availableImages,i,a),t.featureIndex.insert(l,n,o,s,this.index)}}update(e,t,i,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(e,t,this.stateDependentLayers,i,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,na.members),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.globeExtVertexArray&&(this.globeExtVertexBuffer=e.createVertexBuffer(this.globeExtVertexArray,oa.members))),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy())}addFeature(e,t,i,r,n,o){for(const i of t)for(const t of i){const i=t.x,r=t.y;if(i<0||i>=aa||r<0||r>=aa)continue;if(o){const e=o.projectTilePoint(i,r,n),t=o.upVector(n,i,r),s=this.globeExtVertexArray;cc(s,e,t),cc(s,e,t),cc(s,e,t),cc(s,e,t)}const s=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,e.sortKey),a=s.vertexLength;lc(this.layoutVertexArray,i,r,-1,-1),lc(this.layoutVertexArray,i,r,1,-1),lc(this.layoutVertexArray,i,r,1,1),lc(this.layoutVertexArray,i,r,-1,1),this.indexArray.emplaceBack(a,a+1,a+2),this.indexArray.emplaceBack(a,a+2,a+3),s.vertexLength+=4,s.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,i,{},r,n)}}function uc(e,t){for(let i=0;i1){if(mc(e,t))return!0;for(let r=0;r1?i:i.sub(t)._mult(n)._add(t))}function xc(e,t){let i,r,n,o=!1;for(let s=0;st.y!=n.y>t.y&&t.x<(n.x-r.x)*(t.y-r.y)/(n.y-r.y)+r.x&&(o=!o)}return o}function vc(e,t){let i=!1;for(let r=0,n=e.length-1;rt.y!=s.y>t.y&&t.x<(s.x-o.x)*(t.y-o.y)/(s.y-o.y)+o.x&&(i=!i)}return i}function bc(e,t,i,r,n){for(const o of e)if(t<=o.x&&i<=o.y&&r>=o.x&&n>=o.y)return!0;const o=[new y(t,i),new y(t,n),new y(r,n),new y(r,i)];if(e.length>2)for(const t of o)if(vc(e,t))return!0;for(let t=0;tn.x&&t.x>n.x||e.yn.y&&t.y>n.y)return!1;const o=q(e,t,i[0]);return o!==q(e,t,i[1])||o!==q(e,t,i[2])||o!==q(e,t,i[3])}function Tc(e,t,i){const r=t.paint.get(e).value;return"constant"===r.kind?r.value:i.programConfigurations.get(t.id).getMaxValue(e)}function Ec(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function Ac(e,t,i,r,n){if(!t[0]&&!t[1])return e;const o=y.convert(t)._mult(n);"viewport"===i&&o._rotate(-r);const s=[];for(let t=0;t0){const e=i.projection.upVector(c,u.x,u.y);p.x+=e[0]*h*d,p.y+=e[1]*h*d,p.z+=e[2]*h*d}const f=o?u:Ic(p.x,p.y,p.z,r),m=o?e.tilespaceRays.map((e=>Lc(e,d))):e.queryGeometry.screenGeometry,_=qa([],[p.x,p.y,p.z,1],r);if(!s&&o?l*=_[3]/i.cameraToCenterDistance:s&&!o&&(l*=i.cameraToCenterDistance/_[3]),o){const e=Hl((t.y/aa+c.y)/(1<e.width||n.height>e.height||i.x>e.width-n.width||i.y>e.height-n.height)throw new RangeError("out of range source coordinates for image copy");if(n.width>t.width||n.height>t.height||r.x>t.width-n.width||r.y>t.height-n.height)throw new RangeError("out of range destination coordinates for image copy");const s=e.data,a=t.data;for(let l=0;l{t[e.evaluationKey]=o;const s=e.expression.evaluate(t);n.data[i+r+0]=Math.floor(255*s.r/s.a),n.data[i+r+1]=Math.floor(255*s.g/s.a),n.data[i+r+2]=Math.floor(255*s.b/s.a),n.data[i+r+3]=Math.floor(255*s.a)};if(e.clips)for(let t=0,n=0;t80*i){r=o=e[0],n=s=e[1];for(var f=i;fo&&(o=a),l>s&&(s=l);c=0!==(c=Math.max(o-r,s-n))?32767/c:0}return Xc(d,p,i,r,n,c,0),p}function Wc(e,t,i,r,n){var o,s;if(n===gh(e,t,i,r)>0)for(o=t;o=t;o-=r)s=fh(o,e[o],e[o+1],s);return s&&lh(s,s.next)&&(mh(s),s=s.next),s}function Hc(e,t){if(!e)return e;t||(t=e);var i,r=e;do{if(i=!1,r.steiner||!lh(r,r.next)&&0!==ah(r.prev,r,r.next))r=r.next;else{if(mh(r),(r=t=r.prev)===r.next)break;i=!0}}while(i||r!==t);return t}function Xc(e,t,i,r,n,o,s){if(e){!s&&o&&function(e,t,i,r){var n=e;do{0===n.z&&(n.z=rh(n.x,n.y,t,i,r)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next}while(n!==e);n.prevZ.nextZ=null,n.prevZ=null,function(e){var t,i,r,n,o,s,a,l,c=1;do{for(i=e,e=null,o=null,s=0;i;){for(s++,r=i,a=0,t=0;t0||l>0&&r;)0!==a&&(0===l||!r||i.z<=r.z)?(n=i,i=i.nextZ,a--):(n=r,r=r.nextZ,l--),o?o.nextZ=n:e=n,n.prevZ=o,o=n;i=r}o.nextZ=null,c*=2}while(s>1)}(n)}(e,r,n,o);for(var a,l,c=e;e.prev!==e.next;)if(a=e.prev,l=e.next,o?Yc(e,r,n,o):Kc(e))t.push(a.i/i|0),t.push(e.i/i|0),t.push(l.i/i|0),mh(e),e=l.next,c=l.next;else if((e=l)===c){s?1===s?Xc(e=Jc(Hc(e),t,i),t,i,r,n,o,2):2===s&&Qc(e,t,i,r,n,o):Xc(Hc(e),t,i,r,n,o,1);break}}}function Kc(e){var t=e.prev,i=e,r=e.next;if(ah(t,i,r)>=0)return!1;for(var n=t.x,o=i.x,s=r.x,a=t.y,l=i.y,c=r.y,h=no?n>s?n:s:o>s?o:s,p=a>l?a>c?a:c:l>c?l:c,f=r.next;f!==t;){if(f.x>=h&&f.x<=d&&f.y>=u&&f.y<=p&&oh(n,a,o,l,s,c,f.x,f.y)&&ah(f.prev,f,f.next)>=0)return!1;f=f.next}return!0}function Yc(e,t,i,r){var n=e.prev,o=e,s=e.next;if(ah(n,o,s)>=0)return!1;for(var a=n.x,l=o.x,c=s.x,h=n.y,u=o.y,d=s.y,p=al?a>c?a:c:l>c?l:c,_=h>u?h>d?h:d:u>d?u:d,g=rh(p,f,t,i,r),y=rh(m,_,t,i,r),x=e.prevZ,v=e.nextZ;x&&x.z>=g&&v&&v.z<=y;){if(x.x>=p&&x.x<=m&&x.y>=f&&x.y<=_&&x!==n&&x!==s&&oh(a,h,l,u,c,d,x.x,x.y)&&ah(x.prev,x,x.next)>=0)return!1;if(x=x.prevZ,v.x>=p&&v.x<=m&&v.y>=f&&v.y<=_&&v!==n&&v!==s&&oh(a,h,l,u,c,d,v.x,v.y)&&ah(v.prev,v,v.next)>=0)return!1;v=v.nextZ}for(;x&&x.z>=g;){if(x.x>=p&&x.x<=m&&x.y>=f&&x.y<=_&&x!==n&&x!==s&&oh(a,h,l,u,c,d,x.x,x.y)&&ah(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;v&&v.z<=y;){if(v.x>=p&&v.x<=m&&v.y>=f&&v.y<=_&&v!==n&&v!==s&&oh(a,h,l,u,c,d,v.x,v.y)&&ah(v.prev,v,v.next)>=0)return!1;v=v.nextZ}return!0}function Jc(e,t,i){var r=e;do{var n=r.prev,o=r.next.next;!lh(n,o)&&ch(n,r,r.next,o)&&dh(n,o)&&dh(o,n)&&(t.push(n.i/i|0),t.push(r.i/i|0),t.push(o.i/i|0),mh(r),mh(r.next),r=e=o),r=r.next}while(r!==e);return Hc(r)}function Qc(e,t,i,r,n,o){var s=e;do{for(var a=s.next.next;a!==s.prev;){if(s.i!==a.i&&sh(s,a)){var l=ph(s,a);return s=Hc(s,s.next),l=Hc(l,l.next),Xc(s,t,i,r,n,o,0),void Xc(l,t,i,r,n,o,0)}a=a.next}s=s.next}while(s!==e)}function eh(e,t){return e.x-t.x}function th(e,t){var i=function(e,t){var i,r=t,n=e.x,o=e.y,s=-1/0;do{if(o<=r.y&&o>=r.next.y&&r.next.y!==r.y){var a=r.x+(o-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(a<=n&&a>s&&(s=a,i=r.x=r.x&&r.x>=h&&n!==r.x&&oh(oi.x||r.x===i.x&&ih(i,r)))&&(i=r,d=l)),r=r.next}while(r!==c);return i}(e,t);if(!i)return t;var r=ph(i,e);return Hc(r,r.next),Hc(i,i.next)}function ih(e,t){return ah(e.prev,e,t.prev)<0&&ah(t.next,e,e.next)<0}function rh(e,t,i,r,n){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-i)*n|0)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*n|0)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function nh(e){var t=e,i=e;do{(t.x=(e-s)*(o-a)&&(e-s)*(r-a)>=(i-s)*(t-a)&&(i-s)*(o-a)>=(n-s)*(r-a)}function sh(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var i=e;do{if(i.i!==e.i&&i.next.i!==e.i&&i.i!==t.i&&i.next.i!==t.i&&ch(i,i.next,e,t))return!0;i=i.next}while(i!==e);return!1}(e,t)&&(dh(e,t)&&dh(t,e)&&function(e,t){var i=e,r=!1,n=(e.x+t.x)/2,o=(e.y+t.y)/2;do{i.y>o!=i.next.y>o&&i.next.y!==i.y&&n<(i.next.x-i.x)*(o-i.y)/(i.next.y-i.y)+i.x&&(r=!r),i=i.next}while(i!==e);return r}(e,t)&&(ah(e.prev,e,t.prev)||ah(e,t.prev,t))||lh(e,t)&&ah(e.prev,e,e.next)>0&&ah(t.prev,t,t.next)>0)}function ah(e,t,i){return(t.y-e.y)*(i.x-t.x)-(t.x-e.x)*(i.y-t.y)}function lh(e,t){return e.x===t.x&&e.y===t.y}function ch(e,t,i,r){var n=uh(ah(e,t,i)),o=uh(ah(e,t,r)),s=uh(ah(i,r,e)),a=uh(ah(i,r,t));return n!==o&&s!==a||!(0!==n||!hh(e,i,t))||!(0!==o||!hh(e,r,t))||!(0!==s||!hh(i,e,r))||!(0!==a||!hh(i,t,r))}function hh(e,t,i){return t.x<=Math.max(e.x,i.x)&&t.x>=Math.min(e.x,i.x)&&t.y<=Math.max(e.y,i.y)&&t.y>=Math.min(e.y,i.y)}function uh(e){return e>0?1:e<0?-1:0}function dh(e,t){return ah(e.prev,e,e.next)<0?ah(e,t,e.next)>=0&&ah(e,e.prev,t)>=0:ah(e,t,e.prev)<0||ah(e,e.next,t)<0}function ph(e,t){var i=new _h(e.i,e.x,e.y),r=new _h(t.i,t.x,t.y),n=e.next,o=t.prev;return e.next=t,t.prev=e,i.next=n,n.prev=i,r.next=i,i.prev=r,o.next=r,r.prev=o,r}function fh(e,t,i,r){var n=new _h(e,t,i);return r?(n.next=r.next,n.prev=r,r.next.prev=n,r.next=n):(n.prev=n,n.next=n),n}function mh(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function _h(e,t,i){this.i=e,this.x=t,this.y=i,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function gh(e,t,i,r){for(var n=0,o=t,s=i-r;o0&&i.holes.push(r+=e[n-1].length)}return i};var yh=d(qc.exports);function xh(e,t,i,r,n){vh(e,t,i||0,r||e.length-1,n||wh)}function vh(e,t,i,r,n){for(;r>i;){if(r-i>600){var o=r-i+1,s=t-i+1,a=Math.log(o),l=.5*Math.exp(2*a/3),c=.5*Math.sqrt(a*l*(o-l)/o)*(s-o/2<0?-1:1);vh(e,t,Math.max(i,Math.floor(t-s*l/o+c)),Math.min(r,Math.floor(t+(o-s)*l/o+c)),n)}var h=e[t],u=i,d=r;for(bh(e,i,t),n(e[r],h)>0&&bh(e,i,r);u0;)d--}0===n(e[i],h)?bh(e,i,d):bh(e,++d,r),d<=t&&(i=d+1),t<=d&&(r=d-1)}}function bh(e,t,i){var r=e[t];e[t]=e[i],e[i]=r}function wh(e,t){return et?1:0}function Th(e,t){const i=e.length;if(i<=1)return[e];const r=[];let n,o;for(let t=0;t1)for(let e=0;ee.id)),this.index=e.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new No,this.indexArray=new rs,this.indexArray2=new cs,this.programConfigurations=new Ks(e.layers,e.zoom),this.segments=new sa,this.segments2=new sa,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.projection=e.projection}populate(e,t,i,r){this.hasPattern=Ah("fill",this.layers,t);const n=this.layers[0].layout.get("fill-sort-key"),o=[];for(const{feature:s,id:a,index:l,sourceLayerIndex:c}of e){const e=this.layers[0]._featureFilter.needGeometry,h=ac(s,e);if(!this.layers[0]._featureFilter.filter(new wo(this.zoom),h,i))continue;const u=n?n.evaluate(h,{},i,t.availableImages):void 0,d={id:a,properties:s.properties,type:s.type,sourceLayerIndex:c,index:l,geometry:e?h.geometry:sc(s,i,r),patterns:{},sortKey:u};o.push(d)}n&&o.sort(((e,t)=>e.sortKey-t.sortKey));for(const r of o){const{geometry:n,index:o,sourceLayerIndex:s}=r;if(this.hasPattern){const e=Sh("fill",this.layers,r,this.zoom,t);this.patternFeatures.push(e)}else this.addFeature(r,n,o,i,{},t.availableImages);t.featureIndex.insert(e[o].feature,n,o,s,this.index)}}update(e,t,i,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(e,t,this.stateDependentLayers,i,r)}addFeatures(e,t,i,r,n){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,i,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,Gc),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.indexBuffer2=e.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(e,t,i,r,n,o=[]){for(const e of Th(t,500)){let t=0;for(const i of e)t+=i.length;const i=this.segments.prepareSegment(t,this.layoutVertexArray,this.indexArray),r=i.vertexLength,n=[],o=[];for(const t of e){if(0===t.length)continue;t!==e[0]&&o.push(n.length/2);const i=this.segments2.prepareSegment(t.length,this.layoutVertexArray,this.indexArray2),r=i.vertexLength;this.layoutVertexArray.emplaceBack(t[0].x,t[0].y),this.indexArray2.emplaceBack(r+t.length-1,r),n.push(t[0].x),n.push(t[0].y);for(let e=1;e>3}if(n--,1===r||2===r)o+=e.readSVarint(),s+=e.readSVarint(),1===r&&(t&&a.push(t),t=[]),t.push(new Rh(o,s));else{if(7!==r)throw new Error("unknown command "+r);t&&t.push(t[0].clone())}}return t&&a.push(t),a},Oh.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,i=1,r=0,n=0,o=0,s=1/0,a=-1/0,l=1/0,c=-1/0;e.pos>3}if(r--,1===i||2===i)(n+=e.readSVarint())a&&(a=n),(o+=e.readSVarint())c&&(c=o);else if(7!==i)throw new Error("unknown command "+i)}return[s,l,a,c]},Oh.prototype.toGeoJSON=function(e,t,i){var r,n,o=this.extent*Math.pow(2,i),s=this.extent*e,a=this.extent*t,l=this.loadGeometry(),c=Oh.types[this.type];function h(e){for(var t=0;t>3;t=1===r?e.readString():2===r?e.readFloat():3===r?e.readDouble():4===r?e.readVarint64():5===r?e.readVarint():6===r?e.readSVarint():7===r?e.readBoolean():null}return t}(i))}Vh.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new Uh(this._pbf,t,this.extent,this._keys,this._values)};var Gh=Nh;function qh(e,t,i){if(3===e){var r=new Gh(i,i.readVarint()+i.pos);r.length&&(t[r.name]=r)}}var Zh=Dh.VectorTile=function(e,t){this.layers=e.readFields(qh,{},t)},Wh=Dh.VectorTileFeature=Bh;function Hh(e,t,i,r){const n=[],o=0===r?(e,t,i,r,n,o)=>{e.push(new y(o,i+(o-t)/(r-t)*(n-i)))}:(e,t,i,r,n,o)=>{e.push(new y(t+(o-i)/(n-i)*(r-t),o))};for(const s of e){const e=[];for(const n of s){if(n.length<=2)continue;const s=[];for(let e=0;et&&o(s,a,l,c,h,t):u>i?d=t&&o(s,a,l,c,h,t),d>i&&u<=i&&o(s,a,l,c,h,i)}let a=n[n.length-1];const l=0===r?a.x:a.y;l>=t&&l<=i&&s.push(a),s.length&&(a=s[s.length-1],s[0].x===a.x&&s[0].y===a.y||s.push(s[0]),e.push(s))}e.length&&n.push(e)}return n}Dh.VectorTileLayer=Nh;const Xh=Wh.types,Kh=Math.pow(2,13);function Yh(e,t,i,r,n,o,s,a){e.emplaceBack((t<<1)+s,(i<<1)+o,(Math.floor(r*Kh)<<1)+n,Math.round(a))}function Jh(e,t,i){const r=16384;e.emplaceBack(t.x,t.y,t.z,i[0]*r,i[1]*r,i[2]*r)}class Qh{constructor(){this.acc=new y(0,0),this.polyCount=[]}startRing(e){this.currentPolyCount={edges:0,top:0},this.polyCount.push(this.currentPolyCount),this.min||(this.min=new y(e.x,e.y),this.max=new y(e.x,e.y))}append(e,t){this.currentPolyCount.edges++,this.acc._add(e);const i=this.min,r=this.max;e.xr.x&&(r.x=e.x),e.yr.y&&(r.y=e.y),((0===e.x||e.x===aa)&&e.x===t.x)!=((0===e.y||e.y===aa)&&e.y===t.y)&&this.processBorderOverlap(e,t),t.x<0!=e.x<0&&this.addBorderIntersection(0,Pi(t.y,e.y,(0-t.x)/(e.x-t.x))),t.x>aa!=e.x>aa&&this.addBorderIntersection(1,Pi(t.y,e.y,(aa-t.x)/(e.x-t.x))),t.y<0!=e.y<0&&this.addBorderIntersection(2,Pi(t.x,e.x,(0-t.y)/(e.y-t.y))),t.y>aa!=e.y>aa&&this.addBorderIntersection(3,Pi(t.x,e.x,(aa-t.y)/(e.y-t.y)))}addBorderIntersection(e,t){this.borders||(this.borders=[[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE]]);const i=this.borders[e];ti[1]&&(i[1]=t)}processBorderOverlap(e,t){if(e.x===t.x){if(e.y===t.y)return;const i=0===e.x?0:1;this.addBorderIntersection(i,t.y),this.addBorderIntersection(i,e.y)}else{const i=0===e.y?2:3;this.addBorderIntersection(i,t.x),this.addBorderIntersection(i,e.x)}}centroid(){const e=this.polyCount.reduce(((e,t)=>e+t.edges),0);return 0!==e?this.acc.div(e)._round():new y(0,0)}span(){return new y(this.max.x-this.min.x,this.max.y-this.min.y)}intersectsCount(){return this.borders.reduce(((e,t)=>e+ +(t[0]!==Number.MAX_VALUE)),0)}}class eu{constructor(e){this.zoom=e.zoom,this.canonical=e.canonical,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.id)),this.index=e.index,this.hasPattern=!1,this.edgeRadius=0,this.projection=e.projection,this.layoutVertexArray=new $o,this.centroidVertexArray=new ws,this.indexArray=new rs,this.programConfigurations=new Ks(e.layers,e.zoom),this.segments=new sa,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.enableTerrain=e.enableTerrain}populate(e,t,i,r){this.features=[],this.hasPattern=Ah("fill-extrusion",this.layers,t),this.featuresOnBorder=[],this.borders=[[],[],[],[]],this.borderDoneWithNeighborZ=[-1,-1,-1,-1],this.tileToMeter=function(e){const t=Math.exp(Math.PI*(1-e.y/(1<=0;e--){const t=d[e];(0===t.length||(p=t[0]).every((e=>e.x<=0))||p.every((e=>e.x>=aa))||p.every((e=>e.y<=0))||p.every((e=>e.y>=aa)))&&d.splice(e,1)}var p;let f;if(c)f=lu(d,a,r);else{f=[];for(const e of d)f.push({polygon:e,bounds:a})}const m=u?this.edgeRadius:0;for(const{polygon:e,bounds:t}of f){let i=0,n=0;for(const t of e)u&&!t[0].equals(t[t.length-1])&&t.push(t[0]),n+=u?t.length-1:t.length;const o=this.segments.prepareSegment((u?5:4)*n,this.layoutVertexArray,this.indexArray);if(u){const t=[],n=[];i=o.vertexLength;for(const i of e){let s,a;i.length&&i!==e[0]&&n.push(t.length/2),s=i[1].sub(i[0])._perp()._unit();for(let e=1;e4&&ou(n[n.length-2],n[0],n[1]),p=m?iu(n[n.length-2],n[0],n[1],m):0;s=n[1].sub(n[0])._perp()._unit();let f=!0;for(let _=1,g=0;_0?1:0,E=y.dist(x);if(g+E>32768&&(g=0),m){a=v.sub(x)._perp()._unit();let e=ru(y,x,v,tu(s,a),m);isNaN(e)&&(e=0);const t=x.sub(y)._unit();y=y.add(t.mult(p))._round(),x=x.add(t.mult(-e))._round(),p=e,s=a}const A=o.vertexLength,S=n.length>4&&ou(y,x,v);let M=su(g,d,f);if(Yh(this.layoutVertexArray,y.x,y.y,w,T,0,0,M),Yh(this.layoutVertexArray,y.x,y.y,w,T,0,1,M),g+=E,M=su(g,S,!f),d=S,Yh(this.layoutVertexArray,x.x,x.y,w,T,0,0,M),Yh(this.layoutVertexArray,x.x,x.y,w,T,0,1,M),o.vertexLength+=4,this.indexArray.emplaceBack(A+0,A+1,A+2),this.indexArray.emplaceBack(A+1,A+3,A+2),o.primitiveLength+=2,m){const r=i+(1===_?n.length-2:_-2),s=1===_?i:r+1;if(this.indexArray.emplaceBack(A+1,r,A+3),this.indexArray.emplaceBack(r,s,A+3),o.primitiveLength+=2,void 0===e&&(e=A),!nu(v,n[_],t)){const t=_===n.length-1?e:o.vertexLength;this.indexArray.emplaceBack(A+2,A+3,t),this.indexArray.emplaceBack(A+3,t+1,t),this.indexArray.emplaceBack(A+3,s,t+1),o.primitiveLength+=3}f=!f}if(c){const e=this.layoutVertexExtArray,t=l.projectTilePoint(y.x,y.y,r),i=l.projectTilePoint(x.x,x.y,r),n=l.upVector(r,y.x,y.y),o=l.upVector(r,x.x,x.y);Jh(e,t,n),Jh(e,t,n),Jh(e,i,o),Jh(e,i,o)}}u&&(i+=n.length-1)}}if(h&&h.polyCount.length>0){if(h.borders){h.vertexArrayOffset=this.centroidVertexArray.length;const e=h.borders,t=this.featuresOnBorder.push(h)-1;for(let i=0;i<4;i++)e[i][0]!==Number.MAX_VALUE&&this.borders[i].push(t)}this.encodeCentroid(h.borders?void 0:h.centroid(),h)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,i,n,o,r)}sortBorders(){for(let e=0;e<4;e++)this.borders[e].sort(((t,i)=>this.featuresOnBorder[t].borders[e][0]-this.featuresOnBorder[i].borders[e][0]))}encodeCentroid(e,t,i=!0){let r,n;if(e)if(0!==e.y){const i=t.span()._mult(this.tileToMeter);r=(Math.max(e.x,1)<<3)+Math.min(7,Math.round(i.x/10)),n=(Math.max(e.y,1)<<3)+Math.min(7,Math.round(i.y/10))}else r=Math.ceil(7*(e.x+450)),n=0;else r=0,n=+i;let o=i?this.centroidVertexArray.length:t.vertexArrayOffset;for(const e of t.polyCount){i&&this.centroidVertexArray.resize(this.centroidVertexArray.length+4*e.edges+e.top);for(let t=0;ti[1].x&&t.x>i[1].x||e.yi[1].y&&t.y>i[1].y}function ou(e,t,i){if(e.x<0||e.x>=aa||t.x<0||t.x>=aa||i.x<0||i.x>=aa)return!1;const r=i.sub(t),n=r.perp(),o=e.sub(t);return(r.x*o.x+r.y*o.y)/Math.sqrt((r.x*r.x+r.y*r.y)*(o.x*o.x+o.y*o.y))>-.866&&n.x*o.x+n.y*o.y<0}function su(e,t,i){const r=t?2|e:-3&e;return i?1|r:-2&r}function au(){const e=Math.PI/32,t=Math.tan(e),i=jl;return i*Math.sqrt(1+2*t*t)-i}function lu(e,t,i){const r=1<{for(const i of e)s.push({polygon:i,bounds:t})},l=Math.ceil(Math.log2(i)),c=Math.ceil(Math.log2(r)),h=l-c,u=[];for(let e=0;e0?0:1);for(let e=0;et+1?p.push({polygons:d,bounds:e,depth:t+1}):a(d,e)}if(f.length){const e=[new y(0===i?h:r.x,1===i?h:r.y),s];u.length>t+1?p.push({polygons:f,bounds:e,depth:t+1}):a(f,e)}}return s}(e,t,Math.ceil((o-n)/11.25),Math.ceil((s-a)/11.25),1,((e,t,n)=>{if(0===e)return.5*(t+n);{const e=Hl((i.y+t/aa)/r);return(ql(.5*(Hl((i.y+n/aa)/r)+e))*r-i.y)*aa}}))}Xn(eu,"FillExtrusionBucket",{omit:["layers","features"]}),Xn(Qh,"PartMetadata");const cu=new Do({"fill-extrusion-edge-radius":new Po(et["layout_fill-extrusion"]["fill-extrusion-edge-radius"])});var hu={paint:new Do({"fill-extrusion-opacity":new Po(et["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new zo(et["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Po(et["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Po(et["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new zo(et["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new zo(et["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new zo(et["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Po(et["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"]),"fill-extrusion-ambient-occlusion-intensity":new Po(et["paint_fill-extrusion"]["fill-extrusion-ambient-occlusion-intensity"]),"fill-extrusion-ambient-occlusion-radius":new Po(et["paint_fill-extrusion"]["fill-extrusion-ambient-occlusion-radius"]),"fill-extrusion-rounded-roof":new Po(et["paint_fill-extrusion"]["fill-extrusion-rounded-roof"])}),layout:cu};function uu(e,t,i){var r=2*Math.PI*6378137/256/Math.pow(2,i);return[e*r-2*Math.PI*6378137/2,t*r-2*Math.PI*6378137/2]}class du{constructor(e,t,i){this.z=e,this.x=t,this.y=i,this.key=mu(0,e,e,t,i)}equals(e){return this.z===e.z&&this.x===e.x&&this.y===e.y}url(e,t){const i=function(e,t,i){var r=uu(256*e,256*(t=Math.pow(2,i)-t-1),i),n=uu(256*(e+1),256*(t+1),i);return r[0]+","+r[1]+","+n[0]+","+n[1]}(this.x,this.y,this.z),r=function(e,t,i){let r,n="";for(let o=e;o>0;o--)r=1<this.canonical.z?new fu(e,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new fu(e,this.wrap,e,this.canonical.x>>t,this.canonical.y>>t)}calculateScaledKey(e,t=!0){if(this.overscaledZ===e&&t)return this.key;if(e>this.canonical.z)return mu(this.wrap*+t,e,this.canonical.z,this.canonical.x,this.canonical.y);{const i=this.canonical.z-e;return mu(this.wrap*+t,e,e,this.canonical.x>>i,this.canonical.y>>i)}}isChildOf(e){if(e.wrap!==this.wrap)return!1;const t=this.canonical.z-e.canonical.z;return 0===e.overscaledZ||e.overscaledZ>t&&e.canonical.y===this.canonical.y>>t}children(e){if(this.overscaledZ>=e)return[new fu(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const t=this.canonical.z+1,i=2*this.canonical.x,r=2*this.canonical.y;return[new fu(t,this.wrap,t,i,r),new fu(t,this.wrap,t,i+1,r),new fu(t,this.wrap,t,i,r+1),new fu(t,this.wrap,t,i+1,r+1)]}isLessThan(e){return this.wrape.wrap)&&(this.overscaledZe.overscaledZ)&&(this.canonical.xe.canonical.x)&&this.canonical.ye.id)),this.index=e.index,this.projection=e.projection,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((e=>{this.gradients[e.id]={}})),this.layoutVertexArray=new Go,this.layoutVertexArray2=new qo,this.indexArray=new rs,this.programConfigurations=new Ks(e.layers,e.zoom),this.segments=new sa,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id))}populate(e,t,i,r){this.hasPattern=Ah("line",this.layers,t);const n=this.layers[0].layout.get("line-sort-key"),o=[];for(const{feature:t,id:s,index:a,sourceLayerIndex:l}of e){const e=this.layers[0]._featureFilter.needGeometry,c=ac(t,e);if(!this.layers[0]._featureFilter.filter(new wo(this.zoom),c,i))continue;const h=n?n.evaluate(c,{},i):void 0,u={id:s,properties:t.properties,type:t.type,sourceLayerIndex:l,index:a,geometry:e?c.geometry:sc(t,i,r),patterns:{},sortKey:h};o.push(u)}n&&o.sort(((e,t)=>e.sortKey-t.sortKey));const{lineAtlas:s,featureIndex:a}=t,l=this.addConstantDashes(s);for(const r of o){const{geometry:n,index:o,sourceLayerIndex:c}=r;if(l&&this.addFeatureDashes(r,s),this.hasPattern){const e=Sh("line",this.layers,r,this.zoom,t);this.patternFeatures.push(e)}else this.addFeature(r,n,o,i,s.positions,t.availableImages);a.insert(e[o].feature,n,o,c,this.index)}}addConstantDashes(e){let t=!1;for(const i of this.layers){const r=i.paint.get("line-dasharray").value,n=i.layout.get("line-cap").value;if("constant"!==r.kind||"constant"!==n.kind)t=!0;else{const t=n.value,i=r.value;if(!i)continue;e.addDash(i,t)}}return t}addFeatureDashes(e,t){const i=this.zoom;for(const r of this.layers){const n=r.paint.get("line-dasharray").value,o=r.layout.get("line-cap").value;if("constant"===n.kind&&"constant"===o.kind)continue;let s,a;if("constant"===n.kind){if(s=n.value,!s)continue}else s=n.evaluate({zoom:i},e);a="constant"===o.kind?o.value:o.evaluate({zoom:i},e),t.addDash(s,a),e.patterns[r.id]=t.getKey(s,a)}}update(e,t,i,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(e,t,this.stateDependentLayers,i,r)}addFeatures(e,t,i,r,n){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,i,r)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=e.createVertexBuffer(this.layoutVertexArray2,Tu)),this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,bu),this.indexBuffer=e.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(e){if(e.properties&&e.properties.hasOwnProperty("mapbox_clip_start")&&e.properties.hasOwnProperty("mapbox_clip_end"))return{start:+e.properties.mapbox_clip_start,end:+e.properties.mapbox_clip_end}}addFeature(e,t,i,r,n,o){const s=this.layers[0].layout,a=s.get("line-join").evaluate(e,{}),l=s.get("line-cap").evaluate(e,{}),c=s.get("line-miter-limit"),h=s.get("line-round-limit");this.lineClips=this.lineFeatureClips(e);for(const i of t)this.addLine(i,e,a,l,c,h);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,i,n,o,r)}addLine(e,t,i,r,n,o){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineSoFar=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let t=0;t=2&&e[a-1].equals(e[a-2]);)a--;let l=0;for(;l0;if(b&&t>l){const e=u.dist(d);if(e>2*c){const t=u.sub(u.sub(d)._mult(c/e)._round());this.updateDistance(d,t),this.addCurrentVertex(t,f,0,0,h),d=t}}const T=d&&p;let E=T?i:s?"butt":r;if(T&&"round"===E&&(xn&&(E="bevel"),"bevel"===E&&(x>2&&(E="flipbevel"),x100)_=m.mult(-1);else{const e=x*f.add(m).mag()/f.sub(m).mag();_._perp()._mult(e*(w?-1:1))}this.addCurrentVertex(u,_,0,0,h),this.addCurrentVertex(u,_.mult(-1),0,0,h)}else if("bevel"===E||"fakeround"===E){const e=-Math.sqrt(x*x-1),t=w?e:0,i=w?0:e;if(d&&this.addCurrentVertex(u,f,t,i,h),"fakeround"===E){const e=Math.round(180*v/Math.PI/20);for(let t=1;t2*c){const t=u.add(p.sub(u)._mult(c/e)._round());this.updateDistance(u,t),this.addCurrentVertex(t,m,0,0,h),u=t}}}}addCurrentVertex(e,t,i,r,n,o=!1){const s=t.y*r-t.x,a=-t.y-t.x*r;this.addHalfVertex(e,t.x+t.y*i,t.y-t.x*i,o,!1,i,n),this.addHalfVertex(e,s,a,o,!0,-r,n)}addHalfVertex({x:e,y:t},i,r,n,o,s,a){this.layoutVertexArray.emplaceBack((e<<1)+(n?1:0),(t<<1)+(o?1:0),Math.round(63*i)+128,Math.round(63*r)+128,1+(0===s?0:s<0?-1:1),0,this.lineSoFar),this.lineClips&&this.layoutVertexArray2.emplaceBack(this.scaledDistance,this.lineClipsArray.length,this.lineClips.start,this.lineClips.end);const l=a.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,l),a.primitiveLength++),o?this.e2=l:this.e1=l}updateScaledDistance(){if(this.lineClips){const e=this.totalDistance/(this.lineClips.end-this.lineClips.start);this.scaledDistance=this.distance/this.totalDistance,this.lineSoFar=e*this.lineClips.start+this.distance}else this.lineSoFar=this.distance}updateDistance(e,t){this.distance+=e.dist(t),this.updateScaledDistance()}}Xn(Su,"LineBucket",{omit:["layers","patternFeatures"]});const Mu=new Do({"line-cap":new zo(et.layout_line["line-cap"]),"line-join":new zo(et.layout_line["line-join"]),"line-miter-limit":new Po(et.layout_line["line-miter-limit"]),"line-round-limit":new Po(et.layout_line["line-round-limit"]),"line-sort-key":new zo(et.layout_line["line-sort-key"])});var Cu={paint:new Do({"line-opacity":new zo(et.paint_line["line-opacity"]),"line-color":new zo(et.paint_line["line-color"]),"line-translate":new Po(et.paint_line["line-translate"]),"line-translate-anchor":new Po(et.paint_line["line-translate-anchor"]),"line-width":new zo(et.paint_line["line-width"]),"line-gap-width":new zo(et.paint_line["line-gap-width"]),"line-offset":new zo(et.paint_line["line-offset"]),"line-blur":new zo(et.paint_line["line-blur"]),"line-dasharray":new zo(et.paint_line["line-dasharray"]),"line-pattern":new zo(et.paint_line["line-pattern"]),"line-gradient":new Lo(et.paint_line["line-gradient"]),"line-trim-offset":new Po(et.paint_line["line-trim-offset"])}),layout:Mu};const ku=new class extends zo{possiblyEvaluate(e,t){return t=new wo(Math.floor(t.zoom),{now:t.now,fadeDuration:t.fadeDuration,transition:t.transition}),super.possiblyEvaluate(e,t)}evaluate(e,t,i,r){return t=z({},t,{zoom:Math.floor(t.zoom)}),super.evaluate(e,t,i,r)}}(Cu.paint.properties["line-width"].specification);function Iu(e,t){return t>0?t+2*e:e}ku.useIntegerZoom=!0;const Pu=jo([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_tex_size",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),zu=jo([{name:"a_globe_anchor",components:3,type:"Int16"},{name:"a_globe_normal",components:3,type:"Float32"}],4),Lu=jo([{name:"a_projected_pos",components:4,type:"Float32"}],4);jo([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);const Du=jo([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),Ru=jo([{name:"a_size_scale",components:1,type:"Float32"},{name:"a_padding",components:2,type:"Float32"}]);jo([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Int16",name:"tileAnchorX"},{type:"Int16",name:"tileAnchorY"},{type:"Float32",name:"x1"},{type:"Float32",name:"y1"},{type:"Float32",name:"x2"},{type:"Float32",name:"y2"},{type:"Int16",name:"padding"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);const Bu=jo([{name:"a_pos",components:3,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),Ou=jo([{name:"a_pos_2f",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);jo([{name:"triangle",components:3,type:"Uint16"}]),jo([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Float32",name:"tileAnchorX"},{type:"Float32",name:"tileAnchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"},{type:"Uint8",name:"flipState"}]),jo([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Float32",name:"tileAnchorX"},{type:"Float32",name:"tileAnchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"}]),jo([{type:"Float32",name:"offsetX"}]),jo([{type:"Int16",name:"x"},{type:"Int16",name:"y"}]);var Fu=24;const ju=128;function Uu(e,t){const{expression:i}=t;if("constant"===i.kind)return{kind:"constant",layoutSize:i.evaluate(new wo(e+1))};if("source"===i.kind)return{kind:"source"};{const{zoomStops:t,interpolationType:r}=i;let n=0;for(;n{e.text=function(e,t,i){const r=t.layout.get("text-transform").evaluate(i,{});return"uppercase"===r?e=e.toLocaleUpperCase():"lowercase"===r&&(e=e.toLocaleLowerCase()),bo.applyArabicShaping&&(e=bo.applyArabicShaping(e)),e}(e.text,t,i)})),e}const qu={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂","←":"↑","→":"↓"};function Zu(e){return"︶"===e||"﹈"===e||"︸"===e||"﹄"===e||"﹂"===e||"︾"===e||"︼"===e||"︺"===e||"︘"===e||"﹀"===e||"︐"===e||"︓"===e||"︔"===e||"`"===e||" ̄"===e||"︑"===e||"︒"===e}function Wu(e){return"︵"===e||"﹇"===e||"︷"===e||"﹃"===e||"﹁"===e||"︽"===e||"︻"===e||"︹"===e||"︗"===e||"︿"===e}var Hu=Yu,Xu=function(e,t,i,r,n){var o,s,a=8*n-r-1,l=(1<>1,h=-7,u=i?n-1:0,d=i?-1:1,p=e[t+u];for(u+=d,o=p&(1<<-h)-1,p>>=-h,h+=a;h>0;o=256*o+e[t+u],u+=d,h-=8);for(s=o&(1<<-h)-1,o>>=-h,h+=r;h>0;s=256*s+e[t+u],u+=d,h-=8);if(0===o)o=1-c;else{if(o===l)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,r),o-=c}return(p?-1:1)*s*Math.pow(2,o-r)},Ku=function(e,t,i,r,n,o){var s,a,l,c=8*o-n-1,h=(1<>1,d=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,f=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=h):(s=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-s))<1&&(s--,l*=2),(t+=s+u>=1?d/l:d*Math.pow(2,1-u))*l>=2&&(s++,l/=2),s+u>=h?(a=0,s=h):s+u>=1?(a=(t*l-1)*Math.pow(2,n),s+=u):(a=t*Math.pow(2,u-1)*Math.pow(2,n),s=0));n>=8;e[i+p]=255&a,p+=f,a/=256,n-=8);for(s=s<0;e[i+p]=255&s,p+=f,s/=256,c-=8);e[i+p-f]|=128*m}; -/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */function Yu(e){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(e)?e:new Uint8Array(e||0),this.pos=0,this.type=0,this.length=this.buf.length}Yu.Varint=0,Yu.Fixed64=1,Yu.Bytes=2,Yu.Fixed32=5;var Ju=4294967296,Qu=1/Ju,ed="undefined"==typeof TextDecoder?null:new TextDecoder("utf8");function td(e){return e.type===Yu.Bytes?e.readVarint()+e.pos:e.pos+1}function id(e,t,i){return i?4294967296*t+(e>>>0):4294967296*(t>>>0)+(e>>>0)}function rd(e,t,i){var r=t<=16383?1:t<=2097151?2:t<=268435455?3:Math.floor(Math.log(t)/(7*Math.LN2));i.realloc(r);for(var n=i.pos-1;n>=e;n--)i.buf[n+r]=i.buf[n]}function nd(e,t){for(var i=0;i>>8,e[i+2]=t>>>16,e[i+3]=t>>>24}function md(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16)+(e[t+3]<<24)}Yu.prototype={destroy:function(){this.buf=null},readFields:function(e,t,i){for(i=i||this.length;this.pos>3,o=this.pos;this.type=7&r,e(n,t,this),this.pos===o&&this.skip(r)}return t},readMessage:function(e,t){return this.readFields(e,t,this.readVarint()+this.pos)},readFixed32:function(){var e=pd(this.buf,this.pos);return this.pos+=4,e},readSFixed32:function(){var e=md(this.buf,this.pos);return this.pos+=4,e},readFixed64:function(){var e=pd(this.buf,this.pos)+pd(this.buf,this.pos+4)*Ju;return this.pos+=8,e},readSFixed64:function(){var e=pd(this.buf,this.pos)+md(this.buf,this.pos+4)*Ju;return this.pos+=8,e},readFloat:function(){var e=Xu(this.buf,this.pos,!0,23,4);return this.pos+=4,e},readDouble:function(){var e=Xu(this.buf,this.pos,!0,52,8);return this.pos+=8,e},readVarint:function(e){var t,i,r=this.buf;return t=127&(i=r[this.pos++]),i<128?t:(t|=(127&(i=r[this.pos++]))<<7,i<128?t:(t|=(127&(i=r[this.pos++]))<<14,i<128?t:(t|=(127&(i=r[this.pos++]))<<21,i<128?t:function(e,t,i){var r,n,o=i.buf;if(r=(112&(n=o[i.pos++]))>>4,n<128)return id(e,r,t);if(r|=(127&(n=o[i.pos++]))<<3,n<128)return id(e,r,t);if(r|=(127&(n=o[i.pos++]))<<10,n<128)return id(e,r,t);if(r|=(127&(n=o[i.pos++]))<<17,n<128)return id(e,r,t);if(r|=(127&(n=o[i.pos++]))<<24,n<128)return id(e,r,t);if(r|=(1&(n=o[i.pos++]))<<31,n<128)return id(e,r,t);throw new Error("Expected varint not more than 10 bytes")}(t|=(15&(i=r[this.pos]))<<28,e,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var e=this.readVarint();return e%2==1?(e+1)/-2:e/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var e=this.readVarint()+this.pos,t=this.pos;return this.pos=e,e-t>=12&&ed?function(e,t,i){return ed.decode(e.subarray(t,i))}(this.buf,t,e):function(e,t,i){for(var r="",n=t;n239?4:l>223?3:l>191?2:1;if(n+h>i)break;1===h?l<128&&(c=l):2===h?128==(192&(o=e[n+1]))&&(c=(31&l)<<6|63&o)<=127&&(c=null):3===h?(s=e[n+2],128==(192&(o=e[n+1]))&&128==(192&s)&&((c=(15&l)<<12|(63&o)<<6|63&s)<=2047||c>=55296&&c<=57343)&&(c=null)):4===h&&(s=e[n+2],a=e[n+3],128==(192&(o=e[n+1]))&&128==(192&s)&&128==(192&a)&&((c=(15&l)<<18|(63&o)<<12|(63&s)<<6|63&a)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,h=1):c>65535&&(c-=65536,r+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),r+=String.fromCharCode(c),n+=h}return r}(this.buf,t,e)},readBytes:function(){var e=this.readVarint()+this.pos,t=this.buf.subarray(this.pos,e);return this.pos=e,t},readPackedVarint:function(e,t){if(this.type!==Yu.Bytes)return e.push(this.readVarint(t));var i=td(this);for(e=e||[];this.pos127;);else if(t===Yu.Bytes)this.pos=this.readVarint()+this.pos;else if(t===Yu.Fixed32)this.pos+=4;else{if(t!==Yu.Fixed64)throw new Error("Unimplemented type: "+t);this.pos+=8}},writeTag:function(e,t){this.writeVarint(e<<3|t)},realloc:function(e){for(var t=this.length||16;t268435455||e<0?function(e,t){var i,r;if(e>=0?(i=e%4294967296|0,r=e/4294967296|0):(r=~(-e/4294967296),4294967295^(i=~(-e%4294967296))?i=i+1|0:(i=0,r=r+1|0)),e>=0x10000000000000000||e<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");t.realloc(10),function(e,t,i){i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,i.buf[i.pos]=127&(e>>>=7)}(i,0,t),function(e,t){var i=(7&e)<<4;t.buf[t.pos++]|=i|((e>>>=3)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e)))))}(r,t)}(e,this):(this.realloc(4),this.buf[this.pos++]=127&e|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=e>>>7&127))))},writeSVarint:function(e){this.writeVarint(e<0?2*-e-1:2*e)},writeBoolean:function(e){this.writeVarint(Boolean(e))},writeString:function(e){e=String(e),this.realloc(4*e.length),this.pos++;var t=this.pos;this.pos=function(e,t,i){for(var r,n,o=0;o55295&&r<57344){if(!n){r>56319||o+1===t.length?(e[i++]=239,e[i++]=191,e[i++]=189):n=r;continue}if(r<56320){e[i++]=239,e[i++]=191,e[i++]=189,n=r;continue}r=n-55296<<10|r-56320|65536,n=null}else n&&(e[i++]=239,e[i++]=191,e[i++]=189,n=null);r<128?e[i++]=r:(r<2048?e[i++]=r>>6|192:(r<65536?e[i++]=r>>12|224:(e[i++]=r>>18|240,e[i++]=r>>12&63|128),e[i++]=r>>6&63|128),e[i++]=63&r|128)}return i}(this.buf,e,this.pos);var i=this.pos-t;i>=128&&rd(t,i,this),this.pos=t-1,this.writeVarint(i),this.pos+=i},writeFloat:function(e){this.realloc(4),Ku(this.buf,e,this.pos,!0,23,4),this.pos+=4},writeDouble:function(e){this.realloc(8),Ku(this.buf,e,this.pos,!0,52,8),this.pos+=8},writeBytes:function(e){var t=e.length;this.writeVarint(t),this.realloc(t);for(var i=0;i=128&&rd(i,r,this),this.pos=i-1,this.writeVarint(r),this.pos+=r},writeMessage:function(e,t,i){this.writeTag(e,Yu.Bytes),this.writeRawMessage(t,i)},writePackedVarint:function(e,t){t.length&&this.writeMessage(e,nd,t)},writePackedSVarint:function(e,t){t.length&&this.writeMessage(e,od,t)},writePackedBoolean:function(e,t){t.length&&this.writeMessage(e,ld,t)},writePackedFloat:function(e,t){t.length&&this.writeMessage(e,sd,t)},writePackedDouble:function(e,t){t.length&&this.writeMessage(e,ad,t)},writePackedFixed32:function(e,t){t.length&&this.writeMessage(e,cd,t)},writePackedSFixed32:function(e,t){t.length&&this.writeMessage(e,hd,t)},writePackedFixed64:function(e,t){t.length&&this.writeMessage(e,ud,t)},writePackedSFixed64:function(e,t){t.length&&this.writeMessage(e,dd,t)},writeBytesField:function(e,t){this.writeTag(e,Yu.Bytes),this.writeBytes(t)},writeFixed32Field:function(e,t){this.writeTag(e,Yu.Fixed32),this.writeFixed32(t)},writeSFixed32Field:function(e,t){this.writeTag(e,Yu.Fixed32),this.writeSFixed32(t)},writeFixed64Field:function(e,t){this.writeTag(e,Yu.Fixed64),this.writeFixed64(t)},writeSFixed64Field:function(e,t){this.writeTag(e,Yu.Fixed64),this.writeSFixed64(t)},writeVarintField:function(e,t){this.writeTag(e,Yu.Varint),this.writeVarint(t)},writeSVarintField:function(e,t){this.writeTag(e,Yu.Varint),this.writeSVarint(t)},writeStringField:function(e,t){this.writeTag(e,Yu.Bytes),this.writeString(t)},writeFloatField:function(e,t){this.writeTag(e,Yu.Fixed32),this.writeFloat(t)},writeDoubleField:function(e,t){this.writeTag(e,Yu.Fixed64),this.writeDouble(t)},writeBooleanField:function(e,t){this.writeVarintField(e,Boolean(t))}};var _d=d(Hu);const gd=3;function yd(e,t,i){t.glyphs=[],1===e&&i.readMessage(xd,t)}function xd(e,t,i){if(3===e){const{id:e,bitmap:r,width:n,height:o,left:s,top:a,advance:l}=i.readMessage(vd,{});t.glyphs.push({id:e,bitmap:new Fc({width:n+2*gd,height:o+2*gd},r),metrics:{width:n,height:o,left:s,top:a,advance:l}})}else 4===e?t.ascender=i.readSVarint():5===e&&(t.descender=i.readSVarint())}function vd(e,t,i){1===e?t.id=i.readVarint():2===e?t.bitmap=i.readBytes():3===e?t.width=i.readVarint():4===e?t.height=i.readVarint():5===e?t.left=i.readSVarint():6===e?t.top=i.readSVarint():7===e&&(t.advance=i.readVarint())}const bd=gd;function wd(e){let t=0,i=0;for(const r of e)t+=r.w*r.h,i=Math.max(i,r.w);e.sort(((e,t)=>t.h-e.h));const r=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(t/.95)),i),h:1/0}];let n=0,o=0;for(const t of e)for(let e=r.length-1;e>=0;e--){const i=r[e];if(!(t.w>i.w||t.h>i.h)){if(t.x=i.x,t.y=i.y,o=Math.max(o,t.y+t.h),n=Math.max(n,t.x+t.w),t.w===i.w&&t.h===i.h){const t=r.pop();ee.hasImage(t))),e.dispatchRenderCallbacks(this.haveRenderCallbacks);for(const i in e.updatedImages)this.patchUpdatedImage(this.iconPositions[i],e.getImage(i),t),this.patchUpdatedImage(this.patternPositions[i],e.getImage(i),t)}patchUpdatedImage(e,t,i){if(!e||!t)return;if(e.version===t.version)return;e.version=t.version;const[r,n]=e.tl;i.update(t.data,void 0,{x:r,y:n})}}Xn(Ed,"ImagePosition"),Xn(Ad,"ImageAtlas");const Sd={horizontal:1,vertical:2,horizontalOnly:3},Md=-17;class Cd{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(e,t){const i=new Cd;return i.scale=e||1,i.fontStack=t,i}static forImage(e){const t=new Cd;return t.imageName=e,t}}class kd{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(e,t){const i=new kd;for(let r=0;r=0&&i>=e&&Pd[this.text.charCodeAt(i)];i--)t--;this.text=this.text.substring(e,t),this.sectionIndex=this.sectionIndex.slice(e,t)}substring(e,t){const i=new kd;return i.text=this.text.substring(e,t),i.sectionIndex=this.sectionIndex.slice(e,t),i.sections=this.sections,i}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((e,t)=>Math.max(e,this.sections[t].scale)),0)}addTextSection(e,t){this.text+=e.text,this.sections.push(Cd.forText(e.scale,e.fontStack||t));const i=this.sections.length-1;for(let t=0;t=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Id(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){const m=kd.fromFeature(e,n);u===Sd.vertical&&m.verticalizePunctuation(d);let _=[];const g=function(e,t,i,r,n,o){if(!e)return[];const s=[],a=function(e,t,i,r,n,o){let s=0;for(let i=0;i=0;let c=0;for(let i=0;i0&&o>b&&(b=o)}else{const e=i[a.fontStack];if(!e)continue;e[m]&&(E=e[m]);const r=t[a.fontStack];if(!r)continue;const o=r.glyphs[m];if(!o)continue;if(x=o.metrics,S=8203!==m?Fu:0,_){const e=void 0!==r.ascender?Math.abs(r.ascender):0,t=void 0!==r.descender?Math.abs(r.descender):0,i=(e+t)*g;w-i/2;){if(s--,s<0)return!1;a-=e[s].dist(o),o=e[s]}a+=e[s].dist(e[s+1]),s++;const l=[];let c=0;for(;ar;)c-=l.shift().angleDelta;if(c>n)return!1;s++,a+=t.dist(i)}return!0}function Gd(e){let t=0;for(let i=0;ic){const h=(c-l)/o,u=Pi(r.x,n.x,h),d=Pi(r.y,n.y,h),p=new Vd(u,d,0,n.angleTo(r),i);return!s||$d(e,p,a,s,t)?p:void 0}l+=o}}function Hd(e,t,i,r,n,o,s,a,l){const c=qd(r,o,s),h=Zd(r,n),u=h*s,d=0===e[0].x||e[0].x===l||0===e[0].y||e[0].y===l;return t-u=0&&g=0&&y=0&&d+c<=h){const i=new Vd(g,y,0,m,t);i._round(),r&&!$d(e,i,o,r,n)||p.push(i)}}u+=f}return a||p.length||s||(p=Xd(e,u/2,i,r,n,o,s,!0,l)),p}function Kd(e,t,i,r,n){const o=[];for(let s=0;s=r&&c.x>=r||(s.x>=r?s=new y(r,s.y+(r-s.x)/(c.x-s.x)*(c.y-s.y))._round():c.x>=r&&(c=new y(r,s.y+(r-s.x)/(c.x-s.x)*(c.y-s.y))._round()),s.y>=n&&c.y>=n||(s.y>=n?s=new y(s.x+(n-s.y)/(c.y-s.y)*(c.x-s.x),n)._round():c.y>=n&&(c=new y(s.x+(n-s.y)/(c.y-s.y)*(c.x-s.x),n)._round()),l&&s.equals(l[l.length-1])||(l=[s],o.push(l)),l.push(c)))))}}return o}Xn(Vd,"Anchor");const Yd=1e20;function Jd(e,t,i,r,n,o,s,a,l){for(let c=t;c-1);l++,o[l]=a,s[l]=c,s[l+1]=Yd}for(let a=0,l=0;a{let r=this.entries[e];r||(r=this.entries[e]={glyphs:{},requests:{},ranges:{},ascender:void 0,descender:void 0});let n=r.glyphs[t];if(void 0!==n)return void i(null,{stack:e,id:t,glyph:n});if(n=this._tinySDF(r,e,t),n)return r.glyphs[t]=n,void i(null,{stack:e,id:t,glyph:n});const o=Math.floor(t/256);if(256*o>65535)return void i(new Error("glyphs > 65535 not supported"));if(r.ranges[o])return void i(null,{stack:e,id:t,glyph:n});let s=r.requests[o];s||(s=r.requests[o]=[],ip.loadGlyphRange(e,o,this.url,this.requestManager,((e,t)=>{if(t){r.ascender=t.ascender,r.descender=t.descender;for(const e in t.glyphs)this._doesCharSupportLocalGlyph(+e)||(r.glyphs[+e]=t.glyphs[+e]);r.ranges[o]=!0}for(const i of s)i(e,t);delete r.requests[o]}))),s.push(((r,n)=>{r?i(r):n&&i(null,{stack:e,id:t,glyph:n.glyphs[t]||null})}))}),((e,i)=>{if(e)t(e);else if(i){const e={};for(const{stack:t,id:r,glyph:n}of i)void 0===e[t]&&(e[t]={}),void 0===e[t].glyphs&&(e[t].glyphs={}),e[t].glyphs[r]=n&&{id:n.id,bitmap:n.bitmap.clone(),metrics:n.metrics},e[t].ascender=this.entries[t].ascender,e[t].descender=this.entries[t].descender;t(null,e)}}))}_doesCharSupportLocalGlyph(e){return this.localGlyphMode!==tp.none&&(this.localGlyphMode===tp.all?!!this.localFontFamily:!!this.localFontFamily&&(eo["CJK Unified Ideographs"](e)||eo["Hangul Syllables"](e)||eo.Hiragana(e)||eo.Katakana(e)||eo["CJK Symbols and Punctuation"](e)))}_tinySDF(e,t,i){const r=this.localFontFamily;if(!r||!this._doesCharSupportLocalGlyph(i))return;let n=e.tinySDF;if(!n){let i="400";/bold/i.test(t)?i="900":/medium/i.test(t)?i="500":/light/i.test(t)&&(i="200"),n=e.tinySDF=new ip.TinySDF({fontFamily:r,fontWeight:i,fontSize:24*ep,buffer:3*ep,radius:8*ep}),n.fontWeight=i}if(this.localGlyphs[n.fontWeight][i])return this.localGlyphs[n.fontWeight][i];const o=String.fromCharCode(i),{data:s,width:a,height:l,glyphWidth:c,glyphHeight:h,glyphLeft:u,glyphTop:d,glyphAdvance:p}=n.draw(o);return this.localGlyphs[n.fontWeight][i]={id:i,bitmap:new Fc({width:a,height:l},s),metrics:{width:c/ep,height:h/ep,left:u/ep,top:d/ep-27,advance:p/ep,localGlyph:!0}}}}ip.loadGlyphRange=function(e,t,i,r,n){const o=256*t,s=o+255,a=r.transformRequest(r.normalizeGlyphsURL(i).replace("{fontstack}",e).replace("{range}",`${o}-${s}`),le.Glyphs);de(a,((e,t)=>{if(e)n(e);else if(t){const e={},i=function(e){return new _d(e).readFields(yd,{})}(t);for(const t of i.glyphs)e[t.id]=t;n(null,{glyphs:e,ascender:i.ascender,descender:i.descender})}}))},ip.TinySDF=class{constructor({fontSize:e=24,buffer:t=3,radius:i=8,cutoff:r=.25,fontFamily:n="sans-serif",fontWeight:o="normal",fontStyle:s="normal"}={}){this.buffer=t,this.cutoff=r,this.radius=i;const a=this.size=e+4*t,l=this._createCanvas(a),c=this.ctx=l.getContext("2d",{willReadFrequently:!0});c.font=`${s} ${o} ${e}px ${n}`,c.textBaseline="alphabetic",c.textAlign="left",c.fillStyle="black",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Uint16Array(a)}_createCanvas(e){const t=document.createElement("canvas");return t.width=t.height=e,t}draw(e){const{width:t,actualBoundingBoxAscent:i,actualBoundingBoxDescent:r,actualBoundingBoxLeft:n,actualBoundingBoxRight:o}=this.ctx.measureText(e),s=Math.ceil(i),a=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(o-n))),l=Math.min(this.size-this.buffer,s+Math.ceil(r)),c=a+2*this.buffer,h=l+2*this.buffer,u=Math.max(c*h,0),d=new Uint8ClampedArray(u),p={data:d,width:c,height:h,glyphWidth:a,glyphHeight:l,glyphTop:s,glyphLeft:0,glyphAdvance:t};if(0===a||0===l)return p;const{ctx:f,buffer:m,gridInner:_,gridOuter:g}=this;f.clearRect(m,m,a,l),f.fillText(e,m,m+s);const y=f.getImageData(m,m,a,l);g.fill(Yd,0,u),_.fill(0,0,u);for(let e=0;e0?e*e:0,_[r]=e<0?e*e:0}}Jd(g,0,0,c,h,c,this.f,this.v,this.z),Jd(_,m,m,a,l,c,this.f,this.v,this.z);for(let e=0;ee+t[1]-t[0],f=u.reduce(p,0),m=d.reduce(p,0),_=a-f,g=l-m;let x=0,v=f,b=0,w=m,T=0,E=_,A=0,S=g;if(o.content&&r){const e=o.content;x=op(u,0,e[0]),b=op(d,0,e[1]),v=op(u,e[0],e[2]),w=op(d,e[1],e[3]),T=e[0]-x,A=e[1]-b,E=e[2]-e[0]-v,S=e[3]-e[1]-w}const M=(r,n,a,l)=>{const u=ap(r.stretch-x,v,c,e.left),d=lp(r.fixed-T,E,r.stretch,f),p=ap(n.stretch-b,w,h,e.top),_=lp(n.fixed-A,S,n.stretch,m),g=ap(a.stretch-x,v,c,e.left),M=lp(a.fixed-T,E,a.stretch,f),C=ap(l.stretch-b,w,h,e.top),k=lp(l.fixed-A,S,l.stretch,m),I=new y(u,p),P=new y(g,p),z=new y(g,C),L=new y(u,C),D=new y(d/s,_/s),R=new y(M/s,k/s),B=t*Math.PI/180;if(B){const e=Math.sin(B),t=Math.cos(B),i=[t,-e,e,t];I._matMult(i),P._matMult(i),L._matMult(i),z._matMult(i)}const O=r.stretch+r.fixed,F=n.stretch+n.fixed;return{tl:I,tr:P,bl:L,br:z,tex:{x:o.paddedRect.x+rp+O,y:o.paddedRect.y+rp+F,w:a.stretch+a.fixed-O,h:l.stretch+l.fixed-F},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:R,minFontScaleX:E/s/c,minFontScaleY:S/s/h,isSDF:i}};if(r&&(o.stretchX||o.stretchY)){const e=sp(u,_,f),t=sp(d,g,m);for(let i=0;i0)for(let e=(this.length>>1)-1;e>=0;e--)this._down(e)}push(e){this.data.push(e),this.length++,this._up(this.length-1)}pop(){if(0===this.length)return;const e=this.data[0],t=this.data.pop();return this.length--,this.length>0&&(this.data[0]=t,this._down(0)),e}peek(){return this.data[0]}_up(e){const{data:t,compare:i}=this,r=t[e];for(;e>0;){const n=e-1>>1,o=t[n];if(i(r,o)>=0)break;t[e]=o,e=n}t[e]=r}_down(e){const{data:t,compare:i}=this,r=this.length>>1,n=t[e];for(;e=0)break;t[e]=o,e=r}t[e]=n}}function up(e,t){return et?1:0}function dp(e,t=1,i=!1){let r=1/0,n=1/0,o=-1/0,s=-1/0;const a=e[0];for(let e=0;eo)&&(o=t.x),(!e||t.y>s)&&(s=t.y)}const l=Math.min(o-r,s-n);let c=l/2;const h=new hp([],pp);if(0===l)return new y(r,n);for(let t=r;tu.d||!u.d)&&(u=r,i&&console.log("found best %d after %d probes",Math.round(1e4*r.d)/1e4,d)),r.max-u.d<=t||(c=r.h/2,h.push(new fp(r.p.x-c,r.p.y-c,c,e)),h.push(new fp(r.p.x+c,r.p.y-c,c,e)),h.push(new fp(r.p.x-c,r.p.y+c,c,e)),h.push(new fp(r.p.x+c,r.p.y+c,c,e)),d+=4)}return i&&(console.log(`num probes: ${d}`),console.log(`best distance: ${u.d}`)),u.p}function pp(e,t){return t.max-e.max}class fp{constructor(e,t,i,r){this.p=new y(e,t),this.h=i,this.d=function(e,t){let i=!1,r=1/0;for(let n=0;ne.y!=a.y>e.y&&e.x<(a.x-n.x)*(e.y-n.y)/(a.y-n.y)+n.x&&(i=!i),r=Math.min(r,yc(e,n,a))}}return(i?1:-1)*Math.sqrt(r)}(this.p,r),this.max=this.d+this.h*Math.SQRT2}}const mp=7,_p=Number.POSITIVE_INFINITY,gp=Math.sqrt(2);function yp(e,[t,i]){let r=0,n=0;if(i===_p){t<0&&(t=0);const i=t/gp;switch(e){case"top-right":case"top-left":n=i-mp;break;case"bottom-right":case"bottom-left":n=-i+mp;break;case"bottom":n=-t+mp;break;case"top":n=t-mp}switch(e){case"top-right":case"bottom-right":r=-i;break;case"top-left":case"bottom-left":r=i;break;case"left":r=t;break;case"right":r=-t}}else{switch(t=Math.abs(t),i=Math.abs(i),e){case"top-right":case"top-left":case"top":n=i-mp;break;case"bottom-right":case"bottom-left":case"bottom":n=-i+mp}switch(e){case"top-right":case"bottom-right":case"right":r=-t;break;case"top-left":case"bottom-left":case"left":r=t}}return[r,n]}function xp(e,t,i,r,n,o,s,a,l,c){e.createArrays(),e.tilePixelRatio=aa/(512*e.overscaling),e.compareText={},e.iconsNeedLinear=!1;const h=e.layers[0].layout,u=e.layers[0]._unevaluatedLayout._values,d={};if("composite"===e.textSizeData.kind){const{minZoom:t,maxZoom:i}=e.textSizeData;d.compositeTextSizes=[u["text-size"].possiblyEvaluate(new wo(t),a),u["text-size"].possiblyEvaluate(new wo(i),a)]}if("composite"===e.iconSizeData.kind){const{minZoom:t,maxZoom:i}=e.iconSizeData;d.compositeIconSizes=[u["icon-size"].possiblyEvaluate(new wo(t),a),u["icon-size"].possiblyEvaluate(new wo(i),a)]}d.layoutTextSize=u["text-size"].possiblyEvaluate(new wo(l+1),a),d.layoutIconSize=u["icon-size"].possiblyEvaluate(new wo(l+1),a),d.textMaxSize=u["text-size"].possiblyEvaluate(new wo(18),a);const p="map"===h.get("text-rotation-alignment")&&"point"!==h.get("symbol-placement"),f=h.get("text-size");for(const o of e.features){const l=h.get("text-font").evaluate(o,{},a).join(","),u=f.evaluate(o,{},a),m=d.layoutTextSize.evaluate(o,{},a),_=(d.layoutIconSize.evaluate(o,{},a),{horizontal:{},vertical:void 0}),g=o.text;let y,x=[0,0];if(g){const r=g.toString(),s=h.get("text-letter-spacing").evaluate(o,{},a)*Fu,c=h.get("text-line-height").evaluate(o,{},a)*Fu,d=io(r)?s:0,f=h.get("text-anchor").evaluate(o,{},a),y=h.get("text-variable-anchor");if(!y){const e=h.get("text-radial-offset").evaluate(o,{},a);x=e?yp(f,[e*Fu,_p]):h.get("text-offset").evaluate(o,{},a).map((e=>e*Fu))}let v=p?"center":h.get("text-justify").evaluate(o,{},a);const b="point"===h.get("symbol-placement"),w=b?h.get("text-max-width").evaluate(o,{},a)*Fu:1/0,T=o=>{e.allowVerticalPlacement&&to(r)&&(_.vertical=Id(g,t,i,n,l,w,c,f,o,d,x,Sd.vertical,!0,m,u))};if(!p&&y){const e="auto"===v?y.map((e=>vp(e))):[v];let r=!1;for(let o=0;o=0||!to(r)){const e=Id(g,t,i,n,l,w,c,f,v,d,x,Sd.horizontal,!1,m,u);e&&(_.horizontal[v]=e)}T(b?"left":v)}}let v=!1;if(o.icon&&o.icon.name){const t=r[o.icon.name];t&&(y=Ud(n[o.icon.name],h.get("icon-offset").evaluate(o,{},a),h.get("icon-anchor").evaluate(o,{},a)),v=t.sdf,void 0===e.sdfIcons?e.sdfIcons=t.sdf:e.sdfIcons!==t.sdf&&G("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(t.pixelRatio!==e.pixelRatio||0!==h.get("icon-rotate").constantOr(1))&&(e.iconsNeedLinear=!0))}const b=Ap(_.horizontal)||_.vertical;e.iconsInText||(e.iconsInText=!!b&&b.iconsInText),(b||y)&&bp(e,o,_,y,r,d,m,0,x,v,s,a,c)}o&&e.generateCollisionDebugBuffers(l,e.collisionBoxArray)}function vp(e){switch(e){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function bp(e,t,i,r,n,o,s,a,l,c,h,u,d){let p=o.textMaxSize.evaluate(t,{},u);void 0===p&&(p=s);const f=e.layers[0].layout,m=f.get("icon-offset").evaluate(t,{},u),_=Ap(i.horizontal)||i.vertical,g="globe"===d.name,y=Fu,x=s/y,v=e.tilePixelRatio*p/y,w=(I=e.overscaling,e.zoom>18&&I>2&&(I>>=1),Math.max(aa/(512*I),1)*f.get("symbol-spacing")),T=f.get("text-padding")*e.tilePixelRatio,E=f.get("icon-padding")*e.tilePixelRatio,A=b(f.get("text-max-angle")),S="map"===f.get("text-rotation-alignment")&&"point"!==f.get("symbol-placement"),M="map"===f.get("icon-rotation-alignment")&&"point"!==f.get("symbol-placement"),C=f.get("symbol-placement"),k=w/2;var I;const P=f.get("icon-text-fit");let z;r&&"none"!==P&&(e.allowVerticalPlacement&&i.vertical&&(z=Nd(r,i.vertical,P,f.get("icon-text-fit-padding"),m,x)),_&&(r=Nd(r,_,P,f.get("icon-text-fit-padding"),m,x)));const L=(s,a,p)=>{if(a.x<0||a.x>=aa||a.y<0||a.y>=aa)return;let f=null;if(g){const{x:e,y:t,z:i}=d.projectTilePoint(a.x,a.y,p);f={anchor:new Vd(e,t,i,0,void 0),up:d.upVector(p,a.x,a.y)}}!function(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E){const A=e.addToLineVertexArray(t,r);let S,M,C,k,I,P,z,L=0,D=0,R=0,B=0,O=-1,F=-1;const j={};let U=Ps("");const N=i?i.anchor:t;let V=0,$=0;if(void 0===l._unevaluatedLayout.getValue("text-radial-offset")?[V,$]=l.layout.get("text-offset").evaluate(v,{},E).map((e=>e*Fu)):(V=l.layout.get("text-radial-offset").evaluate(v,{},E)*Fu,$=_p),e.allowVerticalPlacement&&n.vertical){const e=n.vertical;if(f)P=Mp(e),a&&(z=Mp(a));else{const i=l.layout.get("text-rotate").evaluate(v,{},E)+90;C=Sp(c,N,t,h,u,d,e,p,i,m),a&&(k=Sp(c,N,t,h,u,d,a,g,i))}}if(o){const r=l.layout.get("icon-rotate").evaluate(v,{},E),n="none"!==l.layout.get("icon-text-fit"),s=np(o,r,w,n),p=a?np(a,r,w,n):void 0;M=Sp(c,N,t,h,u,d,o,g,r),L=4*s.length;const f=e.iconSizeData;let m=null;"source"===f.kind?(m=[ju*l.layout.get("icon-size").evaluate(v,{},E)],m[0]>Tp&&G(`${e.layerIds[0]}: Value for "icon-size" is >= ${wp}. Reduce your "icon-size".`)):"composite"===f.kind&&(m=[ju*b.compositeIconSizes[0].evaluate(v,{},E),ju*b.compositeIconSizes[1].evaluate(v,{},E)],(m[0]>Tp||m[1]>Tp)&&G(`${e.layerIds[0]}: Value for "icon-size" is >= ${wp}. Reduce your "icon-size".`)),e.addSymbols(e.icon,s,m,x,y,v,!1,i,t,A.lineStartIndex,A.lineLength,-1,T,E),O=e.icon.placedSymbolArray.length-1,p&&(D=4*p.length,e.addSymbols(e.icon,p,m,x,y,v,Sd.vertical,i,t,A.lineStartIndex,A.lineLength,-1,T,E),F=e.icon.placedSymbolArray.length-1)}for(const r in n.horizontal){const o=n.horizontal[r];S||(U=Ps(o.text),f?I=Mp(o):S=Sp(c,N,t,h,u,d,o,p,l.layout.get("text-rotate").evaluate(v,{},E),m));const a=1===o.positionedLines.length;if(R+=Ep(e,i,t,o,s,l,f,v,m,A,n.vertical?Sd.horizontal:Sd.horizontalOnly,a?Object.keys(n.horizontal):[r],j,O,b,T,E),a)break}n.vertical&&(B+=Ep(e,i,t,n.vertical,s,l,f,v,m,A,Sd.vertical,["vertical"],j,F,b,T,E));let q=-1;const Z=(e,t)=>e?Math.max(e,t):t;q=Z(I,q),q=Z(P,q),q=Z(z,q);const W=q>-1?1:0;e.glyphOffsetArray.length>=af.MAX_GLYPHS&&G("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==v.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,v.sortKey),e.symbolInstances.emplaceBack(N.x,N.y,N.z,t.x,t.y,j.right>=0?j.right:-1,j.center>=0?j.center:-1,j.left>=0?j.left:-1,j.vertical>=0?j.vertical:-1,O,F,U,void 0!==S?S:e.collisionBoxArray.length,void 0!==S?S+1:e.collisionBoxArray.length,void 0!==C?C:e.collisionBoxArray.length,void 0!==C?C+1:e.collisionBoxArray.length,void 0!==M?M:e.collisionBoxArray.length,void 0!==M?M+1:e.collisionBoxArray.length,k||e.collisionBoxArray.length,k?k+1:e.collisionBoxArray.length,h,R,B,L,D,W,0,V,$,q)}(e,a,f,s,i,r,n,z,e.layers[0],e.collisionBoxArray,t.index,t.sourceLayerIndex,e.index,T,S,l,0,E,M,m,t,o,c,h,u)};if("line"===C)for(const n of Kd(t.geometry,0,0,aa,aa)){const t=Hd(n,w,A,i.vertical||_,r,y,v,e.overscaling,aa);for(const i of t)_&&Cp(e,_.text,k,i)||L(n,i,u)}else if("line-center"===C){for(const e of t.geometry)if(e.length>1){const t=Wd(e,A,i.vertical||_,r,y,v);t&&L(e,t,u)}}else if("Polygon"===t.type)for(const e of Th(t.geometry,0)){const t=dp(e,16);L(e[0],new Vd(t.x,t.y,0,0,void 0),u)}else if("LineString"===t.type)for(const e of t.geometry)L(e,new Vd(e[0].x,e[0].y,0,0,void 0),u);else if("Point"===t.type)for(const e of t.geometry)for(const t of e)L([t],new Vd(t.x,t.y,0,0,void 0),u)}const wp=255,Tp=wp*ju;function Ep(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_){const g=function(e,t,i,r,n,o,s,a){const l=[];if(0===t.positionedLines.length)return l;const c=r.layout.get("text-rotate").evaluate(o,{})*Math.PI/180,h=function(e){const t=e[0],i=e[1],r=t*i;return r>0?[t,-i]:r<0?[-t,i]:0===t?[i,t]:[i,-t]}(i);let u=Math.abs(t.top-t.bottom);for(const e of t.positionedLines)u-=e.lineOffset;const d=t.positionedLines.length,p=u/d;let f=t.top-i[1];for(let e=0;eTp&&G(`${e.layerIds[0]}: Value for "text-size" is >= ${wp}. Reduce your "text-size".`)):"composite"===x.kind&&(v=[ju*f.compositeTextSizes[0].evaluate(a,{},_),ju*f.compositeTextSizes[1].evaluate(a,{},_)],(v[0]>Tp||v[1]>Tp)&&G(`${e.layerIds[0]}: Value for "text-size" is >= ${wp}. Reduce your "text-size".`)),e.addSymbols(e.text,g,v,l,s,a,h,t,i,c.lineStartIndex,c.lineLength,p,m,_);for(const t of u)d[t]=e.text.placedSymbolArray.length-1;return 4*g.length}function Ap(e){for(const t in e)return e[t];return null}function Sp(e,t,i,r,n,o,s,a,l,c){let h=s.top,u=s.bottom,d=s.left,p=s.right;const f=s.collisionPadding;if(f&&(d-=f[0],h-=f[1],p+=f[2],u+=f[3]),l){const e=new y(d,h),t=new y(p,h),i=new y(d,u),r=new y(p,u),n=b(l);let o=new y(0,0);c&&(o=new y(c[0],c[1])),e._rotateAround(n,o),t._rotateAround(n,o),i._rotateAround(n,o),r._rotateAround(n,o),d=Math.min(e.x,t.x,i.x,r.x),p=Math.max(e.x,t.x,i.x,r.x),h=Math.min(e.y,t.y,i.y,r.y),u=Math.max(e.y,t.y,i.y,r.y)}return e.emplaceBack(t.x,t.y,t.z,i.x,i.y,d,h,p,u,a,r,n,o),e.length-1}function Mp(e){e.collisionPadding&&(e.top-=e.collisionPadding[1],e.bottom+=e.collisionPadding[3]);const t=e.bottom-e.top;return t>0?Math.max(10,t):null}function Cp(e,t,i,r){const n=e.compareText;if(t in n){const e=n[t];for(let t=e.length-1;t>=0;t--)if(r.dist(e[t])x&&(v(e,c,r,n,a,l),v(c,i,a,l,o,s))}v(u,d,r,o,n,o),v(d,p,n,o,n,s),v(p,f,n,s,r,s),v(f,u,r,s,r,o),m-=x,_-=x,g+=x,y+=x;const b=1/Math.max(g-m,y-_);return{scale:b,x:m*b,y:_*b,x2:g*b,y2:y*b,projection:t}}const Pp=pa(new Float32Array(16));class zp{constructor(e){this.spec=e,this.name=e.name,this.wrap=!1,this.requiresDraping=!1,this.supportsWorldCopies=!1,this.supportsTerrain=!1,this.supportsFog=!1,this.supportsFreeCamera=!1,this.zAxisUnit="meters",this.isReprojectedInTileSpace=!0,this.unsupportedLayers=["custom"],this.center=[0,0],this.range=[3.5,7]}project(e,t){return{x:0,y:0,z:0}}unproject(e,t){return new Vl(0,0)}projectTilePoint(e,t,i){return{x:e,y:t,z:0}}locationPoint(e,t,i=!0){return e._coordinatePoint(e.locationCoordinate(t),i)}pixelsPerMeter(e,t){return Zl(1,e)*t}pixelSpaceConversion(e,t,i){return 1}farthestPixelDistance(e){return kp(e,e.pixelsPerMeter)}pointCoordinate(e,t,i,r){const n=e.horizonLineFromTop(!1),o=new y(t,Math.max(n,i));return e.rayIntersectionCoordinate(e.pointRayIntersection(o,r))}pointCoordinate3D(e,t,i){const r=new y(t,i);if(e.elevation)return e.elevation.pointCoordinate(r);{const t=this.pointCoordinate(e,r.x,r.y,0);return[t.x,t.y,t.z]}}isPointAboveHorizon(e,t){if(e.elevation)return!this.pointCoordinate3D(e,t.x,t.y);const i=e.horizonLineFromTop();return t.y0?t<-Np+i&&(t=-Np+i):t>Np-i&&(t=Np-i);const o=n/Math.pow(Vp(t),r);let s=o*Math.sin(r*e),a=n-o*Math.cos(r*e);return s=.5*(s/Math.PI+.5),a=.5*(a/Math.PI+.5),{x:s,y:this.southernCenter?a:1-a,z:0}}unproject(e,t){e=(2*e-.5)*Math.PI,this.southernCenter&&(t=1-t),t=(2*(1-t)-.5)*Math.PI;const{n:i,f:r}=this,n=r-t,o=Math.sign(n),s=Math.sign(i)*Math.sqrt(e*e+n*n);let a=Math.atan2(e,Math.abs(n))*o;n*i<0&&(a-=Math.PI*Math.sign(e)*o);const l=M(w(a/i)+this.center[0],-180,180),c=M(w(2*Math.atan(Math.pow(r/s,1/i))-Np),-Kl,Kl);return new Vl(l,this.southernCenter?-c:c)}}class Gp extends zp{constructor(e){super(e),this.wrap=!0,this.supportsWorldCopies=!0,this.supportsTerrain=!0,this.supportsFog=!0,this.supportsFreeCamera=!0,this.isReprojectedInTileSpace=!1,this.unsupportedLayers=[],this.range=null}project(e,t){return{x:Gl(e),y:ql(t),z:0}}unproject(e,t){const i=Wl(e),r=Hl(t);return new Vl(i,r)}}const qp=b(Kl);class Zp extends zp{project(e,t){const i=(t=b(t))*t,r=i*i;return{x:.5*((e=b(e))*(.8707-.131979*i+r*(r*(.003971*i-.001529*r)-.013791))/Math.PI+.5),y:1-.5*(t*(1.007226+i*(.015085+r*(.028874*i-.044475-.005916*r)))/Math.PI+1),z:0}}unproject(e,t){e=(2*e-.5)*Math.PI;let i=t=(2*(1-t)-1)*Math.PI,r=25,n=0,o=i*i;do{o=i*i;const e=o*o;n=(i*(1.007226+o*(.015085+e*(.028874*o-.044475-.005916*e)))-t)/(1.007226+o*(.045255+e*(.259866*o-.311325-.005916*11*e))),i=M(i-n,-qp,qp)}while(Math.abs(n)>1e-6&&--r>0);o=i*i;const s=M(w(e/(.8707+o*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979))),-180,180),a=w(i);return new Vl(s,a)}}const Wp=b(Kl);class Hp extends zp{project(e,t){t=b(t),e=b(e);const i=Math.cos(t),r=2/Math.PI,n=Math.acos(i*Math.cos(e/2)),o=Math.sin(n)/n,s=.5*(e*r+2*i*Math.sin(e/2)/o)||0,a=.5*(t+Math.sin(t)/o)||0;return{x:.5*(s/Math.PI+.5),y:1-.5*(a/Math.PI+1),z:0}}unproject(e,t){let i=e=(2*e-.5)*Math.PI,r=t=(2*(1-t)-1)*Math.PI,n=25;const o=1e-6;let s=0,a=0;do{const n=Math.cos(r),o=Math.sin(r),l=2*o*n,c=o*o,h=n*n,u=Math.cos(i/2),d=Math.sin(i/2),p=2*u*d,f=d*d,m=1-h*u*u,_=m?1/m:0,g=m?Math.acos(n*u)*Math.sqrt(1/m):0,y=.5*(2*g*n*d+2*i/Math.PI)-e,x=.5*(g*o+r)-t,v=.5*_*(h*f+g*n*u*c)+1/Math.PI,b=_*(p*l/4-g*o*d),w=.125*_*(l*d-g*o*h*p),T=.5*_*(c*u+g*f*n)+.5,E=b*w-T*v;s=(x*b-y*T)/E,a=(y*w-x*v)/E,i=M(i-s,-Math.PI,Math.PI),r=M(r-a,-Wp,Wp)}while((Math.abs(s)>o||Math.abs(a)>o)&&--n>0);return new Vl(w(i),w(r))}}class Xp extends zp{constructor(e){super(e),this.center=e.center||[0,0],this.parallels=e.parallels||[0,0],this.cosPhi=Math.max(.01,Math.cos(b(this.parallels[0]))),this.scale=1/(2*Math.max(Math.PI*this.cosPhi,1/this.cosPhi)),this.wrap=!0,this.supportsWorldCopies=!0}project(e,t){const{scale:i,cosPhi:r}=this;return{x:b(e)*r*i+.5,y:-Math.sin(b(t))/r*i+.5,z:0}}unproject(e,t){const{scale:i,cosPhi:r}=this,n=-(t-.5)/i,o=M(w((e-.5)/i)/r,-180,180),s=Math.asin(M(n*r,-1,1)),a=M(w(s),-Kl,Kl);return new Vl(o,a)}}class Kp extends Gp{constructor(e){super(e),this.requiresDraping=!0,this.supportsWorldCopies=!1,this.supportsFog=!0,this.zAxisUnit="pixels",this.unsupportedLayers=["debug"],this.range=[3,5]}projectTilePoint(e,t,i){const r=Ml(e,t,i);return Oa(r,r,Il(yl(i))),{x:r[0],y:r[1],z:r[2]}}locationPoint(e,t){const i=Sl(t.lat,t.lng),r=Da([],i),n=e.elevation?e.elevation.getAtPointOrZero(e.locationCoordinate(t),e._centerAltitude):e._centerAltitude;La(i,i,r,Zl(1,0)*aa*n);const o=pa(new Float64Array(16));return ma(o,e.pixelMatrix,e.globeMatrix),Oa(i,i,o),new y(i[0],i[1])}pixelsPerMeter(e,t){return Zl(1,0)*t}pixelSpaceConversion(e,t,i){const r=Zl(1,e)*t,n=Pi(Zl(1,45)*t,r,i);return this.pixelsPerMeter(e,t)/n}createTileMatrix(e,t,i){const r=Pl(yl(i.canonical));return ma(new Float64Array(16),e.globeMatrix,r)}createInversionMatrix(e,t){const{center:i}=e,r=Il(yl(t));return xa(r,r,b(i.lng)),ya(r,r,b(i.lat)),ga(r,r,[e._pixelsPerMercatorPixel,e._pixelsPerMercatorPixel,1]),Float32Array.from(r)}pointCoordinate(e,t,i,r){return ml(e,t,i,!0)||new Jl(0,0)}pointCoordinate3D(e,t,i){const r=this.pointCoordinate(e,t,i,0);return[r.x,r.y,r.z]}isPointAboveHorizon(e,t){return!ml(e,t.x,t.y,!1)}farthestPixelDistance(e){const t=function(e,t){const i=e.cameraToCenterDistance,r=e._centerAltitude*t,n=e._camera,o=e._camera.forward(),s=Ma([],za([],o,-i),[0,0,r]),a=e.worldSize/(2*Math.PI),l=[0,0,-a],c=e.width/e.height,h=Math.tan(e.fovAboveCenter),u=za([],n.up(),h),d=za([],n.right(),h*c),p=Da([],Ma([],Ma([],o,u),d)),f=[];let m;if(new tl(s,p).closestPointOnSphere(l,a,f)){const t=Ma([],f,l),i=Ua([],t,s);m=Math.cos(e.fovAboveCenter)*Aa(i)}else{const e=Ua([],s,l),t=Ua([],l,s);Da(t,t);const i=Aa(e)-a;m=Math.sqrt(i*(i+2*a));const r=Math.acos(m/(a+i))-Math.acos(Ra(o,t));m*=Math.cos(r)}return 1.01*m}(e,this.pixelsPerMeter(e.center.lat,e.worldSize)),i=Ll(e.zoom);if(i>0){const r=kp(e,Zl(1,e.center.lat)*e.worldSize),n=e.worldSize/(2*Math.PI),o=Math.max(e.width,e.height)/e.worldSize*Math.PI;return Pi(t,r+n*(1-Math.cos(o)),Math.pow(i,10))}return t}upVector(e,t,i){return Ml(t,i,e,1)}upVectorScale(e){return{metersToTile:fl(Cl(yl(e)))}}}function Yp(e){const t=e.parallels,i=!!t&&Math.abs(t[0]+t[1])<.01;switch(e.name){case"mercator":return new Gp(e);case"equirectangular":return new Up(e);case"naturalEarth":return new Zp(e);case"equalEarth":return new jp(e);case"winkelTripel":return new Hp(e);case"albers":return i?new Xp(e):new Lp(e);case"lambertConformalConic":return i?new Xp(e):new $p(e);case"globe":return new Kp(e)}throw new Error(`Invalid projection name: ${e.name}`)}const Jp=Wh.types,Qp=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function ef(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=a?Math.min(Tp,Math.round(a[0])):0,f=a?Math.min(Tp,Math.round(a[1])):0;e.emplaceBack(t,i,Math.round(32*r),Math.round(32*n),o,s,(p<<1)+(l?1:0),f,16*c,16*h,256*u,256*d)}function tf(e,t,i,r,n,o,s){e.emplaceBack(t,i,r,n,o,s)}function rf(e,t,i,r,n){e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n)}function nf(e){for(const t of e.sections)if(lo(t.text))return!0;return!1}class of{constructor(e){this.layoutVertexArray=new Xo,this.indexArray=new rs,this.programConfigurations=e,this.segments=new sa,this.dynamicLayoutVertexArray=new qo,this.opacityVertexArray=new Yo,this.placedSymbolArray=new ms,this.globeExtVertexArray=new Ko}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length}upload(e,t,i,r){this.isEmpty()||(i&&(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,Pu.members),this.indexBuffer=e.createIndexBuffer(this.indexArray,t),this.dynamicLayoutVertexBuffer=e.createVertexBuffer(this.dynamicLayoutVertexArray,Lu.members,!0),this.opacityVertexBuffer=e.createVertexBuffer(this.opacityVertexArray,Qp,!0),this.globeExtVertexArray.length>0&&(this.globeExtVertexBuffer=e.createVertexBuffer(this.globeExtVertexArray,zu.members,!0)),this.opacityVertexBuffer.itemSize=1),(i||r)&&this.programConfigurations.upload(e))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy())}}Xn(of,"SymbolBuffers");class sf{constructor(e,t,i){this.layoutVertexArray=new e,this.layoutAttributes=t,this.indexArray=new i,this.segments=new sa,this.collisionVertexArray=new ts,this.collisionVertexArrayExt=new is}upload(e){this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=e.createVertexBuffer(this.collisionVertexArray,Du.members,!0),this.collisionVertexBufferExt=e.createVertexBuffer(this.collisionVertexArrayExt,Ru.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy(),this.collisionVertexBufferExt.destroy())}}Xn(sf,"CollisionBuffers");class af{constructor(e){this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.id)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.fullyClipped=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=pa([]),this.placementViewportMatrix=pa([]);const t=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Uu(this.zoom,t["text-size"]),this.iconSizeData=Uu(this.zoom,t["icon-size"]);const i=this.layers[0].layout,r=i.get("symbol-sort-key"),n=i.get("symbol-z-order");this.canOverlap=i.get("text-allow-overlap")||i.get("icon-allow-overlap")||i.get("text-ignore-placement")||i.get("icon-ignore-placement"),this.sortFeaturesByKey="viewport-y"!==n&&void 0!==r.constantOr(1),this.sortFeaturesByY=("viewport-y"===n||"auto"===n&&!this.sortFeaturesByKey)&&this.canOverlap,this.writingModes=i.get("text-writing-mode").map((e=>Sd[e])),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.sourceID=e.sourceID,this.projection=e.projection}createArrays(){this.text=new of(new Ks(this.layers,this.zoom,(e=>/^text/.test(e)))),this.icon=new of(new Ks(this.layers,this.zoom,(e=>/^icon/.test(e)))),this.glyphOffsetArray=new ys,this.lineVertexArray=new xs,this.symbolInstances=new gs}calculateGlyphDependencies(e,t,i,r,n){for(let i=0;i0)&&("constant"!==a.value.kind||a.value.value.length>0),u="constant"!==c.value.kind||!!c.value.value||Object.keys(c.parameters).length>0,d=o.get("symbol-sort-key");if(this.features=[],!h&&!u)return;const p=t.iconDependencies,f=t.glyphDependencies,m=t.availableImages,_=new wo(this.zoom);for(const{feature:t,id:l,index:c,sourceLayerIndex:g}of e){const e=n._featureFilter.needGeometry,y=ac(t,e);if(!n._featureFilter.filter(_,y,i))continue;if(e||(y.geometry=sc(t,i,r)),s&&1!==t.type&&i.z<=5){const e=y.geometry,t=.98078528056,r=(e,r)=>Ra(Ml(e.x,e.y,i,1),Ml(r.x,r.y,i,1))=0;for(const i of x.sections)if(i.image)p[i.image.name]=!0;else{const r=to(x.toString()),n=i.fontStack||e,o=f[n]=f[n]||{};this.calculateGlyphDependencies(i.text,o,t,this.allowVerticalPlacement,r)}}}"line"===o.get("symbol-placement")&&(this.features=function(e){const t={},i={},r=[];let n=0;function o(t){r.push(e[t]),n++}function s(e,t,n){const o=i[e];return delete i[e],i[t]=o,r[o].geometry[0].pop(),r[o].geometry[0]=r[o].geometry[0].concat(n[0]),o}function a(e,i,n){const o=t[i];return delete t[i],t[e]=o,r[o].geometry[0].shift(),r[o].geometry[0]=n[0].concat(r[o].geometry[0]),o}function l(e,t,i){const r=i?t[0][t[0].length-1]:t[0][0];return`${e}:${r.x}:${r.y}`}for(let c=0;ce.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((e,t)=>e.sortKey-t.sortKey))}update(e,t,i,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(e,t,this.layers,i,r),this.icon.programConfigurations.updatePaintArrays(e,t,this.layers,i,r))}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(e){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(e),this.iconCollisionBox.upload(e)),this.text.upload(e,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(e,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}getProjection(){return this.projectionInstance||(this.projectionInstance=Yp(this.projection)),this.projectionInstance}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(e,t){const i=this.lineVertexArray.length;if(void 0!==e.segment)for(const{x:e,y:i}of t)this.lineVertexArray.emplaceBack(e,i);return{lineStartIndex:i,lineLength:this.lineVertexArray.length-i}}addSymbols(e,t,i,r,n,o,s,a,l,c,h,u,d,p){const f=e.indexArray,m=e.layoutVertexArray,_=e.globeExtVertexArray,g=e.segments.prepareSegment(4*t.length,m,f,this.canOverlap?o.sortKey:void 0),y=this.glyphOffsetArray.length,x=g.vertexLength,v=this.allowVerticalPlacement&&s===Sd.vertical?Math.PI/2:0,b=o.text&&o.text.sections;for(let r=0;r=0?t.rightJustifiedTextSymbolIndex:t.centerJustifiedTextSymbolIndex>=0?t.centerJustifiedTextSymbolIndex:t.leftJustifiedTextSymbolIndex>=0?t.leftJustifiedTextSymbolIndex:t.verticalPlacedTextSymbolIndex>=0?t.verticalPlacedTextSymbolIndex:r),o=Nu(this.textSizeData,e,n)/Fu;return this.tilePixelRatio*o}getSymbolInstanceIconSize(e,t,i){const r=this.icon.placedSymbolArray.get(i),n=Nu(this.iconSizeData,e,r);return this.tilePixelRatio*n}_commitDebugCollisionVertexUpdate(e,t,i){e.emplaceBack(t,-i,-i),e.emplaceBack(t,i,-i),e.emplaceBack(t,i,i),e.emplaceBack(t,-i,i)}_updateTextDebugCollisionBoxes(e,t,i,r,n,o){for(let s=r;s0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(e,t){const i=e.placedSymbolArray.get(t),r=i.vertexStartIndex+4*i.numGlyphs;for(let t=i.vertexStartIndex;tr[e]-r[t]||n[t]-n[e])),o}addToSortKeyRanges(e,t){const i=this.sortKeyRanges[this.sortKeyRanges.length-1];i&&i.sortKey===t?i.symbolInstanceEnd=e+1:this.sortKeyRanges.push({sortKey:t,symbolInstanceStart:e,symbolInstanceEnd:e+1})}sortFeatures(e){if(this.sortFeaturesByY&&this.sortedAngle!==e&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(e),this.sortedAngle=e,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const e of this.symbolInstanceIndexes){const t=this.symbolInstances.get(e);this.featureSortOrder.push(t.featureIndex);const{rightJustifiedTextSymbolIndex:i,centerJustifiedTextSymbolIndex:r,leftJustifiedTextSymbolIndex:n,verticalPlacedTextSymbolIndex:o,placedIconSymbolIndex:s,verticalPlacedIconSymbolIndex:a}=t;i>=0&&this.addIndicesForPlacedSymbol(this.text,i),r>=0&&r!==i&&this.addIndicesForPlacedSymbol(this.text,r),n>=0&&n!==r&&n!==i&&this.addIndicesForPlacedSymbol(this.text,n),o>=0&&this.addIndicesForPlacedSymbol(this.text,o),s>=0&&this.addIndicesForPlacedSymbol(this.icon,s),a>=0&&this.addIndicesForPlacedSymbol(this.icon,a)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}Xn(af,"SymbolBucket",{omit:["layers","collisionBoxArray","features","compareText"]}),af.MAX_GLYPHS=65535,af.addDynamicAttributes=rf;const lf=new Do({"symbol-placement":new Po(et.layout_symbol["symbol-placement"]),"symbol-spacing":new Po(et.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Po(et.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new zo(et.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Po(et.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Po(et.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Po(et.layout_symbol["icon-ignore-placement"]),"icon-optional":new Po(et.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Po(et.layout_symbol["icon-rotation-alignment"]),"icon-size":new zo(et.layout_symbol["icon-size"]),"icon-text-fit":new Po(et.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Po(et.layout_symbol["icon-text-fit-padding"]),"icon-image":new zo(et.layout_symbol["icon-image"]),"icon-rotate":new zo(et.layout_symbol["icon-rotate"]),"icon-padding":new Po(et.layout_symbol["icon-padding"]),"icon-keep-upright":new Po(et.layout_symbol["icon-keep-upright"]),"icon-offset":new zo(et.layout_symbol["icon-offset"]),"icon-anchor":new zo(et.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Po(et.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Po(et.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Po(et.layout_symbol["text-rotation-alignment"]),"text-field":new zo(et.layout_symbol["text-field"]),"text-font":new zo(et.layout_symbol["text-font"]),"text-size":new zo(et.layout_symbol["text-size"]),"text-max-width":new zo(et.layout_symbol["text-max-width"]),"text-line-height":new zo(et.layout_symbol["text-line-height"]),"text-letter-spacing":new zo(et.layout_symbol["text-letter-spacing"]),"text-justify":new zo(et.layout_symbol["text-justify"]),"text-radial-offset":new zo(et.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Po(et.layout_symbol["text-variable-anchor"]),"text-anchor":new zo(et.layout_symbol["text-anchor"]),"text-max-angle":new Po(et.layout_symbol["text-max-angle"]),"text-writing-mode":new Po(et.layout_symbol["text-writing-mode"]),"text-rotate":new zo(et.layout_symbol["text-rotate"]),"text-padding":new Po(et.layout_symbol["text-padding"]),"text-keep-upright":new Po(et.layout_symbol["text-keep-upright"]),"text-transform":new zo(et.layout_symbol["text-transform"]),"text-offset":new zo(et.layout_symbol["text-offset"]),"text-allow-overlap":new Po(et.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Po(et.layout_symbol["text-ignore-placement"]),"text-optional":new Po(et.layout_symbol["text-optional"])});var cf={paint:new Do({"icon-opacity":new zo(et.paint_symbol["icon-opacity"]),"icon-color":new zo(et.paint_symbol["icon-color"]),"icon-halo-color":new zo(et.paint_symbol["icon-halo-color"]),"icon-halo-width":new zo(et.paint_symbol["icon-halo-width"]),"icon-halo-blur":new zo(et.paint_symbol["icon-halo-blur"]),"icon-translate":new Po(et.paint_symbol["icon-translate"]),"icon-translate-anchor":new Po(et.paint_symbol["icon-translate-anchor"]),"text-opacity":new zo(et.paint_symbol["text-opacity"]),"text-color":new zo(et.paint_symbol["text-color"],{runtimeType:dt,getOverride:e=>e.textColor,hasOverride:e=>!!e.textColor}),"text-halo-color":new zo(et.paint_symbol["text-halo-color"]),"text-halo-width":new zo(et.paint_symbol["text-halo-width"]),"text-halo-blur":new zo(et.paint_symbol["text-halo-blur"]),"text-translate":new Po(et.paint_symbol["text-translate"]),"text-translate-anchor":new Po(et.paint_symbol["text-translate-anchor"])}),layout:lf};class hf{constructor(e){this.type=e.property.overrides?e.property.overrides.runtimeType:lt,this.defaultValue=e}evaluate(e){if(e.formattedSection){const t=this.defaultValue.property.overrides;if(t&&t.hasOverride(e.formattedSection))return t.getOverride(e.formattedSection)}return e.feature&&e.featureState?this.defaultValue.evaluate(e.feature,e.featureState):this.defaultValue.property.specification.default}eachChild(e){this.defaultValue.isConstant()||e(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Xn(hf,"FormatSectionOverride",{omit:["defaultValue"]});class uf extends ra{constructor(e){super(e,cf)}recalculate(e,t){super.recalculate(e,t),"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment"));const i=this.layout.get("text-writing-mode");if(i){const e=[];for(const t of i)e.indexOf(t)<0&&e.push(t);this.layout._values["text-writing-mode"]=e}else this.layout._values["text-writing-mode"]="point"===this.layout.get("symbol-placement")?["horizontal"]:["horizontal","vertical"];this._setPaintOverrides()}getValueAndResolveTokens(e,t,i,r){const n=this.layout.get(e).evaluate(t,{},i,r),o=this._unevaluatedLayout._values[e];return o.isDataDriven()||Hr(o.value)||!n?n:function(e,t){return t.replace(/{([^{}]+)}/g,((t,i)=>i in e?String(e[i]):""))}(t.properties,n)}createBucket(e){return new af(e)}queryRadius(){return 0}queryIntersectsFeature(){return!1}_setPaintOverrides(){for(const e of cf.paint.overridableProperties){if(!uf.hasPaintOverride(this.layout,e))continue;const t=this.paint.get(e),i=new hf(t),r=new Wr(i,t.property.specification);let n=null;n="constant"===t.value.kind||"source"===t.value.kind?new Kr("source",r):new Yr("composite",r,t.value.zoomStops,t.value._interpolationType),this.paint._values[e]=new ko(t.property,n,t.parameters)}}_handleOverridablePaintPropertyUpdate(e,t,i){return!(!this.layout||t.isDataDriven()||i.isDataDriven())&&uf.hasPaintOverride(this.layout,e)}static hasPaintOverride(e,t){const i=e.get("text-field"),r=cf.paint.properties[t];let n=!1;const o=e=>{for(const t of e)if(r.overrides&&r.overrides.hasOverride(t))return void(n=!0)};if("constant"===i.value.kind&&i.value.value instanceof Dt)o(i.value.value.sections);else if("source"===i.value.kind){const e=t=>{n||(t instanceof Nt&&Ft(t.value)===_t?o(t.value.sections):t instanceof Zt?o(t.sections):t.eachChild(e))},t=i.value;t._styleExpression&&e(t._styleExpression.expression)}return n}getProgramConfiguration(e){return new Xs(this,e)}}var df={paint:new Do({"background-color":new Po(et.paint_background["background-color"]),"background-pattern":new Po(et.paint_background["background-pattern"]),"background-opacity":new Po(et.paint_background["background-opacity"])})},pf={paint:new Do({"raster-opacity":new Po(et.paint_raster["raster-opacity"]),"raster-hue-rotate":new Po(et.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Po(et.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Po(et.paint_raster["raster-brightness-max"]),"raster-saturation":new Po(et.paint_raster["raster-saturation"]),"raster-contrast":new Po(et.paint_raster["raster-contrast"]),"raster-resampling":new Po(et.paint_raster["raster-resampling"]),"raster-fade-duration":new Po(et.paint_raster["raster-fade-duration"])})};class ff extends ra{constructor(e){super(e,{}),this.implementation=e}is3D(){return"3d"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}isLayerDraped(){return void 0!==this.implementation.renderToTile}shouldRedrape(){return!!this.implementation.shouldRerenderTiles&&this.implementation.shouldRerenderTiles()}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){}onAdd(e){this.implementation.onAdd&&this.implementation.onAdd(e,e.painter.context.gl)}onRemove(e){this.implementation.onRemove&&this.implementation.onRemove(e,e.painter.context.gl)}}var mf={paint:new Do({"sky-type":new Po(et.paint_sky["sky-type"]),"sky-atmosphere-sun":new Po(et.paint_sky["sky-atmosphere-sun"]),"sky-atmosphere-sun-intensity":new Po(et.paint_sky["sky-atmosphere-sun-intensity"]),"sky-gradient-center":new Po(et.paint_sky["sky-gradient-center"]),"sky-gradient-radius":new Po(et.paint_sky["sky-gradient-radius"]),"sky-gradient":new Lo(et.paint_sky["sky-gradient"]),"sky-atmosphere-halo-color":new Po(et.paint_sky["sky-atmosphere-halo-color"]),"sky-atmosphere-color":new Po(et.paint_sky["sky-atmosphere-color"]),"sky-opacity":new Po(et.paint_sky["sky-opacity"])})};function _f(e,t,i){const r=[0,0,1],n=Wa([]);return Xa(n,n,i?-b(e)+Math.PI:b(e)),Ha(n,n,-b(t)),Fa(r,r,n),Da(r,r)}const gf={circle:class extends ra{constructor(e){super(e,Cc)}createBucket(e){return new hc(e)}queryRadius(e){const t=e;return Tc("circle-radius",this,t)+Tc("circle-stroke-width",this,t)+Ec(this.paint.get("circle-translate"))}queryIntersectsFeature(e,t,i,r,n,o,s,a){const l=Sc(this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),o.angle,e.pixelToTileUnitsFactor),c=this.paint.get("circle-radius").evaluate(t,i)+this.paint.get("circle-stroke-width").evaluate(t,i);return kc(e,r,o,s,a,"map"===this.paint.get("circle-pitch-alignment"),"map"===this.paint.get("circle-pitch-scale"),l,c)}getProgramIds(){return["circle"]}getProgramConfiguration(e){return new Xs(this,e)}},heatmap:class extends ra{createBucket(e){return new Dc(e)}constructor(e){super(e,Uc),this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(e){"heatmap-color"===e&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=Nc({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)}queryRadius(e){return Tc("heatmap-radius",this,e)}queryIntersectsFeature(e,t,i,r,n,o,s,a){const l=this.paint.get("heatmap-radius").evaluate(t,i);return kc(e,r,o,s,a,!0,!0,new y(0,0),l)}hasOffscreenPass(){return 0!==this.paint.get("heatmap-opacity")&&"none"!==this.visibility}getProgramIds(){return["heatmap","heatmapTexture"]}getProgramConfiguration(e){return new Xs(this,e)}},hillshade:class extends ra{constructor(e){super(e,Vc)}hasOffscreenPass(){return 0!==this.paint.get("hillshade-exaggeration")&&"none"!==this.visibility}getProgramIds(){return["hillshade","hillshadePrepare"]}},fill:class extends ra{constructor(e){super(e,kh)}getProgramIds(){const e=this.paint.get("fill-pattern"),t=e&&e.constantOr(1),i=[t?"fillPattern":"fill"];return this.paint.get("fill-antialias")&&i.push(t&&!this.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline"),i}getProgramConfiguration(e){return new Xs(this,e)}recalculate(e,t){super.recalculate(e,t);const i=this.paint._values["fill-outline-color"];"constant"===i.value.kind&&void 0===i.value.value&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(e){return new Mh(e)}queryRadius(){return Ec(this.paint.get("fill-translate"))}queryIntersectsFeature(e,t,i,r,n,o){return!e.queryGeometry.isAboveHorizon&&pc(Ac(e.tilespaceGeometry,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),o.angle,e.pixelToTileUnitsFactor),r)}isTileClipped(){return!0}},"fill-extrusion":class extends ra{constructor(e){super(e,hu)}createBucket(e){return new eu(e)}queryRadius(){return Ec(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}getProgramIds(){return[this.paint.get("fill-extrusion-pattern").constantOr(1)?"fillExtrusionPattern":"fillExtrusion"]}getProgramConfiguration(e){return new Xs(this,e)}queryIntersectsFeature(e,t,i,r,n,o,s,a,l){const c=Sc(this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),o.angle,e.pixelToTileUnitsFactor),h=this.paint.get("fill-extrusion-height").evaluate(t,i),u=this.paint.get("fill-extrusion-base").evaluate(t,i),d=[0,0],p=a&&o.elevation,f=o.elevation?o.elevation.exaggeration():1,m=e.tile.getBucket(this);if(p&&m instanceof eu){const e=m.centroidVertexArray,t=l+1;te.polygon)).flat());const _=p?a:null,[g,x]=function(e,t,i,r,n,o,s,a,l,c,h){return"globe"===e.projection.name?function(e,t,i,r,n,o,s,a,l,c,h){const u=[],d=[],p=e.projection.upVectorScale(h,e.center.lat,e.worldSize).metersToTile,f=[0,0,0,1],m=[0,0,0,1],_=(e,t,i,r)=>{e[0]=t,e[1]=i,e[2]=r,e[3]=1},g=au();i>0&&(i+=g),r+=g;for(const g of t){const t=[],y=[];for(const u of g){const d=u.x+n.x,g=u.y+n.y,x=e.projection.projectTilePoint(d,g,h),v=e.projection.upVector(h,u.x,u.y);let b=i,w=r;if(s){const e=xu(d,g,i,r,s,a,l,c);b+=e.base,w+=e.top}0!==i?_(f,x.x+v[0]*p*b,x.y+v[1]*p*b,x.z+v[2]*p*b):_(f,x.x,x.y,x.z),_(m,x.x+v[0]*p*w,x.y+v[1]*p*w,x.z+v[2]*p*w),Oa(f,f,o),Oa(m,m,o),t.push(new _u(f[0],f[1],f[2])),y.push(new _u(m[0],m[1],m[2]))}u.push(t),d.push(y)}return[u,d]}(e,t,i,r,n,o,s,a,l,c,h):s?function(e,t,i,r,n,o,s,a,l){const c=[],h=[],u=[0,0,0,1];for(const d of e){const e=[],p=[];for(const c of d){const h=c.x+r.x,d=c.y+r.y,f=xu(h,d,t,i,o,s,a,l);u[0]=h,u[1]=d,u[2]=f.base,u[3]=1,qa(u,u,n),u[3]=Math.max(u[3],1e-5);const m=new _u(u[0]/u[3],u[1]/u[3],u[2]/u[3]);u[0]=h,u[1]=d,u[2]=f.top,u[3]=1,qa(u,u,n),u[3]=Math.max(u[3],1e-5);const _=new _u(u[0]/u[3],u[1]/u[3],u[2]/u[3]);e.push(m),p.push(_)}c.push(e),h.push(p)}return[c,h]}(t,i,r,n,o,s,a,l,c):function(e,t,i,r,n){const o=[],s=[],a=n[8]*t,l=n[9]*t,c=n[10]*t,h=n[11]*t,u=n[8]*i,d=n[9]*i,p=n[10]*i,f=n[11]*i;for(const t of e){const e=[],i=[];for(const o of t){const t=o.x+r.x,s=o.y+r.y,m=n[0]*t+n[4]*s+n[12],_=n[1]*t+n[5]*s+n[13],g=n[2]*t+n[6]*s+n[14],y=n[3]*t+n[7]*s+n[15],x=m+a,v=_+l,b=g+c,w=Math.max(y+h,1e-5),T=m+u,E=_+d,A=g+p,S=Math.max(y+f,1e-5);e.push(new _u(x/w,v/w,b/w)),i.push(new _u(T/S,E/S,A/S))}o.push(e),s.push(i)}return[o,s]}(t,i,r,n,o)}(o,r,u,h,c,s,_,d,f,o.center.lat,e.tileID.canonical),v=e.queryGeometry;return function(e,t,i){let r=1/0;pc(i,t)&&(r=yu(i,t[0]));for(let n=0;n=3)for(let t=0;t{this._triggered=!1,this._callback()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._callback()}),0))}remove(){this._channel=void 0,this._callback=()=>{}}}class vf{constructor(){this.tasks={},this.taskQueue=[],F(["process"],this),this.invoker=new xf(this.process),this.nextId=0}add(e,t){const i=this.nextId++,r=function({type:e,isSymbolTile:t,zoom:i}){return i=i||0,"message"===e?0:"maybePrepare"!==e||t?"parseTile"!==e||t?"parseTile"===e&&t?300-i:"maybePrepare"===e&&t?400-i:500:200-i:100-i}(t);if(0===r){W();try{e()}finally{}return{cancel:()=>{}}}return this.tasks[i]={fn:e,metadata:t,priority:r,id:i},this.taskQueue.push(i),this.invoker.trigger(),{cancel:()=>{delete this.tasks[i]}}}process(){W();try{if(this.taskQueue=this.taskQueue.filter((e=>!!this.tasks[e])),!this.taskQueue.length)return;const e=this.pick();if(null===e)return;const t=this.tasks[e];if(delete this.tasks[e],this.taskQueue.length&&this.invoker.trigger(),!t)return;t.fn()}finally{}}pick(){let e=null,t=1/0;for(let i=0;i>=1)>1;){const e=i+n>>1,l=r+o>>1;1&t?(n=i,o=r,i=s,r=a):(i=n,r=o,n=s,o=a),s=e,a=l}const l=4*e;Sf[l+0]=i,Sf[l+1]=r,Sf[l+2]=n,Sf[l+3]=o}const Mf=new Uint16Array(2178),Cf=new Uint8Array(1089),kf=new Uint16Array(1089);function If(e){return 0===e?-.03125:32===e?.03125:0}var Pf=jo([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);const zf={type:2,extent:aa,loadGeometry:()=>[[new y(0,0),new y(aa+1,0),new y(aa+1,aa+1),new y(0,aa+1),new y(0,0)]]};class Lf{constructor(e,t,i,r,n){this.tileID=e,this.uid=D(),this.uses=0,this.tileSize=t,this.tileZoom=i,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.isRaster=n,this.expiredRequestCount=0,this.state="loading",r&&r.transform&&(this.projection=r.transform.projection)}registerFadeDuration(e){const t=e+this.timeAdded;tt.getLayer(e))).filter(Boolean);if(0!==e.length){r.layers=e,r.stateDependentLayerIds&&(r.stateDependentLayers=r.stateDependentLayerIds.map((t=>e.filter((e=>e.id===t))[0])));for(const t of e)i[t.id]=r}}return i}(e.buckets,t.style),this.hasSymbolBuckets=!1;for(const e in this.buckets){const t=this.buckets[e];if(t instanceof af){if(this.hasSymbolBuckets=!0,!i)break;t.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const e in this.buckets){const t=this.buckets[e];if(t instanceof af&&t.hasRTLText){this.hasRTLText=!0,bo.isLoading()||bo.isLoaded()||"deferred"!==xo()||vo();break}}this.queryPadding=0;for(const e in this.buckets){const i=this.buckets[e];this.queryPadding=Math.max(this.queryPadding,t.style.getLayer(e).queryRadius(i))}e.imageAtlas&&(this.imageAtlas=e.imageAtlas),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage),e.lineAtlas&&(this.lineAtlas=e.lineAtlas)}else this.collisionBoxArray=new ps}unloadVectorData(){if(this.hasData()){for(const e in this.buckets)this.buckets[e].destroy();this.buckets={},this.imageAtlas&&(this.imageAtlas=null),this.lineAtlas&&(this.lineAtlas=null),this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.lineAtlasTexture&&this.lineAtlasTexture.destroy(),this._tileBoundsBuffer&&(this._tileBoundsBuffer.destroy(),this._tileBoundsIndexBuffer.destroy(),this._tileBoundsSegments.destroy(),this._tileBoundsBuffer=null),this._tileDebugBuffer&&(this._tileDebugBuffer.destroy(),this._tileDebugSegments.destroy(),this._tileDebugBuffer=null),this._tileDebugIndexBuffer&&(this._tileDebugIndexBuffer.destroy(),this._tileDebugIndexBuffer=null),this._globeTileDebugBorderBuffer&&(this._globeTileDebugBorderBuffer.destroy(),this._globeTileDebugBorderBuffer=null),this._tileDebugTextBuffer&&(this._tileDebugTextBuffer.destroy(),this._tileDebugTextSegments.destroy(),this._tileDebugTextIndexBuffer.destroy(),this._tileDebugTextBuffer=null),this._globeTileDebugTextBuffer&&(this._globeTileDebugTextBuffer.destroy(),this._globeTileDebugTextBuffer=null),this.latestFeatureIndex=null,this.state="unloaded"}}getBucket(e){return this.buckets[e.id]}upload(e){for(const t in this.buckets){const i=this.buckets[t];i.uploadPending()&&i.upload(e)}const t=e.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new yf(e,this.imageAtlas.image,t.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new yf(e,this.glyphAtlasImage,t.ALPHA),this.glyphAtlasImage=null),this.lineAtlas&&!this.lineAtlas.uploaded&&(this.lineAtlasTexture=new yf(e,this.lineAtlas.image,t.ALPHA),this.lineAtlas.uploaded=!0)}prepare(e){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(e,this.imageAtlasTexture)}queryRenderedFeatures(e,t,i,r,n,o,s,a){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({tileResult:r,pixelPosMatrix:s,transform:o,params:n,tileTransform:this.tileTransform},e,t,i):{}}querySourceFeatures(e,t){const i=this.latestFeatureIndex;if(!i||!i.rawTileData)return;const r=i.loadVTLayers(),n=t?t.sourceLayer:"",o=r._geojsonTileLayer||r[n];if(!o)return;const s=un(t&&t.filter),{z:a,x:l,y:c}=this.tileID.canonical,h={z:a,x:l,y:c};for(let t=0;te)i=!1;else if(t)if(this.expirationTime=0;e--){const t=4*e,i=Sf[t+0],r=Sf[t+1],n=Sf[t+2],o=Sf[t+3],s=i+n>>1,a=r+o>>1,l=s+a-r,c=a+i-s,h=r*Af+i,u=o*Af+n,d=a*Af+s,p=Math.hypot((Mf[2*h+0]+Mf[2*u+0])/2-Mf[2*d+0],(Mf[2*h+1]+Mf[2*u+1])/2-Mf[2*d+1])>=16;Cf[d]=Cf[d]||(p?1:0),e<1022&&(Cf[d]=Cf[d]||Cf[(r+c>>1)*Af+(i+l>>1)]||Cf[(o+c>>1)*Af+(n+l>>1)])}const n=new $o,o=new rs;let s=0;function a(e,t){const i=t*Af+e;return 0===kf[i]&&(n.emplaceBack(Mf[2*i+0],Mf[2*i+1],e*aa/Ef,t*aa/Ef),kf[i]=++s),kf[i]-1}function l(e,t,i,r,n,s){const c=e+i>>1,h=t+r>>1;if(Math.abs(e-n)+Math.abs(t-s)>1&&Cf[h*Af+c])l(n,s,e,t,c,h),l(i,r,n,s,c,h);else{const l=a(e,t),c=a(i,r),h=a(n,s);o.emplaceBack(l,c,h)}}return l(0,0,Ef,Ef,Ef,0),l(Ef,Ef,0,0,0,Ef),{vertices:n,indices:o}}(this.tileID.canonical,t);r=e.vertices,n=e.indices}else{r=new $o,n=new rs;for(const{x:e,y:t}of i)r.emplaceBack(e,t,0,0);const e=yh(r.int16,void 0,4);for(let t=0;t0&&(s=fa(new Float64Array(16),t.globeMatrix)),this._makeGlobeTileDebugBorderBuffer(e,r,t,n,s,o),this._makeGlobeTileDebugTextBuffer(e,r,t,n,s,o)}_globePoint(e,t,i,r,n,o,s){let a=Ml(e,t,i);if(o){const n=1<.5?u=-1:h<-.5&&(u=1);let d=(e/aa+i.x)/n+u,p=(t/aa+i.y)/n;d=(d-l)*r._pixelsPerMercatorPixel+l,p=(p-c)*r._pixelsPerMercatorPixel+c;const f=[d*r.worldSize,p*r.worldSize,0];Oa(f,f,o),a=xl(a,f,s)}return Oa(a,a,n)}_makeGlobeTileDebugBorderBuffer(e,t,i,r,n,o){const s=new No,a=new hs,l=new Vo,c=(e,c,h,u,d)=>{const p=(h-e)/(d-1),f=(u-c)/(d-1),m=s.length;for(let h=0;hh*e+t;for(let e=0;et[s])return null}else{const a=1/r[s];let l=(e[s]-i[s])*a,c=(t[s]-i[s])*a;if(l>c){const e=l;l=c,c=e}if(l>n&&(n=l),co)return null}return n}function Of(e,t,i,r,n,o,s,a,l,c,h){const u=r-e,d=n-t,p=o-i,f=s-e,m=a-t,_=l-i,g=h[1]*_-h[2]*m,y=h[2]*f-h[0]*_,x=h[0]*m-h[1]*f,v=u*g+d*y+p*x;if(Math.abs(v)<1e-15)return null;const b=1/v,w=c[0]-e,T=c[1]-t,E=c[2]-i,A=(w*g+T*y+E*x)*b;if(A<0||A>1)return null;const S=T*p-E*d,M=E*u-w*p,C=w*d-T*u,k=(h[0]*S+h[1]*M+h[2]*C)*b;return k<0||A+k>1?null:(f*S+m*M+_*C)*b}function Ff(e,t,i){return(e-t)/(i-t)}function jf(e,t,i,r,n,o,s,a,l){const c=1<{const o=r?1:0,s=(e+1)*i-o,a=t*i,l=(t+1)*i-o;n[0]=e*i,n[1]=a,n[2]=s,n[3]=l};let s=new Rf(r);const a=[];for(let t=0;t=1;r/=2){const e=i[i.length-1];s=new Rf(r);for(let t=0;t0;){const{idx:a,t:p,nodex:f,nodey:m,depth:_}=d.pop();if(this.leaves[a]){jf(f,m,_,e,t,i,r,h,u);const a=1<<_,l=(f+0)/a,c=(f+1)/a,d=(m+0)/a,g=(m+1)/a,y=Vf(l,d,this.dem)*s,x=Vf(c,d,this.dem)*s,v=Vf(c,g,this.dem)*s,b=Vf(l,g,this.dem)*s,w=Of(h[0],h[1],y,u[0],h[1],x,u[0],u[1],v,n,o),T=Of(u[0],u[1],v,h[0],u[1],b,h[0],h[1],y,n,o),E=Math.min(null!==w?w:Number.MAX_VALUE,null!==T?T:Number.MAX_VALUE);if(E!==Number.MAX_VALUE)return E;{const e=La([],n,o,p);if(Nf(y,x,b,v,Ff(e[0],h[0],u[0]),Ff(e[1],h[1],u[1]))>=e[2])return p}continue}let g=0;for(let d=0;d=l[c[i]]&&(c.splice(i,0,d),t=!0);t||(c[g]=d),g++}}for(let e=0;e=this.dim+1||t<-1||t>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(t+1)*this.stride+(e+1)}static pack(e,t){const i=[0,0,0,0],r=Zf.getUnpackVector(t);let n=Math.floor((e+r[3])/r[2]);return i[2]=n%256,n=Math.floor(n/256),i[1]=n%256,n=Math.floor(n/256),i[0]=n,i}getPixels(){return new jc({width:this.stride,height:this.stride},this.pixels)}backfillBorder(e,t,i){if(this.dim!==e.dim)throw new Error("dem dimension mismatch");let r=t*this.dim,n=t*this.dim+this.dim,o=i*this.dim,s=i*this.dim+this.dim;switch(t){case-1:r=n-1;break;case 1:n=r+1}switch(i){case-1:o=s-1;break;case 1:s=o+1}const a=-t*this.dim,l=-i*this.dim;for(let t=o;t{this.remove(e,n)}),i)),this.data[r].push(n),this.order.push(r),this.order.length>this.max){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this}has(e){return e.wrapped().key in this.data}getAndRemove(e){return this.has(e)?this._getAndRemoveByKey(e.wrapped().key):null}_getAndRemoveByKey(e){const t=this.data[e].shift();return t.timeout&&clearTimeout(t.timeout),0===this.data[e].length&&delete this.data[e],this.order.splice(this.order.indexOf(e),1),t.value}getByKey(e){const t=this.data[e];return t?t[0].value:null}get(e){return this.has(e)?this.data[e.wrapped().key][0].value:null}remove(e,t){if(!this.has(e))return this;const i=e.wrapped().key,r=void 0===t?0:this.data[i].indexOf(t),n=this.data[i][r];return this.data[i].splice(r,1),n.timeout&&clearTimeout(n.timeout),0===this.data[i].length&&delete this.data[i],this.onRemove(n.value),this.order.splice(this.order.indexOf(i),1),this}setMaxSize(e){for(this.max=e;this.order.length>this.max;){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this}filter(e){const t=[];for(const i in this.data)for(const r of this.data[i])e(r.value)||t.push(r);for(const e of t)this.remove(e.value.tileID,e)}}class Hf{constructor(e,t,i){this.func=e,this.mask=t,this.range=i}}Hf.ReadOnly=!1,Hf.ReadWrite=!0,Hf.disabled=new Hf(519,Hf.ReadOnly,[0,1]);const Xf=7680;class Kf{constructor(e,t,i,r,n,o){this.test=e,this.ref=t,this.mask=i,this.fail=r,this.depthFail=n,this.pass=o}}Kf.disabled=new Kf({func:519,mask:0},0,0,Xf,Xf,Xf);class Yf{constructor(e,t,i){this.blendFunction=e,this.blendColor=t,this.mask=i}}Yf.Replace=[1,0],Yf.disabled=new Yf(Yf.Replace,Pt.transparent,[!1,!1,!1,!1]),Yf.unblended=new Yf(Yf.Replace,Pt.transparent,[!0,!0,!0,!0]),Yf.alphaBlended=new Yf([1,771],Pt.transparent,[!0,!0,!0,!0]);const Jf=1029,Qf=2305;class em{constructor(e,t,i){this.enable=e,this.mode=t,this.frontFace=i}}em.disabled=new em(!1,Jf,Qf),em.backCCW=new em(!0,Jf,Qf),em.backCW=new em(!0,Jf,2304),em.frontCW=new em(!0,1028,2304),em.frontCCW=new em(!0,1028,Qf);class tm extends Qe{constructor(e,t,i){super(),this.id=e,this._onlySymbols=i,t.on("data",(e=>{"source"===e.dataType&&"metadata"===e.sourceDataType&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&"source"===e.dataType&&"content"===e.sourceDataType&&(this.reload(),this.transform&&this.update(this.transform))})),t.on("error",(()=>{this._sourceErrored=!0})),this._source=t,this._tiles={},this._cache=new Wf(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._minTileCacheSize=t.minTileCacheSize,this._maxTileCacheSize=t.maxTileCacheSize,this._loadedParentTiles={},this._coveredTiles={},this._state=new Df,this._isRaster="raster"===this._source.type||"raster-dem"===this._source.type||"custom"===this._source.type&&"raster"===this._source._dataType}onAdd(e){this.map=e,this._minTileCacheSize=void 0===this._minTileCacheSize&&e?e._minTileCacheSize:this._minTileCacheSize,this._maxTileCacheSize=void 0===this._maxTileCacheSize&&e?e._maxTileCacheSize:this._maxTileCacheSize}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;for(const e in this._tiles){const t=this._tiles[e];if("loaded"!==t.state&&"errored"!==t.state)return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;const e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform)}_loadTile(e,t){return e.isSymbolTile=this._onlySymbols,this._source.loadTile(e,t)}_unloadTile(e){if(this._source.unloadTile)return this._source.unloadTile(e,(()=>{}))}_abortTile(e){if(this._source.abortTile)return this._source.abortTile(e,(()=>{}))}serialize(){return this._source.serialize()}prepare(e){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const t in this._tiles){const i=this._tiles[t];i.upload(e),i.prepare(this.map.style.imageManager)}}getIds(){return P(this._tiles).map((e=>e.tileID)).sort(im).map((e=>e.key))}getRenderableIds(e){const t=[];for(const i in this._tiles)this._isIdRenderable(+i,e)&&t.push(this._tiles[i]);return e?t.sort(((e,t)=>{const i=e.tileID,r=t.tileID,n=new y(i.canonical.x,i.canonical.y)._rotate(this.transform.angle),o=new y(r.canonical.x,r.canonical.y)._rotate(this.transform.angle);return i.overscaledZ-r.overscaledZ||o.y-n.y||o.x-n.x})).map((e=>e.tileID.key)):t.map((e=>e.tileID)).sort(im).map((e=>e.key))}hasRenderableParent(e){const t=this.findLoadedParent(e,0);return!!t&&this._isIdRenderable(t.tileID.key)}_isIdRenderable(e,t){return this._tiles[e]&&this._tiles[e].hasData()&&!this._coveredTiles[e]&&(t||!this._tiles[e].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(const e in this._tiles)"errored"!==this._tiles[e].state&&this._reloadTile(+e,"reloading")}}_reloadTile(e,t){const i=this._tiles[e];i&&("loading"!==i.state&&(i.state=t),this._loadTile(i,this._tileLoaded.bind(this,i,e,t)))}_tileLoaded(e,t,i,r){if(r)if(e.state="errored",404!==r.status)this._source.fire(new Je(r,{tile:e}));else if("raster-dem"===this._source.type&&this.usedForTerrain&&this.map.painter.terrain){const e=this.map.painter.terrain;this.update(this.transform,e.getScaledDemTileSize(),!0),e.resetTileLookupCache(this.id)}else this.update(this.transform);else e.timeAdded=He.now(),"expired"===i&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),"raster-dem"===this._source.type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),this._source.fire(new Ye("data",{dataType:"source",tile:e,coord:e.tileID,sourceCacheId:this.id}))}_backfillDEM(e){const t=this.getRenderableIds();for(let r=0;r1||(Math.abs(i)>1&&(1===Math.abs(i+n)?i+=n:1===Math.abs(i-n)&&(i-=n)),t.dem&&e.dem&&(e.dem.backfillBorder(t.dem,i,r),e.neighboringTiles&&e.neighboringTiles[o]&&(e.neighboringTiles[o].backfilled=!0)))}}getTile(e){return this.getTileByID(e.key)}getTileByID(e){return this._tiles[e]}_retainLoadedChildren(e,t,i,r){for(const n in this._tiles){let o=this._tiles[n];if(r[n]||!o.hasData()||o.tileID.overscaledZ<=t||o.tileID.overscaledZ>i)continue;let s=o.tileID;for(;o&&o.tileID.overscaledZ>t+1;){const e=o.tileID.scaledTo(o.tileID.overscaledZ-1);o=this._tiles[e.key],o&&o.hasData()&&(s=e)}let a=s;for(;a.overscaledZ>t;)if(a=a.scaledTo(a.overscaledZ-1),e[a.key]){r[s.key]=s;break}}}findLoadedParent(e,t){if(e.key in this._loadedParentTiles){const i=this._loadedParentTiles[e.key];return i&&i.tileID.overscaledZ>=t?i:null}for(let i=e.overscaledZ-1;i>=t;i--){const t=e.scaledTo(i),r=this._getLoadedTile(t);if(r)return r}}_getLoadedTile(e){const t=this._tiles[e.key];return t&&t.hasData()?t:this._cache.getByKey(this._source.reparseOverscaled?e.wrapped().key:e.canonical.key)}updateCacheSize(e,t){t=t||this._source.tileSize;const i=Math.ceil(e.width/t)+1,r=Math.ceil(e.height/t)+1,n=Math.floor(i*r*5),o="number"==typeof this._minTileCacheSize?Math.max(this._minTileCacheSize,n):n,s="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,o):o;this._cache.setMaxSize(s)}handleWrapJump(e){const t=Math.round((e-(void 0===this._prevLng?e:this._prevLng))/360);if(this._prevLng=e,t){const e={};for(const i in this._tiles){const r=this._tiles[i];r.tileID=r.tileID.unwrapTo(r.tileID.wrap+t),e[r.tileID.key]=r}this._tiles=e;for(const e in this._timers)clearTimeout(this._timers[e]),delete this._timers[e];for(const e in this._tiles)this._setTileReloadTimer(+e,this._tiles[e])}}update(e,t,i){if(this.transform=e,!this._sourceLoaded||this._paused||this.transform.freezeTileCoverage)return;if(this.usedForTerrain&&!i)return;let r;this.updateCacheSize(e,t),"globe"!==this.transform.projection.name&&this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?r=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((e=>new fu(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y))):(r=e.coveringTiles({tileSize:t||this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!i,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain}),this._source.hasTile&&(r=r.filter((e=>this._source.hasTile(e))))):r=[];const n=this._updateRetainedTiles(r);if(rm(this._source.type)&&0!==r.length){const e={},t={},i=Object.keys(n);for(const r of i){const i=n[r],o=this._tiles[r];if(!o||o.fadeEndTime&&o.fadeEndTime<=He.now())continue;const s=this.findLoadedParent(i,Math.max(i.overscaledZ-tm.maxOverzooming,this._source.minzoom));s&&(this._addTile(s.tileID),e[s.tileID.key]=s.tileID),t[r]=i}const o=r[r.length-1].overscaledZ;for(const e in this._tiles){const i=this._tiles[e];if(n[e]||!i.hasData())continue;let r=i.tileID;for(;r.overscaledZ>o;){r=r.scaledTo(r.overscaledZ-1);const o=this._tiles[r.key];if(o&&o.hasData()&&t[r.key]){n[e]=i.tileID;break}}}for(const t in e)n[t]||(this._coveredTiles[t]=!0,n[t]=e[t])}for(const e in n)this._tiles[e].clearFadeHold();const o=function(e,t){const i=[];for(const r in e)r in t||i.push(r);return i}(this._tiles,n);for(const e of o){const t=this._tiles[e];t.hasSymbolBuckets&&!t.holdingForFade()?t.setHoldDuration(this.map._fadeDuration):t.hasSymbolBuckets&&!t.symbolFadeFinished()||this._removeTile(+e)}this._updateLoadedParentTileCache(),this._onlySymbols&&this._source.afterUpdate&&this._source.afterUpdate()}releaseSymbolFadeTiles(){for(const e in this._tiles)this._tiles[e].holdingForFade()&&this._removeTile(+e)}_updateRetainedTiles(e){const t={};if(0===e.length)return t;const i={},r=e.reduce(((e,t)=>Math.min(e,t.overscaledZ)),1/0),n=e[0].overscaledZ,o=Math.max(n-tm.maxOverzooming,this._source.minzoom),s=Math.max(n+tm.maxUnderzooming,this._source.minzoom),a={};for(const i of e){const e=this._addTile(i);t[i.key]=i,e.hasData()||r=this._source.maxzoom){const e=r.children(this._source.maxzoom)[0],i=this.getTile(e);if(i&&i.hasData()){t[e.key]=e;continue}}else{const e=r.children(this._source.maxzoom);if(t[e[0].key]&&t[e[1].key]&&t[e[2].key]&&t[e[3].key])continue}let n=e.wasRequested();for(let s=r.overscaledZ-1;s>=o;--s){const o=r.scaledTo(s);if(i[o.key])break;if(i[o.key]=!0,e=this.getTile(o),!e&&n&&(e=this._addTile(o)),e&&(t[o.key]=o,n=e.wasRequested(),e.hasData()))break}}return t}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const e in this._tiles){const t=[];let i,r=this._tiles[e].tileID;for(;r.overscaledZ>0;){if(r.key in this._loadedParentTiles){i=this._loadedParentTiles[r.key];break}t.push(r.key);const e=r.scaledTo(r.overscaledZ-1);if(i=this._getLoadedTile(e),i)break;r=e}for(const e of t)this._loadedParentTiles[e]=i}}_addTile(e){let t=this._tiles[e.key];if(t)return t;t=this._cache.getAndRemove(e),t&&(this._setTileReloadTimer(e.key,t),t.tileID=e,this._state.initializeTileState(t,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,t)));const i=Boolean(t);if(!i){const i=this.map?this.map.painter:null;t=new Lf(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,i,this._isRaster),this._loadTile(t,this._tileLoaded.bind(this,t,e.key,t.state))}return t?(t.uses++,this._tiles[e.key]=t,i||this._source.fire(new Ye("dataloading",{tile:t,coord:t.tileID,dataType:"source"})),t):null}_setTileReloadTimer(e,t){e in this._timers&&(clearTimeout(this._timers[e]),delete this._timers[e]);const i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout((()=>{this._reloadTile(e,"expired"),delete this._timers[e]}),i))}_removeTile(e){const t=this._tiles[e];t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),delete this._timers[e]),t.uses>0||(t.hasData()&&"reloading"!==t.state?this._cache.add(t.tileID,t,t.getExpiryTimeout()):(t.aborted=!0,this._abortTile(t),this._unloadTile(t))))}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const e in this._tiles)this._removeTile(+e);this._source._clear&&this._source._clear(),this._cache.reset(),this.map&&this.usedForTerrain&&this.map.painter.terrain&&this.map.painter.terrain.resetTileLookupCache(this.id)}tilesIn(e,t,i){const r=[],n=this.transform;if(!n)return r;const o="globe"===n.projection.name,s=Gl(n.center.lng);for(const a in this._tiles){const l=this._tiles[a];if(i&&l.clearQueryDebugViz(),l.holdingForFade())continue;let c;if(o){const e=l.tileID.canonical;if(0===e.z){const t=[Math.abs(M(s,...nm(e,-1))-s),Math.abs(M(s,...nm(e,1))-s)];c=[0,2*t.indexOf(Math.min(...t))-1]}else{const t=[Math.abs(M(s,...nm(e,-1))-s),Math.abs(M(s,...nm(e,0))-s),Math.abs(M(s,...nm(e,1))-s)];c=[t.indexOf(Math.min(...t))-1]}}else c=[0];for(const i of c){const o=e.containsTile(l,n,t,i);o&&r.push(o)}}return r}getVisibleCoordinates(e){const t=this.getRenderableIds(e).map((e=>this._tiles[e].tileID));for(const e of t)e.projMatrix=this.transform.calculateProjMatrix(e.toUnwrapped());return t}hasTransition(){if(this._source.hasTransition())return!0;if(rm(this._source.type))for(const e in this._tiles){const t=this._tiles[e];if(void 0!==t.fadeEndTime&&t.fadeEndTime>=He.now())return!0}return!1}setFeatureState(e,t,i){this._state.updateState(e=e||"_geojsonTileLayer",t,i)}removeFeatureState(e,t,i){this._state.removeFeatureState(e=e||"_geojsonTileLayer",t,i)}getFeatureState(e,t){return this._state.getState(e=e||"_geojsonTileLayer",t)}setDependencies(e,t,i){const r=this._tiles[e];r&&r.setDependencies(t,i)}reloadTilesForDependencies(e,t){for(const i in this._tiles)this._tiles[i].hasDependency(e,t)&&this._reloadTile(+i,"reloading");this._cache.filter((i=>!i.hasDependency(e,t)))}_preloadTiles(e,t){if(!this._sourceLoaded){const i=()=>{this._sourceLoaded&&(this._source.off("data",i),this._preloadTiles(e,t))};return void this._source.on("data",i)}const i=new Map,r=Array.isArray(e)?e:[e],n=this.map.painter.terrain,o=this.usedForTerrain&&n?n.getScaledDemTileSize():this._source.tileSize;for(const e of r){const t=e.coveringTiles({tileSize:o,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!this.usedForTerrain,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain});for(const e of t)i.set(e.key,e);this.usedForTerrain&&e.updateElevation(!1)}I(Array.from(i.values()),((e,t)=>{const i=new Lf(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,this.map.painter,this._isRaster);this._loadTile(i,(e=>{"raster-dem"===this._source.type&&i.dem&&this._backfillDEM(i),t(e,i)}))}),t)}}function im(e,t){const i=Math.abs(2*e.wrap)-+(e.wrap<0),r=Math.abs(2*t.wrap)-+(t.wrap<0);return e.overscaledZ-t.overscaledZ||r-i||t.canonical.y-e.canonical.y||t.canonical.x-e.canonical.x}function rm(e){return"raster"===e||"image"===e||"video"===e||"custom"===e}function nm(e,t){const i=1<=0&&r[3]>=0&&a.insert(s,r[0],r[1],r[2],r[3])}}loadVTLayers(){if(!this.vtLayers){this.vtLayers=new Zh(new _d(this.rawTileData)).layers,this.sourceLayerCoder=new bf(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"]),this.vtFeatures={};for(const e in this.vtLayers)this.vtFeatures[e]=[]}return this.vtLayers}query(e,t,i,r){this.loadVTLayers();const n=e.params||{},o=un(n.filter),s=e.tileResult,a=e.transform,l=s.bufferedTilespaceBounds,c=this.grid.query(l.min.x,l.min.y,l.max.x,l.max.y,((e,t,i,r)=>bc(s.bufferedTilespaceGeometry,e,t,i,r)));c.sort(lm);let h=null;a.elevation&&c.length>0&&(h=om.create(a.elevation,this.tileID));const u={};let d;for(let a=0;a(f||(f=sc(t,this.tileID.canonical,e.tileTransform)),i.queryIntersectsFeature(s,t,r,f,this.z,e.transform,e.pixelPosMatrix,h,n))))}return u}loadMatchingFeature(e,t,i,r,n,o,s,a,l){const{featureIndex:c,bucketIndex:h,sourceLayerIndex:u,layoutVertexArrayOffset:d}=t,p=this.bucketLayerIDs[h];if(r&&!function(e,t){for(let i=0;i=0)return!0;return!1}(r,p))return;const f=this.sourceLayerCoder.decode(u),m=this.vtLayers[f].feature(c);if(i.needGeometry){const e=ac(m,!0);if(!i.filter(new wo(this.tileID.overscaledZ),e,this.tileID.canonical))return}else if(!i.filter(new wo(this.tileID.overscaledZ),m))return;const _=this.getId(m,f);for(let t=0;t{const s=t instanceof Io?t.get(o):null;return s&&s.evaluate?s.evaluate(i,r,n):s}))}function lm(e,t){return t-e}Xn(sm,"FeatureIndex",{omit:["rawTileData","sourceLayerCoder"]});class cm{constructor(e,t){this.width=e,this.height=t,this.nextRow=0,this.image=new Fc({width:e,height:t}),this.positions={},this.uploaded=!1}getDash(e,t){const i=this.getKey(e,t);return this.positions[i]}trim(){const e=this.width,t=this.height=B(this.nextRow);this.image.resize({width:e,height:t})}getKey(e,t){return e.join(",")+t}getDashRanges(e,t,i){const r=[];let n=e.length%2==1?-e[e.length-1]*i:0,o=e[0]*i,s=!0;r.push({left:n,right:o,isDash:s,zeroLength:0===e[0]});let a=e[0];for(let t=1;t1&&(s=e[++o]);const l=Math.abs(a-s.left),c=Math.abs(a-s.right),h=Math.min(l,c);let u;const d=t/i*(r+1);if(s.isDash){const e=r-Math.abs(d);u=Math.sqrt(h*h+e*e)}else u=r-Math.sqrt(h*h+d*d);this.image.data[n+a]=Math.max(0,Math.min(255,u+128))}}}addRegularDash(e,t){for(let t=e.length-1;t>=0;--t){const i=e[t],r=e[t+1];i.zeroLength?e.splice(t,1):r&&r.isDash===i.isDash&&(r.left=i.left,e.splice(t,1))}const i=e[0],r=e[e.length-1];i.isDash===r.isDash&&(i.left=r.left-this.width,r.right=i.right+this.width);const n=this.width*this.nextRow;let o=0,s=e[o];for(let i=0;i1&&(s=e[++o]);const r=Math.abs(i-s.left),a=Math.abs(i-s.right),l=Math.min(r,a);this.image.data[n+i]=Math.max(0,Math.min(255,(s.isDash?l:-l)+t+128))}}addDash(e,t){const i=this.getKey(e,t);if(this.positions[i])return this.positions[i];const r="round"===t,n=r?7:0,o=2*n+1;if(this.nextRow+o>this.height)return G("LineAtlas out of space"),null;0===e.length&&e.push(1);let s=0;for(let t=0;t=t.maxzoom||"none"!==t.visibility&&(pm(e,this.zoom,i),(a[t.id]=t.createBucket({index:s.bucketLayerIDs.length,layers:e,zoom:this.zoom,canonical:this.canonical,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:u,sourceID:this.source,enableTerrain:this.enableTerrain,projection:this.projection.spec,availableImages:i})).populate(d,c,this.tileID.canonical,this.tileTransform),s.bucketLayerIDs.push(e.map((e=>e.id))))}}let u,d,p,f;l.trim();const m={type:"maybePrepare",isSymbolTile:this.isSymbolTile,zoom:this.zoom},_=()=>{if(u)return n(u);if(d&&p&&f){const e=new um(d),t=new Ad(p,f);for(const r in a){const n=a[r];n instanceof af?(pm(n.layers,this.zoom,i),xp(n,d,e.positions,p,t.iconPositions,this.showCollisionBoxes,i,this.tileID.canonical,this.tileZoom,this.projection)):n.hasPattern&&(n instanceof Su||n instanceof Mh||n instanceof eu)&&(pm(n.layers,this.zoom,i),n.addFeatures(c,this.tileID.canonical,t.patternPositions,i,this.tileTransform))}this.status="done",n(null,{buckets:P(a).filter((e=>!e.isEmpty())),featureIndex:s,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,lineAtlas:l,imageAtlas:t,glyphMap:this.returnDependencies?d:null,iconMap:this.returnDependencies?p:null,glyphPositions:this.returnDependencies?e.positions:null})}},g=U(c.glyphDependencies,(e=>Object.keys(e).map(Number)));Object.keys(g).length?r.send("getGlyphs",{uid:this.uid,stacks:g},((e,t)=>{u||(u=e,d=t,_())}),void 0,!1,m):d={};const y=Object.keys(c.iconDependencies);y.length?r.send("getImages",{icons:y,source:this.source,tileID:this.tileID,type:"icons"},((e,t)=>{u||(u=e,p=t,_())}),void 0,!1,m):p={};const x=Object.keys(c.patternDependencies);x.length?r.send("getImages",{icons:x,source:this.source,tileID:this.tileID,type:"patterns"},((e,t)=>{u||(u=e,f=t,_())}),void 0,!1,m):f={},_()}}function pm(e,t,i){const r=new wo(t);for(const t of e)t.recalculate(r,i)}class fm{constructor(e){this.entries={},this.scheduler=e}request(e,t,i,r){const n=this.entries[e]=this.entries[e]||{callbacks:[]};if(n.result){const[e,i]=n.result;return this.scheduler?this.scheduler.add((()=>{r(e,i)}),t):r(e,i),()=>{}}return n.callbacks.push(r),n.cancel||(n.cancel=i(((i,r)=>{n.result=[i,r];for(const e of n.callbacks)this.scheduler?this.scheduler.add((()=>{e(i,r)}),t):e(i,r);setTimeout((()=>delete this.entries[e]),3e3)}))),()=>{n.result||(n.callbacks=n.callbacks.filter((e=>e!==r)),n.callbacks.length||(n.cancel(),delete this.entries[e]))}}}function mm(e,t,i){const r=JSON.stringify(e.request);return e.data&&(this.deduped.entries[r]={result:[null,e.data]}),this.deduped.request(r,{type:"parseTile",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom},(t=>{const r=de(e.request,((e,r,n,o)=>{e?t(e):r&&t(null,{vectorTile:i?void 0:new Zh(new _d(r)),rawData:r,cacheControl:n,expires:o})}));return()=>{r.cancel(),t()}}),t)}const _m=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class gm{static from(e){if(!(e instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[t,i]=new Uint8Array(e,0,2);if(219!==t)throw new Error("Data does not appear to be in a KDBush format.");const r=i>>4;if(1!==r)throw new Error(`Got v${r} data when expected v1.`);const n=_m[15&i];if(!n)throw new Error("Unrecognized array type.");const[o]=new Uint16Array(e,2,1),[s]=new Uint32Array(e,4,1);return new gm(s,o,n,e)}constructor(e,t=64,i=Float64Array,r){if(isNaN(e)||e<0)throw new Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+t,2),65535),this.ArrayType=i,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;const n=_m.indexOf(this.ArrayType),o=2*e*this.ArrayType.BYTES_PER_ELEMENT,s=e*this.IndexArrayType.BYTES_PER_ELEMENT,a=(8-s%8)%8;if(n<0)throw new Error(`Unexpected typed array class: ${i}.`);r&&r instanceof ArrayBuffer?(this.data=r,this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+s+a,2*e),this._pos=2*e,this._finished=!0):(this.data=new ArrayBuffer(8+o+s+a),this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+s+a,2*e),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+n]),new Uint16Array(this.data,2,1)[0]=t,new Uint32Array(this.data,4,1)[0]=e)}add(e,t){const i=this._pos>>1;return this.ids[i]=i,this.coords[this._pos++]=e,this.coords[this._pos++]=t,i}finish(){const e=this._pos>>1;if(e!==this.numItems)throw new Error(`Added ${e} items when expected ${this.numItems}.`);return ym(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,t,i,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:n,coords:o,nodeSize:s}=this,a=[0,n.length-1,0],l=[];for(;a.length;){const c=a.pop()||0,h=a.pop()||0,u=a.pop()||0;if(h-u<=s){for(let s=u;s<=h;s++){const a=o[2*s],c=o[2*s+1];a>=e&&a<=i&&c>=t&&c<=r&&l.push(n[s])}continue}const d=u+h>>1,p=o[2*d],f=o[2*d+1];p>=e&&p<=i&&f>=t&&f<=r&&l.push(n[d]),(0===c?e<=p:t<=f)&&(a.push(u),a.push(d-1),a.push(1-c)),(0===c?i>=p:r>=f)&&(a.push(d+1),a.push(h),a.push(1-c))}return l}within(e,t,i){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:r,coords:n,nodeSize:o}=this,s=[0,r.length-1,0],a=[],l=i*i;for(;s.length;){const c=s.pop()||0,h=s.pop()||0,u=s.pop()||0;if(h-u<=o){for(let i=u;i<=h;i++)wm(n[2*i],n[2*i+1],e,t)<=l&&a.push(r[i]);continue}const d=u+h>>1,p=n[2*d],f=n[2*d+1];wm(p,f,e,t)<=l&&a.push(r[d]),(0===c?e-i<=p:t-i<=f)&&(s.push(u),s.push(d-1),s.push(1-c)),(0===c?e+i>=p:t+i>=f)&&(s.push(d+1),s.push(h),s.push(1-c))}return a}}function ym(e,t,i,r,n,o){if(n-r<=i)return;const s=r+n>>1;xm(e,t,s,r,n,o),ym(e,t,i,r,s-1,1-o),ym(e,t,i,s+1,n,1-o)}function xm(e,t,i,r,n,o){for(;n>r;){if(n-r>600){const s=n-r+1,a=i-r+1,l=Math.log(s),c=.5*Math.exp(2*l/3),h=.5*Math.sqrt(l*c*(s-c)/s)*(a-s/2<0?-1:1);xm(e,t,i,Math.max(r,Math.floor(i-a*c/s+h)),Math.min(n,Math.floor(i+(s-a)*c/s+h)),o)}const s=t[2*i+o];let a=r,l=n;for(vm(e,t,r,i),t[2*n+o]>s&&vm(e,t,r,n);as;)l--}t[2*r+o]===s?vm(e,t,r,l):(l++,vm(e,t,l,n)),l<=i&&(r=l+1),i<=l&&(n=l-1)}}function vm(e,t,i,r){bm(e,i,r),bm(t,2*i,2*r),bm(t,2*i+1,2*r+1)}function bm(e,t,i){const r=e[t];e[t]=e[i],e[i]=r}function wm(e,t,i,r){const n=e-i,o=t-r;return n*n+o*o}e.ARRAY_TYPE=ha,e.AUTH_ERR_MSG=ye,e.Aabb=nl,e.Actor=class{constructor(e,i,r){this.target=e,this.parent=i,this.mapId=r,this.callbacks={},this.cancelCallbacks={},F(["receive"],this),this.target.addEventListener("message",this.receive,!1),this.globalScope=W()?e:t,this.scheduler=new vf}send(e,t,i,r,n=!1,o){const s=Math.round(1e18*Math.random()).toString(36).substring(0,10);i&&(i.metadata=o,this.callbacks[s]=i);const a=K(this.globalScope)?void 0:[];return this.target.postMessage({id:s,type:e,hasCallback:!!i,targetMapId:r,mustQueue:n,sourceMapId:this.mapId,data:Jn(t,a)},a),{cancel:()=>{i&&delete this.callbacks[s],this.target.postMessage({id:s,type:"",targetMapId:r,sourceMapId:this.mapId})}}}receive(e){const t=e.data,i=t.id;if(i&&(!t.targetMapId||this.mapId===t.targetMapId))if(""===t.type){const e=this.cancelCallbacks[i];delete this.cancelCallbacks[i],e&&e.cancel()}else if(t.mustQueue||W()){const e=this.callbacks[i];this.cancelCallbacks[i]=this.scheduler.add((()=>this.processTask(i,t)),e&&e.metadata||{type:"message"})}else this.processTask(i,t)}processTask(e,t){if(""===t.type){const i=this.callbacks[e];delete this.callbacks[e],i&&(t.error?i(Qn(t.error)):i(null,Qn(t.data)))}else{const i=K(this.globalScope)?void 0:[],r=t.hasCallback?(t,r)=>{delete this.cancelCallbacks[e],this.target.postMessage({id:e,type:"",sourceMapId:this.mapId,error:t?Jn(t):null,data:Jn(r,i)},i)}:e=>{},n=Qn(t.data);if(this.parent[t.type])this.parent[t.type](t.sourceMapId,n,r);else if(this.parent.getWorkerSource){const e=t.type.split(".");this.parent.getWorkerSource(t.sourceMapId,e[0],n.source)[e[1]](n,r)}else r(new Error(`Could not find function ${t.type}`))}}remove(){this.scheduler.remove(),this.target.removeEventListener("message",this.receive,!1)}},e.CanonicalTileID=du,e.Color=Pt,e.ColorMode=Yf,e.CullFaceMode=em,e.DEMData=Zf,e.DataConstantProperty=Po,e.DedupedRequest=fm,e.DepthMode=Hf,e.EXTENT=aa,e.Elevation=class{isDataAvailableAtPoint(e){const t=this._source();if(this.isUsingMockSource()||!t||e.y<0||e.y>1)return!1;const i=t.getSource().maxzoom,r=1<1)return t;const n=r.getSource().maxzoom,o=1<{const o=this.getAtTileOffset(e,n.x,n.y),s=r.upVector(e.canonical,n.x,n.y);return za(s,s,o*r.upVectorScale(e.canonical,t,i).metersToTile),s}}getForTilePoints(e,t,i,r){if(this.isUsingMockSource())return!1;const n=om.create(this,e,r);return!!n&&(t.forEach((e=>{e[2]=this.exaggeration()*n.getElevationAt(e[0],e[1],i)})),!0)}getMinMaxForTile(e){if(this.isUsingMockSource())return null;const t=this.findDEMTileFor(e);if(!t||!t.dem)return null;const i=t.dem.tree,r=t.tileID,n=1<{let r=e===o-1?e-2:0===e?e:e-1;return r+=i?24575:0,[r,t]};for(let e=0;ethis._skuTokenExpiresAt}transformRequest(e,t){return this._transformRequestFn&&this._transformRequestFn(e,t)||{url:e}}normalizeStyleURL(e,t){if(!xe(e))return e;const i=Ae(e);return i.path=`/styles/v1${i.path}`,this._makeAPIURL(i,this._customAccessToken||t)}normalizeGlyphsURL(e,t){if(!xe(e))return e;const i=Ae(e);return i.path=`/fonts/v1${i.path}`,this._makeAPIURL(i,this._customAccessToken||t)}normalizeSourceURL(e,t,i,r){if(!xe(e))return e;const n=Ae(e);return n.path=`/v4/${n.authority}.json`,n.params.push("secure"),i&&n.params.push(`language=${i}`),r&&n.params.push(`worldview=${r}`),this._makeAPIURL(n,this._customAccessToken||t)}normalizeSpriteURL(e,t,i,r){const n=Ae(e);return xe(e)?(n.path=`/styles/v1${n.path}/sprite${t}${i}`,this._makeAPIURL(n,this._customAccessToken||r)):(n.path+=`${t}${i}`,Se(n))}normalizeTileURL(e,t,i){if(this._isSkuTokenExpired()&&this._createSkuToken(),e&&!xe(e))return e;const r=Ae(e);r.path=r.path.replace(/(\.(png|jpg)\d*)(?=$)/,`${t||i&&"raster"!==r.authority&&512===i?"@2x":""}${o.supported?".webp":"$1"}`),"raster"===r.authority?r.path=`/${n.RASTER_URL_PREFIX}${r.path}`:(r.path=r.path.replace(/^.+\/v4\//,"/"),r.path=`/${n.TILE_URL_VERSION}${r.path}`);const s=this._customAccessToken||function(e){for(const t of e){const e=t.match(/^access_token=(.*)$/);if(e)return e[1]}return null}(r.params)||n.ACCESS_TOKEN;return n.REQUIRE_ACCESS_TOKEN&&s&&this._skuToken&&r.params.push(`sku=${this._skuToken}`),this._makeAPIURL(r,s)}canonicalizeTileURL(e,t){const i=Ae(e);if(!i.path.match(/^(\/v4\/|\/raster\/v1\/)/)||!i.path.match(/\.[\w]+$/))return e;let r="mapbox://";i.path.match(/^\/raster\/v1\//)?r+=`raster/${i.path.replace(`/${n.RASTER_URL_PREFIX}/`,"")}`:r+=`tiles/${i.path.replace(`/${n.TILE_URL_VERSION}/`,"")}`;let o=i.params;return t&&(o=o.filter((e=>!e.match(/^access_token=/)))),o.length&&(r+=`?${o.join("&")}`),r}canonicalizeTileset(e,t){const i=!!t&&xe(t),r=[];for(const t of e.tiles||[])ve(t)?r.push(this.canonicalizeTileURL(t,i)):r.push(t);return r}_makeAPIURL(e,t){const i="See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes",r=Ae(n.API_URL);if(e.protocol=r.protocol,e.authority=r.authority,"http"===e.protocol){const t=e.params.indexOf("secure");t>=0&&e.params.splice(t,1)}if("/"!==r.path&&(e.path=`${r.path}${e.path}`),!n.REQUIRE_ACCESS_TOKEN)return Se(e);if(t=t||n.ACCESS_TOKEN,!this._silenceAuthErrors){if(!t)throw new Error(`An API access token is required to use Mapbox GL. ${i}`);if("s"===t[0])throw new Error(`Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). ${i}`)}return e.params=e.params.filter((e=>-1===e.indexOf("access_token"))),e.params.push(`access_token=${t||""}`),Se(e)}},e.ResourceType=le,e.SegmentVector=sa,e.SourceCache=tm,e.StencilMode=Kf,e.StructArrayLayout1ui2=hs,e.StructArrayLayout2f1f2i16=es,e.StructArrayLayout2i4=No,e.StructArrayLayout2ui4=cs,e.StructArrayLayout3f12=is,e.StructArrayLayout3ui6=rs,e.StructArrayLayout4i8=$o,e.StructArrayLayout5f20=as,e.Texture=yf,e.Tile=Lf,e.Transitionable=Ao,e.Uniform1f=Os,e.Uniform1i=class extends Bs{constructor(e){super(e),this.current=0}set(e,t,i){this.fetchUniformLocation(e,t)&&this.current!==i&&(this.current=i,this.gl.uniform1i(this.location,i))}},e.Uniform2f=class extends Bs{constructor(e){super(e),this.current=[0,0]}set(e,t,i){this.fetchUniformLocation(e,t)&&(i[0]===this.current[0]&&i[1]===this.current[1]||(this.current=i,this.gl.uniform2f(this.location,i[0],i[1])))}},e.Uniform3f=class extends Bs{constructor(e){super(e),this.current=[0,0,0]}set(e,t,i){this.fetchUniformLocation(e,t)&&(i[0]===this.current[0]&&i[1]===this.current[1]&&i[2]===this.current[2]||(this.current=i,this.gl.uniform3f(this.location,i[0],i[1],i[2])))}},e.Uniform4f=Fs,e.UniformColor=js,e.UniformMatrix2f=class extends Bs{constructor(e){super(e),this.current=Vs}set(e,t,i){if(this.fetchUniformLocation(e,t))for(let e=0;e<4;e++)if(i[e]!==this.current[e]){this.current=i,this.gl.uniformMatrix2fv(this.location,!1,i);break}}},e.UniformMatrix3f=class extends Bs{constructor(e){super(e),this.current=Ns}set(e,t,i){if(this.fetchUniformLocation(e,t))for(let e=0;e<9;e++)if(i[e]!==this.current[e]){this.current=i,this.gl.uniformMatrix3fv(this.location,!1,i);break}}},e.UniformMatrix4f=class extends Bs{constructor(e){super(e),this.current=Us}set(e,t,i){if(this.fetchUniformLocation(e,t)){if(i[12]!==this.current[12]||i[0]!==this.current[0])return this.current=i,void this.gl.uniformMatrix4fv(this.location,!1,i);for(let e=1;e<16;e++)if(i[e]!==this.current[e]){this.current=i,this.gl.uniformMatrix4fv(this.location,!1,i);break}}}},e.UnwrappedTileID=pu,e.ValidationError=tn,e.VectorTileFeature=Wh,e.VectorTileWorkerSource=class extends Qe{constructor(e,t,i,r,n){super(),this.actor=e,this.layerIndex=t,this.availableImages=i,this.loadVectorData=n||mm,this.loading={},this.loaded={},this.deduped=new fm(e.scheduler),this.isSpriteLoaded=r,this.scheduler=e.scheduler}loadTile(e,t){const i=e.uid,r=e&&e.request,n=r&&r.collectResourceTiming,o=this.loading[i]=new dm(e);o.abort=this.loadVectorData(e,((s,a)=>{const l=!this.loading[i];if(delete this.loading[i],l||s||!a)return o.status="done",l||(this.loaded[i]=o),t(s);const c=a.rawData,h={};a.expires&&(h.expires=a.expires),a.cacheControl&&(h.cacheControl=a.cacheControl),o.vectorTile=a.vectorTile||new Zh(new _d(c));const u=()=>{o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,((e,i)=>{if(e||!i)return t(e);const o={};if(n){const e=$e(r);e.length>0&&(o.resourceTiming=JSON.parse(JSON.stringify(e)))}t(null,z({rawTileData:c.slice(0)},i,h,o))}))};this.isSpriteLoaded?u():this.once("isSpriteLoaded",(()=>{this.scheduler?this.scheduler.add(u,{type:"parseTile",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom}):u()})),this.loaded=this.loaded||{},this.loaded[i]=o}))}reloadTile(e,t){const i=this.loaded,r=e.uid,n=this;if(i&&i[r]){const o=i[r];o.showCollisionBoxes=e.showCollisionBoxes,o.enableTerrain=!!e.enableTerrain,o.projection=e.projection,o.tileTransform=Ip(e.tileID.canonical,e.projection);const s=(e,i)=>{const r=o.reloadCallback;r&&(delete o.reloadCallback,o.parse(o.vectorTile,n.layerIndex,this.availableImages,n.actor,r)),t(e,i)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}}abortTile(e,t){const i=e.uid,r=this.loading[i];r&&(r.abort&&r.abort(),delete this.loading[i]),t()}removeTile(e,t){const i=this.loaded,r=e.uid;i&&i[r]&&delete i[r],t()}},e.WritingMode=Sd,e.ZoomDependentExpression=Yr,e.add=Ma,e.addDynamicAttributes=rf,e.adjoint=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8];return e[0]=s*h-a*c,e[1]=n*c-r*h,e[2]=r*a-n*s,e[3]=a*l-o*h,e[4]=i*h-n*l,e[5]=n*o-i*a,e[6]=o*c-s*l,e[7]=r*l-i*c,e[8]=i*s-r*o,e},e.asyncAll=I,e.bezier=A,e.bindAll=F,e.boundsAttributes=Pf,e.bufferConvexPolygon=function(e,t){const i=[];for(let r=0;rre&&(e.getActor().send("enforceCacheSizeLimit",ie),ae=0)},e.calculateGlobeLabelMatrix=function(e,t){const{x:i,y:r}=e.point,n=zl(i,r,e.worldSize/e._pixelsPerMercatorPixel,0,0);return ma(n,n,Pl(yl(t)))},e.calculateGlobeMatrix=function(e){const{x:t,y:i}=e.point,{lng:r,lat:n}=e._center;return zl(t,i,e.worldSize,r,n)},e.calculateGlobeMercatorMatrix=function(e){const t=e.pixelsPerMeter,i=t/Zl(1,e.center.lat),r=pa(new Float64Array(16));return _a(r,r,[e.point.x,e.point.y,0]),ga(r,r,[i,i,t]),Float32Array.from(r)},e.circumferenceAtLatitude=$l,e.clamp=M,e.clearTileCache=function(e){if(!ne())return;const i=t.caches.delete(Q);e&&i.catch(e).then((()=>e()))},e.clipLine=Kd,e.clone=function(e){var t=new ha(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},e.clone$1=V,e.collisionCircleLayout=Ou,e.config=n,e.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e},e.create=function(){var e=new ha(16);return ha!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e},e.create$1=ua,e.createExpression=Xr,e.createLayout=jo,e.createStyleLayer=function(e){return"custom"===e.type?new ff(e):new gf[e.type](e)},e.cross=Ba,e.degToRad=b,e.distance=function(e,t){return Math.hypot(t[0]-e[0],t[1]-e[1],t[2]-e[2])},e.div=function(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e},e.dot=Ra,e.earthRadius=jl,e.ease=S,e.easeCubicInOut=E,e.ecefToLatLng=function([e,t,i]){const r=Math.hypot(e,t,i),n=Math.atan2(e,i),o=.5*Math.PI-Math.acos(-t/r);return new Vl(w(n),w(o))},e.emitValidationErrors=$n,e.endsWith=j,e.enforceCacheSizeLimit=function(e){oe(),ee&&ee.then((t=>{t.keys().then((i=>{for(let r=0;ro&&(r+=(e[n]-o)*(e[n]-o)),t[n]0){const e=180/r;da(p,p,[e/c+1,0,0,0,e/h+1,0,-.5*e/u,.5*e/d,1])}return p[2]=l,p[5]=e.x,p[8]=e.y,p},e.getImage=ge,e.getJSON=function(e,t){return ue(z(e,{type:"json"}),t)},e.getLatitudinalLod=function(e){const t=Kl-5;e=M(e,-t,t)/t*90;const i=Math.pow(Math.abs(Math.sin(b(e))),3);return Math.round(i*(hl.length-1))},e.getMapSessionAPI=Oe,e.getPerformanceMeasurement=$e,e.getProjection=Yp,e.getRTLTextPluginStatus=xo,e.getReferrer=he,e.getTilePoint=function(e,{x:t,y:i},r=0){return new y(((t-r)*e.scale-e.x)*aa,(i*e.scale-e.y)*aa)},e.getTileVec3=function(e,t,i=0){return Sa(((t.x-i)*e.scale-e.x)*aa,(t.y*e.scale-e.y)*aa,Xl(t.z,t.y))},e.getVideo=function(e,i){const r=t.document.createElement("video");r.muted=!0,r.onloadstart=function(){i(null,r)};for(let i=0;i{}}},e.globeCenterToScreenPoint=function(e){const t=[0,0,0],i=pa(new Float64Array(16));return ma(i,e.pixelMatrix,e.globeMatrix),Oa(t,t,i),new y(t[0],t[1])},e.globeDenormalizeECEF=Pl,e.globeECEFOrigin=function(e,t){const i=[0,0,0];return Oa(i,i,Il(yl(t.canonical))),Oa(i,i,e),i},e.globeMetersToEcef=fl,e.globeNormalizeECEF=Il,e.globePixelsToTileUnits=function(e,t){return aa/(512*Math.pow(2,e))*Cl(yl(t))},e.globePoleMatrixForTile=function(e,t,i){const r=pa(new Float64Array(16)),n=(t/(1<0;return 0===r&&!n&&!s&&o},e.identity=pa,e.identity$1=Wa,e.invert=fa,e.isFullscreen=function(){return!!t.document.fullscreenElement||!!t.document.webkitFullscreenElement},e.isLngLatBehindGlobe=Rl,e.isMapAuthenticated=function(e){return Fe.has(e)},e.isMapboxURL=xe,e.isSafariWithAntialiasingBug=function(e){const t=e.navigator?e.navigator.userAgent:null;return!!K(e)&&t&&(t.match("Version/15.4")||t.match("Version/15.5")||t.match(/CPU (OS|iPhone OS) (15_4|15_5) like Mac OS X/))},e.latFromMercatorY=Hl,e.latLngToECEF=Sl,e.len=Va,e.length=Aa,e.length$1=function(e){return Math.hypot(e[0],e[1],e[2],e[3])},e.lngFromMercatorX=Wl,e.loadVectorTile=mm,e.makeRequest=ue,e.mapValue=function(e,t,i,r,n){return M((e-t)/(i-t)*(n-r)+r,r,n)},e.mercatorScale=Yl,e.mercatorXfromLng=Gl,e.mercatorYfromLat=ql,e.mercatorZfromAltitude=Zl,e.mul=wa,e.mul$1=Na,e.multiply=ma,e.multiply$1=da,e.multiply$2=ka,e.nextPowerOfTwo=B,e.normalize=Da,e.normalize$1=Ka,e.normalize$2=Ga,e.number=Pi,e.ortho=function(e,t,i,r,n,o,s){var a=1/(t-i),l=1/(r-n),c=1/(o-s);return e[0]=-2*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*c,e[11]=0,e[12]=(t+i)*a,e[13]=(n+r)*l,e[14]=(s+o)*c,e[15]=1,e},e.pbf=Hu,e.perspective=function(e,t,i,r,n){var o,s=1/Math.tan(t/2);return e[0]=s/i,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=n&&n!==1/0?(e[10]=(n+r)*(o=1/(r-n)),e[14]=2*n*r*o):(e[10]=-1,e[14]=-2*r),e},e.pick=function(e,t){const i={};for(let r=0;r0&&i[0]<=e.width&&i[1]>0&&i[1]<=e.height&&!Rl(e,new Vl(e.center.lat,90)),r[0]>0&&r[0]<=e.width&&r[1]>0&&r[1]<=e.height&&!Rl(e,new Vl(e.center.lat,-90))]},e.polygonContainsPoint=vc,e.polygonIntersectsBox=bc,e.polygonIntersectsPolygon=uc,e.polygonizeBounds=function(e,t,i=0,r=!0){const n=new y(i,i),o=e.sub(n),s=t.add(n),a=[o,new y(s.x,o.y),s,new y(o.x,s.y)];return r&&a.push(o.clone()),a},e.posAttributes=el,e.postMapLoadEvent=Le,e.postPerformanceEvent=Re,e.postTurnstileEvent=Pe,e.potpack=wd,e.prevPowerOfTwo=function(e){return e<=1?1:Math.pow(2,Math.floor(Math.log(e)/Math.LN2))},e.radToDeg=w,e.refProperties=["type","source","source-layer","minzoom","maxzoom","filter","layout"],e.registerForPluginStateChange=function(e){return e({pluginStatus:fo,pluginURL:mo}),yo.on("pluginStateChange",e),e},e.removeAuthState=function(e){Fe.delete(e)},e.renderColorRamp=Nc,e.resample=ec,e.rotateX=ya,e.rotateX$1=Ha,e.rotateY=xa,e.rotateY$1=Xa,e.rotateZ=function(e,t,i){var r=Math.sin(i),n=Math.cos(i),o=t[0],s=t[1],a=t[2],l=t[3],c=t[4],h=t[5],u=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*n+c*r,e[1]=s*n+h*r,e[2]=a*n+u*r,e[3]=l*n+d*r,e[4]=c*n-o*r,e[5]=h*n-s*r,e[6]=u*n-a*r,e[7]=d*n-l*r,e},e.rotateZ$1=function(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+n*a,e[1]=n*l-r*a,e[2]=o*l+s*a,e[3]=s*l-o*a,e},e.scale=ga,e.scale$1=$a,e.scale$2=za,e.scaleAndAdd=La,e.set=function(e,t,i,r){return e[0]=t,e[1]=i,e[2]=r,e},e.setCacheLimits=function(e,t){ie=e,re=t},e.setColumn=function(e,t,i){e[4*t+0]=i[0],e[4*t+1]=i[1],e[4*t+2]=i[2],e[4*t+3]=i[3]},e.setRTLTextPlugin=function(e,t,i=!1){if(fo===co||fo===ho||fo===uo)throw new Error("setRTLTextPlugin cannot be called multiple times.");mo=He.resolveURL(e),fo=co,po=t,go(),i||vo()},e.smoothstep=C,e.spec=et,e.squaredLength=function(e){var t=e[0],i=e[1],r=e[2];return t*t+i*i+r*r},e.storeAuthState=function(e,t){t?Fe.add(e):Fe.delete(e)},e.sub=Ua,e.subtract=Ca,e.symbolSize=$u,e.tileAABB=function(e,t,i,r,n,o,s,a,l){if("globe"===l.name)return wl(e,t,new du(i,r,n));const c=Ip({z:i,x:r,y:n},l);return new nl([(o+c.x/c.scale)*t,t*(c.y/c.scale),s],[(o+c.x2/c.scale)*t,t*(c.y2/c.scale),a])},e.tileCornersToBounds=Tl,e.tileTransform=Ip,e.transformMat3=function(e,t,i){var r=t[0],n=t[1],o=t[2];return e[0]=r*i[0]+n*i[3]+o*i[6],e[1]=r*i[1]+n*i[4]+o*i[7],e[2]=r*i[2]+n*i[5]+o*i[8],e},e.transformMat4=Oa,e.transformMat4$1=qa,e.transformQuat=Fa,e.transitionTileAABBinECEF=vl,e.translate=_a,e.transpose=function(e,t){if(e===t){var i=t[1],r=t[2],n=t[5];e[1]=t[3],e[2]=t[6],e[3]=i,e[5]=t[7],e[6]=r,e[7]=n}else e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8];return e},e.triggerPluginCompletionEvent=_o,e.uniqueId=D,e.updateGlobeVertexNormal=function(e,t,i,r,n){const o=5*t+2;e.float32[o+0]=i,e.float32[o+1]=r,e.float32[o+2]=n},e.validateCustomStyleLayer=function(e){const t=[],i=e.id;return void 0===i&&t.push({message:`layers.${i}: missing required property "id"`}),void 0===e.render&&t.push({message:`layers.${i}: missing required method "render"`}),e.renderingMode&&"2d"!==e.renderingMode&&"3d"!==e.renderingMode&&t.push({message:`layers.${i}: property "renderingMode" must be either "2d" or "3d"`}),t},e.validateFilter=e=>Vn(Tn(e)),e.validateFog=e=>Vn(Rn(e)),e.validateLayer=e=>Vn(Cn(e)),e.validateLight=e=>Vn(Ln(e)),e.validateSource=e=>Vn(Pn(e)),e.validateStyle=jn,e.validateTerrain=e=>Vn(Dn(e)),e.values=P,e.vectorTile=Dh,e.version=i,e.warnOnce=G,e.window=t,e.wrap=k})),r(["./shared"],(function(e){function t(e){if("number"==typeof e||"boolean"==typeof e||"string"==typeof e||null==e)return JSON.stringify(e);if(Array.isArray(e)){let i="[";for(const r of e)i+=`${t(r)},`;return`${i}]`}let i="{";for(const r of Object.keys(e).sort())i+=`${r}:${t(e[r])},`;return`${i}}`}function i(i){let r="";for(const n of e.refProperties)r+=`/${t(i[n])}`;return r}class r{constructor(e){this.keyCache={},e&&this.replace(e)}replace(e){this._layerConfigs={},this._layers={},this.update(e,[])}update(t,r){for(const i of t)this._layerConfigs[i.id]=i,(this._layers[i.id]=e.createStyleLayer(i)).compileFilter(),this.keyCache[i.id]&&delete this.keyCache[i.id];for(const e of r)delete this.keyCache[e],delete this._layerConfigs[e],delete this._layers[e];this.familiesBySource={};const n=function(e,t){const r={};for(let n=0;nthis._layers[e.id])),i=t[0];if("none"===i.visibility)continue;const r=i.source||"";let n=this.familiesBySource[r];n||(n=this.familiesBySource[r]={});const o=i.sourceLayer||"_geojsonTileLayer";let s=n[o];s||(s=n[o]=[]),s.push(t)}}}class n{loadTile(t,i){const{uid:r,encoding:n,rawImageData:o,padding:s,buildQuadTree:a}=t,l=e.window.ImageBitmap&&o instanceof e.window.ImageBitmap?this.getImageData(o,s):o;i(null,new e.DEMData(r,l,n,s<1,a))}getImageData(e,t){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d",{willReadFrequently:!0})),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);const i=this.offscreenCanvasContext.getImageData(-t,-t,e.width+2*t,e.height+2*t);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),i}}function o(e,t){if(0!==e.length){s(e[0],t);for(var i=1;i=Math.abs(a)?i-l+a:a-l+i,i=l}i+r>=0!=!!t&&e.reverse()}var a=e.getDefaultExportFromCjs((function e(t,i){var r,n=t&&t.type;if("FeatureCollection"===n)for(r=0;r>31}function T(e,t){for(var i=e.loadGeometry(),r=e.type,n=0,o=0,s=i.length,a=0;ae},M=Math.fround||(C=new Float32Array(1),e=>(C[0]=+e,C[0]));var C;const k=3,I=5,P=6;class z{constructor(e){this.options=Object.assign(Object.create(S),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){const{log:t,minZoom:i,maxZoom:r}=this.options;t&&console.time("total time");const n=`prepare ${e.length} points`;t&&console.time(n),this.points=e;const o=[];for(let t=0;t=i;e--){const i=+Date.now();s=this.trees[e]=this._createTree(this._cluster(s,e)),t&&console.log("z%d: %d clusters in %dms",e,s.numItems,+Date.now()-i)}return t&&console.timeEnd("total time"),this}getClusters(e,t){let i=((e[0]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,e[1]));let n=180===e[2]?180:((e[2]+180)%360+360)%360-180;const o=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)i=-180,n=180;else if(i>n){const e=this.getClusters([i,r,180,o],t),s=this.getClusters([-180,r,n,o],t);return e.concat(s)}const s=this.trees[this._limitZoom(t)],a=s.range(R(i),B(o),R(n),B(r)),l=s.data,c=[];for(const e of a){const t=this.stride*e;c.push(l[t+I]>1?L(l,t,this.clusterProps):this.points[l[t+k]])}return c}getChildren(e){const t=this._getOriginId(e),i=this._getOriginZoom(e),r="No cluster with the specified id.",n=this.trees[i];if(!n)throw new Error(r);const o=n.data;if(t*this.stride>=o.length)throw new Error(r);const s=this.options.radius/(this.options.extent*Math.pow(2,i-1)),a=n.within(o[t*this.stride],o[t*this.stride+1],s),l=[];for(const t of a){const i=t*this.stride;o[i+4]===e&&l.push(o[i+I]>1?L(o,i,this.clusterProps):this.points[o[i+k]])}if(0===l.length)throw new Error(r);return l}getLeaves(e,t,i){const r=[];return this._appendLeaves(r,e,t=t||10,i=i||0,0),r}getTile(e,t,i){const r=this.trees[this._limitZoom(e)],n=Math.pow(2,e),{extent:o,radius:s}=this.options,a=s/o,l=(i-a)/n,c=(i+1+a)/n,h={features:[]};return this._addTileFeatures(r.range((t-a)/n,l,(t+1+a)/n,c),r.data,t,i,n,h),0===t&&this._addTileFeatures(r.range(1-a/n,l,1,c),r.data,n,i,n,h),t===n-1&&this._addTileFeatures(r.range(0,l,a/n,c),r.data,-1,i,n,h),h.features.length?h:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){const i=this.getChildren(e);if(t++,1!==i.length)break;e=i[0].properties.cluster_id}return t}_appendLeaves(e,t,i,r,n){const o=this.getChildren(t);for(const t of o){const o=t.properties;if(o&&o.cluster?n+o.point_count<=r?n+=o.point_count:n=this._appendLeaves(e,o.cluster_id,i,r,n):n1;let l,c,h;if(a)l=D(t,e,this.clusterProps),c=t[e],h=t[e+1];else{const i=this.points[t[e+k]];l=i.properties;const[r,n]=i.geometry.coordinates;c=R(r),h=B(n)}const u={type:1,geometry:[[Math.round(this.options.extent*(c*n-i)),Math.round(this.options.extent*(h*n-r))]],tags:l};let d;d=a||this.options.generateId?t[e+k]:this.points[t[e+k]].id,void 0!==d&&(u.id=d),o.features.push(u)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){const{radius:i,extent:r,reduce:n,minPoints:o}=this.options,s=i/(r*Math.pow(2,t)),a=e.data,l=[],c=this.stride;for(let i=0;it&&(p+=a[i+I])}if(p>d&&p>=o){let e,o=r*d,s=h*d,f=-1;const m=((i/c|0)<<5)+(t+1)+this.points.length;for(const r of u){const l=r*c;if(a[l+2]<=t)continue;a[l+2]=t;const h=a[l+I];o+=a[l]*h,s+=a[l+1]*h,a[l+4]=m,n&&(e||(e=this._map(a,i,!0),f=this.clusterProps.length,this.clusterProps.push(e)),n(e,this._map(a,l)))}a[i+4]=m,l.push(o/p,s/p,1/0,m,-1,p),n&&l.push(f)}else{for(let e=0;e1)for(const e of u){const i=e*c;if(!(a[i+2]<=t)){a[i+2]=t;for(let e=0;e>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,t,i){if(e[t+I]>1){const r=this.clusterProps[e[t+P]];return i?Object.assign({},r):r}const r=this.points[e[t+k]].properties,n=this.options.map(r);return i&&n===r?Object.assign({},n):n}}function L(e,t,i){return{type:"Feature",id:e[t+k],properties:D(e,t,i),geometry:{type:"Point",coordinates:[(r=e[t],360*(r-.5)),O(e[t+1])]}};var r}function D(e,t,i){const r=e[t+I],n=r>=1e4?`${Math.round(r/1e3)}k`:r>=1e3?Math.round(r/100)/10+"k":r,o=e[t+P],s=-1===o?{}:Object.assign({},i[o]);return Object.assign(s,{cluster:!0,cluster_id:e[t+k],point_count:r,point_count_abbreviated:n})}function R(e){return e/360+.5}function B(e){const t=Math.sin(e*Math.PI/180),i=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return i<0?0:i>1?1:i}function O(e){const t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function F(e,t,i,r){for(var n,o=r,s=i-t>>1,a=i-t,l=e[t],c=e[t+1],h=e[i],u=e[i+1],d=t+3;do)n=d,o=p;else if(p===o){var f=Math.abs(d-s);fr&&(n-t>3&&F(e,t,n,r),e[n+2]=o,i-n>3&&F(e,n,i,r))}function j(e,t,i,r,n,o){var s=n-i,a=o-r;if(0!==s||0!==a){var l=((e-i)*s+(t-r)*a)/(s*s+a*a);l>1?(i=n,r=o):l>0&&(i+=s*l,r+=a*l)}return(s=e-i)*s+(a=t-r)*a}function U(e,t,i,r){var n={id:void 0===e?null:e,type:t,geometry:i,tags:r,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(e){var t=e.geometry,i=e.type;if("Point"===i||"MultiPoint"===i||"LineString"===i)N(e,t);else if("Polygon"===i||"MultiLineString"===i)for(var r=0;r0&&(s+=r?(n*c-l*o)/2:Math.sqrt(Math.pow(l-n,2)+Math.pow(c-o,2))),n=l,o=c}var h=t.length-3;t[2]=1,F(t,0,h,i),t[h+2]=1,t.size=Math.abs(s),t.start=0,t.end=t.size}function q(e,t,i,r){for(var n=0;n1?1:i}function H(e,t,i,r,n,o,s,a){if(r/=t,o>=(i/=t)&&s=r)return null;for(var l=[],c=0;c=i&&f=r)){var m=[];if("Point"===d||"MultiPoint"===d)X(u,m,i,r,n);else if("LineString"===d)K(u,m,i,r,n,!1,a.lineMetrics);else if("MultiLineString"===d)J(u,m,i,r,n,!1);else if("Polygon"===d)J(u,m,i,r,n,!0);else if("MultiPolygon"===d)for(var _=0;_=i&&s<=r&&(t.push(e[o]),t.push(e[o+1]),t.push(e[o+2]))}}function K(e,t,i,r,n,o,s){for(var a,l,c=Y(e),h=0===n?ee:te,u=e.start,d=0;di&&(l=h(c,p,f,_,g,i),s&&(c.start=u+a*l)):y>r?x=i&&(l=h(c,p,f,_,g,i),v=!0),x>r&&y<=r&&(l=h(c,p,f,_,g,r),v=!0),!o&&v&&(s&&(c.end=u+a*l),t.push(c),c=Y(e)),s&&(u+=a)}var b=e.length-3;p=e[b],f=e[b+1],m=e[b+2],(y=0===n?p:f)>=i&&y<=r&&Q(c,p,f,m),b=c.length-3,o&&b>=3&&(c[b]!==c[0]||c[b+1]!==c[1])&&Q(c,c[0],c[1],c[2]),c.length&&t.push(c)}function Y(e){var t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function J(e,t,i,r,n,o){for(var s=0;ss.maxX&&(s.maxX=h),u>s.maxY&&(s.maxY=u)}return s}function ae(e,t,i,r){var n=t.geometry,o=t.type,s=[];if("Point"===o||"MultiPoint"===o)for(var a=0;a0&&t.size<(n?s:r))i.numPoints+=t.length/3;else{for(var a=[],l=0;ls)&&(i.numSimplified++,a.push(t[l]),a.push(t[l+1])),i.numPoints++;n&&function(e,t){for(var i=0,r=0,n=e.length,o=n-2;r0===t)for(r=0,n=e.length;r24)throw new Error("maxZoom should be in the 0-24 range");if(t.promoteId&&t.generateId)throw new Error("promoteId and generateId cannot be used together.");var r=function(e,t){var i=[];if("FeatureCollection"===e.type)for(var r=0;r1&&console.time("creation"),d=this.tiles[u]=se(e,t,i,r,l),this.tileCoords.push({z:t,x:i,y:r}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,i,r,d.numFeatures,d.numPoints,d.numSimplified),console.timeEnd("creation"));var p="z"+t;this.stats[p]=(this.stats[p]||0)+1,this.total++}if(d.source=e,n){if(t===l.maxZoom||t===n)continue;var f=1<1&&console.time("clipping");var m,_,g,y,x,v,b=.5*l.buffer/l.extent,w=.5-b,T=.5+b,E=1+b;m=_=g=y=null,x=H(e,h,i-b,i+T,0,d.minX,d.maxX,l),v=H(e,h,i+w,i+E,0,d.minX,d.maxX,l),e=null,x&&(m=H(x,h,r-b,r+T,1,d.minY,d.maxY,l),_=H(x,h,r+w,r+E,1,d.minY,d.maxY,l),x=null),v&&(g=H(v,h,r-b,r+T,1,d.minY,d.maxY,l),y=H(v,h,r+w,r+E,1,d.minY,d.maxY,l),v=null),c>1&&console.timeEnd("clipping"),a.push(m||[],t+1,2*i,2*r),a.push(_||[],t+1,2*i,2*r+1),a.push(g||[],t+1,2*i+1,2*r),a.push(y||[],t+1,2*i+1,2*r+1)}}},ce.prototype.getTile=function(e,t,i){var r=this.options,n=r.extent,o=r.debug;if(e<0||e>24)return null;var s=1<1&&console.log("drilling down to z%d-%d-%d",e,t,i);for(var l,c=e,h=t,u=i;!l&&c>0;)c--,h=Math.floor(h/2),u=Math.floor(u/2),l=this.tiles[he(c,h,u)];return l&&l.source?(o>1&&console.log("found parent tile z%d-%d-%d",c,h,u),o>1&&console.time("drilling down"),this.splitTile(l.source,c,h,u,e,t,i),o>1&&console.timeEnd("drilling down"),this.tiles[a]?ne(this.tiles[a],n):null):null};class de extends e.VectorTileWorkerSource{constructor(e,t,i,r,n){super(e,t,i,r,ue),n&&(this.loadGeoJSON=n)}loadData(t,i){const r=t&&t.request,n=r&&r.collectResourceTiming;this.loadGeoJSON(t,((o,s)=>{if(o||!s)return i(o);if("object"!=typeof s)return i(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));{a(s,!0);try{if(t.filter){const i=e.createExpression(t.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if("error"===i.result)throw new Error(i.value.map((e=>`${e.key}: ${e.message}`)).join(", "));const r=s.features.filter((e=>i.value.evaluate({zoom:0},e)));s={type:"FeatureCollection",features:r}}this._geoJSONIndex=t.cluster?new z(function({superclusterOptions:t,clusterProperties:i}){if(!i||!t)return t;const r={},n={},o={accumulated:null,zoom:0},s={properties:null},a=Object.keys(i);for(const t of a){const[o,s]=i[t],a=e.createExpression(s),l=e.createExpression("string"==typeof o?[o,["accumulated"],["get",t]]:o);r[t]=a.value,n[t]=l.value}return t.map=e=>{s.properties=e;const t={};for(const e of a)t[e]=r[e].evaluate(o,s);return t},t.reduce=(e,t)=>{s.properties=t;for(const t of a)o.accumulated=e[t],e[t]=n[t].evaluate(o,s)},t}(t)).load(s.features):function(e,t){return new ce(e,t)}(s,t.geojsonVtOptions)}catch(o){return i(o)}this.loaded={};const l={};if(n){const i=e.getPerformanceMeasurement(r);i&&(l.resourceTiming={},l.resourceTiming[t.source]=JSON.parse(JSON.stringify(i)))}i(null,l)}}))}reloadTile(e,t){const i=this.loaded;return i&&i[e.uid]?super.reloadTile(e,t):this.loadTile(e,t)}loadGeoJSON(t,i){if(t.request)e.getJSON(t.request,i);else{if("string"!=typeof t.data)return i(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));try{return i(null,JSON.parse(t.data))}catch(e){return i(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`))}}}getClusterExpansionZoom(e,t){try{t(null,this._geoJSONIndex.getClusterExpansionZoom(e.clusterId))}catch(e){t(e)}}getClusterChildren(e,t){try{t(null,this._geoJSONIndex.getChildren(e.clusterId))}catch(e){t(e)}}getClusterLeaves(e,t){try{t(null,this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset))}catch(e){t(e)}}}class pe{constructor(t){this.self=t,this.actor=new e.Actor(t,this),this.layerIndexes={},this.availableImages={},this.isSpriteLoaded={},this.projections={},this.defaultProjection=e.getProjection({name:"mercator"}),this.workerSourceTypes={vector:e.VectorTileWorkerSource,geojson:de},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(e,t)=>{if(this.workerSourceTypes[e])throw new Error(`Worker source with name "${e}" already registered.`);this.workerSourceTypes[e]=t},this.self.registerRTLTextPlugin=t=>{if(e.plugin.isParsed())throw new Error("RTL text plugin already registered.");e.plugin.applyArabicShaping=t.applyArabicShaping,e.plugin.processBidirectionalText=t.processBidirectionalText,e.plugin.processStyledBidirectionalText=t.processStyledBidirectionalText}}clearCaches(e,t,i){delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e],i()}checkIfReady(e,t,i){i()}setReferrer(e,t){this.referrer=t}spriteLoaded(t,i){this.isSpriteLoaded[t]=i;for(const r in this.workerSources[t]){const n=this.workerSources[t][r];for(const t in n)n[t]instanceof e.VectorTileWorkerSource&&(n[t].isSpriteLoaded=i,n[t].fire(new e.Event("isSpriteLoaded")))}}setImages(e,t,i){this.availableImages[e]=t;for(const i in this.workerSources[e]){const r=this.workerSources[e][i];for(const e in r)r[e].availableImages=t}i()}enableTerrain(e,t,i){this.terrain=t,i()}setProjection(t,i){this.projections[t]=e.getProjection(i)}setLayers(e,t,i){this.getLayerIndex(e).replace(t),i()}updateLayers(e,t,i){this.getLayerIndex(e).update(t.layers,t.removedIds),i()}loadTile(t,i,r){const n=this.enableTerrain?e.extend({enableTerrain:this.terrain},i):i;n.projection=this.projections[t]||this.defaultProjection,this.getWorkerSource(t,i.type,i.source).loadTile(n,r)}loadDEMTile(t,i,r){const n=this.enableTerrain?e.extend({buildQuadTree:this.terrain},i):i;this.getDEMWorkerSource(t,i.source).loadTile(n,r)}reloadTile(t,i,r){const n=this.enableTerrain?e.extend({enableTerrain:this.terrain},i):i;n.projection=this.projections[t]||this.defaultProjection,this.getWorkerSource(t,i.type,i.source).reloadTile(n,r)}abortTile(e,t,i){this.getWorkerSource(e,t.type,t.source).abortTile(t,i)}removeTile(e,t,i){this.getWorkerSource(e,t.type,t.source).removeTile(t,i)}removeSource(e,t,i){if(!this.workerSources[e]||!this.workerSources[e][t.type]||!this.workerSources[e][t.type][t.source])return;const r=this.workerSources[e][t.type][t.source];delete this.workerSources[e][t.type][t.source],void 0!==r.removeSource?r.removeSource(t,i):i()}loadWorkerSource(e,t,i){try{this.self.importScripts(t.url),i()}catch(e){i(e.toString())}}syncRTLPluginState(t,i,r){try{e.plugin.setState(i);const t=e.plugin.getPluginURL();if(e.plugin.isLoaded()&&!e.plugin.isParsed()&&null!=t){this.self.importScripts(t);const i=e.plugin.isParsed();r(i?void 0:new Error(`RTL Text Plugin failed to import scripts from ${t}`),i)}}catch(e){r(e.toString())}}getAvailableImages(e){let t=this.availableImages[e];return t||(t=[]),t}getLayerIndex(e){let t=this.layerIndexes[e];return t||(t=this.layerIndexes[e]=new r),t}getWorkerSource(e,t,i){if(this.workerSources[e]||(this.workerSources[e]={}),this.workerSources[e][t]||(this.workerSources[e][t]={}),!this.workerSources[e][t][i]){const r={send:(t,i,r,n,o,s)=>{this.actor.send(t,i,r,e,o,s)},scheduler:this.actor.scheduler};this.workerSources[e][t][i]=new this.workerSourceTypes[t](r,this.getLayerIndex(e),this.getAvailableImages(e),this.isSpriteLoaded[e])}return this.workerSources[e][t][i]}getDEMWorkerSource(e,t){return this.demWorkerSources[e]||(this.demWorkerSources[e]={}),this.demWorkerSources[e][t]||(this.demWorkerSources[e][t]=new n),this.demWorkerSources[e][t]}enforceCacheSizeLimit(t,i){e.enforceCacheSizeLimit(i)}getWorkerPerformanceMetrics(e,t,i){i(void 0,void 0)}}return"undefined"!=typeof WorkerGlobalScope&&"undefined"!=typeof self&&self instanceof WorkerGlobalScope&&(self.worker=new pe(self)),pe})),r(["./shared"],(function(e){function t(e,i){if(Array.isArray(e)){if(!Array.isArray(i)||e.length!==i.length)return!1;for(let r=0;r{e.window.removeEventListener("click",d,!0)}),0)}function f(e,t){const i=e.getBoundingClientRect();return g(e,i,t)}function m(e,t){const i=e.getBoundingClientRect(),r=[];for(let n=0;n=0?0:t.button}function g(t,i,r){const n=t.offsetWidth===i.width?1:t.offsetWidth/i.width;return new e.Point((r.clientX-i.left)*n,(r.clientY-i.top)*n)}function y(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i*o-n*r;return s?(e[0]=o*(s=1/s),e[1]=-r*s,e[2]=-n*s,e[3]=i*s,e):null}function x(e){const{userImage:t}=e;return!!(t&&t.render&&t.render())&&(e.data.replace(new Uint8Array(t.data.buffer)),!0)}class v extends e.Evented{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(e){if(this.loaded!==e&&(this.loaded=e,e)){for(const{ids:e,callback:t}of this.requestors)this._notify(e,t);this.requestors=[]}}hasImage(e){return!!this.getImage(e)}getImage(e){return this.images[e]}addImage(e,t){this._validate(e,t)&&(this.images[e]=t)}_validate(t,i){let r=!0;return this._validateStretch(i.stretchX,i.data&&i.data.width)||(this.fire(new e.ErrorEvent(new Error(`Image "${t}" has invalid "stretchX" value`))),r=!1),this._validateStretch(i.stretchY,i.data&&i.data.height)||(this.fire(new e.ErrorEvent(new Error(`Image "${t}" has invalid "stretchY" value`))),r=!1),this._validateContent(i.content,i)||(this.fire(new e.ErrorEvent(new Error(`Image "${t}" has invalid "content" value`))),r=!1),r}_validateStretch(e,t){if(!e)return!0;let i=0;for(const r of e){if(r[0]{this.ready=!0}))}broadcast(t,i,r){e.asyncAll(this.actors,((e,r)=>{e.send(t,i,r)}),r=r||function(){})}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(){this.actors.forEach((e=>{e.remove()})),this.actors=[],this.workerPool.release(this.id)}}function I(t,i,r){return i*(e.EXTENT/(t.tileSize*Math.pow(2,r-t.tileID.overscaledZ)))}k.Actor=e.Actor;class P{constructor(e,t,i,r){this.screenBounds=e,this.cameraPoint=t,this._screenRaycastCache={},this._cameraRaycastCache={},this.isAboveHorizon=i,this.screenGeometry=this.bufferedScreenGeometry(0),this.screenGeometryMercator=this._bufferedScreenMercator(0,r)}static createFromScreenPoints(t,i){let r,n;if(t instanceof e.Point||"number"==typeof t[0]){const o=e.Point.convert(t);r=[o],n=i.isPointAboveHorizon(o)}else{const o=e.Point.convert(t[0]),s=e.Point.convert(t[1]);r=[o,s],n=e.polygonizeBounds(o,s).every((e=>i.isPointAboveHorizon(e)))}return new P(r,i.getCameraPoint(),n,i)}isPointQuery(){return 1===this.screenBounds.length}bufferedScreenGeometry(t){return e.polygonizeBounds(this.screenBounds[0],1===this.screenBounds.length?this.screenBounds[0]:this.screenBounds[1],t)}bufferedCameraGeometry(t){const i=this.screenBounds[0],r=1===this.screenBounds.length?this.screenBounds[0].add(new e.Point(1,1)):this.screenBounds[1],n=e.polygonizeBounds(i,r,0,!1);return this.cameraPoint.y>r.y&&(this.cameraPoint.x>i.x&&this.cameraPoint.x=r.x?n[2]=this.cameraPoint:this.cameraPoint.x<=i.x&&(n[3]=this.cameraPoint)),e.bufferConvexPolygon(n,t)}bufferedCameraGeometryGlobe(t){const i=this.screenBounds[0],r=1===this.screenBounds.length?this.screenBounds[0].add(new e.Point(1,1)):this.screenBounds[1],n=e.polygonizeBounds(i,r,t),o=this.cameraPoint.clone();switch(3*((o.y>i.y)+(o.y>r.y))+((o.x>i.x)+(o.x>r.x))){case 0:n[0]=o,n[4]=o.clone();break;case 1:n.splice(1,0,o);break;case 2:n[1]=o;break;case 3:n.splice(4,0,o);break;case 5:n.splice(2,0,o);break;case 6:n[3]=o;break;case 7:n.splice(3,0,o);break;case 8:n[2]=o}return n}containsTile(t,i,r,n=0){const o=t.queryPadding/i._pixelsPerMercatorPixel+1,s=r?this._bufferedCameraMercator(o,i):this._bufferedScreenMercator(o,i);let a=t.tileID.wrap+(s.unwrapped?n:0);const l=s.polygon.map((i=>e.getTilePoint(t.tileTransform,i,a)));if(!e.polygonIntersectsBox(l,0,0,e.EXTENT,e.EXTENT))return;a=t.tileID.wrap+(this.screenGeometryMercator.unwrapped?n:0);const c=this.screenGeometryMercator.polygon.map((i=>e.getTileVec3(t.tileTransform,i,a))),h=c.map((t=>new e.Point(t[0],t[1]))),u=i.getFreeCameraOptions().position||new e.MercatorCoordinate(0,0,0),d=e.getTileVec3(t.tileTransform,u,a),p=c.map((t=>{const i=e.sub(t,t,d);return e.normalize(i,i),new e.Ray(d,i)})),f=I(t,1,i.zoom)*i._pixelsPerMercatorPixel;return{queryGeometry:this,tilespaceGeometry:h,tilespaceRays:p,bufferedTilespaceGeometry:l,bufferedTilespaceBounds:(m=e.getBounds(l),m.min.x=e.clamp(m.min.x,0,e.EXTENT),m.min.y=e.clamp(m.min.y,0,e.EXTENT),m.max.x=e.clamp(m.max.x,0,e.EXTENT),m.max.y=e.clamp(m.max.y,0,e.EXTENT),m),tile:t,tileID:t.tileID,pixelToTileUnitsFactor:f};var m}_bufferedScreenMercator(e,t){const i=D(e);if(this._screenRaycastCache[i])return this._screenRaycastCache[i];{let r;return r="globe"===t.projection.name?this._projectAndResample(this.bufferedScreenGeometry(e),t):{polygon:this.bufferedScreenGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._screenRaycastCache[i]=r,r}}_bufferedCameraMercator(e,t){const i=D(e);if(this._cameraRaycastCache[i])return this._cameraRaycastCache[i];{let r;return r="globe"===t.projection.name?this._projectAndResample(this.bufferedCameraGeometryGlobe(e),t):{polygon:this.bufferedCameraGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._cameraRaycastCache[i]=r,r}}_projectAndResample(t,i){const r=function(t,i){const r=e.multiply([],i.pixelMatrix,i.globeMatrix),n=[0,-e.GLOBE_RADIUS,0,1],o=[0,e.GLOBE_RADIUS,0,1],s=[0,0,0,1];e.transformMat4$1(n,n,r),e.transformMat4$1(o,o,r),e.transformMat4$1(s,s,r);const a=new e.Point(n[0]/n[3],n[1]/n[3]),l=new e.Point(o[0]/o[3],o[1]/o[3]),c=e.polygonContainsPoint(t,a)&&n[3]1?z(t.slice(0,d),i):[],m=dnew e.Point(L(t.x),t.y))),m=m.map((t=>new e.Point(L(t.x),t.y)));const _=[...f];0===_.length&&_.push(m[m.length-1]);const g=e.number(_[_.length-1].y,(0===m.length?f[0]:m[0]).y,p);let y;return y=c?[new e.Point(0,g),new e.Point(0,0),new e.Point(1,0),new e.Point(1,g)]:[new e.Point(1,g),new e.Point(1,1),new e.Point(0,1),new e.Point(0,g)],_.push(...y),0===m.length?_.push(f[0]):_.push(...m),{polygon:_.map((t=>new e.MercatorCoordinate(t.x,t.y))),unwrapped:!1}}(t,i);if(r)return r;const n=function(t,i){let r=!1,n=-1/0,o=0;for(let e=0;en&&(n=t[e].x,o=e);for(let e=0;e.5&&(n.x{e.x-=1})),{polygon:t,unwrapped:r}}(z(t,i).map((t=>new e.Point(L(t.x),t.y))),i);return{polygon:n.polygon.map((t=>new e.MercatorCoordinate(t.x,t.y))),unwrapped:n.unwrapped}}}function z(t,i){return e.resample(t,(e=>{const t=i.pointCoordinate3D(e);e.x=t.x,e.y=t.y}),1/256)}function L(e){return e<0?1+e%1:e%1}function D(e){return 100*e|0}function R(t,i,r,n,o){const s=function(r,n){if(r)return o(r);if(n){t.url&&n.tiles&&t.tiles&&delete t.tiles;const r=e.pick(e.extend(n,t),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);n.vector_layers&&(r.vectorLayers=n.vector_layers,r.vectorLayerIds=r.vectorLayers.map((e=>e.id))),r.tiles=i.canonicalizeTileset(r,t.url),o(null,r)}};return t.url?e.getJSON(i.transformRequest(i.normalizeSourceURL(t.url,null,r,n),e.ResourceType.Source),s):e.exported.frame((()=>s(null,t)))}class B{constructor(t,i,r){this.bounds=e.LngLatBounds.convert(this.validateBounds(t)),this.minzoom=i||0,this.maxzoom=r||24}validateBounds(e){return Array.isArray(e)&&4===e.length?[Math.max(-180,e[0]),Math.max(-90,e[1]),Math.min(180,e[2]),Math.min(90,e[3])]:[-180,-90,180,90]}contains(t){const i=Math.pow(2,t.z),r=Math.floor(e.mercatorXfromLng(this.bounds.getWest())*i),n=Math.floor(e.mercatorYfromLat(this.bounds.getNorth())*i),o=Math.ceil(e.mercatorXfromLng(this.bounds.getEast())*i),s=Math.ceil(e.mercatorYfromLat(this.bounds.getSouth())*i);return t.x>=r&&t.x=n&&t.y{this._tileJSONRequest=null,this._loaded=!0,n?(i&&console.warn(`Ensure that your requested language string is a valid BCP-47 code or list of codes. Found: ${i}`),r&&2!==r.length&&console.warn(`Requested worldview strings must be a valid ISO alpha-2 code. Found: ${r}`),this.fire(new e.ErrorEvent(n))):o&&(e.extend(this,o),o.bounds&&(this.tileBounds=new B(o.bounds,this.minzoom,this.maxzoom)),e.postTurnstileEvent(o.tiles,this.map._requestManager._customAccessToken),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"}))),t&&t(n)}))}loaded(){return this._loaded}hasTile(e){return!this.tileBounds||this.tileBounds.contains(e.canonical)}onAdd(e){this.map=e,this.load()}reload(){this.cancelTileJSONRequest(),this.load((()=>this.map.style._clearSource(this.id)))}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest()}serialize(){return e.extend({},this._options)}loadTile(t,i){const r=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme)),n={request:this.map._requestManager.transformRequest(r,e.ResourceType.Tile),data:void 0,uid:t.uid,tileID:t.tileID,tileZoom:t.tileZoom,zoom:t.tileID.overscaledZ,tileSize:this.tileSize*t.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:e.exported.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId,isSymbolTile:t.isSymbolTile};if(n.request.collectResourceTiming=this._collectResourceTiming,t.actor&&"expired"!==t.state)"loading"===t.state?t.reloadCallback=i:t.request=t.actor.send("reloadTile",n,o.bind(this));else if(t.actor=this._tileWorkers[r]=this._tileWorkers[r]||this.dispatcher.getActor(),this.dispatcher.ready)t.request=t.actor.send("loadTile",n,o.bind(this),void 0,!0);else{const i=e.loadVectorTile.call({deduped:this._deduped},n,((e,i)=>{e||!i?o.call(this,e):(n.data={cacheControl:i.cacheControl,expires:i.expires,rawData:i.rawData.slice(0)},t.actor&&t.actor.send("loadTile",n,o.bind(this),void 0,!0))}),!0);t.request={cancel:i}}function o(r,n){return delete t.request,t.aborted?i(null):r&&404!==r.status?i(r):(n&&n.resourceTiming&&(t.resourceTiming=n.resourceTiming),this.map._refreshExpiredTiles&&n&&t.setExpiryData(n),t.loadVectorData(n,this.map.painter),e.cacheEntryPossiblyAdded(this.dispatcher),i(null),void(t.reloadCallback&&(this.loadTile(t,t.reloadCallback),t.reloadCallback=null)))}}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.actor&&e.actor.send("abortTile",{uid:e.uid,type:this.type,source:this.id})}unloadTile(e){e.unloadVectorData(),e.actor&&e.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id})}hasTransition(){return!1}afterUpdate(){this._tileWorkers={}}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}}class Se extends e.Evented{constructor(t,i,r,n){super(),this.id=t,this.dispatcher=r,this.setEventedParent(n),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=e.extend({type:"raster"},i),e.extend(this,e.pick(i,["url","scheme","tileSize"]))}load(t){this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=R(this._options,this.map._requestManager,null,null,((i,r)=>{this._tileJSONRequest=null,this._loaded=!0,i?this.fire(new e.ErrorEvent(i)):r&&(e.extend(this,r),r.bounds&&(this.tileBounds=new B(r.bounds,this.minzoom,this.maxzoom)),e.postTurnstileEvent(r.tiles),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"}))),t&&t(i)}))}loaded(){return this._loaded}onAdd(e){this.map=e,this.load()}reload(){this.cancelTileJSONRequest(),this.load((()=>this.map.style._clearSource(this.id)))}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest()}serialize(){return e.extend({},this._options)}hasTile(e){return!this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(t,i){const r=e.exported.devicePixelRatio>=2,n=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme),r,this.tileSize);t.request=e.getImage(this.map._requestManager.transformRequest(n,e.ResourceType.Tile),((r,n,o,s)=>(delete t.request,t.aborted?(t.state="unloaded",i(null)):r?(t.state="errored",i(r)):n?(this.map._refreshExpiredTiles&&t.setExpiryData({cacheControl:o,expires:s}),t.setTexture(n,this.map.painter),t.state="loaded",e.cacheEntryPossiblyAdded(this.dispatcher),void i(null)):i(null))))}static loadTileData(e,t,i){e.setTexture(t,i)}static unloadTileData(e,t){e.texture&&t.saveTileTexture(e.texture)}abortTile(e,t){e.request&&(e.request.cancel(),delete e.request),t()}unloadTile(e,t){e.texture&&this.map.painter.saveTileTexture(e.texture),t()}hasTransition(){return!1}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}}function Me(t,i,r,n,o,s,a,l){const c=[t,r,o,i,n,s,1,1,1],h=[a,l,1],u=e.adjoint([],c),[d,p,f]=e.transformMat3(h,h,e.transpose(u,u));return e.multiply$1(c,[d,0,0,0,p,0,0,0,f],c)}class Ce extends e.Evented{constructor(e,t,i,r){super(),this.id=e,this.dispatcher=i,this.coordinates=t.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(r),this.options=t,this._dirty=!1}load(t,i){this._loaded=i||!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,this._imageRequest=e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),((i,r)=>{if(this._imageRequest=null,this._loaded=!0,i)this.fire(new e.ErrorEvent(i));else if(r){const{HTMLImageElement:i}=e.window;this.image=r instanceof i?e.exported.getImageData(r):r,this._dirty=!0,this.width=this.image.width,this.height=this.image.height,t&&(this.coordinates=t),this._finishLoading()}}))}loaded(){return this._loaded}updateImage(e){return this.image&&e.url?(this._imageRequest&&e.url!==this.options.url&&(this._imageRequest.cancel(),this._imageRequest=null),this.options.url=e.url,this.load(e.coordinates,this._loaded),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(e){this.map=e,this.load()}onRemove(){this._imageRequest&&(this._imageRequest.cancel(),this._imageRequest=null),this.texture&&this.texture.destroy()}setCoordinates(t){this.coordinates=t,this._boundsArray=void 0;const i=t.map(e.MercatorCoordinate.fromLngLat);return this.tileID=function(t){let i=1/0,r=1/0,n=-1/0,o=-1/0;for(const e of t)i=Math.min(i,e.x),r=Math.min(r,e.y),n=Math.max(n,e.x),o=Math.max(o,e.y);const s=Math.max(n-i,o-r),a=Math.max(0,Math.floor(-Math.log(s)/Math.LN2)),l=Math.pow(2,a);return new e.CanonicalTileID(a,Math.floor((i+n)/2*l),Math.floor((r+o)/2*l))}(i),this.minzoom=this.maxzoom=this.tileID.z,this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this}_clear(){this._boundsArray=void 0}_prepareData(t){for(const e in this.tiles){const t=this.tiles[e];"loaded"!==t.state&&(t.state="loaded",t.texture=this.texture)}if(this._boundsArray)return;const i=e.tileTransform(this.tileID,this.map.transform.projection),[r,n,o,s]=this.coordinates.map((t=>{const r=i.projection.project(t[0],t[1]);return e.getTilePoint(i,r)._round()}));this.perspectiveTransform=function(t,i,r,n,o,s,a,l,c,h){const u=Me(0,0,t,0,0,i,t,i),d=Me(r,n,o,s,a,l,c,h);return e.multiply$1(d,e.adjoint(u,u),d),[d[6]/d[8]*t/e.EXTENT,d[7]/d[8]*i/e.EXTENT]}(this.width,this.height,r.x,r.y,n.x,n.y,s.x,s.y,o.x,o.y);const a=this._boundsArray=new e.StructArrayLayout4i8;a.emplaceBack(r.x,r.y,0,0),a.emplaceBack(n.x,n.y,e.EXTENT,0),a.emplaceBack(s.x,s.y,0,e.EXTENT),a.emplaceBack(o.x,o.y,e.EXTENT,e.EXTENT),this.boundsBuffer&&this.boundsBuffer.destroy(),this.boundsBuffer=t.createVertexBuffer(a,e.boundsAttributes.members),this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)}prepare(){if(0===Object.keys(this.tiles).length||!this.image)return;const t=this.map.painter.context,i=t.gl;this._dirty&&(this.texture?this.texture.update(this.image):(this.texture=new e.Texture(t,this.image,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE)),this._dirty=!1),this._prepareData(t)}loadTile(e,t){this.tileID&&this.tileID.equals(e.tileID.canonical)?(this.tiles[String(e.tileID.wrap)]=e,e.buckets={},t(null)):(e.state="errored",t(null))}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}const ke={vector:Ae,raster:Se,"raster-dem":class extends Se{constructor(t,i,r,n){super(t,i,r,n),this.type="raster-dem",this.maxzoom=22,this._options=e.extend({type:"raster-dem"},i),this.encoding=i.encoding||"mapbox"}loadTile(t,i){const r=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme),!1,this.tileSize);function n(e,r){e&&(t.state="errored",i(e)),r&&(t.dem=r,t.dem.onDeserialize(),t.needsHillshadePrepare=!0,t.needsDEMTextureUpload=!0,t.state="loaded",i(null))}t.request=e.getImage(this.map._requestManager.transformRequest(r,e.ResourceType.Tile),function(r,o,s,a){if(delete t.request,t.aborted)t.state="unloaded",i(null);else if(r)t.state="errored",i(r);else if(o){this.map._refreshExpiredTiles&&t.setExpiryData({cacheControl:s,expires:a});const i=e.window.ImageBitmap&&o instanceof e.window.ImageBitmap&&(null==se&&(se=e.window.OffscreenCanvas&&new e.window.OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof e.window.createImageBitmap),se),r=1-(o.width-e.prevPowerOfTwo(o.width))/2;r<1||t.neighboringTiles||(t.neighboringTiles=this._getNeighboringTiles(t.tileID));const l=i?o:e.exported.getImageData(o,r),c={uid:t.uid,coord:t.tileID,source:this.id,rawImageData:l,encoding:this.encoding,padding:r};t.actor&&"expired"!==t.state||(t.actor=this.dispatcher.getActor(),t.actor.send("loadDEMTile",c,n.bind(this),void 0,!0))}}.bind(this))}_getNeighboringTiles(t){const i=t.canonical,r=Math.pow(2,i.z),n=(i.x-1+r)%r,o=0===i.x?t.wrap-1:t.wrap,s=(i.x+1+r)%r,a=i.x+1===r?t.wrap+1:t.wrap,l={};return l[new e.OverscaledTileID(t.overscaledZ,o,i.z,n,i.y).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,a,i.z,s,i.y).key]={backfilled:!1},i.y>0&&(l[new e.OverscaledTileID(t.overscaledZ,o,i.z,n,i.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,t.wrap,i.z,i.x,i.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,a,i.z,s,i.y-1).key]={backfilled:!1}),i.y+1{if(this._loaded=!0,this._pendingLoad=null,t)this.fire(new e.ErrorEvent(t));else{const t={dataType:"source",sourceDataType:this._metadataFired?"content":"metadata"};this._collectResourceTiming&&i&&i.resourceTiming&&i.resourceTiming[this.id]&&(t.resourceTiming=i.resourceTiming[this.id]),this.fire(new e.Event("data",t)),this._metadataFired=!0}this._coalesce&&(this._updateWorkerData(),this._coalesce=!1)}))}loaded(){return this._loaded}loadTile(t,i){const r=t.actor?"reloadTile":"loadTile";t.actor=this.actor,t.request=this.actor.send(r,{type:this.type,uid:t.uid,tileID:t.tileID,tileZoom:t.tileZoom,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.exported.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId},((e,n)=>(delete t.request,t.unloadVectorData(),t.aborted?i(null):e?i(e):(t.loadVectorData(n,this.map.painter,"reloadTile"===r),i(null)))),void 0,"loadTile"===r)}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.aborted=!0}unloadTile(e){e.unloadVectorData(),this.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id})}onRemove(){this._pendingLoad&&this._pendingLoad.cancel()}serialize(){return e.extend({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}},video:class extends Ce{constructor(e,t,i,r){super(e,t,i,r),this.roundZoom=!0,this.type="video",this.options=t}load(){this._loaded=!1;const t=this.options;this.urls=[];for(const i of t.urls)this.urls.push(this.map._requestManager.transformRequest(i,e.ResourceType.Source).url);e.getVideo(this.urls,((t,i)=>{this._loaded=!0,t?this.fire(new e.ErrorEvent(t)):i&&(this.video=i,this.video.loop=!0,this.video.setAttribute("playsinline",""),this.video.addEventListener("playing",(()=>{this.map.triggerRepaint()})),this.map&&this.video.play(),this._finishLoading())}))}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(t){if(this.video){const i=this.video.seekable;ti.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${this.id}`,null,`Playback for this video can be set only between the ${i.start(0)} and ${i.end(0)}-second mark.`))):this.video.currentTime=t}}getVideo(){return this.video}onAdd(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const t=this.map.painter.context,i=t.gl;this.texture?this.video.paused||(this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE),i.texSubImage2D(i.TEXTURE_2D,0,0,0,i.RGBA,i.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(t,this.video,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE),this.width=this.video.videoWidth,this.height=this.video.videoHeight),this._prepareData(t)}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}},image:Ce,canvas:class extends Ce{constructor(t,i,r,n){super(t,i,r,n),i.coordinates?Array.isArray(i.coordinates)&&4===i.coordinates.length&&!i.coordinates.some((e=>!Array.isArray(e)||2!==e.length||e.some((e=>"number"!=typeof e))))||this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'missing required property "coordinates"'))),i.animate&&"boolean"!=typeof i.animate&&this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'optional "animate" property must be a boolean value'))),i.canvas?"string"==typeof i.canvas||i.canvas instanceof e.window.HTMLCanvasElement||this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'missing required property "canvas"'))),this.options=i,this.animate=void 0===i.animate||i.animate}load(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())}getCanvas(){return this.canvas}onAdd(e){this.map=e,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),this._hasInvalidDimensions())return;if(0===Object.keys(this.tiles).length)return;const i=this.map.painter.context;this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(i,this.canvas,i.gl.RGBA,{premultiply:!0}),this._prepareData(i)}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const e of[this.canvas.width,this.canvas.height])if(isNaN(e)||e<=0)return!0;return!1}},custom:class extends e.Evented{constructor(t,i,r,n){super(),this.id=t,this.type="custom",this._dataType="raster",this._dispatcher=r,this._implementation=i,this.setEventedParent(n),this.scheme="xyz",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this._loaded=!1,this.roundZoom=!0,this._implementation||this.fire(new e.ErrorEvent(new Error(`Missing implementation for ${this.id} custom source`))),this._implementation.loadTile||this.fire(new e.ErrorEvent(new Error(`Missing loadTile implementation for ${this.id} custom source`))),this._implementation.bounds&&(this.tileBounds=new B(this._implementation.bounds,this.minzoom,this.maxzoom)),i.update=this._update.bind(this),i.clearTiles=this._clearTiles.bind(this),i.coveringTiles=this._coveringTiles.bind(this),e.extend(this,e.pick(i,["dataType","scheme","minzoom","maxzoom","tileSize","attribution","minTileCacheSize","maxTileCacheSize"]))}serialize(){return e.pick(this,["type","scheme","minzoom","maxzoom","tileSize","attribution"])}load(){this._loaded=!0,this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"}))}loaded(){return this._loaded}onAdd(t){this._map=t,this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._implementation.onAdd&&this._implementation.onAdd(t),this.load()}onRemove(e){this._implementation.onRemove&&this._implementation.onRemove(e)}hasTile(e){if(this._implementation.hasTile){const{x:t,y:i,z:r}=e.canonical;return this._implementation.hasTile({x:t,y:i,z:r})}return!this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(t,i){const{x:r,y:n,z:o}=t.tileID.canonical,s=new e.window.AbortController;t.request=Promise.resolve(this._implementation.loadTile({x:r,y:n,z:o},{signal:s.signal})).then(function(r){return delete t.request,t.aborted?(t.state="unloaded",i(null)):void 0===r?(t.state="errored",i(null)):null===r?(this.loadTileData(t,{width:this.tileSize,height:this.tileSize,data:null}),t.state="loaded",i(null)):function(t){return t instanceof e.window.ImageData||t instanceof e.window.HTMLCanvasElement||t instanceof e.window.ImageBitmap||t instanceof e.window.HTMLImageElement}(r)?(this.loadTileData(t,r),t.state="loaded",void i(null)):(t.state="errored",i(new Error(`Can't infer data type for ${this.id}, only raster data supported at the moment`)))}.bind(this)).catch((e=>{20!==e.code&&(t.state="errored",i(e))})),t.request.cancel=()=>s.abort()}loadTileData(e,t){Se.loadTileData(e,t,this._map.painter)}unloadTileData(e){Se.unloadTileData(e,this._map.painter)}unloadTile(e,t){if(this.unloadTileData(e),this._implementation.unloadTile){const{x:t,y:i,z:r}=e.tileID.canonical;this._implementation.unloadTile({x:t,y:i,z:r})}t()}abortTile(e,t){e.request&&e.request.cancel&&(e.request.cancel(),delete e.request),t()}hasTransition(){return!1}_coveringTiles(){return this._map.transform.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,roundZoom:this.roundZoom}).map((e=>({x:e.canonical.x,y:e.canonical.y,z:e.canonical.z})))}_clearTiles(){this._map.style._clearSource(this.id)}_update(){this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"}))}}},Ie=function(t,i,r,n){const o=new ke[i.type](t,i,r,n);if(o.id!==t)throw new Error(`Expected Source id to be ${t} instead of ${o.id}`);return e.bindAll(["load","abort","unload","serialize","prepare"],o),o};function Pe(t,i){const r=e.identity([]);return e.scale(r,r,[.5*t.width,.5*-t.height,1]),e.translate(r,r,[1,-1,0]),e.multiply(r,r,t.calculateProjMatrix(i.toUnwrapped())),Float32Array.from(r)}function ze(e,t,i,r,n,o,s,a=!1){const l=e.tilesIn(r,s,a);l.sort(De);const c=[];for(const r of l)c.push({wrappedTileID:r.tile.tileID.wrapped().key,queryResults:r.tile.queryRenderedFeatures(t,i,e._state,r,n,o,Pe(e.transform,r.tile.tileID),a)});const h=function(e){const t={},i={};for(const r of e){const e=r.queryResults,n=r.wrappedTileID,o=i[n]=i[n]||{};for(const i in e){const r=e[i],n=o[i]=o[i]||{},s=t[i]=t[i]||[];for(const e of r)n[e.featureIndex]||(n[e.featureIndex]=!0,s.push(e))}}return t}(c);for(const t in h)h[t].forEach((t=>{const i=t.feature,r=i.layer;r&&"background"!==r.type&&"sky"!==r.type&&(i.source=r.source,r["source-layer"]&&(i.sourceLayer=r["source-layer"]),i.state=void 0!==i.id?e.getFeatureState(r["source-layer"],i.id):{})}));return h}function Le(e,t){const i=e.getRenderableIds().map((t=>e.getTileByID(t))),r=[],n={};for(let e=0;e{e.terminate()})),this.workers=null)}isPreloaded(){return!!this.active[Be]}numActive(){return Object.keys(this.active).length}}let Fe;function je(){return Fe||(Fe=new Oe),Fe}function Ue(t,i){const r={};for(const e in t)"ref"!==e&&(r[e]=t[e]);return e.refProperties.forEach((e=>{e in i&&(r[e]=i[e])})),r}function Ne(e){e=e.slice();const t=Object.create(null);for(let i=0;i0?(n-s)/a:0;return this.points[o].mult(1-l).add(this.points[i].mult(l))}}class Ye{constructor(e,t,i){const r=this.boxCells=[],n=this.circleCells=[];this.xCellCount=Math.ceil(e/i),this.yCellCount=Math.ceil(t/i);for(let e=0;ethis.width||r<0||t>this.height)return!n&&[];const s=[];if(e<=0&&t<=0&&this.width<=i&&this.height<=r){if(n)return!0;for(let e=0;e0:s}_queryCircle(e,t,i,r,n){const o=e-i,s=e+i,a=t-i,l=t+i;if(s<0||o>this.width||l<0||a>this.height)return!r&&[];const c=[];return this._forEachCell(o,a,s,l,this._queryCellCircle,c,{hitTest:r,circle:{x:e,y:t,radius:i},seenUids:{box:{},circle:{}}},n),r?c.length>0:c}query(e,t,i,r,n){return this._query(e,t,i,r,!1,n)}hitTest(e,t,i,r,n){return this._query(e,t,i,r,!0,n)}hitTestCircle(e,t,i,r){return this._queryCircle(e,t,i,!0,r)}_queryCell(e,t,i,r,n,o,s,a){const l=s.seenUids,c=this.boxCells[n];if(null!==c){const n=this.bboxes;for(const h of c)if(!l.box[h]){l.box[h]=!0;const c=4*h;if(e<=n[c+2]&&t<=n[c+3]&&i>=n[c+0]&&r>=n[c+1]&&(!a||a(this.boxKeys[h]))){if(s.hitTest)return o.push(!0),!0;o.push({key:this.boxKeys[h],x1:n[c],y1:n[c+1],x2:n[c+2],y2:n[c+3]})}}}const h=this.circleCells[n];if(null!==h){const n=this.circles;for(const c of h)if(!l.circle[c]){l.circle[c]=!0;const h=3*c;if(this._circleAndRectCollide(n[h],n[h+1],n[h+2],e,t,i,r)&&(!a||a(this.circleKeys[c]))){if(s.hitTest)return o.push(!0),!0;{const e=n[h],t=n[h+1],i=n[h+2];o.push({key:this.circleKeys[c],x1:e-i,y1:t-i,x2:e+i,y2:t+i})}}}}}_queryCellCircle(e,t,i,r,n,o,s,a){const l=s.circle,c=s.seenUids,h=this.boxCells[n];if(null!==h){const e=this.bboxes;for(const t of h)if(!c.box[t]){c.box[t]=!0;const i=4*t;if(this._circleAndRectCollide(l.x,l.y,l.radius,e[i+0],e[i+1],e[i+2],e[i+3])&&(!a||a(this.boxKeys[t])))return o.push(!0),!0}}const u=this.circleCells[n];if(null!==u){const e=this.circles;for(const t of u)if(!c.circle[t]){c.circle[t]=!0;const i=3*t;if(this._circlesCollide(e[i],e[i+1],e[i+2],l.x,l.y,l.radius)&&(!a||a(this.circleKeys[t])))return o.push(!0),!0}}}_forEachCell(e,t,i,r,n,o,s,a){const l=this._convertToXCellCoord(e),c=this._convertToYCellCoord(t),h=this._convertToXCellCoord(i),u=this._convertToYCellCoord(r);for(let d=l;d<=h;d++)for(let l=c;l<=u;l++)if(n.call(this,e,t,i,r,this.xCellCount*l+d,o,s,a))return}_convertToXCellCoord(e){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(e*this.xScale)))}_convertToYCellCoord(e){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(e*this.yScale)))}_circlesCollide(e,t,i,r,n,o){const s=r-e,a=n-t,l=i+o;return l*l>s*s+a*a}_circleAndRectCollide(e,t,i,r,n,o,s){const a=(o-r)/2,l=Math.abs(e-(r+a));if(l>a+i)return!1;const c=(s-n)/2,h=Math.abs(t-(n+c));if(h>c+i)return!1;if(l<=a||h<=c)return!0;const u=l-a,d=h-c;return u*u+d*d<=i*i}}const Je={unknown:0,flipRequired:1,flipNotRequired:2},Qe=Math.tan(85*Math.PI/180);function et(t,i,r,n,o,s,a){const l=e.create();if(r)if("globe"===s.name){const t=e.calculateGlobeLabelMatrix(o,i);e.multiply(l,l,t)}else{const t=y([],a);l[0]=t[0],l[1]=t[1],l[4]=t[2],l[5]=t[3],n||e.rotateZ(l,l,o.angle)}else e.multiply(l,o.labelPlaneMatrix,t);return l}function tt(e,t,i,r,n,o,s){const a=et(e,t,i,r,n,o,s);return"globe"===o.name&&i||(a[2]=a[6]=a[10]=a[14]=0),a}function it(t,i,r,n,o,s,a){if(r){if("globe"===s.name){const l=et(t,i,r,n,o,s,a);return e.invert(l,l),e.multiply(l,t,l),l}{const i=e.clone(t),r=e.identity([]);return r[0]=a[0],r[1]=a[1],r[4]=a[2],r[5]=a[3],e.multiply(i,i,r),n||e.rotateZ(i,i,-o.angle),i}}return o.glCoordMatrix}function rt(t,i,r,n){const o=[t,i,r,1];r?e.transformMat4$1(o,o,n):ft(o,o,n);const s=o[3];return o[0]/=s,o[1]/=s,o[2]/=s,o}function nt(e,t){return Math.min(.5+e/t*.5,1.5)}function ot(e,t){const i=e[0]/e[3],r=e[1]/e[3];return i>=-t[0]&&i<=t[0]&&r>=-t[1]&&r<=t[1]}function st(t,i,r,n,o,s,a,l,c,h){const u=r.transform,d=n?t.textSizeData:t.iconSizeData,p=e.evaluateSizeForZoom(d,r.transform.zoom),f="globe"===u.projection.name,m=[256/r.width*2+1,256/r.height*2+1],_=n?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;_.clear();let g=null;f&&(g=n?t.text.globeExtVertexArray:t.icon.globeExtVertexArray);const y=t.lineVertexArray,x=n?t.text.placedSymbolArray:t.icon.placedSymbolArray,v=r.transform.width/r.transform.height;let b,w=!1;for(let n=0;nMath.abs(r)?{useVertical:!0}:t===e.WritingMode.vertical?n>0?{needsFlipping:!0}:null:i!==Je.unknown&&function(e,t){return 0===e||Math.abs(t/e)>Qe}(r,n)?i===Je.flipRequired?{needsFlipping:!0}:null:r<0?{needsFlipping:!0}:null}function ct(t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x){const v=i/24,b=t.lineOffsetX*v,w=t.lineOffsetY*v,{lineStartIndex:T,glyphStartIndex:E,numGlyphs:A,segment:S,writingMode:M,flipState:C}=t,k=T+t.lineLength,I=t=>{if(u){const[i,r,n]=t.up,o=h.length;e.updateGlobeVertexNormal(u,o+0,i,r,n),e.updateGlobeVertexNormal(u,o+1,i,r,n),e.updateGlobeVertexNormal(u,o+2,i,r,n),e.updateGlobeVertexNormal(u,o+3,i,r,n)}const[i,r,n]=t.point;e.addDynamicAttributes(h,i,r,n,t.angle)};if(A>1){const e=at(v,l,b,w,r,d,p,t,c,s,f,_,!1,g,y,x);if(!e)return{notEnoughRoom:!0};if(n&&!r){let[i,r,n]=e.first.point,[o,s,l]=e.last.point;[i,r]=rt(i,r,n,a),[o,s]=rt(o,s,l,a);const c=lt(M,C,(o-i)*m,s-r);if(t.flipState=c&&c.needsFlipping?Je.flipRequired:Je.flipNotRequired,c)return c}I(e.first);for(let e=E+1;e0?s:ut(p,n,i,1,o,void 0,g,y.canonical),l=lt(M,C,(a[0]-i[0])*m,a[1]-i[1]);if(t.flipState=l&&l.needsFlipping?Je.flipRequired:Je.flipNotRequired,l)return l}const i=dt(v*l.getoffsetX(E),b,w,r,d,p,S,T,k,c,s,f,_,!1,!1,g,y,x);if(!i)return{notEnoughRoom:!0};I(i)}return{}}function ht(e,t,i,r,n){const{x:o,y:s,z:a}=r.projectTilePoint(e.x,e.y,t);if(!n)return rt(o,s,a,i);const[l,c,h]=n(e);return rt(o+l,s+c,a+h,i)}function ut(t,i,r,n,o,s,a,l){const c=ht(t.sub(i)._unit()._add(t),l,o,a,s);return e.sub(c,r,c),e.normalize(c,c),e.scaleAndAdd(c,r,c,n)}function dt(t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y){const x=n?t-i:t+i;let v=x>0?1:-1,b=0;n&&(v*=-1,b=Math.PI),v<0&&(b+=Math.PI);let w=l+a+(v>0?0:1)|0,T=o,E=o,A=0,S=0;const M=Math.abs(x),C=[],k=[];let I=s,P=I;const z=()=>ut(P,I,E,M-A+1,u,p,_,g.canonical);for(;A+S<=M;){if(w+=v,w=c)return null;if(E=T,P=I,C.push(E),f&&k.push(P),I=new e.Point(h.getx(w),h.gety(w)),T=d[w],!T){const e=ht(I,g.canonical,u,_,p);T=e[3]>0?d[w]=e:z()}A+=S,S=e.distance(E,T)}m&&p&&(d[w]&&(T=z(),S=e.distance(E,T)),d[w]=T);const L=(M-A)/S,D=I.sub(P)._mult(L)._add(P),R=e.sub([],T,E),B=e.scaleAndAdd([],E,R,L);let O=[0,0,1],F=R[0],j=R[1];if(y&&(O=_.upVector(g.canonical,D.x,D.y),0!==O[0]||0!==O[1]||1!==O[2])){const t=[O[2],0,-O[0]],i=e.cross([],O,t);e.normalize(t,t),e.normalize(i,i),F=e.dot(R,t),j=e.dot(R,i)}if(r){const t=e.cross([],O,R);e.normalize(t,t),e.scaleAndAdd(B,B,t,r*v)}const U=b+Math.atan2(j,F);return C.push(B),f&&k.push(D),{point:B,angle:U,path:C,tilePath:k,up:O}}function pt(e,t){const i=t.length,r=i+4*e;t.resize(r),t.float32.fill(-1/0,4*i,4*r)}function ft(e,t,i){const r=t[0],n=t[1];return e[0]=i[0]*r+i[4]*n+i[12],e[1]=i[1]*r+i[5]*n+i[13],e[3]=i[3]*r+i[7]*n+i[15],e}const mt=100;class _t{constructor(e,t,i=new Ye(e.width+200,e.height+200,25),r=new Ye(e.width+200,e.height+200,25)){this.transform=e,this.grid=i,this.ignoredGrid=r,this.pitchfactor=Math.cos(e._pitch)*e.cameraToCenterDistance,this.screenRightBoundary=e.width+mt,this.screenBottomBoundary=e.height+mt,this.gridRightBoundary=e.width+200,this.gridBottomBoundary=e.height+200,this.fogState=t}placeCollisionBox(e,t,i,r,n,o,s,a){let l=i.projectedAnchorX,c=i.projectedAnchorY,h=i.projectedAnchorZ;const u=i.elevation,d=i.tileID,p=e.getProjection();if(u&&d){const[e,t,r]=p.upVector(d.canonical,i.tileAnchorX,i.tileAnchorY),n=p.upVectorScale(d.canonical,this.transform.center.lat,this.transform.worldSize).metersToTile;l+=e*u*n,c+=t*u*n,h+=r*u*n}const f=this.projectAndGetPerspectiveRatio(s,l,c,h,i.tileID,"globe"===p.name||!!u||this.transform.pitch>0,p),m=o*f.perspectiveRatio,_=(i.x1*t+r.x-i.padding)*m+f.point.x,g=(i.y1*t+r.y-i.padding)*m+f.point.y,y=(i.x2*t+r.x+i.padding)*m+f.point.x,x=(i.y2*t+r.y+i.padding)*m+f.point.y,v=f.perspectiveRatio<=.55||f.occluded;return!this.isInsideGrid(_,g,y,x)||!n&&this.grid.hitTest(_,g,y,x,a)||v?{box:[],offscreen:!1,occluded:f.occluded}:{box:[_,g,y,x],offscreen:this.isOffscreen(_,g,y,x),occluded:!1}}placeCollisionCircles(t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){const _=[],g=this.transform.elevation,y=t.getProjection(),x=g?g.getAtTileOffsetFunc(m,this.transform.center.lat,this.transform.worldSize,y):null,v=new e.Point(r.tileAnchorX,r.tileAnchorY);let{x:b,y:w,z:T}=y.projectTilePoint(v.x,v.y,m.canonical);if(x){const[e,t,i]=x(v);b+=e,w+=t,T+=i}const E="globe"===y.name,A=this.projectAndGetPerspectiveRatio(a,b,w,T,m,E||!!g||this.transform.pitch>0,y),{perspectiveRatio:S}=A,M=(u?s/S:s*S)/e.ONE_EM,C=rt(b,w,T,l),k=A.signedDistanceFromCamera>0?at(M,o,r.lineOffsetX*M,r.lineOffsetY*M,!1,C,v,r,n,l,{},g&&!u?x:null,u&&!!g,y,m,u):null;let I=!1,P=!1,z=!0;if(k&&!A.occluded){const t=.5*p*S+f,r=new e.Point(-100,-100),n=new e.Point(this.screenRightBoundary,this.screenBottomBoundary),o=new Ke,{first:s,last:a}=k,l=s.path.length;let u=[];for(let e=l-1;e>=1;e--)u.push(s.path[e]);for(let e=1;e(x&&!E&&(i=x(re[3]<=0))&&(u=[]));let g=[];if(u.length>0){let t=1/0,i=-1/0,o=1/0,s=-1/0;for(const e of u)t=Math.min(t,e[0]),o=Math.min(o,e[1]),i=Math.max(i,e[0]),s=Math.max(s,e[1]);i>=r.x&&t<=n.x&&s>=r.y&&o<=n.y&&(g=[u.map((t=>new e.Point(t[0],t[1])))],(tn.x||on.y)&&(g=e.clipLine(g,r.x,r.y,n.x,n.y)))}for(const e of g){o.reset(e,.25*t);let r=0;r=o.length<=.5*t?1:Math.ceil(o.paddedLength/m)+1;for(let e=0;e0){if(e.transformMat4$1(l,l,t),this.fogState&&o&&"globe"!==a.name){const t=function(t,i,r,n,o,s){const a=s.calculateFogTileMatrix(o),l=[i,r,n];return e.transformMat4(l,l,a),A(t,l,s.pitch,s._fov)}(this.fogState,i,r,n,o.toUnwrapped(),this.transform);c=t>.9}}else ft(l,l,t);const h=l[3];return{point:new e.Point((l[0]/h+1)/2*this.transform.width+mt,(-l[1]/h+1)/2*this.transform.height+mt),perspectiveRatio:Math.min(.5+this.transform.getCameraToCenterDistance(a)/h*.5,1.5),signedDistanceFromCamera:h,occluded:s&&l[2]>h||c}}isOffscreen(e,t,i,r){return i=this.screenRightBoundary||rthis.screenBottomBoundary}isInsideGrid(e,t,i,r){return i>=0&&e=0&&te.collisionGroupID===t}}return this.collisionGroups[e]}}function St(t,i,r,n,o){const{horizontalAlign:s,verticalAlign:a}=e.getAnchorAlignment(t),l=-(s-.5)*i,c=-(a-.5)*r,h=e.evaluateVariableOffset(t,n);return new e.Point(l+h[0]*o,c+h[1]*o)}function Mt(t,i,r,n,o){const s=new e.Point(t,i);return r&&s._rotate(n?o:-o),s}class Ct{constructor(e,t,i,r,n){this.transform=e.clone(),this.projection=e.projection.name,this.collisionIndex=new _t(this.transform,n),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=t,this.retainedQueryData={},this.collisionGroups=new At(i),this.collisionCircleArrays={},this.prevPlacement=r,r&&(r.prevPlacement=void 0),this.placedOrientations={}}getBucketParts(t,i,r,n){const o=r.getBucket(i),s=r.latestFeatureIndex;if(!o||!s||i.id!==o.layerIds[0])return;const a=o.layers[0].layout,l=r.collisionBoxArray,c=Math.pow(2,this.transform.zoom-r.tileID.overscaledZ),h=r.tileSize/e.EXTENT,u=r.tileID.toUnwrapped();this.transform.setProjection(o.projection);const d=(p=r.tileID,f=o.getProjection(),m=this.transform,f.name===this.projection?m.calculateProjMatrix(p.toUnwrapped()):gt(m,f,p));var p,f,m;const _="map"===a.get("text-pitch-alignment"),g="map"===a.get("text-rotation-alignment");i.compileFilter();const y=i.dynamicFilter(),x=i.dynamicFilterNeedsFeature(),v=this.transform.calculatePixelsToTileUnitsMatrix(r),b=tt(d,r.tileID.canonical,_,g,this.transform,o.getProjection(),v);let w=null;if(_){const t=it(d,r.tileID.canonical,_,g,this.transform,o.getProjection(),v);w=e.multiply([],this.transform.labelPlaneMatrix,t)}let T=null;y&&r.latestFeatureIndex&&(T={unwrappedTileID:u,dynamicFilter:y,dynamicFilterNeedsFeature:x,featureIndex:r.latestFeatureIndex}),this.retainedQueryData[o.bucketInstanceId]=new Et(o.bucketInstanceId,s,o.sourceLayerIndex,o.index,r.tileID);const E={bucket:o,layout:a,posMatrix:d,textLabelPlaneMatrix:b,labelToScreenMatrix:w,clippingData:T,scale:c,textPixelRatio:h,holdingForFade:r.holdingForFade(),collisionBoxArray:l,partiallyEvaluatedTextSize:e.evaluateSizeForZoom(o.textSizeData,this.transform.zoom),partiallyEvaluatedIconSize:e.evaluateSizeForZoom(o.iconSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(o.sourceID)};if(n)for(const e of o.sortKeyRanges){const{sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n}=e;t.push({sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n,parameters:E})}else t.push({symbolInstanceStart:0,symbolInstanceEnd:o.symbolInstances.length,parameters:E})}attemptAnchorPlacement(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g){const{textOffset0:y,textOffset1:x,crossTileID:v}=u,b=[y,x],w=St(e,i,r,b,n),T=this.collisionIndex.placeCollisionBox(p,n,t,Mt(w.x,w.y,o,s,this.transform.angle),h,a,l,c.predicate);if(m){const e=p.getSymbolInstanceIconSize(g,this.transform.zoom,u.placedIconSymbolIndex);if(0===this.collisionIndex.placeCollisionBox(p,e,m,Mt(w.x,w.y,o,s,this.transform.angle),h,a,l,c.predicate).box.length)return}if(T.box.length>0){let t;return this.prevPlacement&&this.prevPlacement.variableOffsets[v]&&this.prevPlacement.placements[v]&&this.prevPlacement.placements[v].text&&(t=this.prevPlacement.variableOffsets[v].anchor),this.variableOffsets[v]={textOffset:b,width:i,height:r,anchor:e,textScale:n,prevAnchor:t},this.markUsedJustification(p,e,u,f),p.allowVerticalPlacement&&(this.markUsedOrientation(p,f,u),this.placedOrientations[v]=f),{shift:w,placedGlyphBoxes:T}}}placeLayerBucketPart(t,i,r,n){const{bucket:o,layout:s,posMatrix:a,textLabelPlaneMatrix:l,labelToScreenMatrix:c,clippingData:h,textPixelRatio:u,holdingForFade:d,collisionBoxArray:p,partiallyEvaluatedTextSize:f,partiallyEvaluatedIconSize:m,collisionGroup:_}=t.parameters,g=s.get("text-optional"),y=s.get("icon-optional"),x=s.get("text-allow-overlap"),v=s.get("icon-allow-overlap"),b="map"===s.get("text-rotation-alignment"),w="map"===s.get("text-pitch-alignment"),T="none"!==s.get("icon-text-fit"),E="viewport-y"===s.get("symbol-z-order");this.transform.setProjection(o.projection);let A=x&&(v||!o.hasIconData()||y),S=v&&(x||!o.hasTextData()||g);!o.collisionArrays&&p&&o.deserializeCollisionBoxes(p),r&&n&&o.updateCollisionDebugBuffers(this.transform.zoom,p);const M=(t,n,p)=>{const{crossTileID:E,numVerticalGlyphVertices:M}=t;if(h){const r={zoom:this.transform.zoom,pitch:this.transform.pitch};let n=null;if(h.dynamicFilterNeedsFeature){const e=this.retainedQueryData[o.bucketInstanceId];n=h.featureIndex.loadFeature({featureIndex:t.featureIndex,bucketIndex:e.bucketIndex,sourceLayerIndex:e.sourceLayerIndex,layoutVertexArrayOffset:0})}if(!(0,h.dynamicFilter)(r,n,this.retainedQueryData[o.bucketInstanceId].tileID.canonical,new e.Point(t.tileAnchorX,t.tileAnchorY),this.transform.calculateDistanceTileData(h.unwrappedTileID)))return this.placements[E]=new wt(!1,!1,!1,!0),void i.add(E)}if(i.has(E))return;if(d)return void(this.placements[E]=new wt(!1,!1,!1));let C=!1,k=!1,I=!0,P=!1,z=!1,L=null,D={box:null,offscreen:null,occluded:null},R={box:null,offscreen:null,occluded:null},B=null,O=null,F=null,j=0,U=0,N=0;p.textFeatureIndex?j=p.textFeatureIndex:t.useRuntimeCollisionCircles&&(j=t.featureIndex),p.verticalTextFeatureIndex&&(U=p.verticalTextFeatureIndex);const V=e=>{e.tileID=this.retainedQueryData[o.bucketInstanceId].tileID;const t=this.transform.elevation;(t||e.elevation)&&(e.elevation=t?t.getAtTileOffset(e.tileID,e.tileAnchorX,e.tileAnchorY):0)},$=p.textBox;if($){V($);const i=i=>{let r=e.WritingMode.horizontal;if(o.allowVerticalPlacement&&!i&&this.prevPlacement){const e=this.prevPlacement.placedOrientations[E];e&&(this.placedOrientations[E]=e,r=e,this.markUsedOrientation(o,r,t))}return r},r=(t,i)=>{if(o.allowVerticalPlacement&&M>0&&p.verticalTextBox){for(const r of o.writingModes)if(r===e.WritingMode.vertical?(D=i(),R=D):D=t(),D&&D.box&&D.box.length)break}else D=t()};if(s.get("text-variable-anchor")){let l=s.get("text-variable-anchor");if(this.prevPlacement&&this.prevPlacement.variableOffsets[E]){const e=this.prevPlacement.variableOffsets[E];l.indexOf(e.anchor)>0&&(l=l.filter((t=>t!==e.anchor)),l.unshift(e.anchor))}const c=(e,i,r)=>{const s=o.getSymbolInstanceTextSize(f,t,this.transform.zoom,n),c=(e.x2-e.x1)*s+2*e.padding,h=(e.y2-e.y1)*s+2*e.padding,d=T&&!v?i:null;d&&V(d);let p={box:[],offscreen:!1,occluded:!1};const g=x?2*l.length:l.length;for(let i=0;i=l.length,t,n,o,r,d,f,m);if(g&&(p=g.placedGlyphBoxes,p&&p.box&&p.box.length)){C=!0,L=g.shift;break}}return p};r((()=>c($,p.iconBox,e.WritingMode.horizontal)),(()=>{const t=p.verticalTextBox;return t&&V(t),o.allowVerticalPlacement&&!(D&&D.box&&D.box.length)&&M>0&&t?c(t,p.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null,occluded:null}})),D&&(C=D.box,I=D.offscreen,P=D.occluded);const h=i(!(!D||!D.box));if(!C&&this.prevPlacement){const e=this.prevPlacement.variableOffsets[E];e&&(this.variableOffsets[E]=e,this.markUsedJustification(o,e.anchor,t,h))}}else{const s=(i,r)=>{const s=o.getSymbolInstanceTextSize(f,t,this.transform.zoom,n),l=this.collisionIndex.placeCollisionBox(o,s,i,new e.Point(0,0),x,u,a,_.predicate);return l&&l.box&&l.box.length&&(this.markUsedOrientation(o,r,t),this.placedOrientations[E]=r),l};r((()=>s($,e.WritingMode.horizontal)),(()=>{const t=p.verticalTextBox;return o.allowVerticalPlacement&&M>0&&t?(V(t),s(t,e.WritingMode.vertical)):{box:null,offscreen:null,occluded:null}})),i(!!(D&&D.box&&D.box.length))}}if(B=D,C=B&&B.box&&B.box.length>0,I=B&&B.offscreen,P=B&&B.occluded,t.useRuntimeCollisionCircles){const i=o.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex>=0?t.centerJustifiedTextSymbolIndex:t.verticalPlacedTextSymbolIndex),n=e.evaluateSizeForFeature(o.textSizeData,f,i),h=s.get("text-padding");O=this.collisionIndex.placeCollisionCircles(o,x,i,o.lineVertexArray,o.glyphOffsetArray,n,a,l,c,r,w,_.predicate,t.collisionCircleDiameter*n/e.ONE_EM,h,this.retainedQueryData[o.bucketInstanceId].tileID),C=x||O.circles.length>0&&!O.collisionDetected,I=I&&O.offscreen,P=O.occluded}if(p.iconFeatureIndex&&(N=p.iconFeatureIndex),p.iconBox){const i=i=>{V(i);const r=T&&L?Mt(L.x,L.y,b,w,this.transform.angle):new e.Point(0,0),n=o.getSymbolInstanceIconSize(m,this.transform.zoom,t.placedIconSymbolIndex);return this.collisionIndex.placeCollisionBox(o,n,i,r,v,u,a,_.predicate)};R&&R.box&&R.box.length&&p.verticalIconBox?(F=i(p.verticalIconBox),k=F.box.length>0):(F=i(p.iconBox),k=F.box.length>0),I=I&&F.offscreen,z=F.occluded}const G=g||0===t.numHorizontalGlyphVertices&&0===M,q=y||0===t.numIconVertices;if(G||q?q?G||(k=k&&C):C=k&&C:k=C=k&&C,C&&B&&B.box&&this.collisionIndex.insertCollisionBox(B.box,s.get("text-ignore-placement"),o.bucketInstanceId,R&&R.box&&U?U:j,_.ID),k&&F&&this.collisionIndex.insertCollisionBox(F.box,s.get("icon-ignore-placement"),o.bucketInstanceId,N,_.ID),O&&(C&&this.collisionIndex.insertCollisionCircles(O.circles,s.get("text-ignore-placement"),o.bucketInstanceId,j,_.ID),r)){const e=o.bucketInstanceId;let t=this.collisionCircleArrays[e];void 0===t&&(t=this.collisionCircleArrays[e]=new Tt);for(let e=0;e=0;--t){const i=e[t];M(o.symbolInstances.get(i),i,o.collisionArrays[i])}}else for(let e=t.symbolInstanceStart;e=0&&(t.text.placedSymbolArray.get(o).crossTileID=u>=0&&o!==u?0:c),s>=0&&(t.text.placedSymbolArray.get(s).crossTileID=u>=0&&s!==u?0:c),a>=0&&(t.text.placedSymbolArray.get(a).crossTileID=u>=0&&a!==u?0:c),l>=0&&(t.text.placedSymbolArray.get(l).crossTileID=u>=0&&l!==u?0:c)}markUsedOrientation(t,i,r){const n=i===e.WritingMode.horizontal||i===e.WritingMode.horizontalOnly?i:0,o=i===e.WritingMode.vertical?i:0,{leftJustifiedTextSymbolIndex:s,centerJustifiedTextSymbolIndex:a,rightJustifiedTextSymbolIndex:l,verticalPlacedTextSymbolIndex:c}=r,h=t.text.placedSymbolArray;s>=0&&(h.get(s).placedOrientation=n),a>=0&&(h.get(a).placedOrientation=n),l>=0&&(h.get(l).placedOrientation=n),c>=0&&(h.get(c).placedOrientation=o)}commit(e){this.commitTime=e,this.zoomAtLastRecencyCheck=this.transform.zoom;const t=this.prevPlacement;let i=!1;this.prevZoomAdjustment=t?t.zoomAdjustment(this.transform.zoom):0;const r=t?t.symbolFadeChange(e):1,n=t?t.opacities:{},o=t?t.variableOffsets:{},s=t?t.placedOrientations:{};for(const e in this.placements){const t=this.placements[e],o=n[e];o?(this.opacities[e]=new bt(o,r,t.text,t.icon,null,t.clipped),i=i||t.text!==o.text.placed||t.icon!==o.icon.placed):(this.opacities[e]=new bt(null,r,t.text,t.icon,t.skipFade,t.clipped),i=i||t.text||t.icon)}for(const e in n){const t=n[e];if(!this.opacities[e]){const n=new bt(t,r,!1,!1);n.isHidden()||(this.opacities[e]=n,i=i||t.text.placed||t.icon.placed)}}for(const e in o)this.variableOffsets[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.variableOffsets[e]=o[e]);for(const e in s)this.placedOrientations[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.placedOrientations[e]=s[e]);i?this.lastPlacementChangeTime=e:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=t?t.lastPlacementChangeTime:e)}updateLayerOpacities(e,t){const i=new Set;for(const r of t){const t=r.getBucket(e);t&&r.latestFeatureIndex&&e.id===t.layerIds[0]&&this.updateBucketOpacities(t,i,r.collisionBoxArray)}}updateBucketOpacities(t,i,r){t.hasTextData()&&t.text.opacityVertexArray.clear(),t.hasIconData()&&t.icon.opacityVertexArray.clear(),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexArray.clear(),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexArray.clear();const n=t.layers[0].layout,o=!!t.layers[0].dynamicFilter(),s=new bt(null,0,!1,!1,!0),a=n.get("text-allow-overlap"),l=n.get("icon-allow-overlap"),c=n.get("text-variable-anchor"),h="map"===n.get("text-rotation-alignment"),u="map"===n.get("text-pitch-alignment"),d="none"!==n.get("icon-text-fit"),p=new bt(null,0,a&&(l||!t.hasIconData()||n.get("icon-optional")),l&&(a||!t.hasTextData()||n.get("text-optional")),!0);!t.collisionArrays&&r&&(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData())&&t.deserializeCollisionBoxes(r);const f=(e,t,i)=>{for(let r=0;r0||l>0,b=g>0,w=this.placedOrientations[_],T=w===e.WritingMode.vertical,E=w===e.WritingMode.horizontal||w===e.WritingMode.horizontalOnly;if(!v&&!b||x.isHidden()||m++,v){const e=Ot(x.text);f(t.text,a,T?Ft:e),f(t.text,l,E?Ft:e);const i=x.text.isHidden(),{leftJustifiedTextSymbolIndex:r,centerJustifiedTextSymbolIndex:o,rightJustifiedTextSymbolIndex:s,verticalPlacedTextSymbolIndex:c}=n,h=t.text.placedSymbolArray,u=i||T?1:0;r>=0&&(h.get(r).hidden=u),o>=0&&(h.get(o).hidden=u),s>=0&&(h.get(s).hidden=u),c>=0&&(h.get(c).hidden=i||E?1:0);const d=this.variableOffsets[_];d&&this.markUsedJustification(t,d.anchor,n,w);const p=this.placedOrientations[_];p&&(this.markUsedJustification(t,"left",n,p),this.markUsedOrientation(t,p,n))}if(b){const e=Ot(x.icon),{placedIconSymbolIndex:i,verticalPlacedIconSymbolIndex:r}=n,o=t.icon.placedSymbolArray,s=x.icon.isHidden()?1:0;i>=0&&(f(t.icon,g,T?Ft:e),o.get(i).hidden=s),r>=0&&(f(t.icon,n.numVerticalIconVertices,E?Ft:e),o.get(r).hidden=s)}if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){const i=t.collisionArrays[r];if(i){let r=new e.Point(0,0),n=!0;if(i.textBox||i.verticalTextBox){if(c){const e=this.variableOffsets[_];e?(r=St(e.anchor,e.width,e.height,e.textOffset,e.textScale),h&&r._rotate(u?this.transform.angle:-this.transform.angle)):n=!1}o&&(n=!x.clipped),i.textBox&&kt(t.textCollisionBox.collisionVertexArray,x.text.placed,!n||T,r.x,r.y),i.verticalTextBox&&kt(t.textCollisionBox.collisionVertexArray,x.text.placed,!n||E,r.x,r.y)}const s=n&&Boolean(!E&&i.verticalIconBox);i.iconBox&&kt(t.iconCollisionBox.collisionVertexArray,x.icon.placed,s,d?r.x:0,d?r.y:0),i.verticalIconBox&&kt(t.iconCollisionBox.collisionVertexArray,x.icon.placed,!s,d?r.x:0,d?r.y:0)}}}if(t.fullyClipped=0===m,t.sortFeatures(this.transform.angle),this.retainedQueryData[t.bucketInstanceId]&&(this.retainedQueryData[t.bucketInstanceId].featureSortOrder=t.featureSortOrder),t.hasTextData()&&t.text.opacityVertexBuffer&&t.text.opacityVertexBuffer.updateData(t.text.opacityVertexArray),t.hasIconData()&&t.icon.opacityVertexBuffer&&t.icon.opacityVertexBuffer.updateData(t.icon.opacityVertexArray),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexBuffer&&t.iconCollisionBox.collisionVertexBuffer.updateData(t.iconCollisionBox.collisionVertexArray),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexBuffer&&t.textCollisionBox.collisionVertexBuffer.updateData(t.textCollisionBox.collisionVertexArray),t.bucketInstanceId in this.collisionCircleArrays){const e=this.collisionCircleArrays[t.bucketInstanceId];t.placementInvProjMatrix=e.invProjMatrix,t.placementViewportMatrix=e.viewportMatrix,t.collisionCircleArray=e.circles,delete this.collisionCircleArrays[t.bucketInstanceId]}}symbolFadeChange(e){return 0===this.fadeDuration?1:(e-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(e){return Math.max(0,(this.transform.zoom-e)/1.5)}hasTransitions(e){return this.stale||e-this.lastPlacementChangeTimee}setStale(){this.stale=!0}}function kt(e,t,i,r,n){e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0)}const It=Math.pow(2,25),Pt=Math.pow(2,24),zt=Math.pow(2,17),Lt=Math.pow(2,16),Dt=Math.pow(2,9),Rt=Math.pow(2,8),Bt=Math.pow(2,1);function Ot(e){if(0===e.opacity&&!e.placed)return 0;if(1===e.opacity&&e.placed)return 4294967295;const t=e.placed?1:0,i=Math.floor(127*e.opacity);return i*It+t*Pt+i*zt+t*Lt+i*Dt+t*Rt+i*Bt+t}const Ft=0;class jt{constructor(e){this._sortAcrossTiles="viewport-y"!==e.layout.get("symbol-z-order")&&void 0!==e.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs=new Set,this._bucketParts=[]}continuePlacement(e,t,i,r,n){const o=this._bucketParts;for(;this._currentTileIndexe.sortKey-t.sortKey)));this._currentPartIndex{const t=e.exported.now()-n;return!this._forceFullPlacement&&t>2};for(;this._currentPlacementIndex>=0;){const e=i[t[this._currentPlacementIndex]],n=this.placement.collisionIndex.transform.zoom;if("symbol"===e.type&&(!e.minzoom||e.minzoom<=n)&&(!e.maxzoom||e.maxzoom>n)){if(this._inProgressLayer||(this._inProgressLayer=new jt(e)),this._inProgressLayer.continuePlacement(r[e.source],this.placement,this._showCollisionBoxes,e,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(e){return this.placement.commit(e),this.placement}}const Nt=512/e.EXTENT/2;class Vt{constructor(t,i,r){this.tileID=t,this.bucketInstanceId=r,this.index=new e.KDBush(i.length,16,Int32Array),this.keys=[],this.crossTileIDs=[];const n=t.canonical.x*e.EXTENT,o=t.canonical.y*e.EXTENT;for(let e=0;ee.overscaledZ)for(const i in n){const o=n[i];o.tileID.isChildOf(e)&&o.findMatches(t.symbolInstances,e,r)}else{const o=n[e.scaledTo(Number(i)).key];o&&o.findMatches(t.symbolInstances,e,r)}}for(let e=0;e{t[e]=!0}));for(const e in this.layerIndexes)t[e]||delete this.layerIndexes[e]}}const Zt=(t,i)=>e.emitValidationErrors(t,i&&i.filter((e=>"source.canvas"!==e.identifier))),Wt=e.pick(Ve,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData","setTerrain","setFog","setProjection"]),Ht=e.pick(Ve,["setCenter","setZoom","setBearing","setPitch"]),Xt={version:8,layers:[],sources:{}},Kt={fill:!0,line:!0,background:!0,hillshade:!0,raster:!0};class Yt extends e.Evented{constructor(t,i={}){super(),this.map=t,this.dispatcher=new k(je(),this),this.imageManager=new v,this.imageManager.setEventedParent(this),this.glyphManager=new e.GlyphManager(t._requestManager,i.localFontFamily?e.LocalGlyphMode.all:i.localIdeographFontFamily?e.LocalGlyphMode.ideographs:e.LocalGlyphMode.none,i.localFontFamily||i.localIdeographFontFamily),this.crossTileSymbolIndex=new qt,this._layers={},this._num3DLayers=0,this._numSymbolLayers=0,this._numCircleLayers=0,this._serializedLayers={},this._sourceCaches={},this._otherSourceCaches={},this._symbolSourceCaches={},this._loaded=!1,this._availableImages=[],this._order=[],this._drapedFirstOrder=[],this._markersNeedUpdate=!1,this._resetUpdates(),this.dispatcher.broadcast("setReferrer",e.getReferrer());const r=this;this._rtlTextPluginCallback=Yt.registerForPluginStateChange((t=>{r.dispatcher.broadcast("syncRTLPluginState",{pluginStatus:t.pluginStatus,pluginURL:t.pluginURL},((t,i)=>{if(e.triggerPluginCompletionEvent(t),i&&i.every((e=>e)))for(const e in r._sourceCaches){const t=r._sourceCaches[e],i=t.getSource().type;"vector"!==i&&"geojson"!==i||t.reload()}}))})),this.on("data",(e=>{if("source"!==e.dataType||"metadata"!==e.sourceDataType)return;const t=this.getSource(e.sourceId);if(t&&t.vectorLayerIds)for(const e in this._layers){const i=this._layers[e];i.source===t.id&&this._validateLayer(i)}}))}loadURL(t,i={}){this.fire(new e.Event("dataloading",{dataType:"style"}));const r="boolean"==typeof i.validate?i.validate:!e.isMapboxURL(t);t=this.map._requestManager.normalizeStyleURL(t,i.accessToken);const n=this.map._requestManager.transformRequest(t,e.ResourceType.Style);this._request=e.getJSON(n,((t,i)=>{this._request=null,t?this.fire(new e.ErrorEvent(t)):i&&this._load(i,r)}))}loadJSON(t,i={}){this.fire(new e.Event("dataloading",{dataType:"style"})),this._request=e.exported.frame((()=>{this._request=null,this._load(t,!1!==i.validate)}))}loadEmpty(){this.fire(new e.Event("dataloading",{dataType:"style"})),this._load(Xt,!1)}_updateLayerCount(e,t){const i=t?1:-1;e.is3D()&&(this._num3DLayers+=i),"circle"===e.type&&(this._numCircleLayers+=i),"symbol"===e.type&&(this._numSymbolLayers+=i)}_load(t,i){if(i&&Zt(this,e.validateStyle(t)))return;this._loaded=!0,this.stylesheet=e.clone$1(t),this._updateMapProjection();for(const e in t.sources)this.addSource(e,t.sources[e],{validate:!1});this._changed=!1,t.sprite?this._loadSprite(t.sprite):(this.imageManager.setLoaded(!0),this.dispatcher.broadcast("spriteLoaded",!0)),this.glyphManager.setURL(t.glyphs);const r=Ne(this.stylesheet.layers);this._order=r.map((e=>e.id)),this._layers={},this._serializedLayers={};for(const t of r){const i=e.createStyleLayer(t);i.setEventedParent(this,{layer:{id:i.id}}),this._layers[i.id]=i,this._serializedLayers[i.id]=i.serialize(),this._updateLayerCount(i,!0)}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new w(this.stylesheet.light),this.stylesheet.terrain&&!this.terrainSetForDrapingOnly()&&this._createTerrain(this.stylesheet.terrain,1),this.stylesheet.fog&&this._createFog(this.stylesheet.fog),this._updateDrapeFirstLayers(),this.fire(new e.Event("data",{dataType:"style"})),this.fire(new e.Event("style.load"))}terrainSetForDrapingOnly(){return!!this.terrain&&0===this.terrain.drapeRenderMode}setProjection(e){e?this.stylesheet.projection=e:delete this.stylesheet.projection,this._updateMapProjection()}applyProjectionUpdate(){this._loaded&&(this.dispatcher.broadcast("setProjection",this.map.transform.projectionOptions),this.map.transform.projection.requiresDraping?this.getTerrain()||this.stylesheet.terrain||this.setTerrainForDraping():this.terrainSetForDrapingOnly()&&this.setTerrain(null))}_updateMapProjection(){this.map._useExplicitProjection?this.applyProjectionUpdate():this.map._prioritizeAndUpdateProjection(null,this.stylesheet.projection)}_loadSprite(t){this._spriteRequest=function(t,i,r){let n,o,s;const a=e.exported.devicePixelRatio>1?"@2x":"";let l=e.getJSON(i.transformRequest(i.normalizeSpriteURL(t,a,".json"),e.ResourceType.SpriteJSON),((e,t)=>{l=null,s||(s=e,n=t,h())})),c=e.getImage(i.transformRequest(i.normalizeSpriteURL(t,a,".png"),e.ResourceType.SpriteImage),((e,t)=>{c=null,s||(s=e,o=t,h())}));function h(){if(s)r(s);else if(n&&o){const t=e.exported.getImageData(o),i={};for(const r in n){const{width:o,height:s,x:a,y:l,sdf:c,pixelRatio:h,stretchX:u,stretchY:d,content:p}=n[r],f=new e.RGBAImage({width:o,height:s});e.RGBAImage.copy(t,f,{x:a,y:l},{x:0,y:0},{width:o,height:s}),i[r]={data:f,pixelRatio:h,sdf:c,stretchX:u,stretchY:d,content:p}}r(null,i)}}return{cancel(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null)}}}(t,this.map._requestManager,((t,i)=>{if(this._spriteRequest=null,t)this.fire(new e.ErrorEvent(t));else if(i)for(const e in i)this.imageManager.addImage(e,i[e]);this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),this.dispatcher.broadcast("setImages",this._availableImages),this.dispatcher.broadcast("spriteLoaded",!0),this.fire(new e.Event("data",{dataType:"style"}))}))}_validateLayer(t){const i=this.getSource(t.source);if(!i)return;const r=t.sourceLayer;r&&("geojson"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(r))&&this.fire(new e.ErrorEvent(new Error(`Source layer "${r}" does not exist on source "${i.id}" as specified by style layer "${t.id}"`)))}loaded(){if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(const e in this._sourceCaches)if(!this._sourceCaches[e].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeLayers(e){const t=[];for(const i of e){const e=this._layers[i];"custom"!==e.type&&t.push(e.serialize())}return t}hasTransitions(){if(this.light&&this.light.hasTransition())return!0;if(this.fog&&this.fog.hasTransition())return!0;for(const e in this._sourceCaches)if(this._sourceCaches[e].hasTransition())return!0;for(const e in this._layers)if(this._layers[e].hasTransition())return!0;return!1}get order(){return this.map._optimizeForTerrain&&this.terrain?this._drapedFirstOrder:this._order}isLayerDraped(e){return!!this.terrain&&("function"==typeof e.isLayerDraped?e.isLayerDraped():Kt[e.type])}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading")}update(t){if(!this._loaded)return;const i=this._changed;if(this._changed){const e=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(e.length||i.length)&&this._updateWorkerLayers(e,i);for(const e in this._updatedSources){const t=this._updatedSources[e];"reload"===t?this._reloadSource(e):"clear"===t&&this._clearSource(e)}this._updateTilesForChangedImages();for(const e in this._updatedPaintProps)this._layers[e].updateTransitions(t);this.light.updateTransitions(t),this.fog&&this.fog.updateTransitions(t),this._resetUpdates()}const r={};for(const e in this._sourceCaches){const t=this._sourceCaches[e];r[e]=t.used,t.used=!1}for(const e of this._order){const i=this._layers[e];if(i.recalculate(t,this._availableImages),!i.isHidden(t.zoom)){const e=this._getLayerSourceCache(i);e&&(e.used=!0)}const r=this.map.painter;if(r){const e=i.getProgramIds();if(!e)continue;const n=i.getProgramConfiguration(t.zoom);for(const t of e)r.useProgram(t,n)}}for(const t in r){const i=this._sourceCaches[t];r[t]!==i.used&&i.getSource().fire(new e.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:i.getSource().id}))}this.light.recalculate(t),this.terrain&&this.terrain.recalculate(t),this.fog&&this.fog.recalculate(t),this.z=t.zoom,this._markersNeedUpdate&&(this._updateMarkersOpacity(),this._markersNeedUpdate=!1),i&&this.fire(new e.Event("data",{dataType:"style"}))}_updateTilesForChangedImages(){const e=Object.keys(this._changedImages);if(e.length){for(const t in this._sourceCaches)this._sourceCaches[t].reloadTilesForDependencies(["icons","patterns"],e);this._changedImages={}}}_updateWorkerLayers(e,t){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(e),removedIds:t})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}}setState(i){if(this._checkLoaded(),Zt(this,e.validateStyle(i)))return!1;(i=e.clone$1(i)).layers=Ne(i.layers);const r=function(e,i){if(!e)return[{command:Ve.setStyle,args:[i]}];let r=[];try{if(!t(e.version,i.version))return[{command:Ve.setStyle,args:[i]}];t(e.center,i.center)||r.push({command:Ve.setCenter,args:[i.center]}),t(e.zoom,i.zoom)||r.push({command:Ve.setZoom,args:[i.zoom]}),t(e.bearing,i.bearing)||r.push({command:Ve.setBearing,args:[i.bearing]}),t(e.pitch,i.pitch)||r.push({command:Ve.setPitch,args:[i.pitch]}),t(e.sprite,i.sprite)||r.push({command:Ve.setSprite,args:[i.sprite]}),t(e.glyphs,i.glyphs)||r.push({command:Ve.setGlyphs,args:[i.glyphs]}),t(e.transition,i.transition)||r.push({command:Ve.setTransition,args:[i.transition]}),t(e.light,i.light)||r.push({command:Ve.setLight,args:[i.light]}),t(e.fog,i.fog)||r.push({command:Ve.setFog,args:[i.fog]}),t(e.projection,i.projection)||r.push({command:Ve.setProjection,args:[i.projection]});const n={},o=[];!function(e,i,r,n){let o;for(o in i=i||{},e=e||{})e.hasOwnProperty(o)&&(i.hasOwnProperty(o)||Ge(o,r,n));for(o in i){if(!i.hasOwnProperty(o))continue;const s=i[o];e.hasOwnProperty(o)?t(e[o],s)||("geojson"===e[o].type&&"geojson"===s.type&&Ze(e,i,o)?r.push({command:Ve.setGeoJSONSourceData,args:[o,s.data]}):qe(o,i,r,n)):$e(o,i,r)}}(e.sources,i.sources,o,n);const s=[];e.layers&&e.layers.forEach((e=>{e.source&&n[e.source]?r.push({command:Ve.removeLayer,args:[e.id]}):s.push(e)}));let a=e.terrain;a&&n[a.source]&&(r.push({command:Ve.setTerrain,args:[void 0]}),a=void 0),r=r.concat(o),t(a,i.terrain)||r.push({command:Ve.setTerrain,args:[i.terrain]}),function(e,i,r){i=i||[];const n=(e=e||[]).map(He),o=i.map(He),s=e.reduce(Xe,{}),a=i.reduce(Xe,{}),l=n.slice(),c=Object.create(null);let h,u,d,p,f,m,_;for(h=0,u=0;h!(e.command in Ht)));if(0===r.length)return!1;const n=r.filter((e=>!(e.command in Wt)));if(n.length>0)throw new Error(`Unimplemented: ${n.map((e=>e.command)).join(", ")}.`);return r.forEach((e=>{"setTransition"!==e.command&&"setProjection"!==e.command&&this[e.command].apply(this,e.args)})),this.stylesheet=i,this._updateMapProjection(),!0}addImage(t,i){return this.getImage(t)?this.fire(new e.ErrorEvent(new Error("An image with this name already exists."))):(this.imageManager.addImage(t,i),this._afterImageUpdated(t),this)}updateImage(e,t){this.imageManager.updateImage(e,t)}getImage(e){return this.imageManager.getImage(e)}removeImage(t){return this.getImage(t)?(this.imageManager.removeImage(t),this._afterImageUpdated(t),this):this.fire(new e.ErrorEvent(new Error("No image with this name exists.")))}_afterImageUpdated(t){this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new e.Event("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this._availableImages.slice()}addSource(t,i,r={}){if(this._checkLoaded(),void 0!==this.getSource(t))throw new Error("There is already a source with this ID");if(!i.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(i).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(i.type)>=0&&this._validate(e.validateSource,`sources.${t}`,i,null,r))return;this.map&&this.map._collectResourceTiming&&(i.collectResourceTiming=!0);const n=Ie(t,i,this.dispatcher,this);n.setEventedParent(this,(()=>({isSourceLoaded:this._isSourceCacheLoaded(t),source:n.serialize(),sourceId:t})));const o=i=>{const r=(i?"symbol:":"other:")+t,o=this._sourceCaches[r]=new e.SourceCache(r,n,i);(i?this._symbolSourceCaches:this._otherSourceCaches)[t]=o,o.style=this,o.onAdd(this.map)};o(!1),"vector"!==i.type&&"geojson"!==i.type||o(!0),n.onAdd&&n.onAdd(this.map),this._changed=!0}removeSource(t){this._checkLoaded();const i=this.getSource(t);if(!i)throw new Error("There is no source with this ID");for(const i in this._layers)if(this._layers[i].source===t)return this.fire(new e.ErrorEvent(new Error(`Source "${t}" cannot be removed while layer "${i}" is using it.`)));if(this.terrain&&this.terrain.get().source===t)return this.fire(new e.ErrorEvent(new Error(`Source "${t}" cannot be removed while terrain is using it.`)));const r=this._getSourceCaches(t);for(const t of r)delete this._sourceCaches[t.id],delete this._updatedSources[t.id],t.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:t.getSource().id})),t.setEventedParent(null),t.clearTiles();return delete this._otherSourceCaches[t],delete this._symbolSourceCaches[t],i.setEventedParent(null),i.onRemove&&i.onRemove(this.map),this._changed=!0,this}setGeoJSONSourceData(e,t){this._checkLoaded(),this.getSource(e).setData(t),this._changed=!0}getSource(e){const t=this._getSourceCache(e);return t&&t.getSource()}_getSources(){const e=[];for(const t in this._otherSourceCaches){const i=this._getSourceCache(t);i&&e.push(i.getSource())}return e}addLayer(t,i,r={}){this._checkLoaded();const n=t.id;if(this.getLayer(n))return void this.fire(new e.ErrorEvent(new Error(`Layer with id "${n}" already exists on this map`)));let o;if("custom"===t.type){if(Zt(this,e.validateCustomStyleLayer(t)))return;o=e.createStyleLayer(t)}else{if("object"==typeof t.source&&(this.addSource(n,t.source),t=e.clone$1(t),t=e.extend(t,{source:n})),this._validate(e.validateLayer,`layers.${n}`,t,{arrayIndex:-1},r))return;o=e.createStyleLayer(t),this._validateLayer(o),o.setEventedParent(this,{layer:{id:n}}),this._serializedLayers[o.id]=o.serialize(),this._updateLayerCount(o,!0)}const s=i?this._order.indexOf(i):this._order.length;if(i&&-1===s)return void this.fire(new e.ErrorEvent(new Error(`Layer with id "${i}" does not exist on this map.`)));this._order.splice(s,0,n),this._layerOrderChanged=!0,this._layers[n]=o;const a=this._getLayerSourceCache(o);if(this._removedLayers[n]&&o.source&&a&&"custom"!==o.type){const e=this._removedLayers[n];delete this._removedLayers[n],e.type!==o.type?this._updatedSources[o.source]="clear":(this._updatedSources[o.source]="reload",a.pause())}this._updateLayer(o),o.onAdd&&o.onAdd(this.map),this._updateDrapeFirstLayers()}moveLayer(t,i){if(this._checkLoaded(),this._changed=!0,!this._layers[t])return void this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be moved.`)));if(t===i)return;const r=this._order.indexOf(t);this._order.splice(r,1);const n=i?this._order.indexOf(i):this._order.length;i&&-1===n?this.fire(new e.ErrorEvent(new Error(`Layer with id "${i}" does not exist on this map.`))):(this._order.splice(n,0,t),this._layerOrderChanged=!0,this._updateDrapeFirstLayers())}removeLayer(t){this._checkLoaded();const i=this._layers[t];if(!i)return void this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be removed.`)));i.setEventedParent(null),this._updateLayerCount(i,!1);const r=this._order.indexOf(t);this._order.splice(r,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=i,delete this._layers[t],delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],i.onRemove&&i.onRemove(this.map),this._updateDrapeFirstLayers()}getLayer(e){return this._layers[e]}hasLayer(e){return e in this._layers}hasLayerType(e){for(const t in this._layers)if(this._layers[t].type===e)return!0;return!1}setLayerZoomRange(t,i,r){this._checkLoaded();const n=this.getLayer(t);n?n.minzoom===i&&n.maxzoom===r||(null!=i&&(n.minzoom=i),null!=r&&(n.maxzoom=r),this._updateLayer(n)):this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot have zoom extent.`)))}setFilter(i,r,n={}){this._checkLoaded();const o=this.getLayer(i);if(o){if(!t(o.filter,r))return null==r?(o.filter=void 0,void this._updateLayer(o)):void(this._validate(e.validateFilter,`layers.${o.id}.filter`,r,{layerType:o.type},n)||(o.filter=e.clone$1(r),this._updateLayer(o)))}else this.fire(new e.ErrorEvent(new Error(`The layer '${i}' does not exist in the map's style and cannot be filtered.`)))}getFilter(t){const i=this.getLayer(t);return i&&e.clone$1(i.filter)}setLayoutProperty(i,r,n,o={}){this._checkLoaded();const s=this.getLayer(i);s?t(s.getLayoutProperty(r),n)||(s.setLayoutProperty(r,n,o),this._updateLayer(s)):this.fire(new e.ErrorEvent(new Error(`The layer '${i}' does not exist in the map's style and cannot be styled.`)))}getLayoutProperty(t,i){const r=this.getLayer(t);if(r)return r.getLayoutProperty(i);this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style.`)))}setPaintProperty(i,r,n,o={}){this._checkLoaded();const s=this.getLayer(i);s?t(s.getPaintProperty(r),n)||(s.setPaintProperty(r,n,o)&&this._updateLayer(s),this._changed=!0,this._updatedPaintProps[i]=!0):this.fire(new e.ErrorEvent(new Error(`The layer '${i}' does not exist in the map's style and cannot be styled.`)))}getPaintProperty(e,t){const i=this.getLayer(e);return i&&i.getPaintProperty(t)}setFeatureState(t,i){this._checkLoaded();const r=t.source,n=t.sourceLayer,o=this.getSource(r);if(!o)return void this.fire(new e.ErrorEvent(new Error(`The source '${r}' does not exist in the map's style.`)));const s=o.type;if("geojson"===s&&n)return void this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));if("vector"===s&&!n)return void this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided.")));const a=this._getSourceCaches(r);for(const e of a)e.setFeatureState(n,t.id,i)}removeFeatureState(t,i){this._checkLoaded();const r=t.source,n=this.getSource(r);if(!n)return void this.fire(new e.ErrorEvent(new Error(`The source '${r}' does not exist in the map's style.`)));const o=n.type,s="vector"===o?t.sourceLayer:void 0;if("vector"===o&&!s)return void this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));if(i&&"string"!=typeof t.id&&"number"!=typeof t.id)return void this.fire(new e.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));const a=this._getSourceCaches(r);for(const e of a)e.removeFeatureState(s,t.id,i)}getFeatureState(t){this._checkLoaded();const i=t.source,r=t.sourceLayer,n=this.getSource(i);if(n){if("vector"!==n.type||r)return void 0===t.id&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),this._getSourceCaches(i)[0].getFeatureState(r,t.id);this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new e.ErrorEvent(new Error(`The source '${i}' does not exist in the map's style.`)))}getTransition(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){const t={};for(const e in this._sourceCaches){const i=this._sourceCaches[e].getSource();t[i.id]||(t[i.id]=i.serialize())}return e.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,terrain:this.getTerrain()||void 0,fog:this.stylesheet.fog,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,projection:this.stylesheet.projection,sources:t,layers:this._serializeLayers(this._order)},(e=>void 0!==e))}_updateLayer(e){this._updatedLayers[e.id]=!0;const t=this._getLayerSourceCache(e);e.source&&!this._updatedSources[e.source]&&t&&"raster"!==t.getSource().type&&(this._updatedSources[e.source]="reload",t.pause()),this._changed=!0,e.invalidateCompiledFilter()}_flattenAndSortRenderedFeatures(e){const t=e=>"fill-extrusion"===this._layers[e].type,i={},r=[];for(let n=this._order.length-1;n>=0;n--){const o=this._order[n];if(t(o)){i[o]=n;for(const t of e){const e=t[o];if(e)for(const t of e)r.push(t)}}}r.sort(((e,t)=>t.intersectionZ-e.intersectionZ));const n=[];for(let o=this._order.length-1;o>=0;o--){const s=this._order[o];if(t(s))for(let e=r.length-1;e>=0;e--){const t=r[e].feature;if(i[t.layer.id]{const t=this.getLayer(e);return t&&t.is3D()})):this.has3DLayers(),a=P.createFromScreenPoints(t,r);for(const e in this._sourceCaches){const t=this._sourceCaches[e].getSource().id;i.layers&&!n[t]||o.push(ze(this._sourceCaches[e],this._layers,this._serializedLayers,a,i,r,s,!!this.map._showQueryGeometry))}return this.placement&&o.push(function(e,t,i,r,n,o,s){const a={},l=o.queryRenderedSymbols(r),c=[];for(const e of Object.keys(l).map(Number))c.push(s[e]);c.sort(De);for(const i of c){const r=i.featureIndex.lookupSymbolFeatures(l[i.bucketInstanceId],t,i.bucketIndex,i.sourceLayerIndex,n.filter,n.layers,n.availableImages,e);for(const e in r){const t=a[e]=a[e]||[],n=r[e];n.sort(((e,t)=>{const r=i.featureSortOrder;if(r){const i=r.indexOf(e.featureIndex);return r.indexOf(t.featureIndex)-i}return t.featureIndex-e.featureIndex}));for(const e of n)t.push(e)}}for(const t in a)a[t].forEach((r=>{const n=r.feature,o=i(e[t]);if(!o)return;const s=o.getFeatureState(n.layer["source-layer"],n.id);n.source=n.layer.source,n.layer["source-layer"]&&(n.sourceLayer=n.layer["source-layer"]),n.state=s}));return a}(this._layers,this._serializedLayers,this._getLayerSourceCache.bind(this),a.screenGeometry,i,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(o)}querySourceFeatures(t,i){i&&i.filter&&this._validate(e.validateFilter,"querySourceFeatures.filter",i.filter,null,i);const r=this._getSourceCaches(t);let n=[];for(const e of r)n=n.concat(Le(e,i));return n}addSourceType(e,t,i){return Yt.getSourceType(e)?i(new Error(`A source type called "${e}" already exists.`)):(Yt.setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:e,url:t.workerSourceURL},i):i(null,null))}getLight(){return this.light.getLight()}setLight(e,i={}){this._checkLoaded();const r=this.light.getLight();let n=!1;for(const i in e)if(!t(e[i],r[i])){n=!0;break}if(!n)return;const o=this._setTransitionParameters({duration:300,delay:0});this.light.setLight(e,i),this.light.updateTransitions(o)}getTerrain(){return this.terrain&&1===this.terrain.drapeRenderMode?this.terrain.get():null}setTerrainForDraping(){this.setTerrain({source:"",exaggeration:0},0)}setTerrain(i,r=1){if(this._checkLoaded(),!i)return delete this.terrain,delete this.stylesheet.terrain,this.dispatcher.broadcast("enableTerrain",!1),this._force3DLayerUpdate(),void(this._markersNeedUpdate=!0);let n=i;if(1===r){if("object"==typeof n.source){const t="terrain-dem-src";this.addSource(t,n.source),n=e.clone$1(n),n=e.extend(n,{source:t})}if(this._validate(e.validateTerrain,"terrain",n))return}if(!this.terrain||this.terrain&&r!==this.terrain.drapeRenderMode){if(!n)return;this._createTerrain(n,r)}else{const i=this.terrain,r=i.get();for(const t of Object.keys(e.spec.terrain))!n.hasOwnProperty(t)&&e.spec.terrain[t].default&&(n[t]=e.spec.terrain[t].default);for(const e in n)if(!t(n[e],r[e])){i.set(n),this.stylesheet.terrain=n;const e=this._setTransitionParameters({duration:0});i.updateTransitions(e);break}}this._updateDrapeFirstLayers(),this._markersNeedUpdate=!0}_createFog(e){const t=this.fog=new C(e,this.map.transform);this.stylesheet.fog=e;const i=this._setTransitionParameters({duration:0});t.updateTransitions(i)}_updateMarkersOpacity(){0!==this.map._markers.length&&this.map._requestDomTask((()=>{for(const e of this.map._markers)e._evaluateOpacity()}))}getFog(){return this.fog?this.fog.get():null}setFog(e){if(this._checkLoaded(),!e)return delete this.fog,delete this.stylesheet.fog,void(this._markersNeedUpdate=!0);if(this.fog){const i=this.fog,r=i.get();0===Object.keys(e).length&&i.set(e);for(const n in e)if(!t(e[n],r[n])){i.set(e),this.stylesheet.fog=e;const t=this._setTransitionParameters({duration:0});i.updateTransitions(t);break}}else this._createFog(e);this._markersNeedUpdate=!0}_setTransitionParameters(t){return{now:e.exported.now(),transition:e.extend(t,this.stylesheet.transition)}}_updateDrapeFirstLayers(){if(!this.map._optimizeForTerrain||!this.terrain)return;const e=this._order.filter((e=>this.isLayerDraped(this._layers[e]))),t=this._order.filter((e=>!this.isLayerDraped(this._layers[e])));this._drapedFirstOrder=[],this._drapedFirstOrder.push(...e),this._drapedFirstOrder.push(...t)}_createTerrain(e,t){const i=this.terrain=new E(e,t);this.stylesheet.terrain=e,this.dispatcher.broadcast("enableTerrain",!this.terrainSetForDrapingOnly()),this._force3DLayerUpdate();const r=this._setTransitionParameters({duration:0});i.updateTransitions(r)}_force3DLayerUpdate(){for(const e in this._layers){const t=this._layers[e];"fill-extrusion"===t.type&&this._updateLayer(t)}}_forceSymbolLayerUpdate(){for(const e in this._layers){const t=this._layers[e];"symbol"===t.type&&this._updateLayer(t)}}_validate(t,i,r,n,o={}){return(!o||!1!==o.validate)&&Zt(this,t.call(e.validateStyle,e.extend({key:i,style:this.serialize(),value:r,styleSpec:e.spec},n)))}_remove(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),e.evented.off("pluginStateChange",this._rtlTextPluginCallback);for(const e in this._layers)this._layers[e].setEventedParent(null);for(const e in this._sourceCaches)this._sourceCaches[e].clearTiles(),this._sourceCaches[e].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()}_clearSource(e){const t=this._getSourceCaches(e);for(const e of t)e.clearTiles()}_reloadSource(e){const t=this._getSourceCaches(e);for(const e of t)e.resume(),e.reload()}_reloadSources(){for(const e of this._getSources())e.reload&&e.reload()}_updateSources(e){for(const t in this._sourceCaches)this._sourceCaches[t].update(e)}_generateCollisionBoxes(){for(const e in this._sourceCaches){const t=this._sourceCaches[e];t.resume(),t.reload()}}_updatePlacement(t,i,r,n,o=!1){let s=!1,a=!1;const l={};for(const e of this._order){const i=this._layers[e];if("symbol"!==i.type)continue;if(!l[i.source]){const e=this._getLayerSourceCache(i);if(!e)continue;l[i.source]=e.getRenderableIds(!0).map((t=>e.getTileByID(t))).sort(((e,t)=>t.tileID.overscaledZ-e.tileID.overscaledZ||(e.tileID.isLessThan(t.tileID)?-1:1)))}const r=this.crossTileSymbolIndex.addLayer(i,l[i.source],t.center.lng,t.projection);s=s||r}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),o=o||this._layerOrderChanged||0===r,this._layerOrderChanged&&this.fire(new e.Event("neworder")),(o||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(e.exported.now(),t.zoom))&&(this.pauseablePlacement=new Ut(t,this._order,o,i,r,n,this.placement,this.fog&&t.projection.supportsFog?this.fog.state:null),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(e.exported.now()),a=!0),s&&this.pauseablePlacement.placement.setStale()),a||s)for(const e of this._order){const t=this._layers[e];"symbol"===t.type&&this.placement.updateLayerOpacities(t,l[t.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(e.exported.now())}_releaseSymbolFadeTiles(){for(const e in this._sourceCaches)this._sourceCaches[e].releaseSymbolFadeTiles()}getImages(e,t,i){this.imageManager.getImages(t.icons,i),this._updateTilesForChangedImages();const r=e=>{e&&e.setDependencies(t.tileID.key,t.type,t.icons)};r(this._otherSourceCaches[t.source]),r(this._symbolSourceCaches[t.source])}getGlyphs(e,t,i){this.glyphManager.getGlyphs(t.stacks,i)}getResource(t,i,r){return e.makeRequest(i,r)}_getSourceCache(e){return this._otherSourceCaches[e]}_getLayerSourceCache(e){return"symbol"===e.type?this._symbolSourceCaches[e.source]:this._otherSourceCaches[e.source]}_getSourceCaches(e){const t=[];return this._otherSourceCaches[e]&&t.push(this._otherSourceCaches[e]),this._symbolSourceCaches[e]&&t.push(this._symbolSourceCaches[e]),t}_isSourceCacheLoaded(t){const i=this._getSourceCaches(t);return 0===i.length?(this.fire(new e.ErrorEvent(new Error(`There is no source with ID '${t}'`))),!1):i.every((e=>e.loaded()))}has3DLayers(){return this._num3DLayers>0}hasSymbolLayers(){return this._numSymbolLayers>0}hasCircleLayers(){return this._numCircleLayers>0}_clearWorkerCaches(){this.dispatcher.broadcast("clearCaches")}destroy(){this._clearWorkerCaches(),this.terrainSetForDrapingOnly()&&(delete this.terrain,delete this.stylesheet.terrain)}}Yt.getSourceType=function(e){return ke[e]},Yt.setSourceType=function(e,t){ke[e]=t},Yt.registerForPluginStateChange=e.registerForPluginStateChange;var Jt="\n#define EPSILON 0.0000001\n#define PI 3.141592653589793\n#define EXTENT 8192.0\n#define HALF_PI PI/2.0\n#define QUARTER_PI PI/4.0\n#define RAD_TO_DEG 180.0/PI\n#define DEG_TO_RAD PI/180.0\n#define GLOBE_RADIUS EXTENT/PI/2.0",Qt="attribute highp vec3 a_pos_3f;uniform lowp mat4 u_matrix;varying highp vec3 v_uv;void main() {const mat3 half_neg_pi_around_x=mat3(1.0,0.0, 0.0,0.0,0.0,-1.0,0.0,1.0, 0.0);v_uv=half_neg_pi_around_x*a_pos_3f;vec4 pos=u_matrix*vec4(a_pos_3f,1.0);gl_Position=pos.xyww;}",ei="\n#define ELEVATION_SCALE 7.0\n#define ELEVATION_OFFSET 450.0\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_tl_up;uniform vec3 u_tile_tr_up;uniform vec3 u_tile_br_up;uniform vec3 u_tile_bl_up;uniform float u_tile_up_scale;vec3 elevationVector(vec2 pos) {vec2 uv=pos/EXTENT;vec3 up=normalize(mix(\nmix(u_tile_tl_up,u_tile_tr_up,uv.xxx),mix(u_tile_bl_up,u_tile_br_up,uv.xxx),uv.yyy));return up*u_tile_up_scale;}\n#else\nvec3 elevationVector(vec2 pos) { return vec3(0,0,1); }\n#endif\nconst float skirtOffset=24575.0;vec3 decomposeToPosAndSkirt(vec2 posWithComposedSkirt)\n{float skirt=float(posWithComposedSkirt.x >=skirtOffset);vec2 pos=posWithComposedSkirt-vec2(skirt*skirtOffset,0.0);return vec3(pos,skirt);}\n#ifdef TERRAIN\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nuniform highp sampler2D u_dem;uniform highp sampler2D u_dem_prev;\n#else\nuniform sampler2D u_dem;uniform sampler2D u_dem_prev;\n#endif\nuniform vec4 u_dem_unpack;uniform vec2 u_dem_tl;uniform vec2 u_dem_tl_prev;uniform float u_dem_scale;uniform float u_dem_scale_prev;uniform float u_dem_size;uniform float u_dem_lerp;uniform float u_exaggeration;uniform float u_meter_to_dem;uniform mat4 u_label_plane_matrix_inv;uniform sampler2D u_depth;uniform vec2 u_depth_size_inv;vec4 tileUvToDemSample(vec2 uv,float dem_size,float dem_scale,vec2 dem_tl) {vec2 pos=dem_size*(uv*dem_scale+dem_tl)+1.0;vec2 f=fract(pos);return vec4((pos-f+0.5)/(dem_size+2.0),f);}float decodeElevation(vec4 v) {return dot(vec4(v.xyz*255.0,-1.0),u_dem_unpack);}float currentElevation(vec2 apos) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale+u_dem_tl)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture2D(u_dem,pos).a;\n#else\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale,u_dem_tl);vec2 pos=r.xy;vec2 f=r.zw;float tl=decodeElevation(texture2D(u_dem,pos));\n#ifdef TERRAIN_DEM_NEAREST_FILTER\nreturn u_exaggeration*tl;\n#endif\nfloat tr=decodeElevation(texture2D(u_dem,pos+vec2(dd,0.0)));float bl=decodeElevation(texture2D(u_dem,pos+vec2(0.0,dd)));float br=decodeElevation(texture2D(u_dem,pos+vec2(dd,dd)));return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\n#endif\n}float prevElevation(vec2 apos) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale_prev+u_dem_tl_prev)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture2D(u_dem_prev,pos).a;\n#else\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale_prev,u_dem_tl_prev);vec2 pos=r.xy;vec2 f=r.zw;float tl=decodeElevation(texture2D(u_dem_prev,pos));float tr=decodeElevation(texture2D(u_dem_prev,pos+vec2(dd,0.0)));float bl=decodeElevation(texture2D(u_dem_prev,pos+vec2(0.0,dd)));float br=decodeElevation(texture2D(u_dem_prev,pos+vec2(dd,dd)));return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\n#endif\n}\n#ifdef TERRAIN_VERTEX_MORPHING\nfloat elevation(vec2 apos) {\n#ifdef ZERO_EXAGGERATION\nreturn 0.0;\n#endif\nfloat nextElevation=currentElevation(apos);float prevElevation=prevElevation(apos);return mix(prevElevation,nextElevation,u_dem_lerp);}\n#else\nfloat elevation(vec2 apos) {\n#ifdef ZERO_EXAGGERATION\nreturn 0.0;\n#endif\nreturn currentElevation(apos);}\n#endif\nhighp float unpack_depth(highp vec4 rgba_depth)\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}bool isOccluded(vec4 frag) {vec3 coord=frag.xyz/frag.w;float depth=unpack_depth(texture2D(u_depth,(coord.xy+1.0)*0.5));return coord.z > depth+0.0005;}float occlusionFade(vec4 frag) {vec3 coord=frag.xyz/frag.w;vec3 df=vec3(5.0*u_depth_size_inv,0.0);vec2 uv=0.5*coord.xy+0.5;vec4 depth=vec4(\nunpack_depth(texture2D(u_depth,uv-df.xz)),unpack_depth(texture2D(u_depth,uv+df.xz)),unpack_depth(texture2D(u_depth,uv-df.zy)),unpack_depth(texture2D(u_depth,uv+df.zy))\n);return dot(vec4(0.25),vec4(1.0)-clamp(300.0*(vec4(coord.z-0.001)-depth),0.0,1.0));}vec4 fourSample(vec2 pos,vec2 off) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nfloat tl=texture2D(u_dem,pos).a;float tr=texture2D(u_dem,pos+vec2(off.x,0.0)).a;float bl=texture2D(u_dem,pos+vec2(0.0,off.y)).a;float br=texture2D(u_dem,pos+off).a;\n#else\nvec4 demtl=vec4(texture2D(u_dem,pos).xyz*255.0,-1.0);float tl=dot(demtl,u_dem_unpack);vec4 demtr=vec4(texture2D(u_dem,pos+vec2(off.x,0.0)).xyz*255.0,-1.0);float tr=dot(demtr,u_dem_unpack);vec4 dembl=vec4(texture2D(u_dem,pos+vec2(0.0,off.y)).xyz*255.0,-1.0);float bl=dot(dembl,u_dem_unpack);vec4 dembr=vec4(texture2D(u_dem,pos+off).xyz*255.0,-1.0);float br=dot(dembr,u_dem_unpack);\n#endif\nreturn vec4(tl,tr,bl,br);}float flatElevation(vec2 pack) {vec2 apos=floor(pack/8.0);vec2 span=10.0*(pack-apos*8.0);vec2 uvTex=(apos-vec2(1.0,1.0))/8190.0;float size=u_dem_size+2.0;float dd=1.0/size;vec2 pos=u_dem_size*(uvTex*u_dem_scale+u_dem_tl)+1.0;vec2 f=fract(pos);pos=(pos-f+0.5)*dd;vec4 h=fourSample(pos,vec2(dd));float z=mix(mix(h.x,h.y,f.x),mix(h.z,h.w,f.x),f.y);vec2 w=floor(0.5*(span*u_meter_to_dem-1.0));vec2 d=dd*w;h=fourSample(pos-d,2.0*d+vec2(dd));vec4 diff=abs(h.xzxy-h.ywzw);vec2 slope=min(vec2(0.25),u_meter_to_dem*0.5*(diff.xz+diff.yw)/(2.0*w+vec2(1.0)));vec2 fix=slope*span;float base=z+max(fix.x,fix.y);return u_exaggeration*base;}float elevationFromUint16(float word) {return u_exaggeration*(word/ELEVATION_SCALE-ELEVATION_OFFSET);}\n#else\nfloat elevation(vec2 pos) { return 0.0; }bool isOccluded(vec4 frag) { return false; }float occlusionFade(vec4 frag) { return 1.0; }\n#endif",ti="#ifdef FOG\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump mat4 u_fog_matrix;varying vec3 v_fog_pos;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}vec3 fog_position(vec3 pos) {return (u_fog_matrix*vec4(pos,1.0)).xyz;}vec3 fog_position(vec2 pos) {return fog_position(vec3(pos,0.0));}float fog(vec3 pos) {float depth=length(pos);float opacity=fog_opacity(fog_range(depth));return opacity*fog_horizon_blending(pos/depth);}\n#endif",ii="#ifdef FOG\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump float u_fog_temporal_offset;varying vec3 v_fog_pos;uniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform highp vec2 u_viewport;uniform float u_globe_transition;uniform int u_is_globe;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}float globe_glow_progress() {highp vec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);highp vec3 dir=normalize(ray_dir);highp vec3 closest_point=dot(u_globe_pos,dir)*dir;highp float sdf=length(closest_point-u_globe_pos)/u_globe_radius;return sdf+PI*0.5;}float fog_opacity(vec3 pos) {float depth=length(pos);return fog_opacity(fog_range(depth));}vec3 fog_apply(vec3 color,vec3 pos) {float depth=length(pos);float opacity;if (u_is_globe==1) {float glow_progress=globe_glow_progress();float t=mix(glow_progress,depth,u_globe_transition);opacity=fog_opacity(fog_range(t));} else {opacity=fog_opacity(fog_range(depth));opacity*=fog_horizon_blending(pos/depth);}return mix(color,u_fog_color.rgb,opacity);}vec4 fog_apply_from_vert(vec4 color,float fog_opac) {float alpha=EPSILON+color.a;color.rgb=mix(color.rgb/alpha,u_fog_color.rgb,fog_opac)*alpha;return color;}vec3 fog_apply_sky_gradient(vec3 camera_ray,vec3 sky_color) {float horizon_blend=fog_horizon_blending(normalize(camera_ray));return mix(sky_color,u_fog_color.rgb,horizon_blend);}vec4 fog_apply_premultiplied(vec4 color,vec3 pos) {float alpha=EPSILON+color.a;color.rgb=fog_apply(color.rgb/alpha,pos)*alpha;return color;}vec3 fog_dither(vec3 color) {vec2 dither_seed=gl_FragCoord.xy+u_fog_temporal_offset;return dither(color,dither_seed);}vec4 fog_dither(vec4 color) {return vec4(fog_dither(color.rgb),color.a);}\n#endif";let ri={},ni={};const oi=[];hi(Jt,oi),hi(ei,oi),hi(ti,oi),hi(ii,oi),ri=ui("",ei),ni=ui(ii,ti);const si=ui("\n#if __VERSION__ >=300\n#define varying in\n#define gl_FragColor glFragColor\n#define texture2D texture\n#define textureCube texture\nout vec4 glFragColor;\n#endif\nhighp vec3 hash(highp vec2 p) {highp vec3 p3=fract(p.xyx*vec3(443.8975,397.2973,491.1871));p3+=dot(p3,p3.yxz+19.19);return fract((p3.xxy+p3.yzz)*p3.zyx);}vec3 dither(vec3 color,highp vec2 seed) {vec3 rnd=hash(seed)+hash(seed+0.59374)-0.5;return color+rnd/255.0;}highp float unpack_depth(highp vec4 rgba_depth)\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}highp vec4 pack_depth(highp float ndc_z) {highp float depth=ndc_z*0.5+0.5;const highp vec4 bit_shift=vec4(255.0*255.0*255.0,255.0*255.0,255.0,1.0);const highp vec4 bit_mask =vec4(0.0,1.0/255.0,1.0/255.0,1.0/255.0);highp vec4 res=fract(depth*bit_shift);res-=res.xxyz*bit_mask;return res;}","\n#if __VERSION__ >=300\n#define attribute in\n#define varying out\n#define texture2D texture\n#endif\nfloat wrap(float n,float min,float max) {float d=max-min;float w=mod(mod(n-min,d)+d,d)+min;return (w==min) ? max : w;}\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 mercator_tile_position(mat4 matrix,vec2 tile_anchor,vec3 tile_id,vec2 mercator_center) {\n#ifndef PROJECTED_POS_ON_VIEWPORT\nfloat tiles=tile_id.z;vec2 mercator=(tile_anchor/EXTENT+tile_id.xy)/tiles;mercator-=mercator_center;mercator.x=wrap(mercator.x,-0.5,0.5);vec4 mercator_tile=vec4(mercator.xy*EXTENT,EXTENT/(2.0*PI),1.0);mercator_tile=matrix*mercator_tile;return mercator_tile.xyz;\n#else\nreturn vec3(0.0);\n#endif\n}vec3 mix_globe_mercator(vec3 globe,vec3 mercator,float t) {return mix(globe,mercator,t);}mat3 globe_mercator_surface_vectors(vec3 pos_normal,vec3 up_dir,float zoom_transition) {vec3 normal=zoom_transition==0.0 ? pos_normal : normalize(mix(pos_normal,up_dir,zoom_transition));vec3 xAxis=normalize(vec3(normal.z,0.0,-normal.x));vec3 yAxis=normalize(cross(normal,xAxis));return mat3(xAxis,yAxis,normal);}\n#endif\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(\nunpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}const vec4 AWAY=vec4(-1000.0,-1000.0,-1000.0,1);//Normalized device coordinate that is not rendered."),ai=Jt,li="\n#ifdef GL_ES\nprecision mediump float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif";var ci={background:ui("uniform vec4 u_color;uniform float u_opacity;\n#ifdef LIGHTING_3D_MODE\nvarying vec4 v_color;\n#endif\nvoid main() {vec4 out_color;\n#ifdef LIGHTING_3D_MODE\nout_color=v_color;\n#else\nout_color=u_color;\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#ifdef LIGHTING_3D_MODE\nuniform vec4 u_color;varying vec4 v_color;\n#endif\nvoid main() {gl_Position=u_matrix*vec4(a_pos,0,1);\n#ifdef LIGHTING_3D_MODE\nv_color=apply_lighting(u_color);\n#endif\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),backgroundPattern:ui("uniform vec2 u_pattern_tl;uniform vec2 u_pattern_br;uniform vec2 u_texsize;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos;void main() {vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(u_pattern_tl/u_texsize,u_pattern_br/u_texsize,imagecoord);vec4 out_color=texture2D(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pattern_size;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_pattern_size,u_tile_units_to_pixels,a_pos);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),circle:ui("varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(\nantialiased_blur,0.0,extrude_length-radius/(radius+stroke_width)\n);vec4 out_color=mix(color*opacity,stroke_color*stroke_opacity,color_t);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_apply_premultiplied(out_color,v_fog_pos);\n#endif\ngl_FragColor=out_color*(v_visibility*opacity_t);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","#define NUM_VISIBILITY_RINGS 2\n#define INV_SQRT2 0.70710678\n#define ELEVATION_BIAS 0.0001\n#define NUM_SAMPLES_PER_RING 16\nuniform mat4 u_matrix;uniform mat2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\n#endif\nvarying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvec2 calc_offset(vec2 extrusion,float radius,float stroke_width, float view_scale) {return extrusion*(radius+stroke_width)*u_extrude_scale*view_scale;}float cantilevered_elevation(vec2 pos,float radius,float stroke_width,float view_scale) {vec2 c1=pos+calc_offset(vec2(-1,-1),radius,stroke_width,view_scale);vec2 c2=pos+calc_offset(vec2(1,-1),radius,stroke_width,view_scale);vec2 c3=pos+calc_offset(vec2(1,1),radius,stroke_width,view_scale);vec2 c4=pos+calc_offset(vec2(-1,1),radius,stroke_width,view_scale);float h1=elevation(c1)+ELEVATION_BIAS;float h2=elevation(c2)+ELEVATION_BIAS;float h3=elevation(c3)+ELEVATION_BIAS;float h4=elevation(c4)+ELEVATION_BIAS;return max(h4,max(h3,max(h1,h2)));}float circle_elevation(vec2 pos) {\n#if defined(TERRAIN)\nreturn elevation(pos)+ELEVATION_BIAS;\n#else\nreturn 0.0;\n#endif\n}vec4 project_vertex(vec2 extrusion,vec4 world_center,vec4 projected_center,float radius,float stroke_width, float view_scale,mat3 surface_vectors) {vec2 sample_offset=calc_offset(extrusion,radius,stroke_width,view_scale);\n#ifdef PITCH_WITH_MAP\n#ifdef PROJECTION_GLOBE_VIEW\nreturn u_matrix*( world_center+vec4(sample_offset.x*surface_vectors[0]+sample_offset.y*surface_vectors[1],0) );\n#else\nreturn u_matrix*( world_center+vec4(sample_offset,0,0) );\n#endif\n#else\nreturn projected_center+vec4(sample_offset,0,0);\n#endif\n}float get_sample_step() {\n#ifdef PITCH_WITH_MAP\nreturn 2.0*PI/float(NUM_SAMPLES_PER_RING);\n#else\nreturn PI/float(NUM_SAMPLES_PER_RING);\n#endif\n}void main(void) {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);vec4 world_center;mat3 surface_vectors;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 pos_normal_3=a_pos_normal_3/16384.0;surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(circle_center)*circle_elevation(circle_center);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*circle_elevation(circle_center);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,circle_center,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;vec3 pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);world_center=vec4(pos,1);\n#else \nsurface_vectors=mat3(1.0);float height=circle_elevation(circle_center);world_center=vec4(circle_center,height,1);\n#endif\nvec4 projected_center=u_matrix*world_center;float view_scale=0.0;\n#ifdef PITCH_WITH_MAP\n#ifdef SCALE_WITH_MAP\nview_scale=1.0;\n#else\nview_scale=projected_center.w/u_camera_to_center_distance;\n#endif\n#else\n#ifdef SCALE_WITH_MAP\nview_scale=u_camera_to_center_distance;\n#else\nview_scale=projected_center.w;\n#endif\n#endif\ngl_Position=project_vertex(extrude,world_center,projected_center,radius,stroke_width,view_scale,surface_vectors);float visibility=0.0;\n#ifdef TERRAIN\nfloat step=get_sample_step();vec4 occlusion_world_center;vec4 occlusion_projected_center;\n#ifdef PITCH_WITH_MAP\nfloat cantilevered_height=cantilevered_elevation(circle_center,radius,stroke_width,view_scale);occlusion_world_center=vec4(circle_center,cantilevered_height,1);occlusion_projected_center=u_matrix*occlusion_world_center;\n#else\nocclusion_world_center=world_center;occlusion_projected_center=projected_center;\n#endif\nfor(int ring=0; ring < NUM_VISIBILITY_RINGS; ring++) {float scale=(float(ring)+1.0)/float(NUM_VISIBILITY_RINGS);for(int i=0; i < NUM_SAMPLES_PER_RING; i++) {vec2 extrusion=vec2(cos(step*float(i)),-sin(step*float(i)))*scale;vec4 frag_pos=project_vertex(extrusion,occlusion_world_center,occlusion_projected_center,radius,stroke_width,view_scale,surface_vectors);visibility+=float(!isOccluded(frag_pos));}}visibility/=float(NUM_VISIBILITY_RINGS)*float(NUM_SAMPLES_PER_RING);\n#else\nvisibility=1.0;\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nvisibility=1.0;\n#endif\nv_visibility=visibility;lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);\n#ifdef FOG\nv_fog_pos=fog_position(world_center.xyz);\n#endif\n}"),clippingMask:ui("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:ui("uniform highp float u_intensity;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#define GAUSS_COEF 0.3989422804014327\nvoid main() {\n#pragma mapbox: initialize highp float weight\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\n#ifdef FOG\nif (u_is_globe==0) {gl_FragColor.r*=pow(1.0-fog_opacity(v_fog_pos),2.0);}\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\n#endif\nvarying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\nconst highp float ZERO=1.0/255.0/16.0;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(void) {\n#pragma mapbox: initialize highp float weight\n#pragma mapbox: initialize mediump float radius\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec2 tilePos=floor(a_pos*0.5);vec3 pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 pos_normal_3=a_pos_normal_3/16384.0;mat3 surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(tilePos)*elevation(tilePos);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*elevation(tilePos);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,tilePos,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#else\npos=vec3(tilePos+extrude,elevation(tilePos));\n#endif\ngl_Position=u_matrix*vec4(pos,1);\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),heatmapTexture:ui("uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(0.0);\n#endif\n}","attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=vec4(a_pos,0,1);v_pos=a_pos*0.5+0.5;}"),collisionBox:ui("varying float v_placed;varying float v_notUsed;void main() {vec4 red =vec4(1.0,0.0,0.0,1.0);vec4 blue=vec4(0.0,0.0,1.0,0.5);gl_FragColor =mix(red,blue,step(0.5,v_placed))*0.5;gl_FragColor*=mix(1.0,0.1,step(0.5,v_notUsed));}","attribute vec3 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;attribute float a_size_scale;attribute vec2 a_padding;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_pos+elevationVector(a_anchor_pos)*elevation(a_anchor_pos),1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,1.5);gl_Position=projectedPoint;gl_Position.xy+=(a_extrude*a_size_scale+a_shift+a_padding)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:ui("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos_2f;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos_2f;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(\nmix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:ui("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;\n#endif\nvarying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {float h=elevation(a_pos);v_uv=a_pos/8192.0;\n#ifdef PROJECTION_GLOBE_VIEW\ngl_Position=u_matrix*vec4(a_pos_3+elevationVector(a_pos)*h,1);\n#else\ngl_Position=u_matrix*vec4(a_pos*u_overlay_scale,h,1);\n#endif\n}"),fill:ui("#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\nvec4 out_color=color;\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillOutline:ui("varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=outline_color;\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillOutlinePattern:ui("uniform vec2 u_texsize;uniform sampler2D u_image;varying vec2 v_pos;varying vec2 v_pos_world;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);float dist=length(v_pos_world-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=texture2D(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos;varying vec2 v_pos_world;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);v_pos_world=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillPattern:ui("uniform vec2 u_texsize;uniform sampler2D u_image;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture2D(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),fillExtrusion:ui("varying vec4 v_color;\n#ifdef RENDER_SHADOWS\nvarying highp vec4 v_pos_light_view_0;varying highp vec4 v_pos_light_view_1;varying float v_depth;\n#endif\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;varying vec3 v_ao;\n#endif\n#ifdef ZERO_ROOF_RADIUS\nvarying vec4 v_roof_color;\n#endif\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\nvarying highp vec3 v_normal;\n#endif\nvoid main() {\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\nvec3 normal=v_normal;\n#endif\nfloat z;vec4 color;\n#ifdef ZERO_ROOF_RADIUS\nz=float(normal.z > 0.00001);color=mix(v_color,v_roof_color,z);\n#else\ncolor=v_color;\n#endif\n#ifdef FAUX_AO\nfloat intensity=u_ao[0];float h=max(0.0,v_ao.z);float h_floors=h/u_ao[1];float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);float shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;\n#ifdef ZERO_ROOF_RADIUS\nconcave*=(1.0-z);\n#endif\nfloat x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);shade*=mix(1.0,x_shade*x_shade*x_shade,concave);color.rgb=color.rgb*shade;\n#endif\n#ifdef RENDER_SHADOWS\n#ifdef ZERO_ROOF_RADIUS\nnormal=mix(normal,vec3(0.0,0.0,1.0),z);\n#endif\ncolor.xyz=shadowed_color_normal(color.xyz,normalize(normal),v_pos_light_view_0,v_pos_light_view_1,v_depth);\n#endif\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#endif\ngl_FragColor=color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform float u_edge_radius;attribute vec4 a_pos_normal_ed;attribute vec2 a_centroid_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\n#endif\nvarying vec4 v_color;\n#ifdef RENDER_SHADOWS\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;varying highp vec4 v_pos_light_view_0;varying highp vec4 v_pos_light_view_1;varying float v_depth;\n#endif\n#ifdef ZERO_ROOF_RADIUS\nvarying vec4 v_roof_color;\n#endif\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\nvarying highp vec3 v_normal;\n#endif\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;varying vec3 v_ao;\n#endif\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec4 pos_nx=floor(a_pos_normal_ed*0.5);vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\nv_normal=normal;\n#endif\nbase=max(0.0,base);height=max(0.0,top_up_ny.y==0.0 && top_up_ny.x==1.0 ? height-u_edge_radius : height);float t=top_up_ny.x;vec2 centroid_pos=vec2(0.0);\n#if defined(HAS_CENTROID) || defined(TERRAIN)\ncentroid_pos=a_centroid_pos;\n#endif\nfloat ele=0.0;float h=0.0;float c_ele;vec3 pos;\n#ifdef TERRAIN\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);pos=vec3(pos_nx.xy,h);\n#else\nh=t > 0.0 ? height : base;pos=vec3(pos_nx.xy,h);\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*h);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,pos.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*pos.z;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#endif\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(pos,1),AWAY,hidden);\n#ifdef RENDER_SHADOWS\nv_pos_light_view_0=u_light_matrix_0*vec4(pos,1);v_pos_light_view_1=u_light_matrix_1*vec4(pos,1);v_depth=gl_Position.w;\n#endif\nfloat NdotL=0.0;float colorvalue=0.0;\n#ifdef LIGHTING_3D_MODE\nNdotL=calculate_NdotL(normal);\n#else\ncolorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;NdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),NdotL);\n#endif\nif (normal.y !=0.0) {float r=0.84;\n#ifndef LIGHTING_3D_MODE\nr=mix(0.7,0.98,1.0-u_lightintensity);\n#endif\nNdotL*=(\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}v_color=vec4(0.0,0.0,0.0,1.0);\n#ifdef FAUX_AO\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\n#ifdef TERRAIN\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\n#endif\nv_ao=vec3(mix(concave,-concave,start),y_ground,h-ele);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\n#ifdef PROJECTION_GLOBE_VIEW\ntop_height+=u_height_lift;\n#endif\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\n#endif\n#ifdef LIGHTING_3D_MODE\nv_color=apply_lighting(color,NdotL);\n#else\nv_color.rgb+=clamp(color.rgb*NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));\n#endif\nv_color*=u_opacity;\n#ifdef ZERO_ROOF_RADIUS\nv_roof_color=vec4(0.0,0.0,0.0,1.0);\n#ifdef LIGHTING_3D_MODE\nv_roof_color=apply_lighting(color,calculate_NdotL(vec3(0.0,0.0,1.0)));\n#else\nfloat roofNdotL=clamp(u_lightpos.z,0.0,1.0);roofNdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),roofNdotL);v_roof_color.rgb+=clamp(color.rgb*roofNdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));\n#endif\nv_roof_color*=u_opacity;\n#endif\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),fillExtrusionPattern:ui("uniform vec2 u_texsize;uniform sampler2D u_image;\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;varying vec3 v_ao;\n#endif\n#ifdef LIGHTING_3D_MODE\nvarying float v_NdotL;\n#endif\nvarying vec2 v_pos;varying vec4 v_lighting;uniform lowp float u_opacity;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture2D(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color,v_NdotL)*u_opacity;\n#else\nout_color=out_color*v_lighting;\n#endif\n#ifdef FAUX_AO\nfloat intensity=u_ao[0];float h=max(0.0,v_ao.z);float h_floors=h/u_ao[1];float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);float shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;float x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);shade*=mix(1.0,x_shade*x_shade*x_shade,concave);out_color.rgb=out_color.rgb*shade;\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\ngl_FragColor=out_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform float u_tile_units_to_pixels;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec4 a_pos_normal_ed;attribute vec2 a_centroid_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\n#endif\nvarying vec2 v_pos;varying vec4 v_lighting;\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;varying vec3 v_ao;\n#endif\n#ifdef LIGHTING_3D_MODE\nvarying float v_NdotL;\n#endif\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec4 pos_nx=floor(a_pos_normal_ed*0.5);mediump vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;mediump vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));float edgedistance=a_pos_normal_ed.w;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;base=max(0.0,base);height=max(0.0,height);float t=top_up_ny.x;float z=t > 0.0 ? height : base;vec2 centroid_pos=vec2(0.0);\n#if defined(HAS_CENTROID) || defined(TERRAIN)\ncentroid_pos=a_centroid_pos;\n#endif\nfloat ele=0.0;float h=z;vec3 p;float c_ele;\n#ifdef TERRAIN\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);p=vec3(pos_nx.xy,h);\n#else\np=vec3(pos_nx.xy,z);\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*(p.z+lift));vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,p.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*p.z;p=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#endif\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(p,1),AWAY,hidden);vec2 pos=normal.z==1.0\n? pos_nx.xy\n: vec2(edgedistance,z*u_height_factor);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float NdotL=0.0;\n#ifdef LIGHTING_3D_MODE\nNdotL=calculate_NdotL(normal);\n#else\nNdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),NdotL);\n#endif\nif (normal.y !=0.0) {float r=0.84;\n#ifndef LIGHTING_3D_MODE\nr=mix(0.7,0.98,1.0-u_lightintensity);\n#endif\nNdotL*=(\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}\n#ifdef FAUX_AO\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\n#ifdef TERRAIN\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\n#endif\nv_ao=vec3(mix(concave,-concave,start),y_ground,h-ele);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\n#ifdef PROJECTION_GLOBE_VIEW\ntop_height+=u_height_lift;\n#endif\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\n#endif\n#ifdef LIGHTING_3D_MODE\nv_NdotL=NdotL;\n#else\nv_lighting.rgb+=clamp(NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;\n#endif \n#ifdef FOG\nv_fog_pos=fog_position(p);\n#endif\n}"),hillshadePrepare:ui("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nreturn texture2D(u_image,coord).a/4.0;\n#else\nvec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;\n#endif\n}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y));float b=getElevation(v_pos+vec2(0,-epsilon.y));float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y));float d=getElevation(v_pos+vec2(-epsilon.x,0));float e=getElevation(v_pos+vec2(epsilon.x,0));float f=getElevation(v_pos+vec2(-epsilon.x,epsilon.y));float g=getElevation(v_pos+vec2(0,epsilon.y));float h=getElevation(v_pos+vec2(epsilon.x,epsilon.y));float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2(\n(c+e+e+h)-(a+d+d+f),(f+g+g+h)-(a+b+b+c)\n)/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(\nderiv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:ui("uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef LIGHTING_3D_MODE\ngl_FragColor=apply_lighting(gl_FragColor);\n#endif\n#ifdef FOG\ngl_FragColor=fog_dither(fog_apply_premultiplied(gl_FragColor,v_fog_pos));\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),line:ui("uniform lowp float u_device_pixel_ratio;uniform float u_alpha_discard_threshold;uniform highp vec2 u_trim_offset;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec4 v_uv;\n#ifdef RENDER_LINE_DASH\nuniform sampler2D u_dash_image;varying vec2 v_tex;\n#endif\n#ifdef RENDER_LINE_GRADIENT\nuniform sampler2D u_gradient_image;\n#endif\nuniform float u_border_width;uniform vec4 u_border_color;float luminance(vec3 c) {return (c.r+c.r+c.b+c.g+c.g+c.g)*0.1667;}\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 dash\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nfloat linearstep(float edge0,float edge1,float x) {return clamp((x-edge0)/(edge1-edge0),0.0,1.0);}void main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize lowp vec4 dash\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);\n#ifdef RENDER_LINE_DASH\nfloat sdfdist=texture2D(u_dash_image,v_tex).a;float sdfgamma=1.0/(2.0*u_device_pixel_ratio)/dash.z;alpha*=linearstep(0.5-sdfgamma/floorwidth,0.5+sdfgamma/floorwidth,sdfdist);\n#endif\nhighp vec4 out_color;\n#ifdef RENDER_LINE_GRADIENT\nout_color=texture2D(u_gradient_image,v_uv.xy);\n#else\nout_color=color;\n#endif\nfloat trimmed=1.0;\n#ifdef RENDER_LINE_TRIM_OFFSET\nhighp float start=v_uv[2];highp float end=v_uv[3];highp float trim_start=u_trim_offset[0];highp float trim_end=u_trim_offset[1];highp float line_progress=(start+(v_uv.x)*(end-start));if (trim_end > trim_start) {if (line_progress <=trim_end && line_progress >=trim_start) {out_color=vec4(0,0,0,0);trimmed=0.0;}}\n#endif\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\n#ifdef RENDER_LINE_ALPHA_DISCARD\nif (alpha < u_alpha_discard_threshold) {discard;}\n#endif\n#ifdef RENDER_LINE_BORDER\nfloat edgeBlur=(u_border_width+1.0/u_device_pixel_ratio);float alpha2=clamp(min(dist-(v_width2.t-edgeBlur),v_width2.s-dist)/edgeBlur,0.0,1.0);if (alpha2 < 1.) {float smoothAlpha=smoothstep(0.6,1.0,alpha2);\n#ifdef RENDER_LINE_BORDER_AUTO\nfloat Y=(out_color.a > 0.01) ? luminance(out_color.rgb/out_color.a) : 1.;float adjustment=(Y > 0.) ? 0.5/Y : 0.45;if (out_color.a > 0.25 && Y < 0.25) {vec3 borderColor=(Y > 0.) ? out_color.rgb : vec3(1,1,1)*out_color.a;out_color.rgb=out_color.rgb+borderColor*(adjustment*(1.0-smoothAlpha));} else {out_color.rgb*=(0.6 +0.4*smoothAlpha);}\n#else\nout_color.rgb=mix(u_border_color.rgb*u_border_color.a*trimmed,out_color.rgb,smoothAlpha);\n#endif\n}\n#endif\ngl_FragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define EXTRUDE_SCALE 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\nattribute highp vec4 a_packed;\n#endif\n#ifdef RENDER_LINE_DASH\nattribute float a_linesofar;\n#endif\nuniform mat4 u_matrix;uniform mat2 u_pixels_to_tile_units;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec4 v_uv;\n#ifdef RENDER_LINE_DASH\nuniform vec2 u_texsize;uniform float u_tile_units_to_pixels;varying vec2 v_tex;\n#endif\n#ifdef RENDER_LINE_GRADIENT\nuniform float u_image_height;\n#endif\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 dash\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize lowp vec4 dash\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*EXTRUDE_SCALE;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*EXTRUDE_SCALE*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\n#ifndef RENDER_TO_TEXTURE\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#else\nv_gamma_scale=1.0;\n#endif\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\nfloat a_uv_x=a_packed[0];float a_split_index=a_packed[1];highp float a_clip_start=a_packed[2];highp float a_clip_end=a_packed[3];\n#ifdef RENDER_LINE_GRADIENT\nhighp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec4(a_uv_x,a_split_index*texel_height-half_texel_height,a_clip_start,a_clip_end);\n#else\nv_uv=vec4(a_uv_x,0.0,a_clip_start,a_clip_end);\n#endif\n#endif\n#ifdef RENDER_LINE_DASH\nfloat scale=dash.z==0.0 ? 0.0 : u_tile_units_to_pixels/dash.z;float height=dash.y;v_tex=vec2(a_linesofar*scale/floorwidth,(-normal.y*height+dash.x+0.5)/u_texsize.y);\n#endif\nv_width2=vec2(outset,inset);\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),linePattern:ui("uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_tile_units_to_pixels;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;vec2 pattern_size=vec2(display_size.x/u_tile_units_to_pixels,display_size.y);float aspect=display_size.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x=mod(v_linesofar/pattern_size.x*aspect,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos=mix(pattern_tl*texel_size-texel_size,pattern_br*texel_size+texel_size,vec2(x,y));vec4 color=texture2D(u_image,pos);\n#ifdef LIGHTING_3D_MODE\ncolor=apply_lighting(color);\n#endif\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#endif\ngl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_linesofar;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mat2 u_pixels_to_tile_units;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\n#ifndef RENDER_TO_TEXTURE\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#else\nv_gamma_scale=1.0;\n#endif\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}"),raster:ui("uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(\ndot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);vec3 out_color=mix(u_high_vec,u_low_vec,rgb);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply(out_color,v_fog_pos));\n#endif\ngl_FragColor=vec4(out_color*color.a,color.a);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform vec2 u_perspective_transform;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {float w=1.0+dot(a_texture_pos,u_perspective_transform);gl_Position=u_matrix*vec4(a_pos*w,0,w);v_pos0=a_texture_pos/8192.0;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}"),symbolIcon:ui("uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_pixeloffset;attribute vec4 a_projected_pos;attribute float a_fade_opacity;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_globe_anchor;attribute vec3 a_globe_normal;\n#endif\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform vec3 u_up_vector;\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\n#endif\nvarying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_min_font_scale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;vec3 h=elevationVector(tile_anchor)*elevation(tile_anchor);float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\n#else\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\n#endif\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjected_point;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetProjected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\n#else\noffsetProjected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\n#endif\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetProjected_point.xy/offsetProjected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\n#else\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*max(a_min_font_scale,font_scale)+a_pxoffset/16.0);\n#ifdef TERRAIN\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\n#endif\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\n#else\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\n#endif\nfloat projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nv_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change))*projection_transition_fade;}"),symbolSDF:ui("#define SDF_PX 8.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_pixeloffset;attribute vec4 a_projected_pos;attribute float a_fade_opacity;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_globe_anchor;attribute vec3 a_globe_normal;\n#endif\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\n#endif\nvarying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;vec3 h=elevationVector(tile_anchor)*elevation(tile_anchor);float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\n#else\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\n#endif\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetprojected_point;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetprojected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\n#else\noffsetprojected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\n#endif\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetprojected_point.xy/offsetprojected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\n#else\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset);\n#ifdef TERRAIN\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\n#endif\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\n#else\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\n#endif\nfloat gamma_scale=gl_Position.w;float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nvec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity*projection_transition_fade);}"),symbolTextAndIcon:ui("#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_projected_pos;attribute float a_fade_opacity;\n#ifdef PROJECTION_GLOBE_VIEW\nattribute vec3 a_globe_anchor;attribute vec3 a_globe_normal;\n#endif\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;uniform vec2 u_texsize_icon;\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\n#endif\nvarying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;vec3 h=elevationVector(tile_anchor)*elevation(tile_anchor);float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\n#else\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\n#endif\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offset_projected_point=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projected_point.xy/projected_point.w;vec2 b=offset_projected_point.xy/offset_projected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\n#else\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*font_scale);\n#ifdef TERRAIN\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\n#endif\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\n#else\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\n#endif\nfloat gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nv_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity*projection_transition_fade,is_sdf);}"),terrainRaster:ui("uniform sampler2D u_image0;varying vec2 v_pos0;\n#ifdef FOG\nvarying float v_fog_opacity;\n#endif\n#ifdef RENDER_SHADOWS\nvarying vec4 v_pos_light_view_0;varying vec4 v_pos_light_view_1;varying float v_depth;\n#endif\nvoid main() {vec4 color=texture2D(u_image0,v_pos0);\n#ifdef RENDER_SHADOWS\ncolor.xyz=shadowed_color(color.xyz,v_pos_light_view_0,v_pos_light_view_1,v_depth);\n#endif\n#ifdef FOG\n#ifdef ZERO_EXAGGERATION\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#else\ncolor=fog_dither(fog_apply_from_vert(color,v_fog_opacity));\n#endif\n#endif\ngl_FragColor=color;\n#ifdef TERRAIN_WIREFRAME\ngl_FragColor=vec4(1.0,0.0,0.0,0.8);\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_skirt_height;attribute vec2 a_pos;varying vec2 v_pos0;\n#ifdef FOG\nvarying float v_fog_opacity;\n#endif\n#ifdef RENDER_SHADOWS\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;varying vec4 v_pos_light_view_0;varying vec4 v_pos_light_view_1;varying float v_depth;\n#endif\nconst float wireframeOffset=0.00015;void main() {vec3 decomposedPosAndSkirt=decomposeToPosAndSkirt(a_pos);float skirt=decomposedPosAndSkirt.z;vec2 decodedPos=decomposedPosAndSkirt.xy;float elevation=elevation(decodedPos)-skirt*u_skirt_height;\n#ifdef TERRAIN_WIREFRAME\nelevation+=wireframeOffset;\n#endif\nv_pos0=decodedPos/8192.0;gl_Position=u_matrix*vec4(decodedPos,elevation,1.0);\n#ifdef FOG\n#ifdef ZERO_EXAGGERATION\nv_fog_pos=fog_position(decodedPos);\n#else\nv_fog_opacity=fog(fog_position(vec3(decodedPos,elevation)));\n#endif\n#endif\n#ifdef RENDER_SHADOWS\nvec3 pos=vec3(decodedPos,elevation);v_pos_light_view_0=u_light_matrix_0*vec4(pos,1.);v_pos_light_view_1=u_light_matrix_1*vec4(pos,1.);v_depth=gl_Position.w;\n#endif\n}"),terrainDepth:ui("#ifdef GL_ES\nprecision highp float;\n#endif\nvarying float v_depth;void main() {gl_FragColor=pack_depth(v_depth);}","uniform mat4 u_matrix;attribute vec2 a_pos;varying float v_depth;void main() {float elevation=elevation(a_pos);gl_Position=u_matrix*vec4(a_pos,elevation,1.0);v_depth=gl_Position.z/gl_Position.w;}"),skybox:ui("\nvarying lowp vec3 v_uv;uniform lowp samplerCube u_cubemap;uniform lowp float u_opacity;uniform highp float u_temporal_offset;uniform highp vec3 u_sun_direction;float sun_disk(highp vec3 ray_direction,highp vec3 sun_direction) {highp float cos_angle=dot(normalize(ray_direction),sun_direction);const highp float cos_sun_angular_diameter=0.99996192306;const highp float smoothstep_delta=1e-5;return smoothstep(\ncos_sun_angular_diameter-smoothstep_delta,cos_sun_angular_diameter+smoothstep_delta,cos_angle);}float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec3 uv=v_uv;const float y_bias=0.015;uv.y+=y_bias;uv.y=pow(abs(uv.y),1.0/5.0);uv.y=map(uv.y,0.0,1.0,-1.0,1.0);vec3 sky_color=textureCube(u_cubemap,uv).rgb;\n#ifdef FOG\nsky_color=fog_apply_sky_gradient(v_uv.xzy,sky_color);\n#endif\nsky_color.rgb=dither(sky_color.rgb,gl_FragCoord.xy+u_temporal_offset);sky_color+=0.1*sun_disk(v_uv,u_sun_direction);gl_FragColor=vec4(sky_color*u_opacity,u_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Qt),skyboxGradient:ui("varying highp vec3 v_uv;uniform lowp sampler2D u_color_ramp;uniform highp vec3 u_center_direction;uniform lowp float u_radius;uniform lowp float u_opacity;uniform highp float u_temporal_offset;void main() {float progress=acos(dot(normalize(v_uv),u_center_direction))/u_radius;vec4 color=texture2D(u_color_ramp,vec2(progress,0.5));\n#ifdef FOG\ncolor.rgb=fog_apply_sky_gradient(v_uv.xzy,color.rgb/color.a)*color.a;\n#endif\ncolor*=u_opacity;color.rgb=dither(color.rgb,gl_FragCoord.xy+u_temporal_offset);gl_FragColor=color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}",Qt),skyboxCapture:ui("\nvarying highp vec3 v_position;uniform highp float u_sun_intensity;uniform highp float u_luminance;uniform lowp vec3 u_sun_direction;uniform highp vec4 u_color_tint_r;uniform highp vec4 u_color_tint_m;\n#ifdef GL_ES\nprecision highp float;\n#endif\n#define BETA_R vec3(5.5e-6,13.0e-6,22.4e-6)\n#define BETA_M vec3(21e-6,21e-6,21e-6)\n#define MIE_G 0.76\n#define DENSITY_HEIGHT_SCALE_R 8000.0\n#define DENSITY_HEIGHT_SCALE_M 1200.0\n#define PLANET_RADIUS 6360e3\n#define ATMOSPHERE_RADIUS 6420e3\n#define SAMPLE_STEPS 10\n#define DENSITY_STEPS 4\nfloat ray_sphere_exit(vec3 orig,vec3 dir,float radius) {float a=dot(dir,dir);float b=2.0*dot(dir,orig);float c=dot(orig,orig)-radius*radius;float d=sqrt(b*b-4.0*a*c);return (-b+d)/(2.0*a);}vec3 extinction(vec2 density) {return exp(-vec3(BETA_R*u_color_tint_r.a*density.x+BETA_M*u_color_tint_m.a*density.y));}vec2 local_density(vec3 point) {float height=max(length(point)-PLANET_RADIUS,0.0);float exp_r=exp(-height/DENSITY_HEIGHT_SCALE_R);float exp_m=exp(-height/DENSITY_HEIGHT_SCALE_M);return vec2(exp_r,exp_m);}float phase_ray(float cos_angle) {return (3.0/(16.0*PI))*(1.0+cos_angle*cos_angle);}float phase_mie(float cos_angle) {return (3.0/(8.0*PI))*((1.0-MIE_G*MIE_G)*(1.0+cos_angle*cos_angle))/((2.0+MIE_G*MIE_G)*pow(1.0+MIE_G*MIE_G-2.0*MIE_G*cos_angle,1.5));}vec2 density_to_atmosphere(vec3 point,vec3 light_dir) {float ray_len=ray_sphere_exit(point,light_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(DENSITY_STEPS);vec2 density_point_to_atmosphere=vec2(0.0);for (int i=0; i < DENSITY_STEPS;++i) {vec3 point_on_ray=point+light_dir*((float(i)+0.5)*step_len);density_point_to_atmosphere+=local_density(point_on_ray)*step_len;;}return density_point_to_atmosphere;}vec3 atmosphere(vec3 ray_dir,vec3 sun_direction,float sun_intensity) {vec2 density_orig_to_point=vec2(0.0);vec3 scatter_r=vec3(0.0);vec3 scatter_m=vec3(0.0);vec3 origin=vec3(0.0,PLANET_RADIUS,0.0);float ray_len=ray_sphere_exit(origin,ray_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(SAMPLE_STEPS);for (int i=0; i < SAMPLE_STEPS;++i) {vec3 point_on_ray=origin+ray_dir*((float(i)+0.5)*step_len);vec2 density=local_density(point_on_ray)*step_len;density_orig_to_point+=density;vec2 density_point_to_atmosphere=density_to_atmosphere(point_on_ray,sun_direction);vec2 density_orig_to_atmosphere=density_orig_to_point+density_point_to_atmosphere;vec3 extinction=extinction(density_orig_to_atmosphere);scatter_r+=density.x*extinction;scatter_m+=density.y*extinction;}float cos_angle=dot(ray_dir,sun_direction);float phase_r=phase_ray(cos_angle);float phase_m=phase_mie(cos_angle);vec3 beta_r=BETA_R*u_color_tint_r.rgb*u_color_tint_r.a;vec3 beta_m=BETA_M*u_color_tint_m.rgb*u_color_tint_m.a;return (scatter_r*phase_r*beta_r+scatter_m*phase_m*beta_m)*sun_intensity;}const float A=0.15;const float B=0.50;const float C=0.10;const float D=0.20;const float E=0.02;const float F=0.30;vec3 uncharted2_tonemap(vec3 x) {return ((x*(A*x+C*B)+D*E)/(x*(A*x+B)+D*F))-E/F;}void main() {vec3 ray_direction=v_position;ray_direction.y=pow(ray_direction.y,5.0);const float y_bias=0.015;ray_direction.y+=y_bias;vec3 color=atmosphere(normalize(ray_direction),u_sun_direction,u_sun_intensity);float white_scale=1.0748724675633854;color=uncharted2_tonemap((log2(2.0/pow(u_luminance,4.0)))*color)*white_scale;gl_FragColor=vec4(color,1.0);}","attribute highp vec3 a_pos_3f;uniform mat3 u_matrix_3f;varying highp vec3 v_position;float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec4 pos=vec4(u_matrix_3f*a_pos_3f,1.0);v_position=pos.xyz;v_position.y*=-1.0;v_position.y=map(v_position.y,-1.0,1.0,0.0,1.0);gl_Position=vec4(a_pos_3f.xy,0.0,1.0);}"),globeRaster:ui("uniform sampler2D u_image0;varying vec2 v_pos0;\n#ifndef FOG\nuniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform vec2 u_viewport;\n#endif\nvoid main() {vec4 color;\n#ifdef CUSTOM_ANTIALIASING\nvec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);vec3 dir=normalize(ray_dir);vec3 closest_point=dot(u_globe_pos,dir)*dir;float norm_dist_from_center=1.0-length(closest_point-u_globe_pos)/u_globe_radius;const float antialias_pixel=2.0;float antialias_factor=antialias_pixel*fwidth(norm_dist_from_center);float antialias=smoothstep(0.0,antialias_factor,norm_dist_from_center);vec4 raster=texture2D(u_image0,v_pos0);color=vec4(raster.rgb*antialias,raster.a*antialias);\n#else\ncolor=texture2D(u_image0,v_pos0);\n#endif\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#endif\ngl_FragColor=color;\n#ifdef TERRAIN_WIREFRAME\ngl_FragColor=vec4(1.0,0.0,0.0,0.8);\n#endif\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_proj_matrix;uniform mat4 u_normalize_matrix;uniform mat4 u_globe_matrix;uniform mat4 u_merc_matrix;uniform float u_zoom_transition;uniform vec2 u_merc_center;uniform mat3 u_grid_matrix;uniform float u_skirt_height;\n#ifdef GLOBE_POLES\nattribute vec3 a_globe_pos;attribute vec2 a_uv;\n#else\nattribute vec2 a_pos;\n#endif\nvarying vec2 v_pos0;const float wireframeOffset=1e3;float mercatorXfromLng(float lng) {return (180.0+lng)/360.0;}float mercatorYfromLat(float lat) {return (180.0-(RAD_TO_DEG*log(tan(QUARTER_PI+lat/2.0*DEG_TO_RAD))))/360.0;}vec3 latLngToECEF(vec2 latLng) {latLng=DEG_TO_RAD*latLng;float cosLat=cos(latLng[0]);float sinLat=sin(latLng[0]);float cosLng=cos(latLng[1]);float sinLng=sin(latLng[1]);float sx=cosLat*sinLng*GLOBE_RADIUS;float sy=-sinLat*GLOBE_RADIUS;float sz=cosLat*cosLng*GLOBE_RADIUS;return vec3(sx,sy,sz);}void main() {\n#ifdef GLOBE_POLES\nvec3 globe_pos=a_globe_pos;vec2 uv=a_uv;\n#else\nfloat tiles=u_grid_matrix[0][2];float idx=u_grid_matrix[1][2];float idy=u_grid_matrix[2][2];vec3 decomposed_pos_and_skirt=decomposeToPosAndSkirt(a_pos);vec3 latLng=u_grid_matrix*vec3(decomposed_pos_and_skirt.xy,1.0);float mercatorY=mercatorYfromLat(latLng[0]);float uvY=mercatorY*tiles-idy;float mercatorX=mercatorXfromLng(latLng[1]);float uvX=mercatorX*tiles-idx;vec3 globe_pos=latLngToECEF(latLng.xy);vec2 merc_pos=vec2(mercatorX,mercatorY);vec2 uv=vec2(uvX,uvY);\n#endif\nv_pos0=uv;vec2 tile_pos=uv*EXTENT;vec3 globe_derived_up_vector=normalize(globe_pos)*u_tile_up_scale;\n#ifdef GLOBE_POLES\nvec3 up_vector=globe_derived_up_vector;\n#else\nvec3 up_vector=elevationVector(tile_pos);\n#endif\nfloat height=elevation(tile_pos);\n#ifdef TERRAIN_WIREFRAME\nheight+=wireframeOffset;\n#endif\nglobe_pos+=up_vector*height;\n#ifndef GLOBE_POLES\nglobe_pos-=globe_derived_up_vector*u_skirt_height*decomposed_pos_and_skirt.z;\n#endif\n#ifdef GLOBE_POLES\nvec4 interpolated_pos=u_globe_matrix*vec4(globe_pos,1.0);\n#else\nvec4 globe_world_pos=u_globe_matrix*vec4(globe_pos,1.0);vec4 merc_world_pos=vec4(0.0);if (u_zoom_transition > 0.0) {merc_world_pos=vec4(merc_pos,height-u_skirt_height*decomposed_pos_and_skirt.z,1.0);merc_world_pos.xy-=u_merc_center;merc_world_pos.x=wrap(merc_world_pos.x,-0.5,0.5);merc_world_pos=u_merc_matrix*merc_world_pos;}vec4 interpolated_pos=vec4(mix(globe_world_pos.xyz,merc_world_pos.xyz,u_zoom_transition),1.0);\n#endif\ngl_Position=u_proj_matrix*interpolated_pos;\n#ifdef FOG\nv_fog_pos=fog_position((u_normalize_matrix*vec4(globe_pos,1.0)).xyz);\n#endif\n}"),globeAtmosphere:ui("uniform float u_transition;uniform highp float u_fadeout_range;uniform highp float u_temporal_offset;uniform vec3 u_start_color;uniform vec4 u_color;uniform vec4 u_space_color;uniform vec4 u_high_color;uniform float u_star_intensity;uniform float u_star_size;uniform float u_star_density;uniform float u_horizon_angle;uniform mat4 u_rotation_matrix;varying highp vec3 v_ray_dir;varying highp vec3 v_horizon_dir;highp float random(highp vec3 p) {p=fract(p*vec3(23.2342,97.1231,91.2342));p+=dot(p.zxy,p.yxz+123.1234);return fract(p.x*p.y);}float stars(vec3 p,float scale,vec2 offset) {vec2 uv_scale=(u_viewport/u_star_size)*scale;vec3 position=vec3(p.xy*uv_scale+offset*u_viewport,p.z);vec3 q=fract(position)-0.5;vec3 id=floor(position);float random_visibility=step(random(id),u_star_density);float circle=smoothstep(0.5+u_star_intensity,0.5,length(q));return circle*random_visibility;}void main() {highp vec3 dir=normalize(v_ray_dir);float globe_pos_dot_dir;\n#ifdef PROJECTION_GLOBE_VIEW\nglobe_pos_dot_dir=dot(u_globe_pos,dir);highp vec3 closest_point_forward=abs(globe_pos_dot_dir)*dir;float norm_dist_from_center=length(closest_point_forward-u_globe_pos)/u_globe_radius;if (norm_dist_from_center < 0.98) {discard;return;}\n#endif\nhighp vec3 horizon_dir=normalize(v_horizon_dir);float horizon_angle_mercator=dir.y < horizon_dir.y ?\n0.0 : max(acos(dot(dir,horizon_dir)),0.0);float horizon_angle;\n#ifdef PROJECTION_GLOBE_VIEW\nhighp vec3 closest_point=globe_pos_dot_dir*dir;float closest_point_to_center=length(closest_point-u_globe_pos);float theta=asin(clamp(closest_point_to_center/length(u_globe_pos),-1.0,1.0));horizon_angle=globe_pos_dot_dir < 0.0 ?\nPI-theta-u_horizon_angle : theta-u_horizon_angle;float angle_t=pow(u_transition,10.0);horizon_angle=mix(horizon_angle,horizon_angle_mercator,angle_t);\n#else\nhorizon_angle=horizon_angle_mercator;\n#endif\nhorizon_angle/=PI;float t=exp(-horizon_angle/u_fadeout_range);float alpha_0=u_color.a;float alpha_1=u_high_color.a;float alpha_2=u_space_color.a;vec3 color_stop_0=u_color.rgb;vec3 color_stop_1=u_high_color.rgb;vec3 color_stop_2=u_space_color.rgb;vec3 c0=mix(color_stop_2,color_stop_1,alpha_1);vec3 c1=mix(c0,color_stop_0,alpha_0);vec3 c2=mix(c0,c1,t);vec3 c =mix(color_stop_2,c2,t);float a0=mix(alpha_2,1.0,alpha_1);float a1=mix(a0,1.0,alpha_0);float a2=mix(a0,a1,t);float a =mix(alpha_2,a2,t);vec2 uv=gl_FragCoord.xy/u_viewport-0.5;float aspect_ratio=u_viewport.x/u_viewport.y;vec4 uv_dir=vec4(normalize(vec3(uv.x*aspect_ratio,uv.y,1.0)),1.0);uv_dir=u_rotation_matrix*uv_dir;vec3 n=abs(uv_dir.xyz);vec2 uv_remap=(n.x > n.y && n.x > n.z) ? uv_dir.yz/uv_dir.x:\n(n.y > n.x && n.y > n.z) ? uv_dir.zx/uv_dir.y:\nuv_dir.xy/uv_dir.z;uv_remap.x/=aspect_ratio;vec3 D=vec3(uv_remap,1.0);highp float star_field=0.0;if (u_star_intensity > 0.0) {star_field+=stars(D,1.2,vec2(0.0,0.0));star_field+=stars(D,1.0,vec2(1.0,0.0));star_field+=stars(D,0.8,vec2(0.0,1.0));star_field+=stars(D,0.6,vec2(1.0,1.0));star_field*=(1.0-pow(t,0.25+(1.0-u_high_color.a)*0.75));c+=star_field*alpha_2;}c=dither(c,gl_FragCoord.xy+u_temporal_offset);gl_FragColor=vec4(c,a);}","attribute vec3 a_pos;attribute vec2 a_uv;uniform vec3 u_frustum_tl;uniform vec3 u_frustum_tr;uniform vec3 u_frustum_br;uniform vec3 u_frustum_bl;uniform float u_horizon;varying highp vec3 v_ray_dir;varying highp vec3 v_horizon_dir;void main() {v_ray_dir=mix(\nmix(u_frustum_tl,u_frustum_tr,a_uv.x),mix(u_frustum_bl,u_frustum_br,a_uv.x),a_uv.y);v_horizon_dir=mix(\nmix(u_frustum_tl,u_frustum_bl,u_horizon),mix(u_frustum_tr,u_frustum_br,u_horizon),a_uv.x);gl_Position=vec4(a_pos,1.0);}")};function hi(e,t){const i=e.replace(/\s*\/\/[^\n]*\n/g,"\n").split("\n");for(let e of i)if(e=e.trim(),"#"===e[0]&&e.includes("if")&&!e.includes("endif")){e=e.replace("#","").replace(/ifdef|ifndef|elif|if/g,"").replace(/!|defined|\(|\)|\|\||&&/g,"").replace(/\s+/g," ").trim();const i=e.split(" ");for(const e of i)t.includes(e)||t.push(e)}}function ui(e,t){const i=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,r=t.match(/attribute (highp |mediump |lowp )?([\w]+) ([\w]+)/g),n={},o=[...oi];return hi(e,o),hi(t,o),{fragmentSource:e=e.replace(i,((e,t,i,r,o)=>(n[o]=!0,"define"===t?`\n#ifndef HAS_UNIFORM_u_${o}\nvarying ${i} ${r} ${o};\n#else\nuniform ${i} ${r} u_${o};\n#endif\n`:`\n#ifdef HAS_UNIFORM_u_${o}\n ${i} ${r} ${o} = u_${o};\n#endif\n`))),vertexSource:t=t.replace(i,((e,t,i,r,o)=>{const s="float"===r?"vec2":"vec4",a=o.match(/color/)?"color":s;return n[o]?"define"===t?`\n#ifndef HAS_UNIFORM_u_${o}\nuniform lowp float u_${o}_t;\nattribute ${i} ${s} a_${o};\nvarying ${i} ${r} ${o};\n#else\nuniform ${i} ${r} u_${o};\n#endif\n`:"vec4"===a?`\n#ifndef HAS_UNIFORM_u_${o}\n ${o} = a_${o};\n#else\n ${i} ${r} ${o} = u_${o};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${o}\n ${o} = unpack_mix_${a}(a_${o}, u_${o}_t);\n#else\n ${i} ${r} ${o} = u_${o};\n#endif\n`:"define"===t?`\n#ifndef HAS_UNIFORM_u_${o}\nuniform lowp float u_${o}_t;\nattribute ${i} ${s} a_${o};\n#else\nuniform ${i} ${r} u_${o};\n#endif\n`:"vec4"===a?`\n#ifndef HAS_UNIFORM_u_${o}\n ${i} ${r} ${o} = a_${o};\n#else\n ${i} ${r} ${o} = u_${o};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${o}\n ${i} ${r} ${o} = unpack_mix_${a}(a_${o}, u_${o}_t);\n#else\n ${i} ${r} ${o} = u_${o};\n#endif\n`})),staticAttributes:r,usedDefines:o}}class di{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffers=[],this.vao=null}bind(e,t,i,r,n,o,s){this.context=e;let a=this.boundPaintVertexBuffers.length!==r.length;for(let e=0;!a&&e{const n=i.paint.get("hillshade-shadow-color"),o=i.paint.get("hillshade-highlight-color"),s=i.paint.get("hillshade-accent-color");let a=i.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===i.paint.get("hillshade-illumination-anchor")&&(a-=e.transform.angle);const l=!e.options.moving;return{u_matrix:r||e.transform.calculateProjMatrix(t.tileID.toUnwrapped(),l),u_image:0,u_latrange:pi(0,t.tileID),u_light:[i.paint.get("hillshade-exaggeration"),a],u_shadow:n,u_highlight:o,u_accent:s}})(t,r,n,t.terrain?i.projMatrix:null);t.prepareDrawProgram(l,u,i.toUnwrapped());const{tileBoundsBuffer:p,tileBoundsIndexBuffer:f,tileBoundsSegments:m}=t.getTileBoundsBuffers(r);u.draw(l,c.TRIANGLES,o,s,a,e.CullFaceMode.disabled,d,n.id,p,f,m)}function mi(t,i,r){if(!i.needsDEMTextureUpload)return;const n=t.context,o=n.gl;n.pixelStoreUnpackPremultiplyAlpha.set(!1),i.demTexture=i.demTexture||t.getTileTexture(r.stride);const s=r.getPixels();i.demTexture?i.demTexture.update(s,{premultiply:!1}):i.demTexture=new e.Texture(n,s,o.RGBA,{premultiply:!1}),i.needsDEMTextureUpload=!1}function _i(t,i,r,n,o,s){const a=t.context,l=a.gl;if(!i.dem)return;const c=i.dem;if(a.activeTexture.set(l.TEXTURE1),mi(t,i,c),!i.demTexture)return;i.demTexture.bind(l.NEAREST,l.CLAMP_TO_EDGE);const h=c.dim;a.activeTexture.set(l.TEXTURE0);let u=i.fbo;if(!u){const t=new e.Texture(a,{width:h,height:h,data:null},l.RGBA);t.bind(l.LINEAR,l.CLAMP_TO_EDGE),u=i.fbo=a.createFramebuffer(h,h,!0),u.colorAttachment.set(t.texture)}a.bindFramebuffer.set(u.framebuffer),a.viewport.set([0,0,h,h]);const{tileBoundsBuffer:d,tileBoundsIndexBuffer:p,tileBoundsSegments:f}=t.getMercatorTileBoundsBuffers();t.useProgram("hillshadePrepare").draw(a,l.TRIANGLES,n,o,s,e.CullFaceMode.disabled,((t,i)=>{const r=i.stride,n=e.create();return e.ortho(n,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(n,n,[0,-e.EXTENT,0]),{u_matrix:n,u_image:1,u_dimension:[r,r],u_zoom:t.overscaledZ,u_unpack:i.unpackVector}})(i.tileID,c),r.id,d,p,f),i.needsHillshadePrepare=!1}const gi=t=>({u_matrix:new e.UniformMatrix4f(t),u_image0:new e.Uniform1i(t),u_skirt_height:new e.Uniform1f(t)}),yi=(e,t)=>({u_matrix:e,u_image0:0,u_skirt_height:t}),xi=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f)=>({u_proj_matrix:Float32Array.from(e),u_globe_matrix:t,u_normalize_matrix:Float32Array.from(r),u_merc_matrix:i,u_zoom_transition:n,u_merc_center:o,u_image0:0,u_frustum_tl:s,u_frustum_tr:a,u_frustum_br:l,u_frustum_bl:c,u_globe_pos:h,u_globe_radius:u,u_viewport:d,u_grid_matrix:f?Float32Array.from(f):new Float32Array(9),u_skirt_height:p});function vi(e,t){return null!=e&&null!=t&&!(!e.hasData()||!t.hasData())&&null!=e.demTexture&&null!=t.demTexture&&e.tileID.key!==t.tileID.key}const bi=new class{constructor(){this.operations={}}newMorphing(e,t,i,r,n){if(e in this.operations){const t=this.operations[e];t.to.tileID.key!==i.tileID.key&&(t.queued=i)}else this.operations[e]={startTime:r,phase:0,duration:n,from:t,to:i,queued:null}}getMorphValuesForProxy(e){if(!(e in this.operations))return null;const t=this.operations[e];return{from:t.from,to:t.to,phase:t.phase}}update(e){for(const t in this.operations){const i=this.operations[t];for(i.phase=(e-i.startTime)/i.duration;i.phase>=1||!this._validOp(i);)if(!this._nextOp(i,e)){delete this.operations[t];break}}}_nextOp(e,t){return!!e.queued&&(e.from=e.to,e.to=e.queued,e.queued=null,e.phase=0,e.startTime=t,!0)}_validOp(e){return e.from.hasData()&&e.to.hasData()}},wi={0:null,1:"TERRAIN_VERTEX_MORPHING",2:"TERRAIN_WIREFRAME"};function Ti(e){return 6*Math.pow(1.5,22-e)}function Ei(e,t){const i=1<({u_matrix:e});function Si(t,i,r,n,o){if(o>0){const s=e.exported.now(),a=(s-t.timeAdded)/o,l=i?(s-i.timeAdded)/o:-1,c=r.getSource(),h=n.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),u=!i||Math.abs(i.tileID.overscaledZ-h)>Math.abs(t.tileID.overscaledZ-h),d=u&&t.refreshedUponExpiration?1:e.clamp(u?a:1-l,0,1);return t.refreshedUponExpiration&&a>=1&&(t.refreshedUponExpiration=!1),i?{opacity:1,mix:1-d}:{opacity:d,mix:0}}return{opacity:1,mix:0}}class Mi extends e.SourceCache{constructor(e){const t={type:"raster-dem",maxzoom:e.transform.maxZoom},i=new k(je(),null),r=Ie("mock-dem",t,i,e.style);super("mock-dem",r,!1),r.setEventedParent(this),this._sourceLoaded=!0}_loadTile(e,t){e.state="loaded",t(null)}}class Ci extends e.SourceCache{constructor(e){const t=Ie("proxy",{type:"geojson",maxzoom:e.transform.maxZoom},new k(je(),null),e.style);super("proxy",t,!1),t.setEventedParent(this),this.map=this.getSource().map=e,this.used=this._sourceLoaded=!0,this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={}}update(t,i,r){if(t.freezeTileCoverage)return;this.transform=t;const n=t.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}).reduce(((i,r)=>{if(i[r.key]="",!this._tiles[r.key]){const i=new e.Tile(r,this._source.tileSize*r.overscaleFactor(),t.tileZoom);i.state="loaded",this._tiles[r.key]=i}return i}),{});for(const e in this._tiles)e in n||(this.freeFBO(e),this._tiles[e].unloadVectorData(),delete this._tiles[e])}freeFBO(e){const t=this.proxyCachedFBO[e];if(void 0!==t){const i=Object.values(t);this.renderCachePool.push(...i),delete this.proxyCachedFBO[e]}}deallocRenderCache(){this.renderCache.forEach((e=>e.fb.destroy())),this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={}}}class ki extends e.OverscaledTileID{constructor(e,t,i){super(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y),this.proxyTileKey=t,this.projMatrix=i}}class Ii extends e.Elevation{constructor(t,i){super(),this.painter=t,this.terrainTileForTile={},this.prevTerrainTileForTile={};const[r,n,o]=function(t){const i=new e.StructArrayLayout2i4,r=new e.StructArrayLayout3ui6,n=131;i.reserve(17161),r.reserve(33800);const o=e.EXTENT/128,s=e.EXTENT+o/2,a=s+o;for(let t=-o;ts||t<0||t>s?24575:0,o=e.clamp(Math.round(r),0,e.EXTENT),a=e.clamp(Math.round(t),0,e.EXTENT);i.emplaceBack(o+n,a)}const l=(e,t)=>{const i=t*n+e;r.emplaceBack(i+1,i,i+n),r.emplaceBack(i+n,i+n+1,i+1)};for(let e=1;e<129;e++)for(let t=1;t<129;t++)l(t,e);return[0,129].forEach((e=>{for(let t=0;t<130;t++)l(t,e),l(e,t)})),[i,r,32768]}(),s=t.context;this.gridBuffer=s.createVertexBuffer(r,e.posAttributes.members),this.gridIndexBuffer=s.createIndexBuffer(n),this.gridSegments=e.SegmentVector.simpleSegment(0,0,r.length,n.length),this.gridNoSkirtSegments=e.SegmentVector.simpleSegment(0,0,r.length,o),this.proxyCoords=[],this.proxiedCoords={},this._visibleDemTiles=[],this._drapedRenderBatches=[],this._sourceTilesOverlap={},this.proxySourceCache=new Ci(i.map),this.orthoMatrix=e.create(),e.ortho(this.orthoMatrix,"globe"===this.painter.transform.projection.name?.015:0,e.EXTENT,0,e.EXTENT,0,1);const a=s.gl;this._overlapStencilMode=new e.StencilMode({func:a.GEQUAL,mask:255},0,255,a.KEEP,a.KEEP,a.REPLACE),this._previousZoom=t.transform.zoom,this.pool=[],this._findCoveringTileCache={},this._tilesDirty={},this.style=i,this._useVertexMorphing=!0,this._exaggeration=1,this._mockSourceCache=new Mi(i.map)}set style(e){e.on("data",this._onStyleDataEvent.bind(this)),e.on("neworder",this._checkRenderCacheEfficiency.bind(this)),this._style=e,this._checkRenderCacheEfficiency(),this._style.map.on("moveend",(()=>{this._clearLineLayersFromRenderCache()}))}update(t,i,r){if(t&&t.terrain){this._style!==t&&(this.style=t),this.enabled=!0;const n=t.terrain.properties;this.sourceCache=0===t.terrain.drapeRenderMode?this._mockSourceCache:t._getSourceCache(n.get("source")),this._exaggeration=n.get("exaggeration");const o=()=>{this.sourceCache.used&&e.warnOnce(`Raster DEM source '${this.sourceCache.id}' is used both for terrain and as layer source.\nThis leads to lower resolution of hillshade. For full hillshade resolution but higher memory consumption, define another raster DEM source.`);const t=this.getScaledDemTileSize();this.sourceCache.update(i,t,!0),this.resetTileLookupCache(this.sourceCache.id)};this.sourceCache.usedForTerrain||(this.resetTileLookupCache(this.sourceCache.id),this.sourceCache.usedForTerrain=!0,o(),this._initializing=!0),o(),i.updateElevation(!0,r),this.resetTileLookupCache(this.proxySourceCache.id),this.proxySourceCache.update(i),this._emptyDEMTextureDirty=!0}else this._disable()}resetTileLookupCache(e){this._findCoveringTileCache[e]={}}getScaledDemTileSize(){return this.sourceCache.getSource().tileSize/128*this.proxySourceCache.getSource().tileSize}_checkRenderCacheEfficiency(){const t=this.renderCacheEfficiency(this._style);this._style.map._optimizeForTerrain||100!==t.efficiency&&e.warnOnce(`Terrain render cache efficiency is not optimal (${t.efficiency}%) and performance\n may be affected negatively, consider placing all background, fill and line layers before layer\n with id '${t.firstUndrapedLayer}' or create a map using optimizeForTerrain: true option.`)}_onStyleDataEvent(e){e.coord&&"source"===e.dataType?this._clearRenderCacheForTile(e.sourceCacheId,e.coord):"style"===e.dataType&&(this._invalidateRenderCache=!0)}_disable(){if(this.enabled&&(this.enabled=!1,this._sharedDepthStencil=void 0,this.proxySourceCache.deallocRenderCache(),this._style))for(const e in this._style._sourceCaches)this._style._sourceCaches[e].usedForTerrain=!1}destroy(){this._disable(),this._emptyDEMTexture&&this._emptyDEMTexture.destroy(),this._emptyDepthBufferTexture&&this._emptyDepthBufferTexture.destroy(),this.pool.forEach((e=>e.fb.destroy())),this.pool=[],this._depthFBO&&(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0)}_source(){return this.enabled?this.sourceCache:null}isUsingMockSource(){return this.sourceCache===this._mockSourceCache}exaggeration(){return this._exaggeration}get visibleDemTiles(){return this._visibleDemTiles}get drapeBufferSize(){const e=2*this.proxySourceCache.getSource().tileSize;return[e,e]}set useVertexMorphing(e){this._useVertexMorphing=e}updateTileBinding(t){if(!this.enabled)return;this.prevTerrainTileForTile=this.terrainTileForTile;const i=this.proxySourceCache,r=this.painter.transform;this._initializing&&(this._initializing=0===r._centerAltitude&&-1===this.getAtPointOrZero(e.MercatorCoordinate.fromLngLat(r.center),-1),this._emptyDEMTextureDirty=!this._initializing);const n=this.proxyCoords=i.getIds().map((e=>{const t=i.getTileByID(e).tileID;return t.projMatrix=r.calculateProjMatrix(t.toUnwrapped()),t}));!function(t,i){const r=i.transform.pointCoordinate(i.transform.getCameraPoint()),n=new e.Point(r.x,r.y);t.sort(((t,i)=>{if(i.overscaledZ-t.overscaledZ)return i.overscaledZ-t.overscaledZ;const r=new e.Point(t.canonical.x+(1<{this.proxyToSource[e.key]={}})),this.terrainTileForTile={};const s=this._style._sourceCaches;for(const e in s){const i=s[e];if(!i.used)continue;if(i!==this.sourceCache&&this.resetTileLookupCache(i.id),this._setupProxiedCoordsForOrtho(i,t[e],o),i.usedForTerrain)continue;const r=t[e];i.getSource().reparseOverscaled&&this._assignTerrainTiles(r)}this.proxiedCoords[i.id]=n.map((e=>new ki(e,e.key,this.orthoMatrix))),this._assignTerrainTiles(n),this._prepareDEMTextures(),this._setupDrapedRenderBatches(),this._initFBOPool(),this._setupRenderCache(o),this.renderingToTexture=!1,this._updateTimestamp=e.exported.now();const a={};this._visibleDemTiles=[];for(const e of this.proxyCoords){const t=this.terrainTileForTile[e.key];if(!t)continue;const i=t.tileID.key;i in a||(this._visibleDemTiles.push(t),a[i]=i)}}_assignTerrainTiles(e){this._initializing||e.forEach((e=>{if(this.terrainTileForTile[e.key])return;const t=this._findTileCoveringTileID(e,this.sourceCache);t&&(this.terrainTileForTile[e.key]=t)}))}_prepareDEMTextures(){const e=this.painter.context,t=e.gl;for(const i in this.terrainTileForTile){const r=this.terrainTileForTile[i],n=r.dem;!n||r.demTexture&&!r.needsDEMTextureUpload||(e.activeTexture.set(t.TEXTURE1),mi(this.painter,r,n))}}_prepareDemTileUniforms(e,t,i,r){if(!t||null==t.demTexture)return!1;const n=e.tileID.canonical,o=Math.pow(2,t.tileID.canonical.z-n.z),s=r||"";return i[`u_dem_tl${s}`]=[n.x*o%1,n.y*o%1],i[`u_dem_scale${s}`]=o,!0}get emptyDEMTexture(){return!this._emptyDEMTextureDirty&&this._emptyDEMTexture?this._emptyDEMTexture:this._updateEmptyDEMTexture()}get emptyDepthBufferTexture(){const t=this.painter.context,i=t.gl;if(!this._emptyDepthBufferTexture){const r=new e.RGBAImage({width:1,height:1},Uint8Array.of(255,255,255,255));this._emptyDepthBufferTexture=new e.Texture(t,r,i.RGBA,{premultiply:!1})}return this._emptyDepthBufferTexture}_getLoadedAreaMinimum(){let e=0;const t=this._visibleDemTiles.reduce(((t,i)=>{if(!i.dem)return t;const r=i.dem.tree.minimums[0];return r>0&&e++,t+r}),0);return e?t/e:0}_updateEmptyDEMTexture(){const t=this.painter.context,i=t.gl;t.activeTexture.set(i.TEXTURE2);const r=this._getLoadedAreaMinimum(),n=new e.RGBAImage({width:1,height:1},new Uint8Array(e.DEMData.pack(r,this.sourceCache.getSource().encoding)));this._emptyDEMTextureDirty=!1;let o=this._emptyDEMTexture;return o?o.update(n,{premultiply:!1}):o=this._emptyDEMTexture=new e.Texture(t,n,i.RGBA,{premultiply:!1}),o}setupElevationDraw(t,i,r){const n=this.painter.context,o=n.gl,s=(a=this.sourceCache.getSource().encoding,{u_dem:2,u_dem_prev:4,u_dem_unpack:e.DEMData.getUnpackVector(a),u_dem_tl:[0,0],u_dem_tl_prev:[0,0],u_dem_scale:0,u_dem_scale_prev:0,u_dem_size:0,u_dem_lerp:1,u_depth:3,u_depth_size_inv:[0,0],u_exaggeration:0});var a;s.u_dem_size=this.sourceCache.getSource().tileSize,s.u_exaggeration=this.exaggeration();let l=null,c=null,h=1;if(r&&r.morphing&&this._useVertexMorphing){const e=r.morphing.srcDemTile,i=r.morphing.dstDemTile;h=r.morphing.phase,e&&i&&(this._prepareDemTileUniforms(t,e,s,"_prev")&&(c=e),this._prepareDemTileUniforms(t,i,s)&&(l=i))}if(c&&l?(n.activeTexture.set(o.TEXTURE2),l.demTexture.bind(o.NEAREST,o.CLAMP_TO_EDGE,o.NEAREST),n.activeTexture.set(o.TEXTURE4),c.demTexture.bind(o.NEAREST,o.CLAMP_TO_EDGE,o.NEAREST),s.u_dem_lerp=h):(l=this.terrainTileForTile[t.tileID.key],n.activeTexture.set(o.TEXTURE2),(this._prepareDemTileUniforms(t,l,s)?l.demTexture:this.emptyDEMTexture).bind(o.NEAREST,o.CLAMP_TO_EDGE)),n.activeTexture.set(o.TEXTURE3),r&&r.useDepthForOcclusion?(this._depthTexture&&this._depthTexture.bind(o.NEAREST,o.CLAMP_TO_EDGE),this._depthFBO&&(s.u_depth_size_inv=[1/this._depthFBO.width,1/this._depthFBO.height])):(this.emptyDepthBufferTexture.bind(o.NEAREST,o.CLAMP_TO_EDGE),s.u_depth_size_inv=[1,1]),r&&r.useMeterToDem&&l){const t=(1<{if(c===e)return;const r=[wi[e],"PROJECTION_GLOBE_VIEW"];d&&r.push("CUSTOM_ANTIALIASING"),i&&r.push(wi[h]),l=t.useProgram("globeRaster",null,r),c=e},f=t.colorModeForRenderPass(),m=new e.DepthMode(a.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);bi.update(o);const _=e.calculateGlobeMercatorMatrix(u),g=[e.mercatorXfromLng(u.center.lng),e.mercatorYfromLat(u.center.lat)],y=h?[!1,!0]:[!1],x=t.globeSharedBuffers,v=[u.width*e.exported.devicePixelRatio,u.height*e.exported.devicePixelRatio],b=Float32Array.from(u.globeMatrix),w={useDenormalizedUpVectorScale:!0};if(y.forEach((h=>{const u=t.transform,d=Ti(u.zoom)*i.exaggeration();c=-1;const y=h?a.LINES:a.TRIANGLES;for(const c of n){const n=r.getTile(c),T=e.StencilMode.disabled,E=i.prevTerrainTileForTile[c.key],A=i.terrainTileForTile[c.key];vi(E,A)&&bi.newMorphing(c.key,E,A,o,250),s.activeTexture.set(a.TEXTURE0),n.texture.bind(a.LINEAR,a.CLAMP_TO_EDGE);const S=bi.getMorphValuesForProxy(c.key),M=S?1:0;S&&e.extend$1(w,{morphing:{srcDemTile:S.from,dstDemTile:S.to,phase:e.easeCubicInOut(S.phase)}});const C=e.tileCornersToBounds(c.canonical),k=e.getLatitudinalLod(C.getCenter().lat),I=e.getGridMatrix(c.canonical,C,k,u.worldSize/u._pixelsPerMercatorPixel),P=e.globeNormalizeECEF(e.globeTileBounds(c.canonical)),z=xi(u.projMatrix,b,_,P,e.globeToMercatorTransition(u.zoom),g,u.frustumCorners.TL,u.frustumCorners.TR,u.frustumCorners.BR,u.frustumCorners.BL,u.globeCenterInViewSpace,u.globeRadius,v,d,I);if(p(M,h),i.setupElevationDraw(n,l,w),t.prepareDrawProgram(s,l,c.toUnwrapped()),x){const[i,r,n]=h?x.getWirefameBuffers(t.context,k):x.getGridBuffers(k,0!==d);l.draw(s,y,m,T,f,e.CullFaceMode.backCCW,z,"globe_raster",i,r,n)}}})),x){const o=["GLOBE_POLES","PROJECTION_GLOBE_VIEW"];d&&o.push("CUSTOM_ANTIALIASING"),l=t.useProgram("globeRaster",null,o);for(const o of n){const{x:n,y:c,z:h}=o.canonical,d=0===c,p=c===(1<t.draw(s,a.TRIANGLES,m,e.StencilMode.disabled,f,e.CullFaceMode.disabled,xi(u.projMatrix,x,x,E,0,g,u.frustumCorners.TL,u.frustumCorners.TR,u.frustumCorners.BR,u.frustumCorners.BL,u.globeCenterInViewSpace,u.globeRadius,v,0),"globe_pole_raster",i,b,T);i.setupElevationDraw(c,l,w),t.prepareDrawProgram(s,l,o.toUnwrapped()),d&&A(l,_),p&&(x=e.scale(e.create(),x,[1,-1,1]),A(l,y))}}}}(t,i,r,n,o);else{const s=t.context,a=s.gl;let l,c;const h=t.options.showTerrainWireframe?2:0,u=(e,i)=>{if(c===e)return;const r=[wi[e]];i&&r.push(wi[h]),l=t.useProgram("terrainRaster",null,r),c=e},d=t.colorModeForRenderPass(),p=new e.DepthMode(a.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);bi.update(o);const f=t.transform,m=Ti(f.zoom)*i.exaggeration();(h?[!1,!0]:[!1]).forEach((h=>{c=-1;const _=h?a.LINES:a.TRIANGLES,[g,y]=h?i.getWirefameBuffer():[i.gridIndexBuffer,i.gridSegments];for(const c of n){const n=r.getTile(c),x=e.StencilMode.disabled,v=i.prevTerrainTileForTile[c.key],b=i.terrainTileForTile[c.key];vi(v,b)&&bi.newMorphing(c.key,v,b,o,250),s.activeTexture.set(a.TEXTURE0),n.texture.bind(a.LINEAR,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST);const w=bi.getMorphValuesForProxy(c.key),T=w?1:0;let E;w&&(E={morphing:{srcDemTile:w.from,dstDemTile:w.to,phase:e.easeCubicInOut(w.phase)}});const A=yi(c.projMatrix,Ei(c.canonical,f.renderWorldCopies)?m/10:m);u(T,h),i.setupElevationDraw(n,l,E),t.prepareDrawProgram(s,l,c.toUnwrapped()),l.draw(s,_,p,x,d,e.CullFaceMode.backCCW,A,"terrain_raster",i.gridBuffer,g,y)}}))}}(i,this,this.proxySourceCache,t,this._updateTimestamp),this.renderingToTexture=!0,i.gpuTimingDeferredRenderEnd(),t.splice(0,t.length))}renderBatch(t){if(0===this._drapedRenderBatches.length)return t+1;this.renderingToTexture=!0;const i=this.painter,r=this.painter.context,n=this.proxySourceCache,o=this.proxiedCoords[n.id],s=this._drapedRenderBatches.shift(),a=[],l=i.style.order;let c=0;for(const h of o){const o=n.getTileByID(h.proxyTileKey),u=n.proxyCachedFBO[h.key]?n.proxyCachedFBO[h.key][t]:void 0,d=void 0!==u?n.renderCache[u]:this.pool[c++],p=void 0!==u;if(o.texture=d.tex,p&&!d.dirty){a.push(o.tileID);continue}let f;r.bindFramebuffer.set(d.fb.framebuffer),this.renderedToTile=!1,d.dirty&&(r.clear({color:e.Color.transparent,stencil:0}),d.dirty=!1);for(let e=s.start;e<=s.end;++e){const t=i.style._layers[l[e]];if(t.isHidden(i.transform.zoom))continue;const n=i.style._getLayerSourceCache(t),o=n?this.proxyToSource[h.key][n.id]:[h];if(!o)continue;const s=o;r.viewport.set([0,0,d.fb.width,d.fb.height]),f!==(n?n.id:null)&&(this._setupStencil(d,o,t,n),f=n?n.id:null),i.renderLayer(i,n,t,s)}this.renderedToTile?(d.dirty=!0,a.push(o.tileID)):p||--c,5===c&&(c=0,this.renderToBackBuffer(a))}return this.renderToBackBuffer(a),this.renderingToTexture=!1,r.bindFramebuffer.set(null),r.viewport.set([0,0,i.width,i.height]),s.end+1}postRender(){}renderCacheEfficiency(e){const t=e.order.length;if(0===t)return{efficiency:100};let i,r=0,n=0,o=!1;for(let s=0;se.dem)).forEach((t=>{e=Math.min(e,t.dem.tree.minimums[0])})),0===e?e:(e-30)*this._exaggeration}raycast(e,t,i){if(!this._visibleDemTiles)return null;const r=this._visibleDemTiles.filter((e=>e.dem)).map((r=>{const n=r.tileID,o=1<(null!==e.t?e.t:Number.MAX_VALUE)-(null!==t.t?t.t:Number.MAX_VALUE)));for(const n of r){if(null==n.t)return null;const r=n.tile.dem.tree.raycast(n.minx,n.miny,n.maxx,n.maxy,e,t,i);if(null!=r)return r}return null}_createFBO(){const t=this.painter.context,i=t.gl,r=this.drapeBufferSize;t.activeTexture.set(i.TEXTURE0);const n=new e.Texture(t,{width:r[0],height:r[1],data:null},i.RGBA);n.bind(i.LINEAR,i.CLAMP_TO_EDGE);const o=t.createFramebuffer(r[0],r[1],!1);return o.colorAttachment.set(n.texture),o.depthAttachment=new we(t,o.framebuffer),void 0===this._sharedDepthStencil?(this._sharedDepthStencil=t.createRenderbuffer(t.gl.DEPTH_STENCIL,r[0],r[1]),this._stencilRef=0,o.depthAttachment.set(this._sharedDepthStencil),t.clear({stencil:0})):o.depthAttachment.set(this._sharedDepthStencil),t.extTextureFilterAnisotropic&&!t.extTextureFilterAnisotropicForceOff&&i.texParameterf(i.TEXTURE_2D,t.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,t.extTextureFilterAnisotropicMax),{fb:o,tex:n,dirty:!1}}_initFBOPool(){for(;this.pool.length{const t=this._style._layers[e],i=t.isHidden(this.painter.transform.zoom);return"custom"===t.type?!i&&t.shouldRedrape():!i&&t.hasTransition()}))}_clearLineLayersFromRenderCache(){let t=!1;for(const e of this._style._getSources())if(e instanceof Ae){t=!0;break}if(!t)return;const i={};for(let t=0;tt.renderCachePool.length){const e=Object.values(t.proxyCachedFBO);t.proxyCachedFBO={};for(let i=0;i=0;n--){const o=i[n];if(t.getTileByID(o.key),void 0!==t.proxyCachedFBO[o.key]){const i=e[o.key],n=this.proxyToSource[o.key];let s=0;for(const e in n){const t=n[e],o=i[e];if(!o||o.length!==t.length||t.some(((t,i)=>t!==o[i]||r[e]&&r[e].hasOwnProperty(t.key)))){s=-1;break}++s}for(const e in t.proxyCachedFBO[o.key])t.renderCache[t.proxyCachedFBO[o.key][e]].dirty=s<0||s!==Object.values(i).length}}const n=[...this._drapedRenderBatches];n.sort(((e,t)=>t.end-t.start-(e.end-e.start)));for(const e of n)for(const r of i){if(t.proxyCachedFBO[r.key])continue;let i=t.renderCachePool.pop();void 0===i&&t.renderCache.length<50&&(i=t.renderCache.length,t.renderCache.push(this._createFBO())),void 0!==i&&(t.proxyCachedFBO[r.key]={},t.proxyCachedFBO[r.key][e.start]=i,t.renderCache[i].dirty=!0)}this._tilesDirty={}}_setupStencil(e,t,i,r){if(!r||!this._sourceTilesOverlap[r.id])return void(this._overlapStencilType&&(this._overlapStencilType=!1));const n=this.painter.context,o=n.gl;if(t.length<=1)return void(this._overlapStencilType=!1);let s;if(i.isTileClipped())s=t.length,this._overlapStencilMode.test={func:o.EQUAL,mask:255},this._overlapStencilType="Clip";else{if(!(t[0].overscaledZ>t[t.length-1].overscaledZ))return void(this._overlapStencilType=!1);s=1,this._overlapStencilMode.test={func:o.GREATER,mask:255},this._overlapStencilType="Mask"}this._stencilRef+s>255&&(n.clear({stencil:0}),this._stencilRef=0),this._stencilRef+=s,this._overlapStencilMode.ref=this._stencilRef,i.isTileClipped()&&this._renderTileClippingMasks(t,this._overlapStencilMode.ref)}clipOrMaskOverlapStencilType(){return"Clip"===this._overlapStencilType||"Mask"===this._overlapStencilType}stencilModeForRTTOverlap(t){return this.renderingToTexture&&this._overlapStencilType?("Clip"===this._overlapStencilType&&(this._overlapStencilMode.ref=this.painter._tileClippingMaskIDs[t.key]),this._overlapStencilMode):e.StencilMode.disabled}_renderTileClippingMasks(t,i){const r=this.painter,n=this.painter.context,o=n.gl;r._tileClippingMaskIDs={},n.setColorMode(e.ColorMode.disabled),n.setDepthMode(e.DepthMode.disabled);const s=r.useProgram("clippingMask");for(const a of t){const t=r._tileClippingMaskIDs[a.key]=--i;s.draw(n,o.TRIANGLES,e.DepthMode.disabled,new e.StencilMode({func:o.ALWAYS,mask:0},t,255,o.KEEP,o.KEEP,o.REPLACE),e.ColorMode.disabled,e.CullFaceMode.disabled,Ai(a.projMatrix),"$clipping",r.tileExtentBuffer,r.quadTriangleIndexBuffer,r.tileExtentSegments)}}pointCoordinate(t){const i=this.painter.transform;if(t.x<0||t.x>i.width||t.y<0||t.y>i.height)return null;const r=[t.x,t.y,1,1];e.transformMat4$1(r,r,i.pixelMatrixInverse),e.scale$1(r,r,1/r[3]),r[0]/=i.worldSize,r[1]/=i.worldSize;const n=i._camera.position,o=e.mercatorZfromAltitude(1,i.center.lat),s=[n[0],n[1],n[2]/o,0],a=e.subtract([],r.slice(0,3),s);e.normalize(a,a);const l=this.raycast(s,a,this._exaggeration);return null!==l&&l?(e.scaleAndAdd(s,s,a,l),s[3]=s[2],s[2]*=o,s):null}drawDepth(){const t=this.painter,i=t.context,r=this.proxySourceCache,n=Math.ceil(t.width),o=Math.ceil(t.height);if(!this._depthFBO||this._depthFBO.width===n&&this._depthFBO.height===o||(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0),!this._depthFBO){const t=i.gl,r=i.createFramebuffer(n,o,!0);i.activeTexture.set(t.TEXTURE0);const s=new e.Texture(i,{width:n,height:o,data:null},t.RGBA);s.bind(t.NEAREST,t.CLAMP_TO_EDGE),r.colorAttachment.set(s.texture);const a=i.createRenderbuffer(i.gl.DEPTH_COMPONENT16,n,o);r.depthAttachment.set(a),this._depthFBO=r,this._depthTexture=s}i.bindFramebuffer.set(this._depthFBO.framebuffer),i.viewport.set([0,0,n,o]),function(t,i,r,n){if("globe"===t.transform.projection.name)return;const o=t.context,s=o.gl;o.clear({depth:1});const a=t.useProgram("terrainDepth"),l=new e.DepthMode(s.LESS,e.DepthMode.ReadWrite,t.depthRangeFor3D);for(const t of n){const n=r.getTile(t),c=yi(t.projMatrix,0);i.setupElevationDraw(n,a),a.draw(o,s.TRIANGLES,l,e.StencilMode.disabled,e.ColorMode.unblended,e.CullFaceMode.backCCW,c,"terrain_depth",i.gridBuffer,i.gridIndexBuffer,i.gridNoSkirtSegments)}}(t,this,r,this.proxyCoords)}_setupProxiedCoordsForOrtho(e,t,i){if(e.getSource()instanceof Ce)return this._setupProxiedCoordsForImageSource(e,t,i);this._findCoveringTileCache[e.id]=this._findCoveringTileCache[e.id]||{};const r=this.proxiedCoords[e.id]=[],n=this.proxyCoords;for(let t=0;t(e.min.x=Math.min(e.min.x,t.x-a.x),e.min.y=Math.min(e.min.y,t.y-a.y),e.max.x=Math.max(e.max.x,t.x-a.x),e.max.y=Math.max(e.max.y,t.y-a.y),e)),{min:new e.Point(Number.MAX_VALUE,Number.MAX_VALUE),max:new e.Point(-Number.MAX_VALUE,-Number.MAX_VALUE)}),c=(t,i)=>{const r=t.wrap+t.canonical.x/(1<s+l.max.x||n+oa+l.max.y};for(let e=0;ee.key===i.tileID.key));if(e)return e}if(i.tileID.key!==t.key){const r=t.canonical.z-i.tileID.canonical.z;let o,s,a;n=e.create();const l=i.tileID.wrap-t.wrap<0?(o=e.EXTENT>>r,s=o*((i.tileID.canonical.x<=n){const r=t.canonical.z-n;i.getSource().reparseOverscaled?(a=Math.max(t.canonical.z+2,i.transform.tileZoom),s=new e.OverscaledTileID(a,t.wrap,n,t.canonical.x>>r,t.canonical.y>>r)):0!==r&&(a=n,s=new e.OverscaledTileID(a,t.wrap,n,t.canonical.x>>r,t.canonical.y>>r))}s.key!==t.key&&(c.push(s.key),r=i.getTile(s))}const h=e=>{c.forEach((t=>{n[t]=e})),c.length=0};for(a-=1;a>=l&&(!r||!r.hasData());a--){r&&h(r.tileID.key);const e=s.calculateScaledKey(a);if(r=i.getTileByID(e),r&&r.hasData())break;const t=n[e];if(null===t)break;void 0===t?c.push(e):r=i.getTileByID(t)}return h(r?r.tileID.key:null),r&&r.hasData()?r:null}findDEMTileFor(e){return this.enabled?this._findTileCoveringTileID(e,this.sourceCache):null}prepareDrawTile(){this.renderedToTile=!0}_clearRenderCacheForTile(e,t){let i=this._tilesDirty[e];i||(i=this._tilesDirty[e]={}),i[t.key]=!0}getWirefameBuffer(){if(!this.wireframeSegments){const t=function(t){let i=0;const r=new e.StructArrayLayout2ui4,n=131;for(let e=1;e<129;e++){for(let t=1;t<129;t++)i=e*n+t,r.emplaceBack(i,i+1),r.emplaceBack(i,i+n),r.emplaceBack(i+1,i+n),128===e&&r.emplaceBack(i+n,i+n+1);r.emplaceBack(i+1,i+1+n)}return r}();this.wireframeIndexBuffer=this.painter.context.createIndexBuffer(t),this.wireframeSegments=e.SegmentVector.simpleSegment(0,0,this.gridBuffer.length,t.length)}return[this.wireframeIndexBuffer,this.wireframeSegments]}}class Pi{static cacheKey(e,t,i,r){let n=`${t}${r?r.cacheKey:""}`;for(const t of i)e.usedDefines.includes(t)&&(n+=`/${t}`);return n}constructor(t,i,r,n,o,s){const a=t.gl;this.program=a.createProgram();const l=function(e){const t=[];for(let i=0;i`#define ${e}`)));const d=t.isWebGL2?"#version 300 es\n":"",p=d+u.concat(t.extStandardDerivatives&&0===d.length?"#extension GL_OES_standard_derivatives : enable\n".concat(li):li,li,ai,si.fragmentSource,ni.fragmentSource,r.fragmentSource).join("\n"),f=d+u.concat("\n#ifdef GL_ES\nprecision highp float;\n#else\n\n#if !defined(lowp)\n#define lowp\n#endif\n\n#if !defined(mediump)\n#define mediump\n#endif\n\n#if !defined(highp)\n#define highp\n#endif\n\n#endif",ai,si.vertexSource,ni.vertexSource,ri.vertexSource,r.vertexSource).join("\n"),m=a.createShader(a.FRAGMENT_SHADER);if(a.isContextLost())return void(this.failedToCreate=!0);a.shaderSource(m,p),a.compileShader(m),a.attachShader(this.program,m);const _=a.createShader(a.VERTEX_SHADER);if(a.isContextLost())this.failedToCreate=!0;else{a.shaderSource(_,f),a.compileShader(_),a.attachShader(this.program,_),this.attributes={},this.numAttributes=h.length;for(let e=0;e({u_dem:new e.Uniform1i(t),u_dem_prev:new e.Uniform1i(t),u_dem_unpack:new e.Uniform4f(t),u_dem_tl:new e.Uniform2f(t),u_dem_scale:new e.Uniform1f(t),u_dem_tl_prev:new e.Uniform2f(t),u_dem_scale_prev:new e.Uniform1f(t),u_dem_size:new e.Uniform1f(t),u_dem_lerp:new e.Uniform1f(t),u_exaggeration:new e.Uniform1f(t),u_depth:new e.Uniform1i(t),u_depth_size_inv:new e.Uniform2f(t),u_meter_to_dem:new e.Uniform1f(t),u_label_plane_matrix_inv:new e.UniformMatrix4f(t)}))(t)),s.includes("GLOBE")&&(this.globeUniforms=(t=>({u_tile_tl_up:new e.Uniform3f(t),u_tile_tr_up:new e.Uniform3f(t),u_tile_br_up:new e.Uniform3f(t),u_tile_bl_up:new e.Uniform3f(t),u_tile_up_scale:new e.Uniform1f(t)}))(t)),s.includes("FOG")&&(this.fogUniforms=(t=>({u_fog_matrix:new e.UniformMatrix4f(t),u_fog_range:new e.Uniform2f(t),u_fog_color:new e.Uniform4f(t),u_fog_horizon_blend:new e.Uniform1f(t),u_fog_temporal_offset:new e.Uniform1f(t),u_frustum_tl:new e.Uniform3f(t),u_frustum_tr:new e.Uniform3f(t),u_frustum_br:new e.Uniform3f(t),u_frustum_bl:new e.Uniform3f(t),u_globe_pos:new e.Uniform3f(t),u_globe_radius:new e.Uniform1f(t),u_globe_transition:new e.Uniform1f(t),u_is_globe:new e.Uniform1i(t),u_viewport:new e.Uniform2f(t)}))(t))}}setTerrainUniformValues(e,t){if(!this.terrainUniforms)return;const i=this.terrainUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e])}}setGlobeUniformValues(e,t){if(!this.globeUniforms)return;const i=this.globeUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e])}}setFogUniformValues(e,t){if(!this.fogUniforms)return;const i=this.fogUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e])}}draw(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){const m=e.gl;if(this.failedToCreate)return;e.program.set(this.program),e.setDepthMode(i),e.setStencilMode(r),e.setColorMode(n),e.setCullFace(o);for(const e of Object.keys(this.fixedUniforms))this.fixedUniforms[e].set(this.program,e,s[e]);p&&p.setUniforms(this.program,e,this.binderUniforms,u,{zoom:d});const _={[m.LINES]:2,[m.TRIANGLES]:3,[m.LINE_STRIP]:1}[t];for(const i of h.get()){const r=i.vaos||(i.vaos={});(r[a]||(r[a]=new di)).bind(e,this,l,p?p.getPaintVertexBuffers():[],c,i.vertexOffset,f||[]),m.drawElements(t,i.primitiveLength*_,m.UNSIGNED_SHORT,i.primitiveOffset*_*2)}}}function zi(e,t){const i=Math.pow(2,t.tileID.overscaledZ),r=t.tileSize*Math.pow(2,e.transform.tileZoom)/i,n=r*(t.tileID.canonical.x+t.tileID.wrap*i),o=r*t.tileID.canonical.y;return{u_image:0,u_texsize:t.imageAtlasTexture.size,u_tile_units_to_pixels:1/I(t,1,e.transform.tileZoom),u_pixel_coord_upper:[n>>16,o>>16],u_pixel_coord_lower:[65535&n,65535&o]}}const Li=e.create(),Di=(t,i,r,n,o,s,a,l,c,h,u)=>{const d=i.style.light,p=d.properties.get("position"),f=[p.x,p.y,p.z],m=e.create$1();"viewport"===d.properties.get("anchor")&&(e.fromRotation(m,-i.transform.angle),e.transformMat3(f,f,m));const _=d.properties.get("color"),g=i.transform,y={u_matrix:t,u_lightpos:f,u_lightintensity:d.properties.get("intensity"),u_lightcolor:[_.r,_.g,_.b],u_vertical_gradient:+r,u_opacity:n,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:Li,u_merc_center:[0,0],u_up_dir:[0,0,0],u_height_lift:0,u_ao:o,u_edge_radius:s};return"globe"===g.projection.name&&(y.u_tile_id=[a.canonical.x,a.canonical.y,1<{const p=Di(t,i,r,n,o,s,a,c,h,u,d),f={u_height_factor:-Math.pow(2,a.overscaledZ)/l.tileSize/8};return e.extend(p,zi(i,l),f)},Bi=e=>({u_matrix:e}),Oi=(t,i,r)=>e.extend(Bi(t),zi(i,r)),Fi=(e,t)=>({u_matrix:e,u_world:t}),ji=(t,i,r,n)=>e.extend(Oi(t,i,r),{u_world:n}),Ui=e.create(),Ni=(t,i,r,n,o,s)=>{const a=t.transform,l="globe"===a.projection.name;let c;if("map"===s.paint.get("circle-pitch-alignment"))if(l){const t=e.globePixelsToTileUnits(a.zoom,i.canonical)*a._pixelsPerMercatorPixel;c=Float32Array.from([t,0,0,t])}else c=a.calculatePixelsToTileUnitsMatrix(r);else c=new Float32Array([a.pixelsToGLUnits[0],0,0,a.pixelsToGLUnits[1]]);const h={u_camera_to_center_distance:a.cameraToCenterDistance,u_matrix:t.translatePosMatrix(i.projMatrix,r,s.paint.get("circle-translate"),s.paint.get("circle-translate-anchor")),u_device_pixel_ratio:e.exported.devicePixelRatio,u_extrude_scale:c,u_inv_rot_matrix:Ui,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0]};if(l){h.u_inv_rot_matrix=n,h.u_merc_center=o,h.u_tile_id=[i.canonical.x,i.canonical.y,1<{const t=[];return"map"===e.paint.get("circle-pitch-alignment")&&t.push("PITCH_WITH_MAP"),"map"===e.paint.get("circle-pitch-scale")&&t.push("SCALE_WITH_MAP"),t},$i=(t,i,r,n)=>{const o=e.EXTENT/r.tileSize;return{u_matrix:t,u_camera_to_center_distance:i.getCameraToCenterDistance(n),u_extrude_scale:[i.pixelsToGLUnits[0]/o,i.pixelsToGLUnits[1]/o]}},Gi=(e,t,i=1)=>({u_matrix:e,u_color:t,u_overlay:0,u_overlay_scale:i}),qi=e.create(),Zi=(t,i,r,n,o,s,a)=>{const l=t.transform,c="globe"===l.projection.name,h=c?e.globePixelsToTileUnits(l.zoom,i.canonical)*l._pixelsPerMercatorPixel:I(r,1,s),u={u_matrix:i.projMatrix,u_extrude_scale:h,u_intensity:a,u_inv_rot_matrix:qi,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0]};if(c){u.u_inv_rot_matrix=n,u.u_merc_center=o,u.u_tile_id=[i.canonical.x,i.canonical.y,1<{const a=e.transform,l=a.calculatePixelsToTileUnitsMatrix(t);return{u_matrix:Ki(e,t,i,r),u_pixels_to_tile_units:l,u_device_pixel_ratio:o,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]],u_dash_image:0,u_gradient_image:1,u_image_height:n,u_texsize:Yi(i)?t.lineAtlasTexture.size:[0,0],u_tile_units_to_pixels:Xi(t,e.transform),u_alpha_discard_threshold:0,u_trim_offset:s}},Hi=(e,t,i,r,n)=>{const o=e.transform;return{u_matrix:Ki(e,t,i,r),u_texsize:t.imageAtlasTexture.size,u_pixels_to_tile_units:o.calculatePixelsToTileUnitsMatrix(t),u_device_pixel_ratio:n,u_image:0,u_tile_units_to_pixels:Xi(t,o),u_units_to_pixels:[1/o.pixelsToGLUnits[0],1/o.pixelsToGLUnits[1]],u_alpha_discard_threshold:0}};function Xi(e,t){return 1/I(e,1,t.tileZoom)}function Ki(e,t,i,r){return e.translatePosMatrix(r||t.tileID.projMatrix,t,i.paint.get("line-translate"),i.paint.get("line-translate-anchor"))}function Yi(e){const t=e.paint.get("line-dasharray").value;return t.value||"constant"!==t.kind}const Ji=(e,t,i,r,n,o)=>{return{u_matrix:e,u_tl_parent:t,u_scale_parent:i,u_fade_t:r.mix,u_opacity:r.opacity*n.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:n.paint.get("raster-brightness-min"),u_brightness_high:n.paint.get("raster-brightness-max"),u_saturation_factor:(a=n.paint.get("raster-saturation"),a>0?1-1/(1.001-a):-a),u_contrast_factor:(s=n.paint.get("raster-contrast"),s>0?1/(1-s):1+s),u_spin_weights:Qi(n.paint.get("raster-hue-rotate")),u_perspective_transform:o};var s,a};function Qi(e){e*=Math.PI/180;const t=Math.sin(e),i=Math.cos(e);return[(2*i+1)/3,(-Math.sqrt(3)*t-i+1)/3,(Math.sqrt(3)*t-i+1)/3]}const er=e.create(),tr=(t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_)=>{const g=o.transform,y={u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:i?i.uSizeT:0,u_size:i?i.uSize:0,u_camera_to_center_distance:g.cameraToCenterDistance,u_rotate_symbol:+r,u_aspect_ratio:g.width/g.height,u_fade_change:o.options.fadeDuration?o.symbolFadeChange:1,u_matrix:s,u_label_plane_matrix:a,u_coord_matrix:l,u_is_text:+c,u_pitch_with_map:+n,u_texsize:h,u_texture:0,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:er,u_merc_center:[0,0],u_camera_forward:[0,0,0],u_ecef_origin:[0,0,0],u_tile_matrix:er,u_up_vector:[0,-1,0]};return"globe"===_.name&&(y.u_tile_id=[u.canonical.x,u.canonical.y,1<e.extend(tr(t,i,r,n,o,s,a,l,c,h,d,p,f,m,_,g),{u_gamma_scale:n?o.transform.cameraToCenterDistance*Math.cos(o.terrain?0:o.transform._pitch):1,u_device_pixel_ratio:e.exported.devicePixelRatio,u_is_halo:+u}),rr=(t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_)=>e.extend(ir(t,i,r,n,o,s,a,l,!0,c,!0,u,d,p,f,m,_),{u_texsize_icon:h,u_texture_icon:1}),nr=(e,t,i)=>({u_matrix:e,u_opacity:t,u_color:i}),or=(t,i,r,n,o)=>e.extend(function(e,t,i){const r=t.imageManager.getPattern(e.toString()),{width:n,height:o}=t.imageManager.getPixelSize(),s=Math.pow(2,i.tileID.overscaledZ),a=i.tileSize*Math.pow(2,t.transform.tileZoom)/s,l=a*(i.tileID.canonical.x+i.tileID.wrap*s),c=a*i.tileID.canonical.y;return{u_image:0,u_pattern_tl:r.tl,u_pattern_br:r.br,u_texsize:[n,o],u_pattern_size:r.displaySize,u_tile_units_to_pixels:1/I(i,1,t.transform.tileZoom),u_pixel_coord_upper:[l>>16,c>>16],u_pixel_coord_lower:[65535&l,65535&c]}}(n,r,o),{u_matrix:t,u_opacity:i}),sr={fillExtrusion:t=>({u_matrix:new e.UniformMatrix4f(t),u_lightpos:new e.Uniform3f(t),u_lightintensity:new e.Uniform1f(t),u_lightcolor:new e.Uniform3f(t),u_vertical_gradient:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t),u_edge_radius:new e.Uniform1f(t),u_ao:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_up_dir:new e.Uniform3f(t),u_height_lift:new e.Uniform1f(t)}),fillExtrusionPattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_lightpos:new e.Uniform3f(t),u_lightintensity:new e.Uniform1f(t),u_lightcolor:new e.Uniform3f(t),u_vertical_gradient:new e.Uniform1f(t),u_height_factor:new e.Uniform1f(t),u_edge_radius:new e.Uniform1f(t),u_ao:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_up_dir:new e.Uniform3f(t),u_height_lift:new e.Uniform1f(t),u_image:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t)}),fill:t=>({u_matrix:new e.UniformMatrix4f(t)}),fillPattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_image:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t)}),fillOutline:t=>({u_matrix:new e.UniformMatrix4f(t),u_world:new e.Uniform2f(t)}),fillOutlinePattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_world:new e.Uniform2f(t),u_image:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t)}),circle:t=>({u_camera_to_center_distance:new e.Uniform1f(t),u_extrude_scale:new e.UniformMatrix2f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_up_dir:new e.Uniform3f(t)}),collisionBox:t=>({u_matrix:new e.UniformMatrix4f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_extrude_scale:new e.Uniform2f(t)}),collisionCircle:t=>({u_matrix:new e.UniformMatrix4f(t),u_inv_matrix:new e.UniformMatrix4f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_viewport_size:new e.Uniform2f(t)}),debug:t=>({u_color:new e.UniformColor(t),u_matrix:new e.UniformMatrix4f(t),u_overlay:new e.Uniform1i(t),u_overlay_scale:new e.Uniform1f(t)}),clippingMask:t=>({u_matrix:new e.UniformMatrix4f(t)}),heatmap:t=>({u_extrude_scale:new e.Uniform1f(t),u_intensity:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_up_dir:new e.Uniform3f(t)}),heatmapTexture:t=>({u_image:new e.Uniform1i(t),u_color_ramp:new e.Uniform1i(t),u_opacity:new e.Uniform1f(t)}),hillshade:t=>({u_matrix:new e.UniformMatrix4f(t),u_image:new e.Uniform1i(t),u_latrange:new e.Uniform2f(t),u_light:new e.Uniform2f(t),u_shadow:new e.UniformColor(t),u_highlight:new e.UniformColor(t),u_accent:new e.UniformColor(t)}),hillshadePrepare:t=>({u_matrix:new e.UniformMatrix4f(t),u_image:new e.Uniform1i(t),u_dimension:new e.Uniform2f(t),u_zoom:new e.Uniform1f(t),u_unpack:new e.Uniform4f(t)}),line:t=>({u_matrix:new e.UniformMatrix4f(t),u_pixels_to_tile_units:new e.UniformMatrix2f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_units_to_pixels:new e.Uniform2f(t),u_dash_image:new e.Uniform1i(t),u_gradient_image:new e.Uniform1i(t),u_image_height:new e.Uniform1f(t),u_texsize:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t),u_alpha_discard_threshold:new e.Uniform1f(t),u_trim_offset:new e.Uniform2f(t)}),linePattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_texsize:new e.Uniform2f(t),u_pixels_to_tile_units:new e.UniformMatrix2f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_image:new e.Uniform1i(t),u_units_to_pixels:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t),u_alpha_discard_threshold:new e.Uniform1f(t)}),raster:t=>({u_matrix:new e.UniformMatrix4f(t),u_tl_parent:new e.Uniform2f(t),u_scale_parent:new e.Uniform1f(t),u_fade_t:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t),u_image0:new e.Uniform1i(t),u_image1:new e.Uniform1i(t),u_brightness_low:new e.Uniform1f(t),u_brightness_high:new e.Uniform1f(t),u_saturation_factor:new e.Uniform1f(t),u_contrast_factor:new e.Uniform1f(t),u_spin_weights:new e.Uniform3f(t),u_perspective_transform:new e.Uniform2f(t)}),symbolIcon:t=>({u_is_size_zoom_constant:new e.Uniform1i(t),u_is_size_feature_constant:new e.Uniform1i(t),u_size_t:new e.Uniform1f(t),u_size:new e.Uniform1f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_rotate_symbol:new e.Uniform1i(t),u_aspect_ratio:new e.Uniform1f(t),u_fade_change:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_label_plane_matrix:new e.UniformMatrix4f(t),u_coord_matrix:new e.UniformMatrix4f(t),u_is_text:new e.Uniform1i(t),u_pitch_with_map:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_camera_forward:new e.Uniform3f(t),u_tile_matrix:new e.UniformMatrix4f(t),u_up_vector:new e.Uniform3f(t),u_ecef_origin:new e.Uniform3f(t),u_texture:new e.Uniform1i(t)}),symbolSDF:t=>({u_is_size_zoom_constant:new e.Uniform1i(t),u_is_size_feature_constant:new e.Uniform1i(t),u_size_t:new e.Uniform1f(t),u_size:new e.Uniform1f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_rotate_symbol:new e.Uniform1i(t),u_aspect_ratio:new e.Uniform1f(t),u_fade_change:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_label_plane_matrix:new e.UniformMatrix4f(t),u_coord_matrix:new e.UniformMatrix4f(t),u_is_text:new e.Uniform1i(t),u_pitch_with_map:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_texture:new e.Uniform1i(t),u_gamma_scale:new e.Uniform1f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_camera_forward:new e.Uniform3f(t),u_tile_matrix:new e.UniformMatrix4f(t),u_up_vector:new e.Uniform3f(t),u_ecef_origin:new e.Uniform3f(t),u_is_halo:new e.Uniform1i(t)}),symbolTextAndIcon:t=>({u_is_size_zoom_constant:new e.Uniform1i(t),u_is_size_feature_constant:new e.Uniform1i(t),u_size_t:new e.Uniform1f(t),u_size:new e.Uniform1f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_rotate_symbol:new e.Uniform1i(t),u_aspect_ratio:new e.Uniform1f(t),u_fade_change:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_label_plane_matrix:new e.UniformMatrix4f(t),u_coord_matrix:new e.UniformMatrix4f(t),u_is_text:new e.Uniform1i(t),u_pitch_with_map:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_texsize_icon:new e.Uniform2f(t),u_texture:new e.Uniform1i(t),u_texture_icon:new e.Uniform1i(t),u_gamma_scale:new e.Uniform1f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_is_halo:new e.Uniform1i(t)}),background:t=>({u_matrix:new e.UniformMatrix4f(t),u_opacity:new e.Uniform1f(t),u_color:new e.UniformColor(t)}),backgroundPattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_opacity:new e.Uniform1f(t),u_image:new e.Uniform1i(t),u_pattern_tl:new e.Uniform2f(t),u_pattern_br:new e.Uniform2f(t),u_texsize:new e.Uniform2f(t),u_pattern_size:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t)}),terrainRaster:gi,terrainDepth:gi,skybox:t=>({u_matrix:new e.UniformMatrix4f(t),u_sun_direction:new e.Uniform3f(t),u_cubemap:new e.Uniform1i(t),u_opacity:new e.Uniform1f(t),u_temporal_offset:new e.Uniform1f(t)}),skyboxGradient:t=>({u_matrix:new e.UniformMatrix4f(t),u_color_ramp:new e.Uniform1i(t),u_center_direction:new e.Uniform3f(t),u_radius:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t),u_temporal_offset:new e.Uniform1f(t)}),skyboxCapture:t=>({u_matrix_3f:new e.UniformMatrix3f(t),u_sun_direction:new e.Uniform3f(t),u_sun_intensity:new e.Uniform1f(t),u_color_tint_r:new e.Uniform4f(t),u_color_tint_m:new e.Uniform4f(t),u_luminance:new e.Uniform1f(t)}),globeRaster:t=>({u_proj_matrix:new e.UniformMatrix4f(t),u_globe_matrix:new e.UniformMatrix4f(t),u_normalize_matrix:new e.UniformMatrix4f(t),u_merc_matrix:new e.UniformMatrix4f(t),u_zoom_transition:new e.Uniform1f(t),u_merc_center:new e.Uniform2f(t),u_image0:new e.Uniform1i(t),u_grid_matrix:new e.UniformMatrix3f(t),u_skirt_height:new e.Uniform1f(t),u_frustum_tl:new e.Uniform3f(t),u_frustum_tr:new e.Uniform3f(t),u_frustum_br:new e.Uniform3f(t),u_frustum_bl:new e.Uniform3f(t),u_globe_pos:new e.Uniform3f(t),u_globe_radius:new e.Uniform1f(t),u_viewport:new e.Uniform2f(t)}),globeAtmosphere:t=>({u_frustum_tl:new e.Uniform3f(t),u_frustum_tr:new e.Uniform3f(t),u_frustum_br:new e.Uniform3f(t),u_frustum_bl:new e.Uniform3f(t),u_horizon:new e.Uniform1f(t),u_transition:new e.Uniform1f(t),u_fadeout_range:new e.Uniform1f(t),u_color:new e.Uniform4f(t),u_high_color:new e.Uniform4f(t),u_space_color:new e.Uniform4f(t),u_star_intensity:new e.Uniform1f(t),u_star_density:new e.Uniform1f(t),u_star_size:new e.Uniform1f(t),u_temporal_offset:new e.Uniform1f(t),u_horizon_angle:new e.Uniform1f(t),u_rotation_matrix:new e.UniformMatrix4f(t)})};let ar;function lr(t,i,r,n,o,s,a){const l=t.context,c=l.gl,h=t.transform,u=t.useProgram("collisionBox"),d=[];let p=0,f=0;for(let m=0;m0){const t=e.create(),i=v;e.mul(t,y.placementInvProjMatrix,h.glCoordMatrix),e.mul(t,t,y.placementViewportMatrix),d.push({circleArray:w,circleOffset:f,transform:i,invTransform:t,projection:y.getProjection()}),p+=w.length/4,f=p}b&&(t.terrain&&t.terrain.setupElevationDraw(g,u),u.draw(l,c.LINES,e.DepthMode.disabled,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.disabled,$i(v,h,g,y.getProjection()),r.id,b.layoutVertexBuffer,b.indexBuffer,b.segments,null,h.zoom,null,[b.collisionVertexBuffer,b.collisionVertexBufferExt]))}if(!a||!d.length)return;const m=t.useProgram("collisionCircle"),_=new e.StructArrayLayout2f1f2i16;_.resize(4*p),_._trim();let g=0;for(const e of d)for(let t=0;t=0&&(m[v.associatedIconIndex]={x:A,y:S,z:M,angle:z})}else pt(T,p)}if(u){f.clear();const i=t.icon.placedSymbolArray;for(let t=0;te.sortKey-t.sortKey));for(const e of S){const i=e.state;if(t.terrain&&t.terrain.setupElevationDraw(i.tile,i.program,{useDepthForOcclusion:!A,labelPlaneMatrixInv:i.labelPlaneMatrixInv}),p.activeTexture.set(f.TEXTURE0),i.atlasTexture.bind(i.atlasInterpolation,f.CLAMP_TO_EDGE),i.atlasTextureIcon&&(p.activeTexture.set(f.TEXTURE1),i.atlasTextureIcon&&i.atlasTextureIcon.bind(i.atlasInterpolationIcon,f.CLAMP_TO_EDGE)),i.isSDF){const n=i.uniformValues;i.hasHalo&&(n.u_is_halo=1,fr(i.buffers,e.segments,r,t,i.program,w,u,d,n)),n.u_is_halo=0}fr(i.buffers,e.segments,r,t,i.program,w,u,d,i.uniformValues)}}function fr(t,i,r,n,o,s,a,l,c){const h=n.context,u=[t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer,t.globeExtVertexBuffer];o.draw(h,h.gl.TRIANGLES,s,a,l,e.CullFaceMode.disabled,c,r.id,t.layoutVertexBuffer,t.indexBuffer,i,r.paint,n.transform.zoom,t.programConfigurations.get(r.id),u)}function mr(t,i,r,n,o,s,a){const l=t.context.gl,c=r.paint.get("fill-pattern"),h=c&&c.constantOr(1);let u,d,p,f,m;a?(d=h&&!r.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",u=l.LINES):(d=h?"fillPattern":"fill",u=l.TRIANGLES);for(const _ of n){const n=i.getTile(_);if(h&&!n.patternsLoaded())continue;const g=n.getBucket(r);if(!g)continue;t.prepareDrawTile();const y=g.programConfigurations.get(r.id),x=t.useProgram(d,y);h&&(t.context.activeTexture.set(l.TEXTURE0),n.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),y.updatePaintBuffers());const v=c.constantOr(null);if(v&&n.imageAtlas){const e=n.imageAtlas.patternPositions[v.toString()];e&&y.setConstantPatternPositions(e)}const b=t.translatePosMatrix(_.projMatrix,n,r.paint.get("fill-translate"),r.paint.get("fill-translate-anchor"));if(a){f=g.indexBuffer2,m=g.segments2;const e=t.terrain&&t.terrain.renderingToTexture?t.terrain.drapeBufferSize:[l.drawingBufferWidth,l.drawingBufferHeight];p="fillOutlinePattern"===d&&h?ji(b,t,n,e):Fi(b,e)}else f=g.indexBuffer,m=g.segments,p=h?Oi(b,t,n):Bi(b);t.prepareDrawProgram(t.context,x,_.toUnwrapped()),x.draw(t.context,u,o,t.stencilModeForClipping(_),s,e.CullFaceMode.disabled,p,r.id,g.layoutVertexBuffer,f,m,r.paint,t.transform.zoom,y)}}function _r(t,i,r,n,o,s,a){const l=t.context,c=l.gl,h=t.transform,u=r.paint.get("fill-extrusion-pattern"),d=u.constantOr(1),p=r.paint.get("fill-extrusion-opacity"),f=[r.paint.get("fill-extrusion-ambient-occlusion-intensity"),r.paint.get("fill-extrusion-ambient-occlusion-radius")],m=r.layout.get("fill-extrusion-edge-radius"),_=m>0&&!r.paint.get("fill-extrusion-rounded-roof"),g=_?0:m,y="globe"===h.projection.name?e.fillExtrusionHeightLift():0,x="globe"===h.projection.name,v=x?e.globeToMercatorTransition(h.zoom):0,b=[e.mercatorXfromLng(h.center.lng),e.mercatorYfromLat(h.center.lat)],w=[];x&&w.push("PROJECTION_GLOBE_VIEW"),f[0]>0&&w.push("FAUX_AO"),_&&w.push("ZERO_ROOF_RADIUS");for(const m of n){const n=i.getTile(m),_=n.getBucket(r);if(!_||_.projection.name!==h.projection.name)continue;const T=_.programConfigurations.get(r.id),E=t.useProgram(d?"fillExtrusionPattern":"fillExtrusion",T,w);if(t.terrain){const e=t.terrain;if(t.style.terrainSetForDrapingOnly())e.setupElevationDraw(n,E,{useMeterToDem:!0});else{if(!_.enableTerrain)continue;if(e.setupElevationDraw(n,E,{useMeterToDem:!0}),gr(l,i,m,_,r,e),!_.centroidVertexBuffer){const e=E.attributes.a_centroid_pos;void 0!==e&&c.vertexAttrib2f(e,0,0)}}}d&&(t.context.activeTexture.set(c.TEXTURE0),n.imageAtlasTexture.bind(c.LINEAR,c.CLAMP_TO_EDGE),T.updatePaintBuffers());const A=u.constantOr(null);if(A&&n.imageAtlas){const e=n.imageAtlas.patternPositions[A.toString()];e&&T.setConstantPatternPositions(e)}const S=t.translatePosMatrix(m.projMatrix,n,r.paint.get("fill-extrusion-translate"),r.paint.get("fill-extrusion-translate-anchor")),M=h.projection.createInversionMatrix(h,m.canonical),C=r.paint.get("fill-extrusion-vertical-gradient"),k=d?Ri(S,t,C,p,f,g,m,n,y,v,b,M):Di(S,t,C,p,f,g,m,y,v,b,M);t.prepareDrawProgram(l,E,m.toUnwrapped());const I=[];t.terrain&&I.push(_.centroidVertexBuffer),x&&I.push(_.layoutVertexExtBuffer),E.draw(l,l.gl.TRIANGLES,o,s,a,e.CullFaceMode.backCCW,k,r.id,_.layoutVertexBuffer,_.indexBuffer,_.segments,r.paint,t.transform.zoom,T,I)}}function gr(t,i,r,n,o,s){const a=[t=>{let i=t.canonical.x-1,r=t.wrap;return i<0&&(i=(1<{let i=t.canonical.x+1,r=t.wrap;return i===1<new e.OverscaledTileID(t.overscaledZ,t.wrap,t.canonical.z,t.canonical.x,(0===t.canonical.y?1<new e.OverscaledTileID(t.overscaledZ,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y===(1<{const t=i.getSource().minzoom,r=e=>{const t=i.getTileByID(e);if(t&&t.hasData())return t.getBucket(o)},n=[0,-1,1];for(const i of n){if(e.overscaledZ+i(c[0]=Math.min(t.min.y,i.min.y),c[1]=Math.max(t.max.y,i.max.y),c[2]=e.EXTENT-i.min.x>t.max.x?i.min.x-e.EXTENT:t.max.x,c),u=(t,i)=>(c[0]=Math.min(t.min.x,i.min.x),c[1]=Math.max(t.max.x,i.max.x),c[2]=e.EXTENT-i.min.y>t.max.y?i.min.y-e.EXTENT:t.max.y,c),d=[(e,t)=>h(e,t),(e,t)=>h(t,e),(e,t)=>u(e,t),(e,t)=>u(t,e)],p=new e.Point(0,0);let f,m,_;const g=(t,i,n,o,a)=>{const l=[[o?n:t,o?t:n,0],[o?n:i,o?i:n,0]],c=a<0?e.EXTENT+a:a,h=[o?c:(t+i)/2,o?(t+i)/2:c,0];return 0===n&&a<0||0!==n&&a>0?s.getForTilePoints(_,[h],!0,m):l.push(h),s.getForTilePoints(r,l,!0,f),Math.max(l[0][2],l[1][2],h[2])/s.exaggeration()};for(let t=0;t<4;t++){const i=(t<2?1:5)-t,o=n.borders[t];if(0===o.length)continue;const c=_=a[t](r),h=l(c);if(!(h&&h instanceof e.FillExtrusionBucket&&h.enableTerrain))continue;if(n.borderDoneWithNeighborZ[t]===h.canonical.z&&h.borderDoneWithNeighborZ[i]===n.canonical.z)continue;if(m=s.findDEMTileFor(c),!m||!m.dem)continue;if(!f){const e=s.findDEMTileFor(r);if(!e||!e.dem)return;f=e}const u=h.borders[i];let y=0;const x=h.borderDoneWithNeighborZ[i]!==n.canonical.z;if(n.canonical.z===h.canonical.z){for(let r=0;ra[0]+3));)x&&h.encodeCentroid(void 0,l,!1),y++;if(l&&ya[1]-3)&&(o++,++y!==u.length);)l=h.featuresOnBorder[u[y]];if(l=h.featuresOnBorder[u[r]],s.intersectsCount()>1||l.intersectsCount()>1||1!==o){1!==o&&(y=r),n.encodeCentroid(void 0,s,!1),x&&h.encodeCentroid(void 0,l,!1);continue}const c=d[t](s,l),f=t%2?e.EXTENT-1:0;p.x=g(c[0],Math.min(e.EXTENT-1,c[1]),f,t<2,c[2]),p.y=0,n.encodeCentroid(p,s,!1),x&&h.encodeCentroid(p,l,!1)}else n.encodeCentroid(void 0,s,!1)}n.borderDoneWithNeighborZ[t]=h.canonical.z,n.needsCentroidUpdate=!0,x&&(h.borderDoneWithNeighborZ[i]=n.canonical.z,h.needsCentroidUpdate=!0)}else{for(const e of o)n.encodeCentroid(void 0,n.featuresOnBorder[e],!1);if(x){for(const e of u)h.encodeCentroid(void 0,h.featuresOnBorder[e],!1);h.borderDoneWithNeighborZ[i]=n.canonical.z,h.needsCentroidUpdate=!0}n.borderDoneWithNeighborZ[t]=h.canonical.z,n.needsCentroidUpdate=!0}}(n.needsCentroidUpdate||!n.centroidVertexBuffer&&0!==n.centroidVertexArray.length)&&n.uploadCentroid(t)}const yr=new e.Color(1,0,0,1),xr=new e.Color(0,1,0,1),vr=new e.Color(0,0,1,1),br=new e.Color(1,0,1,1),wr=new e.Color(0,1,1,1);function Tr(t,i,r){const n=t.context,o=t.transform,s=n.gl,a="globe"===o.projection.name,l=a?["PROJECTION_GLOBE_VIEW"]:null;let c=r.projMatrix;if(a&&e.globeToMercatorTransition(o.zoom)>0){const t=e.transitionTileAABBinECEF(r.canonical,o),i=e.globeDenormalizeECEF(t);c=e.multiply(new Float32Array(16),o.globeMatrix,i),e.multiply(c,o.projMatrix,c)}const h=t.useProgram("debug",null,l),u=i.getTileByID(r.key);t.terrain&&t.terrain.setupElevationDraw(u,h);const d=e.DepthMode.disabled,p=e.StencilMode.disabled,f=t.colorModeForRenderPass(),m="$debug";n.activeTexture.set(s.TEXTURE0),t.emptyTexture.bind(s.LINEAR,s.CLAMP_TO_EDGE),a?u._makeGlobeTileDebugBuffers(t.context,o):u._makeDebugTileBoundsBuffers(t.context,o.projection);const _=u._tileDebugBuffer||t.debugBuffer,g=u._tileDebugIndexBuffer||t.debugIndexBuffer,y=u._tileDebugSegments||t.debugSegments;h.draw(n,s.LINE_STRIP,d,p,f,e.CullFaceMode.disabled,Gi(c,e.Color.red),m,_,g,y,null,null,null,[u._globeTileDebugBorderBuffer]);const x=u.latestRawTileData,v=Math.floor((x&&x.byteLength||0)/1024),b=i.getTile(r).tileSize,w=512/Math.min(b,512)*(r.overscaledZ/o.zoom)*.5;let T=r.canonical.toString();r.overscaledZ!==r.canonical.z&&(T+=` => ${r.overscaledZ}`),T+=` ${v}kb`,function(e,t){e.initDebugOverlayCanvas();const i=e.debugOverlayCanvas,r=e.context.gl,n=e.debugOverlayCanvas.getContext("2d");n.clearRect(0,0,i.width,i.height),n.shadowColor="white",n.shadowBlur=2,n.lineWidth=1.5,n.strokeStyle="white",n.textBaseline="top",n.font="bold 36px Open Sans, sans-serif",n.fillText(t,5,5),n.strokeText(t,5,5),e.debugOverlayTexture.update(i),e.debugOverlayTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)}(t,T);const E=u._tileDebugTextBuffer||t.debugBuffer,A=u._tileDebugTextIndexBuffer||t.quadTriangleIndexBuffer,S=u._tileDebugTextSegments||t.debugSegments;h.draw(n,s.TRIANGLES,d,p,e.ColorMode.alphaBlended,e.CullFaceMode.disabled,Gi(c,e.Color.transparent,w),m,E,A,S,null,null,null,[u._globeTileDebugTextBuffer])}function Er(e,t,i,r){Sr(e,0,t+i/2,e.transform.width,i,r)}function Ar(e,t,i,r){Sr(e,t-i/2,0,i,e.transform.height,r)}function Sr(t,i,r,n,o,s){const a=t.context,l=a.gl;l.enable(l.SCISSOR_TEST),l.scissor(i*e.exported.devicePixelRatio,r*e.exported.devicePixelRatio,n*e.exported.devicePixelRatio,o*e.exported.devicePixelRatio),a.clear({color:s}),l.disable(l.SCISSOR_TEST)}const Mr=e.createLayout([{name:"a_pos_3f",components:3,type:"Float32"}]),{members:Cr}=Mr;function kr(e,t,i,r){e.emplaceBack(t,i,r)}class Ir{constructor(t){this.vertexArray=new e.StructArrayLayout3f12,this.indices=new e.StructArrayLayout3ui6,kr(this.vertexArray,-1,-1,1),kr(this.vertexArray,1,-1,1),kr(this.vertexArray,-1,1,1),kr(this.vertexArray,1,1,1),kr(this.vertexArray,-1,-1,-1),kr(this.vertexArray,1,-1,-1),kr(this.vertexArray,-1,1,-1),kr(this.vertexArray,1,1,-1),this.indices.emplaceBack(5,1,3),this.indices.emplaceBack(3,7,5),this.indices.emplaceBack(6,2,0),this.indices.emplaceBack(0,4,6),this.indices.emplaceBack(2,6,7),this.indices.emplaceBack(7,3,2),this.indices.emplaceBack(5,4,0),this.indices.emplaceBack(0,1,5),this.indices.emplaceBack(0,2,3),this.indices.emplaceBack(3,1,0),this.indices.emplaceBack(7,6,4),this.indices.emplaceBack(4,5,7),this.vertexBuffer=t.createVertexBuffer(this.vertexArray,Cr),this.indexBuffer=t.createIndexBuffer(this.indices),this.segment=e.SegmentVector.simpleSegment(0,0,36,12)}}function Pr(t,i,r,n,o,s){const a=t.gl,l=i.paint.get("sky-atmosphere-color"),c=i.paint.get("sky-atmosphere-halo-color"),h=i.paint.get("sky-atmosphere-sun-intensity"),u=((e,t,i,r,n)=>({u_matrix_3f:e,u_sun_direction:t,u_sun_intensity:i,u_color_tint_r:[r.r,r.g,r.b,r.a],u_color_tint_m:[n.r,n.g,n.b,n.a],u_luminance:5e-5}))(e.fromMat4(e.create$1(),n),o,h,l,c);a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_CUBE_MAP_POSITIVE_X+s,i.skyboxTexture,0),r.draw(t,a.TRIANGLES,e.DepthMode.disabled,e.StencilMode.disabled,e.ColorMode.unblended,e.CullFaceMode.frontCW,u,"skyboxCapture",i.skyboxGeometry.vertexBuffer,i.skyboxGeometry.indexBuffer,i.skyboxGeometry.segment)}const zr=e.createLayout([{type:"Float32",name:"a_pos",components:3},{type:"Float32",name:"a_uv",components:2}]);class Lr{constructor(t){const i=new e.StructArrayLayout5f20;i.emplaceBack(-1,1,1,0,0),i.emplaceBack(1,1,1,1,0),i.emplaceBack(1,-1,1,1,1),i.emplaceBack(-1,-1,1,0,1);const r=new e.StructArrayLayout3ui6;r.emplaceBack(0,1,2),r.emplaceBack(2,3,0),this.vertexBuffer=t.createVertexBuffer(i,zr.members),this.indexBuffer=t.createIndexBuffer(r),this.segments=e.SegmentVector.simpleSegment(0,0,4,2)}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy()}}const Dr={symbol:function(t,i,r,n,o){if("translucent"!==t.renderPass)return;const s=e.StencilMode.disabled,a=t.colorModeForRenderPass();r.layout.get("text-variable-anchor")&&function(t,i,r,n,o,s,a){const l=i.transform,c="map"===o,h="map"===s;for(const i of t){const t=n.getTile(i),o=t.getBucket(r);if(!o||!o.text||!o.text.segments.get().length)continue;const s=e.evaluateSizeForZoom(o.textSizeData,l.zoom),u=xt(i,o.getProjection(),l),d=l.calculatePixelsToTileUnitsMatrix(t),p=et(u,t.tileID.canonical,h,c,l,o.getProjection(),d),f="none"!==r.layout.get("icon-text-fit")&&o.hasIconData();if(s){const r=Math.pow(2,l.zoom-t.tileID.overscaledZ);ur(o,c,h,a,e.symbolSize,l,p,i,r,s,f)}}}(n,t,r,i,r.layout.get("text-rotation-alignment"),r.layout.get("text-pitch-alignment"),o),0!==r.paint.get("icon-opacity").constantOr(1)&&pr(t,i,r,n,!1,r.paint.get("icon-translate"),r.paint.get("icon-translate-anchor"),r.layout.get("icon-rotation-alignment"),r.layout.get("icon-pitch-alignment"),r.layout.get("icon-keep-upright"),s,a),0!==r.paint.get("text-opacity").constantOr(1)&&pr(t,i,r,n,!0,r.paint.get("text-translate"),r.paint.get("text-translate-anchor"),r.layout.get("text-rotation-alignment"),r.layout.get("text-pitch-alignment"),r.layout.get("text-keep-upright"),s,a),i.map.showCollisionBoxes&&(lr(t,i,r,n,r.paint.get("text-translate"),r.paint.get("text-translate-anchor"),!0),lr(t,i,r,n,r.paint.get("icon-translate"),r.paint.get("icon-translate-anchor"),!1))},circle:function(t,i,r,n){if("translucent"!==t.renderPass)return;const o=r.paint.get("circle-opacity"),s=r.paint.get("circle-stroke-width"),a=r.paint.get("circle-stroke-opacity"),l=void 0!==r.layout.get("circle-sort-key").constantOr(1);if(0===o.constantOr(1)&&(0===s.constantOr(1)||0===a.constantOr(1)))return;const c=t.context,h=c.gl,u=t.transform,d=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),p=e.StencilMode.disabled,f=t.colorModeForRenderPass(),m="globe"===u.projection.name,_=[e.mercatorXfromLng(u.center.lng),e.mercatorYfromLat(u.center.lat)],g=[];for(let o=0;oe.sortKey-t.sortKey));const y={useDepthForOcclusion:!m};for(const i of g){const{programConfiguration:n,program:o,layoutVertexBuffer:s,globeExtVertexBuffer:a,indexBuffer:l,uniformValues:m,tile:_}=i.state,g=i.segments;t.terrain&&t.terrain.setupElevationDraw(_,o,y),t.prepareDrawProgram(c,o,_.tileID.toUnwrapped()),o.draw(c,h.TRIANGLES,d,p,f,e.CullFaceMode.disabled,m,r.id,s,l,g,r.paint,u.zoom,n,[a])}},heatmap:function(t,i,r,n){if(0!==r.paint.get("heatmap-opacity"))if("offscreen"===t.renderPass){const o=t.context,s=o.gl,a=e.StencilMode.disabled,l=new e.ColorMode([s.ONE,s.ONE],e.Color.transparent,[!0,!0,!0,!0]);!function(e,t,i,r){const n=e.gl,o=t.width*r,s=t.height*r;e.activeTexture.set(n.TEXTURE1),e.viewport.set([0,0,o,s]);let a=i.heatmapFbo;if(!a||a&&(a.width!==o||a.height!==s)){a&&a.destroy();const t=n.createTexture();n.bindTexture(n.TEXTURE_2D,t),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),a=i.heatmapFbo=e.createFramebuffer(o,s,!1),function(e,t,i,r,n,o){const s=e.gl;s.texImage2D(s.TEXTURE_2D,0,e.isWebGL2&&e.extRenderToTextureHalfFloat?s.RGBA16F:s.RGBA,n,o,0,s.RGBA,e.extRenderToTextureHalfFloat?e.isWebGL2?s.HALF_FLOAT:e.extTextureHalfFloat.HALF_FLOAT_OES:s.UNSIGNED_BYTE,null),r.colorAttachment.set(i)}(e,0,t,a,o,s)}else n.bindTexture(n.TEXTURE_2D,a.colorAttachment.get()),e.bindFramebuffer.set(a.framebuffer)}(o,t,r,"globe"===t.transform.projection.name?.5:.25),o.clear({color:e.Color.transparent});const c=t.transform,h="globe"===c.projection.name,u=h?["PROJECTION_GLOBE_VIEW"]:null,d=h?e.CullFaceMode.frontCCW:e.CullFaceMode.disabled,p=[e.mercatorXfromLng(c.center.lng),e.mercatorYfromLat(c.center.lat)];for(let f=0;f({u_image:0,u_color_ramp:1,u_opacity:t.paint.get("heatmap-opacity")}))(0,i),i.id,t.viewportBuffer,t.quadTriangleIndexBuffer,t.viewportSegments,i.paint,t.transform.zoom)}(t,r))},line:function(t,i,r,n){if("translucent"!==t.renderPass)return;const o=r.paint.get("line-opacity"),s=r.paint.get("line-width");if(0===o.constantOr(1)||0===s.constantOr(1))return;const a=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),l=t.colorModeForRenderPass(),c=t.terrain&&t.terrain.renderingToTexture?1:e.exported.devicePixelRatio,h=r.paint.get("line-dasharray"),u=h.constantOr(1),d=r.layout.get("line-cap"),p=r.paint.get("line-pattern"),f=p.constantOr(1),m=r.paint.get("line-gradient"),_=f?"linePattern":"line",g=t.context,y=g.gl,x=(e=>{const t=[];Yi(e)&&t.push("RENDER_LINE_DASH"),e.paint.get("line-gradient")&&t.push("RENDER_LINE_GRADIENT");const i=e.paint.get("line-trim-offset");0===i[0]&&0===i[1]||t.push("RENDER_LINE_TRIM_OFFSET");const r=e.paint.get("line-pattern").constantOr(1),n=1!==e.paint.get("line-opacity").constantOr(1);return!r&&n&&t.push("RENDER_LINE_ALPHA_DISCARD"),t})(r);let v=x.includes("RENDER_LINE_ALPHA_DISCARD");t.terrain&&t.terrain.clipOrMaskOverlapStencilType()&&(v=!1);for(const o of n){const n=i.getTile(o);if(f&&!n.patternsLoaded())continue;const s=n.getBucket(r);if(!s)continue;t.prepareDrawTile();const b=s.programConfigurations.get(r.id),w=t.useProgram(_,b,x),T=p.constantOr(null);if(T&&n.imageAtlas){const e=n.imageAtlas.patternPositions[T.toString()];e&&b.setConstantPatternPositions(e)}const E=h.constantOr(null),A=d.constantOr(null);if(!f&&E&&A&&n.lineAtlas){const e=n.lineAtlas.getDash(E,A);e&&b.setConstantPatternPositions(e)}let[S,M]=r.paint.get("line-trim-offset");if("round"===A||"square"===A){const e=1;S!==M&&(0===S&&(S-=e),1===M&&(M+=e))}const C=t.terrain?o.projMatrix:null,k=f?Hi(t,n,r,C,c):Wi(t,n,r,C,s.lineClipsArray.length,c,[S,M]);if(m){const n=s.gradients[r.id];let a=n.texture;if(r.gradientVersion!==n.version){let l=256;if(r.stepInterpolant){const r=i.getSource().maxzoom,n=o.canonical.z===r?Math.ceil(1<{w.draw(g,y.TRIANGLES,a,i,l,e.CullFaceMode.disabled,k,r.id,s.layoutVertexBuffer,s.indexBuffer,s.segments,r.paint,t.transform.zoom,b,[s.layoutVertexBuffer2])};if(v){const i=t.stencilModeForClipping(o).ref;0===i&&t.terrain&&g.clear({stencil:0});const r={func:y.EQUAL,mask:255};k.u_alpha_discard_threshold=.8,I(new e.StencilMode(r,i,255,y.KEEP,y.KEEP,y.INVERT)),k.u_alpha_discard_threshold=0,I(new e.StencilMode(r,i,255,y.KEEP,y.KEEP,y.KEEP))}else I(t.stencilModeForClipping(o))}v&&(t.resetStencilClippingMasks(),t.terrain&&g.clear({stencil:0}))},fill:function(t,i,r,n){const o=r.paint.get("fill-color"),s=r.paint.get("fill-opacity");if(0===s.constantOr(1))return;const a=t.colorModeForRenderPass(),l=r.paint.get("fill-pattern"),c=t.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===o.constantOr(e.Color.transparent).a&&1===s.constantOr(0)?"opaque":"translucent";if(t.renderPass===c){const o=t.depthModeForSublayer(1,"opaque"===t.renderPass?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly);mr(t,i,r,n,o,a,!1)}if("translucent"===t.renderPass&&r.paint.get("fill-antialias")){const o=t.depthModeForSublayer(r.getPaintProperty("fill-outline-color")?2:0,e.DepthMode.ReadOnly);mr(t,i,r,n,o,a,!0)}},"fill-extrusion":function(t,i,r,n){const o=r.paint.get("fill-extrusion-opacity");if(0!==o&&"translucent"===t.renderPass){const s=new e.DepthMode(t.context.gl.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);if(1!==o||r.paint.get("fill-extrusion-pattern").constantOr(1))_r(t,i,r,n,s,e.StencilMode.disabled,e.ColorMode.disabled),_r(t,i,r,n,s,t.stencilModeFor3D(),t.colorModeForRenderPass()),t.resetStencilClippingMasks();else{const o=t.colorModeForRenderPass();_r(t,i,r,n,s,e.StencilMode.disabled,o)}}},hillshade:function(t,i,r,n){if("offscreen"!==t.renderPass&&"translucent"!==t.renderPass)return;const o=t.context,s=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),a=t.colorModeForRenderPass(),l=t.terrain&&t.terrain.renderingToTexture,[c,h]="translucent"!==t.renderPass||l?[{},n]:t.stencilConfigForOverlap(n);for(const n of h){const o=i.getTile(n);if(o.needsHillshadePrepare&&"offscreen"===t.renderPass)_i(t,o,r,s,e.StencilMode.disabled,a);else if("translucent"===t.renderPass){const e=l&&t.terrain?t.terrain.stencilModeForRTTOverlap(n):c[n.overscaledZ];fi(t,n,o,r,s,e,a)}}o.viewport.set([0,0,t.width,t.height]),t.resetStencilClippingMasks()},raster:function(t,i,r,n,o,s){if("translucent"!==t.renderPass)return;if(0===r.paint.get("raster-opacity"))return;if(!n.length)return;const a=t.context,l=a.gl,c=i.getSource(),h=t.useProgram("raster"),u=t.colorModeForRenderPass(),d=t.terrain&&t.terrain.renderingToTexture,[p,f]=c instanceof Ce||d?[{},n]:t.stencilConfigForOverlap(n),m=f[f.length-1].overscaledZ,_=!t.options.moving;for(const n of f){const o=d?e.DepthMode.disabled:t.depthModeForSublayer(n.overscaledZ-m,1===r.paint.get("raster-opacity")?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly,l.LESS),f=n.toUnwrapped(),g=i.getTile(n);if(d&&(!g||!g.hasData()))continue;const y=d?n.projMatrix:t.transform.calculateProjMatrix(f,_),x=t.terrain&&d?t.terrain.stencilModeForRTTOverlap(n):p[n.overscaledZ],v=s?0:r.paint.get("raster-fade-duration");g.registerFadeDuration(v);const b=i.findLoadedParent(n,0),w=Si(g,b,i,t.transform,v);let T,E;t.terrain&&t.terrain.prepareDrawTile();const A="nearest"===r.paint.get("raster-resampling")?l.NEAREST:l.LINEAR;a.activeTexture.set(l.TEXTURE0),g.texture.bind(A,l.CLAMP_TO_EDGE),a.activeTexture.set(l.TEXTURE1),b?(b.texture.bind(A,l.CLAMP_TO_EDGE),T=Math.pow(2,b.tileID.overscaledZ-g.tileID.overscaledZ),E=[g.tileID.canonical.x*T%1,g.tileID.canonical.y*T%1]):g.texture.bind(A,l.CLAMP_TO_EDGE),g.texture.useMipmap&&a.extTextureFilterAnisotropic&&t.transform.pitch>20&&l.texParameterf(l.TEXTURE_2D,a.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,a.extTextureFilterAnisotropicMax);const S=Ji(y,E||[0,0],T||1,w,r,c instanceof Ce?c.perspectiveTransform:[0,0]);if(t.prepareDrawProgram(a,h,f),c instanceof Ce)c.boundsBuffer&&c.boundsSegments&&h.draw(a,l.TRIANGLES,o,e.StencilMode.disabled,u,e.CullFaceMode.disabled,S,r.id,c.boundsBuffer,t.quadTriangleIndexBuffer,c.boundsSegments);else{const{tileBoundsBuffer:i,tileBoundsIndexBuffer:n,tileBoundsSegments:s}=t.getTileBoundsBuffers(g);h.draw(a,l.TRIANGLES,o,x,u,e.CullFaceMode.disabled,S,r.id,i,n,s)}}t.resetStencilClippingMasks()},background:function(t,i,r,n){const o=r.paint.get("background-color"),s=r.paint.get("background-opacity");if(0===s)return;const a=t.context,l=a.gl,c=t.transform,h=c.tileSize,u=r.paint.get("background-pattern");if(t.isPatternMissing(u))return;const d=!u&&1===o.a&&1===s&&t.opaquePassEnabledForLayer()?"opaque":"translucent";if(t.renderPass!==d)return;const p=e.StencilMode.disabled,f=t.depthModeForSublayer(0,"opaque"===d?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly),m=t.colorModeForRenderPass(),_=t.useProgram(u?"backgroundPattern":"background");let g,y=n;y||(g=t.getBackgroundTiles(),y=Object.values(g).map((e=>e.tileID))),u&&(a.activeTexture.set(l.TEXTURE0),t.imageManager.bind(t.context));for(const d of y){const y=d.toUnwrapped(),x=n?d.projMatrix:t.transform.calculateProjMatrix(y);t.prepareDrawTile();const v=i?i.getTile(d):g?g[d.key]:new e.Tile(d,h,c.zoom,t),b=u?or(x,s,t,u,{tileID:d,tileSize:h}):nr(x,s,o);t.prepareDrawProgram(a,_,y);const{tileBoundsBuffer:w,tileBoundsIndexBuffer:T,tileBoundsSegments:E}=t.getTileBoundsBuffers(v);_.draw(a,l.TRIANGLES,f,p,m,e.CullFaceMode.disabled,b,r.id,w,T,E)}},sky:function(t,i,r){const n=t.transform,o="mercator"===n.projection.name||"globe"===n.projection.name?1:e.smoothstep(7,8,n.zoom),s=r.paint.get("sky-opacity")*o;if(0===s)return;const a=t.context,l=r.paint.get("sky-type"),c=new e.DepthMode(a.gl.LEQUAL,e.DepthMode.ReadOnly,[0,1]),h=t.frameCounter/1e3%1;"atmosphere"===l?"offscreen"===t.renderPass?r.needsSkyboxCapture(t)&&(function(t,i,r,n){const o=t.context,s=o.gl;let a=i.skyboxFbo;if(!a){a=i.skyboxFbo=o.createFramebuffer(32,32,!1),i.skyboxGeometry=new Ir(o),i.skyboxTexture=o.gl.createTexture(),s.bindTexture(s.TEXTURE_CUBE_MAP,i.skyboxTexture),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_WRAP_S,s.CLAMP_TO_EDGE),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_WRAP_T,s.CLAMP_TO_EDGE),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_MIN_FILTER,s.LINEAR),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_MAG_FILTER,s.LINEAR);for(let e=0;e<6;++e)s.texImage2D(s.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,s.RGBA,32,32,0,s.RGBA,s.UNSIGNED_BYTE,null)}o.bindFramebuffer.set(a.framebuffer),o.viewport.set([0,0,32,32]);const l=i.getCenter(t,!0),c=t.useProgram("skyboxCapture"),h=new Float64Array(16);e.identity(h),e.rotateY(h,h,.5*-Math.PI),Pr(o,i,c,h,l,0),e.identity(h),e.rotateY(h,h,.5*Math.PI),Pr(o,i,c,h,l,1),e.identity(h),e.rotateX(h,h,.5*-Math.PI),Pr(o,i,c,h,l,2),e.identity(h),e.rotateX(h,h,.5*Math.PI),Pr(o,i,c,h,l,3),e.identity(h),Pr(o,i,c,h,l,4),e.identity(h),e.rotateY(h,h,Math.PI),Pr(o,i,c,h,l,5),o.viewport.set([0,0,t.width,t.height])}(t,r),r.markSkyboxValid(t)):"sky"===t.renderPass&&function(t,i,r,n,o){const s=t.context,a=s.gl,l=t.transform,c=t.useProgram("skybox");s.activeTexture.set(a.TEXTURE0),a.bindTexture(a.TEXTURE_CUBE_MAP,i.skyboxTexture);const h=((e,t,i,r,n)=>({u_matrix:e,u_sun_direction:t,u_cubemap:0,u_opacity:r,u_temporal_offset:n}))(l.skyboxMatrix,i.getCenter(t,!1),0,n,o);t.prepareDrawProgram(s,c),c.draw(s,a.TRIANGLES,r,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.backCW,h,"skybox",i.skyboxGeometry.vertexBuffer,i.skyboxGeometry.indexBuffer,i.skyboxGeometry.segment)}(t,r,c,s,h):"gradient"===l&&"sky"===t.renderPass&&function(t,i,r,n,o){const s=t.context,a=s.gl,l=t.transform,c=t.useProgram("skyboxGradient");i.skyboxGeometry||(i.skyboxGeometry=new Ir(s)),s.activeTexture.set(a.TEXTURE0);let h=i.colorRampTexture;h||(h=i.colorRampTexture=new e.Texture(s,i.colorRamp,a.RGBA)),h.bind(a.LINEAR,a.CLAMP_TO_EDGE);const u=((t,i,r,n,o)=>({u_matrix:t,u_color_ramp:0,u_center_direction:i,u_radius:e.degToRad(r),u_opacity:n,u_temporal_offset:o}))(l.skyboxMatrix,i.getCenter(t,!1),i.paint.get("sky-gradient-radius"),n,o);t.prepareDrawProgram(s,c),c.draw(s,a.TRIANGLES,r,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.backCW,u,"skyboxGradient",i.skyboxGeometry.vertexBuffer,i.skyboxGeometry.indexBuffer,i.skyboxGeometry.segment)}(t,r,c,s,h)},debug:function(e,t,i){for(let r=0;rr)return void(this.transform.fogCullDistSq=null);const n=i+.78*(r-i);this.transform.fogCullDistSq=n*n}get terrain(){return this.transform._terrainEnabled()&&this._terrain&&this._terrain.enabled?this._terrain:null}resize(t,i){if(this.width=t*e.exported.devicePixelRatio,this.height=i*e.exported.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const e of this.style.order)this.style._layers[e].resize()}setup(){const t=this.context,i=new e.StructArrayLayout2i4;i.emplaceBack(0,0),i.emplaceBack(e.EXTENT,0),i.emplaceBack(0,e.EXTENT),i.emplaceBack(e.EXTENT,e.EXTENT),this.tileExtentBuffer=t.createVertexBuffer(i,e.posAttributes.members),this.tileExtentSegments=e.SegmentVector.simpleSegment(0,0,4,2);const r=new e.StructArrayLayout2i4;r.emplaceBack(0,0),r.emplaceBack(e.EXTENT,0),r.emplaceBack(0,e.EXTENT),r.emplaceBack(e.EXTENT,e.EXTENT),this.debugBuffer=t.createVertexBuffer(r,e.posAttributes.members),this.debugSegments=e.SegmentVector.simpleSegment(0,0,4,5);const n=new e.StructArrayLayout2i4;n.emplaceBack(-1,-1),n.emplaceBack(1,-1),n.emplaceBack(-1,1),n.emplaceBack(1,1),this.viewportBuffer=t.createVertexBuffer(n,e.posAttributes.members),this.viewportSegments=e.SegmentVector.simpleSegment(0,0,4,2);const o=new e.StructArrayLayout4i8;o.emplaceBack(0,0,0,0),o.emplaceBack(e.EXTENT,0,e.EXTENT,0),o.emplaceBack(0,e.EXTENT,0,e.EXTENT),o.emplaceBack(e.EXTENT,e.EXTENT,e.EXTENT,e.EXTENT),this.mercatorBoundsBuffer=t.createVertexBuffer(o,e.boundsAttributes.members),this.mercatorBoundsSegments=e.SegmentVector.simpleSegment(0,0,4,2);const s=new e.StructArrayLayout3ui6;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=t.createIndexBuffer(s);const a=new e.StructArrayLayout1ui2;for(const e of[0,1,3,2,0])a.emplaceBack(e);this.debugIndexBuffer=t.createIndexBuffer(a),this.emptyTexture=new e.Texture(t,new e.RGBAImage({width:1,height:1},Uint8Array.of(0,0,0,0)),t.gl.RGBA),this.identityMat=e.create();const l=this.context.gl;this.stencilClearMode=new e.StencilMode({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO),this.loadTimeStamps.push(e.window.performance.now()),this.atmosphereBuffer=new Lr(this.context)}getMercatorTileBoundsBuffers(){return{tileBoundsBuffer:this.mercatorBoundsBuffer,tileBoundsIndexBuffer:this.quadTriangleIndexBuffer,tileBoundsSegments:this.mercatorBoundsSegments}}getTileBoundsBuffers(e){return e._makeTileBoundsBuffers(this.context,this.transform.projection),e._tileBoundsBuffer?{tileBoundsBuffer:e._tileBoundsBuffer,tileBoundsIndexBuffer:e._tileBoundsIndexBuffer,tileBoundsSegments:e._tileBoundsSegments}:this.getMercatorTileBoundsBuffers()}clearStencil(){const t=this.context,i=t.gl;this.nextStencilID=1,this.currentStencilSource=void 0,this._tileClippingMaskIDs={},this.useProgram("clippingMask").draw(t,i.TRIANGLES,e.DepthMode.disabled,this.stencilClearMode,e.ColorMode.disabled,e.CullFaceMode.disabled,Ai(this.identityMat),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}resetStencilClippingMasks(){this.terrain||(this.currentStencilSource=void 0,this._tileClippingMaskIDs={})}_renderTileClippingMasks(t,i,r){if(!i||this.currentStencilSource===i.id||!t.isTileClipped()||!r||0===r.length)return;if(this._tileClippingMaskIDs&&!this.terrain){let e=!1;for(const t of r)if(void 0===this._tileClippingMaskIDs[t.key]){e=!0;break}if(!e)return}this.currentStencilSource=i.id;const n=this.context,o=n.gl;this.nextStencilID+r.length>256&&this.clearStencil(),n.setColorMode(e.ColorMode.disabled),n.setDepthMode(e.DepthMode.disabled);const s=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(const t of r){const r=i.getTile(t),a=this._tileClippingMaskIDs[t.key]=this.nextStencilID++,{tileBoundsBuffer:l,tileBoundsIndexBuffer:c,tileBoundsSegments:h}=this.getTileBoundsBuffers(r);s.draw(n,o.TRIANGLES,e.DepthMode.disabled,new e.StencilMode({func:o.ALWAYS,mask:0},a,255,o.KEEP,o.KEEP,o.REPLACE),e.ColorMode.disabled,e.CullFaceMode.disabled,Ai(t.projMatrix),"$clipping",l,c,h)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const t=this.nextStencilID++,i=this.context.gl;return new e.StencilMode({func:i.NOTEQUAL,mask:255},t,255,i.KEEP,i.KEEP,i.REPLACE)}stencilModeForClipping(t){if(this.terrain)return this.terrain.stencilModeForRTTOverlap(t);const i=this.context.gl;return new e.StencilMode({func:i.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,i.KEEP,i.KEEP,i.REPLACE)}stencilConfigForOverlap(t){const i=this.context.gl,r=t.sort(((e,t)=>t.overscaledZ-e.overscaledZ)),n=r[r.length-1].overscaledZ,o=r[0].overscaledZ-n+1;if(o>1){this.currentStencilSource=void 0,this.nextStencilID+o>256&&this.clearStencil();const t={};for(let r=0;r=0;this.currentLayer--){const e=this.style._layers[r[this.currentLayer]],i=t._getLayerSourceCache(e);if(e.isSky())continue;const n=i?s[i.id]:void 0;this._renderTileClippingMasks(e,i,n),this.renderLayer(this,i,e,n)}if(this.style.fog&&this.transform.projection.supportsFog&&function(t,i){const r=t.context,n=r.gl,o=t.transform,s=new e.DepthMode(n.LEQUAL,e.DepthMode.ReadOnly,[0,1]),a=t.useProgram("globeAtmosphere",null,"globe"===o.projection.name?["PROJECTION_GLOBE_VIEW","FOG"]:["FOG"]),l=e.globeToMercatorTransition(o.zoom),c=i.properties.get("color").toArray01(),h=i.properties.get("high-color").toArray01(),u=i.properties.get("space-color").toArray01PremultipliedAlpha(),d=e.identity$1([]);e.rotateY$1(d,d,-e.degToRad(o._center.lng)),e.rotateX$1(d,d,e.degToRad(o._center.lat)),e.rotateZ$1(d,d,o.angle),e.rotateX$1(d,d,-o._pitch);const p=e.fromQuat(new Float32Array(16),d),f=e.mapValue(i.properties.get("star-intensity"),0,1,0,.25),m=5e-4,_=e.mapValue(i.properties.get("horizon-blend"),0,1,m,.25),g=e.globeUseCustomAntiAliasing(t,r,o)&&_===m?o.worldSize/(2*Math.PI*1.025)-1:o.globeRadius,y=t.frameCounter/1e3%1,x=e.length(o.globeCenterInViewSpace),v=Math.sqrt(Math.pow(x,2)-Math.pow(g,2)),b=Math.acos(v/x),w=((t,i,r,n,o,s,a,l,c,h,u,d,p,f)=>({u_frustum_tl:t,u_frustum_tr:i,u_frustum_br:r,u_frustum_bl:n,u_horizon:o,u_transition:s,u_fadeout_range:a,u_color:l,u_high_color:c,u_space_color:h,u_star_intensity:u,u_star_size:5*e.exported.devicePixelRatio,u_star_density:0,u_temporal_offset:d,u_horizon_angle:p,u_rotation_matrix:f}))(o.frustumCorners.TL,o.frustumCorners.TR,o.frustumCorners.BR,o.frustumCorners.BL,o.frustumCorners.horizon,l,_,c,h,u,f,y,b,p);t.prepareDrawProgram(r,a);const T=t.atmosphereBuffer;T&&a.draw(r,n.TRIANGLES,s,e.StencilMode.disabled,e.ColorMode.alphaBlended,e.CullFaceMode.backCW,w,"skybox",T.vertexBuffer,T.indexBuffer,T.segments)}(this,this.style.fog),this.renderPass="sky",(e.globeToMercatorTransition(this.transform.zoom)>0||"globe"!==this.transform.projection.name)&&this.transform.isHorizonVisible())for(this.currentLayer=0;this.currentLayer{const r=t._getLayerSourceCache(e);r&&!e.isHidden(this.transform.zoom)&&(!i||i.getSource().maxzoom0?t.pop():null}isPatternMissing(e){return null===e||void 0!==e&&!this.imageManager.getPattern(e.toString())}terrainRenderModeElevated(){return this.style&&!!this.style.getTerrain()&&!!this.terrain&&!this.terrain.renderingToTexture}currentGlobalDefines(){const e=this.terrain&&this.terrain.renderingToTexture,t=this.terrain&&0===this.terrain.exaggeration(),i=this.style&&this.style.fog,r=[];return this.terrainRenderModeElevated()&&r.push("TERRAIN"),"globe"===this.transform.projection.name&&r.push("GLOBE"),t&&r.push("ZERO_EXAGGERATION"),i&&!e&&0!==i.getOpacity(this.transform.pitch)&&r.push("FOG"),e&&r.push("RENDER_TO_TEXTURE"),this._showOverdrawInspector&&r.push("OVERDRAW_INSPECTOR"),r}useProgram(e,t,i){this.cache=this.cache||{};const r=i||[],n=this.currentGlobalDefines().concat(r),o=Pi.cacheKey(ci[e],e,n,t);return this.cache[o]||(this.cache[o]=new Pi(this.context,e,ci[e],t,sr[e],n)),this.cache[o]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.frontFace.setDefault(),this.context.cullFaceSide.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){const e=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(e.FUNC_ADD)}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this._terrain&&this._terrain.destroy(),this.globeSharedBuffers&&this.globeSharedBuffers.destroy(),this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy(),this.atmosphereBuffer&&this.atmosphereBuffer.destroy()}prepareDrawTile(){this.terrain&&this.terrain.prepareDrawTile()}prepareDrawProgram(t,i,r){if(this.terrain&&this.terrain.renderingToTexture)return;const n=this.style.fog;if(n){const o=n.getOpacity(this.transform.pitch),s=((t,i,r,n,o,s,a,l,c,h,u)=>{const d=t.transform,p=i.properties.get("color").toArray01();p[3]=n;const f=t.frameCounter/1e3%1;return{u_fog_matrix:r?d.calculateFogTileMatrix(r):t.identityMat,u_fog_range:i.getFovAdjustedRange(d._fov),u_fog_color:p,u_fog_horizon_blend:i.properties.get("horizon-blend"),u_fog_temporal_offset:f,u_frustum_tl:o,u_frustum_tr:s,u_frustum_br:a,u_frustum_bl:l,u_globe_pos:c,u_globe_radius:h,u_viewport:u,u_globe_transition:e.globeToMercatorTransition(d.zoom),u_is_globe:+("globe"===d.projection.name)}})(this,n,r,o,this.transform.frustumCorners.TL,this.transform.frustumCorners.TR,this.transform.frustumCorners.BR,this.transform.frustumCorners.BL,this.transform.globeCenterInViewSpace,this.transform.globeRadius,[this.transform.width*e.exported.devicePixelRatio,this.transform.height*e.exported.devicePixelRatio]);i.setFogUniformValues(t,s)}}setTileLoadedFlag(e){this.tileLoaded=e}saveCanvasCopy(){const e=this.canvasCopy();e&&(this.frameCopies.push(e),this.tileLoaded=!1)}canvasCopy(){const e=this.context.gl,t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.copyTexImage2D(e.TEXTURE_2D,0,e.RGBA,0,0,e.drawingBufferWidth,e.drawingBufferHeight,0),t}getCanvasCopiesAndTimestamps(){return{canvasCopies:this.frameCopies,timeStamps:this.loadTimeStamps}}averageElevationNeedsEasing(){if(!this.transform._elevation)return!1;const e=this.style&&this.style.fog;return!!e&&0!==e.getOpacity(this.transform.pitch)}getBackgroundTiles(){const t=this._backgroundTiles,i=this._backgroundTiles={},r=this.transform.coveringTiles({tileSize:512});for(const n of r)i[n.key]=t[n.key]||new e.Tile(n,512,this.transform.tileZoom,this);return i}clearBackgroundTiles(){this._backgroundTiles={}}}class Br{constructor(e=0,t=0,i=0,r=0){if(isNaN(e)||e<0||isNaN(t)||t<0||isNaN(i)||i<0||isNaN(r)||r<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=e,this.bottom=t,this.left=i,this.right=r}interpolate(t,i,r){return null!=i.top&&null!=t.top&&(this.top=e.number(t.top,i.top,r)),null!=i.bottom&&null!=t.bottom&&(this.bottom=e.number(t.bottom,i.bottom,r)),null!=i.left&&null!=t.left&&(this.left=e.number(t.left,i.left,r)),null!=i.right&&null!=t.right&&(this.right=e.number(t.right,i.right,r)),this}getCenter(t,i){const r=e.clamp((this.left+t-this.right)/2,0,t),n=e.clamp((this.top+i-this.bottom)/2,0,i);return new e.Point(r,n)}equals(e){return this.top===e.top&&this.bottom===e.bottom&&this.left===e.left&&this.right===e.right}clone(){return new Br(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}function Or(t,i){const r=e.getColumn(t,3);e.fromQuat(t,i),e.setColumn(t,3,r)}function Fr(t,i){const r=e.identity$1([]);return e.rotateZ$1(r,r,-i),e.rotateX$1(r,r,-t),r}function jr(t,i){const r=[t[0],t[1],0],n=[i[0],i[1],0];if(e.length(r)>=1e-15){const t=e.normalize([],r);e.scale$2(n,t,e.dot(n,t)),i[0]=n[0],i[1]=n[1]}const o=e.cross([],i,t);if(e.len(o)<1e-15)return null;const s=Math.atan2(-o[1],o[0]);return Fr(Math.atan2(Math.sqrt(t[0]*t[0]+t[1]*t[1]),-t[2]),s)}class Ur{constructor(e,t){this.position=e,this.orientation=t}get position(){return this._position}set position(t){if(t){const i=t instanceof e.MercatorCoordinate?t:new e.MercatorCoordinate(t[0],t[1],t[2]);this._renderWorldCopies&&(i.x=e.wrap(i.x,0,1)),this._position=i}else this._position=null}lookAtPoint(t,i){if(this.orientation=null,!this.position)return;const r=this.position,n=this._elevation?this._elevation.getAtPointOrZero(e.MercatorCoordinate.fromLngLat(t)):0,o=e.MercatorCoordinate.fromLngLat(t,n),s=[o.x-r.x,o.y-r.y,o.z-r.z];i||(i=[0,0,1]),i[2]=Math.abs(i[2]),this.orientation=jr(s,i)}setPitchBearing(t,i){this.orientation=Fr(e.degToRad(t),e.degToRad(-i))}}class Nr{constructor(t,i){this._transform=e.identity([]),this.orientation=i,this.position=t}get mercatorPosition(){const t=this.position;return new e.MercatorCoordinate(t[0],t[1],t[2])}get position(){const t=e.getColumn(this._transform,3);return[t[0],t[1],t[2]]}set position(t){var i;t&&e.setColumn(this._transform,3,[(i=t)[0],i[1],i[2],1])}get orientation(){return this._orientation}set orientation(t){this._orientation=t||e.identity$1([]),t&&Or(this._transform,this._orientation)}getPitchBearing(){const e=this.forward(),t=this.right();return{bearing:Math.atan2(-t[1],t[0]),pitch:Math.atan2(Math.sqrt(e[0]*e[0]+e[1]*e[1]),-e[2])}}setPitchBearing(e,t){this._orientation=Fr(e,t),Or(this._transform,this._orientation)}forward(){const t=e.getColumn(this._transform,2);return[-t[0],-t[1],-t[2]]}up(){const t=e.getColumn(this._transform,1);return[-t[0],-t[1],-t[2]]}right(){const t=e.getColumn(this._transform,0);return[t[0],t[1],t[2]]}getCameraToWorld(t,i){const r=new Float64Array(16);return e.invert(r,this.getWorldToCamera(t,i)),r}getWorldToCameraPosition(t,i,r){const n=this.position;e.scale$2(n,n,-t);const o=new Float64Array(16);return e.fromScaling(o,[r,r,r]),e.translate(o,o,n),o[10]*=i,o}getWorldToCamera(t,i){const r=new Float64Array(16),n=new Float64Array(4),o=this.position;return e.conjugate(n,this._orientation),e.scale$2(o,o,-t),e.fromQuat(r,n),e.translate(r,r,o),r[1]*=-1,r[5]*=-1,r[9]*=-1,r[13]*=-1,r[8]*=i,r[9]*=i,r[10]*=i,r[11]*=i,r}getCameraToClipPerspective(t,i,r,n){const o=new Float64Array(16);return e.perspective(o,t,i,r,n),o}getDistanceToElevation(t,i=!1){const r=0===t?0:e.mercatorZfromAltitude(t,i?e.latFromMercatorY(this.position[1]):this.position[1]),n=this.forward();return(r-this.position[2])/n[2]}clone(){return new Nr([...this.position],[...this.orientation])}}function Vr(t,i){const r=Gr(t.projection,t.zoom,t.width,t.height),n=function(t,i,r,n,o){const s=new e.LngLat(r.lng-180*qr,r.lat),a=new e.LngLat(r.lng+180*qr,r.lat),l=t.project(s.lng,s.lat),c=t.project(a.lng,a.lat),h=-Math.atan2(c.y-l.y,c.x-l.x),u=e.MercatorCoordinate.fromLngLat(r);u.y=e.clamp(u.y,-1+qr,1-qr);const d=u.toLngLat(),p=t.project(d.lng,d.lat),f=e.MercatorCoordinate.fromLngLat(d);f.x+=qr;const m=f.toLngLat(),_=t.project(m.lng,m.lat),g=Wr(_.x-p.x,_.y-p.y,h),y=e.MercatorCoordinate.fromLngLat(d);y.y+=qr;const x=y.toLngLat(),v=t.project(x.lng,x.lat),b=Wr(v.x-p.x,v.y-p.y,h),w=Math.abs(g.x)/Math.abs(b.y),T=e.identity([]);e.rotateZ(T,T,-h*(1-(o?0:n)));const E=e.identity([]);return e.scale(E,E,[1,1-(1-w)*n,1]),E[4]=-b.x/b.y*n,e.rotateZ(E,E,h),e.multiply(E,T,E),E}(t.projection,0,t.center,r,i),o=$r(t);return e.scale(n,n,[o,o,1]),n}function $r(t){const i=t.projection,r=Gr(t.projection,t.zoom,t.width,t.height),n=Zr(i,t.center),o=Zr(i,e.LngLat.convert(i.center));return Math.pow(2,n*r+(1-r)*o)}function Gr(t,i,r,n,o=1/0){const s=t.range;if(!s)return 0;const a=Math.min(o,Math.max(r,n)),l=Math.log(a/1024)/Math.LN2;return e.smoothstep(s[0]+l,s[1]+l,i)}const qr=1/4e4;function Zr(t,i){const r=e.clamp(i.lat,-e.MAX_MERCATOR_LATITUDE,e.MAX_MERCATOR_LATITUDE),n=new e.LngLat(i.lng-180*qr,r),o=new e.LngLat(i.lng+180*qr,r),s=t.project(n.lng,r),a=t.project(o.lng,r),l=e.MercatorCoordinate.fromLngLat(n),c=e.MercatorCoordinate.fromLngLat(o),h=a.x-s.x,u=a.y-s.y,d=c.x-l.x,p=c.y-l.y,f=Math.sqrt((d*d+p*p)/(h*h+u*u));return Math.log(f)/Math.LN2}function Wr(e,t,i){const r=Math.cos(i),n=Math.sin(i);return{x:e*r-t*n,y:e*n+t*r}}class Hr{constructor(t,i,r,n,o,s,a){this.tileSize=512,this._renderWorldCopies=void 0===o||o,this._minZoom=t||0,this._maxZoom=i||22,this._minPitch=null==r?0:r,this._maxPitch=null==n?60:n,this.setProjection(s),this.setMaxBounds(a),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._nearZ=0,this._farZ=0,this._unmodified=!0,this._edgeInsets=new Br,this._projMatrixCache={},this._alignedProjMatrixCache={},this._fogTileMatrixCache={},this._distanceTileDataCache={},this._camera=new Nr,this._centerAltitude=0,this._averageElevation=0,this.cameraElevationReference="ground",this._pixelsPerMercatorPixel=1,this.globeRadius=0,this.globeCenterInViewSpace=[0,0,0],this._horizonShift=.1}clone(){const e=new Hr(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies,this.getProjection());return e._elevation=this._elevation,e._centerAltitude=this._centerAltitude,e._centerAltitudeValidForExaggeration=this._centerAltitudeValidForExaggeration,e.tileSize=this.tileSize,e.mercatorFromTransition=this.mercatorFromTransition,e.width=this.width,e.height=this.height,e.cameraElevationReference=this.cameraElevationReference,e._center=this._center,e._setZoom(this.zoom),e._seaLevelZoom=this._seaLevelZoom,e.angle=this.angle,e._fov=this._fov,e._pitch=this._pitch,e._nearZ=this._nearZ,e._farZ=this._farZ,e._averageElevation=this._averageElevation,e._unmodified=this._unmodified,e._edgeInsets=this._edgeInsets.clone(),e._camera=this._camera.clone(),e._calcMatrices(),e.freezeTileCoverage=this.freezeTileCoverage,e.frustumCorners=this.frustumCorners,e}get elevation(){return this._elevation}set elevation(e){this._elevation!==e&&(this._elevation=e,this._updateCameraOnTerrain(),this._calcMatrices())}updateElevation(e,t=!1){const i=this._elevation&&this._elevation.exaggeration()!==this._centerAltitudeValidForExaggeration;(null==this._seaLevelZoom||i)&&this._updateCameraOnTerrain(),(e||i)&&this._constrainCamera(t),this._calcMatrices()}getProjection(){return e.pick(this.projection,["name","center","parallels"])}setProjection(i){this.projectionOptions=i||{name:"mercator"};const r=this.projection?this.getProjection():void 0;this.projection=e.getProjection(this.projectionOptions);const n=!t(r,this.getProjection());return n&&this._calcMatrices(),this.mercatorFromTransition=!1,n}setMercatorFromTransition(){const t=this.projection.name;this.mercatorFromTransition=!0,this.projectionOptions={name:"mercator"},this.projection=e.getProjection({name:"mercator"});const i=t!==this.projection.name;return i&&this._calcMatrices(),i}get minZoom(){return this._minZoom}set minZoom(e){this._minZoom!==e&&(this._minZoom=e,this.zoom=Math.max(this.zoom,e))}get maxZoom(){return this._maxZoom}set maxZoom(e){this._maxZoom!==e&&(this._maxZoom=e,this.zoom=Math.min(this.zoom,e))}get minPitch(){return this._minPitch}set minPitch(e){this._minPitch!==e&&(this._minPitch=e,this.pitch=Math.max(this.pitch,e))}get maxPitch(){return this._maxPitch}set maxPitch(e){this._maxPitch!==e&&(this._maxPitch=e,this.pitch=Math.min(this.pitch,e))}get renderWorldCopies(){return this._renderWorldCopies&&!0===this.projection.supportsWorldCopies}set renderWorldCopies(e){void 0===e?e=!0:null===e&&(e=!1),this._renderWorldCopies=e}get worldSize(){return this.tileSize*this.scale}get cameraWorldSizeForFog(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get cameraWorldSize(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation,!0),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get pixelsPerMeter(){return this.projection.pixelsPerMeter(this.center.lat,this.worldSize)}get cameraPixelsPerMeter(){return e.mercatorZfromAltitude(this.center.lat,this.cameraWorldSizeForFog)}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new e.Point(this.width,this.height)}get bearing(){return e.wrap(this.rotation,-180,180)}set bearing(e){this.rotation=e}get rotation(){return-this.angle/Math.PI*180}set rotation(t){const i=-t*Math.PI/180;var r;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=(r=new e.ARRAY_TYPE(4),e.ARRAY_TYPE!=Float32Array&&(r[1]=0,r[2]=0),r[0]=1,r[3]=1,r),function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);e[0]=r*l+o*a,e[1]=n*l+s*a,e[2]=r*-a+o*l,e[3]=n*-a+s*l}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(t){const i=e.clamp(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())}get aspect(){return this.width/this.height}get fov(){return this._fov/Math.PI*180}get fovX(){return this._fov}get fovY(){const e=1/Math.tan(.5*this.fovX);return 2*Math.atan(1/this.aspect/e)}set fov(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=e.degToRad(t),this._calcMatrices())}get averageElevation(){return this._averageElevation}set averageElevation(e){this._averageElevation=e,this._calcFogMatrices(),this._distanceTileDataCache={}}get zoom(){return this._zoom}set zoom(e){const t=Math.min(Math.max(e,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._setZoom(t),this._updateSeaLevelZoom(),this._constrain(),this._calcMatrices())}_setZoom(e){this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom}_updateCameraOnTerrain(){if(!this._elevation||!this._elevation.isDataAvailableAtPoint(this.locationCoordinate(this.center)))return this._centerAltitude=0,this._seaLevelZoom=null,void(this._centerAltitudeValidForExaggeration=void 0);const e=this._elevation;this._centerAltitude=e.getAtPointOrZero(this.locationCoordinate(this.center)),this._centerAltitudeValidForExaggeration=e.exaggeration(),this._updateSeaLevelZoom()}_updateSeaLevelZoom(){void 0!==this._centerAltitudeValidForExaggeration&&(this._seaLevelZoom=this._zoomFromMercatorZ((this.pixelsPerMeter*this._centerAltitude+this.cameraToCenterDistance)/this.worldSize))}sampleAverageElevation(){if(!this._elevation)return 0;const t=this._elevation,i=[[.5,.2],[.3,.5],[.5,.5],[.7,.5],[.5,.8]],r=this.horizonLineFromTop();let n=0,o=0;for(let s=0;st.maxzoom&&(i=t.maxzoom);const s=this.locationCoordinate(this.center),a=this.center.lat,l=1<{const i=1/4e4,r=new e.MercatorCoordinate(t.x+i,t.y,t.z),n=new e.MercatorCoordinate(t.x,t.y+i,t.z),o=t.toLngLat(),s=r.toLngLat(),a=n.toLngLat(),l=this.locationCoordinate(o),c=this.locationCoordinate(s),h=this.locationCoordinate(a),u=Math.hypot(c.x-l.x,c.y-l.y),d=Math.hypot(h.x-l.x,h.y-l.y);return Math.sqrt(u*d)*b/i},T=t=>{const i=x,r=v;return{aabb:e.tileAABB(this,l,0,0,0,t,r,i,this.projection),zoom:0,x:0,y:0,minZ:r,maxZ:i,wrap:t,fullyVisible:!1}},E=[];let A=[];const S=i,M=t.reparseOverscaled?r:i,C=e=>e*e,k=C((m-this._centerAltitude)*f),I=e=>{if(!this._elevation||!e.tileID||!o)return;const t=this._elevation.getMinMaxForTile(e.tileID),i=e.aabb;t?(i.min[2]=t.min,i.max[2]=t.max,i.center[2]=(i.min[2]+i.max[2])/2):(e.shouldSplit=P(e),e.shouldSplit||(i.min[2]=i.max[2]=i.center[2]=this._centerAltitude))},P=t=>{if(t.zoom=.9)return!0}else if(n&&(s=C(t.aabb.distanceZ(_)*f)),this.projection.isReprojectedInTileSpace&&r<=5){const i=Math.pow(2,t.zoom),r=w(new e.MercatorCoordinate((t.x+.5)/i,(t.y+.5)/i));l=r>.85?1:r}const c=i*i+o*o+s,u=C((1<{if(t*C(.707)0;){const r=E.pop(),s=r.x,a=r.y;let u=r.fullyVisible;if(!u){const e=r.aabb.intersects(d);if(0===e)continue;u=2===e}if(r.zoom!==S&&P(r))for(let t=0;t<4;t++){const i=(s<<1)+t%2,c=(a<<1)+(t>>1),d={aabb:o?r.aabb.quadrant(t):e.tileAABB(this,l,r.zoom+1,i,c,r.wrap,r.minZ,r.maxZ,this.projection),zoom:r.zoom+1,x:i,y:c,wrap:r.wrap,fullyVisible:u,tileID:void 0,shouldSplit:void 0,minZ:r.minZ,maxZ:r.maxZ};n&&!h&&(d.tileID=new e.OverscaledTileID(r.zoom+1===S?M:r.zoom+1,r.wrap,r.zoom+1,i,c),I(d)),E.push(d)}else{const n=r.zoom===S?M:r.zoom;if(t.minzoom&&t.minzoom>n)continue;const o=c[0]-(.5+s+(r.wrap<{const o=[0,0,0,1],s=[e.EXTENT,e.EXTENT,0,1],a=this.calculateFogTileMatrix(n.tileID.toUnwrapped());e.transformMat4$1(o,o,a),e.transformMat4$1(s,s,a);const l=e.getAABBPointSquareDist(o,s);if(0===l)return!0;let c=!1;const h=this._elevation;if(h&&l>i&&0!==r){const i=this.calculateProjMatrix(n.tileID.toUnwrapped());let o;t.isTerrainDEM||(o=h.getMinMaxForTile(n.tileID)),o||(o={min:v,max:x});const s=e.furthestTileCorner(this.rotation),a=[s[0]*e.EXTENT,s[1]*e.EXTENT,o.max];e.transformMat4(a,a,i),c=(1-a[1])*this.height*.5e.distanceSq-t.distanceSq)).map((e=>e.tileID))}resize(e,t){this.width=e,this.height=t,this.pixelsToGLUnits=[2/e,-2/t],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(e){return Math.pow(2,e)}scaleZoom(e){return Math.log(e)/Math.LN2}project(t){const i=e.clamp(t.lat,-e.MAX_MERCATOR_LATITUDE,e.MAX_MERCATOR_LATITUDE),r=this.projection.project(t.lng,i);return new e.Point(r.x*this.worldSize,r.y*this.worldSize)}unproject(e){return this.projection.unproject(e.x/this.worldSize,e.y/this.worldSize)}get point(){return this.project(this.center)}get pointMerc(){return this.point._div(this.worldSize)}get pixelsPerMeterRatio(){return this.pixelsPerMeter/e.mercatorZfromAltitude(1,this.center.lat)/this.worldSize}setLocationAtPoint(t,i){let r,n;const o=this.centerPoint;if("globe"===this.projection.name){const e=this.worldSize;r=(i.x-o.x)/e,n=(i.y-o.y)/e}else{const e=this.pointCoordinate(i),t=this.pointCoordinate(o);r=e.x-t.x,n=e.y-t.y}const s=this.locationCoordinate(t);this.setLocation(new e.MercatorCoordinate(s.x-r,s.y-n))}setLocation(e){this.center=this.coordinateLocation(e),this.projection.wrap&&(this.center=this.center.wrap())}locationPoint(e){return this.projection.locationPoint(this,e)}locationPoint3D(e){return this.projection.locationPoint(this,e,!0)}pointLocation(e){return this.coordinateLocation(this.pointCoordinate(e))}pointLocation3D(e){return this.coordinateLocation(this.pointCoordinate3D(e))}locationCoordinate(t,i){const r=i?e.mercatorZfromAltitude(i,t.lat):void 0,n=this.projection.project(t.lng,t.lat);return new e.MercatorCoordinate(n.x,n.y,r)}coordinateLocation(e){return this.projection.unproject(e.x,e.y)}pointRayIntersection(t,i){const r=null!=i?i:this._centerAltitude,n=[t.x,t.y,0,1],o=[t.x,t.y,1,1];e.transformMat4$1(n,n,this.pixelMatrixInverse),e.transformMat4$1(o,o,this.pixelMatrixInverse);const s=o[3];e.scale$1(n,n,1/n[3]),e.scale$1(o,o,1/s);const a=n[2],l=o[2];return{p0:n,p1:o,t:a===l?0:(r-a)/(l-a)}}screenPointToMercatorRay(t){const i=[t.x,t.y,0,1],r=[t.x,t.y,1,1];return e.transformMat4$1(i,i,this.pixelMatrixInverse),e.transformMat4$1(r,r,this.pixelMatrixInverse),e.scale$1(i,i,1/i[3]),e.scale$1(r,r,1/r[3]),i[2]=e.mercatorZfromAltitude(i[2],this._center.lat)*this.worldSize,r[2]=e.mercatorZfromAltitude(r[2],this._center.lat)*this.worldSize,e.scale$1(i,i,1/this.worldSize),e.scale$1(r,r,1/this.worldSize),new e.Ray([i[0],i[1],i[2]],e.normalize([],e.sub([],r,i)))}rayIntersectionCoordinate(t){const{p0:i,p1:r,t:n}=t,o=e.mercatorZfromAltitude(i[2],this._center.lat),s=e.mercatorZfromAltitude(r[2],this._center.lat);return new e.MercatorCoordinate(e.number(i[0],r[0],n)/this.worldSize,e.number(i[1],r[1],n)/this.worldSize,e.number(o,s,n))}pointCoordinate(e,t=this._centerAltitude){return this.projection.pointCoordinate(this,e.x,e.y,t)}pointCoordinate3D(t){if(!this.elevation)return this.pointCoordinate(t);let i=this.projection.pointCoordinate3D(this,t.x,t.y);if(i)return new e.MercatorCoordinate(i[0],i[1],i[2]);let r=0,n=this.horizonLineFromTop();if(t.y>n)return this.pointCoordinate(t);const o=.02*n,s=t.clone();for(let t=0;t<10&&n-r>o;t++){s.y=e.number(r,n,.66);const t=this.projection.pointCoordinate3D(this,s.x,s.y);t?(n=s.y,i=t):r=s.y}return i?new e.MercatorCoordinate(i[0],i[1],i[2]):this.pointCoordinate(t)}isPointAboveHorizon(e){return this.projection.isPointAboveHorizon(this,e)}isPointOnSurface(t){if(t.y<0||t.y>this.height||t.x<0||t.x>this.width)return!1;if(this.elevation||this.zoom>=e.GLOBE_ZOOM_THRESHOLD_MAX)return!this.isPointAboveHorizon(t);const i=this.pointCoordinate(t);return i.y>=0&&i.y<=1}_coordinatePoint(t,i){const r=i&&this.elevation?this.elevation.getAtPointOrZero(t,this._centerAltitude):this._centerAltitude,n=[t.x*this.worldSize,t.y*this.worldSize,r+t.toAltitude(),1];return e.transformMat4$1(n,n,this.pixelMatrix),n[3]>0?new e.Point(n[0]/n[3],n[1]/n[3]):new e.Point(Number.MAX_VALUE,Number.MAX_VALUE)}_getBoundsNonRectangular(){const{top:t,left:i}=this._edgeInsets,r=this.height-this._edgeInsets.bottom,n=this.width-this._edgeInsets.right,o=this.pointLocation3D(new e.Point(i,t)),s=this.pointLocation3D(new e.Point(n,t)),a=this.pointLocation3D(new e.Point(n,r)),l=this.pointLocation3D(new e.Point(i,r));let c=Math.min(o.lng,s.lng,a.lng,l.lng),h=Math.max(o.lng,s.lng,a.lng,l.lng),u=Math.min(o.lat,s.lat,a.lat,l.lat),d=Math.max(o.lat,s.lat,a.lat,l.lat);const p=Math.pow(2,-this.zoom)/16*270,f="globe"===this.projection.name?1:4,m=(t,i,r,n,o)=>{const s=(t+r)/2,a=(i+n)/2,l=new e.Point(s,a),{lng:_,lat:g}=this.pointLocation3D(l),y=Math.max(0,c-_,u-g,_-h,g-d);c=Math.min(c,_),h=Math.max(h,_),u=Math.min(u,g),d=Math.max(d,g),(op)&&(m(t,i,s,a,o+1),m(s,a,r,n,o+1))};if(m(i,t,n,t,1),m(n,t,n,r,1),m(n,r,i,r,1),m(i,r,i,t,1),"globe"===this.projection.name){const[t,i]=e.polesInViewport(this);t?(d=90,h=180,c=-180):i&&(u=-90,h=180,c=-180)}return new e.LngLatBounds(new e.LngLat(c,u),new e.LngLat(h,d))}_getBoundsRectangular(t,i){const{top:r,left:n}=this._edgeInsets,o=this.height-this._edgeInsets.bottom,s=this.width-this._edgeInsets.right,a=new e.Point(n,r),l=new e.Point(s,r),c=new e.Point(s,o),h=new e.Point(n,o);let u=this.pointCoordinate(a,t),d=this.pointCoordinate(l,t);const p=this.pointCoordinate(c,i),f=this.pointCoordinate(h,i),m=(e,t)=>(t.y-e.y)/(t.x-e.x);return u.y>1&&d.y>=0?u=new e.MercatorCoordinate((1-f.y)/m(f,u)+f.x,1):u.y<0&&d.y<=1&&(u=new e.MercatorCoordinate(-f.y/m(f,u)+f.x,0)),d.y>1&&u.y>=0?d=new e.MercatorCoordinate((1-p.y)/m(p,d)+p.x,1):d.y<0&&u.y<=1&&(d=new e.MercatorCoordinate(-p.y/m(p,d)+p.x,0)),(new e.LngLatBounds).extend(this.coordinateLocation(u)).extend(this.coordinateLocation(d)).extend(this.coordinateLocation(f)).extend(this.coordinateLocation(p))}_getBoundsRectangularTerrain(){const e=this.elevation;if(!e.visibleDemTiles.length||e.isUsingMockSource())return this._getBoundsRectangular(0,0);const t=e.visibleDemTiles.reduce(((e,t)=>{if(t.dem){const i=t.dem.tree;e.min=Math.min(e.min,i.minimums[0]),e.max=Math.max(e.max,i.maximums[0])}return e}),{min:Number.MAX_VALUE,max:0});return this._getBoundsRectangular(t.min*e.exaggeration(),t.max*e.exaggeration())}getBounds(){return"mercator"===this.projection.name||"equirectangular"===this.projection.name?this._terrainEnabled()?this._getBoundsRectangularTerrain():this._getBoundsRectangular(0,0):this._getBoundsNonRectangular()}horizonLineFromTop(e=!0){const t=this.height/2/Math.tan(this._fov/2)/Math.tan(Math.max(this._pitch,.1))+this.centerOffset.y,i=this.height/2-t*(1-this._horizonShift);return e?Math.max(0,i):i}getMaxBounds(){return this.maxBounds}setMaxBounds(t){this.maxBounds=t,this.minLat=-e.MAX_MERCATOR_LATITUDE,this.maxLat=e.MAX_MERCATOR_LATITUDE,this.minLng=-180,this.maxLng=180,t&&(this.minLat=t.getSouth(),this.maxLat=t.getNorth(),this.minLng=t.getWest(),this.maxLng=t.getEast(),this.maxLngu&&(a=u-c),u-ht&&(s=t-l),t-e.5?v-1:v,b>.5?b-1:b,0]),this.alignedProjMatrix=w,a=e.create(),e.scale(a,a,[this.width/2,-this.height/2,1]),e.translate(a,a,[1,-1,0]),this.labelPlaneMatrix=a,a=e.create(),e.scale(a,a,[1,-1,1]),e.translate(a,a,[-1,-1,0]),e.scale(a,a,[2/this.width,2/this.height,1]),this.glCoordMatrix=a,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),this._calcFogMatrices(),this._distanceTileDataCache={},a=e.invert(new Float64Array(16),this.pixelMatrix),!a)throw new Error("failed to invert matrix");if(this.pixelMatrixInverse=a,"globe"===this.projection.name||this.mercatorFromTransition){this.globeMatrix=e.calculateGlobeMatrix(this);const t=[this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]];this.globeCenterInViewSpace=e.transformMat4(t,t,o),this.globeRadius=this.worldSize/2/Math.PI-1}else this.globeMatrix=a;this._projMatrixCache={},this._alignedProjMatrixCache={},this._pixelsToTileUnitsCache={}}_calcFogMatrices(){this._fogTileMatrixCache={};const t=this.cameraWorldSizeForFog,i=this.cameraPixelsPerMeter,r=this._camera.position,n=1/this.height/this._pixelsPerMercatorPixel,o=[t,t,i];e.scale$2(o,o,n),e.scale$2(r,r,-1),e.multiply$2(r,r,o);const s=e.create();e.translate(s,s,r),e.scale(s,s,o),this.mercatorFogMatrix=s,this.worldToFogMatrix=this._camera.getWorldToCameraPosition(t,i,n)}_computeCameraPosition(e){const t=(e=e||this.pixelsPerMeter)/this.pixelsPerMeter,i=this._camera.forward(),r=this.point,n=this._mercatorZfromZoom(this._seaLevelZoom?this._seaLevelZoom:this._zoom)*t-e/this.worldSize*this._centerAltitude;return[r.x/this.worldSize-i[0]*n,r.y/this.worldSize-i[1]*n,e/this.worldSize*this._centerAltitude-i[2]*n]}_updateCameraState(){this.height&&(this._camera.setPitchBearing(this._pitch,this.angle),this._camera.position=this._computeCameraPosition())}_translateCameraConstrained(t){const i=this._maxCameraBoundsDistance()*Math.cos(this._pitch),r=this._camera.position[2],n=t[2];let o=1;this.projection.wrap&&(this.center=this.center.wrap()),n>0&&(o=Math.min((i-r)/n,1)),this._camera.position=e.scaleAndAdd([],this._camera.position,t,o),this._updateStateFromCamera()}_updateStateFromCamera(){const t=this._camera.position,i=this._camera.forward(),{pitch:r,bearing:n}=this._camera.getPitchBearing(),o=e.mercatorZfromAltitude(this._centerAltitude,this.center.lat)*this._pixelsPerMercatorPixel,s=this._mercatorZfromZoom(this._maxZoom)*Math.cos(e.degToRad(this._maxPitch)),a=Math.max((t[2]-o)/Math.cos(r),s),l=this._zoomFromMercatorZ(a);e.scaleAndAdd(t,t,i,a),this._pitch=e.clamp(r,e.degToRad(this.minPitch),e.degToRad(this.maxPitch)),this.angle=e.wrap(n,-Math.PI,Math.PI),this._setZoom(e.clamp(l,this._minZoom,this._maxZoom)),this._updateSeaLevelZoom(),this._center=this.coordinateLocation(new e.MercatorCoordinate(t[0],t[1],t[2])),this._unmodified=!1,this._constrain(),this._calcMatrices()}_worldSizeFromZoom(e){return Math.pow(2,e)*this.tileSize}_mercatorZfromZoom(e){return this.cameraToCenterDistance/this._worldSizeFromZoom(e)}_minimumHeightOverTerrain(){const e=Math.min((null!=this._seaLevelZoom?this._seaLevelZoom:this._zoom)+4,this._maxZoom);return this._mercatorZfromZoom(e)}_zoomFromMercatorZ(e){return this.scaleZoom(this.cameraToCenterDistance/(e*this.tileSize))}zoomFromMercatorZAdjusted(t){let i=0,r=e.GLOBE_ZOOM_THRESHOLD_MAX,n=0,o=1/0;for(;r-i>1e-6&&r>i;){const e=i+.5*(r-i),s=this.tileSize*Math.pow(2,e),a=this.getCameraToCenterDistance(this.projection,e,s),l=this.scaleZoom(a/(t*this.tileSize)),c=Math.abs(e-l);cc||i.y>1)return!0}return!1}isHorizonVisible(){return this.pitch+e.radToDeg(this.fovAboveCenter)>88||this.anyCornerOffEdge(new e.Point(0,0),new e.Point(this.width,this.height))}zoomDeltaToMovement(t,i){const r=e.length(e.sub([],this._camera.position,t)),n=this._zoomFromMercatorZ(r)+i;return r-this._mercatorZfromZoom(n)}getCameraPoint(){if("globe"===this.projection.name){const t=function([t,i,r],n){const o=[t,i,r,1];e.transformMat4$1(o,o,n);const s=o[3]=Math.max(o[3],1e-6);return o[0]/=s,o[1]/=s,o[2]/=s,o}([this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]],this.pixelMatrix);return new e.Point(t[0],t[1])}{const t=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,t))}}getCameraToCenterDistance(e,t=this.zoom,i=this.worldSize){const r=Gr(e,t,this.width,this.height,1024),n=e.pixelSpaceConversion(this.center.lat,i,r);return.5/Math.tan(.5*this._fov)*this.height*n}getWorldToCameraMatrix(){const t=this._camera.getWorldToCamera(this.worldSize,"meters"===this.projection.zAxisUnit?this.pixelsPerMeter:1);return"globe"===this.projection.name&&e.multiply(t,t,this.globeMatrix),t}}function Xr(e,t){let i=!1,r=null;const n=()=>{r=null,i&&(e(),r=setTimeout(n,t),i=!1)};return()=>(i=!0,r||n(),r)}class Kr{constructor(t){this._hashName=t&&encodeURIComponent(t),e.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=Xr(this._updateHashUnthrottled.bind(this),300)}addTo(t){return this._map=t,e.window.addEventListener("hashchange",this._onHashChange,!1),t.on("moveend",this._updateHash),this}remove(){return this._map?(this._map.off("moveend",this._updateHash),e.window.removeEventListener("hashchange",this._onHashChange,!1),clearTimeout(this._updateHash()),this._map=void 0,this):this}getHashString(){const t=this._map;if(!t)return"";const i=Yr(t);if(this._hashName){const t=this._hashName;let r=!1;const n=e.window.location.hash.slice(1).split("&").map((e=>{const n=e.split("=")[0];return n===t?(r=!0,`${n}=${i}`):e})).filter((e=>e));return r||n.push(`${t}=${i}`),`#${n.join("&")}`}return`#${i}`}_getCurrentHash(){const t=e.window.location.hash.replace("#","");if(this._hashName){let e;return t.split("&").map((e=>e.split("="))).forEach((t=>{t[0]===this._hashName&&(e=t)})),(e&&e[1]||"").split("/")}return t.split("/")}_onHashChange(){const e=this._map;if(!e)return!1;const t=this._getCurrentHash();if(t.length>=3&&!t.some((e=>isNaN(e)))){const i=e.dragRotate.isEnabled()&&e.touchZoomRotate.isEnabled()?+(t[3]||0):e.getBearing();return e.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:i,pitch:+(t[4]||0)}),!0}return!1}_updateHashUnthrottled(){const t=e.window.location.href.replace(/(#.+)?$/,this.getHashString());e.window.history.replaceState(e.window.history.state,null,t)}}function Yr(e,t){const i=e.getCenter(),r=Math.round(100*e.getZoom())/100,n=Math.ceil((r*Math.LN2+Math.log(512/360/.5))/Math.LN10),o=Math.pow(10,n),s=Math.round(i.lng*o)/o,a=Math.round(i.lat*o)/o,l=e.getBearing(),c=e.getPitch();let h=t?`/${s}/${a}/${r}`:`${r}/${a}/${s}`;return(l||c)&&(h+="/"+Math.round(10*l)/10),c&&(h+=`/${Math.round(c)}`),h}const Jr={linearity:.3,easing:e.bezier(0,0,.3,1)},Qr=e.extend({deceleration:2500,maxSpeed:1400},Jr),en=e.extend({deceleration:20,maxSpeed:1400},Jr),tn=e.extend({deceleration:1e3,maxSpeed:360},Jr),rn=e.extend({deceleration:1e3,maxSpeed:90},Jr);class nn{constructor(e){this._map=e,this.clear()}clear(){this._inertiaBuffer=[]}record(t){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.exported.now(),settings:t})}_drainInertiaBuffer(){const t=this._inertiaBuffer,i=e.exported.now();for(;t.length>0&&i-t[0].time>160;)t.shift()}_onMoveEnd(t){if(this._map._prefersReducedMotion())return;if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const i={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0};for(const{settings:e}of this._inertiaBuffer)i.zoom+=e.zoomDelta||0,i.bearing+=e.bearingDelta||0,i.pitch+=e.pitchDelta||0,e.panDelta&&i.pan._add(e.panDelta),e.around&&(i.around=e.around),e.pinchAround&&(i.pinchAround=e.pinchAround);const r=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,n={};if(i.pan.mag()){const o=sn(i.pan.mag(),r,e.extend({},Qr,t||{}));n.offset=i.pan.mult(o.amount/i.pan.mag()),n.center=this._map.transform.center,on(n,o)}if(i.zoom){const e=sn(i.zoom,r,en);n.zoom=this._map.transform.zoom+e.amount,on(n,e)}if(i.bearing){const t=sn(i.bearing,r,tn);n.bearing=this._map.transform.bearing+e.clamp(t.amount,-179,179),on(n,t)}if(i.pitch){const e=sn(i.pitch,r,rn);n.pitch=this._map.transform.pitch+e.amount,on(n,e)}if(n.zoom||n.bearing){const e=void 0===i.pinchAround?i.around:i.pinchAround;n.around=e?this._map.unproject(e):this._map.getCenter()}return this.clear(),n.noMoveStart=!0,n}}function on(e,t){(!e.duration||e.durationi.unproject(e))),a=o.reduce(((e,t,i,r)=>e.add(t.div(r.length))),new e.Point(0,0));super(t,{points:o,point:a,lngLats:s,lngLat:i.unproject(a),originalEvent:r}),this._defaultPrevented=!1}}class cn extends e.Event{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(e,t,i){super(e,{originalEvent:i}),this._defaultPrevented=!1}}class hn{constructor(e,t){this._map=e,this._clickTolerance=t.clickTolerance}reset(){this._mousedownPos=void 0}wheel(e){return this._firePreventable(new cn(e.type,this._map,e))}mousedown(e,t){return this._mousedownPos=t,this._firePreventable(new an(e.type,this._map,e))}mouseup(e){this._map.fire(new an(e.type,this._map,e))}preclick(t){const i=e.extend({},t);i.type="preclick",this._map.fire(new an(i.type,this._map,i))}click(e,t){this._mousedownPos&&this._mousedownPos.dist(t)>=this._clickTolerance||(this.preclick(e),this._map.fire(new an(e.type,this._map,e)))}dblclick(e){return this._firePreventable(new an(e.type,this._map,e))}mouseover(e){this._map.fire(new an(e.type,this._map,e))}mouseout(e){this._map.fire(new an(e.type,this._map,e))}touchstart(e){return this._firePreventable(new ln(e.type,this._map,e))}touchmove(e){this._map.fire(new ln(e.type,this._map,e))}touchend(e){this._map.fire(new ln(e.type,this._map,e))}touchcancel(e){this._map.fire(new ln(e.type,this._map,e))}_firePreventable(e){if(this._map.fire(e),e.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class un{constructor(e){this._map=e}reset(){this._delayContextMenu=!1,this._contextMenuEvent=void 0}mousemove(e){this._map.fire(new an(e.type,this._map,e))}mousedown(){this._delayContextMenu=!0}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new an("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(e){this._delayContextMenu?this._contextMenuEvent=e:this._map.fire(new an(e.type,this._map,e)),this._map.listens("contextmenu")&&e.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class dn{constructor(e,t){this._map=e,this._el=e.getCanvasContainer(),this._container=e.getContainer(),this._clickTolerance=t.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(e,t){this.isEnabled()&&e.shiftKey&&0===e.button&&(h(),this._startPos=this._lastPos=t,this._active=!0)}mousemoveWindow(e,t){if(!this._active)return;const i=t,r=this._startPos,n=this._lastPos;if(!r||!n||n.equals(i)||!this._box&&i.dist(r){this._box&&(this._box.style.transform=`translate(${s}px,${l}px)`,this._box.style.width=a-s+"px",this._box.style.height=c-l+"px")}))}mouseupWindow(t,i){if(!this._active)return;const r=this._startPos,n=i;if(r&&0===t.button){if(this.reset(),p(),r.x!==n.x||r.y!==n.y)return this._map.fire(new e.Event("boxzoomend",{originalEvent:t})),{cameraAnimation:e=>e.fitScreenCoordinates(r,n,this._map.getBearing(),{linear:!1})};this._fireEvent("boxzoomcancel",t)}}keydown(e){this._active&&27===e.keyCode&&(this.reset(),this._fireEvent("boxzoomcancel",e))}blur(){this.reset()}reset(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(this._box.remove(),this._box=null),u(),delete this._startPos,delete this._lastPos}_fireEvent(t,i){return this._map.fire(new e.Event(t,{originalEvent:i}))}}function pn(e,t){const i={};for(let r=0;rthis.numTouches)&&(this.aborted=!0),this.aborted||(0===this.startTime&&(this.startTime=t.timeStamp),r.length===this.numTouches&&(this.centroid=function(t){const i=new e.Point(0,0);for(const e of t)i._add(e);return i.div(t.length)}(i),this.touches=pn(r,i)))}touchmove(e,t,i){if(this.aborted||!this.centroid)return;const r=pn(i,t);for(const e in this.touches){const t=r[e];(!t||t.dist(this.touches[e])>30)&&(this.aborted=!0)}}touchend(e,t,i){if((!this.centroid||e.timeStamp-this.startTime>500)&&(this.aborted=!0),0===i.length){const e=!this.aborted&&this.centroid;if(this.reset(),e)return e}}}class mn{constructor(e){this.singleTap=new fn(e),this.numTaps=e.numTaps,this.reset()}reset(){this.lastTime=1/0,this.lastTap=void 0,this.count=0,this.singleTap.reset()}touchstart(e,t,i){this.singleTap.touchstart(e,t,i)}touchmove(e,t,i){this.singleTap.touchmove(e,t,i)}touchend(e,t,i){const r=this.singleTap.touchend(e,t,i);if(r){const t=e.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(r)<30;if(t&&i||this.reset(),this.count++,this.lastTime=e.timeStamp,this.lastTap=r,this.count===this.numTaps)return this.reset(),r}}}class _n{constructor(){this._zoomIn=new mn({numTouches:1,numTaps:2}),this._zoomOut=new mn({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(e,t,i){this._zoomIn.touchstart(e,t,i),this._zoomOut.touchstart(e,t,i)}touchmove(e,t,i){this._zoomIn.touchmove(e,t,i),this._zoomOut.touchmove(e,t,i)}touchend(e,t,i){const r=this._zoomIn.touchend(e,t,i),n=this._zoomOut.touchend(e,t,i);return r?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()+1,around:t.unproject(r)},{originalEvent:e})}):n?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()-1,around:t.unproject(n)},{originalEvent:e})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}const gn={0:1,2:2};class yn{constructor(e){this.reset(),this._clickTolerance=e.clickTolerance||1}blur(){this.reset()}reset(){this._active=!1,this._moved=!1,this._lastPoint=void 0,this._eventButton=void 0}_correctButton(e,t){return!1}_move(e,t){return{}}mousedown(e,t){if(this._lastPoint)return;const i=_(e);this._correctButton(e,i)&&(this._lastPoint=t,this._eventButton=i)}mousemoveWindow(e,t){const i=this._lastPoint;if(i)if(e.preventDefault(),null!=this._eventButton&&function(e,t){const i=gn[t];return void 0===e.buttons||(e.buttons&i)!==i}(e,this._eventButton))this.reset();else if(this._moved||!(t.dist(i)0&&(this._active=!0);const n=pn(r,i),o=new e.Point(0,0),s=new e.Point(0,0);let a=0;for(const e in n){const t=n[e],i=this._touches[e];i&&(o._add(t),s._add(t.sub(i)),a++,n[e]=t)}if(this._touches=n,a{this._alertContainer.classList.remove("mapboxgl-touch-pan-blocker-show"),this._alertContainer.setAttribute("role","null")}),500)}}class Tn{constructor(){this.reset()}reset(){this._active=!1,this._firstTwoTouches=void 0}_start(e){}_move(e,t,i){return{}}touchstart(e,t,i){this._firstTwoTouches||i.length<2||(this._firstTwoTouches=[i[0].identifier,i[1].identifier],this._start([t[0],t[1]]))}touchmove(e,t,i){const r=this._firstTwoTouches;if(!r)return;e.preventDefault();const[n,o]=r,s=En(i,t,n),a=En(i,t,o);if(!s||!a)return;const l=this._aroundCenter?null:s.add(a).div(2);return this._move([s,a],l,e)}touchend(e,t,i){if(!this._firstTwoTouches)return;const[r,n]=this._firstTwoTouches,o=En(i,t,r),s=En(i,t,n);o&&s||(this._active&&p(),this.reset())}touchcancel(){this.reset()}enable(e){this._enabled=!0,this._aroundCenter=!!e&&"center"===e.around}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}function En(e,t,i){for(let r=0;rMath.abs(e.x)}class In extends Tn{constructor(e){super(),this._map=e}reset(){super.reset(),this._valid=void 0,this._firstMove=void 0,this._lastPoints=void 0}_start(e){this._lastPoints=e,kn(e[0].sub(e[1]))&&(this._valid=!1)}_move(t,i,r){const n=this._lastPoints;if(!n)return;const o=t[0].sub(n[0]),s=t[1].sub(n[1]);return this._map._cooperativeGestures&&!e.isFullscreen()&&r.touches.length<3||(this._valid=this.gestureBeginsVertically(o,s,r.timeStamp),!this._valid)?void 0:(this._lastPoints=t,this._active=!0,{pitchDelta:(o.y+s.y)/2*-.5})}gestureBeginsVertically(e,t,i){if(void 0!==this._valid)return this._valid;const r=e.mag()>=2,n=t.mag()>=2;if(!r&&!n)return;if(!r||!n)return null==this._firstMove&&(this._firstMove=i),i-this._firstMove<100&&void 0;const o=e.y>0==t.y>0;return kn(e)&&kn(t)&&o}}const Pn={panStep:100,bearingStep:15,pitchStep:10};class zn{constructor(){const e=Pn;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1}blur(){this.reset()}reset(){this._active=!1}keydown(e){if(e.altKey||e.ctrlKey||e.metaKey)return;let t=0,i=0,r=0,n=0,o=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?i=-1:(e.preventDefault(),n=-1);break;case 39:e.shiftKey?i=1:(e.preventDefault(),n=1);break;case 38:e.shiftKey?r=1:(e.preventDefault(),o=-1);break;case 40:e.shiftKey?r=-1:(e.preventDefault(),o=1);break;default:return}return this._rotationDisabled&&(i=0,r=0),{cameraAnimation:s=>{const a=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:Ln,zoom:t?Math.round(a)+t*(e.shiftKey?2:1):a,bearing:s.getBearing()+i*this._bearingStep,pitch:s.getPitch()+r*this._pitchStep,offset:[-n*this._panStep,-o*this._panStep],center:s.getCenter()},{originalEvent:e})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Ln(e){return e*(2-e)}const Dn=4.000244140625;class Rn{constructor(t,i){this._map=t,this._el=t.getCanvasContainer(),this._handler=i,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,e.bindAll(["_onTimeout","_addScrollZoomBlocker","_showBlockerAlert"],this)}setZoomRate(e){this._defaultZoomRate=e}setWheelZoomRate(e){this._wheelZoomRate=e}isEnabled(){return!!this._enabled}isActive(){return this._active||void 0!==this._finishTimeout}isZooming(){return!!this._zooming}enable(e){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!e&&"center"===e.around,this._map._cooperativeGestures&&this._addScrollZoomBlocker())}disable(){this.isEnabled()&&(this._enabled=!1,this._map._cooperativeGestures&&(clearTimeout(this._alertTimer),this._alertContainer.remove()))}wheel(t){if(!this.isEnabled())return;if(this._map._cooperativeGestures){if(!(t.ctrlKey||t.metaKey||this.isZooming()||e.isFullscreen()))return void this._showBlockerAlert();"hidden"!==this._alertContainer.style.visibility&&(this._alertContainer.style.visibility="hidden",clearTimeout(this._alertTimer))}let i=t.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY;const r=e.exported.now(),n=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==i&&i%Dn==0?this._type="wheel":0!==i&&Math.abs(i)<4?this._type="trackpad":n>400?(this._type=null,this._lastValue=i,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(n*i)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,i+=this._lastValue)),t.shiftKey&&i&&(i/=4),this._type&&(this._lastWheelEvent=t,this._delta-=i,this._active||this._start(t)),t.preventDefault()}_onTimeout(e){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(e)}_start(e){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const t=f(this._el,e);this._aroundPoint=this._aroundCenter?this._map.transform.centerPoint:t,this._aroundCoord=this._map.transform.pointCoordinate3D(this._aroundPoint),this._targetZoom=void 0,this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const t=this._map.transform;"wheel"===this._type&&t.projection.wrap&&(t._center.lng>=180||t._center.lng<=-180)&&(this._prevEase=null,this._easing=null,this._lastWheelEvent=null,this._lastWheelEventTime=0);const i=()=>t._terrainEnabled()&&this._aroundCoord?t.computeZoomRelativeTo(this._aroundCoord):t.zoom;if(0!==this._delta){const e="wheel"===this._type&&Math.abs(this._delta)>Dn?this._wheelZoomRate:this._defaultZoomRate;let r=2/(1+Math.exp(-Math.abs(this._delta*e)));this._delta<0&&0!==r&&(r=1/r);const n=i(),o=Math.pow(2,n),s="number"==typeof this._targetZoom?t.zoomScale(this._targetZoom):o;this._targetZoom=Math.min(t.maxZoom,Math.max(t.minZoom,t.scaleZoom(s*r))),"wheel"===this._type&&(this._startZoom=n,this._easing=this._smoothOutEasing(200)),this._delta=0}const r="number"==typeof this._targetZoom?this._targetZoom:i(),n=this._startZoom,o=this._easing;let s,a=!1;if("wheel"===this._type&&n&&o){const t=Math.min((e.exported.now()-this._lastWheelEventTime)/200,1),i=o(t);s=e.number(n,r,i),t<1?this._frameId||(this._frameId=!0):a=!0}else s=r,a=!0;return this._active=!0,a&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._handler._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!a,zoomDelta:s-i(),around:this._aroundPoint,aroundCoord:this._aroundCoord,originalEvent:this._lastWheelEvent}}_smoothOutEasing(t){let i=e.ease;if(this._prevEase){const t=this._prevEase,r=(e.exported.now()-t.start)/t.duration,n=t.easing(r+.01)-t.easing(r),o=.27/Math.sqrt(n*n+1e-4)*.01,s=Math.sqrt(.0729-o*o);i=e.bezier(o,s,.25,1)}return this._prevEase={start:e.exported.now(),duration:t,easing:i},i}blur(){this.reset()}reset(){this._active=!1}_addScrollZoomBlocker(){this._map&&!this._alertContainer&&(this._alertContainer=o("div","mapboxgl-scroll-zoom-blocker",this._map._container),this._alertContainer.textContent=/(Mac|iPad)/i.test(e.window.navigator.userAgent)?this._map._getUIString("ScrollZoomBlocker.CmdMessage"):this._map._getUIString("ScrollZoomBlocker.CtrlMessage"),this._alertContainer.style.fontSize=`${Math.max(10,Math.min(24,Math.floor(.05*this._el.clientWidth)))}px`)}_showBlockerAlert(){this._alertContainer.style.visibility="visible",this._alertContainer.classList.add("mapboxgl-scroll-zoom-blocker-show"),this._alertContainer.setAttribute("role","alert"),clearTimeout(this._alertTimer),this._alertTimer=setTimeout((()=>{this._alertContainer.classList.remove("mapboxgl-scroll-zoom-blocker-show"),this._alertContainer.setAttribute("role","null")}),200)}}class Bn{constructor(e,t){this._clickZoom=e,this._tapZoom=t}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class On{constructor(){this.reset()}reset(){this._active=!1}blur(){this.reset()}dblclick(e,t){return e.preventDefault(),{cameraAnimation:i=>{i.easeTo({duration:300,zoom:i.getZoom()+(e.shiftKey?-1:1),around:i.unproject(t)},{originalEvent:e})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Fn{constructor(){this._tap=new mn({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,this._swipePoint=void 0,this._swipeTouch=0,this._tapTime=0,this._tap.reset()}touchstart(e,t,i){this._swipePoint||(this._tapTime&&e.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?i.length>0&&(this._swipePoint=t[0],this._swipeTouch=i[0].identifier):this._tap.touchstart(e,t,i))}touchmove(e,t,i){if(this._tapTime){if(this._swipePoint){if(i[0].identifier!==this._swipeTouch)return;const r=t[0],n=r.y-this._swipePoint.y;return this._swipePoint=r,e.preventDefault(),this._active=!0,{zoomDelta:n/128}}}else this._tap.touchmove(e,t,i)}touchend(e,t,i){this._tapTime?this._swipePoint&&0===i.length&&this.reset():this._tap.touchend(e,t,i)&&(this._tapTime=e.timeStamp)}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class jn{constructor(e,t,i){this._el=e,this._mousePan=t,this._touchPan=i}enable(e){this._inertiaOptions=e||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Un{constructor(e,t,i){this._pitchWithRotate=e.pitchWithRotate,this._mouseRotate=t,this._mousePitch=i}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class Nn{constructor(e,t,i,r){this._el=e,this._touchZoom=t,this._touchRotate=i,this._tapDragZoom=r,this._rotationDisabled=!1,this._enabled=!0}enable(e){this._touchZoom.enable(e),this._rotationDisabled||this._touchRotate.enable(e),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}const Vn=e=>e.zoom||e.drag||e.pitch||e.rotate;class $n extends e.Event{}class Gn{constructor(){this.constants=[1,1,.01],this.radius=0}setup(t,i){const r=e.sub([],i,t);this.radius=e.length(r[2]<0?e.div([],r,this.constants):[r[0],r[1],0])}projectRay(t){e.div(t,t,this.constants),e.normalize(t,t),e.mul$1(t,t,this.constants);const i=e.scale$2([],t,this.radius);if(i[2]>0){const t=e.scale$2([],[0,0,1],e.dot(i,[0,0,1])),r=e.scale$2([],e.normalize([],[i[0],i[1],0]),this.radius),n=e.add([],i,e.scale$2([],e.sub([],e.add([],r,t),i),2));i[0]=n[0],i[1]=n[1]}return i}}function qn(e){return e.panDelta&&e.panDelta.mag()||e.zoomDelta||e.bearingDelta||e.pitchDelta}class Zn{constructor(t,i){this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new nn(t),this._bearingSnap=i.bearingSnap,this._previousActiveHandlers={},this._trackingEllipsoid=new Gn,this._dragOrigin=null,this._eventsInProgress={},this._addDefaultHandlers(i),e.bindAll(["handleEvent","handleWindowEvent"],this);const r=this._el;this._listeners=[[r,"touchstart",{passive:!0}],[r,"touchmove",{passive:!1}],[r,"touchend",void 0],[r,"touchcancel",void 0],[r,"mousedown",void 0],[r,"mousemove",void 0],[r,"mouseup",void 0],[e.window.document,"mousemove",{capture:!0}],[e.window.document,"mouseup",void 0],[r,"mouseover",void 0],[r,"mouseout",void 0],[r,"dblclick",void 0],[r,"click",void 0],[r,"keydown",{capture:!1}],[r,"keyup",void 0],[r,"wheel",{passive:!1}],[r,"contextmenu",void 0],[e.window,"blur",void 0]];for(const[t,i,r]of this._listeners)t.addEventListener(i,t===e.window.document?this.handleWindowEvent:this.handleEvent,r)}destroy(){for(const[t,i,r]of this._listeners)t.removeEventListener(i,t===e.window.document?this.handleWindowEvent:this.handleEvent,r)}_addDefaultHandlers(e){const t=this._map,i=t.getCanvasContainer();this._add("mapEvent",new hn(t,e));const r=t.boxZoom=new dn(t,e);this._add("boxZoom",r);const n=new _n,o=new On;t.doubleClickZoom=new Bn(o,n),this._add("tapZoom",n),this._add("clickZoom",o);const s=new Fn;this._add("tapDragZoom",s);const a=t.touchPitch=new In(t);this._add("touchPitch",a);const l=new vn(e),c=new bn(e);t.dragRotate=new Un(e,l,c),this._add("mouseRotate",l,["mousePitch"]),this._add("mousePitch",c,["mouseRotate"]);const h=new xn(e),u=new wn(t,e);t.dragPan=new jn(i,h,u),this._add("mousePan",h),this._add("touchPan",u,["touchZoom","touchRotate"]);const d=new Cn,p=new Sn;t.touchZoomRotate=new Nn(i,p,d,s),this._add("touchRotate",d,["touchPan","touchZoom"]),this._add("touchZoom",p,["touchPan","touchRotate"]),this._add("blockableMapEvent",new un(t));const f=t.scrollZoom=new Rn(t,this);this._add("scrollZoom",f,["mousePan"]);const m=t.keyboard=new zn;this._add("keyboard",m);for(const i of["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"])e.interactive&&e[i]&&t[i].enable(e[i])}_add(e,t,i){this._handlers.push({handlerName:e,handler:t,allowed:i}),this._handlersById[e]=t}stop(e){if(!this._updatingCamera){for(const{handler:e}of this._handlers)e.reset();this._inertia.clear(),this._fireEvents({},{},e),this._changes=[]}}isActive(){for(const{handler:e}of this._handlers)if(e.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!Vn(this._eventsInProgress)||this.isZooming()}_isDragging(){return!!this._eventsInProgress.drag}_blockedByActive(e,t,i){for(const r in e)if(r!==i&&(!t||t.indexOf(r)<0))return!0;return!1}handleWindowEvent(e){this.handleEvent(e,`${e.type}Window`)}_getMapTouches(e){const t=[];for(const i of e)this._el.contains(i.target)&&t.push(i);return t}handleEvent(e,t){this._updatingCamera=!0;const i="renderFrame"===e.type,r=i?void 0:e,n={needsRenderFrame:!1},o={},s={},a=e.touches?this._getMapTouches(e.touches):void 0,l=a?m(this._el,a):i?void 0:f(this._el,e);for(const{handlerName:i,handler:c,allowed:h}of this._handlers){if(!c.isEnabled())continue;let u;this._blockedByActive(s,h,i)?c.reset():c[t||e.type]&&(u=c[t||e.type](e,l,a),this.mergeHandlerResult(n,o,u,i,r),u&&u.needsRenderFrame&&this._triggerRenderFrame()),(u||c.isActive())&&(s[i]=c)}const c={};for(const e in this._previousActiveHandlers)s[e]||(c[e]=r);this._previousActiveHandlers=s,(Object.keys(c).length||qn(n))&&(this._changes.push([n,o,c]),this._triggerRenderFrame()),(Object.keys(s).length||qn(n))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:h}=n;h&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],h(this._map))}mergeHandlerResult(t,i,r,n,o){if(!r)return;e.extend(t,r);const s={handlerName:n,originalEvent:r.originalEvent||o};void 0!==r.zoomDelta&&(i.zoom=s),void 0!==r.panDelta&&(i.drag=s),void 0!==r.pitchDelta&&(i.pitch=s),void 0!==r.bearingDelta&&(i.rotate=s)}_applyChanges(){const t={},i={},r={};for(const[n,o,s]of this._changes)n.panDelta&&(t.panDelta=(t.panDelta||new e.Point(0,0))._add(n.panDelta)),n.zoomDelta&&(t.zoomDelta=(t.zoomDelta||0)+n.zoomDelta),n.bearingDelta&&(t.bearingDelta=(t.bearingDelta||0)+n.bearingDelta),n.pitchDelta&&(t.pitchDelta=(t.pitchDelta||0)+n.pitchDelta),void 0!==n.around&&(t.around=n.around),void 0!==n.aroundCoord&&(t.aroundCoord=n.aroundCoord),void 0!==n.pinchAround&&(t.pinchAround=n.pinchAround),n.noInertia&&(t.noInertia=n.noInertia),e.extend(i,o),e.extend(r,s);this._updateMapTransform(t,i,r),this._changes=[]}_updateMapTransform(t,i,r){const n=this._map,o=n.transform,s=e=>[e.x,e.y,e.z];if((e=>{const t=this._eventsInProgress.drag;return t&&!this._handlersById[t.handlerName].isActive()})()&&!qn(t)){const e=o.zoom;o.cameraElevationReference="sea",o.recenterOnTerrain(),o.cameraElevationReference="ground",e!==o.zoom&&this._map._update(!0)}if(o._isCameraConstrained&&n._stop(!0),!qn(t))return void this._fireEvents(i,r,!0);let{panDelta:a,zoomDelta:l,bearingDelta:c,pitchDelta:h,around:u,aroundCoord:d,pinchAround:p}=t;o._isCameraConstrained&&(l>0&&(l=0),o._isCameraConstrained=!1),void 0!==p&&(u=p),(l||(e=>i[e]&&!this._eventsInProgress[e])("drag"))&&u&&(this._dragOrigin=s(o.pointCoordinate3D(u)),this._trackingEllipsoid.setup(o._camera.position,this._dragOrigin)),o.cameraElevationReference="sea",n._stop(!0),u=u||n.transform.centerPoint,c&&(o.bearing+=c),h&&(o.pitch+=h),o._updateCameraState();const f=[0,0,0];if(a)if("mercator"===o.projection.name){const e=this._trackingEllipsoid.projectRay(o.screenPointToMercatorRay(u).dir),t=this._trackingEllipsoid.projectRay(o.screenPointToMercatorRay(u.sub(a)).dir);f[0]=t[0]-e[0],f[1]=t[1]-e[1]}else{const t=o.pointCoordinate(u);if("globe"===o.projection.name){a=a.rotate(-o.angle);const i=o._pixelsPerMercatorPixel/o.worldSize;f[0]=-a.x*e.mercatorScale(e.latFromMercatorY(t.y))*i,f[1]=-a.y*e.mercatorScale(o.center.lat)*i}else{const e=o.pointCoordinate(u.sub(a));t&&e&&(f[0]=e.x-t.x,f[1]=e.y-t.y)}}const m=o.zoom,_=[0,0,0];if(l){const t=s(d||o.pointCoordinate3D(u)),i={dir:e.normalize([],e.sub([],t,o._camera.position))};if(i.dir[2]<0){const r=o.zoomDeltaToMovement(t,l);e.scale$2(_,i.dir,r)}}const g=e.add(f,f,_);o._translateCameraConstrained(g),l&&Math.abs(o.zoom-m)>1e-4&&o.recenterOnTerrain(),o.cameraElevationReference="ground",this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(i,r,!0)}_fireEvents(t,i,r){const n=Vn(this._eventsInProgress),o=Vn(t),s={};for(const e in t){const{originalEvent:i}=t[e];this._eventsInProgress[e]||(s[`${e}start`]=i),this._eventsInProgress[e]=t[e]}!n&&o&&this._fireEvent("movestart",o.originalEvent);for(const e in s)this._fireEvent(e,s[e]);o&&this._fireEvent("move",o.originalEvent);for(const e in t){const{originalEvent:i}=t[e];this._fireEvent(e,i)}const a={};let l;for(const e in this._eventsInProgress){const{handlerName:t,originalEvent:r}=this._eventsInProgress[e];this._handlersById[t].isActive()||(delete this._eventsInProgress[e],l=i[t]||r,a[`${e}end`]=l)}for(const e in a)this._fireEvent(e,a[e]);const c=Vn(this._eventsInProgress);if(r&&(n||o)&&!c){this._updatingCamera=!0;const t=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),i=e=>0!==e&&-this._bearingSnap{this._frameId=void 0,this.handleEvent(new $n("renderFrame",{timeStamp:e})),this._applyChanges()}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame())}}const Wn="map.setFreeCameraOptions(...) and map.getFreeCameraOptions() are not yet supported for non-mercator projections.";class Hn extends e.Evented{constructor(t,i){super(),this._moving=!1,this._zooming=!1,this.transform=t,this._bearingSnap=i.bearingSnap,this._respectPrefersReducedMotion=!1!==i.respectPrefersReducedMotion,e.bindAll(["_renderFrameCallback"],this)}getCenter(){return new e.LngLat(this.transform.center.lng,this.transform.center.lat)}setCenter(e,t){return this.jumpTo({center:e},t)}panBy(t,i,r){return t=e.Point.convert(t).mult(-1),this.panTo(this.transform.center,e.extend({offset:t},i),r)}panTo(t,i,r){return this.easeTo(e.extend({center:t},i),r)}getZoom(){return this.transform.zoom}setZoom(e,t){return this.jumpTo({zoom:e},t),this}zoomTo(t,i,r){return this.easeTo(e.extend({zoom:t},i),r)}zoomIn(e,t){return this.zoomTo(this.getZoom()+1,e,t),this}zoomOut(e,t){return this.zoomTo(this.getZoom()-1,e,t),this}getBearing(){return this.transform.bearing}setBearing(e,t){return this.jumpTo({bearing:e},t),this}getPadding(){return this.transform.padding}setPadding(e,t){return this.jumpTo({padding:e},t),this}rotateTo(t,i,r){return this.easeTo(e.extend({bearing:t},i),r)}resetNorth(t,i){return this.rotateTo(0,e.extend({duration:1e3},t),i),this}resetNorthPitch(t,i){return this.easeTo(e.extend({bearing:0,pitch:0,duration:1e3},t),i),this}snapToNorth(e,t){return Math.abs(this.getBearing())e.aspect?i/(2*Math.tan(.5*e.fovX)*e.aspect):r/(2*Math.tan(.5*e.fovY)*e.aspect)}_cameraForBoundsOnGlobe(t,i,r,n,o,s){const a=t.clone(),l=this._extendCameraOptions(s);a.bearing=n,a.pitch=o;const c=e.LngLat.convert(i),h=e.LngLat.convert(r),u=.5*(c.lat+h.lat),d=.5*(c.lng+h.lng),p=e.latLngToECEF(u,d),f=e.normalize([],p),m=e.normalize([],e.cross([],f,[0,1,0])),_=e.cross([],m,f),g=[m[0],m[1],m[2],0,_[0],_[1],_[2],0,f[0],f[1],f[2],0,0,0,0,1],y=[p,e.latLngToECEF(c.lat,c.lng),e.latLngToECEF(h.lat,c.lng),e.latLngToECEF(h.lat,h.lng),e.latLngToECEF(c.lat,h.lng),e.latLngToECEF(u,c.lng),e.latLngToECEF(u,h.lng),e.latLngToECEF(c.lat,d),e.latLngToECEF(h.lat,d)];let x=e.Aabb.fromPoints(y.map((t=>[e.dot(m,t),e.dot(_,t),e.dot(f,t)])));const v=e.transformMat4([],x.center,g);0===e.squaredLength(v)&&e.set(v,0,0,1),e.normalize(v,v),e.scale$2(v,v,e.GLOBE_RADIUS),a.center=e.ecefToLatLng(v);const b=a.getWorldToCameraMatrix(),w=e.invert(new Float64Array(16),b);x=e.Aabb.applyTransform(x,e.multiply([],b,g)),e.transformMat4(v,v,b);const T=.5*(x.max[2]-x.min[2]),E=this._minimumAABBFrustumDistance(a,x),A=e.scale$2([],[0,0,1],T),S=e.add(A,v,A),M=E+(0===a.pitch?0:e.distance(v,S)),C=a.globeCenterInViewSpace,k=e.sub([],v,[C[0],C[1],C[2]]);e.normalize(k,k),e.scale$2(k,k,M);const I=e.add([],v,k);e.transformMat4(I,I,w);const P=e.earthRadius/e.GLOBE_RADIUS,z=e.length(I),L=e.mercatorZfromAltitude(Math.max(z*P-e.earthRadius,Number.EPSILON),0),D=Math.min(a.zoomFromMercatorZAdjusted(L),l.maxZoom);return D>.5*(e.GLOBE_ZOOM_THRESHOLD_MIN+e.GLOBE_ZOOM_THRESHOLD_MAX)?(a.setProjection({name:"mercator"}),a.zoom=D,this._cameraForBounds(a,i,r,n,o,s)):{center:a.center,zoom:D,bearing:n,pitch:o}}queryTerrainElevation(t,i){const r=this.transform.elevation;return r?(i=e.extend({},{exaggerated:!0},i),r.getAtPoint(e.MercatorCoordinate.fromLngLat(t),null,i.exaggerated)):null}_cameraForBounds(t,i,r,n,o,s){if("globe"===t.projection.name)return this._cameraForBoundsOnGlobe(t,i,r,n,o,s);const a=t.clone(),l=this._extendCameraOptions(s),c=a.padding;a.bearing=n,a.pitch=o;const h=e.LngLat.convert(i),u=e.LngLat.convert(r),d=new e.LngLat(h.lng,u.lat),p=new e.LngLat(u.lng,h.lat),f=a.project(h),m=a.project(u),_=this.queryTerrainElevation(h),g=this.queryTerrainElevation(u),y=this.queryTerrainElevation(d),x=this.queryTerrainElevation(p),v=[[f.x,f.y,Math.min(_||0,g||0,y||0,x||0)],[m.x,m.y,Math.max(_||0,g||0,y||0,x||0)]];let b=e.Aabb.fromPoints(v);const w=a.getWorldToCameraMatrix(),T=e.invert(new Float64Array(16),w);b=e.Aabb.applyTransform(b,w);const E=e.sub([],b.max,b.min),A=c.left||0,S=c.right||0,M=c.bottom||0,C=c.top||0,{left:k,right:I,top:P,bottom:z}=l.padding,L=.5*(A+S),D=.5*(C+M),R=Math.min(a.scaleZoom(a.scale*Math.min((a.width-(A+S+k+I))/E[0],(a.height-(M+C+z+P))/E[1])),l.maxZoom),B=a.scale/a.zoomScale(R);b=new e.Aabb([b.min[0]-(k+L)*B,b.min[1]-(z+D)*B,b.min[2]],[b.max[0]+(I+L)*B,b.max[1]+(P+D)*B,b.max[2]]);const O=.5*E[2],F=this._minimumAABBFrustumDistance(a,b),j=[0,0,1,0];e.transformMat4$1(j,j,w),e.normalize$2(j,j);const U=e.scale$2([],j,F+O),N=e.add([],b.center,U),V=("number"==typeof l.offset.x&&"number"==typeof l.offset.y?new e.Point(l.offset.x,l.offset.y):e.Point.convert(l.offset)).rotate(-e.degToRad(n));b.center[0]-=V.x*B,b.center[1]+=V.y*B,e.transformMat4(b.center,b.center,T),e.transformMat4(N,N,T);const $=[b.center[0],b.center[1],N[2]*a.pixelsPerMeter];e.scale$2($,$,1/a.worldSize);const G=e.lngFromMercatorX($[0]),q=e.latFromMercatorY($[1]),Z=Math.min(a._zoomFromMercatorZ($[2]),l.maxZoom),W=new e.LngLat(G,q);return a.mercatorFromTransition&&Z<.5*(e.GLOBE_ZOOM_THRESHOLD_MIN+e.GLOBE_ZOOM_THRESHOLD_MAX)?(a.setProjection({name:"globe"}),a.zoom=Z,this._cameraForBounds(a,i,r,n,o,s)):{center:W,zoom:Z,bearing:n,pitch:o}}fitBounds(e,t,i){const r=this.cameraForBounds(e,t);return this._fitInternal(r,t,i)}fitScreenCoordinates(t,i,r,n,o){const s=e.Point.convert(t),a=e.Point.convert(i),l=new e.Point(Math.min(s.x,a.x),Math.min(s.y,a.y)),c=new e.Point(Math.max(s.x,a.x),Math.max(s.y,a.y));if("mercator"===this.transform.projection.name&&this.transform.anyCornerOffEdge(s,a))return this;const h=this.transform.pointLocation3D(l),u=this.transform.pointLocation3D(c),d=this.transform.pointLocation3D(new e.Point(l.x,c.y)),p=this.transform.pointLocation3D(new e.Point(c.x,l.y)),f=[Math.min(h.lng,u.lng,d.lng,p.lng),Math.min(h.lat,u.lat,d.lat,p.lat)],m=[Math.max(h.lng,u.lng,d.lng,p.lng),Math.max(h.lat,u.lat,d.lat,p.lat)],_=n&&n.pitch?n.pitch:this.getPitch(),g=this._cameraForBounds(this.transform,f,m,r,_,n);return this._fitInternal(g,n,o)}_fitInternal(t,i,r){return t?(delete(i=e.extend(t,i)).padding,i.linear?this.easeTo(i,r):this.flyTo(i,r)):this}jumpTo(t,i){this.stop();const r=t.preloadOnly?this.transform.clone():this.transform;let n=!1,o=!1,s=!1;return"zoom"in t&&r.zoom!==+t.zoom&&(n=!0,r.zoom=+t.zoom),void 0!==t.center&&(r.center=e.LngLat.convert(t.center)),"bearing"in t&&r.bearing!==+t.bearing&&(o=!0,r.bearing=+t.bearing),"pitch"in t&&r.pitch!==+t.pitch&&(s=!0,r.pitch=+t.pitch),null==t.padding||r.isPaddingEqual(t.padding)||(r.padding=t.padding),t.preloadOnly?(this._preloadTiles(r),this):(this.fire(new e.Event("movestart",i)).fire(new e.Event("move",i)),n&&this.fire(new e.Event("zoomstart",i)).fire(new e.Event("zoom",i)).fire(new e.Event("zoomend",i)),o&&this.fire(new e.Event("rotatestart",i)).fire(new e.Event("rotate",i)).fire(new e.Event("rotateend",i)),s&&this.fire(new e.Event("pitchstart",i)).fire(new e.Event("pitch",i)).fire(new e.Event("pitchend",i)),this.fire(new e.Event("moveend",i)))}getFreeCameraOptions(){return this.transform.projection.supportsFreeCamera||e.warnOnce(Wn),this.transform.getFreeCameraOptions()}setFreeCameraOptions(t,i){const r=this.transform;if(!r.projection.supportsFreeCamera)return e.warnOnce(Wn),this;this.stop();const n=r.zoom,o=r.pitch,s=r.bearing;r.setFreeCameraOptions(t);const a=n!==r.zoom,l=o!==r.pitch,c=s!==r.bearing;return this.fire(new e.Event("movestart",i)).fire(new e.Event("move",i)),a&&this.fire(new e.Event("zoomstart",i)).fire(new e.Event("zoom",i)).fire(new e.Event("zoomend",i)),c&&this.fire(new e.Event("rotatestart",i)).fire(new e.Event("rotate",i)).fire(new e.Event("rotateend",i)),l&&this.fire(new e.Event("pitchstart",i)).fire(new e.Event("pitch",i)).fire(new e.Event("pitchend",i)),this.fire(new e.Event("moveend",i)),this}easeTo(t,i){this._stop(!1,t.easeId),(!1===(t=e.extend({offset:[0,0],duration:500,easing:e.ease},t)).animate||this._prefersReducedMotion(t))&&(t.duration=0);const r=this.transform,n=this.getZoom(),o=this.getBearing(),s=this.getPitch(),a=this.getPadding(),l="zoom"in t?+t.zoom:n,c="bearing"in t?this._normalizeBearing(t.bearing,o):o,h="pitch"in t?+t.pitch:s,u="padding"in t?t.padding:r.padding,d=e.Point.convert(t.offset);let p,f,m;if("globe"===r.projection.name){const i=e.MercatorCoordinate.fromLngLat(r.center),n=d.rotate(-r.angle);i.x+=n.x/r.worldSize,i.y+=n.y/r.worldSize;const o=i.toLngLat(),s=e.LngLat.convert(t.center||o);this._normalizeCenter(s),p=r.centerPoint.add(n),f=new e.Point(i.x,i.y).mult(r.worldSize),m=new e.Point(e.mercatorXfromLng(s.lng),e.mercatorYfromLat(s.lat)).mult(r.worldSize).sub(f)}else{p=r.centerPoint.add(d);const i=r.pointLocation(p),n=e.LngLat.convert(t.center||i);this._normalizeCenter(n),f=r.project(i),m=r.project(n).sub(f)}const _=r.zoomScale(l-n);let g,y;t.around&&(g=e.LngLat.convert(t.around),y=r.locationPoint(g));const x=this._zooming||l!==n,v=this._rotating||o!==c,b=this._pitching||h!==s,w=!r.isPaddingEqual(u),T=r=>T=>{if(x&&(r.zoom=e.number(n,l,T)),v&&(r.bearing=e.number(o,c,T)),b&&(r.pitch=e.number(s,h,T)),w&&(r.interpolatePadding(a,u,T),p=r.centerPoint.add(d)),g)r.setLocationAtPoint(g,y);else{const e=r.zoomScale(r.zoom-n),t=l>n?Math.min(2,_):Math.max(.5,_),i=Math.pow(t,1-T),o=r.unproject(f.add(m.mult(T*i)).mult(e));r.setLocationAtPoint(r.renderWorldCopies?o.wrap():o,p)}return t.preloadOnly||this._fireMoveEvents(i),r};if(t.preloadOnly){const e=this._emulate(T,t.duration,r);return this._preloadTiles(e),this}const E={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=x,this._rotating=v,this._pitching=b,this._padding=w,this._easeId=t.easeId,this._prepareEase(i,t.noMoveStart,E),this._ease(T(r),(e=>{r.recenterOnTerrain(),this._afterEase(i,e)}),t),this}_prepareEase(t,i,r={}){this._moving=!0,this.transform.cameraElevationReference="sea",i||r.moving||this.fire(new e.Event("movestart",t)),this._zooming&&!r.zooming&&this.fire(new e.Event("zoomstart",t)),this._rotating&&!r.rotating&&this.fire(new e.Event("rotatestart",t)),this._pitching&&!r.pitching&&this.fire(new e.Event("pitchstart",t))}_fireMoveEvents(t){this.fire(new e.Event("move",t)),this._zooming&&this.fire(new e.Event("zoom",t)),this._rotating&&this.fire(new e.Event("rotate",t)),this._pitching&&this.fire(new e.Event("pitch",t))}_afterEase(t,i){if(this._easeId&&i&&this._easeId===i)return;this._easeId=void 0,this.transform.cameraElevationReference="ground";const r=this._zooming,n=this._rotating,o=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,r&&this.fire(new e.Event("zoomend",t)),n&&this.fire(new e.Event("rotateend",t)),o&&this.fire(new e.Event("pitchend",t)),this.fire(new e.Event("moveend",t))}flyTo(t,i){if(this._prefersReducedMotion(t)){const r=e.pick(t,["center","zoom","bearing","pitch","around"]);return this.jumpTo(r,i)}this.stop(),t=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},t);const r=this.transform,n=this.getZoom(),o=this.getBearing(),s=this.getPitch(),a=this.getPadding(),l="zoom"in t?e.clamp(+t.zoom,r.minZoom,r.maxZoom):n,c="bearing"in t?this._normalizeBearing(t.bearing,o):o,h="pitch"in t?+t.pitch:s,u="padding"in t?t.padding:r.padding,d=r.zoomScale(l-n),p=e.Point.convert(t.offset);let f=r.centerPoint.add(p);const m=r.pointLocation(f),_=e.LngLat.convert(t.center||m);this._normalizeCenter(_);const g=r.project(m),y=r.project(_).sub(g);let x=t.curve;const v=Math.max(r.width,r.height),b=v/d,w=y.mag();if("minZoom"in t){const i=e.clamp(Math.min(t.minZoom,n,l),r.minZoom,r.maxZoom),o=v/r.zoomScale(i-n);x=Math.sqrt(o/w*2)}const T=x*x;function E(e){const t=(b*b-v*v+(e?-1:1)*T*T*w*w)/(2*(e?b:v)*T*w);return Math.log(Math.sqrt(t*t+1)-t)}function A(e){return(Math.exp(e)-Math.exp(-e))/2}function S(e){return(Math.exp(e)+Math.exp(-e))/2}const M=E(0);let C=function(e){return S(M)/S(M+x*e)},k=function(e){return v*((S(M)*(A(t=M+x*e)/S(t))-A(M))/T)/w;var t},I=(E(1)-M)/x;if(Math.abs(w)<1e-6||!isFinite(I)){if(Math.abs(v-b)<1e-6)return this.easeTo(t,i);const e=bt.maxDuration&&(t.duration=0);const P=o!==c,z=h!==s,L=!r.isPaddingEqual(u),D=r=>d=>{const m=d*I,x=1/C(m);r.zoom=1===d?l:n+r.scaleZoom(x),P&&(r.bearing=e.number(o,c,d)),z&&(r.pitch=e.number(s,h,d)),L&&(r.interpolatePadding(a,u,d),f=r.centerPoint.add(p));const v=1===d?_:r.unproject(g.add(y.mult(k(m))).mult(x));return r.setLocationAtPoint(r.renderWorldCopies?v.wrap():v,f),r._updateCameraOnTerrain(),t.preloadOnly||this._fireMoveEvents(i),r};if(t.preloadOnly){const e=this._emulate(D,t.duration,r);return this._preloadTiles(e),this}return this._zooming=!0,this._rotating=P,this._pitching=z,this._padding=L,this._prepareEase(i,!1),this._ease(D(r),(()=>this._afterEase(i)),t),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(e,t){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),this._easeFrameId=void 0,this._onEaseFrame=void 0),this._onEaseEnd){const e=this._onEaseEnd;this._onEaseEnd=void 0,e.call(this,t)}if(!e){const e=this.handlers;e&&e.stop(!1)}return this}_ease(t,i,r){!1===r.animate||0===r.duration?(t(1),i()):(this._easeStart=e.exported.now(),this._easeOptions=r,this._onEaseFrame=t,this._onEaseEnd=i,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_renderFrameCallback(){const t=Math.min((e.exported.now()-this._easeStart)/this._easeOptions.duration,1),i=this._onEaseFrame;i&&i(this._easeOptions.easing(t)),t<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()}_normalizeBearing(t,i){t=e.wrap(t,-180,180);const r=Math.abs(t-i);return Math.abs(t-360-i)180?-360:i<-180?360:0}_prefersReducedMotion(t){return this._respectPrefersReducedMotion&&e.exported.prefersReducedMotion&&!(t&&t.essential)}_emulate(e,t,i){const r=Math.ceil(15*t/1e3),n=[],o=e(i.clone());for(let e=0;e<=r;e++){const t=o(e/r);n.push(t.clone())}return n}}class Xn{constructor(t={}){this.options=t,e.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)}getDefaultPosition(){return"bottom-right"}onAdd(e){const t=this.options&&this.options.compact;return this._map=e,this._container=o("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o("button","mapboxgl-ctrl-attrib-button",this._container),o("span","mapboxgl-ctrl-icon",this._compactButton).setAttribute("aria-hidden","true"),this._compactButton.type="button",this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),t&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===t&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container}onRemove(){this._container.remove(),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0}_setElementTitle(e,t){const i=this._map._getUIString(`AttributionControl.${t}`);e.setAttribute("aria-label",i),e.removeAttribute("title"),e.firstElementChild&&e.firstElementChild.setAttribute("title",i)}_toggleAttribution(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-expanded","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-expanded","true"))}_updateEditLink(){let t=this._editLink;t||(t=this._editLink=this._container.querySelector(".mapbox-improve-map"));const i=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(t){const r=i.reduce(((e,t,r)=>(t.value&&(e+=`${t.key}=${t.value}${re.length-t.length)),e=e.filter(((t,i)=>{for(let r=i+1;r=0)return!1;return!0})),this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?e=[...this.options.customAttribution,...e]:e.unshift(this.options.customAttribution));const i=e.join(" | ");i!==this._attribHTML&&(this._attribHTML=i,e.length?(this._innerContainer.innerHTML=i,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}_updateCompact(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")}}class Kn{constructor(){e.bindAll(["_updateLogo","_updateCompact"],this)}onAdd(e){this._map=e,this._container=o("div","mapboxgl-ctrl");const t=o("a","mapboxgl-ctrl-logo");return t.target="_blank",t.rel="noopener nofollow",t.href="https://www.mapbox.com/",t.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),t.setAttribute("rel","noopener nofollow"),this._container.appendChild(t),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){this._container.remove(),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)}getDefaultPosition(){return"bottom-left"}_updateLogo(e){e&&"metadata"!==e.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")}_logoRequired(){if(!this._map.style)return!0;const e=this._map.style._sourceCaches;if(0===Object.entries(e).length)return!0;for(const t in e){const i=e[t].getSource();if(i.hasOwnProperty("mapbox_logo")&&!i.mapbox_logo)return!1}return!0}_updateCompact(){const e=this._container.children;if(e.length){const t=e[0];this._map.getCanvasContainer().offsetWidth<250?t.classList.add("mapboxgl-compact"):t.classList.remove("mapboxgl-compact")}}}class Yn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(e){const t=++this._id;return this._queue.push({callback:e,id:t,cancelled:!1}),t}remove(e){const t=this._currentlyRunning,i=t?this._queue.concat(t):this._queue;for(const t of i)if(t.id===e)return void(t.cancelled=!0)}run(e=0){const t=this._currentlyRunning=this._queue;this._queue=[];for(const i of t)if(!i.cancelled&&(i.callback(e),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}function Jn(t,i,r){if(t=new e.LngLat(t.lng,t.lat),i){const n=new e.LngLat(t.lng-360,t.lat),o=new e.LngLat(t.lng+360,t.lat),s=360*Math.ceil(Math.abs(t.lng-r.center.lng)/360),a=r.locationPoint(t).distSqr(i),l=i.x<0||i.y<0||i.x>r.width||i.y>r.height;r.locationPoint(n).distSqr(i)180;){const e=r.locationPoint(t);if(e.x>=0&&e.y>=0&&e.x<=r.width&&e.y<=r.height)break;t.lng>r.center.lng?t.lng-=360:t.lng+=360}return t}const Qn={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};class eo extends e.Evented{constructor(t,i){if(super(),(t instanceof e.window.HTMLElement||i)&&(t=e.extend({element:t},i)),e.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress","_clearFadeTimer"],this),this._anchor=t&&t.anchor||"center",this._color=t&&t.color||"#3FB1CE",this._scale=t&&t.scale||1,this._draggable=t&&t.draggable||!1,this._clickTolerance=t&&t.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=t&&t.rotation||0,this._rotationAlignment=t&&t.rotationAlignment||"auto",this._pitchAlignment=t&&t.pitchAlignment&&t.pitchAlignment||"auto",this._updateMoving=()=>this._update(!0),this._occludedOpacity=t&&t.occludedOpacity||.2,t&&t.element)this._element=t.element,this._offset=e.Point.convert(t&&t.offset||[0,0]);else{this._defaultMarker=!0,this._element=o("div");const i=41,r=27,n=s("svg",{display:"block",height:i*this._scale+"px",width:r*this._scale+"px",viewBox:`0 0 ${r} ${i}`},this._element),a=s("radialGradient",{id:"shadowGradient"},s("defs",{},n));s("stop",{offset:"10%","stop-opacity":.4},a),s("stop",{offset:"100%","stop-opacity":.05},a),s("ellipse",{cx:13.5,cy:34.8,rx:10.5,ry:5.25,fill:"url(#shadowGradient)"},n),s("path",{fill:this._color,d:"M27,13.5C27,19.07 20.25,27 14.75,34.5C14.02,35.5 12.98,35.5 12.25,34.5C6.75,27 0,19.22 0,13.5C0,6.04 6.04,0 13.5,0C20.96,0 27,6.04 27,13.5Z"},n),s("path",{opacity:.25,d:"M13.5,0C6.04,0 0,6.04 0,13.5C0,19.22 6.75,27 12.25,34.5C13,35.52 14.02,35.5 14.75,34.5C20.25,27 27,19.07 27,13.5C27,6.04 20.96,0 13.5,0ZM13.5,1C20.42,1 26,6.58 26,13.5C26,15.9 24.5,19.18 22.22,22.74C19.95,26.3 16.71,30.14 13.94,33.91C13.74,34.18 13.61,34.32 13.5,34.44C13.39,34.32 13.26,34.18 13.06,33.91C10.28,30.13 7.41,26.31 5.02,22.77C2.62,19.23 1,15.95 1,13.5C1,6.58 6.58,1 13.5,1Z"},n),s("circle",{fill:"white",cx:13.5,cy:13.5,r:5.5},n),this._offset=e.Point.convert(t&&t.offset||[0,-14])}this._element.hasAttribute("aria-label")||this._element.setAttribute("aria-label","Map marker"),this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",(e=>{e.preventDefault()})),this._element.addEventListener("mousedown",(e=>{e.preventDefault()}));const r=this._element.classList;for(const e in Qn)r.remove(`mapboxgl-marker-anchor-${e}`);r.add(`mapboxgl-marker-anchor-${this._anchor}`),this._popup=null}addTo(e){return e===this._map||(this.remove(),this._map=e,e.getCanvasContainer().appendChild(this._element),e.on("move",this._updateMoving),e.on("moveend",this._update),e.on("remove",this._clearFadeTimer),e._addMarker(this),this.setDraggable(this._draggable),this._update(),e.on("click",this._onMapClick)),this}remove(){const e=this._map;return e&&(e.off("click",this._onMapClick),e.off("move",this._updateMoving),e.off("moveend",this._update),e.off("mousedown",this._addDragHandler),e.off("touchstart",this._addDragHandler),e.off("mouseup",this._onUp),e.off("touchend",this._onUp),e.off("mousemove",this._onMove),e.off("touchmove",this._onMove),e.off("remove",this._clearFadeTimer),e._removeMarker(this),this._map=void 0),this._clearFadeTimer(),this._element.remove(),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.LngLat.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(!0),this}getElement(){return this._element}setPopup(e){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeAttribute("role"),this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),e){if(!("offset"in e.options)){const t=38.1,i=13.5,r=Math.sqrt(Math.pow(i,2)/2);e.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-t],"bottom-left":[r,-1*(t-i+r)],"bottom-right":[-r,-1*(t-i+r)],left:[i,-1*(t-i)],right:[-i,-1*(t-i)]}:this._offset}this._popup=e,e._marker=this,this._lngLat&&this._popup.setLngLat(this._lngLat),this._element.setAttribute("role","button"),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress),this._element.setAttribute("aria-expanded","false")}return this}_onKeyPress(e){const t=e.code,i=e.charCode||e.keyCode;"Space"!==t&&"Enter"!==t&&32!==i&&13!==i||this.togglePopup()}_onMapClick(e){const t=e.originalEvent.target,i=this._element;this._popup&&(t===i||i.contains(t))&&this.togglePopup()}getPopup(){return this._popup}togglePopup(){const e=this._popup;return e?(e.isOpen()?(e.remove(),this._element.setAttribute("aria-expanded","false")):this._map&&(e.addTo(this._map),this._element.setAttribute("aria-expanded","true")),this):this}_behindTerrain(){const e=this._map,t=this._pos;if(!e||!t)return!1;const i=e.unproject(t),r=e.getFreeCameraOptions();if(!r.position)return!1;const n=r.position.toLngLat();return n.distanceTo(i)<.9*n.distanceTo(this._lngLat)}_evaluateOpacity(){const t=this._map;if(!t)return;const i=this._pos;if(!i||i.x<0||i.x>t.transform.width||i.y<0||i.y>t.transform.height)return void this._clearFadeTimer();const r=t.unproject(i);let n;t._showingGlobe()&&e.isLngLatBehindGlobe(t.transform,this._lngLat)?n=0:(n=1-t._queryFogOpacity(r),t.transform._terrainEnabled()&&t.getTerrain()&&this._behindTerrain()&&(n*=this._occludedOpacity)),this._element.style.opacity=`${n}`,this._element.style.pointerEvents=n>0?"auto":"none",this._popup&&this._popup._setOpacity(n),this._fadeTimer=null}_clearFadeTimer(){this._fadeTimer&&(clearTimeout(this._fadeTimer),this._fadeTimer=null)}_updateDOM(){const e=this._pos;if(!e||!this._map)return;const t=this._offset.mult(this._scale);this._element.style.transform=`\n translate(${e.x}px,${e.y}px)\n ${Qn[this._anchor]}\n ${this._calculateXYTransform()} ${this._calculateZTransform()}\n translate(${t.x}px,${t.y}px)\n `}_calculateXYTransform(){const t=this._pos,i=this._map,r=this.getPitchAlignment();if(!i||!t||"map"!==r)return"";if(!i._showingGlobe()){const e=i.getPitch();return e?`rotateX(${e}deg)`:""}const n=e.radToDeg(e.globeTiltAtLngLat(i.transform,this._lngLat)),o=t.sub(e.globeCenterToScreenPoint(i.transform)),s=Math.abs(o.x)+Math.abs(o.y);if(0===s)return"";const a=n/s;return`rotateX(${-o.y*a}deg) rotateY(${o.x*a}deg)`}_calculateZTransform(){const t=this._pos,i=this._map;if(!i||!t)return"";let r=0;const n=this.getRotationAlignment();if("map"===n)if(i._showingGlobe()){const t=i.project(new e.LngLat(this._lngLat.lng,this._lngLat.lat+.001)),n=i.project(new e.LngLat(this._lngLat.lng,this._lngLat.lat-.001)).sub(t);r=e.radToDeg(Math.atan2(n.y,n.x))-90}else r=-i.getBearing();else if("horizon"===n){const n=e.smoothstep(4,6,i.getZoom()),o=e.globeCenterToScreenPoint(i.transform);o.y+=n*i.transform.height;const s=t.sub(o),a=e.radToDeg(Math.atan2(s.y,s.x));r=(a>90?a-270:a+90)*(1-n)}return r+=this._rotation,r?`rotateZ(${r}deg)`:""}_update(t){e.window.cancelAnimationFrame(this._updateFrameId);const i=this._map;i&&(i.transform.renderWorldCopies&&(this._lngLat=Jn(this._lngLat,this._pos,i.transform)),this._pos=i.project(this._lngLat),!0===t?this._updateFrameId=e.window.requestAnimationFrame((()=>{this._element&&this._pos&&this._anchor&&(this._pos=this._pos.round(),this._updateDOM())})):this._pos=this._pos.round(),i._requestDomTask((()=>{this._map&&(this._element&&this._pos&&this._anchor&&this._updateDOM(),(i._showingGlobe()||i.getTerrain()||i.getFog())&&!this._fadeTimer&&(this._fadeTimer=setTimeout(this._evaluateOpacity.bind(this),60)))})))}getOffset(){return this._offset}setOffset(t){return this._offset=e.Point.convert(t),this._update(),this}_onMove(t){const i=this._map;if(!i)return;const r=this._pointerdownPos,n=this._positionDelta;if(r&&n){if(!this._isDragging){const e=this._clickTolerance||i._clickTolerance;if(t.point.dist(r)=this._endTime)return this._end;const i=e.easeCubicInOut((t-this._startTime)/(this._endTime-this._startTime));return this._start*(1-i)+this._end*i}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,t,i){this._start=this.getValue(t),this._end=e,this._startTime=t,this._endTime=t+i}}const oo={"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"},so={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,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,optimizeForTerrain:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,minTileCacheSize:null,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",localFontFamily:null,transformRequest:null,accessToken:null,fadeDuration:300,respectPrefersReducedMotion:!0,crossSourceCollisions:!0},ao={showCompass:!0,showZoom:!0,visualizePitch:!1};class lo{constructor(t,i,r=!1){this._clickTolerance=10,this.element=i,this.mouseRotate=new vn({clickTolerance:t.dragRotate._mouseRotate._clickTolerance}),this.map=t,r&&(this.mousePitch=new bn({clickTolerance:t.dragRotate._mousePitch._clickTolerance})),e.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),i.addEventListener("mousedown",this.mousedown),i.addEventListener("touchstart",this.touchstart,{passive:!1}),i.addEventListener("touchmove",this.touchmove),i.addEventListener("touchend",this.touchend),i.addEventListener("touchcancel",this.reset)}down(e,t){this.mouseRotate.mousedown(e,t),this.mousePitch&&this.mousePitch.mousedown(e,t),h()}move(e,t){const i=this.map,r=this.mouseRotate.mousemoveWindow(e,t),n=r&&r.bearingDelta;if(n&&i.setBearing(i.getBearing()+n),this.mousePitch){const r=this.mousePitch.mousemoveWindow(e,t),n=r&&r.pitchDelta;n&&i.setPitch(i.getPitch()+n)}}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(){u(),e.window.removeEventListener("mousemove",this.mousemove),e.window.removeEventListener("mouseup",this.mouseup)}mousedown(t){this.down(e.extend({},t,{ctrlKey:!0,preventDefault:()=>t.preventDefault()}),f(this.element,t)),e.window.addEventListener("mousemove",this.mousemove),e.window.addEventListener("mouseup",this.mouseup)}mousemove(e){this.move(e,f(this.element,e))}mouseup(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp()}touchstart(e){1!==e.targetTouches.length?this.reset():(this._startPos=this._lastPos=m(this.element,e.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:()=>e.preventDefault()},this._startPos))}touchmove(e){1!==e.targetTouches.length?this.reset():(this._lastPos=m(this.element,e.targetTouches)[0],this.move({preventDefault:()=>e.preventDefault()},this._lastPos))}touchend(e){0===e.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)t.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=t.minPitch&&null!=t.maxPitch&&t.minPitch>t.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=t.minPitch&&t.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=t.maxPitch&&t.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(t.antialias&&e.isSafariWithAntialiasingBug(e.window)&&(t.antialias=!1,e.warnOnce("Antialiasing is disabled for this WebGL context to avoid browser bug: https://github.com/mapbox/mapbox-gl-js/issues/11609")),super(new Hr(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._useWebGL2=t.useWebGL2,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._optimizeForTerrain=t.optimizeForTerrain,this._language=this._parseLanguage(t.language),this._worldview=t.worldview,this._renderTaskQueue=new Yn,this._domRenderTaskQueue=new Yn,this._controls=[],this._markers=[],this._popups=[],this._mapId=e.uniqueId(),this._locale=e.extend({},oo,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 no(0),this._interactionRange=[1/0,-1/0],this._visibilityHidden=0,this._useExplicitProjection=!1,this._requestManager=new e.RequestManager(t.transformRequest,t.accessToken,t.testMode),this._silenceAuthErrors=!!t.testMode,"string"==typeof t.container){if(this._container=e.window.document.getElementById(t.container),!this._container)throw new Error(`Container '${t.container}' not found.`)}else{if(!(t.container instanceof e.window.HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=t.container}if(this._container.childNodes.length>0&&e.warnOnce("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),e.bindAll(["_onWindowOnline","_onWindowResize","_onVisibilityChange","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",(()=>this._update(!1))),this.on("moveend",(()=>this._update(!1))),this.on("zoom",(()=>this._update(!0))),void 0!==e.window&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1),e.window.addEventListener("orientationchange",this._onWindowResize,!1),e.window.addEventListener("webkitfullscreenchange",this._onWindowResize,!1),e.window.addEventListener("visibilitychange",this._onVisibilityChange,!1)),this.handlers=new Zn(this,t),this._localFontFamily=t.localFontFamily,this._localIdeographFontFamily=t.localIdeographFontFamily,t.style&&this.setStyle(t.style,{localFontFamily:this._localFontFamily,localIdeographFontFamily:this._localIdeographFontFamily}),t.projection&&this.setProjection(t.projection),this._hash=t.hash&&new Kr("string"==typeof t.hash&&t.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:t.center,zoom:t.zoom,bearing:t.bearing,pitch:t.pitch}),t.bounds&&(this.resize(),this.fitBounds(t.bounds,e.extend({},t.fitBoundsOptions,{duration:0})))),this.resize(),t.attributionControl&&this.addControl(new Xn({customAttribution:t.customAttribution})),this._logoControl=new Kn,this.addControl(this._logoControl,t.logoPosition),this.on("style.load",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)})),this.on("data",(t=>{this._update("style"===t.dataType),this.fire(new e.Event(`${t.dataType}data`,t))})),this.on("dataloading",(t=>{this.fire(new e.Event(`${t.dataType}dataloading`,t))}))}_getMapId(){return this._mapId}addControl(t,i){if(void 0===i&&(i=t.getDefaultPosition?t.getDefaultPosition():"top-right"),!t||!t.onAdd)return this.fire(new e.ErrorEvent(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 n=this._controlPositions[i];return-1!==i.indexOf("bottom")?n.insertBefore(r,n.firstChild):n.appendChild(r),this}removeControl(t){if(!t||!t.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const i=this._controls.indexOf(t);return i>-1&&this._controls.splice(i,1),t.onRemove(this),this}hasControl(e){return this._controls.indexOf(e)>-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 i=!this._moving;return i&&this.fire(new e.Event("movestart",t)).fire(new e.Event("move",t)),this.fire(new e.Event("resize",t)),i&&this.fire(new e.Event("moveend",t)),this}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()||null}setMaxBounds(t){return this.transform.setMaxBounds(e.LngLatBounds.convert(t)),this._update()}setMinZoom(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t?this.setZoom(t):this.fire(new e.Event("zoomstart")).fire(new e.Event("zoom")).fire(new e.Event("zoomend")),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=null==t?0:t)<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()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 e.Event("pitchstart")).fire(new e.Event("pitch")).fire(new e.Event("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(e){return this.transform.renderWorldCopies=e,this.transform.renderWorldCopies||this._forceMarkerAndPopupUpdate(!0),this._update()}getLanguage(){return this._language}_parseLanguage(t){return"auto"===t?e.window.navigator.language:Array.isArray(t)?0===t.length?void 0:t.map((t=>"auto"===t?e.window.navigator.language:t)):t}setLanguage(e){const t=this._parseLanguage(e);if(!this.style||t===this._language)return this;this._language=t,this.style._reloadSources();for(const e of this._controls)e._setLanguage&&e._setLanguage(this._language);return this}getWorldview(){return this._worldview}setWorldview(e){return this.style&&e!==this._worldview?(this._worldview=e,this.style._reloadSources(),this):this}getProjection(){return this.transform.mercatorFromTransition?{name:"globe",center:[0,0]}:this.transform.getProjection()}_showingGlobe(){return"globe"===this.transform.projection.name}setProjection(e){return this._lazyInitEmptyStyle(),e?"string"==typeof e&&(e={name:e}):e=null,this._useExplicitProjection=!!e,this._prioritizeAndUpdateProjection(e,this.style.stylesheet?this.style.stylesheet.projection:null)}_updateProjectionTransition(){if("globe"!==this.getProjection().name)return;const t=this.transform,i=t.projection.name;let r;"globe"===i&&t.zoom>=e.GLOBE_ZOOM_THRESHOLD_MAX?(t.setMercatorFromTransition(),r=!0):"mercator"===i&&t.zoom=e.GLOBE_ZOOM_THRESHOLD_MAX?this.transform.setMercatorFromTransition():this.transform.setProjection(t),this.style.applyProjectionUpdate(),i){this.painter.clearBackgroundTiles();for(const e in this.style._sourceCaches)this.style._sourceCaches[e].clearTiles();this._update(!0),this._forceMarkerAndPopupUpdate(!0)}return this}project(t){return this.transform.locationPoint3D(e.LngLat.convert(t))}unproject(t){return this.transform.pointLocation3D(e.Point.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(e,t,i){if("mouseenter"===e||"mouseover"===e){let r=!1;const n=n=>{const o=t.filter((e=>this.getLayer(e))),s=o.length?this.queryRenderedFeatures(n.point,{layers:o}):[];s.length?r||(r=!0,i.call(this,new an(e,this,n.originalEvent,{features:s}))):r=!1},o=()=>{r=!1};return{layers:new Set(t),listener:i,delegates:{mousemove:n,mouseout:o}}}if("mouseleave"===e||"mouseout"===e){let r=!1;const n=n=>{const o=t.filter((e=>this.getLayer(e)));(o.length?this.queryRenderedFeatures(n.point,{layers:o}):[]).length?r=!0:r&&(r=!1,i.call(this,new an(e,this,n.originalEvent)))},o=t=>{r&&(r=!1,i.call(this,new an(e,this,t.originalEvent)))};return{layers:new Set(t),listener:i,delegates:{mousemove:n,mouseout:o}}}{const r=e=>{const r=t.filter((e=>this.getLayer(e))),n=r.length?this.queryRenderedFeatures(e.point,{layers:r}):[];n.length&&(e.features=n,i.call(this,e),delete e.features)};return{layers:new Set(t),listener:i,delegates:{[e]:r}}}}on(e,t,i){if(void 0===i)return super.on(e,t);Array.isArray(t)||(t=[t]);const r=this._createDelegatedListener(e,t,i);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(r);for(const e in r.delegates)this.on(e,r.delegates[e]);return this}once(e,t,i){if(void 0===i)return super.once(e,t);Array.isArray(t)||(t=[t]);const r=this._createDelegatedListener(e,t,i);for(const e in r.delegates)this.once(e,r.delegates[e]);return this}off(e,t,i){if(void 0===i)return super.off(e,t);t=new Set(Array.isArray(t)?t:[t]);const r=(e,t)=>{if(e.size!==t.size)return!1;for(const i of e)if(!t.has(i))return!1;return!0},n=this._delegatedListeners?this._delegatedListeners[e]:void 0;return n&&(e=>{for(let n=0;n{t?this.fire(new e.ErrorEvent(t)):r&&this._updateDiff(r,i)}))}else"object"==typeof t&&this._updateDiff(t,i)}_updateDiff(t,i){try{this.style.setState(t)&&this._update(!0)}catch(r){e.warnOnce(`Unable to perform style diff: ${r.message||r.error||r}. Rebuilding the style from scratch.`),this._updateStyle(t,i)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():(e.warnOnce("There is no style added to the map."),!1)}addSource(e,t){return this._lazyInitEmptyStyle(),this.style.addSource(e,t),this._update(!0)}isSourceLoaded(e){return!!this.style&&this.style._isSourceCacheLoaded(e)}areTilesLoaded(){const e=this.style&&this.style._sourceCaches;for(const t in e){const i=e[t]._tiles;for(const e in i){const t=i[e];if("loaded"!==t.state&&"errored"!==t.state)return!1}}return!0}addSourceType(e,t,i){this._lazyInitEmptyStyle(),this.style.addSourceType(e,t,i)}removeSource(e){return this.style.removeSource(e),this._updateTerrain(),this._update(!0)}getSource(e){return this.style.getSource(e)}addImage(t,i,{pixelRatio:r=1,sdf:n=!1,stretchX:o,stretchY:s,content:a}={}){if(this._lazyInitEmptyStyle(),i instanceof e.window.HTMLImageElement||e.window.ImageBitmap&&i instanceof e.window.ImageBitmap){const{width:l,height:c,data:h}=e.exported.getImageData(i);this.style.addImage(t,{data:new e.RGBAImage({width:l,height:c},h),pixelRatio:r,stretchX:o,stretchY:s,content:a,sdf:n,version:0})}else if(void 0===i.width||void 0===i.height)this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));else{const{width:l,height:c}=i,h=i;this.style.addImage(t,{data:new e.RGBAImage({width:l,height:c},new Uint8Array(h.data)),pixelRatio:r,stretchX:o,stretchY:s,content:a,sdf:n,version:0,userImage:h}),h.onAdd&&h.onAdd(this,t)}}updateImage(t,i){const r=this.style.getImage(t);if(!r)return void this.fire(new e.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const n=i instanceof e.window.HTMLImageElement||e.window.ImageBitmap&&i instanceof e.window.ImageBitmap?e.exported.getImageData(i):i,{width:o,height:s}=n;void 0!==o&&void 0!==s?o===r.data.width&&s===r.data.height?(r.data.replace(n.data,!(i instanceof e.window.HTMLImageElement||e.window.ImageBitmap&&i instanceof e.window.ImageBitmap)),this.style.updateImage(t,r)):this.fire(new e.ErrorEvent(new Error(`The width and height of the updated image (${o}, ${s})\n must be that same as the previous version of the image\n (${r.data.width}, ${r.data.height})`))):this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")))}hasImage(t){return t?!!this.style.getImage(t):(this.fire(new e.ErrorEvent(new Error("Missing required image id"))),!1)}removeImage(e){this.style.removeImage(e)}loadImage(t,i){e.getImage(this._requestManager.transformRequest(t,e.ResourceType.Image),((t,r)=>{i(t,r instanceof e.window.HTMLImageElement?e.exported.getImageData(r):r)}))}listImages(){return this.style.listImages()}addLayer(e,t){return this._lazyInitEmptyStyle(),this.style.addLayer(e,t),this._update(!0)}moveLayer(e,t){return this.style.moveLayer(e,t),this._update(!0)}removeLayer(e){return this.style.removeLayer(e),this._update(!0)}getLayer(e){return this.style.getLayer(e)}setLayerZoomRange(e,t,i){return this.style.setLayerZoomRange(e,t,i),this._update(!0)}setFilter(e,t,i={}){return this.style.setFilter(e,t,i),this._update(!0)}getFilter(e){return this.style.getFilter(e)}setPaintProperty(e,t,i,r={}){return this.style.setPaintProperty(e,t,i,r),this._update(!0)}getPaintProperty(e,t){return this.style.getPaintProperty(e,t)}setLayoutProperty(e,t,i,r={}){return this.style.setLayoutProperty(e,t,i,r),this._update(!0)}getLayoutProperty(e,t){return this.style.getLayoutProperty(e,t)}setLight(e,t={}){return this._lazyInitEmptyStyle(),this.style.setLight(e,t),this._update(!0)}getLight(){return this.style.getLight()}setTerrain(e){return this._lazyInitEmptyStyle(),!e&&this.transform.projection.requiresDraping?this.style.setTerrainForDraping():this.style.setTerrain(e),this._averageElevationLastSampledAt=-1/0,this._update(!0)}getTerrain(){return this.style?this.style.getTerrain():null}setFog(e){return this._lazyInitEmptyStyle(),this.style.setFog(e),this._update(!0)}getFog(){return this.style?this.style.getFog():null}_queryFogOpacity(t){return this.style&&this.style.fog?this.style.fog.getOpacityAtLatLng(e.LngLat.convert(t),this.transform):0}setFeatureState(e,t){return this.style.setFeatureState(e,t),this._update()}removeFeatureState(e,t){return this.style.removeFeatureState(e,t),this._update()}getFeatureState(e){return this.style.getFeatureState(e)}_updateContainerDimensions(){if(!this._container)return;const t=this._container.getBoundingClientRect().width||400,i=this._container.getBoundingClientRect().height||300;let r,n,o,s=this._container;for(;s&&(!n||!o);){const t=e.window.getComputedStyle(s).transform;t&&"none"!==t&&(r=t.match(/matrix.*\((.+)\)/)[1].split(", "),r[0]&&"0"!==r[0]&&"1"!==r[0]&&(n=r[0]),r[3]&&"0"!==r[3]&&"1"!==r[3]&&(o=r[3])),s=s.parentElement}this._containerWidth=n?Math.abs(t/n):t,this._containerHeight=o?Math.abs(i/o):i}_detectMissingCSS(){"rgb(250, 128, 114)"!==e.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color")&&e.warnOnce("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")}_setupContainer(){const e=this._container;e.classList.add("mapboxgl-map"),(this._missingCSSCanary=o("div","mapboxgl-canary",e)).style.visibility="hidden",this._detectMissingCSS();const t=this._canvasContainer=o("div","mapboxgl-canvas-container",e);this._interactive&&t.classList.add("mapboxgl-interactive"),this._canvas=o("canvas","mapboxgl-canvas",t),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex","0"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region"),this._updateContainerDimensions(),this._resizeCanvas(this._containerWidth,this._containerHeight);const i=this._controlContainer=o("div","mapboxgl-control-container",e),r=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach((e=>{r[e]=o("div",`mapboxgl-ctrl-${e}`,i)})),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(t,i){const r=e.exported.devicePixelRatio||1;this._canvas.width=r*Math.ceil(t),this._canvas.height=r*Math.ceil(i),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${i}px`}_addMarker(e){this._markers.push(e)}_removeMarker(e){const t=this._markers.indexOf(e);-1!==t&&this._markers.splice(t,1)}_addPopup(e){this._popups.push(e)}_removePopup(e){const t=this._popups.indexOf(e);-1!==t&&this._popups.splice(t,1)}_setupPainter(){const t=e.extend({},i.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),r=this._useWebGL2&&this._canvas.getContext("webgl2",t),n=r||this._canvas.getContext("webgl",t)||this._canvas.getContext("experimental-webgl",t);n?(this._useWebGL2&&!r&&e.warnOnce("Failed to create WebGL 2 context. Using WebGL 1."),e.storeAuthState(n,!0),this.painter=new Rr(n,this.transform,!!r),this.on("data",(e=>{"source"===e.dataType&&this.painter.setTileLoadedFlag(!0)})),e.exported$1.testSupport(n)):this.fire(new e.ErrorEvent(new Error("Failed to initialize WebGL")))}_contextLost(t){t.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new e.Event("webglcontextlost",{originalEvent:t}))}_contextRestored(t){this._setupPainter(),this.resize(),this._update(),this.fire(new e.Event("webglcontextrestored",{originalEvent:t}))}_onMapScroll(e){if(e.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(e){return this.style?(this._styleDirty=this._styleDirty||e,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(e){return this._update(),this._renderTaskQueue.add(e)}_cancelRenderFrame(e){this._renderTaskQueue.remove(e)}_requestDomTask(e){!this.loaded()||this.loaded()&&!this.isMoving()?e():this._domRenderTaskQueue.add(e)}_render(t){let i;const r=this.painter.context.extTimerQuery,n=e.exported.now();if(this.listens("gpu-timing-frame")&&(i=r.createQueryEXT(),r.beginQueryEXT(r.TIME_ELAPSED_EXT,i)),this.painter.context.setDirty(),this.painter.setBaseState(),(this.isMoving()||this.isRotating()||this.isZooming())&&(this._interactionRange[0]=Math.min(this._interactionRange[0],e.window.performance.now()),this._interactionRange[1]=Math.max(this._interactionRange[1],e.window.performance.now())),this._renderTaskQueue.run(t),this._domRenderTaskQueue.run(t),this._removed)return;this._updateProjectionTransition();const o=this._isInitialLoad?0:this._fadeDuration;if(this.style&&this._styleDirty){this._styleDirty=!1;const t=this.transform.zoom,i=this.transform.pitch,r=e.exported.now(),n=new e.EvaluationParameters(t,{now:r,fadeDuration:o,pitch:i,transition:this.style.getTransition()});this.style.update(n)}this.style&&this.style.fog&&this.style.fog.hasTransition()&&(this.style._markersNeedUpdate=!0,this._sourcesDirty=!0);let s=!1;if(this.style&&this._sourcesDirty?(this._sourcesDirty=!1,this.painter._updateFog(this.style),this._updateTerrain(),s=this._updateAverageElevation(n),this.style._updateSources(this.transform),this._forceMarkerAndPopupUpdate()):s=this._updateAverageElevation(n),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,o,this._crossSourceCollisions),this.style&&this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showTerrainWireframe:this.showTerrainWireframe,showOverdrawInspector:this._showOverdrawInspector,showQueryGeometry:!!this._showQueryGeometry,showTileAABBs:this.showTileAABBs,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:o,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 e.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new e.Event("load"))),this.style&&this.style.hasTransitions()&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),i){const t=e.exported.now()-n;r.endQueryEXT(r.TIME_ELAPSED_EXT,i),setTimeout((()=>{const o=r.getQueryObjectEXT(i,r.QUERY_RESULT_EXT)/1e6;r.deleteQueryEXT(i),this.fire(new e.Event("gpu-timing-frame",{cpuTime:t,gpuTime:o})),e.window.performance.mark("frame-gpu",{startTime:n,detail:{gpuTime:o}})}),50)}if(this.listens("gpu-timing-layer")){const t=this.painter.collectGpuTimers();setTimeout((()=>{const i=this.painter.queryGpuTimers(t);this.fire(new e.Event("gpu-timing-layer",{layerTimes:i}))}),50)}if(this.listens("gpu-timing-deferred-render")){const t=this.painter.collectDeferredRenderGpuQueries();setTimeout((()=>{const i=this.painter.queryGpuTimeDeferredRender(t);this.fire(new e.Event("gpu-timing-deferred-render",{gpuTime:i}))}),50)}const a=this._sourcesDirty||this._styleDirty||this._placementDirty||s;if(a||this._repaint)this.triggerRepaint();else{const t=!this.isMoving()&&this.loaded();if(t&&(s=this._updateAverageElevation(n,!0)),s)this.triggerRepaint();else if(this._triggerFrame(!1),t&&(this.fire(new e.Event("idle")),this._isInitialLoad=!1,this.speedIndexTiming)){const t=this._calculateSpeedIndex();this.fire(new e.Event("speedindexcompleted",{speedIndex:t})),this.speedIndexTiming=!1}}!this._loaded||this._fullyLoaded||a||(this._fullyLoaded=!0,e.LivePerformanceUtils.mark(e.PerformanceMarkers.fullLoad),this._performanceMetricsCollection&&e.postPerformanceEvent(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(e){for(const t of this._markers)e&&!this.getRenderWorldCopies()&&(t._lngLat=t._lngLat.wrap()),t._update();for(const t of this._popups)!e||this.getRenderWorldCopies()||t._trackPointer||(t._lngLat=t._lngLat.wrap()),t._update()}_updateAverageElevation(e,t=!1){const i=e=>(this.transform.averageElevation=e,this._update(!1),!0);if(!this.painter.averageElevationNeedsEasing())return 0!==this.transform.averageElevation&&i(0);if((t||e-this._averageElevationLastSampledAt>500)&&!this._averageElevation.isEasing(e)){const t=this.transform.averageElevation;let r=this.transform.sampleAverageElevation(),n=!1;this.transform.elevation&&(n=this.transform.elevation.exaggeration()!==this._averageElevationExaggeration,this._averageElevationExaggeration=this.transform.elevation.exaggeration()),isNaN(r)?r=0:this._averageElevationLastSampledAt=e;const o=Math.abs(t-r);if(o>1){if(this._isInitialLoad||n)return this._averageElevation.jumpTo(r),i(r);this._averageElevation.easeTo(r,e,300)}else if(o>1e-4)return this._averageElevation.jumpTo(r),i(r)}return!!this._averageElevation.isEasing(e)&&i(this._averageElevation.getValue(e))}_authenticate(){e.getMapSessionAPI(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(t=>{if(t&&(t.message===e.AUTH_ERR_MSG||401===t.status)){const t=this.painter.context.gl;e.storeAuthState(t,!1),this._logoControl instanceof Kn&&this._logoControl._updateLogo(),t&&t.clear(t.DEPTH_BUFFER_BIT|t.COLOR_BUFFER_BIT|t.STENCIL_BUFFER_BIT),this._silenceAuthErrors||this.fire(new e.ErrorEvent(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/")))}})),e.postMapLoadEvent(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(()=>{}))}_updateTerrain(){const e=this._isDragging();this.painter.updateTerrain(this.style,e)}_calculateSpeedIndex(){const e=this.painter.canvasCopy(),t=this.painter.getCanvasCopiesAndTimestamps();t.timeStamps.push(performance.now());const i=this.painter.context.gl,r=i.createFramebuffer();function n(e){i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,e,0);const t=new Uint8Array(i.drawingBufferWidth*i.drawingBufferHeight*4);return i.readPixels(0,0,i.drawingBufferWidth,i.drawingBufferHeight,i.RGBA,i.UNSIGNED_BYTE,t),t}return i.bindFramebuffer(i.FRAMEBUFFER,r),this._canvasPixelComparison(n(e),t.canvasCopies.map(n),t.timeStamps)}_canvasPixelComparison(e,t,i){let r=i[1]-i[0];const n=e.length/4;for(let o=0;o{const t=!!this._renderNextFrame;this._frame=null,this._renderNextFrame=null,t&&this._render(e)})))}_preloadTiles(t){const i=this.style?Object.values(this.style._sourceCaches):[];return e.asyncAll(i,((e,i)=>e._preloadTiles(t,i)),(()=>{this.triggerRepaint()})),this}_onWindowOnline(){this._update()}_onWindowResize(e){this._trackResize&&this.resize({originalEvent:e})._update()}_onVisibilityChange(){"hidden"===e.window.document.visibilityState&&this._visibilityHidden++}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(e){this._showTileBoundaries!==e&&(this._showTileBoundaries=e,this._update())}get showTerrainWireframe(){return!!this._showTerrainWireframe}set showTerrainWireframe(e){this._showTerrainWireframe!==e&&(this._showTerrainWireframe=e,this._update())}get speedIndexTiming(){return!!this._speedIndexTiming}set speedIndexTiming(e){this._speedIndexTiming!==e&&(this._speedIndexTiming=e,this._update())}get showPadding(){return!!this._showPadding}set showPadding(e){this._showPadding!==e&&(this._showPadding=e,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(e){this._showCollisionBoxes!==e&&(this._showCollisionBoxes=e,e?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(e){this._showOverdrawInspector!==e&&(this._showOverdrawInspector=e,this._update())}get repaint(){return!!this._repaint}set repaint(e){this._repaint!==e&&(this._repaint=e,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(e){this._vertices=e,this._update()}get showTileAABBs(){return!!this._showTileAABBs}set showTileAABBs(e){this._showTileAABBs!==e&&(this._showTileAABBs=e,e&&this._update())}_setCacheLimits(t,i){e.setCacheLimits(t,i)}get version(){return e.version}},NavigationControl:class{constructor(t){this.options=e.extend({},ao,t),this._container=o("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",(e=>e.preventDefault())),this.options.showZoom&&(e.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",(e=>{this._map&&this._map.zoomIn({},{originalEvent:e})})),o("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})})),o("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(e.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",(e=>{const t=this._map;t&&(this.options.visualizePitch?t.resetNorthPitch({},{originalEvent:e}):t.resetNorth({},{originalEvent:e}))})),this._compassIcon=o("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}_updateZoomButtons(){const e=this._map;if(!e)return;const t=e.getZoom(),i=t===e.getMaxZoom(),r=t===e.getMinZoom();this._zoomInButton.disabled=i,this._zoomOutButton.disabled=r,this._zoomInButton.setAttribute("aria-disabled",i.toString()),this._zoomOutButton.setAttribute("aria-disabled",r.toString())}_rotateCompassArrow(){const e=this._map;if(!e)return;const t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(e.transform.pitch*(Math.PI/180)),.5)}) rotateX(${e.transform.pitch}deg) rotateZ(${e.transform.angle*(180/Math.PI)}deg)`:`rotate(${e.transform.angle*(180/Math.PI)}deg)`;e._requestDomTask((()=>{this._compassIcon&&(this._compassIcon.style.transform=t)}))}onAdd(e){return this._map=e,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),e.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&e.on("pitch",this._rotateCompassArrow),e.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new lo(e,this._compass,this.options.visualizePitch)),this._container}onRemove(){const e=this._map;e&&(this._container.remove(),this.options.showZoom&&e.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&e.off("pitch",this._rotateCompassArrow),e.off("rotate",this._rotateCompassArrow),this._handler&&this._handler.off(),this._handler=void 0),this._map=void 0)}_createButton(e,t){const i=o("button",e,this._container);return i.type="button",i.addEventListener("click",t),i}_setButtonTitle(e,t){if(!this._map)return;const i=this._map._getUIString(`NavigationControl.${t}`);e.setAttribute("aria-label",i),e.firstElementChild&&e.firstElementChild.setAttribute("title",i)}},GeolocateControl:class extends e.Evented{constructor(t){super(),this.options=e.extend({geolocation:e.window.navigator.geolocation},co,t),e.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker","_updateMarkerRotation","_onDeviceOrientation"],this),this._updateMarkerRotationThrottled=Xr(this._updateMarkerRotation,20),this._numberOfWatches=0}onAdd(e){return this._map=e,this._container=o("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkGeolocationSupport(this._setupUI),this._container}onRemove(){void 0!==this._geolocationWatchID&&(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 i=(e=!!this.options.geolocation)=>{this._supportsGeolocation=e,t(e)};void 0!==this._supportsGeolocation?t(this._supportsGeolocation):void 0!==e.window.navigator.permissions?e.window.navigator.permissions.query({name:"geolocation"}).then((e=>i("denied"!==e.state))).catch((()=>i())):i()}_isOutOfMapMaxBounds(e){const t=this._map.getMaxBounds(),i=e.coords;return!!t&&(i.longitudet.getEast()||i.latitudet.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 e.Event("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&&"OFF"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",t)),this._finish()}}_updateCamera(t){const i=new e.LngLat(t.coords.longitude,t.coords.latitude),r=t.coords.accuracy,n=this._map.getBearing(),o=e.extend({bearing:n},this.options.fitBoundsOptions);this._map.fitBounds(i.toBounds(r),o,{geolocateSource:!0})}_updateMarker(t){if(t){const i=new e.LngLat(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(i).addTo(this._map),this._userLocationDotMarker.setLngLat(i).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,i=e.mercatorZfromAltitude(1,t._center.lat)*t.worldSize,r=Math.ceil(2*this._accuracy*i);this._circleElement.style.width=`${r}px`,this._circleElement.style.height=`${r}px`}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}_updateMarkerRotation(){this._userLocationDotMarker&&"number"==typeof this._heading?(this._userLocationDotMarker.setRotation(this._heading),this._dotElement.classList.add("mapboxgl-user-location-show-heading")):(this._dotElement.classList.remove("mapboxgl-user-location-show-heading"),this._userLocationDotMarker.setRotation(0))}_onError(t){if(this._map){if(this.options.trackUserLocation)if(1===t.code){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),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===t.code&&this._noTimeout)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",t)),this._finish()}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0}_setupUI(t){if(void 0!==this._map){if(this._container.addEventListener("contextmenu",(e=>e.preventDefault())),this._geolocateButton=o("button","mapboxgl-ctrl-geolocate",this._container),o("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",!1===t){e.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");const t=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.setAttribute("aria-label",t),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute("title",t)}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=o("div","mapboxgl-user-location"),this._dotElement.appendChild(o("div","mapboxgl-user-location-dot")),this._dotElement.appendChild(o("div","mapboxgl-user-location-heading")),this._userLocationDotMarker=new eo({element:this._dotElement,rotationAlignment:"map",pitchAlignment:"map"}),this._circleElement=o("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new eo({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",(t=>{t.geolocateSource||"ACTIVE_LOCK"!==this._watchState||t.originalEvent&&"resize"===t.originalEvent.type||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this.fire(new e.Event("trackuserlocationend")))}))}}_onDeviceOrientation(e){this._userLocationDotMarker&&(e.webkitCompassHeading?this._heading=e.webkitCompassHeading:!0===e.absolute&&(this._heading=-1*e.alpha),this._updateMarkerRotationThrottled())}trigger(){if(!this._setup)return e.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":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 e.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.Event("trackuserlocationstart"))}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("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let e;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),this._numberOfWatches++,this._numberOfWatches>1?(e={maximumAge:6e5,timeout:0},this._noTimeout=!0):(e=this.options.positionOptions,this._noTimeout=!1),this._geolocationWatchID=this.options.geolocation.watchPosition(this._onSuccess,this._onError,e),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=()=>{e.window.addEventListener("ondeviceorientationabsolute"in e.window?"deviceorientationabsolute":"deviceorientation",this._onDeviceOrientation)};void 0!==e.window.DeviceMotionEvent&&"function"==typeof e.window.DeviceMotionEvent.requestPermission?DeviceOrientationEvent.requestPermission().then((e=>{"granted"===e&&t()})).catch(console.error):t()}_clearWatch(){this.options.geolocation.clearWatch(this._geolocationWatchID),e.window.removeEventListener("deviceorientation",this._onDeviceOrientation),e.window.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:Xn,ScaleControl:class{constructor(t){this.options=e.extend({},ho,t),this._isNumberFormatSupported=function(){try{return new Intl.NumberFormat("en",{style:"unit",unitDisplay:"short",unit:"meter"}),!0}catch(e){return!1}}(),e.bindAll(["_update","_setScale","setUnit"],this)}getDefaultPosition(){return"bottom-left"}_update(){const e=this.options.maxWidth||100,t=this._map,i=t._containerHeight/2,r=t._containerWidth/2-e/2,n=t.unproject([r,i]),o=t.unproject([r+e,i]),s=n.distanceTo(o);if("imperial"===this.options.unit){const t=3.2808*s;t>5280?this._setScale(e,t/5280,"mile"):this._setScale(e,t,"foot")}else"nautical"===this.options.unit?this._setScale(e,s/1852,"nautical-mile"):s>=1e3?this._setScale(e,s/1e3,"kilometer"):this._setScale(e,s,"meter")}_setScale(e,t,i){this._map._requestDomTask((()=>{const r=function(e){const t=Math.pow(10,`${Math.floor(e)}`.length-1);let i=e/t;return i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:i>=1?1:function(e){const t=Math.pow(10,Math.ceil(-Math.log(e)/Math.LN10));return Math.round(e*t)/t}(i),t*i}(t),n=r/t;this._container.innerHTML=this._isNumberFormatSupported&&"nautical-mile"!==i?new Intl.NumberFormat(this._language,{style:"unit",unitDisplay:"short",unit:i}).format(r):`${r} ${uo[i]}`,this._container.style.width=e*n+"px"}))}onAdd(e){return this._map=e,this._language=e.getLanguage(),this._container=o("div","mapboxgl-ctrl mapboxgl-ctrl-scale",e.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(e){this._language=e,this._update()}setUnit(e){this.options.unit=e,this._update()}},FullscreenControl:class{constructor(t){this._fullscreen=!1,t&&t.container&&(t.container instanceof e.window.HTMLElement?this._container=t.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onwebkitfullscreenchange"in e.window.document&&(this._fullscreenchange="webkitfullscreenchange")}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=o("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer}onRemove(){this._controlContainer.remove(),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)}_checkFullscreenSupport(){return!(!e.window.document.fullscreenEnabled&&!e.window.document.webkitFullscreenEnabled)}_setupUI(){const t=this._fullscreenButton=o("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o("span","mapboxgl-ctrl-icon",t).setAttribute("aria-hidden","true"),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)}_updateTitle(){const e=this._getTitle();this._fullscreenButton.setAttribute("aria-label",e),this._fullscreenButton.firstElementChild&&this._fullscreenButton.firstElementChild.setAttribute("title",e)}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_changeIcon(){(e.window.document.fullscreenElement||e.window.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()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.webkitCancelFullScreen&&e.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()}},Popup:class extends e.Evented{constructor(t){super(),this.options=e.extend(Object.create(to),t),e.bindAll(["_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 e.Event("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 e.Event("close")),this}getLngLat(){return this._lngLat}setLngLat(t){this._lngLat=e.LngLat.convert(t),this._pos=null,this._trackPointer=!1,this._update();const i=this._map;return i&&(i.on("move",this._update),i.off("mousemove",this._onMouseEvent),i._canvasContainer.classList.remove("mapboxgl-track-pointer")),this}trackPointer(){this._trackPointer=!0,this._pos=null,this._update();const e=this._map;return e&&(e.off("move",this._update),e.on("mousemove",this._onMouseEvent),e.on("drag",this._onMouseEvent),e._canvasContainer.classList.add("mapboxgl-track-pointer")),this}getElement(){return this._container}setText(t){return this.setDOMContent(e.window.document.createTextNode(t))}setHTML(t){const i=e.window.document.createDocumentFragment(),r=e.window.document.createElement("body");let n;for(r.innerHTML=t;n=r.firstChild,n;)i.appendChild(n);return this.setDOMContent(i)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(e){return this.options.maxWidth=e,this._update(),this}setDOMContent(e){let t=this._content;if(t)for(;t.hasChildNodes();)t.firstChild&&t.removeChild(t.firstChild);else t=this._content=o("div","mapboxgl-popup-content",this._container||void 0);if(t.appendChild(e),this.options.closeButton){const e=this._closeButton=o("button","mapboxgl-popup-close-button",t);e.type="button",e.setAttribute("aria-label","Close popup"),e.setAttribute("aria-hidden","true"),e.innerHTML="×",e.addEventListener("click",this._onClose)}return this._update(),this._focusFirstElement(),this}addClassName(e){return this._classList.add(e),this._updateClassList(),this}removeClassName(e){return this._classList.delete(e),this._updateClassList(),this}setOffset(e){return this.options.offset=e,this._update(),this}toggleClassName(e){let t;return this._classList.delete(e)?t=!1:(this._classList.add(e),t=!0),this._updateClassList(),t}_onMouseEvent(e){this._update(e.point)}_getAnchor(e){if(this.options.anchor)return this.options.anchor;const t=this._map,i=this._container,r=this._pos;if(!t||!i||!r)return"bottom";const n=i.offsetWidth,o=i.offsetHeight,s=r.xt.transform.width-n/2;if(r.y+et.transform.height-o){if(s)return"bottom-left";if(a)return"bottom-right"}return s?"left":a?"right":"bottom"}_updateClassList(){const e=this._container;if(!e)return;const t=[...this._classList];t.push("mapboxgl-popup"),this._anchor&&t.push(`mapboxgl-popup-anchor-${this._anchor}`),this._trackPointer&&t.push("mapboxgl-popup-track-pointer"),e.className=t.join(" ")}_update(t){const i=this._map,r=this._content;if(!i||!this._lngLat&&!this._trackPointer||!r)return;let n=this._container;if(n||(n=this._container=o("div","mapboxgl-popup",i.getContainer()),this._tip=o("div","mapboxgl-popup-tip",n),n.appendChild(r)),this.options.maxWidth&&n.style.maxWidth!==this.options.maxWidth&&(n.style.maxWidth=this.options.maxWidth),i.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Jn(this._lngLat,this._pos,i.transform)),!this._trackPointer||t){const e=this._pos=this._trackPointer&&t?t:i.project(this._lngLat),r=ro(this.options.offset),n=this._anchor=this._getAnchor(r.y),o=ro(this.options.offset,n),s=e.add(o).round();i._requestDomTask((()=>{this._container&&n&&(this._container.style.transform=`${Qn[n]} translate(${s.x}px,${s.y}px)`)}))}if(!this._marker&&i._showingGlobe()){const t=e.isLngLatBehindGlobe(i.transform,this._lngLat)?0:1;this._setOpacity(t)}this._updateClassList()}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const e=this._container.querySelector(io);e&&e.focus()}_onClose(){this.remove()}_setOpacity(e){this._container&&(this._container.style.opacity=`${e}`),this._content&&(this._content.style.pointerEvents=e?"auto":"none")}},Marker:eo,Style:Yt,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,FreeCameraOptions:Ur,Evented:e.Evented,config:e.config,prewarm:function(){je().acquire(Be)},clearPrewarmedResources:function(){const e=Fe;e&&(e.isPreloaded()&&1===e.numActive()?(e.release(Be),Fe=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 e.config.ACCESS_TOKEN},set accessToken(t){e.config.ACCESS_TOKEN=t},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(t){e.config.API_URL=t},get workerCount(){return Oe.workerCount},set workerCount(e){Oe.workerCount=e},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(t){e.config.MAX_PARALLEL_IMAGE_REQUESTS=t},clearStorage(t){e.clearTileCache(t)},workerUrl:"",workerClass:null,setNow:e.exported.setNow,restoreNow:e.exported.restoreNow};return po}));var n=i;return n}();var r=t(i.exports);function n(e){const t=document.createElement("div");return t.classList.add("mapboxgl-ctrl","mapboxgl-ctrl-group",e),t}function o(e={}){const t=document.createElement("button");return t.type="button",e.title&&(t.title=e.title),e.icon&&t.appendChild(e.icon),e.textContent&&(t.textContent=e.textContent),e.disabled&&(t.disabled=!0),e.hidden&&(t.hidden=!0),e.className&&t.classList.add(e.className),e.onClick&&t.addEventListener("click",(()=>{e.onClick&&e.onClick()})),t}function s(e){return(new DOMParser).parseFromString(e,"image/svg+xml").firstChild}const a={compass:s('\n\n \n \n \n \n \n\n')};class l{constructor(e={}){this.options={...e},this.container=n("mapbox-ctrl-compass"),this.icon=a.compass,this.button=o({title:"Compass",icon:a.compass,onClick:()=>this.onControlButtonClick()})}onControlButtonClick(){if(!this.map)throw Error("map is undefined");this.map.easeTo({bearing:0,pitch:0})}onRotate(){if(!this.map)throw Error("map is undefined");const e=-1*this.map.getBearing();this.options.instant||(this.container.hidden=0===e),this.icon.style.transform=`rotate(${e}deg)`}onAdd(e){return this.map=e,this.options.instant||(this.container.hidden=!0),this.container.appendChild(this.button),this.onRotate(),this.map.on("rotate",(()=>this.onRotate())),this.container}onRemove(){this.container.parentNode?.removeChild(this.container)}}const c={inspect:s('\n\n \n \n\n')};function h(e,t){const i=e[t],r=i.properties&&Object.keys(i.properties).length,n=i.properties||{};return`\n
\n ${e.length>1?"":""}\n \n ${e.length>1?"":""}\n
\n \n ${i.id?`\n \n \n \n \n `:""}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ${r?'\n \n \n \n ':""}\n ${r?Object.entries(n).map((([e,t])=>`\n \n \n \n \n `)).join(""):""}\n
$id${i.id}
layer
id${i.layer.id}
type${i.layer.type}
source${i.layer.source}
source-layer${i.layer["source-layer"]??"-"}
properties
${e}${t}
\n `}class u{constructor(e={}){this.options={...e},this.container=n("mapbox-ctrl-inspect"),this.button=o({title:"Inspect",icon:c.inspect,onClick:()=>this.onControlButtonClick()}),this.isActive=!1}onControlButtonClick(){this.isActive?this.deactivate():this.activate()}activate(){if(!this.map)throw Error("map is undefined");this.isActive=!0,this.button.classList.add("-active"),this.map.on("click",this.mapClickListener),this.map.on("move",this.updatePosition),this.map.getCanvas().style.cursor="pointer"}deactivate(){if(!this.map)throw Error("map is undefined");this.isActive=!1,this.button.classList.remove("-active"),this.map.off("click",this.mapClickListener),this.map.off("move",this.updatePosition),this.map.getCanvas().style.cursor="",this.hideDetails()}getPointFeatures(e){if(!this.map)throw Error("map is undefined");const t=[[e.x-3,e.y+3],[e.x+3,e.y-3]];return this.map.queryRenderedFeatures(t)}showDetails(e){if(!this.map)throw Error("map is undefined");this.detailsNode=function(e){const t=document.createElement("div");let i=0;return t.classList.add("mapbox-ctrl-inspect-popup"),e.length?(t.innerHTML=h(e,i),t.addEventListener("click",(r=>{const n=r.target;if(n.matches("[data-prev]"))i=0===i?e.length-1:i-1;else if(n.matches("[data-next]")){const t=i===e.length-1;i=t?0:i+1}t.innerHTML="",t.innerHTML=h(e,i)})),t):(t.textContent="No features",t)}(e),this.map.getContainer().appendChild(this.detailsNode),this.updatePosition(),this.options.console&&console.log(e)}hideDetails(){if(!this.map)throw Error("map is undefined");this.detailsNode&&(this.map.getContainer().removeChild(this.detailsNode),this.detailsNode=void 0)}updatePosition=()=>{if(!this.map)throw Error("map is undefined");if(!this.lngLat)return;if(!this.detailsNode)return;const e=this.map.getCanvas().getBoundingClientRect(),t=this.map.project(this.lngLat);this.detailsNode.style.left=t.x-e.left+"px",this.detailsNode.style.top=t.y-e.top+"px"};mapClickListener=e=>{this.lngLat=e.lngLat;const t=this.getPointFeatures(e.point);this.hideDetails(),this.showDetails(t)};onAdd(e){return this.map=e,this.container.appendChild(this.button),this.container}onRemove(){this.deactivate(),this.container.parentNode?.removeChild(this.container)}}const d={layers:s('\n\n \n\n')},p=[{label:"Streets",styleName:"Mapbox Streets",styleUrl:"mapbox://styles/mapbox/streets-v12"},{label:"Satellite",styleName:"Mapbox Satellite Streets",styleUrl:"mapbox://sprites/mapbox/satellite-streets-v12"}];class f{constructor(e={}){this.options={styles:p,...e},this.container=n("mapbox-ctrl-styles"),this.container.classList.add(e.compact?"mapbox-ctrl-styles-compact":"mapbox-ctrl-styles-expanded")}findStyleByName(e){const t=this.options.styles.find((t=>t.styleName===e));if(!t)throw Error(`can't find style with name ${e}`);return t}expanded(){if(!this.map)throw Error("map is undefined");const e=[];this.options.styles.forEach((t=>{const i=o({title:t.label,textContent:t.label,onClick:()=>{if(!this.map)throw Error("map is undefined");i.classList.contains("-active")||(this.map.setStyle(t.styleUrl),this.options.onChange&&this.options.onChange(t))}});e.push(i),this.container.appendChild(i)})),this.map.on("styledata",(()=>{if(!this.map)throw Error("map is undefined");e.forEach((e=>{e.classList.remove("-active")}));const t=this.options.styles.map((e=>e.styleName)),i=this.map.getStyle().name;if(!i)throw Error("style must have name");const r=t.indexOf(i);if(-1!==r){e[r].classList.add("-active")}}))}compact(){if(!this.map)throw Error("map is undefined");const e=o({title:"Styles",icon:d.layers}),t=document.createElement("select");this.container.appendChild(e),e.appendChild(t),this.options.styles.forEach((e=>{const i=document.createElement("option");t.appendChild(i),i.textContent=e.label,i.value=e.styleName})),t.addEventListener("change",(()=>{if(!this.map)throw Error("map is undefined");const e=this.findStyleByName(t.value);this.map.setStyle(e.styleUrl),this.options.onChange&&this.options.onChange(e)})),this.map.on("styledata",(()=>{if(!this.map)throw Error("map is undefined");const e=this.map.getStyle().name;if(!e)throw Error("style must have name");t.value=e}))}onAdd(e){return this.map=e,this.options.compact?this.compact():this.expanded(),this.container}onRemove(){this.container.parentNode?.removeChild(this.container)}}const m={plus:s('\n\n \n \n\n'),minus:s('\n\n \n \n\n')};class _{constructor(){this.container=n("mapbox-ctrl-zoom"),this.buttonIn=o({title:"Zoom In",icon:m.plus,onClick:()=>this.map?.zoomIn()}),this.buttonOut=o({title:"Zoom Out",icon:m.minus,onClick:()=>this.map?.zoomOut()})}onAdd(e){return this.map=e,this.container.appendChild(this.buttonIn),this.container.appendChild(this.buttonOut),this.container}onRemove(){this.container.parentNode?.removeChild(this.container)}}var g="top",y="bottom",x="right",v="left",b="auto",w=[g,y,x,v],T="start",E="end",A="clippingParents",S="viewport",M="popper",C="reference",k=w.reduce((function(e,t){return e.concat([t+"-"+T,t+"-"+E])}),[]),I=[].concat(w,[b]).reduce((function(e,t){return e.concat([t,t+"-"+T,t+"-"+E])}),[]),P="beforeRead",z="read",L="afterRead",D="beforeMain",R="main",B="afterMain",O="beforeWrite",F="write",j="afterWrite",U=[P,z,L,D,R,B,O,F,j];function N(e){return e?(e.nodeName||"").toLowerCase():null}function V(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function $(e){return e instanceof V(e).Element||e instanceof Element}function G(e){return e instanceof V(e).HTMLElement||e instanceof HTMLElement}function q(e){return"undefined"!=typeof ShadowRoot&&(e instanceof V(e).ShadowRoot||e instanceof ShadowRoot)}var Z={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var i=t.styles[e]||{},r=t.attributes[e]||{},n=t.elements[e];G(n)&&N(n)&&(Object.assign(n.style,i),Object.keys(r).forEach((function(e){var t=r[e];!1===t?n.removeAttribute(e):n.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],n=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce((function(e,t){return e[t]="",e}),{});G(r)&&N(r)&&(Object.assign(r.style,o),Object.keys(n).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};function W(e){return e.split("-")[0]}var H=Math.max,X=Math.min,K=Math.round;function Y(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function J(){return!/^((?!chrome|android).)*safari/i.test(Y())}function Q(e,t,i){void 0===t&&(t=!1),void 0===i&&(i=!1);var r=e.getBoundingClientRect(),n=1,o=1;t&&G(e)&&(n=e.offsetWidth>0&&K(r.width)/e.offsetWidth||1,o=e.offsetHeight>0&&K(r.height)/e.offsetHeight||1);var s=($(e)?V(e):window).visualViewport,a=!J()&&i,l=(r.left+(a&&s?s.offsetLeft:0))/n,c=(r.top+(a&&s?s.offsetTop:0))/o,h=r.width/n,u=r.height/o;return{width:h,height:u,top:c,right:l+h,bottom:c+u,left:l,x:l,y:c}}function ee(e){var t=Q(e),i=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:r}}function te(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(i&&q(i)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function ie(e){return V(e).getComputedStyle(e)}function re(e){return["table","td","th"].indexOf(N(e))>=0}function ne(e){return(($(e)?e.ownerDocument:e.document)||window.document).documentElement}function oe(e){return"html"===N(e)?e:e.assignedSlot||e.parentNode||(q(e)?e.host:null)||ne(e)}function se(e){return G(e)&&"fixed"!==ie(e).position?e.offsetParent:null}function ae(e){for(var t=V(e),i=se(e);i&&re(i)&&"static"===ie(i).position;)i=se(i);return i&&("html"===N(i)||"body"===N(i)&&"static"===ie(i).position)?t:i||function(e){var t=/firefox/i.test(Y());if(/Trident/i.test(Y())&&G(e)&&"fixed"===ie(e).position)return null;var i=oe(e);for(q(i)&&(i=i.host);G(i)&&["html","body"].indexOf(N(i))<0;){var r=ie(i);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return i;i=i.parentNode}return null}(e)||t}function le(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function ce(e,t,i){return H(e,X(t,i))}function he(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function ue(e,t){return t.reduce((function(t,i){return t[i]=e,t}),{})}var de={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,i=e.state,r=e.name,n=e.options,o=i.elements.arrow,s=i.modifiersData.popperOffsets,a=W(i.placement),l=le(a),c=[v,x].indexOf(a)>=0?"height":"width";if(o&&s){var h=function(e,t){return he("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:ue(e,w))}(n.padding,i),u=ee(o),d="y"===l?g:v,p="y"===l?y:x,f=i.rects.reference[c]+i.rects.reference[l]-s[l]-i.rects.popper[c],m=s[l]-i.rects.reference[l],_=ae(o),b=_?"y"===l?_.clientHeight||0:_.clientWidth||0:0,T=f/2-m/2,E=h[d],A=b-u[c]-h[p],S=b/2-u[c]/2+T,M=ce(E,S,A),C=l;i.modifiersData[r]=((t={})[C]=M,t.centerOffset=M-S,t)}},effect:function(e){var t=e.state,i=e.options.element,r=void 0===i?"[data-popper-arrow]":i;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&te(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function pe(e){return e.split("-")[1]}var fe={top:"auto",right:"auto",bottom:"auto",left:"auto"};function me(e){var t,i=e.popper,r=e.popperRect,n=e.placement,o=e.variation,s=e.offsets,a=e.position,l=e.gpuAcceleration,c=e.adaptive,h=e.roundOffsets,u=e.isFixed,d=s.x,p=void 0===d?0:d,f=s.y,m=void 0===f?0:f,_="function"==typeof h?h({x:p,y:m}):{x:p,y:m};p=_.x,m=_.y;var b=s.hasOwnProperty("x"),w=s.hasOwnProperty("y"),T=v,A=g,S=window;if(c){var M=ae(i),C="clientHeight",k="clientWidth";if(M===V(i)&&"static"!==ie(M=ne(i)).position&&"absolute"===a&&(C="scrollHeight",k="scrollWidth"),n===g||(n===v||n===x)&&o===E)A=y,m-=(u&&M===S&&S.visualViewport?S.visualViewport.height:M[C])-r.height,m*=l?1:-1;if(n===v||(n===g||n===y)&&o===E)T=x,p-=(u&&M===S&&S.visualViewport?S.visualViewport.width:M[k])-r.width,p*=l?1:-1}var I,P=Object.assign({position:a},c&&fe),z=!0===h?function(e,t){var i=e.x,r=e.y,n=t.devicePixelRatio||1;return{x:K(i*n)/n||0,y:K(r*n)/n||0}}({x:p,y:m},V(i)):{x:p,y:m};return p=z.x,m=z.y,l?Object.assign({},P,((I={})[A]=w?"0":"",I[T]=b?"0":"",I.transform=(S.devicePixelRatio||1)<=1?"translate("+p+"px, "+m+"px)":"translate3d("+p+"px, "+m+"px, 0)",I)):Object.assign({},P,((t={})[A]=w?m+"px":"",t[T]=b?p+"px":"",t.transform="",t))}var _e={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,r=i.gpuAcceleration,n=void 0===r||r,o=i.adaptive,s=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:W(t.placement),variation:pe(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:n,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,me(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,me(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},ge={passive:!0};var ye={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,r=e.options,n=r.scroll,o=void 0===n||n,s=r.resize,a=void 0===s||s,l=V(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach((function(e){e.addEventListener("scroll",i.update,ge)})),a&&l.addEventListener("resize",i.update,ge),function(){o&&c.forEach((function(e){e.removeEventListener("scroll",i.update,ge)})),a&&l.removeEventListener("resize",i.update,ge)}},data:{}},xe={left:"right",right:"left",bottom:"top",top:"bottom"};function ve(e){return e.replace(/left|right|bottom|top/g,(function(e){return xe[e]}))}var be={start:"end",end:"start"};function we(e){return e.replace(/start|end/g,(function(e){return be[e]}))}function Te(e){var t=V(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Ee(e){return Q(ne(e)).left+Te(e).scrollLeft}function Ae(e){var t=ie(e),i=t.overflow,r=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(i+n+r)}function Se(e){return["html","body","#document"].indexOf(N(e))>=0?e.ownerDocument.body:G(e)&&Ae(e)?e:Se(oe(e))}function Me(e,t){var i;void 0===t&&(t=[]);var r=Se(e),n=r===(null==(i=e.ownerDocument)?void 0:i.body),o=V(r),s=n?[o].concat(o.visualViewport||[],Ae(r)?r:[]):r,a=t.concat(s);return n?a:a.concat(Me(oe(s)))}function Ce(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function ke(e,t,i){return t===S?Ce(function(e,t){var i=V(e),r=ne(e),n=i.visualViewport,o=r.clientWidth,s=r.clientHeight,a=0,l=0;if(n){o=n.width,s=n.height;var c=J();(c||!c&&"fixed"===t)&&(a=n.offsetLeft,l=n.offsetTop)}return{width:o,height:s,x:a+Ee(e),y:l}}(e,i)):$(t)?function(e,t){var i=Q(e,!1,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):Ce(function(e){var t,i=ne(e),r=Te(e),n=null==(t=e.ownerDocument)?void 0:t.body,o=H(i.scrollWidth,i.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),s=H(i.scrollHeight,i.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),a=-r.scrollLeft+Ee(e),l=-r.scrollTop;return"rtl"===ie(n||i).direction&&(a+=H(i.clientWidth,n?n.clientWidth:0)-o),{width:o,height:s,x:a,y:l}}(ne(e)))}function Ie(e,t,i,r){var n="clippingParents"===t?function(e){var t=Me(oe(e)),i=["absolute","fixed"].indexOf(ie(e).position)>=0&&G(e)?ae(e):e;return $(i)?t.filter((function(e){return $(e)&&te(e,i)&&"body"!==N(e)})):[]}(e):[].concat(t),o=[].concat(n,[i]),s=o[0],a=o.reduce((function(t,i){var n=ke(e,i,r);return t.top=H(n.top,t.top),t.right=X(n.right,t.right),t.bottom=X(n.bottom,t.bottom),t.left=H(n.left,t.left),t}),ke(e,s,r));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function Pe(e){var t,i=e.reference,r=e.element,n=e.placement,o=n?W(n):null,s=n?pe(n):null,a=i.x+i.width/2-r.width/2,l=i.y+i.height/2-r.height/2;switch(o){case g:t={x:a,y:i.y-r.height};break;case y:t={x:a,y:i.y+i.height};break;case x:t={x:i.x+i.width,y:l};break;case v:t={x:i.x-r.width,y:l};break;default:t={x:i.x,y:i.y}}var c=o?le(o):null;if(null!=c){var h="y"===c?"height":"width";switch(s){case T:t[c]=t[c]-(i[h]/2-r[h]/2);break;case E:t[c]=t[c]+(i[h]/2-r[h]/2)}}return t}function ze(e,t){void 0===t&&(t={});var i=t,r=i.placement,n=void 0===r?e.placement:r,o=i.strategy,s=void 0===o?e.strategy:o,a=i.boundary,l=void 0===a?A:a,c=i.rootBoundary,h=void 0===c?S:c,u=i.elementContext,d=void 0===u?M:u,p=i.altBoundary,f=void 0!==p&&p,m=i.padding,_=void 0===m?0:m,v=he("number"!=typeof _?_:ue(_,w)),b=d===M?C:M,T=e.rects.popper,E=e.elements[f?b:d],k=Ie($(E)?E:E.contextElement||ne(e.elements.popper),l,h,s),I=Q(e.elements.reference),P=Pe({reference:I,element:T,strategy:"absolute",placement:n}),z=Ce(Object.assign({},T,P)),L=d===M?z:I,D={top:k.top-L.top+v.top,bottom:L.bottom-k.bottom+v.bottom,left:k.left-L.left+v.left,right:L.right-k.right+v.right},R=e.modifiersData.offset;if(d===M&&R){var B=R[n];Object.keys(D).forEach((function(e){var t=[x,y].indexOf(e)>=0?1:-1,i=[g,y].indexOf(e)>=0?"y":"x";D[e]+=B[i]*t}))}return D}function Le(e,t){void 0===t&&(t={});var i=t,r=i.placement,n=i.boundary,o=i.rootBoundary,s=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?I:l,h=pe(r),u=h?a?k:k.filter((function(e){return pe(e)===h})):w,d=u.filter((function(e){return c.indexOf(e)>=0}));0===d.length&&(d=u);var p=d.reduce((function(t,i){return t[i]=ze(e,{placement:i,boundary:n,rootBoundary:o,padding:s})[W(i)],t}),{});return Object.keys(p).sort((function(e,t){return p[e]-p[t]}))}var De={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var n=i.mainAxis,o=void 0===n||n,s=i.altAxis,a=void 0===s||s,l=i.fallbackPlacements,c=i.padding,h=i.boundary,u=i.rootBoundary,d=i.altBoundary,p=i.flipVariations,f=void 0===p||p,m=i.allowedAutoPlacements,_=t.options.placement,w=W(_),E=l||(w===_||!f?[ve(_)]:function(e){if(W(e)===b)return[];var t=ve(e);return[we(e),t,we(t)]}(_)),A=[_].concat(E).reduce((function(e,i){return e.concat(W(i)===b?Le(t,{placement:i,boundary:h,rootBoundary:u,padding:c,flipVariations:f,allowedAutoPlacements:m}):i)}),[]),S=t.rects.reference,M=t.rects.popper,C=new Map,k=!0,I=A[0],P=0;P=0,B=R?"width":"height",O=ze(t,{placement:z,boundary:h,rootBoundary:u,altBoundary:d,padding:c}),F=R?D?x:v:D?y:g;S[B]>M[B]&&(F=ve(F));var j=ve(F),U=[];if(o&&U.push(O[L]<=0),a&&U.push(O[F]<=0,O[j]<=0),U.every((function(e){return e}))){I=z,k=!1;break}C.set(z,U)}if(k)for(var N=function(e){var t=A.find((function(t){var i=C.get(t);if(i)return i.slice(0,e).every((function(e){return e}))}));if(t)return I=t,"break"},V=f?3:1;V>0;V--){if("break"===N(V))break}t.placement!==I&&(t.modifiersData[r]._skip=!0,t.placement=I,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Re(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function Be(e){return[g,x,y,v].some((function(t){return e[t]>=0}))}var Oe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,r=t.rects.reference,n=t.rects.popper,o=t.modifiersData.preventOverflow,s=ze(t,{elementContext:"reference"}),a=ze(t,{altBoundary:!0}),l=Re(s,r),c=Re(a,n,o),h=Be(l),u=Be(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:u},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":u})}};var Fe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,r=e.name,n=i.offset,o=void 0===n?[0,0]:n,s=I.reduce((function(e,i){return e[i]=function(e,t,i){var r=W(e),n=[v,g].indexOf(r)>=0?-1:1,o="function"==typeof i?i(Object.assign({},t,{placement:e})):i,s=o[0],a=o[1];return s=s||0,a=(a||0)*n,[v,x].indexOf(r)>=0?{x:a,y:s}:{x:s,y:a}}(i,t.rects,o),e}),{}),a=s[t.placement],l=a.x,c=a.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=s}};var je={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=Pe({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};var Ue={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,r=e.name,n=i.mainAxis,o=void 0===n||n,s=i.altAxis,a=void 0!==s&&s,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,u=i.padding,d=i.tether,p=void 0===d||d,f=i.tetherOffset,m=void 0===f?0:f,_=ze(t,{boundary:l,rootBoundary:c,padding:u,altBoundary:h}),b=W(t.placement),w=pe(t.placement),E=!w,A=le(b),S="x"===A?"y":"x",M=t.modifiersData.popperOffsets,C=t.rects.reference,k=t.rects.popper,I="function"==typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,P="number"==typeof I?{mainAxis:I,altAxis:I}:Object.assign({mainAxis:0,altAxis:0},I),z=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,L={x:0,y:0};if(M){if(o){var D,R="y"===A?g:v,B="y"===A?y:x,O="y"===A?"height":"width",F=M[A],j=F+_[R],U=F-_[B],N=p?-k[O]/2:0,V=w===T?C[O]:k[O],$=w===T?-k[O]:-C[O],G=t.elements.arrow,q=p&&G?ee(G):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},K=Z[R],Y=Z[B],J=ce(0,C[O],q[O]),Q=E?C[O]/2-N-J-K-P.mainAxis:V-J-K-P.mainAxis,te=E?-C[O]/2+N+J+Y+P.mainAxis:$+J+Y+P.mainAxis,ie=t.elements.arrow&&ae(t.elements.arrow),re=ie?"y"===A?ie.clientTop||0:ie.clientLeft||0:0,ne=null!=(D=null==z?void 0:z[A])?D:0,oe=F+te-ne,se=ce(p?X(j,F+Q-ne-re):j,F,p?H(U,oe):U);M[A]=se,L[A]=se-F}if(a){var he,ue="x"===A?g:v,de="x"===A?y:x,fe=M[S],me="y"===S?"height":"width",_e=fe+_[ue],ge=fe-_[de],ye=-1!==[g,v].indexOf(b),xe=null!=(he=null==z?void 0:z[S])?he:0,ve=ye?_e:fe-C[me]-k[me]-xe+P.altAxis,be=ye?fe+C[me]+k[me]-xe-P.altAxis:ge,we=p&&ye?function(e,t,i){var r=ce(e,t,i);return r>i?i:r}(ve,fe,be):ce(p?ve:_e,fe,p?be:ge);M[S]=we,L[S]=we-fe}t.modifiersData[r]=L}},requiresIfExists:["offset"]};function Ne(e,t,i){void 0===i&&(i=!1);var r,n,o=G(t),s=G(t)&&function(e){var t=e.getBoundingClientRect(),i=K(t.width)/e.offsetWidth||1,r=K(t.height)/e.offsetHeight||1;return 1!==i||1!==r}(t),a=ne(t),l=Q(e,s,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==N(t)||Ae(a))&&(c=(r=t)!==V(r)&&G(r)?{scrollLeft:(n=r).scrollLeft,scrollTop:n.scrollTop}:Te(r)),G(t)?((h=Q(t,!0)).x+=t.clientLeft,h.y+=t.clientTop):a&&(h.x=Ee(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function Ve(e){var t=new Map,i=new Set,r=[];function n(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!i.has(e)){var r=t.get(e);r&&n(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){i.has(e.name)||n(e)})),r}var $e={placement:"bottom",modifiers:[],strategy:"absolute"};function Ge(){for(var e=arguments.length,t=new Array(e),i=0;i1)return 1;for(var i=e,r=0;r<8;r++){var n=this.sampleCurveX(i)-e;if(Math.abs(n)n?s=i:a=i,i=.5*(a-s)+s;return i},solve:function(e,t){return this.sampleCurveY(this.solveCurveX(e,t))}};var m=d(p),_=g;function g(e,t){this.x=e,this.y=t}g.prototype={clone:function(){return new g(this.x,this.y)},add:function(e){return this.clone()._add(e)},sub:function(e){return this.clone()._sub(e)},multByPoint:function(e){return this.clone()._multByPoint(e)},divByPoint:function(e){return this.clone()._divByPoint(e)},mult:function(e){return this.clone()._mult(e)},div:function(e){return this.clone()._div(e)},rotate:function(e){return this.clone()._rotate(e)},rotateAround:function(e,t){return this.clone()._rotateAround(e,t)},matMult:function(e){return this.clone()._matMult(e)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(e){return this.x===e.x&&this.y===e.y},dist:function(e){return Math.sqrt(this.distSqr(e))},distSqr:function(e){var t=e.x-this.x,i=e.y-this.y;return t*t+i*i},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(e){return Math.atan2(this.y-e.y,this.x-e.x)},angleWith:function(e){return this.angleWithSep(e.x,e.y)},angleWithSep:function(e,t){return Math.atan2(this.x*t-this.y*e,this.x*e+this.y*t)},_matMult:function(e){var t=e[2]*this.x+e[3]*this.y;return this.x=e[0]*this.x+e[1]*this.y,this.y=t,this},_add:function(e){return this.x+=e.x,this.y+=e.y,this},_sub:function(e){return this.x-=e.x,this.y-=e.y,this},_mult:function(e){return this.x*=e,this.y*=e,this},_div:function(e){return this.x/=e,this.y/=e,this},_multByPoint:function(e){return this.x*=e.x,this.y*=e.y,this},_divByPoint:function(e){return this.x/=e.x,this.y/=e.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var e=this.y;return this.y=this.x,this.x=-e,this},_rotate:function(e){var t=Math.cos(e),i=Math.sin(e),r=i*this.x+t*this.y;return this.x=t*this.x-i*this.y,this.y=r,this},_rotateAround:function(e,t){var i=Math.cos(e),r=Math.sin(e),n=t.y+r*(this.x-t.x)+i*(this.y-t.y);return this.x=t.x+i*(this.x-t.x)-r*(this.y-t.y),this.y=n,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},g.convert=function(e){return e instanceof g?e:Array.isArray(e)?new g(e[0],e[1]):e};var y=d(_);function x(e,t){if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return!1;for(let i=0;i=1)return 1;const t=e*e,i=t*e;return 4*(e<.5?i:3*(e-t)+i-.75)}function S(e){let t=1/0,i=1/0,r=-1/0,n=-1/0;for(const o of e)t=Math.min(t,o.x),i=Math.min(i,o.y),r=Math.max(r,o.x),n=Math.max(n,o.y);return{min:new y(t,i),max:new y(r,n)}}function M(e,t,i=0,r=!0){const n=new y(i,i),o=e.sub(n),s=t.add(n),a=[o,new y(s.x,o.y),s,new y(o.x,s.y)];return r&&a.push(o.clone()),a}function I(e,t,i,r){const n=new m(e,t,i,r);return function(e){return n.solve(e)}}const C=I(.25,.1,.25,1);function k(e,t,i){return Math.min(i,Math.max(t,e))}function P(e,t,i){return(i=k((i-e)/(t-e),0,1))*i*(3-2*i)}function z(e,t,i){const r=i-t,n=((e-t)%r+r)%r+t;return n===t?i:n}function L(e,t,i){if(!e.length)return i(null,[]);let r=e.length;const n=new Array(e.length);let o=null;e.forEach(((e,s)=>{t(e,((e,t)=>{e&&(o=e),n[s]=t,0==--r&&i(o,n)}))}))}function D(e){const t=[];for(const i in e)t.push(e[i]);return t}function R(e,...t){for(const i of t)for(const t in i)e[t]=i[t];return e}function O(e,t){const i={};for(let r=0;r>t/4)).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,e)}()}function j(e){return e<=1?1:Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))}function U(e){return!!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e)}function V(e,t){e.forEach((e=>{t[e]&&(t[e]=t[e].bind(t))}))}function G(e,t){return-1!==e.indexOf(t,e.length-t.length)}function $(e,t,i){const r={};for(const n in e)r[n]=t.call(i||this,e[n],n,e);return r}function q(e,t,i){const r={};for(const n in e)t.call(i||this,e[n],n,e)&&(r[n]=e[n]);return r}function Z(e){return Array.isArray(e)?e.map(Z):"object"==typeof e&&e?$(e,Z):e}const H={};function W(e){H[e]||("undefined"!=typeof console&&console.warn(e),H[e]=!0)}function X(e,t,i){return(i.y-e.y)*(t.x-e.x)>(t.y-e.y)*(i.x-e.x)}function Y(e){let t=0;for(let i,r,n=0,o=e.length,s=o-1;n0?Math.acos(i/r)*b:0;let o=0!==e||0!==t?Math.atan2(-t,-e)*b+90:0;return o<0&&(o+=360),[r,o,n]}function Q(){return"undefined"!=typeof WorkerGlobalScope&&"undefined"!=typeof self&&self instanceof WorkerGlobalScope}function ee(e){const t={};if(e.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,((e,i,r,n)=>{const o=r||n;return t[i]=!o||o.toLowerCase(),""})),t["max-age"]){const e=parseInt(t["max-age"],10);isNaN(e)?delete t["max-age"]:t["max-age"]=e}return t}let te=null;function ie(){return!!t.document.fullscreenElement||!!t.document.webkitFullscreenElement}function re(e){try{const i=t[e];return i.setItem("_mapbox_test_",1),i.removeItem("_mapbox_test_"),!0}catch(e){return!1}}function ne(e,t){return[e[4*t],e[4*t+1],e[4*t+2],e[4*t+3]]}function oe(e,t,i){e[4*t+0]=i[0],e[4*t+1]=i[1],e[4*t+2]=i[2],e[4*t+3]=i[3]}function se(e,t){return[Math.pow(e[0],2.2)*t,Math.pow(e[1],2.2)*t,Math.pow(e[2],2.2)*t]}function ae(e){return[Math.pow(e[0],1/2.2),Math.pow(e[1],1/2.2),Math.pow(e[2],1/2.2)]}const le="mapbox-tiles";let ce,he,ue=500,de=50;function pe(){try{return t.caches}catch(e){}}function fe(){pe()&&!ce&&(ce=t.caches.open(le))}function me(e){const t=e.indexOf("?");if(t<0)return e;const i=function(e){const t=e.indexOf("?");return t>0?e.slice(t+1).split("&"):[]}(e),r=i.filter((e=>{const t=e.split("=");return"language"===t[0]||"worldview"===t[0]}));return r.length?`${e.slice(0,t)}?${r.join("&")}`:e.slice(0,t)}let _e=1/0;function ge(e){_e++,_e>de&&(e.getActor().send("enforceCacheSizeLimit",ue),_e=0)}const ye={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image",Model:"Model"};"function"==typeof Object.freeze&&Object.freeze(ye);class xe extends Error{constructor(e,t,i){401===t&&ze(i)&&(e+=": you may have provided an invalid Mapbox access token. See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes"),super(e),this.status=t,this.url=i}toString(){return`${this.name}: ${this.message} (${this.status}): ${this.url}`}}const ve=Q()?()=>self.worker&&self.worker.referrer:()=>("blob:"===t.location.protocol?t.parent:t).location.href,be=function(e,i){if(!(/^file:/.test(r=e.url)||/^file:/.test(ve())&&!/^\w+:/.test(r))){if(t.fetch&&t.Request&&t.AbortController&&t.Request.prototype.hasOwnProperty("signal"))return function(e,i){const r=new t.AbortController,n=new t.Request(e.url,{method:e.method||"GET",body:e.body,credentials:e.credentials,headers:e.headers,referrer:ve(),referrerPolicy:e.referrerPolicy,signal:r.signal});let o=!1,s=!1;const a=(l=n.url).indexOf("sku=")>0&&ze(l);var l;"json"===e.type&&n.headers.set("Accept","application/json");const c=(r,o,l)=>{if(s)return;if(r&&"SecurityError"!==r.message&&W(r.toString()),o&&l)return h(o);const c=Date.now();t.fetch(n).then((t=>{if(t.ok){const e=a?t.clone():null;return h(t,e,c)}return i(new xe(t.statusText,t.status,e.url))})).catch((t=>{"AbortError"!==t.name&&i(new Error(`${t.message} ${e.url}`))}))},h=(r,a,l)=>{("arrayBuffer"===e.type?r.arrayBuffer():"json"===e.type?r.json():r.text()).then((e=>{s||(a&&l&&function(e,i,r){if(fe(),!ce)return;const n={status:i.status,statusText:i.statusText,headers:new t.Headers};i.headers.forEach(((e,t)=>n.headers.set(t,e)));const o=ee(i.headers.get("Cache-Control")||"");if(o["no-store"])return;o["max-age"]&&n.headers.set("Expires",new Date(r+1e3*o["max-age"]).toUTCString());const s=n.headers.get("Expires");s&&(new Date(s).getTime()-r<42e4||function(e,t){if(void 0===he)try{new Response(new ReadableStream),he=!0}catch(e){he=!1}he?t(e.body):e.blob().then(t)}(i,(i=>{const r=new t.Response(i,n);fe(),ce&&ce.then((t=>t.put(me(e.url),r))).catch((e=>W(e.message)))})))}(n,a,l),o=!0,i(null,e,r.headers.get("Cache-Control"),r.headers.get("Expires")))})).catch((e=>{s||i(new Error(e.message))}))};return a?function(e,t){if(fe(),!ce)return t(null);const i=me(e.url);ce.then((e=>{e.match(i).then((r=>{const n=function(e){if(!e)return!1;const t=new Date(e.headers.get("Expires")||0),i=ee(e.headers.get("Cache-Control")||"");return t>Date.now()&&!i["no-cache"]}(r);e.delete(i),n&&e.put(i,r.clone()),t(null,r,n)})).catch(t)})).catch(t)}(n,c):c(null,null),{cancel:()=>{s=!0,o||r.abort()}}}(e,i);if(Q()&&self.worker&&self.worker.actor)return self.worker.actor.send("getResource",e,i,void 0,!0)}var r;return function(e,i){const r=new t.XMLHttpRequest;r.open(e.method||"GET",e.url,!0),"arrayBuffer"===e.type&&(r.responseType="arraybuffer");for(const t in e.headers)r.setRequestHeader(t,e.headers[t]);return"json"===e.type&&(r.responseType="text",r.setRequestHeader("Accept","application/json")),r.withCredentials="include"===e.credentials,r.onerror=()=>{i(new Error(r.statusText))},r.onload=()=>{if((r.status>=200&&r.status<300||0===r.status)&&null!==r.response){let t=r.response;if("json"===e.type)try{t=JSON.parse(r.response)}catch(e){return i(e)}i(null,t,r.getResponseHeader("Cache-Control"),r.getResponseHeader("Expires"))}else i(new xe(r.statusText,r.status,e.url))},r.send(e.body),{cancel:()=>r.abort()}}(e,i)},we=function(e,t){return be(R(e,{type:"json"}),t)},Te=function(e,t){return be(R(e,{type:"arrayBuffer"}),t)};function Ee(e){const i=t.document.createElement("a");return i.href=e,i.protocol===t.document.location.protocol&&i.host===t.document.location.host}const Ae="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";let Se,Me;Se=[],Me=0;const Ie=function(e,i){if(o.supported&&(e.headers||(e.headers={}),e.headers.accept="image/webp,*/*"),Me>=n.MAX_PARALLEL_IMAGE_REQUESTS){const t={requestParameters:e,callback:i,cancelled:!1,cancel(){this.cancelled=!0}};return Se.push(t),t}Me++;let r=!1;const s=()=>{if(!r)for(r=!0,Me--;Se.length&&Me{s(),e?i(e):r&&(t.createImageBitmap?function(e,i){const r=new t.Blob([new Uint8Array(e)],{type:"image/png"});t.createImageBitmap(r).then((e=>{i(null,e)})).catch((e=>{i(new Error(`Could not load image because of ${e.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`))}))}(r,((e,t)=>i(e,t,n,o))):function(e,i){const r=new t.Image,n=t.URL;r.onload=()=>{i(null,r),n.revokeObjectURL(r.src),r.onload=null,t.requestAnimationFrame((()=>{r.src=Ae}))},r.onerror=()=>i(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));const o=new t.Blob([new Uint8Array(e)],{type:"image/png"});r.src=e.byteLength?n.createObjectURL(o):Ae}(r,((e,t)=>i(e,t,n,o))))}));return{cancel:()=>{a.cancel(),s()}}},Ce="NO_ACCESS_TOKEN";class ke{constructor(e,t,i){this._transformRequestFn=e,this._customAccessToken=t,this._silenceAuthErrors=!!i,this._createSkuToken()}_createSkuToken(){const e=function(){let e="";for(let t=0;t<10;t++)e+="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"[Math.floor(62*Math.random())];return{token:["1",u,e].join(""),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=e.token,this._skuTokenExpiresAt=e.tokenExpiresAt}_isSkuTokenExpired(){return Date.now()>this._skuTokenExpiresAt}transformRequest(e,t){return this._transformRequestFn&&this._transformRequestFn(e,t)||{url:e}}normalizeStyleURL(e,t){if(!Pe(e))return e;const r=Be(e);return r.params.push(`sdk=js-${i}`),r.path=`/styles/v1${r.path}`,this._makeAPIURL(r,this._customAccessToken||t)}normalizeGlyphsURL(e,t){if(!Pe(e))return e;const i=Be(e);return i.path=`/fonts/v1${i.path}`,this._makeAPIURL(i,this._customAccessToken||t)}normalizeModelURL(e,t){if(!Pe(e))return e;const i=Be(e);return i.path=`/models/v1${i.path}`,this._makeAPIURL(i,this._customAccessToken||t)}normalizeSourceURL(e,t,i,r){if(!Pe(e))return e;const n=Be(e);return n.path=`/v4/${n.authority}.json`,n.params.push("secure"),i&&n.params.push(`language=${i}`),r&&n.params.push(`worldview=${r}`),this._makeAPIURL(n,this._customAccessToken||t)}normalizeSpriteURL(e,t,i,r){const n=Be(e);return Pe(e)?(n.path=`/styles/v1${n.path}/sprite${t}${i}`,this._makeAPIURL(n,this._customAccessToken||r)):(n.path+=`${t}${i}`,Fe(n))}normalizeTileURL(e,t,i){if(this._isSkuTokenExpired()&&this._createSkuToken(),e&&!Pe(e))return e;const r=Be(e);r.path=r.path.replace(/(\.(png|jpg)\d*)(?=$)/,`${t||i&&"raster"!==r.authority&&512===i?"@2x":""}${o.supported?".webp":"$1"}`),"raster"===r.authority?r.path=`/${n.RASTER_URL_PREFIX}${r.path}`:(r.path=r.path.replace(/^.+\/v4\//,"/"),r.path=`/${n.TILE_URL_VERSION}${r.path}`);const s=this._customAccessToken||function(e){for(const t of e){const e=t.match(/^access_token=(.*)$/);if(e)return e[1]}return null}(r.params)||n.ACCESS_TOKEN;return n.REQUIRE_ACCESS_TOKEN&&s&&this._skuToken&&r.params.push(`sku=${this._skuToken}`),this._makeAPIURL(r,s)}canonicalizeTileURL(e,t){const i=Be(e);if(!i.path.match(/^(\/v4\/|\/raster\/v1\/)/)||!i.path.match(/\.[\w]+$/))return e;let r="mapbox://";i.path.match(/^\/raster\/v1\//)?r+=`raster/${i.path.replace(`/${n.RASTER_URL_PREFIX}/`,"")}`:r+=`tiles/${i.path.replace(`/${n.TILE_URL_VERSION}/`,"")}`;let o=i.params;return t&&(o=o.filter((e=>!e.match(/^access_token=/)))),o.length&&(r+=`?${o.join("&")}`),r}canonicalizeTileset(e,t){const i=!!t&&Pe(t),r=[];for(const t of e.tiles||[])ze(t)?r.push(this.canonicalizeTileURL(t,i)):r.push(t);return r}_makeAPIURL(e,t){const i="See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes",r=Be(n.API_URL);if(e.protocol=r.protocol,e.authority=r.authority,"http"===e.protocol){const t=e.params.indexOf("secure");t>=0&&e.params.splice(t,1)}if("/"!==r.path&&(e.path=`${r.path}${e.path}`),!n.REQUIRE_ACCESS_TOKEN)return Fe(e);if(t=t||n.ACCESS_TOKEN,!this._silenceAuthErrors){if(!t)throw new Error(`An API access token is required to use Mapbox GL. ${i}`);if("s"===t[0])throw new Error(`Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). ${i}`)}return e.params=e.params.filter((e=>-1===e.indexOf("access_token"))),e.params.push(`access_token=${t||""}`),Fe(e)}}function Pe(e){return 0===e.indexOf("mapbox:")}function ze(e){return n.API_URL_REGEX.test(e)}function Le(e){return n.API_CDN_URL_REGEX.test(e)}function De(e){return n.API_STYLE_REGEX.test(e)&&!Re(e)}function Re(e){return n.API_SPRITE_REGEX.test(e)}const Oe=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Be(e){const t=e.match(Oe);if(!t)throw new Error("Unable to parse URL object");return{protocol:t[1],authority:t[2],path:t[3]||"/",params:t[4]?t[4].split("&"):[]}}function Fe(e){const t=e.params.length?`?${e.params.join("&")}`:"";return`${e.protocol}://${e.authority}${e.path}${t}`}const Ne="mapbox.eventData";function je(e){if(!e)return null;const i=e.split(".");if(!i||3!==i.length)return null;try{return JSON.parse(decodeURIComponent(t.atob(i[1]).split("").map((e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2))).join("")))}catch(e){return null}}class Ue{constructor(e){this.type=e,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null}getStorageKey(e){const i=je(n.ACCESS_TOKEN);let r="";return r=i&&i.u?t.btoa(encodeURIComponent(i.u).replace(/%([0-9A-F]{2})/g,((e,t)=>String.fromCharCode(Number("0x"+t))))):n.ACCESS_TOKEN||"",e?`${Ne}.${e}:${r}`:`${Ne}:${r}`}fetchEventData(){const e=re("localStorage"),i=this.getStorageKey(),r=this.getStorageKey("uuid");if(e)try{const e=t.localStorage.getItem(i);e&&(this.eventData=JSON.parse(e));const n=t.localStorage.getItem(r);n&&(this.anonId=n)}catch(e){W("Unable to read from LocalStorage")}}saveEventData(){const e=re("localStorage"),i=this.getStorageKey(),r=this.getStorageKey("uuid");if(e)try{t.localStorage.setItem(r,this.anonId),Object.keys(this.eventData).length>=1&&t.localStorage.setItem(i,JSON.stringify(this.eventData))}catch(e){W("Unable to write to LocalStorage")}}processRequests(e){}postEvent(e,t,i,r){if(!n.EVENTS_URL)return;const o=Be(n.EVENTS_URL);o.params.push(`access_token=${r||n.ACCESS_TOKEN||""}`);const s={event:this.type,created:new Date(e).toISOString()},a=t?R(s,t):s,l={url:Fe(o),headers:{"Content-Type":"text/plain"},body:JSON.stringify([a])};this.pendingRequest=function(e,t){return be(R(e,{method:"POST"}),t)}(l,(e=>{this.pendingRequest=null,i(e),this.saveEventData(),this.processRequests(r)}))}queueRequest(e,t){this.queue.push(e),this.processRequests(t)}}const Ve=new class extends Ue{constructor(e){super("appUserTurnstile"),this._customAccessToken=e}postTurnstileEvent(e,t){n.EVENTS_URL&&n.ACCESS_TOKEN&&Array.isArray(e)&&e.some((e=>Pe(e)||ze(e)))&&this.queueRequest(Date.now(),t)}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();const t=je(n.ACCESS_TOKEN),r=t?t.u:n.ACCESS_TOKEN;let o=r!==this.eventData.tokenU;U(this.anonId)||(this.anonId=N(),o=!0);const s=this.queue.shift();if(this.eventData.lastSuccess){const e=new Date(this.eventData.lastSuccess),t=new Date(s),i=(s-this.eventData.lastSuccess)/864e5;o=o||i>=1||i<-1||e.getDate()!==t.getDate()}else o=!0;o?this.postEvent(s,{sdkIdentifier:"mapbox-gl-js",sdkVersion:i,skuId:u,"enabled.telemetry":!1,userId:this.anonId},(e=>{e||(this.eventData.lastSuccess=s,this.eventData.tokenU=r)}),e):this.processRequests()}},Ge=Ve.postTurnstileEvent.bind(Ve),$e=new class extends Ue{constructor(){super("map.load"),this.success={},this.skuToken=""}postMapLoadEvent(e,t,i,r){this.skuToken=t,this.errorCb=r,n.EVENTS_URL&&(i||n.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},i):this.errorCb(new Error(Ce)))}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:r}=this.queue.shift();t&&this.success[t]||(this.anonId||this.fetchEventData(),U(this.anonId)||(this.anonId=N()),this.postEvent(r,{sdkIdentifier:"mapbox-gl-js",sdkVersion:i,skuId:u,skuToken:this.skuToken,userId:this.anonId},(e=>{e?this.errorCb(e):t&&(this.success[t]=!0)}),e))}},qe=$e.postMapLoadEvent.bind($e),Ze=new class extends Ue{constructor(){super("gljs.performance")}postPerformanceEvent(e,t){n.EVENTS_URL&&(e||n.ACCESS_TOKEN)&&this.queueRequest({timestamp:Date.now(),performanceData:t},e)}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{timestamp:r,performanceData:n}=this.queue.shift(),o=function(e){const r=t.performance.getEntriesByType("resource"),n=t.performance.getEntriesByType("mark"),o=function(e){const t={};if(e)for(const i in e)if("other"!==i)for(const r of e[i]){const e=`${i}ResolveRangeMin`,n=`${i}ResolveRangeMax`,o=`${i}RequestCount`,s=`${i}RequestCachedCount`;t[e]=Math.min(t[e]||1/0,r.startTime),t[n]=Math.max(t[n]||-1/0,r.responseEnd);const a=e=>{void 0===t[e]&&(t[e]=0),++t[e]};void 0!==r.transferSize&&0===r.transferSize&&a(s),a(o)}return t}(function(e,t){const i={};if(e)for(const r of e){const e=t(r);void 0===i[e]&&(i[e]=[]),i[e].push(r)}return i}(r,et)),s=t.devicePixelRatio,a=t.navigator.connection||t.navigator.mozConnection||t.navigator.webkitConnection,l={counters:[],metadata:[],attributes:[]},c=(e,t,i)=>{null!=i&&e.push({name:t,value:i.toString()})};for(const e in o)c(l.counters,e,o[e]);if(e.interactionRange[0]!==1/0&&e.interactionRange[1]!==-1/0&&(c(l.counters,"interactionRangeMin",e.interactionRange[0]),c(l.counters,"interactionRangeMax",e.interactionRange[1])),n)for(const e of Object.keys(Je)){const t=Je[e],i=n.find((e=>e.name===t));i&&c(l.counters,t,i.startTime)}return c(l.counters,"visibilityHidden",e.visibilityHidden),c(l.attributes,"style",function(e){if(e)for(const t of e){const e=t.name.split("?")[0];if(De(e)){const t=e.split("/").slice(-2);if(2===t.length)return`mapbox://styles/${t[0]}/${t[1]}`}}}(r)),c(l.attributes,"terrainEnabled",e.terrainEnabled?"true":"false"),c(l.attributes,"fogEnabled",e.fogEnabled?"true":"false"),c(l.attributes,"projection",e.projection),c(l.attributes,"zoom",e.zoom),c(l.metadata,"devicePixelRatio",s),c(l.metadata,"connectionEffectiveType",a?a.effectiveType:void 0),c(l.metadata,"navigatorUserAgent",t.navigator.userAgent),c(l.metadata,"screenWidth",t.screen.width),c(l.metadata,"screenHeight",t.screen.height),c(l.metadata,"windowWidth",t.innerWidth),c(l.metadata,"windowHeight",t.innerHeight),c(l.metadata,"mapWidth",e.width/s),c(l.metadata,"mapHeight",e.height/s),c(l.metadata,"webglRenderer",e.renderer),c(l.metadata,"webglVendor",e.vendor),c(l.metadata,"sdkVersion",i),c(l.metadata,"sdkIdentifier","mapbox-gl-js"),l}(n);for(const e of o.metadata);for(const e of o.counters);for(const e of o.attributes);this.postEvent(r,o,(()=>{}),e)}},He=Ze.postPerformanceEvent.bind(Ze),We=new class extends Ue{constructor(){super("map.auth"),this.success={},this.skuToken=""}getSession(e,t,i,r){if(!n.API_URL||!n.SESSION_PATH)return;const o=Be(n.API_URL+n.SESSION_PATH);o.params.push(`sku=${t||""}`),o.params.push(`access_token=${r||n.ACCESS_TOKEN||""}`);const s={url:Fe(o),headers:{"Content-Type":"text/plain"}};this.pendingRequest=function(e,t){return be(R(e,{method:"GET"}),t)}(s,(e=>{this.pendingRequest=null,i(e),this.saveEventData(),this.processRequests(r)}))}getSessionAPI(e,t,i,r){this.skuToken=t,this.errorCb=r,n.SESSION_PATH&&n.API_URL&&(i||n.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},i):this.errorCb(new Error(Ce)))}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:i}=this.queue.shift();t&&this.success[t]||this.getSession(i,this.skuToken,(e=>{e?this.errorCb(e):t&&(this.success[t]=!0)}),e)}},Xe=We.getSessionAPI.bind(We),Ye=new Set;function Ke(e,t){t?Ye.add(e):Ye.delete(e)}const Je={create:"create",load:"load",fullLoad:"fullLoad"},Qe={mark(e){t.performance.mark(e)},measure(e,i,r){t.performance.measure(e,i,r)}};function et(e){const t=e.name.split("?")[0];return Le(t)&&t.includes("mapbox-gl.js")?"javascript":Le(t)&&t.includes("mapbox-gl.css")?"css":function(e){return n.API_FONTS_REGEX.test(e)}(t)?"fontRange":Re(t)?"sprite":De(t)?"style":function(e){return n.API_TILEJSON_REGEX.test(e)}(t)?"tilejson":"other"}const tt=t.performance;function it(e){const t=e?e.url.toString():void 0;return tt.getEntriesByName(t)}var rt=nt;function nt(e){return!function(e){return"undefined"==typeof window||"undefined"==typeof document?"not a browser":Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?"JSON"in window&&"parse"in JSON&&"stringify"in JSON?function(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var e,t,i=new Blob([""],{type:"text/javascript"}),r=URL.createObjectURL(i);try{t=new Worker(r),e=!0}catch(t){e=!1}return t&&t.terminate(),URL.revokeObjectURL(r),e}()?"Uint8ClampedArray"in window?ArrayBuffer.isView?function(){var e=document.createElement("canvas");e.width=e.height=1;var t=e.getContext("2d");if(!t)return!1;var i=t.getImageData(0,0,1,1);return i&&i.width===e.width}()?(void 0===ot[t=e&&e.failIfMajorPerformanceCaveat]&&(ot[t]=function(e){var t,i=function(e){var t=document.createElement("canvas"),i=Object.create(nt.webGLContextAttributes);return i.failIfMajorPerformanceCaveat=e,t.getContext("webgl",i)||t.getContext("experimental-webgl",i)}(e);if(!i)return!1;try{t=i.createShader(i.VERTEX_SHADER)}catch(e){return!1}return!(!t||i.isContextLost())&&(i.shaderSource(t,"void main() {}"),i.compileShader(t),!0===i.getShaderParameter(t,i.COMPILE_STATUS))}(t)),ot[t]?document.documentMode?"insufficient ECMAScript 6 support":void 0:"insufficient WebGL support"):"insufficient Canvas/getImageData support":"insufficient ArrayBuffer support":"insufficient Uint8ClampedArray support":"insufficient worker support":"insufficient JSON support":"insufficient Object support":"insufficient Function support":"insufficent Array support";var t}(e)}var ot={};let st,at,lt,ct,ht;function ut(){return null==st&&(st=t.OffscreenCanvas&&new t.OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof t.createImageBitmap),st}nt.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};const dt={now:()=>void 0!==ct?ct:t.performance.now(),setNow(e){ct=e},restoreNow(){ct=void 0},frame(e){const i=t.requestAnimationFrame(e);return{cancel:()=>t.cancelAnimationFrame(i)}},getImageData(e,i=0){const{width:r,height:n}=e;ht||(ht=t.document.createElement("canvas"));const o=ht.getContext("2d",{willReadFrequently:!0});if(!o)throw new Error("failed to create canvas 2d context");return(r>ht.width||n>ht.height)&&(ht.width=r,ht.height=n),o.clearRect(-i,-i,r+2*i,n+2*i),o.drawImage(e,0,0,r,n),o.getImageData(-i,-i,r+2*i,n+2*i)},resolveURL:e=>(at||(at=t.document.createElement("a")),at.href=e,at.href),get devicePixelRatio(){return t.devicePixelRatio},get prefersReducedMotion(){return!!t.matchMedia&&(null==lt&&(lt=t.matchMedia("(prefers-reduced-motion: reduce)")),lt.matches)},hasCanvasFingerprintNoise(){if(!ut())return!1;const e=new t.OffscreenCanvas(85,1),i=e.getContext("2d",{willReadFrequently:!0});let r=0;for(let t=0;t{t.removeEventListener("click",vt,!0)}),0)}function wt(e,t){const i=e.getBoundingClientRect();return At(e,i,t)}function Tt(e,t){const i=e.getBoundingClientRect(),r=[];for(let n=0;n=0?0:e.button}function At(e,t,i){const r=e.offsetWidth===t.width?1:e.offsetWidth/t.width;return new y((i.clientX-t.left)*r,(i.clientY-t.top)*r)}function St(e,t,i){i[e]&&-1!==i[e].indexOf(t)||(i[e]=i[e]||[],i[e].push(t))}function Mt(e,t,i){if(i&&i[e]){const r=i[e].indexOf(t);-1!==r&&i[e].splice(r,1)}}class It{constructor(e,t={}){R(this,t),this.type=e}}class Ct extends It{constructor(e,t={}){super("error",R({error:e},t))}}class kt{on(e,t){return this._listeners=this._listeners||{},St(e,t,this._listeners),this}off(e,t){return Mt(e,t,this._listeners),Mt(e,t,this._oneTimeListeners),this}once(e,t){return t?(this._oneTimeListeners=this._oneTimeListeners||{},St(e,t,this._oneTimeListeners),this):new Promise((t=>this.once(e,t)))}fire(e,t){"string"==typeof e&&(e=new It(e,t||{}));const i=e.type;if(this.listens(i)){e.target=this;const t=this._listeners&&this._listeners[i]?this._listeners[i].slice():[];for(const i of t)i.call(this,e);const r=this._oneTimeListeners&&this._oneTimeListeners[i]?this._oneTimeListeners[i].slice():[];for(const t of r)Mt(i,t,this._oneTimeListeners),t.call(this,e);const n=this._eventedParent;n&&(R(e,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),n.fire(e))}else e instanceof Ct&&console.error(e.error);return this}listens(e){return!!(this._listeners&&this._listeners[e]&&this._listeners[e].length>0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e))}setEventedParent(e,t){return this._eventedParent=e,this._eventedParentData=t,this}}var Pt=JSON.parse('{"$version":8,"$root":{"version":{"required":true,"type":"enum","values":[8]},"fragment":{"type":"boolean"},"name":{"type":"string"},"metadata":{"type":"*"},"center":{"type":"array","value":"number"},"zoom":{"type":"number"},"bearing":{"type":"number","default":0,"period":360},"pitch":{"type":"number","default":0},"light":{"type":"light"},"lights":{"required":false,"type":"array","value":"light-3d"},"terrain":{"type":"terrain","optional":true},"fog":{"type":"fog"},"camera":{"type":"camera"},"imports":{"type":"array","value":"import"},"schema":{"type":"schema"},"sources":{"required":true,"type":"sources"},"sprite":{"type":"string"},"glyphs":{"type":"string","default":"mapbox://fonts/mapbox/{fontstack}/{range}.pbf"},"transition":{"type":"transition"},"projection":{"type":"projection"},"layers":{"required":true,"type":"array","value":"layer"},"models":{"type":"models"}},"model":{"type":"string","required":true},"import":{"id":{"type":"string","required":true},"url":{"type":"string","required":true},"config":{"type":"config"},"data":{"type":"$root"}},"config":{"*":{"type":"*"}},"schema":{"*":{"type":"option"}},"option":{"default":{"type":"*","required":true},"type":{"type":"enum","values":{"string":1,"number":1,"boolean":1,"color":1}},"array":{"type":"boolean"},"minValue":{"type":"number"},"maxValue":{"type":"number"},"stepValue":{"type":"number"},"values":{"type":"array","value":"*"},"metadata":{"type":"*"}},"models":{"*":{"type":"model"}},"light-3d":{"id":{"type":"string","required":true},"properties":{"type":"properties"},"type":{"type":"enum","values":{"ambient":{},"directional":{},"flat":{}}}},"properties":["properties_light_directional","properties_light_ambient","properties_light_flat"],"properties_light_directional":{"direction":{"type":"array","default":[210,30],"minimum":[0,0],"maximum":[360,90],"length":2,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"intensity":{"type":"number","property-type":"data-constant","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"cast-shadows":{"type":"boolean","default":false,"expression":{},"property-type":"data-constant"},"shadow-intensity":{"type":"number","property-type":"data-constant","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"properties_light_ambient":{"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"intensity":{"type":"number","property-type":"data-constant","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"properties_light_flat":{"anchor":{"type":"enum","default":"viewport","values":{"map":1,"viewport":1},"property-type":"data-constant","expression":{"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"intensity":{"type":"number","property-type":"data-constant","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"sources":{"*":{"type":"source"}},"source":["source_vector","source_raster","source_raster_dem","source_raster_array","source_geojson","source_video","source_image","source_model"],"source_vector":{"type":{"required":true,"type":"enum","values":{"vector":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"scheme":{"type":"enum","values":{"xyz":1,"tms":1},"default":"xyz"},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"attribution":{"type":"string"},"promoteId":{"type":"promoteId"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster":{"type":{"required":true,"type":"enum","values":{"raster":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"scheme":{"type":"enum","values":{"xyz":1,"tms":1},"default":"xyz"},"attribution":{"type":"string"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_dem":{"type":{"required":true,"type":"enum","values":{"raster-dem":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"attribution":{"type":"string"},"encoding":{"type":"enum","values":{"terrarium":1,"mapbox":1},"default":"mapbox"},"volatile":{"type":"boolean","default":false},"*":{"type":"*"}},"source_raster_array":{"type":{"required":true,"type":"enum","values":{"raster-array":1}},"url":{"type":"string"},"tiles":{"type":"array","value":"string"},"bounds":{"type":"array","value":"number","length":4,"default":[-180,-85.051129,180,85.051129]},"minzoom":{"type":"number","default":0},"maxzoom":{"type":"number","default":22},"tileSize":{"type":"number","default":512},"attribution":{"type":"string"},"rasterLayers":{"type":"*"},"*":{"type":"*"}},"source_geojson":{"type":{"required":true,"type":"enum","values":{"geojson":1}},"data":{"type":"*"},"maxzoom":{"type":"number","default":18},"attribution":{"type":"string"},"buffer":{"type":"number","default":128,"maximum":512,"minimum":0},"filter":{"type":"*"},"tolerance":{"type":"number","default":0.375},"cluster":{"type":"boolean","default":false},"clusterRadius":{"type":"number","default":50,"minimum":0},"clusterMaxZoom":{"type":"number"},"clusterMinPoints":{"type":"number"},"clusterProperties":{"type":"*"},"lineMetrics":{"type":"boolean","default":false},"generateId":{"type":"boolean","default":false},"promoteId":{"type":"promoteId"}},"source_video":{"type":{"required":true,"type":"enum","values":{"video":1}},"urls":{"required":true,"type":"array","value":"string"},"coordinates":{"required":true,"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"source_image":{"type":{"required":true,"type":"enum","values":{"image":1}},"url":{"required":false,"type":"string"},"coordinates":{"required":true,"type":"array","length":4,"value":{"type":"array","length":2,"value":"number"}}},"source_model":{"type":{"required":true,"type":"enum","values":{"model":1,"batched-model":1}},"maxzoom":{"type":"number","default":18},"minzoom":{"type":"number","default":0},"tiles":{"type":"array","value":"string"}},"layer":{"id":{"type":"string","required":true},"type":{"type":"enum","values":{"fill":{},"line":{},"symbol":{},"circle":{},"heatmap":{},"fill-extrusion":{},"raster":{},"hillshade":{},"model":{},"background":{},"sky":{},"slot":{}},"required":true},"metadata":{"type":"*"},"source":{"type":"string"},"source-layer":{"type":"string"},"slot":{"type":"string"},"minzoom":{"type":"number","minimum":0,"maximum":24},"maxzoom":{"type":"number","minimum":0,"maximum":24},"filter":{"type":"filter"},"layout":{"type":"layout"},"paint":{"type":"paint"}},"layout":["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background","layout_sky","layout_model"],"layout_background":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_sky":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_model":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"},"model-id":{"type":"string","default":"","property-type":"data-driven","expression":{"parameters":["zoom","feature"]}}},"layout_fill":{"fill-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_circle":{"circle-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_heatmap":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_fill-extrusion":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"},"fill-extrusion-edge-radius":{"type":"number","private":true,"default":0,"minimum":0,"maximum":1,"expression":{},"property-type":"constant"}},"layout_line":{"line-cap":{"type":"enum","values":{"butt":1,"round":1,"square":1},"default":"butt","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-join":{"type":"enum","values":{"bevel":1,"round":1,"miter":1},"default":"miter","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{"type":"number","default":2,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-round-limit":{"type":"number","default":1.05,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_symbol":{"symbol-placement":{"type":"enum","values":{"point":1,"line":1,"line-center":1},"default":"point","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"symbol-spacing":{"type":"number","default":250,"minimum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{"type":"number","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{"type":"enum","values":{"auto":1,"viewport-y":1,"source":1},"default":"auto","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"symbol-z-elevate":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-optional":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-size":{"type":"number","default":1,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{"type":"enum","values":{"none":1,"width":1,"height":1,"both":1},"default":"none","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit-padding":{"type":"array","value":"number","length":4,"default":[0,0,0,0],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-image":{"type":"resolvedImage","tokens":true,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{"type":"number","default":0,"period":360,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{"type":"number","default":2,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-offset":{"type":"array","value":"number","length":2,"default":[0,0],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{"type":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{"type":"enum","values":{"map":1,"viewport":1,"auto":1},"default":"auto","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-field":{"type":"formatted","default":"","tokens":true,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-font":{"type":"array","value":"string","default":["Open Sans Regular","Arial Unicode MS Regular"],"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-size":{"type":"number","default":16,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{"type":"number","default":10,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{"type":"number","default":1.2,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-letter-spacing":{"type":"number","default":0,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-justify":{"type":"enum","values":{"auto":1,"left":1,"center":1,"right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{"type":"number","default":0,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["zoom","feature"]}},"text-variable-anchor":{"type":"array","value":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-anchor":{"type":"enum","values":{"center":1,"left":1,"right":1,"top":1,"bottom":1,"top-left":1,"top-right":1,"bottom-left":1,"bottom-right":1},"default":"center","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{"type":"number","default":45,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-writing-mode":{"type":"array","value":"enum","values":{"horizontal":1,"vertical":1},"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-rotate":{"type":"number","default":0,"period":360,"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-padding":{"type":"number","default":2,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-keep-upright":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-transform":{"type":"enum","values":{"none":1,"uppercase":1,"lowercase":1},"default":"none","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-offset":{"type":"array","value":"number","length":2,"default":[0,0],"expression":{"interpolated":true,"parameters":["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"text-optional":{"type":"boolean","default":false,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_raster":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"layout_hillshade":{"visibility":{"type":"enum","values":{"visible":1,"none":1},"default":"visible","expression":{},"property-type":"constant"}},"filter":{"type":"array","value":"*"},"filter_symbol":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature","pitch","distance-from-center"]}},"filter_fill":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_line":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_circle":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_fill-extrusion":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_heatmap":{"type":"boolean","default":false,"property-type":"data-driven","expression":{"parameters":["zoom","feature"]}},"filter_operator":{"type":"enum","values":{"==":1,"!=":1,">":1,">=":1,"<":1,"<=":1,"in":1,"!in":1,"all":1,"any":1,"none":1,"has":1,"!has":1}},"geometry_type":{"type":"enum","values":{"Point":1,"LineString":1,"Polygon":1}},"function":{"expression":{"type":"expression"},"stops":{"type":"array","value":"function_stop"},"base":{"type":"number","default":1,"minimum":0},"property":{"type":"string","default":"$zoom"},"type":{"type":"enum","values":{"identity":1,"exponential":1,"interval":1,"categorical":1},"default":"exponential"},"colorSpace":{"type":"enum","values":{"rgb":1,"lab":1,"hcl":1},"default":"rgb"},"default":{"type":"*","required":false}},"function_stop":{"type":"array","minimum":0,"maximum":24,"value":["number","color"],"length":2},"expression":{"type":"array","value":"*","minimum":1},"fog":{"range":{"type":"array","default":[0.5,10],"minimum":-20,"maximum":20,"length":2,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"high-color":{"type":"color","property-type":"data-constant","default":"#245cdf","expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"space-color":{"type":"color","property-type":"data-constant","default":["interpolate",["linear"],["zoom"],4,"#010b19",7,"#367ab9"],"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"horizon-blend":{"type":"number","property-type":"data-constant","default":["interpolate",["linear"],["zoom"],4,0.2,7,0.1],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"star-intensity":{"type":"number","property-type":"data-constant","default":["interpolate",["linear"],["zoom"],5,0.35,6,0],"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true},"transition":true},"vertical-range":{"type":"array","default":[0,0],"minimum":0,"length":2,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"],"relaxZoomRestriction":true}}},"camera":{"camera-projection":{"type":"enum","values":{"perspective":1,"orthographic":1},"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"default":"perspective","property-type":"data-constant"}},"light":{"anchor":{"type":"enum","default":"viewport","values":{"map":1,"viewport":1},"property-type":"data-constant","expression":{"parameters":["zoom"]}},"position":{"type":"array","default":[1.15,210,30],"length":3,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"color":{"type":"color","property-type":"data-constant","default":"#ffffff","expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"intensity":{"type":"number","property-type":"data-constant","default":0.5,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"projection":{"name":{"type":"enum","values":{"albers":1,"equalEarth":1,"equirectangular":1,"lambertConformalConic":1,"mercator":1,"naturalEarth":1,"winkelTripel":1,"globe":1},"default":"mercator","required":true},"center":{"type":"array","length":2,"value":"number","property-type":"data-constant","minimum":[-180,-90],"maximum":[180,90]},"parallels":{"type":"array","length":2,"value":"number","property-type":"data-constant","minimum":[-90,-90],"maximum":[90,90]}},"terrain":{"source":{"type":"string","required":true},"exaggeration":{"type":"number","property-type":"data-constant","default":1,"minimum":0,"maximum":1000,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true}},"paint":["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background","paint_sky","paint_model"],"paint_fill":{"fill-antialias":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"fill-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-outline-color":{"type":"color","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"fill-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"fill-extrusion-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"fill-extrusion-height":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{"type":"boolean","default":true,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"fill-extrusion-ambient-occlusion-intensity":{"property-type":"data-constant","type":"number","private":true,"default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-radius":{"property-type":"data-constant","type":"number","private":true,"default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-wall-radius":{"property-type":"data-constant","type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-ground-radius":{"property-type":"data-constant","type":"number","default":3,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"transition":true},"fill-extrusion-ambient-occlusion-ground-attenuation":{"property-type":"data-constant","type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-flood-light-color":{"property-type":"data-constant","type":"color","default":"#ffffff","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-flood-light-intensity":{"property-type":"data-constant","type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]}},"fill-extrusion-flood-light-wall-radius":{"property-type":"data-driven","type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"fill-extrusion-flood-light-ground-radius":{"property-type":"data-driven","type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["feature","feature-state"]}},"fill-extrusion-flood-light-ground-attenuation":{"property-type":"data-constant","type":"number","default":0.69,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-vertical-scale":{"property-type":"data-constant","type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"fill-extrusion-rounded-roof":{"property-type":"data-constant","type":"boolean","default":true,"expression":{"parameters":["zoom"]}},"fill-extrusion-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{},"property-type":"data-constant"},"fill-extrusion-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"}},"paint_line":{"line-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"line-width":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-gap-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-offset":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"line-dasharray":{"type":"array","value":"number","minimum":0,"expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom","feature"]},"property-type":"data-driven"},"line-gradient":{"type":"color","expression":{"interpolated":true,"parameters":["line-progress"]},"property-type":"color-ramp"},"line-trim-offset":{"type":"array","value":"number","length":2,"default":[0,0],"minimum":[0,0],"maximum":[1,1],"property-type":"constant"},"line-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"},"line-border-width":{"type":"number","private":true,"default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-border-color":{"type":"color","private":true,"default":"rgba(0, 0, 0, 0)","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state"]},"property-type":"data-driven"}},"paint_circle":{"circle-radius":{"type":"number","default":5,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-blur":{"type":"number","default":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{"type":"enum","values":{"map":1,"viewport":1},"default":"viewport","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-stroke-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-stroke-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"circle-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"}},"paint_heatmap":{"heatmap-radius":{"type":"number","default":30,"minimum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"heatmap-weight":{"type":"number","default":1,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"heatmap-intensity":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"heatmap-color":{"type":"color","default":["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",0.1,"royalblue",0.3,"cyan",0.5,"lime",0.7,"yellow",1,"red"],"expression":{"interpolated":true,"parameters":["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_symbol":{"icon-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-emissive-strength":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-driven"},"text-emissive-strength":{"type":"number","default":1,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-driven"},"icon-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"icon-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-image-cross-fade":{"type":"number","property-type":"data-driven","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"transition":true},"text-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-color":{"type":"color","default":"#000000","transition":true,"overridable":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-color":{"type":"color","default":"rgba(0, 0, 0, 0)","transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-width":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-halo-blur":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","feature","feature-state","measure-light"]},"property-type":"data-driven"},"text-translate":{"type":"array","value":"number","length":2,"default":[0,0],"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"map","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"icon-color-saturation":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{},"property-type":"data-constant"}},"paint_raster":{"raster-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-color":{"type":"color","expression":{"interpolated":true,"parameters":["raster-value"]},"property-type":"color-ramp"},"raster-color-mix":{"type":"array","default":[0.2126,0.7152,0.0722,0],"length":4,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-color-range":{"type":"array","default":[0,1],"length":2,"value":"number","property-type":"data-constant","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]}},"raster-hue-rotate":{"type":"number","default":0,"period":360,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{"type":"number","default":0,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-saturation":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-contrast":{"type":"number","default":0,"minimum":-1,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-resampling":{"type":"enum","values":{"linear":1,"nearest":1},"default":"linear","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{"type":"number","default":300,"minimum":0,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"raster-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"},"raster-array-band":{"type":"string","required":false,"property-type":"data-constant"},"raster-elevation":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_hillshade":{"hillshade-illumination-direction":{"type":"number","default":335,"minimum":0,"maximum":359,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{"type":"enum","values":{"map":1,"viewport":1},"default":"viewport","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{"type":"number","default":0.5,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"},"hillshade-highlight-color":{"type":"color","default":"#FFFFFF","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"},"hillshade-accent-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"},"hillshade-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"}},"paint_background":{"background-color":{"type":"color","default":"#000000","transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"background-pattern":{"type":"resolvedImage","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"background-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"background-emissive-strength":{"type":"number","default":0,"minimum":0,"transition":true,"expression":{"interpolated":true,"parameters":["zoom","measure-light"]},"property-type":"data-constant"}},"paint_sky":{"sky-type":{"type":"enum","values":{"gradient":1,"atmosphere":1},"default":"atmosphere","expression":{"parameters":["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun":{"type":"array","value":"number","length":2,"minimum":[0,0],"maximum":[360,180],"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun-intensity":{"type":"number","default":10,"minimum":0,"maximum":100,"property-type":"data-constant"},"sky-gradient-center":{"type":"array","value":"number","default":[0,0],"length":2,"minimum":[0,0],"maximum":[360,180],"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"sky-gradient-radius":{"type":"number","default":90,"minimum":0,"maximum":180,"expression":{"parameters":["zoom"]},"property-type":"data-constant"},"sky-gradient":{"type":"color","default":["interpolate",["linear"],["sky-radial-progress"],0.8,"#87ceeb",1,"white"],"expression":{"interpolated":true,"parameters":["sky-radial-progress"]},"property-type":"color-ramp"},"sky-atmosphere-halo-color":{"type":"color","default":"white","property-type":"data-constant"},"sky-atmosphere-color":{"type":"color","default":"white","property-type":"data-constant"},"sky-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"}},"paint_model":{"model-opacity":{"type":"number","default":1,"minimum":0,"maximum":1,"transition":true,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant"},"model-rotation":{"type":"array","value":"number","length":3,"default":[0,0,0],"period":360,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-scale":{"type":"array","value":"number","length":3,"default":[1,1,1],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-translation":{"type":"array","value":"number","length":3,"default":[0,0,0],"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","zoom"]},"transition":true},"model-color":{"type":"color","default":"#ffffff","property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light","zoom"]},"transition":true},"model-color-mix-intensity":{"type":"number","property-type":"data-driven","default":0,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-type":{"type":"enum","values":{"common-3d":1,"location-indicator":1},"default":"common-3d","property-type":"data-constant"},"model-cast-shadows":{"type":"boolean","default":true,"expression":{},"property-type":"data-constant"},"model-receive-shadows":{"type":"boolean","default":true,"expression":{},"property-type":"data-constant"},"model-ambient-occlusion-intensity":{"type":"number","default":1,"minimum":0,"maximum":1,"expression":{"interpolated":true,"parameters":["zoom"]},"property-type":"data-constant","transition":true},"model-emissive-strength":{"type":"number","property-type":"data-driven","default":0,"minimum":0,"maximum":5,"expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-roughness":{"type":"number","default":1,"minimum":0,"maximum":1,"property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state"]},"transition":true},"model-height-based-emissive-strength-multiplier":{"type":"array","default":[1,1,1,1,0],"length":5,"value":"number","property-type":"data-driven","expression":{"interpolated":true,"parameters":["feature","feature-state","measure-light"]},"transition":true},"model-cutoff-fade-range":{"type":"number","default":0,"minimum":0,"maximum":1,"expression":{},"property-type":"data-constant"}},"transition":{"duration":{"type":"number","default":300,"minimum":0},"delay":{"type":"number","default":0,"minimum":0}},"property-type":{"data-driven":{"type":"property-type"},"color-ramp":{"type":"property-type"},"data-constant":{"type":"property-type"},"constant":{"type":"property-type"}},"promoteId":{"*":{"type":"string"}}}');class zt{constructor(e,t,i,r){this.message=(e?`${e}: `:"")+i,r&&(this.identifier=r),null!=t&&t.__line__&&(this.line=t.__line__)}}class Lt extends zt{}function Dt(e,...t){for(const i of t)for(const t in i)e[t]=i[t];return e}function Rt(e){return e instanceof Number||e instanceof String||e instanceof Boolean?e.valueOf():e}function Ot(e){if(Array.isArray(e))return e.map(Ot);if(e instanceof Object&&!(e instanceof Number||e instanceof String||e instanceof Boolean)){const t={};for(const i in e)t[i]=Ot(e[i]);return t}return Rt(e)}class Bt extends Error{constructor(e,t){super(t),this.message=t,this.key=e}}var Ft=Bt;class Nt{constructor(e,t=[]){this.parent=e,this.bindings={};for(const[e,i]of t)this.bindings[e]=i}concat(e){return new Nt(this,e)}get(e){if(this.bindings[e])return this.bindings[e];if(this.parent)return this.parent.get(e);throw new Error(`${e} not found in scope.`)}has(e){return!!this.bindings[e]||!!this.parent&&this.parent.has(e)}}var jt=Nt;const Ut={kind:"null"},Vt={kind:"number"},Gt={kind:"string"},$t={kind:"boolean"},qt={kind:"color"},Zt={kind:"object"},Ht={kind:"value"},Wt={kind:"collator"},Xt={kind:"formatted"},Yt={kind:"resolvedImage"};function Kt(e,t){return{kind:"array",itemType:e,N:t}}function Jt(e){if("array"===e.kind){const t=Jt(e.itemType);return"number"==typeof e.N?`array<${t}, ${e.N}>`:"value"===e.itemType.kind?"array":`array<${t}>`}return e.kind}const Qt=[Ut,Vt,Gt,$t,qt,Xt,Zt,Kt(Ht),Yt];function ei(e,t){if("error"===t.kind)return null;if("array"===e.kind){if("array"===t.kind&&(0===t.N&&"value"===t.itemType.kind||!ei(e.itemType,t.itemType))&&("number"!=typeof e.N||e.N===t.N))return null}else{if(e.kind===t.kind)return null;if("value"===e.kind)for(const e of Qt)if(!ei(e,t))return null}return`Expected ${Jt(e)} but found ${Jt(t)} instead.`}function ti(e,t){return t.some((t=>t.kind===e.kind))}function ii(e,t){return t.some((t=>"null"===t?null===e:"array"===t?Array.isArray(e):"object"===t?e&&!Array.isArray(e)&&"object"==typeof e:t===typeof e))}var ri,ni={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function oi(e){return(e=Math.round(e))<0?0:e>255?255:e}function si(e){return oi("%"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function ai(e){return(t="%"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))<0?0:t>1?1:t;var t}function li(e,t,i){return i<0?i+=1:i>1&&(i-=1),6*i<1?e+(t-e)*i*6:2*i<1?t:3*i<2?e+(t-e)*(2/3-i)*6:e}try{ri={}.parseCSSColor=function(e){var t,i=e.replace(/ /g,"").toLowerCase();if(i in ni)return ni[i].slice();if("#"===i[0])return 4===i.length?(t=parseInt(i.substr(1),16))>=0&&t<=4095?[(3840&t)>>4|(3840&t)>>8,240&t|(240&t)>>4,15&t|(15&t)<<4,1]:null:7===i.length&&(t=parseInt(i.substr(1),16))>=0&&t<=16777215?[(16711680&t)>>16,(65280&t)>>8,255&t,1]:null;var r=i.indexOf("("),n=i.indexOf(")");if(-1!==r&&n+1===i.length){var o=i.substr(0,r),s=i.substr(r+1,n-(r+1)).split(","),a=1;switch(o){case"rgba":if(4!==s.length)return null;a=ai(s.pop());case"rgb":return 3!==s.length?null:[si(s[0]),si(s[1]),si(s[2]),a];case"hsla":if(4!==s.length)return null;a=ai(s.pop());case"hsl":if(3!==s.length)return null;var l=(parseFloat(s[0])%360+360)%360/360,c=ai(s[1]),h=ai(s[2]),u=h<=.5?h*(c+1):h+c-h*c,d=2*h-u;return[oi(255*li(d,u,l+1/3)),oi(255*li(d,u,l)),oi(255*li(d,u,l-1/3)),a];default:return null}}return null}}catch(e){}class ci{constructor(e,t,i,r=1){this.r=e,this.g=t,this.b=i,this.a=r}static parse(e){if(!e)return;if(e instanceof ci)return e;if("string"!=typeof e)return;const t=ri(e);return t?new ci(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3]):void 0}toString(){const[e,t,i,r]=this.toArray();return`rgba(${Math.round(e)},${Math.round(t)},${Math.round(i)},${r})`}toArray(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[255*e/r,255*t/r,255*i/r,r]}toArray01(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[e/r,t/r,i/r,r]}toArray01Scaled(e){const{r:t,g:i,b:r,a:n}=this;return 0===n?[0,0,0]:[t/n*e,i/n*e,r/n*e]}toArray01PremultipliedAlpha(){const{r:e,g:t,b:i,a:r}=this;return[e,t,i,r]}toArray01Linear(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[Math.pow(e/r,2.2),Math.pow(t/r,2.2),Math.pow(i/r,2.2),r]}}ci.black=new ci(0,0,0,1),ci.white=new ci(1,1,1,1),ci.transparent=new ci(0,0,0,0),ci.red=new ci(1,0,0,1),ci.blue=new ci(0,0,1,1);var hi=ci;class ui{constructor(e,t,i){this.sensitivity=e?t?"variant":"case":t?"accent":"base",this.locale=i,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(e,t){return this.collator.compare(e,t)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class di{constructor(e,t,i,r,n){this.text=e.normalize?e.normalize():e,this.image=t,this.scale=i,this.fontStack=r,this.textColor=n}}class pi{constructor(e){this.sections=e}static fromString(e){return new pi([new di(e,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((e=>0!==e.text.length||e.image&&0!==e.image.namePrimary.length))}static factory(e){return e instanceof pi?e:pi.fromString(e)}toString(){return 0===this.sections.length?"":this.sections.map((e=>e.text)).join("")}serialize(){const e=["format"];for(const t of this.sections){if(t.image){e.push(["image",t.image.namePrimary]);continue}e.push(t.text);const i={};t.fontStack&&(i["text-font"]=["literal",t.fontStack.split(",")]),t.scale&&(i["font-scale"]=t.scale),t.textColor&&(i["text-color"]=["rgba"].concat(t.textColor.toArray())),e.push(i)}return e}}class fi{constructor(e){this.namePrimary=e.namePrimary,e.nameSecondary&&(this.nameSecondary=e.nameSecondary),this.available=e.available}toString(){return this.nameSecondary?`[${this.namePrimary},${this.nameSecondary}]`:this.namePrimary}static fromString(e,t){return e?new fi({namePrimary:e,nameSecondary:t,available:!1}):null}serialize(){return this.nameSecondary?["image",this.namePrimary,this.nameSecondary]:["image",this.namePrimary]}}function mi(e,t,i,r){return"number"==typeof e&&e>=0&&e<=255&&"number"==typeof t&&t>=0&&t<=255&&"number"==typeof i&&i>=0&&i<=255?void 0===r||"number"==typeof r&&r>=0&&r<=1?null:`Invalid rgba value [${[e,t,i,r].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${("number"==typeof r?[e,t,i,r]:[e,t,i]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function _i(e){if(null===e)return!0;if("string"==typeof e)return!0;if("boolean"==typeof e)return!0;if("number"==typeof e)return!0;if(e instanceof hi)return!0;if(e instanceof ui)return!0;if(e instanceof pi)return!0;if(e instanceof fi)return!0;if(Array.isArray(e)){for(const t of e)if(!_i(t))return!1;return!0}if("object"==typeof e){for(const t in e)if(!_i(e[t]))return!1;return!0}return!1}function gi(e){if(null===e)return Ut;if("string"==typeof e)return Gt;if("boolean"==typeof e)return $t;if("number"==typeof e)return Vt;if(e instanceof hi)return qt;if(e instanceof ui)return Wt;if(e instanceof pi)return Xt;if(e instanceof fi)return Yt;if(Array.isArray(e)){const t=e.length;let i;for(const t of e){const e=gi(t);if(i){if(i===e)continue;i=Ht;break}i=e}return Kt(i||Ht,t)}return Zt}function yi(e){const t=typeof e;return null===e?"":"string"===t||"number"===t||"boolean"===t?String(e):e instanceof hi||e instanceof pi||e instanceof fi?e.toString():JSON.stringify(e)}class xi{constructor(e,t){this.type=e,this.value=t}static parse(e,t){if(2!==e.length)return t.error(`'literal' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!_i(e[1]))return t.error("invalid value");const i=e[1];let r=gi(i);const n=t.expectedType;return"array"!==r.kind||0!==r.N||!n||"array"!==n.kind||"number"==typeof n.N&&0!==n.N||(r=n),new xi(r,i)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}serialize(){return"array"===this.type.kind||"object"===this.type.kind?["literal",this.value]:this.value instanceof hi?["rgba"].concat(this.value.toArray()):this.value instanceof pi?this.value.serialize():this.value}}var vi=xi,bi=class{constructor(e){this.name="ExpressionEvaluationError",this.message=e}toJSON(){return this.message}};const wi={string:Gt,number:Vt,boolean:$t,object:Zt};class Ti{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");let i,r=1;const n=e[0];if("array"===n){let n,o;if(e.length>2){const i=e[1];if("string"!=typeof i||!(i in wi)||"object"===i)return t.error('The item type argument of "array" must be one of string, number, boolean',1);n=wi[i],r++}else n=Ht;if(e.length>3){if(null!==e[2]&&("number"!=typeof e[2]||e[2]<0||e[2]!==Math.floor(e[2])))return t.error('The length argument to "array" must be a positive integer literal',2);o=e[2],r++}i=Kt(n,o)}else i=wi[n];const o=[];for(;re.outputDefined()))}serialize(){const e=this.type,t=[e.kind];if("array"===e.kind){const i=e.itemType;if("string"===i.kind||"number"===i.kind||"boolean"===i.kind){t.push(i.kind);const r=e.N;("number"==typeof r||this.args.length>1)&&t.push(r)}}return t.concat(this.args.map((e=>e.serialize())))}}var Ei=Ti;class Ai{constructor(e){this.type=Xt,this.sections=e}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const i=e[1];if(!Array.isArray(i)&&"object"==typeof i)return t.error("First argument must be an image or text section.");const r=[];let n=!1;for(let i=1;i<=e.length-1;++i){const o=e[i];if(n&&"object"==typeof o&&!Array.isArray(o)){n=!1;let e=null;if(o["font-scale"]&&(e=t.parse(o["font-scale"],1,Vt),!e))return null;let i=null;if(o["text-font"]&&(i=t.parse(o["text-font"],1,Kt(Gt)),!i))return null;let s=null;if(o["text-color"]&&(s=t.parse(o["text-color"],1,qt),!s))return null;const a=r[r.length-1];a.scale=e,a.font=i,a.textColor=s}else{const o=t.parse(e[i],1,Ht);if(!o)return null;const s=o.type.kind;if("string"!==s&&"value"!==s&&"null"!==s&&"resolvedImage"!==s)return t.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");n=!0,r.push({content:o,scale:null,font:null,textColor:null})}}return new Ai(r)}evaluate(e){return new pi(this.sections.map((t=>{const i=t.content.evaluate(e);return gi(i)===Yt?new di("",i,null,null,null):new di(yi(i),null,t.scale?t.scale.evaluate(e):null,t.font?t.font.evaluate(e).join(","):null,t.textColor?t.textColor.evaluate(e):null)})))}eachChild(e){for(const t of this.sections)e(t.content),t.scale&&e(t.scale),t.font&&e(t.font),t.textColor&&e(t.textColor)}outputDefined(){return!1}serialize(){const e=["format"];for(const t of this.sections){e.push(t.content.serialize());const i={};t.scale&&(i["font-scale"]=t.scale.serialize()),t.font&&(i["text-font"]=t.font.serialize()),t.textColor&&(i["text-color"]=t.textColor.serialize()),e.push(i)}return e}}class Si{constructor(e,t){this.type=Yt,this.inputPrimary=e,this.inputSecondary=t}static parse(e,t){if(e.length<2)return t.error("Expected two or more arguments.");const i=t.parse(e[1],1,Gt);if(!i)return t.error("No image name provided.");if(2===e.length)return new Si(i);const r=t.parse(e[2],1,Gt);return r?new Si(i,r):t.error("Secondary image variant is not a string.")}evaluate(e){const t=fi.fromString(this.inputPrimary.evaluate(e),this.inputSecondary?this.inputSecondary.evaluate(e):void 0);return t&&e.availableImages&&(t.available=e.availableImages.indexOf(t.namePrimary)>-1,t.nameSecondary&&t.available&&e.availableImages&&(t.available=e.availableImages.indexOf(t.nameSecondary)>-1)),t}eachChild(e){e(this.inputPrimary),this.inputSecondary&&e(this.inputSecondary)}outputDefined(){return!1}serialize(){return this.inputSecondary?["image",this.inputPrimary.serialize(),this.inputSecondary.serialize()]:["image",this.inputPrimary.serialize()]}}function Mi(e){return e instanceof Number?"number":e instanceof String?"string":e instanceof Boolean?"boolean":Array.isArray(e)?"array":null===e?"null":typeof e}const Ii={"to-boolean":$t,"to-color":qt,"to-number":Vt,"to-string":Gt};class Ci{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const i=e[0],r=[];let n=Ut;if("to-array"===i){if(!Array.isArray(e[1]))return null;const i=e[1].length;if(t.expectedType){if("array"!==t.expectedType.kind)return t.error(`Expected ${t.expectedType.kind} but found array.`);n=Kt(t.expectedType.itemType,i)}else{if(!(i>0&&_i(e[1][0])))return null;n=Kt(gi(e[1][0]),i)}for(let o=0;o4?`Invalid rbga value ${JSON.stringify(t)}: expected an array containing either three or four numeric values.`:mi(t[0],t[1],t[2],t[3]),!i))return new hi(t[0]/255,t[1]/255,t[2]/255,t[3])}throw new bi(i||`Could not parse color from value '${"string"==typeof t?t:String(JSON.stringify(t))}'`)}if("number"===this.type.kind){let t=null;for(const i of this.args){if(t=i.evaluate(e),null===t)return 0;const r=Number(t);if(!isNaN(r))return r}throw new bi(`Could not convert ${JSON.stringify(t)} to number.`)}return"formatted"===this.type.kind?pi.fromString(yi(this.args[0].evaluate(e))):"resolvedImage"===this.type.kind?fi.fromString(yi(this.args[0].evaluate(e))):"array"===this.type.kind?this.args.map((t=>t.evaluate(e))):yi(this.args[0].evaluate(e))}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){if("formatted"===this.type.kind)return new Ai([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if("resolvedImage"===this.type.kind)return new Si(this.args[0]).serialize();const e="array"===this.type.kind?[]:[`to-${this.type.kind}`];return this.eachChild((t=>{e.push(t.serialize())})),e}}var ki=Ci;const Pi=["Unknown","Point","LineString","Polygon"];var zi=class{constructor(e){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null,this.options=e}id(){return this.feature&&void 0!==this.feature.id?this.feature.id:null}geometryType(){return this.feature?"number"==typeof this.feature.type?Pi[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}measureLight(e){return this.globals.brightness||0}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const e=this.featureDistanceData.center,t=this.featureDistanceData.scale,{x:i,y:r}=this.featureTileCoord;return this.featureDistanceData.bearing[0]*(i*t-e[0])+this.featureDistanceData.bearing[1]*(r*t-e[1])}return 0}parseColor(e){let t=this._parseColorCache[e];return t||(t=this._parseColorCache[e]=hi.parse(e)),t}getConfig(e){return this.options?this.options.get(e):null}};class Li{constructor(e,t,i,r,n){this.name=e,this.type=t,this._evaluate=i,this.args=r,this._overloadIndex=n}evaluate(e){if(!this._evaluate){const e=Li.definitions[this.name];this._evaluate=Array.isArray(e)?e[2]:e.overloads[this._overloadIndex][1]}return this._evaluate(e,this.args)}eachChild(e){this.args.forEach(e)}outputDefined(){return!1}serialize(){return[this.name].concat(this.args.map((e=>e.serialize())))}static parse(e,t){const i=e[0],r=Li.definitions[i];if(!r)return t.error(`Unknown expression "${i}". If you wanted a literal array, use ["literal", [...]].`,0);const n=Array.isArray(r)?r[0]:r.type,o=Array.isArray(r)?[[r[1],r[2]]]:r.overloads,s=[];let a=null,l=-1;for(const[r,c]of o){if(Array.isArray(r)&&r.length!==e.length-1)continue;s.push(r),l++,a=new Zr(t.registry,t.path,null,t.scope,void 0,t.options);const o=[];let h=!1;for(let t=1;te))).map(Di).join(" | "),r=[];for(let i=1;in;){if(o-n>600){var a=o-n+1,l=r-n+1,c=Math.log(a),h=.5*Math.exp(2*c/3),u=.5*Math.sqrt(c*h*(a-h)/a)*(l-a/2<0?-1:1);e(i,r,Math.max(n,Math.floor(r-l*h/a+u)),Math.min(o,Math.floor(r+(a-l)*h/a+u)),s)}var d=i[r],p=n,f=o;for(t(i,n,r),s(i[o],d)>0&&t(i,n,o);p0;)f--}0===s(i[n],d)?t(i,n,f):t(i,++f,o),f<=r&&(n=f+1),r<=f&&(o=f-1)}}function t(e,t,i){var r=e[t];e[t]=e[i],e[i]=r}function i(e,t){return et?1:0}return function(t,r,n,o,s){e(t,r,n||0,o||t.length-1,s||i)}}();var Fi=d(Bi.exports);function Ni(e){let t=0;for(let i,r,n=0,o=e.length,s=o-1;n=t[2]||e[1]<=t[1]||e[3]>=t[3])}function Vi(e,t,i){const r=e[0]-t[0],n=e[1]-t[1],o=e[0]-i[0],s=e[1]-i[1];return r*s-o*n==0&&r*o<=0&&n*s<=0}function Gi(e,t,i=!1){let r=!1;for(let a=0,l=t.length;a(n=e)[1]!=(s=h)[1]>n[1]&&n[0]<(s[0]-o[0])*(n[1]-o[1])/(s[1]-o[1])+o[0]&&(r=!r)}}var n,o,s;return r}function $i(e,t,i,r){const n=r[0]-i[0],o=r[1]-i[1],s=(e[0]-i[0])*o-n*(e[1]-i[1]),a=(t[0]-i[0])*o-n*(t[1]-i[1]);return s>0&&a<0||s<0&&a>0}function qi(e,t,i,r){return 0!=(n=[r[0]-i[0],r[1]-i[1]])[0]*(o=[t[0]-e[0],t[1]-e[1]])[1]-n[1]*o[0]&&!(!$i(e,t,i,r)||!$i(i,r,e,t));var n,o}const Zi=8192;function Hi(e,t){const i=(180+e[0])/360,r=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e[1]*Math.PI/360)))/360,n=Math.pow(2,t.z);return[Math.round(i*n*Zi),Math.round(r*n*Zi)]}function Wi(e,t){for(let i=0;ii[2]){const t=.5*r;let n=e[0]-i[0]>t?-r:i[0]-e[0]>t?r:0;0===n&&(n=e[0]-i[2]>t?-r:i[2]-e[0]>t?r:0),e[0]+=n}ji(t,e)}function tr(e,t,i,r){const n=Math.pow(2,r.z)*Zi,o=[r.x*Zi,r.y*Zi],s=[];if(!e)return s;for(const r of e)for(const e of r){const r=[e.x+o[0],e.y+o[1]];er(r,t,i,n),s.push(r)}return s}function ir(e,t,i,r){const n=Math.pow(2,r.z)*Zi,o=[r.x*Zi,r.y*Zi],s=[];if(!e)return s;for(const i of e){const e=[];for(const r of i){const i=[r.x+o[0],r.y+o[1]];ji(t,i),e.push(i)}s.push(e)}if(t[2]-t[0]<=n/2){(a=t)[0]=a[1]=1/0,a[2]=a[3]=-1/0;for(const e of s)for(const r of e)er(r,t,i,n)}var a;return s}class rr{constructor(e,t){this.type=$t,this.geojson=e,this.geometries=t}static parse(e,t){if(2!==e.length)return t.error(`'within' expression requires exactly one argument, but found ${e.length-1} instead.`);if(_i(e[1])){const t=e[1];if("FeatureCollection"===t.type)for(let e=0;e180;)e-=360;return e}return n.fromTile=function(e,t,i){var o=Math.PI*(1-2*(e+.5)/Math.pow(2,t)),s=Math.atan(.5*(Math.exp(o)-Math.exp(-o)))/r;return new n(s,i)},o.units.get=function(){return e},n.prototype.distance=function(e,t){var i=l(e[0]-t[0])*this.kx,r=(e[1]-t[1])*this.ky;return Math.sqrt(i*i+r*r)},n.prototype.bearing=function(e,t){var i=l(t[0]-e[0])*this.kx;return Math.atan2(i,(t[1]-e[1])*this.ky)/r},n.prototype.destination=function(e,t,i){var n=i*r;return this.offset(e,Math.sin(n)*t,Math.cos(n)*t)},n.prototype.offset=function(e,t,i){return[e[0]+t/this.kx,e[1]+i/this.ky]},n.prototype.lineDistance=function(e){for(var t=0,i=0;it)return a(n,o,(t-(i-s))/s)}return e[e.length-1]},n.prototype.pointToSegmentDistance=function(e,t,i){var r=t[0],n=t[1],o=l(i[0]-r)*this.kx,s=(i[1]-n)*this.ky,a=0;return 0===o&&0===s||((a=(l(e[0]-r)*this.kx*o+(e[1]-n)*this.ky*s)/(o*o+s*s))>1?(r=i[0],n=i[1]):a>0&&(r+=o/this.kx*a,n+=s/this.ky*a)),o=l(e[0]-r)*this.kx,s=(e[1]-n)*this.ky,Math.sqrt(o*o+s*s)},n.prototype.pointOnLine=function(e,t){for(var i,r,n,o,s=1/0,a=0;a1?(c=e[a+1][0],h=e[a+1][1]):p>0&&(c+=u/this.kx*p,h+=d/this.ky*p));var f=(u=l(t[0]-c)*this.kx)*u+(d=(t[1]-h)*this.ky)*d;fn.index||r.index===n.index&&r.t>n.t){var o=r;r=n,n=o}var a=[r.point],l=r.index+1,c=n.index;!s(i[l],a[0])&&l<=c&&a.push(i[l]);for(var h=l+1;h<=c;h++)a.push(i[h]);return s(i[c],n.point)||a.push(n.point),a},n.prototype.lineSliceAlong=function(e,t,i){for(var r=0,n=[],o=0;oe&&0===n.length&&n.push(a(s,l,(e-(r-c))/c)),r>=t)return n.push(a(s,l,(t-(r-c))/c)),n;r>e&&n.push(l)}return n},n.prototype.bufferPoint=function(e,t){var i=t/this.ky,r=t/this.kx;return[e[0]-r,e[1]-i,e[0]+r,e[1]+i]},n.prototype.bufferBBox=function(e,t){var i=t/this.ky,r=t/this.kx;return[e[0]-r,e[1]-i,e[2]+r,e[3]+i]},n.prototype.insideBBox=function(e,t){return l(e[0]-t[0])>=0&&l(e[0]-t[2])<=0&&e[1]>=t[1]&&e[1]<=t[3]},Object.defineProperties(n,o),n}();var sr=d(or.exports),ar={exports:{}};ar.exports=function(){var e=function(e,i){if(void 0===e&&(e=[]),void 0===i&&(i=t),this.data=e,this.length=this.data.length,this.compare=i,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r)};function t(e,t){return et?1:0}return e.prototype.push=function(e){this.data.push(e),this.length++,this._up(this.length-1)},e.prototype.pop=function(){if(0!==this.length){var e=this.data[0],t=this.data.pop();return this.length--,this.length>0&&(this.data[0]=t,this._down(0)),e}},e.prototype.peek=function(){return this.data[0]},e.prototype._up=function(e){for(var t=this.data,i=this.compare,r=t[e];e>0;){var n=e-1>>1,o=t[n];if(i(r,o)>=0)break;t[e]=o,e=n}t[e]=r},e.prototype._down=function(e){for(var t=this.data,i=this.compare,r=this.length>>1,n=t[e];e=0)break;t[e]=s,e=o}t[e]=n},e}();var lr=d(ar.exports),cr=8192;function hr(e,t){return t.dist-e.dist}const ur=100,dr=50;function pr(e){const t=[1/0,1/0,-1/0,-1/0];if(t.length!==e.length)return!1;for(let i=0;i=e[0]&&e[1]e[1])return[null,null];const i=fr(e);if(t){if(2===i)return[e,null];const t=Math.floor(i/2);return[[e[0],e[0]+t],[e[0]+t,e[1]]]}{if(1===i)return[e,null];const t=Math.floor(i/2)-1;return[[e[0],e[0]+t],[e[0]+t+1,e[1]]]}}function gr(e,t){const i=[1/0,1/0,-1/0,-1/0];if(!mr(t,e.length))return i;for(let r=t[0];r<=t[1];++r)ji(i,e[r]);return i}function yr(e){const t=[1/0,1/0,-1/0,-1/0];for(let i=0;it[2]&&(r=e[0]-t[2]),e[1]>t[3]&&(n=e[1]-t[3]),e[3]=r)return r;if(Ui(n,o)){if(Cr(e,t))return 0}else if(Cr(t,e))return 0;let s=r;for(const r of e)for(let e=0,n=r.length,o=n-1;e=o)continue;const c=n.range1;if(fr(c)<=a){if(!mr(c,e.length))return NaN;if(t){const t=Ir(e,c,i,r);if(0===(o=Math.min(o,t)))return o}else for(let t=c[0];t<=c[1];++t){const n=Mr(e[t],i,r);if(0===(o=Math.min(o,n)))return o}}else{const i=_r(c,t);if(null!==i[0]){const t=xr(gr(e,i[0]),l,r);t=s)continue;const h=o.range1,u=o.range2;if(fr(h)<=l&&fr(u)<=c){if(!mr(h,e.length)||!mr(u,i.length))return NaN;if(t&&r?s=Math.min(s,Ar(e,h,i,u,n)):t||r?t&&!r?s=Math.min(s,Tr(i,u,e,h,n)):!t&&r&&(s=Math.min(s,Tr(e,h,i,u,n))):s=Math.min(s,Sr(e,h,i,u,n)),0===s)return s}else{const o=_r(h,t),l=_r(u,r);Pr(a,s,n,e,i,o[0],l[0]),Pr(a,s,n,e,i,o[0],l[1]),Pr(a,s,n,e,i,o[1],l[0]),Pr(a,s,n,e,i,o[1],l[1])}}return s}function Dr(e,t,i,r,n=1/0){let o=n;const s=gr(e,[0,e.length-1]);for(const n of i)if(!(o!==1/0&&xr(s,gr(n,[0,n.length-1]),r)>=o)&&(o=Math.min(o,Lr(e,t,n,!0,r,o)),0===o))return o;return o}function Rr(e,t,i,r,n=1/0){let o=n;const s=gr(e,[0,e.length-1]);for(const n of i){if(o!==1/0&&xr(s,yr(n),r)>=o)continue;const i=zr(e,t,n,r,o);if(isNaN(i))return i;if(0===(o=Math.min(o,i)))return o}return o}function Or(e){return"Point"===e||"MultiPoint"===e||"LineString"===e||"MultiLineString"===e||"Polygon"===e||"MultiPolygon"===e}class Br{constructor(e,t){this.type=Vt,this.geojson=e,this.geometries=t}static parse(e,t){if(2!==e.length)return t.error(`'distance' expression requires either one argument, but found ' ${e.length-1} instead.`);if(_i(e[1])){const t=e[1];if("FeatureCollection"===t.type){for(let e=0;e{t&&!Nr(e)&&(t=!1)})),t}function jr(e){if(e instanceof Ri&&"feature-state"===e.name)return!1;let t=!0;return e.eachChild((e=>{t&&!jr(e)&&(t=!1)})),t}function Ur(e){if(e instanceof Ri&&"config"===e.name)return!1;let t=!0;return e.eachChild((e=>{t&&!Ur(e)&&(t=!1)})),t}function Vr(e,t){if(e instanceof Ri&&t.indexOf(e.name)>=0)return!1;let i=!0;return e.eachChild((e=>{i&&!Vr(e,t)&&(i=!1)})),i}class Gr{constructor(e,t){this.type=t.type,this.name=e,this.boundExpression=t}static parse(e,t){if(2!==e.length||"string"!=typeof e[1])return t.error("'var' expression requires exactly one string literal argument.");const i=e[1];return t.scope.has(i)?new Gr(i,t.scope.get(i)):t.error(`Unknown variable "${i}". Make sure "${i}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(e){return this.boundExpression.evaluate(e)}eachChild(){}outputDefined(){return!1}serialize(){return["var",this.name]}}var $r=Gr;class qr{constructor(e,t=[],i,r=new jt,n=[],o){this.registry=e,this.path=t,this.key=t.map((e=>`[${e}]`)).join(""),this.scope=r,this.errors=n,this.expectedType=i,this.options=o}parse(e,t,i,r,n={}){return t||i?this.concat(t,i,r)._parse(e,n):this._parse(e,n)}_parse(e,t){function i(e,t,i){return"assert"===i?new Ei(t,[e]):"coerce"===i?new ki(t,[e]):e}if(null!==e&&"string"!=typeof e&&"boolean"!=typeof e&&"number"!=typeof e||(e=["literal",e]),Array.isArray(e)){if(0===e.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const r="string"==typeof e[0]?this.registry[e[0]]:void 0;if(r){let n=r.parse(e,this);if(!n)return null;if(this.expectedType){const e=this.expectedType,r=n.type;if("string"!==e.kind&&"number"!==e.kind&&"boolean"!==e.kind&&"object"!==e.kind&&"array"!==e.kind||"value"!==r.kind)if("color"!==e.kind&&"formatted"!==e.kind&&"resolvedImage"!==e.kind||"value"!==r.kind&&"string"!==r.kind){if(this.checkSubtype(e,r))return null}else n=i(n,e,t.typeAnnotation||"coerce");else n=i(n,e,t.typeAnnotation||"assert")}if(!(n instanceof vi)&&"resolvedImage"!==n.type.kind&&Hr(n)){const t=new zi(this.options);try{n=new vi(n.type,n.evaluate(t))}catch(e){return this.error(e.message),null}}return n}return ki.parse(["to-array",e],this)}return this.error(void 0===e?"'undefined' value invalid. Use null instead.":"object"==typeof e?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof e} instead.`)}concat(e,t,i){const r="number"==typeof e?this.path.concat(e):this.path,n=i?this.scope.concat(i):this.scope;return new qr(this.registry,r,t||null,n,this.errors,this.options)}error(e,...t){const i=`${this.key}${t.map((e=>`[${e}]`)).join("")}`;this.errors.push(new Ft(i,e))}checkSubtype(e,t){const i=ei(e,t);return i&&this.error(i),i}}var Zr=qr;function Hr(e){if(e instanceof $r)return Hr(e.boundExpression);if(e instanceof Ri&&"error"===e.name)return!1;if(e instanceof Ri&&"config"===e.name)return!1;if(e instanceof Oi)return!1;if(e instanceof nr)return!1;if(e instanceof Fr)return!1;const t=e instanceof ki||e instanceof Ei;let i=!0;return e.eachChild((e=>{i=t?i&&Hr(e):i&&e instanceof vi})),!!i&&Nr(e)&&Vr(e,["zoom","heatmap-density","line-progress","raster-value","sky-radial-progress","accumulated","is-supported-script","pitch","distance-from-center","measure-light"])}function Wr(e,t){const i=e.length-1;let r,n,o=0,s=i,a=0;for(;o<=s;)if(a=Math.floor((o+s)/2),r=e[a],n=e[a+1],r<=t){if(a===i||tt))throw new bi("Input is not a number.");s=a-1}return 0}class Xr{constructor(e,t,i){this.type=e,this.input=t,this.labels=[],this.outputs=[];for(const[e,t]of i)this.labels.push(e),this.outputs.push(t)}static parse(e,t){if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error("Expected an even number of arguments.");const i=t.parse(e[1],1,Vt);if(!i)return null;const r=[];let n=null;t.expectedType&&"value"!==t.expectedType.kind&&(n=t.expectedType);for(let i=1;i=o)return t.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',a);const c=t.parse(s,l,n);if(!c)return null;n=n||c.type,r.push([o,c])}return new Xr(n,i,r)}evaluate(e){const t=this.labels,i=this.outputs;if(1===t.length)return i[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return i[0].evaluate(e);const n=t.length;return r>=t[n-1]?i[n-1].evaluate(e):i[Wr(t,r)].evaluate(e)}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){const e=["step",this.input.serialize()];for(let t=0;t0&&e.push(this.labels[t]),e.push(this.outputs[t].serialize());return e}}var Yr=Xr;function Kr(e,t,i){return e*(1-i)+t*i}function Jr(e,t,i){return e.map(((e,r)=>Kr(e,t[r],i)))}var Qr=Object.freeze({__proto__:null,array:Jr,color:function(e,t,i){return new hi(Kr(e.r,t.r,i),Kr(e.g,t.g,i),Kr(e.b,t.b,i),Kr(e.a,t.a,i))},number:Kr});const en=.95047,tn=1.08883,rn=4/29,nn=6/29,on=3*nn*nn,sn=nn*nn*nn,an=Math.PI/180,ln=180/Math.PI;function cn(e){return e>sn?Math.pow(e,1/3):e/on+rn}function hn(e){return e>nn?e*e*e:on*(e-rn)}function un(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function dn(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function pn(e){const t=dn(e.r),i=dn(e.g),r=dn(e.b),n=cn((.4124564*t+.3575761*i+.1804375*r)/en),o=cn((.2126729*t+.7151522*i+.072175*r)/1);return{l:116*o-16,a:500*(n-o),b:200*(o-cn((.0193339*t+.119192*i+.9503041*r)/tn)),alpha:e.a}}function fn(e){let t=(e.l+16)/116,i=isNaN(e.a)?t:t+e.a/500,r=isNaN(e.b)?t:t-e.b/200;return t=1*hn(t),i=en*hn(i),r=tn*hn(r),new hi(un(3.2404542*i-1.5371385*t-.4985314*r),un(-.969266*i+1.8760108*t+.041556*r),un(.0556434*i-.2040259*t+1.0572252*r),e.alpha)}function mn(e,t,i){const r=t-e;return e+i*(r>180||r<-180?r-360*Math.round(r/360):r)}const _n={forward:pn,reverse:fn,interpolate:function(e,t,i){return{l:Kr(e.l,t.l,i),a:Kr(e.a,t.a,i),b:Kr(e.b,t.b,i),alpha:Kr(e.alpha,t.alpha,i)}}},gn={forward:function(e){const{l:t,a:i,b:r}=pn(e),n=Math.atan2(r,i)*ln;return{h:n<0?n+360:n,c:Math.sqrt(i*i+r*r),l:t,alpha:e.a}},reverse:function(e){const t=e.h*an,i=e.c;return fn({l:e.l,a:Math.cos(t)*i,b:Math.sin(t)*i,alpha:e.alpha})},interpolate:function(e,t,i){return{h:mn(e.h,t.h,i),c:Kr(e.c,t.c,i),l:Kr(e.l,t.l,i),alpha:Kr(e.alpha,t.alpha,i)}}};var yn=Object.freeze({__proto__:null,hcl:gn,lab:_n});class xn{constructor(e,t,i,r,n){this.type=e,this.operator=t,this.interpolation=i,this.input=r,this.labels=[],this.outputs=[];for(const[e,t]of n)this.labels.push(e),this.outputs.push(t)}static interpolationFactor(e,t,i,r){let n=0;if("exponential"===e.name)n=vn(t,e.base,i,r);else if("linear"===e.name)n=vn(t,1,i,r);else if("cubic-bezier"===e.name){const o=e.controlPoints;n=new m(o[0],o[1],o[2],o[3]).solve(vn(t,1,i,r))}return n}static parse(e,t){let[i,r,n,...o]=e;if(!Array.isArray(r)||0===r.length)return t.error("Expected an interpolation type expression.",1);if("linear"===r[0])r={name:"linear"};else if("exponential"===r[0]){const e=r[1];if("number"!=typeof e)return t.error("Exponential interpolation requires a numeric base.",1,1);r={name:"exponential",base:e}}else{if("cubic-bezier"!==r[0])return t.error(`Unknown interpolation type ${String(r[0])}`,1,0);{const e=r.slice(1);if(4!==e.length||e.some((e=>"number"!=typeof e||e<0||e>1)))return t.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);r={name:"cubic-bezier",controlPoints:e}}}if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error("Expected an even number of arguments.");if(n=t.parse(n,2,Vt),!n)return null;const s=[];let a=null;"interpolate-hcl"===i||"interpolate-lab"===i?a=qt:t.expectedType&&"value"!==t.expectedType.kind&&(a=t.expectedType);for(let e=0;e=i)return t.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',n);const c=t.parse(r,l,a);if(!c)return null;a=a||c.type,s.push([i,c])}return"number"===a.kind||"color"===a.kind||"array"===a.kind&&"number"===a.itemType.kind&&"number"==typeof a.N?new xn(a,i,r,n,s):t.error(`Type ${Jt(a)} is not interpolatable.`)}evaluate(e){const t=this.labels,i=this.outputs;if(1===t.length)return i[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return i[0].evaluate(e);const n=t.length;if(r>=t[n-1])return i[n-1].evaluate(e);const o=Wr(t,r),s=xn.interpolationFactor(this.interpolation,r,t[o],t[o+1]),a=i[o].evaluate(e),l=i[o+1].evaluate(e);return"interpolate"===this.operator?Qr[this.type.kind.toLowerCase()](a,l,s):"interpolate-hcl"===this.operator?gn.reverse(gn.interpolate(gn.forward(a),gn.forward(l),s)):_n.reverse(_n.interpolate(_n.forward(a),_n.forward(l),s))}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){let e;e="linear"===this.interpolation.name?["linear"]:"exponential"===this.interpolation.name?1===this.interpolation.base?["linear"]:["exponential",this.interpolation.base]:["cubic-bezier"].concat(this.interpolation.controlPoints);const t=[this.operator,e,this.input.serialize()];for(let e=0;eei(r,e.type)));return new wn(o?Ht:i,n)}evaluate(e){let t,i=null,r=0;for(const n of this.args){if(r++,i=n.evaluate(e),i&&i instanceof fi&&!i.available&&(t||(t=i),i=null,r===this.args.length))return t;if(null!==i)break}return i}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){const e=["coalesce"];return this.eachChild((t=>{e.push(t.serialize())})),e}}var Tn=wn;class En{constructor(e,t){this.type=t.type,this.bindings=[].concat(e),this.result=t}evaluate(e){return this.result.evaluate(e)}eachChild(e){for(const t of this.bindings)e(t[1]);e(this.result)}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);const i=[];for(let r=1;r=i.length)throw new bi(`Array index out of bounds: ${t} > ${i.length-1}.`);if(t!==Math.floor(t))throw new bi(`Array index must be an integer, but found ${t} instead.`);return i[t]}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at",this.index.serialize(),this.input.serialize()]}}var Mn=Sn;class In{constructor(e,t){this.type=$t,this.needle=e,this.haystack=t}static parse(e,t){if(3!==e.length)return t.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,Ht),r=t.parse(e[2],2,Ht);return i&&r?ti(i.type,[$t,Gt,Vt,Ut,Ht])?new In(i,r):t.error(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(i.type)} instead`):null}evaluate(e){const t=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(null==i)return!1;if(!ii(t,["boolean","string","number","null"]))throw new bi(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(gi(t))} instead.`);if(!ii(i,["string","array"]))throw new bi(`Expected second argument to be of type array or string, but found ${Jt(gi(i))} instead.`);return i.indexOf(t)>=0}eachChild(e){e(this.needle),e(this.haystack)}outputDefined(){return!0}serialize(){return["in",this.needle.serialize(),this.haystack.serialize()]}}var Cn=In;class kn{constructor(e,t,i){this.type=Vt,this.needle=e,this.haystack=t,this.fromIndex=i}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,Ht),r=t.parse(e[2],2,Ht);if(!i||!r)return null;if(!ti(i.type,[$t,Gt,Vt,Ut,Ht]))return t.error(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(i.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,Vt);return n?new kn(i,r,n):null}return new kn(i,r)}evaluate(e){const t=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(!ii(t,["boolean","string","number","null"]))throw new bi(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(gi(t))} instead.`);if(!ii(i,["string","array"]))throw new bi(`Expected second argument to be of type array or string, but found ${Jt(gi(i))} instead.`);if(this.fromIndex){const r=this.fromIndex.evaluate(e);return i.indexOf(t,r)}return i.indexOf(t)}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)}outputDefined(){return!1}serialize(){if(null!=this.fromIndex&&void 0!==this.fromIndex){const e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]}}var Pn=kn;class zn{constructor(e,t,i,r,n,o){this.inputType=e,this.type=t,this.input=i,this.cases=r,this.outputs=n,this.otherwise=o}static parse(e,t){if(e.length<5)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!=1)return t.error("Expected an even number of arguments.");let i,r;t.expectedType&&"value"!==t.expectedType.kind&&(r=t.expectedType);const n={},o=[];for(let s=2;sNumber.MAX_SAFE_INTEGER)return c.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if("number"==typeof e&&Math.floor(e)!==e)return c.error("Numeric branch labels must be integer values.");if(i){if(c.checkSubtype(i,gi(e)))return null}else i=gi(e);if(void 0!==n[String(e)])return c.error("Branch labels must be unique.");n[String(e)]=o.length}const h=t.parse(l,s,r);if(!h)return null;r=r||h.type,o.push(h)}const s=t.parse(e[1],1,Ht);if(!s)return null;const a=t.parse(e[e.length-1],e.length-1,r);return a?"value"!==s.type.kind&&t.concat(1).checkSubtype(i,s.type)?null:new zn(i,r,s,n,o,a):null}evaluate(e){const t=this.input.evaluate(e);return(gi(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(e)}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)}outputDefined(){return this.outputs.every((e=>e.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=["match",this.input.serialize()],t=Object.keys(this.cases).sort(),i=[],r={};for(const e of t){const t=r[this.cases[e]];void 0===t?(r[this.cases[e]]=i.length,i.push([this.cases[e],[e]])):i[t][1].push(e)}const n=e=>"number"===this.inputType.kind?Number(e):e;for(const[t,r]of i)e.push(1===r.length?n(r[0]):r.map(n)),e.push(this.outputs[t].serialize());return e.push(this.otherwise.serialize()),e}}var Ln=zn;class Dn{constructor(e,t,i){this.type=e,this.branches=t,this.otherwise=i}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!=0)return t.error("Expected an odd number of arguments.");let i;t.expectedType&&"value"!==t.expectedType.kind&&(i=t.expectedType);const r=[];for(let n=1;nt.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=["case"];return this.eachChild((t=>{e.push(t.serialize())})),e}}var Rn=Dn;class On{constructor(e,t,i,r){this.type=e,this.input=t,this.beginIndex=i,this.endIndex=r}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,Ht),r=t.parse(e[2],2,Vt);if(!i||!r)return null;if(!ti(i.type,[Kt(Ht),Gt,Ht]))return t.error(`Expected first argument to be of type array or string, but found ${Jt(i.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,Vt);return n?new On(i.type,i,r,n):null}return new On(i.type,i,r)}evaluate(e){const t=this.input.evaluate(e),i=this.beginIndex.evaluate(e);if(!ii(t,["string","array"]))throw new bi(`Expected first argument to be of type array or string, but found ${Jt(gi(t))} instead.`);if(this.endIndex){const r=this.endIndex.evaluate(e);return t.slice(i,r)}return t.slice(i)}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)}outputDefined(){return!1}serialize(){if(null!=this.endIndex&&void 0!==this.endIndex){const e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]}}var Bn=On;function Fn(e,t){return"=="===e||"!="===e?"boolean"===t.kind||"string"===t.kind||"number"===t.kind||"null"===t.kind||"value"===t.kind:"string"===t.kind||"number"===t.kind||"value"===t.kind}function Nn(e,t,i,r){return 0===r.compare(t,i)}function jn(e,t,i){const r="=="!==e&&"!="!==e;return class n{constructor(e,t,i){this.type=$t,this.lhs=e,this.rhs=t,this.collator=i,this.hasUntypedArgument="value"===e.type.kind||"value"===t.type.kind}static parse(e,t){if(3!==e.length&&4!==e.length)return t.error("Expected two or three arguments.");const i=e[0];let o=t.parse(e[1],1,Ht);if(!o)return null;if(!Fn(i,o.type))return t.concat(1).error(`"${i}" comparisons are not supported for type '${Jt(o.type)}'.`);let s=t.parse(e[2],2,Ht);if(!s)return null;if(!Fn(i,s.type))return t.concat(2).error(`"${i}" comparisons are not supported for type '${Jt(s.type)}'.`);if(o.type.kind!==s.type.kind&&"value"!==o.type.kind&&"value"!==s.type.kind)return t.error(`Cannot compare types '${Jt(o.type)}' and '${Jt(s.type)}'.`);r&&("value"===o.type.kind&&"value"!==s.type.kind?o=new Ei(s.type,[o]):"value"!==o.type.kind&&"value"===s.type.kind&&(s=new Ei(o.type,[s])));let a=null;if(4===e.length){if("string"!==o.type.kind&&"string"!==s.type.kind&&"value"!==o.type.kind&&"value"!==s.type.kind)return t.error("Cannot use collator to compare non-string types.");if(a=t.parse(e[3],3,Wt),!a)return null}return new n(o,s,a)}evaluate(n){const o=this.lhs.evaluate(n),s=this.rhs.evaluate(n);if(r&&this.hasUntypedArgument){const t=gi(o),i=gi(s);if(t.kind!==i.kind||"string"!==t.kind&&"number"!==t.kind)throw new bi(`Expected arguments for "${e}" to be (string, string) or (number, number), but found (${t.kind}, ${i.kind}) instead.`)}if(this.collator&&!r&&this.hasUntypedArgument){const e=gi(o),i=gi(s);if("string"!==e.kind||"string"!==i.kind)return t(n,o,s)}return this.collator?i(n,o,s,this.collator.evaluate(n)):t(n,o,s)}eachChild(e){e(this.lhs),e(this.rhs),this.collator&&e(this.collator)}outputDefined(){return!0}serialize(){const t=[e];return this.eachChild((e=>{t.push(e.serialize())})),t}}}const Un=jn("==",(function(e,t,i){return t===i}),Nn),Vn=jn("!=",(function(e,t,i){return t!==i}),(function(e,t,i,r){return!Nn(0,t,i,r)})),Gn=jn("<",(function(e,t,i){return t",(function(e,t,i){return t>i}),(function(e,t,i,r){return r.compare(t,i)>0})),qn=jn("<=",(function(e,t,i){return t<=i}),(function(e,t,i,r){return r.compare(t,i)<=0})),Zn=jn(">=",(function(e,t,i){return t>=i}),(function(e,t,i,r){return r.compare(t,i)>=0}));class Hn{constructor(e,t,i,r,n,o){this.type=Gt,this.number=e,this.locale=t,this.currency=i,this.unit=r,this.minFractionDigits=n,this.maxFractionDigits=o}static parse(e,t){if(3!==e.length)return t.error("Expected two arguments.");const i=t.parse(e[1],1,Vt);if(!i)return null;const r=e[2];if("object"!=typeof r||Array.isArray(r))return t.error("NumberFormat options argument must be an object.");let n=null;if(r.locale&&(n=t.parse(r.locale,1,Gt),!n))return null;let o=null;if(r.currency&&(o=t.parse(r.currency,1,Gt),!o))return null;let s=null;if(r.unit&&(s=t.parse(r.unit,1,Gt),!s))return null;let a=null;if(r["min-fraction-digits"]&&(a=t.parse(r["min-fraction-digits"],1,Vt),!a))return null;let l=null;return r["max-fraction-digits"]&&(l=t.parse(r["max-fraction-digits"],1,Vt),!l)?null:new Hn(i,n,o,s,a,l)}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:(this.currency?"currency":this.unit&&"unit")||"decimal",currency:this.currency?this.currency.evaluate(e):void 0,unit:this.unit?this.unit.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.unit&&e(this.unit),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)}outputDefined(){return!1}serialize(){const e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.unit&&(e.unit=this.unit.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]}}class Wn{constructor(e){this.type=Vt,this.input=e}static parse(e,t){if(2!==e.length)return t.error(`Expected 1 argument, but found ${e.length-1} instead.`);const i=t.parse(e[1],1);return i?"array"!==i.type.kind&&"string"!==i.type.kind&&"value"!==i.type.kind?t.error(`Expected argument of type string or array, but found ${Jt(i.type)} instead.`):new Wn(i):null}evaluate(e){const t=this.input.evaluate(e);if("string"==typeof t)return t.length;if(Array.isArray(t))return t.length;throw new bi(`Expected value to be of type string or array, but found ${Jt(gi(t))} instead.`)}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){const e=["length"];return this.eachChild((t=>{e.push(t.serialize())})),e}}function Xn(e){return function(){e=1831565813+(e|=0)|0;let t=Math.imul(e^e>>>15,1|e);return t=t+Math.imul(t^t>>>7,61|t)^t,((t^t>>>14)>>>0)/4294967296}}const Yn={"==":Un,"!=":Vn,">":$n,"<":Gn,">=":Zn,"<=":qn,array:Ei,at:Mn,boolean:Ei,case:Rn,coalesce:Tn,collator:Oi,format:Ai,image:Si,in:Cn,"index-of":Pn,interpolate:bn,"interpolate-hcl":bn,"interpolate-lab":bn,length:Wn,let:An,literal:vi,match:Ln,number:Ei,"number-format":Hn,object:Ei,slice:Bn,step:Yr,string:Ei,"to-boolean":ki,"to-color":ki,"to-number":ki,"to-string":ki,var:$r,within:nr,distance:Fr};function Kn(e,[t,i,r,n]){t=t.evaluate(e),i=i.evaluate(e),r=r.evaluate(e);const o=n?n.evaluate(e):1,s=mi(t,i,r,o);if(s)throw new bi(s);return new hi(t/255*o,i/255*o,r/255*o,o)}function Jn(e,[t,i,r,n]){t=t.evaluate(e),i=i.evaluate(e),r=r.evaluate(e);const o=n?n.evaluate(e):1,s=function(e,t,i,r){return"number"==typeof e&&e>=0&&e<=360?"number"==typeof t&&t>=0&&t<=100&&"number"==typeof i&&i>=0&&i<=100?void 0===r||"number"==typeof r&&r>=0&&r<=1?null:`Invalid hsla value [${[e,t,i,r].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid hsla value [${("number"==typeof r?[e,t,i,r]:[e,t,i]).join(", ")}]: 's', and 'l' must be between 0 and 100.`:`Invalid hsla value [${("number"==typeof r?[e,t,i,r]:[e,t,i]).join(", ")}]: 'h' must be between 0 and 360.`}(t,i,r,o);if(s)throw new bi(s);const a=`hsla(${t}, ${i}%, ${r}%, ${o})`,l=hi.parse(a);if(!l)throw new bi(`Failed to parse HSLA color: ${a}`);return l}function Qn(e,t){return e in t}function eo(e,t){const i=t[e];return void 0===i?null:i}function to(e,t){switch(e){case"string":return String(t);case"number":return+t;case"boolean":return!!t;case"color":return hi.parse(t)}return t}function io(e,t,i,r){return void 0!==r&&(e=r*Math.round(e/r)),void 0!==t&&ei&&(e=i),e}function ro(e,t,i){i.length&&(t+=`${i}`);const r=e.getConfig(t);if(!r)return null;const{type:n,value:o,values:s,minValue:a,maxValue:l,stepValue:c}=r,h=r.default.evaluate(e);let u=o?o.evaluate(e):h;return n&&(u=to(n,u)),void 0!==o&&void 0!==u&&s&&!s.includes(u)&&(u=h,n&&(u=to(n,u))),void 0===u||void 0===a&&void 0===l&&void 0===c||("number"==typeof u?u=io(u,a,l,c):Array.isArray(u)&&(u=u.map((e=>"number"==typeof e?io(e,a,l,c):e)))),u}function no(e){return{type:e}}Ri.register(Yn,{error:[{kind:"error"},[Gt],(e,[t])=>{throw new bi(t.evaluate(e))}],typeof:[Gt,[Ht],(e,[t])=>Jt(gi(t.evaluate(e)))],"to-rgba":[Kt(Vt,4),[qt],(e,[t])=>t.evaluate(e).toArray()],rgb:[qt,[Vt,Vt,Vt],Kn],rgba:[qt,[Vt,Vt,Vt,Vt],Kn],hsl:[qt,[Vt,Vt,Vt],Jn],hsla:[qt,[Vt,Vt,Vt,Vt],Jn],has:{type:$t,overloads:[[[Gt],(e,[t])=>Qn(t.evaluate(e),e.properties())],[[Gt,Zt],(e,[t,i])=>Qn(t.evaluate(e),i.evaluate(e))]]},get:{type:Ht,overloads:[[[Gt],(e,[t])=>eo(t.evaluate(e),e.properties())],[[Gt,Zt],(e,[t,i])=>eo(t.evaluate(e),i.evaluate(e))]]},config:{type:Ht,overloads:[[[Gt],(e,[t])=>ro(e,t.evaluate(e),"")],[[Gt,Gt],(e,[t,i])=>ro(e,t.evaluate(e),i.evaluate(e))]]},"feature-state":[Ht,[Gt],(e,[t])=>eo(t.evaluate(e),e.featureState||{})],properties:[Zt,[],e=>e.properties()],"geometry-type":[Gt,[],e=>e.geometryType()],id:[Ht,[],e=>e.id()],zoom:[Vt,[],e=>e.globals.zoom],pitch:[Vt,[],e=>e.globals.pitch||0],"distance-from-center":[Vt,[],e=>e.distanceFromCenter()],"measure-light":[Vt,[Gt],(e,[t])=>e.measureLight(t.evaluate(e))],"heatmap-density":[Vt,[],e=>e.globals.heatmapDensity||0],"line-progress":[Vt,[],e=>e.globals.lineProgress||0],"raster-value":[Vt,[],e=>e.globals.rasterValue||0],"sky-radial-progress":[Vt,[],e=>e.globals.skyRadialProgress||0],accumulated:[Ht,[],e=>void 0===e.globals.accumulated?null:e.globals.accumulated],"+":[Vt,no(Vt),(e,t)=>{let i=0;for(const r of t)i+=r.evaluate(e);return i}],"*":[Vt,no(Vt),(e,t)=>{let i=1;for(const r of t)i*=r.evaluate(e);return i}],"-":{type:Vt,overloads:[[[Vt,Vt],(e,[t,i])=>t.evaluate(e)-i.evaluate(e)],[[Vt],(e,[t])=>-t.evaluate(e)]]},"/":[Vt,[Vt,Vt],(e,[t,i])=>t.evaluate(e)/i.evaluate(e)],"%":[Vt,[Vt,Vt],(e,[t,i])=>t.evaluate(e)%i.evaluate(e)],ln2:[Vt,[],()=>Math.LN2],pi:[Vt,[],()=>Math.PI],e:[Vt,[],()=>Math.E],"^":[Vt,[Vt,Vt],(e,[t,i])=>Math.pow(t.evaluate(e),i.evaluate(e))],sqrt:[Vt,[Vt],(e,[t])=>Math.sqrt(t.evaluate(e))],log10:[Vt,[Vt],(e,[t])=>Math.log(t.evaluate(e))/Math.LN10],ln:[Vt,[Vt],(e,[t])=>Math.log(t.evaluate(e))],log2:[Vt,[Vt],(e,[t])=>Math.log(t.evaluate(e))/Math.LN2],sin:[Vt,[Vt],(e,[t])=>Math.sin(t.evaluate(e))],cos:[Vt,[Vt],(e,[t])=>Math.cos(t.evaluate(e))],tan:[Vt,[Vt],(e,[t])=>Math.tan(t.evaluate(e))],asin:[Vt,[Vt],(e,[t])=>Math.asin(t.evaluate(e))],acos:[Vt,[Vt],(e,[t])=>Math.acos(t.evaluate(e))],atan:[Vt,[Vt],(e,[t])=>Math.atan(t.evaluate(e))],min:[Vt,no(Vt),(e,t)=>Math.min(...t.map((t=>t.evaluate(e))))],max:[Vt,no(Vt),(e,t)=>Math.max(...t.map((t=>t.evaluate(e))))],abs:[Vt,[Vt],(e,[t])=>Math.abs(t.evaluate(e))],round:[Vt,[Vt],(e,[t])=>{const i=t.evaluate(e);return i<0?-Math.round(-i):Math.round(i)}],floor:[Vt,[Vt],(e,[t])=>Math.floor(t.evaluate(e))],ceil:[Vt,[Vt],(e,[t])=>Math.ceil(t.evaluate(e))],"filter-==":[$t,[Gt,Ht],(e,[t,i])=>e.properties()[t.value]===i.value],"filter-id-==":[$t,[Ht],(e,[t])=>e.id()===t.value],"filter-type-==":[$t,[Gt],(e,[t])=>e.geometryType()===t.value],"filter-<":[$t,[Gt,Ht],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r{const i=e.id(),r=t.value;return typeof i==typeof r&&i":[$t,[Gt,Ht],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r>n}],"filter-id->":[$t,[Ht],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i>r}],"filter-<=":[$t,[Gt,Ht],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r<=n}],"filter-id-<=":[$t,[Ht],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i<=r}],"filter->=":[$t,[Gt,Ht],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r>=n}],"filter-id->=":[$t,[Ht],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i>=r}],"filter-has":[$t,[Ht],(e,[t])=>t.value in e.properties()],"filter-has-id":[$t,[],e=>null!==e.id()&&void 0!==e.id()],"filter-type-in":[$t,[Kt(Gt)],(e,[t])=>t.value.indexOf(e.geometryType())>=0],"filter-id-in":[$t,[Kt(Ht)],(e,[t])=>t.value.indexOf(e.id())>=0],"filter-in-small":[$t,[Gt,Kt(Ht)],(e,[t,i])=>i.value.indexOf(e.properties()[t.value])>=0],"filter-in-large":[$t,[Gt,Kt(Ht)],(e,[t,i])=>function(e,t,i,r){for(;i<=r;){const n=i+r>>1;if(t[n]===e)return!0;t[n]>e?r=n-1:i=n+1}return!1}(e.properties()[t.value],i.value,0,i.value.length-1)],all:{type:$t,overloads:[[[$t,$t],(e,[t,i])=>t.evaluate(e)&&i.evaluate(e)],[no($t),(e,t)=>{for(const i of t)if(!i.evaluate(e))return!1;return!0}]]},any:{type:$t,overloads:[[[$t,$t],(e,[t,i])=>t.evaluate(e)||i.evaluate(e)],[no($t),(e,t)=>{for(const i of t)if(i.evaluate(e))return!0;return!1}]]},"!":[$t,[$t],(e,[t])=>!t.evaluate(e)],"is-supported-script":[$t,[Gt],(e,[t])=>{const i=e.globals&&e.globals.isSupportedScript;return!i||i(t.evaluate(e))}],upcase:[Gt,[Gt],(e,[t])=>t.evaluate(e).toUpperCase()],downcase:[Gt,[Gt],(e,[t])=>t.evaluate(e).toLowerCase()],concat:[Gt,no(Ht),(e,t)=>t.map((t=>yi(t.evaluate(e)))).join("")],"resolved-locale":[Gt,[Wt],(e,[t])=>t.evaluate(e).resolvedLocale()],random:[Vt,[Vt,Vt,Ht],(e,t)=>{const[i,r,n]=t.map((t=>t.evaluate(e)));if(i>r)return i;if(i===r)return i;let o;if("string"==typeof n)o=function(e){let t=0;if(0===e.length)return t;for(let i=0;i-1}function co(e){return"data-driven"===e["property-type"]}function ho(e){return lo(e.expression,"measure-light")}function uo(e){return lo(e.expression,"zoom")}function po(e){return!!e.expression&&e.expression.interpolated}function fo(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function mo(e){return e}function _o(e,t){const i="color"===t.type,r=e.stops&&"object"==typeof e.stops[0][0],n=r||!(r||void 0!==e.property),o=e.type||(po(t)?"exponential":"interval");if(i&&((e=Dt({},e)).stops&&(e.stops=e.stops.map((e=>[e[0],hi.parse(e[1])]))),e.default=hi.parse(e.default?e.default:t.default)),e.colorSpace&&"rgb"!==e.colorSpace&&!yn[e.colorSpace])throw new Error(`Unknown color space: ${e.colorSpace}`);let s,a,l;if("exponential"===o)s=vo;else if("interval"===o)s=xo;else if("categorical"===o){s=yo,a=Object.create(null);for(const t of e.stops)a[t[0]]=t[1];l=typeof e.stops[0][0]}else{if("identity"!==o)throw new Error(`Unknown function type "${o}"`);s=bo}if(r){const i={},r=[];for(let t=0;te[0])),evaluate:({zoom:i},r)=>vo({stops:n,base:e.base},t,i).evaluate(i,r)}}if(n){const i="exponential"===o?{name:"exponential",base:void 0!==e.base?e.base:1}:null;return{kind:"camera",interpolationType:i,interpolationFactor:bn.interpolationFactor.bind(void 0,i),zoomStops:e.stops.map((e=>e[0])),evaluate:({zoom:i})=>s(e,t,i,a,l)}}return{kind:"source",evaluate(i,r){const n=r&&r.properties?r.properties[e.property]:void 0;return void 0===n?go(e.default,t.default):s(e,t,n,a,l)}}}function go(e,t,i){return void 0!==e?e:void 0!==t?t:void 0!==i?i:void 0}function yo(e,t,i,r,n){return go(typeof i===n?r[i]:void 0,e.default,t.default)}function xo(e,t,i){if("number"!==Mi(i))return go(e.default,t.default);const r=e.stops.length;if(1===r)return e.stops[0][1];if(i<=e.stops[0][0])return e.stops[0][1];if(i>=e.stops[r-1][0])return e.stops[r-1][1];const n=Wr(e.stops.map((e=>e[0])),i);return e.stops[n][1]}function vo(e,t,i){const r=void 0!==e.base?e.base:1;if("number"!==Mi(i))return go(e.default,t.default);const n=e.stops.length;if(1===n)return e.stops[0][1];if(i<=e.stops[0][0])return e.stops[0][1];if(i>=e.stops[n-1][0])return e.stops[n-1][1];const o=Wr(e.stops.map((e=>e[0])),i),s=function(e,t,i,r){const n=r-i,o=e-i;return 0===n?0:1===t?o/n:(Math.pow(t,o)-1)/(Math.pow(t,n)-1)}(i,r,e.stops[o][0],e.stops[o+1][0]),a=e.stops[o][1],l=e.stops[o+1][1];let c=Qr[t.type]||mo;if(e.colorSpace&&"rgb"!==e.colorSpace){const t=yn[e.colorSpace];c=(e,i)=>t.reverse(t.interpolate(t.forward(e),t.forward(i),s))}return"function"==typeof a.evaluate?{evaluate(...e){const t=a.evaluate.apply(void 0,e),i=l.evaluate.apply(void 0,e);if(void 0!==t&&void 0!==i)return c(t,i,s)}}:c(a,l,s)}function bo(e,t,i){return"color"===t.type?i=hi.parse(i):"formatted"===t.type?i=pi.fromString(i.toString()):"resolvedImage"===t.type?i=fi.fromString(i.toString()):Mi(i)===t.type||"enum"===t.type&&t.values[i]||(i=void 0),go(i,e.default,t.default)}class wo{constructor(e,t,i){this.expression=e,this._warningHistory={},this._evaluator=new zi(i),this._defaultValue=t?function(e){return"color"===e.type&&(fo(e.default)||Array.isArray(e.default))?new hi(0,0,0,0):"color"===e.type?hi.parse(e.default)||null:void 0===e.default?null:e.default}(t):null,this._enumValues=t&&"enum"===t.type?t.values:null}evaluateWithoutErrorHandling(e,t,i,r,n,o,s,a){return this._evaluator.globals=e,this._evaluator.feature=t,this._evaluator.featureState=i,this._evaluator.canonical=r||null,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=o,this._evaluator.featureTileCoord=s||null,this._evaluator.featureDistanceData=a||null,this.expression.evaluate(this._evaluator)}evaluate(e,t,i,r,n,o,s,a){this._evaluator.globals=e,this._evaluator.feature=t||null,this._evaluator.featureState=i||null,this._evaluator.canonical=r||null,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=o||null,this._evaluator.featureTileCoord=s||null,this._evaluator.featureDistanceData=a||null;try{const e=this.expression.evaluate(this._evaluator);if(null==e||"number"==typeof e&&e!=e)return this._defaultValue;if(this._enumValues&&!(e in this._enumValues))throw new bi(`Expected value to be one of ${Object.keys(this._enumValues).map((e=>JSON.stringify(e))).join(", ")}, but found ${JSON.stringify(e)} instead.`);return e}catch(e){return this._warningHistory[e.message]||(this._warningHistory[e.message]=!0,"undefined"!=typeof console&&console.warn(e.message)),this._defaultValue}}}function To(e){return Array.isArray(e)&&e.length>0&&"string"==typeof e[0]&&e[0]in oo}function Eo(e,t,i){const r=new Zr(oo,[],t?function(e){const t={color:qt,string:Gt,number:Vt,enum:Gt,boolean:$t,formatted:Xt,resolvedImage:Yt};return"array"===e.type?Kt(t[e.value]||Ht,e.length):t[e.type]}(t):void 0,void 0,void 0,i),n=r.parse(e,void 0,void 0,void 0,t&&"string"===t.type?{typeAnnotation:"coerce"}:void 0);return n?so(new wo(n,t,i)):ao(r.errors)}class Ao{constructor(e,t,i){this.kind=e,this._styleExpression=t,this.isLightConstant=i,this.isStateDependent="constant"!==e&&!jr(t.expression),this.isConfigDependent=!Ur(t.expression)}evaluateWithoutErrorHandling(e,t,i,r,n,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,i,r,n,o)}evaluate(e,t,i,r,n,o){return this._styleExpression.evaluate(e,t,i,r,n,o)}}class So{constructor(e,t,i,r,n){this.kind=e,this.zoomStops=i,this._styleExpression=t,this.isStateDependent="camera"!==e&&!jr(t.expression),this.isLightConstant=n,this.isConfigDependent=!Ur(t.expression),this.interpolationType=r}evaluateWithoutErrorHandling(e,t,i,r,n,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,i,r,n,o)}evaluate(e,t,i,r,n,o){return this._styleExpression.evaluate(e,t,i,r,n,o)}interpolationFactor(e,t,i){return this.interpolationType?bn.interpolationFactor(this.interpolationType,e,t,i):0}}function Mo(e,t,i){if("error"===(e=Eo(e,t,i)).result)return e;const r=e.value.expression,n=Nr(r);if(!n&&!co(t))return ao([new Ft("","data expressions not supported")]);const o=Vr(r,["zoom","pitch","distance-from-center"]);if(!o&&!uo(t))return ao([new Ft("","zoom expressions not supported")]);const s=Vr(r,["measure-light"]);if(!s&&!ho(t))return ao([new Ft("","measure-light expression not supported")]);const a=t.expression&&t.expression.relaxZoomRestriction,l=Co(r);return l||o||a?l instanceof Ft?ao([l]):l instanceof bn&&!po(t)?ao([new Ft("",'"interpolate" expressions cannot be used with this property')]):so(l?new So(n?"camera":"composite",e.value,l.labels,l instanceof bn?l.interpolation:void 0,s):new Ao(n?"constant":"source",e.value,s)):ao([new Ft("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression, or in the properties of atmosphere.')])}class Io{constructor(e,t){this._parameters=e,this._specification=t,Dt(this,_o(this._parameters,this._specification))}static deserialize(e){return new Io(e._parameters,e._specification)}static serialize(e){return{_parameters:e._parameters,_specification:e._specification}}}function Co(e){let t=null;if(e instanceof An)t=Co(e.result);else if(e instanceof Tn){for(const i of e.args)if(t=Co(i),t)break}else(e instanceof Yr||e instanceof bn)&&e.input instanceof Ri&&"zoom"===e.input.name&&(t=e);return t instanceof Ft||e.eachChild((e=>{const i=Co(e);i instanceof Ft?t=i:t&&i&&t!==i&&(t=new Ft("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))})),t}function ko(e){const t=e.key,i=e.value,r=e.valueSpec||{},n=e.objectElementValidators||{},o=e.style,s=e.styleSpec;let a=[];const l=Mi(i);if("object"!==l)return[new zt(t,i,`object expected, ${l} found`)];for(const e in i){const l=e.split(".")[0];let c;n[l]?c=n[l]:r[l]?c=ds:n["*"]?c=n["*"]:r["*"]&&(c=ds),c?a=a.concat(c({key:(t?`${t}.`:t)+e,value:i[e],valueSpec:r[l]||r["*"],style:o,styleSpec:s,object:i,objectKey:e},i)):a.push(new Lt(t,i[e],`unknown property "${e}"`))}for(const e in r)n[e]||r[e].required&&void 0===r[e].default&&void 0===i[e]&&a.push(new zt(t,i,`missing required property "${e}"`));return a}function Po(e){const t=e.value,i=e.valueSpec,r=e.style,n=e.styleSpec,o=e.key,s=e.arrayElementValidator||ds;if("array"!==Mi(t))return[new zt(o,t,`array expected, ${Mi(t)} found`)];if(i.length&&t.length!==i.length)return[new zt(o,t,`array length ${i.length} expected, length ${t.length} found`)];if(i["min-length"]&&t.lengthn)return[new zt(t,i,`${i} is greater than the maximum value ${n}`)]}return[]}function Lo(e){const t=e.valueSpec,i=Rt(e.value.type);let r,n,o,s={};const a="categorical"!==i&&void 0===e.value.property,l=!a,c="array"===Mi(e.value.stops)&&"array"===Mi(e.value.stops[0])&&"object"===Mi(e.value.stops[0][0]),h=ko({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:function(e){if("identity"===i)return[new zt(e.key,e.value,'identity function may not have a "stops" property')];let t=[];const r=e.value;return t=t.concat(Po({key:e.key,value:r,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:u})),"array"===Mi(r)&&0===r.length&&t.push(new zt(e.key,r,"array must have at least one stop")),t},default:function(e){return ds({key:e.key,value:e.value,valueSpec:t,style:e.style,styleSpec:e.styleSpec})}}});return"identity"===i&&a&&h.push(new zt(e.key,e.value,'missing required property "property"')),"identity"===i||e.value.stops||h.push(new zt(e.key,e.value,'missing required property "stops"')),"exponential"===i&&e.valueSpec.expression&&!po(e.valueSpec)&&h.push(new zt(e.key,e.value,"exponential functions not supported")),e.styleSpec.$version>=8&&(l&&!co(e.valueSpec)?h.push(new zt(e.key,e.value,"property functions not supported")):a&&!uo(e.valueSpec)&&h.push(new zt(e.key,e.value,"zoom functions not supported"))),"categorical"!==i&&!c||void 0!==e.value.property||h.push(new zt(e.key,e.value,'"property" property is required')),h;function u(e){let i=[];const r=e.value,a=e.key;if("array"!==Mi(r))return[new zt(a,r,`array expected, ${Mi(r)} found`)];if(2!==r.length)return[new zt(a,r,`array length 2 expected, length ${r.length} found`)];if(c){if("object"!==Mi(r[0]))return[new zt(a,r,`object expected, ${Mi(r[0])} found`)];if(void 0===r[0].zoom)return[new zt(a,r,"object stop key must have zoom")];if(void 0===r[0].value)return[new zt(a,r,"object stop key must have value")];const t=Rt(r[0].zoom);if("number"!=typeof t)return[new zt(a,r[0].zoom,"stop zoom values must be numbers")];if(o&&o>t)return[new zt(a,r[0].zoom,"stop zoom values must appear in ascending order")];t!==o&&(o=t,n=void 0,s={}),i=i.concat(ko({key:`${a}[0]`,value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:zo,value:d}}))}else i=i.concat(d({key:`${a}[0]`,value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec},r));return To(Ot(r[1]))?i.concat([new zt(`${a}[1]`,r[1],"expressions are not allowed in function stops.")]):i.concat(ds({key:`${a}[1]`,value:r[1],valueSpec:t,style:e.style,styleSpec:e.styleSpec}))}function d(e,o){const a=Mi(e.value),l=Rt(e.value),c=null!==e.value?e.value:o;if(r){if(a!==r)return[new zt(e.key,c,`${a} stop domain type must match previous stop domain type ${r}`)]}else r=a;if("number"!==a&&"string"!==a&&"boolean"!==a&&"number"!=typeof l&&"string"!=typeof l&&"boolean"!=typeof l)return[new zt(e.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==a&&"categorical"!==i){let r=`number expected, ${a} found`;return co(t)&&void 0===i&&(r+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new zt(e.key,c,r)]}return"categorical"!==i||"number"!==a||"number"==typeof l&&isFinite(l)&&Math.floor(l)===l?"categorical"!==i&&"number"===a&&"number"==typeof l&&"number"==typeof n&&void 0!==n&&lnew zt(`${e.key}${t.key}`,e.value,t.message)));const i=t.value.expression||t.value._styleExpression.expression;if("property"===e.expressionContext&&"text-font"===e.propertyKey&&!i.outputDefined())return[new zt(e.key,e.value,`Invalid data expression for "${e.propertyKey}". Output values must be contained as literals within the expression.`)];if("property"===e.expressionContext&&"layout"===e.propertyType&&!jr(i))return[new zt(e.key,e.value,'"feature-state" data expressions are not supported with layout properties.')];if("filter"===e.expressionContext)return Ro(i,e);if(e.expressionContext&&0===e.expressionContext.indexOf("cluster")){if(!Vr(i,["zoom","feature-state"]))return[new zt(e.key,e.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if("cluster-initial"===e.expressionContext&&!Nr(i))return[new zt(e.key,e.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Ro(e,t){const i=new Set(["zoom","feature-state","pitch","distance-from-center"]);if(t.valueSpec&&t.valueSpec.expression)for(const e of t.valueSpec.expression.parameters)i.delete(e);if(0===i.size)return[];const r=[];return e instanceof Ri&&i.has(e.name)?[new zt(t.key,t.value,`["${e.name}"] expression is not supported in a filter for a ${t.object.type} layer with id: ${t.object.id}`)]:(e.eachChild((e=>{r.push(...Ro(e,t))})),r)}function Oo(e){const t=e.key,i=e.value,r=e.valueSpec,n=[];return Array.isArray(r.values)?-1===r.values.indexOf(Rt(i))&&n.push(new zt(t,i,`expected one of [${r.values.join(", ")}], ${JSON.stringify(i)} found`)):-1===Object.keys(r.values).indexOf(Rt(i))&&n.push(new zt(t,i,`expected one of [${Object.keys(r.values).join(", ")}], ${JSON.stringify(i)} found`)),n}function Bo(e){if(!0===e||!1===e)return!0;if(!Array.isArray(e)||0===e.length)return!1;switch(e[0]){case"has":return e.length>=2&&"$id"!==e[1]&&"$type"!==e[1];case"in":return e.length>=3&&("string"!=typeof e[1]||Array.isArray(e[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==e.length||Array.isArray(e[1])||Array.isArray(e[2]);case"any":case"all":for(const t of e.slice(1))if(!Bo(t)&&"boolean"!=typeof t)return!1;return!0;default:return!0}}function Fo(e,t="fill"){if(null==e)return{filter:()=>!0,needGeometry:!1,needFeature:!1};Bo(e)||(e=qo(e));const i=e;let r=!0;try{r=function(e){if(!Uo(e))return e;let t=Ot(e);return jo(t),t=No(t),t}(i)}catch(e){console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate.\nThis is most likely a bug, please report this via https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.md\nand paste the contents of this message in the report.\nThank you!\nFilter Expression:\n${JSON.stringify(i,null,2)}\n `)}const n=Pt[`filter_${t}`],o=Eo(r,n);let s=null;if("error"===o.result)throw new Error(o.value.map((e=>`${e.key}: ${e.message}`)).join(", "));s=(e,t,i)=>o.value.evaluate(e,t,{},i);let a=null,l=null;if(r!==i){const e=Eo(i,n);if("error"===e.result)throw new Error(e.value.map((e=>`${e.key}: ${e.message}`)).join(", "));a=(t,i,r,n,o)=>e.value.evaluate(t,i,{},r,void 0,void 0,n,o),l=!Nr(e.value.expression)}return{filter:s,dynamicFilter:a||void 0,needGeometry:$o(r),needFeature:!!l}}function No(e){if(!Array.isArray(e))return e;const t=function(e){if(Vo.has(e[0]))for(let t=1;tNo(e)))}function jo(e){let t=!1;const i=[];if("case"===e[0]){for(let r=1;r",">=","<","<=","to-boolean"]);function Go(e,t){return et?1:0}function $o(e){if(!Array.isArray(e))return!1;if("within"===e[0]||"distance"===e[0])return!0;for(let t=1;t"===t||"<="===t||">="===t?Zo(e[1],e[2],t):"any"===t?(i=e.slice(1),["any"].concat(i.map(qo))):"all"===t?["all"].concat(e.slice(1).map(qo)):"none"===t?["all"].concat(e.slice(1).map(qo).map(Xo)):"in"===t?Ho(e[1],e.slice(2)):"!in"===t?Xo(Ho(e[1],e.slice(2))):"has"===t?Wo(e[1]):"!has"!==t||Xo(Wo(e[1]));var i}function Zo(e,t,i){switch(e){case"$type":return[`filter-type-${i}`,t];case"$id":return[`filter-id-${i}`,t];default:return[`filter-${i}`,e,t]}}function Ho(e,t){if(0===t.length)return!1;switch(e){case"$type":return["filter-type-in",["literal",t]];case"$id":return["filter-id-in",["literal",t]];default:return t.length>200&&!t.some((e=>typeof e!=typeof t[0]))?["filter-in-large",e,["literal",t.sort(Go)]]:["filter-in-small",e,["literal",t]]}}function Wo(e){switch(e){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",e]}}function Xo(e){return["!",e]}function Yo(e){return Bo(Ot(e.value))?Do(Dt({},e,{expressionContext:"filter",valueSpec:e.styleSpec[`filter_${e.layerType||"fill"}`]})):Ko(e)}function Ko(e){const t=e.value,i=e.key;if("array"!==Mi(t))return[new zt(i,t,`array expected, ${Mi(t)} found`)];const r=e.styleSpec;let n,o=[];if(t.length<1)return[new zt(i,t,"filter array must have at least 1 element")];switch(o=o.concat(Oo({key:`${i}[0]`,value:t[0],valueSpec:r.filter_operator,style:e.style,styleSpec:e.styleSpec})),Rt(t[0])){case"<":case"<=":case">":case">=":t.length>=2&&"$type"===Rt(t[1])&&o.push(new zt(i,t,`"$type" cannot be use with operator "${t[0]}"`));case"==":case"!=":3!==t.length&&o.push(new zt(i,t,`filter array for operator "${t[0]}" must have 3 elements`));case"in":case"!in":t.length>=2&&(n=Mi(t[1]),"string"!==n&&o.push(new zt(`${i}[1]`,t[1],`string expected, ${n} found`)));for(let s=2;s{e in i&&t.push(new zt(r,i[e],`"${e}" is prohibited for ref layers`))})),n.layers.forEach((t=>{Rt(t.id)===a&&(e=t)})),e?e.ref?t.push(new zt(r,i.ref,"ref cannot reference another ref layer")):s=Rt(e.type):"string"==typeof a&&t.push(new zt(r,i.ref,`ref layer "${a}" not found`))}else if("background"!==s&&"sky"!==s&&"slot"!==s)if(i.source){const e=n.sources&&n.sources[i.source],o=e&&Rt(e.type);e?"vector"===o&&"raster"===s?t.push(new zt(r,i.source,`layer "${i.id}" requires a raster source`)):"raster"===o&&"raster"!==s?t.push(new zt(r,i.source,`layer "${i.id}" requires a vector source`)):"vector"!==o||i["source-layer"]?"raster-dem"===o&&"hillshade"!==s?t.push(new zt(r,i.source,"raster-dem source can only be used with layer type 'hillshade'.")):"line"!==s||!i.paint||!i.paint["line-gradient"]&&!i.paint["line-trim-offset"]||"geojson"===o&&e.lineMetrics||t.push(new zt(r,i,`layer "${i.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):t.push(new zt(r,i,`layer "${i.id}" must specify a "source-layer"`)):t.push(new zt(r,i.source,`source "${i.source}" not found`))}else t.push(new zt(r,i,'missing required property "source"'));return t=t.concat(ko({key:r,value:i,valueSpec:o.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":()=>[],type:()=>ds({key:`${r}.type`,value:i.type,valueSpec:o.layer.type,style:e.style,styleSpec:e.styleSpec,object:i,objectKey:"type"}),filter:e=>Yo(Dt({layerType:s},e)),layout:e=>ko({layer:i,key:e.key,value:e.value,valueSpec:{},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":e=>es(Dt({layerType:s},e))}}),paint:e=>ko({layer:i,key:e.key,value:e.value,valueSpec:{},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{"*":e=>Qo(Dt({layerType:s,layer:i},e))}})}})),t}function is(e){const t=e.value,i=e.key,r=Mi(t);return"string"!==r?[new zt(i,t,`string expected, ${r} found`)]:[]}const rs={promoteId:function({key:e,value:t}){if("string"===Mi(t))return is({key:e,value:t});{const i=[];for(const r in t)i.push(...is({key:`${e}.${r}`,value:t[r]}));return i}}};function ns(e){const t=e.value,i=e.key,r=e.styleSpec,n=e.style;if(!t.type)return[new zt(i,t,'"type" is required')];const o=Rt(t.type);let s=[];switch(["vector","raster","raster-dem"].includes(o)&&(t.url||t.tiles||s.push(new zt(i,t,'Either "url" or "tiles" is required.'))),o){case"vector":case"raster":case"raster-dem":return s=s.concat(ko({key:i,value:t,valueSpec:r[`source_${o.replace("-","_")}`],style:e.style,styleSpec:r,objectElementValidators:rs})),s;case"geojson":if(s=ko({key:i,value:t,valueSpec:r.source_geojson,style:n,styleSpec:r,objectElementValidators:rs}),t.cluster)for(const e in t.clusterProperties){const[r,n]=t.clusterProperties[e],o="string"==typeof r?[r,["accumulated"],["get",e]]:r;s.push(...Do({key:`${i}.${e}.map`,value:n,expressionContext:"cluster-map"})),s.push(...Do({key:`${i}.${e}.reduce`,value:o,expressionContext:"cluster-reduce"}))}return s;case"video":return ko({key:i,value:t,valueSpec:r.source_video,style:n,styleSpec:r});case"image":return ko({key:i,value:t,valueSpec:r.source_image,style:n,styleSpec:r});case"canvas":return[new zt(i,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Oo({key:`${i}.type`,value:t.type,valueSpec:{values:os(r)},style:n,styleSpec:r})}}function os(e){return e.source.reduce(((t,i)=>{const r=e[i];return"enum"===r.type.type&&(t=t.concat(Object.keys(r.type.values))),t}),[])}function ss(e){const t=e.value;let i=[];if(!t)return i;const r=Mi(t);return"string"!==r?(i=i.concat([new zt(e.key,t,`string expected, "${r}" found`)]),i):(function(e){const t=-1===e.indexOf("://");try{return new URL(e,t?"http://example.com":void 0),!0}catch(e){return!1}}(t)||(i=i.concat([new zt(e.key,t,`invalid url "${t}"`)])),i)}function as(e){const t=e.value,i=e.styleSpec,r=i.light,n=e.style;let o=[];const s=Mi(t);if(void 0===t)return o;if("object"!==s)return o=o.concat([new zt("light",t,`object expected, ${s} found`)]),o;for(const e in t){const s=e.match(/^(.*)-transition$/);o=o.concat(s&&r[s[1]]&&r[s[1]].transition?ds({key:e,value:t[e],valueSpec:i.transition,style:n,styleSpec:i}):r[e]?ds({key:e,value:t[e],valueSpec:r[e],style:n,styleSpec:i}):[new zt(e,t[e],`unknown property "${e}"`)])}return o}function ls(e){const t=e.value;let i=[];if(!t)return i;const r=Mi(t);if("object"!==r)return i=i.concat([new zt("light-3d",t,`object expected, ${r} found`)]),i;const n=e.styleSpec,o=n["light-3d"],s=e.key,a=e.style,l=e.style.lights;for(const e of["type","id"])if(!(e in t))return i=i.concat([new zt("light-3d",t,`missing property ${e} on light`)]),i;if(t.type&&l)for(let r=0;r[],array:Po,boolean:function(e){const t=e.value,i=e.key,r=Mi(t);return"boolean"!==r?[new zt(i,t,`boolean expected, ${r} found`)]:[]},number:zo,color:function(e){const t=e.key,i=e.value,r=Mi(i);return"string"!==r?[new zt(t,i,`color expected, ${r} found`)]:null===ri(i)?[new zt(t,i,`color expected, "${i}" found`)]:[]},enum:Oo,filter:Yo,function:Lo,layer:ts,object:ko,source:ns,model:ss,light:as,"light-3d":ls,terrain:cs,fog:hs,string:is,formatted:function(e){return 0===is(e).length?[]:Do(e)},resolvedImage:function(e){return 0===is(e).length?[]:Do(e)},projection:function(e){const t=e.value,i=e.styleSpec,r=i.projection,n=e.style;let o=[];const s=Mi(t);if("object"===s)for(const e in t)o=o.concat(ds({key:e,value:t[e],valueSpec:r[e],style:n,styleSpec:i}));else"string"!==s&&(o=o.concat([new zt("projection",t,`object or string expected, ${s} found`)]));return o},import:function(e){const{value:t,styleSpec:i}=e,{data:r,...n}=t;Object.defineProperty(n,"__line__",{value:t.__line__,enumerable:!1});let o=ko(Dt({},e,{value:n,valueSpec:i.import}));return""===Rt(n.id)&&o.push(new zt(`${e.key}.id`,n,"import id can't be an empty string")),r&&(o=o.concat(fs(r,i,{key:`${e.key}.data`}))),o}};function ds(e,t=!1){const i=e.value,r=e.valueSpec,n=e.styleSpec;if(r.expression&&fo(Rt(i)))return Lo(e);if(r.expression&&To(Ot(i)))return Do(e);if(r.type&&us[r.type]){const i=us[r.type](e);return!0===t&&i.length>0&&"array"===Mi(e.value)?Do(e):i}return ko(Dt({},e,{valueSpec:r.type?n[r.type]:r}))}function ps(e){const t=e.value,i=e.key,r=is(e);return r.length||(-1===t.indexOf("{fontstack}")&&r.push(new zt(i,t,'"glyphs" url must include a "{fontstack}" token')),-1===t.indexOf("{range}")&&r.push(new zt(i,t,'"glyphs" url must include a "{range}" token'))),r}function fs(e,t=Pt,i={}){return ds({key:i.key||"",value:e,valueSpec:t.$root,styleSpec:t,style:e,objectElementValidators:{glyphs:ps,"*":()=>[]}})}function ms(e,t=Pt){return Ss(fs(e,t))}const _s=e=>Ss(ns(e)),gs=e=>Ss(as(e)),ys=e=>Ss(ls(e)),xs=e=>Ss(cs(e)),vs=e=>Ss(hs(e)),bs=e=>Ss(ts(e)),ws=e=>Ss(Yo(e)),Ts=e=>Ss(Qo(e)),Es=e=>Ss(es(e)),As=e=>Ss(ss(e));function Ss(e){return e.slice().sort(((e,t)=>e.line&&t.line?e.line-t.line:0))}function Ms(e,t){let i=!1;if(t&&t.length)for(const r of t)r instanceof Lt?W(r.message):(e.fire(new Ct(new Error(r.message))),i=!0);return i}var Is=ks,Cs=3;function ks(e,t,i){var r=this.cells=[];if(e instanceof ArrayBuffer){this.arrayBuffer=e;var n=new Int32Array(this.arrayBuffer);e=n[0],this.d=(t=n[1])+2*(i=n[2]);for(var o=0;o=h[p+0]&&r>=h[p+1])?(s[d]=!0,o.push(c[d])):s[d]=!1}}},ks.prototype._forEachCell=function(e,t,i,r,n,o,s,a){for(var l=this._convertToCellCoord(e),c=this._convertToCellCoord(t),h=this._convertToCellCoord(i),u=this._convertToCellCoord(r),d=l;d<=h;d++)for(var p=c;p<=u;p++){var f=this.d*p+d;if((!a||a(this._convertFromCellCoord(d),this._convertFromCellCoord(p),this._convertFromCellCoord(d+1),this._convertFromCellCoord(p+1)))&&n.call(this,e,t,i,r,f,o,s,a))return}},ks.prototype._convertFromCellCoord=function(e){return(e-this.padding)/this.scale},ks.prototype._convertToCellCoord=function(e){return Math.max(0,Math.min(this.d-1,Math.floor(e*this.scale)+this.padding))},ks.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var e=this.cells,t=Cs+this.cells.length+1+1,i=0,r=0;r=0||(n[t]=Os(e[t],i)));e instanceof Error&&(n.message=e.message)}if(n.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==r&&(n.$name=r),n}throw new Error("can't serialize object of type "+typeof e)}function Bs(e){if(null==e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||e instanceof Boolean||e instanceof Number||e instanceof String||e instanceof Date||e instanceof RegExp||Ds(e)||Rs(e)||ArrayBuffer.isView(e)||e instanceof t.ImageData)return e;if(Array.isArray(e))return e.map(Bs);if("object"==typeof e){const t=e.$name||"Object";if("Map"===t){const t=new Map;for(const i of Object.keys(e))"$name"!==i&&t.set(i,Bs(e[i]));return t}const{klass:i}=zs[t];if(!i)throw new Error(`can't deserialize unregistered class ${t}`);if(i.deserialize)return i.deserialize(e);const r=Object.create(i.prototype);for(const t of Object.keys(e))"$name"!==t&&(r[t]=Bs(e[t]));return r}throw new Error("can't deserialize object of type "+typeof e)}const Fs={"Latin-1 Supplement":e=>e>=128&&e<=255,Arabic:e=>e>=1536&&e<=1791,"Arabic Supplement":e=>e>=1872&&e<=1919,"Arabic Extended-A":e=>e>=2208&&e<=2303,"Hangul Jamo":e=>e>=4352&&e<=4607,"Unified Canadian Aboriginal Syllabics":e=>e>=5120&&e<=5759,Khmer:e=>e>=6016&&e<=6143,"Unified Canadian Aboriginal Syllabics Extended":e=>e>=6320&&e<=6399,"General Punctuation":e=>e>=8192&&e<=8303,"Letterlike Symbols":e=>e>=8448&&e<=8527,"Number Forms":e=>e>=8528&&e<=8591,"Miscellaneous Technical":e=>e>=8960&&e<=9215,"Control Pictures":e=>e>=9216&&e<=9279,"Optical Character Recognition":e=>e>=9280&&e<=9311,"Enclosed Alphanumerics":e=>e>=9312&&e<=9471,"Geometric Shapes":e=>e>=9632&&e<=9727,"Miscellaneous Symbols":e=>e>=9728&&e<=9983,"Miscellaneous Symbols and Arrows":e=>e>=11008&&e<=11263,"CJK Radicals Supplement":e=>e>=11904&&e<=12031,"Kangxi Radicals":e=>e>=12032&&e<=12255,"Ideographic Description Characters":e=>e>=12272&&e<=12287,"CJK Symbols and Punctuation":e=>e>=12288&&e<=12351,Hiragana:e=>e>=12352&&e<=12447,Katakana:e=>e>=12448&&e<=12543,Bopomofo:e=>e>=12544&&e<=12591,"Hangul Compatibility Jamo":e=>e>=12592&&e<=12687,Kanbun:e=>e>=12688&&e<=12703,"Bopomofo Extended":e=>e>=12704&&e<=12735,"CJK Strokes":e=>e>=12736&&e<=12783,"Katakana Phonetic Extensions":e=>e>=12784&&e<=12799,"Enclosed CJK Letters and Months":e=>e>=12800&&e<=13055,"CJK Compatibility":e=>e>=13056&&e<=13311,"CJK Unified Ideographs Extension A":e=>e>=13312&&e<=19903,"Yijing Hexagram Symbols":e=>e>=19904&&e<=19967,"CJK Unified Ideographs":e=>e>=19968&&e<=40959,"Yi Syllables":e=>e>=40960&&e<=42127,"Yi Radicals":e=>e>=42128&&e<=42191,"Hangul Jamo Extended-A":e=>e>=43360&&e<=43391,"Hangul Syllables":e=>e>=44032&&e<=55215,"Hangul Jamo Extended-B":e=>e>=55216&&e<=55295,"Private Use Area":e=>e>=57344&&e<=63743,"CJK Compatibility Ideographs":e=>e>=63744&&e<=64255,"Arabic Presentation Forms-A":e=>e>=64336&&e<=65023,"Vertical Forms":e=>e>=65040&&e<=65055,"CJK Compatibility Forms":e=>e>=65072&&e<=65103,"Small Form Variants":e=>e>=65104&&e<=65135,"Arabic Presentation Forms-B":e=>e>=65136&&e<=65279,"Halfwidth and Fullwidth Forms":e=>e>=65280&&e<=65519,"CJK Unified Ideographs Extension B":e=>e>=131072&&e<=173791};function Ns(e){for(const t of e)if(Vs(t.charCodeAt(0)))return!0;return!1}function js(e){for(const t of e)if(!Us(t.charCodeAt(0)))return!1;return!0}function Us(e){return!(Fs.Arabic(e)||Fs["Arabic Supplement"](e)||Fs["Arabic Extended-A"](e)||Fs["Arabic Presentation Forms-A"](e)||Fs["Arabic Presentation Forms-B"](e))}function Vs(e){return!(746!==e&&747!==e&&(e<4352||!(Fs["Bopomofo Extended"](e)||Fs.Bopomofo(e)||Fs["CJK Compatibility Forms"](e)&&!(e>=65097&&e<=65103)||Fs["CJK Compatibility Ideographs"](e)||Fs["CJK Compatibility"](e)||Fs["CJK Radicals Supplement"](e)||Fs["CJK Strokes"](e)||!(!Fs["CJK Symbols and Punctuation"](e)||e>=12296&&e<=12305||e>=12308&&e<=12319||12336===e)||Fs["CJK Unified Ideographs Extension A"](e)||Fs["CJK Unified Ideographs"](e)||Fs["Enclosed CJK Letters and Months"](e)||Fs["Hangul Compatibility Jamo"](e)||Fs["Hangul Jamo Extended-A"](e)||Fs["Hangul Jamo Extended-B"](e)||Fs["Hangul Jamo"](e)||Fs["Hangul Syllables"](e)||Fs.Hiragana(e)||Fs["Ideographic Description Characters"](e)||Fs.Kanbun(e)||Fs["Kangxi Radicals"](e)||Fs["Katakana Phonetic Extensions"](e)||Fs.Katakana(e)&&12540!==e||!(!Fs["Halfwidth and Fullwidth Forms"](e)||65288===e||65289===e||65293===e||e>=65306&&e<=65310||65339===e||65341===e||65343===e||e>=65371&&e<=65503||65507===e||e>=65512&&e<=65519)||!(!Fs["Small Form Variants"](e)||e>=65112&&e<=65118||e>=65123&&e<=65126)||Fs["Unified Canadian Aboriginal Syllabics"](e)||Fs["Unified Canadian Aboriginal Syllabics Extended"](e)||Fs["Vertical Forms"](e)||Fs["Yijing Hexagram Symbols"](e)||Fs["Yi Syllables"](e)||Fs["Yi Radicals"](e))))}function Gs(e){return!(Vs(e)||function(e){return!!(Fs["Latin-1 Supplement"](e)&&(167===e||169===e||174===e||177===e||188===e||189===e||190===e||215===e||247===e)||Fs["General Punctuation"](e)&&(8214===e||8224===e||8225===e||8240===e||8241===e||8251===e||8252===e||8258===e||8263===e||8264===e||8265===e||8273===e)||Fs["Letterlike Symbols"](e)||Fs["Number Forms"](e)||Fs["Miscellaneous Technical"](e)&&(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||9003===e||e>=9085&&e<=9114||e>=9150&&e<=9165||9167===e||e>=9169&&e<=9179||e>=9186&&e<=9215)||Fs["Control Pictures"](e)&&9251!==e||Fs["Optical Character Recognition"](e)||Fs["Enclosed Alphanumerics"](e)||Fs["Geometric Shapes"](e)||Fs["Miscellaneous Symbols"](e)&&!(e>=9754&&e<=9759)||Fs["Miscellaneous Symbols and Arrows"](e)&&(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243)||Fs["CJK Symbols and Punctuation"](e)||Fs.Katakana(e)||Fs["Private Use Area"](e)||Fs["CJK Compatibility Forms"](e)||Fs["Small Form Variants"](e)||Fs["Halfwidth and Fullwidth Forms"](e)||8734===e||8756===e||8757===e||e>=9984&&e<=10087||e>=10102&&e<=10131||65532===e||65533===e)}(e))}function $s(e){return e>=1424&&e<=2303||Fs["Arabic Presentation Forms-A"](e)||Fs["Arabic Presentation Forms-B"](e)}function qs(e,t){return!(!t&&$s(e)||e>=2304&&e<=3583||e>=3840&&e<=4255||Fs.Khmer(e))}function Zs(e){for(const t of e)if($s(t.charCodeAt(0)))return!0;return!1}const Hs="deferred",Ws="loading",Xs="loaded";let Ys=null,Ks="unavailable",Js=null;const Qs=function(e){e&&"string"==typeof e&&e.indexOf("NetworkError")>-1&&(Ks="error"),Ys&&Ys(e)};function ea(){ta.fire(new It("pluginStateChange",{pluginStatus:Ks,pluginURL:Js}))}const ta=new kt,ia=function(){return Ks},ra=function(){if(Ks!==Hs||!Js)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Ks=Ws,ea(),Js&&Te({url:Js},(e=>{e?Qs(e):(Ks=Xs,ea())}))},na={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>Ks===Xs||null!=na.applyArabicShaping,isLoading:()=>Ks===Ws,setState(e){Ks=e.pluginStatus,Js=e.pluginURL},isParsed:()=>null!=na.applyArabicShaping&&null!=na.processBidirectionalText&&null!=na.processStyledBidirectionalText,getPluginURL:()=>Js};class oa{constructor(e,t){this.zoom=e,t?(this.now=t.now,this.fadeDuration=t.fadeDuration,this.transition=t.transition,this.pitch=t.pitch,this.brightness=t.brightness):(this.now=0,this.fadeDuration=0,this.transition={},this.pitch=0,this.brightness=0)}isSupportedScript(e){return function(e,t){for(const i of e)if(!qs(i.charCodeAt(0),t))return!1;return!0}(e,na.isLoaded())}}class sa{constructor(e,t,i){this.property=e,this.value=t,this.expression=function(e,t,i){if(fo(e))return new Io(e,t);if(To(e)||Array.isArray(e)&&e.length>0){const r=Mo(e,t,i);if("error"===r.result)throw new Error(r.value.map((e=>`${e.key}: ${e.message}`)).join(", "));return r.value}{let i=e;return"string"==typeof e&&"color"===t.type&&(i=hi.parse(e)),{kind:"constant",isConfigDependent:!1,evaluate:()=>i}}}(void 0===t?e.specification.default:t,e.specification,i)}isDataDriven(){return"source"===this.expression.kind||"composite"===this.expression.kind}possiblyEvaluate(e,t,i){return this.property.possiblyEvaluate(this,e,t,i)}}class aa{constructor(e,t){this.property=e,this.value=new sa(e,void 0,t)}transitioned(e,t){return new ca(this.property,this.value,t,R({},e.transition,this.transition),e.now)}untransitioned(){return new ca(this.property,this.value,null,{},0)}}class la{constructor(e,t){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues),this._options=t,this.isConfigDependent=!1}getValue(e){return Z(this._values[e].value.value)}setValue(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new aa(this._values[e].property,this._options)),this._values[e].value=new sa(this._values[e].property,null===t?void 0:Z(t),this._options),this.isConfigDependent=this.isConfigDependent||this._values[e].value.expression.isConfigDependent}setTransitionOrValue(e,t){t&&(this._options=t);const i=this._properties.properties;if(e)for(const t in e){const r=e[t];if(G(t,"-transition")){const e=t.slice(0,-11);i[e]&&this.setTransition(e,r)}else i[t]&&this.setValue(t,r)}}getTransition(e){return Z(this._values[e].transition)}setTransition(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new aa(this._values[e].property)),this._values[e].transition=Z(t)||void 0}serialize(){const e={};for(const t of Object.keys(this._values)){const i=this.getValue(t);void 0!==i&&(e[t]=i);const r=this.getTransition(t);void 0!==r&&(e[`${t}-transition`]=r)}return e}transitioned(e,t){const i=new ha(this._properties);for(const r of Object.keys(this._values))i._values[r]=this._values[r].transitioned(e,t._values[r]);return i}untransitioned(){const e=new ha(this._properties);for(const t of Object.keys(this._values))e._values[t]=this._values[t].untransitioned();return e}}class ca{constructor(e,t,i,r,n){const o=r.delay||0,s=r.duration||0;n=n||0,this.property=e,this.value=t,this.begin=n+o,this.end=this.begin+s,e.specification.transition&&(r.delay||r.duration)&&(this.prior=i)}possiblyEvaluate(e,t,i){const r=e.now||0,n=this.value.possiblyEvaluate(e,t,i),o=this.prior;if(o){if(r>this.end)return this.prior=null,n;if(this.value.isDataDriven())return this.prior=null,n;if(r=0}function va(e,t){return t?`${e}${ya}${t}`:e}function ba(e){const t=e.indexOf(ya);return t>=0?e.slice(0,t):e}const wa="-transition";class Ta extends kt{constructor(e,t,i){if(super(),this.id=e.id,this.type=e.type,this._featureFilter={filter:()=>!0,needGeometry:!1,needFeature:!1},this._filterCompiled=!1,this.isConfigDependent=!1,"custom"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,"background"!==e.type&&"sky"!==e.type&&"slot"!==e.type&&(this.source=e.source,this.sourceLayer=e["source-layer"],this.filter=e.filter),this.options=i,e.slot&&(this.slot=e.slot),t.layout&&(this._unevaluatedLayout=new ua(t.layout,i),this.isConfigDependent=this.isConfigDependent||this._unevaluatedLayout.isConfigDependent),t.paint)){this._transitionablePaint=new la(t.paint,i);for(const t in e.paint)this.setPaintProperty(t,e.paint[t],{validate:!1});for(const t in e.layout)this.setLayoutProperty(t,e.layout[t],{validate:!1});this.isConfigDependent=this.isConfigDependent||this._transitionablePaint.isConfigDependent,this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new pa(t.paint)}}setScope(e){this.scope=e,this.fqid=va(this.id,e)}getLayoutProperty(e){return"visibility"===e?this.visibility:this._unevaluatedLayout.getValue(e)}setLayoutProperty(e,t,i={}){if(null!=t&&this._validate(Es,`layers.${this.id}.layout.${e}`,e,t,i))return;if("custom"===this.type&&"visibility"===e)return void(this.visibility=t);const r=this._unevaluatedLayout;r._properties.properties[e]&&(r.setValue(e,t),this.isConfigDependent=this.isConfigDependent||r.isConfigDependent,"visibility"===e&&this.possiblyEvaluateVisibility())}possiblyEvaluateVisibility(){this.visibility=this._unevaluatedLayout._values.visibility.possiblyEvaluate({zoom:0})}getPaintProperty(e){return G(e,wa)?this._transitionablePaint.getTransition(e.slice(0,-11)):this._transitionablePaint.getValue(e)}setPaintProperty(e,t,i={}){if(null!=t&&this._validate(Ts,`layers.${this.id}.paint.${e}`,e,t,i))return!1;const r=this._transitionablePaint,n=r._properties.properties;if(G(e,wa)){const i=e.slice(0,-11);return n[i]&&r.setTransition(i,t||void 0),!1}if(!n[e])return!1;const o=r._values[e],s=o.value.isDataDriven(),a=o.value;r.setValue(e,t),this.isConfigDependent=this.isConfigDependent||r.isConfigDependent,this._handleSpecialPaintPropertyUpdate(e);const l=r._values[e].value,c=l.isDataDriven(),h=G(e,"pattern")||"line-dasharray"===e;return c||s||h||this._handleOverridablePaintPropertyUpdate(e,a,l)}_handleSpecialPaintPropertyUpdate(e){}getProgramIds(){return null}getDefaultProgramParams(e,t){return null}_handleOverridablePaintPropertyUpdate(e,t,i){return!1}isHidden(e){return!!(this.minzoom&&e=this.maxzoom)||"none"===this.visibility}updateTransitions(e){this._transitioningPaint=this._transitionablePaint.transitioned(e,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(e,t){this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(e,void 0,t)),this.paint=this._transitioningPaint.possiblyEvaluate(e,void 0,t)}serialize(){return q({id:this.id,type:this.type,slot:this.slot,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()},((e,t)=>!(void 0===e||"layout"===t&&!Object.keys(e).length||"paint"===t&&!Object.keys(e).length)))}_validate(e,t,i,r,n={}){return(!n||!1!==n.validate)&&Ms(this,e.call(ms,{key:t,layerType:this.type,objectKey:i,value:r,styleSpec:Pt,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isSky(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}hasShadowPass(){return!1}canCastShadows(){return!1}hasLightBeamPass(){return!1}cutoffRange(){return 0}resize(){}isStateDependent(){for(const e in this.paint._values){const t=this.paint.get(e);if(t instanceof da&&co(t.property.specification)&&("source"===t.value.kind||"composite"===t.value.kind)&&t.value.isStateDependent)return!0}return!1}compileFilter(){this._filterCompiled||(this._featureFilter=Fo(this.filter),this._filterCompiled=!0)}invalidateCompiledFilter(){this._filterCompiled=!1}dynamicFilter(){return this._featureFilter.dynamicFilter}dynamicFilterNeedsFeature(){return this._featureFilter.needFeature}getLayerRenderingStats(){return this._stats}resetLayerRenderingStats(){this._stats&&(this._stats.numRenderedVerticesInShadowPass=0,this._stats.numRenderedVerticesInTransparentPass=0)}}class Ea{constructor(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSourceCaches={},this._updatedPaintProps=new Set,this._updatedImages=new Set}isDirty(){return this._changed}setDirty(){this._changed=!0}getUpdatedSourceCaches(){return this._updatedSourceCaches}updateSourceCache(e,t){this._updatedSourceCaches[e]=t,this.setDirty()}discardSourceCacheUpdate(e){delete this._updatedSourceCaches[e]}updateLayer(e){const t=e.scope;this._updatedLayers[t]=this._updatedLayers[t]||new Set,this._updatedLayers[t].add(e.id),this.setDirty()}removeLayer(e){const t=e.scope;this._removedLayers[t]=this._removedLayers[t]||{},this._updatedLayers[t]=this._updatedLayers[t]||new Set,this._removedLayers[t][e.id]=e,this._updatedLayers[t].delete(e.id),this._updatedPaintProps.delete(e.fqid),this.setDirty()}getRemovedLayer(e){return this._removedLayers[e.scope]?this._removedLayers[e.scope][e.id]:null}discardLayerRemoval(e){this._removedLayers[e.scope]&&delete this._removedLayers[e.scope][e.id]}getLayerUpdatesByScope(){const e={};for(const t in this._updatedLayers)e[t]=e[t]||{},e[t].updatedIds=Array.from(this._updatedLayers[t].values());for(const t in this._removedLayers)e[t]=e[t]||{},e[t].removedIds=Object.keys(this._removedLayers[t]);return e}getUpdatedPaintProperties(){return this._updatedPaintProps}updatePaintProperties(e){this._updatedPaintProps.add(e.fqid),this.setDirty()}getUpdatedImages(){return Array.from(this._updatedImages.values())}updateImage(e){this._updatedImages.add(e),this.setDirty()}resetUpdatedImages(){this._updatedImages.clear()}reset(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSourceCaches={},this._updatedPaintProps.clear(),this._updatedImages.clear()}}const Aa={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class Sa{constructor(e,t){this._structArray=e,this._pos1=t*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class Ma{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(e,t){return e._trim(),t&&(e.isTransferred=!0,t.add(e.arrayBuffer)),{length:e.length,arrayBuffer:e.arrayBuffer}}static deserialize(e){const t=Object.create(this.prototype);return t.arrayBuffer=e.arrayBuffer,t.length=e.length,t.capacity=e.arrayBuffer.byteLength/t.bytesPerElement,t._refreshViews(),t}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(e){this.reserve(e),this.length=e}reserve(e){if(e>this.capacity){this.capacity=Math.max(e,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const t=this.uint8;this._refreshViews(),t&&this.uint8.set(t)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}destroy(){this.int8=this.uint8=this.int16=this.uint16=this.int32=this.uint32=this.float32=null,this.arrayBuffer=null}}function Ia(e,t=1){let i=0,r=0;return{members:e.map((e=>{const n=Aa[e.type].BYTES_PER_ELEMENT,o=i=Ca(i,Math.max(t,n)),s=e.components||1;return r=Math.max(r,n),i+=n*s,{name:e.name,type:e.type,components:s,offset:o}})),size:Ca(i,Math.max(r,t)),alignment:t}}function Ca(e,t){return Math.ceil(e/t)*t}class ka extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.int16[r+0]=t,this.int16[r+1]=i,e}}ka.prototype.bytesPerElement=4,Ls(ka,"StructArrayLayout2i4");class Pa extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.int16[n+0]=t,this.int16[n+1]=i,this.int16[n+2]=r,e}}Pa.prototype.bytesPerElement=6,Ls(Pa,"StructArrayLayout3i6");class za extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.int16[o+0]=t,this.int16[o+1]=i,this.int16[o+2]=r,this.int16[o+3]=n,e}}za.prototype.bytesPerElement=8,Ls(za,"StructArrayLayout4i8");class La extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=5*e;return this.int16[s+0]=t,this.int16[s+1]=i,this.int16[s+2]=r,this.int16[s+3]=n,this.int16[s+4]=o,e}}La.prototype.bytesPerElement=10,Ls(La,"StructArrayLayout5i10");class Da extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=6*e,c=12*e,h=3*e;return this.int16[l+0]=t,this.int16[l+1]=i,this.uint8[c+4]=r,this.uint8[c+5]=n,this.uint8[c+6]=o,this.uint8[c+7]=s,this.float32[h+2]=a,e}}Da.prototype.bytesPerElement=12,Ls(Da,"StructArrayLayout2i4ub1f12");class Ra extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.float32[o+0]=t,this.float32[o+1]=i,this.float32[o+2]=r,this.float32[o+3]=n,e}}Ra.prototype.bytesPerElement=16,Ls(Ra,"StructArrayLayout4f16");class Oa extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=6*e,a=3*e;return this.uint16[s+0]=t,this.uint16[s+1]=i,this.uint16[s+2]=r,this.uint16[s+3]=n,this.float32[a+2]=o,e}}Oa.prototype.bytesPerElement=12,Ls(Oa,"StructArrayLayout4ui1f12");class Ba extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.uint16[o+0]=t,this.uint16[o+1]=i,this.uint16[o+2]=r,this.uint16[o+3]=n,e}}Ba.prototype.bytesPerElement=8,Ls(Ba,"StructArrayLayout4ui8");class Fa extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,i,r,n,o)}emplace(e,t,i,r,n,o,s){const a=6*e;return this.int16[a+0]=t,this.int16[a+1]=i,this.int16[a+2]=r,this.int16[a+3]=n,this.int16[a+4]=o,this.int16[a+5]=s,e}}Fa.prototype.bytesPerElement=12,Ls(Fa,"StructArrayLayout6i12");class Na extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u){const d=this.length;return this.resize(d+1),this.emplace(d,e,t,i,r,n,o,s,a,l,c,h,u)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=12*e;return this.int16[p+0]=t,this.int16[p+1]=i,this.int16[p+2]=r,this.int16[p+3]=n,this.uint16[p+4]=o,this.uint16[p+5]=s,this.uint16[p+6]=a,this.uint16[p+7]=l,this.int16[p+8]=c,this.int16[p+9]=h,this.int16[p+10]=u,this.int16[p+11]=d,e}}Na.prototype.bytesPerElement=24,Ls(Na,"StructArrayLayout4i4ui4i24");class ja extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,i,r,n,o)}emplace(e,t,i,r,n,o,s){const a=10*e,l=5*e;return this.int16[a+0]=t,this.int16[a+1]=i,this.int16[a+2]=r,this.float32[l+2]=n,this.float32[l+3]=o,this.float32[l+4]=s,e}}ja.prototype.bytesPerElement=20,Ls(ja,"StructArrayLayout3i3f20");class Ua extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint32[1*e+0]=t,e}}Ua.prototype.bytesPerElement=4,Ls(Ua,"StructArrayLayout1ul4");class Va extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.uint16[r+0]=t,this.uint16[r+1]=i,e}}Va.prototype.bytesPerElement=4,Ls(Va,"StructArrayLayout2ui4");class Ga extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=this.length;return this.resize(p+1),this.emplace(p,e,t,i,r,n,o,s,a,l,c,h,u,d)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p){const f=20*e,m=10*e;return this.int16[f+0]=t,this.int16[f+1]=i,this.int16[f+2]=r,this.int16[f+3]=n,this.int16[f+4]=o,this.float32[m+3]=s,this.float32[m+4]=a,this.float32[m+5]=l,this.float32[m+6]=c,this.int16[f+14]=h,this.uint32[m+8]=u,this.uint16[f+18]=d,this.uint16[f+19]=p,e}}Ga.prototype.bytesPerElement=40,Ls(Ga,"StructArrayLayout5i4f1i1ul2ui40");class $a extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=8*e;return this.int16[l+0]=t,this.int16[l+1]=i,this.int16[l+2]=r,this.int16[l+4]=n,this.int16[l+5]=o,this.int16[l+6]=s,this.int16[l+7]=a,e}}$a.prototype.bytesPerElement=16,Ls($a,"StructArrayLayout3i2i2i16");class qa extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=4*e,a=8*e;return this.float32[s+0]=t,this.float32[s+1]=i,this.float32[s+2]=r,this.int16[a+6]=n,this.int16[a+7]=o,e}}qa.prototype.bytesPerElement=16,Ls(qa,"StructArrayLayout2f1f2i16");class Za extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=12*e,s=3*e;return this.uint8[o+0]=t,this.uint8[o+1]=i,this.float32[s+1]=r,this.float32[s+2]=n,e}}Za.prototype.bytesPerElement=12,Ls(Za,"StructArrayLayout2ub2f12");class Ha extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.uint16[n+0]=t,this.uint16[n+1]=i,this.uint16[n+2]=r,e}}Ha.prototype.bytesPerElement=6,Ls(Ha,"StructArrayLayout3ui6");class Wa extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v){const b=this.length;return this.resize(b+1),this.emplace(b,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b){const w=30*e,T=15*e,E=60*e;return this.int16[w+0]=t,this.int16[w+1]=i,this.int16[w+2]=r,this.float32[T+2]=n,this.float32[T+3]=o,this.uint16[w+8]=s,this.uint16[w+9]=a,this.uint32[T+5]=l,this.uint32[T+6]=c,this.uint32[T+7]=h,this.uint16[w+16]=u,this.uint16[w+17]=d,this.uint16[w+18]=p,this.float32[T+10]=f,this.float32[T+11]=m,this.uint8[E+48]=_,this.uint8[E+49]=g,this.uint8[E+50]=y,this.uint32[T+13]=x,this.int16[w+28]=v,this.uint8[E+58]=b,e}}Wa.prototype.bytesPerElement=60,Ls(Wa,"StructArrayLayout3i2f2ui3ul3ui2f3ub1ul1i1ub60");class Xa extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S,M,I,C,k,P){const z=this.length;return this.resize(z+1),this.emplace(z,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S,M,I,C,k,P)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S,M,I,C,k,P,z){const L=20*e,D=40*e,R=80*e;return this.float32[L+0]=t,this.float32[L+1]=i,this.int16[D+4]=r,this.int16[D+5]=n,this.int16[D+6]=o,this.int16[D+7]=s,this.int16[D+8]=a,this.int16[D+9]=l,this.int16[D+10]=c,this.int16[D+11]=h,this.int16[D+12]=u,this.uint16[D+13]=d,this.uint16[D+14]=p,this.uint16[D+15]=f,this.uint16[D+16]=m,this.uint16[D+17]=_,this.uint16[D+18]=g,this.uint16[D+19]=y,this.uint16[D+20]=x,this.uint16[D+21]=v,this.uint16[D+22]=b,this.uint16[D+23]=w,this.uint16[D+24]=T,this.uint16[D+25]=E,this.uint16[D+26]=A,this.uint16[D+27]=S,this.uint32[L+14]=M,this.float32[L+15]=I,this.float32[L+16]=C,this.float32[L+17]=k,this.float32[L+18]=P,this.uint8[R+76]=z,e}}Xa.prototype.bytesPerElement=80,Ls(Xa,"StructArrayLayout2f9i15ui1ul4f1ub80");class Ya extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.float32[1*e+0]=t,e}}Ya.prototype.bytesPerElement=4,Ls(Ya,"StructArrayLayout1f4");class Ka extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=5*e;return this.float32[s+0]=t,this.float32[s+1]=i,this.float32[s+2]=r,this.float32[s+3]=n,this.float32[s+4]=o,e}}Ka.prototype.bytesPerElement=20,Ls(Ka,"StructArrayLayout5f20");class Ja extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=7*e;return this.float32[l+0]=t,this.float32[l+1]=i,this.float32[l+2]=r,this.float32[l+3]=n,this.float32[l+4]=o,this.float32[l+5]=s,this.float32[l+6]=a,e}}Ja.prototype.bytesPerElement=28,Ls(Ja,"StructArrayLayout7f28");class Qa extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=6*e;return this.uint32[3*e+0]=t,this.uint16[o+2]=i,this.uint16[o+3]=r,this.uint16[o+4]=n,e}}Qa.prototype.bytesPerElement=12,Ls(Qa,"StructArrayLayout1ul3ui12");class el extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint16[1*e+0]=t,e}}el.prototype.bytesPerElement=2,Ls(el,"StructArrayLayout1ui2");class tl extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.float32[n+0]=t,this.float32[n+1]=i,this.float32[n+2]=r,e}}tl.prototype.bytesPerElement=12,Ls(tl,"StructArrayLayout3f12");class il extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.float32[r+0]=t,this.float32[r+1]=i,e}}il.prototype.bytesPerElement=8,Ls(il,"StructArrayLayout2f8");class rl extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){const _=this.length;return this.resize(_+1),this.emplace(_,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_){const g=16*e;return this.float32[g+0]=t,this.float32[g+1]=i,this.float32[g+2]=r,this.float32[g+3]=n,this.float32[g+4]=o,this.float32[g+5]=s,this.float32[g+6]=a,this.float32[g+7]=l,this.float32[g+8]=c,this.float32[g+9]=h,this.float32[g+10]=u,this.float32[g+11]=d,this.float32[g+12]=p,this.float32[g+13]=f,this.float32[g+14]=m,this.float32[g+15]=_,e}}rl.prototype.bytesPerElement=64,Ls(rl,"StructArrayLayout16f64");class nl extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=10*e,c=5*e;return this.uint16[l+0]=t,this.uint16[l+1]=i,this.uint16[l+2]=r,this.uint16[l+3]=n,this.float32[c+2]=o,this.float32[c+3]=s,this.float32[c+4]=a,e}}nl.prototype.bytesPerElement=20,Ls(nl,"StructArrayLayout4ui3f20");class ol extends Ma{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer)}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint8[1*e+0]=t,e}}ol.prototype.bytesPerElement=1,Ls(ol,"StructArrayLayout1ub1");class sl extends Sa{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.int16[this._pos2+3]}get tileAnchorY(){return this._structArray.int16[this._pos2+4]}get x1(){return this._structArray.float32[this._pos4+3]}get y1(){return this._structArray.float32[this._pos4+4]}get x2(){return this._structArray.float32[this._pos4+5]}get y2(){return this._structArray.float32[this._pos4+6]}get padding(){return this._structArray.int16[this._pos2+14]}get featureIndex(){return this._structArray.uint32[this._pos4+8]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+18]}get bucketIndex(){return this._structArray.uint16[this._pos2+19]}}sl.prototype.size=40;class al extends Ga{get(e){return new sl(this,e)}}Ls(al,"CollisionBoxArray");class ll extends Sa{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+8]}get numGlyphs(){return this._structArray.uint16[this._pos2+9]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+5]}get lineStartIndex(){return this._structArray.uint32[this._pos4+6]}get lineLength(){return this._structArray.uint32[this._pos4+7]}get segment(){return this._structArray.uint16[this._pos2+16]}get lowerSize(){return this._structArray.uint16[this._pos2+17]}get upperSize(){return this._structArray.uint16[this._pos2+18]}get lineOffsetX(){return this._structArray.float32[this._pos4+10]}get lineOffsetY(){return this._structArray.float32[this._pos4+11]}get writingMode(){return this._structArray.uint8[this._pos1+48]}get placedOrientation(){return this._structArray.uint8[this._pos1+49]}set placedOrientation(e){this._structArray.uint8[this._pos1+49]=e}get hidden(){return this._structArray.uint8[this._pos1+50]}set hidden(e){this._structArray.uint8[this._pos1+50]=e}get crossTileID(){return this._structArray.uint32[this._pos4+13]}set crossTileID(e){this._structArray.uint32[this._pos4+13]=e}get associatedIconIndex(){return this._structArray.int16[this._pos2+28]}get flipState(){return this._structArray.uint8[this._pos1+58]}set flipState(e){this._structArray.uint8[this._pos1+58]=e}}ll.prototype.size=60;class cl extends Wa{get(e){return new ll(this,e)}}Ls(cl,"PlacedSymbolArray");class hl extends Sa{get tileAnchorX(){return this._structArray.float32[this._pos4+0]}get tileAnchorY(){return this._structArray.float32[this._pos4+1]}get projectedAnchorX(){return this._structArray.int16[this._pos2+4]}get projectedAnchorY(){return this._structArray.int16[this._pos2+5]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+6]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+7]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+8]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+9]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+10]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+11]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+12]}get key(){return this._structArray.uint16[this._pos2+13]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+14]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+15]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+16]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+17]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+18]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+19]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+20]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+21]}get featureIndex(){return this._structArray.uint16[this._pos2+22]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+23]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+24]}get numIconVertices(){return this._structArray.uint16[this._pos2+25]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+26]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+27]}get crossTileID(){return this._structArray.uint32[this._pos4+14]}set crossTileID(e){this._structArray.uint32[this._pos4+14]=e}get textOffset0(){return this._structArray.float32[this._pos4+15]}get textOffset1(){return this._structArray.float32[this._pos4+16]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+17]}get zOffset(){return this._structArray.float32[this._pos4+18]}set zOffset(e){this._structArray.float32[this._pos4+18]=e}get hasIconTextFit(){return this._structArray.uint8[this._pos1+76]}}hl.prototype.size=80;class ul extends Xa{get(e){return new hl(this,e)}}Ls(ul,"SymbolInstanceArray");class dl extends Ya{getoffsetX(e){return this.float32[1*e+0]}}Ls(dl,"GlyphOffsetArray");class pl extends ka{getx(e){return this.int16[2*e+0]}gety(e){return this.int16[2*e+1]}}Ls(pl,"SymbolLineVertexArray");class fl extends Sa{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}get layoutVertexArrayOffset(){return this._structArray.uint16[this._pos2+4]}}fl.prototype.size=12;class ml extends Qa{get(e){return new fl(this,e)}}Ls(ml,"FeatureIndexArray");class _l extends Va{geta_centroid_pos0(e){return this.uint16[2*e+0]}geta_centroid_pos1(e){return this.uint16[2*e+1]}}Ls(_l,"FillExtrusionCentroidArray");const gl=Ia([{name:"a_pos",components:2,type:"Int16"}],4),yl=Ia([{name:"a_pos_3",components:3,type:"Int16"},{name:"a_pos_normal_3",components:3,type:"Int16"}]);class xl{constructor(e=[]){this.segments=e}_prepareSegment(e,t,i,r){let n=this.segments[this.segments.length-1];return e>xl.MAX_VERTEX_ARRAY_LENGTH&&W(`Max vertices per segment is ${xl.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${e}`),(!n||n.vertexLength+e>xl.MAX_VERTEX_ARRAY_LENGTH||n.sortKey!==r)&&(n={vertexOffset:t,primitiveOffset:i,vertexLength:0,primitiveLength:0},void 0!==r&&(n.sortKey=r),this.segments.push(n)),n}prepareSegment(e,t,i,r){return this._prepareSegment(e,t.length,i.length,r)}get(){return this.segments}destroy(){for(const e of this.segments)for(const t in e.vaos)e.vaos[t].destroy()}static simpleSegment(e,t,i,r){return new xl([{vertexOffset:e,primitiveOffset:t,vertexLength:i,primitiveLength:r,vaos:{},sortKey:0}])}}function vl(e,t){return 256*(e=k(Math.floor(e),0,255))+k(Math.floor(t),0,255)}xl.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Ls(xl,"SegmentVector");const bl=Ia([{name:"a_pattern",components:4,type:"Uint16"},{name:"a_pixel_ratio",components:1,type:"Float32"}]),wl=Ia([{name:"a_dash",components:4,type:"Uint16"}]);var Tl={exports:{}},El={exports:{}};!function(e){e.exports=function(e,t){var i,r,n,o,s,a,l,c;for(r=e.length-(i=3&e.length),n=t,s=3432918353,a=461845907,c=0;c>>16)*s&65535)<<16)&4294967295)<<15|l>>>17))*a+(((l>>>16)*a&65535)<<16)&4294967295)<<13|n>>>19))+((5*(n>>>16)&65535)<<16)&4294967295))+((58964+(o>>>16)&65535)<<16);switch(l=0,i){case 3:l^=(255&e.charCodeAt(c+2))<<16;case 2:l^=(255&e.charCodeAt(c+1))<<8;case 1:n^=l=(65535&(l=(l=(65535&(l^=255&e.charCodeAt(c)))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<15|l>>>17))*a+(((l>>>16)*a&65535)<<16)&4294967295}return n^=e.length,n=2246822507*(65535&(n^=n>>>16))+((2246822507*(n>>>16)&65535)<<16)&4294967295,n=3266489909*(65535&(n^=n>>>13))+((3266489909*(n>>>16)&65535)<<16)&4294967295,(n^=n>>>16)>>>0}}(El);var Al=El.exports,Sl={exports:{}};!function(e){e.exports=function(e,t){for(var i,r=e.length,n=t^r,o=0;r>=4;)i=1540483477*(65535&(i=255&e.charCodeAt(o)|(255&e.charCodeAt(++o))<<8|(255&e.charCodeAt(++o))<<16|(255&e.charCodeAt(++o))<<24))+((1540483477*(i>>>16)&65535)<<16),n=1540483477*(65535&n)+((1540483477*(n>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),r-=4,++o;switch(r){case 3:n^=(255&e.charCodeAt(o+2))<<16;case 2:n^=(255&e.charCodeAt(o+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(o)))+((1540483477*(n>>>16)&65535)<<16)}return n=1540483477*(65535&(n^=n>>>13))+((1540483477*(n>>>16)&65535)<<16),(n^=n>>>15)>>>0}}(Sl);var Ml=Al,Il=Sl.exports;Tl.exports=Ml,Tl.exports.murmur3=Ml,Tl.exports.murmur2=Il;var Cl=d(Tl.exports);class kl{constructor(){this.ids=[],this.uniqueIds=[],this.positions=[],this.indexed=!1}add(e,t,i,r){this.ids.push(Pl(e)),this.positions.push(t,i,r)}eachPosition(e,t){const i=Pl(e);let r=0,n=this.ids.length-1;for(;r>1;this.ids[e]>=i?n=e:r=e+1}for(;this.ids[r]===i;)t(this.positions[3*r],this.positions[3*r+1],this.positions[3*r+2]),r++}static serialize(e,t){const i=new Float64Array(e.ids),r=new Uint32Array(e.positions);return zl(i,r,0,i.length-1),t&&(t.add(i.buffer),t.add(r.buffer)),{ids:i,positions:r}}static deserialize(e){const t=new kl;let i;t.ids=e.ids,t.positions=e.positions;for(const e of t.ids)e!==i&&t.uniqueIds.push(e),i=e;return t.indexed=!0,t}}function Pl(e){const t=+e;return!isNaN(t)&&Number.MIN_SAFE_INTEGER<=t&&t<=Number.MAX_SAFE_INTEGER?t:Cl(String(e))}function zl(e,t,i,r){for(;i>1];let o=i-1,s=r+1;for(;;){do{o++}while(e[o]n);if(o>=s)break;Ll(e,o,s),Ll(t,3*o,3*s),Ll(t,3*o+1,3*s+1),Ll(t,3*o+2,3*s+2)}s-i`u_${e}`)),this.type=i}setUniform(e,t,i,r,n){t.set(e,n,r.constantOr(this.value))}getBinding(e,t){return"color"===this.type?new jl(e):new Ol(e)}}class Xl{constructor(e,t){this.uniformNames=t.map((e=>`u_${e}`)),this.pattern=null,this.pixelRatio=1}setConstantPatternPositions(e){this.pixelRatio=e.pixelRatio||1,this.pattern=e.tl.concat(e.br)}setUniform(e,t,i,r,n){const o="u_pattern"===n||"u_dash"===n?this.pattern:"u_pixel_ratio"===n?this.pixelRatio:null;o&&t.set(e,n,o)}getBinding(e,t){return"u_pattern"===t||"u_dash"===t?new Nl(e):new Ol(e)}}class Yl{constructor(e,t,i,r){this.expression=e,this.type=i,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:"Float32",components:"color"===i?2:1,offset:0}))),this.paintVertexArray=new r}populatePaintArray(e,t,i,r,n,o,s){const a=this.paintVertexArray.length,l=this.expression.evaluate(new oa(0,{brightness:o}),t,{},n,r,s);this.paintVertexArray.resize(e),this._setPaintValue(a,e,l)}updatePaintArray(e,t,i,r,n,o,s){const a=this.expression.evaluate({zoom:0,brightness:s},i,r,void 0,n);this._setPaintValue(e,t,a)}_setPaintValue(e,t,i){if("color"===this.type){const r=Hl(i);for(let i=e;i`u_${e}_t`)),this.type=i,this.useIntegerZoom=r,this.zoom=n,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:"Float32",components:"color"===i?4:2,offset:0}))),this.paintVertexArray=new o}populatePaintArray(e,t,i,r,n,o,s){const a=this.expression.evaluate(new oa(this.zoom,{brightness:o}),t,{},n,r,s),l=this.expression.evaluate(new oa(this.zoom+1,{brightness:o}),t,{},n,r,s),c=this.paintVertexArray.length;this.paintVertexArray.resize(e),this._setPaintValue(c,e,a,l)}updatePaintArray(e,t,i,r,n,o,s){const a=this.expression.evaluate({zoom:this.zoom,brightness:s},i,r,void 0,n),l=this.expression.evaluate({zoom:this.zoom+1,brightness:s},i,r,void 0,n);this._setPaintValue(e,t,a,l)}_setPaintValue(e,t,i,r){if("color"===this.type){const n=Hl(i),o=Hl(r);for(let i=e;i!0)){this.binders={},this._buffers=[];const r=[];for(const n in e.paint._values){const o=e.paint.get(n);if(!i(n))continue;if(!(o instanceof da&&co(o.property.specification)))continue;const s=ic(n,e.type),a=o.value,l=o.property.specification.type,c=!!o.property.useIntegerZoom,h="line-dasharray"===n||n.endsWith("pattern"),u="line-dasharray"===n&&"constant"!==e.layout.get("line-cap").value.kind;if("constant"!==a.kind||u)if("source"===a.kind||u||h){const t=oc(n,l,"source");this.binders[n]=h?new Jl(a,s,l,t,e.id):new Yl(a,s,l,t),r.push(`/a_${n}`)}else{const e=oc(n,l,"composite");this.binders[n]=new Kl(a,s,l,c,t,e),r.push(`/z_${n}`)}else this.binders[n]=h?new Xl(a.value,s):new Wl(a.value,s,l),r.push(`/u_${n}`)}this.cacheKey=r.sort().join("")}getMaxValue(e){const t=this.binders[e];return t instanceof Yl||t instanceof Kl?t.maxValue:0}populatePaintArrays(e,t,i,r,n,o,s){for(const a in this.binders){const l=this.binders[a];(l instanceof Yl||l instanceof Kl||l instanceof Jl)&&l.populatePaintArray(e,t,i,r,n,o,s)}}setConstantPatternPositions(e){for(const t in this.binders){const i=this.binders[t];i instanceof Xl&&i.setConstantPatternPositions(e)}}updatePaintArrays(e,t,i,r,n,o,s,a){let l=!1;const c=Object.keys(e),h=0!==c.length,u=h?c:t.uniqueIds;for(const c in this.binders){const d=this.binders[c];if((d instanceof Yl||d instanceof Kl||d instanceof Jl)&&(!0===d.expression.isStateDependent||!1===d.expression.isLightConstant)){const p=n.paint.get(c);d.expression=p.value;for(const i of u){const n=e[i.toString()];t.eachPosition(i,((e,t,i)=>{const l=r.feature(e);d.updatePaintArray(t,i,l,n,o,s,a)}))}if(!h)for(const t of i.uniqueIds){const n=e[t.toString()];i.eachPosition(t,((e,t,i)=>{const l=r.feature(e);d.updatePaintArray(t,i,l,n,o,s,a)}))}l=!0}}return l}defines(){const e=[];for(const t in this.binders){const i=this.binders[t];(i instanceof Wl||i instanceof Xl)&&e.push(...i.uniformNames.map((e=>`#define HAS_UNIFORM_${e}`)))}return e}getBinderAttributes(){const e=[];for(const t in this.binders){const i=this.binders[t];if(i instanceof Yl||i instanceof Kl||i instanceof Jl)for(let t=0;t!0)){this.programConfigurations={};for(const r of e)this.programConfigurations[r.id]=new Ql(r,t,i);this.needsUpload=!1,this._featureMap=new kl,this._featureMapWithoutIds=new kl,this._bufferOffset=0,this._idlessCounter=0}populatePaintArrays(e,t,i,r,n,o,s,a){for(const i in this.programConfigurations)this.programConfigurations[i].populatePaintArrays(e,t,r,n,o,s,a);void 0!==t.id?this._featureMap.add(t.id,i,this._bufferOffset,e):(this._featureMapWithoutIds.add(this._idlessCounter,i,this._bufferOffset,e),this._idlessCounter+=1),this._bufferOffset=e,this.needsUpload=!0}updatePaintArrays(e,t,i,r,n,o){for(const s of i)this.needsUpload=this.programConfigurations[s.id].updatePaintArrays(e,this._featureMap,this._featureMapWithoutIds,t,s,r,n,o||0)||this.needsUpload}get(e){return this.programConfigurations[e]}upload(e){if(this.needsUpload){for(const t in this.programConfigurations)this.programConfigurations[t].upload(e);this.needsUpload=!1}}destroy(){for(const e in this.programConfigurations)this.programConfigurations[e].destroy()}}const tc={"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-emissive-strength":["emissive_strength"],"icon-emissive-strength":["emissive_strength"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern","pixel_ratio"],"fill-pattern":["pattern","pixel_ratio"],"fill-extrusion-pattern":["pattern","pixel_ratio"],"line-dasharray":["dash"]};function ic(e,t){return tc[e]||[e.replace(`${t}-`,"").replace(/-/g,"_")]}const rc={"line-pattern":{source:Oa,composite:Oa},"fill-pattern":{source:Oa,composite:Oa},"fill-extrusion-pattern":{source:Oa,composite:Oa},"line-dasharray":{source:Ba,composite:Ba}},nc={color:{source:il,composite:Ra},number:{source:Ya,composite:il}};function oc(e,t,i){const r=rc[e];return r&&r[i]||nc[t][i]}Ls(Wl,"ConstantBinder"),Ls(Xl,"PatternConstantBinder"),Ls(Yl,"SourceExpressionBinder"),Ls(Jl,"PatternCompositeBinder"),Ls(Kl,"CompositeExpressionBinder"),Ls(Ql,"ProgramConfiguration",{omit:["_buffers"]}),Ls(ec,"ProgramConfigurationSet");class sc{constructor(e,t){e&&(t?this.setSouthWest(e).setNorthEast(t):4===e.length?this.setSouthWest([e[0],e[1]]).setNorthEast([e[2],e[3]]):this.setSouthWest(e[0]).setNorthEast(e[1]))}setNorthEast(e){return this._ne=e instanceof Hd?new Hd(e.lng,e.lat):Hd.convert(e),this}setSouthWest(e){return this._sw=e instanceof Hd?new Hd(e.lng,e.lat):Hd.convert(e),this}extend(e){const t=this._sw,i=this._ne;let r,n;if(e instanceof Hd)r=e,n=e;else{if(!(e instanceof sc))return Array.isArray(e)?4===e.length||e.every(Array.isArray)?this.extend(sc.convert(e)):this.extend(Hd.convert(e)):"object"==typeof e&&null!==e&&e.hasOwnProperty("lat")&&(e.hasOwnProperty("lon")||e.hasOwnProperty("lng"))?this.extend(Hd.convert(e)):this;if(r=e._sw,n=e._ne,!r||!n)return this}return t||i?(t.lng=Math.min(r.lng,t.lng),t.lat=Math.min(r.lat,t.lat),i.lng=Math.max(n.lng,i.lng),i.lat=Math.max(n.lat,i.lat)):(this._sw=new Hd(r.lng,r.lat),this._ne=new Hd(n.lng,n.lat)),this}getCenter(){return new Hd((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new Hd(this.getWest(),this.getNorth())}getSouthEast(){return new Hd(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(e){const{lng:t,lat:i}=Hd.convert(e);let r=this._sw.lng<=t&&t<=this._ne.lng;return this._sw.lng>this._ne.lng&&(r=this._sw.lng>=t&&t>=this._ne.lng),this._sw.lat<=i&&i<=this._ne.lat&&r}static convert(e){return!e||e instanceof sc?e:new sc(e)}}var ac={},lc={};Object.defineProperty(lc,"__esModule",{value:!0}),lc.setMatrixArrayType=function(e){lc.ARRAY_TYPE=hc=e},lc.toRadian=function(e){return e*dc},lc.equals=function(e,t){return Math.abs(e-t)<=cc*Math.max(1,Math.abs(e),Math.abs(t))},lc.RANDOM=lc.ARRAY_TYPE=lc.EPSILON=void 0;var cc=1e-6;lc.EPSILON=cc;var hc="undefined"!=typeof Float32Array?Float32Array:Array;lc.ARRAY_TYPE=hc;var uc=Math.random;lc.RANDOM=uc;var dc=Math.PI/180;Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)});var pc={};function fc(e){return fc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},fc(e)}Object.defineProperty(pc,"__esModule",{value:!0}),pc.create=function(){var e=new mc.ARRAY_TYPE(4);return mc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0),e[0]=1,e[3]=1,e},pc.clone=function(e){var t=new mc.ARRAY_TYPE(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},pc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},pc.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e},pc.fromValues=function(e,t,i,r){var n=new mc.ARRAY_TYPE(4);return n[0]=e,n[1]=t,n[2]=i,n[3]=r,n},pc.set=function(e,t,i,r,n){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e},pc.transpose=function(e,t){if(e===t){var i=t[1];e[1]=t[2],e[2]=i}else e[0]=t[0],e[1]=t[2],e[2]=t[1],e[3]=t[3];return e},pc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i*o-n*r;return s?(e[0]=o*(s=1/s),e[1]=-r*s,e[2]=-n*s,e[3]=i*s,e):null},pc.adjoint=function(e,t){var i=t[0];return e[0]=t[3],e[1]=-t[1],e[2]=-t[2],e[3]=i,e},pc.determinant=function(e){return e[0]*e[3]-e[2]*e[1]},pc.multiply=gc,pc.rotate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+o*a,e[1]=n*l+s*a,e[2]=r*-a+o*l,e[3]=n*-a+s*l,e},pc.scale=function(e,t,i){var r=t[1],n=t[2],o=t[3],s=i[0],a=i[1];return e[0]=t[0]*s,e[1]=r*s,e[2]=n*a,e[3]=o*a,e},pc.fromRotation=function(e,t){var i=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=i,e[2]=-i,e[3]=r,e},pc.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e},pc.str=function(e){return"mat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},pc.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3])},pc.LDU=function(e,t,i,r){return e[2]=r[2]/r[0],i[0]=r[0],i[1]=r[1],i[3]=r[3]-e[2]*i[1],[e,t,i]},pc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e},pc.subtract=yc,pc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]},pc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=t[0],a=t[1],l=t[2],c=t[3];return Math.abs(i-s)<=mc.EPSILON*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(r-a)<=mc.EPSILON*Math.max(1,Math.abs(r),Math.abs(a))&&Math.abs(n-l)<=mc.EPSILON*Math.max(1,Math.abs(n),Math.abs(l))&&Math.abs(o-c)<=mc.EPSILON*Math.max(1,Math.abs(o),Math.abs(c))},pc.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e},pc.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e},pc.sub=pc.mul=void 0;var mc=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==fc(e)&&"function"!=typeof e)return{default:e};var i=_c(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}(lc);function _c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(_c=function(e){return e?i:t})(e)}function gc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[0],l=i[1],c=i[2],h=i[3];return e[0]=r*a+o*l,e[1]=n*a+s*l,e[2]=r*c+o*h,e[3]=n*c+s*h,e}function yc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e}pc.mul=gc,pc.sub=yc;var xc={};function vc(e){return vc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},vc(e)}Object.defineProperty(xc,"__esModule",{value:!0}),xc.create=function(){var e=new bc.ARRAY_TYPE(6);return bc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0,e[4]=0,e[5]=0),e[0]=1,e[3]=1,e},xc.clone=function(e){var t=new bc.ARRAY_TYPE(6);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t},xc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e},xc.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e},xc.fromValues=function(e,t,i,r,n,o){var s=new bc.ARRAY_TYPE(6);return s[0]=e,s[1]=t,s[2]=i,s[3]=r,s[4]=n,s[5]=o,s},xc.set=function(e,t,i,r,n,o,s){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e},xc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=i*o-r*n;return l?(e[0]=o*(l=1/l),e[1]=-r*l,e[2]=-n*l,e[3]=i*l,e[4]=(n*a-o*s)*l,e[5]=(r*s-i*a)*l,e):null},xc.determinant=function(e){return e[0]*e[3]-e[1]*e[2]},xc.multiply=Tc,xc.rotate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=Math.sin(i),h=Math.cos(i);return e[0]=r*h+o*c,e[1]=n*h+s*c,e[2]=r*-c+o*h,e[3]=n*-c+s*h,e[4]=a,e[5]=l,e},xc.scale=function(e,t,i){var r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=i[0],c=i[1];return e[0]=t[0]*l,e[1]=r*l,e[2]=n*c,e[3]=o*c,e[4]=s,e[5]=a,e},xc.translate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=i[0],h=i[1];return e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=r*c+o*h+a,e[5]=n*c+s*h+l,e},xc.fromRotation=function(e,t){var i=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=i,e[2]=-i,e[3]=r,e[4]=0,e[5]=0,e},xc.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e[4]=0,e[5]=0,e},xc.fromTranslation=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=t[0],e[5]=t[1],e},xc.str=function(e){return"mat2d("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+")"},xc.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],1)},xc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e[4]=t[4]+i[4],e[5]=t[5]+i[5],e},xc.subtract=Ec,xc.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*i,e[5]=t[5]*i,e},xc.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e[4]=t[4]+i[4]*r,e[5]=t[5]+i[5]*r,e},xc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]},xc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=t[0],c=t[1],h=t[2],u=t[3],d=t[4],p=t[5];return Math.abs(i-l)<=bc.EPSILON*Math.max(1,Math.abs(i),Math.abs(l))&&Math.abs(r-c)<=bc.EPSILON*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(n-h)<=bc.EPSILON*Math.max(1,Math.abs(n),Math.abs(h))&&Math.abs(o-u)<=bc.EPSILON*Math.max(1,Math.abs(o),Math.abs(u))&&Math.abs(s-d)<=bc.EPSILON*Math.max(1,Math.abs(s),Math.abs(d))&&Math.abs(a-p)<=bc.EPSILON*Math.max(1,Math.abs(a),Math.abs(p))},xc.sub=xc.mul=void 0;var bc=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==vc(e)&&"function"!=typeof e)return{default:e};var i=wc(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}(lc);function wc(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(wc=function(e){return e?i:t})(e)}function Tc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=i[0],h=i[1],u=i[2],d=i[3],p=i[4],f=i[5];return e[0]=r*c+o*h,e[1]=n*c+s*h,e[2]=r*u+o*d,e[3]=n*u+s*d,e[4]=r*p+o*f+a,e[5]=n*p+s*f+l,e}function Ec(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e[4]=t[4]-i[4],e[5]=t[5]-i[5],e}xc.mul=Tc,xc.sub=Ec;var Ac={};function Sc(e){return Sc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Sc(e)}Object.defineProperty(Ac,"__esModule",{value:!0}),Ac.create=function(){var e=new Mc.ARRAY_TYPE(9);return Mc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e},Ac.fromMat4=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e},Ac.clone=function(e){var t=new Mc.ARRAY_TYPE(9);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t},Ac.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},Ac.fromValues=function(e,t,i,r,n,o,s,a,l){var c=new Mc.ARRAY_TYPE(9);return c[0]=e,c[1]=t,c[2]=i,c[3]=r,c[4]=n,c[5]=o,c[6]=s,c[7]=a,c[8]=l,c},Ac.set=function(e,t,i,r,n,o,s,a,l,c){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e[6]=a,e[7]=l,e[8]=c,e},Ac.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},Ac.transpose=function(e,t){if(e===t){var i=t[1],r=t[2],n=t[5];e[1]=t[3],e[2]=t[6],e[3]=i,e[5]=t[7],e[6]=r,e[7]=n}else e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8];return e},Ac.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=h*s-a*c,d=-h*o+a*l,p=c*o-s*l,f=i*u+r*d+n*p;return f?(e[0]=u*(f=1/f),e[1]=(-h*r+n*c)*f,e[2]=(a*r-n*s)*f,e[3]=d*f,e[4]=(h*i-n*l)*f,e[5]=(-a*i+n*o)*f,e[6]=p*f,e[7]=(-c*i+r*l)*f,e[8]=(s*i-r*o)*f,e):null},Ac.adjoint=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8];return e[0]=s*h-a*c,e[1]=n*c-r*h,e[2]=r*a-n*s,e[3]=a*l-o*h,e[4]=i*h-n*l,e[5]=n*o-i*a,e[6]=o*c-s*l,e[7]=r*l-i*c,e[8]=i*s-r*o,e},Ac.determinant=function(e){var t=e[3],i=e[4],r=e[5],n=e[6],o=e[7],s=e[8];return e[0]*(s*i-r*o)+e[1]*(-s*t+r*n)+e[2]*(o*t-i*n)},Ac.multiply=Cc,Ac.translate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=i[0],p=i[1];return e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=a,e[5]=l,e[6]=d*r+p*s+c,e[7]=d*n+p*a+h,e[8]=d*o+p*l+u,e},Ac.rotate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=Math.sin(i),p=Math.cos(i);return e[0]=p*r+d*s,e[1]=p*n+d*a,e[2]=p*o+d*l,e[3]=p*s-d*r,e[4]=p*a-d*n,e[5]=p*l-d*o,e[6]=c,e[7]=h,e[8]=u,e},Ac.scale=function(e,t,i){var r=i[0],n=i[1];return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=n*t[3],e[4]=n*t[4],e[5]=n*t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},Ac.fromTranslation=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=t[0],e[7]=t[1],e[8]=1,e},Ac.fromRotation=function(e,t){var i=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=i,e[2]=0,e[3]=-i,e[4]=r,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},Ac.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=t[1],e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},Ac.fromMat2d=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=0,e[3]=t[2],e[4]=t[3],e[5]=0,e[6]=t[4],e[7]=t[5],e[8]=1,e},Ac.fromQuat=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i+i,a=r+r,l=n+n,c=i*s,h=r*s,u=r*a,d=n*s,p=n*a,f=n*l,m=o*s,_=o*a,g=o*l;return e[0]=1-u-f,e[3]=h-g,e[6]=d+_,e[1]=h+g,e[4]=1-c-f,e[7]=p-m,e[2]=d-_,e[5]=p+m,e[8]=1-c-u,e},Ac.normalFromMat4=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],_=t[14],g=t[15],y=i*a-r*s,x=i*l-n*s,v=i*c-o*s,b=r*l-n*a,w=r*c-o*a,T=n*c-o*l,E=h*m-u*f,A=h*_-d*f,S=h*g-p*f,M=u*_-d*m,I=u*g-p*m,C=d*g-p*_,k=y*C-x*I+v*M+b*S-w*A+T*E;return k?(e[0]=(a*C-l*I+c*M)*(k=1/k),e[1]=(l*S-s*C-c*A)*k,e[2]=(s*I-a*S+c*E)*k,e[3]=(n*I-r*C-o*M)*k,e[4]=(i*C-n*S+o*A)*k,e[5]=(r*S-i*I-o*E)*k,e[6]=(m*T-_*w+g*b)*k,e[7]=(_*v-f*T-g*x)*k,e[8]=(f*w-m*v+g*y)*k,e):null},Ac.projection=function(e,t,i){return e[0]=2/t,e[1]=0,e[2]=0,e[3]=0,e[4]=-2/i,e[5]=0,e[6]=-1,e[7]=1,e[8]=1,e},Ac.str=function(e){return"mat3("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+")"},Ac.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8])},Ac.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e[4]=t[4]+i[4],e[5]=t[5]+i[5],e[6]=t[6]+i[6],e[7]=t[7]+i[7],e[8]=t[8]+i[8],e},Ac.subtract=kc,Ac.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*i,e},Ac.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e[4]=t[4]+i[4]*r,e[5]=t[5]+i[5]*r,e[6]=t[6]+i[6]*r,e[7]=t[7]+i[7]*r,e[8]=t[8]+i[8]*r,e},Ac.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]},Ac.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=e[6],c=e[7],h=e[8],u=t[0],d=t[1],p=t[2],f=t[3],m=t[4],_=t[5],g=t[6],y=t[7],x=t[8];return Math.abs(i-u)<=Mc.EPSILON*Math.max(1,Math.abs(i),Math.abs(u))&&Math.abs(r-d)<=Mc.EPSILON*Math.max(1,Math.abs(r),Math.abs(d))&&Math.abs(n-p)<=Mc.EPSILON*Math.max(1,Math.abs(n),Math.abs(p))&&Math.abs(o-f)<=Mc.EPSILON*Math.max(1,Math.abs(o),Math.abs(f))&&Math.abs(s-m)<=Mc.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))&&Math.abs(a-_)<=Mc.EPSILON*Math.max(1,Math.abs(a),Math.abs(_))&&Math.abs(l-g)<=Mc.EPSILON*Math.max(1,Math.abs(l),Math.abs(g))&&Math.abs(c-y)<=Mc.EPSILON*Math.max(1,Math.abs(c),Math.abs(y))&&Math.abs(h-x)<=Mc.EPSILON*Math.max(1,Math.abs(h),Math.abs(x))},Ac.sub=Ac.mul=void 0;var Mc=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==Sc(e)&&"function"!=typeof e)return{default:e};var i=Ic(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}(lc);function Ic(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(Ic=function(e){return e?i:t})(e)}function Cc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=i[0],p=i[1],f=i[2],m=i[3],_=i[4],g=i[5],y=i[6],x=i[7],v=i[8];return e[0]=d*r+p*s+f*c,e[1]=d*n+p*a+f*h,e[2]=d*o+p*l+f*u,e[3]=m*r+_*s+g*c,e[4]=m*n+_*a+g*h,e[5]=m*o+_*l+g*u,e[6]=y*r+x*s+v*c,e[7]=y*n+x*a+v*h,e[8]=y*o+x*l+v*u,e}function kc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e[4]=t[4]-i[4],e[5]=t[5]-i[5],e[6]=t[6]-i[6],e[7]=t[7]-i[7],e[8]=t[8]-i[8],e}Ac.mul=Cc,Ac.sub=kc;var Pc={};function zc(e){return zc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},zc(e)}Object.defineProperty(Pc,"__esModule",{value:!0}),Pc.create=function(){var e=new Lc.ARRAY_TYPE(16);return Lc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e},Pc.clone=function(e){var t=new Lc.ARRAY_TYPE(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},Pc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},Pc.fromValues=function(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){var _=new Lc.ARRAY_TYPE(16);return _[0]=e,_[1]=t,_[2]=i,_[3]=r,_[4]=n,_[5]=o,_[6]=s,_[7]=a,_[8]=l,_[9]=c,_[10]=h,_[11]=u,_[12]=d,_[13]=p,_[14]=f,_[15]=m,_},Pc.set=function(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e[6]=a,e[7]=l,e[8]=c,e[9]=h,e[10]=u,e[11]=d,e[12]=p,e[13]=f,e[14]=m,e[15]=_,e},Pc.identity=Rc,Pc.transpose=function(e,t){if(e===t){var i=t[1],r=t[2],n=t[3],o=t[6],s=t[7],a=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=i,e[6]=t[9],e[7]=t[13],e[8]=r,e[9]=o,e[11]=t[14],e[12]=n,e[13]=s,e[14]=a}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e},Pc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],_=t[14],g=t[15],y=i*a-r*s,x=i*l-n*s,v=i*c-o*s,b=r*l-n*a,w=r*c-o*a,T=n*c-o*l,E=h*m-u*f,A=h*_-d*f,S=h*g-p*f,M=u*_-d*m,I=u*g-p*m,C=d*g-p*_,k=y*C-x*I+v*M+b*S-w*A+T*E;return k?(e[0]=(a*C-l*I+c*M)*(k=1/k),e[1]=(n*I-r*C-o*M)*k,e[2]=(m*T-_*w+g*b)*k,e[3]=(d*w-u*T-p*b)*k,e[4]=(l*S-s*C-c*A)*k,e[5]=(i*C-n*S+o*A)*k,e[6]=(_*v-f*T-g*x)*k,e[7]=(h*T-d*v+p*x)*k,e[8]=(s*I-a*S+c*E)*k,e[9]=(r*S-i*I-o*E)*k,e[10]=(f*w-m*v+g*y)*k,e[11]=(u*v-h*w-p*y)*k,e[12]=(a*A-s*M-l*E)*k,e[13]=(i*M-r*A+n*E)*k,e[14]=(m*x-f*b-_*y)*k,e[15]=(h*b-u*x+d*y)*k,e):null},Pc.adjoint=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],_=t[14],g=t[15];return e[0]=a*(d*g-p*_)-u*(l*g-c*_)+m*(l*p-c*d),e[1]=-(r*(d*g-p*_)-u*(n*g-o*_)+m*(n*p-o*d)),e[2]=r*(l*g-c*_)-a*(n*g-o*_)+m*(n*c-o*l),e[3]=-(r*(l*p-c*d)-a*(n*p-o*d)+u*(n*c-o*l)),e[4]=-(s*(d*g-p*_)-h*(l*g-c*_)+f*(l*p-c*d)),e[5]=i*(d*g-p*_)-h*(n*g-o*_)+f*(n*p-o*d),e[6]=-(i*(l*g-c*_)-s*(n*g-o*_)+f*(n*c-o*l)),e[7]=i*(l*p-c*d)-s*(n*p-o*d)+h*(n*c-o*l),e[8]=s*(u*g-p*m)-h*(a*g-c*m)+f*(a*p-c*u),e[9]=-(i*(u*g-p*m)-h*(r*g-o*m)+f*(r*p-o*u)),e[10]=i*(a*g-c*m)-s*(r*g-o*m)+f*(r*c-o*a),e[11]=-(i*(a*p-c*u)-s*(r*p-o*u)+h*(r*c-o*a)),e[12]=-(s*(u*_-d*m)-h*(a*_-l*m)+f*(a*d-l*u)),e[13]=i*(u*_-d*m)-h*(r*_-n*m)+f*(r*d-n*u),e[14]=-(i*(a*_-l*m)-s*(r*_-n*m)+f*(r*l-n*a)),e[15]=i*(a*d-l*u)-s*(r*d-n*u)+h*(r*l-n*a),e},Pc.determinant=function(e){var t=e[0],i=e[1],r=e[2],n=e[3],o=e[4],s=e[5],a=e[6],l=e[7],c=e[8],h=e[9],u=e[10],d=e[11],p=e[12],f=e[13],m=e[14],_=e[15];return(t*s-i*o)*(u*_-d*m)-(t*a-r*o)*(h*_-d*f)+(t*l-n*o)*(h*m-u*f)+(i*a-r*s)*(c*_-d*p)-(i*l-n*s)*(c*m-u*p)+(r*l-n*a)*(c*f-h*p)},Pc.multiply=Oc,Pc.translate=function(e,t,i){var r,n,o,s,a,l,c,h,u,d,p,f,m=i[0],_=i[1],g=i[2];return t===e?(e[12]=t[0]*m+t[4]*_+t[8]*g+t[12],e[13]=t[1]*m+t[5]*_+t[9]*g+t[13],e[14]=t[2]*m+t[6]*_+t[10]*g+t[14],e[15]=t[3]*m+t[7]*_+t[11]*g+t[15]):(n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=t[9],p=t[10],f=t[11],e[0]=r=t[0],e[1]=n,e[2]=o,e[3]=s,e[4]=a,e[5]=l,e[6]=c,e[7]=h,e[8]=u,e[9]=d,e[10]=p,e[11]=f,e[12]=r*m+a*_+u*g+t[12],e[13]=n*m+l*_+d*g+t[13],e[14]=o*m+c*_+p*g+t[14],e[15]=s*m+h*_+f*g+t[15]),e},Pc.scale=function(e,t,i){var r=i[0],n=i[1],o=i[2];return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*o,e[9]=t[9]*o,e[10]=t[10]*o,e[11]=t[11]*o,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},Pc.rotate=function(e,t,i,r){var n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S,M,I=r[0],C=r[1],k=r[2],P=Math.hypot(I,C,k);return P0?(i[0]=2*(a*s+h*r+l*o-c*n)/u,i[1]=2*(l*s+h*n+c*r-a*o)/u,i[2]=2*(c*s+h*o+a*n-l*r)/u):(i[0]=2*(a*s+h*r+l*o-c*n),i[1]=2*(l*s+h*n+c*r-a*o),i[2]=2*(c*s+h*o+a*n-l*r)),Bc(e,t,i),e},Pc.getTranslation=function(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e},Pc.getScaling=Fc,Pc.getRotation=function(e,t){var i=new Lc.ARRAY_TYPE(3);Fc(i,t);var r=1/i[0],n=1/i[1],o=1/i[2],s=t[0]*r,a=t[1]*n,l=t[2]*o,c=t[4]*r,h=t[5]*n,u=t[6]*o,d=t[8]*r,p=t[9]*n,f=t[10]*o,m=s+h+f,_=0;return m>0?(_=2*Math.sqrt(m+1),e[3]=.25*_,e[0]=(u-p)/_,e[1]=(d-l)/_,e[2]=(a-c)/_):s>h&&s>f?(_=2*Math.sqrt(1+s-h-f),e[3]=(u-p)/_,e[0]=.25*_,e[1]=(a+c)/_,e[2]=(d+l)/_):h>f?(_=2*Math.sqrt(1+h-s-f),e[3]=(d-l)/_,e[0]=(a+c)/_,e[1]=.25*_,e[2]=(u+p)/_):(_=2*Math.sqrt(1+f-s-h),e[3]=(a-c)/_,e[0]=(d+l)/_,e[1]=(u+p)/_,e[2]=.25*_),e},Pc.fromRotationTranslationScale=function(e,t,i,r){var n=t[0],o=t[1],s=t[2],a=t[3],l=n+n,c=o+o,h=s+s,u=n*l,d=n*c,p=n*h,f=o*c,m=o*h,_=s*h,g=a*l,y=a*c,x=a*h,v=r[0],b=r[1],w=r[2];return e[0]=(1-(f+_))*v,e[1]=(d+x)*v,e[2]=(p-y)*v,e[3]=0,e[4]=(d-x)*b,e[5]=(1-(u+_))*b,e[6]=(m+g)*b,e[7]=0,e[8]=(p+y)*w,e[9]=(m-g)*w,e[10]=(1-(u+f))*w,e[11]=0,e[12]=i[0],e[13]=i[1],e[14]=i[2],e[15]=1,e},Pc.fromRotationTranslationScaleOrigin=function(e,t,i,r,n){var o=t[0],s=t[1],a=t[2],l=t[3],c=o+o,h=s+s,u=a+a,d=o*c,p=o*h,f=o*u,m=s*h,_=s*u,g=a*u,y=l*c,x=l*h,v=l*u,b=r[0],w=r[1],T=r[2],E=n[0],A=n[1],S=n[2],M=(1-(m+g))*b,I=(p+v)*b,C=(f-x)*b,k=(p-v)*w,P=(1-(d+g))*w,z=(_+y)*w,L=(f+x)*T,D=(_-y)*T,R=(1-(d+m))*T;return e[0]=M,e[1]=I,e[2]=C,e[3]=0,e[4]=k,e[5]=P,e[6]=z,e[7]=0,e[8]=L,e[9]=D,e[10]=R,e[11]=0,e[12]=i[0]+E-(M*E+k*A+L*S),e[13]=i[1]+A-(I*E+P*A+D*S),e[14]=i[2]+S-(C*E+z*A+R*S),e[15]=1,e},Pc.fromQuat=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i+i,a=r+r,l=n+n,c=i*s,h=r*s,u=r*a,d=n*s,p=n*a,f=n*l,m=o*s,_=o*a,g=o*l;return e[0]=1-u-f,e[1]=h+g,e[2]=d-_,e[3]=0,e[4]=h-g,e[5]=1-c-f,e[6]=p+m,e[7]=0,e[8]=d+_,e[9]=p-m,e[10]=1-c-u,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},Pc.frustum=function(e,t,i,r,n,o,s){var a=1/(i-t),l=1/(n-r),c=1/(o-s);return e[0]=2*o*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*o*l,e[6]=0,e[7]=0,e[8]=(i+t)*a,e[9]=(n+r)*l,e[10]=(s+o)*c,e[11]=-1,e[12]=0,e[13]=0,e[14]=s*o*2*c,e[15]=0,e},Pc.perspectiveNO=Nc,Pc.perspectiveZO=function(e,t,i,r,n){var o,s=1/Math.tan(t/2);return e[0]=s/i,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=n&&n!==1/0?(e[10]=n*(o=1/(r-n)),e[14]=n*r*o):(e[10]=-1,e[14]=-r),e},Pc.perspectiveFromFieldOfView=function(e,t,i,r){var n=Math.tan(t.upDegrees*Math.PI/180),o=Math.tan(t.downDegrees*Math.PI/180),s=Math.tan(t.leftDegrees*Math.PI/180),a=Math.tan(t.rightDegrees*Math.PI/180),l=2/(s+a),c=2/(n+o);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=c,e[6]=0,e[7]=0,e[8]=-(s-a)*l*.5,e[9]=(n-o)*c*.5,e[10]=r/(i-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*i/(i-r),e[15]=0,e},Pc.orthoNO=jc,Pc.orthoZO=function(e,t,i,r,n,o,s){var a=1/(t-i),l=1/(r-n),c=1/(o-s);return e[0]=-2*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=c,e[11]=0,e[12]=(t+i)*a,e[13]=(n+r)*l,e[14]=o*c,e[15]=1,e},Pc.lookAt=function(e,t,i,r){var n,o,s,a,l,c,h,u,d,p,f=t[0],m=t[1],_=t[2],g=r[0],y=r[1],x=r[2],v=i[0],b=i[1],w=i[2];return Math.abs(f-v)0&&(h*=p=1/Math.sqrt(p),u*=p,d*=p);var f=l*d-c*u,m=c*h-a*d,_=a*u-l*h;return(p=f*f+m*m+_*_)>0&&(f*=p=1/Math.sqrt(p),m*=p,_*=p),e[0]=f,e[1]=m,e[2]=_,e[3]=0,e[4]=u*_-d*m,e[5]=d*f-h*_,e[6]=h*m-u*f,e[7]=0,e[8]=h,e[9]=u,e[10]=d,e[11]=0,e[12]=n,e[13]=o,e[14]=s,e[15]=1,e},Pc.str=function(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"},Pc.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15])},Pc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e[4]=t[4]+i[4],e[5]=t[5]+i[5],e[6]=t[6]+i[6],e[7]=t[7]+i[7],e[8]=t[8]+i[8],e[9]=t[9]+i[9],e[10]=t[10]+i[10],e[11]=t[11]+i[11],e[12]=t[12]+i[12],e[13]=t[13]+i[13],e[14]=t[14]+i[14],e[15]=t[15]+i[15],e},Pc.subtract=Uc,Pc.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*i,e[9]=t[9]*i,e[10]=t[10]*i,e[11]=t[11]*i,e[12]=t[12]*i,e[13]=t[13]*i,e[14]=t[14]*i,e[15]=t[15]*i,e},Pc.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e[4]=t[4]+i[4]*r,e[5]=t[5]+i[5]*r,e[6]=t[6]+i[6]*r,e[7]=t[7]+i[7]*r,e[8]=t[8]+i[8]*r,e[9]=t[9]+i[9]*r,e[10]=t[10]+i[10]*r,e[11]=t[11]+i[11]*r,e[12]=t[12]+i[12]*r,e[13]=t[13]+i[13]*r,e[14]=t[14]+i[14]*r,e[15]=t[15]+i[15]*r,e},Pc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]},Pc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=e[6],c=e[7],h=e[8],u=e[9],d=e[10],p=e[11],f=e[12],m=e[13],_=e[14],g=e[15],y=t[0],x=t[1],v=t[2],b=t[3],w=t[4],T=t[5],E=t[6],A=t[7],S=t[8],M=t[9],I=t[10],C=t[11],k=t[12],P=t[13],z=t[14],L=t[15];return Math.abs(i-y)<=Lc.EPSILON*Math.max(1,Math.abs(i),Math.abs(y))&&Math.abs(r-x)<=Lc.EPSILON*Math.max(1,Math.abs(r),Math.abs(x))&&Math.abs(n-v)<=Lc.EPSILON*Math.max(1,Math.abs(n),Math.abs(v))&&Math.abs(o-b)<=Lc.EPSILON*Math.max(1,Math.abs(o),Math.abs(b))&&Math.abs(s-w)<=Lc.EPSILON*Math.max(1,Math.abs(s),Math.abs(w))&&Math.abs(a-T)<=Lc.EPSILON*Math.max(1,Math.abs(a),Math.abs(T))&&Math.abs(l-E)<=Lc.EPSILON*Math.max(1,Math.abs(l),Math.abs(E))&&Math.abs(c-A)<=Lc.EPSILON*Math.max(1,Math.abs(c),Math.abs(A))&&Math.abs(h-S)<=Lc.EPSILON*Math.max(1,Math.abs(h),Math.abs(S))&&Math.abs(u-M)<=Lc.EPSILON*Math.max(1,Math.abs(u),Math.abs(M))&&Math.abs(d-I)<=Lc.EPSILON*Math.max(1,Math.abs(d),Math.abs(I))&&Math.abs(p-C)<=Lc.EPSILON*Math.max(1,Math.abs(p),Math.abs(C))&&Math.abs(f-k)<=Lc.EPSILON*Math.max(1,Math.abs(f),Math.abs(k))&&Math.abs(m-P)<=Lc.EPSILON*Math.max(1,Math.abs(m),Math.abs(P))&&Math.abs(_-z)<=Lc.EPSILON*Math.max(1,Math.abs(_),Math.abs(z))&&Math.abs(g-L)<=Lc.EPSILON*Math.max(1,Math.abs(g),Math.abs(L))},Pc.sub=Pc.mul=Pc.ortho=Pc.perspective=void 0;var Lc=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==zc(e)&&"function"!=typeof e)return{default:e};var i=Dc(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}(lc);function Dc(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(Dc=function(e){return e?i:t})(e)}function Rc(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Oc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=t[9],p=t[10],f=t[11],m=t[12],_=t[13],g=t[14],y=t[15],x=i[0],v=i[1],b=i[2],w=i[3];return e[0]=x*r+v*a+b*u+w*m,e[1]=x*n+v*l+b*d+w*_,e[2]=x*o+v*c+b*p+w*g,e[3]=x*s+v*h+b*f+w*y,e[4]=(x=i[4])*r+(v=i[5])*a+(b=i[6])*u+(w=i[7])*m,e[5]=x*n+v*l+b*d+w*_,e[6]=x*o+v*c+b*p+w*g,e[7]=x*s+v*h+b*f+w*y,e[8]=(x=i[8])*r+(v=i[9])*a+(b=i[10])*u+(w=i[11])*m,e[9]=x*n+v*l+b*d+w*_,e[10]=x*o+v*c+b*p+w*g,e[11]=x*s+v*h+b*f+w*y,e[12]=(x=i[12])*r+(v=i[13])*a+(b=i[14])*u+(w=i[15])*m,e[13]=x*n+v*l+b*d+w*_,e[14]=x*o+v*c+b*p+w*g,e[15]=x*s+v*h+b*f+w*y,e}function Bc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=r+r,l=n+n,c=o+o,h=r*a,u=r*l,d=r*c,p=n*l,f=n*c,m=o*c,_=s*a,g=s*l,y=s*c;return e[0]=1-(p+m),e[1]=u+y,e[2]=d-g,e[3]=0,e[4]=u-y,e[5]=1-(h+m),e[6]=f+_,e[7]=0,e[8]=d+g,e[9]=f-_,e[10]=1-(h+p),e[11]=0,e[12]=i[0],e[13]=i[1],e[14]=i[2],e[15]=1,e}function Fc(e,t){var i=t[4],r=t[5],n=t[6],o=t[8],s=t[9],a=t[10];return e[0]=Math.hypot(t[0],t[1],t[2]),e[1]=Math.hypot(i,r,n),e[2]=Math.hypot(o,s,a),e}function Nc(e,t,i,r,n){var o,s=1/Math.tan(t/2);return e[0]=s/i,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=n&&n!==1/0?(e[10]=(n+r)*(o=1/(r-n)),e[14]=2*n*r*o):(e[10]=-1,e[14]=-2*r),e}function jc(e,t,i,r,n,o,s){var a=1/(t-i),l=1/(r-n),c=1/(o-s);return e[0]=-2*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*c,e[11]=0,e[12]=(t+i)*a,e[13]=(n+r)*l,e[14]=(s+o)*c,e[15]=1,e}function Uc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e[4]=t[4]-i[4],e[5]=t[5]-i[5],e[6]=t[6]-i[6],e[7]=t[7]-i[7],e[8]=t[8]-i[8],e[9]=t[9]-i[9],e[10]=t[10]-i[10],e[11]=t[11]-i[11],e[12]=t[12]-i[12],e[13]=t[13]-i[13],e[14]=t[14]-i[14],e[15]=t[15]-i[15],e}Pc.perspective=Nc,Pc.ortho=jc,Pc.mul=Oc,Pc.sub=Uc;var Vc={},Gc={};function $c(e){return $c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},$c(e)}Object.defineProperty(Gc,"__esModule",{value:!0}),Gc.create=Hc,Gc.clone=function(e){var t=new qc.ARRAY_TYPE(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},Gc.length=Wc,Gc.fromValues=function(e,t,i){var r=new qc.ARRAY_TYPE(3);return r[0]=e,r[1]=t,r[2]=i,r},Gc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},Gc.set=function(e,t,i,r){return e[0]=t,e[1]=i,e[2]=r,e},Gc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e},Gc.subtract=Xc,Gc.multiply=Yc,Gc.divide=Kc,Gc.ceil=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e},Gc.floor=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e},Gc.min=function(e,t,i){return e[0]=Math.min(t[0],i[0]),e[1]=Math.min(t[1],i[1]),e[2]=Math.min(t[2],i[2]),e},Gc.max=function(e,t,i){return e[0]=Math.max(t[0],i[0]),e[1]=Math.max(t[1],i[1]),e[2]=Math.max(t[2],i[2]),e},Gc.round=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e},Gc.scale=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e},Gc.scaleAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e},Gc.distance=Jc,Gc.squaredDistance=Qc,Gc.squaredLength=eh,Gc.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e},Gc.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e},Gc.normalize=function(e,t){var i=t[0],r=t[1],n=t[2],o=i*i+r*r+n*n;return o>0&&(o=1/Math.sqrt(o)),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o,e},Gc.dot=th,Gc.cross=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[0],a=i[1],l=i[2];return e[0]=n*l-o*a,e[1]=o*s-r*l,e[2]=r*a-n*s,e},Gc.lerp=function(e,t,i,r){var n=t[0],o=t[1],s=t[2];return e[0]=n+r*(i[0]-n),e[1]=o+r*(i[1]-o),e[2]=s+r*(i[2]-s),e},Gc.hermite=function(e,t,i,r,n,o){var s=o*o,a=s*(2*o-3)+1,l=s*(o-2)+o,c=s*(o-1),h=s*(3-2*o);return e[0]=t[0]*a+i[0]*l+r[0]*c+n[0]*h,e[1]=t[1]*a+i[1]*l+r[1]*c+n[1]*h,e[2]=t[2]*a+i[2]*l+r[2]*c+n[2]*h,e},Gc.bezier=function(e,t,i,r,n,o){var s=1-o,a=s*s,l=o*o,c=a*s,h=3*o*a,u=3*l*s,d=l*o;return e[0]=t[0]*c+i[0]*h+r[0]*u+n[0]*d,e[1]=t[1]*c+i[1]*h+r[1]*u+n[1]*d,e[2]=t[2]*c+i[2]*h+r[2]*u+n[2]*d,e},Gc.random=function(e,t){t=t||1;var i=2*qc.RANDOM()*Math.PI,r=2*qc.RANDOM()-1,n=Math.sqrt(1-r*r)*t;return e[0]=Math.cos(i)*n,e[1]=Math.sin(i)*n,e[2]=r*t,e},Gc.transformMat4=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[3]*r+i[7]*n+i[11]*o+i[15];return e[0]=(i[0]*r+i[4]*n+i[8]*o+i[12])/(s=s||1),e[1]=(i[1]*r+i[5]*n+i[9]*o+i[13])/s,e[2]=(i[2]*r+i[6]*n+i[10]*o+i[14])/s,e},Gc.transformMat3=function(e,t,i){var r=t[0],n=t[1],o=t[2];return e[0]=r*i[0]+n*i[3]+o*i[6],e[1]=r*i[1]+n*i[4]+o*i[7],e[2]=r*i[2]+n*i[5]+o*i[8],e},Gc.transformQuat=function(e,t,i){var r=i[0],n=i[1],o=i[2],s=t[0],a=t[1],l=t[2],c=n*l-o*a,h=o*s-r*l,u=r*a-n*s,d=n*u-o*h,p=o*c-r*u,f=r*h-n*c,m=2*i[3];return h*=m,u*=m,p*=2,f*=2,e[0]=s+(c*=m)+(d*=2),e[1]=a+h+p,e[2]=l+u+f,e},Gc.rotateX=function(e,t,i,r){var n=[],o=[];return n[0]=t[0]-i[0],n[1]=t[1]-i[1],n[2]=t[2]-i[2],o[0]=n[0],o[1]=n[1]*Math.cos(r)-n[2]*Math.sin(r),o[2]=n[1]*Math.sin(r)+n[2]*Math.cos(r),e[0]=o[0]+i[0],e[1]=o[1]+i[1],e[2]=o[2]+i[2],e},Gc.rotateY=function(e,t,i,r){var n=[],o=[];return n[0]=t[0]-i[0],n[1]=t[1]-i[1],n[2]=t[2]-i[2],o[0]=n[2]*Math.sin(r)+n[0]*Math.cos(r),o[1]=n[1],o[2]=n[2]*Math.cos(r)-n[0]*Math.sin(r),e[0]=o[0]+i[0],e[1]=o[1]+i[1],e[2]=o[2]+i[2],e},Gc.rotateZ=function(e,t,i,r){var n=[],o=[];return n[0]=t[0]-i[0],n[1]=t[1]-i[1],n[2]=t[2]-i[2],o[0]=n[0]*Math.cos(r)-n[1]*Math.sin(r),o[1]=n[0]*Math.sin(r)+n[1]*Math.cos(r),o[2]=n[2],e[0]=o[0]+i[0],e[1]=o[1]+i[1],e[2]=o[2]+i[2],e},Gc.angle=function(e,t){var i=e[0],r=e[1],n=e[2],o=t[0],s=t[1],a=t[2],l=Math.sqrt(i*i+r*r+n*n)*Math.sqrt(o*o+s*s+a*a),c=l&&th(e,t)/l;return Math.acos(Math.min(Math.max(c,-1),1))},Gc.zero=function(e){return e[0]=0,e[1]=0,e[2]=0,e},Gc.str=function(e){return"vec3("+e[0]+", "+e[1]+", "+e[2]+")"},Gc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]},Gc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=t[0],s=t[1],a=t[2];return Math.abs(i-o)<=qc.EPSILON*Math.max(1,Math.abs(i),Math.abs(o))&&Math.abs(r-s)<=qc.EPSILON*Math.max(1,Math.abs(r),Math.abs(s))&&Math.abs(n-a)<=qc.EPSILON*Math.max(1,Math.abs(n),Math.abs(a))},Gc.forEach=Gc.sqrLen=Gc.len=Gc.sqrDist=Gc.dist=Gc.div=Gc.mul=Gc.sub=void 0;var qc=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==$c(e)&&"function"!=typeof e)return{default:e};var i=Zc(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}(lc);function Zc(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(Zc=function(e){return e?i:t})(e)}function Hc(){var e=new qc.ARRAY_TYPE(3);return qc.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function Wc(e){return Math.hypot(e[0],e[1],e[2])}function Xc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e}function Yc(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e}function Kc(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e}function Jc(e,t){return Math.hypot(t[0]-e[0],t[1]-e[1],t[2]-e[2])}function Qc(e,t){var i=t[0]-e[0],r=t[1]-e[1],n=t[2]-e[2];return i*i+r*r+n*n}function eh(e){var t=e[0],i=e[1],r=e[2];return t*t+i*i+r*r}function th(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}Gc.sub=Xc,Gc.mul=Yc,Gc.div=Kc,Gc.dist=Jc,Gc.sqrDist=Qc,Gc.len=Wc,Gc.sqrLen=eh;var ih,rh=(ih=Hc(),function(e,t,i,r,n,o){var s,a;for(t||(t=3),i||(i=0),a=r?Math.min(r*t+i,e.length):e.length,s=i;s0&&(s=1/Math.sqrt(s)),e[0]=i*s,e[1]=r*s,e[2]=n*s,e[3]=o*s,e},nh.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]},nh.cross=function(e,t,i,r){var n=i[0]*r[1]-i[1]*r[0],o=i[0]*r[2]-i[2]*r[0],s=i[0]*r[3]-i[3]*r[0],a=i[1]*r[2]-i[2]*r[1],l=i[1]*r[3]-i[3]*r[1],c=i[2]*r[3]-i[3]*r[2],h=t[0],u=t[1],d=t[2],p=t[3];return e[0]=u*c-d*l+p*a,e[1]=-h*c+d*s-p*o,e[2]=h*l-u*s+p*n,e[3]=-h*a+u*o-d*n,e},nh.lerp=function(e,t,i,r){var n=t[0],o=t[1],s=t[2],a=t[3];return e[0]=n+r*(i[0]-n),e[1]=o+r*(i[1]-o),e[2]=s+r*(i[2]-s),e[3]=a+r*(i[3]-a),e},nh.random=function(e,t){var i,r,n,o,s,a;t=t||1;do{s=(i=2*sh.RANDOM()-1)*i+(r=2*sh.RANDOM()-1)*r}while(s>=1);do{a=(n=2*sh.RANDOM()-1)*n+(o=2*sh.RANDOM()-1)*o}while(a>=1);var l=Math.sqrt((1-s)/a);return e[0]=t*i,e[1]=t*r,e[2]=t*n*l,e[3]=t*o*l,e},nh.transformMat4=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3];return e[0]=i[0]*r+i[4]*n+i[8]*o+i[12]*s,e[1]=i[1]*r+i[5]*n+i[9]*o+i[13]*s,e[2]=i[2]*r+i[6]*n+i[10]*o+i[14]*s,e[3]=i[3]*r+i[7]*n+i[11]*o+i[15]*s,e},nh.transformQuat=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[0],a=i[1],l=i[2],c=i[3],h=c*r+a*o-l*n,u=c*n+l*r-s*o,d=c*o+s*n-a*r,p=-s*r-a*n-l*o;return e[0]=h*c+p*-s+u*-l-d*-a,e[1]=u*c+p*-a+d*-s-h*-l,e[2]=d*c+p*-l+h*-a-u*-s,e[3]=t[3],e},nh.zero=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e},nh.str=function(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},nh.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]},nh.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=t[0],a=t[1],l=t[2],c=t[3];return Math.abs(i-s)<=sh.EPSILON*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(r-a)<=sh.EPSILON*Math.max(1,Math.abs(r),Math.abs(a))&&Math.abs(n-l)<=sh.EPSILON*Math.max(1,Math.abs(n),Math.abs(l))&&Math.abs(o-c)<=sh.EPSILON*Math.max(1,Math.abs(o),Math.abs(c))},nh.forEach=nh.sqrLen=nh.len=nh.sqrDist=nh.dist=nh.div=nh.mul=nh.sub=void 0;var sh=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==oh(e)&&"function"!=typeof e)return{default:e};var i=ah(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}(lc);function ah(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(ah=function(e){return e?i:t})(e)}function lh(){var e=new sh.ARRAY_TYPE(4);return sh.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function ch(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e}function hh(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e[3]=t[3]*i[3],e}function uh(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e[3]=t[3]/i[3],e}function dh(e,t){return Math.hypot(t[0]-e[0],t[1]-e[1],t[2]-e[2],t[3]-e[3])}function ph(e,t){var i=t[0]-e[0],r=t[1]-e[1],n=t[2]-e[2],o=t[3]-e[3];return i*i+r*r+n*n+o*o}function fh(e){return Math.hypot(e[0],e[1],e[2],e[3])}function mh(e){var t=e[0],i=e[1],r=e[2],n=e[3];return t*t+i*i+r*r+n*n}nh.sub=ch,nh.mul=hh,nh.div=uh,nh.dist=dh,nh.sqrDist=ph,nh.len=fh,nh.sqrLen=mh;var _h=function(){var e=lh();return function(t,i,r,n,o,s){var a,l;for(i||(i=4),r||(r=0),l=n?Math.min(n*i+r,t.length):t.length,a=r;ayh.EPSILON?(e[0]=t[0]/r,e[1]=t[1]/r,e[2]=t[2]/r):(e[0]=1,e[1]=0,e[2]=0),i},Vc.getAngle=function(e,t){var i=zh(e,t);return Math.acos(2*i*i-1)},Vc.multiply=Sh,Vc.rotateX=function(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+s*a,e[1]=n*l+o*a,e[2]=o*l-n*a,e[3]=s*l-r*a,e},Vc.rotateY=function(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l-o*a,e[1]=n*l+s*a,e[2]=o*l+r*a,e[3]=s*l-n*a,e},Vc.rotateZ=function(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+n*a,e[1]=n*l-r*a,e[2]=o*l+s*a,e[3]=s*l-o*a,e},Vc.calculateW=function(e,t){var i=t[0],r=t[1],n=t[2];return e[0]=i,e[1]=r,e[2]=n,e[3]=Math.sqrt(Math.abs(1-i*i-r*r-n*n)),e},Vc.exp=Mh,Vc.ln=Ih,Vc.pow=function(e,t,i){return Ih(e,t),Ph(e,e,i),Mh(e,e),e},Vc.slerp=Ch,Vc.random=function(e){var t=yh.RANDOM(),i=yh.RANDOM(),r=yh.RANDOM(),n=Math.sqrt(1-t),o=Math.sqrt(t);return e[0]=n*Math.sin(2*Math.PI*i),e[1]=n*Math.cos(2*Math.PI*i),e[2]=o*Math.sin(2*Math.PI*r),e[3]=o*Math.cos(2*Math.PI*r),e},Vc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i*i+r*r+n*n+o*o,a=s?1/s:0;return e[0]=-i*a,e[1]=-r*a,e[2]=-n*a,e[3]=o*a,e},Vc.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e},Vc.fromMat3=kh,Vc.fromEuler=function(e,t,i,r){var n=.5*Math.PI/180;t*=n,i*=n,r*=n;var o=Math.sin(t),s=Math.cos(t),a=Math.sin(i),l=Math.cos(i),c=Math.sin(r),h=Math.cos(r);return e[0]=o*l*h-s*a*c,e[1]=s*a*h+o*l*c,e[2]=s*l*c-o*a*h,e[3]=s*l*h+o*a*c,e},Vc.str=function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},Vc.setAxes=Vc.sqlerp=Vc.rotationTo=Vc.equals=Vc.exactEquals=Vc.normalize=Vc.sqrLen=Vc.squaredLength=Vc.len=Vc.length=Vc.lerp=Vc.dot=Vc.scale=Vc.mul=Vc.add=Vc.set=Vc.copy=Vc.fromValues=Vc.clone=void 0;var yh=Th(lc),xh=Th(Ac),vh=Th(Gc),bh=Th(nh);function wh(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(wh=function(e){return e?i:t})(e)}function Th(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==gh(e)&&"function"!=typeof e)return{default:e};var i=wh(t);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}function Eh(){var e=new yh.ARRAY_TYPE(4);return yh.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function Ah(e,t,i){i*=.5;var r=Math.sin(i);return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=Math.cos(i),e}function Sh(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[0],l=i[1],c=i[2],h=i[3];return e[0]=r*h+s*a+n*c-o*l,e[1]=n*h+s*l+o*a-r*c,e[2]=o*h+s*c+r*l-n*a,e[3]=s*h-r*a-n*l-o*c,e}function Mh(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=Math.sqrt(i*i+r*r+n*n),a=Math.exp(o),l=s>0?a*Math.sin(s)/s:0;return e[0]=i*l,e[1]=r*l,e[2]=n*l,e[3]=a*Math.cos(s),e}function Ih(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=Math.sqrt(i*i+r*r+n*n),a=s>0?Math.atan2(s,o)/s:0;return e[0]=i*a,e[1]=r*a,e[2]=n*a,e[3]=.5*Math.log(i*i+r*r+n*n+o*o),e}function Ch(e,t,i,r){var n,o,s,a,l,c=t[0],h=t[1],u=t[2],d=t[3],p=i[0],f=i[1],m=i[2],_=i[3];return(o=c*p+h*f+u*m+d*_)<0&&(o=-o,p=-p,f=-f,m=-m,_=-_),1-o>yh.EPSILON?(n=Math.acos(o),s=Math.sin(n),a=Math.sin((1-r)*n)/s,l=Math.sin(r*n)/s):(a=1-r,l=r),e[0]=a*c+l*p,e[1]=a*h+l*f,e[2]=a*u+l*m,e[3]=a*d+l*_,e}function kh(e,t){var i,r=t[0]+t[4]+t[8];if(r>0)i=Math.sqrt(r+1),e[3]=.5*i,e[0]=(t[5]-t[7])*(i=.5/i),e[1]=(t[6]-t[2])*i,e[2]=(t[1]-t[3])*i;else{var n=0;t[4]>t[0]&&(n=1),t[8]>t[3*n+n]&&(n=2);var o=(n+1)%3,s=(n+2)%3;i=Math.sqrt(t[3*n+n]-t[3*o+o]-t[3*s+s]+1),e[n]=.5*i,e[3]=(t[3*o+s]-t[3*s+o])*(i=.5/i),e[o]=(t[3*o+n]+t[3*n+o])*i,e[s]=(t[3*s+n]+t[3*n+s])*i}return e}Vc.clone=bh.clone,Vc.fromValues=bh.fromValues,Vc.copy=bh.copy,Vc.set=bh.set,Vc.add=bh.add,Vc.mul=Sh;var Ph=bh.scale;Vc.scale=Ph;var zh=bh.dot;Vc.dot=zh,Vc.lerp=bh.lerp;var Lh=bh.length;Vc.length=Lh,Vc.len=Lh;var Dh=bh.squaredLength;Vc.squaredLength=Dh,Vc.sqrLen=Dh;var Rh=bh.normalize;Vc.normalize=Rh,Vc.exactEquals=bh.exactEquals,Vc.equals=bh.equals;var Oh,Bh,Fh,Nh=(Oh=vh.create(),Bh=vh.fromValues(1,0,0),Fh=vh.fromValues(0,1,0),function(e,t,i){var r=vh.dot(t,i);return r<-.999999?(vh.cross(Oh,Bh,t),vh.len(Oh)<1e-6&&vh.cross(Oh,Fh,t),vh.normalize(Oh,Oh),Ah(e,Oh,Math.PI),e):r>.999999?(e[0]=0,e[1]=0,e[2]=0,e[3]=1,e):(vh.cross(Oh,t,i),e[0]=Oh[0],e[1]=Oh[1],e[2]=Oh[2],e[3]=1+r,Rh(e,e))});Vc.rotationTo=Nh;var jh,Uh,Vh=(jh=Eh(),Uh=Eh(),function(e,t,i,r,n,o){return Ch(jh,t,n,o),Ch(Uh,i,r,o),Ch(e,jh,Uh,2*o*(1-o)),e});Vc.sqlerp=Vh;var Gh,$h=(Gh=xh.create(),function(e,t,i,r){return Gh[0]=i[0],Gh[3]=i[1],Gh[6]=i[2],Gh[1]=r[0],Gh[4]=r[1],Gh[7]=r[2],Gh[2]=-t[0],Gh[5]=-t[1],Gh[8]=-t[2],Rh(e,kh(e,Gh))});Vc.setAxes=$h;var qh={};function Zh(e){return Zh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Zh(e)}Object.defineProperty(qh,"__esModule",{value:!0}),qh.create=function(){var e=new Hh.ARRAY_TYPE(8);return Hh.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[4]=0,e[5]=0,e[6]=0,e[7]=0),e[3]=1,e},qh.clone=function(e){var t=new Hh.ARRAY_TYPE(8);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t},qh.fromValues=function(e,t,i,r,n,o,s,a){var l=new Hh.ARRAY_TYPE(8);return l[0]=e,l[1]=t,l[2]=i,l[3]=r,l[4]=n,l[5]=o,l[6]=s,l[7]=a,l},qh.fromRotationTranslationValues=function(e,t,i,r,n,o,s){var a=new Hh.ARRAY_TYPE(8);a[0]=e,a[1]=t,a[2]=i,a[3]=r;var l=.5*n,c=.5*o,h=.5*s;return a[4]=l*r+c*i-h*t,a[5]=c*r+h*e-l*i,a[6]=h*r+l*t-c*e,a[7]=-l*e-c*t-h*i,a},qh.fromRotationTranslation=Jh,qh.fromTranslation=function(e,t){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=.5*t[0],e[5]=.5*t[1],e[6]=.5*t[2],e[7]=0,e},qh.fromRotation=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=0,e[5]=0,e[6]=0,e[7]=0,e},qh.fromMat4=function(e,t){var i=Wh.create();Xh.getRotation(i,t);var r=new Hh.ARRAY_TYPE(3);return Xh.getTranslation(r,t),Jh(e,i,r),e},qh.copy=Qh,qh.identity=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e[6]=0,e[7]=0,e},qh.set=function(e,t,i,r,n,o,s,a,l){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e[6]=a,e[7]=l,e},qh.getDual=function(e,t){return e[0]=t[4],e[1]=t[5],e[2]=t[6],e[3]=t[7],e},qh.setDual=function(e,t){return e[4]=t[0],e[5]=t[1],e[6]=t[2],e[7]=t[3],e},qh.getTranslation=function(e,t){var i=t[4],r=t[5],n=t[6],o=t[7],s=-t[0],a=-t[1],l=-t[2],c=t[3];return e[0]=2*(i*c+o*s+r*l-n*a),e[1]=2*(r*c+o*a+n*s-i*l),e[2]=2*(n*c+o*l+i*a-r*s),e},qh.translate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=.5*i[0],l=.5*i[1],c=.5*i[2],h=t[4],u=t[5],d=t[6],p=t[7];return e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=s*a+n*c-o*l+h,e[5]=s*l+o*a-r*c+u,e[6]=s*c+r*l-n*a+d,e[7]=-r*a-n*l-o*c+p,e},qh.rotateX=function(e,t,i){var r=-t[0],n=-t[1],o=-t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=a*s+h*r+l*o-c*n,d=l*s+h*n+c*r-a*o,p=c*s+h*o+a*n-l*r,f=h*s-a*r-l*n-c*o;return Wh.rotateX(e,t,i),e[4]=u*(s=e[3])+f*(r=e[0])+d*(o=e[2])-p*(n=e[1]),e[5]=d*s+f*n+p*r-u*o,e[6]=p*s+f*o+u*n-d*r,e[7]=f*s-u*r-d*n-p*o,e},qh.rotateY=function(e,t,i){var r=-t[0],n=-t[1],o=-t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=a*s+h*r+l*o-c*n,d=l*s+h*n+c*r-a*o,p=c*s+h*o+a*n-l*r,f=h*s-a*r-l*n-c*o;return Wh.rotateY(e,t,i),e[4]=u*(s=e[3])+f*(r=e[0])+d*(o=e[2])-p*(n=e[1]),e[5]=d*s+f*n+p*r-u*o,e[6]=p*s+f*o+u*n-d*r,e[7]=f*s-u*r-d*n-p*o,e},qh.rotateZ=function(e,t,i){var r=-t[0],n=-t[1],o=-t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=a*s+h*r+l*o-c*n,d=l*s+h*n+c*r-a*o,p=c*s+h*o+a*n-l*r,f=h*s-a*r-l*n-c*o;return Wh.rotateZ(e,t,i),e[4]=u*(s=e[3])+f*(r=e[0])+d*(o=e[2])-p*(n=e[1]),e[5]=d*s+f*n+p*r-u*o,e[6]=p*s+f*o+u*n-d*r,e[7]=f*s-u*r-d*n-p*o,e},qh.rotateByQuatAppend=function(e,t,i){var r=i[0],n=i[1],o=i[2],s=i[3],a=t[0],l=t[1],c=t[2],h=t[3];return e[0]=a*s+h*r+l*o-c*n,e[1]=l*s+h*n+c*r-a*o,e[2]=c*s+h*o+a*n-l*r,e[3]=h*s-a*r-l*n-c*o,e[4]=(a=t[4])*s+(h=t[7])*r+(l=t[5])*o-(c=t[6])*n,e[5]=l*s+h*n+c*r-a*o,e[6]=c*s+h*o+a*n-l*r,e[7]=h*s-a*r-l*n-c*o,e},qh.rotateByQuatPrepend=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[0],l=i[1],c=i[2],h=i[3];return e[0]=r*h+s*a+n*c-o*l,e[1]=n*h+s*l+o*a-r*c,e[2]=o*h+s*c+r*l-n*a,e[3]=s*h-r*a-n*l-o*c,e[4]=r*(h=i[7])+s*(a=i[4])+n*(c=i[6])-o*(l=i[5]),e[5]=n*h+s*l+o*a-r*c,e[6]=o*h+s*c+r*l-n*a,e[7]=s*h-r*a-n*l-o*c,e},qh.rotateAroundAxis=function(e,t,i,r){if(Math.abs(r)0){i=Math.sqrt(i);var r=t[0]/i,n=t[1]/i,o=t[2]/i,s=t[3]/i,a=t[4],l=t[5],c=t[6],h=t[7],u=r*a+n*l+o*c+s*h;e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=(a-r*u)/i,e[5]=(l-n*u)/i,e[6]=(c-o*u)/i,e[7]=(h-s*u)/i}return e},qh.str=function(e){return"quat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+")"},qh.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]},qh.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=e[6],c=e[7],h=t[0],u=t[1],d=t[2],p=t[3],f=t[4],m=t[5],_=t[6],g=t[7];return Math.abs(i-h)<=Hh.EPSILON*Math.max(1,Math.abs(i),Math.abs(h))&&Math.abs(r-u)<=Hh.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(n-d)<=Hh.EPSILON*Math.max(1,Math.abs(n),Math.abs(d))&&Math.abs(o-p)<=Hh.EPSILON*Math.max(1,Math.abs(o),Math.abs(p))&&Math.abs(s-f)<=Hh.EPSILON*Math.max(1,Math.abs(s),Math.abs(f))&&Math.abs(a-m)<=Hh.EPSILON*Math.max(1,Math.abs(a),Math.abs(m))&&Math.abs(l-_)<=Hh.EPSILON*Math.max(1,Math.abs(l),Math.abs(_))&&Math.abs(c-g)<=Hh.EPSILON*Math.max(1,Math.abs(c),Math.abs(g))},qh.sqrLen=qh.squaredLength=qh.len=qh.length=qh.dot=qh.mul=qh.setReal=qh.getReal=void 0;var Hh=Kh(lc),Wh=Kh(Vc),Xh=Kh(Pc);function Yh(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(Yh=function(e){return e?i:t})(e)}function Kh(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==Zh(e)&&"function"!=typeof e)return{default:e};var i=Yh(t);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}function Jh(e,t,i){var r=.5*i[0],n=.5*i[1],o=.5*i[2],s=t[0],a=t[1],l=t[2],c=t[3];return e[0]=s,e[1]=a,e[2]=l,e[3]=c,e[4]=r*c+n*l-o*a,e[5]=n*c+o*s-r*l,e[6]=o*c+r*a-n*s,e[7]=-r*s-n*a-o*l,e}function Qh(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e}function eu(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[4],l=i[5],c=i[6],h=i[7],u=t[4],d=t[5],p=t[6],f=t[7],m=i[0],_=i[1],g=i[2],y=i[3];return e[0]=r*y+s*m+n*g-o*_,e[1]=n*y+s*_+o*m-r*g,e[2]=o*y+s*g+r*_-n*m,e[3]=s*y-r*m-n*_-o*g,e[4]=r*h+s*a+n*c-o*l+u*y+f*m+d*g-p*_,e[5]=n*h+s*l+o*a-r*c+d*y+f*_+p*m-u*g,e[6]=o*h+s*c+r*l-n*a+p*y+f*g+u*_-d*m,e[7]=s*h-r*a-n*l-o*c+f*y-u*m-d*_-p*g,e}qh.getReal=Wh.copy,qh.setReal=Wh.copy,qh.mul=eu;var tu=Wh.dot;qh.dot=tu;var iu=Wh.length;qh.length=iu,qh.len=iu;var ru=Wh.squaredLength;qh.squaredLength=ru,qh.sqrLen=ru;var nu={};function ou(e){return ou="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ou(e)}Object.defineProperty(nu,"__esModule",{value:!0}),nu.create=lu,nu.clone=function(e){var t=new su.ARRAY_TYPE(2);return t[0]=e[0],t[1]=e[1],t},nu.fromValues=function(e,t){var i=new su.ARRAY_TYPE(2);return i[0]=e,i[1]=t,i},nu.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e},nu.set=function(e,t,i){return e[0]=t,e[1]=i,e},nu.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e},nu.subtract=cu,nu.multiply=hu,nu.divide=uu,nu.ceil=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e},nu.floor=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e},nu.min=function(e,t,i){return e[0]=Math.min(t[0],i[0]),e[1]=Math.min(t[1],i[1]),e},nu.max=function(e,t,i){return e[0]=Math.max(t[0],i[0]),e[1]=Math.max(t[1],i[1]),e},nu.round=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e},nu.scale=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e},nu.scaleAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e},nu.distance=du,nu.squaredDistance=pu,nu.length=fu,nu.squaredLength=mu,nu.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e},nu.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e},nu.normalize=function(e,t){var i=t[0],r=t[1],n=i*i+r*r;return n>0&&(n=1/Math.sqrt(n)),e[0]=t[0]*n,e[1]=t[1]*n,e},nu.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]},nu.cross=function(e,t,i){var r=t[0]*i[1]-t[1]*i[0];return e[0]=e[1]=0,e[2]=r,e},nu.lerp=function(e,t,i,r){var n=t[0],o=t[1];return e[0]=n+r*(i[0]-n),e[1]=o+r*(i[1]-o),e},nu.random=function(e,t){t=t||1;var i=2*su.RANDOM()*Math.PI;return e[0]=Math.cos(i)*t,e[1]=Math.sin(i)*t,e},nu.transformMat2=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[2]*n,e[1]=i[1]*r+i[3]*n,e},nu.transformMat2d=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[2]*n+i[4],e[1]=i[1]*r+i[3]*n+i[5],e},nu.transformMat3=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[3]*n+i[6],e[1]=i[1]*r+i[4]*n+i[7],e},nu.transformMat4=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[4]*n+i[12],e[1]=i[1]*r+i[5]*n+i[13],e},nu.rotate=function(e,t,i,r){var n=t[0]-i[0],o=t[1]-i[1],s=Math.sin(r),a=Math.cos(r);return e[0]=n*a-o*s+i[0],e[1]=n*s+o*a+i[1],e},nu.angle=function(e,t){var i=e[0],r=e[1],n=t[0],o=t[1],s=Math.sqrt(i*i+r*r)*Math.sqrt(n*n+o*o);return Math.acos(Math.min(Math.max(s&&(i*n+r*o)/s,-1),1))},nu.zero=function(e){return e[0]=0,e[1]=0,e},nu.str=function(e){return"vec2("+e[0]+", "+e[1]+")"},nu.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]},nu.equals=function(e,t){var i=e[0],r=e[1],n=t[0],o=t[1];return Math.abs(i-n)<=su.EPSILON*Math.max(1,Math.abs(i),Math.abs(n))&&Math.abs(r-o)<=su.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))},nu.forEach=nu.sqrLen=nu.sqrDist=nu.dist=nu.div=nu.mul=nu.sub=nu.len=void 0;var su=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!==ou(e)&&"function"!=typeof e)return{default:e};var i=au(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o]}return r.default=e,i&&i.set(e,r),r}(lc);function au(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(au=function(e){return e?i:t})(e)}function lu(){var e=new su.ARRAY_TYPE(2);return su.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0),e}function cu(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e}function hu(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e}function uu(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e}function du(e,t){return Math.hypot(t[0]-e[0],t[1]-e[1])}function pu(e,t){var i=t[0]-e[0],r=t[1]-e[1];return i*i+r*r}function fu(e){return Math.hypot(e[0],e[1])}function mu(e){var t=e[0],i=e[1];return t*t+i*i}nu.len=fu,nu.sub=cu,nu.mul=hu,nu.div=uu,nu.dist=du,nu.sqrDist=pu,nu.sqrLen=mu;var _u=function(){var e=lu();return function(t,i,r,n,o,s){var a,l;for(i||(i=2),r||(r=0),l=n?Math.min(n*i+r,t.length):t.length,a=r;a0;o--)r=1<this.canonical.z?new $u(e,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new $u(e,this.wrap,e,this.canonical.x>>t,this.canonical.y>>t)}calculateScaledKey(e,t=!0){if(this.overscaledZ===e&&t)return this.key;if(e>this.canonical.z)return qu(this.wrap*+t,e,this.canonical.z,this.canonical.x,this.canonical.y);{const i=this.canonical.z-e;return qu(this.wrap*+t,e,e,this.canonical.x>>i,this.canonical.y>>i)}}isChildOf(e){if(e.wrap!==this.wrap)return!1;const t=this.canonical.z-e.canonical.z;return 0===e.overscaledZ||e.overscaledZ>t&&e.canonical.y===this.canonical.y>>t}children(e){if(this.overscaledZ>=e)return[new $u(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const t=this.canonical.z+1,i=2*this.canonical.x,r=2*this.canonical.y;return[new $u(t,this.wrap,t,i,r),new $u(t,this.wrap,t,i+1,r),new $u(t,this.wrap,t,i,r+1),new $u(t,this.wrap,t,i+1,r+1)]}isLessThan(e){return this.wrape.wrap)&&(this.overscaledZe.overscaledZ)&&(this.canonical.xe.canonical.x)&&this.canonical.y{let t=e.canonical.x-1,i=e.wrap;return t<0&&(t=(1<{let t=e.canonical.x+1,i=e.wrap;return t===1<new $u(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,(0===e.canonical.y?1<new $u(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y===(1<=0;if(0===o)return 0;o!==t.length&&(i=!1)}return i?2:1}function Ku(e,t){for(const i of e.projections){const r=Xu(t,e.points[0],i.axis);if(i.projection[1]r[1])return 0}return 1}function Ju(e,t){let i=0;const r=[0,0,0,0];for(let n=0;n=0&&i++;return i}class Qu{constructor(e,t){this.points=e||new Array(8).fill([0,0,0]),this.planes=t||new Array(6).fill([0,0,0,0]),this.bounds=ed.fromPoints(this.points),this.projections=[],this.frustumEdges=[zu.sub([],this.points[2],this.points[3]),zu.sub([],this.points[0],this.points[3]),zu.sub([],this.points[4],this.points[0]),zu.sub([],this.points[5],this.points[1]),zu.sub([],this.points[6],this.points[2]),zu.sub([],this.points[7],this.points[3])];for(const e of this.frustumEdges){const t=[0,-e[2],e[1]],i=[e[2],0,-e[0]];this.projections.push({axis:t,projection:Xu(this.points,this.points[0],t)}),this.projections.push({axis:i,projection:Xu(this.points,this.points[0],i)})}}static fromInvProjectionMatrix(e,t,i,r){const n=Math.pow(2,i),o=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((i=>{const o=yu.transformMat4([],i,e),s=1/o[3]/t*n;return yu.mul(o,o,[s,s,r?1/o[3]:s,s])})),s=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((e=>{const t=zu.sub([],o[e[0]],o[e[1]]),i=zu.sub([],o[e[2]],o[e[1]]),r=zu.normalize([],zu.cross([],t,i)),n=-zu.dot(r,o[e[1]]);return r.concat(n)})),a=[];for(let e=0;es[1]||s[0]>o[1])return 0}return 1}}class ed{static fromPoints(e){const t=[1/0,1/0,1/0],i=[-1/0,-1/0,-1/0];for(const r of e)zu.min(t,t,r),zu.max(i,i,r);return new ed(t,i)}static fromTileIdAndHeight(e,t,i){const r=1<e.max[t]||e.min[t]>this.max[t])return!1;return!0}intersectsAabbXY(e){return!(this.min[0]>e.max[0]||e.min[0]>this.max[0]||this.min[1]>e.max[1]||e.min[1]>this.max[1])}encapsulate(e){for(let t=0;t<3;t++)this.min[t]=Math.min(this.min[t],e.min[t]),this.max[t]=Math.max(this.max[t],e.max[t])}encapsulatePoint(e){for(let t=0;t<3;t++)this.min[t]=Math.min(this.min[t],e[t]),this.max[t]=Math.max(this.max[t],e[t])}closestPoint(e){return[Math.max(Math.min(this.max[0],e[0]),this.min[0]),Math.max(Math.min(this.max[1],e[1]),this.min[1]),Math.max(Math.min(this.max[2],e[2]),this.min[2])]}}Ls(ed,"Aabb");const td=5,id=6,rd=cr/Math.PI/2,nd=16383,od=64,sd=[od,32,16],ad=-rd,ld=rd,cd=[new ed([ad,ad,ad],[ld,ld,ld]),new ed([ad,ad,ad],[0,0,ld]),new ed([0,ad,ad],[ld,0,ld]),new ed([ad,0,ad],[0,ld,ld]),new ed([0,0,ad],[ld,ld,ld])];function hd(e){return e*rd/$d}function ud(e,t,i,r=!0){const n=zu.scale([],e._camera.position,e.worldSize),o=[t,i,1,1];yu.transformMat4(o,o,e.pixelMatrixInverse),yu.scale(o,o,1/o[3]);const s=zu.sub([],o,n),a=zu.normalize([],s),l=e.globeMatrix,c=[l[12],l[13],l[14]],h=zu.sub([],c,n),u=zu.length(h),d=zu.normalize([],h),p=e.worldSize/(2*Math.PI),f=zu.dot(d,a),m=Math.asin(p/u);if(m1?null:function(e,t,i,r){const n=Math.sin(i);return e*(Math.sin((1-r)*i)/n)+t*(Math.sin(r*i)/n)}(e.a[t],e.b[t],e.angle,k(i,0,1))+e.center[t]}function fd(e){if(e.z<=1)return cd[e.z+2*e.y+e.x];const t=vd(xd(e));return ed.fromPoints(t)}function md(e,t,i){return zu.scale(e,e,1-i),zu.scaleAndAdd(e,e,t,i)}function _d(e,t){const i=zd(t.zoom);if(0===i)return fd(e);const r=xd(e),n=vd(r),o=Kd(r.getWest())*t.worldSize,s=Kd(r.getEast())*t.worldSize,a=Jd(r.getNorth())*t.worldSize,l=Jd(r.getSouth())*t.worldSize,c=[o,a,0],h=[s,a,0],u=[o,l,0],d=[s,l,0],p=Su.invert([],t.globeMatrix);return zu.transformMat4(c,c,p),zu.transformMat4(h,h,p),zu.transformMat4(u,u,p),zu.transformMat4(d,d,p),n[0]=md(n[0],u,i),n[1]=md(n[1],d,i),n[2]=md(n[2],h,i),n[3]=md(n[3],c,i),ed.fromPoints(n)}function gd(e,t,i){for(const r of e)zu.transformMat4(r,r,t),zu.scale(r,r,i)}function yd(e,t,i,r){const n=t/e.worldSize,o=e.globeMatrix;if(i.z<=1){const e=fd(i).getCorners();return gd(e,o,n),ed.fromPoints(e)}const s=xd(i,r),a=vd(s);gd(a,o,n);const l=Number.MAX_VALUE,c=[-l,-l,-l],h=[l,l,l];if(s.contains(e.center)){for(const e of a)zu.min(h,h,e),zu.max(c,c,e);c[2]=0;const t=e.point,i=[t.x*n,t.y*n,0];return zu.min(h,h,i),zu.max(c,c,i),new ed(h,c)}const u=[o[12]*n,o[13]*n,o[14]*n],d=s.getCenter(),p=k(e.center.lat,-rp,rp),f=k(d.lat,-rp,rp),m=Kd(e.center.lng),_=Jd(p);let g=m-Kd(d.lng);const y=_-Jd(f);g>.5?g-=1:g<-.5&&(g+=1);let x=0;if(Math.abs(g)>Math.abs(y))x=g>=0?1:3;else{x=y>=0?0:2;const e=[o[4]*n,o[5]*n,o[6]*n],t=-Math.sin(w(y>=0?s.getSouth():s.getNorth()))*rd;zu.scaleAndAdd(u,u,e,t)}const v=a[x],b=a[(x+1)%4],T=new dd(v,b,u),E=[pd(T,0)||v[0],pd(T,1)||v[1],pd(T,2)||v[2]],A=zd(e.zoom);if(A>0){const r=function({x:e,y:t,z:i},r,n,o,s){const a=1/(1<.5?d=-1:p<-.5&&(d=1),l=((l+d)*r-(o*=r))*n+o,c=((c+d)*r-o)*n+o,h=(h*r-(s*=r))*n+s,u=(u*r-s)*n+s,[[l,u,0],[c,u,0],[c,h,0],[l,h,0]]}(i,t,e._pixelsPerMercatorPixel,m,_);for(let e=0;e0;return 0===r&&!n&&!o}function Rd(e,t,i,r){const n=t.getNorth(),o=t.getSouth(),s=t.getWest(),a=t.getEast(),l=1<0){const e=180/r;Eu.multiply(p,p,[e/c+1,0,0,0,e/h+1,0,-.5*e/u,.5*e/d,1])}return p[2]=l,p[5]=e.x,p[8]=e.y,p}function Od(e){const t=rp-5;e=k(e,-t,t)/t*90;const i=Math.pow(Math.abs(Math.sin(w(e))),3);return Math.round(i*(sd.length-1))}function Bd(e){const t=[0,0,0],i=Su.identity(new Float64Array(16));return Su.multiply(i,e.pixelMatrix,e.globeMatrix),zu.transformMat4(t,t,i),new y(t[0],t[1])}function Fd(e,t){const i=wd(t.lat,t.lng),r=function(e){const t=wd(e._center.lat,e._center.lng),i=zu.fromValues(0,1,0);let r=zu.cross([],i,t);const n=Su.fromRotation([],-e.angle,t);r=zu.transformMat4(r,r,n),Su.fromRotation(n,-e._pitch,r);const o=zu.normalize([],t);return zu.scale(o,o,hd(e.cameraToCenterDistance/e.pixelsPerMeter)),zu.transformMat4(o,o,n),zu.add([],t,o)}(e),n=zu.subtract([],r,i);return zu.angle(n,i)}function Nd(e,t){return Fd(e,t)>Math.PI/2*1.01}const jd=w(85),Ud=Math.cos(jd),Vd=Math.sin(jd);class Gd{constructor(e){this._createGrid(e),this._createPoles(e)}destroy(){this._poleIndexBuffer.destroy(),this._gridBuffer.destroy(),this._gridIndexBuffer.destroy(),this._poleNorthVertexBuffer.destroy(),this._poleSouthVertexBuffer.destroy();for(const e of this._poleSegments)e.destroy();for(const e of this._gridSegments)e.withSkirts.destroy(),e.withoutSkirts.destroy()}_fillGridMeshWithLods(e,t){const i=new ka,r=new Ha,n=[],o=e+1+2,s=t[0]+1,a=t[0]+1+(1+t.length),l=(e,t,i)=>{let r=e===o-1?e-2:0===e?e:e-1;return r+=i?24575:0,[r,t]};for(let e=0;e90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Zd(z(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(e){const t=Math.PI/180,i=this.lat*t,r=e.lat*t,n=Math.sin(i)*Math.sin(r)+Math.cos(i)*Math.cos(r)*Math.cos((e.lng-this.lng)*t);return $d*Math.acos(Math.min(n,1))}toBounds(e=0){const t=360*e/40075017,i=t/Math.cos(Math.PI/180*this.lat);return new sc(new Zd(this.lng-i,this.lat-t),new Zd(this.lng+i,this.lat+t))}toEcef(e){const t=hd(e);return wd(this.lat,this.lng,rd+t)}static convert(e){if(e instanceof Zd)return e;if(Array.isArray(e)&&(2===e.length||3===e.length))return new Zd(Number(e[0]),Number(e[1]));if(!Array.isArray(e)&&"object"==typeof e&&null!==e)return new Zd(Number("lng"in e?e.lng:e.lon),Number(e.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}var Hd=Zd;const Wd=0,Xd=25.5;function Yd(e){return qd*Math.cos(e*Math.PI/180)}function Kd(e){return(180+e)/360}function Jd(e){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e*Math.PI/360)))/360}function Qd(e,t){return e/Yd(t)}function ep(e){return 360*e-180}function tp(e){return 360/Math.PI*Math.atan(Math.exp((180-360*e)*Math.PI/180))-90}function ip(e,t){return e*Yd(tp(t))}const rp=85.051129;function np(e){return Math.cos(w(k(e,-rp,rp)))}function op(e,t){const i=k(t,Wd,Xd),r=Math.pow(2,i);return np(e)*qd/(512*r)}function sp(e){return 1/Math.cos(e*Math.PI/180)}function ap(e,t=0){const i=Math.exp(Math.PI*(1-(e.y+t/cr)/(1<=l?(cp(e,t,i,c,h,o,u,a,l),cp(e,c,h,r,n,u,s,a,l)):e.push(s)}function hp(e,t,i){let r=e[0],n=r.x,o=r.y;t(r);const s=[r];for(let a=1;ae.x+1||re.y+1)&&W("Geometry exceeds allowed extent, reduce your vector tile buffer size"),e}function _p(e,t,i){const r=e.loadGeometry(),n=e.extent,o=cr/n;if(t&&i&&i.projection.isReprojectedInTileSpace){const o=1<{const i=ep((t.x+e.x/n)/o),r=tp((t.y+e.y/n)/o),h=c.project(i,r);e.x=(h.x*s-a)*n,e.y=(h.y*s-l)*n};for(let t=0;t=n||i.y<0||i.y>=n||(h(i),e.push(i));r[t]=e}}for(const e of r)for(const t of e)mp(t,o);return r}function gp(e,t){return{type:e.type,id:e.id,properties:e.properties,geometry:t?_p(e):[]}}function yp(e,t,i,r,n){e.emplaceBack(2*t+(r+1)/2,2*i+(n+1)/2)}function xp(e,t,i){const r=16384;e.emplaceBack(t.x,t.y,t.z,i[0]*r,i[1]*r,i[2]*r)}class vp{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.hasPattern=!1,this.projection=e.projection,this.layoutVertexArray=new ka,this.indexArray=new Ha,this.segments=new xl,this.programConfigurations=new ec(e.layers,e.zoom),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id))}populate(e,t,i,r){const n=this.layers[0],o=[];let s=null;"circle"===n.type&&(s=n.layout.get("circle-sort-key"));for(const{feature:t,id:n,index:a,sourceLayerIndex:l}of e){const e=this.layers[0]._featureFilter.needGeometry,c=gp(t,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),c,i))continue;const h=s?s.evaluate(c,{},i):void 0,u={id:n,properties:t.properties,type:t.type,sourceLayerIndex:l,index:a,geometry:e?c.geometry:_p(t,i,r),patterns:{},sortKey:h};o.push(u)}s&&o.sort(((e,t)=>e.sortKey-t.sortKey));let a=null;"globe"===r.projection.name&&(this.globeExtVertexArray=new Fa,a=r.projection);for(const r of o){const{geometry:n,index:o,sourceLayerIndex:s}=r,l=e[o].feature;this.addFeature(r,n,o,t.availableImages,i,a,t.brightness),t.featureIndex.insert(l,n,o,s,this.index)}}update(e,t,i,r,n){const o=0!==Object.keys(e).length;o&&!this.stateDependentLayers.length||this.programConfigurations.updatePaintArrays(e,t,o?this.stateDependentLayers:this.layers,i,r,n)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,gl.members),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.globeExtVertexArray&&(this.globeExtVertexBuffer=e.createVertexBuffer(this.globeExtVertexArray,yl.members))),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy())}addFeature(e,t,i,r,n,o,s){for(const i of t)for(const t of i){const i=t.x,r=t.y;if(i<0||i>=cr||r<0||r>=cr)continue;if(o){const e=o.projectTilePoint(i,r,n),t=o.upVector(n,i,r),s=this.globeExtVertexArray;xp(s,e,t),xp(s,e,t),xp(s,e,t),xp(s,e,t)}const s=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,e.sortKey),a=s.vertexLength;yp(this.layoutVertexArray,i,r,-1,-1),yp(this.layoutVertexArray,i,r,1,-1),yp(this.layoutVertexArray,i,r,1,1),yp(this.layoutVertexArray,i,r,-1,1),this.indexArray.emplaceBack(a,a+1,a+2),this.indexArray.emplaceBack(a,a+2,a+3),s.vertexLength+=4,s.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,i,{},r,n,s)}}function bp(e,t){for(let i=0;i1){if(Ap(e,t))return!0;for(let r=0;r1?i:i.sub(t)._mult(n)._add(t))}function Cp(e,t){let i,r,n,o=!1;for(let s=0;st.y!=n.y>t.y&&t.x<(n.x-r.x)*(t.y-r.y)/(n.y-r.y)+r.x&&(o=!o)}return o}function kp(e,t){let i=!1;for(let r=0,n=e.length-1;rt.y!=s.y>t.y&&t.x<(s.x-o.x)*(t.y-o.y)/(s.y-o.y)+o.x&&(i=!i)}return i}function Pp(e,t,i,r,n){for(const o of e)if(t<=o.x&&i<=o.y&&r>=o.x&&n>=o.y)return!0;const o=[new y(t,i),new y(t,n),new y(r,n),new y(r,i)];if(e.length>2)for(const t of o)if(kp(e,t))return!0;for(let t=0;tn.x&&t.x>n.x||e.yn.y&&t.y>n.y)return!1;const o=X(e,t,i[0]);return o!==X(e,t,i[1])||o!==X(e,t,i[2])||o!==X(e,t,i[3])}function Lp(e,t,i,r,n,o){let s=t.y-e.y,a=e.x-t.x;if(o=o||0){const e=s*s+a*a;if(0===e)return!0;const t=Math.sqrt(e);s/=t,a/=t}return!((i.x-e.x)*s+(i.y-e.y)*a-o<0||(r.x-e.x)*s+(r.y-e.y)*a-o<0||(n.x-e.x)*s+(n.y-e.y)*a-o<0)}function Dp(e,t,i,r,n,o,s){return!(Lp(e,t,r,n,o,s)||Lp(t,i,r,n,o,s)||Lp(i,e,r,n,o,s)||Lp(r,n,e,t,i,s)||Lp(n,o,e,t,i,s)||Lp(o,r,e,t,i,s))}function Rp(e,t,i){const r=t.paint.get(e).value;return"constant"===r.kind?r.value:i.programConfigurations.get(t.id).getMaxValue(e)}function Op(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function Bp(e,t,i,r,n){if(!t[0]&&!t[1])return e;const o=y.convert(t)._mult(n);"viewport"===i&&o._rotate(-r);const s=[];for(let t=0;t{const s=e.transform,a="globe"===s.projection.name;let l;if("map"===o.paint.get("circle-pitch-alignment"))if(a){const e=Cd(s.zoom,t.canonical)*s._pixelsPerMercatorPixel;l=Float32Array.from([e,0,0,e])}else l=s.calculatePixelsToTileUnitsMatrix(i);else l=new Float32Array([s.pixelsToGLUnits[0],0,0,s.pixelsToGLUnits[1]]);const c={u_camera_to_center_distance:e.transform.getCameraToCenterDistance(s.projection),u_matrix:e.translatePosMatrix(t.projMatrix,i,o.paint.get("circle-translate"),o.paint.get("circle-translate-anchor")),u_device_pixel_ratio:dt.devicePixelRatio,u_extrude_scale:l,u_inv_rot_matrix:Up,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0],u_emissive_strength:o.paint.get("circle-emissive-strength")};if(a){c.u_inv_rot_matrix=r,c.u_merc_center=n,c.u_tile_id=[t.canonical.x,t.canonical.y,1<{const t=[];return"map"===e.paint.get("circle-pitch-alignment")&&t.push("PITCH_WITH_MAP"),"map"===e.paint.get("circle-pitch-scale")&&t.push("SCALE_WITH_MAP"),t};function $p(e,t,i,r,n,o,s,a,l){if(o&&e.queryGeometry.isAboveHorizon)return!1;o&&(l*=e.pixelToTileUnitsFactor);const c=e.tileID.canonical,h=i.projection.upVectorScale(c,i.center.lat,i.worldSize).metersToTile;for(const u of t)for(const t of u){const u=t.add(a),d=n&&i.elevation?i.elevation.exaggeration()*n.getElevationAt(u.x,u.y,!0):0,p=i.projection.projectTilePoint(u.x,u.y,c);if(d>0){const e=i.projection.upVector(c,u.x,u.y);p.x+=e[0]*h*d,p.y+=e[1]*h*d,p.z+=e[2]*h*d}const f=o?u:qp(p.x,p.y,p.z,r),m=o?e.tilespaceRays.map((e=>Wp(e,d))):e.queryGeometry.screenGeometry,_=yu.transformMat4([],[p.x,p.y,p.z,1],r);if(!s&&o?l*=_[3]/i.cameraToCenterDistance:s&&!o&&(l*=i.cameraToCenterDistance/_[3]),o){const e=tp((t.y/cr+c.y)/(1<e.width||n.height>e.height||i.x>e.width-n.width||i.y>e.height-n.height)throw new RangeError("out of range source coordinates for image copy");if(n.width>t.width||n.height>t.height||r.x>t.width-n.width||r.y>t.height-n.height)throw new RangeError("out of range destination coordinates for image copy");const s=e.data,a=t.data;for(let l=0;l{t[e.evaluationKey]=o;const s=e.expression.evaluate(t);s&&(n.data[i+r+0]=Math.floor(255*s.r/s.a),n.data[i+r+1]=Math.floor(255*s.g/s.a),n.data[i+r+2]=Math.floor(255*s.b/s.a),n.data[i+r+3]=Math.floor(255*s.a))};if(e.clips)for(let t=0,n=0;t80*i){r=o=e[0],n=s=e[1];for(var f=i;fo&&(o=a),l>s&&(s=l);c=0!==(c=Math.max(o-r,s-n))?32767/c:0}return ff(d,p,i,r,n,c,0),p}function df(e,t,i,r,n){var o,s;if(n===Of(e,t,i,r)>0)for(o=t;o=t;o-=r)s=Lf(o,e[o],e[o+1],s);return s&&Mf(s,s.next)&&(Df(s),s=s.next),s}function pf(e,t){if(!e)return e;t||(t=e);var i,r=e;do{if(i=!1,r.steiner||!Mf(r,r.next)&&0!==Sf(r.prev,r,r.next))r=r.next;else{if(Df(r),(r=t=r.prev)===r.next)break;i=!0}}while(i||r!==t);return t}function ff(e,t,i,r,n,o,s){if(e){!s&&o&&function(e,t,i,r){var n=e;do{0===n.z&&(n.z=wf(n.x,n.y,t,i,r)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next}while(n!==e);n.prevZ.nextZ=null,n.prevZ=null,function(e){var t,i,r,n,o,s,a,l,c=1;do{for(i=e,e=null,o=null,s=0;i;){for(s++,r=i,a=0,t=0;t0||l>0&&r;)0!==a&&(0===l||!r||i.z<=r.z)?(n=i,i=i.nextZ,a--):(n=r,r=r.nextZ,l--),o?o.nextZ=n:e=n,n.prevZ=o,o=n;i=r}o.nextZ=null,c*=2}while(s>1)}(n)}(e,r,n,o);for(var a,l,c=e;e.prev!==e.next;)if(a=e.prev,l=e.next,o?_f(e,r,n,o):mf(e))t.push(a.i/i|0),t.push(e.i/i|0),t.push(l.i/i|0),Df(e),e=l.next,c=l.next;else if((e=l)===c){s?1===s?ff(e=gf(pf(e),t,i),t,i,r,n,o,2):2===s&&yf(e,t,i,r,n,o):ff(pf(e),t,i,r,n,o,1);break}}}function mf(e){var t=e.prev,i=e,r=e.next;if(Sf(t,i,r)>=0)return!1;for(var n=t.x,o=i.x,s=r.x,a=t.y,l=i.y,c=r.y,h=no?n>s?n:s:o>s?o:s,p=a>l?a>c?a:c:l>c?l:c,f=r.next;f!==t;){if(f.x>=h&&f.x<=d&&f.y>=u&&f.y<=p&&Ef(n,a,o,l,s,c,f.x,f.y)&&Sf(f.prev,f,f.next)>=0)return!1;f=f.next}return!0}function _f(e,t,i,r){var n=e.prev,o=e,s=e.next;if(Sf(n,o,s)>=0)return!1;for(var a=n.x,l=o.x,c=s.x,h=n.y,u=o.y,d=s.y,p=al?a>c?a:c:l>c?l:c,_=h>u?h>d?h:d:u>d?u:d,g=wf(p,f,t,i,r),y=wf(m,_,t,i,r),x=e.prevZ,v=e.nextZ;x&&x.z>=g&&v&&v.z<=y;){if(x.x>=p&&x.x<=m&&x.y>=f&&x.y<=_&&x!==n&&x!==s&&Ef(a,h,l,u,c,d,x.x,x.y)&&Sf(x.prev,x,x.next)>=0)return!1;if(x=x.prevZ,v.x>=p&&v.x<=m&&v.y>=f&&v.y<=_&&v!==n&&v!==s&&Ef(a,h,l,u,c,d,v.x,v.y)&&Sf(v.prev,v,v.next)>=0)return!1;v=v.nextZ}for(;x&&x.z>=g;){if(x.x>=p&&x.x<=m&&x.y>=f&&x.y<=_&&x!==n&&x!==s&&Ef(a,h,l,u,c,d,x.x,x.y)&&Sf(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;v&&v.z<=y;){if(v.x>=p&&v.x<=m&&v.y>=f&&v.y<=_&&v!==n&&v!==s&&Ef(a,h,l,u,c,d,v.x,v.y)&&Sf(v.prev,v,v.next)>=0)return!1;v=v.nextZ}return!0}function gf(e,t,i){var r=e;do{var n=r.prev,o=r.next.next;!Mf(n,o)&&If(n,r,r.next,o)&&Pf(n,o)&&Pf(o,n)&&(t.push(n.i/i|0),t.push(r.i/i|0),t.push(o.i/i|0),Df(r),Df(r.next),r=e=o),r=r.next}while(r!==e);return pf(r)}function yf(e,t,i,r,n,o){var s=e;do{for(var a=s.next.next;a!==s.prev;){if(s.i!==a.i&&Af(s,a)){var l=zf(s,a);return s=pf(s,s.next),l=pf(l,l.next),ff(s,t,i,r,n,o,0),void ff(l,t,i,r,n,o,0)}a=a.next}s=s.next}while(s!==e)}function xf(e,t){return e.x-t.x}function vf(e,t){var i=function(e,t){var i,r=t,n=e.x,o=e.y,s=-1/0;do{if(o<=r.y&&o>=r.next.y&&r.next.y!==r.y){var a=r.x+(o-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(a<=n&&a>s&&(s=a,i=r.x=r.x&&r.x>=h&&n!==r.x&&Ef(oi.x||r.x===i.x&&bf(i,r)))&&(i=r,d=l)),r=r.next}while(r!==c);return i}(e,t);if(!i)return t;var r=zf(i,e);return pf(r,r.next),pf(i,i.next)}function bf(e,t){return Sf(e.prev,e,t.prev)<0&&Sf(t.next,e,e.next)<0}function wf(e,t,i,r,n){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-i)*n|0)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*n|0)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function Tf(e){var t=e,i=e;do{(t.x=(e-s)*(o-a)&&(e-s)*(r-a)>=(i-s)*(t-a)&&(i-s)*(o-a)>=(n-s)*(r-a)}function Af(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var i=e;do{if(i.i!==e.i&&i.next.i!==e.i&&i.i!==t.i&&i.next.i!==t.i&&If(i,i.next,e,t))return!0;i=i.next}while(i!==e);return!1}(e,t)&&(Pf(e,t)&&Pf(t,e)&&function(e,t){var i=e,r=!1,n=(e.x+t.x)/2,o=(e.y+t.y)/2;do{i.y>o!=i.next.y>o&&i.next.y!==i.y&&n<(i.next.x-i.x)*(o-i.y)/(i.next.y-i.y)+i.x&&(r=!r),i=i.next}while(i!==e);return r}(e,t)&&(Sf(e.prev,e,t.prev)||Sf(e,t.prev,t))||Mf(e,t)&&Sf(e.prev,e,e.next)>0&&Sf(t.prev,t,t.next)>0)}function Sf(e,t,i){return(t.y-e.y)*(i.x-t.x)-(t.x-e.x)*(i.y-t.y)}function Mf(e,t){return e.x===t.x&&e.y===t.y}function If(e,t,i,r){var n=kf(Sf(e,t,i)),o=kf(Sf(e,t,r)),s=kf(Sf(i,r,e)),a=kf(Sf(i,r,t));return n!==o&&s!==a||!(0!==n||!Cf(e,i,t))||!(0!==o||!Cf(e,r,t))||!(0!==s||!Cf(i,e,r))||!(0!==a||!Cf(i,t,r))}function Cf(e,t,i){return t.x<=Math.max(e.x,i.x)&&t.x>=Math.min(e.x,i.x)&&t.y<=Math.max(e.y,i.y)&&t.y>=Math.min(e.y,i.y)}function kf(e){return e>0?1:e<0?-1:0}function Pf(e,t){return Sf(e.prev,e,e.next)<0?Sf(e,t,e.next)>=0&&Sf(e,e.prev,t)>=0:Sf(e,t,e.prev)<0||Sf(e,e.next,t)<0}function zf(e,t){var i=new Rf(e.i,e.x,e.y),r=new Rf(t.i,t.x,t.y),n=e.next,o=t.prev;return e.next=t,t.prev=e,i.next=n,n.prev=i,r.next=i,i.prev=r,o.next=r,r.prev=o,r}function Lf(e,t,i,r){var n=new Rf(e,t,i);return r?(n.next=r.next,n.prev=r,r.next.prev=n,r.next=n):(n.prev=n,n.next=n),n}function Df(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function Rf(e,t,i){this.i=e,this.x=t,this.y=i,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Of(e,t,i,r){for(var n=0,o=t,s=i-r;o0&&i.holes.push(r+=e[n-1].length)}return i};var Bf=d(hf.exports);function Ff(e,t){const i=e.length;if(i<=1)return[e];const r=[];let n,o;for(let t=0;t1)for(let e=0;ee.fqid)),this.index=e.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new ka,this.indexArray=new Ha,this.indexArray2=new Va,this.programConfigurations=new ec(e.layers,e.zoom),this.segments=new xl,this.segments2=new xl,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.projection=e.projection}populate(e,t,i,r){this.hasPattern=jf("fill",this.layers,t);const n=this.layers[0].layout.get("fill-sort-key"),o=[];for(const{feature:s,id:a,index:l,sourceLayerIndex:c}of e){const e=this.layers[0]._featureFilter.needGeometry,h=gp(s,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),h,i))continue;const u=n?n.evaluate(h,{},i,t.availableImages):void 0,d={id:a,properties:s.properties,type:s.type,sourceLayerIndex:c,index:l,geometry:e?h.geometry:_p(s,i,r),patterns:{},sortKey:u};o.push(d)}n&&o.sort(((e,t)=>e.sortKey-t.sortKey));for(const r of o){const{geometry:n,index:o,sourceLayerIndex:s}=r;if(this.hasPattern){const e=Uf("fill",this.layers,r,this.zoom,t);this.patternFeatures.push(e)}else this.addFeature(r,n,o,i,{},t.availableImages,t.brightness);t.featureIndex.insert(e[o].feature,n,o,s,this.index)}}update(e,t,i,r,n){const o=0!==Object.keys(e).length;o&&!this.stateDependentLayers.length||this.programConfigurations.updatePaintArrays(e,t,o?this.stateDependentLayers:this.layers,i,r,n)}addFeatures(e,t,i,r,n,o){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,i,r,o)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,cf),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.indexBuffer2=e.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(e,t,i,r,n,o=[],s){for(const e of Ff(t,500)){let t=0;for(const i of e)t+=i.length;const i=this.segments.prepareSegment(t,this.layoutVertexArray,this.indexArray),r=i.vertexLength,n=[],o=[];for(const t of e){if(0===t.length)continue;t!==e[0]&&o.push(n.length/2);const i=this.segments2.prepareSegment(t.length,this.layoutVertexArray,this.indexArray2),r=i.vertexLength;this.layoutVertexArray.emplaceBack(t[0].x,t[0].y),this.indexArray2.emplaceBack(r+t.length-1,r),n.push(t[0].x),n.push(t[0].y);for(let e=1;e>3}if(n--,1===r||2===r)o+=e.readSVarint(),s+=e.readSVarint(),1===r&&(t&&a.push(t),t=[]),t.push(new Jf(o,s));else{if(7!==r)throw new Error("unknown command "+r);t&&t.push(t[0].clone())}}return t&&a.push(t),a},em.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,i=1,r=0,n=0,o=0,s=1/0,a=-1/0,l=1/0,c=-1/0;e.pos>3}if(r--,1===i||2===i)(n+=e.readSVarint())a&&(a=n),(o+=e.readSVarint())c&&(c=o);else if(7!==i)throw new Error("unknown command "+i)}return[s,l,a,c]},em.prototype.toGeoJSON=function(e,t,i){var r,n,o=this.extent*Math.pow(2,i),s=this.extent*e,a=this.extent*t,l=this.loadGeometry(),c=em.types[this.type];function h(e){for(var t=0;t>3;t=1===r?e.readString():2===r?e.readFloat():3===r?e.readDouble():4===r?e.readVarint64():5===r?e.readVarint():6===r?e.readSVarint():7===r?e.readBoolean():null}return t}(i))}om.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new rm(this._pbf,t,this.extent,this._keys,this._values)};var am=nm;function lm(e,t,i){if(3===e){var r=new am(i,i.readVarint()+i.pos);r.length&&(t[r.name]=r)}}var cm=Kf.VectorTile=function(e,t){this.layers=e.readFields(lm,{},t)},hm=Kf.VectorTileFeature=Qf;function um(e,t,i,r){const n=[],o=0===r?(e,t,i,r,n,o)=>{e.push(new y(o,i+(o-t)/(r-t)*(n-i)))}:(e,t,i,r,n,o)=>{e.push(new y(t+(o-i)/(n-i)*(r-t),o))};for(const s of e){const e=[];for(const n of s){if(n.length<=2)continue;const s=[];for(let e=0;et&&o(s,a,l,c,h,t):u>i?d=t&&o(s,a,l,c,h,t),d>i&&u<=i&&o(s,a,l,c,h,i)}let a=n[n.length-1];const l=0===r?a.x:a.y;l>=t&&l<=i&&s.push(a),s.length&&(a=s[s.length-1],s[0].x===a.x&&s[0].y===a.y||s.push(s[0]),e.push(s))}e.length&&n.push(e)}return n}Kf.VectorTileLayer=nm;class dm{constructor(e){this._stringToNumber={},this._numberToString=[];for(let t=0;t */ +read:function(e,t,i,r,n){var o,s,a=8*n-r-1,l=(1<>1,h=-7,u=i?n-1:0,d=i?-1:1,p=e[t+u];for(u+=d,o=p&(1<<-h)-1,p>>=-h,h+=a;h>0;o=256*o+e[t+u],u+=d,h-=8);for(s=o&(1<<-h)-1,o>>=-h,h+=r;h>0;s=256*s+e[t+u],u+=d,h-=8);if(0===o)o=1-c;else{if(o===l)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,r),o-=c}return(p?-1:1)*s*Math.pow(2,o-r)},write:function(e,t,i,r,n,o){var s,a,l,c=8*o-n-1,h=(1<>1,d=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,f=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=h):(s=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-s))<1&&(s--,l*=2),(t+=s+u>=1?d/l:d*Math.pow(2,1-u))*l>=2&&(s++,l/=2),s+u>=h?(a=0,s=h):s+u>=1?(a=(t*l-1)*Math.pow(2,n),s+=u):(a=t*Math.pow(2,u-1)*Math.pow(2,n),s=0));n>=8;e[i+p]=255&a,p+=f,a/=256,n-=8);for(s=s<0;e[i+p]=255&s,p+=f,s/=256,c-=8);e[i+p-f]|=128*m}},fm=_m,mm=pm;function _m(e){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(e)?e:new Uint8Array(e||0),this.pos=0,this.type=0,this.length=this.buf.length}_m.Varint=0,_m.Fixed64=1,_m.Bytes=2,_m.Fixed32=5;var gm=4294967296,ym=1/gm,xm="undefined"==typeof TextDecoder?null:new TextDecoder("utf8");function vm(e){return e.type===_m.Bytes?e.readVarint()+e.pos:e.pos+1}function bm(e,t,i){return i?4294967296*t+(e>>>0):4294967296*(t>>>0)+(e>>>0)}function wm(e,t,i){var r=t<=16383?1:t<=2097151?2:t<=268435455?3:Math.floor(Math.log(t)/(7*Math.LN2));i.realloc(r);for(var n=i.pos-1;n>=e;n--)i.buf[n+r]=i.buf[n]}function Tm(e,t){for(var i=0;i>>8,e[i+2]=t>>>16,e[i+3]=t>>>24}function Dm(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16)+(e[t+3]<<24)}_m.prototype={destroy:function(){this.buf=null},readFields:function(e,t,i){for(i=i||this.length;this.pos>3,o=this.pos;this.type=7&r,e(n,t,this),this.pos===o&&this.skip(r)}return t},readMessage:function(e,t){return this.readFields(e,t,this.readVarint()+this.pos)},readFixed32:function(){var e=zm(this.buf,this.pos);return this.pos+=4,e},readSFixed32:function(){var e=Dm(this.buf,this.pos);return this.pos+=4,e},readFixed64:function(){var e=zm(this.buf,this.pos)+zm(this.buf,this.pos+4)*gm;return this.pos+=8,e},readSFixed64:function(){var e=zm(this.buf,this.pos)+Dm(this.buf,this.pos+4)*gm;return this.pos+=8,e},readFloat:function(){var e=mm.read(this.buf,this.pos,!0,23,4);return this.pos+=4,e},readDouble:function(){var e=mm.read(this.buf,this.pos,!0,52,8);return this.pos+=8,e},readVarint:function(e){var t,i,r=this.buf;return t=127&(i=r[this.pos++]),i<128?t:(t|=(127&(i=r[this.pos++]))<<7,i<128?t:(t|=(127&(i=r[this.pos++]))<<14,i<128?t:(t|=(127&(i=r[this.pos++]))<<21,i<128?t:function(e,t,i){var r,n,o=i.buf;if(r=(112&(n=o[i.pos++]))>>4,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<3,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<10,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<17,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<24,n<128)return bm(e,r,t);if(r|=(1&(n=o[i.pos++]))<<31,n<128)return bm(e,r,t);throw new Error("Expected varint not more than 10 bytes")}(t|=(15&(i=r[this.pos]))<<28,e,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var e=this.readVarint();return e%2==1?(e+1)/-2:e/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var e=this.readVarint()+this.pos,t=this.pos;return this.pos=e,e-t>=12&&xm?function(e,t,i){return xm.decode(e.subarray(t,i))}(this.buf,t,e):function(e,t,i){for(var r="",n=t;n239?4:l>223?3:l>191?2:1;if(n+h>i)break;1===h?l<128&&(c=l):2===h?128==(192&(o=e[n+1]))&&(c=(31&l)<<6|63&o)<=127&&(c=null):3===h?(s=e[n+2],128==(192&(o=e[n+1]))&&128==(192&s)&&((c=(15&l)<<12|(63&o)<<6|63&s)<=2047||c>=55296&&c<=57343)&&(c=null)):4===h&&(s=e[n+2],a=e[n+3],128==(192&(o=e[n+1]))&&128==(192&s)&&128==(192&a)&&((c=(15&l)<<18|(63&o)<<12|(63&s)<<6|63&a)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,h=1):c>65535&&(c-=65536,r+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),r+=String.fromCharCode(c),n+=h}return r}(this.buf,t,e)},readBytes:function(){var e=this.readVarint()+this.pos,t=this.buf.subarray(this.pos,e);return this.pos=e,t},readPackedVarint:function(e,t){if(this.type!==_m.Bytes)return e.push(this.readVarint(t));var i=vm(this);for(e=e||[];this.pos127;);else if(t===_m.Bytes)this.pos=this.readVarint()+this.pos;else if(t===_m.Fixed32)this.pos+=4;else{if(t!==_m.Fixed64)throw new Error("Unimplemented type: "+t);this.pos+=8}},writeTag:function(e,t){this.writeVarint(e<<3|t)},realloc:function(e){for(var t=this.length||16;t268435455||e<0?function(e,t){var i,r;if(e>=0?(i=e%4294967296|0,r=e/4294967296|0):(r=~(-e/4294967296),4294967295^(i=~(-e%4294967296))?i=i+1|0:(i=0,r=r+1|0)),e>=0x10000000000000000||e<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");t.realloc(10),function(e,t,i){i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,i.buf[i.pos]=127&(e>>>=7)}(i,0,t),function(e,t){var i=(7&e)<<4;t.buf[t.pos++]|=i|((e>>>=3)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e)))))}(r,t)}(e,this):(this.realloc(4),this.buf[this.pos++]=127&e|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=e>>>7&127))))},writeSVarint:function(e){this.writeVarint(e<0?2*-e-1:2*e)},writeBoolean:function(e){this.writeVarint(Boolean(e))},writeString:function(e){e=String(e),this.realloc(4*e.length),this.pos++;var t=this.pos;this.pos=function(e,t,i){for(var r,n,o=0;o55295&&r<57344){if(!n){r>56319||o+1===t.length?(e[i++]=239,e[i++]=191,e[i++]=189):n=r;continue}if(r<56320){e[i++]=239,e[i++]=191,e[i++]=189,n=r;continue}r=n-55296<<10|r-56320|65536,n=null}else n&&(e[i++]=239,e[i++]=191,e[i++]=189,n=null);r<128?e[i++]=r:(r<2048?e[i++]=r>>6|192:(r<65536?e[i++]=r>>12|224:(e[i++]=r>>18|240,e[i++]=r>>12&63|128),e[i++]=r>>6&63|128),e[i++]=63&r|128)}return i}(this.buf,e,this.pos);var i=this.pos-t;i>=128&&wm(t,i,this),this.pos=t-1,this.writeVarint(i),this.pos+=i},writeFloat:function(e){this.realloc(4),mm.write(this.buf,e,this.pos,!0,23,4),this.pos+=4},writeDouble:function(e){this.realloc(8),mm.write(this.buf,e,this.pos,!0,52,8),this.pos+=8},writeBytes:function(e){var t=e.length;this.writeVarint(t),this.realloc(t);for(var i=0;i=128&&wm(i,r,this),this.pos=i-1,this.writeVarint(r),this.pos+=r},writeMessage:function(e,t,i){this.writeTag(e,_m.Bytes),this.writeRawMessage(t,i)},writePackedVarint:function(e,t){t.length&&this.writeMessage(e,Tm,t)},writePackedSVarint:function(e,t){t.length&&this.writeMessage(e,Em,t)},writePackedBoolean:function(e,t){t.length&&this.writeMessage(e,Mm,t)},writePackedFloat:function(e,t){t.length&&this.writeMessage(e,Am,t)},writePackedDouble:function(e,t){t.length&&this.writeMessage(e,Sm,t)},writePackedFixed32:function(e,t){t.length&&this.writeMessage(e,Im,t)},writePackedSFixed32:function(e,t){t.length&&this.writeMessage(e,Cm,t)},writePackedFixed64:function(e,t){t.length&&this.writeMessage(e,km,t)},writePackedSFixed64:function(e,t){t.length&&this.writeMessage(e,Pm,t)},writeBytesField:function(e,t){this.writeTag(e,_m.Bytes),this.writeBytes(t)},writeFixed32Field:function(e,t){this.writeTag(e,_m.Fixed32),this.writeFixed32(t)},writeSFixed32Field:function(e,t){this.writeTag(e,_m.Fixed32),this.writeSFixed32(t)},writeFixed64Field:function(e,t){this.writeTag(e,_m.Fixed64),this.writeFixed64(t)},writeSFixed64Field:function(e,t){this.writeTag(e,_m.Fixed64),this.writeSFixed64(t)},writeVarintField:function(e,t){this.writeTag(e,_m.Varint),this.writeVarint(t)},writeSVarintField:function(e,t){this.writeTag(e,_m.Varint),this.writeSVarint(t)},writeStringField:function(e,t){this.writeTag(e,_m.Bytes),this.writeString(t)},writeFloatField:function(e,t){this.writeTag(e,_m.Fixed32),this.writeFloat(t)},writeDoubleField:function(e,t){this.writeTag(e,_m.Fixed64),this.writeDouble(t)},writeBooleanField:function(e,t){this.writeVarintField(e,Boolean(t))}};var Rm=d(fm);const Om=["tile","layer","source","sourceLayer","state"];class Bm{constructor(e,t,i,r,n){this.type="Feature",this._vectorTileFeature=e,this._z=t,this._x=i,this._y=r,this.properties=e.properties,this.id=n}get geometry(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._x,this._y,this._z).geometry),this._geometry}set geometry(e){this._geometry=e}toJSON(){const e={type:"Feature",state:void 0,geometry:this.geometry,properties:this.properties};void 0!==this.id&&(e.id=this.id);for(const t of Om)void 0!==this[t]&&(e[t]=this[t]);return e}}class Fm{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(e,t,i){const r=String(t);if(this.stateChanges[e]=this.stateChanges[e]||{},this.stateChanges[e][r]=this.stateChanges[e][r]||{},R(this.stateChanges[e][r],i),null===this.deletedStates[e]){this.deletedStates[e]={};for(const t in this.state[e])t!==r&&(this.deletedStates[e][t]=null)}else if(this.deletedStates[e]&&null===this.deletedStates[e][r]){this.deletedStates[e][r]={};for(const t in this.state[e][r])i[t]||(this.deletedStates[e][r][t]=null)}else for(const t in i)this.deletedStates[e]&&this.deletedStates[e][r]&&null===this.deletedStates[e][r][t]&&delete this.deletedStates[e][r][t]}removeFeatureState(e,t,i){if(null===this.deletedStates[e])return;const r=String(t);if(this.deletedStates[e]=this.deletedStates[e]||{},i&&void 0!==t)null!==this.deletedStates[e][r]&&(this.deletedStates[e][r]=this.deletedStates[e][r]||{},this.deletedStates[e][r][i]=null);else if(void 0!==t)if(this.stateChanges[e]&&this.stateChanges[e][r])for(i in this.deletedStates[e][r]={},this.stateChanges[e][r])this.deletedStates[e][r][i]=null;else this.deletedStates[e][r]=null;else this.deletedStates[e]=null}getState(e,t){const i=String(t),r=R({},(this.state[e]||{})[i],(this.stateChanges[e]||{})[i]);if(null===this.deletedStates[e])return{};if(this.deletedStates[e]){const i=this.deletedStates[e][t];if(null===i)return{};for(const e in i)delete r[e]}return r}initializeTileState(e,t){e.setFeatureState(this.state,t)}coalesceChanges(e,t){const i={};for(const e in this.stateChanges){this.state[e]=this.state[e]||{};const t={};for(const i in this.stateChanges[e])this.state[e][i]||(this.state[e][i]={}),R(this.state[e][i],this.stateChanges[e][i]),t[i]=this.state[e][i];i[e]=t}for(const e in this.deletedStates){this.state[e]=this.state[e]||{};const t={};if(null===this.deletedStates[e])for(const i in this.state[e])t[i]={},this.state[e][i]={};else for(const i in this.deletedStates[e]){if(null===this.deletedStates[e][i])this.state[e][i]={};else if(this.state[e][i])for(const t of Object.keys(this.deletedStates[e][i]))delete this.state[e][i][t];t[i]=this.state[e][i]}i[e]=i[e]||{},R(i[e],t)}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(i).length)for(const r in e)e[r].setFeatureState(i,t)}}class Nm{constructor(e){this.size=e,this.minimums=[],this.maximums=[],this.leaves=[]}getElevation(e,t){const i=this.toIdx(e,t);return{min:this.minimums[i],max:this.maximums[i]}}isLeaf(e,t){return this.leaves[this.toIdx(e,t)]}toIdx(e,t){return t*this.size+e}}function jm(e,t,i,r){let n=0,o=Number.MAX_VALUE;for(let s=0;s<3;s++)if(Math.abs(r[s])<1e-15){if(i[s]t[s])return null}else{const a=1/r[s];let l=(e[s]-i[s])*a,c=(t[s]-i[s])*a;if(l>c){const e=l;l=c,c=e}if(l>n&&(n=l),co)return null}return n}function Um(e,t,i,r,n,o,s,a,l,c,h){const u=r-e,d=n-t,p=o-i,f=s-e,m=a-t,_=l-i,g=h[1]*_-h[2]*m,y=h[2]*f-h[0]*_,x=h[0]*m-h[1]*f,v=u*g+d*y+p*x;if(Math.abs(v)<1e-15)return null;const b=1/v,w=c[0]-e,T=c[1]-t,E=c[2]-i,A=(w*g+T*y+E*x)*b;if(A<0||A>1)return null;const S=T*p-E*d,M=E*u-w*p,I=w*d-T*u,C=(h[0]*S+h[1]*M+h[2]*I)*b;return C<0||A+C>1?null:(f*S+m*M+_*I)*b}function Vm(e,t,i){return(e-t)/(i-t)}function Gm(e,t,i,r,n,o,s,a,l){const c=1<{const o=r?1:0,s=(e+1)*i-o,a=t*i,l=(t+1)*i-o;n[0]=e*i,n[1]=a,n[2]=s,n[3]=l};let s=new Nm(r);const a=[];for(let t=0;t=1;r/=2){const e=i[i.length-1];s=new Nm(r);for(let t=0;t0;){const{idx:a,t:p,nodex:f,nodey:m,depth:_}=d.pop();if(this.leaves[a]){Gm(f,m,_,e,t,i,r,h,u);const a=1<<_,l=(f+0)/a,c=(f+1)/a,d=(m+0)/a,g=(m+1)/a,y=Zm(l,d,this.dem)*s,x=Zm(c,d,this.dem)*s,v=Zm(c,g,this.dem)*s,b=Zm(l,g,this.dem)*s,w=Um(h[0],h[1],y,u[0],h[1],x,u[0],u[1],v,n,o),T=Um(u[0],u[1],v,h[0],u[1],b,h[0],h[1],y,n,o),E=Math.min(null!==w?w:Number.MAX_VALUE,null!==T?T:Number.MAX_VALUE);if(E!==Number.MAX_VALUE)return E;{const e=zu.scaleAndAdd([],n,o,p);if(qm(y,x,b,v,Vm(e[0],h[0],u[0]),Vm(e[1],h[1],u[1]))>=e[2])return p}continue}let g=0;for(let d=0;d=l[c[i]]&&(c.splice(i,0,d),t=!0);t||(c[g]=d),g++}}for(let e=0;e=this.dim+1||t<-1||t>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(t+1)*this.stride+(e+1)}static pack(e,t){const i=[0,0,0,0],r=Ym.getUnpackVector(t);let n=Math.floor((e+r[3])/r[2]);return i[2]=n%256,n=Math.floor(n/256),i[1]=n%256,n=Math.floor(n/256),i[0]=n,i}getPixels(){return new tf({width:this.stride,height:this.stride},this.pixels)}backfillBorder(e,t,i){if(this.dim!==e.dim)throw new Error("dem dimension mismatch");let r=t*this.dim,n=t*this.dim+this.dim,o=i*this.dim,s=i*this.dim+this.dim;switch(t){case-1:r=n-1;break;case 1:n=r+1}switch(i){case-1:o=s-1;break;case 1:s=o+1}const a=-t*this.dim,l=-i*this.dim;for(let t=o;t1)return!1;const i=t.getSource().maxzoom,r=1<1)return t;const n=r.getSource().maxzoom,o=1<{const o=this.getAtTileOffset(e,n.x,n.y),s=r.upVector(e.canonical,n.x,n.y),a=r.upVectorScale(e.canonical,t,i).metersToTile;return zu.scale(s,s,o*a),s}}getForTilePoints(e,t,i,r){if(this.isUsingMockSource())return!1;const n=Jm.create(this,e,r);return!!n&&(t.forEach((e=>{e[2]=this.exaggeration()*n.getElevationAt(e[0],e[1],i)})),!0)}getMinMaxForTile(e){if(this.isUsingMockSource())return null;const t=this.findDEMTileFor(e);if(!t||!t.dem)return null;const i=t.dem.tree,r=t.tileID,n=1<=0&&r[3]>=0&&a.insert(s,r[0],r[1],r[2],r[3])}}loadVTLayers(){if(!this.vtLayers){this.vtLayers=new cm(new Rm(this.rawTileData)).layers,this.sourceLayerCoder=new dm(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"]),this.vtFeatures={};for(const e in this.vtLayers)this.vtFeatures[e]=[]}return this.vtLayers}query(e,t,i,r){this.loadVTLayers();const n=e.params||{},o=Fo(n.filter),s=e.tileResult,a=e.transform,l=s.bufferedTilespaceBounds,c=this.grid.query(l.min.x,l.min.y,l.max.x,l.max.y,((e,t,i,r)=>Pp(s.bufferedTilespaceGeometry,e,t,i,r)));c.sort(t_);let h=null;a.elevation&&c.length>0&&(h=Jm.create(a.elevation,this.tileID));const u={};let d;for(let a=0;a(f||(f=_p(t,this.tileID.canonical,e.tileTransform)),i.queryIntersectsFeature(s,t,r,f,this.z,e.transform,e.pixelPosMatrix,h,n))))}return u}loadMatchingFeature(e,t,i,r,n,o,s,a,l){const{featureIndex:c,bucketIndex:h,sourceLayerIndex:u,layoutVertexArrayOffset:d}=t,p=this.bucketLayerIDs[h];if(r&&!function(e,t){for(let i=0;i=0)return!0;return!1}(r,p))return;const f=this.sourceLayerCoder.decode(u),m=this.vtLayers[f].feature(c);if(i.needGeometry){const e=gp(m,!0);if(!i.filter(new oa(this.tileID.overscaledZ),e,this.tileID.canonical))return}else if(!i.filter(new oa(this.tileID.overscaledZ),m))return;const _=this.getId(m,f);for(let t=0;t{const s=t instanceof pa?t.get(o):null;return s&&s.evaluate?s.evaluate(i,r,n):s}))}function t_(e,t){return t-e}Ls(Qm,"FeatureIndex",{omit:["rawTileData","sourceLayerCoder"]});const i_=Ia([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_tex_size",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),r_=Ia([{name:"a_globe_anchor",components:3,type:"Int16"},{name:"a_globe_normal",components:3,type:"Float32"}],4),n_=Ia([{name:"a_projected_pos",components:4,type:"Float32"}],4);Ia([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);const o_=Ia([{name:"a_z_offset",components:1,type:"Float32"}],4),s_=Ia([{name:"a_texb",components:2,type:"Uint16"}]),a_=Ia([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),l_=Ia([{name:"a_size_scale",components:1,type:"Float32"},{name:"a_padding",components:2,type:"Float32"},{name:"a_z_offset",components:1,type:"Float32"}]);Ia([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Int16",name:"tileAnchorX"},{type:"Int16",name:"tileAnchorY"},{type:"Float32",name:"x1"},{type:"Float32",name:"y1"},{type:"Float32",name:"x2"},{type:"Float32",name:"y2"},{type:"Int16",name:"padding"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);const c_=Ia([{name:"a_pos",components:3,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),h_=Ia([{name:"a_pos_2f",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);Ia([{name:"triangle",components:3,type:"Uint16"}]),Ia([{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Float32",name:"tileAnchorX"},{type:"Float32",name:"tileAnchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"},{type:"Uint8",name:"flipState"}]),Ia([{type:"Float32",name:"tileAnchorX"},{type:"Float32",name:"tileAnchorY"},{type:"Int16",name:"projectedAnchorX"},{type:"Int16",name:"projectedAnchorY"},{type:"Int16",name:"projectedAnchorZ"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Float32",name:"zOffset"},{type:"Uint8",name:"hasIconTextFit"}]),Ia([{type:"Float32",name:"offsetX"}]),Ia([{type:"Int16",name:"x"},{type:"Int16",name:"y"}]);var u_=24;const d_=128;function p_(e,t){const{expression:i}=t;if("constant"===i.kind)return{kind:"constant",layoutSize:i.evaluate(new oa(e+1))};if("source"===i.kind)return{kind:"source"};{const{zoomStops:t,interpolationType:r}=i;let n=0;for(;n{e.text=function(e,t,i){const r=t.layout.get("text-transform").evaluate(i,{});return"uppercase"===r?e=e.toLocaleUpperCase():"lowercase"===r&&(e=e.toLocaleLowerCase()),na.applyArabicShaping&&(e=na.applyArabicShaping(e)),e}(e.text,t,i)})),e}const y_={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂","←":"↑","→":"↓"};function x_(e){return"︶"===e||"﹈"===e||"︸"===e||"﹄"===e||"﹂"===e||"︾"===e||"︼"===e||"︺"===e||"︘"===e||"﹀"===e||"︐"===e||"︓"===e||"︔"===e||"`"===e||" ̄"===e||"︑"===e||"︒"===e}function v_(e){return"︵"===e||"﹇"===e||"︷"===e||"﹃"===e||"﹁"===e||"︽"===e||"︻"===e||"︹"===e||"︗"===e||"︿"===e}const b_=3;function w_(e,t,i){t.glyphs=[],1===e&&i.readMessage(T_,t)}function T_(e,t,i){if(3===e){const{id:e,bitmap:r,width:n,height:o,left:s,top:a,advance:l}=i.readMessage(E_,{});t.glyphs.push({id:e,bitmap:new Qp({width:n+2*b_,height:o+2*b_},r),metrics:{width:n,height:o,left:s,top:a,advance:l}})}else 4===e?t.ascender=i.readSVarint():5===e&&(t.descender=i.readSVarint())}function E_(e,t,i){1===e?t.id=i.readVarint():2===e?t.bitmap=i.readBytes():3===e?t.width=i.readVarint():4===e?t.height=i.readVarint():5===e?t.left=i.readSVarint():6===e?t.top=i.readSVarint():7===e&&(t.advance=i.readVarint())}const A_=b_,S_={horizontal:1,vertical:2,horizontalOnly:3},M_=-17;class I_{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(e,t){const i=new I_;return i.scale=e||1,i.fontStack=t,i}static forImage(e){const t=new I_;return t.imageName=e,t}}class C_{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(e,t){const i=new C_;for(let r=0;r=0&&i>=e&&P_[this.text.charCodeAt(i)];i--)t--;this.text=this.text.substring(e,t),this.sectionIndex=this.sectionIndex.slice(e,t)}substring(e,t){const i=new C_;return i.text=this.text.substring(e,t),i.sectionIndex=this.sectionIndex.slice(e,t),i.sections=this.sections,i}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((e,t)=>Math.max(e,this.sections[t].scale)),0)}addTextSection(e,t){this.text+=e.text,this.sections.push(I_.forText(e.scale,e.fontStack||t));const i=this.sections.length-1;for(let t=0;t=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function k_(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){const m=C_.fromFeature(e,n);u===S_.vertical&&m.verticalizePunctuation(d);let _=[];const g=function(e,t,i,r,n,o){if(!e)return[];const s=[],a=function(e,t,i,r,n,o){let s=0;for(let i=0;i=0;let c=0;for(let i=0;i0&&o>b&&(b=o)}else{const e=i[a.fontStack];if(!e)continue;e[m]&&(E=e[m]);const r=t[a.fontStack];if(!r)continue;const o=r.glyphs[m];if(!o)continue;if(x=o.metrics,S=8203!==m?u_:0,_){const e=void 0!==r.ascender?Math.abs(r.ascender):0,t=void 0!==r.descender?Math.abs(r.descender):0,i=(e+t)*g;w-i/2;){if(s--,s<0)return!1;a-=e[s].dist(o),o=e[s]}a+=e[s].dist(e[s+1]),s++;const l=[];let c=0;for(;ar;)c-=l.shift().angleDelta;if(c>n)return!1;s++,a+=t.dist(i)}return!0}function $_(e){let t=0;for(let i=0;ic){const h=(c-l)/o,u=Kr(r.x,n.x,h),d=Kr(r.y,n.y,h),p=new V_(u,d,0,n.angleTo(r),i);return!s||G_(e,p,a,s,t)?p:void 0}l+=o}}function W_(e,t,i,r,n,o,s,a,l){const c=q_(r,o,s),h=Z_(r,n),u=h*s,d=0===e[0].x||e[0].x===l||0===e[0].y||e[0].y===l;return t-u=0&&g=0&&y=0&&d+c<=h){const i=new V_(g,y,0,m,t);r&&!G_(e,i,o,r,n)||p.push(i)}}u+=f}return a||p.length||s||(p=X_(e,u/2,i,r,n,o,s,!0,l)),p}function Y_(e,t,i,r,n){const o=[];for(let s=0;s=r&&c.x>=r||(s.x>=r?s=new y(r,s.y+(r-s.x)/(c.x-s.x)*(c.y-s.y))._round():c.x>=r&&(c=new y(r,s.y+(r-s.x)/(c.x-s.x)*(c.y-s.y))._round()),s.y>=n&&c.y>=n||(s.y>=n?s=new y(s.x+(n-s.y)/(c.y-s.y)*(c.x-s.x),n)._round():c.y>=n&&(c=new y(s.x+(n-s.y)/(c.y-s.y)*(c.x-s.x),n)._round()),l&&s.equals(l[l.length-1])||(l=[s],o.push(l)),l.push(c)))))}}return o}function K_(e){let t=0,i=0;for(const r of e)t+=r.w*r.h,i=Math.max(i,r.w);e.sort(((e,t)=>t.h-e.h));const r=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(t/.95)),i),h:1/0}];let n=0,o=0;for(const t of e)for(let e=r.length-1;e>=0;e--){const i=r[e];if(!(t.w>i.w||t.h>i.h)){if(t.x=i.x,t.y=i.y,o=Math.max(o,t.y+t.h),n=Math.max(n,t.x+t.w),t.w===i.w&&t.h===i.h){const t=r.pop();ee.hasImage(t,i))),e.dispatchRenderCallbacks(this.haveRenderCallbacks,i);for(const r in e.getUpdatedImages(i))this.patchUpdatedImage(this.iconPositions[r],e.getImage(r,i),t),this.patchUpdatedImage(this.patternPositions[r],e.getImage(r,i),t)}patchUpdatedImage(e,t,i){if(!e||!t)return;if(e.version===t.version)return;e.version=t.version;const[r,n]=e.tl;i.update(t.data,void 0,{x:r,y:n})}}Ls(Q_,"ImagePosition"),Ls(eg,"ImageAtlas");const tg=1e20;function ig(e,t,i,r,n,o,s,a,l){for(let c=t;c-1);l++,o[l]=a,s[l]=c,s[l+1]=tg}for(let a=0,l=0;a{let r=this.entries[e];r||(r=this.entries[e]={glyphs:{},requests:{},ranges:{},ascender:void 0,descender:void 0});let n=r.glyphs[t];if(void 0!==n)return void i(null,{stack:e,id:t,glyph:n});if(n=this._tinySDF(r,e,t),n)return r.glyphs[t]=n,void i(null,{stack:e,id:t,glyph:n});const s=Math.floor(t/256);if(256*s>65535)return void i(new Error("glyphs > 65535 not supported"));if(r.ranges[s])return void i(null,{stack:e,id:t,glyph:n});let a=r.requests[s];a||(a=r.requests[s]=[],og.loadGlyphRange(e,s,o,this.requestManager,((e,t)=>{if(t){r.ascender=t.ascender,r.descender=t.descender;for(const e in t.glyphs)this._doesCharSupportLocalGlyph(+e)||(r.glyphs[+e]=t.glyphs[+e]);r.ranges[s]=!0}for(const i of a)i(e,t);delete r.requests[s]}))),a.push(((r,n)=>{r?i(r):n&&i(null,{stack:e,id:t,glyph:n.glyphs[t]||null})}))}),((e,t)=>{if(e)i(e);else if(t){const e={};for(const{stack:i,id:r,glyph:n}of t)void 0===e[i]&&(e[i]={}),void 0===e[i].glyphs&&(e[i].glyphs={}),e[i].glyphs[r]=n&&{id:n.id,bitmap:n.bitmap.clone(),metrics:n.metrics},e[i].ascender=this.entries[i].ascender,e[i].descender=this.entries[i].descender;i(null,e)}}))}_doesCharSupportLocalGlyph(e){return 0!==this.localGlyphMode&&(2===this.localGlyphMode?!!this.localFontFamily:!!this.localFontFamily&&(Fs["CJK Unified Ideographs"](e)||Fs["Hangul Syllables"](e)||Fs.Hiragana(e)||Fs.Katakana(e)||Fs["CJK Symbols and Punctuation"](e)||Fs["CJK Unified Ideographs Extension A"](e)||Fs["CJK Unified Ideographs Extension B"](e)))}_tinySDF(e,t,i){const r=this.localFontFamily;if(!r||!this._doesCharSupportLocalGlyph(i))return;let n=e.tinySDF;if(!n){let i="400";/bold/i.test(t)?i="900":/medium/i.test(t)?i="500":/light/i.test(t)&&(i="200"),n=e.tinySDF=new og.TinySDF({fontFamily:r,fontWeight:i,fontSize:24*ng,buffer:3*ng,radius:8*ng}),n.fontWeight=i}if(this.localGlyphs[n.fontWeight][i])return this.localGlyphs[n.fontWeight][i];const o=String.fromCodePoint(i),{data:s,width:a,height:l,glyphWidth:c,glyphHeight:h,glyphLeft:u,glyphTop:d,glyphAdvance:p}=n.draw(o);return this.localGlyphs[n.fontWeight][i]={id:i,bitmap:new Qp({width:a,height:l},s),metrics:{width:c/ng,height:h/ng,left:u/ng,top:d/ng-27,advance:p/ng,localGlyph:!0}}}}og.loadGlyphRange=function(e,t,i,r,n){const o=256*t,s=o+255,a=r.transformRequest(r.normalizeGlyphsURL(i).replace("{fontstack}",e).replace("{range}",`${o}-${s}`),ye.Glyphs);Te(a,((e,t)=>{if(e)n(e);else if(t){const e={},i=function(e){return new Rm(e).readFields(w_,{})}(t);for(const t of i.glyphs)e[t.id]=t;n(null,{glyphs:e,ascender:i.ascender,descender:i.descender})}}))},og.TinySDF=class{constructor({fontSize:e=24,buffer:t=3,radius:i=8,cutoff:r=.25,fontFamily:n="sans-serif",fontWeight:o="normal",fontStyle:s="normal"}={}){this.buffer=t,this.cutoff=r,this.radius=i;const a=this.size=e+4*t,l=this._createCanvas(a),c=this.ctx=l.getContext("2d",{willReadFrequently:!0});c.font=`${s} ${o} ${e}px ${n}`,c.textBaseline="alphabetic",c.textAlign="left",c.fillStyle="black",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Uint16Array(a)}_createCanvas(e){const t=document.createElement("canvas");return t.width=t.height=e,t}draw(e){const{width:t,actualBoundingBoxAscent:i,actualBoundingBoxDescent:r,actualBoundingBoxLeft:n,actualBoundingBoxRight:o}=this.ctx.measureText(e),s=Math.ceil(i),a=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(o-n))),l=Math.min(this.size-this.buffer,s+Math.ceil(r)),c=a+2*this.buffer,h=l+2*this.buffer,u=Math.max(c*h,0),d=new Uint8ClampedArray(u),p={data:d,width:c,height:h,glyphWidth:a,glyphHeight:l,glyphTop:s,glyphLeft:0,glyphAdvance:t};if(0===a||0===l)return p;const{ctx:f,buffer:m,gridInner:_,gridOuter:g}=this;f.clearRect(m,m,a,l),f.fillText(e,m,m+s);const y=f.getImageData(m,m,a,l);g.fill(tg,0,u),_.fill(0,0,u);for(let e=0;e0?e*e:0,_[r]=e<0?e*e:0}}ig(g,0,0,c,h,c,this.f,this.v,this.z),ig(_,m,m,a,l,c,this.f,this.v,this.z);for(let e=0;ee+t[1]-t[0],f=u.reduce(p,0),m=d.reduce(p,0),_=a-f,g=l-m;let x=0,v=f,b=0,w=m,T=0,E=_,A=0,S=g;if(o.content&&r){const e=o.content;x=lg(u,0,e[0]),b=lg(d,0,e[1]),v=lg(u,e[0],e[2]),w=lg(d,e[1],e[3]),T=e[0]-x,A=e[1]-b,E=e[2]-e[0]-v,S=e[3]-e[1]-w}const M=(r,n,a,l)=>{const u=hg(r.stretch-x,v,c,e.left),d=ug(r.fixed-T,E,r.stretch,f),p=hg(n.stretch-b,w,h,e.top),_=ug(n.fixed-A,S,n.stretch,m),g=hg(a.stretch-x,v,c,e.left),M=ug(a.fixed-T,E,a.stretch,f),I=hg(l.stretch-b,w,h,e.top),C=ug(l.fixed-A,S,l.stretch,m),k=new y(u,p),P=new y(g,p),z=new y(g,I),L=new y(u,I),D=new y(d/s,_/s),R=new y(M/s,C/s),O=t*Math.PI/180;if(O){const e=Math.sin(O),t=Math.cos(O),i=[t,-e,e,t];k._matMult(i),P._matMult(i),L._matMult(i),z._matMult(i)}const B=r.stretch+r.fixed,F=a.stretch+a.fixed,N=n.stretch+n.fixed,j=l.stretch+l.fixed,U=e.imageSecondary;return{tl:k,tr:P,bl:L,br:z,texPrimary:{x:o.paddedRect.x+sg+B,y:o.paddedRect.y+sg+N,w:F-B,h:j-N},texSecondary:U?{x:U.paddedRect.x+sg+B,y:U.paddedRect.y+sg+N,w:F-B,h:j-N}:void 0,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:R,minFontScaleX:E/s/c,minFontScaleY:S/s/h,isSDF:i}};if(r&&(o.stretchX||o.stretchY)){const e=cg(u,_,f),t=cg(d,g,m);for(let i=0;io)&&(o=t.x),(!e||t.y>s)&&(s=t.y)}const l=Math.min(o-r,s-n);let c=l/2;const h=new lr([],fg);if(0===l)return new y(r,n);for(let t=r;tu.d||!u.d)&&(u=r,i&&console.log("found best %d after %d probes",Math.round(1e4*r.d)/1e4,d)),r.max-u.d<=t||(c=r.h/2,h.push(new mg(r.p.x-c,r.p.y-c,c,e)),h.push(new mg(r.p.x+c,r.p.y-c,c,e)),h.push(new mg(r.p.x-c,r.p.y+c,c,e)),h.push(new mg(r.p.x+c,r.p.y+c,c,e)),d+=4)}return i&&(console.log(`num probes: ${d}`),console.log(`best distance: ${u.d}`)),u.p}function fg(e,t){return t.max-e.max}class mg{constructor(e,t,i,r){this.p=new y(e,t),this.h=i,this.d=function(e,t){let i=!1,r=1/0;for(let n=0;ne.y!=a.y>e.y&&e.x<(a.x-n.x)*(e.y-n.y)/(a.y-n.y)+n.x&&(i=!i),r=Math.min(r,Ip(e,n,a))}}return(i?1:-1)*Math.sqrt(r)}(this.p,r),this.max=this.d+this.h*Math.SQRT2}}const _g=7,gg=Number.POSITIVE_INFINITY,yg=Math.sqrt(2);function xg(e,[t,i]){let r=0,n=0;if(i===gg){t<0&&(t=0);const i=t/yg;switch(e){case"top-right":case"top-left":n=i-_g;break;case"bottom-right":case"bottom-left":n=-i+_g;break;case"bottom":n=-t+_g;break;case"top":n=t-_g}switch(e){case"top-right":case"bottom-right":r=-i;break;case"top-left":case"bottom-left":r=i;break;case"left":r=t;break;case"right":r=-t}}else{switch(t=Math.abs(t),i=Math.abs(i),e){case"top-right":case"top-left":case"top":n=i-_g;break;case"bottom-right":case"bottom-left":case"bottom":n=-i+_g}switch(e){case"top-right":case"bottom-right":case"right":r=-t;break;case"top-left":case"bottom-left":case"left":r=t}}return[r,n]}function vg(e,t,i,r,n,o,s,a,l,c,h){e.createArrays(),e.tilePixelRatio=cr/(512*e.overscaling),e.compareText={},e.iconsNeedLinear=!1;const u=e.layers[0].layout,d=e.layers[0]._unevaluatedLayout._values,p={};if("composite"===e.textSizeData.kind){const{minZoom:t,maxZoom:i}=e.textSizeData;p.compositeTextSizes=[d["text-size"].possiblyEvaluate(new oa(t),a),d["text-size"].possiblyEvaluate(new oa(i),a)]}if("composite"===e.iconSizeData.kind){const{minZoom:t,maxZoom:i}=e.iconSizeData;p.compositeIconSizes=[d["icon-size"].possiblyEvaluate(new oa(t),a),d["icon-size"].possiblyEvaluate(new oa(i),a)]}p.layoutTextSize=d["text-size"].possiblyEvaluate(new oa(l+1),a),p.layoutIconSize=d["icon-size"].possiblyEvaluate(new oa(l+1),a),p.textMaxSize=d["text-size"].possiblyEvaluate(new oa(18),a);const f="map"===u.get("text-rotation-alignment")&&"point"!==u.get("symbol-placement"),m=u.get("text-size");let _=!1;for(const t of e.features)if(t.icon&&t.icon.nameSecondary){_=!0;break}for(const o of e.features){const l=u.get("text-font").evaluate(o,{},a).join(","),d=m.evaluate(o,{},a),g=p.layoutTextSize.evaluate(o,{},a),y=(p.layoutIconSize.evaluate(o,{},a),{horizontal:{},vertical:void 0}),x=o.text;let v,b=[0,0];if(x){const r=x.toString(),s=u.get("text-letter-spacing").evaluate(o,{},a)*u_,c=u.get("text-line-height").evaluate(o,{},a)*u_,h=js(r)?s:0,p=u.get("text-anchor").evaluate(o,{},a),m=u.get("text-variable-anchor");if(!m){const e=u.get("text-radial-offset").evaluate(o,{},a);b=e?xg(p,[e*u_,gg]):u.get("text-offset").evaluate(o,{},a).map((e=>e*u_))}let _=f?"center":u.get("text-justify").evaluate(o,{},a);const v="point"===u.get("symbol-placement"),w=v?u.get("text-max-width").evaluate(o,{},a)*u_:1/0,T=o=>{e.allowVerticalPlacement&&Ns(r)&&(y.vertical=k_(x,t,i,n,l,w,c,p,o,h,b,S_.vertical,!0,g,d))};if(!f&&m){const e="auto"===_?m.map((e=>bg(e))):[_];let r=!1;for(let o=0;o=0||!Ns(r)){const e=k_(x,t,i,n,l,w,c,p,_,h,b,S_.horizontal,!1,g,d);e&&(y.horizontal[_]=e)}T(v?"left":_)}}let w=!1;if(o.icon&&o.icon.namePrimary){const t=r[o.icon.namePrimary];t&&(v=j_(n[o.icon.namePrimary],o.icon.nameSecondary?n[o.icon.nameSecondary]:void 0,u.get("icon-offset").evaluate(o,{},a),u.get("icon-anchor").evaluate(o,{},a)),w=t.sdf,void 0===e.sdfIcons?e.sdfIcons=t.sdf:e.sdfIcons!==t.sdf&&W("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(t.pixelRatio!==e.pixelRatio||0!==u.get("icon-rotate").constantOr(1))&&(e.iconsNeedLinear=!0))}const T=Sg(y.horizontal)||y.vertical;e.iconsInText||(e.iconsInText=!!T&&T.iconsInText),(T||v)&&wg(e,o,y,v,r,p,g,0,b,w,s,a,c,h,_)}o&&e.generateCollisionDebugBuffers(l,e.collisionBoxArray)}function bg(e){switch(e){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function wg(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){let m=o.textMaxSize.evaluate(t,{},u);void 0===m&&(m=s);const _=e.layers[0].layout,g=_.get("icon-offset").evaluate(t,{},u),y=Sg(i.horizontal)||i.vertical,x="globe"===d.name,v=u_,b=s/v,T=e.tilePixelRatio*m/v,E=(z=e.overscaling,e.zoom>18&&z>2&&(z>>=1),Math.max(cr/(512*z),1)*_.get("symbol-spacing")),A=_.get("text-padding")*e.tilePixelRatio,S=_.get("icon-padding")*e.tilePixelRatio,M=w(_.get("text-max-angle")),I="map"===_.get("text-rotation-alignment")&&"point"!==_.get("symbol-placement"),C="map"===_.get("icon-rotation-alignment")&&"point"!==_.get("symbol-placement"),k=_.get("symbol-placement"),P=E/2;var z;const L=_.get("icon-text-fit").evaluate(t,{},u),D=_.get("icon-text-fit-padding").evaluate(t,{},u),R="none"!==L;let O;!1===e.hasAnyIconTextFit&&R&&(e.hasAnyIconTextFit=!0),r&&R&&(e.allowVerticalPlacement&&i.vertical&&(O=U_(r,i.vertical,L,D,g,b)),y&&(r=U_(r,y,L,D,g,b)));const B=(s,a,m)=>{if(a.x<0||a.x>=cr||a.y<0||a.y>=cr)return;let _=null;if(x){const{x:e,y:t,z:i}=d.projectTilePoint(a.x,a.y,m);_={anchor:new V_(e,t,i,0,void 0),up:d.upVector(m,a.x,a.y)}}!function(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,A,S){const M=e.addToLineVertexArray(t,r);let I,C,k,P,z,L,D,R=0,O=0,B=0,F=0,N=-1,j=-1;const U={};let V=Cl("");const G=i?i.anchor:t,$="none"!==l.layout.get("icon-text-fit").evaluate(v,{},E);let q=0,Z=0;if(void 0===l._unevaluatedLayout.getValue("text-radial-offset")?[q,Z]=l.layout.get("text-offset").evaluate(v,{},E).map((e=>e*u_)):(q=l.layout.get("text-radial-offset").evaluate(v,{},E)*u_,Z=gg),e.allowVerticalPlacement&&n.vertical){const e=n.vertical;if(f)L=Ig(e),a&&(D=Ig(a));else{const i=l.layout.get("text-rotate").evaluate(v,{},E)+90;k=Mg(c,G,t,h,u,d,e,p,i,m),a&&(P=Mg(c,G,t,h,u,d,a,g,i))}}if(o){const r=l.layout.get("icon-rotate").evaluate(v,{},E),n=ag(o,r,w,$),s=a?ag(a,r,w,$):void 0;C=Mg(c,G,t,h,u,d,o,g,r),R=4*n.length;const p=e.iconSizeData;let f=null;"source"===p.kind?(f=[d_*l.layout.get("icon-size").evaluate(v,{},E)],f[0]>Eg&&W(`${e.layerIds[0]}: Value for "icon-size" is >= ${Tg}. Reduce your "icon-size".`)):"composite"===p.kind&&(f=[d_*b.compositeIconSizes[0].evaluate(v,{},E),d_*b.compositeIconSizes[1].evaluate(v,{},E)],(f[0]>Eg||f[1]>Eg)&&W(`${e.layerIds[0]}: Value for "icon-size" is >= ${Tg}. Reduce your "icon-size".`)),e.addSymbols(e.icon,n,f,x,y,v,!1,i,t,M.lineStartIndex,M.lineLength,-1,T,E,A,S),N=e.icon.placedSymbolArray.length-1,s&&(O=4*s.length,e.addSymbols(e.icon,s,f,x,y,v,S_.vertical,i,t,M.lineStartIndex,M.lineLength,-1,T,E,A,S),j=e.icon.placedSymbolArray.length-1)}for(const r in n.horizontal){const o=n.horizontal[r];I||(V=Cl(o.text),f?z=Ig(o):I=Mg(c,G,t,h,u,d,o,p,l.layout.get("text-rotate").evaluate(v,{},E),m));const a=1===o.positionedLines.length;if(B+=Ag(e,i,t,o,s,l,f,v,m,M,n.vertical?S_.horizontal:S_.horizontalOnly,a?Object.keys(n.horizontal):[r],U,N,b,T,E,A),a)break}n.vertical&&(F+=Ag(e,i,t,n.vertical,s,l,f,v,m,M,S_.vertical,["vertical"],U,j,b,T,E,A));let H=-1;const X=(e,t)=>e?Math.max(e,t):t;H=X(z,H),H=X(L,H),H=X(D,H);const Y=H>-1?1:0;e.glyphOffsetArray.length>=gy.MAX_GLYPHS&&W("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==v.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,v.sortKey),e.symbolInstances.emplaceBack(t.x,t.y,G.x,G.y,G.z,U.right>=0?U.right:-1,U.center>=0?U.center:-1,U.left>=0?U.left:-1,U.vertical>=0?U.vertical:-1,N,j,V,void 0!==I?I:e.collisionBoxArray.length,void 0!==I?I+1:e.collisionBoxArray.length,void 0!==k?k:e.collisionBoxArray.length,void 0!==k?k+1:e.collisionBoxArray.length,void 0!==C?C:e.collisionBoxArray.length,void 0!==C?C+1:e.collisionBoxArray.length,P||e.collisionBoxArray.length,P?P+1:e.collisionBoxArray.length,h,B,F,R,O,Y,0,q,Z,H,0,$?1:0)}(e,a,_,s,i,r,n,O,e.layers[0],e.collisionBoxArray,t.index,t.sourceLayerIndex,e.index,A,I,l,0,S,C,g,t,o,c,h,u,p,f)};if("line"===k)for(const n of Y_(t.geometry,0,0,cr,cr)){const t=W_(n,E,M,i.vertical||y,r,v,T,e.overscaling,cr);for(const i of t)y&&Cg(e,y.text,P,i)||B(n,i,u)}else if("line-center"===k){for(const e of t.geometry)if(e.length>1){const t=H_(e,M,i.vertical||y,r,v,T);t&&B(e,t,u)}}else if("Polygon"===t.type)for(const e of Ff(t.geometry,0)){const t=pg(e,16);B(e[0],new V_(t.x,t.y,0,0,void 0),u)}else if("LineString"===t.type)for(const e of t.geometry)B(e,new V_(e[0].x,e[0].y,0,0,void 0),u);else if("Point"===t.type)for(const e of t.geometry)for(const t of e)B([t],new V_(t.x,t.y,0,0,void 0),u)}const Tg=255,Eg=Tg*d_;function Ag(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g){const x=function(e,t,i,r,n,o,s,a){const l=[];if(0===t.positionedLines.length)return l;const c=r.layout.get("text-rotate").evaluate(o,{})*Math.PI/180,h=function(e){const t=e[0],i=e[1],r=t*i;return r>0?[t,-i]:r<0?[-t,i]:0===t?[i,t]:[i,-t]}(i);let u=Math.abs(t.top-t.bottom);for(const e of t.positionedLines)u-=e.lineOffset;const d=t.positionedLines.length,p=u/d;let f=t.top-i[1];for(let e=0;eEg&&W(`${e.layerIds[0]}: Value for "text-size" is >= ${Tg}. Reduce your "text-size".`)):"composite"===v.kind&&(b=[d_*f.compositeTextSizes[0].evaluate(a,{},_),d_*f.compositeTextSizes[1].evaluate(a,{},_)],(b[0]>Eg||b[1]>Eg)&&W(`${e.layerIds[0]}: Value for "text-size" is >= ${Tg}. Reduce your "text-size".`)),e.addSymbols(e.text,x,b,l,s,a,h,t,i,c.lineStartIndex,c.lineLength,p,m,_,g,!1);for(const t of u)d[t]=e.text.placedSymbolArray.length-1;return 4*x.length}function Sg(e){for(const t in e)return e[t];return null}function Mg(e,t,i,r,n,o,s,a,l,c){let h=s.top,u=s.bottom,d=s.left,p=s.right;const f=s.collisionPadding;if(f&&(d-=f[0],h-=f[1],p+=f[2],u+=f[3]),l){const e=new y(d,h),t=new y(p,h),i=new y(d,u),r=new y(p,u),n=w(l);let o=new y(0,0);c&&(o=new y(c[0],c[1])),e._rotateAround(n,o),t._rotateAround(n,o),i._rotateAround(n,o),r._rotateAround(n,o),d=Math.min(e.x,t.x,i.x,r.x),p=Math.max(e.x,t.x,i.x,r.x),h=Math.min(e.y,t.y,i.y,r.y),u=Math.max(e.y,t.y,i.y,r.y)}return e.emplaceBack(t.x,t.y,t.z,i.x,i.y,d,h,p,u,a,r,n,o),e.length-1}function Ig(e){e.collisionPadding&&(e.top-=e.collisionPadding[1],e.bottom+=e.collisionPadding[3]);const t=e.bottom-e.top;return t>0?Math.max(10,t):null}function Cg(e,t,i,r){const n=e.compareText;if(t in n){const e=n[t];for(let t=e.length-1;t>=0;t--)if(r.dist(e[t])x&&(v(e,c,r,n,a,l),v(c,i,a,l,o,s))}v(u,d,r,o,n,o),v(d,p,n,o,n,s),v(p,f,n,s,r,s),v(f,u,r,s,r,o),m-=x,_-=x,g+=x,y+=x;const b=1/Math.max(g-m,y-_);return{scale:b,x:m*b,y:_*b,x2:g*b,y2:y*b,projection:t}}function zg(e,t,i,r,n,o,s,a,l){if("globe"===l.name)return yd(e,t,new Vu(i,r,n),!1);const c=Pg({z:i,x:r,y:n},l);return new ed([(o+c.x/c.scale)*t,t*(c.y/c.scale),s],[(o+c.x2/c.scale)*t,t*(c.y2/c.scale),a])}function Lg(e,{x:t,y:i},r=0){return new y(((t-r)*e.scale-e.x)*cr,(i*e.scale-e.y)*cr)}function Dg(e,t,i=0){return zu.fromValues(((t.x-i)*e.scale-e.x)*cr,(t.y*e.scale-e.y)*cr,ip(t.z,t.y))}const Rg=Su.identity(new Float32Array(16));class Og{constructor(e){this.spec=e,this.name=e.name,this.wrap=!1,this.requiresDraping=!1,this.supportsWorldCopies=!1,this.supportsTerrain=!1,this.supportsFog=!1,this.supportsFreeCamera=!1,this.zAxisUnit="meters",this.isReprojectedInTileSpace=!0,this.unsupportedLayers=["custom"],this.center=[0,0],this.range=[3.5,7]}project(e,t){return{x:0,y:0,z:0}}unproject(e,t){return new Hd(0,0)}projectTilePoint(e,t,i){return{x:e,y:t,z:0}}locationPoint(e,t,i=!0){return e._coordinatePoint(e.locationCoordinate(t),i)}pixelsPerMeter(e,t){return Qd(1,e)*t}pixelSpaceConversion(e,t,i){return 1}farthestPixelDistance(e){return kg(e,e.pixelsPerMeter)}pointCoordinate(e,t,i,r){const n=e.horizonLineFromTop(!1),o=new y(t,Math.max(n,i));return e.rayIntersectionCoordinate(e.pointRayIntersection(o,r))}pointCoordinate3D(e,t,i){const r=new y(t,i);if(e.elevation)return e.elevation.pointCoordinate(r);{const t=this.pointCoordinate(e,r.x,r.y,0);return[t.x,t.y,t.z]}}isPointAboveHorizon(e,t){if(e.elevation)return!this.pointCoordinate3D(e,t.x,t.y);const i=e.horizonLineFromTop();return t.y0?t<-qg+i&&(t=-qg+i):t>qg-i&&(t=qg-i);const o=n/Math.pow(Zg(t),r);let s=o*Math.sin(r*e),a=n-o*Math.cos(r*e);return s=.5*(s/Math.PI+.5),a=.5*(a/Math.PI+.5),{x:s,y:this.southernCenter?a:1-a,z:0}}unproject(e,t){e=(2*e-.5)*Math.PI,this.southernCenter&&(t=1-t),t=(2*(1-t)-.5)*Math.PI;const{n:i,f:r}=this,n=r-t,o=Math.sign(n),s=Math.sign(i)*Math.sqrt(e*e+n*n);let a=Math.atan2(e,Math.abs(n))*o;n*i<0&&(a-=Math.PI*Math.sign(e)*o);const l=k(T(a/i)+this.center[0],-180,180),c=k(T(2*Math.atan(Math.pow(r/s,1/i))-qg),-rp,rp);return new Hd(l,this.southernCenter?-c:c)}}class Wg extends Og{constructor(e){super(e),this.wrap=!0,this.supportsWorldCopies=!0,this.supportsTerrain=!0,this.supportsFog=!0,this.supportsFreeCamera=!0,this.isReprojectedInTileSpace=!1,this.unsupportedLayers=[],this.range=null}project(e,t){return{x:Kd(e),y:Jd(t),z:0}}unproject(e,t){const i=ep(e),r=tp(t);return new Hd(i,r)}}const Xg=w(rp);class Yg extends Og{project(e,t){const i=(t=w(t))*t,r=i*i;return{x:.5*((e=w(e))*(.8707-.131979*i+r*(r*(.003971*i-.001529*r)-.013791))/Math.PI+.5),y:1-.5*(t*(1.007226+i*(.015085+r*(.028874*i-.044475-.005916*r)))/Math.PI+1),z:0}}unproject(e,t){e=(2*e-.5)*Math.PI;let i=t=(2*(1-t)-1)*Math.PI,r=25,n=0,o=i*i;do{o=i*i;const e=o*o;n=(i*(1.007226+o*(.015085+e*(.028874*o-.044475-.005916*e)))-t)/(1.007226+o*(.045255+e*(.259866*o-.311325-.005916*11*e))),i=k(i-n,-Xg,Xg)}while(Math.abs(n)>1e-6&&--r>0);o=i*i;const s=k(T(e/(.8707+o*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979))),-180,180),a=T(i);return new Hd(s,a)}}const Kg=w(rp);class Jg extends Og{project(e,t){t=w(t),e=w(e);const i=Math.cos(t),r=2/Math.PI,n=Math.acos(i*Math.cos(e/2)),o=Math.sin(n)/n,s=.5*(e*r+2*i*Math.sin(e/2)/o)||0,a=.5*(t+Math.sin(t)/o)||0;return{x:.5*(s/Math.PI+.5),y:1-.5*(a/Math.PI+1),z:0}}unproject(e,t){let i=e=(2*e-.5)*Math.PI,r=t=(2*(1-t)-1)*Math.PI,n=25;const o=1e-6;let s=0,a=0;do{const n=Math.cos(r),o=Math.sin(r),l=2*o*n,c=o*o,h=n*n,u=Math.cos(i/2),d=Math.sin(i/2),p=2*u*d,f=d*d,m=1-h*u*u,_=m?1/m:0,g=m?Math.acos(n*u)*Math.sqrt(1/m):0,y=.5*(2*g*n*d+2*i/Math.PI)-e,x=.5*(g*o+r)-t,v=.5*_*(h*f+g*n*u*c)+1/Math.PI,b=_*(p*l/4-g*o*d),w=.125*_*(l*d-g*o*h*p),T=.5*_*(c*u+g*f*n)+.5,E=b*w-T*v;s=(x*b-y*T)/E,a=(y*w-x*v)/E,i=k(i-s,-Math.PI,Math.PI),r=k(r-a,-Kg,Kg)}while((Math.abs(s)>o||Math.abs(a)>o)&&--n>0);return new Hd(T(i),T(r))}}class Qg extends Og{constructor(e){super(e),this.center=e.center||[0,0],this.parallels=e.parallels||[0,0],this.cosPhi=Math.max(.01,Math.cos(w(this.parallels[0]))),this.scale=1/(2*Math.max(Math.PI*this.cosPhi,1/this.cosPhi)),this.wrap=!0,this.supportsWorldCopies=!0}project(e,t){const{scale:i,cosPhi:r}=this;return{x:w(e)*r*i+.5,y:-Math.sin(w(t))/r*i+.5,z:0}}unproject(e,t){const{scale:i,cosPhi:r}=this,n=-(t-.5)/i,o=k(T((e-.5)/i)/r,-180,180),s=Math.asin(k(n*r,-1,1)),a=k(T(s),-rp,rp);return new Hd(o,a)}}class ey extends Wg{constructor(e){super(e),this.requiresDraping=!0,this.supportsWorldCopies=!1,this.supportsFog=!0,this.zAxisUnit="pixels",this.unsupportedLayers=["debug"],this.range=[3,5]}projectTilePoint(e,t,i){const r=Td(e,t,i),n=Sd(fd(i));return zu.transformMat4(r,r,n),{x:r[0],y:r[1],z:r[2]}}locationPoint(e,t){const i=wd(t.lat,t.lng),r=zu.normalize([],i),n=e.elevation?e.elevation.getAtPointOrZero(e.locationCoordinate(t),e._centerAltitude):e._centerAltitude,o=Qd(1,0)*cr*n;zu.scaleAndAdd(i,i,r,o);const s=Su.identity(new Float64Array(16));return Su.multiply(s,e.pixelMatrix,e.globeMatrix),zu.transformMat4(i,i,s),new y(i[0],i[1])}pixelsPerMeter(e,t){return Qd(1,0)*t}pixelSpaceConversion(e,t,i){const r=Qd(1,e)*t,n=Kr(Qd(1,45)*t,r,i);return this.pixelsPerMeter(e,t)/n}createTileMatrix(e,t,i){const r=Md(fd(i.canonical));return Su.multiply(new Float64Array(16),e.globeMatrix,r)}createInversionMatrix(e,t){const{center:i}=e,r=Sd(fd(t));return Su.rotateY(r,r,w(i.lng)),Su.rotateX(r,r,w(i.lat)),Su.scale(r,r,[e._pixelsPerMercatorPixel,e._pixelsPerMercatorPixel,1]),Float32Array.from(r)}pointCoordinate(e,t,i,r){return ud(e,t,i,!0)||new lp(0,0)}pointCoordinate3D(e,t,i){const r=this.pointCoordinate(e,t,i,0);return[r.x,r.y,r.z]}isPointAboveHorizon(e,t){return!ud(e,t.x,t.y,!1)}farthestPixelDistance(e){const t=function(e,t){const i=e.cameraToCenterDistance,r=e._centerAltitude*t,n=e._camera,o=e._camera.forward(),s=zu.add([],zu.scale([],o,-i),[0,0,r]),a=e.worldSize/(2*Math.PI),l=[0,0,-a],c=e.width/e.height,h=Math.tan(e.fovAboveCenter),u=zu.scale([],n.up(),h),d=zu.scale([],n.right(),h*c),p=zu.normalize([],zu.add([],zu.add([],o,u),d)),f=[];let m;if(new Hu(s,p).closestPointOnSphere(l,a,f)){const t=zu.add([],f,l),i=zu.sub([],t,s);m=Math.cos(e.fovAboveCenter)*zu.length(i)}else{const e=zu.sub([],s,l),t=zu.sub([],l,s);zu.normalize(t,t);const i=zu.length(e)-a;m=Math.sqrt(i*(i+2*a));const r=Math.acos(m/(a+i))-Math.acos(zu.dot(o,t));m*=Math.cos(r)}return 1.01*m}(e,this.pixelsPerMeter(e.center.lat,e.worldSize)),i=zd(e.zoom);if(i>0){const r=kg(e,Qd(1,e.center.lat)*e.worldSize),n=e.worldSize/(2*Math.PI),o=Math.max(e.width,e.height)/e.worldSize*Math.PI;return Kr(t,r+n*(1-Math.cos(o)),Math.pow(i,10))}return t}upVector(e,t,i){return Td(t,i,e,1)}upVectorScale(e){return{metersToTile:hd(Ed(fd(e)))}}}function ty(e){const t=e.parallels,i=!!t&&Math.abs(t[0]+t[1])<.01;switch(e.name){case"mercator":return new Wg(e);case"equirectangular":return new $g(e);case"naturalEarth":return new Yg(e);case"equalEarth":return new Gg(e);case"winkelTripel":return new Jg(e);case"albers":return i?new Qg(e):new Bg(e);case"lambertConformalConic":return i?new Qg(e):new Hg(e);case"globe":return new ey(e)}throw new Error(`Invalid projection name: ${e.name}`)}const iy=new ga({"symbol-placement":new fa(Pt.layout_symbol["symbol-placement"]),"symbol-spacing":new fa(Pt.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new fa(Pt.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new ma(Pt.layout_symbol["symbol-sort-key"]),"symbol-z-order":new fa(Pt.layout_symbol["symbol-z-order"]),"symbol-z-elevate":new fa(Pt.layout_symbol["symbol-z-elevate"]),"icon-allow-overlap":new fa(Pt.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new fa(Pt.layout_symbol["icon-ignore-placement"]),"icon-optional":new fa(Pt.layout_symbol["icon-optional"]),"icon-rotation-alignment":new fa(Pt.layout_symbol["icon-rotation-alignment"]),"icon-size":new ma(Pt.layout_symbol["icon-size"]),"icon-text-fit":new ma(Pt.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ma(Pt.layout_symbol["icon-text-fit-padding"]),"icon-image":new ma(Pt.layout_symbol["icon-image"]),"icon-rotate":new ma(Pt.layout_symbol["icon-rotate"]),"icon-padding":new fa(Pt.layout_symbol["icon-padding"]),"icon-keep-upright":new fa(Pt.layout_symbol["icon-keep-upright"]),"icon-offset":new ma(Pt.layout_symbol["icon-offset"]),"icon-anchor":new ma(Pt.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new fa(Pt.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new fa(Pt.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new fa(Pt.layout_symbol["text-rotation-alignment"]),"text-field":new ma(Pt.layout_symbol["text-field"]),"text-font":new ma(Pt.layout_symbol["text-font"]),"text-size":new ma(Pt.layout_symbol["text-size"]),"text-max-width":new ma(Pt.layout_symbol["text-max-width"]),"text-line-height":new ma(Pt.layout_symbol["text-line-height"]),"text-letter-spacing":new ma(Pt.layout_symbol["text-letter-spacing"]),"text-justify":new ma(Pt.layout_symbol["text-justify"]),"text-radial-offset":new ma(Pt.layout_symbol["text-radial-offset"]),"text-variable-anchor":new fa(Pt.layout_symbol["text-variable-anchor"]),"text-anchor":new ma(Pt.layout_symbol["text-anchor"]),"text-max-angle":new fa(Pt.layout_symbol["text-max-angle"]),"text-writing-mode":new fa(Pt.layout_symbol["text-writing-mode"]),"text-rotate":new ma(Pt.layout_symbol["text-rotate"]),"text-padding":new fa(Pt.layout_symbol["text-padding"]),"text-keep-upright":new fa(Pt.layout_symbol["text-keep-upright"]),"text-transform":new ma(Pt.layout_symbol["text-transform"]),"text-offset":new ma(Pt.layout_symbol["text-offset"]),"text-allow-overlap":new fa(Pt.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new fa(Pt.layout_symbol["text-ignore-placement"]),"text-optional":new fa(Pt.layout_symbol["text-optional"]),visibility:new fa(Pt.layout_symbol.visibility)});var ry={paint:new ga({"icon-opacity":new ma(Pt.paint_symbol["icon-opacity"]),"icon-emissive-strength":new ma(Pt.paint_symbol["icon-emissive-strength"]),"text-emissive-strength":new ma(Pt.paint_symbol["text-emissive-strength"]),"icon-color":new ma(Pt.paint_symbol["icon-color"]),"icon-halo-color":new ma(Pt.paint_symbol["icon-halo-color"]),"icon-halo-width":new ma(Pt.paint_symbol["icon-halo-width"]),"icon-halo-blur":new ma(Pt.paint_symbol["icon-halo-blur"]),"icon-translate":new fa(Pt.paint_symbol["icon-translate"]),"icon-translate-anchor":new fa(Pt.paint_symbol["icon-translate-anchor"]),"icon-image-cross-fade":new ma(Pt.paint_symbol["icon-image-cross-fade"]),"text-opacity":new ma(Pt.paint_symbol["text-opacity"]),"text-color":new ma(Pt.paint_symbol["text-color"],{runtimeType:qt,getOverride:e=>e.textColor,hasOverride:e=>!!e.textColor}),"text-halo-color":new ma(Pt.paint_symbol["text-halo-color"]),"text-halo-width":new ma(Pt.paint_symbol["text-halo-width"]),"text-halo-blur":new ma(Pt.paint_symbol["text-halo-blur"]),"text-translate":new fa(Pt.paint_symbol["text-translate"]),"text-translate-anchor":new fa(Pt.paint_symbol["text-translate-anchor"]),"icon-color-saturation":new fa(Pt.paint_symbol["icon-color-saturation"])}),layout:iy};class ny{constructor(e){this.type=e.property.overrides?e.property.overrides.runtimeType:Ut,this.defaultValue=e}evaluate(e){if(e.formattedSection){const t=this.defaultValue.property.overrides;if(t&&t.hasOverride(e.formattedSection))return t.getOverride(e.formattedSection)}return e.feature&&e.featureState?this.defaultValue.evaluate(e.feature,e.featureState):this.defaultValue.property.specification.default}eachChild(e){this.defaultValue.isConstant()||e(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Ls(ny,"FormatSectionOverride",{omit:["defaultValue"]});class oy extends Ta{constructor(e,t){super(e,ry,t)}recalculate(e,t){super.recalculate(e,t),"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment"));const i=this.layout.get("text-writing-mode");if(i){const e=[];for(const t of i)e.indexOf(t)<0&&e.push(t);this.layout._values["text-writing-mode"]=e}else this.layout._values["text-writing-mode"]="point"===this.layout.get("symbol-placement")?["horizontal"]:["horizontal","vertical"];this._setPaintOverrides()}getValueAndResolveTokens(e,t,i,r){const n=this.layout.get(e).evaluate(t,{},i,r),o=this._unevaluatedLayout._values[e];return o.isDataDriven()||To(o.value)||!n?n:function(e,t){return t.replace(/{([^{}]+)}/g,((t,i)=>i in e?String(e[i]):""))}(t.properties,n)}createBucket(e){return new gy(e)}queryRadius(){return 0}queryIntersectsFeature(){return!1}_setPaintOverrides(){for(const e of ry.paint.overridableProperties){if(!oy.hasPaintOverride(this.layout,e))continue;const t=this.paint.get(e),i=new ny(t),r=new wo(i,t.property.specification);let n=null;n="constant"===t.value.kind||"source"===t.value.kind?new Ao("source",r):new So("composite",r,t.value.zoomStops,t.value._interpolationType),this.paint._values[e]=new da(t.property,n,t.parameters)}}_handleOverridablePaintPropertyUpdate(e,t,i){return!(!this.layout||t.isDataDriven()||i.isDataDriven())&&oy.hasPaintOverride(this.layout,e)}static hasPaintOverride(e,t){const i=e.get("text-field"),r=ry.paint.properties[t];let n=!1;const o=e=>{for(const t of e)if(r.overrides&&r.overrides.hasOverride(t))return void(n=!0)};if("constant"===i.value.kind&&i.value.value instanceof pi)o(i.value.value.sections);else if("source"===i.value.kind){const e=t=>{n||(t instanceof vi&&gi(t.value)===Xt?o(t.value.sections):t instanceof Ai?o(t.sections):t.eachChild(e))},t=i.value;t._styleExpression&&e(t._styleExpression.expression)}return n}getProgramIds(){const e=0!==this.paint.get("icon-opacity").constantOr(1),t=0!==this.paint.get("text-opacity").constantOr(1),i=[];return e&&i.push("symbolIcon"),t&&i.push("symbolSDF"),i}getDefaultProgramParams(e,t){return{config:new Ql(this,t),overrideFog:!1}}}const sy=hm.types,ay=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function ly(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=a?Math.min(Eg,Math.round(a[0])):0,f=a?Math.min(Eg,Math.round(a[1])):0;e.emplaceBack(t,i,Math.round(32*r),Math.round(32*n),o,s,(p<<1)+(l?1:0),f,16*c,16*h,256*u,256*d)}function cy(e,t,i){e.emplaceBack(t,i)}function hy(e,t,i,r,n,o,s){e.emplaceBack(t,i,r,n,o,s)}function uy(e,t,i,r,n){const o=5*t+2;e.float32[o+0]=i,e.float32[o+1]=r,e.float32[o+2]=n}function dy(e,t,i,r,n){e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n)}function py(e){for(const t of e.sections)if(Zs(t.text))return!0;return!1}class fy{constructor(e){this.layoutVertexArray=new Na,this.indexArray=new Ha,this.programConfigurations=e,this.segments=new xl,this.dynamicLayoutVertexArray=new Ra,this.opacityVertexArray=new Ua,this.placedSymbolArray=new cl,this.iconTransitioningVertexArray=new Va,this.globeExtVertexArray=new ja,this.zOffsetVertexArray=new Ya}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length&&0===this.iconTransitioningVertexArray.length}upload(e,t,i,r,n){this.isEmpty()||(i&&(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,i_.members),this.indexBuffer=e.createIndexBuffer(this.indexArray,t),this.dynamicLayoutVertexBuffer=e.createVertexBuffer(this.dynamicLayoutVertexArray,n_.members,!0),this.opacityVertexBuffer=e.createVertexBuffer(this.opacityVertexArray,ay,!0),this.iconTransitioningVertexArray.length>0&&(this.iconTransitioningVertexBuffer=e.createVertexBuffer(this.iconTransitioningVertexArray,s_.members,!0)),this.globeExtVertexArray.length>0&&(this.globeExtVertexBuffer=e.createVertexBuffer(this.globeExtVertexArray,r_.members,!0)),!this.zOffsetVertexBuffer&&(this.zOffsetVertexArray.length>0||n)&&(this.zOffsetVertexBuffer=e.createVertexBuffer(this.zOffsetVertexArray,o_.members,!0)),this.opacityVertexBuffer.itemSize=1),(i||r)&&this.programConfigurations.upload(e))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy(),this.iconTransitioningVertexBuffer&&this.iconTransitioningVertexBuffer.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy(),this.zOffsetVertexBuffer&&this.zOffsetVertexBuffer.destroy())}}Ls(fy,"SymbolBuffers");class my{constructor(e,t,i){this.layoutVertexArray=new e,this.layoutAttributes=t,this.indexArray=new i,this.segments=new xl,this.collisionVertexArray=new Za,this.collisionVertexArrayExt=new Ra}upload(e){this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=e.createVertexBuffer(this.collisionVertexArray,a_.members,!0),this.collisionVertexBufferExt=e.createVertexBuffer(this.collisionVertexArrayExt,l_.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy(),this.collisionVertexBufferExt.destroy())}}Ls(my,"CollisionBuffers");class _y{constructor(e){this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.fullyClipped=!1,this.hasAnyIconTextFit=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Su.identity([]),this.placementViewportMatrix=Su.identity([]);const t=this.layers[0]._unevaluatedLayout._values;this.textSizeData=p_(this.zoom,t["text-size"]),this.iconSizeData=p_(this.zoom,t["icon-size"]);const i=this.layers[0].layout,r=i.get("symbol-sort-key"),n=i.get("symbol-z-order");this.canOverlap=i.get("text-allow-overlap")||i.get("icon-allow-overlap")||i.get("text-ignore-placement")||i.get("icon-ignore-placement"),this.sortFeaturesByKey="viewport-y"!==n&&void 0!==r.constantOr(1),this.sortFeaturesByY=("viewport-y"===n||"auto"===n&&!this.sortFeaturesByKey)&&this.canOverlap,this.writingModes=i.get("text-writing-mode").map((e=>S_[e])),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.sourceID=e.sourceID,this.projection=e.projection,this.hasAnyZOffset=!1,this.zOffsetSortDirty=!1,this.zOffsetBuffersNeedUpload=i.get("symbol-z-elevate")}createArrays(){this.text=new fy(new ec(this.layers,this.zoom,(e=>/^text/.test(e)))),this.icon=new fy(new ec(this.layers,this.zoom,(e=>/^icon/.test(e)))),this.glyphOffsetArray=new dl,this.lineVertexArray=new pl,this.symbolInstances=new ul}calculateGlyphDependencies(e,t,i,r,n){for(let i=0;i0)&&("constant"!==a.value.kind||a.value.value.length>0),u="constant"!==c.value.kind||!!c.value.value||Object.keys(c.parameters).length>0,d=o.get("symbol-sort-key");if(this.features=[],!h&&!u)return;const p=t.iconDependencies,f=t.glyphDependencies,m=t.availableImages,_=new oa(this.zoom);for(const{feature:t,id:l,index:c,sourceLayerIndex:g}of e){const e=n._featureFilter.needGeometry,y=gp(t,e);if(!n._featureFilter.filter(_,y,i))continue;if(e||(y.geometry=_p(t,i,r)),s&&1!==t.type&&i.z<=5){const e=y.geometry,t=.98078528056,r=(e,r)=>{const n=Td(e.x,e.y,i,1),o=Td(r.x,r.y,i,1);return zu.dot(n,o)=0;for(const i of x.sections)if(i.image)p[i.image.namePrimary]=!0;else{const r=Ns(x.toString()),n=i.fontStack||e,o=f[n]=f[n]||{};this.calculateGlyphDependencies(i.text,o,t,this.allowVerticalPlacement,r)}}}"line"===o.get("symbol-placement")&&(this.features=function(e){const t={},i={},r=[];let n=0;function o(t){r.push(e[t]),n++}function s(e,t,n){const o=i[e];return delete i[e],i[t]=o,r[o].geometry[0].pop(),r[o].geometry[0]=r[o].geometry[0].concat(n[0]),o}function a(e,i,n){const o=t[i];return delete t[i],t[e]=o,r[o].geometry[0].shift(),r[o].geometry[0]=n[0].concat(r[o].geometry[0]),o}function l(e,t,i){const r=i?t[0][t[0].length-1]:t[0][0];return`${e}:${r.x}:${r.y}`}for(let c=0;ce.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((e,t)=>e.sortKey-t.sortKey))}update(e,t,i,r,n){const o=0!==Object.keys(e).length;if(o&&!this.stateDependentLayers.length)return;const s=o?this.stateDependentLayers:this.layers;this.text.programConfigurations.updatePaintArrays(e,t,s,i,r,n),this.icon.programConfigurations.updatePaintArrays(e,t,s,i,r,n)}updateZOffset(){const e=(e,t,r)=>{i+=t,i>e.length&&e.resize(i);for(let n=-t;n<0;n++)e.emplace(n+i,r)},t=(e,t,i)=>{r+=t,r>e.length&&e.resize(r);for(let n=-t;n<0;n++)e.emplace(n+r,i)};if(!this.zOffsetBuffersNeedUpload)return;this.zOffsetBuffersNeedUpload=!1;let i=0,r=0;for(let i=0;i0;if((n>0||o>0)&&(e(this.text.zOffsetVertexArray,n,a),e(this.text.zOffsetVertexArray,o,a)),l){const{placedIconSymbolIndex:e,verticalPlacedIconSymbolIndex:i}=r;e>=0&&t(this.icon.zOffsetVertexArray,s,a),i>=0&&t(this.icon.zOffsetVertexArray,r.numVerticalIconVertices,a)}}this.text.zOffsetVertexBuffer&&this.text.zOffsetVertexBuffer.updateData(this.text.zOffsetVertexArray),this.icon.zOffsetVertexBuffer&&this.icon.zOffsetVertexBuffer.updateData(this.icon.zOffsetVertexArray)}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(e){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(e),this.iconCollisionBox.upload(e)),this.text.upload(e,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload,this.zOffsetBuffersNeedUpload),this.icon.upload(e,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload,this.zOffsetBuffersNeedUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}getProjection(){return this.projectionInstance||(this.projectionInstance=ty(this.projection)),this.projectionInstance}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(e,t){const i=this.lineVertexArray.length;if(void 0!==e.segment)for(const{x:e,y:i}of t)this.lineVertexArray.emplaceBack(e,i);return{lineStartIndex:i,lineLength:this.lineVertexArray.length-i}}addSymbols(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){const _=e.indexArray,g=e.layoutVertexArray,y=e.globeExtVertexArray,x=e.segments.prepareSegment(4*t.length,g,_,this.canOverlap?o.sortKey:void 0),v=this.glyphOffsetArray.length,b=x.vertexLength,w=this.allowVerticalPlacement&&s===S_.vertical?Math.PI/2:0,T=o.text&&o.text.sections;for(let r=0;r=0?t.rightJustifiedTextSymbolIndex:t.centerJustifiedTextSymbolIndex>=0?t.centerJustifiedTextSymbolIndex:t.leftJustifiedTextSymbolIndex>=0?t.leftJustifiedTextSymbolIndex:t.verticalPlacedTextSymbolIndex>=0?t.verticalPlacedTextSymbolIndex:r),o=f_(this.textSizeData,e,n)/u_;return this.tilePixelRatio*o}getSymbolInstanceIconSize(e,t,i){const r=this.icon.placedSymbolArray.get(i),n=f_(this.iconSizeData,e,r);return this.tilePixelRatio*n}_commitDebugCollisionVertexUpdate(e,t,i,r){e.emplaceBack(t,-i,-i,r),e.emplaceBack(t,i,-i,r),e.emplaceBack(t,i,i,r),e.emplaceBack(t,-i,i,r)}_updateTextDebugCollisionBoxes(e,t,i,r,n,o){for(let s=r;s0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}hasIconTextFit(){return this.hasAnyIconTextFit}addIndicesForPlacedSymbol(e,t){const i=e.placedSymbolArray.get(t),r=i.vertexStartIndex+4*i.numGlyphs;for(let t=i.vertexStartIndex;tr[e]-r[t]||n[t]-n[e])),o}getSortedIndexesByZOffset(){if(!this.zOffsetSortDirty)return this.symbolInstanceIndexesSortedZOffset;if(!this.symbolInstanceIndexesSortedZOffset){this.symbolInstanceIndexesSortedZOffset=[];for(let e=0;ethis.symbolInstances.get(t).zOffset-this.symbolInstances.get(e).zOffset))}addToSortKeyRanges(e,t){const i=this.sortKeyRanges[this.sortKeyRanges.length-1];i&&i.sortKey===t?i.symbolInstanceEnd=e+1:this.sortKeyRanges.push({sortKey:t,symbolInstanceStart:e,symbolInstanceEnd:e+1})}sortFeatures(e){if(this.sortFeaturesByY&&this.sortedAngle!==e&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(e),this.sortedAngle=e,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const e of this.symbolInstanceIndexes){const t=this.symbolInstances.get(e);this.featureSortOrder.push(t.featureIndex);const{rightJustifiedTextSymbolIndex:i,centerJustifiedTextSymbolIndex:r,leftJustifiedTextSymbolIndex:n,verticalPlacedTextSymbolIndex:o,placedIconSymbolIndex:s,verticalPlacedIconSymbolIndex:a}=t;i>=0&&this.addIndicesForPlacedSymbol(this.text,i),r>=0&&r!==i&&this.addIndicesForPlacedSymbol(this.text,r),n>=0&&n!==r&&n!==i&&this.addIndicesForPlacedSymbol(this.text,n),o>=0&&this.addIndicesForPlacedSymbol(this.text,o),s>=0&&this.addIndicesForPlacedSymbol(this.icon,s),a>=0&&this.addIndicesForPlacedSymbol(this.icon,a)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}Ls(_y,"SymbolBucket",{omit:["layers","collisionBoxArray","features","compareText"]}),_y.MAX_GLYPHS=65535,_y.addDynamicAttributes=dy;var gy=_y;const yy=Ia([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"},{name:"a_linesofar",components:1,type:"Float32"}],4),{members:xy}=yy,vy=Ia([{name:"a_packed",components:4,type:"Float32"}]),{members:by}=vy,wy=hm.types,Ty=Math.cos(Math.PI/180*37.5);class Ey{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.projection=e.projection,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((e=>{this.gradients[e.id]={}})),this.layoutVertexArray=new Da,this.layoutVertexArray2=new Ra,this.indexArray=new Ha,this.programConfigurations=new ec(e.layers,e.zoom),this.segments=new xl,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id))}populate(e,t,i,r){this.hasPattern=jf("line",this.layers,t);const n=this.layers[0].layout.get("line-sort-key"),o=[];for(const{feature:t,id:s,index:a,sourceLayerIndex:l}of e){const e=this.layers[0]._featureFilter.needGeometry,c=gp(t,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),c,i))continue;const h=n?n.evaluate(c,{},i):void 0,u={id:s,properties:t.properties,type:t.type,sourceLayerIndex:l,index:a,geometry:e?c.geometry:_p(t,i,r),patterns:{},sortKey:h};o.push(u)}n&&o.sort(((e,t)=>e.sortKey-t.sortKey));const{lineAtlas:s,featureIndex:a}=t,l=this.addConstantDashes(s);for(const r of o){const{geometry:n,index:o,sourceLayerIndex:c}=r;if(l&&this.addFeatureDashes(r,s),this.hasPattern){const e=Uf("line",this.layers,r,this.zoom,t);this.patternFeatures.push(e)}else this.addFeature(r,n,o,i,s.positions,t.availableImages,t.brightness);a.insert(e[o].feature,n,o,c,this.index)}}addConstantDashes(e){let t=!1;for(const i of this.layers){const r=i.paint.get("line-dasharray").value,n=i.layout.get("line-cap").value;if("constant"!==r.kind||"constant"!==n.kind)t=!0;else{const t=n.value,i=r.value;if(!i)continue;e.addDash(i,t)}}return t}addFeatureDashes(e,t){const i=this.zoom;for(const r of this.layers){const n=r.paint.get("line-dasharray").value,o=r.layout.get("line-cap").value;if("constant"===n.kind&&"constant"===o.kind)continue;let s,a;if("constant"===n.kind){if(s=n.value,!s)continue}else s=n.evaluate({zoom:i},e);a="constant"===o.kind?o.value:o.evaluate({zoom:i},e),t.addDash(s,a),e.patterns[r.id]=t.getKey(s,a)}}update(e,t,i,r,n){const o=0!==Object.keys(e).length;o&&!this.stateDependentLayers.length||this.programConfigurations.updatePaintArrays(e,t,o?this.stateDependentLayers:this.layers,i,r,n)}addFeatures(e,t,i,r,n,o){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,i,r,o)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=e.createVertexBuffer(this.layoutVertexArray2,by)),this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,xy),this.indexBuffer=e.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(e),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(e){if(e.properties&&e.properties.hasOwnProperty("mapbox_clip_start")&&e.properties.hasOwnProperty("mapbox_clip_end"))return{start:+e.properties.mapbox_clip_start,end:+e.properties.mapbox_clip_end}}addFeature(e,t,i,r,n,o,s){const a=this.layers[0].layout,l=a.get("line-join").evaluate(e,{}),c=a.get("line-cap").evaluate(e,{}),h=a.get("line-miter-limit"),u=a.get("line-round-limit");this.lineClips=this.lineFeatureClips(e);for(const i of t)this.addLine(i,e,l,c,h,u);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,i,n,o,r,s)}addLine(e,t,i,r,n,o){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineSoFar=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let t=0;t=2&&e[a-1].equals(e[a-2]);)a--;let l=0;for(;l0;if(b&&t>l){const e=u.dist(d);if(e>2*c){const t=u.sub(u.sub(d)._mult(c/e)._round());this.updateDistance(d,t),this.addCurrentVertex(t,f,0,0,h),d=t}}const T=d&&p;let E=T?i:s?"butt":r;if(T&&"round"===E&&(xn&&(E="bevel"),"bevel"===E&&(x>2&&(E="flipbevel"),x100)_=m.mult(-1);else{const e=x*f.add(m).mag()/f.sub(m).mag();_._perp()._mult(e*(w?-1:1))}this.addCurrentVertex(u,_,0,0,h),this.addCurrentVertex(u,_.mult(-1),0,0,h)}else if("bevel"===E||"fakeround"===E){const e=-Math.sqrt(x*x-1),t=w?e:0,i=w?0:e;if(d&&this.addCurrentVertex(u,f,t,i,h),"fakeround"===E){const e=Math.round(180*v/Math.PI/20);for(let t=1;t2*c){const t=u.add(p.sub(u)._mult(c/e)._round());this.updateDistance(u,t),this.addCurrentVertex(t,m,0,0,h),u=t}}}}addCurrentVertex(e,t,i,r,n,o=!1){const s=t.y*r-t.x,a=-t.y-t.x*r;this.addHalfVertex(e,t.x+t.y*i,t.y-t.x*i,o,!1,i,n),this.addHalfVertex(e,s,a,o,!0,-r,n)}addHalfVertex({x:e,y:t},i,r,n,o,s,a){this.layoutVertexArray.emplaceBack((e<<1)+(n?1:0),(t<<1)+(o?1:0),Math.round(63*i)+128,Math.round(63*r)+128,1+(0===s?0:s<0?-1:1),0,this.lineSoFar),this.lineClips&&this.layoutVertexArray2.emplaceBack(this.scaledDistance,this.lineClipsArray.length,this.lineClips.start,this.lineClips.end);const l=a.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,l),a.primitiveLength++),o?this.e2=l:this.e1=l}updateScaledDistance(){if(this.lineClips){const e=this.totalDistance/(this.lineClips.end-this.lineClips.start);this.scaledDistance=this.distance/this.totalDistance,this.lineSoFar=e*this.lineClips.start+this.distance}else this.lineSoFar=this.distance}updateDistance(e,t){this.distance+=e.dist(t),this.updateScaledDistance()}}Ls(Ey,"LineBucket",{omit:["layers","patternFeatures"]});class Ay{constructor(e,t,i,r){this.context=e,this.format=i,this.texture=e.gl.createTexture(),this.update(t,r)}update(e,i,r){const{width:n,height:o}=e,{context:s}=this,{gl:a}=s,{HTMLImageElement:l,HTMLCanvasElement:c,HTMLVideoElement:h,ImageData:u,ImageBitmap:d}=t;if(a.bindTexture(a.TEXTURE_2D,this.texture),s.pixelStoreUnpackFlipY.set(!1),s.pixelStoreUnpack.set(1),s.pixelStoreUnpackPremultiplyAlpha.set(this.format===a.RGBA&&(!i||!1!==i.premultiply)),r||this.size&&this.size[0]===n&&this.size[1]===o){const{x:t,y:i}=r||{x:0,y:0};if(e instanceof l||e instanceof c||e instanceof h||e instanceof u||d&&e instanceof d)a.texSubImage2D(a.TEXTURE_2D,0,t,i,a.RGBA,a.UNSIGNED_BYTE,e);else{let r=this.format,s=a.UNSIGNED_BYTE;this.format===a.R32F&&(r=a.RED,s=a.FLOAT),a.texSubImage2D(a.TEXTURE_2D,0,t,i,n,o,r,s,e.data)}}else if(this.size=[n,o],e instanceof l||e instanceof c||e instanceof h||e instanceof u||d&&e instanceof d){let t=this.format;this.format===a.R8&&(t=a.RED),a.texImage2D(a.TEXTURE_2D,0,this.format,t,a.UNSIGNED_BYTE,e)}else{let t=this.format,i=this.format,r=a.UNSIGNED_BYTE;this.format===a.DEPTH_COMPONENT&&(t=a.DEPTH_COMPONENT16,r=a.UNSIGNED_SHORT),this.format===a.R32F&&(r=a.FLOAT,i=a.RED),a.texImage2D(a.TEXTURE_2D,0,t,n,o,0,i,r,e.data)}this.useMipmap=Boolean(i&&i.useMipmap),this.useMipmap&&a.generateMipmap(a.TEXTURE_2D)}bind(e,t){const{context:i}=this,{gl:r}=i;r.bindTexture(r.TEXTURE_2D,this.texture),e!==this.minFilter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,this.useMipmap?e===r.NEAREST?r.NEAREST_MIPMAP_NEAREST:r.LINEAR_MIPMAP_NEAREST:e),this.minFilter=e),t!==this.wrapS&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,t),this.wrapS=t)}bindExtraParam(e,t,i,r){const{context:n}=this,{gl:o}=n;o.bindTexture(o.TEXTURE_2D,this.texture),t!==this.magFilter&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,t),this.magFilter=t),e!==this.minFilter&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,this.useMipmap?e===o.NEAREST?o.NEAREST_MIPMAP_NEAREST:o.LINEAR_MIPMAP_NEAREST:e),this.minFilter=e),i!==this.wrapS&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,i),this.wrapS=i),r!==this.wrapT&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,r),this.wrapT=r)}destroy(){const{gl:e}=this.context;e.deleteTexture(this.texture),this.texture=null}}class Sy{constructor(e,t){this.context=e,this.texture=t}bind(e,t){const{context:i}=this,{gl:r}=i;r.bindTexture(r.TEXTURE_2D,this.texture),e!==this.minFilter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,e),this.minFilter=e),t!==this.wrapS&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,t),this.wrapS=t)}}const My=32,Iy=33,Cy=new Uint16Array(8184);for(let e=0;e<2046;e++){let t=e+2,i=0,r=0,n=0,o=0,s=0,a=0;for(1&t?n=o=s=My:i=r=a=My;(t>>=1)>1;){const e=i+n>>1,l=r+o>>1;1&t?(n=i,o=r,i=s,r=a):(i=n,r=o,n=s,o=a),s=e,a=l}const l=4*e;Cy[l+0]=i,Cy[l+1]=r,Cy[l+2]=n,Cy[l+3]=o}const ky=new Uint16Array(2178),Py=new Uint8Array(1089),zy=new Uint16Array(1089);function Ly(e){return 0===e?-.03125:32===e?.03125:0}var Dy=Ia([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);const Ry={type:2,extent:cr,loadGeometry:()=>[[new y(0,0),new y(cr+1,0),new y(cr+1,cr+1),new y(0,cr+1),new y(0,0)]]};class Oy{constructor(e,t,i,r,n){this.tileID=e,this.uid=F(),this.uses=0,this.tileSize=t,this.tileZoom=i,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.isRaster=n,r&&r.style&&(this._lastUpdatedBrightness=r.style.getBrightness()),this.expiredRequestCount=0,this.state="loading",r&&r.transform&&(this.projection=r.transform.projection)}registerFadeDuration(e){const t=e+this.timeAdded;tt.getLayer(e))).filter(Boolean);if(0!==e.length){r.layers=e,r.stateDependentLayerIds&&(r.stateDependentLayers=r.stateDependentLayerIds.map((t=>e.filter((e=>e.id===t))[0])));for(const t of e)i[t.fqid]=r}}return i}(e.buckets,t.style),this.hasSymbolBuckets=!1;for(const e in this.buckets){const t=this.buckets[e];if(t instanceof gy){if(this.hasSymbolBuckets=!0,!i)break;t.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const e in this.buckets){const t=this.buckets[e];if(t instanceof gy&&t.hasRTLText){this.hasRTLText=!0,na.isLoading()||na.isLoaded()||"deferred"!==ia()||ra();break}}this.queryPadding=0;for(const e in this.buckets){const i=this.buckets[e],r=t.style.getOwnLayer(e);if(!r)continue;const n=r.queryRadius(i);this.queryPadding=Math.max(this.queryPadding,n)}e.imageAtlas&&(this.imageAtlas=e.imageAtlas),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage),e.lineAtlas&&(this.lineAtlas=e.lineAtlas),this._lastUpdatedBrightness=e.brightness}else this.collisionBoxArray=new al}unloadVectorData(){if(this.hasData()){for(const e in this.buckets)this.buckets[e].destroy();this.buckets={},this.imageAtlas&&(this.imageAtlas=null),this.lineAtlas&&(this.lineAtlas=null),this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.lineAtlasTexture&&this.lineAtlasTexture.destroy(),this._tileBoundsBuffer&&(this._tileBoundsBuffer.destroy(),this._tileBoundsIndexBuffer.destroy(),this._tileBoundsSegments.destroy(),this._tileBoundsBuffer=null),this._tileDebugBuffer&&(this._tileDebugBuffer.destroy(),this._tileDebugSegments.destroy(),this._tileDebugBuffer=null),this._tileDebugIndexBuffer&&(this._tileDebugIndexBuffer.destroy(),this._tileDebugIndexBuffer=null),this._globeTileDebugBorderBuffer&&(this._globeTileDebugBorderBuffer.destroy(),this._globeTileDebugBorderBuffer=null),this._tileDebugTextBuffer&&(this._tileDebugTextBuffer.destroy(),this._tileDebugTextSegments.destroy(),this._tileDebugTextIndexBuffer.destroy(),this._tileDebugTextBuffer=null),this._globeTileDebugTextBuffer&&(this._globeTileDebugTextBuffer.destroy(),this._globeTileDebugTextBuffer=null),this.latestFeatureIndex=null,this.state="unloaded"}}getBucket(e){return this.buckets[e.fqid]}upload(e){for(const t in this.buckets){const i=this.buckets[t];i.uploadPending()&&i.upload(e)}const t=e.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Ay(e,this.imageAtlas.image,t.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Ay(e,this.glyphAtlasImage,t.ALPHA),this.glyphAtlasImage=null),this.lineAtlas&&!this.lineAtlas.uploaded&&(this.lineAtlasTexture=new Ay(e,this.lineAtlas.image,t.ALPHA),this.lineAtlas.uploaded=!0)}prepare(e,t,i){if(this.imageAtlas&&this.imageAtlasTexture&&this.imageAtlas.patchUpdatedImages(e,this.imageAtlasTexture,i),!t||!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData)return;const r=t.style.getBrightness();(this._lastUpdatedBrightness||r)&&(this._lastUpdatedBrightness&&r&&Math.abs(this._lastUpdatedBrightness-r)<.001||(this._lastUpdatedBrightness=r,this.updateBuckets(void 0,t)))}queryRenderedFeatures(e,t,i,r,n,o,s,a){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({tileResult:r,pixelPosMatrix:s,transform:o,params:n,tileTransform:this.tileTransform},e,t,i):{}}querySourceFeatures(e,t){const i=this.latestFeatureIndex;if(!i||!i.rawTileData)return;const r=i.loadVTLayers(),n=t?t.sourceLayer:"",o=r._geojsonTileLayer||r[n];if(!o)return;const s=Fo(t&&t.filter),{z:a,x:l,y:c}=this.tileID.canonical,h={z:a,x:l,y:c};for(let t=0;te)i=!1;else if(t)if(this.expirationTime=0;e--){const t=4*e,i=Cy[t+0],r=Cy[t+1],n=Cy[t+2],o=Cy[t+3],s=i+n>>1,a=r+o>>1,l=s+a-r,c=a+i-s,h=r*Iy+i,u=o*Iy+n,d=a*Iy+s,p=Math.hypot((ky[2*h+0]+ky[2*u+0])/2-ky[2*d+0],(ky[2*h+1]+ky[2*u+1])/2-ky[2*d+1])>=16;Py[d]=Py[d]||(p?1:0),e<1022&&(Py[d]=Py[d]||Py[(r+c>>1)*Iy+(i+l>>1)]||Py[(o+c>>1)*Iy+(n+l>>1)])}const n=new za,o=new Ha;let s=0;function a(e,t){const i=t*Iy+e;return 0===zy[i]&&(n.emplaceBack(ky[2*i+0],ky[2*i+1],e*cr/My,t*cr/My),zy[i]=++s),zy[i]-1}function l(e,t,i,r,n,s){const c=e+i>>1,h=t+r>>1;if(Math.abs(e-n)+Math.abs(t-s)>1&&Py[h*Iy+c])l(n,s,e,t,c,h),l(i,r,n,s,c,h);else{const l=a(e,t),c=a(i,r),h=a(n,s);o.emplaceBack(l,c,h)}}return l(0,0,My,My,My,0),l(My,My,0,0,0,My),{vertices:n,indices:o}}(this.tileID.canonical,t);r=e.vertices,n=e.indices}else{r=new za,n=new Ha;for(const{x:e,y:t}of i)r.emplaceBack(e,t,0,0);const e=Bf(r.int16,void 0,4);for(let t=0;t0&&(s=Su.invert(new Float64Array(16),t.globeMatrix)),this._makeGlobeTileDebugBorderBuffer(e,r,t,n,s,o),this._makeGlobeTileDebugTextBuffer(e,r,t,n,s,o)}_globePoint(e,t,i,r,n,o,s){let a=Td(e,t,i);if(o){const n=1<.5?u=-1:h<-.5&&(u=1);let d=(e/cr+i.x)/n+u,p=(t/cr+i.y)/n;d=(d-l)*r._pixelsPerMercatorPixel+l,p=(p-c)*r._pixelsPerMercatorPixel+c;const f=[d*r.worldSize,p*r.worldSize,0];zu.transformMat4(f,f,o),a=md(a,f,s)}return zu.transformMat4(a,a,n)}_makeGlobeTileDebugBorderBuffer(e,t,i,r,n,o){const s=new ka,a=new el,l=new Pa,c=(e,c,h,u,d)=>{const p=(h-e)/(d-1),f=(u-c)/(d-1),m=s.length;for(let h=0;hh*e+t;for(let e=0;e{this.remove(e,n)}),i)),this.data[r].push(n),this.order.push(r),this.order.length>this.max){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this}has(e){return e.wrapped().key in this.data}getAndRemove(e){return this.has(e)?this._getAndRemoveByKey(e.wrapped().key):null}_getAndRemoveByKey(e){const t=this.data[e].shift();return t.timeout&&clearTimeout(t.timeout),0===this.data[e].length&&delete this.data[e],this.order.splice(this.order.indexOf(e),1),t.value}getByKey(e){const t=this.data[e];return t?t[0].value:null}get(e){return this.has(e)?this.data[e.wrapped().key][0].value:null}remove(e,t){if(!this.has(e))return this;const i=e.wrapped().key,r=void 0===t?0:this.data[i].indexOf(t),n=this.data[i][r];return this.data[i].splice(r,1),n.timeout&&clearTimeout(n.timeout),0===this.data[i].length&&delete this.data[i],this.onRemove(n.value),this.order.splice(this.order.indexOf(i),1),this}setMaxSize(e){for(this.max=e;this.order.length>this.max;){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e)}return this}filter(e){const t=[];for(const i in this.data)for(const r of this.data[i])e(r.value)||t.push(r);for(const e of t)this.remove(e.value.tileID,e)}}class Fy{constructor(e,t,i,r){this.id=Fy.uniqueIdxCounter,Fy.uniqueIdxCounter++,this.context=e;const n=e.gl;this.buffer=n.createBuffer(),this.dynamicDraw=Boolean(i),this.context.unbindVAO(),e.bindElementBuffer.set(this.buffer),n.bufferData(n.ELEMENT_ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||r||t.destroy()}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(e){this.id=Fy.uniqueIdxCounter,Fy.uniqueIdxCounter++;const t=this.context.gl;this.context.unbindVAO(),this.bind(),t.bufferSubData(t.ELEMENT_ARRAY_BUFFER,0,e.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}Fy.uniqueIdxCounter=0;const Ny={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class jy{constructor(e,t,i,r,n,o){this.length=t.length,this.attributes=i,this.itemSize=t.bytesPerElement,this.dynamicDraw=r,this.instanceCount=o,this.context=e;const s=e.gl;this.buffer=s.createBuffer(),e.bindVertexBuffer.set(this.buffer),s.bufferData(s.ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?s.DYNAMIC_DRAW:s.STATIC_DRAW),this.dynamicDraw||n||t.destroy()}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(e){const t=this.context.gl;this.bind(),t.bufferSubData(t.ARRAY_BUFFER,0,e.arrayBuffer)}enableAttributes(e,t){for(let i=0;i0&&e.vertexAttribDivisor(n,i)}}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}class Uy{constructor(e){this.gl=e.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1}get(){return this.current}set(e){}getDefault(){return this.default}setDefault(){this.set(this.default)}}class Vy extends Uy{getDefault(){return hi.transparent}set(e){const t=this.current;(e.r!==t.r||e.g!==t.g||e.b!==t.b||e.a!==t.a||this.dirty)&&(this.gl.clearColor(e.r,e.g,e.b,e.a),this.current=e,this.dirty=!1)}}class Gy extends Uy{getDefault(){return 1}set(e){(e!==this.current||this.dirty)&&(this.gl.clearDepth(e),this.current=e,this.dirty=!1)}}class $y extends Uy{getDefault(){return 0}set(e){(e!==this.current||this.dirty)&&(this.gl.clearStencil(e),this.current=e,this.dirty=!1)}}class qy extends Uy{getDefault(){return[!0,!0,!0,!0]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3]||this.dirty)&&(this.gl.colorMask(e[0],e[1],e[2],e[3]),this.current=e,this.dirty=!1)}}class Zy extends Uy{getDefault(){return!0}set(e){(e!==this.current||this.dirty)&&(this.gl.depthMask(e),this.current=e,this.dirty=!1)}}class Hy extends Uy{getDefault(){return 255}set(e){(e!==this.current||this.dirty)&&(this.gl.stencilMask(e),this.current=e,this.dirty=!1)}}class Wy extends Uy{getDefault(){return{func:this.gl.ALWAYS,ref:0,mask:255}}set(e){const t=this.current;(e.func!==t.func||e.ref!==t.ref||e.mask!==t.mask||this.dirty)&&(this.gl.stencilFunc(e.func,e.ref,e.mask),this.current=e,this.dirty=!1)}}class Xy extends Uy{getDefault(){const e=this.gl;return[e.KEEP,e.KEEP,e.KEEP]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||this.dirty)&&(this.gl.stencilOp(e[0],e[1],e[2]),this.current=e,this.dirty=!1)}}class Yy extends Uy{getDefault(){return!1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.STENCIL_TEST):t.disable(t.STENCIL_TEST),this.current=e,this.dirty=!1}}class Ky extends Uy{getDefault(){return[0,1]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||this.dirty)&&(this.gl.depthRange(e[0],e[1]),this.current=e,this.dirty=!1)}}class Jy extends Uy{getDefault(){return!1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.DEPTH_TEST):t.disable(t.DEPTH_TEST),this.current=e,this.dirty=!1}}class Qy extends Uy{getDefault(){return this.gl.LESS}set(e){(e!==this.current||this.dirty)&&(this.gl.depthFunc(e),this.current=e,this.dirty=!1)}}class ex extends Uy{getDefault(){return!1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.BLEND):t.disable(t.BLEND),this.current=e,this.dirty=!1}}class tx extends Uy{getDefault(){const e=this.gl;return[e.ONE,e.ZERO,e.ONE,e.ZERO]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3]||this.dirty)&&(this.gl.blendFuncSeparate(e[0],e[1],e[2],e[3]),this.current=e,this.dirty=!1)}}class ix extends Uy{getDefault(){return hi.transparent}set(e){const t=this.current;(e.r!==t.r||e.g!==t.g||e.b!==t.b||e.a!==t.a||this.dirty)&&(this.gl.blendColor(e.r,e.g,e.b,e.a),this.current=e,this.dirty=!1)}}class rx extends Uy{getDefault(){return this.gl.FUNC_ADD}set(e){(e!==this.current||this.dirty)&&(this.gl.blendEquationSeparate(e,e),this.current=e,this.dirty=!1)}}class nx extends Uy{getDefault(){return!1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.CULL_FACE):t.disable(t.CULL_FACE),this.current=e,this.dirty=!1}}class ox extends Uy{getDefault(){return this.gl.BACK}set(e){(e!==this.current||this.dirty)&&(this.gl.cullFace(e),this.current=e,this.dirty=!1)}}class sx extends Uy{getDefault(){return this.gl.CCW}set(e){(e!==this.current||this.dirty)&&(this.gl.frontFace(e),this.current=e,this.dirty=!1)}}let ax=class extends Uy{getDefault(){return null}set(e){(e!==this.current||this.dirty)&&(this.gl.useProgram(e),this.current=e,this.dirty=!1)}};class lx extends Uy{getDefault(){return this.gl.TEXTURE0}set(e){(e!==this.current||this.dirty)&&(this.gl.activeTexture(e),this.current=e,this.dirty=!1)}}class cx extends Uy{getDefault(){const e=this.gl;return[0,0,e.drawingBufferWidth,e.drawingBufferHeight]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3]||this.dirty)&&(this.gl.viewport(e[0],e[1],e[2],e[3]),this.current=e,this.dirty=!1)}}class hx extends Uy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindFramebuffer(t.FRAMEBUFFER,e),this.current=e,this.dirty=!1}}class ux extends Uy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindRenderbuffer(t.RENDERBUFFER,e),this.current=e,this.dirty=!1}}class dx extends Uy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindTexture(t.TEXTURE_2D,e),this.current=e,this.dirty=!1}}class px extends Uy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindBuffer(t.ARRAY_BUFFER,e),this.current=e,this.dirty=!1}}class fx extends Uy{getDefault(){return null}set(e){const t=this.gl;t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,e),this.current=e,this.dirty=!1}}class mx extends Uy{getDefault(){return null}set(e){this.gl&&(e!==this.current||this.dirty)&&(this.gl.bindVertexArray(e),this.current=e,this.dirty=!1)}}class _x extends Uy{getDefault(){return 4}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.pixelStorei(t.UNPACK_ALIGNMENT,e),this.current=e,this.dirty=!1}}class gx extends Uy{getDefault(){return!1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,e),this.current=e,this.dirty=!1}}class yx extends Uy{getDefault(){return!1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,e),this.current=e,this.dirty=!1}}class xx extends Uy{constructor(e,t){super(e),this.context=e,this.parent=t}getDefault(){return null}}class vx extends xx{setDirty(){this.dirty=!0}set(e){if(e===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const t=this.gl;t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,e,0),this.current=e,this.dirty=!1}}class bx extends xx{attachment(){return this.gl.DEPTH_ATTACHMENT}set(e){if(e===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const t=this.gl;t.framebufferRenderbuffer(t.FRAMEBUFFER,this.attachment(),t.RENDERBUFFER,e),this.current=e,this.dirty=!1}}class wx extends xx{attachment(){return this.gl.DEPTH_ATTACHMENT}set(e){if(e===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const t=this.gl;t.framebufferTexture2D(t.FRAMEBUFFER,this.attachment(),t.TEXTURE_2D,e,0),this.current=e,this.dirty=!1}}class Tx extends bx{attachment(){return this.gl.DEPTH_STENCIL_ATTACHMENT}}class Ex{constructor(e,t,i,r,n){this.context=e,this.width=t,this.height=i;const o=this.framebuffer=e.gl.createFramebuffer();r&&(this.colorAttachment=new vx(e,o)),n&&(this.depthAttachmentType=n,this.depthAttachment="renderbuffer"===n?new bx(e,o):new wx(e,o))}destroy(){const e=this.context.gl;if(this.colorAttachment){const t=this.colorAttachment.get();t&&e.deleteTexture(t)}if(this.depthAttachment&&this.depthAttachmentType)if("renderbuffer"===this.depthAttachmentType){const t=this.depthAttachment.get();t&&e.deleteRenderbuffer(t)}else{const t=this.depthAttachment.get();t&&e.deleteTexture(t)}e.deleteFramebuffer(this.framebuffer)}}class Ax{constructor(e,t,i){this.func=e,this.mask=t,this.range=i}}Ax.ReadOnly=!1,Ax.ReadWrite=!0,Ax.disabled=new Ax(519,Ax.ReadOnly,[0,1]);const Sx=7680;class Mx{constructor(e,t,i,r,n,o){this.test=e,this.ref=t,this.mask=i,this.fail=r,this.depthFail=n,this.pass=o}}Mx.disabled=new Mx({func:519,mask:0},0,0,Sx,Sx,Sx);const Ix=771;class Cx{constructor(e,t,i,r){this.blendFunction=e,this.blendColor=t,this.mask=i,this.blendEquation=r}}Cx.Replace=[1,0,1,0],Cx.disabled=new Cx(Cx.Replace,hi.transparent,[!1,!1,!1,!1]),Cx.unblended=new Cx(Cx.Replace,hi.transparent,[!0,!0,!0,!0]),Cx.alphaBlended=new Cx([1,Ix,1,Ix],hi.transparent,[!0,!0,!0,!0]),Cx.multiply=new Cx([774,0,774,0],hi.transparent,[!0,!0,!0,!0]);const kx=1029,Px=2305;class zx{constructor(e,t,i){this.enable=e,this.mode=t,this.frontFace=i}}zx.disabled=new zx(!1,kx,Px),zx.backCCW=new zx(!0,kx,Px),zx.backCW=new zx(!0,kx,2304),zx.frontCW=new zx(!0,1028,2304),zx.frontCCW=new zx(!0,1028,Px);class Lx{constructor(e,t){this.gl=e,this.clearColor=new Vy(this),this.clearDepth=new Gy(this),this.clearStencil=new $y(this),this.colorMask=new qy(this),this.depthMask=new Zy(this),this.stencilMask=new Hy(this),this.stencilFunc=new Wy(this),this.stencilOp=new Xy(this),this.stencilTest=new Yy(this),this.depthRange=new Ky(this),this.depthTest=new Jy(this),this.depthFunc=new Qy(this),this.blend=new ex(this),this.blendFunc=new tx(this),this.blendColor=new ix(this),this.blendEquation=new rx(this),this.cullFace=new nx(this),this.cullFaceSide=new ox(this),this.frontFace=new sx(this),this.program=new ax(this),this.activeTexture=new lx(this),this.viewport=new cx(this),this.bindFramebuffer=new hx(this),this.bindRenderbuffer=new ux(this),this.bindTexture=new dx(this),this.bindVertexBuffer=new px(this),this.bindElementBuffer=new fx(this),this.bindVertexArrayOES=new mx(this),this.pixelStoreUnpack=new _x(this),this.pixelStoreUnpackPremultiplyAlpha=new gx(this),this.pixelStoreUnpackFlipY=new yx(this),this.options=t?{...t}:{},this.options.extTextureFilterAnisotropicForceOff||(this.extTextureFilterAnisotropic=e.getExtension("EXT_texture_filter_anisotropic")||e.getExtension("MOZ_EXT_texture_filter_anisotropic")||e.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=e.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))),this.extDebugRendererInfo=e.getExtension("WEBGL_debug_renderer_info"),this.extDebugRendererInfo&&(this.renderer=e.getParameter(this.extDebugRendererInfo.UNMASKED_RENDERER_WEBGL),this.vendor=e.getParameter(this.extDebugRendererInfo.UNMASKED_VENDOR_WEBGL)),this.options.extTextureFloatLinearForceOff||(this.extTextureFloatLinear=e.getExtension("OES_texture_float_linear")),this.extRenderToTextureHalfFloat=e.getExtension("EXT_color_buffer_half_float"),this.extTimerQuery=e.getExtension("EXT_disjoint_timer_query_webgl2"),this.maxTextureSize=e.getParameter(e.MAX_TEXTURE_SIZE)}setDefault(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()}setDirty(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.bindVertexArrayOES.dirty=!0,this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0}createIndexBuffer(e,t,i){return new Fy(this,e,t,i)}createVertexBuffer(e,t,i,r,n){return new jy(this,e,t,i,r,n)}createRenderbuffer(e,t,i){const r=this.gl,n=r.createRenderbuffer();return this.bindRenderbuffer.set(n),r.renderbufferStorage(r.RENDERBUFFER,e,t,i),this.bindRenderbuffer.set(null),n}createFramebuffer(e,t,i,r){return new Ex(this,e,t,i,r)}clear({color:e,depth:t,stencil:i,colorMask:r}){const n=this.gl;let o=0;e&&(o|=n.COLOR_BUFFER_BIT,this.clearColor.set(e),this.colorMask.set(r||[!0,!0,!0,!0])),void 0!==t&&(o|=n.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(t),this.depthMask.set(!0)),void 0!==i&&(o|=n.STENCIL_BUFFER_BIT,this.clearStencil.set(i),this.stencilMask.set(255)),n.clear(o)}setCullFace(e){!1===e.enable?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(e.mode),this.frontFace.set(e.frontFace))}setDepthMode(e){e.func!==this.gl.ALWAYS||e.mask?(this.depthTest.set(!0),this.depthFunc.set(e.func),this.depthMask.set(e.mask),this.depthRange.set(e.range)):this.depthTest.set(!1)}setStencilMode(e){e.test.func!==this.gl.ALWAYS||e.mask?(this.stencilTest.set(!0),this.stencilMask.set(e.mask),this.stencilOp.set([e.fail,e.depthFail,e.pass]),this.stencilFunc.set({func:e.test.func,ref:e.ref,mask:e.test.mask})):this.stencilTest.set(!1)}setColorMode(e){x(e.blendFunction,Cx.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(e.blendFunction),this.blendColor.set(e.blendColor),e.blendEquation?this.blendEquation.set(e.blendEquation):this.blendEquation.setDefault()),this.colorMask.set(e.mask)}unbindVAO(){this.bindVertexArrayOES.set(null)}}class Dx extends kt{constructor(e,t,i){super(),this.id=e,this._onlySymbols=i,t.on("data",(e=>{"source"===e.dataType&&"metadata"===e.sourceDataType&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&"source"===e.dataType&&"content"===e.sourceDataType&&(this.reload(),this.transform&&this.update(this.transform))})),t.on("error",(()=>{this._sourceErrored=!0})),this._source=t,this._tiles={},this._cache=new By(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._minTileCacheSize=t.minTileCacheSize,this._maxTileCacheSize=t.maxTileCacheSize,this._loadedParentTiles={},this.castsShadows=!1,this._coveredTiles={},this._shadowCasterTiles={},this._state=new Fm,this._isRaster="raster"===this._source.type||"raster-dem"===this._source.type||"custom"===this._source.type&&"raster"===this._source._dataType}onAdd(e){this.map=e,this._minTileCacheSize=void 0===this._minTileCacheSize&&e?e._minTileCacheSize:this._minTileCacheSize,this._maxTileCacheSize=void 0===this._maxTileCacheSize&&e?e._maxTileCacheSize:this._maxTileCacheSize}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;for(const e in this._tiles){const t=this._tiles[e];if("errored"!==t.state&&("loaded"!==t.state||!t.bucketsLoaded()))return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;const e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform)}_loadTile(e,t){return e.isSymbolTile=this._onlySymbols,e.isExtraShadowCaster=this._shadowCasterTiles[e.tileID.key],this._source.loadTile(e,t)}_unloadTile(e){if(this._source.unloadTile)return this._source.unloadTile(e,(()=>{}))}_abortTile(e){if(this._source.abortTile)return this._source.abortTile(e,(()=>{}))}serialize(){return this._source.serialize()}prepare(e){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const t in this._tiles){const i=this._tiles[t];i.upload(e),i.prepare(this.map.style.imageManager,this.map?this.map.painter:null,this._source.scope)}}getIds(){return D(this._tiles).map((e=>e.tileID)).sort(Rx).map((e=>e.key))}getRenderableIds(e,t){const i=[];for(const r in this._tiles)this._isIdRenderable(+r,e,t)&&i.push(this._tiles[r]);return e?i.sort(((e,t)=>{const i=e.tileID,r=t.tileID,n=new y(i.canonical.x,i.canonical.y)._rotate(this.transform.angle),o=new y(r.canonical.x,r.canonical.y)._rotate(this.transform.angle);return i.overscaledZ-r.overscaledZ||o.y-n.y||o.x-n.x})).map((e=>e.tileID.key)):i.map((e=>e.tileID)).sort(Rx).map((e=>e.key))}hasRenderableParent(e){const t=this.findLoadedParent(e,0);return!!t&&this._isIdRenderable(t.tileID.key)}_isIdRenderable(e,t,i){return this._tiles[e]&&this._tiles[e].hasData()&&!this._coveredTiles[e]&&(t||!this._tiles[e].holdingForFade())&&(i||!this._shadowCasterTiles[e])}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(const e in this._tiles)"errored"!==this._tiles[e].state&&this._reloadTile(+e,"reloading")}}_reloadTile(e,t){const i=this._tiles[e];i&&("loading"!==i.state&&(i.state=t),this._loadTile(i,this._tileLoaded.bind(this,i,e,t)))}_tileLoaded(e,t,i,r){if(r)if(e.state="errored",404!==r.status)this._source.fire(new Ct(r,{tile:e}));else{if(!(e.tileID.key in this._loadedParentTiles))return void this._source.fire(new It("data",{dataType:"source",sourceDataType:"error",sourceId:this._source.id}));if("raster-dem"===this._source.type&&this.usedForTerrain&&this.map.painter.terrain){const e=this.map.painter.terrain;this.update(this.transform,e.getScaledDemTileSize(),!0),e.resetTileLookupCache(this.id)}else this.update(this.transform)}else e.timeAdded=dt.now(),"expired"===i&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),"raster-dem"===this._source.type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),this._source.fire(new It("data",{dataType:"source",tile:e,coord:e.tileID,sourceCacheId:this.id}))}_backfillDEM(e){const t=this.getRenderableIds();for(let r=0;r1||(Math.abs(i)>1&&(1===Math.abs(i+n)?i+=n:1===Math.abs(i-n)&&(i-=n)),t.dem&&e.dem&&(e.dem.backfillBorder(t.dem,i,r),e.neighboringTiles&&e.neighboringTiles[o]&&(e.neighboringTiles[o].backfilled=!0)))}}getTile(e){return this.getTileByID(e.key)}getTileByID(e){return this._tiles[e]}_retainLoadedChildren(e,t,i,r){for(const n in this._tiles){let o=this._tiles[n];if(r[n]||!o.hasData()||o.tileID.overscaledZ<=t||o.tileID.overscaledZ>i)continue;let s=o.tileID;for(;o&&o.tileID.overscaledZ>t+1;){const e=o.tileID.scaledTo(o.tileID.overscaledZ-1);o=this._tiles[e.key],o&&o.hasData()&&(s=e)}let a=s;for(;a.overscaledZ>t;)if(a=a.scaledTo(a.overscaledZ-1),e[a.key]){r[s.key]=s;break}}}findLoadedParent(e,t){if(e.key in this._loadedParentTiles){const i=this._loadedParentTiles[e.key];return i&&i.tileID.overscaledZ>=t?i:null}for(let i=e.overscaledZ-1;i>=t;i--){const t=e.scaledTo(i),r=this._getLoadedTile(t);if(r)return r}}_getLoadedTile(e){const t=this._tiles[e.key];return t&&t.hasData()?t:this._cache.getByKey(this._source.reparseOverscaled?e.wrapped().key:e.canonical.key)}updateCacheSize(e,t){t=t||this._source.tileSize;const i=Math.ceil(e.width/t)+1,r=Math.ceil(e.height/t)+1,n=Math.floor(i*r*5),o="number"==typeof this._minTileCacheSize?Math.max(this._minTileCacheSize,n):n,s="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,o):o;this._cache.setMaxSize(s)}handleWrapJump(e){const t=Math.round((e-(void 0===this._prevLng?e:this._prevLng))/360);if(this._prevLng=e,t){const e={};for(const i in this._tiles){const r=this._tiles[i];r.tileID=r.tileID.unwrapTo(r.tileID.wrap+t),e[r.tileID.key]=r}this._tiles=e;for(const e in this._timers)clearTimeout(this._timers[e]),delete this._timers[e];for(const e in this._tiles)this._setTileReloadTimer(+e,this._tiles[e])}}update(e,t,i,r){if(this.transform=e,!this._sourceLoaded||this._paused||this.transform.freezeTileCoverage)return;if(this.usedForTerrain&&!i)return;let n;if(this.updateCacheSize(e,t),"globe"!==this.transform.projection.name&&this.handleWrapJump(this.transform.center.lng),this._shadowCasterTiles={},this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?n=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((e=>new $u(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y))):(n=e.coveringTiles({tileSize:t||this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!i,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain}),this._source.hasTile&&(n=n.filter((e=>this._source.hasTile(e))))):n=[],n.length>0&&this.castsShadows&&r&&"globe"!==this.transform.projection.name&&!this.usedForTerrain&&!Ox(this._source.type)){const o=e.coveringZoomLevel({tileSize:t||this._source.tileSize,roundZoom:this._source.roundZoom&&!i}),s=Math.min(o,this._source.maxzoom),a=e.extendTileCoverForShadows(n,r,s);for(const e of a)this._shadowCasterTiles[e.key]=!0,n.push(e)}const o=this._updateRetainedTiles(n);if(Ox(this._source.type)&&0!==n.length){const e={},t={},i=Object.keys(o);for(const r of i){const i=o[r],n=this._tiles[r];if(!n||n.fadeEndTime&&n.fadeEndTime<=dt.now())continue;const s=this.findLoadedParent(i,Math.max(i.overscaledZ-Dx.maxOverzooming,this._source.minzoom));s&&(this._addTile(s.tileID),e[s.tileID.key]=s.tileID),t[r]=i}const r=n[n.length-1].overscaledZ;for(const e in this._tiles){const i=this._tiles[e];if(o[e]||!i.hasData())continue;let n=i.tileID;for(;n.overscaledZ>r;){n=n.scaledTo(n.overscaledZ-1);const r=this._tiles[n.key];if(r&&r.hasData()&&t[n.key]){o[e]=i.tileID;break}}}for(const t in e)o[t]||(this._coveredTiles[t]=!0,o[t]=e[t])}for(const e in o)this._tiles[e].clearFadeHold();const s=function(e,t){const i=[];for(const r in e)r in t||i.push(r);return i}(this._tiles,o);for(const e of s){const t=this._tiles[e];t.hasSymbolBuckets&&!t.holdingForFade()?t.setHoldDuration(this.map._fadeDuration):t.hasSymbolBuckets&&!t.symbolFadeFinished()||this._removeTile(+e)}this._updateLoadedParentTileCache(),this._onlySymbols&&this._source.afterUpdate&&this._source.afterUpdate()}releaseSymbolFadeTiles(){for(const e in this._tiles)this._tiles[e].holdingForFade()&&this._removeTile(+e)}_updateRetainedTiles(e){const t={};if(0===e.length)return t;const i={},r=e.reduce(((e,t)=>Math.min(e,t.overscaledZ)),1/0),n=e[0].overscaledZ,o=Math.max(n-Dx.maxOverzooming,this._source.minzoom),s=Math.max(n+Dx.maxUnderzooming,this._source.minzoom),a={};for(const i of e){const e=this._addTile(i);t[i.key]=i,e.hasData()||r=this._source.maxzoom){const e=r.children(this._source.maxzoom)[0],i=this.getTile(e);if(i&&i.hasData()){t[e.key]=e;continue}}else{const e=r.children(this._source.maxzoom);if(t[e[0].key]&&t[e[1].key]&&t[e[2].key]&&t[e[3].key])continue}let n=e.wasRequested();for(let s=r.overscaledZ-1;s>=o;--s){const o=r.scaledTo(s);if(i[o.key])break;if(i[o.key]=!0,e=this.getTile(o),!e&&n&&(e=this._addTile(o)),e&&(t[o.key]=o,n=e.wasRequested(),e.hasData()))break}}return t}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const e in this._tiles){const t=[];let i,r=this._tiles[e].tileID;for(;r.overscaledZ>0;){if(r.key in this._loadedParentTiles){i=this._loadedParentTiles[r.key];break}t.push(r.key);const e=r.scaledTo(r.overscaledZ-1);if(i=this._getLoadedTile(e),i)break;r=e}for(const e of t)this._loadedParentTiles[e]=i}}_addTile(e){let t=this._tiles[e.key];if(t)return!0!==t.isExtraShadowCaster||!!this._shadowCasterTiles[e.key]||this._reloadTile(e.key,"reloading"),t;t=this._cache.getAndRemove(e),t&&(this._setTileReloadTimer(e.key,t),t.tileID=e,this._state.initializeTileState(t,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,t)));const i=Boolean(t);if(!i){const i=this.map?this.map.painter:null;t=new Oy(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,i,this._isRaster),this._loadTile(t,this._tileLoaded.bind(this,t,e.key,t.state))}return t?(t.uses++,this._tiles[e.key]=t,i||this._source.fire(new It("dataloading",{tile:t,coord:t.tileID,dataType:"source"})),t):null}_setTileReloadTimer(e,t){e in this._timers&&(clearTimeout(this._timers[e]),delete this._timers[e]);const i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout((()=>{this._reloadTile(e,"expired"),delete this._timers[e]}),i))}_removeTile(e){const t=this._tiles[e];t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),delete this._timers[e]),t.uses>0||(t.hasData()&&"reloading"!==t.state?this._cache.add(t.tileID,t,t.getExpiryTimeout()):(t.aborted=!0,this._abortTile(t),this._unloadTile(t))))}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const e in this._tiles)this._removeTile(+e);this._source._clear&&this._source._clear(),this._cache.reset(),this.map&&this.usedForTerrain&&this.map.painter.terrain&&this.map.painter.terrain.resetTileLookupCache(this.id)}tilesIn(e,t,i){const r=[],n=this.transform;if(!n)return r;const o="globe"===n.projection.name,s=Kd(n.center.lng);for(const a in this._tiles){const l=this._tiles[a];if(i&&l.clearQueryDebugViz(),l.holdingForFade())continue;let c;if(o){const e=l.tileID.canonical;if(0===e.z){const t=[Math.abs(k(s,...Bx(e,-1))-s),Math.abs(k(s,...Bx(e,1))-s)];c=[0,2*t.indexOf(Math.min(...t))-1]}else{const t=[Math.abs(k(s,...Bx(e,-1))-s),Math.abs(k(s,...Bx(e,0))-s),Math.abs(k(s,...Bx(e,1))-s)];c=[t.indexOf(Math.min(...t))-1]}}else c=[0];for(const i of c){const o=e.containsTile(l,n,t,i);o&&r.push(o)}}return r}getShadowCasterCoordinates(){return this._getRenderableCoordinates(!1,!0)}getVisibleCoordinates(e){return this._getRenderableCoordinates(e)}_getRenderableCoordinates(e,t){const i=this.getRenderableIds(e,t).map((e=>this._tiles[e].tileID)),r="globe"===this.transform.projection.name;for(const e of i)e.projMatrix=this.transform.calculateProjMatrix(e.toUnwrapped()),e.expandedProjMatrix=r?this.transform.calculateProjMatrix(e.toUnwrapped(),!1,!0):e.projMatrix;return i}sortCoordinatesByDistance(e){const t=e.slice(),i=this.transform._camera.position,r=this.transform._camera.forward(),n={};for(const e of t){const t=1/(1<n[e.key]-n[t.key])),t}hasTransition(){if(this._source.hasTransition())return!0;if(Ox(this._source.type))for(const e in this._tiles){const t=this._tiles[e];if(void 0!==t.fadeEndTime&&t.fadeEndTime>=dt.now())return!0}return!1}setFeatureState(e,t,i){this._state.updateState(e=e||"_geojsonTileLayer",t,i)}removeFeatureState(e,t,i){this._state.removeFeatureState(e=e||"_geojsonTileLayer",t,i)}getFeatureState(e,t){return this._state.getState(e=e||"_geojsonTileLayer",t)}setDependencies(e,t,i){const r=this._tiles[e];r&&r.setDependencies(t,i)}reloadTilesForDependencies(e,t){for(const i in this._tiles)this._tiles[i].hasDependency(e,t)&&this._reloadTile(+i,"reloading");this._cache.filter((i=>!i.hasDependency(e,t)))}_preloadTiles(e,t){if(!this._sourceLoaded){const i=()=>{this._sourceLoaded&&(this._source.off("data",i),this._preloadTiles(e,t))};return void this._source.on("data",i)}const i=new Map,r=Array.isArray(e)?e:[e],n=this.map.painter.terrain,o=this.usedForTerrain&&n?n.getScaledDemTileSize():this._source.tileSize;for(const e of r){const t=e.coveringTiles({tileSize:o,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!this.usedForTerrain,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain});for(const e of t)i.set(e.key,e);this.usedForTerrain&&e.updateElevation(!1)}L(Array.from(i.values()),((e,t)=>{const i=new Oy(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,this.map.painter,this._isRaster);this._loadTile(i,(e=>{"raster-dem"===this._source.type&&i.dem&&this._backfillDEM(i),t(e,i)}))}),t)}}function Rx(e,t){const i=Math.abs(2*e.wrap)-+(e.wrap<0),r=Math.abs(2*t.wrap)-+(t.wrap<0);return e.overscaledZ-t.overscaledZ||r-i||t.canonical.y-e.canonical.y||t.canonical.x-e.canonical.x}function Ox(e){return"raster"===e||"image"===e||"video"===e||"custom"===e}function Bx(e,t){const i=1<=1e-15){const e=zu.normalize([],i);zu.scale(r,e,zu.dot(r,e)),t[0]=r[0],t[1]=r[1]}const n=zu.cross([],t,e);if(zu.len(n)<1e-15)return null;const o=Math.atan2(-n[1],n[0]);return Hx(Math.atan2(Math.sqrt(e[0]*e[0]+e[1]*e[1]),-e[2]),o)}class Xx{constructor(e,t){this.position=e,this.orientation=t}get position(){return this._position}set position(e){if(e){const t=e instanceof lp?e:new lp(e[0],e[1],e[2]);this._renderWorldCopies&&(t.x=z(t.x,0,1)),this._position=t}else this._position=null}lookAtPoint(e,t){if(this.orientation=null,!this.position)return;const i=this.position,r=this._elevation?this._elevation.getAtPointOrZero(lp.fromLngLat(e)):0,n=lp.fromLngLat(e,r),o=[n.x-i.x,n.y-i.y,n.z-i.z];t||(t=[0,0,1]),t[2]=Math.abs(t[2]),this.orientation=Wx(o,t)}setPitchBearing(e,t){this.orientation=Hx(w(e),w(-t))}}class Yx{constructor(e,t){this._transform=Su.identity([]),this.orientation=t,this.position=e}get mercatorPosition(){const e=this.position;return new lp(e[0],e[1],e[2])}get position(){const e=ne(this._transform,3);return[e[0],e[1],e[2]]}set position(e){var t;e&&oe(this._transform,3,[(t=e)[0],t[1],t[2],1])}get orientation(){return this._orientation}set orientation(e){this._orientation=e||Iu.identity([]),e&&Zx(this._transform,this._orientation)}getPitchBearing(){const e=this.forward(),t=this.right();return{bearing:Math.atan2(-t[1],t[0]),pitch:Math.atan2(Math.sqrt(e[0]*e[0]+e[1]*e[1]),-e[2])}}setPitchBearing(e,t){this._orientation=Hx(e,t),Zx(this._transform,this._orientation)}forward(){const e=ne(this._transform,2);return[-e[0],-e[1],-e[2]]}up(){const e=ne(this._transform,1);return[-e[0],-e[1],-e[2]]}right(){const e=ne(this._transform,0);return[e[0],e[1],e[2]]}getCameraToWorld(e,t){const i=new Float64Array(16);return Su.invert(i,this.getWorldToCamera(e,t)),i}getCameraToWorldMercator(){return this._transform}getWorldToCameraPosition(e,t,i){const r=this.position;zu.scale(r,r,-e);const n=new Float64Array(16);return Su.fromScaling(n,[i,i,i]),Su.translate(n,n,r),n[10]*=t,n}getWorldToCamera(e,t){const i=new Float64Array(16),r=new Float64Array(4),n=this.position;return Iu.conjugate(r,this._orientation),zu.scale(n,n,-e),Su.fromQuat(i,r),Su.translate(i,i,n),i[1]*=-1,i[5]*=-1,i[9]*=-1,i[13]*=-1,i[8]*=t,i[9]*=t,i[10]*=t,i[11]*=t,i}getCameraToClipPerspective(e,t,i,r){const n=new Float64Array(16);return Su.perspective(n,e,t,i,r),n}getCameraToClipOrthographic(e,t,i,r,n,o){const s=new Float64Array(16);return Su.ortho(s,e,t,i,r,n,o),s}getDistanceToElevation(e,t=!1){const i=0===e?0:Qd(e,t?tp(this.position[1]):this.position[1]),r=this.forward();return(i-this.position[2])/r[2]}clone(){return new Yx([...this.position],[...this.orientation])}}function Kx(e,t){const i=Qx(e.projection,e.zoom,e.width,e.height),r=function(e,t,i,r,n){const o=new Hd(i.lng-180*ev,i.lat),s=new Hd(i.lng+180*ev,i.lat),a=e.project(o.lng,o.lat),l=e.project(s.lng,s.lat),c=-Math.atan2(l.y-a.y,l.x-a.x),h=lp.fromLngLat(i);h.y=k(h.y,-1+ev,1-ev);const u=h.toLngLat(),d=e.project(u.lng,u.lat),p=lp.fromLngLat(u);p.x+=ev;const f=p.toLngLat(),m=e.project(f.lng,f.lat),_=iv(m.x-d.x,m.y-d.y,c),g=lp.fromLngLat(u);g.y+=ev;const y=g.toLngLat(),x=e.project(y.lng,y.lat),v=iv(x.x-d.x,x.y-d.y,c),b=Math.abs(_.x)/Math.abs(v.y),w=Su.identity([]);Su.rotateZ(w,w,-c*(1-(n?0:r)));const T=Su.identity([]);return Su.scale(T,T,[1,1-(1-b)*r,1]),T[4]=-v.x/v.y*r,Su.rotateZ(T,T,c),Su.multiply(T,w,T),T}(e.projection,0,e.center,i,t),n=Jx(e);return Su.scale(r,r,[n,n,1]),r}function Jx(e){const t=e.projection,i=Qx(e.projection,e.zoom,e.width,e.height),r=tv(t,e.center),n=tv(t,Hd.convert(t.center));return Math.pow(2,r*i+(1-i)*n)}function Qx(e,t,i,r,n=1/0){const o=e.range;if(!o)return 0;const s=Math.min(n,Math.max(i,r)),a=Math.log(s/1024)/Math.LN2;return P(o[0]+a,o[1]+a,t)}const ev=1/4e4;function tv(e,t){const i=k(t.lat,-rp,rp),r=new Hd(t.lng-180*ev,i),n=new Hd(t.lng+180*ev,i),o=e.project(r.lng,i),s=e.project(n.lng,i),a=lp.fromLngLat(r),l=lp.fromLngLat(n),c=s.x-o.x,h=s.y-o.y,u=l.x-a.x,d=l.y-a.y,p=Math.sqrt((u*u+d*d)/(c*c+h*h));return Math.log(p)/Math.LN2}function iv(e,t,i){const r=Math.cos(i),n=Math.sin(i);return{x:e*r-t*n,y:e*n+t*r}}function rv(e,t,i){return t*(cr/(e.tileSize*Math.pow(2,i-e.tileID.overscaledZ)))}const nv={unknown:0,flipRequired:1,flipNotRequired:2},ov=Math.tan(85*Math.PI/180);function sv(e,t,i,r,n,o,s){const a=Su.create();if(i)if("globe"===o.name){const e=function(e,t){const{x:i,y:r}=e.point,n=kd(i,r,e.worldSize/e._pixelsPerMercatorPixel,0,0);return Su.multiply(n,n,Md(fd(t)))}(n,t);Su.multiply(a,a,e)}else{const e=bu.invert([],s);a[0]=e[0],a[1]=e[1],a[4]=e[2],a[5]=e[3],r||Su.rotateZ(a,a,n.angle)}else Su.multiply(a,n.labelPlaneMatrix,e);return a}function av(e,t,i,r,n,o,s){const a=sv(e,t,i,r,n,o,s);return"globe"===o.name&&i||(a[2]=a[6]=a[10]=a[14]=0),a}function lv(e,t,i,r,n,o,s){if(i){if("globe"===o.name){const a=sv(e,t,i,r,n,o,s);return Su.invert(a,a),Su.multiply(a,e,a),a}{const t=Su.clone(e),i=Su.identity([]);return i[0]=s[0],i[1]=s[1],i[4]=s[2],i[5]=s[3],Su.multiply(t,t,i),r||Su.rotateZ(t,t,-n.angle),t}}return n.glCoordMatrix}function cv(e,t,i,r){const n=[e,t,i,1];i?yu.transformMat4(n,n,r):vv(n,n,r);const o=n[3];return n[0]/=o,n[1]/=o,n[2]/=o,n}function hv(e,t){return Math.min(.5+e/t*.5,1.5)}function uv(e,t){const i=e[0]/e[3],r=e[1]/e[3];return i>=-t[0]&&i<=t[0]&&r>=-t[1]&&r<=t[1]}function dv(e,t,i,r,n,o,s,a,l,c){const h=i.transform,u=r?e.textSizeData:e.iconSizeData,d=m_(u,i.transform.zoom),p="globe"===h.projection.name,f=[256/i.width*2+1,256/i.height*2+1],m=r?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;m.clear();let _=null;p&&(_=r?e.text.globeExtVertexArray:e.icon.globeExtVertexArray);const g=e.lineVertexArray,x=r?e.text.placedSymbolArray:e.icon.placedSymbolArray,v=i.transform.width/i.transform.height;let b,w=!1;for(let r=0;rMath.abs(i)?{useVertical:!0}:e===S_.vertical?r>0?{needsFlipping:!0}:null:t!==nv.unknown&&function(e,t){return 0===e||Math.abs(t/e)>ov}(i,r)?t===nv.flipRequired?{needsFlipping:!0}:null:i<0?{needsFlipping:!0}:null}function mv(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,x){const v=t/24,b=e.lineOffsetX*v,w=e.lineOffsetY*v,{lineStartIndex:T,glyphStartIndex:E,numGlyphs:A,segment:S,writingMode:M,flipState:I}=e,C=T+e.lineLength,k=e=>{if(h){const[t,i,r]=e.up,n=c.length;uy(h,n+0,t,i,r),uy(h,n+1,t,i,r),uy(h,n+2,t,i,r),uy(h,n+3,t,i,r)}const[t,i,r]=e.point;dy(c,t,i,r,e.angle)};if(A>1){const t=pv(v,a,b,w,i,u,d,e,l,o,p,m,!1,_,g,x);if(!t)return{notEnoughRoom:!0};if(r&&!i){let[i,r,n]=t.first.point,[o,a,l]=t.last.point;[i,r]=cv(i,r,n,s),[o,a]=cv(o,a,l,s);const c=fv(M,I,(o-i)*f,a-r);if(e.flipState=c&&c.needsFlipping?nv.flipRequired:nv.flipNotRequired,c)return c}k(t.first);for(let e=E+1;e0?o:gv(d,r,t,1,n,void 0,_,g.canonical),a=fv(M,I,(s[0]-t[0])*f,s[1]-t[1]);if(e.flipState=a&&a.needsFlipping?nv.flipRequired:nv.flipNotRequired,a)return a}const t=yv(v*a.getoffsetX(E),b,w,i,u,d,S,T,C,l,o,p,m,!1,!1,_,g,x);if(!t)return{notEnoughRoom:!0};k(t)}return{}}function _v(e,t,i,r,n){const{x:o,y:s,z:a}=r.projectTilePoint(e.x,e.y,t);if(!n)return cv(o,s,a,i);const[l,c,h]=n(e);return cv(o+l,s+c,a+h,i)}function gv(e,t,i,r,n,o,s,a){const l=_v(e.sub(t)._unit()._add(e),a,n,s,o);return zu.sub(l,i,l),zu.normalize(l,l),zu.scaleAndAdd(l,i,l,r)}function yv(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g){const x=r?e-t:e+t;let v=x>0?1:-1,b=0;r&&(v*=-1,b=Math.PI),v<0&&(b+=Math.PI);let w=a+s+(v>0?0:1)|0,T=n,E=n,A=0,S=0;const M=Math.abs(x),I=[],C=[];let k=o,P=k;const z=()=>gv(P,k,E,M-A+1,h,d,m,_.canonical);for(;A+S<=M;){if(w+=v,w=l)return null;if(E=T,P=k,I.push(E),p&&C.push(P),k=new y(c.getx(w),c.gety(w)),T=u[w],!T){const e=_v(k,_.canonical,h,m,d);T=e[3]>0?u[w]=e:z()}A+=S,S=zu.distance(E,T)}f&&d&&(u[w]&&(T=z(),S=zu.distance(E,T)),u[w]=T);const L=(M-A)/S,D=k.sub(P)._mult(L)._add(P),R=zu.sub([],T,E),O=zu.scaleAndAdd([],E,R,L);let B=[0,0,1],F=R[0],N=R[1];if(g&&(B=m.upVector(_.canonical,D.x,D.y),0!==B[0]||0!==B[1]||1!==B[2])){const e=[B[2],0,-B[0]],t=zu.cross([],B,e);zu.normalize(e,e),zu.normalize(t,t),F=zu.dot(R,e),N=zu.dot(R,t)}if(i){const e=zu.cross([],B,R);zu.normalize(e,e),zu.scaleAndAdd(O,O,e,i*v)}const j=b+Math.atan2(N,F);return I.push(O),p&&C.push(D),{point:O,angle:j,path:I,tilePath:C,up:B}}function xv(e,t){const i=t.length,r=i+4*e;t.resize(r),t.float32.fill(-1/0,4*i,4*r)}function vv(e,t,i){const r=t[0],n=t[1];return e[0]=i[0]*r+i[4]*n+i[12],e[1]=i[1]*r+i[5]*n+i[13],e[3]=i[3]*r+i[7]*n+i[15],e}const bv=(e,t,i)=>(1-i)*e+i*t,wv=e=>e*e*e*e*e;class Tv{constructor(e,t,i,r,n,o,s){this.tileSize=512,this._renderWorldCopies=void 0===n||n,this._minZoom=e||0,this._maxZoom=t||22,this._minPitch=null==i?0:i,this._maxPitch=null==r?60:r,this.setProjection(o),this.setMaxBounds(s),this.width=0,this.height=0,this._center=new Hd(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._nearZ=0,this._farZ=0,this._unmodified=!0,this._edgeInsets=new qx,this._projMatrixCache={},this._alignedProjMatrixCache={},this._fogTileMatrixCache={},this._expandedProjMatrixCache={},this._distanceTileDataCache={},this._camera=new Yx,this._centerAltitude=0,this._averageElevation=0,this.cameraElevationReference="ground",this._pixelsPerMercatorPixel=1,this.globeRadius=0,this.globeCenterInViewSpace=[0,0,0],this._horizonShift=.1,this._orthographicProjectionAtLowPitch=!1}clone(){const e=new Tv(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies,this.getProjection());return e._elevation=this._elevation,e._centerAltitude=this._centerAltitude,e._centerAltitudeValidForExaggeration=this._centerAltitudeValidForExaggeration,e.tileSize=this.tileSize,e.mercatorFromTransition=this.mercatorFromTransition,e.width=this.width,e.height=this.height,e.cameraElevationReference=this.cameraElevationReference,e._center=this._center,e._setZoom(this.zoom),e._seaLevelZoom=this._seaLevelZoom,e.angle=this.angle,e._fov=this._fov,e._pitch=this._pitch,e._nearZ=this._nearZ,e._farZ=this._farZ,e._averageElevation=this._averageElevation,e._orthographicProjectionAtLowPitch=this._orthographicProjectionAtLowPitch,e._unmodified=this._unmodified,e._edgeInsets=this._edgeInsets.clone(),e._camera=this._camera.clone(),e._calcMatrices(),e.freezeTileCoverage=this.freezeTileCoverage,e.frustumCorners=this.frustumCorners,e}get isOrthographic(){return"globe"!==this.projection.name&&this._orthographicProjectionAtLowPitch&&this.pitch<15}get elevation(){return this._elevation}set elevation(e){this._elevation!==e&&(this._elevation=e,this._updateCameraOnTerrain(),this._calcMatrices())}get depthOcclusionForSymbolsAndCircles(){return"globe"!==this.projection.name&&!this.isOrthographic}updateElevation(e,t=!1){const i=this._elevation&&this._elevation.exaggeration()!==this._centerAltitudeValidForExaggeration;(null==this._seaLevelZoom||i)&&this._updateCameraOnTerrain(),(e||i)&&this._constrainCamera(t),this._calcMatrices()}getProjection(){return O(this.projection,["name","center","parallels"])}setProjection(e){this.projectionOptions=e||{name:"mercator"};const t=this.projection?this.getProjection():void 0;this.projection=ty(this.projectionOptions);const i=!x(t,this.getProjection());return i&&this._calcMatrices(),this.mercatorFromTransition=!1,i}setOrthographicProjectionAtLowPitch(e){return this._orthographicProjectionAtLowPitch!==e&&(this._orthographicProjectionAtLowPitch=e,this._calcMatrices(),!0)}setMercatorFromTransition(){const e=this.projection.name;this.mercatorFromTransition=!0,this.projectionOptions={name:"mercator"},this.projection=ty({name:"mercator"});const t=e!==this.projection.name;return t&&this._calcMatrices(),t}get minZoom(){return this._minZoom}set minZoom(e){this._minZoom!==e&&(this._minZoom=e,this.zoom=Math.max(this.zoom,e))}get maxZoom(){return this._maxZoom}set maxZoom(e){this._maxZoom!==e&&(this._maxZoom=e,this.zoom=Math.min(this.zoom,e))}get minPitch(){return this._minPitch}set minPitch(e){this._minPitch!==e&&(this._minPitch=e,this.pitch=Math.max(this.pitch,e))}get maxPitch(){return this._maxPitch}set maxPitch(e){this._maxPitch!==e&&(this._maxPitch=e,this.pitch=Math.min(this.pitch,e))}get renderWorldCopies(){return this._renderWorldCopies&&!0===this.projection.supportsWorldCopies}set renderWorldCopies(e){void 0===e?e=!0:null===e&&(e=!1),this._renderWorldCopies=e}get worldSize(){return this.tileSize*this.scale}get cameraWorldSizeForFog(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get cameraWorldSize(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation,!0),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get pixelsPerMeter(){return this.projection.pixelsPerMeter(this.center.lat,this.worldSize)}get cameraPixelsPerMeter(){return Qd(1,this.center.lat)*this.cameraWorldSizeForFog}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new y(this.width,this.height)}get bearing(){return z(this.rotation,-180,180)}set bearing(e){this.rotation=e}get rotation(){return-this.angle/Math.PI*180}set rotation(e){const t=-e*Math.PI/180;this.angle!==t&&(this._unmodified=!1,this.angle=t,this._calcMatrices(),this.rotationMatrix=bu.create(),bu.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(e){const t=k(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==t&&(this._unmodified=!1,this._pitch=t,this._calcMatrices())}get aspect(){return this.width/this.height}get fov(){return this._fov/Math.PI*180}get fovX(){return this._fov}get fovY(){const e=1/Math.tan(.5*this.fovX);return 2*Math.atan(1/this.aspect/e)}set fov(e){e=Math.max(.01,Math.min(60,e)),this._fov!==e&&(this._unmodified=!1,this._fov=w(e),this._calcMatrices())}get averageElevation(){return this._averageElevation}set averageElevation(e){this._averageElevation=e,this._calcFogMatrices(),this._distanceTileDataCache={}}get zoom(){return this._zoom}set zoom(e){const t=Math.min(Math.max(e,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._setZoom(t),this._updateSeaLevelZoom(),this._constrain(),this._calcMatrices())}_setZoom(e){this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom}_updateCameraOnTerrain(){const e=this.elevation?this.elevation.getAtPoint(this.locationCoordinate(this.center),Number.NEGATIVE_INFINITY):Number.NEGATIVE_INFINITY,t=this.elevation&&e===Number.NEGATIVE_INFINITY&&this.elevation.visibleDemTiles.length>0&&this.elevation.exaggeration()>0&&this._centerAltitudeValidForExaggeration;if(!this._elevation||e===Number.NEGATIVE_INFINITY&&(!t||!this._centerAltitude))return this._centerAltitude=0,this._seaLevelZoom=null,void(this._centerAltitudeValidForExaggeration=void 0);const i=this._elevation;t||this._centerAltitude&&this._centerAltitudeValidForExaggeration&&i.exaggeration()&&this._centerAltitudeValidForExaggeration!==i.exaggeration()?(this._centerAltitude=this._centerAltitude/this._centerAltitudeValidForExaggeration*i.exaggeration(),this._centerAltitudeValidForExaggeration=i.exaggeration()):(this._centerAltitude=e||0,this._centerAltitudeValidForExaggeration=i.exaggeration()),this._updateSeaLevelZoom()}_updateSeaLevelZoom(){void 0!==this._centerAltitudeValidForExaggeration&&(this._seaLevelZoom=this._zoomFromMercatorZ((this.pixelsPerMeter*this._centerAltitude+this.cameraToCenterDistance)/this.worldSize))}sampleAverageElevation(){if(!this._elevation)return 0;const e=this._elevation,t=[[.5,.2],[.3,.5],[.5,.5],[.7,.5],[.5,.8]],i=this.horizonLineFromTop();let r=0,n=0;for(let o=0;o0,c=e.y+10,u=i.wrap-(l?0:1),d=i.wrap+(a?0:1),p=l?e.x-1:s-1,f=a?e.x+1:0;t[0]<0?(r.push(new $u(n,d,e.z,f,e.y)),t[1]<0&&c&&(r.push(new $u(n,o,e.z,e.x,e.y+1)),r.push(new $u(n,d,e.z,f,e.y+1))),t[1]>0&&h&&(r.push(new $u(n,o,e.z,e.x,e.y-1)),r.push(new $u(n,d,e.z,f,e.y-1)))):t[0]>0?(r.push(new $u(n,u,e.z,p,e.y)),t[1]<0&&c&&(r.push(new $u(n,o,e.z,e.x,e.y+1)),r.push(new $u(n,u,e.z,p,e.y+1))),t[1]>0&&h&&(r.push(new $u(n,o,e.z,e.x,e.y-1)),r.push(new $u(n,u,e.z,p,e.y-1)))):t[1]<0&&c?r.push(new $u(n,o,e.z,e.x,e.y+1)):h&&r.push(new $u(n,o,e.z,e.x,e.y-1))}if(r.length>1){r.sort(((e,t)=>e.overscaledZ-t.overscaledZ||e.wrap-t.wrap||e.canonical.z-t.canonical.z||e.canonical.x-t.canonical.x||e.canonical.y-t.canonical.y));let e=0,t=0;for(;te.isChildOf(t)))||n.push(e);return r=n.filter((t=>!e.some((e=>!!(t.overscaledZe.maxzoom&&(t=e.maxzoom);const s=this.locationCoordinate(this.center),a=this.center.lat,l=1<{const t=1/4e4,i=new lp(e.x+t,e.y,e.z),r=new lp(e.x,e.y+t,e.z),n=e.toLngLat(),o=i.toLngLat(),s=r.toLngLat(),a=this.locationCoordinate(n),l=this.locationCoordinate(o),c=this.locationCoordinate(s),h=Math.hypot(l.x-a.x,l.y-a.y),u=Math.hypot(c.x-a.x,c.y-a.y);return Math.sqrt(h*u)*w/t},A=e=>{const t=v,i=b;return{aabb:zg(this,l,0,0,0,e,i,t,this.projection),zoom:0,x:0,y:0,minZ:i,maxZ:t,wrap:e,fullyVisible:!1}},S=[];let M=[];const I=t,C=e.reparseOverscaled?i:t,k=e=>e*e,P=k((m-this._centerAltitude)*f),z=e=>{if(!this._elevation||!e.tileID||!o)return;const t=this._elevation.getMinMaxForTile(e.tileID),i=e.aabb;t?(i.min[2]=t.min,i.max[2]=t.max,i.center[2]=(i.min[2]+i.max[2])/2):(e.shouldSplit=L(e),e.shouldSplit||(i.min[2]=i.max[2]=i.center[2]=this._centerAltitude))},L=e=>{if(e.zoom=.9)return!0}else if(n&&(o=k(e.aabb.distanceZ(_)*f)),this.projection.isReprojectedInTileSpace&&i<=5){const t=Math.pow(2,e.zoom),i=T(new lp((e.x+.5)/t,(e.y+.5)/t));s=i>.85?1:i}const l=t*t+r*r+o,c=k((1<{if(t*k(.707)0;){const i=S.pop(),r=i.x,s=i.y;let a=i.fullyVisible;const u=()=>"globe"===this.projection.name&&(0===i.y||i.y===(1<>1),u={aabb:o?i.aabb.quadrant(e):zg(this,l,i.zoom+1,t,c,i.wrap,i.minZ,i.maxZ,this.projection),zoom:i.zoom+1,x:t,y:c,wrap:i.wrap,fullyVisible:a,tileID:void 0,shouldSplit:void 0,minZ:i.minZ,maxZ:i.maxZ};n&&!h&&(u.tileID=new $u(i.zoom+1===I?C:i.zoom+1,i.wrap,i.zoom+1,t,c),z(u)),S.push(u)}else{const n=i.zoom===I?C:i.zoom;if(e.minzoom&&e.minzoom>n)continue;if(!a){let e=g?i.aabb.intersectsPrecise(d):i.aabb.intersectsPreciseFlat(d);if(0===e&&u()){const t=new Vu(i.zoom,r,s);e=yd(this,l,t,!0).intersectsPrecise(d)}if(0===e)continue}const o=c[0]-(.5+r+(i.wrap<{const n=[0,0,0,1],o=[cr,cr,0,1],s=this.calculateFogTileMatrix(r.tileID.toUnwrapped());yu.transformMat4(n,n,s),yu.transformMat4(o,o,s);const a=function(e,t,i){let r=0;for(let i=0;i<2;++i){const n=0;e[i]>n&&(r+=(e[i]-n)*(e[i]-n)),t[i]t&&0!==i){const t=this.calculateProjMatrix(r.tileID.toUnwrapped());let n;e.isTerrainDEM||(n=c.getMinMaxForTile(r.tileID)),n||(n={min:b,max:v});const o=function(e){const t=Math.round((e+45+360)%360/90)%4;return E[t]}(this.rotation),s=[o[0]*cr,o[1]*cr,n.max];zu.transformMat4(s,s,t),l=(1-s[1])*this.height*.5e.distanceSq-t.distanceSq)).map((e=>e.tileID))}resize(e,t){this.width=e,this.height=t,this.pixelsToGLUnits=[2/e,-2/t],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(e){return Math.pow(2,e)}scaleZoom(e){return Math.log(e)/Math.LN2}project(e){const t=k(e.lat,-rp,rp),i=this.projection.project(e.lng,t);return new y(i.x*this.worldSize,i.y*this.worldSize)}unproject(e){return this.projection.unproject(e.x/this.worldSize,e.y/this.worldSize)}get point(){return this.project(this.center)}get pointMerc(){return this.point._div(this.worldSize)}get pixelsPerMeterRatio(){return this.pixelsPerMeter/Qd(1,this.center.lat)/this.worldSize}setLocationAtPoint(e,t){let i,r;const n=this.centerPoint;if("globe"===this.projection.name){const e=this.worldSize;i=(t.x-n.x)/e,r=(t.y-n.y)/e}else{const e=this.pointCoordinate(t),o=this.pointCoordinate(n);i=e.x-o.x,r=e.y-o.y}const o=this.locationCoordinate(e);this.setLocation(new lp(o.x-i,o.y-r))}setLocation(e){this.center=this.coordinateLocation(e),this.projection.wrap&&(this.center=this.center.wrap())}locationPoint(e){return this.projection.locationPoint(this,e)}locationPoint3D(e){return this.projection.locationPoint(this,e,!0)}pointLocation(e){return this.coordinateLocation(this.pointCoordinate(e))}pointLocation3D(e){return this.coordinateLocation(this.pointCoordinate3D(e))}locationCoordinate(e,t){const i=t?Qd(t,e.lat):void 0,r=this.projection.project(e.lng,e.lat);return new lp(r.x,r.y,i)}coordinateLocation(e){return this.projection.unproject(e.x,e.y)}pointRayIntersection(e,t){const i=null!=t?t:this._centerAltitude,r=[e.x,e.y,0,1],n=[e.x,e.y,1,1];yu.transformMat4(r,r,this.pixelMatrixInverse),yu.transformMat4(n,n,this.pixelMatrixInverse);const o=n[3];yu.scale(r,r,1/r[3]),yu.scale(n,n,1/o);const s=r[2],a=n[2];return{p0:r,p1:n,t:s===a?0:(i-s)/(a-s)}}screenPointToMercatorRay(e){const t=[e.x,e.y,0,1],i=[e.x,e.y,1,1];return yu.transformMat4(t,t,this.pixelMatrixInverse),yu.transformMat4(i,i,this.pixelMatrixInverse),yu.scale(t,t,1/t[3]),yu.scale(i,i,1/i[3]),t[2]=Qd(t[2],this._center.lat)*this.worldSize,i[2]=Qd(i[2],this._center.lat)*this.worldSize,yu.scale(t,t,1/this.worldSize),yu.scale(i,i,1/this.worldSize),new Hu([t[0],t[1],t[2]],zu.normalize([],zu.sub([],i,t)))}rayIntersectionCoordinate(e){const{p0:t,p1:i,t:r}=e,n=Qd(t[2],this._center.lat),o=Qd(i[2],this._center.lat);return new lp(Kr(t[0],i[0],r)/this.worldSize,Kr(t[1],i[1],r)/this.worldSize,Kr(n,o,r))}pointCoordinate(e,t=this._centerAltitude){return this.projection.pointCoordinate(this,e.x,e.y,t)}pointCoordinate3D(e){if(!this.elevation)return this.pointCoordinate(e);let t=this.projection.pointCoordinate3D(this,e.x,e.y);if(t)return new lp(t[0],t[1],t[2]);let i=0,r=this.horizonLineFromTop();if(e.y>r)return this.pointCoordinate(e);const n=.02*r,o=e.clone();for(let e=0;e<10&&r-i>n;e++){o.y=Kr(i,r,.66);const e=this.projection.pointCoordinate3D(this,o.x,o.y);e?(r=o.y,t=e):i=o.y}return t?new lp(t[0],t[1],t[2]):this.pointCoordinate(e)}isPointAboveHorizon(e){return this.projection.isPointAboveHorizon(this,e)}isPointOnSurface(e){if(e.y<0||e.y>this.height||e.x<0||e.x>this.width)return!1;if(this.elevation||this.zoom>=id)return!this.isPointAboveHorizon(e);const t=this.pointCoordinate(e);return t.y>=0&&t.y<=1}_coordinatePoint(e,t){const i=t&&this.elevation?this.elevation.getAtPointOrZero(e,this._centerAltitude):this._centerAltitude,r=[e.x*this.worldSize,e.y*this.worldSize,i+e.toAltitude(),1];return yu.transformMat4(r,r,this.pixelMatrix),r[3]>0?new y(r[0]/r[3],r[1]/r[3]):new y(Number.MAX_VALUE,Number.MAX_VALUE)}_getBoundsNonRectangular(){const{top:e,left:t}=this._edgeInsets,i=this.height-this._edgeInsets.bottom,r=this.width-this._edgeInsets.right,n=this.pointLocation3D(new y(t,e)),o=this.pointLocation3D(new y(r,e)),s=this.pointLocation3D(new y(r,i)),a=this.pointLocation3D(new y(t,i));let l=Math.min(n.lng,o.lng,s.lng,a.lng),c=Math.max(n.lng,o.lng,s.lng,a.lng),h=Math.min(n.lat,o.lat,s.lat,a.lat),u=Math.max(n.lat,o.lat,s.lat,a.lat);const d=Math.pow(2,-this.zoom)/16*270,p="globe"===this.projection.name?1:4,f=(e,t,i,r,n)=>{const o=(e+i)/2,s=(t+r)/2,a=new y(o,s),{lng:m,lat:_}=this.pointLocation3D(a),g=Math.max(0,l-m,h-_,m-c,_-u);l=Math.min(l,m),c=Math.max(c,m),h=Math.min(h,_),u=Math.max(u,_),(nd)&&(f(e,t,o,s,n+1),f(o,s,i,r,n+1))};if(f(t,e,r,e,1),f(r,e,r,i,1),f(r,i,t,i,1),f(t,i,t,e,1),"globe"===this.projection.name){const[e,t]=function(e){const t=Su.identity(new Float64Array(16));Su.multiply(t,e.pixelMatrix,e.globeMatrix);const i=[0,ad,0],r=[0,ld,0];return zu.transformMat4(i,i,t),zu.transformMat4(r,r,t),[i[0]>0&&i[0]<=e.width&&i[1]>0&&i[1]<=e.height&&!Nd(e,new Hd(e.center.lat,90)),r[0]>0&&r[0]<=e.width&&r[1]>0&&r[1]<=e.height&&!Nd(e,new Hd(e.center.lat,-90))]}(this);e?(u=90,c=180,l=-180):t&&(h=-90,c=180,l=-180)}return new sc(new Hd(l,h),new Hd(c,u))}_getBoundsRectangular(e,t){const{top:i,left:r}=this._edgeInsets,n=this.height-this._edgeInsets.bottom,o=this.width-this._edgeInsets.right,s=new y(r,i),a=new y(o,i),l=new y(o,n),c=new y(r,n);let h=this.pointCoordinate(s,e),u=this.pointCoordinate(a,e);const d=this.pointCoordinate(l,t),p=this.pointCoordinate(c,t),f=(e,t)=>(t.y-e.y)/(t.x-e.x);return h.y>1&&u.y>=0?h=new lp((1-p.y)/f(p,h)+p.x,1):h.y<0&&u.y<=1&&(h=new lp(-p.y/f(p,h)+p.x,0)),u.y>1&&h.y>=0?u=new lp((1-d.y)/f(d,u)+d.x,1):u.y<0&&h.y<=1&&(u=new lp(-d.y/f(d,u)+d.x,0)),(new sc).extend(this.coordinateLocation(h)).extend(this.coordinateLocation(u)).extend(this.coordinateLocation(p)).extend(this.coordinateLocation(d))}_getBoundsRectangularTerrain(){const e=this.elevation;if(!e.visibleDemTiles.length||e.isUsingMockSource())return this._getBoundsRectangular(0,0);const t=e.visibleDemTiles.reduce(((e,t)=>{if(t.dem){const i=t.dem.tree;e.min=Math.min(e.min,i.minimums[0]),e.max=Math.max(e.max,i.maximums[0])}return e}),{min:Number.MAX_VALUE,max:0});return this._getBoundsRectangular(t.min*e.exaggeration(),t.max*e.exaggeration())}getBounds(){return"mercator"===this.projection.name||"equirectangular"===this.projection.name?this._terrainEnabled()?this._getBoundsRectangularTerrain():this._getBoundsRectangular(0,0):this._getBoundsNonRectangular()}horizonLineFromTop(e=!0){const t=this.height/2/Math.tan(this._fov/2)/Math.tan(Math.max(this._pitch,.1))-this.centerOffset.y,i=this.height/2-t*(1-this._horizonShift);return e?Math.max(0,i):i}getMaxBounds(){return this.maxBounds}setMaxBounds(e){this.maxBounds=e,this.minLat=-rp,this.maxLat=rp,this.minLng=-180,this.maxLng=180,e&&(this.minLat=e.getSouth(),this.maxLat=e.getNorth(),this.minLng=e.getWest(),this.maxLng=e.getEast(),this.maxLngh&&(s=h-l),h-ct&&(o=t-a),t-e{for(let n=0;n<16;n++)e[n]=bv(t[n],i[n],r)})(s,s,a,wv(this.pitch>=15?1:this.pitch/15))}else s=a;const l=Su.mul([],a,o);let c=Su.mul([],s,o);if(this.projection.isReprojectedInTileSpace){const e=this.locationCoordinate(this.center),t=Su.identity([]);Su.translate(t,t,[e.x*this.worldSize,e.y*this.worldSize,0]),Su.multiply(t,t,Kx(this)),Su.translate(t,t,[-e.x*this.worldSize,-e.y*this.worldSize,0]),Su.multiply(c,c,t),Su.multiply(l,l,t),this.inverseAdjustmentMatrix=function(e){const t=Kx(e,!0);return bu.invert([],[t[0],t[1],t[4],t[5]])}(this)}else this.inverseAdjustmentMatrix=[1,0,0,1];if(this.mercatorMatrix=Su.scale([],c,[this.worldSize,this.worldSize,this.worldSize/n,1]),this.projMatrix=c,this.invProjMatrix=Su.invert(new Float64Array(16),this.projMatrix),t){const t=this._camera.getCameraToClipPerspective(this._fov,this.width/this.height,this._nearZ,1/0);t[8]=2*-e.x/this.width,t[9]=2*e.y/this.height,this.expandedFarZProjMatrix=Su.mul([],t,o)}else this.expandedFarZProjMatrix=this.projMatrix;const h=Su.invert([],s);this.frustumCorners=Wu.fromInvProjectionMatrix(h,this.horizonLineFromTop(),this.height),this.cameraFrustum=Qu.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,0,!t);const u=new Float32Array(16);Su.identity(u),Su.scale(u,u,[1,-1,1]),Su.rotateX(u,u,this._pitch),Su.rotateZ(u,u,this.angle);const d=Su.perspective(new Float32Array(16),this._fov,this.width/this.height,this._nearZ,this._farZ);this.starsProjMatrix=Su.clone(d);const p=(Math.PI/2-this._pitch)*(this.height/this._fov)*this._horizonShift;d[8]=2*-e.x/this.width,d[9]=2*(e.y+p)/this.height,this.skyboxMatrix=Su.multiply(u,d,u);const f=this.point,m=f.x,_=f.y,g=this.width%2/2,y=this.height%2/2,x=Math.cos(this.angle),v=Math.sin(this.angle),b=m-Math.round(m)+x*g+v*y,w=_-Math.round(_)+x*y+v*g,T=new Float64Array(c);if(Su.translate(T,T,[b>.5?b-1:b,w>.5?w-1:w,0]),this.alignedProjMatrix=T,c=Su.create(),Su.scale(c,c,[this.width/2,-this.height/2,1]),Su.translate(c,c,[1,-1,0]),this.labelPlaneMatrix=c,c=Su.create(),Su.scale(c,c,[1,-1,1]),Su.translate(c,c,[-1,-1,0]),Su.scale(c,c,[2/this.width,2/this.height,1]),this.glCoordMatrix=c,this.pixelMatrix=Su.multiply(new Float64Array(16),this.labelPlaneMatrix,l),this._calcFogMatrices(),this._distanceTileDataCache={},c=Su.invert(new Float64Array(16),this.pixelMatrix),!c)throw new Error("failed to invert matrix");if(this.pixelMatrixInverse=c,"globe"===this.projection.name||this.mercatorFromTransition){this.globeMatrix=function(e){const{x:t,y:i}=e.point,{lng:r,lat:n}=e._center;return kd(t,i,e.worldSize,r,n)}(this);const e=[this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]];this.globeCenterInViewSpace=zu.transformMat4(e,e,o),this.globeRadius=this.worldSize/2/Math.PI-1}else this.globeMatrix=c;this._projMatrixCache={},this._alignedProjMatrixCache={},this._pixelsToTileUnitsCache={},this._expandedProjMatrixCache={}}_calcFogMatrices(){this._fogTileMatrixCache={};const e=this.cameraWorldSizeForFog,t=this.cameraPixelsPerMeter,i=this._camera.position,r=1/this.height/this._pixelsPerMercatorPixel,n=[e,e,t];zu.scale(n,n,r),zu.scale(i,i,-1),zu.multiply(i,i,n);const o=Su.create();Su.translate(o,o,i),Su.scale(o,o,n),this.mercatorFogMatrix=o,this.worldToFogMatrix=this._camera.getWorldToCameraPosition(e,t,r)}_computeCameraPosition(e){const t=(e=e||this.pixelsPerMeter)/this.pixelsPerMeter,i=this._camera.forward(),r=this.point,n=this._mercatorZfromZoom(this._seaLevelZoom?this._seaLevelZoom:this._zoom)*t-e/this.worldSize*this._centerAltitude;return[r.x/this.worldSize-i[0]*n,r.y/this.worldSize-i[1]*n,e/this.worldSize*this._centerAltitude-i[2]*n]}_updateCameraState(){this.height&&(this._camera.setPitchBearing(this._pitch,this.angle),this._camera.position=this._computeCameraPosition())}_translateCameraConstrained(e){const t=this._maxCameraBoundsDistance()*Math.cos(this._pitch),i=this._camera.position[2],r=e[2];let n=1;this.projection.wrap&&(this.center=this.center.wrap()),r>0&&(n=Math.min((t-i)/r,1)),this._camera.position=zu.scaleAndAdd([],this._camera.position,e,n),this._updateStateFromCamera()}_updateStateFromCamera(){const e=this._camera.position,t=this._camera.forward(),{pitch:i,bearing:r}=this._camera.getPitchBearing(),n=Qd(this._centerAltitude,this.center.lat)*this._pixelsPerMercatorPixel,o=this._mercatorZfromZoom(this._maxZoom)*Math.cos(w(this._maxPitch)),s=Math.max((e[2]-n)/Math.cos(i),o),a=this._zoomFromMercatorZ(s);zu.scaleAndAdd(e,e,t,s),this._pitch=k(i,w(this.minPitch),w(this.maxPitch)),this.angle=z(r,-Math.PI,Math.PI),this._setZoom(k(a,this._minZoom,this._maxZoom)),this._updateSeaLevelZoom(),this._center=this.coordinateLocation(new lp(e[0],e[1],e[2])),this._unmodified=!1,this._constrain(),this._calcMatrices()}_worldSizeFromZoom(e){return Math.pow(2,e)*this.tileSize}_mercatorZfromZoom(e){return this.cameraToCenterDistance/this._worldSizeFromZoom(e)}_minimumHeightOverTerrain(){const e=Math.min((null!=this._seaLevelZoom?this._seaLevelZoom:this._zoom)+4,this._maxZoom);return this._mercatorZfromZoom(e)}_zoomFromMercatorZ(e){return this.scaleZoom(this.cameraToCenterDistance/(e*this.tileSize))}zoomFromMercatorZAdjusted(e){let t=0,i=id,r=0,n=1/0;for(;i-t>1e-6&&i>t;){const o=t+.5*(i-t),s=this.tileSize*Math.pow(2,o),a=this.getCameraToCenterDistance(this.projection,o,s),l=this.scaleZoom(a/(e*this.tileSize)),c=Math.abs(o-l);cl||i.y>1)return!0}return!1}isHorizonVisible(){return this.pitch+T(this.fovAboveCenter)>88||this.anyCornerOffEdge(new y(0,0),new y(this.width,this.height))}zoomDeltaToMovement(e,t){const i=zu.length(zu.sub([],this._camera.position,e)),r=this._zoomFromMercatorZ(i)+t;return i-this._mercatorZfromZoom(r)}getCameraPoint(){if("globe"===this.projection.name){const e=function([e,t,i],r){const n=[e,t,i,1];yu.transformMat4(n,n,r);const o=n[3]=Math.max(n[3],1e-6);return n[0]/=o,n[1]/=o,n[2]/=o,n}([this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]],this.pixelMatrix);return new y(e[0],e[1])}{const e=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new y(0,e))}}getCameraToCenterDistance(e,t=this.zoom,i=this.worldSize){const r=Qx(e,t,this.width,this.height,1024),n=e.pixelSpaceConversion(this.center.lat,i,r);let o=.5/Math.tan(.5*this._fov)*this.height*n;return this.isOrthographic&&(o=bv(1,o,wv(this.pitch>=15?1:this.pitch/15))),o}getWorldToCameraMatrix(){const e=this._camera.getWorldToCamera(this.worldSize,"meters"===this.projection.zAxisUnit?this.pixelsPerMeter:1);return"globe"===this.projection.name&&Su.multiply(e,e,this.globeMatrix),e}getFrustum(e){return Qu.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,e,"meters"===this.projection.zAxisUnit)}}function Ev(e,t,i){Su.identity(e),Su.rotateZ(e,e,w(t[2])),Su.rotateX(e,e,w(t[0])),Su.rotateY(e,e,w(t[1])),Su.scale(e,e,i),Su.multiply(e,e,[1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1])}function Av(e,t,i,r,n,o,s,a){const l=[i[0]-t[0],i[1]-t[1],0],c=[r[0]-t[0],r[1]-t[1],0];if(zu.length(l)<1e-12||zu.length(c)<1e-12)return Iu.identity(e);const h=zu.cross([],l,c);zu.normalize(h,h),zu.subtract(c,r,t),l[2]=(o-n)*a,c[2]=(s-n)*a;const u=l;return zu.cross(u,l,c),zu.normalize(u,u),Iu.rotationTo(e,h,u)}function Sv(e,t,i=!1){const r=zd(t.zoom),n=function(e,t,i){const r=t.worldSize,n=[e[12],e[13],e[14]],o=tp(n[1]/r),s=ep(n[0]/r),a=Su.identity([]),l=Qd(1,o)*r,c=Qd(1,0)*r*op(o,t.zoom),h=1/Id(r);let u=c*h;if(i){const e=Qx(t.projection,t.zoom,t.width,t.height,1024);u=h*t.projection.pixelSpaceConversion(t.center.lat,r,e)}const d=wd(o,s);zu.add(d,d,zu.scale([],zu.normalize([],d),l*u*n[2]));const p=function(e){const t=[e[0],e[1],e[2]];let i=[0,1,0];const r=zu.cross([],i,t);return zu.cross(i,t,r),0===zu.squaredLength(i)&&(i=[0,1,0],zu.cross(r,t,i)),zu.normalize(r,r),zu.normalize(i,i),zu.normalize(t,t),[r[0],r[1],r[2],0,i[0],i[1],i[2],0,t[0],t[1],t[2],0,e[0],e[1],e[2],1]}(d);Su.scale(a,a,[u,u,u*l]),Su.translate(a,a,[-n[0],-n[1],-n[2]]);const f=Su.multiply([],t.globeMatrix,p);return Su.multiply(f,f,a),Su.multiply(f,f,e),f}(e,t,i);if(r>0){const i=function(e,t){const i=t.worldSize,r=Qd(1,0)*i*op(t.center.lat,t.zoom)/Id(i),n=Qd(1,t.center.lat)*i,o=Su.identity([]);return Su.rotateY(o,o,w(t.center.lng)),Su.rotateX(o,o,w(t.center.lat)),Su.translate(o,o,[0,0,rd]),Su.scale(o,o,[r,r,r*n]),Su.translate(o,o,[t.point.x-.5*i,t.point.y-.5*i,0]),Su.multiply(o,o,e),Su.multiply(o,t.globeMatrix,o)}(e,t);return function(e,t,i){const r=(e,t,i)=>{const r=zu.length(e),n=zu.length(t),o=md(e,t,i);return zu.scale(o,o,1/zu.length(o)*Kr(r,n,i))},n=r([e[0],e[1],e[2]],[t[0],t[1],t[2]],i),o=r([e[4],e[5],e[6]],[t[4],t[5],t[6]],i),s=r([e[8],e[9],e[10]],[t[8],t[9],t[10]],i),a=md([e[12],e[13],e[14]],[t[12],t[13],t[14]],i);return[n[0],n[1],n[2],0,o[0],o[1],o[2],0,s[0],s[1],s[2],0,a[0],a[1],a[2],1]}(n,i,r)}return n}const Mv=64,Iv=[1,1,1];class Cv{constructor(e,t,i,r){this.id=e,this.position=null!=t?new Hd(t[0],t[1]):new Hd(0,0),this.orientation=null!=i?i:[0,0,0],this.nodes=r,this.uploaded=!1,this.aabb=new ed([1/0,1/0,1/0],[-1/0,-1/0,-1/0]),this.matrix=[]}_applyTransformations(e,t){if(Su.multiply(e.matrix,t,e.matrix),e.meshes)for(const t of e.meshes){const i=ed.applyTransform(t.aabb,e.matrix);this.aabb.encapsulate(i)}if(e.children)for(const t of e.children)this._applyTransformations(t,e.matrix)}computeBoundsAndApplyParent(){const e=Su.identity([]);for(const t of this.nodes)this._applyTransformations(t,e)}_positionModelOnTerrain(e,t){const i=e.elevation;if(!i)return 0;const r=ed.projectAabbCorners(this.aabb,this.matrix),n=Qd(1,this.position.lat)*e.worldSize,o=function(e,t){const i=[0,0,1],r=[{corners:[0,1,3,2],dotProductWithUp:0},{corners:[1,5,2,6],dotProductWithUp:0},{corners:[0,4,1,5],dotProductWithUp:0},{corners:[2,6,3,7],dotProductWithUp:0},{corners:[4,7,5,6],dotProductWithUp:0},{corners:[0,3,4,7],dotProductWithUp:0}];for(const n of r){const r=e[n.corners[0]],o=e[n.corners[1]],s=e[n.corners[2]],a=[o[0]-r[0],o[1]-r[1],t*(o[2]-r[2])],l=zu.cross(a,a,[s[0]-r[0],s[1]-r[1],t*(s[2]-r[2])]);zu.normalize(l,l),n.dotProductWithUp=zu.dot(l,i)}return r.sort(((e,t)=>e.dotProductWithUp-t.dotProductWithUp)),r[0].corners}(r,n),s=r[o[0]],a=r[o[1]],l=r[o[2]],c=r[o[3]],h=i.getAtPointOrZero(new lp(s[0]/e.worldSize,s[1]/e.worldSize),0),u=i.getAtPointOrZero(new lp(a[0]/e.worldSize,a[1]/e.worldSize),0),d=i.getAtPointOrZero(new lp(l[0]/e.worldSize,l[1]/e.worldSize),0),p=i.getAtPointOrZero(new lp(c[0]/e.worldSize,c[1]/e.worldSize),0),f=(h+p)/2,m=(u+d)/2;return f>m?u=t.gl.NEAREST_MIPMAP_NEAREST}),e.uploaded=!0,e.image=null)}function Pv(e,t,i){e.indexBuffer=t.createIndexBuffer(e.indexArray,!1,!0),e.vertexBuffer=t.createVertexBuffer(e.vertexArray,Fx.members,!1,!0),e.normalArray&&(e.normalBuffer=t.createVertexBuffer(e.normalArray,Vx.members,!1,!0)),e.texcoordArray&&(e.texcoordBuffer=t.createVertexBuffer(e.texcoordArray,Ux.members,!1,!0)),e.colorArray&&(e.colorBuffer=t.createVertexBuffer(e.colorArray,(12===e.colorArray.bytesPerElement?Nx:jx).members,!1,!0)),e.featureArray&&(e.pbrBuffer=t.createVertexBuffer(e.featureArray,$x.members,!0)),e.segments=xl.simpleSegment(0,0,e.vertexArray.length,e.indexArray.length);const r=e.material;r.pbrMetallicRoughness.baseColorTexture&&kv(r.pbrMetallicRoughness.baseColorTexture,t),r.pbrMetallicRoughness.metallicRoughnessTexture&&kv(r.pbrMetallicRoughness.metallicRoughnessTexture,t),r.normalTexture&&kv(r.normalTexture,t),r.occlusionTexture&&kv(r.occlusionTexture,t,i),r.emissionTexture&&kv(r.emissionTexture,t)}function zv(e,t,i){if(e.meshes)for(const r of e.meshes)Pv(r,t,i);if(e.children)for(const r of e.children)zv(r,t,i)}function Lv(e){if(e.meshes)for(const t of e.meshes)t.indexArray.destroy(),t.vertexArray.destroy(),t.colorArray&&t.colorArray.destroy(),t.normalArray&&t.normalArray.destroy(),t.texcoordArray&&t.texcoordArray.destroy(),t.featureArray&&t.featureArray.destroy();if(e.children)for(const t of e.children)Lv(t)}function Dv(e){if(e.meshes)for(const i of e.meshes)i.vertexBuffer&&(i.vertexBuffer.destroy(),i.indexBuffer.destroy(),i.normalBuffer&&i.normalBuffer.destroy(),i.texcoordBuffer&&i.texcoordBuffer.destroy(),i.colorBuffer&&i.colorBuffer.destroy(),i.pbrBuffer&&i.pbrBuffer.destroy(),i.segments.destroy(),i.material&&((t=i.material).pbrMetallicRoughness.baseColorTexture&&t.pbrMetallicRoughness.baseColorTexture.gfxTexture&&t.pbrMetallicRoughness.baseColorTexture.gfxTexture.destroy(),t.pbrMetallicRoughness.metallicRoughnessTexture&&t.pbrMetallicRoughness.metallicRoughnessTexture.gfxTexture&&t.pbrMetallicRoughness.metallicRoughnessTexture.gfxTexture.destroy(),t.normalTexture&&t.normalTexture.gfxTexture&&t.normalTexture.gfxTexture.destroy(),t.emissionTexture&&t.emissionTexture.gfxTexture&&t.emissionTexture.gfxTexture.destroy(),t.occlusionTexture&&t.occlusionTexture.gfxTexture&&t.occlusionTexture.gfxTexture.destroy()));var t;if(e.children)for(const t of e.children)Dv(t)}class Rv{constructor(e,t){this.feature=e,this.instancedDataOffset=t,this.instancedDataCount=0,this.rotation=[0,0,0],this.scale=[1,1,1],this.translation=[0,0,0]}}class Ov{constructor(){this.instancedDataArray=new rl,this.instancesEvaluatedElevation=[],this.features=[],this.idToFeaturesIndex={}}}class Bv{constructor(e){this.zoom=e.zoom,this.canonical=e.canonical,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.projection=e.projection,this.index=e.index,this.hasZoomDependentProperties=this.layers[0].isZoomDependent(),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.hasPattern=!1,this.instancesPerModel={},this.validForExaggeration=0,this.maxVerticalOffset=0,this.maxScale=0,this.maxHeight=0,this.lookupDim=this.zoom>this.canonical.z?256:this.zoom>15?75:100,this.instanceCount=0,this.terrainElevationMin=0,this.terrainElevationMax=0,this.validForDEMTile={id:null,timestamp:0}}populate(e,t,i,r){this.tileToMeter=ap(i);const n=this.layers[0]._featureFilter.needGeometry;this.lookup=new Uint8Array(this.lookupDim*this.lookupDim);for(const{feature:o,id:s,index:a,sourceLayerIndex:l}of e){const e=gp(o,n);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),e,i))continue;const c={id:s,sourceLayerIndex:l,index:a,geometry:n?e.geometry:_p(o,i,r),properties:o.properties,type:o.type,patterns:{}},h=this.addFeature(c,c.geometry,e);h&&t.featureIndex.insert(o,c.geometry,a,l,this.index,this.instancesPerModel[h].instancedDataArray.length)}this.lookup=null}update(e,t,i,r){for(const t in this.instancesPerModel){const i=this.instancesPerModel[t];for(const t in e)i.idToFeaturesIndex.hasOwnProperty(t)&&this.evaluate(i.features[i.idToFeaturesIndex[t]],e[t],i,!0)}this.maxHeight=0}updateZoomBasedPaintProperties(){if(!this.hasZoomDependentProperties)return!1;let e=!1;for(const t in this.instancesPerModel){const i=this.instancesPerModel[t];for(const t of i.features){const r=this.layers[0],n=t.feature,o=this.canonical,s=r.paint.get("model-rotation").evaluate(n,{},o),a=r.paint.get("model-scale").evaluate(n,{},o),l=r.paint.get("model-translation").evaluate(n,{},o);zu.exactEquals(t.rotation,s)&&zu.exactEquals(t.scale,a)&&zu.exactEquals(t.translation,l)||(this.evaluate(t,t.featureStates,i,!0),e=!0)}}return e}isEmpty(){for(const e in this.instancesPerModel)if(0!==this.instancesPerModel[e].instancedDataArray.length)return!1;return!0}uploadPending(){return!this.uploaded}upload(e){if(!this.uploaded)for(const t in this.instancesPerModel){const i=this.instancesPerModel[t];i.instancedDataArray.length<0||0===i.instancedDataArray.length||(i.instancedDataBuffer?i.instancedDataBuffer.updateData(i.instancedDataArray):i.instancedDataBuffer=e.createVertexBuffer(i.instancedDataArray,Gx.members,!0,void 0,this.instanceCount))}this.uploaded=!0}destroy(){for(const e in this.instancesPerModel){const t=this.instancesPerModel[e];0!==t.instancedDataArray.length&&t.instancedDataBuffer&&t.instancedDataBuffer.destroy()}}addFeature(e,t,i){const r=this.layers[0],n=r.layout.get("model-id").evaluate(i,{},this.canonical);if(!n)return W(`modelId is not evaluated for layer ${r.id} and it is not going to get rendered.`),n;this.instancesPerModel[n]||(this.instancesPerModel[n]=new Ov);const o=this.instancesPerModel[n],s=o.instancedDataArray,a=new Rv(i,s.length);for(const e of t)for(const t of e){if(t.x<0||t.x>=cr||t.y<0||t.y>=cr)continue;const e=(this.lookupDim-1)/cr,i=this.lookupDim*(t.y*e|0)+t.x*e|0;if(this.lookup){if(0!==this.lookup[i])continue;this.lookup[i]=1}this.instanceCount++;const r=s.length;s.resize(r+1),o.instancesEvaluatedElevation.push(0),s.float32[16*r]=t.x,s.float32[16*r+1]=t.y}return a.instancedDataCount=o.instancedDataArray.length-a.instancedDataOffset,a.instancedDataCount>0&&(e.id&&(o.idToFeaturesIndex[e.id]=o.features.length),o.features.push(a),this.evaluate(a,{},o,!1)),n}evaluate(e,t,i,r){const n=this.layers[0],o=e.feature,s=this.canonical,a=e.rotation=n.paint.get("model-rotation").evaluate(o,t,s),l=e.scale=n.paint.get("model-scale").evaluate(o,t,s),c=e.translation=n.paint.get("model-translation").evaluate(o,t,s),h=n.paint.get("model-color").evaluate(o,t,s);h.a=n.paint.get("model-color-mix-intensity").evaluate(o,t,s);const u=[];this.maxVerticalOffset10?this.tileToMeter:ap(s,p)),a[o+4]=c[0],a[o+5]=c[1],a[o+6]=c[2]+l,a[o+7]=u[0],a[o+8]=u[1],a[o+9]=u[2],a[o+10]=u[4],a[o+11]=u[5],a[o+12]=u[6],a[o+13]=u[8],a[o+14]=u[9],a[o+15]=u[10],i.instancesEvaluatedElevation[n]=c[2]}}}Ls(Bv,"ModelBucket",{omit:["layers"]}),Ls(Ov,"PerModelAttributes"),Ls(Rv,"ModelFeature");const Fv=new ga({visibility:new fa(Pt.layout_model.visibility),"model-id":new ma(Pt.layout_model["model-id"])});var Nv={paint:new ga({"model-opacity":new fa(Pt.paint_model["model-opacity"]),"model-rotation":new ma(Pt.paint_model["model-rotation"]),"model-scale":new ma(Pt.paint_model["model-scale"]),"model-translation":new ma(Pt.paint_model["model-translation"]),"model-color":new ma(Pt.paint_model["model-color"]),"model-color-mix-intensity":new ma(Pt.paint_model["model-color-mix-intensity"]),"model-type":new fa(Pt.paint_model["model-type"]),"model-cast-shadows":new fa(Pt.paint_model["model-cast-shadows"]),"model-receive-shadows":new fa(Pt.paint_model["model-receive-shadows"]),"model-ambient-occlusion-intensity":new fa(Pt.paint_model["model-ambient-occlusion-intensity"]),"model-emissive-strength":new ma(Pt.paint_model["model-emissive-strength"]),"model-roughness":new ma(Pt.paint_model["model-roughness"]),"model-height-based-emissive-strength-multiplier":new ma(Pt.paint_model["model-height-based-emissive-strength-multiplier"]),"model-cutoff-fade-range":new fa(Pt.paint_model["model-cutoff-fade-range"])}),layout:Fv};const jv=new Float32Array(262144),Uv=new Uint8Array(262144);function Vv(e){let t=0;if(e.meshes)for(const i of e.meshes)t=Math.max(t,i.aabb.max[2]);if(e.children)for(const i of e.children)t=Math.max(t,Vv(i));return t}const Gv=["","wall","door","roof","window","lamp","logo"];class $v{constructor(e){this.node=e,this.evaluatedRMEA=[[1,0,0,1],[1,0,0,1],[1,0,0,1],[1,0,0,1],[.4,1,0,1],[1,0,0,1],[1,0,0,1]],this.hiddenByReplacement=!1,this.evaluatedScale=[1,1,1],this.evaluatedColor=[],this.emissionHeightBasedParams=[],this.feature={type:"Point",id:e.id,geometry:[],properties:{height:Vv(e)}}}}class qv{constructor(e,t,i,r){this.nodes=e,this.id=t,this.modelTraits|=1,this.uploaded=!1,this.hasPattern=!1,i&&(this.modelTraits|=4),this.zoom=-1,this.terrainExaggeration=1,this.projection={name:"mercator"},this.replacementUpdateTime=0,this.elevationReadFromZ=255,this.brightness=r,this.dirty=!0,this.needsUpload=!1}update(){console.log("Update 3D model bucket")}populate(){console.log("populate 3D model bucket")}uploadPending(){return!this.uploaded||this.needsUpload}upload(e){if(!this.needsUpload)return;const t=this.getNodesInfo();for(const i of t){const t=i.node;this.uploaded?this.updatePbrBuffer(t):zv(t,e,!0)}for(const e of t)Lv(e.node);this.uploaded=!0,this.needsUpload=!1}updatePbrBuffer(e){let t=!1;if(!e.meshes)return t;for(const i of e.meshes)i.pbrBuffer&&(i.pbrBuffer.updateData(i.featureArray),t=!0);return t}needsReEvaluation(e,t,i){const r=e.transform.projectionOptions,n=e.style.getBrightness(),o=this.brightness!==n;return!!(!this.uploaded||this.dirty||r.name!==this.projection.name||Zv(i.paint.get("model-color").value,o)||Zv(i.paint.get("model-color-mix-intensity").value,o)||Zv(i.paint.get("model-roughness").value,o)||Zv(i.paint.get("model-emissive-strength").value,o)||Zv(i.paint.get("model-height-based-emissive-strength-multiplier").value,o))&&(this.projection=r,this.brightness=n,!0)}evaluateScale(e,t){if(e.transform.zoom===this.zoom)return;this.zoom=e.transform.zoom;const i=this.getNodesInfo(),r=this.id.canonical;for(const e of i){const i=e.feature;e.evaluatedScale=t.paint.get("model-scale").evaluate(i,{},r)}}evaluate(e){const t=this.getNodesInfo();for(const i of t){if(!i.node.meshes)continue;const t=i.feature,r=i.node.meshes&&i.node.meshes[0].featureData,n=i.evaluatedColor[2],o=i.evaluatedRMEA[2],s=this.id.canonical;if(i.hasTranslucentParts=!1,r){for(let r=0;r=e)continue;const u=jv[c],d=Math.abs(u);d>a&&(s=u,a=d,l=n,h=t)}if(a>.1){const o=1-(e+.5*Math.abs(l*h))/c;let a=t._dem.get(r,i)+s*o;const u=t._dem.get(r+l,i+h),d=t._dem.get(r-l,i-h,!0);(a-u)*(a-d)>0&&(a=(u+d)/2),jv[n]=t._dem.set(r,i,a),Uv[n]=e}}}}}s&&(t._demTile.needsDEMTextureUpload=!0,t._dem._timestamp=dt.now())}getNodesInfo(){if(!this.nodesInfo){this.nodesInfo=[];for(const e of this.nodes)this.nodesInfo.push(new $v(e));this.freeNodes()}return this.nodesInfo}freeNodes(){if(this.nodes){for(const e of this.nodes)Dv(e);this.nodes.splice(0,this.nodes.length)}}destroy(){this.freeNodes();const e=this.getNodesInfo();for(const t of e)Lv(t.node),Dv(t.node)}isEmpty(){return!this.nodes.length}updateReplacement(e,t){if(t.updateTime===this.replacementUpdateTime)return;this.replacementUpdateTime=t.updateTime;const i=t.getReplacementRegionsForTile(e.toUnwrapped()),r=this.getNodesInfo();for(let e=0;ee.footprint===t.footprint))}}getHeightAtTileCoord(e,t){const i=this.getNodesInfo(),r=[];for(let n=0;ns.aabb.max[0]||t>s.aabb.max[1])continue;const a=(e-s.aabb.min[0])/(s.aabb.max[0]-s.aabb.min[0])*Mv|0,l=Math.min(63,(t-s.aabb.min[1])/(s.aabb.max[1]-s.aabb.min[1])*Mv|0)*Mv+Math.min(63,a);if(!(s.heightmap[l]<0&&o.node.footprint)){if(o.hiddenByReplacement)return;return{height:s.heightmap[l],maxHeight:o.feature.properties.height,hidden:!1,verticalScale:o.evaluatedScale[2]}}if(o.node.footprint.grid.query(new y(e,t),new y(e,t),r),r.length>0)return{height:void 0,maxHeight:o.feature.properties.height,hidden:o.hiddenByReplacement,verticalScale:o.evaluatedScale[2]}}}}function Zv(e,t){return!e.isLightConstant&&t}function Hv(e,t,i,r,n,o,s,a){let l=(61440&t|(61440&t)>>4)>>8,c=(3840&t|(3840&t)>>4)>>4,h=240&t|(240&t)>>4;i[3]>0&&(l=Kr(l,255*i[0],i[3]),c=Kr(c,255*i[1],i[3]),h=Kr(h,255*i[2],i[3]));const u=l<<8|c,d=h<<8|Math.floor(255*r[3]),p=function(e){const t=k(e,0,2);return Math.min(Math.round(.5*t*255),255)}(r[2])<<8|15*r[0]<<4|15*r[1],f=k(n[0],0,1),m=k(n[1],0,1),_=k(n[2],0,1),g=k(n[3],0,1);let y,x,v,b;if(f!==m&&s!==o&&m!==f){const e=s-o;x=1/(e*(m-f)),v=-(o+e*f)/(e*(m-f));const t=k(n[4],-1,1);b=Math.pow(10,t),y=255*_<<8|255*g}else y=65535,x=0,v=1,b=1;if(e.emplaceBack(u,d,p,y,x,v,b),a){const e=a.length;a.clear();for(let t=0;t>16&65535,c=e.evaluatedRMEA[a],h=e.evaluatedColor[a],u=e.emissionHeightBasedParams[a];if(o&&2===a&&i.lights&&(r=new nl,r.resize(10*i.lights.length)),Hv(n.featureArray,l,h,c,u,n.aabb.min[2],n.aabb.max[2],r),r&&o){o=!1;const e=i.meshes[i.lightMeshIndex];e.featureArray=r,e.featureArray._trim()}}n.featureArray._trim(),r++}}Ls(qv,"Tiled3dModelBucket",{omit:["layers"]}),Ls($v,"Tiled3dModelFeature");class Xv{constructor(){this._updateTime=0,this._sourceIds=[],this._activeRegions=[],this._prevRegions=[]}clear(){this._activeRegions.length>0&&++this._updateTime,this._activeRegions=[],this._prevRegions=[]}get updateTime(){return this._updateTime}getReplacementRegionsForTile(e){const t=Qv(new y(0,0),new y(cr,cr),e),i=[];for(const r of this._activeRegions){if(r.hiddenByOverlap)continue;if(!Jv(t,r))continue;const n=eb(r.min,r.max,e);i.push({min:n.min,max:n.max,sourceId:this._sourceIds[r.priority],footprint:r.footprint,footprintTileId:r.tileId})}return i}setSources(e){this._setSources(e.map((e=>({getSourceId:()=>e.cache.id,getFootprints:()=>{const t=[];for(const i of e.cache.getVisibleCoordinates()){const r=e.cache.getTile(i).buckets[e.layer];if(r)for(const e of r.getNodesInfo()){const r=e.node;r.footprint&&t.push({footprint:r.footprint,id:i.toUnwrapped()})}}return t}}))))}_addSource(e){const t=e.getFootprints();if(0!==t.length){for(const e of t){if(!e.footprint)continue;const t=Qv(e.footprint.min,e.footprint.max,e.id);this._activeRegions.push({min:t.min,max:t.max,hiddenByOverlap:!1,priority:this._sourceIds.length,tileId:e.id,footprint:e.footprint})}this._sourceIds.push(e.getSourceId())}}_computeReplacement(){this._activeRegions.sort(((e,t)=>e.priority-t.priority||Yv(e.min,t.min)||Yv(e.max,t.max)));let e=this._activeRegions.length!==this._prevRegions.length;if(!e){let t=0,i=0;for(;!e&&t!==this._activeRegions.length;){const r=this._activeRegions[t],n=this._prevRegions[i];e=r.priority!==n.priority||!Kv(r,n),++t,++i}}if(e){++this._updateTime;const e=e=>{const t=this._activeRegions;if(e>=t.length)return e;const i=t[e].priority;for(;e1){let t=0,i=e(t);for(;t!==i;){let r=t;const n=t;for(;r!==i;){const e=this._activeRegions[r];e.hiddenByOverlap=!1;for(let t=0;t=0;t--)this._addSource(e[t]);this._computeReplacement()}}function Yv(e,t){return e.x-t.x||e.y-t.y}function Kv(e,t){return 0===Yv(e.min,t.min)&&0===Yv(e.max,t.max)}function Jv(e,t){return!(e.min.x>t.max.x||e.max.xt.max.y||e.max.ynew y(e.x*o.x*cr*a-s.x*cr,e.y*o.y*cr*a-s.y*cr)))}return tb(i,n,e.indices,0,e.indices.length,0,0)}const rb=hm.types,nb=["fill-extrusion-base","fill-extrusion-height","fill-extrusion-color","fill-extrusion-pattern","fill-extrusion-flood-light-wall-radius"],ob=["fill-extrusion-flood-light-ground-radius"],sb=Math.pow(2,13),ab=Math.pow(2,15)-1,lb=new y(0,1),cb=2147483648;function hb(e,t,i,r,n,o,s,a){e.emplaceBack((t<<1)+s,(i<<1)+o,(Math.floor(r*sb)<<1)+n,Math.round(a))}function ub(e,t,i,r,n,o){e.emplaceBack(t.x,t.y,(i.x<<1)+r,(i.y<<1)+n,o)}function db(e,t,i){const r=16384;e.emplaceBack(t.x,t.y,t.z,i[0]*r,i[1]*r,i[2]*r)}class pb{constructor(){this.vertexOffset=0,this.vertexCount=0,this.indexOffset=0,this.indexCount=0}}class fb{constructor(){this.centroidXY=new y(0,0),this.vertexArrayOffset=0,this.vertexCount=0,this.groundVertexArrayOffset=0,this.groundVertexCount=0,this.flags=0,this.footprintSegIdx=-1,this.footprintSegLen=0,this.polygonSegIdx=-1,this.polygonSegLen=0,this.min=new y(Number.MAX_VALUE,Number.MAX_VALUE),this.max=new y(-Number.MAX_VALUE,-Number.MAX_VALUE),this.height=0}span(){return new y(this.max.x-this.min.x,this.max.y-this.min.y)}}class mb{constructor(){this.acc=new y(0,0),this.accCount=0,this.centroidDataIndex=0}startRing(e,t){e.min.x===Number.MAX_VALUE&&(e.min.x=e.max.x=t.x,e.min.y=e.max.y=t.y)}appendEdge(e,t,i){this.accCount++,this.acc._add(t);let r=!!this.borders;t.xe.max.x&&(e.max.x=t.x,r=!0),t.ye.max.y&&(e.max.y=t.y,r=!0),((0===t.x||t.x===cr)&&t.x===i.x)!=((0===t.y||t.y===cr)&&t.y===i.y)&&this.processBorderOverlap(t,i),r&&this.checkBorderIntersection(t,i)}checkBorderIntersection(e,t){t.x<0!=e.x<0&&this.addBorderIntersection(0,Kr(t.y,e.y,(0-t.x)/(e.x-t.x))),t.x>cr!=e.x>cr&&this.addBorderIntersection(1,Kr(t.y,e.y,(cr-t.x)/(e.x-t.x))),t.y<0!=e.y<0&&this.addBorderIntersection(2,Kr(t.x,e.x,(0-t.y)/(e.y-t.y))),t.y>cr!=e.y>cr&&this.addBorderIntersection(3,Kr(t.x,e.x,(cr-t.y)/(e.y-t.y)))}addBorderIntersection(e,t){this.borders||(this.borders=[[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE]]);const i=this.borders[e];ti[1]&&(i[1]=t)}processBorderOverlap(e,t){if(e.x===t.x){if(e.y===t.y)return;const i=0===e.x?0:1;this.addBorderIntersection(i,t.y),this.addBorderIntersection(i,e.y)}else{const i=0===e.y?2:3;this.addBorderIntersection(i,t.x),this.addBorderIntersection(i,e.x)}}centroid(){return 0===this.accCount?new y(0,0):new y(Math.floor(Math.max(0,this.acc.x)/this.accCount),Math.floor(Math.max(0,this.acc.y)/this.accCount))}intersectsCount(){return this.borders?this.borders.reduce(((e,t)=>e+ +(t[0]!==Number.MAX_VALUE)),0):0}}function _b(e,t){const i=e.add(t)._unit(),r=k(e.x*i.x+e.y*i.y,-1,1);var n,o,s;return n=Math.acos(r),Math.min(4,Math.max(-4,Math.tan(n)))/4*ab*((o=e).x*(s=t).y-o.y*s.x<0?-1:1)}const gb=[e=>e.x<0,e=>e.x>cr,e=>e.y<0,e=>e.y>cr];function yb(e,t,i,r){const n=[4];if(0===r)return n;i._mult(r);const o=e.sub(i),s=t.sub(i),a=[e,t,o,s];for(let e=0;e<4;e++)for(const t of a)if(gb[e](t)){n.push(e);break}return n}class xb{constructor(e){this.vertexArray=new La,this.indexArray=new Ha,this.programConfigurations=new ec(e.layers,e.zoom,(e=>ob.includes(e))),this._segments=new xl,this.hiddenByLandmarkVertexArray=new ol,this._segmentToGroundQuads={},this._segmentToGroundQuads[0]=[],this._segmentToRegionTriCounts={},this._segmentToRegionTriCounts[0]=[0,0,0,0,0],this.regionSegments={},this.regionSegments[4]=new xl}getDefaultSegment(){return this.regionSegments[4]}hasData(){return 0!==this.vertexArray.length}addData(e,t,i,r=!1){const n=e.length;if(n>2){let o=Math.max(0,this._segments.get().length-1);const s=this._segments._prepareSegment(4*n,this.vertexArray.length,2*this._segmentToGroundQuads[o].length);let a;o!==this._segments.get().length-1&&(o++,this._segmentToGroundQuads[o]=[],this._segmentToRegionTriCounts[o]=[0,0,0,0,0]);{const t=e[0],i=e[1];a=_b(t.sub(e[n-1])._perp()._unit(),i.sub(t)._perp()._unit())}for(let l=0;le.region-t.region));for(let i=0;ie+t),0);let o=0;for(let e=0;e<=4;e++){const t=n[e];if(0!==t){let i=this.regionSegments[e];i||(i=this.regionSegments[e]=new xl);const n={vertexOffset:r.vertexOffset,primitiveOffset:r.primitiveOffset+o,vertexLength:r.vertexLength,primitiveLength:t};i.get().push(n)}o+=t}for(let e=0;e0?this.hiddenByLandmarkVertexBuffer=e.createVertexBuffer(this.hiddenByLandmarkVertexArray,Wf.members,!0):this.hiddenByLandmarkVertexBuffer&&this.hiddenByLandmarkVertexBuffer.updateData(this.hiddenByLandmarkVertexArray),this._needsHiddenByLandmarkUpdate=!1)}destroy(){if(this.vertexBuffer){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.hiddenByLandmarkVertexBuffer&&this.hiddenByLandmarkVertexBuffer.destroy(),this._segments&&this._segments.destroy(),this.programConfigurations.destroy();for(let e=0;e<=4;e++){const t=this.regionSegments[e];t&&t.destroy()}}}}class vb{constructor(e){this.zoom=e.zoom,this.canonical=e.canonical,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.hasPattern=!1,this.edgeRadius=0,this.projection=e.projection,this.activeReplacements=[],this.replacementUpdateTime=0,this.centroidData=[],this.footprintIndices=new Ha,this.footprintVertices=new ka,this.footprintSegments=[],this.layoutVertexArray=new za,this.centroidVertexArray=new _l,this.indexArray=new Ha,this.programConfigurations=new ec(e.layers,e.zoom,(e=>nb.includes(e))),this.segments=new xl,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.groundEffect=new xb(e),this.maxHeight=0,this.partLookup={},this.triangleSubSegments=[],this.polygonSegments=[]}populate(e,t,i,r){this.features=[],this.hasPattern=jf("fill-extrusion",this.layers,t),this.featuresOnBorder=[],this.borderFeatureIndices=[[],[],[],[]],this.borderDoneWithNeighborZ=[-1,-1,-1,-1],this.tileToMeter=ap(i),this.edgeRadius=this.layers[0].layout.get("fill-extrusion-edge-radius")/this.tileToMeter;for(const{feature:n,id:o,index:s,sourceLayerIndex:a}of e){const e=this.layers[0]._featureFilter.needGeometry,l=gp(n,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),l,i))continue;const c={id:o,sourceLayerIndex:a,index:s,geometry:e?l.geometry:_p(n,i,r),properties:n.properties,type:n.type,patterns:{}},h=this.layoutVertexArray.length;this.hasPattern?this.features.push(Uf("fill-extrusion",this.layers,c,this.zoom,t)):this.addFeature(c,c.geometry,s,i,{},t.availableImages,r,t.brightness),t.featureIndex.insert(n,c.geometry,s,a,this.index,h)}this.sortBorders(),"globe"!==this.projection.name&&this.splitToSubtiles(),this.groundEffect.prepareBorderSegments(),this.polygonSegments.length=0}addFeatures(e,t,i,r,n,o){for(const e of this.features){const{geometry:s}=e;this.addFeature(e,s,e.index,t,i,r,n,o)}this.sortBorders(),"globe"!==this.projection.name&&this.splitToSubtiles()}update(e,t,i,r,n){const o=0!==Object.keys(e).length;if(o&&!this.stateDependentLayers.length)return;const s=o?this.stateDependentLayers:this.layers;this.programConfigurations.updatePaintArrays(e,t,s,i,r,n),this.groundEffect.update(e,t,s,i,r,n)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload||this.groundEffect.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,Yf),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.layoutVertexExtArray&&(this.layoutVertexExtBuffer=e.createVertexBuffer(this.layoutVertexExtArray,Xf.members,!0)),this.groundEffect.upload(e)),this.groundEffect.uploadPaintProperties(e),this.programConfigurations.upload(e),this.uploaded=!0}uploadCentroid(e){this.groundEffect.uploadHiddenByLandmark(e),this.needsCentroidUpdate&&(!this.centroidVertexBuffer&&this.centroidVertexArray.length>0?this.centroidVertexBuffer=e.createVertexBuffer(this.centroidVertexArray,Hf.members,!0):this.centroidVertexBuffer&&this.centroidVertexBuffer.updateData(this.centroidVertexArray),this.needsCentroidUpdate=!1)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.centroidVertexBuffer&&this.centroidVertexBuffer.destroy(),this.layoutVertexExtBuffer&&this.layoutVertexExtBuffer.destroy(),this.groundEffect.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(e,t,i,r,n,o,s,a){const l=this.layers[0].paint.get("fill-extrusion-flood-light-ground-radius").evaluate(e,{})/this.tileToMeter,c=[new y(0,0),new y(cr,cr)],h=s.projection,u="globe"===h.name,d="Polygon"===rb[e.type],p=new mb;p.centroidDataIndex=this.centroidData.length;const f=new fb,m=this.layers[0].paint.get("fill-extrusion-base").evaluate(e,{},r)<=0,_=this.layers[0].paint.get("fill-extrusion-height").evaluate(e,{},r);f.height=_,f.vertexArrayOffset=this.layoutVertexArray.length,f.groundVertexArrayOffset=this.groundEffect.vertexArray.length,u&&!this.layoutVertexExtArray&&(this.layoutVertexExtArray=new Fa);const g=Ff(t,500);for(let e=g.length-1;e>=0;e--){const t=g[e];(0===t.length||(x=t[0]).every((e=>e.x<=0))||x.every((e=>e.x>=cr))||x.every((e=>e.y<=0))||x.every((e=>e.y>=cr)))&&g.splice(e,1)}var x;let v;if(u)v=Cb(g,c,r);else{v=[];for(const e of g)v.push({polygon:e,bounds:c})}const b=d?this.edgeRadius:0,w=b>0&&this.zoom<17,T=(e,t)=>{if(0===e.length)return!1;const i=e[e.length-1];return t.x===i.x&&t.y===i.y};for(const{polygon:e,bounds:t}of v){let i=0,n=0;for(const t of e)d&&!t[0].equals(t[t.length-1])&&t.push(t[0]),n+=d?t.length-1:t.length;const o=this.segments.prepareSegment((d?5:4)*n,this.layoutVertexArray,this.indexArray);f.footprintSegIdx<0&&(f.footprintSegIdx=this.footprintSegments.length),f.polygonSegIdx<0&&(f.polygonSegIdx=this.polygonSegments.length);const s={triangleArrayOffset:this.indexArray.length,triangleCount:0,triangleSegIdx:this.segments.segments.length-1},a=new pb;if(a.vertexOffset=this.footprintVertices.length,a.indexOffset=3*this.footprintIndices.length,a.ringIndices=[],d){const n=[],s=[];i=o.vertexLength;for(let i=0;i4&&Sb(s[s.length-2],s[0],s[1]),c=b?wb(s[s.length-2],s[0],s[1],b):0;const _=[];let g,y,x;y=s[1].sub(s[0])._perp()._unit();let v=!0;for(let e=1,n=0;e0?1:0,M=l.dist(d);if(n+M>32768&&(n=0),b){x=w.sub(d)._perp()._unit();let e=Tb(l,d,w,bb(y,x),b);isNaN(e)&&(e=0);const t=d.sub(l)._unit();l=l.add(t.mult(c))._round(),d=d.add(t.mult(-e))._round(),c=e,y=x,m&&this.zoom>=17&&(T(_,l)||_.push(l),T(_,d)||_.push(d))}const I=o.vertexLength,C=s.length>4&&Sb(l,d,w);let k=Mb(n,a,v);if(hb(this.layoutVertexArray,l.x,l.y,A,S,0,0,k),hb(this.layoutVertexArray,l.x,l.y,A,S,0,1,k),n+=M,k=Mb(n,C,!v),a=C,hb(this.layoutVertexArray,d.x,d.y,A,S,0,0,k),hb(this.layoutVertexArray,d.x,d.y,A,S,0,1,k),o.vertexLength+=4,this.indexArray.emplaceBack(I+0,I+1,I+2),this.indexArray.emplaceBack(I+1,I+3,I+2),o.primitiveLength+=2,b){const r=i+(1===e?s.length-2:e-2),n=1===e?i:r+1;if(this.indexArray.emplaceBack(I+1,r,I+3),this.indexArray.emplaceBack(r,n,I+3),o.primitiveLength+=2,void 0===g&&(g=I),!Eb(w,s[e],t)){const t=e===s.length-1?g:o.vertexLength;this.indexArray.emplaceBack(I+2,I+3,t),this.indexArray.emplaceBack(I+3,t+1,t),this.indexArray.emplaceBack(I+3,n,t+1),o.primitiveLength+=3}v=!v}if(u){const e=this.layoutVertexExtArray,t=h.projectTilePoint(l.x,l.y,r),i=h.projectTilePoint(d.x,d.y,r),n=h.upVector(r,l.x,l.y),o=h.upVector(r,d.x,d.y);db(e,t,n),db(e,t,n),db(e,i,o),db(e,i,o)}}d&&(i+=s.length-1),m&&b&&this.zoom>=17&&(0!==_.length&&T(_,_[0])&&_.pop(),this.groundEffect.addData(_,t,l,b>0))}this.footprintSegments.push(a),s.triangleCount=this.indexArray.length-s.triangleArrayOffset,this.polygonSegments.push(s),++f.footprintSegLen,++f.polygonSegLen}if(f.vertexCount=this.layoutVertexArray.length-f.vertexArrayOffset,f.groundVertexCount=this.groundEffect.vertexArray.length-f.groundVertexArrayOffset,0!==f.vertexCount){if(f.centroidXY=p.borders?lb:this.encodeCentroid(p,f),this.centroidData.push(f),p.borders){this.featuresOnBorder.push(p);const e=this.featuresOnBorder.length-1;for(let t=0;tthis.featuresOnBorder[t].borders[e][0]-this.featuresOnBorder[i].borders[e][0]))}splitToSubtiles(){const e=[];for(let t=0;tcr),n=2*r+(+(i.min.x+i.max.x>cr)^r);for(let r=0;re.triangleSegmentIdx===t.triangleSegmentIdx?e.subtile-t.subtile:e.triangleSegmentIdx-t.triangleSegmentIdx));let i=0,r=0,n=0;for(const t of e){if(t.triangleSegmentIdx!==i)break;n++}const o=e.length;for(;r!==e.length;){i=e[r].triangleSegmentIdx;let s=0,a=r,l=r;for(let t=a;t0&&this.triangleSubSegments.push({segment:h,min:o,max:c}),a=l;for(let t=a;t[e[0]*(1-i[0])+t[0]*i[0],e[1]*(1-i[1])+t[1]*i[1]],d=[],p=[];for(const e of this.triangleSubSegments){d[0]=e.min.x/cr,d[1]=e.min.y/cr,p[0]=e.max.x/cr,p[1]=e.max.y/cr;const t=u(l,c,d),o=u(l,c,p);if(0===new ed([t[0],t[1],r],[o[0],o[1],n]).intersectsPrecise(i)){a&&(h.segments.push(a),a=void 0);continue}const s=e.segment;a&&a.vertexOffset!==s.vertexOffset&&(h.segments.push(a),a=void 0),a?(a.vertexLength+=s.vertexLength,a.primitiveLength+=s.primitiveLength):a={vertexOffset:s.vertexOffset,primitiveLength:s.primitiveLength,vertexLength:s.vertexLength,primitiveOffset:s.primitiveOffset,sortKey:void 0,vaos:{}}}return a&&h.segments.push(a),h}encodeCentroid(e,t){const i=e.centroid(),r=t.span(),n=Math.min(7,Math.round(r.x*this.tileToMeter/10)),o=Math.min(7,Math.round(r.y*this.tileToMeter/10));return new y(k(i.x,1,cr-1)<<3|n,k(i.y,1,cr-1)<<3|o)}showCentroid(e){const t=this.centroidData[e.centroidDataIndex];t.flags&=cb,t.centroidXY.x=0,t.centroidXY.y=0,this.writeCentroidToBuffer(t)}writeCentroidToBuffer(e){this.groundEffect.updateHiddenByLandmark(e);const t=e.vertexArrayOffset,i=e.vertexCount+e.vertexArrayOffset,r=e.flags&cb?lb:e.centroidXY,n=this.centroidVertexArray.geta_centroid_pos0(t);if(this.centroidVertexArray.geta_centroid_pos1(t)!==r.y||n!==r.x){for(let e=t;en.max.x||n.min.x>t.max.x||t.min.y>n.max.y||n.min.y>t.max.y))for(let o=0;ot!=l>t&&e<(this.footprintVertices.int16[2*(a+o.vertexOffset)+0]-i)*(t-s)/(l-s)+i&&(r=!r)}s=i}}return r}getHeightAtTileCoord(e,t){let i=Number.NEGATIVE_INFINITY,r=!0;const n=4*(e+cr)*cr+(t+cr);if(this.partLookup.hasOwnProperty(n)){const e=this.partLookup[n];return e?{height:e.height,hidden:!!(e.flags&cb)}:void 0}for(const o of this.centroidData)e>o.max.x||o.min.x>e||t>o.max.y||o.min.y>t||this.footprintContainsPoint(e,t,o)&&o&&o.height>i&&(i=o.height,this.partLookup[n]=o,r=!!(o.flags&cb));if(i!==Number.NEGATIVE_INFINITY)return{height:i,hidden:r};this.partLookup[n]=void 0}}function bb(e,t){const i=e.add(t)._unit();return e.x*i.x+e.y*i.y}function wb(e,t,i,r){const n=t.sub(e)._perp()._unit(),o=i.sub(t)._perp()._unit();return Tb(e,t,i,bb(n,o),r)}function Tb(e,t,i,r,n){const o=Math.sqrt(1-r*r);return Math.min(e.dist(t)/3,t.dist(i)/3,n*o/r)}function Eb(e,t,i){return e.xi[1].x&&t.x>i[1].x||e.yi[1].y&&t.y>i[1].y}function Ab(e,t){return e.xt[1].x||e.yt[1].y}function Sb(e,t,i){if(e.x<0||e.x>=cr||t.x<0||t.x>=cr||i.x<0||i.x>=cr)return!1;const r=i.sub(t),n=r.perp(),o=e.sub(t);return(r.x*o.x+r.y*o.y)/Math.sqrt((r.x*r.x+r.y*r.y)*(o.x*o.x+o.y*o.y))>-.866&&n.x*o.x+n.y*o.y<0}function Mb(e,t,i){const r=t?2|e:-3&e;return i?1|r:-2&r}function Ib(){const e=Math.PI/32,t=Math.tan(e),i=$d;return i*Math.sqrt(1+2*t*t)-i}function Cb(e,t,i){const r=1<{for(const i of e)s.push({polygon:i,bounds:t})},l=Math.ceil(Math.log2(i)),c=Math.ceil(Math.log2(r)),h=l-c,u=[];for(let e=0;e0?0:1);for(let e=0;et+1?p.push({polygons:d,bounds:e,depth:t+1}):a(d,e)}if(f.length){const e=[new y(0===i?h:r.x,1===i?h:r.y),s];u.length>t+1?p.push({polygons:f,bounds:e,depth:t+1}):a(f,e)}}return s}(e,t,Math.ceil((o-n)/11.25),Math.ceil((s-a)/11.25),1,((e,t,n)=>{if(0===e)return.5*(t+n);{const e=tp((i.y+t/cr)/r);return(Jd(.5*(tp((i.y+n/cr)/r)+e))*r-i.y)*cr}}))}function kb(e,t,i,r,n,o){const s=Math.pow(2,r.z-n.z);for(let a=0;a{const a=e.transform,l=a.calculatePixelsToTileUnitsMatrix(t);return{u_matrix:Vb(e,t,i,r),u_pixels_to_tile_units:l,u_device_pixel_ratio:o,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]],u_dash_image:0,u_gradient_image:1,u_image_height:n,u_texsize:$b(i)&&t.lineAtlasTexture?t.lineAtlasTexture.size:[0,0],u_tile_units_to_pixels:Ub(t,e.transform),u_alpha_discard_threshold:0,u_trim_offset:s,u_emissive_strength:i.paint.get("line-emissive-strength")}},jb=(e,t,i,r,n)=>{const o=e.transform;return{u_matrix:Vb(e,t,i,r),u_texsize:t.imageAtlasTexture?t.imageAtlasTexture.size:[0,0],u_pixels_to_tile_units:o.calculatePixelsToTileUnitsMatrix(t),u_device_pixel_ratio:n,u_image:0,u_tile_units_to_pixels:Ub(t,o),u_units_to_pixels:[1/o.pixelsToGLUnits[0],1/o.pixelsToGLUnits[1]],u_alpha_discard_threshold:0}};function Ub(e,t){return 1/rv(e,1,t.tileZoom)}function Vb(e,t,i,r){return e.translatePosMatrix(r||t.tileID.projMatrix,t,i.paint.get("line-translate"),i.paint.get("line-translate-anchor"))}const Gb=e=>{const t=[];$b(e)&&t.push("RENDER_LINE_DASH"),e.paint.get("line-gradient")&&t.push("RENDER_LINE_GRADIENT");const i=e.paint.get("line-trim-offset");return 0===i[0]&&0===i[1]||t.push("RENDER_LINE_TRIM_OFFSET"),0!==e.paint.get("line-border-width").constantOr(1)&&t.push("RENDER_LINE_BORDER"),t};function $b(e){const t=e.paint.get("line-dasharray").value;return t.value||"constant"!==t.kind}const qb=new class extends ma{possiblyEvaluate(e,t){return t=new oa(Math.floor(t.zoom),{now:t.now,fadeDuration:t.fadeDuration,transition:t.transition}),super.possiblyEvaluate(e,t)}evaluate(e,t,i,r){return t=R({},t,{zoom:Math.floor(t.zoom)}),super.evaluate(e,t,i,r)}}(Fb.paint.properties["line-width"].specification);function Zb(e,t){return t>0?t+2*e:e}qb.useIntegerZoom=!0;const Hb=new ga({visibility:new fa(Pt.layout_background.visibility)});var Wb={paint:new ga({"background-color":new fa(Pt.paint_background["background-color"]),"background-pattern":new fa(Pt.paint_background["background-pattern"]),"background-opacity":new fa(Pt.paint_background["background-opacity"]),"background-emissive-strength":new fa(Pt.paint_background["background-emissive-strength"])}),layout:Hb};const Xb=new ga({visibility:new fa(Pt.layout_raster.visibility)});var Yb={paint:new ga({"raster-opacity":new fa(Pt.paint_raster["raster-opacity"]),"raster-color":new _a(Pt.paint_raster["raster-color"]),"raster-color-mix":new fa(Pt.paint_raster["raster-color-mix"]),"raster-color-range":new fa(Pt.paint_raster["raster-color-range"]),"raster-hue-rotate":new fa(Pt.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new fa(Pt.paint_raster["raster-brightness-min"]),"raster-brightness-max":new fa(Pt.paint_raster["raster-brightness-max"]),"raster-saturation":new fa(Pt.paint_raster["raster-saturation"]),"raster-contrast":new fa(Pt.paint_raster["raster-contrast"]),"raster-resampling":new fa(Pt.paint_raster["raster-resampling"]),"raster-fade-duration":new fa(Pt.paint_raster["raster-fade-duration"]),"raster-emissive-strength":new fa(Pt.paint_raster["raster-emissive-strength"]),"raster-array-band":new fa(Pt.paint_raster["raster-array-band"]),"raster-elevation":new fa(Pt.paint_raster["raster-elevation"])}),layout:Xb};function Kb(e,t,i,r,n,o,s,a){const l=[e,i,n,t,r,o,1,1,1],c=[s,a,1],h=Eu.adjoint([],l),[u,d,p]=zu.transformMat3(c,c,Eu.transpose(h,h));return Eu.multiply(l,[u,0,0,0,d,0,0,0,p],l)}class Jb extends kt{constructor(e,t,i,r){super(),this.id=e,this.dispatcher=i,this.coordinates=t.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.onNorthPole=!1,this.onSouthPole=!1,this.setEventedParent(r),this.options=t,this._dirty=!1}load(e,i){if(this._loaded=i||!1,this.fire(new It("dataloading",{dataType:"source"})),this.url=this.options.url,!this.url)return e&&(this.coordinates=e),this._loaded=!0,void this._finishLoading();this._imageRequest=Ie(this.map._requestManager.transformRequest(this.url,ye.Image),((i,r)=>{if(this._imageRequest=null,this._loaded=!0,i)this.fire(new Ct(i));else if(r){const{HTMLImageElement:i}=t;this.image=r instanceof i?dt.getImageData(r):r,this._dirty=!0,this.width=this.image.width,this.height=this.image.height,e&&(this.coordinates=e),this._finishLoading()}}))}loaded(){return this._loaded}updateImage(e){return e.url?(this._imageRequest&&e.url!==this.options.url&&(this._imageRequest.cancel(),this._imageRequest=null),this.options.url=e.url,this.load(e.coordinates,this._loaded),this):this}setTexture(e){if(!(e.handle instanceof WebGLTexture))throw new Error("The provided handle is not a WebGLTexture instance");return this.texture=new Sy(this.map.painter.context,e.handle),this.width=e.dimensions[0],this.height=e.dimensions[1],this._dirty=!1,this._loaded=!0,this._finishLoading(),this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new It("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(e){this.map=e,this.load()}onRemove(){this._imageRequest&&(this._imageRequest.cancel(),this._imageRequest=null),!this.texture||this.texture instanceof Sy||this.texture.destroy()}setCoordinates(e){if(this.coordinates=e,this._boundsArray=void 0,!e.length)return this;this.onNorthPole=!1,this.onSouthPole=!1;let t=e[0][1],i=e[0][1];for(const r of e)r[1]>i&&(i=r[1]),r[1]rp?this.onNorthPole=!0:r<-rp&&(this.onSouthPole=!0),!this.onNorthPole&&!this.onSouthPole){const t=e.map(lp.fromLngLat);this.tileID=function(e){let t=1/0,i=1/0,r=-1/0,n=-1/0;for(const o of e)t=Math.min(t,o.x),i=Math.min(i,o.y),r=Math.max(r,o.x),n=Math.max(n,o.y);const o=Math.max(r-t,n-i),s=Math.max(0,Math.floor(-Math.log(o)/Math.LN2)),a=Math.pow(2,s);return new Vu(s,Math.floor((t+r)/2*a),Math.floor((i+n)/2*a))}(t),this.minzoom=this.maxzoom=this.tileID.z}return this.fire(new It("data",{dataType:"source",sourceDataType:"content"})),this}_clear(){this._boundsArray=void 0}_prepareData(e){for(const e in this.tiles){const t=this.tiles[e];"loaded"!==t.state&&(t.state="loaded",t.texture=this.texture)}if(this._boundsArray)return;const t=Pg(this.tileID,this.map.transform.projection),[i,r,n,o]=this.coordinates.map((e=>{const i=t.projection.project(e[0],e[1]);return Lg(t,i)._round()}));this.perspectiveTransform=function(e,t,i,r,n,o,s,a,l,c){const h=Kb(0,0,e,0,0,t,e,t),u=Kb(i,r,n,o,s,a,l,c);return Eu.multiply(u,Eu.adjoint(h,h),u),[u[6]/u[8]*e/cr,u[7]/u[8]*t/cr]}(this.width,this.height,i.x,i.y,r.x,r.y,o.x,o.y,n.x,n.y);const s=this._boundsArray=new za;s.emplaceBack(i.x,i.y,0,0),s.emplaceBack(r.x,r.y,cr,0),s.emplaceBack(o.x,o.y,0,cr),s.emplaceBack(n.x,n.y,cr,cr),this.boundsBuffer&&this.boundsBuffer.destroy(),this.boundsBuffer=e.createVertexBuffer(s,Dy.members),this.boundsSegments=xl.simpleSegment(0,0,4,2)}prepare(){const e=0!==Object.keys(this.tiles).length;if(this.tileID&&!e)return;const t=this.map.painter.context,i=t.gl;!this._dirty||this.texture instanceof Sy||(this.texture?this.texture.update(this.image):(this.texture=new Ay(t,this.image,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE)),this._dirty=!1),e&&this._prepareData(t)}loadTile(e,t){this.tileID&&this.tileID.equals(e.tileID.canonical)?(this.tiles[String(e.tileID.wrap)]=e,e.buckets={},t(null)):(e.state="errored",t(null))}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class Qb extends Ta{constructor(e){super(e,{}),this.implementation=e,e.slot&&(this.slot=e.slot)}is3D(){return"3d"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}isLayerDraped(e){return void 0!==this.implementation.renderToTile}shouldRedrape(){return!!this.implementation.shouldRerenderTiles&&this.implementation.shouldRerenderTiles()}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){}onAdd(e){this.implementation.onAdd&&this.implementation.onAdd(e,e.painter.context.gl)}onRemove(e){this.implementation.onRemove&&this.implementation.onRemove(e,e.painter.context.gl)}}const ew=new ga({visibility:new fa(Pt.layout_sky.visibility)});var tw={paint:new ga({"sky-type":new fa(Pt.paint_sky["sky-type"]),"sky-atmosphere-sun":new fa(Pt.paint_sky["sky-atmosphere-sun"]),"sky-atmosphere-sun-intensity":new fa(Pt.paint_sky["sky-atmosphere-sun-intensity"]),"sky-gradient-center":new fa(Pt.paint_sky["sky-gradient-center"]),"sky-gradient-radius":new fa(Pt.paint_sky["sky-gradient-radius"]),"sky-gradient":new _a(Pt.paint_sky["sky-gradient"]),"sky-atmosphere-halo-color":new fa(Pt.paint_sky["sky-atmosphere-halo-color"]),"sky-atmosphere-color":new fa(Pt.paint_sky["sky-atmosphere-color"]),"sky-opacity":new fa(Pt.paint_sky["sky-opacity"])}),layout:ew};function iw(e,t,i){const r=[0,0,1],n=Iu.identity([]);return Iu.rotateY(n,n,i?-w(e)+Math.PI:w(e)),Iu.rotateX(n,n,-w(t)),zu.transformQuat(r,r,n),zu.normalize(r,r)}var rw={paint:new ga({})};const nw={circle:class extends Ta{constructor(e,t){super(e,jp,t)}createBucket(e){return new vp(e)}queryRadius(e){const t=e;return Rp("circle-radius",this,t)+Rp("circle-stroke-width",this,t)+Op(this.paint.get("circle-translate"))}queryIntersectsFeature(e,t,i,r,n,o,s,a){const l=Fp(this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),o.angle,e.pixelToTileUnitsFactor),c=this.paint.get("circle-radius").evaluate(t,i)+this.paint.get("circle-stroke-width").evaluate(t,i);return $p(e,r,o,s,a,"map"===this.paint.get("circle-pitch-alignment"),"map"===this.paint.get("circle-pitch-scale"),l,c)}getProgramIds(){return["circle"]}getDefaultProgramParams(e,t){const i=Gp(this);return{config:new Ql(this,t),defines:i,overrideFog:!1}}},heatmap:class extends Ta{createBucket(e){return new Xp(e)}constructor(e,t){super(e,nf,t),this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(e){"heatmap-color"===e&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=of({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)}queryRadius(e){return Rp("heatmap-radius",this,e)}queryIntersectsFeature(e,t,i,r,n,o,s,a){const l=this.paint.get("heatmap-radius").evaluate(t,i);return $p(e,r,o,s,a,!0,!0,new y(0,0),l)}hasOffscreenPass(){return 0!==this.paint.get("heatmap-opacity")&&"none"!==this.visibility}getProgramIds(){return["heatmap","heatmapTexture"]}getDefaultProgramParams(e,t){return"heatmap"===e?{config:new Ql(this,t),overrideFog:!1}:{}}},hillshade:class extends Ta{constructor(e,t){super(e,af,t)}hasOffscreenPass(){return 0!==this.paint.get("hillshade-exaggeration")&&"none"!==this.visibility}getProgramIds(){return["hillshade","hillshadePrepare"]}getDefaultProgramParams(e,t){return{overrideFog:!1}}},fill:class extends Ta{constructor(e,t){super(e,$f,t)}getProgramIds(){const e=this.paint.get("fill-pattern"),t=e&&e.constantOr(1),i=[t?"fillPattern":"fill"];return this.paint.get("fill-antialias")&&i.push(t&&!this.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline"),i}getDefaultProgramParams(e,t){return{config:new Ql(this,t),overrideFog:!1}}recalculate(e,t){super.recalculate(e,t);const i=this.paint._values["fill-outline-color"];"constant"===i.value.kind&&void 0===i.value.value&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(e){return new Vf(e)}queryRadius(){return Op(this.paint.get("fill-translate"))}queryIntersectsFeature(e,t,i,r,n,o){return!e.queryGeometry.isAboveHorizon&&Tp(Bp(e.tilespaceGeometry,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),o.angle,e.pixelToTileUnitsFactor),r)}isTileClipped(){return!0}},"fill-extrusion":class extends Ta{constructor(e,t){super(e,zb,t),this._stats={numRenderedVerticesInShadowPass:0,numRenderedVerticesInTransparentPass:0}}createBucket(e){return new vb(e)}queryRadius(){return Op(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}hasShadowPass(){return!0}cutoffRange(){return this.paint.get("fill-extrusion-cutoff-fade-range")}canCastShadows(){return!0}getProgramIds(){return[this.paint.get("fill-extrusion-pattern").constantOr(1)?"fillExtrusionPattern":"fillExtrusion"]}queryIntersectsFeature(e,t,i,r,n,o,s,a,l){const c=Fp(this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),o.angle,e.pixelToTileUnitsFactor),h=this.paint.get("fill-extrusion-height").evaluate(t,i),u=this.paint.get("fill-extrusion-base").evaluate(t,i),d=[0,0],p=a&&o.elevation,f=o.elevation?o.elevation.exaggeration():1,m=e.tile.getBucket(this);if(p&&m instanceof vb){const e=m.centroidVertexArray,t=l+1;te.polygon)).flat());const _=p?a:null,[g,x]=function(e,t,i,r,n,o,s,a,l,c,h){return"globe"===e.projection.name?function(e,t,i,r,n,o,s,a,l,c,h){const u=[],d=[],p=e.projection.upVectorScale(h,e.center.lat,e.worldSize).metersToTile,f=[0,0,0,1],m=[0,0,0,1],_=(e,t,i,r)=>{e[0]=t,e[1]=i,e[2]=r,e[3]=1},g=Ib();i>0&&(i+=g),r+=g;for(const g of t){const t=[],y=[];for(const u of g){const d=u.x+n.x,g=u.y+n.y,x=e.projection.projectTilePoint(d,g,h),v=e.projection.upVector(h,u.x,u.y);let b=i,w=r;if(s){const e=Ob(d,g,i,r,s,a,l,c);b+=e.base,w+=e.top}0!==i?_(f,x.x+v[0]*p*b,x.y+v[1]*p*b,x.z+v[2]*p*b):_(f,x.x,x.y,x.z),_(m,x.x+v[0]*p*w,x.y+v[1]*p*w,x.z+v[2]*p*w),zu.transformMat4(f,f,o),zu.transformMat4(m,m,o),t.push(new Lb(f[0],f[1],f[2])),y.push(new Lb(m[0],m[1],m[2]))}u.push(t),d.push(y)}return[u,d]}(e,t,i,r,n,o,s,a,l,c,h):s?function(e,t,i,r,n,o,s,a,l){const c=[],h=[],u=[0,0,0,1];for(const d of e){const e=[],p=[];for(const c of d){const h=c.x+r.x,d=c.y+r.y,f=Ob(h,d,t,i,o,s,a,l);u[0]=h,u[1]=d,u[2]=f.base,u[3]=1,yu.transformMat4(u,u,n),u[3]=Math.max(u[3],1e-5);const m=new Lb(u[0]/u[3],u[1]/u[3],u[2]/u[3]);u[0]=h,u[1]=d,u[2]=f.top,u[3]=1,yu.transformMat4(u,u,n),u[3]=Math.max(u[3],1e-5);const _=new Lb(u[0]/u[3],u[1]/u[3],u[2]/u[3]);e.push(m),p.push(_)}c.push(e),h.push(p)}return[c,h]}(t,i,r,n,o,s,a,l,c):function(e,t,i,r,n){const o=[],s=[],a=n[8]*t,l=n[9]*t,c=n[10]*t,h=n[11]*t,u=n[8]*i,d=n[9]*i,p=n[10]*i,f=n[11]*i;for(const t of e){const e=[],i=[];for(const o of t){const t=o.x+r.x,s=o.y+r.y,m=n[0]*t+n[4]*s+n[12],_=n[1]*t+n[5]*s+n[13],g=n[2]*t+n[6]*s+n[14],y=n[3]*t+n[7]*s+n[15],x=m+a,v=_+l,b=g+c,w=Math.max(y+h,1e-5),T=m+u,E=_+d,A=g+p,S=Math.max(y+f,1e-5);e.push(new Lb(x/w,v/w,b/w)),i.push(new Lb(T/S,E/S,A/S))}o.push(e),s.push(i)}return[o,s]}(t,i,r,n,o)}(o,r,u,h,c,s,_,d,f,o.center.lat,e.tileID.canonical),v=e.queryGeometry;return function(e,t,i){let r=1/0;Tp(i,t)&&(r=Rb(i,t[0]));for(let n=0;n=3)for(let t=0;t=0)r=t;else{const n=e.points[i-4];r=Jr(n,t,n[2]/(n[2]-t[2]))}if(gw(this.state,r[0],r[1],0,this._transform)>=fw)return!0}return!1}updateTransitions(e){this._transitioning=this._transitionable.transitioned(e,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(e){this.properties=this._transitioning.possiblyEvaluate(e)}_validate(e,t,i){return(!i||!1!==i.validate)&&Ms(this,e.call(ms,R({value:t,style:{glyphs:!0,sprite:!0},styleSpec:Pt})))}}class bw{constructor(e){this._callback=e,this._triggered=!1,"undefined"!=typeof MessageChannel&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._callback()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._callback()}),0))}remove(){this._channel=void 0,this._callback=()=>{}}}class ww{constructor(){this.tasks={},this.taskQueue=[],V(["process"],this),this.invoker=new bw(this.process),this.nextId=0}add(e,t){const i=this.nextId++,r=function({type:e,isSymbolTile:t,zoom:i}){return i=i||0,"message"===e?0:"maybePrepare"!==e||t?"parseTile"!==e||t?"parseTile"===e&&t?300-i:"maybePrepare"===e&&t?400-i:500:200-i:100-i}(t);if(0===r){Q();try{e()}finally{}return{cancel:()=>{}}}return this.tasks[i]={fn:e,metadata:t,priority:r,id:i},this.taskQueue.push(i),this.invoker.trigger(),{cancel:()=>{delete this.tasks[i]}}}process(){Q();try{if(this.taskQueue=this.taskQueue.filter((e=>!!this.tasks[e])),!this.taskQueue.length)return;const e=this.pick();if(null===e)return;const t=this.tasks[e];if(delete this.tasks[e],this.taskQueue.length&&this.invoker.trigger(),!t)return;t.fn()}finally{}}pick(){let e=null,t=1/0;for(let i=0;i{i&&delete this.callbacks[s],this.target.postMessage({id:s,type:"",targetMapId:r,sourceMapId:this.mapId})}}}receive(e){const t=e.data,i=t.id;if(i&&(!t.targetMapId||this.mapId===t.targetMapId))if(""===t.type){const e=this.cancelCallbacks[i];delete this.cancelCallbacks[i],e&&e.cancel()}else if(t.mustQueue||Q()){const e=this.callbacks[i];this.cancelCallbacks[i]=this.scheduler.add((()=>this.processTask(i,t)),e&&e.metadata||{type:"message"})}else this.processTask(i,t)}processTask(e,t){if(""===t.type){const i=this.callbacks[e];delete this.callbacks[e],i&&(t.error?i(Bs(t.error)):i(null,Bs(t.data)))}else{const i=new Set,r=t.hasCallback?(t,r)=>{delete this.cancelCallbacks[e],this.target.postMessage({id:e,type:"",sourceMapId:this.mapId,error:t?Os(t):null,data:Os(r,i)},i)}:e=>{},n=Bs(t.data);if(this.parent[t.type])this.parent[t.type](t.sourceMapId,n,r);else if(this.parent.getWorkerSource){const e=t.type.split(".");this.parent.getWorkerSource(t.sourceMapId,e[0],n.source,n.scope)[e[1]](n,r)}else r(new Error(`Could not find function ${t.type}`))}}remove(){this.scheduler.remove(),this.target.removeEventListener("message",this.receive,!1)}}class Ew{constructor(e,t){this.workerPool=e,this.actors=[],this.currentActor=0,this.id=F();const i=this.workerPool.acquire(this.id);for(let e=0;e{this.ready=!0}))}broadcast(e,t,i){L(this.actors,((i,r)=>{i.send(e,t,r)}),i=i||function(){})}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(){this.actors.forEach((e=>{e.remove()})),this.actors=[],this.workerPool.release(this.id)}}Ew.Actor=Tw;class Aw extends kt{constructor(e,t,i,r){super(),this.scope=i,this._options=e,this.properties=new pa(t),this._transitionable=new la(t,new Map(r)),this._transitionable.setTransitionOrValue(e.properties),this._transitioning=this._transitionable.untransitioned()}updateConfig(e){this._transitionable.setTransitionOrValue(this._options.properties,new Map(e))}updateTransitions(e){this._transitioning=this._transitionable.transitioned(e,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(e){this.properties=this._transitioning.possiblyEvaluate(e)}get(){return this._options.properties=this._transitionable.serialize(),this._options}set(e,t){this._options=e,this._transitionable.setTransitionOrValue(e.properties,t)}shadowsEnabled(){return!!this.properties&&!0===this.properties.get("cast-shadows")}}const Sw=new ga({color:new fa(Pt.properties_light_ambient.color),intensity:new fa(Pt.properties_light_ambient.intensity)}),Mw=new ga({direction:new class{constructor(e){this.specification=e}possiblyEvaluate(e,t){return function([e,t]){const i=K([1,e,t]);return{x:i.x,y:i.y,z:i.z}}(e.expression.evaluate(t))}interpolate(e,t,i){return{x:Kr(e.x,t.x,i),y:Kr(e.y,t.y,i),z:Kr(e.z,t.z,i)}}}(Pt.properties_light_directional.direction),color:new fa(Pt.properties_light_directional.color),intensity:new fa(Pt.properties_light_directional.intensity),"cast-shadows":new fa(Pt.properties_light_directional["cast-shadows"]),"shadow-intensity":new fa(Pt.properties_light_directional["shadow-intensity"])});class Iw{constructor(e,t,i,r){this.screenBounds=e,this.cameraPoint=t,this._screenRaycastCache={},this._cameraRaycastCache={},this.isAboveHorizon=i,this.screenGeometry=this.bufferedScreenGeometry(0),this.screenGeometryMercator=this._bufferedScreenMercator(0,r)}static createFromScreenPoints(e,t){let i,r;if(e instanceof y||"number"==typeof e[0]){const n=y.convert(e);i=[n],r=t.isPointAboveHorizon(n)}else{const n=y.convert(e[0]),o=y.convert(e[1]);i=[n,o],r=M(n,o).every((e=>t.isPointAboveHorizon(e)))}return new Iw(i,t.getCameraPoint(),r,t)}isPointQuery(){return 1===this.screenBounds.length}bufferedScreenGeometry(e){return M(this.screenBounds[0],1===this.screenBounds.length?this.screenBounds[0]:this.screenBounds[1],e)}bufferedCameraGeometry(e){const t=this.screenBounds[0],i=1===this.screenBounds.length?this.screenBounds[0].add(new y(1,1)):this.screenBounds[1],r=M(t,i,0,!1);return this.cameraPoint.y>i.y&&(this.cameraPoint.x>t.x&&this.cameraPoint.x=i.x?r[2]=this.cameraPoint:this.cameraPoint.x<=t.x&&(r[3]=this.cameraPoint)),function(e,t){const i=[];for(let r=0;rt.y)+(n.y>i.y))+((n.x>t.x)+(n.x>i.x))){case 0:r[0]=n,r[4]=n.clone();break;case 1:r.splice(1,0,n);break;case 2:r[1]=n;break;case 3:r.splice(4,0,n);break;case 5:r.splice(2,0,n);break;case 6:r[3]=n;break;case 7:r.splice(3,0,n);break;case 8:r[2]=n}return r}containsTile(e,t,i,r=0){const n=e.queryPadding/t._pixelsPerMercatorPixel+1,o=i?this._bufferedCameraMercator(n,t):this._bufferedScreenMercator(n,t);let s=e.tileID.wrap+(o.unwrapped?r:0);const a=o.polygon.map((t=>Lg(e.tileTransform,t,s)));if(!Pp(a,0,0,cr,cr))return;s=e.tileID.wrap+(this.screenGeometryMercator.unwrapped?r:0);const l=this.screenGeometryMercator.polygon.map((t=>Dg(e.tileTransform,t,s))),c=l.map((e=>new y(e[0],e[1]))),h=t.getFreeCameraOptions().position||new lp(0,0,0),u=Dg(e.tileTransform,h,s),d=l.map((e=>{const t=zu.sub(e,e,u);return zu.normalize(t,t),new Hu(u,t)})),p=rv(e,1,t.zoom)*t._pixelsPerMercatorPixel;return{queryGeometry:this,tilespaceGeometry:c,tilespaceRays:d,bufferedTilespaceGeometry:a,bufferedTilespaceBounds:(f=S(a),f.min.x=k(f.min.x,0,cr),f.min.y=k(f.min.y,0,cr),f.max.x=k(f.max.x,0,cr),f.max.y=k(f.max.y,0,cr),f),tile:e,tileID:e.tileID,pixelToTileUnitsFactor:p};var f}_bufferedScreenMercator(e,t){const i=Pw(e);if(this._screenRaycastCache[i])return this._screenRaycastCache[i];{let r;return r="globe"===t.projection.name?this._projectAndResample(this.bufferedScreenGeometry(e),t):{polygon:this.bufferedScreenGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._screenRaycastCache[i]=r,r}}_bufferedCameraMercator(e,t){const i=Pw(e);if(this._cameraRaycastCache[i])return this._cameraRaycastCache[i];{let r;return r="globe"===t.projection.name?this._projectAndResample(this.bufferedCameraGeometryGlobe(e),t):{polygon:this.bufferedCameraGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._cameraRaycastCache[i]=r,r}}_projectAndResample(e,t){const i=function(e,t){const i=Su.multiply([],t.pixelMatrix,t.globeMatrix),r=[0,-rd,0,1],n=[0,rd,0,1],o=[0,0,0,1];yu.transformMat4(r,r,i),yu.transformMat4(n,n,i),yu.transformMat4(o,o,i);const s=new y(r[0]/r[3],r[1]/r[3]),a=new y(n[0]/n[3],n[1]/n[3]),l=kp(e,s)&&r[3]1?Cw(e.slice(0,u),t):[],f=unew y(kw(e.x),e.y))),f=f.map((e=>new y(kw(e.x),e.y)));const m=[...p];0===m.length&&m.push(f[f.length-1]);const _=Kr(m[m.length-1].y,(0===f.length?p[0]:f[0]).y,d);let g;return g=l?[new y(0,_),new y(0,0),new y(1,0),new y(1,_)]:[new y(1,_),new y(1,1),new y(0,1),new y(0,_)],m.push(...g),0===f.length?m.push(p[0]):m.push(...f),{polygon:m.map((e=>new lp(e.x,e.y))),unwrapped:!1}}(e,t);if(i)return i;const r=function(e,t){let i=!1,r=-1/0,n=0;for(let t=0;tr&&(r=e[t].x,n=t);for(let t=0;t.5&&(o.x{e.x-=1})),{polygon:e,unwrapped:i}}(Cw(e,t).map((e=>new y(kw(e.x),e.y))),t);return{polygon:r.polygon.map((e=>new lp(e.x,e.y))),unwrapped:r.unwrapped}}}function Cw(e,t){return hp(e,(e=>{const i=t.pointCoordinate3D(e);e.x=i.x,e.y=i.y}),1/256)}function kw(e){return e<0?1+e%1:e%1}function Pw(e){return 100*e|0}function zw(e,t,i,r,n){const o=function(i,r){if(i)return n(i);if(r){e.url&&r.tiles&&e.tiles&&delete e.tiles;const i=O(R(r,e),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);r.vector_layers&&(i.vectorLayers=r.vector_layers,i.vectorLayerIds=i.vectorLayers.map((e=>e.id))),i.tiles=t.canonicalizeTileset(i,e.url),n(null,i)}};return e.url?we(t.transformRequest(t.normalizeSourceURL(e.url,null,i,r),ye.Source),o):dt.frame((()=>o(null,e)))}class Lw{constructor(e,t,i){this.bounds=sc.convert(this.validateBounds(e)),this.minzoom=t||0,this.maxzoom=i||24}validateBounds(e){return Array.isArray(e)&&4===e.length?[Math.max(-180,e[0]),Math.max(-90,e[1]),Math.min(180,e[2]),Math.min(90,e[3])]:[-180,-90,180,90]}contains(e){const t=Math.pow(2,e.z),i=Math.floor(Kd(this.bounds.getWest())*t),r=Math.floor(Jd(this.bounds.getNorth())*t),n=Math.ceil(Kd(this.bounds.getEast())*t),o=Math.ceil(Jd(this.bounds.getSouth())*t);return e.x>=i&&e.x=r&&e.y1&&(s=e[++o]);const l=Math.abs(a-s.left),c=Math.abs(a-s.right),h=Math.min(l,c);let u;const d=t/i*(r+1);if(s.isDash){const e=r-Math.abs(d);u=Math.sqrt(h*h+e*e)}else u=r-Math.sqrt(h*h+d*d);this.image.data[n+a]=Math.max(0,Math.min(255,u+128))}}}addRegularDash(e,t){for(let t=e.length-1;t>=0;--t){const i=e[t],r=e[t+1];i.zeroLength?e.splice(t,1):r&&r.isDash===i.isDash&&(r.left=i.left,e.splice(t,1))}const i=e[0],r=e[e.length-1];i.isDash===r.isDash&&(i.left=r.left-this.width,r.right=i.right+this.width);const n=this.width*this.nextRow;let o=0,s=e[o];for(let i=0;i1&&(s=e[++o]);const r=Math.abs(i-s.left),a=Math.abs(i-s.right),l=Math.min(r,a);this.image.data[n+i]=Math.max(0,Math.min(255,(s.isDash?l:-l)+t+128))}}addDash(e,t){const i=this.getKey(e,t);if(this.positions[i])return this.positions[i];const r="round"===t,n=r?7:0,o=2*n+1;if(this.nextRow+o>this.height)return W("LineAtlas out of space"),null;0===e.length&&e.push(1);let s=0;for(let t=0;t=t.maxzoom||"none"!==t.visibility&&(Fw(e,this.zoom,c.brightness,i),(a[t.id]=t.createBucket({index:s.bucketLayerIDs.length,layers:e,zoom:this.zoom,canonical:this.canonical,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:d,sourceID:this.source,projection:this.projection.spec})).populate(p,c,this.tileID.canonical,this.tileTransform),s.bucketLayerIDs.push(e.map((e=>e.id)))))}}let u,d,p,f;l.trim();const m={type:"maybePrepare",isSymbolTile:this.isSymbolTile,zoom:this.zoom},_=()=>{if(u)return this.status="done",n(u);if(this.extraShadowCaster)this.status="done",n(null,{buckets:D(a).filter((e=>!e.isEmpty())),featureIndex:s,collisionBoxArray:null,glyphAtlasImage:null,lineAtlas:null,imageAtlas:null,brightness:c.brightness,glyphMap:null,iconMap:null,glyphPositions:null});else if(d&&p&&f){const e=new Ow(d),t=new eg(p,f);for(const r in a){const n=a[r];n instanceof gy?(Fw(n.layers,this.zoom,c.brightness,i),vg(n,d,e.positions,p,t.iconPositions,this.showCollisionBoxes,i,this.tileID.canonical,this.tileZoom,this.projection,this.brightness)):n.hasPattern&&(n instanceof Ey||n instanceof Vf||n instanceof vb)&&(Fw(n.layers,this.zoom,c.brightness,i),n.addFeatures(c,this.tileID.canonical,t.patternPositions,i,this.tileTransform,this.brightness))}this.status="done",n(null,{buckets:D(a).filter((e=>!e.isEmpty())),featureIndex:s,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,lineAtlas:l,imageAtlas:t,brightness:c.brightness})}};if(!this.extraShadowCaster){const e=$(c.glyphDependencies,(e=>Object.keys(e).map(Number)));Object.keys(e).length?r.send("getGlyphs",{uid:this.uid,stacks:e,scope:this.scope},((e,t)=>{u||(u=e,d=t,_())}),void 0,!1,m):d={};const t=Object.keys(c.iconDependencies);t.length?r.send("getImages",{icons:t,source:this.source,scope:this.scope,tileID:this.tileID,type:"icons"},((e,t)=>{u||(u=e,p=t,_())}),void 0,!1,m):p={};const i=Object.keys(c.patternDependencies);i.length?r.send("getImages",{icons:i,source:this.source,scope:this.scope,tileID:this.tileID,type:"patterns"},((e,t)=>{u||(u=e,f=t,_())}),void 0,!1,m):f={}}_()}}function Fw(e,t,i,r){const n=new oa(t,{brightness:i});for(const t of e)t.recalculate(n,r)}class Nw{constructor(e){this.entries={},this.scheduler=e}request(e,t,i,r){const n=this.entries[e]=this.entries[e]||{callbacks:[]};if(n.result){const[e,i]=n.result;return this.scheduler?this.scheduler.add((()=>{r(e,i)}),t):r(e,i),()=>{}}return n.callbacks.push(r),n.cancel||(n.cancel=i(((i,r)=>{n.result=[i,r];for(const e of n.callbacks)this.scheduler?this.scheduler.add((()=>{e(i,r)}),t):e(i,r);setTimeout((()=>delete this.entries[e]),3e3)}))),()=>{n.result||(n.callbacks=n.callbacks.filter((e=>e!==r)),n.callbacks.length||(n.cancel(),delete this.entries[e]))}}}function jw(e,t,i){const r=JSON.stringify(e.request);return e.data&&(this.deduped.entries[r]={result:[null,e.data]}),this.deduped.request(r,{type:"parseTile",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom},(t=>{const r=Te(e.request,((e,r,n,o)=>{e?t(e):r&&t(null,{vectorTile:i?void 0:new cm(new Rm(r)),rawData:r,cacheControl:n,expires:o})}));return()=>{r.cancel(),t()}}),t)}class Uw extends kt{constructor(e,t,i,r){if(super(),this.id=e,this.dispatcher=i,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,R(this,O(t,["url","scheme","tileSize","promoteId"])),this._options=R({type:"vector"},t),this._collectResourceTiming=!!t.collectResourceTiming,512!==this.tileSize)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(r),this._tileWorkers={},this._deduped=new Nw}load(e){this._loaded=!1,this.fire(new It("dataloading",{dataType:"source"}));const t=Array.isArray(this.map._language)?this.map._language.join():this.map._language,i=this.map._worldview;this._tileJSONRequest=zw(this._options,this.map._requestManager,t,i,((r,n)=>{this._tileJSONRequest=null,this._loaded=!0,r?(t&&console.warn(`Ensure that your requested language string is a valid BCP-47 code or list of codes. Found: ${t}`),i&&2!==i.length&&console.warn(`Requested worldview strings must be a valid ISO alpha-2 code. Found: ${i}`),this.fire(new Ct(r))):n&&(R(this,n),n.bounds&&(this.tileBounds=new Lw(n.bounds,this.minzoom,this.maxzoom)),Ge(n.tiles,this.map._requestManager._customAccessToken),this.fire(new It("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new It("data",{dataType:"source",sourceDataType:"content"}))),e&&e(r)}))}loaded(){return this._loaded}hasTile(e){return!this.tileBounds||this.tileBounds.contains(e.canonical)}onAdd(e){this.map=e,this.load()}reload(){this.cancelTileJSONRequest();const e=va(this.id,this.scope);this.load((()=>this.map.style.clearSource(e)))}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest()}serialize(){return R({},this._options)}loadTile(e,t){const i=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme)),r={request:this.map._requestManager.transformRequest(i,ye.Tile),data:void 0,uid:e.uid,tileID:e.tileID,tileZoom:e.tileZoom,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,scope:this.scope,pixelRatio:dt.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId,isSymbolTile:e.isSymbolTile,brightness:this.map.style&&this.map.style.getBrightness()||0,extraShadowCaster:e.isExtraShadowCaster};if(r.request.collectResourceTiming=this._collectResourceTiming,e.actor&&"expired"!==e.state)"loading"===e.state?e.reloadCallback=t:e.request=e.actor.send("reloadTile",r,n.bind(this));else if(e.actor=this._tileWorkers[i]=this._tileWorkers[i]||this.dispatcher.getActor(),this.dispatcher.ready)e.request=e.actor.send("loadTile",r,n.bind(this),void 0,!0);else{const t=jw.call({deduped:this._deduped},r,((t,i)=>{t||!i?n.call(this,t):(r.data={cacheControl:i.cacheControl,expires:i.expires,rawData:i.rawData.slice(0)},e.actor&&e.actor.send("loadTile",r,n.bind(this),void 0,!0))}),!0);e.request={cancel:t}}function n(i,r){return delete e.request,e.aborted?t(null):i&&404!==i.status?t(i):(r&&r.resourceTiming&&(e.resourceTiming=r.resourceTiming),this.map._refreshExpiredTiles&&r&&e.setExpiryData(r),e.loadVectorData(r,this.map.painter),ge(this.dispatcher),t(null),void(e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)))}}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.actor&&e.actor.send("abortTile",{uid:e.uid,type:this.type,source:this.id,scope:this.scope})}unloadTile(e){e.actor&&e.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id,scope:this.scope}),e.destroy()}hasTransition(){return!1}afterUpdate(){this._tileWorkers={}}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}}class Vw extends kt{constructor(e,t,i,r){super(),this.id=e,this.dispatcher=i,this.setEventedParent(r),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=R({type:"raster"},t),R(this,O(t,["url","scheme","tileSize"]))}load(e){this._loaded=!1,this.fire(new It("dataloading",{dataType:"source"})),this._tileJSONRequest=zw(this._options,this.map._requestManager,null,null,((t,i)=>{this._tileJSONRequest=null,this._loaded=!0,t?this.fire(new Ct(t)):i&&(R(this,i),i.bounds&&(this.tileBounds=new Lw(i.bounds,this.minzoom,this.maxzoom)),Ge(i.tiles),this.fire(new It("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new It("data",{dataType:"source",sourceDataType:"content"}))),e&&e(t)}))}loaded(){return this._loaded}onAdd(e){this.map=e,this.load()}reload(){this.cancelTileJSONRequest();const e=va(this.id,this.scope);this.load((()=>this.map.style.clearSource(e)))}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest()}serialize(){return R({},this._options)}hasTile(e){return!this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(e,t){const i=dt.devicePixelRatio>=2,r=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),i,this.tileSize);e.request=Ie(this.map._requestManager.transformRequest(r,ye.Tile),((i,r,n,o)=>(delete e.request,e.aborted?(e.state="unloaded",t(null)):i?(e.state="errored",t(i)):r?(this.map._refreshExpiredTiles&&e.setExpiryData({cacheControl:n,expires:o}),e.setTexture(r,this.map.painter),e.state="loaded",ge(this.dispatcher),void t(null)):t(null))))}abortTile(e,t){e.request&&(e.request.cancel(),delete e.request),t()}unloadTile(e,t){e.texture&&e.texture instanceof Ay?(e.destroy(!0),e.texture&&e.texture instanceof Ay&&this.map.painter.saveTileTexture(e.texture)):e.destroy(),t()}hasTransition(){return!1}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}}function Gw(){return null!=xI.workerClass?new xI.workerClass:new t.Worker(xI.workerUrl)}const $w="mapboxgl_preloaded_worker_pool";class qw{constructor(){this.active={}}acquire(e){if(!this.workers)for(this.workers=[];this.workers.length{e.terminate()})),this.workers=null)}isPreloaded(){return!!this.active[$w]}numActive(){return Object.keys(this.active).length}}let Zw;function Hw(){return Zw||(Zw=new qw),Zw}qw.workerCount=2;let Ww,Xw,Yw,Kw=null;function Jw(){return Q()&&self.worker&&self.worker.dracoUrl?self.worker.dracoUrl:Xw||n.DRACO_URL}const Qw=5123,eT=5126,tT={5120:Int8Array,5121:Uint8Array,5122:Int16Array,[Qw]:Uint16Array,5125:Uint32Array,[eT]:Float32Array},iT={5120:"DT_INT8",5121:"DT_UINT8",5122:"DT_INT16",[Qw]:"DT_UINT16",5125:"DT_UINT32",[eT]:"DT_FLOAT32"},rT={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16};function nT(e,t,i){const r=i.json.bufferViews.length,n=i.buffers.length;t.bufferView=r,i.json.bufferViews[r]={buffer:n,byteLength:e.byteLength},i.buffers[n]=e}const oT="KHR_draco_mesh_compression";function sT(e,t){const i=e.extensions&&e.extensions[oT];if(!i)return;const r=new Yw.Decoder,n=uT(t,i.bufferView),o=new Yw.Mesh;if(!r.DecodeArrayToMesh(n,n.byteLength,o))throw new Error("Failed to decode Draco mesh");const s=t.json.accessors[e.indices],a=tT[s.componentType],l=s.count*a.BYTES_PER_ELEMENT,c=Yw._malloc(l);a===Uint16Array?r.GetTrianglesUInt16Array(o,l,c):r.GetTrianglesUInt32Array(o,l,c),nT(Yw.memory.buffer.slice(c,c+l),s,t),Yw._free(c);for(const n of Object.keys(i.attributes)){const s=r.GetAttributeByUniqueId(o,i.attributes[n]),a=t.json.accessors[e.attributes[n]],l=iT[a.componentType],c=a.count*rT[a.type]*tT[a.componentType].BYTES_PER_ELEMENT,h=Yw._malloc(c);r.GetAttributeDataArrayForAllPoints(o,s,Yw[l],c,h),nT(Yw.memory.buffer.slice(h,h+c),a,t),Yw._free(h)}r.destroy(),o.destroy(),delete e.extensions[oT]}const aT=1179937895,lT=new TextDecoder("utf8");function cT(e,t){return new URL(e,t).href}function hT(e,t,i,r){return fetch(cT(e.uri,r)).then((e=>e.arrayBuffer())).then((e=>{t.buffers[i]=e}))}function uT(e,t){const i=e.json.bufferViews[t];return new Uint8Array(e.buffers[i.buffer],i.byteOffset||0,i.byteLength)}function dT(e,i,r,n){if(e.uri){const o=cT(e.uri,n);return fetch(o).then((e=>e.blob())).then((e=>t.createImageBitmap(e))).then((e=>{i.images[r]=e}))}if(void 0!==e.bufferView){const n=uT(i,e.bufferView),o=new t.Blob([n],{type:e.mimeType});return t.createImageBitmap(o).then((e=>{i.images[r]=e}))}}function pT(e,t=0,i){const r={json:null,images:[],buffers:[]};if(new Uint32Array(e,t,1)[0]===aT){const i=new Uint32Array(e,t);let n=2;const o=(i[n++]>>2)-3,s=i[n++]>>2;if(n++,r.json=JSON.parse(lT.decode(i.subarray(n,n+s))),n+=s,n{const e=[],t=a&&a.includes(oT);if(t&&e.push(function(){if(!Yw)return Ww||(Ww=function(e){let t,i=null;function r(){t=new Uint8Array(i.buffer)}function n(){throw new Error("Unexpected Draco error.")}const o={a:{a:n,d:function(e,i,r){return t.copyWithin(e,i,i+r)},c:function(e){const n=t.length,o=Math.max(e>>>0,Math.ceil(1.2*n)),s=Math.ceil((o-n)/65536);try{return i.grow(s),r(),!0}catch(e){return!1}},b:n}};return(WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(e,o):e.then((e=>e.arrayBuffer())).then((e=>WebAssembly.instantiate(e,o)))).then((e=>{const{Rb:n,Qb:o,P:s,T:a,X:l,Ja:c,La:h,Qa:u,Va:d,Wa:p,eb:f,jb:m,f:_,e:g,yb:y,zb:x,Ab:v,Bb:b,Db:w,Gb:T}=e.instance.exports;i=g;const E=(()=>{let e=0,i=0,r=0,s=0;return a=>{r&&(n(s),n(e),i+=r,r=e=0),e||(i+=128,e=o(i));const l=a.length+7&-8;let c=e;l>=i&&(r=l,c=s=o(l));for(let e=0;e{Yw=e,Ww=void 0})))}()),o)for(let t=0;t{if(t&&s)for(const{primitives:e}of s)for(const t of e)sT(t,r);return r}))}))}function fT(e){return fetch(e).then((e=>e.arrayBuffer())).then((t=>pT(t,0,e)))}class mT{constructor(e,t,i){if(this.triangleCount=t.length/3,this.min=new y(0,0),this.max=new y(0,0),this.xScale=0,this.yScale=0,this.cellsX=0,this.cellsY=0,this.cells=[],this.payload=[],0===this.triangleCount||0===e.length||0===i)return;const r=e.map((e=>e.x)),n=e.map((e=>e.y));this.min=new y(Math.min(...r),Math.min(...n)),this.max=new y(Math.max(...r),Math.max(...n));const o=this.max.sub(this.min);o.x=Math.max(o.x,1),o.y=Math.max(o.y,1);const s=Math.max(o.x,o.y)/i;this.cellsX=Math.max(1,Math.ceil(o.x/s)),this.cellsY=Math.max(1,Math.ceil(o.y/s)),this.xScale=1/s,this.yScale=1/s;const a=[];for(let i=0;ie.cellIdx-t.cellIdx||e.triIdx-t.triIdx));let l=0;for(;lthis.max.x||this.min.x>t.x)return;if(e.y>this.max.y||this.min.y>t.y)return;this.lookup||(this.lookup=new Uint8Array(Math.ceil(this.triangleCount/8)));for(let e=0;e0){for(let n=0;n0){o.texcoordArray=new il;const e=t.json.accessors[n.TEXCOORD_0];o.texcoordArray.reserve(e.count);const i=gT(t,e);for(let t=0;t1&&r[r.length-1].equals(r[0])&&r.pop();let n=0;for(let e=0;e0&&r.reverse();const o=Bf(r.flatMap((e=>[e.x,e.y])),[]);return 0===o.length?null:{vertices:r,indices:o}}function wT(e){const t=[],i=[];let r=0;for(const n of e){r=t.length;const e=n.vertexArray.float32,o=n.indexArray.uint16;for(let i=0;i0&&([i[e+1],i[e+2]]=[i[e+2],i[e+1]])}return{vertices:t,indices:i}}function TT(e){const i=function(e,i){const r=[],n=t.WebGL2RenderingContext;if(e.json.textures)for(const t of e.json.textures){const o={magFilter:n.LINEAR,minFilter:n.NEAREST,wrapS:n.REPEAT,wrapT:n.REPEAT};void 0!==t.sampler&&Object.assign(o,e.json.samplers[t.sampler]),r.push({image:i[t.source],sampler:o,uploaded:!1})}return r}(e,e.images),r=function(e,t){const i=[];for(const r of e.json.meshes){const n=[];for(const i of r.primitives)n.push(yT(i,e,t));i.push(n)}return i}(e,i),{scenes:n,scene:o,nodes:s}=e.json,a=n?n[o||0].nodes:s,l=[];for(const t of a)l.push(xT(s[t],e,r));return function(e,t,i){const r={},n=new Set;for(let o=0;o0){const t=Array.from(n.values()).sort(((e,t)=>e-t));for(let i=t.length-1;i>=0;i--)e.splice(t[i],1)}}(l,a,e.json.nodes),l}function ET(e){e.heightmap=new Float32Array(4096),e.heightmap.fill(-1);const t=e.vertexArray.float32,i=e.aabb.min[0]-1,r=e.aabb.min[1]-1,n=Mv/(e.aabb.max[0]-i+2),o=Mv/(e.aabb.max[1]-r+2);for(let s=0;se.heightmap[c*Mv+l]&&(e.heightmap[c*Mv+l]=a)}}function AT(e,t){const i={};i.indexArray=new Ha,i.indexArray.reserve(4*e.length),i.vertexArray=new tl,i.vertexArray.reserve(10*e.length),i.colorArray=new Ra,i.vertexArray.reserve(10*e.length);let r=0;for(const n of e){const e=Math.min(10,Math.max(4,1.3*n.height))*t,o=[-n.normal[1],n.normal[0],0],s=Math.min(.29,.1*n.width/n.depth),a=n.width-2*n.depth*t*(s+.01),l=zu.scaleAndAdd([],n.pos,o,a/2),c=zu.scaleAndAdd([],n.pos,o,-a/2),h=[l[0],l[1],l[2]+n.height],u=[c[0],c[1],c[2]+n.height],d=zu.scaleAndAdd([],n.normal,o,s);zu.scale(d,d,e);const p=zu.scaleAndAdd([],n.normal,o,-s);zu.scale(p,p,e),zu.add(d,l,d),zu.add(p,c,p),l[2]+=.1,c[2]+=.1,i.vertexArray.emplaceBack(d[0],d[1],d[2]),i.vertexArray.emplaceBack(p[0],p[1],p[2]),i.vertexArray.emplaceBack(l[0],l[1],l[2]),i.vertexArray.emplaceBack(c[0],c[1],c[2]),i.vertexArray.emplaceBack(h[0],h[1],h[2]),i.vertexArray.emplaceBack(u[0],u[1],u[2]),i.vertexArray.emplaceBack(l[0],l[1],l[2]),i.vertexArray.emplaceBack(c[0],c[1],c[2]),i.vertexArray.emplaceBack(d[0],d[1],d[2]),i.vertexArray.emplaceBack(p[0],p[1],p[2]);const f=a/e/2;i.colorArray.emplaceBack(-f-s,-1,f,.8),i.colorArray.emplaceBack(f+s,-1,f,.8),i.colorArray.emplaceBack(-f,0,f,1.3),i.colorArray.emplaceBack(f,0,f,1.3),i.colorArray.emplaceBack(f+s,-.8,f,.7),i.colorArray.emplaceBack(f+s,-.8,f,.7),i.colorArray.emplaceBack(0,0,f,1.3),i.colorArray.emplaceBack(0,0,f,1.3),i.colorArray.emplaceBack(f+s,-1.2,f,.8),i.colorArray.emplaceBack(f+s,-1.2,f,.8),i.indexArray.emplaceBack(6+r,4+r,8+r),i.indexArray.emplaceBack(7+r,9+r,5+r),i.indexArray.emplaceBack(0+r,1+r,2+r),i.indexArray.emplaceBack(1+r,3+r,2+r),r+=10}const n={defined:!0,emissiveFactor:[0,0,0]},o={};return o.baseColorFactor=hi.white,n.pbrMetallicRoughness=o,i.material=n,i.aabb=new ed([1/0,1/0,1/0],[-1/0,-1/0,-1/0]),i}Ls(mT,"TriangleGridIndex");const ST={vector:Uw,raster:Vw,"raster-dem":class extends Vw{constructor(e,t,i,r){super(e,t,i,r),this.type="raster-dem",this.maxzoom=22,this._options=R({type:"raster-dem"},t),this.encoding=t.encoding||"mapbox"}loadTile(e,i){const r=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),!1,this.tileSize);function n(t,r){t&&(e.state="errored",i(t)),r&&(e.dem=r,e.dem.onDeserialize(),e.needsHillshadePrepare=!0,e.needsDEMTextureUpload=!0,e.state="loaded",i(null))}e.request=Ie(this.map._requestManager.transformRequest(r,ye.Tile),function(r,o,s,a){if(delete e.request,e.aborted)e.state="unloaded",i(null);else if(r)e.state="errored",i(r);else if(o){this.map._refreshExpiredTiles&&e.setExpiryData({cacheControl:s,expires:a});const i=t.ImageBitmap&&o instanceof t.ImageBitmap&&ut(),r=1-(o.width-((l=o.width)<=1?1:Math.pow(2,Math.floor(Math.log(l)/Math.LN2))))/2;r<1||e.neighboringTiles||(e.neighboringTiles=this._getNeighboringTiles(e.tileID));const c=i?o:dt.getImageData(o,r),h={uid:e.uid,coord:e.tileID,source:this.id,scope:this.scope,rawImageData:c,encoding:this.encoding,padding:r};e.actor&&"expired"!==e.state||(e.actor=this.dispatcher.getActor(),e.actor.send("loadDEMTile",h,n.bind(this),void 0,!0))}var l}.bind(this))}_getNeighboringTiles(e){const t=e.canonical,i=Math.pow(2,t.z),r=(t.x-1+i)%i,n=0===t.x?e.wrap-1:e.wrap,o=(t.x+1+i)%i,s=t.x+1===i?e.wrap+1:e.wrap,a={};return a[new $u(e.overscaledZ,n,t.z,r,t.y).key]={backfilled:!1},a[new $u(e.overscaledZ,s,t.z,o,t.y).key]={backfilled:!1},t.y>0&&(a[new $u(e.overscaledZ,n,t.z,r,t.y-1).key]={backfilled:!1},a[new $u(e.overscaledZ,e.wrap,t.z,t.x,t.y-1).key]={backfilled:!1},a[new $u(e.overscaledZ,s,t.z,o,t.y-1).key]={backfilled:!1}),t.y+1{if(this._loaded=!0,this._pendingLoad=null,e)this.fire(new Ct(e));else{const e={dataType:"source",sourceDataType:this._metadataFired?"content":"metadata"};this._collectResourceTiming&&t&&t.resourceTiming&&t.resourceTiming[this.id]&&(e.resourceTiming=t.resourceTiming[this.id]),this.fire(new It("data",e)),this._metadataFired=!0}this._coalesce&&(this._updateWorkerData(),this._coalesce=!1)}))}loaded(){return this._loaded}loadTile(e,t){const i=e.actor?"reloadTile":"loadTile";e.actor=this.actor;const r={type:this.type,uid:e.uid,tileID:e.tileID,tileZoom:e.tileZoom,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,scope:this.scope,pixelRatio:dt.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId,brightness:this.map.style&&this.map.style.getBrightness()||0};e.request=this.actor.send(i,r,((r,n)=>(delete e.request,e.destroy(),e.aborted?t(null):r?t(r):(e.loadVectorData(n,this.map.painter,"reloadTile"===i),t(null)))),void 0,"loadTile"===i)}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.aborted=!0}unloadTile(e){this.actor.send("removeTile",{uid:e.uid,type:this.type,source:this.id,scope:this.scope}),e.destroy()}onRemove(){this._pendingLoad&&this._pendingLoad.cancel()}serialize(){return R({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}},video:class extends Jb{constructor(e,t,i,r){super(e,t,i,r),this.roundZoom=!0,this.type="video",this.options=t}load(){this._loaded=!1;const e=this.options;this.urls=[];for(const t of e.urls)this.urls.push(this.map._requestManager.transformRequest(t,ye.Source).url);!function(e,i){const r=t.document.createElement("video");r.muted=!0,r.onloadstart=function(){i(null,r)};for(let i=0;i{this._loaded=!0,e?this.fire(new Ct(e)):t&&(this.video=t,this.video.loop=!0,this.video.setAttribute("playsinline",""),this.video.addEventListener("playing",(()=>{this.map.triggerRepaint()})),this.map&&this.video.play(),this._finishLoading())}))}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(e){if(this.video){const t=this.video.seekable;et.end(0)?this.fire(new Ct(new zt(`sources.${this.id}`,null,`Playback for this video can be set only between the ${t.start(0)} and ${t.end(0)}-second mark.`))):this.video.currentTime=e}}getVideo(){return this.video}onAdd(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const e=this.map.painter.context,t=e.gl;this.texture?this.video.paused||(this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE),t.texSubImage2D(t.TEXTURE_2D,0,0,0,t.RGBA,t.UNSIGNED_BYTE,this.video)):(this.texture=new Ay(e,this.video,t.RGBA),this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE),this.width=this.video.videoWidth,this.height=this.video.videoHeight),this._prepareData(e)}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}},image:Jb,model:class extends kt{constructor(e,t,i,r){super(),this.id=e,this.type="model",this.models=[],this._loaded=!1,this._options=t}load(){const e=[];for(const t in this._options.models){const i=this._options.models[t],r=fT(this.map._requestManager.transformRequest(i.uri,ye.Model).url).then((e=>{if(!e)return;const r=TT(e),n=new Cv(t,i.position,i.orientation,r);n.computeBoundsAndApplyParent(),this.models.push(n)})).catch((e=>{this.fire(new Ct(new Error(`Could not load model ${t} from ${i.uri}: ${e.message}`)))}));e.push(r)}return Promise.allSettled(e).then((()=>{this._loaded=!0,this.fire(new It("data",{dataType:"source",sourceDataType:"metadata"}))})).catch((e=>{this.fire(new Ct(new Error(`Could not load models: ${e.message}`)))}))}onAdd(e){this.map=e,this.load()}hasTransition(){return!1}loaded(){return this._loaded}getModels(){return this.models}loadTile(e,t){}serialize(){return{type:"model"}}},"batched-model":class extends kt{constructor(e,t,i,r){super(),this.type="batched-model",this.id=e,this.tileSize=512,this._options=t,this.tiles=this._options.tiles,this.maxzoom=t.maxzoom||19,this.minzoom=t.minzoom||0,this.roundZoom=!0,this.usedInConflation=!0,this.dispatcher=i,this.reparseOverscaled=!1,this.scheme="xyz",this._loaded=!1,this.setEventedParent(r)}onAdd(e){this.map=e,this.load()}load(e){this._loaded=!1,this.fire(new It("dataloading",{dataType:"source"}));const t=Array.isArray(this.map._language)?this.map._language.join():this.map._language,i=this.map._worldview;this._tileJSONRequest=zw(this._options,this.map._requestManager,t,i,((r,n)=>{this._tileJSONRequest=null,this._loaded=!0,r?(t&&console.warn(`Ensure that your requested language string is a valid BCP-47 code or list of codes. Found: ${t}`),i&&2!==i.length&&console.warn(`Requested worldview strings must be a valid ISO alpha-2 code. Found: ${i}`),this.fire(new Ct(r))):n&&(R(this,n),n.bounds&&(this.tileBounds=new Lw(n.bounds,this.minzoom,this.maxzoom)),Ge(n.tiles,this.map._requestManager._customAccessToken),this.fire(new It("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new It("data",{dataType:"source",sourceDataType:"content"}))),e&&e(r)}))}hasTransition(){return!1}hasTile(e){return!this.tileBounds||this.tileBounds.contains(e.canonical)}loaded(){return this._loaded}loadTile(e,t){const i=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme)),r={request:this.map._requestManager.transformRequest(i,ye.Tile),data:void 0,uid:e.uid,tileID:e.tileID,tileZoom:e.tileZoom,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,scope:this.scope,showCollisionBoxes:this.map.showCollisionBoxes,isSymbolTile:e.isSymbolTile,brightness:this.map.style&&this.map.style.getBrightness()||0};if(e.actor&&"expired"!==e.state)if("loading"===e.state)e.reloadCallback=t;else{if(e.buckets){const t=Object.values(e.buckets);for(const e of t)e.dirty=!0;return void(e.state="loaded")}e.request=e.actor.send("reloadTile",r,n.bind(this))}else e.actor=this.dispatcher.getActor(),e.request=e.actor.send("loadTile",r,n.bind(this),void 0,!0);function n(i,r){return e.aborted?t(null):i&&404!==i.status?t(i):(r&&(r.resourceTiming&&(e.resourceTiming=r.resourceTiming),this.map._refreshExpiredTiles&&e.setExpiryData(r),e.buckets={...e.buckets,...r.buckets}),e.state="loaded",void t(null))}}serialize(){return R({},this._options)}},canvas:class extends Jb{constructor(e,i,r,n){super(e,i,r,n),i.coordinates?Array.isArray(i.coordinates)&&4===i.coordinates.length&&!i.coordinates.some((e=>!Array.isArray(e)||2!==e.length||e.some((e=>"number"!=typeof e))))||this.fire(new Ct(new zt(`sources.${e}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new Ct(new zt(`sources.${e}`,null,'missing required property "coordinates"'))),i.animate&&"boolean"!=typeof i.animate&&this.fire(new Ct(new zt(`sources.${e}`,null,'optional "animate" property must be a boolean value'))),i.canvas?"string"==typeof i.canvas||i.canvas instanceof t.HTMLCanvasElement||this.fire(new Ct(new zt(`sources.${e}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new Ct(new zt(`sources.${e}`,null,'missing required property "canvas"'))),this.options=i,this.animate=void 0===i.animate||i.animate}load(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.HTMLCanvasElement?this.options.canvas:t.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new Ct(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())}getCanvas(){return this.canvas}onAdd(e){this.map=e,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),this._hasInvalidDimensions())return;if(0===Object.keys(this.tiles).length)return;const t=this.map.painter.context;this.texture?!e&&!this._playing||this.texture instanceof Sy||this.texture.update(this.canvas,{premultiply:!0}):this.texture=new Ay(t,this.canvas,t.gl.RGBA,{premultiply:!0}),this._prepareData(t)}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const e of[this.canvas.width,this.canvas.height])if(isNaN(e)||e<=0)return!0;return!1}},custom:class extends kt{constructor(e,t,i,r){super(),this.id=e,this.type="custom",this._dataType="raster",this._dispatcher=i,this._implementation=t,this.setEventedParent(r),this.scheme="xyz",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this._loaded=!1,this.roundZoom=!0,this._implementation||this.fire(new Ct(new Error(`Missing implementation for ${this.id} custom source`))),this._implementation.loadTile||this.fire(new Ct(new Error(`Missing loadTile implementation for ${this.id} custom source`))),this._implementation.bounds&&(this.tileBounds=new Lw(this._implementation.bounds,this.minzoom,this.maxzoom)),t.update=this._update.bind(this),t.clearTiles=this._clearTiles.bind(this),t.coveringTiles=this._coveringTiles.bind(this),R(this,O(t,["dataType","scheme","minzoom","maxzoom","tileSize","attribution","minTileCacheSize","maxTileCacheSize"]))}serialize(){return O(this,["type","scheme","minzoom","maxzoom","tileSize","attribution"])}load(){this._loaded=!0,this.fire(new It("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new It("data",{dataType:"source",sourceDataType:"content"}))}loaded(){return this._loaded}onAdd(e){this._map=e,this._loaded=!1,this.fire(new It("dataloading",{dataType:"source"})),this._implementation.onAdd&&this._implementation.onAdd(e),this.load()}onRemove(e){this._implementation.onRemove&&this._implementation.onRemove(e)}hasTile(e){if(this._implementation.hasTile){const{x:t,y:i,z:r}=e.canonical;return this._implementation.hasTile({x:t,y:i,z:r})}return!this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(e,i){const{x:r,y:n,z:o}=e.tileID.canonical,s=new t.AbortController;e.request=Promise.resolve(this._implementation.loadTile({x:r,y:n,z:o},{signal:s.signal})).then(function(r){return delete e.request,e.aborted?(e.state="unloaded",i(null)):void 0===r?(e.state="errored",i(null)):null===r?(this.loadTileData(e,{width:this.tileSize,height:this.tileSize,data:null}),e.state="loaded",i(null)):function(e){return e instanceof t.ImageData||e instanceof t.HTMLCanvasElement||e instanceof t.ImageBitmap||e instanceof t.HTMLImageElement}(r)?(this.loadTileData(e,r),e.state="loaded",void i(null)):(e.state="errored",i(new Error(`Can't infer data type for ${this.id}, only raster data supported at the moment`)))}.bind(this)).catch((t=>{20!==t.code&&(e.state="errored",i(t))})),e.request.cancel=()=>s.abort()}loadTileData(e,t){e.setTexture(t,this._map.painter)}unloadTile(e,t){if(e.texture&&e.texture instanceof Ay?(e.destroy(!0),e.texture&&e.texture instanceof Ay&&this._map.painter.saveTileTexture(e.texture)):e.destroy(),this._implementation.unloadTile){const{x:t,y:i,z:r}=e.tileID.canonical;this._implementation.unloadTile({x:t,y:i,z:r})}t()}abortTile(e,t){e.request&&e.request.cancel&&(e.request.cancel(),delete e.request),t()}hasTransition(){return!1}_coveringTiles(){return this._map.transform.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,roundZoom:this.roundZoom}).map((e=>({x:e.canonical.x,y:e.canonical.y,z:e.canonical.z})))}_clearTiles(){const e=va(this.id,this.scope);this._map.style.clearSource(e)}_update(){this.fire(new It("data",{dataType:"source",sourceDataType:"content"}))}}},MT=function(e,t,i,r){const n=new ST[t.type](e,t,i,r);if(n.id!==e)throw new Error(`Expected Source id to be ${e} instead of ${n.id}`);return V(["load","abort","unload","serialize","prepare"],n),n};function IT(e,t){const i=Su.identity([]);return Su.scale(i,i,[.5*e.width,.5*-e.height,1]),Su.translate(i,i,[1,-1,0]),Su.multiply(i,i,e.calculateProjMatrix(t.toUnwrapped())),Float32Array.from(i)}function CT(e,t,i,r,n,o,s,a=!1){const l=e.tilesIn(r,s,a);l.sort(PT);const c=[];for(const r of l)c.push({wrappedTileID:r.tile.tileID.wrapped().key,queryResults:r.tile.queryRenderedFeatures(t,i,e._state,r,n,o,IT(e.transform,r.tile.tileID),a)});const h=function(e){const t={},i={};for(const r of e){const e=r.queryResults,n=r.wrappedTileID,o=i[n]=i[n]||{};for(const i in e){const r=e[i],n=o[i]=o[i]||{},s=t[i]=t[i]||[];for(const e of r)n[e.featureIndex]||(n[e.featureIndex]=!0,s.push(e))}}return t}(c);for(const t in h)h[t].forEach((t=>{const i=t.feature,r=i.layer;r&&"background"!==r.type&&"sky"!==r.type&&"slot"!==r.type&&(i.source=r.source,r["source-layer"]&&(i.sourceLayer=r["source-layer"]),i.state=void 0!==i.id?e.getFeatureState(r["source-layer"],i.id):{})}));return h}function kT(e,t){const i=e.getRenderableIds().map((t=>e.getTileByID(t))),r=[],n={};for(let e=0;e0?i.paint.get("fill-extrusion-vertical-scale"):0);let o=r?r.getTile(t):null;if(!o&&r&&t.canonical.z>r.getSource().minzoom){let e=t.scaledTo(Math.min(r.getSource().maxzoom,t.overscaledZ-1));for(;e.overscaledZ>=r.getSource().minzoom&&(o=r.getTile(e),!o&&0!==e.overscaledZ);)e=e.scaledTo(e.overscaledZ-1)}this.currentBuildingBuckets.push({bucket:o?o.getBucket(i):null,tileID:o?o.tileID:t,verticalScale:n})}e.hasAnyZOffset=!1;let i=!1;for(let r=0;r{e in t&&(i[e]=t[e])})),i}function RT(e){e=e.slice();const t=Object.create(null);for(let i=0;i0?(r-o)/s:0;return this.points[n].mult(1-a).add(this.points[t].mult(a))}}class qT{constructor(e,t,i){const r=this.boxCells=[],n=this.circleCells=[];this.xCellCount=Math.ceil(e/i),this.yCellCount=Math.ceil(t/i);for(let e=0;ethis.width||r<0||t>this.height)return!n&&[];const s=[];if(e<=0&&t<=0&&this.width<=i&&this.height<=r){if(n)return!0;for(let e=0;e0:s}_queryCircle(e,t,i,r,n){const o=e-i,s=e+i,a=t-i,l=t+i;if(s<0||o>this.width||l<0||a>this.height)return!r&&[];const c=[];return this._forEachCell(o,a,s,l,this._queryCellCircle,c,{hitTest:r,circle:{x:e,y:t,radius:i},seenUids:{box:{},circle:{}}},n),r?c.length>0:c}query(e,t,i,r,n){return this._query(e,t,i,r,!1,n)}hitTest(e,t,i,r,n){return this._query(e,t,i,r,!0,n)}hitTestCircle(e,t,i,r){return this._queryCircle(e,t,i,!0,r)}_queryCell(e,t,i,r,n,o,s,a){const l=s.seenUids,c=this.boxCells[n];if(null!==c){const n=this.bboxes;for(const h of c)if(!l.box[h]){l.box[h]=!0;const c=4*h;if(e<=n[c+2]&&t<=n[c+3]&&i>=n[c+0]&&r>=n[c+1]&&(!a||a(this.boxKeys[h]))){if(s.hitTest)return o.push(!0),!0;o.push({key:this.boxKeys[h],x1:n[c],y1:n[c+1],x2:n[c+2],y2:n[c+3]})}}}const h=this.circleCells[n];if(null!==h){const n=this.circles;for(const c of h)if(!l.circle[c]){l.circle[c]=!0;const h=3*c;if(this._circleAndRectCollide(n[h],n[h+1],n[h+2],e,t,i,r)&&(!a||a(this.circleKeys[c]))){if(s.hitTest)return o.push(!0),!0;{const e=n[h],t=n[h+1],i=n[h+2];o.push({key:this.circleKeys[c],x1:e-i,y1:t-i,x2:e+i,y2:t+i})}}}}}_queryCellCircle(e,t,i,r,n,o,s,a){const l=s.circle,c=s.seenUids,h=this.boxCells[n];if(null!==h){const e=this.bboxes;for(const t of h)if(!c.box[t]){c.box[t]=!0;const i=4*t;if(this._circleAndRectCollide(l.x,l.y,l.radius,e[i+0],e[i+1],e[i+2],e[i+3])&&(!a||a(this.boxKeys[t])))return o.push(!0),!0}}const u=this.circleCells[n];if(null!==u){const e=this.circles;for(const t of u)if(!c.circle[t]){c.circle[t]=!0;const i=3*t;if(this._circlesCollide(e[i],e[i+1],e[i+2],l.x,l.y,l.radius)&&(!a||a(this.circleKeys[t])))return o.push(!0),!0}}}_forEachCell(e,t,i,r,n,o,s,a){const l=this._convertToXCellCoord(e),c=this._convertToYCellCoord(t),h=this._convertToXCellCoord(i),u=this._convertToYCellCoord(r);for(let d=l;d<=h;d++)for(let l=c;l<=u;l++)if(n.call(this,e,t,i,r,this.xCellCount*l+d,o,s,a))return}_convertToXCellCoord(e){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(e*this.xScale)))}_convertToYCellCoord(e){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(e*this.yScale)))}_circlesCollide(e,t,i,r,n,o){const s=r-e,a=n-t,l=i+o;return l*l>s*s+a*a}_circleAndRectCollide(e,t,i,r,n,o,s){const a=(o-r)/2,l=Math.abs(e-(r+a));if(l>a+i)return!1;const c=(s-n)/2,h=Math.abs(t-(n+c));if(h>c+i)return!1;if(l<=a||h<=c)return!0;const u=l-a,d=h-c;return u*u+d*d<=i*i}}const ZT=100;class HT{constructor(e,t,i=new qT(e.width+200,e.height+200,25),r=new qT(e.width+200,e.height+200,25)){this.transform=e,this.grid=i,this.ignoredGrid=r,this.pitchfactor=Math.cos(e._pitch)*e.cameraToCenterDistance,this.screenRightBoundary=e.width+ZT,this.screenBottomBoundary=e.height+ZT,this.gridRightBoundary=e.width+200,this.gridBottomBoundary=e.height+200,this.fogState=t}placeCollisionBox(e,t,i,r,n,o,s,a){let l=i.projectedAnchorX,c=i.projectedAnchorY,h=i.projectedAnchorZ;const u=i.elevation,d=i.tileID,p=e.getProjection();if(u&&d){const[e,t,r]=p.upVector(d.canonical,i.tileAnchorX,i.tileAnchorY),n=p.upVectorScale(d.canonical,this.transform.center.lat,this.transform.worldSize).metersToTile;l+=e*u*n,c+=t*u*n,h+=r*u*n}const f=this.projectAndGetPerspectiveRatio(s,l,c,h,i.tileID,"globe"===p.name||!!u||this.transform.pitch>0,p),m=o*f.perspectiveRatio,_=(i.x1*t+r.x-i.padding)*m+f.point.x,g=(i.y1*t+r.y-i.padding)*m+f.point.y,y=(i.x2*t+r.x+i.padding)*m+f.point.x,x=(i.y2*t+r.y+i.padding)*m+f.point.y,v=f.perspectiveRatio<=.55||f.occluded;return!this.isInsideGrid(_,g,y,x)||!n&&this.grid.hitTest(_,g,y,x,a)||v?{box:[],offscreen:!1,occluded:f.occluded}:{box:[_,g,y,x],offscreen:this.isOffscreen(_,g,y,x),occluded:!1}}placeCollisionCircles(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){const m=[],_=this.transform.elevation,g=e.getProjection(),x=_?_.getAtTileOffsetFunc(f,this.transform.center.lat,this.transform.worldSize,g):null,v=new y(i.tileAnchorX,i.tileAnchorY);let{x:b,y:w,z:T}=g.projectTilePoint(v.x,v.y,f.canonical);if(x){const[e,t,i]=x(v);b+=e,w+=t,T+=i}const E="globe"===g.name,A=this.projectAndGetPerspectiveRatio(s,b,w,T,f,E||!!_||this.transform.pitch>0,g),{perspectiveRatio:S}=A,M=(h?o/S:o*S)/u_,I=cv(b,w,T,a),C=A.signedDistanceFromCamera>0?pv(M,n,i.lineOffsetX*M,i.lineOffsetY*M,!1,I,v,i,r,a,{},_&&!h?x:null,h&&!!_,g,f,h):null;let k=!1,P=!1,z=!0;if(C&&!A.occluded){const e=.5*d*S+p,i=new y(-100,-100),r=new y(this.screenRightBoundary,this.screenBottomBoundary),n=new $T,{first:o,last:s}=C,a=o.path.length;let h=[];for(let e=a-1;e>=1;e--)h.push(o.path[e]);for(let e=1;e(x&&!E&&(i=x(re[3]<=0))&&(h=[]));let _=[];if(h.length>0){let e=1/0,t=-1/0,n=1/0,o=-1/0;for(const i of h)e=Math.min(e,i[0]),n=Math.min(n,i[1]),t=Math.max(t,i[0]),o=Math.max(o,i[1]);t>=i.x&&e<=r.x&&o>=i.y&&n<=r.y&&(_=[h.map((e=>new y(e[0],e[1])))],(er.x||nr.y)&&(_=Y_(_,i.x,i.y,r.x,r.y)))}for(const i of _){n.reset(i,.25*e);let r=0;r=n.length<=.5*e?1:Math.ceil(n.paddedLength/f)+1;for(let i=0;i0){if(yu.transformMat4(a,a,e),this.fogState&&n&&"globe"!==s.name){const e=function(e,t,i,r,n,o){const s=o.calculateFogTileMatrix(n),a=[t,i,r];return zu.transformMat4(a,a,s),mw(e,zu.length(a),o.pitch,o._fov)}(this.fogState,t,i,r,n.toUnwrapped(),this.transform);l=e>.9}}else vv(a,a,e);const c=a[3];return{point:new y((a[0]/c+1)/2*this.transform.width+ZT,(-a[1]/c+1)/2*this.transform.height+ZT),perspectiveRatio:Math.min(.5+this.transform.getCameraToCenterDistance(s)/c*.5,1.5),signedDistanceFromCamera:c,occluded:o&&a[2]>c||l}}isOffscreen(e,t,i,r){return i=this.screenRightBoundary||rthis.screenBottomBoundary}isInsideGrid(e,t,i,r){return i>=0&&e=0&&te.collisionGroupID===t}}return this.collisionGroups[e]}}function rE(e,t,i,r,n){const{horizontalAlign:o,verticalAlign:s}=F_(e),a=-(o-.5)*t,l=-(s-.5)*i,c=xg(e,r);return new y(a+c[0]*n,l+c[1]*n)}function nE(e,t,i,r,n){const o=new y(e,t);return i&&o._rotate(r?n:-n),o}class oE{constructor(e,t,i,r,n,o){this.transform=e.clone(),this.projection=e.projection.name,this.collisionIndex=new HT(this.transform,n),this.buildingIndex=o,this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=t,this.retainedQueryData={},this.collisionGroups=new iE(i),this.collisionCircleArrays={},this.prevPlacement=r,r&&(r.prevPlacement=void 0),this.placedOrientations={}}getBucketParts(e,t,i,r){const n=i.getBucket(t),o=i.latestFeatureIndex;if(!n||!o||t.fqid!==n.layerIds[0])return;const s=n.layers[0].layout,a=i.collisionBoxArray,l=Math.pow(2,this.transform.zoom-i.tileID.overscaledZ),c=i.tileSize/cr,h=i.tileID.toUnwrapped();this.transform.setProjection(n.projection);const u=(d=i.tileID,p=n.getProjection(),f=this.transform,p.name===this.projection?f.calculateProjMatrix(d.toUnwrapped()):WT(f,p,d));var d,p,f;const m="map"===s.get("text-pitch-alignment"),_="map"===s.get("text-rotation-alignment");t.compileFilter();const g=t.dynamicFilter(),y=t.dynamicFilterNeedsFeature(),x=this.transform.calculatePixelsToTileUnitsMatrix(i),v=av(u,i.tileID.canonical,m,_,this.transform,n.getProjection(),x);let b=null;if(m){const e=lv(u,i.tileID.canonical,m,_,this.transform,n.getProjection(),x);b=Su.multiply([],this.transform.labelPlaneMatrix,e)}let w=null;g&&i.latestFeatureIndex&&(w={unwrappedTileID:h,dynamicFilter:g,dynamicFilterNeedsFeature:y,featureIndex:i.latestFeatureIndex}),this.retainedQueryData[n.bucketInstanceId]=new tE(n.bucketInstanceId,o,n.sourceLayerIndex,n.index,i.tileID);const T={bucket:n,layout:s,posMatrix:u,textLabelPlaneMatrix:v,labelToScreenMatrix:b,clippingData:w,scale:l,textPixelRatio:c,holdingForFade:i.holdingForFade(),collisionBoxArray:a,partiallyEvaluatedTextSize:m_(n.textSizeData,this.transform.zoom),partiallyEvaluatedIconSize:m_(n.iconSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(n.sourceID)};if(r)for(const t of n.sortKeyRanges){const{sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n}=t;e.push({sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n,parameters:T})}else e.push({symbolInstanceStart:0,symbolInstanceEnd:n.symbolInstances.length,parameters:T})}attemptAnchorPlacement(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g){const{textOffset0:y,textOffset1:x,crossTileID:v}=u,b=[y,x],w=rE(e,i,r,b,n),T=this.collisionIndex.placeCollisionBox(p,n,t,nE(w.x,w.y,o,s,this.transform.angle),h,a,l,c.predicate);if(m){const e=p.getSymbolInstanceIconSize(g,this.transform.zoom,u.placedIconSymbolIndex);if(0===this.collisionIndex.placeCollisionBox(p,e,m,nE(w.x,w.y,o,s,this.transform.angle),h,a,l,c.predicate).box.length)return}if(T.box.length>0){let t;return this.prevPlacement&&this.prevPlacement.variableOffsets[v]&&this.prevPlacement.placements[v]&&this.prevPlacement.placements[v].text&&(t=this.prevPlacement.variableOffsets[v].anchor),this.variableOffsets[v]={textOffset:b,width:i,height:r,anchor:e,textScale:n,prevAnchor:t},this.markUsedJustification(p,e,u,f),p.allowVerticalPlacement&&(this.markUsedOrientation(p,f,u),this.placedOrientations[v]=f),{shift:w,placedGlyphBoxes:T}}}placeLayerBucketPart(e,t,i,r){const{bucket:n,layout:o,posMatrix:s,textLabelPlaneMatrix:a,labelToScreenMatrix:l,clippingData:c,textPixelRatio:h,holdingForFade:u,collisionBoxArray:d,partiallyEvaluatedTextSize:p,partiallyEvaluatedIconSize:f,collisionGroup:m}=e.parameters,_=o.get("text-optional"),g=o.get("icon-optional"),x=o.get("text-allow-overlap"),v=o.get("icon-allow-overlap"),b="map"===o.get("text-rotation-alignment"),w="map"===o.get("text-pitch-alignment"),T="viewport-y"===o.get("symbol-z-order"),E=o.get("symbol-z-elevate");this.transform.setProjection(n.projection);let A=x&&(v||!n.hasIconData()||g),S=v&&(x||!n.hasTextData()||_);!n.collisionArrays&&d&&n.deserializeCollisionBoxes(d),i&&r&&n.updateCollisionDebugBuffers(this.transform.zoom,d);const M=(e,r,d)=>{const{crossTileID:T,numVerticalGlyphVertices:E}=e;if(c){const i={zoom:this.transform.zoom,pitch:this.transform.pitch};let r=null;if(c.dynamicFilterNeedsFeature){const t=this.retainedQueryData[n.bucketInstanceId];r=c.featureIndex.loadFeature({featureIndex:e.featureIndex,bucketIndex:t.bucketIndex,sourceLayerIndex:t.sourceLayerIndex,layoutVertexArrayOffset:0})}if(!(0,c.dynamicFilter)(i,r,this.retainedQueryData[n.bucketInstanceId].tileID.canonical,new y(e.tileAnchorX,e.tileAnchorY),this.transform.calculateDistanceTileData(c.unwrappedTileID)))return this.placements[T]=new QT(!1,!1,!1,!0),void t.add(T)}if(t.has(T))return;if(u)return void(this.placements[T]=new QT(!1,!1,!1));let M=!1,I=!1,C=!0,k=!1,P=!1,z=null,L={box:null,offscreen:null,occluded:null},D={box:null,offscreen:null,occluded:null},R=null,O=null,B=null,F=0,N=0,j=0;d.textFeatureIndex?F=d.textFeatureIndex:e.useRuntimeCollisionCircles&&(F=e.featureIndex),d.verticalTextFeatureIndex&&(N=d.verticalTextFeatureIndex);const U=t=>{t.tileID=this.retainedQueryData[n.bucketInstanceId].tileID;const i=this.transform.elevation;t.elevation=e.zOffset+(i?i.getAtTileOffset(t.tileID,t.tileAnchorX,t.tileAnchorY):0)},V=d.textBox;if(V){U(V);const t=t=>{let i=S_.horizontal;if(n.allowVerticalPlacement&&!t&&this.prevPlacement){const t=this.prevPlacement.placedOrientations[T];t&&(this.placedOrientations[T]=t,i=t,this.markUsedOrientation(n,i,e))}return i},i=(e,t)=>{if(n.allowVerticalPlacement&&E>0&&d.verticalTextBox){for(const i of n.writingModes)if(i===S_.vertical?(L=t(),D=L):L=e(),L&&L.box&&L.box.length)break}else L=e()};if(o.get("text-variable-anchor")){let a=o.get("text-variable-anchor");if(this.prevPlacement&&this.prevPlacement.variableOffsets[T]){const e=this.prevPlacement.variableOffsets[T];a.indexOf(e.anchor)>0&&(a=a.filter((t=>t!==e.anchor)),a.unshift(e.anchor))}const l=(t,i,o)=>{const l=n.getSymbolInstanceTextSize(p,e,this.transform.zoom,r),c=(t.x2-t.x1)*l+2*t.padding,u=(t.y2-t.y1)*l+2*t.padding,d=e.hasIconTextFit&&!v?i:null;d&&U(d);let _={box:[],offscreen:!1,occluded:!1};const g=x?2*a.length:a.length;for(let i=0;i=a.length,e,r,n,o,d,p,f);if(g&&(_=g.placedGlyphBoxes,_&&_.box&&_.box.length)){M=!0,z=g.shift;break}}return _};i((()=>l(V,d.iconBox,S_.horizontal)),(()=>{const e=d.verticalTextBox;return e&&U(e),n.allowVerticalPlacement&&!(L&&L.box&&L.box.length)&&E>0&&e?l(e,d.verticalIconBox,S_.vertical):{box:null,offscreen:null,occluded:null}})),L&&(M=L.box,C=L.offscreen,k=L.occluded);const c=t(!(!L||!L.box));if(!M&&this.prevPlacement){const t=this.prevPlacement.variableOffsets[T];t&&(this.variableOffsets[T]=t,this.markUsedJustification(n,t.anchor,e,c))}}else{const o=(t,i)=>{const o=n.getSymbolInstanceTextSize(p,e,this.transform.zoom,r),a=this.collisionIndex.placeCollisionBox(n,o,t,new y(0,0),x,h,s,m.predicate);return a&&a.box&&a.box.length&&(this.markUsedOrientation(n,i,e),this.placedOrientations[T]=i),a};i((()=>o(V,S_.horizontal)),(()=>{const e=d.verticalTextBox;return n.allowVerticalPlacement&&E>0&&e?(U(e),o(e,S_.vertical)):{box:null,offscreen:null,occluded:null}})),t(!!(L&&L.box&&L.box.length))}}if(R=L,M=R&&R.box&&R.box.length>0,C=R&&R.offscreen,k=R&&R.occluded,e.useRuntimeCollisionCircles){const t=n.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex>=0?e.centerJustifiedTextSymbolIndex:e.verticalPlacedTextSymbolIndex),r=f_(n.textSizeData,p,t),c=o.get("text-padding");O=this.collisionIndex.placeCollisionCircles(n,x,t,n.lineVertexArray,n.glyphOffsetArray,r,s,a,l,i,w,m.predicate,e.collisionCircleDiameter*r/u_,c,this.retainedQueryData[n.bucketInstanceId].tileID),M=x||O.circles.length>0&&!O.collisionDetected,C=C&&O.offscreen,k=O.occluded}if(d.iconFeatureIndex&&(j=d.iconFeatureIndex),d.iconBox){const t=t=>{U(t);const i=e.hasIconTextFit&&z?nE(z.x,z.y,b,w,this.transform.angle):new y(0,0),r=n.getSymbolInstanceIconSize(f,this.transform.zoom,e.placedIconSymbolIndex);return this.collisionIndex.placeCollisionBox(n,r,t,i,v,h,s,m.predicate)};D&&D.box&&D.box.length&&d.verticalIconBox?(B=t(d.verticalIconBox),I=B.box.length>0):(B=t(d.iconBox),I=B.box.length>0),C=C&&B.offscreen,P=B.occluded}const G=_||0===e.numHorizontalGlyphVertices&&0===E,$=g||0===e.numIconVertices;if(G||$?$?G||(I=I&&M):M=I&&M:I=M=I&&M,M&&R&&R.box&&this.collisionIndex.insertCollisionBox(R.box,o.get("text-ignore-placement"),n.bucketInstanceId,D&&D.box&&N?N:F,m.ID),I&&B&&this.collisionIndex.insertCollisionBox(B.box,o.get("icon-ignore-placement"),n.bucketInstanceId,j,m.ID),O&&(M&&this.collisionIndex.insertCollisionCircles(O.circles,o.get("text-ignore-placement"),n.bucketInstanceId,F,m.ID),i)){const e=n.bucketInstanceId;let t=this.collisionCircleArrays[e];void 0===t&&(t=this.collisionCircleArrays[e]=new eE);for(let e=0;e=0;--t){const i=e[t];M(n.symbolInstances.get(i),i,n.collisionArrays[i])}n.hasAnyZOffset&&W(`${n.layerIds[0]} layer symbol-z-elevate: symbols are not sorted by elevation if symbol-z-order is evaluated to viewport-y`)}else if(n.hasAnyZOffset){const e=n.getSortedIndexesByZOffset();for(let t=0;t=0&&(e.text.placedSymbolArray.get(n).crossTileID=h>=0&&n!==h?0:l),o>=0&&(e.text.placedSymbolArray.get(o).crossTileID=h>=0&&o!==h?0:l),s>=0&&(e.text.placedSymbolArray.get(s).crossTileID=h>=0&&s!==h?0:l),a>=0&&(e.text.placedSymbolArray.get(a).crossTileID=h>=0&&a!==h?0:l)}markUsedOrientation(e,t,i){const r=t===S_.horizontal||t===S_.horizontalOnly?t:0,n=t===S_.vertical?t:0,{leftJustifiedTextSymbolIndex:o,centerJustifiedTextSymbolIndex:s,rightJustifiedTextSymbolIndex:a,verticalPlacedTextSymbolIndex:l}=i,c=e.text.placedSymbolArray;o>=0&&(c.get(o).placedOrientation=r),s>=0&&(c.get(s).placedOrientation=r),a>=0&&(c.get(a).placedOrientation=r),l>=0&&(c.get(l).placedOrientation=n)}commit(e){this.commitTime=e,this.zoomAtLastRecencyCheck=this.transform.zoom;const t=this.prevPlacement;let i=!1;this.prevZoomAdjustment=t?t.zoomAdjustment(this.transform.zoom):0;const r=t?t.symbolFadeChange(e):1,n=t?t.opacities:{},o=t?t.variableOffsets:{},s=t?t.placedOrientations:{};for(const e in this.placements){const t=this.placements[e],o=n[e];o?(this.opacities[e]=new JT(o,r,t.text,t.icon,null,t.clipped),i=i||t.text!==o.text.placed||t.icon!==o.icon.placed):(this.opacities[e]=new JT(null,r,t.text,t.icon,t.skipFade,t.clipped),i=i||t.text||t.icon)}for(const e in n){const t=n[e];if(!this.opacities[e]){const n=new JT(t,r,!1,!1);n.isHidden()||(this.opacities[e]=n,i=i||t.text.placed||t.icon.placed)}}for(const e in o)this.variableOffsets[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.variableOffsets[e]=o[e]);for(const e in s)this.placedOrientations[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.placedOrientations[e]=s[e]);i?this.lastPlacementChangeTime=e:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=t?t.lastPlacementChangeTime:e)}updateLayerOpacities(e,t){const i=new Set;for(const r of t){const t=r.getBucket(e);t&&r.latestFeatureIndex&&e.fqid===t.layerIds[0]&&(this.updateBucketOpacities(t,i,r.collisionBoxArray),t.layers[0].layout.get("symbol-z-elevate")&&this.buildingIndex&&(this.buildingIndex.updateZOffset(t,r.tileID),t.updateZOffset()))}}updateBucketOpacities(e,t,i){e.hasTextData()&&e.text.opacityVertexArray.clear(),e.hasIconData()&&e.icon.opacityVertexArray.clear(),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexArray.clear(),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexArray.clear();const r=e.layers[0].layout,n=!!e.layers[0].dynamicFilter(),o=new JT(null,0,!1,!1,!0),s=r.get("text-allow-overlap"),a=r.get("icon-allow-overlap"),l=r.get("text-variable-anchor"),c="map"===r.get("text-rotation-alignment"),h="map"===r.get("text-pitch-alignment"),u=new JT(null,0,s&&(a||!e.hasIconData()||r.get("icon-optional")),a&&(s||!e.hasTextData()||r.get("text-optional")),!0);!e.collisionArrays&&i&&(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData())&&e.deserializeCollisionBoxes(i);const d=(e,t,i)=>{for(let r=0;r0||a>0,v=m>0,b=this.placedOrientations[f],w=b===S_.vertical,T=b===S_.horizontal||b===S_.horizontalOnly;if(!x&&!v||g.isHidden()||p++,x){const t=fE(g.text);d(e.text,s,w?mE:t),d(e.text,a,T?mE:t);const i=g.text.isHidden(),{leftJustifiedTextSymbolIndex:n,centerJustifiedTextSymbolIndex:o,rightJustifiedTextSymbolIndex:l,verticalPlacedTextSymbolIndex:c}=r,h=e.text.placedSymbolArray,u=i||w?1:0;n>=0&&(h.get(n).hidden=u),o>=0&&(h.get(o).hidden=u),l>=0&&(h.get(l).hidden=u),c>=0&&(h.get(c).hidden=i||T?1:0);const p=this.variableOffsets[f];p&&this.markUsedJustification(e,p.anchor,r,b);const m=this.placedOrientations[f];m&&(this.markUsedJustification(e,"left",r,m),this.markUsedOrientation(e,m,r))}if(v){const t=fE(g.icon),{placedIconSymbolIndex:i,verticalPlacedIconSymbolIndex:n}=r,o=e.icon.placedSymbolArray,s=g.icon.isHidden()?1:0;i>=0&&(d(e.icon,m,w?mE:t),o.get(i).hidden=s),n>=0&&(d(e.icon,r.numVerticalIconVertices,T?mE:t),o.get(n).hidden=s)}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){const t=e.collisionArrays[i];if(t){let i=new y(0,0),o=!0;if(t.textBox||t.verticalTextBox){if(l){const e=this.variableOffsets[f];e?(i=rE(e.anchor,e.width,e.height,e.textOffset,e.textScale),c&&i._rotate(h?this.transform.angle:-this.transform.angle)):o=!1}n&&(o=!g.clipped),t.textBox&&sE(e.textCollisionBox.collisionVertexArray,g.text.placed,!o||w,i.x,i.y),t.verticalTextBox&&sE(e.textCollisionBox.collisionVertexArray,g.text.placed,!o||T,i.x,i.y)}const s=o&&Boolean(!T&&t.verticalIconBox);t.iconBox&&sE(e.iconCollisionBox.collisionVertexArray,g.icon.placed,s,r.hasIconTextFit?i.x:0,r.hasIconTextFit?i.y:0),t.verticalIconBox&&sE(e.iconCollisionBox.collisionVertexArray,g.icon.placed,!s,r.hasIconTextFit?i.x:0,r.hasIconTextFit?i.y:0)}}}if(e.fullyClipped=0===p,e.sortFeatures(this.transform.angle),this.retainedQueryData[e.bucketInstanceId]&&(this.retainedQueryData[e.bucketInstanceId].featureSortOrder=e.featureSortOrder),e.hasTextData()&&e.text.opacityVertexBuffer&&e.text.opacityVertexBuffer.updateData(e.text.opacityVertexArray),e.hasIconData()&&e.icon.opacityVertexBuffer&&e.icon.opacityVertexBuffer.updateData(e.icon.opacityVertexArray),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexBuffer&&e.iconCollisionBox.collisionVertexBuffer.updateData(e.iconCollisionBox.collisionVertexArray),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexBuffer&&e.textCollisionBox.collisionVertexBuffer.updateData(e.textCollisionBox.collisionVertexArray),e.bucketInstanceId in this.collisionCircleArrays){const t=this.collisionCircleArrays[e.bucketInstanceId];e.placementInvProjMatrix=t.invProjMatrix,e.placementViewportMatrix=t.viewportMatrix,e.collisionCircleArray=t.circles,delete this.collisionCircleArrays[e.bucketInstanceId]}}symbolFadeChange(e){return 0===this.fadeDuration?1:(e-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(e){return Math.max(0,(this.transform.zoom-e)/1.5)}hasTransitions(e){return this.stale||e-this.lastPlacementChangeTimee}setStale(){this.stale=!0}}function sE(e,t,i,r,n){e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0)}const aE=Math.pow(2,25),lE=Math.pow(2,24),cE=Math.pow(2,17),hE=Math.pow(2,16),uE=Math.pow(2,9),dE=Math.pow(2,8),pE=Math.pow(2,1);function fE(e){if(0===e.opacity&&!e.placed)return 0;if(1===e.opacity&&e.placed)return 4294967295;const t=e.placed?1:0,i=Math.floor(127*e.opacity);return i*aE+t*lE+i*cE+t*hE+i*uE+t*dE+i*pE+t}const mE=0;class _E{constructor(e){this._sortAcrossTiles="viewport-y"!==e.layout.get("symbol-z-order")&&void 0!==e.layout.get("symbol-sort-key").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs=new Set,this._bucketParts=[]}continuePlacement(e,t,i,r,n){const o=this._bucketParts;for(;this._currentTileIndexe.sortKey-t.sortKey)));this._currentPartIndex{const e=dt.now()-n;return!this._forceFullPlacement&&e>2};for(;this._currentPlacementIndex>=0;){const n=t[e[this._currentPlacementIndex]],s=this.placement.collisionIndex.transform.zoom;if("symbol"===n.type&&(!n.minzoom||n.minzoom<=s)&&(!n.maxzoom||n.maxzoom>s)){const e=n,t=e.layout.get("symbol-z-elevate"),s=this._inProgressLayer=this._inProgressLayer||new _E(e),a=va(n.source,n.scope);if(s.continuePlacement(t?r[a]:i[a],this.placement,this._showCollisionBoxes,n,o))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(e){return this.placement.commit(e),this.placement}}const yE=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class xE{static from(e){if(!(e instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[t,i]=new Uint8Array(e,0,2);if(219!==t)throw new Error("Data does not appear to be in a KDBush format.");const r=i>>4;if(1!==r)throw new Error(`Got v${r} data when expected v1.`);const n=yE[15&i];if(!n)throw new Error("Unrecognized array type.");const[o]=new Uint16Array(e,2,1),[s]=new Uint32Array(e,4,1);return new xE(s,o,n,e)}constructor(e,t=64,i=Float64Array,r){if(isNaN(e)||e<0)throw new Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+t,2),65535),this.ArrayType=i,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;const n=yE.indexOf(this.ArrayType),o=2*e*this.ArrayType.BYTES_PER_ELEMENT,s=e*this.IndexArrayType.BYTES_PER_ELEMENT,a=(8-s%8)%8;if(n<0)throw new Error(`Unexpected typed array class: ${i}.`);r&&r instanceof ArrayBuffer?(this.data=r,this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+s+a,2*e),this._pos=2*e,this._finished=!0):(this.data=new ArrayBuffer(8+o+s+a),this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+s+a,2*e),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+n]),new Uint16Array(this.data,2,1)[0]=t,new Uint32Array(this.data,4,1)[0]=e)}add(e,t){const i=this._pos>>1;return this.ids[i]=i,this.coords[this._pos++]=e,this.coords[this._pos++]=t,i}finish(){const e=this._pos>>1;if(e!==this.numItems)throw new Error(`Added ${e} items when expected ${this.numItems}.`);return vE(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,t,i,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:n,coords:o,nodeSize:s}=this,a=[0,n.length-1,0],l=[];for(;a.length;){const c=a.pop()||0,h=a.pop()||0,u=a.pop()||0;if(h-u<=s){for(let s=u;s<=h;s++){const a=o[2*s],c=o[2*s+1];a>=e&&a<=i&&c>=t&&c<=r&&l.push(n[s])}continue}const d=u+h>>1,p=o[2*d],f=o[2*d+1];p>=e&&p<=i&&f>=t&&f<=r&&l.push(n[d]),(0===c?e<=p:t<=f)&&(a.push(u),a.push(d-1),a.push(1-c)),(0===c?i>=p:r>=f)&&(a.push(d+1),a.push(h),a.push(1-c))}return l}within(e,t,i){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids:r,coords:n,nodeSize:o}=this,s=[0,r.length-1,0],a=[],l=i*i;for(;s.length;){const c=s.pop()||0,h=s.pop()||0,u=s.pop()||0;if(h-u<=o){for(let i=u;i<=h;i++)EE(n[2*i],n[2*i+1],e,t)<=l&&a.push(r[i]);continue}const d=u+h>>1,p=n[2*d],f=n[2*d+1];EE(p,f,e,t)<=l&&a.push(r[d]),(0===c?e-i<=p:t-i<=f)&&(s.push(u),s.push(d-1),s.push(1-c)),(0===c?e+i>=p:t+i>=f)&&(s.push(d+1),s.push(h),s.push(1-c))}return a}}function vE(e,t,i,r,n,o){if(n-r<=i)return;const s=r+n>>1;bE(e,t,s,r,n,o),vE(e,t,i,r,s-1,1-o),vE(e,t,i,s+1,n,1-o)}function bE(e,t,i,r,n,o){for(;n>r;){if(n-r>600){const s=n-r+1,a=i-r+1,l=Math.log(s),c=.5*Math.exp(2*l/3),h=.5*Math.sqrt(l*c*(s-c)/s)*(a-s/2<0?-1:1);bE(e,t,i,Math.max(r,Math.floor(i-a*c/s+h)),Math.min(n,Math.floor(i+(s-a)*c/s+h)),o)}const s=t[2*i+o];let a=r,l=n;for(wE(e,t,r,i),t[2*n+o]>s&&wE(e,t,r,n);as;)l--}t[2*r+o]===s?wE(e,t,r,l):(l++,wE(e,t,l,n)),l<=i&&(r=l+1),i<=l&&(n=l-1)}}function wE(e,t,i,r){TE(e,i,r),TE(t,2*i,2*r),TE(t,2*i+1,2*r+1)}function TE(e,t,i){const r=e[t];e[t]=e[i],e[i]=r}function EE(e,t,i,r){const n=e-i,o=t-r;return n*n+o*o}const AE=512/cr/2;class SE{constructor(e,t,i){this.tileID=e,this.bucketInstanceId=i,this.index=new xE(t.length,16,Int32Array),this.keys=[],this.crossTileIDs=[];const r=e.canonical.x*cr,n=e.canonical.y*cr;for(let e=0;ee.overscaledZ)for(const i in n){const o=n[i];o.tileID.isChildOf(e)&&o.findMatches(t.symbolInstances,e,r)}else{const o=n[e.scaledTo(Number(i)).key];o&&o.findMatches(t.symbolInstances,e,r)}}for(let e=0;e{t[e]=!0}));for(const e in this.layerIndexes)t[e]||delete this.layerIndexes[e]}}var kE="\n#define EPSILON 0.0000001\n#define PI 3.141592653589793\n#ifdef RENDER_CUTOFF\nfloat cutoff_opacity(vec4 cutoff_params,float depth) {float near=cutoff_params.x;float far=cutoff_params.y;float cutoffStart=cutoff_params.z;float cutoffEnd=cutoff_params.w-0.0001;float linearDepth=(depth-near)/(far-near);return clamp((linearDepth-cutoffStart)/(cutoffEnd-cutoffStart),0.0,1.0);}\n#endif",PE="in highp vec3 a_pos_3f;uniform lowp mat4 u_matrix;out highp vec3 v_uv;void main() {const mat3 half_neg_pi_around_x=mat3(1.0,0.0, 0.0,0.0,0.0,-1.0,0.0,1.0, 0.0);v_uv=half_neg_pi_around_x*a_pos_3f;vec4 pos=u_matrix*vec4(a_pos_3f,1.0);gl_Position=pos.xyww;}",zE="\n#define ELEVATION_SCALE 7.0\n#define ELEVATION_OFFSET 450.0\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_tl_up;uniform vec3 u_tile_tr_up;uniform vec3 u_tile_br_up;uniform vec3 u_tile_bl_up;uniform float u_tile_up_scale;vec3 elevationVector(vec2 pos) {vec2 uv=pos/EXTENT;vec3 up=normalize(mix(\nmix(u_tile_tl_up,u_tile_tr_up,uv.xxx),mix(u_tile_bl_up,u_tile_br_up,uv.xxx),uv.yyy));return up*u_tile_up_scale;}\n#else\nvec3 elevationVector(vec2 pos) { return vec3(0,0,1); }\n#endif\n#ifdef TERRAIN\nuniform highp sampler2D u_dem;uniform highp sampler2D u_dem_prev;uniform vec2 u_dem_tl;uniform vec2 u_dem_tl_prev;uniform float u_dem_scale;uniform float u_dem_scale_prev;uniform float u_dem_size;uniform float u_dem_lerp;uniform float u_exaggeration;uniform float u_meter_to_dem;uniform mat4 u_label_plane_matrix_inv;uniform sampler2D u_depth;uniform vec2 u_depth_size_inv;vec4 tileUvToDemSample(vec2 uv,float dem_size,float dem_scale,vec2 dem_tl) {vec2 pos=dem_size*(uv*dem_scale+dem_tl)+1.0;vec2 f=fract(pos);return vec4((pos-f+0.5)/(dem_size+2.0),f);}float currentElevation(vec2 apos) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale+u_dem_tl)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture(u_dem,pos).r;\n#else\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale,u_dem_tl);vec2 pos=r.xy;vec2 f=r.zw;float tl=texture(u_dem,pos).r;float tr=texture(u_dem,pos+vec2(dd,0)).r;float bl=texture(u_dem,pos+vec2(0,dd)).r;float br=texture(u_dem,pos+vec2(dd,dd)).r;return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\n#endif\n}float prevElevation(vec2 apos) {\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale_prev+u_dem_tl_prev)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture(u_dem_prev,pos).r;\n#else\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale_prev,u_dem_tl_prev);vec2 pos=r.xy;vec2 f=r.zw;float tl=texture(u_dem_prev,pos).r;float tr=texture(u_dem_prev,pos+vec2(dd,0)).r;float bl=texture(u_dem_prev,pos+vec2(0,dd)).r;float br=texture(u_dem_prev,pos+vec2(dd,dd)).r;return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\n#endif\n}\n#ifdef TERRAIN_VERTEX_MORPHING\nfloat elevation(vec2 apos) {\n#ifdef ZERO_EXAGGERATION\nreturn 0.0;\n#endif\nfloat nextElevation=currentElevation(apos);float prevElevation=prevElevation(apos);return mix(prevElevation,nextElevation,u_dem_lerp);}\n#else\nfloat elevation(vec2 apos) {\n#ifdef ZERO_EXAGGERATION\nreturn 0.0;\n#endif\nreturn currentElevation(apos);}\n#endif\nhighp float unpack_depth(highp vec4 rgba_depth)\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}bool isOccluded(vec4 frag) {vec3 coord=frag.xyz/frag.w;float depth=unpack_depth(texture(u_depth,(coord.xy+1.0)*0.5));return coord.z > depth+0.0005;}float occlusionFade(vec4 frag) {vec3 coord=frag.xyz/frag.w;vec3 df=vec3(5.0*u_depth_size_inv,0.0);vec2 uv=0.5*coord.xy+0.5;vec4 depth=vec4(\nunpack_depth(texture(u_depth,uv-df.xz)),unpack_depth(texture(u_depth,uv+df.xz)),unpack_depth(texture(u_depth,uv-df.zy)),unpack_depth(texture(u_depth,uv+df.zy))\n);return dot(vec4(0.25),vec4(1.0)-clamp(300.0*(vec4(coord.z-0.001)-depth),0.0,1.0));}vec4 fourSample(vec2 pos,vec2 off) {float tl=texture(u_dem,pos).r;float tr=texture(u_dem,pos+vec2(off.x,0.0)).r;float bl=texture(u_dem,pos+vec2(0.0,off.y)).r;float br=texture(u_dem,pos+off).r;return vec4(tl,tr,bl,br);}float flatElevation(vec2 pack) {vec2 apos=floor(pack/8.0);vec2 span=10.0*(pack-apos*8.0);vec2 uvTex=(apos-vec2(1.0,1.0))/8190.0;float size=u_dem_size+2.0;float dd=1.0/size;vec2 pos=u_dem_size*(uvTex*u_dem_scale+u_dem_tl)+1.0;vec2 f=fract(pos);pos=(pos-f+0.5)*dd;vec4 h=fourSample(pos,vec2(dd));float z=mix(mix(h.x,h.y,f.x),mix(h.z,h.w,f.x),f.y);vec2 w=floor(0.5*(span*u_meter_to_dem-1.0));vec2 d=dd*w;h=fourSample(pos-d,2.0*d+vec2(dd));vec4 diff=abs(h.xzxy-h.ywzw);vec2 slope=min(vec2(0.25),u_meter_to_dem*0.5*(diff.xz+diff.yw)/(2.0*w+vec2(1.0)));vec2 fix=slope*span;float base=z+max(fix.x,fix.y);return u_exaggeration*base;}float elevationFromUint16(float word) {return u_exaggeration*(word/ELEVATION_SCALE-ELEVATION_OFFSET);}\n#else\nfloat elevation(vec2 pos) { return 0.0; }bool isOccluded(vec4 frag) { return false; }float occlusionFade(vec4 frag) { return 1.0; }\n#endif",LE="#ifdef FOG\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump mat4 u_fog_matrix;out vec3 v_fog_pos;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}vec3 fog_position(vec3 pos) {return (u_fog_matrix*vec4(pos,1.0)).xyz;}vec3 fog_position(vec2 pos) {return fog_position(vec3(pos,0.0));}float fog(vec3 pos) {float depth=length(pos);float opacity=fog_opacity(fog_range(depth));return opacity*fog_horizon_blending(pos/depth);}\n#endif",DE="highp vec3 hash(highp vec2 p) {highp vec3 p3=fract(p.xyx*vec3(443.8975,397.2973,491.1871));p3+=dot(p3,p3.yxz+19.19);return fract((p3.xxy+p3.yzz)*p3.zyx);}vec3 dither(vec3 color,highp vec2 seed) {vec3 rnd=hash(seed)+hash(seed+0.59374)-0.5;return color+rnd/255.0;}\n#ifdef FOG\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump vec2 u_fog_vertical_limit;uniform mediump float u_fog_temporal_offset;in vec3 v_fog_pos;uniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform highp vec2 u_viewport;uniform float u_globe_transition;uniform int u_is_globe;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}float globe_glow_progress() {highp vec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);highp vec3 dir=normalize(ray_dir);highp vec3 closest_point=dot(u_globe_pos,dir)*dir;highp float sdf=length(closest_point-u_globe_pos)/u_globe_radius;return sdf+PI*0.5;}float fog_opacity(vec3 pos) {float depth=length(pos);return fog_opacity(fog_range(depth));}vec3 fog_apply(vec3 color,vec3 pos,float opacity_limit) {float depth=length(pos);float opacity;if (u_is_globe==1) {float glow_progress=globe_glow_progress();float t=mix(glow_progress,depth,u_globe_transition);opacity=fog_opacity(fog_range(t));} else {opacity=fog_opacity(fog_range(depth));opacity*=fog_horizon_blending(pos/depth);}return mix(color,u_fog_color.rgb,min(opacity,opacity_limit));}vec3 fog_apply(vec3 color,vec3 pos) {return fog_apply(color,pos,1.0);}vec4 fog_apply_from_vert(vec4 color,float fog_opac) {float alpha=EPSILON+color.a;color.rgb=mix(color.rgb/alpha,u_fog_color.rgb,fog_opac)*alpha;return color;}vec3 fog_apply_sky_gradient(vec3 camera_ray,vec3 sky_color) {float horizon_blend=fog_horizon_blending(normalize(camera_ray));return mix(sky_color,u_fog_color.rgb,horizon_blend);}vec4 fog_apply_premultiplied(vec4 color,vec3 pos) {float alpha=EPSILON+color.a;color.rgb=fog_apply(color.rgb/alpha,pos)*alpha;return color;}vec4 fog_apply_premultiplied(vec4 color,vec3 pos,float heightMeters) {float verticalProgress=(u_fog_vertical_limit.x > 0.0 || u_fog_vertical_limit.y > 0.0) ? smoothstep(u_fog_vertical_limit.x,u_fog_vertical_limit.y,heightMeters) : 0.0;float opacityLimit=1.0-smoothstep(0.9,1.0,fog_opacity(pos));return mix(fog_apply_premultiplied(color,pos),color,min(verticalProgress,opacityLimit));}vec3 fog_dither(vec3 color) {\n#ifdef FOG_DITHERING\nvec2 dither_seed=gl_FragCoord.xy+u_fog_temporal_offset;return dither(color,dither_seed);\n#else\nreturn color;\n#endif\n}vec4 fog_dither(vec4 color) {return vec4(fog_dither(color.rgb),color.a);}\n#endif",RE="#ifdef RASTER_ARRAY\nuniform sampler2D u_image0;uniform sampler2D u_image1;const vec4 NODATA=vec4(1);vec4 _raTexLinearCoord(vec2 texCoord,vec2 texResolution,out vec2 fxy) {texCoord=texCoord*texResolution-0.5;fxy=fract(texCoord);texCoord-=fxy;return (texCoord.xxyy+vec2(1.5,0.5).xyxy)/texResolution.xxyy;}vec2 _raTexLinearMix(vec2 fxy,vec4 colorMix,float colorOffset,vec4 t00,vec4 t10,vec4 t01,vec4 t11) {vec2 c00=t00==NODATA ? vec2(0) : vec2(colorOffset+dot(t00,colorMix),1);vec2 c10=t10==NODATA ? vec2(0) : vec2(colorOffset+dot(t10,colorMix),1);vec2 c01=t01==NODATA ? vec2(0) : vec2(colorOffset+dot(t01,colorMix),1);vec2 c11=t11==NODATA ? vec2(0) : vec2(colorOffset+dot(t11,colorMix),1);return mix(mix(c01,c11,fxy.x),mix(c00,c10,fxy.x),fxy.y);}vec2 raTexture2D_image0_linear(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec2 fxy;vec4 c=_raTexLinearCoord(texCoord,texResolution,fxy);return _raTexLinearMix(fxy,colorMix,colorOffset,texture(u_image0,c.yz),texture(u_image0,c.xz),texture(u_image0,c.yw),texture(u_image0,c.xw)\n);}vec2 raTexture2D_image1_linear(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec2 fxy;vec4 c=_raTexLinearCoord(texCoord,texResolution,fxy);return _raTexLinearMix(fxy,colorMix,colorOffset,texture(u_image1,c.yz),texture(u_image1,c.xz),texture(u_image1,c.yw),texture(u_image1,c.xw)\n);}vec2 raTexture2D_image0_nearest(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec4 t=texture(u_image0,texCoord);return t==NODATA ? vec2(0) : vec2(colorOffset+dot(t,colorMix),1);}vec2 raTexture2D_image1_nearest(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec4 t=texture(u_image1,texCoord);return t==NODATA ? vec2(0) : vec2(colorOffset+dot(t,colorMix),1);}\n#endif",OE="#ifdef RENDER_SHADOWS\nuniform mediump vec3 u_shadow_direction;uniform highp vec3 u_shadow_normal_offset;vec3 shadow_normal_offset(vec3 normal) {float tileInMeters=u_shadow_normal_offset[0];vec3 n=vec3(-normal.xy,tileInMeters*normal.z);float dotScale=min(1.0-dot(normal,u_shadow_direction),1.0)*0.5+0.5;return n*dotScale;}vec3 shadow_normal_offset_model(vec3 normal) {float dotScale=min(1.0-dot(normal,u_shadow_direction),1.0)*0.5+0.5;return normal*dotScale;}float shadow_normal_offset_multiplier0() {return u_shadow_normal_offset[1];}float shadow_normal_offset_multiplier1() {return u_shadow_normal_offset[2];}\n#endif//RENDER_SHADOWS",BE="#ifdef RENDER_SHADOWS\n#ifdef DEPTH_TEXTURE\nuniform highp sampler2D u_shadowmap_0;uniform highp sampler2D u_shadowmap_1;\n#else\nuniform sampler2D u_shadowmap_0;uniform sampler2D u_shadowmap_1;\n#endif\nuniform float u_shadow_intensity;uniform float u_shadow_map_resolution;uniform float u_shadow_texel_size;uniform highp vec3 u_shadow_normal_offset;uniform vec2 u_fade_range;uniform mediump vec3 u_shadow_direction;uniform highp vec3 u_shadow_bias;highp float shadow_sample_1(highp vec2 uv,highp float compare) {highp float shadow_depth;\n#ifdef DEPTH_TEXTURE\nshadow_depth=texture(u_shadowmap_1,uv).r;\n#else\nshadow_depth=unpack_depth(texture(u_shadowmap_1,uv))*0.5+0.5;\n#endif\nreturn step(shadow_depth,compare);}highp float shadow_sample_0(highp vec2 uv,highp float compare) {highp float shadow_depth;\n#ifdef DEPTH_TEXTURE\nshadow_depth=texture(u_shadowmap_0,uv).r;\n#else\nshadow_depth=unpack_depth(texture(u_shadowmap_0,uv))*0.5+0.5;\n#endif\nreturn step(shadow_depth,compare);}float shadow_occlusion_1(highp vec4 pos,highp float bias) {highp vec2 uv=pos.xy;return shadow_sample_1(uv,pos.z-bias);}float shadow_occlusion_0(highp vec4 pos,highp float bias) {highp float compare0=pos.z-bias;\n#ifdef NATIVE\nhighp vec2 uv=pos.xy;highp vec4 samples=textureGather(u_shadowmap_0,uv,0);lowp vec4 stepSamples=step(samples,vec4(compare0));\n#else\nhighp vec2 uv00=pos.xy-vec2(0.5*u_shadow_texel_size);highp vec2 uv10=uv00+vec2(u_shadow_texel_size,0.0);highp vec2 uv01=uv00+vec2(0.0,u_shadow_texel_size);highp vec2 uv11=uv01+vec2(u_shadow_texel_size,0.0);lowp vec4 stepSamples=vec4(\nshadow_sample_0(uv01,compare0),shadow_sample_0(uv11,compare0),shadow_sample_0(uv10,compare0),shadow_sample_0(uv00,compare0)\n);\n#endif\nvec2 f=fract(pos.xy*u_shadow_map_resolution-vec2(0.5));lowp vec2 lerpx=mix(stepSamples.wx,stepSamples.zy,f.xx);return mix(lerpx.x,lerpx.y,f.y);}float shadow_occlusion(highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth,highp float bias) {\n#ifdef SHADOWS_SINGLE_CASCADE\nlight_view_pos0.xyz=light_view_pos0.xyz/light_view_pos0.w*0.5+0.5;return shadow_occlusion_0(light_view_pos0,bias);\n#else\nlight_view_pos0.xyz/=light_view_pos0.w;light_view_pos1.xyz/=light_view_pos1.w;vec4 uv=vec4(light_view_pos0.xy,light_view_pos1.xy);vec4 abs_bounds=abs(uv);if (abs_bounds.x < 1.0 && abs_bounds.y < 1.0) {light_view_pos0.xyz=light_view_pos0.xyz*0.5+0.5;return shadow_occlusion_0(light_view_pos0,bias);}if (abs_bounds.z >=1.0 || abs_bounds.w >=1.0) {return 0.0;}light_view_pos1.xyz=light_view_pos1.xyz*0.5+0.5;float occlusion1=shadow_occlusion_1(light_view_pos1,bias);return mix(occlusion1,0.0,smoothstep(u_fade_range.x,u_fade_range.y,view_depth));\n#endif\n}highp float calculate_shadow_bias(float NDotL) {\n#ifdef NORMAL_OFFSET\nreturn 0.5*u_shadow_bias.x;\n#else\nreturn 0.5*(u_shadow_bias.x+clamp(u_shadow_bias.y*tan(acos(NDotL)),0.0,u_shadow_bias.z));\n#endif\n}float shadowed_light_factor_normal(vec3 N,highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float NDotL=dot(N,u_shadow_direction);float bias=calculate_shadow_bias(NDotL);float occlusion=shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);return mix(0.0,(1.0-(u_shadow_intensity*occlusion))*NDotL,step(0.0,NDotL));}float shadowed_light_factor_normal_unbiased(vec3 N,highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float NDotL=dot(N,u_shadow_direction);float bias=0.0;float occlusion=shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);return mix(0.0,(1.0-(u_shadow_intensity*occlusion))*NDotL,step(0.0,NDotL));}float shadowed_light_factor(highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float bias=0.0;float occlusion=shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);return 1.0-(u_shadow_intensity*occlusion);}float shadow_occlusion(float ndotl,highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float bias=calculate_shadow_bias(ndotl);return shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);}\n#endif";const FE=[];$E(kE,FE);const NE={"_prelude_fog.vertex.glsl":LE,"_prelude_terrain.vertex.glsl":zE,"_prelude_shadow.vertex.glsl":OE,"_prelude_fog.fragment.glsl":DE,"_prelude_shadow.fragment.glsl":BE,"_prelude_lighting.glsl":"\n#ifdef LIGHTING_3D_MODE\nuniform mediump vec3 u_lighting_ambient_color;uniform mediump vec3 u_lighting_directional_dir;uniform mediump vec3 u_lighting_directional_color;uniform mediump vec3 u_ground_radiance;float calculate_ambient_directional_factor(vec3 normal) {float NdotL=dot(normal,u_lighting_directional_dir);const float factor_reduction_max=0.3;float dir_luminance=dot(u_lighting_directional_color,vec3(0.2126,0.7152,0.0722));float directional_factor_min=1.0-factor_reduction_max*min(dir_luminance,1.0);float ambient_directional_factor=mix(directional_factor_min,1.0,min((NdotL+1.0),1.0));const float vertical_factor_min=0.92;float vertical_factor=mix(vertical_factor_min,1.0,normal.z*0.5+0.5);return vertical_factor*ambient_directional_factor;}vec3 linearProduct(vec3 srgbIn,vec3 k) {return srgbIn*pow(k,vec3(1./2.2));}vec3 apply_lighting(vec3 color,vec3 normal,float dir_factor) {float ambient_directional_factor=calculate_ambient_directional_factor(normal);vec3 ambient_contrib=ambient_directional_factor*u_lighting_ambient_color;vec3 directional_contrib=u_lighting_directional_color*dir_factor;return linearProduct(color,ambient_contrib+directional_contrib);}vec4 apply_lighting(vec4 color,vec3 normal,float dir_factor) {return vec4(apply_lighting(color.rgb,normal,dir_factor),color.a);}vec3 apply_lighting(vec3 color,vec3 normal) {float dir_factor=max(dot(normal,u_lighting_directional_dir),0.0);return apply_lighting(color.rgb,normal,dir_factor);}vec4 apply_lighting(vec4 color,vec3 normal) {float dir_factor=max(dot(normal,u_lighting_directional_dir),0.0);return vec4(apply_lighting(color.rgb,normal,dir_factor),color.a);}vec3 apply_lighting_ground(vec3 color) {return color*u_ground_radiance;}vec4 apply_lighting_ground(vec4 color) {return vec4(apply_lighting_ground(color.rgb),color.a);}float calculate_NdotL(vec3 normal) {const float ext=0.70710678118;return (clamp(dot(normal,u_lighting_directional_dir),-ext,1.0)+ext)/(1.0+ext);}vec4 apply_lighting_with_emission_ground(vec4 color,float emissive_strength) {return mix(apply_lighting_ground(color),color,emissive_strength);}vec3 compute_flood_lighting(vec3 flood_light_color,float fully_occluded_factor,float occlusion,vec3 ground_shadow_factor) {vec3 fully_occluded_color=flood_light_color*mix(ground_shadow_factor,vec3(1.0),fully_occluded_factor);float occlusion_ramp=smoothstep(0.0,0.2,1.0-occlusion);return mix(fully_occluded_color,flood_light_color,occlusion_ramp);}vec3 compute_emissive_draped(vec3 unlit_color,float fully_occluded_factor,float occlusion,vec3 ground_shadow_factor) {vec3 fully_occluded_color=unlit_color*mix(ground_shadow_factor,vec3(1.0),fully_occluded_factor);return mix(fully_occluded_color,unlit_color,1.0-occlusion);}\n#endif//LIGHTING_3D_MODE","_prelude_raster_array.glsl":RE},jE={};qE("",zE),qE(DE,LE),qE(BE,OE),qE(RE,"");const UE=qE("\nout vec4 glFragColor;highp float unpack_depth(highp vec4 rgba_depth)\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}highp vec4 pack_depth(highp float ndc_z) {highp float depth=ndc_z*0.5+0.5;const highp vec4 bit_shift=vec4(255.0*255.0*255.0,255.0*255.0,255.0,1.0);const highp vec4 bit_mask =vec4(0.0,1.0/255.0,1.0/255.0,1.0/255.0);highp vec4 res=fract(depth*bit_shift);res-=res.xxyz*bit_mask;return res;}\n#ifdef INDICATOR_CUTOUT\nuniform vec2 u_indicator_cutout_centers;uniform vec4 u_indicator_cutout_params;\n#endif\nvec4 applyCutout(vec4 color) {\n#ifdef INDICATOR_CUTOUT\nfloat holeMinOpacity=u_indicator_cutout_params.x;float holeRadius=max(u_indicator_cutout_params.y,0.0);float holeAspectRatio=u_indicator_cutout_params.z;float fadeStart=u_indicator_cutout_params.w;float distA=distance(vec2(gl_FragCoord.x,gl_FragCoord.y*holeAspectRatio),vec2(u_indicator_cutout_centers[0],u_indicator_cutout_centers[1]*holeAspectRatio));return color*min(smoothstep(fadeStart,holeRadius,distA)+holeMinOpacity,1.0);\n#else\nreturn color;\n#endif\n}\n#ifdef DEBUG_WIREFRAME\n#define HANDLE_WIREFRAME_DEBUG \\\nglFragColor=vec4(0.7,0.0,0.0,0.7); \\\ngl_FragDepth=gl_FragCoord.z-0.0001;\n#else\n#define HANDLE_WIREFRAME_DEBUG\n#endif\n#ifdef RENDER_CUTOFF\nuniform highp vec4 u_cutoff_params;in float v_cutoff_opacity;\n#endif","\n#define EXTENT 8192.0\n#define RAD_TO_DEG 180.0/PI\n#define DEG_TO_RAD PI/180.0\n#define GLOBE_RADIUS EXTENT/PI/2.0\nfloat wrap(float n,float min,float max) {float d=max-min;float w=mod(mod(n-min,d)+d,d)+min;return (w==min) ? max : w;}\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 mercator_tile_position(mat4 matrix,vec2 tile_anchor,vec3 tile_id,vec2 mercator_center) {\n#ifndef PROJECTED_POS_ON_VIEWPORT\nfloat tiles=tile_id.z;vec2 mercator=(tile_anchor/EXTENT+tile_id.xy)/tiles;mercator-=mercator_center;mercator.x=wrap(mercator.x,-0.5,0.5);vec4 mercator_tile=vec4(mercator.xy*EXTENT,EXTENT/(2.0*PI),1.0);mercator_tile=matrix*mercator_tile;return mercator_tile.xyz;\n#else\nreturn vec3(0.0);\n#endif\n}vec3 mix_globe_mercator(vec3 globe,vec3 mercator,float t) {return mix(globe,mercator,t);}mat3 globe_mercator_surface_vectors(vec3 pos_normal,vec3 up_dir,float zoom_transition) {vec3 normal=zoom_transition==0.0 ? pos_normal : normalize(mix(pos_normal,up_dir,zoom_transition));vec3 xAxis=normalize(vec3(normal.z,0.0,-normal.x));vec3 yAxis=normalize(cross(normal,xAxis));return mat3(xAxis,yAxis,normal);}\n#endif\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(\nunpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}float mercatorXfromLng(float lng) {return (180.0+lng)/360.0;}float mercatorYfromLat(float lat) {return (180.0-(RAD_TO_DEG*log(tan(PI/4.0+lat/2.0*DEG_TO_RAD))))/360.0;}vec3 latLngToECEF(vec2 latLng) {latLng=DEG_TO_RAD*latLng;float cosLat=cos(latLng[0]);float sinLat=sin(latLng[0]);float cosLng=cos(latLng[1]);float sinLng=sin(latLng[1]);float sx=cosLat*sinLng*GLOBE_RADIUS;float sy=-sinLat*GLOBE_RADIUS;float sz=cosLat*cosLng*GLOBE_RADIUS;return vec3(sx,sy,sz);}\n#ifdef RENDER_CUTOFF\nuniform vec4 u_cutoff_params;out float v_cutoff_opacity;\n#endif\nconst vec4 AWAY=vec4(-1000.0,-1000.0,-1000.0,1);const float skirtOffset=24575.0;vec3 decomposeToPosAndSkirt(vec2 posWithComposedSkirt)\n{float skirt=float(posWithComposedSkirt.x >=skirtOffset);vec2 pos=posWithComposedSkirt-vec2(skirt*skirtOffset,0.0);return vec3(pos,skirt);}"),VE=kE;var GE={background:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform vec4 u_color;uniform float u_opacity;\n#ifdef LIGHTING_3D_MODE\nin vec4 v_color;\n#endif\nvoid main() {vec4 out_color;\n#ifdef LIGHTING_3D_MODE\nout_color=v_color;\n#else\nout_color=u_color;\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\nglFragColor=out_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#include "_prelude_lighting.glsl"\nin vec2 a_pos;uniform mat4 u_matrix;\n#ifdef LIGHTING_3D_MODE\nuniform mediump vec4 u_color;out vec4 v_color;uniform float u_emissive_strength;\n#endif\nvoid main() {gl_Position=u_matrix*vec4(a_pos,0,1);\n#ifdef LIGHTING_3D_MODE\nv_color=apply_lighting_with_emission_ground(u_color,u_emissive_strength);\n#endif\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}'),backgroundPattern:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform vec2 u_pattern_tl;uniform vec2 u_pattern_br;uniform vec2 u_texsize;uniform float u_opacity;uniform float u_emissive_strength;uniform sampler2D u_image;in vec2 v_pos;void main() {vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(u_pattern_tl/u_texsize,u_pattern_br/u_texsize,imagecoord);vec4 out_color=texture(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\nglFragColor=out_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\nuniform mat4 u_matrix;uniform vec2 u_pattern_size;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;in vec2 a_pos;out vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_pattern_size,u_tile_units_to_pixels,a_pos);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}'),circle:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nin vec3 v_data;in float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nuniform float u_emissive_strength;void main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(\nantialiased_blur,0.0,extrude_length-radius/(radius+stroke_width)\n);vec4 out_color=mix(color*opacity,stroke_color*stroke_opacity,color_t);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\n#endif\n#ifdef FOG\nout_color=fog_apply_premultiplied(out_color,v_fog_pos);\n#endif\nglFragColor=out_color*(v_visibility*opacity_t);\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\n}','#include "_prelude_fog.vertex.glsl"\n#include "_prelude_terrain.vertex.glsl"\n#define NUM_VISIBILITY_RINGS 2\n#define INV_SQRT2 0.70710678\n#define ELEVATION_BIAS 0.0001\n#define NUM_SAMPLES_PER_RING 16\nuniform mat4 u_matrix;uniform mat2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;in vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\n#endif\nout vec3 v_data;out float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvec2 calc_offset(vec2 extrusion,float radius,float stroke_width, float view_scale) {return extrusion*(radius+stroke_width)*u_extrude_scale*view_scale;}float cantilevered_elevation(vec2 pos,float radius,float stroke_width,float view_scale) {vec2 c1=pos+calc_offset(vec2(-1,-1),radius,stroke_width,view_scale);vec2 c2=pos+calc_offset(vec2(1,-1),radius,stroke_width,view_scale);vec2 c3=pos+calc_offset(vec2(1,1),radius,stroke_width,view_scale);vec2 c4=pos+calc_offset(vec2(-1,1),radius,stroke_width,view_scale);float h1=elevation(c1)+ELEVATION_BIAS;float h2=elevation(c2)+ELEVATION_BIAS;float h3=elevation(c3)+ELEVATION_BIAS;float h4=elevation(c4)+ELEVATION_BIAS;return max(h4,max(h3,max(h1,h2)));}float circle_elevation(vec2 pos) {\n#if defined(TERRAIN)\nreturn elevation(pos)+ELEVATION_BIAS;\n#else\nreturn 0.0;\n#endif\n}vec4 project_vertex(vec2 extrusion,vec4 world_center,vec4 projected_center,float radius,float stroke_width, float view_scale,mat3 surface_vectors) {vec2 sample_offset=calc_offset(extrusion,radius,stroke_width,view_scale);\n#ifdef PITCH_WITH_MAP\n#ifdef PROJECTION_GLOBE_VIEW\nreturn u_matrix*( world_center+vec4(sample_offset.x*surface_vectors[0]+sample_offset.y*surface_vectors[1],0) );\n#else\nreturn u_matrix*( world_center+vec4(sample_offset,0,0) );\n#endif\n#else\nreturn projected_center+vec4(sample_offset,0,0);\n#endif\n}float get_sample_step() {\n#ifdef PITCH_WITH_MAP\nreturn 2.0*PI/float(NUM_SAMPLES_PER_RING);\n#else\nreturn PI/float(NUM_SAMPLES_PER_RING);\n#endif\n}void main(void) {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);vec4 world_center;mat3 surface_vectors;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 pos_normal_3=a_pos_normal_3/16384.0;surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(circle_center)*circle_elevation(circle_center);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*circle_elevation(circle_center);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,circle_center,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;vec3 pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);world_center=vec4(pos,1);\n#else \nsurface_vectors=mat3(1.0);float height=circle_elevation(circle_center);world_center=vec4(circle_center,height,1);\n#endif\nvec4 projected_center=u_matrix*world_center;float view_scale=0.0;\n#ifdef PITCH_WITH_MAP\n#ifdef SCALE_WITH_MAP\nview_scale=1.0;\n#else\nview_scale=projected_center.w/u_camera_to_center_distance;\n#endif\n#else\n#ifdef SCALE_WITH_MAP\nview_scale=u_camera_to_center_distance;\n#else\nview_scale=projected_center.w;\n#endif\n#endif\ngl_Position=project_vertex(extrude,world_center,projected_center,radius,stroke_width,view_scale,surface_vectors);float visibility=0.0;\n#ifdef TERRAIN\nfloat step=get_sample_step();vec4 occlusion_world_center;vec4 occlusion_projected_center;\n#ifdef PITCH_WITH_MAP\nfloat cantilevered_height=cantilevered_elevation(circle_center,radius,stroke_width,view_scale);occlusion_world_center=vec4(circle_center,cantilevered_height,1);occlusion_projected_center=u_matrix*occlusion_world_center;\n#else\nocclusion_world_center=world_center;occlusion_projected_center=projected_center;\n#endif\nfor(int ring=0; ring < NUM_VISIBILITY_RINGS; ring++) {float scale=(float(ring)+1.0)/float(NUM_VISIBILITY_RINGS);for(int i=0; i < NUM_SAMPLES_PER_RING; i++) {vec2 extrusion=vec2(cos(step*float(i)),-sin(step*float(i)))*scale;vec4 frag_pos=project_vertex(extrusion,occlusion_world_center,occlusion_projected_center,radius,stroke_width,view_scale,surface_vectors);visibility+=float(!isOccluded(frag_pos));}}visibility/=float(NUM_VISIBILITY_RINGS)*float(NUM_SAMPLES_PER_RING);\n#else\nvisibility=1.0;\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nvisibility=1.0;\n#endif\nv_visibility=visibility;lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);\n#ifdef FOG\nv_fog_pos=fog_position(world_center.xyz);\n#endif\n}'),clippingMask:qE("void main() {glFragColor=vec4(1.0);}","in vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:qE('#include "_prelude_fog.fragment.glsl"\nuniform highp float u_intensity;in vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#define GAUSS_COEF 0.3989422804014327\nvoid main() {\n#pragma mapbox: initialize highp float weight\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);glFragColor=vec4(val,1.0,1.0,1.0);\n#ifdef FOG\nif (u_is_globe==0) {glFragColor.r*=pow(1.0-fog_opacity(v_fog_pos),2.0);}\n#endif\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_terrain.vertex.glsl"\n#include "_prelude_fog.vertex.glsl"\nuniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;in vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\n#endif\nout vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\nconst highp float ZERO=1.0/255.0/16.0;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(void) {\n#pragma mapbox: initialize highp float weight\n#pragma mapbox: initialize mediump float radius\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec2 tilePos=floor(a_pos*0.5);vec3 pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 pos_normal_3=a_pos_normal_3/16384.0;mat3 surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(tilePos)*elevation(tilePos);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*elevation(tilePos);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,tilePos,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#else\npos=vec3(tilePos+extrude,elevation(tilePos));\n#endif\ngl_Position=u_matrix*vec4(pos,1);\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}'),heatmapTexture:qE("uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;in vec2 v_pos;void main() {float t=texture(u_image,v_pos).r;vec4 color=texture(u_color_ramp,vec2(t,0.5));glFragColor=color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(0.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}","in vec2 a_pos;out vec2 v_pos;void main() {gl_Position=vec4(a_pos,0,1);v_pos=a_pos*0.5+0.5;}"),collisionBox:qE("in float v_placed;in float v_notUsed;void main() {vec4 red =vec4(1.0,0.0,0.0,1.0);vec4 blue=vec4(0.0,0.0,1.0,0.5);glFragColor =mix(red,blue,step(0.5,v_placed))*0.5;glFragColor*=mix(1.0,0.1,step(0.5,v_notUsed));}",'#include "_prelude_terrain.vertex.glsl"\nin vec3 a_pos;in vec2 a_anchor_pos;in vec2 a_extrude;in vec2 a_placed;in vec2 a_shift;in float a_size_scale;in vec2 a_padding;in float a_z_offset;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;out float v_placed;out float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_pos+elevationVector(a_anchor_pos)*(a_z_offset+elevation(a_anchor_pos)),1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,1.5);gl_Position=projectedPoint;gl_Position.xy+=(a_extrude*a_size_scale+a_shift+a_padding)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}'),collisionCircle:qE("in float v_radius;in vec2 v_extrude;in float v_perspective_ratio;in float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);glFragColor=color*alpha*opacity_t;}","in vec2 a_pos_2f;in float a_radius;in vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;out float v_radius;out vec2 v_extrude;out float v_perspective_ratio;out float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos_2f;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(\nmix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:qE("uniform highp vec4 u_color;uniform sampler2D u_overlay;in vec2 v_uv;void main() {vec4 overlay_color=texture(u_overlay,v_uv);glFragColor=mix(u_color,overlay_color,overlay_color.a);}",'#include "_prelude_terrain.vertex.glsl"\nin vec2 a_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_pos_3;\n#endif\nout vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {float h=elevation(a_pos);v_uv=a_pos/8192.0;\n#ifdef PROJECTION_GLOBE_VIEW\ngl_Position=u_matrix*vec4(a_pos_3+elevationVector(a_pos)*h,1);\n#else\ngl_Position=u_matrix*vec4(a_pos*u_overlay_scale,h,1);\n#endif\n}'),fill:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nuniform float u_emissive_strength;void main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\nvec4 out_color=color;\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\nglFragColor=out_color*opacity;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\nin vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}'),fillOutline:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nin vec2 v_pos;uniform float u_emissive_strength;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=outline_color;\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\nglFragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\nin vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;out vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}'),fillOutlinePattern:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_emissive_strength;in vec2 v_pos;in vec2 v_pos_world;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);float dist=length(v_pos_world-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=texture(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\nglFragColor=out_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\nuniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;in vec2 a_pos;out vec2 v_pos;out vec2 v_pos_world;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);v_pos_world=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}'),fillPattern:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform vec2 u_texsize;uniform sampler2D u_image;in vec2 v_pos;uniform float u_emissive_strength;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\nglFragColor=out_color*opacity;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\nuniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;in vec2 a_pos;out vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}'),fillExtrusion:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_shadow.fragment.glsl"\n#include "_prelude_lighting.glsl"\nin vec4 v_color;in vec4 v_flat;\n#ifdef RENDER_SHADOWS\nin highp vec4 v_pos_light_view_0;in highp vec4 v_pos_light_view_1;in float v_depth;\n#endif\nuniform lowp float u_opacity;\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;in vec2 v_ao;\n#endif\n#if defined(ZERO_ROOF_RADIUS) && !defined(LIGHTING_3D_MODE)\nin vec4 v_roof_color;\n#endif\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\nin highp vec3 v_normal;\n#endif\nuniform vec3 u_flood_light_color;uniform highp float u_vertical_scale;uniform float u_flood_light_intensity;uniform vec3 u_ground_shadow_factor;\n#if defined(LIGHTING_3D_MODE) && defined(FLOOD_LIGHT)\nin float v_flood_radius;in float v_has_floodlight;\n#endif\nuniform float u_emissive_strength;in float v_height;void main() {\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\nvec3 normal=normalize(v_normal);\n#endif\nfloat z;vec4 color=v_color;\n#ifdef ZERO_ROOF_RADIUS\nz=float(normal.z > 0.00001);\n#ifdef LIGHTING_3D_MODE\nnormal=mix(normal,vec3(0.0,0.0,1.0),z);\n#else\ncolor=mix(v_color,v_roof_color,z);\n#endif\n#endif\nfloat h=max(0.0,v_height);float ao_shade=1.0;\n#ifdef FAUX_AO\nfloat intensity=u_ao[0];float h_floors=h/(u_ao[1]*u_vertical_scale);float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);ao_shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;\n#ifdef ZERO_ROOF_RADIUS\nconcave*=(1.0-z);\n#endif\nfloat x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);ao_shade*=mix(1.0,x_shade*x_shade*x_shade,concave);\n#ifdef LIGHTING_3D_MODE\n#ifdef FLOOD_LIGHT\ncolor.rgb*=mix(ao_shade,1.0,v_has_floodlight);\n#else\ncolor.rgb*=ao_shade;\n#endif\n#else\ncolor.rgb*=ao_shade;\n#endif\n#endif\n#ifdef LIGHTING_3D_MODE\nfloat flood_radiance=0.0;\n#ifdef FLOOD_LIGHT\nflood_radiance=(1.0-min(h/v_flood_radius,1.0))*u_flood_light_intensity*v_has_floodlight;\n#endif\n#ifdef RENDER_SHADOWS\n#ifdef FLOOD_LIGHT\nfloat ndotl_unclamped=dot(normal,u_shadow_direction);float ndotl=max(0.0,ndotl_unclamped);float occlusion=ndotl_unclamped < 0.0 ? 1.0 : shadow_occlusion(ndotl,v_pos_light_view_0,v_pos_light_view_1,v_depth);vec3 litColor=apply_lighting(color.rgb,normal,(1.0-u_shadow_intensity*occlusion)*ndotl);vec3 floodLitColor=compute_flood_lighting(u_flood_light_color*u_opacity,1.0-u_shadow_intensity,occlusion,u_ground_shadow_factor);color.rgb=mix(litColor,floodLitColor,flood_radiance);\n#else\nfloat shadowed_lighting_factor=shadowed_light_factor_normal(normal,v_pos_light_view_0,v_pos_light_view_1,v_depth);color.rgb=apply_lighting(color.rgb,normal,shadowed_lighting_factor);\n#endif\n#else\ncolor.rgb=apply_lighting(color.rgb,normal);\n#ifdef FLOOD_LIGHT\ncolor.rgb=mix(color.rgb,u_flood_light_color*u_opacity,flood_radiance);\n#endif\n#endif\ncolor.rgb=mix(color.rgb,v_flat.rgb,u_emissive_strength);color*=u_opacity;\n#endif\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos,h));\n#endif\n#ifdef RENDER_CUTOFF\ncolor*=v_cutoff_opacity;\n#endif\n#ifdef INDICATOR_CUTOUT\ncolor=applyCutout(color);\n#endif\nglFragColor=color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#include "_prelude_terrain.vertex.glsl"\n#include "_prelude_shadow.vertex.glsl"\n#include "_prelude_lighting.glsl"\n#ifdef RENDER_CUTOFF\ninvariant gl_Position;\n#endif\nuniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform float u_edge_radius;in vec4 a_pos_normal_ed;in vec2 a_centroid_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\n#endif\nuniform highp float u_vertical_scale;out vec4 v_color;out vec4 v_flat;\n#ifdef RENDER_SHADOWS\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;out highp vec4 v_pos_light_view_0;out highp vec4 v_pos_light_view_1;out float v_depth;\n#endif\n#if defined(ZERO_ROOF_RADIUS) && !defined(LIGHTING_3D_MODE)\nout vec4 v_roof_color;\n#endif\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\nout highp vec3 v_normal;\n#endif\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;out vec2 v_ao;\n#endif\n#if defined(LIGHTING_3D_MODE) && defined(FLOOD_LIGHT)\nout float v_flood_radius;out float v_has_floodlight;\n#endif\nout float v_height;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define highp float flood_light_wall_radius\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize highp float flood_light_wall_radius\nbase*=u_vertical_scale;height*=u_vertical_scale;vec4 pos_nx=floor(a_pos_normal_ed*0.5);vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\nv_normal=normal;\n#endif\nbase=max(0.0,base);height=max(0.0,top_up_ny.y==0.0 && top_up_ny.x==1.0 ? height-u_edge_radius : height);float t=top_up_ny.x;vec2 centroid_pos=vec2(0.0);\n#if defined(HAS_CENTROID) || defined(TERRAIN)\ncentroid_pos=a_centroid_pos;\n#endif\nfloat ele=0.0;float h=0.0;float c_ele;vec3 pos;\n#ifdef TERRAIN\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);pos=vec3(pos_nx.xy,h);\n#else\nh=t > 0.0 ? height : base;pos=vec3(pos_nx.xy,h);\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*h);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,pos.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*pos.z;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#endif\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(pos,1),AWAY,hidden);h=h-ele;v_height=h;\n#ifdef RENDER_SHADOWS\nvec3 shd_pos0=pos;vec3 shd_pos1=pos;\n#ifdef NORMAL_OFFSET\nvec3 offset=shadow_normal_offset(normal);shd_pos0+=offset*shadow_normal_offset_multiplier0();shd_pos1+=offset*shadow_normal_offset_multiplier1();\n#endif\nv_pos_light_view_0=u_light_matrix_0*vec4(shd_pos0,1);v_pos_light_view_1=u_light_matrix_1*vec4(shd_pos1,1);v_depth=gl_Position.w;\n#endif\nfloat NdotL=0.0;float colorvalue=0.0;\n#ifndef LIGHTING_3D_MODE\ncolorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;NdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),NdotL);if (normal.y !=0.0) {float r=0.84;r=mix(0.7,0.98,1.0-u_lightintensity);NdotL*=(\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}\n#endif\n#ifdef FAUX_AO\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\n#ifdef TERRAIN\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\n#endif\nv_ao=vec2(mix(concave,-concave,start),y_ground);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\n#ifdef PROJECTION_GLOBE_VIEW\ntop_height+=u_height_lift;\n#endif\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\n#endif\n#ifdef LIGHTING_3D_MODE\n#ifdef FLOOD_LIGHT\nfloat is_wall=1.0-float(t > 0.0 && top_up_ny.y > 0.0);v_has_floodlight=float(flood_light_wall_radius > 0.0 && is_wall > 0.0);v_flood_radius=flood_light_wall_radius*u_vertical_scale;\n#endif\nv_color=vec4(color.rgb,1.0);v_flat=vec4(linearProduct(color.rgb,vec3(calculate_NdotL(normal))),1.0);\n#else\nv_color=vec4(0.0,0.0,0.0,1.0);v_color.rgb+=clamp(color.rgb*NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_color*=u_opacity;\n#endif\n#if defined(ZERO_ROOF_RADIUS) && !defined(LIGHTING_3D_MODE)\nfloat roofNdotL=clamp(u_lightpos.z,0.0,1.0);roofNdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),roofNdotL);v_roof_color=vec4(0.0,0.0,0.0,1.0);v_roof_color.rgb+=clamp(color.rgb*roofNdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_roof_color*=u_opacity;\n#endif\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n#ifdef RENDER_CUTOFF\nv_cutoff_opacity=cutoff_opacity(u_cutoff_params,gl_Position.z);\n#endif\n}'),fillExtrusionDepth:qE("in highp float v_depth;void main() {\n#ifndef DEPTH_TEXTURE\nglFragColor=pack_depth(v_depth);\n#endif\n}",'#include "_prelude_terrain.vertex.glsl"\nuniform mat4 u_matrix;uniform float u_edge_radius;uniform float u_vertical_scale;in vec4 a_pos_normal_ed;in vec2 a_centroid_pos;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\nout highp float v_depth;void main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\nbase*=u_vertical_scale;height*=u_vertical_scale;vec3 pos_nx=floor(a_pos_normal_ed.xyz*0.5);mediump vec3 top_up_ny=a_pos_normal_ed.xyz-2.0*pos_nx;base=max(0.0,base);height=max(0.0,top_up_ny.y==0.0 && top_up_ny.x==1.0 ? height-u_edge_radius : height);float t=top_up_ny.x;vec2 centroid_pos=vec2(0.0);\n#if defined(HAS_CENTROID) || defined(TERRAIN)\ncentroid_pos=a_centroid_pos;\n#endif\nvec3 pos;\n#ifdef TERRAIN\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;float ele=elevation(pos_nx.xy);float c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;float h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base);pos=vec3(pos_nx.xy,h);\n#else\npos=vec3(pos_nx.xy,t > 0.0 ? height : base);\n#endif\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(pos,1),AWAY,hidden);v_depth=gl_Position.z/gl_Position.w;}'),fillExtrusionPattern:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform vec2 u_texsize;uniform sampler2D u_image;\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;in vec3 v_ao;\n#endif\n#ifdef LIGHTING_3D_MODE\nin vec3 v_normal;\n#endif\nin vec2 v_pos;in vec4 v_lighting;uniform lowp float u_opacity;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define mediump vec4 pattern\n#pragma mapbox: define highp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize highp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture(u_image,pos);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting(out_color,normalize(v_normal))*u_opacity;\n#else\nout_color=out_color*v_lighting;\n#endif\n#ifdef FAUX_AO\nfloat intensity=u_ao[0];float h=max(0.0,v_ao.z);float h_floors=h/u_ao[1];float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);float shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;float x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);shade*=mix(1.0,x_shade*x_shade*x_shade,concave);out_color.rgb=out_color.rgb*shade;\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\n#ifdef INDICATOR_CUTOUT\nout_color=applyCutout(out_color);\n#endif\nglFragColor=out_color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#include "_prelude_terrain.vertex.glsl"\n#include "_prelude_lighting.glsl"\nuniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform float u_tile_units_to_pixels;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;in vec4 a_pos_normal_ed;in vec2 a_centroid_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\n#endif\nout vec2 v_pos;out vec4 v_lighting;\n#ifdef FAUX_AO\nuniform lowp vec2 u_ao;out vec3 v_ao;\n#endif\n#ifdef LIGHTING_3D_MODE\nout vec3 v_normal;\n#endif\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define mediump vec4 pattern\n#pragma mapbox: define highp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize highp float pixel_ratio\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec4 pos_nx=floor(a_pos_normal_ed*0.5);mediump vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;mediump vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));float edgedistance=a_pos_normal_ed.w;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;base=max(0.0,base);height=max(0.0,height);float t=top_up_ny.x;float z=t > 0.0 ? height : base;vec2 centroid_pos=vec2(0.0);\n#if defined(HAS_CENTROID) || defined(TERRAIN)\ncentroid_pos=a_centroid_pos;\n#endif\nfloat ele=0.0;float h=z;vec3 p;float c_ele;\n#ifdef TERRAIN\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);p=vec3(pos_nx.xy,h);\n#else\np=vec3(pos_nx.xy,z);\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*(p.z+lift));vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,p.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*p.z;p=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\n#endif\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(p,1),AWAY,hidden);vec2 pos=normal.z==1.0\n? pos_nx.xy\n: vec2(edgedistance,z*u_height_factor);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float NdotL=0.0;\n#ifdef LIGHTING_3D_MODE\nNdotL=calculate_NdotL(normal);\n#else\nNdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),NdotL);\n#endif\nif (normal.y !=0.0) {float r=0.84;\n#ifndef LIGHTING_3D_MODE\nr=mix(0.7,0.98,1.0-u_lightintensity);\n#endif\nNdotL*=(\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}\n#ifdef FAUX_AO\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\n#ifdef TERRAIN\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\n#endif\nv_ao=vec3(mix(concave,-concave,start),y_ground,h-ele);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\n#ifdef PROJECTION_GLOBE_VIEW\ntop_height+=u_height_lift;\n#endif\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\n#endif\n#ifdef LIGHTING_3D_MODE\nv_normal=normal;\n#else\nv_lighting.rgb+=clamp(NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;\n#endif \n#ifdef FOG\nv_fog_pos=fog_position(p);\n#endif\n}'),groundShadow:qE('#include "_prelude_shadow.fragment.glsl"\nprecision highp float;uniform vec3 u_ground_shadow_factor;in vec4 v_pos_light_view_0;in vec4 v_pos_light_view_1;in float v_depth;\n#ifdef FOG\nin float v_fog_opacity;\n#endif\nvoid main() {float light=shadowed_light_factor(v_pos_light_view_0,v_pos_light_view_1,v_depth);vec3 shadow=mix(u_ground_shadow_factor,vec3(1.0),light);\n#ifdef RENDER_CUTOFF\nshadow=mix(vec3(1.0),shadow,cutoff_opacity(u_cutoff_params,v_depth));\n#endif\n#ifdef FOG\nshadow=mix(shadow,vec3(1.0),v_fog_opacity);\n#endif\n#ifdef INDICATOR_CUTOUT\nshadow=mix(shadow,vec3(1.0),1.0-applyCutout(vec4(1.0)).r);\n#endif\nglFragColor=vec4(shadow,1.0);}','#include "_prelude_fog.vertex.glsl"\nuniform mat4 u_matrix;uniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;in vec2 a_pos;out vec4 v_pos_light_view_0;out vec4 v_pos_light_view_1;out float v_depth;\n#ifdef FOG\nout float v_fog_opacity;\n#endif\nvoid main() {gl_Position=u_matrix*vec4(a_pos,0.0,1.0);v_pos_light_view_0=u_light_matrix_0*vec4(a_pos,0.0,1.0);v_pos_light_view_1=u_light_matrix_1*vec4(a_pos,0.0,1.0);v_depth=gl_Position.w;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);v_fog_opacity=fog(v_fog_pos);\n#endif\n}'),fillExtrusionGroundEffect:qE("uniform highp float u_ao_pass;uniform highp float u_opacity;uniform highp float u_flood_light_intensity;uniform highp vec3 u_flood_light_color;uniform highp float u_attenuation;uniform sampler2D u_fb;uniform float u_fb_size;\n#ifdef SDF_SUBPASS\nin highp vec2 v_pos;in highp vec4 v_line_segment;in highp float v_flood_light_radius_tile;in highp vec2 v_ao;float line_df(highp vec2 a,highp vec2 b,highp vec2 p) {highp vec2 ba=b-a;highp vec2 pa=p-a;highp float r=clamp(dot(pa,ba)/dot(ba,ba),0.0,1.0);return length(pa-r*ba);}\n#ifdef FOG\nin highp float v_fog;\n#endif\n#endif\nvoid main() {\n#ifdef CLEAR_SUBPASS\nvec4 color=vec4(1.0);\n#ifdef CLEAR_FROM_TEXTURE\ncolor=texture(u_fb,gl_FragCoord.xy/vec2(u_fb_size));\n#endif\nglFragColor=color;\n#else\n#ifdef SDF_SUBPASS\nhighp float d=line_df(v_line_segment.xy,v_line_segment.zw,v_pos);highp float effect_radius=mix(v_flood_light_radius_tile,v_ao.y,u_ao_pass);d/=effect_radius;d=min(d,1.0);d=1.0-pow(1.0-d,u_attenuation);highp float effect_intensity=mix(u_flood_light_intensity,v_ao.x,u_ao_pass);highp float fog=1.0;\n#ifdef FOG\nfog=v_fog;\n#endif\n#ifdef RENDER_CUTOFF\nfog*=v_cutoff_opacity;\n#endif\nglFragColor=vec4(vec3(0.0),mix(1.0,d,effect_intensity*u_opacity*fog));\n#else\nvec4 color=mix(vec4(u_flood_light_color,1.0),vec4(vec3(0.0),1.0),u_ao_pass);\n#ifdef OVERDRAW_INSPECTOR\ncolor=vec4(1.0);\n#endif\nglFragColor=color;HANDLE_WIREFRAME_DEBUG;\n#endif\n#endif\n}",'#include "_prelude_fog.vertex.glsl"\nin highp vec4 a_pos_end;in highp float a_angular_offset_factor;in highp float a_hidden_by_landmark;\n#ifdef SDF_SUBPASS\nout highp vec2 v_pos;out highp vec4 v_line_segment;out highp float v_flood_light_radius_tile;out highp vec2 v_ao;\n#ifdef FOG\nout highp float v_fog;\n#endif\n#endif\nuniform highp float u_flood_light_intensity;uniform highp mat4 u_matrix;uniform highp float u_ao_pass;uniform highp float u_meter_to_tile;uniform highp float u_edge_radius;uniform highp vec2 u_ao;\n#pragma mapbox: define highp float flood_light_ground_radius\nconst float TANGENT_CUTOFF=4.0;const float NORM=32767.0;void main() {\n#pragma mapbox: initialize highp float flood_light_ground_radius\nvec2 p=a_pos_end.xy;vec2 q=floor(a_pos_end.zw*0.5);vec2 start_bottom=a_pos_end.zw-q*2.0;float fl_ground_radius=flood_light_ground_radius;\n#ifdef FORCE_ABS_FL_GROUND_RADIUS\nfl_ground_radius=abs(flood_light_ground_radius);\n#endif\nfloat flood_radius_tile=fl_ground_radius*u_meter_to_tile;vec2 v=normalize(q-p);float ao_radius=u_ao.y/3.5;float effect_radius=mix(flood_radius_tile,ao_radius,u_ao_pass)+u_edge_radius;float angular_offset_factor=a_angular_offset_factor/NORM*TANGENT_CUTOFF;float angular_offset=angular_offset_factor*effect_radius;float top=1.0-start_bottom.y;float side=(0.5-start_bottom.x)*2.0;vec2 extrusion_parallel=v*side*mix(1.0,angular_offset,top);vec2 perp=vec2(v.y,-v.x);vec2 extrusion_perp=perp*effect_radius*top;vec3 pos=vec3(mix(q,p,start_bottom.x),0.0);pos.xy+=extrusion_parallel+extrusion_perp;\n#ifdef SDF_SUBPASS\nv_pos=pos.xy;v_line_segment=vec4(p,q)+perp.xyxy*u_edge_radius;v_flood_light_radius_tile=flood_radius_tile;v_ao=vec2(u_ao.x,ao_radius);\n#ifdef FOG\nv_fog_pos=fog_position(pos);v_fog=1.0-fog(v_fog_pos);\n#endif\n#endif\nfloat hidden_by_landmark=0.0;\n#ifdef HAS_CENTROID\nhidden_by_landmark=a_hidden_by_landmark;\n#endif\nfloat isFloodlit=float(fl_ground_radius > 0.0 && u_flood_light_intensity > 0.0);float hidden=mix(1.0-isFloodlit,isFloodlit,u_ao_pass);hidden+=hidden_by_landmark;gl_Position=mix(u_matrix*vec4(pos,1.0),AWAY,float(hidden > 0.0));\n#ifdef RENDER_CUTOFF\nv_cutoff_opacity=cutoff_opacity(u_cutoff_params,gl_Position.z);\n#endif\n}'),hillshadePrepare:qE("precision highp float;uniform sampler2D u_image;in vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;float getElevation(vec2 coord) {return texture(u_image,coord).r/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y));float b=getElevation(v_pos+vec2(0,-epsilon.y));float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y));float d=getElevation(v_pos+vec2(-epsilon.x,0));float e=getElevation(v_pos+vec2(epsilon.x,0));float f=getElevation(v_pos+vec2(-epsilon.x,epsilon.y));float g=getElevation(v_pos+vec2(0,epsilon.y));float h=getElevation(v_pos+vec2(epsilon.x,epsilon.y));float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2(\n(c+e+e+h)-(a+d+d+f),(f+g+g+h)-(a+b+b+c)\n)/pow(2.0,exaggeration+(19.2562-u_zoom));glFragColor=clamp(vec4(\nderiv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);}","uniform mat4 u_matrix;uniform vec2 u_dimension;in vec2 a_pos;in vec2 a_texture_pos;out vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform sampler2D u_image;in vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;uniform float u_emissive_strength;void main() {vec4 pixel=texture(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);glFragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef LIGHTING_3D_MODE\nglFragColor=apply_lighting_with_emission_ground(glFragColor,u_emissive_strength);\n#endif\n#ifdef FOG\nglFragColor=fog_dither(fog_apply_premultiplied(glFragColor,v_fog_pos));\n#endif\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\nuniform mat4 u_matrix;in vec2 a_pos;in vec2 a_texture_pos;out vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\n}'),line:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform lowp float u_device_pixel_ratio;uniform float u_alpha_discard_threshold;uniform highp vec2 u_trim_offset;in vec2 v_width2;in vec2 v_normal;in float v_gamma_scale;in highp vec4 v_uv;\n#ifdef RENDER_LINE_DASH\nuniform sampler2D u_dash_image;in vec2 v_tex;\n#endif\n#ifdef RENDER_LINE_GRADIENT\nuniform sampler2D u_gradient_image;\n#endif\nfloat luminance(vec3 c) {return (c.r+c.r+c.b+c.g+c.g+c.g)*0.1667;}uniform float u_emissive_strength;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 dash\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float border_width\n#pragma mapbox: define lowp vec4 border_color\nfloat linearstep(float edge0,float edge1,float x) {return clamp((x-edge0)/(edge1-edge0),0.0,1.0);}void main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize lowp vec4 dash\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float border_width\n#pragma mapbox: initialize lowp vec4 border_color\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);\n#ifdef RENDER_LINE_DASH\nfloat sdfdist=texture(u_dash_image,v_tex).a;float sdfgamma=1.0/(2.0*u_device_pixel_ratio)/dash.z;alpha*=linearstep(0.5-sdfgamma/floorwidth,0.5+sdfgamma/floorwidth,sdfdist);\n#endif\nhighp vec4 out_color;\n#ifdef RENDER_LINE_GRADIENT\nout_color=texture(u_gradient_image,v_uv.xy);\n#else\nout_color=color;\n#endif\nfloat trimmed=1.0;\n#ifdef RENDER_LINE_TRIM_OFFSET\nhighp float start=v_uv[2];highp float end=v_uv[3];highp float trim_start=u_trim_offset[0];highp float trim_end=u_trim_offset[1];highp float line_progress=(start+(v_uv.x)*(end-start));if (trim_end > trim_start) {if (line_progress <=trim_end && line_progress >=trim_start) {out_color=vec4(0,0,0,0);trimmed=0.0;}}\n#endif\nif (u_alpha_discard_threshold !=0.0) {if (alpha < u_alpha_discard_threshold) {discard;}}\n#ifdef RENDER_LINE_BORDER\nfloat edgeBlur=(border_width+1.0/u_device_pixel_ratio);float alpha2=clamp(min(dist-(v_width2.t-edgeBlur),v_width2.s-dist)/edgeBlur,0.0,1.0);if (alpha2 < 1.) {float smoothAlpha=smoothstep(0.6,1.0,alpha2);if (border_color.a==0.0) { \nfloat Y=(out_color.a > 0.01) ? luminance(out_color.rgb/out_color.a) : 1.;float adjustment=(Y > 0.) ? 0.5/Y : 0.45;if (out_color.a > 0.25 && Y < 0.25) {vec3 borderColor=(Y > 0.) ? out_color.rgb : vec3(1,1,1)*out_color.a;out_color.rgb=out_color.rgb+borderColor*(adjustment*(1.0-smoothAlpha));} else {out_color.rgb*=(0.6 +0.4*smoothAlpha);}} else {out_color.rgb=mix(border_color.rgb*border_color.a*trimmed,out_color.rgb,smoothAlpha);}}\n#endif\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\n#endif\n#ifdef FOG\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\n#endif\nout_color*=(alpha*opacity);\n#ifdef INDICATOR_CUTOUT\nout_color=applyCutout(out_color);\n#endif\nglFragColor=out_color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#define EXTRUDE_SCALE 0.015873016\nin vec2 a_pos_normal;in vec4 a_data;\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\nin highp vec4 a_packed;\n#endif\n#ifdef RENDER_LINE_DASH\nin float a_linesofar;\n#endif\nuniform mat4 u_matrix;uniform mat2 u_pixels_to_tile_units;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;out vec2 v_normal;out vec2 v_width2;out float v_gamma_scale;out highp vec4 v_uv;\n#ifdef RENDER_LINE_DASH\nuniform vec2 u_texsize;uniform float u_tile_units_to_pixels;out vec2 v_tex;\n#endif\n#ifdef RENDER_LINE_GRADIENT\nuniform float u_image_height;\n#endif\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 dash\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float border_width\n#pragma mapbox: define lowp vec4 border_color\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize lowp vec4 dash\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float border_width\n#pragma mapbox: initialize lowp vec4 border_color\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*EXTRUDE_SCALE;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*EXTRUDE_SCALE*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\n#ifndef RENDER_TO_TEXTURE\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#else\nv_gamma_scale=1.0;\n#endif\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\nfloat a_uv_x=a_packed[0];float a_split_index=a_packed[1];highp float a_clip_start=a_packed[2];highp float a_clip_end=a_packed[3];\n#ifdef RENDER_LINE_GRADIENT\nhighp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec4(a_uv_x,a_split_index*texel_height-half_texel_height,a_clip_start,a_clip_end);\n#else\nv_uv=vec4(a_uv_x,0.0,a_clip_start,a_clip_end);\n#endif\n#endif\n#ifdef RENDER_LINE_DASH\nfloat scale=dash.z==0.0 ? 0.0 : u_tile_units_to_pixels/dash.z;float height=dash.y;v_tex=vec2(a_linesofar*scale/floorwidth,(-normal.y*height+dash.x+0.5)/u_texsize.y);\n#endif\nv_width2=vec2(outset,inset);\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}'),linePattern:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_tile_units_to_pixels;uniform sampler2D u_image;in vec2 v_normal;in vec2 v_width2;in float v_linesofar;in float v_gamma_scale;in float v_width;\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;vec2 pattern_size=vec2(display_size.x/u_tile_units_to_pixels,display_size.y);float aspect=display_size.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x=mod(v_linesofar/pattern_size.x*aspect,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos=mix(pattern_tl*texel_size-texel_size,pattern_br*texel_size+texel_size,vec2(x,y));vec4 color=texture(u_image,pos);\n#ifdef LIGHTING_3D_MODE\ncolor=apply_lighting_ground(color);\n#endif\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#endif\ncolor*=(alpha*opacity);\n#ifdef INDICATOR_CUTOUT\ncolor=applyCutout(color);\n#endif\nglFragColor=color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#define scale 0.015873016\nin vec2 a_pos_normal;in vec4 a_data;in float a_linesofar;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mat2 u_pixels_to_tile_units;uniform lowp float u_device_pixel_ratio;out vec2 v_normal;out vec2 v_width2;out float v_linesofar;out float v_gamma_scale;out float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern\n#pragma mapbox: define lowp float pixel_ratio\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern\n#pragma mapbox: initialize lowp float pixel_ratio\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\n#ifndef RENDER_TO_TEXTURE\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#else\nv_gamma_scale=1.0;\n#endif\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;\n#ifdef FOG\nv_fog_pos=fog_position(pos);\n#endif\n}'),raster:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\n#include "_prelude_raster_array.glsl"\nuniform float u_fade_t;uniform float u_opacity;uniform highp float u_raster_elevation;in vec2 v_pos0;in vec2 v_pos1;in float v_depth;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;uniform float u_emissive_strength;\n#ifndef RASTER_ARRAY\nuniform sampler2D u_image0;uniform sampler2D u_image1;\n#endif\n#ifdef RASTER_COLOR\nuniform sampler2D u_color_ramp;uniform highp vec4 u_colorization_mix;uniform highp float u_colorization_offset;uniform vec2 u_texture_res;\n#endif\nvoid main() {vec4 color0,color1,color;vec2 value;\n#ifdef RASTER_COLOR\n#ifdef RASTER_ARRAY\n#ifdef RASTER_ARRAY_LINEAR\nvalue=mix(\nraTexture2D_image0_linear(v_pos0,u_texture_res,u_colorization_mix,u_colorization_offset),raTexture2D_image1_linear(v_pos1,u_texture_res,u_colorization_mix,u_colorization_offset),u_fade_t\n);\n#else\nvalue=mix(\nraTexture2D_image0_nearest(v_pos0,u_texture_res,u_colorization_mix,u_colorization_offset),raTexture2D_image1_nearest(v_pos1,u_texture_res,u_colorization_mix,u_colorization_offset),u_fade_t\n);\n#endif\nif (value.y > 0.0) value.x/=value.y;\n#else\ncolor=mix(texture(u_image0,v_pos0),texture(u_image1,v_pos1),u_fade_t);value=vec2(u_colorization_offset+dot(color.rgb,u_colorization_mix.rgb),color.a);\n#endif\ncolor=texture(u_color_ramp,vec2(value.x,0.5));if (color.a > 0.0) color.rgb/=color.a;color.a*=value.y;\n#else\ncolor0=texture(u_image0,v_pos0);color1=texture(u_image1,v_pos1);if (color0.a > 0.0) color0.rgb/=color0.a;if (color1.a > 0.0) color1.rgb/=color1.a;color=mix(color0,color1,u_fade_t);\n#endif\ncolor.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(\ndot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);vec3 out_color=mix(u_high_vec,u_low_vec,rgb);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(vec4(out_color,1.0),u_emissive_strength).rgb;\n#endif\n#ifdef FOG\nhighp float fog_limit_high_meters=1000000.0;highp float fog_limit_low_meters=600000.0;float fog_limit=1.0-smoothstep(fog_limit_low_meters,fog_limit_high_meters,u_raster_elevation);out_color=fog_dither(fog_apply(out_color,v_fog_pos,fog_limit));\n#endif\nglFragColor=vec4(out_color*color.a,color.a);\n#ifdef RENDER_CUTOFF\nglFragColor=glFragColor*cutoff_opacity(u_cutoff_params,v_depth);\n#endif\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\nuniform mat4 u_matrix;uniform mat4 u_normalize_matrix;uniform mat4 u_globe_matrix;uniform mat4 u_merc_matrix;uniform mat3 u_grid_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform vec2 u_perspective_transform;uniform vec2 u_texture_offset;uniform float u_raster_elevation;uniform vec4 u_tl_br;uniform float u_zoom_transition;uniform vec2 u_merc_center;\n#define GLOBE_UPSCALE GLOBE_RADIUS/6371008.8;\n#ifdef GLOBE_POLES\nin vec3 a_globe_pos;in vec2 a_uv;\n#elif defined(PROJECTION_GLOBE_VIEW)\nin vec2 a_pos;\n#else\nin vec2 a_pos;in vec2 a_texture_pos;\n#endif\nout vec2 v_pos0;out vec2 v_pos1;out float v_depth;void main() {vec2 uv;\n#ifdef GLOBE_POLES\nvec3 globe_pos=a_globe_pos;globe_pos+=normalize(globe_pos)*u_raster_elevation*GLOBE_UPSCALE;gl_Position=u_matrix*u_globe_matrix*vec4(globe_pos ,1.0);uv=a_uv;\n#ifdef FOG\nv_fog_pos=fog_position((u_normalize_matrix*vec4(a_globe_pos,1.0)).xyz);\n#endif\n#else\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 decomposed_pos_and_skirt=decomposeToPosAndSkirt(a_pos);vec3 latLng=u_grid_matrix*vec3(decomposed_pos_and_skirt.xy,1.0);vec2 globe_tl=vec2(u_tl_br.x,u_tl_br.y);vec2 globe_br=vec2(u_tl_br.z,u_tl_br.w);float mercatorY=mercatorYfromLat(latLng[0]);float uvY=1.0-((mercatorY-globe_br.y)/(globe_tl.y-globe_br.y));float mercatorX=mercatorXfromLng(latLng[1]);float uvX=(mercatorX-globe_br.x)/(globe_tl.x-globe_br.x);vec3 globe_pos=latLngToECEF(latLng.xy);vec2 merc_pos=vec2(mercatorX,mercatorY);uv=vec2(uvX,uvY);globe_pos+=normalize(globe_pos)*u_raster_elevation*GLOBE_UPSCALE;vec4 globe_world_pos=u_globe_matrix*vec4(globe_pos,1.0);vec4 merc_world_pos=vec4(0.0);if (u_zoom_transition > 0.0) {merc_world_pos=vec4(merc_pos,u_raster_elevation,1.0);merc_world_pos.xy-=u_merc_center;merc_world_pos.x=wrap(merc_world_pos.x,-0.5,0.5);merc_world_pos=u_merc_matrix*merc_world_pos;}vec4 interpolated_pos=vec4(mix(globe_world_pos.xyz,merc_world_pos.xyz,u_zoom_transition),1.0);gl_Position=u_matrix*interpolated_pos;\n#ifdef FOG\nv_fog_pos=fog_position((u_normalize_matrix*vec4(globe_pos,1.0)).xyz);\n#endif\n#else\nfloat w=1.0+dot(a_texture_pos,u_perspective_transform);gl_Position=u_matrix*vec4(a_pos*w,u_raster_elevation,w);\n#ifdef FOG\nv_fog_pos=fog_position(a_pos);\n#endif\nuv=a_texture_pos/8192.0;\n#endif\n#endif\nv_pos0=uv;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;v_pos0=u_texture_offset.x+u_texture_offset.y*v_pos0;v_pos1=u_texture_offset.x+u_texture_offset.y*v_pos1;\n#ifdef RENDER_CUTOFF\nv_depth=gl_Position.z;\n#endif\n}'),symbolIcon:qE('#include "_prelude_lighting.glsl"\nuniform sampler2D u_texture;\n#ifdef ICON_TRANSITION\nuniform float u_icon_transition;\n#endif\nin float v_fade_opacity;in vec2 v_tex_a;\n#ifdef ICON_TRANSITION\nin vec2 v_tex_b;\n#endif\nuniform mediump float u_icon_saturation;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float emissive_strength\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float emissive_strength\nlowp float alpha=opacity*v_fade_opacity;vec4 out_color;\n#ifdef ICON_TRANSITION\nvec4 a=texture(u_texture,v_tex_a)*(1.0-u_icon_transition);vec4 b=texture(u_texture,v_tex_b)*u_icon_transition;out_color=(a+b)*alpha;\n#else\nout_color=texture(u_texture,v_tex_a)*alpha;\n#endif\n#ifdef SATURATION\nvec3 luma=vec3(dot(out_color.rgb,vec3(0.2126,0.7152,0.0722)));out_color.rgb=mix(luma,out_color.rgb,u_icon_saturation);\n#endif\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,emissive_strength);\n#endif\nglFragColor=out_color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_terrain.vertex.glsl"\nin vec4 a_pos_offset;in vec4 a_tex_size;in vec4 a_pixeloffset;in vec4 a_projected_pos;in float a_fade_opacity;\n#ifdef Z_OFFSET\nin float a_z_offset;\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_globe_anchor;in vec3 a_globe_normal;\n#endif\n#ifdef ICON_TRANSITION\nin vec2 a_texb;\n#endif\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform vec3 u_up_vector;\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\n#endif\nout vec2 v_tex_a;\n#ifdef ICON_TRANSITION\nout vec2 v_tex_b;\n#endif\nout float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float emissive_strength\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float emissive_strength\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_min_font_scale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;float e=elevation(tile_anchor);\n#ifdef Z_OFFSET\ne+=a_z_offset;\n#endif\nvec3 h=elevationVector(tile_anchor)*e;float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\n#else\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\n#endif\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjected_point;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetProjected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\n#else\noffsetProjected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\n#endif\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetProjected_point.xy/offsetProjected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\n#else\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*max(a_min_font_scale,font_scale)+a_pxoffset/16.0);\n#ifdef TERRAIN\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\n#endif\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nvec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float out_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change))*projection_transition_fade;float alpha=opacity*out_fade_opacity;float hidden=float(alpha==0.0 || projected_point.w <=0.0 || occlusion_fade==0.0);\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,hidden);\n#else\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,hidden);\n#endif\nv_tex_a=a_tex/u_texsize;\n#ifdef ICON_TRANSITION\nv_tex_b=a_texb/u_texsize;\n#endif\nv_fade_opacity=out_fade_opacity;}'),symbolSDF:qE('#include "_prelude_lighting.glsl"\n#define SDF_PX 8.0\nuniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;uniform bool u_is_halo;flat in float v_draw_halo;in vec2 v_data0;in vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\n#pragma mapbox: define lowp float emissive_strength\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\n#pragma mapbox: initialize lowp float emissive_strength\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;bool draw_halo=v_draw_halo > 0.0;if (draw_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);vec4 out_color=color*(alpha*opacity*fade_opacity);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,emissive_strength);\n#endif\nglFragColor=out_color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_terrain.vertex.glsl"\nin vec4 a_pos_offset;in vec4 a_tex_size;in vec4 a_pixeloffset;in vec4 a_projected_pos;in float a_fade_opacity;\n#ifdef Z_OFFSET\nin float a_z_offset;\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_globe_anchor;in vec3 a_globe_normal;\n#endif\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;uniform bool u_is_halo;\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\n#endif\nflat out float v_draw_halo;out vec2 v_data0;out vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\n#pragma mapbox: define lowp float emissive_strength\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\n#pragma mapbox: initialize lowp float emissive_strength\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;float e=elevation(tile_anchor);\n#ifdef Z_OFFSET\ne+=a_z_offset;\n#endif\nvec3 h=elevationVector(tile_anchor)*e;float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\n#else\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\n#endif\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetprojected_point;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetprojected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\n#else\noffsetprojected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\n#endif\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetprojected_point.xy/offsetprojected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\n#else\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset);\n#ifdef TERRAIN\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\n#endif\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nvec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));float out_fade_opacity=interpolated_fade_opacity*projection_transition_fade;float alpha=opacity*out_fade_opacity;float hidden=float(alpha==0.0 || projected_point.w <=0.0 || occlusion_fade==0.0);\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,hidden);\n#else\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,hidden);\n#endif\nfloat gamma_scale=gl_Position.w;v_draw_halo=(u_is_halo && float(gl_InstanceID)==0.0) ? 1.0 : 0.0;v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,out_fade_opacity);}'),symbolTextAndIcon:qE('#include "_prelude_lighting.glsl"\n#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_halo;flat in float v_draw_halo;in vec4 v_data0;in vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\n#pragma mapbox: define lowp float emissive_strength\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\n#pragma mapbox: initialize lowp float emissive_strength\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;glFragColor=texture(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;bool draw_halo=v_draw_halo > 0.0;if (draw_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);vec4 out_color=color*(alpha*opacity*fade_opacity);\n#ifdef LIGHTING_3D_MODE\nout_color=apply_lighting_with_emission_ground(out_color,emissive_strength);\n#endif\nglFragColor=out_color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_terrain.vertex.glsl"\nin vec4 a_pos_offset;in vec4 a_tex_size;in vec4 a_projected_pos;in float a_fade_opacity;\n#ifdef Z_OFFSET\nin float a_z_offset;\n#endif\n#ifdef PROJECTION_GLOBE_VIEW\nin vec3 a_globe_anchor;in vec3 a_globe_normal;\n#endif\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;uniform vec2 u_texsize_icon;uniform bool u_is_halo;\n#ifdef PROJECTION_GLOBE_VIEW\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\n#endif\nflat out float v_draw_halo;out vec4 v_data0;out vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\n#pragma mapbox: define lowp float emissive_strength\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\n#pragma mapbox: initialize lowp float emissive_strength\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;float e=elevation(tile_anchor);\n#ifdef Z_OFFSET\ne+=a_z_offset;\n#endif\nvec3 h=elevationVector(tile_anchor)*e;float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\n#else\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\n#endif\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offset_projected_point=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projected_point.xy/projected_point.w;vec2 b=offset_projected_point.xy/offset_projected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\n#else\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\n#endif\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*font_scale);\n#ifdef TERRAIN\n#ifdef PITCH_WITH_MAP_TERRAIN\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\n#endif\n#endif\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));float projection_transition_fade=1.0;\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\n#endif\nfloat out_fade_opacity=interpolated_fade_opacity*projection_transition_fade;float alpha=opacity*out_fade_opacity;float hidden=float(alpha==0.0 || projected_point.w <=0.0 || occlusion_fade==0.0);\n#ifdef PROJECTION_GLOBE_VIEW\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,hidden);\n#else\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,hidden);\n#endif\nfloat gamma_scale=gl_Position.w;v_draw_halo=(u_is_halo && float(gl_InstanceID)==0.0) ? 1.0 : 0.0;v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,out_fade_opacity,is_sdf);}'),terrainRaster:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_shadow.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform sampler2D u_image0;in vec2 v_pos0;\n#ifdef FOG\nin float v_fog_opacity;\n#endif\n#ifdef RENDER_SHADOWS\nin vec4 v_pos_light_view_0;in vec4 v_pos_light_view_1;in float v_depth;\n#endif\nuniform vec3 u_ground_shadow_factor;void main() {vec4 image_color=texture(u_image0,v_pos0);vec4 color;\n#ifdef LIGHTING_3D_MODE\nconst vec3 normal=vec3(0.0,0.0,1.0);\n#ifdef RENDER_SHADOWS\nfloat cutoffOpacity=1.0;\n#ifdef RENDER_CUTOFF\ncutoffOpacity=cutoff_opacity(u_cutoff_params,v_depth);\n#endif\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\nvec3 unlit_base=image_color.rgb*(1.0-image_color.a);vec3 emissive_base=image_color.rgb*image_color.a;float ndotl=u_shadow_direction.z;float occlusion=ndotl < 0.0 ? 1.0 : shadow_occlusion(v_pos_light_view_0,v_pos_light_view_1,v_depth,0.0);ndotl=max(0.0,ndotl);vec3 lit=apply_lighting(unlit_base,normal,mix(1.0,(1.0-(u_shadow_intensity*occlusion))*ndotl,cutoffOpacity));vec3 emissive=compute_emissive_draped(emissive_base,1.0-u_shadow_intensity,occlusion,u_ground_shadow_factor);color.rgb=lit+emissive;color.a=1.0;\n#else\nfloat lighting_factor=shadowed_light_factor_normal_unbiased(normal,v_pos_light_view_0,v_pos_light_view_1,v_depth);color=apply_lighting(image_color,normal,mix(1.0,lighting_factor,cutoffOpacity));\n#endif\n#else\nfloat lighting_factor=u_lighting_directional_dir.z;color=apply_lighting(image_color,normal,lighting_factor);\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\ncolor.rgb=mix(color.rgb,image_color.rgb,image_color.a);color.a=1.0;\n#endif\n#endif\n#else\ncolor=image_color;\n#endif\n#ifdef FOG\n#ifdef ZERO_EXAGGERATION\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#else\ncolor=fog_dither(fog_apply_from_vert(color,v_fog_opacity));\n#endif\n#endif\nglFragColor=color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#include "_prelude_terrain.vertex.glsl"\nuniform mat4 u_matrix;uniform float u_skirt_height;in vec2 a_pos;out vec2 v_pos0;\n#ifdef FOG\nout float v_fog_opacity;\n#endif\n#ifdef RENDER_SHADOWS\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;out vec4 v_pos_light_view_0;out vec4 v_pos_light_view_1;out float v_depth;\n#endif\nvoid main() {vec3 decomposedPosAndSkirt=decomposeToPosAndSkirt(a_pos);float skirt=decomposedPosAndSkirt.z;vec2 decodedPos=decomposedPosAndSkirt.xy;float elevation=elevation(decodedPos)-skirt*u_skirt_height;v_pos0=decodedPos/8192.0;gl_Position=u_matrix*vec4(decodedPos,elevation,1.0);\n#ifdef FOG\n#ifdef ZERO_EXAGGERATION\nv_fog_pos=fog_position(decodedPos);\n#else\nv_fog_opacity=fog(fog_position(vec3(decodedPos,elevation)));\n#endif\n#endif\n#ifdef RENDER_SHADOWS\nvec3 pos=vec3(decodedPos,elevation);v_pos_light_view_0=u_light_matrix_0*vec4(pos,1.);v_pos_light_view_1=u_light_matrix_1*vec4(pos,1.);v_depth=gl_Position.w;\n#endif\n}'),terrainDepth:qE("precision highp float;in float v_depth;void main() {glFragColor=pack_depth(v_depth);}",'#include "_prelude_terrain.vertex.glsl"\nuniform mat4 u_matrix;in vec2 a_pos;out float v_depth;void main() {float elevation=elevation(a_pos);gl_Position=u_matrix*vec4(a_pos,elevation,1.0);v_depth=gl_Position.z/gl_Position.w;}'),skybox:qE('#include "_prelude_fog.fragment.glsl"\nin lowp vec3 v_uv;uniform lowp samplerCube u_cubemap;uniform lowp float u_opacity;uniform highp float u_temporal_offset;uniform highp vec3 u_sun_direction;float sun_disk(highp vec3 ray_direction,highp vec3 sun_direction) {highp float cos_angle=dot(normalize(ray_direction),sun_direction);const highp float cos_sun_angular_diameter=0.99996192306;const highp float smoothstep_delta=1e-5;return smoothstep(\ncos_sun_angular_diameter-smoothstep_delta,cos_sun_angular_diameter+smoothstep_delta,cos_angle);}float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec3 uv=v_uv;const float y_bias=0.015;uv.y+=y_bias;uv.y=pow(abs(uv.y),1.0/5.0);uv.y=map(uv.y,0.0,1.0,-1.0,1.0);vec3 sky_color=texture(u_cubemap,uv).rgb;\n#ifdef FOG\nsky_color=fog_apply_sky_gradient(v_uv.xzy,sky_color);\n#endif\nsky_color.rgb=dither(sky_color.rgb,gl_FragCoord.xy+u_temporal_offset);sky_color+=0.1*sun_disk(v_uv,u_sun_direction);glFragColor=vec4(sky_color*u_opacity,u_opacity);\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\n}',PE),skyboxGradient:qE('#include "_prelude_fog.fragment.glsl"\nin highp vec3 v_uv;uniform lowp sampler2D u_color_ramp;uniform highp vec3 u_center_direction;uniform lowp float u_radius;uniform lowp float u_opacity;uniform highp float u_temporal_offset;void main() {float progress=acos(dot(normalize(v_uv),u_center_direction))/u_radius;vec4 color=texture(u_color_ramp,vec2(progress,0.5));\n#ifdef FOG\ncolor.rgb=fog_apply_sky_gradient(v_uv.xzy,color.rgb/color.a)*color.a;\n#endif\ncolor*=u_opacity;color.rgb=dither(color.rgb,gl_FragCoord.xy+u_temporal_offset);glFragColor=color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\n}',PE),skyboxCapture:qE("\nin highp vec3 v_position;uniform highp float u_sun_intensity;uniform highp float u_luminance;uniform lowp vec3 u_sun_direction;uniform highp vec4 u_color_tint_r;uniform highp vec4 u_color_tint_m;precision highp float;\n#define BETA_R vec3(5.5e-6,13.0e-6,22.4e-6)\n#define BETA_M vec3(21e-6,21e-6,21e-6)\n#define MIE_G 0.76\n#define DENSITY_HEIGHT_SCALE_R 8000.0\n#define DENSITY_HEIGHT_SCALE_M 1200.0\n#define PLANET_RADIUS 6360e3\n#define ATMOSPHERE_RADIUS 6420e3\n#define SAMPLE_STEPS 10\n#define DENSITY_STEPS 4\nfloat ray_sphere_exit(vec3 orig,vec3 dir,float radius) {float a=dot(dir,dir);float b=2.0*dot(dir,orig);float c=dot(orig,orig)-radius*radius;float d=sqrt(b*b-4.0*a*c);return (-b+d)/(2.0*a);}vec3 extinction(vec2 density) {return exp(-vec3(BETA_R*u_color_tint_r.a*density.x+BETA_M*u_color_tint_m.a*density.y));}vec2 local_density(vec3 point) {float height=max(length(point)-PLANET_RADIUS,0.0);float exp_r=exp(-height/DENSITY_HEIGHT_SCALE_R);float exp_m=exp(-height/DENSITY_HEIGHT_SCALE_M);return vec2(exp_r,exp_m);}float phase_ray(float cos_angle) {return (3.0/(16.0*PI))*(1.0+cos_angle*cos_angle);}float phase_mie(float cos_angle) {return (3.0/(8.0*PI))*((1.0-MIE_G*MIE_G)*(1.0+cos_angle*cos_angle))/((2.0+MIE_G*MIE_G)*pow(1.0+MIE_G*MIE_G-2.0*MIE_G*cos_angle,1.5));}vec2 density_to_atmosphere(vec3 point,vec3 light_dir) {float ray_len=ray_sphere_exit(point,light_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(DENSITY_STEPS);vec2 density_point_to_atmosphere=vec2(0.0);for (int i=0; i < DENSITY_STEPS;++i) {vec3 point_on_ray=point+light_dir*((float(i)+0.5)*step_len);density_point_to_atmosphere+=local_density(point_on_ray)*step_len;;}return density_point_to_atmosphere;}vec3 atmosphere(vec3 ray_dir,vec3 sun_direction,float sun_intensity) {vec2 density_orig_to_point=vec2(0.0);vec3 scatter_r=vec3(0.0);vec3 scatter_m=vec3(0.0);vec3 origin=vec3(0.0,PLANET_RADIUS,0.0);float ray_len=ray_sphere_exit(origin,ray_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(SAMPLE_STEPS);for (int i=0; i < SAMPLE_STEPS;++i) {vec3 point_on_ray=origin+ray_dir*((float(i)+0.5)*step_len);vec2 density=local_density(point_on_ray)*step_len;density_orig_to_point+=density;vec2 density_point_to_atmosphere=density_to_atmosphere(point_on_ray,sun_direction);vec2 density_orig_to_atmosphere=density_orig_to_point+density_point_to_atmosphere;vec3 extinction=extinction(density_orig_to_atmosphere);scatter_r+=density.x*extinction;scatter_m+=density.y*extinction;}float cos_angle=dot(ray_dir,sun_direction);float phase_r=phase_ray(cos_angle);float phase_m=phase_mie(cos_angle);vec3 beta_r=BETA_R*u_color_tint_r.rgb*u_color_tint_r.a;vec3 beta_m=BETA_M*u_color_tint_m.rgb*u_color_tint_m.a;return (scatter_r*phase_r*beta_r+scatter_m*phase_m*beta_m)*sun_intensity;}const float A=0.15;const float B=0.50;const float C=0.10;const float D=0.20;const float E=0.02;const float F=0.30;vec3 uncharted2_tonemap(vec3 x) {return ((x*(A*x+C*B)+D*E)/(x*(A*x+B)+D*F))-E/F;}void main() {vec3 ray_direction=v_position;ray_direction.y=pow(ray_direction.y,5.0);const float y_bias=0.015;ray_direction.y+=y_bias;vec3 color=atmosphere(normalize(ray_direction),u_sun_direction,u_sun_intensity);float white_scale=1.0748724675633854;color=uncharted2_tonemap((log2(2.0/pow(u_luminance,4.0)))*color)*white_scale;glFragColor=vec4(color,1.0);}","in highp vec3 a_pos_3f;uniform mat3 u_matrix_3f;out highp vec3 v_position;float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec4 pos=vec4(u_matrix_3f*a_pos_3f,1.0);v_position=pos.xyz;v_position.y*=-1.0;v_position.y=map(v_position.y,-1.0,1.0,0.0,1.0);gl_Position=vec4(a_pos_3f.xy,0.0,1.0);}"),globeRaster:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform sampler2D u_image0;in vec2 v_pos0;\n#ifndef FOG\nuniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform vec2 u_viewport;\n#endif\nvoid main() {vec4 color;\n#ifdef CUSTOM_ANTIALIASING\nvec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);vec3 dir=normalize(ray_dir);vec3 closest_point=dot(u_globe_pos,dir)*dir;float norm_dist_from_center=1.0-length(closest_point-u_globe_pos)/u_globe_radius;const float antialias_pixel=2.0;float antialias_factor=antialias_pixel*fwidth(norm_dist_from_center);float antialias=smoothstep(0.0,antialias_factor,norm_dist_from_center);vec4 raster=texture(u_image0,v_pos0);\n#ifdef LIGHTING_3D_MODE\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\nraster=apply_lighting_with_emission_ground(raster,raster.a);color=vec4(raster.rgb*antialias,antialias);\n#else\nraster=apply_lighting_ground(raster);color=vec4(raster.rgb*antialias,raster.a*antialias);\n#endif\n#else\ncolor=vec4(raster.rgb*antialias,raster.a*antialias);\n#endif\n#else\ncolor=texture(u_image0,v_pos0);\n#ifdef LIGHTING_3D_MODE\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\ncolor=apply_lighting_with_emission_ground(color,color.a);color.a=1.0;\n#else\ncolor=apply_lighting_ground(color);\n#endif\n#endif\n#endif\n#ifdef FOG\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\n#endif\nglFragColor=color;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#include "_prelude_terrain.vertex.glsl"\nuniform mat4 u_proj_matrix;uniform mat4 u_normalize_matrix;uniform mat4 u_globe_matrix;uniform mat4 u_merc_matrix;uniform float u_zoom_transition;uniform vec2 u_merc_center;uniform mat3 u_grid_matrix;uniform float u_skirt_height;\n#ifdef GLOBE_POLES\nin vec3 a_globe_pos;in vec2 a_uv;\n#else\nin vec2 a_pos;\n#endif\nout vec2 v_pos0;void main() {\n#ifdef GLOBE_POLES\nvec3 globe_pos=a_globe_pos;vec2 uv=a_uv;\n#else\nfloat tiles=u_grid_matrix[0][2];float idx=u_grid_matrix[1][2];float idy=u_grid_matrix[2][2];vec3 decomposed_pos_and_skirt=decomposeToPosAndSkirt(a_pos);vec3 latLng=u_grid_matrix*vec3(decomposed_pos_and_skirt.xy,1.0);float mercatorY=mercatorYfromLat(latLng[0]);float uvY=mercatorY*tiles-idy;float mercatorX=mercatorXfromLng(latLng[1]);float uvX=mercatorX*tiles-idx;vec3 globe_pos=latLngToECEF(latLng.xy);vec2 merc_pos=vec2(mercatorX,mercatorY);vec2 uv=vec2(uvX,uvY);\n#endif\nv_pos0=uv;vec2 tile_pos=uv*EXTENT;vec3 globe_derived_up_vector=normalize(globe_pos)*u_tile_up_scale;\n#ifdef GLOBE_POLES\nvec3 up_vector=globe_derived_up_vector;\n#else\nvec3 up_vector=elevationVector(tile_pos);\n#endif\nfloat height=elevation(tile_pos);globe_pos+=up_vector*height;\n#ifndef GLOBE_POLES\nglobe_pos-=globe_derived_up_vector*u_skirt_height*decomposed_pos_and_skirt.z;\n#endif\n#ifdef GLOBE_POLES\nvec4 interpolated_pos=u_globe_matrix*vec4(globe_pos,1.0);\n#else\nvec4 globe_world_pos=u_globe_matrix*vec4(globe_pos,1.0);vec4 merc_world_pos=vec4(0.0);if (u_zoom_transition > 0.0) {merc_world_pos=vec4(merc_pos,height-u_skirt_height*decomposed_pos_and_skirt.z,1.0);merc_world_pos.xy-=u_merc_center;merc_world_pos.x=wrap(merc_world_pos.x,-0.5,0.5);merc_world_pos=u_merc_matrix*merc_world_pos;}vec4 interpolated_pos=vec4(mix(globe_world_pos.xyz,merc_world_pos.xyz,u_zoom_transition),1.0);\n#endif\ngl_Position=u_proj_matrix*interpolated_pos;\n#ifdef FOG\nv_fog_pos=fog_position((u_normalize_matrix*vec4(globe_pos,1.0)).xyz);\n#endif\n}'),globeAtmosphere:qE('#include "_prelude_fog.fragment.glsl"\nuniform float u_transition;uniform highp float u_fadeout_range;uniform highp float u_temporal_offset;uniform vec4 u_color;uniform vec4 u_high_color;uniform vec4 u_space_color;uniform float u_horizon_angle;in highp vec3 v_ray_dir;in highp vec3 v_horizon_dir;void main() {highp vec3 dir=normalize(v_ray_dir);float globe_pos_dot_dir;\n#ifdef PROJECTION_GLOBE_VIEW\nglobe_pos_dot_dir=dot(u_globe_pos,dir);highp vec3 closest_point_forward=abs(globe_pos_dot_dir)*dir;float norm_dist_from_center=length(closest_point_forward-u_globe_pos)/u_globe_radius;if (norm_dist_from_center < 0.98) {\n#ifdef ALPHA_PASS\nglFragColor=vec4(0,0,0,0);return;\n#else\n#ifdef NATIVE\nglFragColor=vec4(1,1,1,1);\n#else\nglFragColor=vec4(0,0,0,1);\n#endif\nreturn;\n#endif\n}\n#endif\nhighp vec3 horizon_dir=normalize(v_horizon_dir);float horizon_angle_mercator=dir.y < horizon_dir.y ?\n0.0 : max(acos(clamp(dot(dir,horizon_dir),-1.0,1.0)),0.0);float horizon_angle;\n#ifdef PROJECTION_GLOBE_VIEW\nhighp vec3 closest_point=globe_pos_dot_dir*dir;highp float closest_point_to_center=length(closest_point-u_globe_pos);highp float theta=asin(clamp(closest_point_to_center/length(u_globe_pos),-1.0,1.0));horizon_angle=globe_pos_dot_dir < 0.0 ?\nPI-theta-u_horizon_angle : theta-u_horizon_angle;float angle_t=pow(u_transition,10.0);horizon_angle=mix(horizon_angle,horizon_angle_mercator,angle_t);\n#else\nhorizon_angle=horizon_angle_mercator;\n#endif\nhorizon_angle/=PI;float t=exp(-horizon_angle/u_fadeout_range);float alpha_0=u_color.a;float alpha_1=u_high_color.a;float alpha_2=u_space_color.a;vec3 color_stop_0=u_color.rgb;vec3 color_stop_1=u_high_color.rgb;vec3 color_stop_2=u_space_color.rgb;\n#ifdef ALPHA_PASS\nfloat a0=mix(alpha_2,1.0,alpha_1);float a1=mix(a0,1.0,alpha_0);float a2=mix(a0,a1,t);float a =mix(alpha_2,a2,t);glFragColor=vec4(1.0,1.0,1.0,a);\n#else\nvec3 c0=mix(color_stop_2,color_stop_1,alpha_1);vec3 c1=mix(c0,color_stop_0,alpha_0);vec3 c2=mix(c0,c1,t);vec3 c=c2;\n#ifndef NATIVE\nc=dither(c,gl_FragCoord.xy+u_temporal_offset);\n#endif\nglFragColor=vec4(c*t,t);\n#endif\n}',"in vec3 a_pos;in vec2 a_uv;uniform vec3 u_frustum_tl;uniform vec3 u_frustum_tr;uniform vec3 u_frustum_br;uniform vec3 u_frustum_bl;uniform float u_horizon;out highp vec3 v_ray_dir;out highp vec3 v_horizon_dir;void main() {v_ray_dir=mix(\nmix(u_frustum_tl,u_frustum_tr,a_uv.x),mix(u_frustum_bl,u_frustum_br,a_uv.x),a_uv.y);v_horizon_dir=mix(\nmix(u_frustum_tl,u_frustum_bl,u_horizon),mix(u_frustum_tr,u_frustum_br,u_horizon),a_uv.x);gl_Position=vec4(a_pos,1.0);}"),model:qE('#include "_prelude_fog.fragment.glsl"\n#include "_prelude_shadow.fragment.glsl"\n#include "_prelude_lighting.glsl"\nuniform float u_opacity;uniform vec3 u_lightcolor;uniform vec3 u_lightpos;uniform float u_lightintensity;uniform vec4 u_baseColorFactor;uniform vec4 u_emissiveFactor;uniform float u_metallicFactor;uniform float u_roughnessFactor;uniform float u_emissive_strength;in highp vec4 v_position_height;in lowp vec4 v_color_mix;\n#ifdef RENDER_SHADOWS\nin vec4 v_pos_light_view_0;in vec4 v_pos_light_view_1;in float v_depth_shadows;\n#endif\n#pragma mapbox: define-attribute highp vec3 normal_3f\n#pragma mapbox: define-attribute highp vec3 color_3f\n#pragma mapbox: define-attribute highp vec4 color_4f\n#pragma mapbox: define-attribute highp vec2 uv_2f\n#pragma mapbox: initialize-attribute highp vec3 normal_3f\n#pragma mapbox: initialize-attribute highp vec3 color_3f\n#pragma mapbox: initialize-attribute highp vec4 color_4f\n#pragma mapbox: initialize-attribute highp vec2 uv_2f\n#ifdef HAS_ATTRIBUTE_a_pbr\nin lowp vec4 v_roughness_metallic_emissive_alpha;in mediump vec4 v_height_based_emission_params;\n#endif\n#ifdef HAS_TEXTURE_u_baseColorTexture\nuniform sampler2D u_baseColorTexture;uniform bool u_baseTextureIsAlpha;uniform bool u_alphaMask;uniform float u_alphaCutoff;\n#endif\n#ifdef HAS_TEXTURE_u_metallicRoughnessTexture\nuniform sampler2D u_metallicRoughnessTexture;\n#endif\n#ifdef HAS_TEXTURE_u_occlusionTexture\nuniform sampler2D u_occlusionTexture;uniform float u_aoIntensity;\n#endif\n#ifdef HAS_TEXTURE_u_normalTexture\nuniform sampler2D u_normalTexture;\n#endif\n#ifdef HAS_TEXTURE_u_emissionTexture\nuniform sampler2D u_emissionTexture;\n#endif\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\nin highp float v_depth;uniform sampler2D u_depthTexture;uniform vec2 u_inv_depth_size;bool isOccluded() {vec2 coord=gl_FragCoord.xy*u_inv_depth_size;highp float depth=unpack_depth(texture(u_depthTexture,coord));return v_depth > depth+0.0005;}\n#endif\n#define saturate(_x) clamp(_x,0.,1.)\nvec3 linearTosRGB(vec3 color) {return pow(color,vec3(1./2.2));}vec3 sRGBToLinear(vec3 srgbIn) {return pow(srgbIn,vec3(2.2));}float calculate_NdotL(vec3 normal,vec3 lightDir) {const float ext=0.70710678118;return (clamp(dot(normal,lightDir),-ext,1.0)+ext)/(1.0+ext);}vec3 getDiffuseShadedColor(vec3 albedo,vec3 normal,vec3 lightDir,vec3 lightColor)\n{\n#ifdef LIGHTING_3D_MODE\nvec3 transformed_normal=vec3(-normal.xy,normal.z);float lighting_factor;\n#ifdef RENDER_SHADOWS\nlighting_factor=shadowed_light_factor_normal(transformed_normal,v_pos_light_view_0,v_pos_light_view_1,v_depth_shadows);\n#else\nlighting_factor=saturate(dot(transformed_normal,u_lighting_directional_dir));\n#endif\nreturn apply_lighting(albedo,transformed_normal,lighting_factor);\n#else\nvec3 n=normal;float colorvalue=((albedo.x*0.2126)+(albedo.y*0.7152))+(albedo.z*0.0722);vec3 c=vec3(0.03,0.03,0.03);float directional=clamp(dot(n,vec3(lightDir)),0.0,1.0);directional=mix(1.0-u_lightintensity,max((1.0-colorvalue)+u_lightintensity,1.0),directional);vec3 c3=c+clamp((albedo*directional)*lightColor,mix(vec3(0.0),vec3(0.3),vec3(1.0)-lightColor),vec3(1.0));return c3;\n#endif\n}vec4 getBaseColor() {vec4 albedo=u_baseColorFactor;\n#ifdef HAS_ATTRIBUTE_a_color_3f\nalbedo*=vec4(color_3f,1.0);\n#endif\n#ifdef HAS_ATTRIBUTE_a_pbr\n#else\n#ifdef HAS_ATTRIBUTE_a_color_4f\nalbedo*=color_4f;\n#endif\n#endif\n#if defined (HAS_TEXTURE_u_baseColorTexture) && defined (HAS_ATTRIBUTE_a_uv_2f)\nvec4 texColor=texture(u_baseColorTexture,uv_2f);if(u_alphaMask) {if (texColor.w < u_alphaCutoff) {discard;}}\n#ifdef UNPREMULT_TEXTURE_IN_SHADER\nif(texColor.w > 0.0) {texColor.rgb/=texColor.w;}texColor.w=1.0;\n#endif\ntexColor.rgb=sRGBToLinear(texColor.rgb);if(u_baseTextureIsAlpha) {if (texColor.w < 0.5) {discard;}albedo*=mix(vec4(texColor.rgb,texColor.a),vec4(texColor.a),float(u_baseTextureIsAlpha));} else {albedo*=texColor;}\n#endif\nreturn vec4(mix(albedo.rgb,v_color_mix.rgb,v_color_mix.a),albedo.a);}highp mat3 cotangentFrame(highp vec3 N,highp vec3 p,highp vec2 uv ) {\n#ifdef HAS_TEXTURE_u_normalTexture\nhighp vec3 dp1=vec3(dFdx(p.x),dFdx(p.y),dFdx(p.z));highp vec3 dp2=vec3(dFdy(p.x),dFdy(p.y),dFdy(p.z));highp vec2 duv1=vec2(dFdx(uv.x),dFdx(uv.y));highp vec2 duv2=vec2(dFdy(uv.x),dFdy(uv.y));highp vec3 dp2perp=cross( dp2,N );highp vec3 dp1perp=cross( N,dp1 );highp vec3 T=dp2perp*duv1.x+dp1perp*duv2.x;highp vec3 B=dp2perp*duv1.y+dp1perp*duv2.y;highp float lengthT=dot(T,T);highp float lengthB=dot(B,B);highp float maxLength=max(lengthT,lengthB);highp float invmax=inversesqrt( maxLength );highp mat3 res=mat3( T*invmax,B*invmax,N );return res;\n#else\nreturn mat3(1.0);\n#endif\n}highp vec3 getNormal(){highp vec3 n;\n#ifdef HAS_ATTRIBUTE_a_normal_3f\nn=normalize(normal_3f);\n#else\nhighp vec3 fdx=vec3(dFdx(v_position_height.x),dFdx(v_position_height.y),dFdx(v_position_height.z));highp vec3 fdy=vec3(dFdy(v_position_height.x),dFdy(v_position_height.y),dFdy(v_position_height.z));n=normalize(cross(fdx,fdy))*-1.0;\n#endif\n#if defined(HAS_TEXTURE_u_normalTexture) && defined(HAS_ATTRIBUTE_a_uv_2f)\nvec3 nMap=texture( u_normalTexture,uv_2f).xyz;nMap=normalize(2.0*nMap-vec3(1.0));highp vec3 v=normalize(-v_position_height.xyz);highp mat3 TBN=cotangentFrame(n,v,uv_2f);n=normalize(TBN*nMap);\n#endif\nreturn n;}struct Material {float perceptualRoughness;float alphaRoughness;float metallic;vec3 f90;vec4 baseColor;vec3 diffuseColor;vec3 specularColor;highp vec3 normal;};Material getPBRMaterial() {Material mat;mat.baseColor=getBaseColor();mat.perceptualRoughness=u_roughnessFactor;mat.metallic=u_metallicFactor;\n#ifdef HAS_ATTRIBUTE_a_pbr\nmat.perceptualRoughness=v_roughness_metallic_emissive_alpha.x;mat.metallic=v_roughness_metallic_emissive_alpha.y;mat.baseColor.w*=v_roughness_metallic_emissive_alpha.w;\n#endif\n#if defined(HAS_TEXTURE_u_metallicRoughnessTexture) && defined(HAS_ATTRIBUTE_a_uv_2f) \nvec4 mrSample=texture(u_metallicRoughnessTexture,uv_2f);mat.perceptualRoughness*=mrSample.g;mat.metallic*=mrSample.b;\n#endif\nconst float c_minRoughness=0.04;mat.perceptualRoughness=clamp(mat.perceptualRoughness,c_minRoughness,1.0);mat.metallic=saturate(mat.metallic);mat.alphaRoughness=mat.perceptualRoughness*mat.perceptualRoughness;const vec3 f0=vec3(0.04);mat.diffuseColor=mat.baseColor.rgb*(vec3(1.0)-f0);mat.diffuseColor*=1.0-mat.metallic;mat.specularColor=mix(f0,mat.baseColor.rgb,mat.metallic);highp float reflectance=max(max(mat.specularColor.r,mat.specularColor.g),mat.specularColor.b);highp float reflectance90=saturate(reflectance*25.0);mat.f90=vec3(reflectance90);mat.normal=getNormal();return mat;}float V_GGX(float NdotL,float NdotV,float roughness)\n{float a2=roughness*roughness;float GGXV=NdotL*sqrt(NdotV*NdotV*(1.0-a2)+a2);float GGXL=NdotV*sqrt(NdotL*NdotL*(1.0-a2)+a2);return 0.5/(GGXV+GGXL);}float V_GGXFast(float NdotL,float NdotV,float roughness) {float a=roughness;float GGXV=NdotL*(NdotV*(1.0-a)+a);float GGXL=NdotV*(NdotL*(1.0-a)+a);return 0.5/(GGXV+GGXL);}vec3 F_Schlick(vec3 specularColor,vec3 f90,float VdotH)\n{return specularColor+(f90-specularColor)*pow(clamp(1.0-VdotH,0.0,1.0),5.0);}vec3 F_SchlickFast(vec3 specularColor,float VdotH)\n{float x=1.0-VdotH;float x4=x*x*x*x;return specularColor+(1.0-specularColor)*x4*x;}float D_GGX(highp float NdotH,float alphaRoughness)\n{highp float a4=alphaRoughness*alphaRoughness;highp float f=(NdotH*a4-NdotH)*NdotH+1.0;return a4/(PI*f*f);}vec3 diffuseBurley(Material mat,float LdotH,float NdotL,float NdotV)\n{float f90=2.0*LdotH*LdotH*mat.alphaRoughness-0.5;return (mat.diffuseColor/PI)*(1.0+f90*pow((1.0-NdotL),5.0))*(1.0+f90*pow((1.0-NdotV),5.0));}vec3 diffuseLambertian(Material mat)\n{\n#ifdef LIGHTING_3D_MODE\nreturn mat.diffuseColor;\n#else\nreturn mat.diffuseColor/PI;\n#endif\n}vec3 EnvBRDFApprox(vec3 specularColor,float roughness,highp float NdotV)\n{vec4 c0=vec4(-1,-0.0275,-0.572,0.022);vec4 c1=vec4(1,0.0425,1.04,-0.04);highp vec4 r=roughness*c0+c1;highp float a004=min(r.x*r.x,exp2(-9.28*NdotV))*r.x+r.y;vec2 AB=vec2(-1.04,1.04)*a004+r.zw;return specularColor*AB.x+AB.y;}vec3 computeIndirectLightContribution(Material mat,float NdotV,vec3 normal)\n{vec3 env_light=vec3(0.65,0.65,0.65);\n#ifdef LIGHTING_3D_MODE\nfloat ambient_factor=calculate_ambient_directional_factor(normal);env_light=u_lighting_ambient_color*ambient_factor;\n#endif\nvec3 envBRDF=EnvBRDFApprox(mat.specularColor,mat.perceptualRoughness,NdotV);vec3 indirectSpecular= envBRDF*env_light;vec3 indirectDiffuse=mat.diffuseColor*env_light;return indirectSpecular+indirectDiffuse;}vec3 computeLightContribution(Material mat,vec3 lightPosition,vec3 lightColor)\n{highp vec3 n=mat.normal;highp vec3 v=normalize(-v_position_height.xyz);highp vec3 l=normalize(lightPosition);highp vec3 h=normalize(v+l);float NdotV=clamp(abs(dot(n,v)),0.001,1.0);float NdotL=saturate(dot(n,l));highp float NdotH=saturate(dot(n,h));float VdotH=saturate(dot(v,h));vec3 f=F_SchlickFast(mat.specularColor,VdotH);float g=V_GGXFast(NdotL,NdotV,mat.alphaRoughness);float d=D_GGX(NdotH,mat.alphaRoughness);vec3 diffuseTerm=(1.0-f)*diffuseLambertian(mat);vec3 specularTerm=f*g*d;vec3 transformed_normal=vec3(-n.xy,n.z);float lighting_factor;\n#ifdef RENDER_SHADOWS\nlighting_factor=shadowed_light_factor_normal(transformed_normal,v_pos_light_view_0,v_pos_light_view_1,v_depth_shadows);\n#else\nlighting_factor=NdotL;\n#endif\nvec3 directLightColor=(specularTerm+diffuseTerm)*lighting_factor*lightColor;vec3 indirectLightColor=computeIndirectLightContribution(mat,NdotV,transformed_normal);vec3 color=(saturate(directLightColor)+indirectLightColor);float intensityFactor=1.0;\n#if !defined(LIGHTING_3D_MODE)\nconst vec3 luminosityFactor=vec3(0.2126,0.7152,0.0722);float luminance=dot(diffuseTerm,luminosityFactor);intensityFactor=mix((1.0-u_lightintensity),max((1.0-luminance+u_lightintensity),1.0),NdotL);\n#endif\ncolor*=intensityFactor;return color;}void main() {\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\nif (isOccluded()) {discard;}\n#endif\nvec3 lightDir=u_lightpos;vec3 lightColor=u_lightcolor;\n#ifdef LIGHTING_3D_MODE\nlightDir=u_lighting_directional_dir;lightDir.xy=-lightDir.xy;lightColor=u_lighting_directional_color;\n#endif\nvec4 finalColor;\n#ifdef DIFFUSE_SHADED\nvec3 N=getNormal();vec3 diffuse=getDiffuseShadedColor(getBaseColor().rgb,N,lightDir,lightColor);\n#ifdef HAS_TEXTURE_u_occlusionTexture\nfloat ao=(texture(u_occlusionTexture,uv_2f).r-1.0)*u_aoIntensity+1.0;diffuse*=ao;\n#endif\nfinalColor=vec4(diffuse,1.0)*u_opacity;\n#else\nMaterial mat=getPBRMaterial();vec3 color=computeLightContribution(mat,lightDir,lightColor);float ao=1.0;\n#if defined (HAS_TEXTURE_u_occlusionTexture) && defined(HAS_ATTRIBUTE_a_uv_2f)\nao=(texture(u_occlusionTexture,uv_2f).x-1.0)*u_aoIntensity+1.0;color*=ao;\n#endif\nvec4 emissive=u_emissiveFactor;\n#if defined(HAS_TEXTURE_u_emissionTexture) && defined(HAS_ATTRIBUTE_a_uv_2f)\nemissive.rgb*=sRGBToLinear(texture(u_emissionTexture,uv_2f).rgb);\n#endif\ncolor+=emissive.rgb;float opacity=mat.baseColor.w*u_opacity;\n#ifdef HAS_ATTRIBUTE_a_pbr\nfloat resEmission=v_roughness_metallic_emissive_alpha.z;resEmission*=v_height_based_emission_params.z+v_height_based_emission_params.w*pow(clamp(v_height_based_emission_params.x,0.0,1.0),v_height_based_emission_params.y);color=mix(color,v_color_mix.rgb,min(1.0,resEmission));\n#ifdef HAS_ATTRIBUTE_a_color_4f\nfloat distance=length(vec2(1.3*max(0.0,abs(color_4f.x)-color_4f.z),color_4f.y));distance+= mix(0.5,0.0,clamp(resEmission-1.0,0.0,1.0));opacity*=v_roughness_metallic_emissive_alpha.w*saturate(1.0-distance*distance);\n#endif\n#endif\nvec3 unlitColor=mat.baseColor.rgb*ao+emissive.rgb;color=mix(color,unlitColor,u_emissive_strength);color=linearTosRGB(color);color*=opacity;finalColor=vec4(color,opacity);\n#endif\n#ifdef FOG\nfinalColor=fog_dither(fog_apply_premultiplied(finalColor,v_fog_pos,v_position_height.w));\n#endif\n#ifdef RENDER_CUTOFF\nfinalColor*=v_cutoff_opacity;\n#endif\n#ifdef INDICATOR_CUTOUT\nfinalColor=applyCutout(finalColor);\n#endif\nglFragColor=finalColor;\n#ifdef OVERDRAW_INSPECTOR\nglFragColor=vec4(1.0);\n#endif\nHANDLE_WIREFRAME_DEBUG;}','#include "_prelude_fog.vertex.glsl"\n#include "_prelude_shadow.vertex.glsl"\nin vec3 a_pos_3f;\n#pragma mapbox: define-attribute highp vec3 normal_3f\n#pragma mapbox: define-attribute highp vec2 uv_2f\n#pragma mapbox: define-attribute highp vec3 color_3f\n#pragma mapbox: define-attribute highp vec4 color_4f\n#pragma mapbox: define-attribute-vertex-shader-only highp vec4 pbr\n#pragma mapbox: define-attribute-vertex-shader-only highp vec3 heightBasedEmissiveStrength\nuniform mat4 u_matrix;uniform mat4 u_lighting_matrix;uniform vec3 u_camera_pos;uniform vec4 u_color_mix;\n#ifdef INSTANCED_ARRAYS\nin vec4 a_normal_matrix0;in vec4 a_normal_matrix1;in vec4 a_normal_matrix2;in vec4 a_normal_matrix3;\n#else\nuniform highp mat4 u_normal_matrix;\n#endif\n#ifdef RENDER_SHADOWS\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;out vec4 v_pos_light_view_0;out vec4 v_pos_light_view_1;out float v_depth_shadows;\n#endif\nout vec4 v_position_height;out lowp vec4 v_color_mix;\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\nout highp float v_depth;\n#endif\n#ifdef HAS_ATTRIBUTE_a_pbr\nout lowp vec4 v_roughness_metallic_emissive_alpha;out mediump vec4 v_height_based_emission_params;\n#endif\nvec3 sRGBToLinear(vec3 srgbIn) {return pow(srgbIn,vec3(2.2));}void main() {\n#pragma mapbox: initialize-attribute highp vec3 normal_3f\n#pragma mapbox: initialize-attribute highp vec2 uv_2f\n#pragma mapbox: initialize-attribute highp vec3 color_3f\n#pragma mapbox: initialize-attribute highp vec4 color_4f\n#pragma mapbox: initialize-attribute-custom highp vec4 pbr\n#pragma mapbox: initialize-attribute-custom highp vec3 heightBasedEmissiveStrength\nhighp mat4 normal_matrix;\n#ifdef INSTANCED_ARRAYS\nnormal_matrix=mat4(a_normal_matrix0,a_normal_matrix1,a_normal_matrix2,a_normal_matrix3);\n#else\nnormal_matrix=u_normal_matrix;\n#endif\nvec3 local_pos;mat3 rs;\n#ifdef MODEL_POSITION_ON_GPU\nvec3 pos_color=normal_matrix[0].xyz;vec4 translate=normal_matrix[1];vec3 pos_a=floor(pos_color);vec3 rgb=1.05*(pos_color-pos_a);float color_mix=pos_a.z/100.0;v_color_mix=vec4(sRGBToLinear(rgb),color_mix);float meter_to_tile=normal_matrix[0].w;vec4 pos=vec4(pos_a.xy,translate.z,1.0);rs[0].x=normal_matrix[1].w;rs[0].yz=normal_matrix[2].xy;rs[1].xy=normal_matrix[2].zw;rs[1].z=normal_matrix[3].x;rs[2].xyz=normal_matrix[3].yzw;vec4 pos_node=u_lighting_matrix*vec4(a_pos_3f,1.0);vec3 rotated_pos_node=rs*pos_node.xyz;vec3 pos_model_tile=(rotated_pos_node+vec3(translate.xy,0.0))*vec3(meter_to_tile,meter_to_tile,1.0);pos.xyz+=pos_model_tile;local_pos=pos.xyz;gl_Position=u_matrix*pos;pos.z*=meter_to_tile;v_position_height.xyz=pos.xyz-u_camera_pos;\n#else\nlocal_pos=a_pos_3f;gl_Position=u_matrix*vec4(a_pos_3f,1);v_position_height.xyz=vec3(u_lighting_matrix*vec4(a_pos_3f,1));v_color_mix=vec4(sRGBToLinear(u_color_mix.rgb),u_color_mix.a);\n#endif\nv_position_height.w=a_pos_3f.z;\n#ifdef HAS_ATTRIBUTE_a_pbr\nvec4 albedo_c=decode_color(pbr.xy);vec2 e_r_m=unpack_float(pbr.z);vec2 r_m= unpack_float(e_r_m.y*16.0);r_m.r=r_m.r*16.0;v_color_mix=vec4(albedo_c.rgb,1.0);v_roughness_metallic_emissive_alpha=vec4(vec3(r_m,e_r_m.x)/255.0,albedo_c.a);v_roughness_metallic_emissive_alpha.z*=2.0;float heightBasedRelativeIntepolation=a_pos_3f.z*heightBasedEmissiveStrength.x+heightBasedEmissiveStrength.y;v_height_based_emission_params.x=heightBasedRelativeIntepolation;v_height_based_emission_params.y=heightBasedEmissiveStrength.z;vec2 emissionMultiplierValues=unpack_float(pbr.w)/256.0;v_height_based_emission_params.z=emissionMultiplierValues.x;v_height_based_emission_params.w=emissionMultiplierValues.y-emissionMultiplierValues.x;\n#endif\n#ifdef FOG\nv_fog_pos=fog_position(local_pos);\n#endif\n#ifdef RENDER_CUTOFF\nv_cutoff_opacity=cutoff_opacity(u_cutoff_params,gl_Position.z);\n#endif\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\nv_depth=gl_Position.z/gl_Position.w;\n#endif\n#ifdef HAS_ATTRIBUTE_a_normal_3f\n#ifdef MODEL_POSITION_ON_GPU\nfloat x_squared_scale=dot(rs[0],rs[0]);float y_squared_scale=dot(rs[1],rs[1]);float z_squared_scale=dot(rs[2],rs[2]);vec3 squared_scale=vec3(x_squared_scale,y_squared_scale,z_squared_scale);normal_3f=rs*((u_lighting_matrix*vec4(normal_3f,0.0)).xyz/squared_scale);normal_3f=normalize(normal_3f);\n#else\nnormal_3f=vec3(normal_matrix*vec4(normal_3f,0));\n#endif\n#endif\n#ifdef HAS_ATTRIBUTE_a_pbr\n#ifdef HAS_ATTRIBUTE_a_color_4f\nv_roughness_metallic_emissive_alpha.w=clamp(color_4f.a*v_roughness_metallic_emissive_alpha.w*(v_roughness_metallic_emissive_alpha.z-1.0),0.0,1.0);\n#endif\n#endif\n#ifdef RENDER_SHADOWS\nvec3 shadow_pos=local_pos;\n#ifdef NORMAL_OFFSET\n#ifdef HAS_ATTRIBUTE_a_normal_3f\n#ifdef MODEL_POSITION_ON_GPU\nvec3 offset=shadow_normal_offset(vec3(-normal_3f.xy,normal_3f.z));shadow_pos+=offset*shadow_normal_offset_multiplier0();\n#else\nvec3 offset=shadow_normal_offset_model(normalize(normal_3f));shadow_pos+=offset*shadow_normal_offset_multiplier0();\n#endif\n#endif\n#endif\nv_pos_light_view_0=u_light_matrix_0*vec4(shadow_pos,1);v_pos_light_view_1=u_light_matrix_1*vec4(shadow_pos,1);v_depth_shadows=gl_Position.w;\n#endif\n}'),modelDepth:qE("in highp float v_depth;void main() {\n#ifndef DEPTH_TEXTURE\nglFragColor=pack_depth(v_depth);\n#endif\n}","in vec3 a_pos_3f;uniform mat4 u_matrix;out highp float v_depth;\n#ifdef MODEL_POSITION_ON_GPU\n#ifdef INSTANCED_ARRAYS\nin vec4 a_normal_matrix0;in vec4 a_normal_matrix1;in vec4 a_normal_matrix2;in vec4 a_normal_matrix3;\n#else\nuniform highp mat4 u_instance;\n#endif\nuniform highp mat4 u_node_matrix;\n#endif\nvoid main() {\n#ifdef MODEL_POSITION_ON_GPU\nhighp mat4 instance;\n#ifdef INSTANCED_ARRAYS\ninstance=mat4(a_normal_matrix0,a_normal_matrix1,a_normal_matrix2,a_normal_matrix3);\n#else\ninstance=u_instance;\n#endif\nvec3 pos_color=instance[0].xyz;vec4 translate=instance[1];vec3 pos_a=floor(pos_color);float meter_to_tile=instance[0].w;vec4 pos=vec4(pos_a.xy,translate.z,1.0);mat3 rs;rs[0].x=instance[1].w;rs[0].yz=instance[2].xy;rs[1].xy=instance[2].zw;rs[1].z=instance[3].x;rs[2].xyz=instance[3].yzw;vec4 pos_node=u_node_matrix*vec4(a_pos_3f,1.0);vec3 rotated_pos_node=rs*pos_node.xyz;vec3 pos_model_tile=(rotated_pos_node+vec3(translate.xy,0.0))*vec3(meter_to_tile,meter_to_tile,1.0);pos.xyz+=pos_model_tile;gl_Position=u_matrix*pos;\n#else\ngl_Position=u_matrix*vec4(a_pos_3f,1);\n#endif\nv_depth=gl_Position.z/gl_Position.w;}"),stars:qE("in highp vec2 v_uv;in mediump float v_intensity;float shapeCircle(in vec2 uv)\n{float beginFade=0.6;float lengthFromCenter=length(v_uv);return 1.0-clamp((lengthFromCenter-beginFade)/(1.0-beginFade),0.0,1.0);}void main() {float alpha=shapeCircle(v_uv);vec3 color=vec3(1.0,1.0,1.0);alpha*=v_intensity;glFragColor=vec4(color*alpha,alpha);HANDLE_WIREFRAME_DEBUG;}","\nin vec3 a_pos_3f;in vec2 a_uv;in float a_size_scale;in float a_fade_opacity;uniform mat4 u_matrix;uniform vec3 u_up;uniform vec3 u_right;uniform float u_intensity_multiplier;out highp vec2 v_uv;out mediump float v_intensity;void main() {v_uv=a_uv;v_intensity=a_fade_opacity*u_intensity_multiplier;vec3 pos=a_pos_3f;pos+=a_uv.x*u_right*a_size_scale;pos+=a_uv.y*u_up*a_size_scale;gl_Position=u_matrix*vec4(pos,1.0);}")};function $E(e,t){const i=e.replace(/\s*\/\/[^\n]*\n/g,"\n").split("\n");for(let e of i)if(e=e.trim(),"#"===e[0]&&e.includes("if")&&!e.includes("endif")){e=e.replace("#","").replace(/ifdef|ifndef|elif|if/g,"").replace(/!|defined|\(|\)|\|\||&&/g,"").replace(/\s+/g," ").trim();const i=e.split(" ");for(const e of i)t.includes(e)||t.push(e)}}function qE(e,t){const i=/#include\s+"([^"]+)"/g,r=/#pragma mapbox: ([\w\-]+) ([\w]+) ([\w]+) ([\w]+)/g;let n=t.match(/(attribute(\S*)|(^\s*|;)in) (highp |mediump |lowp )?([\w]+) ([\w]+)/gm);n&&(n=n.map((e=>{const t=e.split(" ");return t[t.length-1]})),n=[...new Set(n)]);const o={},s=[],a=[];e=e.replace(i,((e,t)=>(a.push(t),""))),t=t.replace(i,((e,t)=>(s.push(t),"")));let l=[...FE];$E(e,l),$E(t,l);for(const e of[...s,...a])NE[e]||console.error(`Undefined include: ${e}`),jE[e]||(jE[e]=[],$E(NE[e],jE[e])),l=[...l,...jE[e]];return{fragmentSource:e=e.replace(r,((e,t,i,r,n)=>(o[n]=!0,"define"===t?`\n#ifndef HAS_UNIFORM_u_${n}\nin ${i} ${r} ${n};\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:"initialize"===t?`\n#ifdef HAS_UNIFORM_u_${n}\n ${i} ${r} ${n} = u_${n};\n#endif\n`:"define-attribute"===t?`\n#ifdef HAS_ATTRIBUTE_a_${n}\n in ${i} ${r} ${n};\n#endif\n`:"initialize-attribute"===t?"":void 0))),vertexSource:t=t.replace(r,((e,t,i,r,n)=>{const s="float"===r?"vec2":r,a=n.match(/color/)?"color":s;return"define-attribute-vertex-shader-only"===t?`\n#ifdef HAS_ATTRIBUTE_a_${n}\nin ${i} ${r} a_${n};\n#endif\n`:o[n]?"define"===t?`\n#ifndef HAS_UNIFORM_u_${n}\nuniform lowp float u_${n}_t;\nin ${i} ${s} a_${n};\nout ${i} ${r} ${n};\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:"initialize"===t?"vec4"===a?`\n#ifndef HAS_UNIFORM_u_${n}\n ${n} = a_${n};\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${n}\n ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`:"define-attribute"===t?`\n#ifdef HAS_ATTRIBUTE_a_${n}\n in ${i} ${r} a_${n};\n out ${i} ${r} ${n};\n#endif\n`:"initialize-attribute"===t?`\n#ifdef HAS_ATTRIBUTE_a_${n}\n ${n} = a_${n};\n#endif\n`:void 0:"define"===t?`\n#ifndef HAS_UNIFORM_u_${n}\nuniform lowp float u_${n}_t;\nin ${i} ${s} a_${n};\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:"define-instanced"===t?"mat4"===a?`\n#ifdef INSTANCED_ARRAYS\nin vec4 a_${n}0;\nin vec4 a_${n}1;\nin vec4 a_${n}2;\nin vec4 a_${n}3;\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:`\n#ifdef INSTANCED_ARRAYS\nin ${i} ${s} a_${n};\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:"initialize-attribute-custom"===t?`\n#ifdef HAS_ATTRIBUTE_a_${n}\n ${i} ${r} ${n} = a_${n};\n#endif\n`:"vec4"===a?`\n#ifndef HAS_UNIFORM_u_${n}\n ${i} ${r} ${n} = a_${n};\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${n}\n ${i} ${r} ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`})),staticAttributes:n,usedDefines:l,vertexIncludes:s,fragmentIncludes:a}}class ZE{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffers=[],this.vao=null}bind(e,t,i,r,n,o,s,a){this.context=e;let l=this.boundPaintVertexBuffers.length!==r.length;for(let e=0;!l&&e{const n=i.paint.get("hillshade-shadow-color"),o=i.paint.get("hillshade-highlight-color"),s=i.paint.get("hillshade-accent-color"),a=i.paint.get("hillshade-emissive-strength");let l=w(i.paint.get("hillshade-illumination-direction"));if("viewport"===i.paint.get("hillshade-illumination-anchor"))l-=e.transform.angle;else if(e.style&&e.style.enable3dLights()&&e.style.directionalLight){const t=e.style.directionalLight.properties.get("direction");l=w(J(t.x,t.y,t.z)[1])}const c=!e.options.moving;return{u_matrix:r||e.transform.calculateProjMatrix(t.tileID.toUnwrapped(),c),u_image:0,u_latrange:HE(0,t.tileID),u_light:[i.paint.get("hillshade-exaggeration"),l],u_shadow:n,u_highlight:o,u_emissive_strength:a,u_accent:s}})(e,i,r,e.terrain?t.projMatrix:null);e.uploadCommonUniforms(a,u,t.toUnwrapped());const{tileBoundsBuffer:p,tileBoundsIndexBuffer:f,tileBoundsSegments:m}=e.getTileBoundsBuffers(i);u.draw(e,l.TRIANGLES,n,o,s,zx.disabled,d,r.id,p,f,m)}function XE(e,t,i){if(!t.needsDEMTextureUpload)return;const r=e.context,n=r.gl;r.pixelStoreUnpackPremultiplyAlpha.set(!1),t.demTexture=t.demTexture||e.getTileTexture(i.stride);const o=i.getPixels();t.demTexture?t.demTexture.update(o,{premultiply:!1}):t.demTexture=new Ay(r,o,n.R32F,{premultiply:!1}),t.needsDEMTextureUpload=!1}function YE(e,t,i){const r=e.context,n=r.gl;if(!t.dem)return;const o=t.dem;if(r.activeTexture.set(n.TEXTURE1),XE(e,t,o),!t.demTexture)return;t.demTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE);const s=o.dim;r.activeTexture.set(n.TEXTURE0);let a=t.hillshadeFBO;if(!a){const e=new Ay(r,{width:s,height:s,data:null},n.RGBA);e.bind(n.LINEAR,n.CLAMP_TO_EDGE),a=t.hillshadeFBO=r.createFramebuffer(s,s,!0,"renderbuffer"),a.colorAttachment.set(e.texture)}r.bindFramebuffer.set(a.framebuffer),r.viewport.set([0,0,s,s]);const{tileBoundsBuffer:l,tileBoundsIndexBuffer:c,tileBoundsSegments:h}=e.getMercatorTileBoundsBuffers(),u=[];e.linearFloatFilteringSupported()&&u.push("TERRAIN_DEM_FLOAT_FORMAT"),e.getOrCreateProgram("hillshadePrepare",{defines:u}).draw(e,n.TRIANGLES,Ax.disabled,Mx.disabled,Cx.unblended,zx.disabled,((e,t)=>{const i=t.stride,r=Su.create();return Su.ortho(r,0,cr,-cr,0,0,1),Su.translate(r,r,[0,-cr,0]),{u_matrix:r,u_image:1,u_dimension:[i,i],u_zoom:e.overscaledZ}})(t.tileID,o),i.id,l,c,h),t.needsHillshadePrepare=!1}const KE=e=>({u_matrix:new Vl(e),u_image0:new Rl(e),u_skirt_height:new Ol(e),u_ground_shadow_factor:new Fl(e)}),JE=(e,t,i)=>({u_matrix:e,u_image0:0,u_skirt_height:t,u_ground_shadow_factor:i}),QE=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f)=>({u_proj_matrix:Float32Array.from(e),u_globe_matrix:t,u_normalize_matrix:Float32Array.from(r),u_merc_matrix:i,u_zoom_transition:n,u_merc_center:o,u_image0:0,u_frustum_tl:s,u_frustum_tr:a,u_frustum_br:l,u_frustum_bl:c,u_globe_pos:h,u_globe_radius:u,u_viewport:d,u_grid_matrix:f?Float32Array.from(f):new Float32Array(9),u_skirt_height:p}),eA=(e,t)=>{if(t>0&&e.terrain&&W("Cutoff is currently disabled on terrain"),t<=0||e.terrain)return{shouldRenderCutoff:!1,uniformValues:{u_cutoff_params:[0,0,0,0]}};const i=e.transform,r=Math.max(Math.abs(i._zoom-(e.minCutoffZoom-1)),1),n=i.isLODDisabled(!1)?P(60,45,i.pitch):P(30,15,i.pitch),o=i._farZ-i._nearZ,s=t*i.height,a=((1-(l=n))*(.75*i.cameraToCenterDistance)+l*(i._farZ+s))*r;var l;return{shouldRenderCutoff:n<1,uniformValues:{u_cutoff_params:[i._nearZ,i._farZ,(a-i._nearZ)/o,(a-s-i._nearZ)/o]}}};function tA(e,t){return null!=e&&null!=t&&!(!e.hasData()||!t.hasData())&&null!=e.demTexture&&null!=t.demTexture&&e.tileID.key!==t.tileID.key}const iA=new class{constructor(){this.operations={}}newMorphing(e,t,i,r,n){if(e in this.operations){const t=this.operations[e];t.to.tileID.key!==i.tileID.key&&(t.queued=i)}else this.operations[e]={startTime:r,phase:0,duration:n,from:t,to:i,queued:null}}getMorphValuesForProxy(e){if(!(e in this.operations))return null;const t=this.operations[e];return{from:t.from,to:t.to,phase:t.phase}}update(e){for(const t in this.operations){const i=this.operations[t];for(i.phase=(e-i.startTime)/i.duration;i.phase>=1||!this._validOp(i);)if(!this._nextOp(i,e)){delete this.operations[t];break}}}_nextOp(e,t){return!!e.queued&&(e.from=e.to,e.to=e.queued,e.queued=null,e.phase=0,e.startTime=t,!0)}_validOp(e){return e.from.hasData()&&e.to.hasData()}},rA={0:null,1:"TERRAIN_VERTEX_MORPHING"};function nA(e,t,i){if(0===t)return 0;const r=t<1&&514===i?.25/t:1;return 6*Math.pow(1.5,22-e)*Math.max(t,1)*r}function oA(e,t){const i=1<({u_matrix:e});function aA(e,t,i,r,n){if(n>0){const o=dt.now(),s=(o-e.timeAdded)/n,a=t?(o-t.timeAdded)/n:-1,l=i.getSource(),c=r.coveringZoomLevel({tileSize:l.tileSize,roundZoom:l.roundZoom}),h=!t||Math.abs(t.tileID.overscaledZ-c)>Math.abs(e.tileID.overscaledZ-c),u=h&&e.refreshedUponExpiration?1:k(h?s:1-a,0,1);return e.refreshedUponExpiration&&s>=1&&(e.refreshedUponExpiration=!1),t?{opacity:1,mix:1-u}:{opacity:u,mix:0}}return{opacity:1,mix:0}}class lA extends Dx{constructor(e){const t={type:"raster-dem",maxzoom:e.transform.maxZoom},i=new Ew(Hw(),null),r=MT("mock-dem",t,i,e.style);super("mock-dem",r,!1),r.setEventedParent(this),this._sourceLoaded=!0}_loadTile(e,t){e.state="loaded",t(null)}}class cA extends Dx{constructor(e){const t=MT("proxy",{type:"geojson",maxzoom:e.transform.maxZoom},new Ew(Hw(),null),e.style);super("proxy",t,!1),t.setEventedParent(this),this.map=this.getSource().map=e,this.used=this._sourceLoaded=!0,this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={}}update(e,t,i){if(e.freezeTileCoverage)return;this.transform=e;const r=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}).reduce(((t,i)=>{if(t[i.key]="",!this._tiles[i.key]){const t=new Oy(i,this._source.tileSize*i.overscaleFactor(),e.tileZoom);t.state="loaded",this._tiles[i.key]=t}return t}),{});for(const e in this._tiles)e in r||(this.freeFBO(e),this._tiles[e].unloadVectorData(),delete this._tiles[e])}freeFBO(e){const t=this.proxyCachedFBO[e];if(void 0!==t){const i=Object.values(t);this.renderCachePool.push(...i),delete this.proxyCachedFBO[e]}}deallocRenderCache(){this.renderCache.forEach((e=>e.fb.destroy())),this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={}}}class hA extends $u{constructor(e,t,i){super(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y),this.proxyTileKey=t,this.projMatrix=i}}class uA extends Km{constructor(e,t){super(),this.painter=e,this.terrainTileForTile={},this.prevTerrainTileForTile={};const[i,r,n]=function(e){const t=new ka,i=new Ha,r=131;t.reserve(17161),i.reserve(33800);const n=cr/128,o=cr+n/2,s=o+n;for(let e=-n;eo||e<0||e>o?24575:0,n=k(Math.round(i),0,cr),s=k(Math.round(e),0,cr);t.emplaceBack(n+r,s)}const a=(e,t)=>{const n=t*r+e;i.emplaceBack(n+1,n,n+r),i.emplaceBack(n+r,n+r+1,n+1)};for(let e=1;e<129;e++)for(let t=1;t<129;t++)a(t,e);return[0,129].forEach((e=>{for(let t=0;t<130;t++)a(t,e),a(e,t)})),[t,i,32768]}(),o=e.context;this.gridBuffer=o.createVertexBuffer(i,Nu.members),this.gridIndexBuffer=o.createIndexBuffer(r),this.gridSegments=xl.simpleSegment(0,0,i.length,r.length),this.gridNoSkirtSegments=xl.simpleSegment(0,0,i.length,n),this.proxyCoords=[],this.proxiedCoords={},this._visibleDemTiles=[],this._drapedRenderBatches=[],this._sourceTilesOverlap={},this.proxySourceCache=new cA(t.map),this.orthoMatrix=Su.create(),Su.ortho(this.orthoMatrix,"globe"===this.painter.transform.projection.name?.015:0,cr,0,cr,0,1);const s=o.gl;this._overlapStencilMode=new Mx({func:s.GEQUAL,mask:255},0,255,s.KEEP,s.KEEP,s.REPLACE),this._previousZoom=e.transform.zoom,this.pool=[],this._findCoveringTileCache={},this._tilesDirty={},this.style=t,this._useVertexMorphing=!0,this._exaggeration=1,this._mockSourceCache=new lA(t.map),this._pendingGroundEffectLayers=[]}set style(e){e.on("data",this._onStyleDataEvent.bind(this)),this._style=e,this._style.map.on("moveend",(()=>{this._clearLineLayersFromRenderCache()}))}update(e,t,i){if(e&&e.terrain){this._style!==e&&(this.style=e,this._evaluationZoom=void 0);const r=e.terrain.properties,n=0===e.terrain.drapeRenderMode,o=e.terrain.isZoomDependent();this._previousUpdateTimestamp=this.enabled?this._updateTimestamp:void 0,this._updateTimestamp=dt.now();const s=e.terrain&&e.terrain.scope,a=r.get("source"),l=n?this._mockSourceCache:e.getSourceCache(a,s);if(!l)return void W(`Couldn't find terrain source "${a}".`);if(this.sourceCache=l,this._exaggeration=o?this.calculateExaggeration(t):r.get("exaggeration"),!t.projection.requiresDraping&&o&&0===this._exaggeration)return void this._disable();this.enabled=!0;const c=()=>{this.sourceCache.used&&W(`Raster DEM source '${this.sourceCache.id}' is used both for terrain and as layer source.\nThis leads to lower resolution of hillshade. For full hillshade resolution but higher memory consumption, define another raster DEM source.`);const e=this.getScaledDemTileSize();this.sourceCache.update(t,e,!0),this.resetTileLookupCache(this.sourceCache.id)};this.sourceCache.usedForTerrain||(this.resetTileLookupCache(this.sourceCache.id),this.sourceCache.usedForTerrain=!0,c(),this._initializing=!0),c(),t.updateElevation(!0,i),this.resetTileLookupCache(this.proxySourceCache.id),this.proxySourceCache.update(t),this._emptyDEMTextureDirty=!0,this._previousZoom=t.zoom}else this._disable()}calculateExaggeration(e){const t=this._previousCameraAltitude,i=e.getFreeCameraOptions().position.z/e.pixelsPerMeter*e.worldSize;this._previousCameraAltitude=i;const r=null!=t?i-t:Number.MAX_VALUE;if(Math.abs(r)<2)return this._exaggeration;const n=e.zoom,o=this._style.terrain;if(!this._previousUpdateTimestamp)return o.getExaggeration(n);let s=n-this._previousZoom;const a=this._previousUpdateTimestamp;let l=n;null!=this._evaluationZoom&&(l=this._evaluationZoom,Math.abs(n-l)>.5&&(s=.5*(n-l+s)),s*r<0&&(l+=s)),this._evaluationZoom=l;const c=o.getExaggeration(l),h=c===o.getExaggeration(Math.max(0,l-.1));if(h&&Math.abs(c-this._exaggeration)<.01)return c;let u=Math.min(.1,.00375*(this._updateTimestamp-a));return(h||c<.1||Math.abs(s)<1e-4)&&(u=Math.min(.2,4*u)),Kr(this._exaggeration,c,u)}resetTileLookupCache(e){this._findCoveringTileCache[e]={}}getScaledDemTileSize(){return this.sourceCache.getSource().tileSize/128*this.proxySourceCache.getSource().tileSize}_onStyleDataEvent(e){e.coord&&"source"===e.dataType?this._clearRenderCacheForTile(e.sourceCacheId,e.coord):"style"===e.dataType&&(this.invalidateRenderCache=!0,this._evaluationZoom=void 0,this._previousUpdateTimestamp=void 0,this._previousCameraAltitude=void 0)}_disable(){if(this.enabled&&(this.enabled=!1,this._sharedDepthStencil=void 0,this._evaluationZoom=void 0,this._previousUpdateTimestamp=void 0,this.proxySourceCache.deallocRenderCache(),this._style))for(const e in this._style._mergedSourceCaches)this._style._mergedSourceCaches[e].usedForTerrain=!1}destroy(){this._disable(),this._emptyDEMTexture&&this._emptyDEMTexture.destroy(),this._emptyDepthBufferTexture&&this._emptyDepthBufferTexture.destroy(),this.pool.forEach((e=>e.fb.destroy())),this.pool=[],this._depthFBO&&(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0),this.framebufferCopyTexture&&this.framebufferCopyTexture.destroy()}_source(){return this.enabled?this.sourceCache:null}isUsingMockSource(){return this.sourceCache===this._mockSourceCache}exaggeration(){return this._exaggeration}get visibleDemTiles(){return this._visibleDemTiles}get drapeBufferSize(){const e=2*this.proxySourceCache.getSource().tileSize;return[e,e]}set useVertexMorphing(e){this._useVertexMorphing=e}updateTileBinding(e){if(!this.enabled)return;this.prevTerrainTileForTile=this.terrainTileForTile;const t=this.proxySourceCache,i=this.painter.transform;this._initializing&&(this._initializing=0===i._centerAltitude&&-1===this.getAtPointOrZero(lp.fromLngLat(i.center),-1),this._emptyDEMTextureDirty=!this._initializing);const r=this.proxyCoords=t.getIds().map((e=>{const r=t.getTileByID(e).tileID;return r.projMatrix=i.calculateProjMatrix(r.toUnwrapped()),r}));!function(e,t){const i=t.transform.pointCoordinate(t.transform.getCameraPoint()),r=new y(i.x,i.y);e.sort(((e,t)=>{if(t.overscaledZ-e.overscaledZ)return t.overscaledZ-e.overscaledZ;const i=new y(e.canonical.x+(1<{this.proxyToSource[e.key]={}})),this.terrainTileForTile={};const o=this._style._mergedSourceCaches;for(const t in o){const i=o[t];if(!i.used)continue;if(i!==this.sourceCache&&this.resetTileLookupCache(i.id),this._setupProxiedCoordsForOrtho(i,e[t],n),i.usedForTerrain)continue;const r=e[t];i.getSource().reparseOverscaled&&this._assignTerrainTiles(r)}this.proxiedCoords[t.id]=r.map((e=>new hA(e,e.key,this.orthoMatrix))),this._assignTerrainTiles(r),this._prepareDEMTextures(),this._setupDrapedRenderBatches(),this._initFBOPool(),this._setupRenderCache(n),this.renderingToTexture=!1;const s={};this._visibleDemTiles=[];for(const e of this.proxyCoords){const t=this.terrainTileForTile[e.key];if(!t)continue;const i=t.tileID.key;i in s||(this._visibleDemTiles.push(t),s[i]=i)}}_assignTerrainTiles(e){this._initializing||e.forEach((e=>{if(this.terrainTileForTile[e.key])return;const t=this._findTileCoveringTileID(e,this.sourceCache);t&&(this.terrainTileForTile[e.key]=t)}))}_prepareDEMTextures(){const e=this.painter.context,t=e.gl;for(const i in this.terrainTileForTile){const r=this.terrainTileForTile[i],n=r.dem;!n||r.demTexture&&!r.needsDEMTextureUpload||(e.activeTexture.set(t.TEXTURE1),XE(this.painter,r,n))}}_prepareDemTileUniforms(e,t,i,r){if(!t||null==t.demTexture)return!1;const n=e.tileID.canonical,o=Math.pow(2,t.tileID.canonical.z-n.z),s=r||"";return i[`u_dem_tl${s}`]=[n.x*o%1,n.y*o%1],i[`u_dem_scale${s}`]=o,!0}get emptyDEMTexture(){return!this._emptyDEMTextureDirty&&this._emptyDEMTexture?this._emptyDEMTexture:this._updateEmptyDEMTexture()}get emptyDepthBufferTexture(){const e=this.painter.context,t=e.gl;if(!this._emptyDepthBufferTexture){const i=new ef({width:1,height:1},Uint8Array.of(255,255,255,255));this._emptyDepthBufferTexture=new Ay(e,i,t.RGBA,{premultiply:!1})}return this._emptyDepthBufferTexture}_getLoadedAreaMinimum(){let e=0;const t=this._visibleDemTiles.reduce(((t,i)=>{if(!i.dem)return t;const r=i.dem.tree.minimums[0];return r>0&&e++,t+r}),0);return e?t/e:0}_updateEmptyDEMTexture(){const e=this.painter.context,t=e.gl;e.activeTexture.set(t.TEXTURE2);const i=this._getLoadedAreaMinimum(),[r,n]=(()=>{const e=new tf({width:1,height:1},new Float32Array([i]));return[t.R32F,e]})();this._emptyDEMTextureDirty=!1;let o=this._emptyDEMTexture;return o?o.update(n,{premultiply:!1}):o=this._emptyDEMTexture=new Ay(e,n,r,{premultiply:!1}),o}setupElevationDraw(e,t,i){const r=this.painter.context,n=r.gl,o={u_dem:2,u_dem_prev:4,u_dem_tl:[0,0],u_dem_tl_prev:[0,0],u_dem_scale:0,u_dem_scale_prev:0,u_dem_size:0,u_dem_lerp:1,u_depth:3,u_depth_size_inv:[0,0],u_exaggeration:0};o.u_exaggeration=this.exaggeration();let s=null,a=null,l=1;if(i&&i.morphing&&this._useVertexMorphing){const t=i.morphing.srcDemTile,r=i.morphing.dstDemTile;l=i.morphing.phase,t&&r&&(this._prepareDemTileUniforms(e,t,o,"_prev")&&(a=t),this._prepareDemTileUniforms(e,r,o)&&(s=r))}const c=e=>e&&e.demTexture&&this.painter.linearFloatFilteringSupported()?n.LINEAR:n.NEAREST,h=e=>{o.u_dem_size=1===e.size[0]?1:e.size[0]-2};if(a&&s)r.activeTexture.set(n.TEXTURE2),s.demTexture.bind(c(s),n.CLAMP_TO_EDGE),r.activeTexture.set(n.TEXTURE4),a.demTexture.bind(c(a),n.CLAMP_TO_EDGE),s.demTexture&&h(s.demTexture),o.u_dem_lerp=l;else{s=this.terrainTileForTile[e.tileID.key],r.activeTexture.set(n.TEXTURE2);const t=this._prepareDemTileUniforms(e,s,o)?s.demTexture:this.emptyDEMTexture;t.bind(c(s),n.CLAMP_TO_EDGE),h(t)}if(r.activeTexture.set(n.TEXTURE3),i&&i.useDepthForOcclusion?(this._depthTexture&&this._depthTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE),this._depthFBO&&(o.u_depth_size_inv=[1/this._depthFBO.width,1/this._depthFBO.height])):(this.emptyDepthBufferTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE),o.u_depth_size_inv=[1,1]),i&&i.useMeterToDem&&s){const e=(1<{if(l===i)return;const r=[rA[i],"PROJECTION_GLOBE_VIEW"];h&&r.push("CUSTOM_ANTIALIASING");const n=e.isTileAffectedByFog(t);a=e.getOrCreateProgram("globeRaster",{defines:r,overrideFog:n}),l=i},d=e.colorModeForRenderPass(),p=new Ax(s.LEQUAL,Ax.ReadWrite,e.depthRangeFor3D);iA.update(n);const f=Pd(c),m=[Kd(c.center.lng),Jd(c.center.lat)],_=e.globeSharedBuffers,g=[c.width*dt.devicePixelRatio,c.height*dt.devicePixelRatio],y=Float32Array.from(c.globeMatrix),x={useDenormalizedUpVectorScale:!0};{const c=e.transform,h=nA(c.zoom,t.exaggeration(),t.sourceCache._source.tileSize);l=-1;const v=s.TRIANGLES;for(const l of r){const r=i.getTile(l),b=Mx.disabled,w=t.prevTerrainTileForTile[l.key],T=t.terrainTileForTile[l.key];tA(w,T)&&iA.newMorphing(l.key,w,T,n,250),o.activeTexture.set(s.TEXTURE0),r.texture&&r.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE);const E=iA.getMorphValuesForProxy(l.key),S=E?1:0;E&&Dt(x,{morphing:{srcDemTile:E.from,dstDemTile:E.to,phase:A(E.phase)}});const M=xd(l.canonical),I=Od(M.getCenter().lat),C=Rd(l.canonical,M,I,c.worldSize/c._pixelsPerMercatorPixel),k=Sd(fd(l.canonical)),P=QE(c.expandedFarZProjMatrix,y,f,k,zd(c.zoom),m,c.frustumCorners.TL,c.frustumCorners.TR,c.frustumCorners.BR,c.frustumCorners.BL,c.globeCenterInViewSpace,c.globeRadius,g,h,C);if(u(l,S),a&&(t.setupElevationDraw(r,a,x),e.uploadCommonUniforms(o,a,l.toUnwrapped()),_)){const[t,i,r]=_.getGridBuffers(I,0!==h);a.draw(e,v,p,b,d,zx.backCCW,P,"globe_raster",t,i,r)}}}if(_&&(e.renderDefaultNorthPole||e.renderDefaultSouthPole)){const n=["GLOBE_POLES","PROJECTION_GLOBE_VIEW"];h&&n.push("CUSTOM_ANTIALIASING"),a=e.getOrCreateProgram("globeRaster",{defines:n});for(const n of r){const{x:r,y:l,z:h}=n.canonical,u=0===l,f=l===(1<t.draw(e,s.TRIANGLES,p,Mx.disabled,d,zx.disabled,QE(c.expandedFarZProjMatrix,_,_,T,0,m,c.frustumCorners.TL,c.frustumCorners.TR,c.frustumCorners.BR,c.frustumCorners.BL,c.globeCenterInViewSpace,c.globeRadius,g,0),"globe_pole_raster",i,b,w);t.setupElevationDraw(l,a,x),e.uploadCommonUniforms(o,a,n.toUnwrapped()),u&&e.renderDefaultNorthPole&&E(a,y),f&&e.renderDefaultSouthPole&&(_=Su.scale(Su.create(),_,[1,-1,1]),E(a,v))}}}}(e,t,i,r,n);else{const o=e.context,s=o.gl;let a,l;const c=e.shadowRenderer,h=eA(e,e.longestCutoffRange),u=t=>{if(l===t)return;const i=[];i.push(rA[t]),h.shouldRenderCutoff&&i.push("RENDER_CUTOFF"),a=e.getOrCreateProgram("terrainRaster",{defines:i}),l=t},d=e.colorModeForRenderPass(),p=new Ax(s.LEQUAL,Ax.ReadWrite,e.depthRangeFor3D);iA.update(n);const f=e.transform,m=nA(f.zoom,t.exaggeration(),t.sourceCache._source.tileSize);let _=[0,0,0];if(c){const t=e.style.directionalLight,i=e.style.ambientLight;t&&i&&(_=HS(t,i))}{l=-1;const g=s.TRIANGLES,[y,x]=[t.gridIndexBuffer,t.gridSegments];for(const l of r){const r=i.getTile(l),v=Mx.disabled,b=t.prevTerrainTileForTile[l.key],w=t.terrainTileForTile[l.key];tA(b,w)&&iA.newMorphing(l.key,b,w,n,250),o.activeTexture.set(s.TEXTURE0),r.texture&&r.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE);const T=iA.getMorphValuesForProxy(l.key),E=T?1:0;let S;T&&(S={morphing:{srcDemTile:T.from,dstDemTile:T.to,phase:A(T.phase)}});const M=JE(l.projMatrix,oA(l.canonical,f.renderWorldCopies)?m/10:m,_);if(u(E),!a)continue;t.setupElevationDraw(r,a,S);const I=l.toUnwrapped();c&&c.setupShadows(I,a),e.uploadCommonUniforms(o,a,I,null,h),a.draw(e,g,p,v,d,zx.backCCW,M,"terrain_raster",t.gridBuffer,y,x)}}}}(t,this,this.proxySourceCache,e,this._updateTimestamp),this.renderingToTexture=!0,t.gpuTimingDeferredRenderEnd(),e.splice(0,e.length))}renderBatch(e){if(0===this._drapedRenderBatches.length)return e+1;this.renderingToTexture=!0;const t=this.painter,i=this.painter.context,r=this.proxySourceCache,n=this.proxiedCoords[r.id],o=this._drapedRenderBatches.shift(),s=t.style.order,a=[];let l=0;for(const c of n){const n=r.getTileByID(c.proxyTileKey),h=r.proxyCachedFBO[c.key]?r.proxyCachedFBO[c.key][e]:void 0,u=void 0!==h?r.renderCache[h]:this.pool[l++],d=void 0!==h;if(n.texture=u.tex,d&&!u.dirty){a.push(n.tileID);continue}let p;i.bindFramebuffer.set(u.fb.framebuffer),this.renderedToTile=!1,u.dirty&&(i.clear({color:hi.transparent,stencil:0}),u.dirty=!1);for(let e=o.start;e<=o.end;++e){const r=t.style._mergedLayers[s[e]];if(r.isHidden(t.transform.zoom))continue;const n=t.style.getLayerSourceCache(r),o=n?this.proxyToSource[c.key][n.id]:[c];if(!o)continue;const a=o;i.viewport.set([0,0,u.fb.width,u.fb.height]),p!==(n?n.id:null)&&(this._setupStencil(u,o,r,n),p=n?n.id:null),t.renderLayer(t,n,r,a)}if(0===this._drapedRenderBatches.length)for(const e of this._pendingGroundEffectLayers){const r=t.style._mergedLayers[s[e]];if(r.isHidden(t.transform.zoom))continue;const n=t.style.getLayerSourceCache(r),o=n?this.proxyToSource[c.key][n.id]:[c];if(!o)continue;const a=o;i.viewport.set([0,0,u.fb.width,u.fb.height]),p!==(n?n.id:null)&&(this._setupStencil(u,o,r,n),p=n?n.id:null),t.renderLayer(t,n,r,a)}this.renderedToTile?(u.dirty=!0,a.push(n.tileID)):d||--l,5===l&&(l=0,this.renderToBackBuffer(a))}return this.renderToBackBuffer(a),this.renderingToTexture=!1,i.bindFramebuffer.set(null),i.viewport.set([0,0,t.width,t.height]),o.end+1}postRender(){}isLayerOrderingCorrect(e){const t=e.order.length;let i=-1,r=t;for(let n=0;ni}getMinElevationBelowMSL(){let e=0;return this._visibleDemTiles.filter((e=>e.dem)).forEach((t=>{e=Math.min(e,t.dem.tree.minimums[0])})),0===e?e:(e-30)*this._exaggeration}raycast(e,t,i){if(!this._visibleDemTiles)return null;const r=this._visibleDemTiles.filter((e=>e.dem)).map((r=>{const n=r.tileID,o=1<(null!==e.t?e.t:Number.MAX_VALUE)-(null!==t.t?t.t:Number.MAX_VALUE)));for(const n of r){if(null==n.t)return null;const r=n.tile.dem.tree.raycast(n.minx,n.miny,n.maxx,n.maxy,e,t,i);if(null!=r)return r}return null}_createFBO(){const e=this.painter.context,t=e.gl,i=this.drapeBufferSize;e.activeTexture.set(t.TEXTURE0);const r=new Ay(e,{width:i[0],height:i[1],data:null},t.RGBA);r.bind(t.LINEAR,t.CLAMP_TO_EDGE);const n=e.createFramebuffer(i[0],i[1],!0,null);return n.colorAttachment.set(r.texture),n.depthAttachment=new Tx(e,n.framebuffer),void 0===this._sharedDepthStencil?(this._sharedDepthStencil=e.createRenderbuffer(e.gl.DEPTH_STENCIL,i[0],i[1]),this._stencilRef=0,n.depthAttachment.set(this._sharedDepthStencil),e.clear({stencil:0})):n.depthAttachment.set(this._sharedDepthStencil),e.extTextureFilterAnisotropic&&t.texParameterf(t.TEXTURE_2D,e.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,e.extTextureFilterAnisotropicMax),{fb:n,tex:r,dirty:!1}}_initFBOPool(){for(;this.pool.length{const t=this._style._mergedLayers[e],i=t.isHidden(this.painter.transform.zoom);return"custom"===t.type?!i&&t.shouldRedrape():!i&&t.hasTransition()}))}_clearLineLayersFromRenderCache(){let e=!1;for(const t of this._style.getSources())if(t instanceof Uw){e=!0;break}if(!e)return;const t={};for(let e=0;et>e.end))||W("fill-extrusion with flood lighting and/or ground ambient occlusion should be moved to be on top of all draped layers.")}this._drapedRenderBatches=i}_setupRenderCache(e){const t=this.proxySourceCache;if(this._shouldDisableRenderCache()||this.invalidateRenderCache){if(this.invalidateRenderCache=!1,t.renderCache.length>t.renderCachePool.length){const e=Object.values(t.proxyCachedFBO);t.proxyCachedFBO={};for(let i=0;i=0;n--){const o=i[n];if(t.getTileByID(o.key),void 0!==t.proxyCachedFBO[o.key]){const i=e[o.key],n=this.proxyToSource[o.key];let s=0;for(const e in n){const t=n[e],o=i[e];if(!o||o.length!==t.length||t.some(((t,i)=>t!==o[i]||r[e]&&r[e].hasOwnProperty(t.key)))){s=-1;break}++s}for(const e in t.proxyCachedFBO[o.key])t.renderCache[t.proxyCachedFBO[o.key][e]].dirty=s<0||s!==Object.values(i).length}}const n=[...this._drapedRenderBatches];n.sort(((e,t)=>t.end-t.start-(e.end-e.start)));for(const e of n)for(const r of i){if(t.proxyCachedFBO[r.key])continue;let i=t.renderCachePool.pop();void 0===i&&t.renderCache.length<50&&(i=t.renderCache.length,t.renderCache.push(this._createFBO())),void 0!==i&&(t.proxyCachedFBO[r.key]={},t.proxyCachedFBO[r.key][e.start]=i,t.renderCache[i].dirty=!0)}this._tilesDirty={}}_setupStencil(e,t,i,r){if(!r||!this._sourceTilesOverlap[r.id])return void(this._overlapStencilType&&(this._overlapStencilType=!1));const n=this.painter.context,o=n.gl;if(t.length<=1)return void(this._overlapStencilType=!1);let s;if(i.isTileClipped())s=t.length,this._overlapStencilMode.test={func:o.EQUAL,mask:255},this._overlapStencilType="Clip";else{if(!(t[0].overscaledZ>t[t.length-1].overscaledZ))return void(this._overlapStencilType=!1);s=1,this._overlapStencilMode.test={func:o.GREATER,mask:255},this._overlapStencilType="Mask"}this._stencilRef+s>255&&(n.clear({stencil:0}),this._stencilRef=0),this._stencilRef+=s,this._overlapStencilMode.ref=this._stencilRef,i.isTileClipped()&&this._renderTileClippingMasks(t,this._overlapStencilMode.ref)}clipOrMaskOverlapStencilType(){return"Clip"===this._overlapStencilType||"Mask"===this._overlapStencilType}stencilModeForRTTOverlap(e){return this.renderingToTexture&&this._overlapStencilType?("Clip"===this._overlapStencilType&&(this._overlapStencilMode.ref=this.painter._tileClippingMaskIDs[e.key]),this._overlapStencilMode):Mx.disabled}_renderTileClippingMasks(e,t){const i=this.painter,r=this.painter.context,n=r.gl;i._tileClippingMaskIDs={},r.setColorMode(Cx.disabled),r.setDepthMode(Ax.disabled);const o=i.getOrCreateProgram("clippingMask");for(const r of e){const e=i._tileClippingMaskIDs[r.key]=--t;o.draw(i,n.TRIANGLES,Ax.disabled,new Mx({func:n.ALWAYS,mask:0},e,255,n.KEEP,n.KEEP,n.REPLACE),Cx.disabled,zx.disabled,sA(r.projMatrix),"$clipping",i.tileExtentBuffer,i.quadTriangleIndexBuffer,i.tileExtentSegments)}}pointCoordinate(e){const t=this.painter.transform;if(e.x<0||e.x>t.width||e.y<0||e.y>t.height)return null;const i=[e.x,e.y,1,1];yu.transformMat4(i,i,t.pixelMatrixInverse),yu.scale(i,i,1/i[3]),i[0]/=t.worldSize,i[1]/=t.worldSize;const r=t._camera.position,n=Qd(1,t.center.lat),o=[r[0],r[1],r[2]/n,0],s=zu.subtract([],i.slice(0,3),o);zu.normalize(s,s);const a=this.raycast(o,s,this._exaggeration);return null!==a&&a?(zu.scaleAndAdd(o,o,s,a),o[3]=o[2],o[2]*=n,o):null}drawDepth(){const e=this.painter,t=e.context,i=this.proxySourceCache,r=Math.ceil(e.width),n=Math.ceil(e.height);if(!this._depthFBO||this._depthFBO.width===r&&this._depthFBO.height===n||(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0),!this._depthFBO){const e=t.gl,i=t.createFramebuffer(r,n,!0,"renderbuffer");t.activeTexture.set(e.TEXTURE0);const o=new Ay(t,{width:r,height:n,data:null},e.RGBA);o.bind(e.NEAREST,e.CLAMP_TO_EDGE),i.colorAttachment.set(o.texture);const s=t.createRenderbuffer(t.gl.DEPTH_COMPONENT16,r,n);i.depthAttachment.set(s),this._depthFBO=i,this._depthTexture=o}t.bindFramebuffer.set(this._depthFBO.framebuffer),t.viewport.set([0,0,r,n]),function(e,t,i,r){if("globe"===e.transform.projection.name)return;const n=e.context,o=n.gl;n.clear({depth:1});const s=e.getOrCreateProgram("terrainDepth"),a=new Ax(o.LESS,Ax.ReadWrite,e.depthRangeFor3D);for(const n of r){const r=i.getTile(n),l=JE(n.projMatrix,0,[0,0,0]);t.setupElevationDraw(r,s),s.draw(e,o.TRIANGLES,a,Mx.disabled,Cx.unblended,zx.backCCW,l,"terrain_depth",t.gridBuffer,t.gridIndexBuffer,t.gridNoSkirtSegments)}}(e,this,i,this.proxyCoords)}_setupProxiedCoordsForOrtho(e,t,i){if(e.getSource()instanceof Jb)return this._setupProxiedCoordsForImageSource(e,t,i);this._findCoveringTileCache[e.id]=this._findCoveringTileCache[e.id]||{};const r=this.proxiedCoords[e.id]=[],n=this.proxyCoords;for(let t=0;t(e.min.x=Math.min(e.min.x,t.x-a.x),e.min.y=Math.min(e.min.y,t.y-a.y),e.max.x=Math.max(e.max.x,t.x-a.x),e.max.y=Math.max(e.max.y,t.y-a.y),e)),{min:new y(Number.MAX_VALUE,Number.MAX_VALUE),max:new y(-Number.MAX_VALUE,-Number.MAX_VALUE)}),c=(e,t)=>{const i=e.wrap+e.canonical.x/(1<o+l.max.x||r+ns+l.max.y};for(let o=0;oe.key===t.tileID.key));if(e)return e}if(t.tileID.key!==e.key){const i=e.canonical.z-t.tileID.canonical.z;let n,o,s;r=Su.create();const a=t.tileID.wrap-e.wrap<0?(n=cr>>i,o=n*((t.tileID.canonical.x<=r){const i=e.canonical.z-r;t.getSource().reparseOverscaled?(s=Math.max(e.canonical.z+2,t.transform.tileZoom),o=new $u(s,e.wrap,r,e.canonical.x>>i,e.canonical.y>>i)):0!==i&&(s=r,o=new $u(s,e.wrap,r,e.canonical.x>>i,e.canonical.y>>i))}o.key!==e.key&&(l.push(o.key),i=t.getTile(o))}const c=e=>{l.forEach((t=>{r[t]=e})),l.length=0};for(s-=1;s>=a&&(!i||!i.hasData());s--){i&&c(i.tileID.key);const e=o.calculateScaledKey(s);if(i=t.getTileByID(e),i&&i.hasData())break;const n=r[e];if(null===n)break;void 0===n?l.push(e):i=t.getTileByID(n)}return c(i?i.tileID.key:null),i&&i.hasData()?i:null}findDEMTileFor(e){return this.enabled?this._findTileCoveringTileID(e,this.sourceCache):null}prepareDrawTile(){this.renderedToTile=!0}_clearRenderCacheForTile(e,t){let i=this._tilesDirty[e];i||(i=this._tilesDirty[e]={}),i[t.key]=!0}}function dA(e,t,i){const r=function(e,t,i){const r=zu.dot(t,e),n=zu.dot(i,[.2126,.7152,.0722]),o=(e,t,i)=>(1-i)*e+i*t,s=o(1-.3*Math.min(n,1),1,Math.min(r+1,1));return o(.92,1,Math.asin(k(t[2],-1,1))/Math.PI+.5)*s}(e,[0,0,1],t),n=[0,0,0];zu.scale(n,i.slice(0,3),r);const o=[0,0,0];zu.scale(o,t.slice(0,3),e[2]);const s=[0,0,0];return zu.add(s,n,o),ae(s)}const pA=["fill","fillOutline","fillPattern","line","linePattern","background","backgroundPattern","hillshade","raster"],fA=["stars","fillExtrusion","fillExtrusionGroundEffect","model","symbolSDF","symbolIcon","symbolTextAndIcon"];class mA{static cacheKey(e,t,i,r){let n=`${t}${r?r.cacheKey:""}`;for(const t of i)e.usedDefines.includes(t)&&(n+=`/${t}`);return n}constructor(e,t,i,r,n,o){const s=e.gl;this.program=s.createProgram(),this.configuration=r,this.name=t,this.fixedDefines=[...o];const a=r?r.getBinderAttributes():[],l=(i.staticAttributes||[]).concat(a);let c=r?r.defines():[];c=c.concat(o.map((e=>`#define ${e}`)));const h="#version 300 es\n";let u=h+c.concat("precision mediump float;",VE,UE.fragmentSource).join("\n");for(const e of i.fragmentIncludes)u+=`\n${NE[e]}`;u+=`\n${i.fragmentSource}`;let d=h+c.concat("precision highp float;",VE,UE.vertexSource).join("\n");for(const e of i.vertexIncludes)d+=`\n${NE[e]}`;d+=`\n${i.vertexSource}`;const p=s.createShader(s.FRAGMENT_SHADER);if(s.isContextLost())return void(this.failedToCreate=!0);s.shaderSource(p,u),s.compileShader(p),s.attachShader(this.program,p);const f=s.createShader(s.VERTEX_SHADER);if(s.isContextLost())this.failedToCreate=!0;else{s.shaderSource(f,d),s.compileShader(f),s.attachShader(this.program,f),this.attributes={},this.numAttributes=l.length;for(let e=0;e({u_dem:new Rl(e),u_dem_prev:new Rl(e),u_dem_tl:new Bl(e),u_dem_scale:new Ol(e),u_dem_tl_prev:new Bl(e),u_dem_scale_prev:new Ol(e),u_dem_size:new Ol(e),u_dem_lerp:new Ol(e),u_exaggeration:new Ol(e),u_depth:new Rl(e),u_depth_size_inv:new Bl(e),u_meter_to_dem:new Ol(e),u_label_plane_matrix_inv:new Vl(e)}))(e)),o.includes("GLOBE")&&(this.globeUniforms=(e=>({u_tile_tl_up:new Fl(e),u_tile_tr_up:new Fl(e),u_tile_br_up:new Fl(e),u_tile_bl_up:new Fl(e),u_tile_up_scale:new Ol(e)}))(e)),o.includes("FOG")&&(this.fogUniforms=(e=>({u_fog_matrix:new Vl(e),u_fog_range:new Bl(e),u_fog_color:new Nl(e),u_fog_horizon_blend:new Ol(e),u_fog_vertical_limit:new Bl(e),u_fog_temporal_offset:new Ol(e),u_frustum_tl:new Fl(e),u_frustum_tr:new Fl(e),u_frustum_br:new Fl(e),u_frustum_bl:new Fl(e),u_globe_pos:new Fl(e),u_globe_radius:new Ol(e),u_globe_transition:new Ol(e),u_is_globe:new Rl(e),u_viewport:new Bl(e)}))(e)),o.includes("RENDER_CUTOFF")&&(this.cutoffUniforms=(e=>({u_cutoff_params:new Nl(e)}))(e)),o.includes("LIGHTING_3D_MODE")&&(this.lightsUniforms=(e=>({u_lighting_ambient_color:new Fl(e),u_lighting_directional_dir:new Fl(e),u_lighting_directional_color:new Fl(e),u_ground_radiance:new Fl(e)}))(e)),o.includes("RENDER_SHADOWS")&&(this.shadowUniforms=(e=>({u_light_matrix_0:new Vl(e),u_light_matrix_1:new Vl(e),u_fade_range:new Bl(e),u_shadow_normal_offset:new Fl(e),u_shadow_intensity:new Ol(e),u_shadow_texel_size:new Ol(e),u_shadow_map_resolution:new Ol(e),u_shadow_direction:new Fl(e),u_shadow_bias:new Fl(e),u_shadowmap_0:new Rl(e),u_shadowmap_1:new Rl(e)}))(e))}}setTerrainUniformValues(e,t){if(!this.terrainUniforms)return;const i=this.terrainUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e])}}setGlobeUniformValues(e,t){if(!this.globeUniforms)return;const i=this.globeUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e])}}setFogUniformValues(e,t){if(!this.fogUniforms)return;const i=this.fogUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e])}}setCutoffUniformValues(e,t){if(!this.cutoffUniforms)return;const i=this.cutoffUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e])}}setLightsUniformValues(e,t){if(!this.lightsUniforms)return;const i=this.lightsUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e])}}setShadowUniformValues(e,t){if(this.failedToCreate||!this.shadowUniforms)return;const i=this.shadowUniforms;e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e])}_drawDebugWireframe(e,t,i,r,n,o,s,a,l,c){const h=e.options.wireframe;if(!1===h.terrain&&!1===h.layers2D&&!1===h.layers3D)return;const u=e.context;if(!(()=>!(!h.terrain||"terrainRaster"!==this.name&&"globeRaster"!==this.name)||!(!h.layers2D||e._terrain&&e._terrain.renderingToTexture||!pA.includes(this.name))||!(!h.layers3D||!fA.includes(this.name)))())return;const d=u.gl,p=e.wireframeDebugCache.getLinesFromTrianglesBuffer(e.frameCounter,n,u);if(!p)return;const f=[...this.fixedDefines];f.push("DEBUG_WIREFRAME");const m=e.getOrCreateProgram(this.name,{config:this.configuration,defines:f});u.program.set(m.program);const _=(e,t,i)=>{if(t[e]&&i[e])for(const r in t[e])i[e][r]&&i[e][r].set(i.program,r,t[e][r].current)};l&&l.setUniforms(m.program,u,m.binderUniforms,s,{zoom:a}),_("fixedUniforms",this,m),_("terrainUniforms",this,m),_("globeUniforms",this,m),_("fogUniforms",this,m),_("lightsUniforms",this,m),_("shadowUniforms",this,m),p.bind(),u.setColorMode(new Cx([d.ONE,d.ONE_MINUS_SRC_ALPHA,d.ZERO,d.ONE],hi.transparent,[!0,!0,!0,!1])),u.setDepthMode(new Ax(t.func===d.LESS?d.LEQUAL:t.func,Ax.ReadOnly,t.range)),u.setStencilMode(Mx.disabled);const g=3*o.primitiveLength*2,y=3*o.primitiveOffset*2*2;c&&c>1?d.drawElementsInstanced(d.LINES,g,d.UNSIGNED_SHORT,y,c):d.drawElements(d.LINES,g,d.UNSIGNED_SHORT,y),n.bind(),u.program.set(this.program),u.setDepthMode(t),u.setStencilMode(i),u.setColorMode(r)}draw(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){const _=e.context,g=_.gl;if(this.failedToCreate)return;_.program.set(this.program),_.setDepthMode(i),_.setStencilMode(r),_.setColorMode(n),_.setCullFace(o);for(const e of Object.keys(this.fixedUniforms))this.fixedUniforms[e].set(this.program,e,s[e]);p&&p.setUniforms(this.program,_,this.binderUniforms,u,{zoom:d});const y={[g.LINES]:2,[g.TRIANGLES]:3,[g.LINE_STRIP]:1}[t],x=m&&m>0?1:void 0;for(const o of h.get()){const s=o.vaos||(o.vaos={});(s[a]||(s[a]=new ZE)).bind(_,this,l,p?p.getPaintVertexBuffers():[],c,o.vertexOffset,f||[],x),m&&m>1?g.drawElementsInstanced(t,o.primitiveLength*y,g.UNSIGNED_SHORT,o.primitiveOffset*y*2,m):g.drawElements(t,o.primitiveLength*y,g.UNSIGNED_SHORT,o.primitiveOffset*y*2),t===g.TRIANGLES&&this._drawDebugWireframe(e,i,r,n,c,o,u,d,p,m)}}}function _A(e,t){const i=Math.pow(2,t.tileID.overscaledZ),r=t.tileSize*Math.pow(2,e.transform.tileZoom)/i,n=r*(t.tileID.canonical.x+t.tileID.wrap*i),o=r*t.tileID.canonical.y;return{u_image:0,u_texsize:t.imageAtlasTexture?t.imageAtlasTexture.size:[0,0],u_tile_units_to_pixels:1/rv(t,1,e.transform.tileZoom),u_pixel_coord_upper:[n>>16,o>>16],u_pixel_coord_lower:[65535&n,65535&o]}}const gA=Su.create(),yA=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m)=>{const _=t.style.light,g=_.properties.get("position"),y=[g.x,g.y,g.z],x=Eu.create();"viewport"===_.properties.get("anchor")&&(Eu.fromRotation(x,-t.transform.angle),zu.transformMat3(y,y,x));const v=_.properties.get("color"),b=t.transform,w={u_matrix:e,u_lightpos:y,u_lightintensity:_.properties.get("intensity"),u_lightcolor:[v.r,v.g,v.b],u_vertical_gradient:+i,u_opacity:r,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:gA,u_merc_center:[0,0],u_up_dir:[0,0,0],u_height_lift:0,u_ao:n,u_edge_radius:o,u_flood_light_color:u,u_vertical_scale:d,u_flood_light_intensity:p,u_ground_shadow_factor:f,u_emissive_strength:m};return"globe"===b.projection.name&&(w.u_tile_id=[s.canonical.x,s.canonical.y,1<({u_matrix:e,u_edge_radius:t,u_vertical_scale:i}),vA=(e,t,i,r,n,o,s,a,l,c,h,u,d,p)=>{const f=yA(e,t,i,r,n,o,s,l,c,h,u,d,p,1,[0,0,0],0),m={u_height_factor:-Math.pow(2,s.overscaledZ)/a.tileSize/8};return R(f,_A(t,a),m)},bA=(e,t)=>({u_matrix:e,u_emissive_strength:t}),wA=(e,t,i,r)=>R(bA(e,t),_A(i,r)),TA=(e,t,i)=>({u_matrix:e,u_world:i,u_emissive_strength:t}),EA=(e,t,i,r,n)=>R(wA(e,t,i,r),{u_world:n}),AA=(e,t,i,r)=>{const n=cr/i.tileSize;return{u_matrix:e,u_camera_to_center_distance:t.getCameraToCenterDistance(r),u_extrude_scale:[t.pixelsToGLUnits[0]/n,t.pixelsToGLUnits[1]/n]}},SA=(e,t,i=1)=>({u_matrix:e,u_color:t,u_overlay:0,u_overlay_scale:i}),MA=Su.create(),IA=(e,t,i,r,n,o,s)=>{const a=e.transform,l="globe"===a.projection.name,c=l?Cd(a.zoom,t.canonical)*a._pixelsPerMercatorPixel:rv(i,1,o),h={u_matrix:t.projMatrix,u_extrude_scale:c,u_intensity:s,u_inv_rot_matrix:MA,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0]};if(l){h.u_inv_rot_matrix=r,h.u_merc_center=n,h.u_tile_id=[t.canonical.x,t.canonical.y,1<{return{u_matrix:e,u_normalize_matrix:t,u_globe_matrix:i,u_merc_matrix:r,u_grid_matrix:n,u_tl_parent:o,u_scale_parent:h,u_fade_t:u.mix,u_opacity:u.opacity*d.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:d.paint.get("raster-brightness-min"),u_brightness_high:d.paint.get("raster-brightness-max"),u_saturation_factor:(T=d.paint.get("raster-saturation"),T>0?1-1/(1.001-T):-T),u_contrast_factor:(w=d.paint.get("raster-contrast"),w>0?1/(1-w):1+w),u_spin_weights:kA(d.paint.get("raster-hue-rotate")),u_perspective_transform:p,u_raster_elevation:f,u_tl_br:s,u_zoom_transition:a,u_merc_center:l,u_cutoff_params:c,u_colorization_mix:PA(_,y),u_colorization_offset:zA(g,y),u_color_ramp:m,u_texture_offset:[v/(x+2*v),x/(x+2*v)],u_texture_res:[x+2*v,x+2*v],u_emissive_strength:b};var w,T};function kA(e){e*=Math.PI/180;const t=Math.sin(e),i=Math.cos(e);return[(2*i+1)/3,(-Math.sqrt(3)*t-i+1)/3,(Math.sqrt(3)*t-i+1)/3]}function PA([e,t,i,r],[n,o]){if(n===o)return[0,0,0,0];const s=259/257/(o-n);return[e*s,t*s,i*s,r*s]}function zA(e,[t,i]){return t===i?0:((e-t)/(i-t)*259-1)/257}const LA=Su.create(),DA=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g)=>{const y=n.transform,x={u_is_size_zoom_constant:+("constant"===e||"source"===e),u_is_size_feature_constant:+("constant"===e||"camera"===e),u_size_t:t?t.uSizeT:0,u_size:t?t.uSize:0,u_camera_to_center_distance:y.getCameraToCenterDistance(m),u_rotate_symbol:+i,u_aspect_ratio:y.width/y.height,u_fade_change:n.options.fadeDuration?n.symbolFadeChange:1,u_matrix:o,u_label_plane_matrix:s,u_coord_matrix:a,u_is_text:+l,u_pitch_with_map:+r,u_texsize:c,u_texture:0,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:LA,u_merc_center:[0,0],u_camera_forward:[0,0,0],u_ecef_origin:[0,0,0],u_tile_matrix:LA,u_up_vector:[0,-1,0],u_icon_transition:g||0,u_icon_saturation:_};return"globe"===m.name&&(x.u_tile_id=[h.canonical.x,h.canonical.y,1<R(DA(e,t,i,r,n,o,s,a,l,c,u,d,p,f,m,_,1),{u_gamma_scale:r?n.transform.getCameraToCenterDistance(_)*Math.cos(n.terrain?0:n.transform._pitch):1,u_device_pixel_ratio:dt.devicePixelRatio,u_is_halo:+h,undefined:void 0}),OA=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m)=>R(RA(e,t,i,r,n,o,s,a,!0,l,!0,h,u,d,p,f,m),{u_texsize_icon:c,u_texture_icon:1}),BA=(e,t,i,r)=>({u_matrix:e,u_emissive_strength:t,u_opacity:i,u_color:r}),FA=(e,t,i,r,n,o,s)=>R(function(e,t,i,r){const n=i.imageManager.getPattern(e.toString(),t),{width:o,height:s}=i.imageManager.getPixelSize(t),a=Math.pow(2,r.tileID.overscaledZ),l=r.tileSize*Math.pow(2,i.transform.tileZoom)/a,c=l*(r.tileID.canonical.x+r.tileID.wrap*a),h=l*r.tileID.canonical.y;return{u_image:0,u_pattern_tl:n.tl,u_pattern_br:n.br,u_texsize:[o,s],u_pattern_size:n.displaySize,u_tile_units_to_pixels:1/rv(r,1,i.transform.tileZoom),u_pixel_coord_upper:[c>>16,h>>16],u_pixel_coord_lower:[65535&c,65535&h]}}(n,o,r,s),{u_matrix:e,u_emissive_strength:t,u_opacity:i}),NA={BaseColor:5,MetallicRoughness:6,Normal:7,Occlusion:8,Emission:9,ShadowMap0:10},jA=(e,t,i,r,n,o,s,a,l,c,h,u,d=[0,0,0])=>{const p=r.style.light,f=p.properties.get("position"),m=[-f.x,-f.y,f.z],_=Eu.create();"viewport"===p.properties.get("anchor")&&(Eu.fromRotation(_,-r.transform.angle),zu.transformMat3(m,m,_));const g="MASK"===c.alphaMode,y=p.properties.get("color"),x=u.paint.get("model-ambient-occlusion-intensity"),v=u.paint.get("model-color").constantOr(hi.white),b=u.paint.get("model-color-mix-intensity").constantOr(0);return{u_matrix:e,u_lighting_matrix:t,u_normal_matrix:i,u_lightpos:m,u_lightintensity:p.properties.get("intensity"),u_lightcolor:[y.r,y.g,y.b],u_camera_pos:d,u_opacity:n,u_baseTextureIsAlpha:0,u_alphaMask:+g,u_alphaCutoff:c.alphaCutoff,u_baseColorFactor:[o.r,o.g,o.b,o.a],u_emissiveFactor:[s[0],s[1],s[2],1],u_metallicFactor:a,u_roughnessFactor:l,u_baseColorTexture:NA.BaseColor,u_metallicRoughnessTexture:NA.MetallicRoughness,u_normalTexture:NA.Normal,u_occlusionTexture:NA.Occlusion,u_emissionTexture:NA.Emission,u_color_mix:[v.r,v.g,v.b,b],u_aoIntensity:x,u_emissive_strength:h}},UA=new Float32Array(16),VA=(e,t=UA,i=UA)=>({u_matrix:e,u_instance:t,u_node_matrix:i}),GA={fillExtrusion:e=>({u_matrix:new Vl(e),u_lightpos:new Fl(e),u_lightintensity:new Ol(e),u_lightcolor:new Fl(e),u_vertical_gradient:new Ol(e),u_opacity:new Ol(e),u_edge_radius:new Ol(e),u_ao:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new Vl(e),u_merc_center:new Bl(e),u_up_dir:new Fl(e),u_height_lift:new Ol(e),u_flood_light_color:new Fl(e),u_vertical_scale:new Ol(e),u_flood_light_intensity:new Ol(e),u_ground_shadow_factor:new Fl(e),u_emissive_strength:new Ol(e)}),fillExtrusionDepth:e=>({u_matrix:new Vl(e),u_edge_radius:new Ol(e),u_vertical_scale:new Ol(e)}),fillExtrusionPattern:e=>({u_matrix:new Vl(e),u_lightpos:new Fl(e),u_lightintensity:new Ol(e),u_lightcolor:new Fl(e),u_vertical_gradient:new Ol(e),u_height_factor:new Ol(e),u_edge_radius:new Ol(e),u_ao:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new Vl(e),u_merc_center:new Bl(e),u_up_dir:new Fl(e),u_height_lift:new Ol(e),u_image:new Rl(e),u_texsize:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e),u_opacity:new Ol(e)}),fillExtrusionGroundEffect:e=>({u_matrix:new Vl(e),u_opacity:new Ol(e),u_ao_pass:new Ol(e),u_meter_to_tile:new Ol(e),u_ao:new Bl(e),u_flood_light_intensity:new Ol(e),u_flood_light_color:new Fl(e),u_attenuation:new Ol(e),u_edge_radius:new Ol(e),u_fb:new Rl(e),u_fb_size:new Ol(e)}),fill:e=>({u_matrix:new Vl(e),u_emissive_strength:new Ol(e)}),fillPattern:e=>({u_matrix:new Vl(e),u_emissive_strength:new Ol(e),u_image:new Rl(e),u_texsize:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e)}),fillOutline:e=>({u_matrix:new Vl(e),u_emissive_strength:new Ol(e),u_world:new Bl(e)}),fillOutlinePattern:e=>({u_matrix:new Vl(e),u_emissive_strength:new Ol(e),u_world:new Bl(e),u_image:new Rl(e),u_texsize:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e)}),circle:e=>({u_camera_to_center_distance:new Ol(e),u_extrude_scale:new Zl(e),u_device_pixel_ratio:new Ol(e),u_matrix:new Vl(e),u_inv_rot_matrix:new Vl(e),u_merc_center:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_up_dir:new Fl(e),u_emissive_strength:new Ol(e)}),collisionBox:e=>({u_matrix:new Vl(e),u_camera_to_center_distance:new Ol(e),u_extrude_scale:new Bl(e)}),collisionCircle:e=>({u_matrix:new Vl(e),u_inv_matrix:new Vl(e),u_camera_to_center_distance:new Ol(e),u_viewport_size:new Bl(e)}),debug:e=>({u_color:new jl(e),u_matrix:new Vl(e),u_overlay:new Rl(e),u_overlay_scale:new Ol(e)}),clippingMask:e=>({u_matrix:new Vl(e)}),heatmap:e=>({u_extrude_scale:new Ol(e),u_intensity:new Ol(e),u_matrix:new Vl(e),u_inv_rot_matrix:new Vl(e),u_merc_center:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_up_dir:new Fl(e)}),heatmapTexture:e=>({u_image:new Rl(e),u_color_ramp:new Rl(e),u_opacity:new Ol(e)}),hillshade:e=>({u_matrix:new Vl(e),u_image:new Rl(e),u_latrange:new Bl(e),u_light:new Bl(e),u_shadow:new jl(e),u_highlight:new jl(e),u_emissive_strength:new Ol(e),u_accent:new jl(e)}),hillshadePrepare:e=>({u_matrix:new Vl(e),u_image:new Rl(e),u_dimension:new Bl(e),u_zoom:new Ol(e)}),line:e=>({u_matrix:new Vl(e),u_pixels_to_tile_units:new Zl(e),u_device_pixel_ratio:new Ol(e),u_units_to_pixels:new Bl(e),u_dash_image:new Rl(e),u_gradient_image:new Rl(e),u_image_height:new Ol(e),u_texsize:new Bl(e),u_tile_units_to_pixels:new Ol(e),u_alpha_discard_threshold:new Ol(e),u_trim_offset:new Bl(e),u_emissive_strength:new Ol(e)}),linePattern:e=>({u_matrix:new Vl(e),u_texsize:new Bl(e),u_pixels_to_tile_units:new Zl(e),u_device_pixel_ratio:new Ol(e),u_image:new Rl(e),u_units_to_pixels:new Bl(e),u_tile_units_to_pixels:new Ol(e),u_alpha_discard_threshold:new Ol(e)}),raster:e=>({u_matrix:new Vl(e),u_normalize_matrix:new Vl(e),u_globe_matrix:new Vl(e),u_merc_matrix:new Vl(e),u_grid_matrix:new $l(e),u_tl_parent:new Bl(e),u_scale_parent:new Ol(e),u_fade_t:new Ol(e),u_opacity:new Ol(e),u_image0:new Rl(e),u_image1:new Rl(e),u_brightness_low:new Ol(e),u_brightness_high:new Ol(e),u_saturation_factor:new Ol(e),u_contrast_factor:new Ol(e),u_spin_weights:new Fl(e),u_perspective_transform:new Bl(e),u_raster_elevation:new Ol(e),u_tl_br:new Nl(e),u_zoom_transition:new Ol(e),u_merc_center:new Bl(e),u_cutoff_params:new Nl(e),u_colorization_mix:new Nl(e),u_colorization_offset:new Ol(e),u_color_ramp:new Rl(e),u_texture_offset:new Bl(e),u_texture_res:new Bl(e),u_emissive_strength:new Ol(e)}),symbolIcon:e=>({u_is_size_zoom_constant:new Rl(e),u_is_size_feature_constant:new Rl(e),u_size_t:new Ol(e),u_size:new Ol(e),u_camera_to_center_distance:new Ol(e),u_rotate_symbol:new Rl(e),u_aspect_ratio:new Ol(e),u_fade_change:new Ol(e),u_matrix:new Vl(e),u_label_plane_matrix:new Vl(e),u_coord_matrix:new Vl(e),u_is_text:new Rl(e),u_pitch_with_map:new Rl(e),u_texsize:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new Vl(e),u_merc_center:new Bl(e),u_camera_forward:new Fl(e),u_tile_matrix:new Vl(e),u_up_vector:new Fl(e),u_ecef_origin:new Fl(e),u_texture:new Rl(e),u_icon_transition:new Ol(e),u_icon_saturation:new Ol(e)}),symbolSDF:e=>({u_is_size_zoom_constant:new Rl(e),u_is_size_feature_constant:new Rl(e),u_size_t:new Ol(e),u_size:new Ol(e),u_camera_to_center_distance:new Ol(e),u_rotate_symbol:new Rl(e),u_aspect_ratio:new Ol(e),u_fade_change:new Ol(e),u_matrix:new Vl(e),u_label_plane_matrix:new Vl(e),u_coord_matrix:new Vl(e),u_is_text:new Rl(e),u_pitch_with_map:new Rl(e),u_texsize:new Bl(e),u_texture:new Rl(e),u_gamma_scale:new Ol(e),u_device_pixel_ratio:new Ol(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new Vl(e),u_merc_center:new Bl(e),u_camera_forward:new Fl(e),u_tile_matrix:new Vl(e),u_up_vector:new Fl(e),u_ecef_origin:new Fl(e),u_is_halo:new Rl(e)}),symbolTextAndIcon:e=>({u_is_size_zoom_constant:new Rl(e),u_is_size_feature_constant:new Rl(e),u_size_t:new Ol(e),u_size:new Ol(e),u_camera_to_center_distance:new Ol(e),u_rotate_symbol:new Rl(e),u_aspect_ratio:new Ol(e),u_fade_change:new Ol(e),u_matrix:new Vl(e),u_label_plane_matrix:new Vl(e),u_coord_matrix:new Vl(e),u_is_text:new Rl(e),u_pitch_with_map:new Rl(e),u_texsize:new Bl(e),u_texsize_icon:new Bl(e),u_texture:new Rl(e),u_texture_icon:new Rl(e),u_gamma_scale:new Ol(e),u_device_pixel_ratio:new Ol(e),u_is_halo:new Rl(e)}),background:e=>({u_matrix:new Vl(e),u_emissive_strength:new Ol(e),u_opacity:new Ol(e),u_color:new jl(e)}),backgroundPattern:e=>({u_matrix:new Vl(e),u_emissive_strength:new Ol(e),u_opacity:new Ol(e),u_image:new Rl(e),u_pattern_tl:new Bl(e),u_pattern_br:new Bl(e),u_texsize:new Bl(e),u_pattern_size:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e)}),terrainRaster:KE,terrainDepth:KE,skybox:e=>({u_matrix:new Vl(e),u_sun_direction:new Fl(e),u_cubemap:new Rl(e),u_opacity:new Ol(e),u_temporal_offset:new Ol(e)}),skyboxGradient:e=>({u_matrix:new Vl(e),u_color_ramp:new Rl(e),u_center_direction:new Fl(e),u_radius:new Ol(e),u_opacity:new Ol(e),u_temporal_offset:new Ol(e)}),skyboxCapture:e=>({u_matrix_3f:new $l(e),u_sun_direction:new Fl(e),u_sun_intensity:new Ol(e),u_color_tint_r:new Nl(e),u_color_tint_m:new Nl(e),u_luminance:new Ol(e)}),globeRaster:e=>({u_proj_matrix:new Vl(e),u_globe_matrix:new Vl(e),u_normalize_matrix:new Vl(e),u_merc_matrix:new Vl(e),u_zoom_transition:new Ol(e),u_merc_center:new Bl(e),u_image0:new Rl(e),u_grid_matrix:new $l(e),u_skirt_height:new Ol(e),u_frustum_tl:new Fl(e),u_frustum_tr:new Fl(e),u_frustum_br:new Fl(e),u_frustum_bl:new Fl(e),u_globe_pos:new Fl(e),u_globe_radius:new Ol(e),u_viewport:new Bl(e)}),globeAtmosphere:e=>({u_frustum_tl:new Fl(e),u_frustum_tr:new Fl(e),u_frustum_br:new Fl(e),u_frustum_bl:new Fl(e),u_horizon:new Ol(e),u_transition:new Ol(e),u_fadeout_range:new Ol(e),u_color:new Nl(e),u_high_color:new Nl(e),u_space_color:new Nl(e),u_temporal_offset:new Ol(e),u_horizon_angle:new Ol(e)}),model:e=>({u_matrix:new Vl(e),u_lighting_matrix:new Vl(e),u_normal_matrix:new Vl(e),u_lightpos:new Fl(e),u_lightintensity:new Ol(e),u_lightcolor:new Fl(e),u_camera_pos:new Fl(e),u_opacity:new Ol(e),u_baseColorFactor:new Nl(e),u_emissiveFactor:new Nl(e),u_metallicFactor:new Ol(e),u_roughnessFactor:new Ol(e),u_baseTextureIsAlpha:new Rl(e),u_alphaMask:new Rl(e),u_alphaCutoff:new Ol(e),u_baseColorTexture:new Rl(e),u_metallicRoughnessTexture:new Rl(e),u_normalTexture:new Rl(e),u_occlusionTexture:new Rl(e),u_emissionTexture:new Rl(e),u_color_mix:new Nl(e),u_aoIntensity:new Ol(e),u_emissive_strength:new Ol(e)}),modelDepth:e=>({u_matrix:new Vl(e),u_instance:new Vl(e),u_node_matrix:new Vl(e)}),groundShadow:e=>({u_matrix:new Vl(e),u_ground_shadow_factor:new Fl(e)}),stars:e=>({u_matrix:new Vl(e),u_up:new Fl(e),u_right:new Fl(e),u_intensity_multiplier:new Ol(e)})};let $A;function qA(e,t,i,r,n,o,s){const a=e.context,l=a.gl,c=e.transform,h=e.getOrCreateProgram("collisionBox"),u=[];let d=0,p=0;for(let a=0;a0){const e=Su.create(),t=y;Su.mul(e,_.placementInvProjMatrix,c.glCoordMatrix),Su.mul(e,e,_.placementViewportMatrix),u.push({circleArray:v,circleOffset:p,transform:t,invTransform:e,projection:_.getProjection()}),d+=v.length/4,p=d}x&&(e.terrain&&e.terrain.setupElevationDraw(m,h),h.draw(e,l.LINES,Ax.disabled,Mx.disabled,e.colorModeForRenderPass(),zx.disabled,AA(y,c,m,_.getProjection()),i.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,c.zoom,null,[x.collisionVertexBuffer,x.collisionVertexBufferExt]))}if(!s||!u.length)return;const f=e.getOrCreateProgram("collisionCircle"),m=new qa;m.resize(4*d),m._trim();let _=0;for(const e of u)for(let t=0;t=0&&(f[x.associatedIconIndex]={x:E,y:A,z:S,angle:P})}else xv(w,d)}if(h){p.clear();const t=e.icon.placedSymbolArray;for(let e=0;e0&&Q.push("ICON_TRANSITION"),u.zOffsetVertexBuffer&&Q.push("Z_OFFSET");const ee=p&&0!==i.paint.get(n?"text-halo-width":"icon-halo-width").constantOr(1);let te;p?te=l.iconsInText?OA(w.kind,k,x,g,e,W,X,Y,P,R,a,N,T,K,F,l.getProjection()):RA(w.kind,k,x,g,e,W,X,Y,n,P,!0,a,N,T,K,F,l.getProjection()):(h<1&&Q.push("SATURATION"),te=DA(w.kind,k,x,g,e,W,X,Y,n,P,a,N,T,K,F,l.getProjection(),h,J));const ie={program:e.getOrCreateProgram(XA(p,n,l),{config:d,defines:Q}),buffers:u,uniformValues:te,atlasTexture:z,atlasTextureIcon:O,atlasInterpolation:L,atlasInterpolationIcon:D,isSDF:p,hasHalo:ee,tile:r,labelPlaneMatrixInv:G};if(v&&l.canOverlap){b=!0;const e=u.segments.get();for(const t of e)S.push({segments:new xl([t]),sortKey:t.sortKey,state:ie})}else S.push({segments:u.segments,sortKey:0,state:ie})}b&&S.sort(((e,t)=>e.sortKey-t.sortKey));for(const t of S){const r=t.state;if(e.terrain&&e.terrain.setupElevationDraw(r.tile,r.program,{useDepthForOcclusion:m.depthOcclusionForSymbolsAndCircles,labelPlaneMatrixInv:r.labelPlaneMatrixInv}),p.activeTexture.set(f.TEXTURE0),r.atlasTexture&&r.atlasTexture.bind(r.atlasInterpolation,f.CLAMP_TO_EDGE),r.atlasTextureIcon&&(p.activeTexture.set(f.TEXTURE1),r.atlasTextureIcon&&r.atlasTextureIcon.bind(r.atlasInterpolationIcon,f.CLAMP_TO_EDGE)),e.uploadCommonLightUniforms(e.context,r.program),r.hasHalo){const n=r.uniformValues;n.u_is_halo=1,KA(r.buffers,t.segments,i,e,r.program,w,u,d,n,2),n.u_is_halo=0}else{if(r.isSDF){const n=r.uniformValues;r.hasHalo&&(n.u_is_halo=1,KA(r.buffers,t.segments,i,e,r.program,w,u,d,n,1)),n.u_is_halo=0}KA(r.buffers,t.segments,i,e,r.program,w,u,d,r.uniformValues,1)}}}function KA(e,t,i,r,n,o,s,a,l,c){const h=[e.dynamicLayoutVertexBuffer,e.opacityVertexBuffer,e.iconTransitioningVertexBuffer,e.globeExtVertexBuffer,e.zOffsetVertexBuffer];n.draw(r,r.context.gl.TRIANGLES,o,s,a,zx.disabled,l,i.id,e.layoutVertexBuffer,e.indexBuffer,t,i.paint,r.transform.zoom,e.programConfigurations.get(i.id),h,c)}function JA(e,t,i,r,n,o,s){const a=e.context.gl,l=i.paint.get("fill-pattern"),c=l&&l.constantOr(1);let h,u,d,p,f;s?(u=c&&!i.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",h=a.LINES):(u=c?"fillPattern":"fill",h=a.TRIANGLES);for(const m of r){const r=t.getTile(m);if(c&&!r.patternsLoaded())continue;const _=r.getBucket(i);if(!_)continue;e.prepareDrawTile();const g=_.programConfigurations.get(i.id),y=e.isTileAffectedByFog(m),x=e.getOrCreateProgram(u,{config:g,overrideFog:y});c&&(e.context.activeTexture.set(a.TEXTURE0),r.imageAtlasTexture&&r.imageAtlasTexture.bind(a.LINEAR,a.CLAMP_TO_EDGE),g.updatePaintBuffers());const v=l.constantOr(null);if(v&&r.imageAtlas){const e=r.imageAtlas.patternPositions[v.toString()];e&&g.setConstantPatternPositions(e)}const b=e.translatePosMatrix(m.projMatrix,r,i.paint.get("fill-translate"),i.paint.get("fill-translate-anchor")),w=i.paint.get("fill-emissive-strength");if(s){p=_.indexBuffer2,f=_.segments2;const t=e.terrain&&e.terrain.renderingToTexture?e.terrain.drapeBufferSize:[a.drawingBufferWidth,a.drawingBufferHeight];d="fillOutlinePattern"===u&&c?EA(b,w,e,r,t):TA(b,w,t)}else p=_.indexBuffer,f=_.segments,d=c?wA(b,w,e,r):bA(b,w);e.uploadCommonUniforms(e.context,x,m.toUnwrapped()),x.draw(e,h,n,e.stencilModeForClipping(m),o,zx.disabled,d,i.id,_.layoutVertexBuffer,p,f,i.paint,e.transform.zoom,g,void 0)}}function QA(e,t,i,r,n,o,s,a){i.resetLayerRenderingStats();const l=e.context,c=l.gl,h=e.transform,u=i.paint.get("fill-extrusion-pattern"),d=u.constantOr(1),p=i.paint.get("fill-extrusion-opacity"),f=e.style.enable3dLights(),m=i.paint.get(f&&!d?"fill-extrusion-ambient-occlusion-wall-radius":"fill-extrusion-ambient-occlusion-radius"),_=[i.paint.get("fill-extrusion-ambient-occlusion-intensity"),m],g=i.layout.get("fill-extrusion-edge-radius"),y=g>0&&!i.paint.get("fill-extrusion-rounded-roof"),x=y?0:g,v="globe"===h.projection.name?Ib():0,b="globe"===h.projection.name,w=b?zd(h.zoom):0,T=[Kd(h.center.lng),Jd(h.center.lat)],E=i.paint.get("fill-extrusion-flood-light-color").toArray01().slice(0,3),A=i.paint.get("fill-extrusion-flood-light-intensity"),S=i.paint.get("fill-extrusion-vertical-scale"),M=eA(e,i.paint.get("fill-extrusion-cutoff-fade-range")),I=i.paint.get("fill-extrusion-emissive-strength"),C=[];let k;b&&C.push("PROJECTION_GLOBE_VIEW"),_[0]>0&&C.push("FAUX_AO"),y&&C.push("ZERO_ROOF_RADIUS"),a&&C.push("HAS_CENTROID"),A>0&&C.push("FLOOD_LIGHT"),M.shouldRenderCutoff&&C.push("RENDER_CUTOFF");const P="shadow"===e.renderPass,z=e.shadowRenderer,L=P&&!!z;e.shadowRenderer&&(e.shadowRenderer.useNormalOffset=!0);let D=[0,0,0];if(z){const t=e.style.directionalLight,i=e.style.ambientLight;t&&i&&(D=HS(t,i)),k=C.concat(["SHADOWS_SINGLE_CASCADE"])}const R=L?"fillExtrusionDepth":d?"fillExtrusionPattern":"fillExtrusion",O=i.getLayerRenderingStats();for(const f of r){const r=t.getTile(f),m=r.getBucket(i);if(!m||m.projection.name!==h.projection.name)continue;let g=!1;z&&(g=0===z.getMaxCascadeForTile(f.toUnwrapped()));const y=e.isTileAffectedByFog(f),L=m.programConfigurations.get(i.id),B=e.getOrCreateProgram(R,{config:L,defines:g?k:C,overrideFog:y});if(e.terrain&&e.terrain.setupElevationDraw(r,B,{useMeterToDem:!0}),!m.centroidVertexBuffer){const e=B.attributes.a_centroid_pos;void 0!==e&&c.vertexAttrib2f(e,0,0)}!P&&z&&z.setupShadows(r.tileID.toUnwrapped(),B,"vector-tile",r.tileID.overscaledZ),d&&(e.context.activeTexture.set(c.TEXTURE0),r.imageAtlasTexture&&r.imageAtlasTexture.bind(c.LINEAR,c.CLAMP_TO_EDGE),L.updatePaintBuffers());const F=u.constantOr(null);if(F&&r.imageAtlas){const e=r.imageAtlas.patternPositions[F.toString()];e&&L.setConstantPatternPositions(e)}const N=i.paint.get("fill-extrusion-vertical-gradient");let j;if(P&&z){if(oS(r.tileID,m,e))continue;const t=z.calculateShadowPassMatrixFromTile(r.tileID.toUnwrapped());j=xA(t,x,S)}else{const t=e.translatePosMatrix(f.expandedProjMatrix,r,i.paint.get("fill-extrusion-translate"),i.paint.get("fill-extrusion-translate-anchor")),n=h.projection.createInversionMatrix(h,f.canonical);j=d?vA(t,e,N,p,_,x,f,r,v,w,T,n,E,S):yA(t,e,N,p,_,x,f,v,w,T,n,E,S,A,D,I)}e.uploadCommonUniforms(l,B,f.toUnwrapped(),null,M);let U=m.segments;if(!b&&!P&&(U=m.getVisibleSegments(r.tileID,e.terrain,e.transform.getFrustum(0)),!U.get().length))continue;if(O)if(P)for(const e of U.get())O.numRenderedVerticesInShadowPass+=e.primitiveLength;else for(const e of U.get())O.numRenderedVerticesInTransparentPass+=e.primitiveLength;const V=[];(e.terrain||a)&&V.push(m.centroidVertexBuffer),b&&V.push(m.layoutVertexExtBuffer),B.draw(e,l.gl.TRIANGLES,n,o,s,zx.backCCW,j,i.id,m.layoutVertexBuffer,m.indexBuffer,U,i.paint,e.transform.zoom,L,V)}e.shadowRenderer&&(e.shadowRenderer.useNormalOffset=!1)}function eS(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y){const x=e.context,v=x.gl,b=e.transform,w=e.transform.zoom,T=[],E=eA(e,i.paint.get("fill-extrusion-cutoff-fade-range"));"clear"===c?(T.push("CLEAR_SUBPASS"),y&&(T.push("CLEAR_FROM_TEXTURE"),x.activeTexture.set(v.TEXTURE0),y.bind(v.LINEAR,v.CLAMP_TO_EDGE))):"sdf"===c&&T.push("SDF_SUBPASS"),_&&T.push("HAS_CENTROID"),E.shouldRenderCutoff&&T.push("RENDER_CUTOFF");const A=i.layout.get("fill-extrusion-edge-radius"),S=(t,r,c,g,v)=>{const b=r.programConfigurations.get(i.id),S=e.isTileAffectedByFog(t),M=e.getOrCreateProgram("fillExtrusionGroundEffect",{config:b,defines:T,overrideFog:S}),I=((e,t,i,r,n,o,s,a,l,c,h)=>({u_matrix:t,u_opacity:i,u_ao_pass:r?1:0,u_meter_to_tile:n,u_ao:o,u_flood_light_intensity:s,u_flood_light_color:a,u_attenuation:l,u_edge_radius:c,u_fb:0,u_fb_size:h}))(0,g,h,l,v,[u,d*v],p,f,m,w>=17?0:A*v,y?y.size[0]:0),C=[];_&&C.push(r.hiddenByLandmarkVertexBuffer),e.uploadCommonUniforms(x,M,t.toUnwrapped(),null,E),M.draw(e,x.gl.TRIANGLES,n,o,s,a,I,i.id,r.vertexBuffer,r.indexBuffer,c,i.paint,w,b,C)};for(const n of r){const r=t.getTile(n),o=r.getBucket(i);if(!o||o.projection.name!==b.projection.name||!o.groundEffect||o.groundEffect&&!o.groundEffect.hasData())continue;const s=o.groundEffect,a=1/o.tileToMeter;{const t=e.translatePosMatrix(n.projMatrix,r,i.paint.get("fill-extrusion-translate"),i.paint.get("fill-extrusion-translate-anchor")),o=s.getDefaultSegment();S(n,s,o,t,a)}if(g)for(let o=0;o<4;o++){const s=Zu[o](n),l=t.getTile(s);if(!l)continue;const c=l.getBucket(i);if(!c||c.projection.name!==b.projection.name||!c.groundEffect||c.groundEffect&&!c.groundEffect.hasData())continue;const h=c.groundEffect;let u,d;0===o?(u=[-cr,0,0],d=1):1===o?(u=[cr,0,0],d=0):2===o?(u=[0,-cr,0],d=3):(u=[0,cr,0],d=2);const p=h.regionSegments[d];if(!p)continue;const f=new Float32Array(16);Su.translate(f,n.projMatrix,u),S(n,h,p,e.translatePosMatrix(f,r,i.paint.get("fill-extrusion-translate"),i.paint.get("fill-extrusion-translate-anchor")),a)}}}function tS(e,t,i,r,n,o,s){0===r.centroidVertexArray.length&&r.createCentroidsBuffer();const a=o?o.findDEMTileFor(i):null;if(!(a&&a.dem||s))return;const l=e=>{const i=t.getSource().minzoom,r=e=>{const i=t.getTileByID(e);if(i&&i.hasData())return i.getBucket(n)},o=[0,-1,1];for(const t of o){if(e.overscaledZ+t(c[0]=Math.min(e.min.y,t.min.y),c[1]=Math.max(e.max.y,t.max.y),c[2]=cr-t.min.x>e.max.x?t.min.x-cr:e.max.x,c),u=(e,t)=>(c[0]=Math.min(e.min.x,t.min.x),c[1]=Math.max(e.max.x,t.max.x),c[2]=cr-t.min.y>e.max.y?t.min.y-cr:e.max.y,c),d=[(e,t)=>h(e,t),(e,t)=>h(t,e),(e,t)=>u(e,t),(e,t)=>u(t,e)],p=(e,t,r,n,s,l,c)=>{if(!o)return 0;const h=[[l?r:e,l?e:r,0],[l?r:t,l?t:r,0]],u=c<0?cr+c:c,d=[l?u:(e+t)/2,l?(e+t)/2:u,0];return 0===r&&c<0||0!==r&&c>0?o.getForTilePoints(s,[d],!0,n):h.push(d),o.getForTilePoints(i,h,!0,a),Math.max(h[0][2],h[1][2],d[2])/o.exaggeration()};for(let e=0;e<4;e++){const t=r.borderFeatureIndices[e];if(0===t.length)continue;const n=Zu[e](i),a=l(n);if(!(a&&a instanceof vb))continue;if(r.borderDoneWithNeighborZ[e]===a.canonical.z)continue;0===a.centroidVertexArray.length&&a.createCentroidsBuffer();const c=o?o.findDEMTileFor(n):null;if(!(c&&c.dem||s))continue;const h=(e<2?1:5)-e,u=a.borderDoneWithNeighborZ[h]!==r.canonical.z,g=a.borderFeatureIndices[h];let x=0;if(r.canonical.z!==a.canonical.z){for(const e of t)r.showCentroid(r.featuresOnBorder[e]);if(u)for(const e of g)a.showCentroid(a.featuresOnBorder[e]);r.borderDoneWithNeighborZ[e]=a.canonical.z,a.borderDoneWithNeighborZ[h]=r.canonical.z}for(const i of t){const t=r.featuresOnBorder[i],o=r.centroidData[t.centroidDataIndex],l=t.borders[e];let u;for(;xl[0]+3||e[0]>l[0]-3)break;a.showCentroid(u),x++}if(u&&xl[1]-3)&&(v++,++x!==g.length);)u=a.featuresOnBorder[g[x]];if(u=a.featuresOnBorder[g[i]],v>1){const e=u.borders[h];Math.abs(l[0]-e[0])<3&&Math.abs(l[1]-e[1])<3&&(v=1,x=i+1)}else if(0===v){r.showCentroid(t);continue}const b=a.centroidData[u.centroidDataIndex];s&&1===v&&(((m=o).flags|(_=b).flags)&cb?(m.flags|=cb,_.flags|=cb):(m.flags&=2147483647,_.flags&=2147483647));let w=new y(0,0);if(v>1)x=i;else if(c&&c.dem&&!(t.intersectsCount()>1||u.intersectsCount()>1)){const t=d[e](o,b),i=e%2?cr-1:0;f=p(t[0],Math.min(cr-1,t[1]),i,c,n,e<2,t[2]),w=new y(Math.ceil(7*(f+450)),0)}o.centroidXY=b.centroidXY=w,r.writeCentroidToBuffer(o),a.writeCentroidToBuffer(b)}else r.showCentroid(t)}r.borderDoneWithNeighborZ[e]=a.canonical.z,a.borderDoneWithNeighborZ[h]=r.canonical.z}var f,m,_;(r.needsCentroidUpdate||!r.centroidVertexBuffer&&0!==r.centroidVertexArray.length)&&r.uploadCentroid(e)}const iS=[1,0,0],rS=[0,1,0],nS=[0,0,1];function oS(e,t,i){const r=i.transform,n=i.shadowRenderer;if(!n)return!0;const o=e.toUnwrapped(),s=r.tileSize*n._cascades[i.currentShadowCascade].scale;let a=t.maxHeight;if(r.elevation){const t=r.elevation.getMinMaxForTile(e);t&&(a+=t.max)}const l=[...n.shadowDirection];l[2]=-l[2];const c=n.computeSimplifiedTileShadowVolume(o,a,s,l);if(!c)return!1;const h=[iS,rS,nS,l,[l[0],0,l[2]],[0,l[1],l[2]]],u="globe"===r.projection.name,d=r.scaleZoom(s),p=Qu.fromInvProjectionMatrix(r.invProjMatrix,r.worldSize,d,!u),f=n.getCurrentCascadeFrustum();return 0===p.intersectsPrecise(c.vertices,c.planes,h)||0===f.intersectsPrecise(c.vertices,c.planes,h)}function sS(e){const t=e._nearZ,i=e.projection.farthestPixelDistance(e),r=i-t,n=.2*e.height,o=t+n;return[t,i,(o-n-t)/r,(o-t)/r]}const aS=new hi(1,0,0,1),lS=new hi(0,1,0,1),cS=new hi(0,0,1,1),hS=new hi(1,0,1,1),uS=new hi(0,1,1,1);function dS(e,t,i){const r=e.context,n=e.transform,o=r.gl,s="globe"===n.projection.name,a=s?["PROJECTION_GLOBE_VIEW"]:[];let l=i.projMatrix;if(s&&zd(n.zoom)>0){const e=Md(_d(i.canonical,n));l=Su.multiply(new Float32Array(16),n.globeMatrix,e),Su.multiply(l,n.projMatrix,l)}const c=e.getOrCreateProgram("debug",{defines:a}),h=t.getTileByID(i.key);e.terrain&&e.terrain.setupElevationDraw(h,c);const u=Ax.disabled,d=Mx.disabled,p=e.colorModeForRenderPass(),f="$debug";r.activeTexture.set(o.TEXTURE0),e.emptyTexture.bind(o.LINEAR,o.CLAMP_TO_EDGE),s?h._makeGlobeTileDebugBuffers(e.context,n):h._makeDebugTileBoundsBuffers(e.context,n.projection);const m=h._tileDebugBuffer||e.debugBuffer,_=h._tileDebugIndexBuffer||e.debugIndexBuffer,g=h._tileDebugSegments||e.debugSegments;c.draw(e,o.LINE_STRIP,u,d,p,zx.disabled,SA(l,hi.red),f,m,_,g,null,null,null,[h._globeTileDebugBorderBuffer]);const y=h.latestRawTileData,x=Math.floor((y&&y.byteLength||0)/1024),v=t.getTile(i).tileSize,b=512/Math.min(v,512)*(i.overscaledZ/n.zoom)*.5;let w=i.canonical.toString();i.overscaledZ!==i.canonical.z&&(w+=` => ${i.overscaledZ}`),w+=` ${x}kb`,function(e,t){e.initDebugOverlayCanvas();const i=e.debugOverlayCanvas,r=e.context.gl,n=e.debugOverlayCanvas.getContext("2d");n.clearRect(0,0,i.width,i.height),n.shadowColor="white",n.shadowBlur=2,n.lineWidth=1.5,n.strokeStyle="white",n.textBaseline="top",n.font="bold 36px Open Sans, sans-serif",n.fillText(t,5,5),n.strokeText(t,5,5),e.debugOverlayTexture.update(i),e.debugOverlayTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)}(e,w);const T=h._tileDebugTextBuffer||e.debugBuffer,E=h._tileDebugTextIndexBuffer||e.quadTriangleIndexBuffer,A=h._tileDebugTextSegments||e.debugSegments;c.draw(e,o.TRIANGLES,u,d,Cx.alphaBlended,zx.disabled,SA(l,hi.transparent,b),f,T,E,A,null,null,null,[h._globeTileDebugTextBuffer])}function pS(e,t,i,r){mS(e,0,t+i/2,e.transform.width,i,r)}function fS(e,t,i,r){mS(e,t-i/2,0,i,e.transform.height,r)}function mS(e,t,i,r,n,o){const s=e.context,a=s.gl;a.enable(a.SCISSOR_TEST),a.scissor(t*dt.devicePixelRatio,i*dt.devicePixelRatio,r*dt.devicePixelRatio,n*dt.devicePixelRatio),s.clear({color:o}),a.disable(a.SCISSOR_TEST)}const _S=Ia([{name:"a_pos_3f",components:3,type:"Float32"}]),{members:gS}=_S;function yS(e,t,i,r){e.emplaceBack(t,i,r)}class xS{constructor(e){this.vertexArray=new tl,this.indices=new Ha,yS(this.vertexArray,-1,-1,1),yS(this.vertexArray,1,-1,1),yS(this.vertexArray,-1,1,1),yS(this.vertexArray,1,1,1),yS(this.vertexArray,-1,-1,-1),yS(this.vertexArray,1,-1,-1),yS(this.vertexArray,-1,1,-1),yS(this.vertexArray,1,1,-1),this.indices.emplaceBack(5,1,3),this.indices.emplaceBack(3,7,5),this.indices.emplaceBack(6,2,0),this.indices.emplaceBack(0,4,6),this.indices.emplaceBack(2,6,7),this.indices.emplaceBack(7,3,2),this.indices.emplaceBack(5,4,0),this.indices.emplaceBack(0,1,5),this.indices.emplaceBack(0,2,3),this.indices.emplaceBack(3,1,0),this.indices.emplaceBack(7,6,4),this.indices.emplaceBack(4,5,7),this.vertexBuffer=e.createVertexBuffer(this.vertexArray,gS),this.indexBuffer=e.createIndexBuffer(this.indices),this.segment=xl.simpleSegment(0,0,36,12)}}function vS(e,t,i,r,n,o){const s=e.context.gl,a=t.paint.get("sky-atmosphere-color"),l=t.paint.get("sky-atmosphere-halo-color"),c=t.paint.get("sky-atmosphere-sun-intensity"),h=((e,t,i,r,n)=>({u_matrix_3f:e,u_sun_direction:t,u_sun_intensity:i,u_color_tint_r:[r.r,r.g,r.b,r.a],u_color_tint_m:[n.r,n.g,n.b,n.a],u_luminance:5e-5}))(Eu.fromMat4(Eu.create(),r),n,c,a,l);s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0,s.TEXTURE_CUBE_MAP_POSITIVE_X+o,t.skyboxTexture,0),i.draw(e,s.TRIANGLES,Ax.disabled,Mx.disabled,Cx.unblended,zx.frontCW,h,"skyboxCapture",t.skyboxGeometry.vertexBuffer,t.skyboxGeometry.indexBuffer,t.skyboxGeometry.segment)}const bS=Ia([{type:"Float32",name:"a_pos",components:3},{type:"Float32",name:"a_uv",components:2}]);class wS{constructor(e){const t=new Ka;t.emplaceBack(-1,1,1,0,0),t.emplaceBack(1,1,1,1,0),t.emplaceBack(1,-1,1,1,1),t.emplaceBack(-1,-1,1,0,1);const i=new Ha;i.emplaceBack(0,1,2),i.emplaceBack(2,3,0),this.vertexBuffer=e.createVertexBuffer(t,bS.members),this.indexBuffer=e.createIndexBuffer(i),this.segments=xl.simpleSegment(0,0,4,2)}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy()}}const TS=Ia([{type:"Float32",name:"a_pos_3f",components:3},{type:"Float32",name:"a_uv",components:2},{type:"Float32",name:"a_size_scale",components:1},{type:"Float32",name:"a_fade_opacity",components:1}]);class ES{constructor(){this.colorModeAlphaBlendedWriteRGB=new Cx([1,Ix,1,Ix],hi.transparent,[!0,!0,!0,!1]),this.colorModeWriteAlpha=new Cx([1,0,1,0],hi.transparent,[!1,!1,!1,!0])}update(e){const t=e.context;if(!this.atmosphereBuffer){this.atmosphereBuffer=new wS(t);const e=100,i=200,r=function(e){const t=Xn(30),i=[];for(let e=0;e<16e3;++e){const e=2*Math.PI*t(),r=Math.acos(1-2*t())-.5*Math.PI;i.push(zu.fromValues(Math.cos(r)*Math.cos(e),Math.cos(r)*Math.sin(e),Math.sin(r)))}return i}(),n=Xn(300),o=new Ja,s=new Ha;let a=0;for(let t=0;t{const h="globe"===n.projection.name?["PROJECTION_GLOBE_VIEW","FOG"]:["FOG"];t&&h.push("ALPHA_PASS");const d=e.getOrCreateProgram("globeAtmosphere",{defines:h}),f=((e,t,i,r,n,o,s,a,l,c,h,u)=>({u_frustum_tl:e,u_frustum_tr:t,u_frustum_br:i,u_frustum_bl:r,u_horizon:n,u_transition:o,u_fadeout_range:s,u_color:a,u_high_color:l,u_space_color:c,u_temporal_offset:h,u_horizon_angle:u}))(n.frustumCorners.TL,n.frustumCorners.TR,n.frustumCorners.BR,n.frustumCorners.BL,n.frustumCorners.horizon,s,u,a,l,c,p,_);e.uploadCommonUniforms(i,d);const m=this.atmosphereBuffer;m&&d.draw(e,r.TRIANGLES,o,Mx.disabled,t?this.colorModeWriteAlpha:this.colorModeAlphaBlendedWriteRGB,zx.backCW,f,t?"atmosphere_glow_alpha":"atmosphere_glow",m.vertexBuffer,m.indexBuffer,m.segments)};g(!1),g(!0)}drawStars(e,t){const i=k(t.properties.get("star-intensity"),0,1);if(0===i)return;const r=e.context,n=r.gl,o=e.transform,s=e.getOrCreateProgram("stars"),a=Iu.identity([]);Iu.rotateX(a,a,-o._pitch),Iu.rotateZ(a,a,-o.angle),Iu.rotateX(a,a,w(o._center.lat)),Iu.rotateY(a,a,-w(o._center.lng));const l=Su.fromQuat(new Float32Array(16),a),c=Su.multiply([],o.starsProjMatrix,l),h=Eu.fromMat4([],l),u=Eu.invert([],h),d=[0,1,0];zu.transformMat3(d,d,u),zu.scale(d,d,.15);const p=[1,0,0];zu.transformMat3(p,p,u),zu.scale(p,p,.15);const f=((e,t,i,r)=>({u_matrix:Float32Array.from(e),u_up:t,u_right:i,u_intensity_multiplier:r}))(c,d,p,i);e.uploadCommonUniforms(r,s),this.starsVx&&this.starsIdx&&s.draw(e,n.TRIANGLES,Ax.disabled,Mx.disabled,this.colorModeAlphaBlendedWriteRGB,zx.disabled,f,"atmosphere_stars",this.starsVx,this.starsIdx,this.starsSegments)}}function AS(e,t){const i=[...e],r=t.cameraWorldSizeForFog/t.worldSize,n=Su.identity([]);return Su.scale(n,n,[r,r,1]),Su.multiply(i,n,i),Su.multiply(i,t.worldToFogMatrix,i),i}function SS(e,t,i,r){const n=i.material,o=r.context,{baseColorTexture:s,metallicRoughnessTexture:a}=n.pbrMetallicRoughness,{normalTexture:l,occlusionTexture:c,emissionTexture:h}=n;function u(t,i,r){if(t&&(e.push(i),o.activeTexture.set(o.gl.TEXTURE0+r),t.gfxTexture)){const{minFilter:e,magFilter:i,wrapS:r,wrapT:n}=t.sampler;t.gfxTexture.bindExtraParam(e,i,r,n)}}u(s,"HAS_TEXTURE_u_baseColorTexture",NA.BaseColor),u(a,"HAS_TEXTURE_u_metallicRoughnessTexture",NA.MetallicRoughness),u(l,"HAS_TEXTURE_u_normalTexture",NA.Normal),u(c,"HAS_TEXTURE_u_occlusionTexture",NA.Occlusion),u(h,"HAS_TEXTURE_u_emissionTexture",NA.Emission),i.texcoordBuffer&&(e.push("HAS_ATTRIBUTE_a_uv_2f"),t.push(i.texcoordBuffer)),i.colorBuffer&&(e.push(12===i.colorBuffer.itemSize?"HAS_ATTRIBUTE_a_color_3f":"HAS_ATTRIBUTE_a_color_4f"),t.push(i.colorBuffer)),i.normalBuffer&&(e.push("HAS_ATTRIBUTE_a_normal_3f"),t.push(i.normalBuffer)),i.pbrBuffer&&(e.push("HAS_ATTRIBUTE_a_pbr"),e.push("HAS_ATTRIBUTE_a_heightBasedEmissiveStrength"),t.push(i.pbrBuffer)),"OPAQUE"!==n.alphaMode&&"MASK"!==n.alphaMode||e.push("UNPREMULT_TEXTURE_IN_SHADER"),n.defined||e.push("DIFFUSE_SHADED"),e.push("USE_STANDARD_DERIVATIVES")}function MS(e,t,i,r,n,o){const s=i.paint.get("model-opacity"),a=t.context,l=new Ax(t.context.gl.LEQUAL,Ax.ReadWrite,t.depthRangeFor3D),c=t.transform,h=e.mesh,u=h.material,d=u.pbrMetallicRoughness,p=t.style.fog;let f;f="pixels"===t.transform.projection.zAxisUnit?[...e.nodeModelMatrix]:Su.multiply([],r.zScaleMatrix,e.nodeModelMatrix),Su.multiply(f,r.negCameraPosMatrix,f);const m=Su.invert([],f);Su.transpose(m,m);const _=i.paint.get("model-emissive-strength").constantOr(0),g=jA(new Float32Array(e.worldViewProjection),new Float32Array(f),new Float32Array(m),t,s,d.baseColorFactor,u.emissiveFactor,d.metallicFactor,d.roughnessFactor,u,_,i),y={defines:[]},x=[];SS(y.defines,x,h,t);const v=t.shadowRenderer;v&&(v.useNormalOffset=!1);let b=null;if(p){const i=AS(e.nodeModelMatrix,t.transform);if(b=new Float32Array(i),"globe"!==c.projection.name){const e=h.aabb.min,t=h.aabb.max,[r,n]=p.getOpacityForBounds(i,e[0],e[1],t[0],t[1]);y.overrideFog=r>=fw||n>=fw}}const w=eA(t,i.paint.get("model-cutoff-fade-range"));w.shouldRenderCutoff&&y.defines.push("RENDER_CUTOFF");const T=t.getOrCreateProgram("model",y);t.uploadCommonUniforms(a,T,null,b,w),"shadow"!==t.renderPass&&v&&v.setupShadowsFromMatrix(e.nodeModelMatrix,T),T.draw(t,a.gl.TRIANGLES,l,n,o,h.material.doubleSided?zx.disabled:zx.backCCW,g,i.id,h.vertexBuffer,h.indexBuffer,h.segments,i.paint,t.transform.zoom,void 0,x)}function IS(e,t,i,r,n,o,s){let a;a="globe"===e.projection.name?Sv(i,e):[...i],Su.multiply(a,a,t.matrix);const l=Su.multiply([],r,a);if(t.meshes)for(const e of t.meshes){if("BLEND"!==e.material.alphaMode){s.push({mesh:e,depth:0,modelIndex:n,worldViewProjection:l,nodeModelMatrix:a});continue}const t=zu.transformMat4([],e.centroid,l);t[2]>0&&o.push({mesh:e,depth:t[2],modelIndex:n,worldViewProjection:l,nodeModelMatrix:a})}if(t.children)for(const a of t.children)IS(e,a,i,r,n,o,s)}function CS(e,t,i,r){const n=i.shadowRenderer;if(!n)return;const o=n.getShadowPassDepthMode(),s=n.getShadowPassColorMode(),a=n.calculateShadowPassMatrixFromMatrix(t),l=VA(a);i.getOrCreateProgram("modelDepth",{defines:["DEPTH_TEXTURE"]}).draw(i,i.context.gl.TRIANGLES,o,Mx.disabled,s,zx.backCCW,l,r.id,e.vertexBuffer,e.indexBuffer,e.segments,r.paint,i.transform.zoom,void 0,void 0)}function kS(e,t,i){const r=t.updateZoomBasedPaintProperties(),n=function(e,t,i){let r,n,o,s=e.terrain?e.terrain.exaggeration():0;if(e.terrain&&s>0){const t=e.terrain,n=t.findDEMTileFor(i);n&&n.dem?r=Jm.create(t,i,n):s=0}if(0===s&&(t.terrainElevationMin=0,t.terrainElevationMax=0),s===t.validForExaggeration&&(0===s||r&&r._demTile&&r._demTile.tileID===t.validForDEMTile.id&&r._dem._timestamp===t.validForDEMTile.timestamp))return!1;for(const e in t.instancesPerModel){const i=t.instancesPerModel[e];for(let e=0;ec&&(c=t.max)}const h=k(r.x,o,s)-r.x,u=k(r.y,a,l)-r.y,d=Qd(c,t.center.lat)-r.z;return t._zoomFromMercatorZ(Math.sqrt(h*h+u*u+d*d))}function LS(e,t,i,r,n,o,s){const a=e.context,l="shadow"===e.renderPass,c=e.shadowRenderer,h=l&&c?c.getShadowPassDepthMode():new Ax(a.gl.LEQUAL,Ax.ReadWrite,e.depthRangeFor3D),u=e.isTileAffectedByFog(o);if(i.meshes)for(const d of i.meshes){const p=["MODEL_POSITION_ON_GPU"],f=[];let m,_,g;r.instancedDataArray.length>20&&p.push("INSTANCED_ARRAYS");const y=eA(e,t.paint.get("model-cutoff-fade-range"));if(y.shouldRenderCutoff&&p.push("RENDER_CUTOFF"),l&&c)m=e.getOrCreateProgram("modelDepth",{defines:p}),_=VA(s.shadowTileMatrix,s.shadowTileMatrix,Float32Array.from(i.matrix)),g=c.getShadowPassColorMode();else{SS(p,f,d,e),m=e.getOrCreateProgram("model",{defines:p,overrideFog:u});const r=d.material,l=r.pbrMetallicRoughness,h=t.paint.get("model-opacity"),x=t.paint.get("model-emissive-strength").constantOr(0);_=jA(o.expandedProjMatrix,Float32Array.from(i.matrix),new Float32Array(16),e,h,l.baseColorFactor,r.emissiveFactor,l.metallicFactor,l.roughnessFactor,r,x,t,n),c&&(s.shadowUniformsInitialized?m.setShadowUniformValues(a,c.getShadowUniformValues()):(c.setupShadows(o.toUnwrapped(),m,"model-tile",o.overscaledZ),s.shadowUniformsInitialized=!0)),g=y.shouldRenderCutoff||h<1||"OPAQUE"!==r.alphaMode?Cx.alphaBlended:Cx.unblended}e.uploadCommonUniforms(a,m,o.toUnwrapped(),null,y);const x=d.material.doubleSided?zx.disabled:zx.backCCW;if(r.instancedDataArray.length>20)f.push(r.instancedDataBuffer),m.draw(e,a.gl.TRIANGLES,h,Mx.disabled,g,x,_,t.id,d.vertexBuffer,d.indexBuffer,d.segments,t.paint,e.transform.zoom,void 0,f,r.instancedDataArray.length);else{const i=l?"u_instance":"u_normal_matrix";for(let n=0;n30&&(i.buf.destroy(),this._storage.delete(t))}destroy(){for(const[e,t]of this._storage)t.buf.destroy(),this._storage.delete(e)}}const FS={symbol:function(e,t,i,r,n){if("translucent"!==e.renderPass)return;const o=Mx.disabled,s=e.colorModeForRenderPass();i.layout.get("text-variable-anchor")&&function(e,t,i,r,n,o,s){const a=t.transform,l="map"===n,c="map"===o;for(const t of e){const e=r.getTile(t),n=e.getBucket(i);if(!n||!n.text||!n.text.segments.get().length)continue;const o=m_(n.textSizeData,a.zoom),h=YT(t,n.getProjection(),a),u=a.calculatePixelsToTileUnitsMatrix(e),d=sv(h,e.tileID.canonical,c,l,a,n.getProjection(),u),p=n.hasIconTextFit()&&n.hasIconData();if(o){const i=Math.pow(2,a.zoom-e.tileID.overscaledZ);WA(n,l,c,s,__,a,d,t,i,o,p)}}}(r,e,i,t,i.layout.get("text-rotation-alignment"),i.layout.get("text-pitch-alignment"),n),0!==i.paint.get("icon-opacity").constantOr(1)&&YA(e,t,i,r,!1,i.paint.get("icon-translate"),i.paint.get("icon-translate-anchor"),i.layout.get("icon-rotation-alignment"),i.layout.get("icon-pitch-alignment"),i.layout.get("icon-keep-upright"),i.paint.get("icon-color-saturation"),o,s),0!==i.paint.get("text-opacity").constantOr(1)&&YA(e,t,i,r,!0,i.paint.get("text-translate"),i.paint.get("text-translate-anchor"),i.layout.get("text-rotation-alignment"),i.layout.get("text-pitch-alignment"),i.layout.get("text-keep-upright"),i.paint.get("icon-color-saturation"),o,s),t.map.showCollisionBoxes&&(qA(e,t,i,r,i.paint.get("text-translate"),i.paint.get("text-translate-anchor"),!0),qA(e,t,i,r,i.paint.get("icon-translate"),i.paint.get("icon-translate-anchor"),!1))},circle:function(e,t,i,r){if("translucent"!==e.renderPass)return;const n=i.paint.get("circle-opacity"),o=i.paint.get("circle-stroke-width"),s=i.paint.get("circle-stroke-opacity"),a=void 0!==i.layout.get("circle-sort-key").constantOr(1),l=i.paint.get("circle-emissive-strength");if(0===n.constantOr(1)&&(0===o.constantOr(1)||0===s.constantOr(1)))return;const c=e.context,h=c.gl,u=e.transform,d=e.depthModeForSublayer(0,Ax.ReadOnly),p=Mx.disabled,f=e.colorModeForDrapableLayerRenderPass(l),m="globe"===u.projection.name,_=[Kd(u.center.lng),Jd(u.center.lat)],g=[];for(let n=0;ne.sortKey-t.sortKey));const y={useDepthForOcclusion:u.depthOcclusionForSymbolsAndCircles};for(const t of g){const{programConfiguration:r,program:n,layoutVertexBuffer:o,globeExtVertexBuffer:s,indexBuffer:a,uniformValues:l,tile:m}=t.state,_=t.segments;e.terrain&&e.terrain.setupElevationDraw(m,n,y),e.uploadCommonUniforms(c,n,m.tileID.toUnwrapped()),n.draw(e,h.TRIANGLES,d,p,f,zx.disabled,l,i.id,o,a,_,i.paint,u.zoom,r,[s])}},heatmap:function(e,t,i,r){if(0!==i.paint.get("heatmap-opacity"))if("offscreen"===e.renderPass){const n=e.context,o=n.gl,s=Mx.disabled,a=new Cx([o.ONE,o.ONE,o.ONE,o.ONE],hi.transparent,[!0,!0,!0,!0]);!function(e,t,i,r){const n=e.gl,o=t.width*r,s=t.height*r;e.activeTexture.set(n.TEXTURE1),e.viewport.set([0,0,o,s]);let a=i.heatmapFbo;if(!a||a&&(a.width!==o||a.height!==s)){a&&a.destroy();const t=n.createTexture();n.bindTexture(n.TEXTURE_2D,t),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),a=i.heatmapFbo=e.createFramebuffer(o,s,!0,null),function(e,t,i,r,n,o){const s=e.gl;s.texImage2D(s.TEXTURE_2D,0,e.extRenderToTextureHalfFloat?s.RGBA16F:s.RGBA,n,o,0,s.RGBA,e.extRenderToTextureHalfFloat?s.HALF_FLOAT:s.UNSIGNED_BYTE,null),r.colorAttachment.set(i)}(e,0,t,a,o,s)}else n.bindTexture(n.TEXTURE_2D,a.colorAttachment.get()),e.bindFramebuffer.set(a.framebuffer)}(n,e,i,"globe"===e.transform.projection.name?.5:.25),n.clear({color:hi.transparent});const l=e.transform,c="globe"===l.projection.name,h=c?["PROJECTION_GLOBE_VIEW"]:[],u=c?zx.frontCCW:zx.disabled,d=[Kd(l.center.lng),Jd(l.center.lat)];for(let p=0;p({u_image:0,u_color_ramp:1,u_opacity:t.paint.get("heatmap-opacity")}))(0,t),t.id,e.viewportBuffer,e.quadTriangleIndexBuffer,e.viewportSegments,t.paint,e.transform.zoom)}(e,i))},line:function(e,t,i,r){if("translucent"!==e.renderPass)return;const n=i.paint.get("line-opacity"),o=i.paint.get("line-width");if(0===n.constantOr(1)||0===o.constantOr(1))return;const s=i.paint.get("line-emissive-strength"),a=e.depthModeForSublayer(0,Ax.ReadOnly),l=e.colorModeForDrapableLayerRenderPass(s),c=e.terrain&&e.terrain.renderingToTexture?1:dt.devicePixelRatio,h=i.paint.get("line-dasharray"),u=h.constantOr(1),d=i.layout.get("line-cap"),p=i.paint.get("line-pattern"),f=p.constantOr(1),m=i.paint.get("line-pattern").constantOr(1),_=1!==i.paint.get("line-opacity").constantOr(1);let g=!m&&_;const y=i.paint.get("line-gradient"),x=f?"linePattern":"line",v=e.context,b=v.gl,w=Gb(i);e.terrain&&e.terrain.clipOrMaskOverlapStencilType()&&(g=!1);for(const n of r){const r=t.getTile(n);if(f&&!r.patternsLoaded())continue;const o=r.getBucket(i);if(!o)continue;e.prepareDrawTile();const s=o.programConfigurations.get(i.id),m=e.isTileAffectedByFog(n),_=e.getOrCreateProgram(x,{config:s,defines:w,overrideFog:m}),T=p.constantOr(null);if(T&&r.imageAtlas){const e=r.imageAtlas.patternPositions[T.toString()];e&&s.setConstantPatternPositions(e)}const E=h.constantOr(null),A=d.constantOr(null);if(!f&&E&&A&&r.lineAtlas){const e=r.lineAtlas.getDash(E,A);e&&s.setConstantPatternPositions(e)}let[S,M]=i.paint.get("line-trim-offset");if("round"===A||"square"===A){const e=1;S!==M&&(0===S&&(S-=e),1===M&&(M+=e))}const I=e.terrain?n.projMatrix:null,C=f?jb(e,r,i,I,c):Nb(e,r,i,I,o.lineClipsArray.length,c,[S,M]);if(y){const r=o.gradients[i.id];let s=r.texture;if(i.gradientVersion!==r.version){let a=256;if(i.stepInterpolant){const i=t.getSource().maxzoom,r=n.canonical.z===i?Math.ceil(1<{_.draw(e,b.TRIANGLES,a,t,l,zx.disabled,C,i.id,o.layoutVertexBuffer,o.indexBuffer,o.segments,i.paint,e.transform.zoom,s,[o.layoutVertexBuffer2])};if(g){const t=e.stencilModeForClipping(n).ref;0===t&&e.terrain&&v.clear({stencil:0});const i={func:b.EQUAL,mask:255};C.u_alpha_discard_threshold=.8,P(new Mx(i,t,255,b.KEEP,b.KEEP,b.INVERT)),C.u_alpha_discard_threshold=0,P(new Mx(i,t,255,b.KEEP,b.KEEP,b.KEEP))}else P(e.stencilModeForClipping(n))}g&&(e.resetStencilClippingMasks(),e.terrain&&v.clear({stencil:0}))},fill:function(e,t,i,r){const n=i.paint.get("fill-color"),o=i.paint.get("fill-opacity");if(0===o.constantOr(1))return;const s=i.paint.get("fill-emissive-strength"),a=e.colorModeForDrapableLayerRenderPass(s),l=i.paint.get("fill-pattern"),c=e.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===n.constantOr(hi.transparent).a&&1===o.constantOr(0)?"opaque":"translucent";if(e.renderPass===c){const n=e.depthModeForSublayer(1,"opaque"===e.renderPass?Ax.ReadWrite:Ax.ReadOnly);JA(e,t,i,r,n,a,!1)}if("translucent"===e.renderPass&&i.paint.get("fill-antialias")){const n=e.depthModeForSublayer(i.getPaintProperty("fill-outline-color")?2:0,Ax.ReadOnly);JA(e,t,i,r,n,a,!0)}},"fill-extrusion":function(e,t,i,r){const n=i.paint.get("fill-extrusion-opacity"),o=e.context,s=o.gl,a=e.terrain,l=a&&a.renderingToTexture,c=i.paint.get("fill-extrusion-cutoff-fade-range");if(0===n)return;const h=e.conflationActive&&e.layerUsedInConflation(i,t.getSource());if(h&&function(e,t,i,r){for(const n of r){const r=t.getTile(n).getBucket(i);r&&(r.updateReplacement(n,e.replacementSource),r.uploadCentroid(e.context))}}(e,t,i,r),a||h)for(const n of r){const r=t.getTile(n).getBucket(i);r&&tS(e.context,t,n,r,i,a,h)}if("shadow"===e.renderPass&&e.shadowRenderer){const o=e.shadowRenderer;if(a&&n<.65&&i._transitionablePaint._values["fill-extrusion-opacity"].value.expression instanceof So)return;const s=o.getShadowPassDepthMode(),l=o.getShadowPassColorMode();QA(e,t,i,r,s,Mx.disabled,l,h)}else if("translucent"===e.renderPass){const u=!i.paint.get("fill-extrusion-pattern").constantOr(1);if(!l){const o=new Ax(e.context.gl.LEQUAL,Ax.ReadWrite,e.depthRangeFor3D);0===c&&1===n&&u?QA(e,t,i,r,o,Mx.disabled,Cx.unblended,h):(QA(e,t,i,r,o,Mx.disabled,Cx.disabled,h),QA(e,t,i,r,o,e.stencilModeFor3D(),e.colorModeForRenderPass(),h),e.resetStencilClippingMasks())}if(e.style.enable3dLights()&&u&&(!a&&"globe"!==e.transform.projection.name||l)){const n=i.paint.get("fill-extrusion-opacity"),c=i.paint.get("fill-extrusion-ambient-occlusion-intensity"),u=i.paint.get("fill-extrusion-ambient-occlusion-ground-radius"),d=i.paint.get("fill-extrusion-flood-light-intensity"),p=i.paint.get("fill-extrusion-flood-light-color").toArray01().slice(0,3),f=c>0&&u>0,m=d>0,_=(e,t,i)=>(1-i)*e+i*t,g=o=>{const a=e.depthModeForSublayer(1,Ax.ReadOnly,s.LEQUAL,!0),l=i.paint.get(o?"fill-extrusion-ambient-occlusion-ground-attenuation":"fill-extrusion-flood-light-ground-attenuation"),f=_(.1,3,l),m=e._showOverdrawInspector;if(!m){const l=new Mx({func:s.ALWAYS,mask:255},255,255,s.KEEP,s.KEEP,s.REPLACE),m=new Cx([s.ONE,s.ONE,s.ONE,s.ONE],hi.transparent,[!1,!1,!1,!0],s.MIN);eS(e,t,i,r,a,l,m,zx.disabled,o,"sdf",n,c,u,d,p,f,h,!1)}{const l=m?Mx.disabled:new Mx({func:s.EQUAL,mask:255},255,255,s.KEEP,s.DECR,s.DECR),_=m?e.colorModeForRenderPass():new Cx([s.ONE_MINUS_DST_ALPHA,s.DST_ALPHA,s.ONE,s.ONE],hi.transparent,[!0,!0,!0,!0]);eS(e,t,i,r,a,l,_,zx.disabled,o,"color",n,c,u,d,p,f,h,!1)}};if(l){const l=(o,a,l)=>{const f=e.depthModeForSublayer(1,Ax.ReadOnly,s.LEQUAL,!1),m=i.paint.get(o?"fill-extrusion-ambient-occlusion-ground-attenuation":"fill-extrusion-flood-light-ground-attenuation"),g=_(.1,3,m);{const l=new Cx([s.ONE,s.ONE,s.ONE,s.ONE],hi.transparent,[!1,!1,!1,!0]);eS(e,t,i,r,f,Mx.disabled,l,zx.disabled,o,"clear",n,c,u,d,p,g,h,a)}{const l=new Mx({func:s.ALWAYS,mask:255},255,255,s.KEEP,s.KEEP,s.REPLACE),m=new Cx([s.ONE,s.ONE,s.ONE,s.ONE],hi.transparent,[!1,!1,!1,!0],s.MIN);eS(e,t,i,r,f,l,m,zx.disabled,o,"sdf",n,c,u,d,p,g,h,a)}{const l=o?s.ZERO:s.ONE_MINUS_DST_ALPHA,m=new Mx({func:s.EQUAL,mask:255},255,255,s.KEEP,s.DECR,s.DECR),_=new Cx([l,s.DST_ALPHA,s.ONE_MINUS_DST_ALPHA,s.ZERO],hi.transparent,[!0,!0,!0,!0]);eS(e,t,i,r,f,m,_,zx.disabled,o,"color",n,c,u,d,p,g,h,a)}{const m=new Cx([s.ONE,s.ONE,s.ONE,o?s.ZERO:s.ONE],hi.transparent,[!1,!1,!1,!0],o?s.FUNC_ADD:s.MAX);eS(e,t,i,r,f,Mx.disabled,m,zx.disabled,o,"clear",n,c,u,d,p,g,h,a,l)}};if(f||m){let t;if(e.prepareDrawTile(),a){const e=a.drapeBufferSize[0],i=a.drapeBufferSize[1];t=a.framebufferCopyTexture,t&&(!t||t.size[0]===e&&t.size[1]===i)||(t&&t.destroy(),t=a.framebufferCopyTexture=new Ay(o,new ef({width:e,height:i}),s.RGBA)),t.bind(s.LINEAR,s.CLAMP_TO_EDGE),s.copyTexImage2D(s.TEXTURE_2D,0,s.RGBA,0,0,e,i,0)}f&&l(!0,!1,t),m&&l(!1,!0,t)}}else f&&g(!0),m&&g(!1)}}},hillshade:function(e,t,i,r){if("offscreen"!==e.renderPass&&"translucent"!==e.renderPass)return;if(e.style.disableElevatedTerrain)return;const n=e.context,o=e.terrain&&e.terrain.renderingToTexture,[s,a]="translucent"!==e.renderPass||o?[{},r]:e.stencilConfigForOverlap(r);for(const r of a){const n=t.getTile(r);if(n.needsHillshadePrepare&&"offscreen"===e.renderPass)YE(e,n,i);else if("translucent"===e.renderPass){const t=e.depthModeForSublayer(0,Ax.ReadOnly),a=i.paint.get("hillshade-emissive-strength"),l=e.colorModeForDrapableLayerRenderPass(a),c=o&&e.terrain?e.terrain.stencilModeForRTTOverlap(r):s[r.overscaledZ];WE(e,r,n,i,t,c,l)}}n.viewport.set([0,0,e.width,e.height]),e.resetStencilClippingMasks()},raster:function(e,t,i,r,n,o){if("translucent"!==e.renderPass)return;if(0===i.paint.get("raster-opacity"))return;const s=e.context,a=s.gl,l=t.getSource(),c=function(e,t,i){const r=e.paint.get("raster-color"),n=[],o=e.paint.get("raster-resampling"),s=e.paint.get("raster-color-mix"),a=e.paint.get("raster-color-range"),l=[s[0],s[1],s[2],0],c=s[3],h="nearest"===o?i.NEAREST:i.LINEAR;if(r&&n.push("RASTER_COLOR"),r){t.activeTexture.set(i.TEXTURE2);let r=e.colorRampTexture;r||(r=e.colorRampTexture=new Ay(t,e.colorRamp,i.RGBA)),r.bind(i.LINEAR,i.CLAMP_TO_EDGE)}return{mix:l,range:a,offset:c,defines:n,resampling:h}}(i,s,a),h=c.defines,u="globe"===e.transform.projection.name;let d=!1;if(l instanceof Jb&&!r.length){if(!u)return;if(l.onNorthPole)d=!0,h.push("GLOBE_POLES");else{if(!l.onSouthPole)return;d=!0,h.push("GLOBE_POLES")}}const p=i.paint.get("raster-emissive-strength"),f=e.colorModeForDrapableLayerRenderPass(p),m=e.terrain&&e.terrain.renderingToTexture,_=l instanceof Jb&&0!==i.paint.get("raster-elevation"),g=!e.options.moving,y="nearest"===i.paint.get("raster-resampling")?a.NEAREST:a.LINEAR;if(d){const r=t.getSource();if(!(r instanceof Jb))return;const n=r.texture;if(!n)return;const o=e.globeSharedBuffers;if(!o)return;const l=new Ax(a.LEQUAL,Ax.ReadWrite,e.depthRangeFor3D),h=Float32Array.from(e.transform.expandedFarZProjMatrix);let u=Ld(0,0,e.transform);const d=Float32Array.from(Sd(fd(new Vu(0,0,0)))),m={opacity:1,mix:0};e.terrain&&e.terrain.prepareDrawTile(),s.activeTexture.set(a.TEXTURE0),n.bind(y,a.CLAMP_TO_EDGE),s.activeTexture.set(a.TEXTURE1),n.bind(y,a.CLAMP_TO_EDGE),n.useMipmap&&s.extTextureFilterAnisotropic&&e.transform.pitch>20&&a.texParameterf(a.TEXTURE_2D,s.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,s.extTextureFilterAnisotropicMax);const[_,g,x,v]=o.getPoleBuffers(0,!0);let b;r.onNorthPole?(b=_,e.renderDefaultNorthPole=!1):(u=Su.scale(Su.create(),u,[1,-1,1]),b=g,e.renderDefaultSouthPole=!1);const w=((e,t,i,r,n,o,s,a,l,c,h,u)=>CA(e,t,i,new Float32Array(16),new Float32Array(9),[0,0],[0,0,0,0],0,[0,0],[0,0,0,0],1,r,n,o||[0,0],s,2,l,c,h,1,0,u))(h,d,u,m,i,r.perspectiveTransform||[0,0],i.paint.get("raster-elevation"),0,c.mix,c.offset,c.range,p),T=e.getOrCreateProgram("raster",{defines:c.defines});return e.uploadCommonUniforms(s,T,null),void T.draw(e,a.TRIANGLES,l,Mx.disabled,f,zx.disabled,w,i.id,b,x,v)}if(!r.length)return;const[x,v]=l instanceof Jb||m?[{},r]:e.stencilConfigForOverlap(r),b=v[v.length-1].overscaledZ,w=_&&u;w&&c.defines.push("PROJECTION_GLOBE_VIEW"),_&&c.defines.push("RENDER_CUTOFF");for(const r of v){const n=r.toUnwrapped(),h=t.getTile(r);if(m&&(!h||!h.hasData()))continue;if(!h.texture)continue;let d,v;m?(d=Ax.disabled,v=r.projMatrix):_?(d=new Ax(a.LEQUAL,Ax.ReadWrite,e.depthRangeFor3D),v=u?Float32Array.from(e.transform.expandedFarZProjMatrix):e.transform.calculateProjMatrix(n,g)):(d=e.depthModeForSublayer(r.overscaledZ-b,1===i.paint.get("raster-opacity")?Ax.ReadWrite:Ax.ReadOnly,a.LESS),v=e.transform.calculateProjMatrix(n,g));const T=e.terrain&&m?e.terrain.stencilModeForRTTOverlap(r):x[r.overscaledZ],E=o?0:i.paint.get("raster-fade-duration");h.registerFadeDuration(E);const A=t.findLoadedParent(r,0),S=aA(h,A,t,e.transform,E);let M,I;e.terrain&&e.terrain.prepareDrawTile(),s.activeTexture.set(a.TEXTURE0),h.texture&&h.texture.bind(y,a.CLAMP_TO_EDGE),s.activeTexture.set(a.TEXTURE1),A?(A.texture&&A.texture.bind(y,a.CLAMP_TO_EDGE),M=Math.pow(2,A.tileID.overscaledZ-h.tileID.overscaledZ),I=[h.tileID.canonical.x*M%1,h.tileID.canonical.y*M%1]):h.texture&&h.texture.bind(y,a.CLAMP_TO_EDGE),h.texture&&h.texture.useMipmap&&s.extTextureFilterAnisotropic&&e.transform.pitch>20&&a.texParameterf(a.TEXTURE_2D,s.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,s.extTextureFilterAnisotropicMax);const C=e.transform,k=l instanceof Jb?l.perspectiveTransform:[0,0],P=_?sS(C):[0,0,0,0];let z,L,D,R,O,B;if(w&&l instanceof Jb&&l.coordinates.length>3){z=Float32Array.from(Sd(fd(new Vu(0,0,0)))),L=Float32Array.from(C.globeMatrix),D=Float32Array.from(Pd(C)),R=[Kd(C.center.lng),Jd(C.center.lat)],B=[Kd(l.coordinates[1][0]),Jd(l.coordinates[1][1]),Kd(l.coordinates[3][0]),Jd(l.coordinates[3][1])];const t=new sc(l.coordinates[1],l.coordinates[3]);O=Float32Array.from(Rd(new Vu(0,0,0),t,0,C.worldSize/e.transform._pixelsPerMercatorPixel))}else z=new Float32Array(16),L=new Float32Array(9),D=new Float32Array(16),R=[0,0],O=new Float32Array(16),B=[0,0,0,0];const F=CA(v,z,L,D,O,I||[0,0],B,zd(e.transform.zoom),R,P,M||1,S,i,k,_?i.paint.get("raster-elevation"):0,2,c.mix,c.offset,c.range,1,0,p),N=e.isTileAffectedByFog(r),j=e.getOrCreateProgram("raster",{defines:c.defines,overrideFog:N});if(e.uploadCommonUniforms(s,j,n),l instanceof Jb){if(m||!u)l.boundsBuffer&&l.boundsSegments&&j.draw(e,a.TRIANGLES,d,Mx.disabled,f,zx.disabled,F,i.id,l.boundsBuffer,e.quadTriangleIndexBuffer,l.boundsSegments);else if(e.globeSharedBuffers){const[t,r,n]=e.globeSharedBuffers.getGridBuffers(0,!1);j.draw(e,a.TRIANGLES,d,Mx.disabled,f,zx.frontCCW,F,i.id,t,r,n),j.draw(e,a.TRIANGLES,d,Mx.disabled,f,zx.backCCW,F,i.id,t,r,n)}}else{const{tileBoundsBuffer:t,tileBoundsIndexBuffer:r,tileBoundsSegments:n}=e.getTileBoundsBuffers(h);j.draw(e,a.TRIANGLES,d,T,f,zx.disabled,F,i.id,t,r,n)}}e.resetStencilClippingMasks()},background:function(e,t,i,r){const n=i.paint.get("background-color"),o=i.paint.get("background-opacity"),s=i.paint.get("background-emissive-strength");if(0===o)return;const a=e.context,l=a.gl,c=e.transform,h=c.tileSize,u=i.paint.get("background-pattern");if(e.isPatternMissing(u,i.scope))return;const d=!u&&1===n.a&&1===o&&e.opaquePassEnabledForLayer()?"opaque":"translucent";if(e.renderPass!==d)return;const p=Mx.disabled,f=e.depthModeForSublayer(0,"opaque"===d?Ax.ReadWrite:Ax.ReadOnly),m=e.colorModeForDrapableLayerRenderPass(s),_=u?"backgroundPattern":"background";let g,y=r;y||(g=e.getBackgroundTiles(),y=Object.values(g).map((e=>e.tileID))),u&&(a.activeTexture.set(l.TEXTURE0),e.imageManager.bind(e.context,i.scope));for(const d of y){const y=e.isTileAffectedByFog(d),x=e.getOrCreateProgram(_,{overrideFog:y}),v=d.toUnwrapped(),b=r?d.projMatrix:e.transform.calculateProjMatrix(v);e.prepareDrawTile();const w=t?t.getTile(d):g?g[d.key]:new Oy(d,h,c.zoom,e),T=u?FA(b,s,o,e,u,i.scope,{tileID:d,tileSize:h}):BA(b,s,o,n);e.uploadCommonUniforms(a,x,v);const{tileBoundsBuffer:E,tileBoundsIndexBuffer:A,tileBoundsSegments:S}=e.getTileBoundsBuffers(w);x.draw(e,l.TRIANGLES,f,p,m,zx.disabled,T,i.id,E,A,S)}},sky:function(e,t,i){const r=e._atmosphere?zd(e.transform.zoom):1,n=i.paint.get("sky-opacity")*r;if(0===n)return;const o=e.context,s=i.paint.get("sky-type"),a=new Ax(o.gl.LEQUAL,Ax.ReadOnly,[0,1]),l=e.frameCounter/1e3%1;"atmosphere"===s?"offscreen"===e.renderPass?i.needsSkyboxCapture(e)&&(function(e,t,i,r){const n=e.context,o=n.gl;let s=t.skyboxFbo;if(!s){s=t.skyboxFbo=n.createFramebuffer(32,32,!0,null),t.skyboxGeometry=new xS(n),t.skyboxTexture=n.gl.createTexture(),o.bindTexture(o.TEXTURE_CUBE_MAP,t.skyboxTexture),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_MAG_FILTER,o.LINEAR);for(let e=0;e<6;++e)o.texImage2D(o.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,o.RGBA,32,32,0,o.RGBA,o.UNSIGNED_BYTE,null)}n.bindFramebuffer.set(s.framebuffer),n.viewport.set([0,0,32,32]);const a=t.getCenter(e,!0),l=e.getOrCreateProgram("skyboxCapture"),c=new Float64Array(16);Su.identity(c),Su.rotateY(c,c,.5*-Math.PI),vS(e,t,l,c,a,0),Su.identity(c),Su.rotateY(c,c,.5*Math.PI),vS(e,t,l,c,a,1),Su.identity(c),Su.rotateX(c,c,.5*-Math.PI),vS(e,t,l,c,a,2),Su.identity(c),Su.rotateX(c,c,.5*Math.PI),vS(e,t,l,c,a,3),Su.identity(c),vS(e,t,l,c,a,4),Su.identity(c),Su.rotateY(c,c,Math.PI),vS(e,t,l,c,a,5),n.viewport.set([0,0,e.width,e.height])}(e,i),i.markSkyboxValid(e)):"sky"===e.renderPass&&function(e,t,i,r,n){const o=e.context,s=o.gl,a=e.transform,l=e.getOrCreateProgram("skybox");o.activeTexture.set(s.TEXTURE0),s.bindTexture(s.TEXTURE_CUBE_MAP,t.skyboxTexture);const c=((e,t,i,r,n)=>({u_matrix:e,u_sun_direction:t,u_cubemap:0,u_opacity:r,u_temporal_offset:n}))(a.skyboxMatrix,t.getCenter(e,!1),0,r,n);e.uploadCommonUniforms(o,l),l.draw(e,s.TRIANGLES,i,Mx.disabled,e.colorModeForRenderPass(),zx.backCW,c,"skybox",t.skyboxGeometry.vertexBuffer,t.skyboxGeometry.indexBuffer,t.skyboxGeometry.segment)}(e,i,a,n,l):"gradient"===s&&"sky"===e.renderPass&&function(e,t,i,r,n){const o=e.context,s=o.gl,a=e.transform,l=e.getOrCreateProgram("skyboxGradient");t.skyboxGeometry||(t.skyboxGeometry=new xS(o)),o.activeTexture.set(s.TEXTURE0);let c=t.colorRampTexture;c||(c=t.colorRampTexture=new Ay(o,t.colorRamp,s.RGBA)),c.bind(s.LINEAR,s.CLAMP_TO_EDGE);const h=((e,t,i,r,n)=>({u_matrix:e,u_color_ramp:0,u_center_direction:t,u_radius:w(i),u_opacity:r,u_temporal_offset:n}))(a.skyboxMatrix,t.getCenter(e,!1),t.paint.get("sky-gradient-radius"),r,n);e.uploadCommonUniforms(o,l),l.draw(e,s.TRIANGLES,i,Mx.disabled,e.colorModeForRenderPass(),zx.backCW,h,"skyboxGradient",t.skyboxGeometry.vertexBuffer,t.skyboxGeometry.indexBuffer,t.skyboxGeometry.segment)}(e,i,a,n,l)},debug:function(e,t,i){for(let r=0;r{s&&(s.useNormalOffset=!0,a||(s.enabled=!0))},c=t.getSource();if("light-beam"===e.renderPass&&"batched-model"!==c.type)return;if("vector"===c.type||"geojson"===c.type)return function(e,t,i,r){const n=e.transform;if("mercator"!==n.projection.name)return void W(`Drawing 3D models for ${n.projection.name} projection is not yet implemented`);const o=n.getFreeCameraOptions().position;if(!e.modelManager)return;const s=e.modelManager,a=e.shadowRenderer;if(!i._unevaluatedLayout._values.hasOwnProperty("model-id"))return;const l=i._unevaluatedLayout._values["model-id"],c={...i.layout.get("model-id").parameters};for(const h of r){const r=t.getTile(h).getBucket(i);if(!r||r.projection.name!==n.projection.name)continue;const u=zS(h,n);c.zoom=u;const d=l.possiblyEvaluate(c);if(kS(e,r,h),PS.shadowUniformsInitialized=!1,PS.useSingleShadowCascade=!!a&&0===a.getMaxCascadeForTile(h.toUnwrapped()),"shadow"===e.renderPass&&a){if(1===e.currentShadowCascade&&r.isInsideFirstShadowMapFrustum)continue;const t=n.calculatePosMatrix(h.toUnwrapped(),n.worldSize);if(PS.tileMatrix.set(t),PS.shadowTileMatrix=Float32Array.from(a.calculateShadowPassMatrixFromMatrix(t)),PS.aabb.min.fill(0),PS.aabb.max[0]=PS.aabb.max[1]=cr,PS.aabb.max[2]=0,RS(r,PS,e,i.scope))continue}const p=1<0&&(t=d.evaluate(n.features[0].feature,{}));const o=s.getModel(t,i.scope);if(o&&o.uploaded)for(const t of o.nodes)LS(e,i,t,n,f,h,PS)}}}(e,t,i,r),void l();if(!c.loaded())return;if("batched-model"===c.type)return function(e,t,i,r){const n=e.context,o=e.transform,s=e.style.fog,a=e.shadowRenderer;if("mercator"!==o.projection.name)return void W(`Drawing 3D landmark models for ${o.projection.name} projection is not yet implemented`);const l=e.transform.getFreeCameraOptions().position,c=zu.scale([],[l.x,l.y,l.z],e.transform.worldSize);zu.negate(c,c);const h=Su.identity([]),u=op(o.center.lat,o.zoom),d=Su.fromScaling([],[1,1,1/u]);Su.translate(h,h,c);const p=i.paint.get("model-opacity"),f=new Ax(n.gl.LEQUAL,Ax.ReadWrite,e.depthRangeFor3D),m=new Ax(n.gl.LEQUAL,Ax.ReadOnly,e.depthRangeFor3D),_=function(l,c){for(const u of r){const r=t.getTile(u).getBucket(i);if(!r||!r.uploaded)continue;let _=!1;a&&(_=0===a.getMaxCascadeForTile(u.toUnwrapped()));const g=o.calculatePosMatrix(u.toUnwrapped(),o.worldSize),y=r.modelTraits;for(const t of r.getNodesInfo()){if(t.hiddenByReplacement)continue;if(!t.node.meshes)continue;const r=t.node,x="light-beam"===e.renderPass,v=[...g],b=t.evaluatedScale;let w=0;e.terrain&&r.elevation&&(w=r.elevation*e.terrain.exaggeration()),Su.translate(v,v,[(r.anchor?r.anchor[0]:0)*(b[0]-1),(r.anchor?r.anchor[1]:0)*(b[1]-1),w]),b!==Iv&&Su.scale(v,v,b),Su.multiply(v,v,r.matrix);const T=Su.multiply([],d,v);Su.multiply(T,h,T);const E=Su.invert([],T);Su.transpose(E,E),Su.scale(E,E,DS);const A=Su.multiply([],o.expandedFarZProjMatrix,v);for(let h=0;h=fw||n>=fw}}const I=e.getOrCreateProgram("model",b);!S&&a&&(a.useNormalOffset=!!d.normalBuffer,a.setupShadowsFromMatrix(v,I,a.useNormalOffset)),e.uploadCommonUniforms(n,I,u.toUnwrapped(),M);const C=d.material,k=C.pbrMetallicRoughness;k.metallicFactor=.9,k.roughnessFactor=.5;const P=0,z=jA(new Float32Array(A),new Float32Array(T),new Float32Array(E),e,p,k.baseColorFactor,C.emissiveFactor,k.metallicFactor,k.roughnessFactor,C,P,i);I.draw(e,n.gl.TRIANGLES,c&&!g?f:m,Mx.disabled,l?g||p<1||t.hasTranslucentParts?Cx.alphaBlended:Cx.unblended:Cx.disabled,zx.backCCW,z,i.id,d.vertexBuffer,d.indexBuffer,d.segments,i.paint,e.transform.zoom,void 0,w)}}}};(function(e,t,i,r){const n=e.terrain?e.terrain.exaggeration():0,o=e.transform.zoom;for(const s of r){const r=t.getTile(s).getBucket(i);r&&(e.conflationActive&&r.updateReplacement(s,e.replacementSource),r.evaluateScale(e,i),e.terrain&&n>0&&r.elevationUpdate(e.terrain,n,s,i.source),r.needsReEvaluation(e,o,i)&&r.evaluate(i))}})(e,t,i,r),1===p?_(!0,!0):(_(!1,!0),_(!0,!1))}(e,t,i,r),void l();const h=c.getModels(),u=[],d=e.transform.getFreeCameraOptions().position,p=zu.scale([],[d.x,d.y,d.z],e.transform.worldSize);zu.negate(p,p);const f=[],m=[];let _=0;for(const t of h){const r=i.paint.get("model-rotation").constantOr(null),n=i.paint.get("model-scale").constantOr(null),o=i.paint.get("model-translation").constantOr(null);t.computeModelMatrix(e,r,n,o,!0,!0,!1);const s=Su.identity([]),a=op(t.position.lat,e.transform.zoom),l=Su.fromScaling([],[1,1,1/a]);Su.translate(s,s,p),u.push({zScaleMatrix:l,negCameraPosMatrix:s});for(const i of t.nodes)IS(e.transform,i,t.matrix,e.transform.expandedFarZProjMatrix,_,f,m);_++}if(f.sort(((e,t)=>t.depth-e.depth)),"shadow"!==e.renderPass){if(1===n)for(const t of m)MS(t,e,i,u[t.modelIndex],Mx.disabled,e.colorModeForRenderPass());else{for(const t of m)MS(t,e,i,u[t.modelIndex],Mx.disabled,Cx.disabled);for(const t of m)MS(t,e,i,u[t.modelIndex],e.stencilModeFor3D(),e.colorModeForRenderPass());e.resetStencilClippingMasks()}for(const t of f)MS(t,e,i,u[t.modelIndex],Mx.disabled,e.colorModeForRenderPass());l()}else{for(const t of m)CS(t.mesh,t.nodeModelMatrix,e,i);for(const t of f)CS(t.mesh,t.nodeModelMatrix,e,i);l()}}},NS={modelUpload:function(e,t,i){const r=t.getSource();if(!r.loaded())return;if("vector"===r.type||"geojson"===r.type)return void(e.modelManager&&e.modelManager.upload(e,i));if("batched-model"===r.type)return;const n=r.getModels();for(const t of n)t.upload(e.context)}};class jS{constructor(e,t,i){this.context=new Lx(e,t),this.transform=i,this._tileTextures={},this.frameCopies=[],this.loadTimeStamps=[],this.setup(),this.numSublayers=Dx.maxUnderzooming+Dx.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.deferredRenderGpuTimeQueries=[],this.gpuTimers={},this.frameCounter=0,this._backgroundTiles={},this.conflationActive=!1,this.replacementSource=new Xv,this.longestCutoffRange=0,this.minCutoffZoom=0,this._fogVisible=!1,this._cachedTileFogOpacities={},this._shadowRenderer=new $S(this),this._wireframeDebugCache=new BS,this.renderDefaultNorthPole=!0,this.renderDefaultSouthPole=!0}updateTerrain(e,t){const i=!!e&&!!e.terrain&&this.transform.projection.supportsTerrain;if(!(i||this._terrain&&this._terrain.enabled))return;this._terrain||(this._terrain=new uA(this,e));const r=this._terrain;this.transform.elevation=i?r:null,r.update(e,this.transform,t),this.transform.elevation&&!r.enabled&&(this.transform.elevation=null)}_updateFog(e){const t=e.fog;if(!t||"globe"===this.transform.projection.name||t.getOpacity(this.transform.pitch)<1||t.properties.get("horizon-blend")<.03)return void(this.transform.fogCullDistSq=null);const[i,r]=t.getFovAdjustedRange(this.transform._fov);if(i>r)return void(this.transform.fogCullDistSq=null);const n=i+.78*(r-i);this.transform.fogCullDistSq=n*n}get terrain(){return this.transform._terrainEnabled()&&this._terrain&&this._terrain.enabled?this._terrain:null}get shadowRenderer(){return this._shadowRenderer&&this._shadowRenderer.enabled?this._shadowRenderer:null}get wireframeDebugCache(){return this._wireframeDebugCache}resize(e,t){if(this.width=e*dt.devicePixelRatio,this.height=t*dt.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const e of this.style.order)this.style._mergedLayers[e].resize()}setup(){const e=this.context,i=new ka;i.emplaceBack(0,0),i.emplaceBack(cr,0),i.emplaceBack(0,cr),i.emplaceBack(cr,cr),this.tileExtentBuffer=e.createVertexBuffer(i,Nu.members),this.tileExtentSegments=xl.simpleSegment(0,0,4,2);const r=new ka;r.emplaceBack(0,0),r.emplaceBack(cr,0),r.emplaceBack(0,cr),r.emplaceBack(cr,cr),this.debugBuffer=e.createVertexBuffer(r,Nu.members),this.debugSegments=xl.simpleSegment(0,0,4,5);const n=new ka;n.emplaceBack(-1,-1),n.emplaceBack(1,-1),n.emplaceBack(-1,1),n.emplaceBack(1,1),this.viewportBuffer=e.createVertexBuffer(n,Nu.members),this.viewportSegments=xl.simpleSegment(0,0,4,2);const o=new za;o.emplaceBack(0,0,0,0),o.emplaceBack(cr,0,cr,0),o.emplaceBack(0,cr,0,cr),o.emplaceBack(cr,cr,cr,cr),this.mercatorBoundsBuffer=e.createVertexBuffer(o,Dy.members),this.mercatorBoundsSegments=xl.simpleSegment(0,0,4,2);const s=new Ha;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=e.createIndexBuffer(s);const a=new el;for(const e of[0,1,3,2,0])a.emplaceBack(e);this.debugIndexBuffer=e.createIndexBuffer(a),this.emptyTexture=new Ay(e,new ef({width:1,height:1},Uint8Array.of(0,0,0,0)),e.gl.RGBA),this.identityMat=Su.create();const l=this.context.gl;this.stencilClearMode=new Mx({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO),this.loadTimeStamps.push(t.performance.now())}getMercatorTileBoundsBuffers(){return{tileBoundsBuffer:this.mercatorBoundsBuffer,tileBoundsIndexBuffer:this.quadTriangleIndexBuffer,tileBoundsSegments:this.mercatorBoundsSegments}}getTileBoundsBuffers(e){return e._makeTileBoundsBuffers(this.context,this.transform.projection),e._tileBoundsBuffer?{tileBoundsBuffer:e._tileBoundsBuffer,tileBoundsIndexBuffer:e._tileBoundsIndexBuffer,tileBoundsSegments:e._tileBoundsSegments}:this.getMercatorTileBoundsBuffers()}clearStencil(){const e=this.context.gl;this.nextStencilID=1,this.currentStencilSource=void 0,this._tileClippingMaskIDs={},this.getOrCreateProgram("clippingMask").draw(this,e.TRIANGLES,Ax.disabled,this.stencilClearMode,Cx.disabled,zx.disabled,sA(this.identityMat),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}resetStencilClippingMasks(){this.terrain||(this.currentStencilSource=void 0,this._tileClippingMaskIDs={})}_renderTileClippingMasks(e,t,i){if(!t||this.currentStencilSource===t.id||!e.isTileClipped()||!i||0===i.length)return;if(this._tileClippingMaskIDs&&!this.terrain){let e=!1;for(const t of i)if(void 0===this._tileClippingMaskIDs[t.key]){e=!0;break}if(!e)return}this.currentStencilSource=t.id;const r=this.context,n=r.gl;this.nextStencilID+i.length>256&&this.clearStencil(),r.setColorMode(Cx.disabled),r.setDepthMode(Ax.disabled);const o=this.getOrCreateProgram("clippingMask");this._tileClippingMaskIDs={};for(const e of i){const i=t.getTile(e),r=this._tileClippingMaskIDs[e.key]=this.nextStencilID++,{tileBoundsBuffer:s,tileBoundsIndexBuffer:a,tileBoundsSegments:l}=this.getTileBoundsBuffers(i);o.draw(this,n.TRIANGLES,Ax.disabled,new Mx({func:n.ALWAYS,mask:0},r,255,n.KEEP,n.KEEP,n.REPLACE),Cx.disabled,zx.disabled,sA(e.projMatrix),"$clipping",s,a,l)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const e=this.nextStencilID++,t=this.context.gl;return new Mx({func:t.NOTEQUAL,mask:255},e,255,t.KEEP,t.KEEP,t.REPLACE)}stencilModeForClipping(e){if(this.terrain)return this.terrain.stencilModeForRTTOverlap(e);const t=this.context.gl;return new Mx({func:t.EQUAL,mask:255},this._tileClippingMaskIDs[e.key],0,t.KEEP,t.KEEP,t.REPLACE)}stencilConfigForOverlap(e){const t=this.context.gl,i=e.sort(((e,t)=>t.overscaledZ-e.overscaledZ)),r=i[i.length-1].overscaledZ,n=i[0].overscaledZ-r+1;if(n>1){this.currentStencilSource=void 0,this.nextStencilID+n>256&&this.clearStencil();const e={};for(let i=0;ithis.style&&this.style.enable3dLights()&&this.terrain&&this.terrain.renderingToTexture)()&&"translucent"===this.renderPass?new Cx([t.ONE,t.ONE_MINUS_SRC_ALPHA,t.CONSTANT_ALPHA,t.ONE_MINUS_SRC_ALPHA],new hi(0,0,0,void 0===e?0:e),[!0,!0,!0,!0]):this.colorModeForRenderPass()}depthModeForSublayer(e,t,i,r=!1){if(!this.opaquePassEnabledForLayer()&&!r)return Ax.disabled;const n=1-((1+this.currentLayer)*this.numSublayers+e)*this.depthEpsilon;return new Ax(i||this.context.gl.LEQUAL,t,[n,n])}opaquePassEnabledForLayer(){return this.currentLayerr[e])),s=this.style._mergedSourceCaches;this.imageManager=e.imageManager,this.modelManager=e.modelManager,this.symbolFadeChange=e.placement.symbolFadeChange(dt.now()),this.imageManager.beginFrame();let a=0,l=!1;for(const e in s){const t=s[e];t.used&&(t.prepare(this.context),t.getSource().usedInConflation&&++a)}const c={},h={},u={},d={},p={};for(const e in s){const t=s[e];c[e]=t.getVisibleCoordinates(),h[e]=c[e].slice().reverse(),u[e]=t.getVisibleCoordinates(!0).reverse(),d[e]=t.getShadowCasterCoordinates(),p[e]=t.sortCoordinatesByDistance(c[e])}const f=e=>{const t=this.style.getLayerSourceCache(e);return t&&t.used?t.getSource():null};if(a){const e=[];for(const t of o)this.layerUsedInConflation(t,f(t))&&e.push(t);if(e&&e.length>1){const t=[];for(const i of e){const e=this.style.getLayerSourceCache(i);e&&e.used&&e.getSource().usedInConflation&&t.push({layer:i.fqid,cache:e})}this.replacementSource.setSources(t),l=!0}}l||this.replacementSource.clear(),this.conflationActive=l,this.minCutoffZoom=0,this.longestCutoffRange=0;for(const e of o){const t=e.cutoffRange();if(this.longestCutoffRange=Math.max(t,this.longestCutoffRange),t>0){const t=f(e);t&&(this.minCutoffZoom=Math.max(t.minzoom,this.minCutoffZoom)),e.minzoom&&(this.minCutoffZoom=Math.max(e.minzoom,this.minCutoffZoom))}}this.opaquePassCutoff=1/0;for(let e=0;e{if(i.showOverdrawInspector)return hi.black;if(this.style.fog&&this.transform.projection.supportsFog&&!y){const e=this.style.fog.properties.get("color").toArray01();return new hi(...e)}if(this.style.fog&&this.transform.projection.supportsFog&&y){const e=this.style.fog.properties.get("space-color").toArray01();return new hi(...e)}return hi.transparent})();if(this.context.clear({color:x,depth:1}),this.clearStencil(),this._showOverdrawInspector=i.showOverdrawInspector,this.renderPass="opaque",this.style.fog&&this.transform.projection.supportsFog&&this._atmosphere&&!this._showOverdrawInspector&&y&&this._atmosphere.drawStars(this,this.style.fog),!this.terrain)for(this.currentLayer=n.length-1;this.currentLayer>=0;this.currentLayer--){const t=o[this.currentLayer],i=e.getLayerSourceCache(t);if(t.isSky())continue;const r=i?(t.is3D()?p:h)[i.id]:void 0;this._renderTileClippingMasks(t,i,r),this.renderLayer(this,i,t,r)}if(this.style.fog&&this.transform.projection.supportsFog&&this._atmosphere&&!this._showOverdrawInspector&&y&&this._atmosphere.drawAtmosphereGlow(this,this.style.fog),this.renderPass="sky",(!this._atmosphere||zd(this.transform.zoom)>0)&&("globe"===this.transform.projection.name||this.transform.isHorizonVisible()))for(this.currentLayer=0;this.currentLayer0&&t.hasShadowPass()&&0==--v&&(_.drawGroundShadows(),this.firstLightBeamLayer<=this.currentLayer)){const t=this.currentLayer;for(this.renderPass="light-beam",this.currentLayer=this.firstLightBeamLayer;this.currentLayer<=t;this.currentLayer++){const t=o[this.currentLayer];if(!t.hasLightBeamPass())continue;const i=e.getLayerSourceCache(t);this.renderLayer(this,i,t,i?h[i.id]:void 0)}this.currentLayer=t,this.renderPass="translucent"}++this.currentLayer}if(this.terrain&&this.terrain.postRender(),this.options.showTileBoundaries||this.options.showQueryGeometry||this.options.showTileAABBs){let t=null;o.forEach((i=>{const r=e.getLayerSourceCache(i);r&&!i.isHidden(this.transform.zoom)&&r.getVisibleCoordinates().length&&(!t||t.getSource().maxzoom0?t.pop():null}isPatternMissing(e,t){return null===e||void 0!==e&&!this.imageManager.getPattern(e.toString(),t)}terrainRenderModeElevated(){return this.style&&!!this.style.getTerrain()&&!!this.terrain&&!this.terrain.renderingToTexture}linearFloatFilteringSupported(){return null!=this.context.extTextureFloatLinear}currentGlobalDefines(e,t,i){const r=void 0===i?this.terrain&&this.terrain.renderingToTexture:i,n=this.terrain&&0===this.terrain.exaggeration(),o=[];return this.style&&this.style.enable3dLights()&&("globeRaster"===e||"terrainRaster"===e?(o.push("LIGHTING_3D_MODE"),o.push("LIGHTING_3D_ALPHA_EMISSIVENESS")):r||o.push("LIGHTING_3D_MODE")),"shadow"===this.renderPass?this._shadowMapDebug||o.push("DEPTH_TEXTURE"):this.shadowRenderer&&(this.shadowRenderer.useNormalOffset?o.push("RENDER_SHADOWS","DEPTH_TEXTURE","NORMAL_OFFSET"):o.push("RENDER_SHADOWS","DEPTH_TEXTURE")),this.terrainRenderModeElevated()&&(o.push("TERRAIN"),this.linearFloatFilteringSupported()&&o.push("TERRAIN_DEM_FLOAT_FORMAT"),n&&o.push("ZERO_EXAGGERATION")),"globe"===this.transform.projection.name&&o.push("GLOBE"),!this._fogVisible||r||void 0!==t&&!t||o.push("FOG","FOG_DITHERING"),r&&o.push("RENDER_TO_TEXTURE"),this._showOverdrawInspector&&o.push("OVERDRAW_INSPECTOR"),o}getOrCreateProgram(e,t){this.cache=this.cache||{};const i=t&&t.defines||[],r=t&&t.config,n=this.currentGlobalDefines(e,t&&t.overrideFog,t&&t.overrideRtt).concat(i),o=mA.cacheKey(GE[e],e,n,r);return this.cache[o]||(this.cache[o]=new mA(this.context,e,GE[e],r,GA[e],n)),this.cache[o]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.frontFace.setDefault(),this.context.cullFaceSide.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){const e=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(e.FUNC_ADD)}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=t.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new Ay(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this._terrain&&this._terrain.destroy(),this._atmosphere&&(this._atmosphere.destroy(),this._atmosphere=void 0),this.globeSharedBuffers&&this.globeSharedBuffers.destroy(),this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy(),this._wireframeDebugCache.destroy()}prepareDrawTile(){this.terrain&&this.terrain.prepareDrawTile()}uploadCommonLightUniforms(e,t){if(this.style.enable3dLights()){const i=this.style.directionalLight,r=this.style.ambientLight;if(i&&r){const n=((e,t)=>{const i=e.properties.get("direction"),r=e.properties.get("color").toArray01(),n=e.properties.get("intensity"),o=t.properties.get("color").toArray01(),s=t.properties.get("intensity"),a=[i.x,i.y,i.z],l=se(o,s),c=se(r,n);return{u_lighting_ambient_color:l,u_lighting_directional_dir:a,u_lighting_directional_color:c,u_ground_radiance:dA(a,c,l)}})(i,r);t.setLightsUniformValues(e,n)}}}uploadCommonUniforms(e,t,i,r,n){if(this.uploadCommonLightUniforms(e,t),this.terrain&&this.terrain.renderingToTexture)return;const o=this.style.fog;if(o){const n=o.getOpacity(this.transform.pitch),s=((e,t,i,r,n,o,s,a,l,c,h,u)=>{const d=e.transform,p=t.properties.get("color").toArray01();p[3]=r;const f=e.frameCounter/1e3%1,[m,_]=t.properties.get("vertical-range");return{u_fog_matrix:i?d.calculateFogTileMatrix(i):u||e.identityMat,u_fog_range:t.getFovAdjustedRange(d._fov),u_fog_color:p,u_fog_horizon_blend:t.properties.get("horizon-blend"),u_fog_vertical_limit:[Math.min(m,_),_],u_fog_temporal_offset:f,u_frustum_tl:n,u_frustum_tr:o,u_frustum_br:s,u_frustum_bl:a,u_globe_pos:l,u_globe_radius:c,u_viewport:h,u_globe_transition:zd(d.zoom),u_is_globe:+("globe"===d.projection.name)}})(this,o,i,n,this.transform.frustumCorners.TL,this.transform.frustumCorners.TR,this.transform.frustumCorners.BR,this.transform.frustumCorners.BL,this.transform.globeCenterInViewSpace,this.transform.globeRadius,[this.transform.width*dt.devicePixelRatio,this.transform.height*dt.devicePixelRatio],r);t.setFogUniformValues(e,s)}n&&t.setCutoffUniformValues(e,n.uniformValues)}setTileLoadedFlag(e){this.tileLoaded=e}saveCanvasCopy(){const e=this.canvasCopy();e&&(this.frameCopies.push(e),this.tileLoaded=!1)}canvasCopy(){const e=this.context.gl,t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.copyTexImage2D(e.TEXTURE_2D,0,e.RGBA,0,0,e.drawingBufferWidth,e.drawingBufferHeight,0),t}getCanvasCopiesAndTimestamps(){return{canvasCopies:this.frameCopies,timeStamps:this.loadTimeStamps}}averageElevationNeedsEasing(){if(!this.transform._elevation)return!1;const e=this.style&&this.style.fog;return!!e&&0!==e.getOpacity(this.transform.pitch)}getBackgroundTiles(){const e=this._backgroundTiles,t=this._backgroundTiles={},i=this.transform.coveringTiles({tileSize:512});for(const r of i)t[r.key]=e[r.key]||new Oy(r,512,this.transform.tileZoom,this);return t}clearBackgroundTiles(){this._backgroundTiles={}}layerUsedInConflation(e,t){return!(!e.is3D()||e.minzoom&&e.minzoom>this.transform.zoom||"building"!==e.sourceLayer&&(!t||"batched-model"!==t.type))}isTileAffectedByFog(e){if(!this.style||!this.style.fog)return!1;if("globe"===this.transform.projection.name)return!0;let t=this._cachedTileFogOpacities[e.key];return t||(this._cachedTileFogOpacities[e.key]=t=this.style.fog.getOpacityForTile(e)),t[0]>=fw||t[1]>=fw}}const US=2048;class VS{constructor(e,t){this.aabb=e,this.lastCascade=t}}class GS{add(e,t){const i=this.receivers[e.key];void 0!==i?(i.aabb.min[0]=Math.min(i.aabb.min[0],t.min[0]),i.aabb.min[1]=Math.min(i.aabb.min[1],t.min[1]),i.aabb.min[2]=Math.min(i.aabb.min[2],t.min[2]),i.aabb.max[0]=Math.max(i.aabb.max[0],t.max[0]),i.aabb.max[1]=Math.max(i.aabb.max[1],t.max[1]),i.aabb.max[2]=Math.max(i.aabb.max[2],t.max[2])):this.receivers[e.key]=new VS(t,null)}clear(){this.receivers={}}get(e){return this.receivers[e.key]}computeRequiredCascades(e,t,i){const r=ed.fromPoints(e.points);let n=0;for(const e in this.receivers){const o=this.receivers[e];if(!o)continue;if(!r.intersectsAabb(o.aabb))continue;o.aabb.min=r.closestPoint(o.aabb.min),o.aabb.max=r.closestPoint(o.aabb.max);const s=o.aabb.getCorners();for(let e=0;e1||o[1]<-1||o[1]>1){r=!1;break}}if(o.lastCascade=e,n=Math.max(n,e),r)break}}return n+1}}class $S{constructor(e){this.painter=e,this._enabled=!1,this._shadowLayerCount=0,this._numCascadesToRender=0,this._cascades=[],this._groundShadowTiles=[],this._receivers=new GS,this._depthMode=new Ax(e.context.gl.LEQUAL,Ax.ReadWrite,[0,1]),this._uniformValues={u_light_matrix_0:new Float32Array(16),u_light_matrix_1:new Float32Array(16),u_shadow_intensity:0,u_fade_range:[0,0],u_shadow_normal_offset:[1,1,1],u_shadow_texel_size:1,u_shadow_map_resolution:1,u_shadow_direction:[0,0,1],u_shadow_bias:[36e-5,.0012,.012],u_shadowmap_0:0,u_shadowmap_1:0},this.useNormalOffset=!1}destroy(){for(const e of this._cascades)e.texture.destroy(),e.framebuffer.destroy();this._cascades=[]}updateShadowParameters(e,t){const i=this.painter;if(this._enabled=!1,this._shadowLayerCount=0,this._receivers.clear(),!t||!t.properties)return;const r=t.properties.get("shadow-intensity");if(!t.shadowsEnabled()||r<=0)return;if(this._shadowLayerCount=i.style.order.reduce(((t,r)=>{const n=i.style._mergedLayers[r];return t+(n.hasShadowPass()&&!n.isHidden(e.zoom)?1:0)}),0),this._enabled=this._shadowLayerCount>0,!this._enabled)return;const n=i.context,o=US,s=US;if(0===this._cascades.length)for(let e=0;e<2;++e){const e=i._shadowMapDebug,t=n.gl,r=n.createFramebuffer(o,s,e,"texture"),a=new Ay(n,{width:o,height:s,data:null},t.DEPTH_COMPONENT);if(r.depthAttachment.set(a.texture),e){const e=new Ay(n,{width:o,height:s,data:null},t.RGBA);r.colorAttachment.set(e.texture)}this._cascades.push({framebuffer:r,texture:a,matrix:[],far:0,boundingSphereRadius:0,frustum:new Qu,scale:0})}this.shadowDirection=ZS(t);let a=0;if(e.elevation){const t=e.elevation,i=[1e4,-1e4];t.visibleDemTiles.filter((e=>e.dem)).forEach((e=>{const t=e.dem.tree;i[0]=Math.min(i[0],t.minimums[0]),i[1]=Math.max(i[1],t.maximums[0])})),1e4!==i[0]&&(a=(i[1]-i[0])*t.exaggeration())}const l=1.5*e.cameraToCenterDistance,c=3*l,h=new Float64Array(16);for(let t=0;t<2;++t){const i=this._cascades[t];let r=e.height/50,n=1;0===t?n=l:(r=l,n=c);const[o,s]=WS(e,this.shadowDirection,r,n,US,a);i.scale=e.scale,i.matrix=o,i.boundingSphereRadius=s,Su.invert(h,i.matrix),i.frustum=Qu.fromInvProjectionMatrix(h,1,0,!0),i.far=n}this._uniformValues.u_fade_range=[.75*this._cascades[1].far,this._cascades[1].far],this._uniformValues.u_shadow_intensity=r,this._uniformValues.u_shadow_direction=[this.shadowDirection[0],this.shadowDirection[1],this.shadowDirection[2]],this._uniformValues.u_shadow_texel_size=.00048828125,this._uniformValues.u_shadow_map_resolution=US,this._uniformValues.u_shadowmap_0=NA.ShadowMap0,this._uniformValues.u_shadowmap_1=NA.ShadowMap0+1,this._groundShadowTiles=i.transform.coveringTiles({tileSize:512,renderWorldCopies:!0});const u=i.transform.elevation;for(const e of this._groundShadowTiles){let t={min:0,max:0};if(u){const i=u.getMinMaxForTile(e);i&&(t=i)}this.addShadowReceiver(e.toUnwrapped(),t.min,t.max)}}get enabled(){return this._enabled}set enabled(e){this._enabled=e}drawShadowPass(e,t){if(!this._enabled)return;const i=this.painter,r=i.context;this._numCascadesToRender=this._receivers.computeRequiredCascades(i.transform.getFrustum(0),i.transform.worldSize,this._cascades),r.viewport.set([0,0,US,US]);for(let n=0;n=0)return{};const n=function(e,t,i){const r=i/(1<0&&(zu.add(n[1],n[1],[r[0]*o,0,0]),zu.add(n[2],n[2],[r[0]*o,0,0])),r[1]<0?(zu.add(n[0],n[0],[0,r[1]*o,0]),zu.add(n[1],n[1],[0,r[1]*o,0])):r[1]>0&&(zu.add(n[2],n[2],[0,r[1]*o,0]),zu.add(n[3],n[3],[0,r[1]*o,0]));const s={};return s.vertices=n,s.planes=[qS(n[1],n[0],n[4]),qS(n[2],n[1],n[5]),qS(n[3],n[2],n[6]),qS(n[0],n[3],n[7])],s}addShadowReceiver(e,t,i){this._receivers.add(e,ed.fromTileIdAndHeight(e,t,i))}getMaxCascadeForTile(e){const t=this._receivers.get(e);return t&&t.lastCascade?t.lastCascade:0}}function qS(e,t,i){const r=zu.sub([],i,t),n=zu.sub([],e,t),o=zu.cross([],r,n),s=zu.length(o);return 0===s?[0,0,1,0]:(zu.scale(o,o,1/s),[o[0],o[1],o[2],-zu.dot(o,t)])}function ZS(e){const t=e.properties.get("direction"),i=J(t.x,t.y,t.z);i[2]=k(i[2],0,75);const r=K([i[0],i[1],i[2]]);return zu.fromValues(r.x,r.y,r.z)}function HS(e,t){const i=e.properties.get("color"),r=e.properties.get("intensity"),n=e.properties.get("direction"),o=[n.x,n.y,n.z],s=t.properties.get("color"),a=t.properties.get("intensity"),l=Math.max(zu.dot([0,0,1],o),0),c=[0,0,0];zu.scale(c,s.toArray01Linear().slice(0,3),a);const h=[0,0,0];return zu.scale(h,i.toArray01Linear().slice(0,3),l*r),ae([c[0]>0?c[0]/(c[0]+h[0]):0,c[1]>0?c[1]/(c[1]+h[1]):0,c[2]>0?c[2]/(c[2]+h[2]):0])}function WS(e,t,i,r,n,o){const s=e.zoom,a=e.scale,l=e.worldSize,c=1/l,h=e.aspect,u=Math.sqrt(1+h*h)*Math.tan(.5*e.fovX),d=u*u,p=r-i,f=r+i;let m,_;d>p/f?(m=r,_=r*u):(m=.5*f*(1+d),_=.5*Math.sqrt(p*p+2*(r*r+i*i)*d+f*f*d*d));const g=e.projection.pixelsPerMeter(e.center.lat,l),y=e._camera.getCameraToWorldMercator(),x=[0,0,-m*c];zu.transformMat4(x,x,y);let v=_*c;const b=e._edgeInsets;if(!(0===b.left&&0===b.top&&0===b.right&&0===b.bottom||b.left===b.right&&b.top===b.bottom)){const t=e._camera.getWorldToCamera(e.worldSize,"meters"===e.projection.zAxisUnit?g:1),n=e._camera.getCameraToClipPerspective(e._fov,e.width/e.height,i,r);n[8]=2*-e.centerOffset.x/e.width,n[9]=2*e.centerOffset.y/e.height;const o=new Float64Array(16);Su.mul(o,n,t);const c=new Float64Array(16);Su.invert(c,o);const h=Qu.fromInvProjectionMatrix(c,l,s,!0);for(const t of h.points){const i=((w=t)[0]/=a,w[1]/=a,w[2]=Qd(w[2],e._center.lat),w);v=Math.max(v,zu.len(zu.subtract([],x,i)))}}var w;v*=n/(n-1);const T=Math.acos(t[2]),E=Math.atan2(-t[0],-t[1]),A=new Yx;A.position=x,A.setPitchBearing(T,E);const S=A.getWorldToCamera(l,g),M=v*l,I=Math.min(e._mercatorZfromZoom(17)*l*-2,-2*M),C=A.getCameraToClipOrthographic(-M,M,-M,M,I,(M+o*g)/t[2]),k=new Float64Array(16);Su.multiply(k,C,S);const P=zu.fromValues(Math.floor(1e6*x[0])/1e6*l,Math.floor(1e6*x[1])/1e6*l,0),z=.5*n,L=[0,0,0];zu.transformMat4(L,P,k),zu.scale(L,L,z);const D=[Math.floor(L[0]),Math.floor(L[1]),Math.floor(L[2])],R=[0,0,0];zu.sub(R,L,D),zu.scale(R,R,-1/z);const O=new Float64Array(16);return Su.identity(O),Su.translate(O,O,R),Su.multiply(k,O,k),[k,M]}class XS extends kt{constructor(e){super(),this.requestManager=e,this.models={"":{}},this.numModelsLoading={}}loadModel(e,t){return fT(this.requestManager.transformRequest(t,ye.Model).url).then((t=>{if(!t)return;const i=TT(t),r=new Cv(e,void 0,void 0,i);return r.computeBoundsAndApplyParent(),r})).catch((i=>{this.fire(new Ct(new Error(`Could not load model ${e} from ${t}: ${i.message}`)))}))}load(e,t){this.models[t]||(this.models[t]={});const i=Object.keys(e);this.numModelsLoading[t]=(this.numModelsLoading[t]||0)+i.length;const r=[];for(const t of i)r.push(this.loadModel(t,e[t]));Promise.allSettled(r).then((e=>{for(let r=0;r{this.fire(new Ct(new Error(`Could not load models: ${e.message}`)))}))}isLoaded(){for(const e in this.numModelsLoading)if(this.numModelsLoading[e]>0)return!1;return!0}hasModel(e,t){return!!this.getModel(e,t)}getModel(e,t){return this.models[t]||(this.models[t]={}),this.models[t][e]}addModel(e,t,i){this.models[i]||(this.models[i]={}),this.hasModel(e,i)&&this.removeModel(e,i),this.load({[e]:this.requestManager.normalizeModelURL(t)},i)}addModels(e,t){const i={};for(const t in e)i[t]=this.requestManager.normalizeModelURL(e[t]);this.load(i,t)}removeModel(e,t){this.models[t]||(this.models[t]={});const i=this.models[t][e];delete this.models[t][e],i.destroy()}listModels(e){return this.models[e]||(this.models[e]={}),Object.keys(this.models[e])}upload(e,t){this.models[t]||(this.models[t]={});for(const i in this.models[t])this.models[t][i].upload(e.context)}}const YS=(e,t)=>Ms(e,t&&t.filter((e=>"source.canvas"!==e.identifier))),KS=O(OT,["addLayer","removeLayer","setLights","setPaintProperty","setLayoutProperty","setSlot","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData","setTerrain","setFog","setProjection","setCamera","addImport","removeImport","setImportUrl","setImportData","setImportConfig"]),JS=O(OT,["setCenter","setZoom","setBearing","setPitch"]),QS={version:8,layers:[],sources:{}},eM={duration:300,delay:0},tM=new Set(["fill","line","background","hillshade","raster"]);class iM extends kt{constructor(e,t={}){super(),this.map=e,this.scope=t.scope||"",this.fragments=[],this.importDepth=t.importDepth||0,this.importsCache=t.importsCache||new Map,this.resolvedImports=t.resolvedImports||new Set,this.transition=R({},eM),this._buildingIndex=new zT(this),this.crossTileSymbolIndex=new CE,this._mergedOrder=[],this._drapedFirstOrder=[],this._mergedLayers={},this._mergedSourceCaches={},this._mergedOtherSourceCaches={},this._mergedSymbolSourceCaches={},this._has3DLayers=!1,this._hasCircleLayers=!1,this._hasSymbolLayers=!1,this._changes=t.styleChanges||new Ea,this.dispatcher=t.dispatcher?t.dispatcher:new Ew(Hw(),this),t.imageManager?this.imageManager=t.imageManager:(this.imageManager=new aw,this.imageManager.setEventedParent(this)),this.imageManager.createScope(this.scope),this.glyphManager=t.glyphManager?t.glyphManager:new og(e._requestManager,t.localFontFamily?2:t.localIdeographFontFamily?1:0,t.localFontFamily||t.localIdeographFontFamily),t.modelManager?this.modelManager=t.modelManager:(this.modelManager=new XS(e._requestManager),this.modelManager.setEventedParent(this)),this._layers={},this._serializedLayers={},this._sourceCaches={},this._otherSourceCaches={},this._symbolSourceCaches={},this._loaded=!1,this._precompileDone=!1,this._shouldPrecompile=!1,this._availableImages=[],this._order=[],this._markersNeedUpdate=!1,this.options=new Map,this._configDependentLayers=new Set,this._config=t.config,this.dispatcher.broadcast("setReferrer",ve());const i=this;this._rtlTextPluginCallback=iM.registerForPluginStateChange((e=>{i.dispatcher.broadcast("syncRTLPluginState",{pluginStatus:e.pluginStatus,pluginURL:e.pluginURL},((e,t)=>{if(Qs(e),t&&t.every((e=>e)))for(const e in i._sourceCaches){const t=i._sourceCaches[e],r=t.getSource().type;"vector"!==r&&"geojson"!==r||t.reload()}}))})),this.on("data",(e=>{if("source"!==e.dataType||"metadata"!==e.sourceDataType)return;const t=this.getOwnSource(e.sourceId);if(t&&t.vectorLayerIds)for(const e in this._layers){const i=this._layers[e];i.source===t.id&&this._validateLayer(i)}}))}loadURL(e,t={}){this.fire(new It("dataloading",{dataType:"style"}));const i="boolean"==typeof t.validate?t.validate:!Pe(e);e=this.map._requestManager.normalizeStyleURL(e,t.accessToken),this.resolvedImports.add(e);const r=this.importsCache.get(e);if(r)return this._load(r,i);const n=this.map._requestManager.transformRequest(e,ye.Style);this._request=we(n,((t,r)=>{if(this._request=null,t)this.fire(new Ct(t));else if(r)return this.importsCache.set(e,r),this._load(r,i)}))}loadJSON(e,t={}){this.fire(new It("dataloading",{dataType:"style"})),this._request=dt.frame((()=>{this._request=null,this._load(e,!1!==t.validate)}))}loadEmpty(){this.fire(new It("dataloading",{dataType:"style"})),this._load(QS,!1)}_loadImports(e,t){if(this.importDepth>=4)return W("Style doesn't support nesting deeper than 5"),Promise.resolve();const i=[];for(const r of e){const e=this._createFragmentStyle(r),n=new Promise((t=>{e.once("style.import.load",t),e.once("error",t)})).then((()=>this.mergeAll()));if(i.push(n),this.resolvedImports.has(r.url)){e.loadEmpty();continue}const o=r.data||this.importsCache.get(r.url);o?e.loadJSON(o,{validate:t}):r.url?e.loadURL(r.url,{validate:t}):e.loadEmpty(),this.fragments.push({style:e,id:r.id,config:r.config})}return Promise.allSettled(i)}_createFragmentStyle(e){const t=this.scope?va(e.id,this.scope):e.id,i=new iM(this.map,{scope:t,styleChanges:this._changes,importDepth:this.importDepth+1,importsCache:this.importsCache,resolvedImports:new Set(this.resolvedImports),dispatcher:this.dispatcher,imageManager:this.imageManager,glyphManager:this.glyphManager,modelManager:this.modelManager,config:e.config});return i.setEventedParent(this.map,{style:i}),i}_reloadImports(){this.mergeAll(),this._updateMapProjection(),this.map._triggerCameraUpdate(this.camera),this.dispatcher.broadcast("setLayers",{layers:this._serializeLayers(this._order),scope:this.scope,options:this.options});const e=this.isRootStyle();this._shouldPrecompile=e,this.fire(new It(e?"style.load":"style.import.load"))}_load(e,t){const i=e.schema;if(this.isRootStyle()&&(e.fragment||i&&!1!==e.fragment)){const i=R({},QS,{imports:[{id:"basemap",data:e,url:""}]});return void this._load(i,t)}if(this.setConfig(this._config,i),t&&YS(this,ms(e)))return;this._loaded=!0,this.stylesheet=Z(e);for(const t in e.sources)this.addSource(t,e.sources[t],{validate:!1,isInitialLoad:!0});e.sprite?this._loadSprite(e.sprite):(this.imageManager.setLoaded(!0,this.scope),this.dispatcher.broadcast("spriteLoaded",{scope:this.scope,isLoaded:!0})),this.glyphManager.setURL(e.glyphs,this.scope);const r=RT(this.stylesheet.layers);if(this._order=r.map((e=>e.id)),this.stylesheet.light&&W("The `light` root property is deprecated, prefer using `lights` with `flat` light type instead."),this.stylesheet.lights)if(1===this.stylesheet.lights.length&&"flat"===this.stylesheet.lights[0].type){const e=this.stylesheet.lights[0];this.light=new cw(e.properties,e.id)}else this.setLights(this.stylesheet.lights);this.light||(this.light=new cw(this.stylesheet.light)),this._layers={},this._serializedLayers={};for(const e of r){const t=ow(e,this.options);t.setScope(this.scope),t.isConfigDependent&&this._configDependentLayers.add(t.fqid),t.setEventedParent(this,{layer:{id:t.id}}),this._layers[t.id]=t,this._serializedLayers[t.id]=t.serialize();const i=this.getOwnLayerSourceCache(t),r=!!this.directionalLight&&this.directionalLight.shadowsEnabled();i&&t.canCastShadows()&&r&&(i.castsShadows=!0)}this.stylesheet.models&&this.modelManager.addModels(this.stylesheet.models,this.scope);const n=this.stylesheet.terrain;n&&(void 0===this.disableElevatedTerrain&&(this.disableElevatedTerrain=dt.hasCanvasFingerprintNoise()),this.disableElevatedTerrain?W("Terrain and hillshade are disabled because of Canvas2D limitations when fingerprinting protection is enabled (e.g. in private browsing mode)."):this.terrainSetForDrapingOnly()||this._createTerrain(n,1)),this.stylesheet.fog&&this._createFog(this.stylesheet.fog),this.stylesheet.transition&&this.setTransition(this.stylesheet.transition),this.fire(new It("data",{dataType:"style"})),e.imports?this._loadImports(e.imports,t).then((()=>this._reloadImports())):this._reloadImports()}isRootStyle(){return 0===this.importDepth}mergeAll(){let e,t,i,r,n,o,s,a;this.terrain&&this.terrain.scope!==this.scope&&delete this.terrain,this.forEachFragmentStyle((l=>{if(l.stylesheet){if(null!=l.light&&(e=l.light),l.stylesheet.lights)for(const e of l.stylesheet.lights)"ambient"===e.type&&null!=l.ambientLight&&(t=l.ambientLight),"directional"===e.type&&null!=l.directionalLight&&(i=l.directionalLight);r=this._prioritizeTerrain(r,l.terrain,l.stylesheet.terrain),l.stylesheet.fog&&null!=l.fog&&(n=l.fog),null!=l.stylesheet.camera&&(a=l.stylesheet.camera),null!=l.stylesheet.projection&&(o=l.stylesheet.projection),null!=l.stylesheet.transition&&(s=l.stylesheet.transition)}})),this.light=e,this.ambientLight=t,this.directionalLight=i,this.fog=n,null===r?delete this.terrain:this.terrain=r,this.camera=a||{"camera-projection":"perspective"},this.projection=o||{name:"mercator"},this.transition=R({},eM,s),this.mergeSources(),this.mergeLayers()}forEachFragmentStyle(e){const t=i=>{for(const e of i.fragments)t(e.style);e(i)};t(this)}_prioritizeTerrain(e,t,i){const r=e&&0===e.drapeRenderMode;return null===i?t&&0===t.drapeRenderMode?t:r?e:null:null!=t&&(!e||r||t&&1===t.drapeRenderMode)?t:e}mergeTerrain(){let e;this.terrain&&this.terrain.scope!==this.scope&&delete this.terrain,this.forEachFragmentStyle((t=>{e=this._prioritizeTerrain(e,t.terrain,t.stylesheet.terrain)})),null===e?delete this.terrain:this.terrain=e}mergeProjection(){let e;this.forEachFragmentStyle((t=>{null!=t.stylesheet.projection&&(e=t.stylesheet.projection)})),this.projection=e||{name:"mercator"}}mergeSources(){const e={},t={},i={};this.forEachFragmentStyle((r=>{for(const t in r._sourceCaches){const i=va(t,r.scope);e[i]=r._sourceCaches[t]}for(const e in r._otherSourceCaches){const i=va(e,r.scope);t[i]=r._otherSourceCaches[e]}for(const e in r._symbolSourceCaches){const t=va(e,r.scope);i[t]=r._symbolSourceCaches[e]}})),this._mergedSourceCaches=e,this._mergedOtherSourceCaches=t,this._mergedSymbolSourceCaches=i}mergeLayers(){const e={},t=[],i={};this._has3DLayers=!1,this._hasCircleLayers=!1,this._hasSymbolLayers=!1,this.forEachFragmentStyle((i=>{for(const r of i._order){const n=i._layers[r];if("slot"===n.type){const t=ba(r);if(e[t])continue;e[t]=[]}n.slot&&e[n.slot]?e[n.slot].push(n):t.push(n)}})),this._mergedOrder=[];const r=(t=[])=>{for(const n of t)if("slot"===n.type){const t=ba(n.id);e[t]&&r(e[t])}else{const e=va(n.id,n.scope);this._mergedOrder.push(e),i[e]=n,n.is3D()&&(this._has3DLayers=!0),"circle"===n.type&&(this._hasCircleLayers=!0),"symbol"===n.type&&(this._hasSymbolLayers=!0)}};r(t),this._mergedLayers=i,this.updateDrapeFirstLayers(),this._buildingIndex.processLayersChanged()}terrainSetForDrapingOnly(){return!!this.terrain&&0===this.terrain.drapeRenderMode}getCamera(){return this.stylesheet.camera}setCamera(e){return this.stylesheet.camera=R({},this.stylesheet.camera,e),this.camera=this.stylesheet.camera,this}setProjection(e){e?this.stylesheet.projection=e:delete this.stylesheet.projection,this.mergeProjection(),this._updateMapProjection()}applyProjectionUpdate(){this._loaded&&(this.dispatcher.broadcast("setProjection",this.map.transform.projectionOptions),this.map.transform.projection.requiresDraping?this.getTerrain()||this.stylesheet.terrain||this.setTerrainForDraping():this.terrainSetForDrapingOnly()&&this.setTerrain(null))}_updateMapProjection(){this.isRootStyle()&&(this.map._useExplicitProjection?this.applyProjectionUpdate():this.map._prioritizeAndUpdateProjection(null,this.projection))}_loadSprite(e){this._spriteRequest=function(e,t,i){let r,n,o;const s=dt.devicePixelRatio>1?"@2x":"";let a=we(t.transformRequest(t.normalizeSpriteURL(e,s,".json"),ye.SpriteJSON),((e,t)=>{a=null,o||(o=e,r=t,c())})),l=Ie(t.transformRequest(t.normalizeSpriteURL(e,s,".png"),ye.SpriteImage),((e,t)=>{l=null,o||(o=e,n=t,c())}));function c(){if(o)i(o);else if(r&&n){const e=dt.getImageData(n),t={};for(const i in r){const{width:n,height:o,x:s,y:a,sdf:l,pixelRatio:c,stretchX:h,stretchY:u,content:d}=r[i],p=new ef({width:n,height:o});ef.copy(e,p,{x:s,y:a},{x:0,y:0},{width:n,height:o}),t[i]={data:p,pixelRatio:c,sdf:l,stretchX:h,stretchY:u,content:d}}i(null,t)}}return{cancel(){a&&(a.cancel(),a=null),l&&(l.cancel(),l=null)}}}(e,this.map._requestManager,((e,t)=>{if(this._spriteRequest=null,e)this.fire(new Ct(e));else if(t)for(const e in t)this.imageManager.addImage(e,this.scope,t[e]);this.imageManager.setLoaded(!0,this.scope),this._availableImages=this.imageManager.listImages(this.scope),this.dispatcher.broadcast("setImages",{scope:this.scope,images:this._availableImages}),this.dispatcher.broadcast("spriteLoaded",{scope:this.scope,isLoaded:!0}),this.fire(new It("data",{dataType:"style"}))}))}_validateLayer(e){const t=this.getOwnSource(e.source);if(!t)return;const i=e.sourceLayer;i&&("geojson"===t.type||t.vectorLayerIds&&-1===t.vectorLayerIds.indexOf(i))&&this.fire(new Ct(new Error(`Source layer "${i}" does not exist on source "${t.id}" as specified by style layer "${e.id}"`)))}loaded(){if(!this._loaded)return!1;if(Object.keys(this._changes.getUpdatedSourceCaches()).length)return!1;for(const e in this._sourceCaches)if(!this._sourceCaches[e].loaded())return!1;if(!this.imageManager.isLoaded())return!1;if(!this.modelManager.isLoaded())return!1;for(const{style:e}of this.fragments)if(!e.loaded())return!1;return!0}_serializeImports(){if(this.stylesheet.imports)return this.stylesheet.imports.map(((e,t)=>{const i=this.fragments[t];return i&&i.style&&(e.data=i.style.serialize()),e}))}_serializeSources(){const e={};for(const t in this._sourceCaches){const i=this._sourceCaches[t].getSource();e[i.id]||(e[i.id]=i.serialize())}return e}_serializeLayers(e){const t=[];for(const i of e){const e=this._layers[i];e&&"custom"!==e.type&&t.push(e.serialize())}return t}hasLightTransitions(){return!(!this.light||!this.light.hasTransition())||!(!this.ambientLight||!this.ambientLight.hasTransition())||!(!this.directionalLight||!this.directionalLight.hasTransition())}hasFogTransition(){return!!this.fog&&this.fog.hasTransition()}hasTransitions(){if(this.hasLightTransitions())return!0;if(this.hasFogTransition())return!0;for(const e in this._sourceCaches)if(this._sourceCaches[e].hasTransition())return!0;for(const e in this._layers)if(this._layers[e].hasTransition())return!0;return!1}get order(){return this.terrain?this._drapedFirstOrder:this._mergedOrder}isLayerDraped(e){return!!this.terrain&&("function"==typeof e.isLayerDraped?e.isLayerDraped(this.getLayerSourceCache(e)):tM.has(e.type))}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading")}_checkLayer(e){const t=this.getOwnLayer(e);if(t)return t;this.fire(new Ct(new Error(`The layer '${e}' does not exist in the map's style.`)))}_checkSource(e){const t=this.getOwnSource(e);if(t)return t;this.fire(new Ct(new Error(`The source '${e}' does not exist in the map's style.`)))}update(e){if(!this._loaded)return;this.ambientLight&&this.ambientLight.recalculate(e),this.directionalLight&&this.directionalLight.recalculate(e);const t=this.calculateLightsBrightness();e.brightness=t||0,t!==this._brightness&&(this._brightness=t,this.dispatcher.broadcast("setBrightness",t));const i=this._changes.isDirty();if(this._changes.isDirty()){const t=this._changes.getLayerUpdatesByScope();for(const e in t){const{updatedIds:i,removedIds:r}=t[e];(i||r)&&this._updateWorkerLayers(e,i,r)}this.updateSourceCaches(),this._updateTilesForChangedImages(),this.updateLayers(e),this.light&&this.light.updateTransitions(e),this.ambientLight&&this.ambientLight.updateTransitions(e),this.directionalLight&&this.directionalLight.updateTransitions(e),this.fog&&this.fog.updateTransitions(e),this._changes.reset()}const r={};for(const e in this._mergedSourceCaches){const t=this._mergedSourceCaches[e];r[e]=t.used,t.used=!1}for(const t of this._mergedOrder){const i=this._mergedLayers[t];if(i.recalculate(e,this._availableImages),!i.isHidden(e.zoom)){const e=this.getLayerSourceCache(i);e&&(e.used=!0)}if(!this._precompileDone&&this._shouldPrecompile)for(let t=i.minzoom||0;t<(i.maxzoom||25.5);t++){const t=this.map.painter;if(t){const r=i.getProgramIds();if(!r)continue;for(const n of r){const r=i.getDefaultProgramParams(n,e.zoom);r&&(t.style=this,this.fog&&(t._fogVisible=!0,r.overrideFog=!0,t.getOrCreateProgram(n,r)),t._fogVisible=!1,r.overrideFog=!1,t.getOrCreateProgram(n,r),(this.stylesheet.terrain||this.stylesheet.projection&&"globe"===this.stylesheet.projection.name)&&(r.overrideRtt=!0,t.getOrCreateProgram(n,r)))}}}}this._shouldPrecompile&&(this._precompileDone=!0);for(const e in r){const t=this._mergedSourceCaches[e];r[e]!==t.used&&t.getSource().fire(new It("data",{sourceDataType:"visibility",dataType:"source",sourceId:t.getSource().id}))}this.light&&this.light.recalculate(e),this.terrain&&this.terrain.recalculate(e),this.fog&&this.fog.recalculate(e),this.z=e.zoom,this._markersNeedUpdate&&(this._updateMarkersOpacity(),this._markersNeedUpdate=!1),i&&this.fire(new It("data",{dataType:"style"}))}_updateTilesForChangedImages(){const e=this._changes.getUpdatedImages();if(e.length){for(const t in this._sourceCaches)this._sourceCaches[t].reloadTilesForDependencies(["icons","patterns"],e);this._changes.resetUpdatedImages()}}_updateWorkerLayers(e,t,i){const r=this.getFragmentStyle(e);r&&this.dispatcher.broadcast("updateLayers",{layers:t?r._serializeLayers(t):[],scope:e,removedIds:i||[],options:r.options})}setState(e){if(this._checkLoaded(),YS(this,ms(e)))return!1;(e=Z(e)).layers=RT(e.layers);const t=function(e,t){if(!e)return[{command:OT.setStyle,args:[t]}];let i=[];try{if(!x(e.version,t.version))return[{command:OT.setStyle,args:[t]}];x(e.center,t.center)||i.push({command:OT.setCenter,args:[t.center]}),x(e.zoom,t.zoom)||i.push({command:OT.setZoom,args:[t.zoom]}),x(e.bearing,t.bearing)||i.push({command:OT.setBearing,args:[t.bearing]}),x(e.pitch,t.pitch)||i.push({command:OT.setPitch,args:[t.pitch]}),x(e.sprite,t.sprite)||i.push({command:OT.setSprite,args:[t.sprite]}),x(e.glyphs,t.glyphs)||i.push({command:OT.setGlyphs,args:[t.glyphs]}),x(e.imports,t.imports)||function(e=[],t=[],i){t=t||[];const r=(e=e||[]).map(VT),n=t.map(VT),o=e.reduce(GT,{}),s=t.reduce(GT,{}),a=r.slice();let l,c,h,u;for(l=0,c=0;l{e.source&&r[e.source]?i.push({command:OT.removeLayer,args:[e.id]}):o.push(e)}));let s=e.terrain;s&&r[s.source]&&(i.push({command:OT.setTerrain,args:[void 0]}),s=void 0),i=i.concat(n),x(s,t.terrain)||i.push({command:OT.setTerrain,args:[t.terrain]}),function(e,t,i){t=t||[];const r=(e=e||[]).map(VT),n=t.map(VT),o=e.reduce(GT,{}),s=t.reduce(GT,{}),a=r.slice(),l=Object.create(null);let c,h,u,d,p,f,m;for(c=0,h=0;c!(e.command in JS)));if(0===t.length)return!1;const i=t.filter((e=>!(e.command in KS)));if(i.length>0)throw new Error(`Unimplemented: ${i.map((e=>e.command)).join(", ")}.`);return t.forEach((e=>{this[e.command].apply(this,e.args)})),this.stylesheet=e,this.mergeAll(),this.dispatcher.broadcast("setLayers",{layers:this._serializeLayers(this._order),scope:this.scope,options:this.options}),!0}addImage(e,t){return this.getImage(e)?this.fire(new Ct(new Error("An image with this name already exists."))):(this.imageManager.addImage(e,this.scope,t),this._afterImageUpdated(e),this)}updateImage(e,t){this.imageManager.updateImage(e,this.scope,t)}getImage(e){return this.imageManager.getImage(e,this.scope)}removeImage(e){return this.getImage(e)?(this.imageManager.removeImage(e,this.scope),this._afterImageUpdated(e),this):this.fire(new Ct(new Error("No image with this name exists.")))}_afterImageUpdated(e){this._availableImages=this.imageManager.listImages(this.scope),this._changes.updateImage(e),this.dispatcher.broadcast("setImages",{scope:this.scope,images:this._availableImages}),this.fire(new It("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this._availableImages.slice()}addModel(e,t,i={}){return this._checkLoaded(),this._validate(As,`models.${e}`,t,null,i)||(this.modelManager.addModel(e,t,this.scope),this._changes.setDirty()),this}hasModel(e){return this.modelManager.hasModel(e,this.scope)}removeModel(e){return this.hasModel(e)?(this.modelManager.removeModel(e,this.scope),this):this.fire(new Ct(new Error("No model with this ID exists.")))}listModels(){return this._checkLoaded(),this.modelManager.listModels(this.scope)}addSource(e,t,i={}){if(this._checkLoaded(),void 0!==this.getOwnSource(e))throw new Error(`There is already a source with ID "${e}".`);if(!t.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(t).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(t.type)>=0&&this._validate(_s,`sources.${e}`,t,null,i))return;this.map&&this.map._collectResourceTiming&&(t.collectResourceTiming=!0);const r=MT(e,t,this.dispatcher,this);r.scope=this.scope,r.setEventedParent(this,(()=>({isSourceLoaded:this._isSourceCacheLoaded(r.id),source:r.serialize(),sourceId:r.id})));const n=e=>{const t=(e?"symbol:":"other:")+r.id,i=va(t,this.scope),n=this._sourceCaches[t]=new Dx(i,r,e);(e?this._symbolSourceCaches:this._otherSourceCaches)[r.id]=n,n.onAdd(this.map)};n(!1),"vector"!==t.type&&"geojson"!==t.type||n(!0),r.onAdd&&r.onAdd(this.map),i.isInitialLoad||(this.mergeSources(),this._changes.setDirty())}removeSource(e){this._checkLoaded();const t=this.getOwnSource(e);if(!t)throw new Error("There is no source with this ID");for(const t in this._layers)if(this._layers[t].source===e)return this.fire(new Ct(new Error(`Source "${e}" cannot be removed while layer "${t}" is using it.`)));if(this.terrain&&this.terrain.scope===this.scope&&this.terrain.get().source===e)return this.fire(new Ct(new Error(`Source "${e}" cannot be removed while terrain is using it.`)));const i=this.getOwnSourceCaches(e);for(const e of i){const t=ba(e.id);delete this._sourceCaches[t],this._changes.discardSourceCacheUpdate(e.id),e.fire(new It("data",{sourceDataType:"metadata",dataType:"source",sourceId:e.getSource().id})),e.setEventedParent(null),e.clearTiles()}return delete this._otherSourceCaches[e],delete this._symbolSourceCaches[e],this.mergeSources(),t.setEventedParent(null),t.onRemove&&t.onRemove(this.map),this._changes.setDirty(),this}setGeoJSONSourceData(e,t){this._checkLoaded(),this.getOwnSource(e).setData(t),this._changes.setDirty()}getOwnSource(e){const t=this.getOwnSourceCache(e);return t&&t.getSource()}getOwnSources(){const e=[];for(const t in this._otherSourceCaches){const i=this.getOwnSourceCache(t);i&&e.push(i.getSource())}return e}setLights(e){if(this._checkLoaded(),!e)return delete this.ambientLight,void delete this.directionalLight;const t=this._getTransitionParameters();for(const i of e){if(this._validate(ys,"lights",i))return;switch(i.type){case"ambient":if(this.ambientLight){const e=this.ambientLight;e.set(i),e.updateTransitions(t)}else this.ambientLight=new Aw(i,Sw,this.scope,this.options);break;case"directional":if(this.directionalLight){const e=this.directionalLight;e.set(i),e.updateTransitions(t)}else this.directionalLight=new Aw(i,Mw,this.scope,this.options)}}const i=new oa(this.z||0,t);this.ambientLight&&this.ambientLight.recalculate(i),this.directionalLight&&this.directionalLight.recalculate(i),this._brightness=this.calculateLightsBrightness(),this.dispatcher.broadcast("setBrightness",this._brightness)}calculateLightsBrightness(){const e=this.directionalLight,t=this.ambientLight;if(!e||!t)return;const i=e=>.2126*(e[0]<=.03928?e[0]/12.92:Math.pow((e[0]+.055)/1.055,2.4))+.7152*(e[1]<=.03928?e[1]/12.92:Math.pow((e[1]+.055)/1.055,2.4))+.0722*(e[2]<=.03928?e[2]/12.92:Math.pow((e[2]+.055)/1.055,2.4)),r=e.properties.get("color").toArray01(),n=e.properties.get("intensity"),o=e.properties.get("direction"),s=1-J(o.x,o.y,o.z)[2]/90,a=i(r)*n*s,l=t.properties.get("color").toArray01(),c=t.properties.get("intensity");return(a+i(l)*c)/2}getBrightness(){return this._brightness}getLights(){if(!this.enable3dLights())return null;const e=[];return this.directionalLight&&e.push(this.directionalLight.get()),this.ambientLight&&e.push(this.ambientLight.get()),e}enable3dLights(){return!!this.ambientLight&&!!this.directionalLight}getFragmentStyle(e){if(!e)return this;if(xa(e)){const t=function(e){const t=e.indexOf(ya);return t>=0?e.slice(t+1):""}(e),i=this.fragments.find((({id:e})=>e===t));if(!i)throw new Error(`Style import not found: ${e}`);const r=ba(e);return i.style.getFragmentStyle(r)}{const t=this.fragments.find((({id:t})=>t===e));if(!t)throw new Error(`Style import not found: ${e}`);return t.style}}getConfigProperty(e,t){const i=this.getFragmentStyle(e);if(!i)return null;const r=i.options.get(t),n=r?r.value||r.default:null;return n?n.serialize():null}setConfigProperty(e,t,i){const r=Eo(i);if("success"!==r.result)return void YS(this,r.value);const n=r.value.expression,o=this.getFragmentStyle(e);if(!o)return;const s=o.options.get(t);s&&(o.options.set(t,{...s,value:n}),o.updateConfigDependencies())}setConfig(e,t){if(this._config=e,e||t)if(t){this.options.clear();for(const i in t){let r,n;const o=Eo(t[i].default);if("success"===o.result&&(r=o.value.expression),e&&void 0!==e[i]){const t=Eo(e[i]);"success"===t.result&&(n=t.value.expression)}const{minValue:s,maxValue:a,stepValue:l,type:c,values:h}=t[i];r?this.options.set(i,{default:r,value:n,minValue:s,maxValue:a,stepValue:l,type:c,values:h}):this.fire(new Ct(new Error(`No schema defined for config option "${i}".`)))}}else this.fire(new Ct(new Error("Attempting to set config for a style without schema.")))}updateConfigDependencies(){for(const e of this._configDependentLayers){const t=this.getLayer(e);t&&(t.possiblyEvaluateVisibility(),this._updateLayer(t))}this.ambientLight&&this.ambientLight.scope===this.scope&&this.ambientLight.updateConfig(this.options),this.directionalLight&&this.directionalLight.scope===this.scope&&this.directionalLight.updateConfig(this.options),this._changes.setDirty()}addLayer(e,t,i={}){this._checkLoaded();const r=e.id;if(this._layers[r])return void this.fire(new Ct(new Error(`Layer with id "${r}" already exists on this map`)));let n;if("custom"===e.type){if(YS(this,function(e){const t=[],i=e.id;return void 0===i&&t.push({message:`layers.${i}: missing required property "id"`}),void 0===e.render&&t.push({message:`layers.${i}: missing required method "render"`}),e.renderingMode&&"2d"!==e.renderingMode&&"3d"!==e.renderingMode&&t.push({message:`layers.${i}: property "renderingMode" must be either "2d" or "3d"`}),t}(e)))return;n=ow(e,this.options)}else{if("object"==typeof e.source&&(this.addSource(r,e.source),e=R(e=Z(e),{source:r})),this._validate(bs,`layers.${r}`,e,{arrayIndex:-1},i))return;n=ow(e,this.options),this._validateLayer(n),n.setEventedParent(this,{layer:{id:r}}),this._serializedLayers[n.id]=n.serialize()}n.isConfigDependent&&this._configDependentLayers.add(n.fqid),n.setScope(this.scope);let o=this._order.length;if(t){const e=this._order.indexOf(t);if(-1===e)return void this.fire(new Ct(new Error(`Layer with id "${t}" does not exist on this map.`)));n.slot===this._layers[t].slot?o=e:W(`Layer with id "${t}" has a different slot. Layers can only be rearranged within the same slot.`)}this._order.splice(o,0,r),this._layerOrderChanged=!0,this._layers[r]=n;const s=this.getOwnLayerSourceCache(n),a=!!this.directionalLight&&this.directionalLight.shadowsEnabled();s&&n.canCastShadows()&&a&&(s.castsShadows=!0);const l=this._changes.getRemovedLayer(n);if(l&&n.source&&s&&"custom"!==n.type){this._changes.discardLayerRemoval(n);const e=va(n.source,n.scope);l.type!==n.type?this._changes.updateSourceCache(e,"clear"):(this._changes.updateSourceCache(e,"reload"),s.pause())}this._updateLayer(n),n.onAdd&&n.onAdd(this.map),n.scope=this.scope,this.mergeLayers()}moveLayer(e,t){this._checkLoaded();const i=this._checkLayer(e);if(!i)return;if(e===t)return;const r=this._order.indexOf(e);this._order.splice(r,1);let n=this._order.length;if(t){const e=this._order.indexOf(t);if(-1===e)return void this.fire(new Ct(new Error(`Layer with id "${t}" does not exist on this map.`)));i.slot===this._layers[t].slot?n=e:W(`Layer with id "${t}" has a different slot. Layers can only be rearranged within the same slot.`)}this._order.splice(n,0,e),this._changes.setDirty(),this._layerOrderChanged=!0,this.mergeLayers()}removeLayer(e){this._checkLoaded();const t=this._checkLayer(e);if(!t)return;t.setEventedParent(null);const i=this._order.indexOf(e);this._order.splice(i,1),delete this._layers[e],delete this._serializedLayers[e],this._changes.setDirty(),this._layerOrderChanged=!0,this._configDependentLayers.delete(t.fqid),this._changes.removeLayer(t);const r=this.getOwnLayerSourceCache(t);if(r&&r.castsShadows){let e=!1;for(const i in this._layers)if(this._layers[i].source===t.source&&this._layers[i].canCastShadows()){e=!0;break}r.castsShadows=e}t.onRemove&&t.onRemove(this.map),this.mergeLayers()}getOwnLayer(e){return this._layers[e]}hasLayer(e){return e in this._mergedLayers}hasLayerType(e){for(const t in this._layers)if(this._layers[t].type===e)return!0;return!1}setLayerZoomRange(e,t,i){this._checkLoaded();const r=this._checkLayer(e);r&&(r.minzoom===t&&r.maxzoom===i||(null!=t&&(r.minzoom=t),null!=i&&(r.maxzoom=i),this._updateLayer(r)))}setSlot(e,t){this._checkLoaded();const i=this._checkLayer(e);i&&i.slot!==t&&(i.slot=t,this._updateLayer(i))}setFilter(e,t,i={}){this._checkLoaded();const r=this._checkLayer(e);if(r&&!x(r.filter,t))return null==t?(r.filter=void 0,void this._updateLayer(r)):void(this._validate(ws,`layers.${r.id}.filter`,t,{layerType:r.type},i)||(r.filter=Z(t),this._updateLayer(r)))}getFilter(e){const t=this._checkLayer(e);if(t)return Z(t.filter)}setLayoutProperty(e,t,i,r={}){this._checkLoaded();const n=this._checkLayer(e);n&&(x(n.getLayoutProperty(t),i)||(n.setLayoutProperty(t,i,r),n.isConfigDependent&&this._configDependentLayers.add(n.fqid),this._updateLayer(n)))}getLayoutProperty(e,t){const i=this._checkLayer(e);if(i)return i.getLayoutProperty(t)}setPaintProperty(e,t,i,r={}){this._checkLoaded();const n=this._checkLayer(e);if(!n)return;if(x(n.getPaintProperty(t),i))return;const o=n.setPaintProperty(t,i,r);n.isConfigDependent&&this._configDependentLayers.add(n.fqid),o&&this._updateLayer(n),this._changes.updatePaintProperties(n)}getPaintProperty(e,t){const i=this._checkLayer(e);if(i)return i.getPaintProperty(t)}setFeatureState(e,t){this._checkLoaded();const i=e.source,r=e.sourceLayer,n=this._checkSource(i);if(!n)return;const o=n.type;if("geojson"===o&&r)return void this.fire(new Ct(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));if("vector"===o&&!r)return void this.fire(new Ct(new Error("The sourceLayer parameter must be provided for vector source types.")));void 0===e.id&&this.fire(new Ct(new Error("The feature id parameter must be provided.")));const s=this.getOwnSourceCaches(i);for(const i of s)i.setFeatureState(r,e.id,t)}removeFeatureState(e,t){this._checkLoaded();const i=e.source,r=this._checkSource(i);if(!r)return;const n=r.type,o="vector"===n?e.sourceLayer:void 0;if("vector"===n&&!o)return void this.fire(new Ct(new Error("The sourceLayer parameter must be provided for vector source types.")));if(t&&"string"!=typeof e.id&&"number"!=typeof e.id)return void this.fire(new Ct(new Error("A feature id is required to remove its specific state property.")));const s=this.getOwnSourceCaches(i);for(const i of s)i.removeFeatureState(o,e.id,t)}getFeatureState(e){this._checkLoaded();const t=e.source,i=e.sourceLayer,r=this._checkSource(t);if(r){if("vector"!==r.type||i)return void 0===e.id&&this.fire(new Ct(new Error("The feature id parameter must be provided."))),this.getOwnSourceCaches(t)[0].getFeatureState(i,e.id);this.fire(new Ct(new Error("The sourceLayer parameter must be provided for vector source types.")))}}setTransition(e){return this.stylesheet.transition=R({},this.stylesheet.transition,e),this.transition=this.stylesheet.transition,this}getTransition(){return R({},this.stylesheet.transition)}serialize(){this._checkLoaded();const e=this.getTerrain(),t=e&&this.terrain&&this.terrain.scope===this.scope?e:this.stylesheet.terrain;return q({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,imports:this._serializeImports(),schema:this.stylesheet.schema,camera:this.stylesheet.camera,light:this.stylesheet.light,lights:this.stylesheet.lights,terrain:t,fog:this.stylesheet.fog,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,projection:this.stylesheet.projection,sources:this._serializeSources(),layers:this._serializeLayers(this._order)},(e=>void 0!==e))}_updateLayer(e){this._changes.updateLayer(e);const t=this.getLayerSourceCache(e),i=va(e.source,e.scope),r=this._changes.getUpdatedSourceCaches();e.source&&!r[i]&&t&&"raster"!==t.getSource().type&&(this._changes.updateSourceCache(i,"reload"),t.pause()),e.invalidateCompiledFilter()}_flattenAndSortRenderedFeatures(e){const t=e=>"fill-extrusion"===this._mergedLayers[e].type,i=this.order,r={},n=[];for(let o=i.length-1;o>=0;o--){const s=i[o];if(t(s)){r[s]=o;for(const t of e){const e=t[s];if(e)for(const t of e)n.push(t)}}}n.sort(((e,t)=>t.intersectionZ-e.intersectionZ));const o=[];for(let s=i.length-1;s>=0;s--){const a=i[s];if(t(a))for(let e=n.length-1;e>=0;e--){const t=n[e].feature;if(r[t.layer.id]{const t=this.getLayer(e);return t&&t.is3D()})):this.has3DLayers(),a=Iw.createFromScreenPoints(e,i);for(const e in this._mergedSourceCaches){const l=this._mergedSourceCaches[e].getSource();if(!l||l.scope!==t.scope)continue;const c=this._mergedSourceCaches[e].getSource().id;t.layers&&!r[c]||n.push(CT(this._mergedSourceCaches[e],this._mergedLayers,o,a,t,i,s,!!this.map._showQueryGeometry))}return this.placement&&n.push(function(e,t,i,r,n,o,s){const a={},l=o.queryRenderedSymbols(r),c=[];for(const e of Object.keys(l).map(Number))c.push(s[e]);c.sort(PT);for(const i of c){const r=i.featureIndex.lookupSymbolFeatures(l[i.bucketInstanceId],t,i.bucketIndex,i.sourceLayerIndex,n.filter,n.layers,n.availableImages,e);for(const e in r){const t=a[e]=a[e]||[],n=r[e];n.sort(((e,t)=>{const r=i.featureSortOrder;if(r){const i=r.indexOf(e.featureIndex);return r.indexOf(t.featureIndex)-i}return t.featureIndex-e.featureIndex}));for(const e of n)t.push(e)}}for(const t in a)a[t].forEach((r=>{const n=r.feature,o=i(e[t]);if(!o)return;const s=o.getFeatureState(n.layer["source-layer"],n.id);n.source=n.layer.source,n.layer["source-layer"]&&(n.sourceLayer=n.layer["source-layer"]),n.state=s}));return a}(this._mergedLayers,o,this.getLayerSourceCache.bind(this),a.screenGeometry,t,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(n)}querySourceFeatures(e,t){t&&t.filter&&this._validate(ws,"querySourceFeatures.filter",t.filter,null,t);const i=this.getOwnSourceCaches(e);let r=[];for(const e of i)r=r.concat(kT(e,t));return r}addSourceType(e,t,i){return iM.getSourceType(e)?i(new Error(`A source type called "${e}" already exists.`)):(iM.setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:e,url:t.workerSourceURL},i):i(null,null))}getFlatLight(){return this.light.getLight()}setFlatLight(e,t,i={}){this._checkLoaded();const r=this.light.getLight();let n=!1;for(const t in e)if(!x(e[t],r[t])){n=!0;break}if(!n)return;const o=this._getTransitionParameters();this.light.setLight(e,t,i),this.light.updateTransitions(o)}getTerrain(){return this.terrain&&1===this.terrain.drapeRenderMode?this.terrain.get():null}setTerrainForDraping(){this.setTerrain({source:"",exaggeration:0},0)}setTerrain(e,t=1){if(this._checkLoaded(),!e)return delete this.terrain,null===e?this.stylesheet.terrain=null:delete this.stylesheet.terrain,this._force3DLayerUpdate(),void(this._markersNeedUpdate=!0);let i=e;const r=null==e.source;if(1===t){if("object"==typeof i.source){const e="terrain-dem-src";this.addSource(e,i.source),i=Z(i),i=R(i,{source:e})}const e=R({},i),t={};if(this.terrain&&r){e.source=this.terrain.get().source;const i=this.terrain?this.getFragmentStyle(this.terrain.scope):null;i&&(t.style=i.serialize())}if(this._validate(xs,"terrain",e,t))return}if(!this.terrain||this.terrain.scope!==this.scope&&!r||this.terrain&&t!==this.terrain.drapeRenderMode){if(!i)return;this._createTerrain(i,t),this.fire(new It("data",{dataType:"style"}))}else{const t=this.terrain,r=t.get();for(const e of Object.keys(Pt.terrain))!i.hasOwnProperty(e)&&Pt.terrain[e].default&&(i[e]=Pt.terrain[e].default);for(const i in e)if(!x(e[i],r[i])){t.set(e,this.options),this.stylesheet.terrain=e;const i=this._getTransitionParameters({duration:0});t.updateTransitions(i),this.fire(new It("data",{dataType:"style"}));break}}this.mergeTerrain(),this.updateDrapeFirstLayers(),this._markersNeedUpdate=!0}_createFog(e){const t=this.fog=new vw(e,this.map.transform);this.stylesheet.fog=t.get();const i=this._getTransitionParameters({duration:0});t.updateTransitions(i)}_updateMarkersOpacity(){0!==this.map._markers.length&&this.map._requestDomTask((()=>{for(const e of this.map._markers)e._evaluateOpacity()}))}getFog(){return this.fog?this.fog.get():null}setFog(e){if(this._checkLoaded(),!e)return delete this.fog,delete this.stylesheet.fog,void(this._markersNeedUpdate=!0);if(this.fog){const t=this.fog;if(!x(t.get(),e)){t.set(e),this.stylesheet.fog=t.get();const i=this._getTransitionParameters({duration:0});t.updateTransitions(i)}}else this._createFog(e);this._markersNeedUpdate=!0}_getTransitionParameters(e){return{now:dt.now(),transition:R(this.transition,e)}}updateDrapeFirstLayers(){if(!this.terrain)return;const e=[],t=[];for(const i in this._mergedLayers)this.isLayerDraped(this._mergedLayers[i])?e.push(i):t.push(i);this._drapedFirstOrder=[],this._drapedFirstOrder.push(...e),this._drapedFirstOrder.push(...t)}_createTerrain(e,t){const i=this.terrain=new uw(e,t,this.scope,this.options);1===t&&(this.stylesheet.terrain=e),this.mergeTerrain(),this.updateDrapeFirstLayers(),this._force3DLayerUpdate();const r=this._getTransitionParameters({duration:0});i.updateTransitions(r)}_force3DLayerUpdate(){for(const e in this._layers){const t=this._layers[e];"fill-extrusion"===t.type&&this._updateLayer(t)}}_forceSymbolLayerUpdate(){for(const e in this._layers){const t=this._layers[e];"symbol"===t.type&&this._updateLayer(t)}}_validate(e,t,i,r,n={}){if(n&&!1===n.validate)return!1;const o=R({},this.serialize());return YS(this,e.call(ms,R({key:t,style:o,value:i,styleSpec:Pt},r)))}_remove(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),ta.off("pluginStateChange",this._rtlTextPluginCallback);for(const e in this._mergedLayers)this._mergedLayers[e].setEventedParent(null);for(const e in this._mergedSourceCaches)this._mergedSourceCaches[e].clearTiles(),this._mergedSourceCaches[e].setEventedParent(null);this.setEventedParent(null),delete this.fog,delete this.terrain,delete this.ambientLight,delete this.directionalLight,this.isRootStyle()&&(this.imageManager.setEventedParent(null),this.modelManager.setEventedParent(null),this.dispatcher.remove())}clearSource(e){const t=this.getSourceCaches(e);for(const e of t)e.clearTiles()}clearSources(){for(const e in this._mergedSourceCaches)this._mergedSourceCaches[e].clearTiles()}reloadSource(e){const t=this.getSourceCaches(e);for(const e of t)e.resume(),e.reload()}reloadSources(){for(const e of this.getSources())e.reload&&e.reload()}updateSources(e){let t;this.directionalLight&&(t=ZS(this.directionalLight));for(const i in this._mergedSourceCaches)this._mergedSourceCaches[i].update(e,void 0,void 0,t)}_generateCollisionBoxes(){for(const e in this._sourceCaches){const t=this._sourceCaches[e];t.resume(),t.reload()}}_updatePlacement(e,t,i,r,n=!1){let o=!1,s=!1;const a={},l={};for(const t of this._mergedOrder){const i=this._mergedLayers[t];if("symbol"!==i.type)continue;const r=va(i.source,i.scope);let n=a[r];if(!n){const e=this.getLayerSourceCache(i);if(!e)continue;const t=e.getRenderableIds(!0).map((t=>e.getTileByID(t)));l[r]=t.slice(),n=a[r]=t.sort(((e,t)=>t.tileID.overscaledZ-e.tileID.overscaledZ||(e.tileID.isLessThan(t.tileID)?-1:1)))}const s=this.crossTileSymbolIndex.addLayer(i,n,e.center.lng,e.projection);o=o||s}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._mergedOrder),n=n||this._layerOrderChanged||0===i,this._layerOrderChanged&&this.fire(new It("neworder")),(n||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(dt.now(),e.zoom))&&(this.pauseablePlacement=new gE(e,this._mergedOrder,n,t,i,r,this.placement,this.fog&&e.projection.supportsFog?this.fog.state:null,this._buildingIndex),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._mergedOrder,this._mergedLayers,a,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(dt.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(const e of this._mergedOrder){const t=this._mergedLayers[e];"symbol"===t.type&&this.placement.updateLayerOpacities(t,a[va(t.source,t.scope)])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(dt.now())}_releaseSymbolFadeTiles(){for(const e in this._sourceCaches)this._sourceCaches[e].releaseSymbolFadeTiles()}addImport(e){this._checkLoaded();const t=this.stylesheet.imports=this.stylesheet.imports||[];return-1!==t.findIndex((({id:t})=>t===e.id))?this.fire(new Ct(new Error(`Import with id '${e.id}' already exists in the map's style.`))):(t.push(e),this._loadImports([e],!0),this)}setImportUrl(e,t){this._checkLoaded();const i=this.stylesheet.imports||[],r=this.getImportIndex(e);if(-1===r)return this;i[r].url=t;const n=this.fragments[r];return n.style=this._createFragmentStyle(i[r]),n.style.on("style.import.load",(()=>this.mergeAll())),n.style.loadURL(t),this}setImportData(e,t){this._checkLoaded();const i=this.getImportIndex(e),r=this.stylesheet.imports||[];return-1===i?this:t?(this.fragments[i].style.setState(t),this._reloadImports(),this):(delete r[i].data,this.setImportUrl(e,r[i].url))}setImportConfig(e,t){this._checkLoaded();const i=this.getImportIndex(e),r=this.stylesheet.imports||[];if(-1===i)return this;t?r[i].config=t:delete r[i].config;const n=this.fragments[i],o=n.style.stylesheet&&n.style.stylesheet.schema;return n.config=t,n.style.setConfig(t,o),n.style.updateConfigDependencies(),this}removeImport(e){this._checkLoaded();const t=this.stylesheet.imports||[],i=this.getImportIndex(e);return-1===i||(t.splice(i,1),this.fragments[i].style._remove(),this.fragments.splice(i,1),this._reloadImports()),this}getImportIndex(e){const t=(this.stylesheet.imports||[]).findIndex((t=>t.id===e));return-1===t&&this.fire(new Ct(new Error(`Import '${e}' does not exist in the map's style and cannot be updated.`))),t}getLayer(e){return this._mergedLayers[e]}getSources(){const e=[];for(const t in this._mergedOtherSourceCaches){const i=this._mergedOtherSourceCaches[t];i&&e.push(i.getSource())}return e}getSource(e,t){const i=this.getSourceCache(e,t);return i&&i.getSource()}getLayerSource(e){const t=this.getLayerSourceCache(e);return t&&t.getSource()}getSourceCache(e,t){const i=va(e,t);return this._mergedOtherSourceCaches[i]}getLayerSourceCache(e){const t=va(e.source,e.scope);return"symbol"===e.type?this._mergedSymbolSourceCaches[t]:this._mergedOtherSourceCaches[t]}getSourceCaches(e){const t=[];return this._mergedOtherSourceCaches[e]&&t.push(this._mergedOtherSourceCaches[e]),this._mergedSymbolSourceCaches[e]&&t.push(this._mergedSymbolSourceCaches[e]),t}updateSourceCaches(){const e=this._changes.getUpdatedSourceCaches();for(const t in e){const i=e[t];"reload"===i?this.reloadSource(t):"clear"===i&&this.clearSource(t)}}updateLayers(e){const t=this._changes.getUpdatedPaintProperties();for(const i of t){const t=this.getLayer(i);t&&t.updateTransitions(e)}}getImages(e,t,i){this.imageManager.getImages(t.icons,t.scope,i),this._updateTilesForChangedImages();const r=e=>{e&&e.setDependencies(t.tileID.key,t.type,t.icons)};r(this._otherSourceCaches[t.source]),r(this._symbolSourceCaches[t.source])}getGlyphs(e,t,i){this.glyphManager.getGlyphs(t.stacks,t.scope,i)}getResource(e,t,i){return be(t,i)}getOwnSourceCache(e){return this._otherSourceCaches[e]}getOwnLayerSourceCache(e){return"symbol"===e.type?this._symbolSourceCaches[e.source]:this._otherSourceCaches[e.source]}getOwnSourceCaches(e){const t=[];return this._otherSourceCaches[e]&&t.push(this._otherSourceCaches[e]),this._symbolSourceCaches[e]&&t.push(this._symbolSourceCaches[e]),t}_isSourceCacheLoaded(e){const t=this.getOwnSourceCaches(e);return 0===t.length?(this.fire(new Ct(new Error(`There is no source with ID '${e}'`))),!1):t.every((e=>e.loaded()))}has3DLayers(){return this._has3DLayers}hasSymbolLayers(){return this._hasSymbolLayers}hasCircleLayers(){return this._hasCircleLayers}_clearWorkerCaches(){this.dispatcher.broadcast("clearCaches")}destroy(){this._clearWorkerCaches(),this.terrainSetForDrapingOnly()&&(delete this.terrain,delete this.stylesheet.terrain)}}function rM(e,t){let i=!1,r=null;const n=()=>{r=null,i&&(e(),r=setTimeout(n,t),i=!1)};return()=>(i=!0,r||n(),r)}iM.getSourceType=function(e){return ST[e]},iM.setSourceType=function(e,t){ST[e]=t},iM.registerForPluginStateChange=function(e){return e({pluginStatus:Ks,pluginURL:Js}),ta.on("pluginStateChange",e),e};class nM{constructor(e){this._hashName=e&&encodeURIComponent(e),V(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=rM(this._updateHashUnthrottled.bind(this),300)}addTo(e){return this._map=e,t.addEventListener("hashchange",this._onHashChange,!1),e.on("moveend",this._updateHash),this}remove(){return this._map?(this._map.off("moveend",this._updateHash),t.removeEventListener("hashchange",this._onHashChange,!1),clearTimeout(this._updateHash()),this._map=void 0,this):this}getHashString(){const e=this._map;if(!e)return"";const i=oM(e);if(this._hashName){const e=this._hashName;let r=!1;const n=t.location.hash.slice(1).split("&").map((t=>{const n=t.split("=")[0];return n===e?(r=!0,`${n}=${i}`):t})).filter((e=>e));return r||n.push(`${e}=${i}`),`#${n.join("&")}`}return`#${i}`}_getCurrentHash(){const e=t.location.hash.replace("#","");if(this._hashName){let t;return e.split("&").map((e=>e.split("="))).forEach((e=>{e[0]===this._hashName&&(t=e)})),(t&&t[1]||"").split("/")}return e.split("/")}_onHashChange(){const e=this._map;if(!e)return!1;const t=this._getCurrentHash();if(t.length>=3&&!t.some((e=>isNaN(e)))){const i=e.dragRotate.isEnabled()&&e.touchZoomRotate.isEnabled()?+(t[3]||0):e.getBearing();return e.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:i,pitch:+(t[4]||0)}),!0}return!1}_updateHashUnthrottled(){const e=t.location.href.replace(/(#.+)?$/,this.getHashString());t.history.replaceState(t.history.state,null,e)}}function oM(e,t){const i=e.getCenter(),r=Math.round(100*e.getZoom())/100,n=Math.ceil((r*Math.LN2+Math.log(512/360/.5))/Math.LN10),o=Math.pow(10,n),s=Math.round(i.lng*o)/o,a=Math.round(i.lat*o)/o,l=e.getBearing(),c=e.getPitch();let h=t?`/${s}/${a}/${r}`:`${r}/${a}/${s}`;return(l||c)&&(h+="/"+Math.round(10*l)/10),c&&(h+=`/${Math.round(c)}`),h}const sM={linearity:.3,easing:I(0,0,.3,1)},aM=R({deceleration:2500,maxSpeed:1400},sM),lM=R({deceleration:20,maxSpeed:1400},sM),cM=R({deceleration:1e3,maxSpeed:360},sM),hM=R({deceleration:1e3,maxSpeed:90},sM);class uM{constructor(e){this._map=e,this.clear()}clear(){this._inertiaBuffer=[]}record(e){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:dt.now(),settings:e})}_drainInertiaBuffer(){const e=this._inertiaBuffer,t=dt.now();for(;e.length>0&&t-e[0].time>160;)e.shift()}_onMoveEnd(e){if(this._map._prefersReducedMotion())return;if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const t={zoom:0,bearing:0,pitch:0,pan:new y(0,0),pinchAround:void 0,around:void 0};for(const{settings:e}of this._inertiaBuffer)t.zoom+=e.zoomDelta||0,t.bearing+=e.bearingDelta||0,t.pitch+=e.pitchDelta||0,e.panDelta&&t.pan._add(e.panDelta),e.around&&(t.around=e.around),e.pinchAround&&(t.pinchAround=e.pinchAround);const i=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,r={};if(t.pan.mag()){const n=pM(t.pan.mag(),i,R({},aM,e||{}));r.offset=t.pan.mult(n.amount/t.pan.mag()),r.center=this._map.transform.center,dM(r,n)}if(t.zoom){const e=pM(t.zoom,i,lM);r.zoom=this._map.transform.zoom+e.amount,dM(r,e)}if(t.bearing){const e=pM(t.bearing,i,cM);r.bearing=this._map.transform.bearing+k(e.amount,-179,179),dM(r,e)}if(t.pitch){const e=pM(t.pitch,i,hM);r.pitch=this._map.transform.pitch+e.amount,dM(r,e)}if(r.zoom||r.bearing){const e=void 0===t.pinchAround?t.around:t.pinchAround;r.around=e?this._map.unproject(e):this._map.getCenter()}return this.clear(),r.noMoveStart=!0,r}}function dM(e,t){(!e.duration||e.durationt.unproject(e))),s=n.reduce(((e,t,i,r)=>e.add(t.div(r.length))),new y(0,0));super(e,{points:n,point:s,lngLats:o,lngLat:t.unproject(s),originalEvent:i}),this._defaultPrevented=!1}}class _M extends It{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(e,t,i){super(e,{originalEvent:i}),this._defaultPrevented=!1}}class gM{constructor(e,t){this._map=e,this._clickTolerance=t.clickTolerance}reset(){this._mousedownPos=void 0}wheel(e){return this._firePreventable(new _M(e.type,this._map,e))}mousedown(e,t){return this._mousedownPos=t,this._firePreventable(new fM(e.type,this._map,e))}mouseup(e){this._map.fire(new fM(e.type,this._map,e))}preclick(e){const t=R({},e);t.type="preclick",this._map.fire(new fM(t.type,this._map,t))}click(e,t){this._mousedownPos&&this._mousedownPos.dist(t)>=this._clickTolerance||(this.preclick(e),this._map.fire(new fM(e.type,this._map,e)))}dblclick(e){return this._firePreventable(new fM(e.type,this._map,e))}mouseover(e){this._map.fire(new fM(e.type,this._map,e))}mouseout(e){this._map.fire(new fM(e.type,this._map,e))}touchstart(e){return this._firePreventable(new mM(e.type,this._map,e))}touchmove(e){this._map.fire(new mM(e.type,this._map,e))}touchend(e){this._map.fire(new mM(e.type,this._map,e))}touchcancel(e){this._map.fire(new mM(e.type,this._map,e))}_firePreventable(e){if(this._map.fire(e),e.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class yM{constructor(e){this._map=e}reset(){this._delayContextMenu=!1,this._contextMenuEvent=void 0}mousemove(e){this._map.fire(new fM(e.type,this._map,e))}mousedown(){this._delayContextMenu=!0}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new fM("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(e){this._delayContextMenu?this._contextMenuEvent=e:this._map.fire(new fM(e.type,this._map,e)),this._map.listens("contextmenu")&&e.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class xM{constructor(e,t){this._map=e,this._el=e.getCanvasContainer(),this._container=e.getContainer(),this._clickTolerance=t.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(e,t){this.isEnabled()&&e.shiftKey&&0===e.button&&(yt(),this._startPos=this._lastPos=t,this._active=!0)}mousemoveWindow(e,t){if(!this._active)return;const i=t,r=this._startPos,n=this._lastPos;if(!r||!n||n.equals(i)||!this._box&&i.dist(r){this._box&&(this._box.style.transform=`translate(${o}px,${a}px)`,this._box.style.width=s-o+"px",this._box.style.height=l-a+"px")}))}mouseupWindow(e,t){if(!this._active)return;const i=this._startPos,r=t;if(i&&0===e.button){if(this.reset(),bt(),i.x!==r.x||i.y!==r.y)return this._map.fire(new It("boxzoomend",{originalEvent:e})),{cameraAnimation:e=>e.fitScreenCoordinates(i,r,this._map.getBearing(),{linear:!1})};this._fireEvent("boxzoomcancel",e)}}keydown(e){this._active&&27===e.keyCode&&(this.reset(),this._fireEvent("boxzoomcancel",e))}blur(){this.reset()}reset(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(this._box.remove(),this._box=null),xt(),delete this._startPos,delete this._lastPos}_fireEvent(e,t){return this._map.fire(new It(e,{originalEvent:t}))}}function vM(e,t){const i={};for(let r=0;rthis.numTouches)&&(this.aborted=!0),this.aborted||(0===this.startTime&&(this.startTime=e.timeStamp),i.length===this.numTouches&&(this.centroid=function(e){const t=new y(0,0);for(const i of e)t._add(i);return t.div(e.length)}(t),this.touches=vM(i,t)))}touchmove(e,t,i){if(this.aborted||!this.centroid)return;const r=vM(i,t);for(const e in this.touches){const t=r[e];(!t||t.dist(this.touches[e])>30)&&(this.aborted=!0)}}touchend(e,t,i){if((!this.centroid||e.timeStamp-this.startTime>500)&&(this.aborted=!0),0===i.length){const e=!this.aborted&&this.centroid;if(this.reset(),e)return e}}}class wM{constructor(e){this.singleTap=new bM(e),this.numTaps=e.numTaps,this.reset()}reset(){this.lastTime=1/0,this.lastTap=void 0,this.count=0,this.singleTap.reset()}touchstart(e,t,i){this.singleTap.touchstart(e,t,i)}touchmove(e,t,i){this.singleTap.touchmove(e,t,i)}touchend(e,t,i){const r=this.singleTap.touchend(e,t,i);if(r){const t=e.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(r)<30;if(t&&i||this.reset(),this.count++,this.lastTime=e.timeStamp,this.lastTap=r,this.count===this.numTaps)return this.reset(),r}}}class TM{constructor(){this._zoomIn=new wM({numTouches:1,numTaps:2}),this._zoomOut=new wM({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(e,t,i){this._zoomIn.touchstart(e,t,i),this._zoomOut.touchstart(e,t,i)}touchmove(e,t,i){this._zoomIn.touchmove(e,t,i),this._zoomOut.touchmove(e,t,i)}touchend(e,t,i){const r=this._zoomIn.touchend(e,t,i),n=this._zoomOut.touchend(e,t,i);return r?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()+1,around:t.unproject(r)},{originalEvent:e})}):n?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()-1,around:t.unproject(n)},{originalEvent:e})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}const EM={0:1,2:2};class AM{constructor(e){this.reset(),this._clickTolerance=e.clickTolerance||1}blur(){this.reset()}reset(){this._active=!1,this._moved=!1,this._lastPoint=void 0,this._eventButton=void 0}_correctButton(e,t){return!1}_move(e,t){return{}}mousedown(e,t){if(this._lastPoint)return;const i=Et(e);this._correctButton(e,i)&&(this._lastPoint=t,this._eventButton=i)}mousemoveWindow(e,t){const i=this._lastPoint;if(i)if(e.preventDefault(),null!=this._eventButton&&function(e,t){const i=EM[t];return void 0===e.buttons||(e.buttons&i)!==i}(e,this._eventButton))this.reset();else if(this._moved||!(t.dist(i)0&&(this._active=!0);const r=vM(i,t),n=new y(0,0),o=new y(0,0);let s=0;for(const e in r){const t=r[e],i=this._touches[e];i&&(n._add(t),o._add(t.sub(i)),s++,r[e]=t)}if(this._touches=r,s{this._alertContainer.classList.remove("mapboxgl-touch-pan-blocker-show"),this._alertContainer.setAttribute("role","null")}),500)}}class kM{constructor(){this.reset()}reset(){this._active=!1,this._firstTwoTouches=void 0}_start(e){}_move(e,t,i){return{}}touchstart(e,t,i){this._firstTwoTouches||i.length<2||(this._firstTwoTouches=[i[0].identifier,i[1].identifier],this._start([t[0],t[1]]))}touchmove(e,t,i){const r=this._firstTwoTouches;if(!r)return;e.preventDefault();const[n,o]=r,s=PM(i,t,n),a=PM(i,t,o);if(!s||!a)return;const l=this._aroundCenter?null:s.add(a).div(2);return this._move([s,a],l,e)}touchend(e,t,i){if(!this._firstTwoTouches)return;const[r,n]=this._firstTwoTouches,o=PM(i,t,r),s=PM(i,t,n);o&&s||(this._active&&bt(),this.reset())}touchcancel(){this.reset()}enable(e){this._enabled=!0,this._aroundCenter=!!e&&"center"===e.around}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}function PM(e,t,i){for(let r=0;rMath.abs(e.x)}class BM extends kM{constructor(e){super(),this._map=e}reset(){super.reset(),this._valid=void 0,this._firstMove=void 0,this._lastPoints=void 0}_start(e){this._lastPoints=e,OM(e[0].sub(e[1]))&&(this._valid=!1)}_move(e,t,i){const r=this._lastPoints;if(!r)return;const n=e[0].sub(r[0]),o=e[1].sub(r[1]);return this._map._cooperativeGestures&&!ie()&&i.touches.length<3||(this._valid=this.gestureBeginsVertically(n,o,i.timeStamp),!this._valid)?void 0:(this._lastPoints=e,this._active=!0,{pitchDelta:(n.y+o.y)/2*-.5})}gestureBeginsVertically(e,t,i){if(void 0!==this._valid)return this._valid;const r=e.mag()>=2,n=t.mag()>=2;if(!r&&!n)return;if(!r||!n)return null==this._firstMove&&(this._firstMove=i),i-this._firstMove<100&&void 0;const o=e.y>0==t.y>0;return OM(e)&&OM(t)&&o}}const FM={panStep:100,bearingStep:15,pitchStep:10};class NM{constructor(){const e=FM;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1}blur(){this.reset()}reset(){this._active=!1}keydown(e){if(e.altKey||e.ctrlKey||e.metaKey)return;let t=0,i=0,r=0,n=0,o=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?i=-1:(e.preventDefault(),n=-1);break;case 39:e.shiftKey?i=1:(e.preventDefault(),n=1);break;case 38:e.shiftKey?r=1:(e.preventDefault(),o=-1);break;case 40:e.shiftKey?r=-1:(e.preventDefault(),o=1);break;default:return}return this._rotationDisabled&&(i=0,r=0),{cameraAnimation:s=>{const a=s.getZoom();s.easeTo({duration:300,easeId:"keyboardHandler",easing:jM,zoom:t?Math.round(a)+t*(e.shiftKey?2:1):a,bearing:s.getBearing()+i*this._bearingStep,pitch:s.getPitch()+r*this._pitchStep,offset:[-n*this._panStep,-o*this._panStep],center:s.getCenter()},{originalEvent:e})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function jM(e){return e*(2-e)}const UM=4.000244140625;class VM{constructor(e,t){this._map=e,this._el=e.getCanvasContainer(),this._handler=t,this._delta=0,this._lastDelta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,V(["_onTimeout","_addScrollZoomBlocker","_showBlockerAlert"],this)}setZoomRate(e){this._defaultZoomRate=e}setWheelZoomRate(e){this._wheelZoomRate=e}isEnabled(){return!!this._enabled}isActive(){return this._active||void 0!==this._finishTimeout}isZooming(){return!!this._zooming}enable(e){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!e&&"center"===e.around,this._map._cooperativeGestures&&this._addScrollZoomBlocker())}disable(){this.isEnabled()&&(this._enabled=!1,this._map._cooperativeGestures&&(clearTimeout(this._alertTimer),this._alertContainer.remove()))}wheel(e){if(!this.isEnabled())return;if(this._map._cooperativeGestures){if(!(e.ctrlKey||e.metaKey||this.isZooming()||ie()))return void this._showBlockerAlert();"hidden"!==this._alertContainer.style.visibility&&(this._alertContainer.style.visibility="hidden",clearTimeout(this._alertTimer))}let i=e.deltaMode===t.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY;const r=dt.now(),n=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==i&&i%UM==0?this._type="wheel":0!==i&&Math.abs(i)<4?this._type="trackpad":n>400?(this._type=null,this._lastValue=i,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(n*i)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,i+=this._lastValue)),e.shiftKey&&i&&(i/=4),this._type&&(this._lastWheelEvent=e,this._delta-=i,this._active||this._start(e)),e.preventDefault()}_onTimeout(e){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(e)}_start(e){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const t=wt(this._el,e);this._aroundPoint=this._aroundCenter?this._map.transform.centerPoint:t,this._aroundCoord=this._map.transform.pointCoordinate3D(this._aroundPoint),this._targetZoom=void 0,this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const e=this._map.transform;"wheel"===this._type&&e.projection.wrap&&(e._center.lng>=180||e._center.lng<=-180)&&(this._prevEase=null,this._easing=null,this._lastWheelEvent=null,this._lastWheelEventTime=0);const t=()=>e._terrainEnabled()&&this._aroundCoord?e.computeZoomRelativeTo(this._aroundCoord):e.zoom;if(0!==this._delta){const i="wheel"===this._type&&Math.abs(this._delta)>UM?this._wheelZoomRate:this._defaultZoomRate;let r=2/(1+Math.exp(-Math.abs(this._delta*i)));this._delta<0&&0!==r&&(r=1/r);const n=t(),o=Math.pow(2,n),s="number"==typeof this._targetZoom?e.zoomScale(this._targetZoom):o;this._targetZoom=Math.min(e.maxZoom,Math.max(e.minZoom,e.scaleZoom(s*r))),"wheel"===this._type&&(this._startZoom=n,this._easing=this._smoothOutEasing(200)),this._lastDelta=this._delta,this._delta=0}const i="number"==typeof this._targetZoom?this._targetZoom:t(),r=this._startZoom,n=this._easing;let o,s=!1;if("wheel"===this._type&&r&&n){const e=Math.min((dt.now()-this._lastWheelEventTime)/200,1);o=Kr(r,i,n(e)),e<1?this._frameId||(this._frameId=!0):s=!0}else o=i,s=!0;this._active=!0,s&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._handler._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout}),200));let a=o-t();return a*this._lastDelta<0&&(a=0),{noInertia:!0,needsRenderFrame:!s,zoomDelta:a,around:this._aroundPoint,aroundCoord:this._aroundCoord,originalEvent:this._lastWheelEvent}}_smoothOutEasing(e){let t=C;if(this._prevEase){const e=this._prevEase,i=(dt.now()-e.start)/e.duration,r=e.easing(i+.01)-e.easing(i),n=.27/Math.sqrt(r*r+1e-4)*.01;t=I(n,Math.sqrt(.0729-n*n),.25,1)}return this._prevEase={start:dt.now(),duration:e,easing:t},t}blur(){this.reset()}reset(){this._active=!1}_addScrollZoomBlocker(){this._map&&!this._alertContainer&&(this._alertContainer=pt("div","mapboxgl-scroll-zoom-blocker",this._map._container),this._alertContainer.textContent=/(Mac|iPad)/i.test(t.navigator.userAgent)?this._map._getUIString("ScrollZoomBlocker.CmdMessage"):this._map._getUIString("ScrollZoomBlocker.CtrlMessage"),this._alertContainer.style.fontSize=`${Math.max(10,Math.min(24,Math.floor(.05*this._el.clientWidth)))}px`)}_showBlockerAlert(){this._alertContainer.style.visibility="visible",this._alertContainer.classList.add("mapboxgl-scroll-zoom-blocker-show"),this._alertContainer.setAttribute("role","alert"),clearTimeout(this._alertTimer),this._alertTimer=setTimeout((()=>{this._alertContainer.classList.remove("mapboxgl-scroll-zoom-blocker-show"),this._alertContainer.setAttribute("role","null")}),200)}}class GM{constructor(e,t){this._clickZoom=e,this._tapZoom=t}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class $M{constructor(){this.reset()}reset(){this._active=!1}blur(){this.reset()}dblclick(e,t){return e.preventDefault(),{cameraAnimation:i=>{i.easeTo({duration:300,zoom:i.getZoom()+(e.shiftKey?-1:1),around:i.unproject(t)},{originalEvent:e})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class qM{constructor(){this._tap=new wM({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,this._swipePoint=void 0,this._swipeTouch=0,this._tapTime=0,this._tap.reset()}touchstart(e,t,i){this._swipePoint||(this._tapTime&&e.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?i.length>0&&(this._swipePoint=t[0],this._swipeTouch=i[0].identifier):this._tap.touchstart(e,t,i))}touchmove(e,t,i){if(this._tapTime){if(this._swipePoint){if(i[0].identifier!==this._swipeTouch)return;const r=t[0],n=r.y-this._swipePoint.y;return this._swipePoint=r,e.preventDefault(),this._active=!0,{zoomDelta:n/128}}}else this._tap.touchmove(e,t,i)}touchend(e,t,i){this._tapTime?this._swipePoint&&0===i.length&&this.reset():this._tap.touchend(e,t,i)&&(this._tapTime=e.timeStamp)}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ZM{constructor(e,t,i){this._el=e,this._mousePan=t,this._touchPan=i}enable(e){this._inertiaOptions=e||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class HM{constructor(e,t,i){this._pitchWithRotate=e.pitchWithRotate,this._mouseRotate=t,this._mousePitch=i}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class WM{constructor(e,t,i,r){this._el=e,this._touchZoom=t,this._touchRotate=i,this._tapDragZoom=r,this._rotationDisabled=!1,this._enabled=!0}enable(e){this._touchZoom.enable(e),this._rotationDisabled||this._touchRotate.enable(e),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}const XM=e=>e.zoom||e.drag||e.pitch||e.rotate;class YM extends It{}class KM{constructor(){this.constants=[1,1,.01],this.radius=0}setup(e,t){const i=zu.sub([],t,e);this.radius=zu.length(i[2]<0?zu.div([],i,this.constants):[i[0],i[1],0])}projectRay(e){zu.div(e,e,this.constants),zu.normalize(e,e),zu.mul(e,e,this.constants);const t=zu.scale([],e,this.radius);if(t[2]>0){const e=zu.scale([],[0,0,1],zu.dot(t,[0,0,1])),i=zu.scale([],zu.normalize([],[t[0],t[1],0]),this.radius),r=zu.add([],t,zu.scale([],zu.sub([],zu.add([],i,e),t),2));t[0]=r[0],t[1]=r[1]}return t}}function JM(e){return e.panDelta&&e.panDelta.mag()||e.zoomDelta||e.bearingDelta||e.pitchDelta}class QM{constructor(e,i){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new uM(e),this._bearingSnap=i.bearingSnap,this._previousActiveHandlers={},this._trackingEllipsoid=new KM,this._dragOrigin=null,this._eventsInProgress={},this._addDefaultHandlers(i),V(["handleEvent","handleWindowEvent"],this);const r=this._el;this._listeners=[[r,"touchstart",{passive:!0}],[r,"touchmove",{passive:!1}],[r,"touchend",void 0],[r,"touchcancel",void 0],[r,"mousedown",void 0],[r,"mousemove",void 0],[r,"mouseup",void 0],[t.document,"mousemove",{capture:!0}],[t.document,"mouseup",void 0],[r,"mouseover",void 0],[r,"mouseout",void 0],[r,"dblclick",void 0],[r,"click",void 0],[r,"keydown",{capture:!1}],[r,"keyup",void 0],[r,"wheel",{passive:!1}],[r,"contextmenu",void 0],[t,"blur",void 0]];for(const[e,i,r]of this._listeners)e.addEventListener(i,e===t.document?this.handleWindowEvent:this.handleEvent,r)}destroy(){for(const[e,i,r]of this._listeners)e.removeEventListener(i,e===t.document?this.handleWindowEvent:this.handleEvent,r)}_addDefaultHandlers(e){const t=this._map,i=t.getCanvasContainer();this._add("mapEvent",new gM(t,e));const r=t.boxZoom=new xM(t,e);this._add("boxZoom",r);const n=new TM,o=new $M;t.doubleClickZoom=new GM(o,n),this._add("tapZoom",n),this._add("clickZoom",o);const s=new qM;this._add("tapDragZoom",s);const a=t.touchPitch=new BM(t);this._add("touchPitch",a);const l=new MM(e),c=new IM(e);t.dragRotate=new HM(e,l,c),this._add("mouseRotate",l,["mousePitch"]),this._add("mousePitch",c,["mouseRotate"]);const h=new SM(e),u=new CM(t,e);t.dragPan=new ZM(i,h,u),this._add("mousePan",h),this._add("touchPan",u,["touchZoom","touchRotate"]);const d=new RM,p=new LM;t.touchZoomRotate=new WM(i,p,d,s),this._add("touchRotate",d,["touchPan","touchZoom"]),this._add("touchZoom",p,["touchPan","touchRotate"]),this._add("blockableMapEvent",new yM(t));const f=t.scrollZoom=new VM(t,this);this._add("scrollZoom",f,["mousePan"]);const m=t.keyboard=new NM;this._add("keyboard",m);for(const i of["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"])e.interactive&&e[i]&&t[i].enable(e[i])}_add(e,t,i){this._handlers.push({handlerName:e,handler:t,allowed:i}),this._handlersById[e]=t}stop(e){if(!this._updatingCamera){for(const{handler:e}of this._handlers)e.reset();this._inertia.clear(),this._fireEvents({},{},e),this._changes=[],this._originalZoom=void 0}}isActive(){for(const{handler:e}of this._handlers)if(e.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!XM(this._eventsInProgress)||this.isZooming()}_isDragging(){return!!this._eventsInProgress.drag}_blockedByActive(e,t,i){for(const r in e)if(r!==i&&(!t||t.indexOf(r)<0))return!0;return!1}handleWindowEvent(e){this.handleEvent(e,`${e.type}Window`)}_getMapTouches(e){const t=[];for(const i of e)this._el.contains(i.target)&&t.push(i);return t}handleEvent(e,t){this._updatingCamera=!0;const i="renderFrame"===e.type,r=i?void 0:e,n={needsRenderFrame:!1},o={},s={},a=e.touches?this._getMapTouches(e.touches):void 0,l=a?Tt(this._el,a):i?void 0:wt(this._el,e);for(const{handlerName:i,handler:c,allowed:h}of this._handlers){if(!c.isEnabled())continue;let u;this._blockedByActive(s,h,i)?c.reset():c[t||e.type]&&(u=c[t||e.type](e,l,a),this.mergeHandlerResult(n,o,u,i,r),u&&u.needsRenderFrame&&this._triggerRenderFrame()),(u||c.isActive())&&(s[i]=c)}const c={};for(const e in this._previousActiveHandlers)s[e]||(c[e]=r);this._previousActiveHandlers=s,(Object.keys(c).length||JM(n))&&(this._changes.push([n,o,c]),this._triggerRenderFrame()),(Object.keys(s).length||JM(n))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:h}=n;h&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],h(this._map))}mergeHandlerResult(e,t,i,r,n){if(!i)return;R(e,i);const o={handlerName:r,originalEvent:i.originalEvent||n};void 0!==i.zoomDelta&&(t.zoom=o),void 0!==i.panDelta&&(t.drag=o),void 0!==i.pitchDelta&&(t.pitch=o),void 0!==i.bearingDelta&&(t.rotate=o)}_applyChanges(){const e={},t={},i={};for(const[r,n,o]of this._changes)r.panDelta&&(e.panDelta=(e.panDelta||new y(0,0))._add(r.panDelta)),r.zoomDelta&&(e.zoomDelta=(e.zoomDelta||0)+r.zoomDelta),r.bearingDelta&&(e.bearingDelta=(e.bearingDelta||0)+r.bearingDelta),r.pitchDelta&&(e.pitchDelta=(e.pitchDelta||0)+r.pitchDelta),void 0!==r.around&&(e.around=r.around),void 0!==r.aroundCoord&&(e.aroundCoord=r.aroundCoord),void 0!==r.pinchAround&&(e.pinchAround=r.pinchAround),r.noInertia&&(e.noInertia=r.noInertia),R(t,n),R(i,o);this._updateMapTransform(e,t,i),this._changes=[]}_updateMapTransform(e,t,i){const r=this._map,n=r.transform,o=e=>[e.x,e.y,e.z];if((e=>{const t=this._eventsInProgress.drag;return t&&!this._handlersById[t.handlerName].isActive()})()&&!JM(e)){const e=n.zoom;n.cameraElevationReference="sea",null!=this._originalZoom&&n._orthographicProjectionAtLowPitch&&"globe"!==n.projection.name&&0===n.pitch?(n.cameraElevationReference="ground",n.zoom=this._originalZoom):(n.recenterOnTerrain(),n.cameraElevationReference="ground"),e!==n.zoom&&this._map._update(!0)}if(n._isCameraConstrained&&r._stop(!0),!JM(e))return void this._fireEvents(t,i,!0);let{panDelta:s,zoomDelta:a,bearingDelta:l,pitchDelta:c,around:h,aroundCoord:u,pinchAround:d}=e;n._isCameraConstrained&&(a>0&&(a=0),n._isCameraConstrained=!1),void 0!==d&&(h=d),(a||(e=>t[e]&&!this._eventsInProgress[e])("drag"))&&h&&(this._dragOrigin=o(n.pointCoordinate3D(h)),this._originalZoom=n.zoom,this._trackingEllipsoid.setup(n._camera.position,this._dragOrigin)),n.cameraElevationReference="sea",r._stop(!0),h=h||r.transform.centerPoint,l&&(n.bearing+=l),c&&(n.pitch+=c),n._updateCameraState();const p=[0,0,0];if(s)if("mercator"===n.projection.name){const e=this._trackingEllipsoid.projectRay(n.screenPointToMercatorRay(h).dir),t=this._trackingEllipsoid.projectRay(n.screenPointToMercatorRay(h.sub(s)).dir);p[0]=t[0]-e[0],p[1]=t[1]-e[1]}else{const e=n.pointCoordinate(h);if("globe"===n.projection.name){s=s.rotate(-n.angle);const t=n._pixelsPerMercatorPixel/n.worldSize;p[0]=-s.x*sp(tp(e.y))*t,p[1]=-s.y*sp(n.center.lat)*t}else{const t=n.pointCoordinate(h.sub(s));e&&t&&(p[0]=t.x-e.x,p[1]=t.y-e.y)}}const f=n.zoom,m=[0,0,0];if(a){const e=o(u||n.pointCoordinate3D(h)),t={dir:zu.normalize([],zu.sub([],e,n._camera.position))};if(t.dir[2]<0){const i=n.zoomDeltaToMovement(e,a);zu.scale(m,t.dir,i)}}const _=zu.add(p,p,m);n._translateCameraConstrained(_),a&&Math.abs(n.zoom-f)>1e-4&&n.recenterOnTerrain(),n.cameraElevationReference="ground",this._map._update(),e.noInertia||this._inertia.record(e),this._fireEvents(t,i,!0)}_fireEvents(e,t,i){const r=XM(this._eventsInProgress),n=XM(e),o={};for(const t in e){const{originalEvent:i}=e[t];this._eventsInProgress[t]||(o[`${t}start`]=i),this._eventsInProgress[t]=e[t]}!r&&n&&this._fireEvent("movestart",n.originalEvent);for(const e in o)this._fireEvent(e,o[e]);n&&this._fireEvent("move",n.originalEvent);for(const t in e){const{originalEvent:i}=e[t];this._fireEvent(t,i)}const s={};let a;for(const e in this._eventsInProgress){const{handlerName:i,originalEvent:r}=this._eventsInProgress[e];this._handlersById[i].isActive()||(delete this._eventsInProgress[e],a=t[i]||r,s[`${e}end`]=a)}for(const e in s)this._fireEvent(e,s[e]);const l=XM(this._eventsInProgress);if(i&&(r||n)&&!l){this._updatingCamera=!0;const e=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),t=e=>0!==e&&-this._bearingSnap{this._frameId=void 0,this.handleEvent(new YM("renderFrame",{timeStamp:e})),this._applyChanges()}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame())}}const eI="map.setFreeCameraOptions(...) and map.getFreeCameraOptions() are not yet supported for non-mercator projections.";class tI extends kt{constructor(e,t){super(),this._moving=!1,this._zooming=!1,this.transform=e,this._bearingSnap=t.bearingSnap,this._respectPrefersReducedMotion=!1!==t.respectPrefersReducedMotion,V(["_renderFrameCallback"],this)}getCenter(){return new Hd(this.transform.center.lng,this.transform.center.lat)}setCenter(e,t){return this.jumpTo({center:e},t)}panBy(e,t,i){return e=y.convert(e).mult(-1),this.panTo(this.transform.center,R({offset:e},t),i)}panTo(e,t,i){return this.easeTo(R({center:e},t),i)}getZoom(){return this.transform.zoom}setZoom(e,t){return this.jumpTo({zoom:e},t),this}zoomTo(e,t,i){return this.easeTo(R({zoom:e},t),i)}zoomIn(e,t){return this.zoomTo(this.getZoom()+1,e,t),this}zoomOut(e,t){return this.zoomTo(this.getZoom()-1,e,t),this}getBearing(){return this.transform.bearing}setBearing(e,t){return this.jumpTo({bearing:e},t),this}getPadding(){return this.transform.padding}setPadding(e,t){return this.jumpTo({padding:e},t),this}rotateTo(e,t,i){return this.easeTo(R({bearing:e},t),i)}resetNorth(e,t){return this.rotateTo(0,R({duration:1e3},e),t),this}resetNorthPitch(e,t){return this.easeTo(R({bearing:0,pitch:0,duration:1e3},e),t),this}snapToNorth(e,t){return Math.abs(this.getBearing())e.aspect?i/(2*Math.tan(.5*e.fovX)*e.aspect):r/(2*Math.tan(.5*e.fovY)*e.aspect)}_cameraForBoundsOnGlobe(e,t,i,r,n,o){const s=e.clone(),a=this._extendCameraOptions(o);s.bearing=r,s.pitch=n;const l=Hd.convert(t),c=Hd.convert(i),h=.5*(l.lat+c.lat),u=.5*(l.lng+c.lng),d=wd(h,u),p=zu.normalize([],d),f=zu.normalize([],zu.cross([],p,[0,1,0])),m=zu.cross([],f,p),_=[f[0],f[1],f[2],0,m[0],m[1],m[2],0,p[0],p[1],p[2],0,0,0,0,1],g=[d,wd(l.lat,l.lng),wd(c.lat,l.lng),wd(c.lat,c.lng),wd(l.lat,c.lng),wd(h,l.lng),wd(h,c.lng),wd(l.lat,u),wd(c.lat,u)];let y=ed.fromPoints(g.map((e=>[zu.dot(f,e),zu.dot(m,e),zu.dot(p,e)])));const x=zu.transformMat4([],y.center,_);0===zu.squaredLength(x)&&zu.set(x,0,0,1),zu.normalize(x,x),zu.scale(x,x,rd),s.center=function([e,t,i]){const r=Math.hypot(e,t,i),n=Math.atan2(e,i),o=.5*Math.PI-Math.acos(-t/r);return new Hd(T(n),T(o))}(x);const v=s.getWorldToCameraMatrix(),b=Su.invert(new Float64Array(16),v);y=ed.applyTransform(y,Su.multiply([],v,_)),zu.transformMat4(x,x,v);const w=.5*(y.max[2]-y.min[2]),E=this._minimumAABBFrustumDistance(s,y),A=zu.scale([],[0,0,1],w),S=zu.add(A,x,A),M=E+(0===s.pitch?0:zu.distance(x,S)),I=s.globeCenterInViewSpace,C=zu.sub([],x,[I[0],I[1],I[2]]);zu.normalize(C,C),zu.scale(C,C,M);const k=zu.add([],x,C);zu.transformMat4(k,k,b);const P=$d/rd,z=zu.length(k),L=Qd(Math.max(z*P-$d,Number.EPSILON),0),D=Math.min(s.zoomFromMercatorZAdjusted(L),a.maxZoom);return D>.5*(td+id)?(s.setProjection({name:"mercator"}),s.zoom=D,this._cameraForBounds(s,t,i,r,n,o)):{center:s.center,zoom:D,bearing:r,pitch:n}}queryTerrainElevation(e,t){const i=this.transform.elevation;return i?(t=R({},{exaggerated:!0},t),i.getAtPoint(lp.fromLngLat(e),null,t.exaggerated)):null}_cameraForBounds(e,t,i,r,n,o){if("globe"===e.projection.name)return this._cameraForBoundsOnGlobe(e,t,i,r,n,o);const s=e.clone(),a=this._extendCameraOptions(o),l=s.padding;s.bearing=r,s.pitch=n;const c=Hd.convert(t),h=Hd.convert(i),u=new Hd(c.lng,h.lat),d=new Hd(h.lng,c.lat),p=s.project(c),f=s.project(h),m=this.queryTerrainElevation(c),_=this.queryTerrainElevation(h),g=this.queryTerrainElevation(u),x=this.queryTerrainElevation(d),v=[[p.x,p.y,Math.min(m||0,_||0,g||0,x||0)],[f.x,f.y,Math.max(m||0,_||0,g||0,x||0)]];let b=ed.fromPoints(v);const T=s.getWorldToCameraMatrix(),E=Su.invert(new Float64Array(16),T);b=ed.applyTransform(b,T);const A=zu.sub([],b.max,b.min),S=l.left||0,M=l.right||0,I=l.bottom||0,C=l.top||0,{left:k,right:P,top:z,bottom:L}=a.padding,D=.5*(S+M),R=.5*(C+I),O=Math.min(s.scaleZoom(s.scale*Math.min((s.width-(S+M+k+P))/A[0],(s.height-(I+C+L+z))/A[1])),a.maxZoom),B=s.scale/s.zoomScale(O);b=new ed([b.min[0]-(k+D)*B,b.min[1]-(L+R)*B,b.min[2]],[b.max[0]+(P+D)*B,b.max[1]+(z+R)*B,b.max[2]]);const F=.5*A[2],N=this._minimumAABBFrustumDistance(s,b),j=[0,0,1,0];yu.transformMat4(j,j,T),yu.normalize(j,j);const U=zu.scale([],j,N+F),V=zu.add([],b.center,U),G=("number"==typeof a.offset.x&&"number"==typeof a.offset.y?new y(a.offset.x,a.offset.y):y.convert(a.offset)).rotate(-w(r));b.center[0]-=G.x*B,b.center[1]+=G.y*B,zu.transformMat4(b.center,b.center,E),zu.transformMat4(V,V,E);const $=[b.center[0],b.center[1],V[2]*s.pixelsPerMeter];zu.scale($,$,1/s.worldSize);const q=ep($[0]),Z=tp($[1]),H=Math.min(s._zoomFromMercatorZ($[2]),a.maxZoom),W=new Hd(q,Z);return s.mercatorFromTransition&&H<.5*(td+id)?(s.setProjection({name:"globe"}),s.zoom=H,this._cameraForBounds(s,t,i,r,n,o)):{center:W,zoom:H,bearing:r,pitch:n}}fitBounds(e,t,i){const r=this.cameraForBounds(e,t);return this._fitInternal(r,t,i)}fitScreenCoordinates(e,t,i,r,n){const o=y.convert(e),s=y.convert(t),a=new y(Math.min(o.x,s.x),Math.min(o.y,s.y)),l=new y(Math.max(o.x,s.x),Math.max(o.y,s.y));if("mercator"===this.transform.projection.name&&this.transform.anyCornerOffEdge(o,s))return this;const c=this.transform.pointLocation3D(a),h=this.transform.pointLocation3D(l),u=this.transform.pointLocation3D(new y(a.x,l.y)),d=this.transform.pointLocation3D(new y(l.x,a.y)),p=[Math.min(c.lng,h.lng,u.lng,d.lng),Math.min(c.lat,h.lat,u.lat,d.lat)],f=[Math.max(c.lng,h.lng,u.lng,d.lng),Math.max(c.lat,h.lat,u.lat,d.lat)],m=r&&r.pitch?r.pitch:this.getPitch(),_=this._cameraForBounds(this.transform,p,f,i,m,r);return this._fitInternal(_,r,n)}_fitInternal(e,t,i){return e?(delete(t=R(e,t)).padding,t.linear?this.easeTo(t,i):this.flyTo(t,i)):this}jumpTo(e,t){this.stop();const i=e.preloadOnly?this.transform.clone():this.transform;let r=!1,n=!1,o=!1;return"zoom"in e&&i.zoom!==+e.zoom&&(r=!0,i.zoom=+e.zoom),void 0!==e.center&&(i.center=Hd.convert(e.center)),"bearing"in e&&i.bearing!==+e.bearing&&(n=!0,i.bearing=+e.bearing),"pitch"in e&&i.pitch!==+e.pitch&&(o=!0,i.pitch=+e.pitch),null==e.padding||i.isPaddingEqual(e.padding)||(i.padding=e.padding),e.preloadOnly?(this._preloadTiles(i),this):(this.fire(new It("movestart",t)).fire(new It("move",t)),r&&this.fire(new It("zoomstart",t)).fire(new It("zoom",t)).fire(new It("zoomend",t)),n&&this.fire(new It("rotatestart",t)).fire(new It("rotate",t)).fire(new It("rotateend",t)),o&&this.fire(new It("pitchstart",t)).fire(new It("pitch",t)).fire(new It("pitchend",t)),this.fire(new It("moveend",t)))}getFreeCameraOptions(){return this.transform.projection.supportsFreeCamera||W(eI),this.transform.getFreeCameraOptions()}setFreeCameraOptions(e,t){const i=this.transform;if(!i.projection.supportsFreeCamera)return W(eI),this;this.stop();const r=i.zoom,n=i.pitch,o=i.bearing;i.setFreeCameraOptions(e);const s=r!==i.zoom,a=n!==i.pitch,l=o!==i.bearing;return this.fire(new It("movestart",t)).fire(new It("move",t)),s&&this.fire(new It("zoomstart",t)).fire(new It("zoom",t)).fire(new It("zoomend",t)),l&&this.fire(new It("rotatestart",t)).fire(new It("rotate",t)).fire(new It("rotateend",t)),a&&this.fire(new It("pitchstart",t)).fire(new It("pitch",t)).fire(new It("pitchend",t)),this.fire(new It("moveend",t)),this}easeTo(e,t){this._stop(!1,e.easeId),(!1===(e=R({offset:[0,0],duration:500,easing:C},e)).animate||this._prefersReducedMotion(e))&&(e.duration=0);const i=this.transform,r=this.getZoom(),n=this.getBearing(),o=this.getPitch(),s=this.getPadding(),a="zoom"in e?+e.zoom:r,l="bearing"in e?this._normalizeBearing(e.bearing,n):n,c="pitch"in e?+e.pitch:o,h="padding"in e?e.padding:i.padding,u=y.convert(e.offset);let d,p,f;if("globe"===i.projection.name){const t=lp.fromLngLat(i.center),r=u.rotate(-i.angle);t.x+=r.x/i.worldSize,t.y+=r.y/i.worldSize;const n=t.toLngLat(),o=Hd.convert(e.center||n);this._normalizeCenter(o),d=i.centerPoint.add(r),p=new y(t.x,t.y).mult(i.worldSize),f=new y(Kd(o.lng),Jd(o.lat)).mult(i.worldSize).sub(p)}else{d=i.centerPoint.add(u);const t=i.pointLocation(d),r=Hd.convert(e.center||t);this._normalizeCenter(r),p=i.project(t),f=i.project(r).sub(p)}const m=i.zoomScale(a-r);let _,g;e.around&&(_=Hd.convert(e.around),g=i.locationPoint(_));const x=this._zooming||a!==r,v=this._rotating||n!==l,b=this._pitching||c!==o,w=!i.isPaddingEqual(h),T=i=>y=>{if(x&&(i.zoom=Kr(r,a,y)),v&&(i.bearing=Kr(n,l,y)),b&&(i.pitch=Kr(o,c,y)),w&&(i.interpolatePadding(s,h,y),d=i.centerPoint.add(u)),_)i.setLocationAtPoint(_,g);else{const e=i.zoomScale(i.zoom-r),t=a>r?Math.min(2,m):Math.max(.5,m),n=Math.pow(t,1-y),o=i.unproject(p.add(f.mult(y*n)).mult(e));i.setLocationAtPoint(i.renderWorldCopies?o.wrap():o,d)}return e.preloadOnly||this._fireMoveEvents(t),i};if(e.preloadOnly){const t=this._emulate(T,e.duration,i);return this._preloadTiles(t),this}const E={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=x,this._rotating=v,this._pitching=b,this._padding=w,this._easeId=e.easeId,this._prepareEase(t,e.noMoveStart,E),this._ease(T(i),(e=>{"sea"===i.cameraElevationReference&&i.recenterOnTerrain(),this._afterEase(t,e)}),e),this}_prepareEase(e,t,i={}){this._moving=!0,this.transform.cameraElevationReference="sea",this.transform._orthographicProjectionAtLowPitch&&0===this.transform.pitch&&"globe"!==this.transform.projection.name&&(this.transform.cameraElevationReference="ground"),t||i.moving||this.fire(new It("movestart",e)),this._zooming&&!i.zooming&&this.fire(new It("zoomstart",e)),this._rotating&&!i.rotating&&this.fire(new It("rotatestart",e)),this._pitching&&!i.pitching&&this.fire(new It("pitchstart",e))}_fireMoveEvents(e){this.fire(new It("move",e)),this._zooming&&this.fire(new It("zoom",e)),this._rotating&&this.fire(new It("rotate",e)),this._pitching&&this.fire(new It("pitch",e))}_afterEase(e,t){if(this._easeId&&t&&this._easeId===t)return;this._easeId=void 0,this.transform.cameraElevationReference="ground";const i=this._zooming,r=this._rotating,n=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,i&&this.fire(new It("zoomend",e)),r&&this.fire(new It("rotateend",e)),n&&this.fire(new It("pitchend",e)),this.fire(new It("moveend",e))}flyTo(e,t){if(this._prefersReducedMotion(e)){const i=O(e,["center","zoom","bearing","pitch","around"]);return this.jumpTo(i,t)}this.stop(),e=R({offset:[0,0],speed:1.2,curve:1.42,easing:C},e);const i=this.transform,r=this.getZoom(),n=this.getBearing(),o=this.getPitch(),s=this.getPadding(),a="zoom"in e?k(+e.zoom,i.minZoom,i.maxZoom):r,l="bearing"in e?this._normalizeBearing(e.bearing,n):n,c="pitch"in e?+e.pitch:o,h="padding"in e?e.padding:i.padding,u=i.zoomScale(a-r),d=y.convert(e.offset);let p=i.centerPoint.add(d);const f=i.pointLocation(p),m=Hd.convert(e.center||f);this._normalizeCenter(m);const _=i.project(f),g=i.project(m).sub(_);let x=e.curve;const v=Math.max(i.width,i.height),b=v/u,w=g.mag();if("minZoom"in e){const t=k(Math.min(e.minZoom,r,a),i.minZoom,i.maxZoom),n=v/i.zoomScale(t-r);x=Math.sqrt(n/w*2)}const T=x*x;function E(e){const t=(b*b-v*v+(e?-1:1)*T*T*w*w)/(2*(e?b:v)*T*w);return Math.log(Math.sqrt(t*t+1)-t)}function A(e){return(Math.exp(e)-Math.exp(-e))/2}function S(e){return(Math.exp(e)+Math.exp(-e))/2}const M=E(0);let I=function(e){return S(M)/S(M+x*e)},P=function(e){return v*((S(M)*(A(t=M+x*e)/S(t))-A(M))/T)/w;var t},z=(E(1)-M)/x;if(Math.abs(w)<1e-6||!isFinite(z)){if(Math.abs(v-b)<1e-6)return this.easeTo(e,t);const i=be.maxDuration&&(e.duration=0);const L=n!==l,D=c!==o,B=!i.isPaddingEqual(h),F=i=>u=>{const f=u*z,y=1/I(f);i.zoom=1===u?a:r+i.scaleZoom(y),L&&(i.bearing=Kr(n,l,u)),D&&(i.pitch=Kr(o,c,u)),B&&(i.interpolatePadding(s,h,u),p=i.centerPoint.add(d));const x=1===u?m:i.unproject(_.add(g.mult(P(f))).mult(y));return i.setLocationAtPoint(i.renderWorldCopies?x.wrap():x,p),i._updateCameraOnTerrain(),e.preloadOnly||this._fireMoveEvents(t),i};if(e.preloadOnly){const t=this._emulate(F,e.duration,i);return this._preloadTiles(t),this}return this._zooming=!0,this._rotating=L,this._pitching=D,this._padding=B,this._prepareEase(t,!1),this._ease(F(i),(()=>this._afterEase(t)),e),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(e,t){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),this._easeFrameId=void 0,this._onEaseFrame=void 0),this._onEaseEnd){const e=this._onEaseEnd;this._onEaseEnd=void 0,e.call(this,t)}if(!e){const e=this.handlers;e&&e.stop(!1)}return this}_ease(e,t,i){!1===i.animate||0===i.duration?(e(1),t()):(this._easeStart=dt.now(),this._easeOptions=i,this._onEaseFrame=e,this._onEaseEnd=t,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_renderFrameCallback(){const e=Math.min((dt.now()-this._easeStart)/this._easeOptions.duration,1),t=this._onEaseFrame;t&&t(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()}_normalizeBearing(e,t){e=z(e,-180,180);const i=Math.abs(e-t);return Math.abs(e-360-t)180?-360:i<-180?360:0}_prefersReducedMotion(e){return this._respectPrefersReducedMotion&&dt.prefersReducedMotion&&!(e&&e.essential)}_emulate(e,t,i){const r=Math.ceil(15*t/1e3),n=[],o=e(i.clone());for(let e=0;e<=r;e++){const t=o(e/r);n.push(t.clone())}return n}}class iI{constructor(e={}){this.options=e,V(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)}getDefaultPosition(){return"bottom-right"}onAdd(e){const t=this.options&&this.options.compact;return this._map=e,this._container=pt("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=pt("button","mapboxgl-ctrl-attrib-button",this._container),pt("span","mapboxgl-ctrl-icon",this._compactButton).setAttribute("aria-hidden","true"),this._compactButton.type="button",this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=pt("div","mapboxgl-ctrl-attrib-inner",this._container),t&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),void 0===t&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container}onRemove(){this._container.remove(),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0}_setElementTitle(e,t){const i=this._map._getUIString(`AttributionControl.${t}`);e.removeAttribute("title"),e.firstElementChild&&e.firstElementChild.setAttribute("title",i)}_toggleAttribution(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-expanded","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-expanded","true"))}_updateEditLink(){let e=this._editLink;e||(e=this._editLink=this._container.querySelector(".mapbox-improve-map"));const t=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||n.ACCESS_TOKEN}];if(e){const i=t.reduce(((e,i,r)=>(i.value&&(e+=`${i.key}=${i.value}${re.length-t.length)),e=e.filter(((t,i)=>{for(let r=i+1;r=0)return!1;return!0})),this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?e=[...this.options.customAttribution,...e]:e.unshift(this.options.customAttribution));const i=e.join(" | ");i!==this._attribHTML&&(this._attribHTML=i,e.length?(this._innerContainer.innerHTML=i,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}_updateCompact(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")}}class rI{constructor(){V(["_updateLogo","_updateCompact"],this)}onAdd(e){this._map=e,this._container=pt("div","mapboxgl-ctrl");const t=pt("a","mapboxgl-ctrl-logo");return t.target="_blank",t.rel="noopener nofollow",t.href="https://www.mapbox.com/",t.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),t.setAttribute("rel","noopener nofollow"),this._container.appendChild(t),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){this._container.remove(),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)}getDefaultPosition(){return"bottom-left"}_updateLogo(e){e&&"metadata"!==e.sourceDataType||(this._container.style.display=this._logoRequired()?"block":"none")}_logoRequired(){if(!this._map.style)return!0;const e=this._map.style._sourceCaches;if(0===Object.entries(e).length)return!0;for(const t in e){const i=e[t].getSource();if(i.hasOwnProperty("mapbox_logo")&&!i.mapbox_logo)return!1}return!0}_updateCompact(){const e=this._container.children;if(e.length){const t=e[0];this._map.getCanvasContainer().offsetWidth<250?t.classList.add("mapboxgl-compact"):t.classList.remove("mapboxgl-compact")}}}class nI{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(e){const t=++this._id;return this._queue.push({callback:e,id:t,cancelled:!1}),t}remove(e){const t=this._currentlyRunning,i=t?this._queue.concat(t):this._queue;for(const t of i)if(t.id===e)return void(t.cancelled=!0)}run(e=0){const t=this._currentlyRunning=this._queue;this._queue=[];for(const i of t)if(!i.cancelled&&(i.callback(e),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}function oI(e,t,i){if(e=new Hd(e.lng,e.lat),t){const r=new Hd(e.lng-360,e.lat),n=new Hd(e.lng+360,e.lat),o=360*Math.ceil(Math.abs(e.lng-i.center.lng)/360),s=i.locationPoint(e).distSqr(t),a=t.x<0||t.y<0||t.x>i.width||t.y>i.height;i.locationPoint(r).distSqr(t)180;){const t=i.locationPoint(e);if(t.x>=0&&t.y>=0&&t.x<=i.width&&t.y<=i.height)break;e.lng>i.center.lng?e.lng-=360:e.lng+=360}return e}const sI={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};class aI extends kt{constructor(e,i){if(super(),(e instanceof t.HTMLElement||i)&&(e=R({element:e},i)),V(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress","_clearFadeTimer"],this),this._anchor=e&&e.anchor||"center",this._color=e&&e.color||"#3FB1CE",this._scale=e&&e.scale||1,this._draggable=e&&e.draggable||!1,this._clickTolerance=e&&e.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=e&&e.rotation||0,this._rotationAlignment=e&&e.rotationAlignment||"auto",this._pitchAlignment=e&&e.pitchAlignment&&e.pitchAlignment||"auto",this._updateMoving=()=>this._update(!0),this._occludedOpacity=e&&e.occludedOpacity||.2,e&&e.element)this._element=e.element,this._offset=y.convert(e&&e.offset||[0,0]);else{this._defaultMarker=!0,this._element=pt("div");const t=41,i=27,r=ft("svg",{display:"block",height:t*this._scale+"px",width:i*this._scale+"px",viewBox:`0 0 ${i} ${t}`},this._element),n=ft("radialGradient",{id:"shadowGradient"},ft("defs",{},r));ft("stop",{offset:"10%","stop-opacity":.4},n),ft("stop",{offset:"100%","stop-opacity":.05},n),ft("ellipse",{cx:13.5,cy:34.8,rx:10.5,ry:5.25,fill:"url(#shadowGradient)"},r),ft("path",{fill:this._color,d:"M27,13.5C27,19.07 20.25,27 14.75,34.5C14.02,35.5 12.98,35.5 12.25,34.5C6.75,27 0,19.22 0,13.5C0,6.04 6.04,0 13.5,0C20.96,0 27,6.04 27,13.5Z"},r),ft("path",{opacity:.25,d:"M13.5,0C6.04,0 0,6.04 0,13.5C0,19.22 6.75,27 12.25,34.5C13,35.52 14.02,35.5 14.75,34.5C20.25,27 27,19.07 27,13.5C27,6.04 20.96,0 13.5,0ZM13.5,1C20.42,1 26,6.58 26,13.5C26,15.9 24.5,19.18 22.22,22.74C19.95,26.3 16.71,30.14 13.94,33.91C13.74,34.18 13.61,34.32 13.5,34.44C13.39,34.32 13.26,34.18 13.06,33.91C10.28,30.13 7.41,26.31 5.02,22.77C2.62,19.23 1,15.95 1,13.5C1,6.58 6.58,1 13.5,1Z"},r),ft("circle",{fill:"white",cx:13.5,cy:13.5,r:5.5},r),this._offset=y.convert(e&&e.offset||[0,-14])}this._element.hasAttribute("aria-label")||this._element.setAttribute("aria-label","Map marker"),this._element.hasAttribute("role")||this._element.setAttribute("role","img"),this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",(e=>{e.preventDefault()})),this._element.addEventListener("mousedown",(e=>{e.preventDefault()}));const r=this._element.classList;for(const e in sI)r.remove(`mapboxgl-marker-anchor-${e}`);r.add(`mapboxgl-marker-anchor-${this._anchor}`);const n=e&&e.className?e.className.trim().split(/\s+/):[];r.add(...n),this._popup=null}addTo(e){return e===this._map||(this.remove(),this._map=e,e.getCanvasContainer().appendChild(this._element),e.on("move",this._updateMoving),e.on("moveend",this._update),e.on("remove",this._clearFadeTimer),e._addMarker(this),this.setDraggable(this._draggable),this._update(),e.on("click",this._onMapClick)),this}remove(){const e=this._map;return e&&(e.off("click",this._onMapClick),e.off("move",this._updateMoving),e.off("moveend",this._update),e.off("mousedown",this._addDragHandler),e.off("touchstart",this._addDragHandler),e.off("mouseup",this._onUp),e.off("touchend",this._onUp),e.off("mousemove",this._onMove),e.off("touchmove",this._onMove),e.off("remove",this._clearFadeTimer),e._removeMarker(this),this._map=void 0),this._clearFadeTimer(),this._element.remove(),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(e){return this._lngLat=Hd.convert(e),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(!0),this}getElement(){return this._element}setPopup(e){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeAttribute("role"),this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),e){if(!("offset"in e.options)){const t=38.1,i=13.5,r=Math.sqrt(Math.pow(i,2)/2);e.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-t],"bottom-left":[r,-1*(t-i+r)],"bottom-right":[-r,-1*(t-i+r)],left:[i,-1*(t-i)],right:[-i,-1*(t-i)]}:this._offset}this._popup=e,e._marker=this,this._lngLat&&this._popup.setLngLat(this._lngLat),this._element.setAttribute("role","button"),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress),this._element.setAttribute("aria-expanded","false")}return this}_onKeyPress(e){const t=e.code,i=e.charCode||e.keyCode;"Space"!==t&&"Enter"!==t&&32!==i&&13!==i||this.togglePopup()}_onMapClick(e){const t=e.originalEvent.target,i=this._element;this._popup&&(t===i||i.contains(t))&&this.togglePopup()}getPopup(){return this._popup}togglePopup(){const e=this._popup;return e?(e.isOpen()?(e.remove(),this._element.setAttribute("aria-expanded","false")):this._map&&(e.addTo(this._map),this._element.setAttribute("aria-expanded","true")),this):this}_behindTerrain(){const e=this._map,t=this._pos;if(!e||!t)return!1;const i=e.unproject(t),r=e.getFreeCameraOptions();if(!r.position)return!1;const n=r.position.toLngLat();return n.distanceTo(i)<.9*n.distanceTo(this._lngLat)}_evaluateOpacity(){const e=this._map;if(!e)return;const t=this._pos;if(!t||t.x<0||t.x>e.transform.width||t.y<0||t.y>e.transform.height)return void this._clearFadeTimer();const i=e.unproject(t);let r;e._showingGlobe()&&Nd(e.transform,this._lngLat)?r=0:(r=1-e._queryFogOpacity(i),e.transform._terrainEnabled()&&e.getTerrain()&&this._behindTerrain()&&(r*=this._occludedOpacity)),this._element.style.opacity=`${r}`,this._element.style.pointerEvents=r>0?"auto":"none",this._popup&&this._popup._setOpacity(r),this._fadeTimer=null}_clearFadeTimer(){this._fadeTimer&&(clearTimeout(this._fadeTimer),this._fadeTimer=null)}_updateDOM(){const e=this._pos;if(!e||!this._map)return;const t=this._offset.mult(this._scale);this._element.style.transform=`\n translate(${e.x}px,${e.y}px)\n ${sI[this._anchor]}\n ${this._calculateXYTransform()} ${this._calculateZTransform()}\n translate(${t.x}px,${t.y}px)\n `}_calculateXYTransform(){const e=this._pos,t=this._map,i=this.getPitchAlignment();if(!t||!e||"map"!==i)return"";if(!t._showingGlobe()){const e=t.getPitch();return e?`rotateX(${e}deg)`:""}const r=T(Fd(t.transform,this._lngLat)),n=e.sub(Bd(t.transform)),o=Math.abs(n.x)+Math.abs(n.y);if(0===o)return"";const s=r/o;return`rotateX(${-n.y*s}deg) rotateY(${n.x*s}deg)`}_calculateZTransform(){const e=this._pos,t=this._map;if(!t||!e)return"";let i=0;const r=this.getRotationAlignment();if("map"===r)if(t._showingGlobe()){const e=t.project(new Hd(this._lngLat.lng,this._lngLat.lat+.001)),r=t.project(new Hd(this._lngLat.lng,this._lngLat.lat-.001)).sub(e);i=T(Math.atan2(r.y,r.x))-90}else i=-t.getBearing();else if("horizon"===r){const r=P(4,6,t.getZoom()),n=Bd(t.transform);n.y+=r*t.transform.height;const o=e.sub(n),s=T(Math.atan2(o.y,o.x));i=(s>90?s-270:s+90)*(1-r)}return i+=this._rotation,i?`rotateZ(${i}deg)`:""}_update(e){t.cancelAnimationFrame(this._updateFrameId);const i=this._map;i&&(i.transform.renderWorldCopies&&(this._lngLat=oI(this._lngLat,this._pos,i.transform)),this._pos=i.project(this._lngLat),!0===e?this._updateFrameId=t.requestAnimationFrame((()=>{this._element&&this._pos&&this._anchor&&(this._pos=this._pos.round(),this._updateDOM())})):this._pos=this._pos.round(),i._requestDomTask((()=>{this._map&&(this._element&&this._pos&&this._anchor&&this._updateDOM(),(i._showingGlobe()||i.getTerrain()||i.getFog())&&!this._fadeTimer&&(this._fadeTimer=setTimeout(this._evaluateOpacity.bind(this),60)))})))}getOffset(){return this._offset}setOffset(e){return this._offset=y.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 t=this._map;if(!t)return;const i=this._pointerdownPos,r=this._positionDelta;if(i&&r){if(!this._isDragging){const r=this._clickTolerance||t._clickTolerance;if(e.point.dist(i)=this._endTime)return this._end;const t=A((e-this._startTime)/(this._endTime-this._startTime));return this._start*(1-t)+this._end*t}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,t,i){this._start=this.getValue(t),this._end=e,this._startTime=t,this._endTime=t+i}}const dI={"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"},pI={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},fI={showCompass:!0,showZoom:!0,visualizePitch:!1};class mI{constructor(e,t,i=!1){this._clickTolerance=10,this.element=t,this.mouseRotate=new MM({clickTolerance:e.dragRotate._mouseRotate._clickTolerance}),this.map=e,i&&(this.mousePitch=new IM({clickTolerance:e.dragRotate._mousePitch._clickTolerance})),V(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),t.addEventListener("mousedown",this.mousedown),t.addEventListener("touchstart",this.touchstart,{passive:!1}),t.addEventListener("touchmove",this.touchmove),t.addEventListener("touchend",this.touchend),t.addEventListener("touchcancel",this.reset)}down(e,t){this.mouseRotate.mousedown(e,t),this.mousePitch&&this.mousePitch.mousedown(e,t),yt()}move(e,t){const i=this.map,r=this.mouseRotate.mousemoveWindow(e,t),n=r&&r.bearingDelta;if(n&&i.setBearing(i.getBearing()+n),this.mousePitch){const r=this.mousePitch.mousemoveWindow(e,t),n=r&&r.pitchDelta;n&&i.setPitch(i.getPitch()+n)}}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(){xt(),t.removeEventListener("mousemove",this.mousemove),t.removeEventListener("mouseup",this.mouseup)}mousedown(e){this.down(R({},e,{ctrlKey:!0,preventDefault:()=>e.preventDefault()}),wt(this.element,e)),t.addEventListener("mousemove",this.mousemove),t.addEventListener("mouseup",this.mouseup)}mousemove(e){this.move(e,wt(this.element,e))}mouseup(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp()}touchstart(e){1!==e.targetTouches.length?this.reset():(this._startPos=this._lastPos=Tt(this.element,e.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:()=>e.preventDefault()},this._startPos))}touchmove(e){1!==e.targetTouches.length?this.reset():(this._lastPos=Tt(this.element,e.targetTouches)[0],this.move({preventDefault:()=>e.preventDefault()},this._lastPos))}touchend(e){0===e.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)e.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=e.minPitch&&e.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=e.maxPitch&&e.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(e.antialias&&function(e){const t=e.navigator?e.navigator.userAgent:null;return!!function(e){if(null==te){const t=e.navigator?e.navigator.userAgent:null;te=!!e.safari||!(!t||!(/\b(iPad|iPhone|iPod)\b/.test(t)||t.match("Safari")&&!t.match("Chrome")))}return te}(e)&&t&&(t.match("Version/15.4")||t.match("Version/15.5")||t.match(/CPU (OS|iPhone OS) (15_4|15_5) like Mac OS X/))}(t)&&(e.antialias=!1,W("Antialiasing is disabled for this WebGL context to avoid browser bug: https://github.com/mapbox/mapbox-gl-js/issues/11609")),super(new Tv(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies),e),this._interactive=e.interactive,this._minTileCacheSize=e.minTileCacheSize,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._isInitialLoad=!0,this._crossSourceCollisions=e.crossSourceCollisions,this._collectResourceTiming=e.collectResourceTiming,this._language=this._parseLanguage(e.language),this._worldview=e.worldview,this._renderTaskQueue=new nI,this._domRenderTaskQueue=new nI,this._controls=[],this._markers=[],this._popups=[],this._mapId=F(),this._locale=R({},dI,e.locale),this._clickTolerance=e.clickTolerance,this._cooperativeGestures=e.cooperativeGestures,this._performanceMetricsCollection=e.performanceMetricsCollection,this._containerWidth=0,this._containerHeight=0,this._averageElevationLastSampledAt=-1/0,this._averageElevationExaggeration=0,this._averageElevation=new uI(0),this._interactionRange=[1/0,-1/0],this._visibilityHidden=0,this._useExplicitProjection=!1,this._requestManager=new ke(e.transformRequest,e.accessToken,e.testMode),this._silenceAuthErrors=!!e.testMode,this._contextCreateOptions=e.contextCreateOptions?{...e.contextCreateOptions}:{},"string"==typeof e.container){if(this._container=t.document.getElementById(e.container),!this._container)throw new Error(`Container '${e.container.toString()}' not found.`)}else{if(!(e.container instanceof t.HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=e.container}if(this._container.childNodes.length>0&&W("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."),e.maxBounds&&this.setMaxBounds(e.maxBounds),V(["_onWindowOnline","_onWindowResize","_onVisibilityChange","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)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))),void 0!==t&&(this._fullscreenchangeEvent="onfullscreenchange"in t.document?"fullscreenchange":"webkitfullscreenchange",t.addEventListener("online",this._onWindowOnline,!1),t.addEventListener("resize",this._onWindowResize,!1),t.addEventListener("orientationchange",this._onWindowResize,!1),t.addEventListener(this._fullscreenchangeEvent,this._onWindowResize,!1),t.addEventListener("visibilitychange",this._onVisibilityChange,!1)),this.handlers=new QM(this,e),this._localFontFamily=e.localFontFamily,this._localIdeographFontFamily=e.localIdeographFontFamily,(e.style||!e.testMode)&&this.setStyle(e.style||n.DEFAULT_STYLE,{localFontFamily:this._localFontFamily,localIdeographFontFamily:this._localIdeographFontFamily}),e.projection&&this.setProjection(e.projection),e.hash&&(this._hash=new nM("string"==typeof e.hash&&e.hash||void 0).addTo(this)),!this._hash||!this._hash._onHashChange()){null==i.center&&null==i.zoom||(this.transform._unmodified=!1),this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch});const t=e.bounds;t&&(this.resize(),this.fitBounds(t,R({},e.fitBoundsOptions,{duration:0})))}this.resize(),e.attributionControl&&this.addControl(new iI({customAttribution:e.customAttribution})),this._logoControl=new rI,this.addControl(this._logoControl,e.logoPosition),this.on("style.load",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)})),this.on("data",(e=>{this._update("style"===e.dataType),this.fire(new It(`${e.dataType}data`,e))})),this.on("dataloading",(e=>{this.fire(new It(`${e.dataType}dataloading`,e))}))}_getMapId(){return this._mapId}addControl(e,t){if(void 0===t&&(t=e.getDefaultPosition?e.getDefaultPosition():"top-right"),!e||!e.onAdd)return this.fire(new Ct(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));const i=e.onAdd(this);this._controls.push(e);const r=this._controlPositions[t];return-1!==t.indexOf("bottom")?r.insertBefore(i,r.firstChild):r.appendChild(i),this}removeControl(e){if(!e||!e.onRemove)return this.fire(new Ct(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const t=this._controls.indexOf(e);return t>-1&&this._controls.splice(t,1),e.onRemove(this),this}hasControl(e){return this._controls.indexOf(e)>-1}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}resize(e){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 t=!this._moving;return t&&this.fire(new It("movestart",e)).fire(new It("move",e)),this.fire(new It("resize",e)),t&&this.fire(new It("moveend",e)),this}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()||null}setMaxBounds(e){return this.transform.setMaxBounds(sc.convert(e)),this._update()}setMinZoom(e){if((e=null==e?-2:e)>=-2&&e<=this.transform.maxZoom)return this.transform.minZoom=e,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=e,this._update(),this.getZoom()>e?this.setZoom(e):this.fire(new It("zoomstart")).fire(new It("zoom")).fire(new It("zoomend")),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(e){if((e=null==e?0:e)<0)throw new Error("minPitch must be greater than or equal to 0");if(e>=0&&e<=this.transform.maxPitch)return this.transform.minPitch=e,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(e>=this.transform.minPitch)return this.transform.maxPitch=e,this._update(),this.getPitch()>e?this.setPitch(e):this.fire(new It("pitchstart")).fire(new It("pitch")).fire(new It("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(e){return this.transform.renderWorldCopies=e,this.transform.renderWorldCopies||this._forceMarkerAndPopupUpdate(!0),this._update()}getLanguage(){return this._language}_parseLanguage(e){return"auto"===e?t.navigator.language:Array.isArray(e)?0===e.length?void 0:e.map((e=>"auto"===e?t.navigator.language:e)):e}setLanguage(e){const t=this._parseLanguage(e);if(!this.style||t===this._language)return this;this._language=t,this.style.reloadSources();for(const e of this._controls)e._setLanguage&&e._setLanguage(this._language);return this}getWorldview(){return this._worldview}setWorldview(e){return this.style&&e!==this._worldview?(this._worldview=e,this.style.reloadSources(),this):this}getProjection(){return this.transform.mercatorFromTransition?{name:"globe",center:[0,0]}:this.transform.getProjection()}_showingGlobe(){return"globe"===this.transform.projection.name}setProjection(e){return this._lazyInitEmptyStyle(),e?"string"==typeof e&&(e={name:e}):e=null,this._useExplicitProjection=!!e,this._prioritizeAndUpdateProjection(e,this.style.projection)}_updateProjectionTransition(){if("globe"!==this.getProjection().name)return;const e=this.transform,t=e.projection.name;let i;"globe"===t&&e.zoom>=id?(e.setMercatorFromTransition(),i=!0):"mercator"===t&&e.zoom=id?this.transform.setMercatorFromTransition():this.transform.setProjection(e),this.style.applyProjectionUpdate(),t&&(this.painter.clearBackgroundTiles(),this.style.clearSources(),this._update(!0),this._forceMarkerAndPopupUpdate(!0)),this}project(e){return this.transform.locationPoint3D(Hd.convert(e))}unproject(e){return this.transform.pointLocation3D(y.convert(e))}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(e,t,i){if("mouseenter"===e||"mouseover"===e){let r=!1;const n=n=>{const o=t.filter((e=>this.getLayer(e))),s=o.length?this.queryRenderedFeatures(n.point,{layers:o}):[];s.length?r||(r=!0,i.call(this,new fM(e,this,n.originalEvent,{features:s}))):r=!1},o=()=>{r=!1};return{layers:new Set(t),listener:i,delegates:{mousemove:n,mouseout:o}}}if("mouseleave"===e||"mouseout"===e){let r=!1;const n=n=>{const o=t.filter((e=>this.getLayer(e)));(o.length?this.queryRenderedFeatures(n.point,{layers:o}):[]).length?r=!0:r&&(r=!1,i.call(this,new fM(e,this,n.originalEvent)))},o=t=>{r&&(r=!1,i.call(this,new fM(e,this,t.originalEvent)))};return{layers:new Set(t),listener:i,delegates:{mousemove:n,mouseout:o}}}{const r=e=>{const r=t.filter((e=>this.getLayer(e))),n=r.length?this.queryRenderedFeatures(e.point,{layers:r}):[];n.length&&(e.features=n,i.call(this,e),delete e.features)};return{layers:new Set(t),listener:i,delegates:{[e]:r}}}}on(e,t,i){if(void 0===i)return super.on(e,t);if(Array.isArray(t)||(t=[t]),t)for(const e of t)if(!this._isValidId(e))return this;const r=this._createDelegatedListener(e,t,i);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(r);for(const e in r.delegates)this.on(e,r.delegates[e]);return this}once(e,t,i){if(void 0===i)return super.once(e,t);if(Array.isArray(t)||(t=[t]),t)for(const e of t)if(!this._isValidId(e))return this;const r=this._createDelegatedListener(e,t,i);for(const e in r.delegates)this.once(e,r.delegates[e]);return this}off(e,t,i){if(void 0===i)return super.off(e,t);t=new Set(Array.isArray(t)?t:[t]);for(const e of t)if(!this._isValidId(e))return this;const r=(e,t)=>{if(e.size!==t.size)return!1;for(const i of e)if(!t.has(i))return!1;return!0},n=this._delegatedListeners?this._delegatedListeners[e]:void 0;return n&&(e=>{for(let n=0;n{e?this.fire(new Ct(e)):i&&this._updateDiff(i,t)}))}else"object"==typeof e&&this._updateDiff(e,t)}_updateDiff(e,t){try{this.style.setState(e)&&this._update(!0)}catch(i){W(`Unable to perform style diff: ${i.message||i.error||i}. Rebuilding the style from scratch.`),this._updateStyle(e,t)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():(W("There is no style added to the map."),!1)}_isValidId(e){return null==e?(this.fire(new Ct(new Error("IDs can't be empty."))),!1):!xa(e)||(this.fire(new Ct(new Error(`IDs can't contain special symbols: "${e}".`))),!1)}addSource(e,t){return this._isValidId(e)?(this._lazyInitEmptyStyle(),this.style.addSource(e,t),this._update(!0)):this}isSourceLoaded(e){return!!this._isValidId(e)&&!!this.style&&this.style._isSourceCacheLoaded(e)}areTilesLoaded(){const e=this.style&&this.style._sourceCaches;for(const t in e){const i=e[t]._tiles;for(const e in i){const t=i[e];if("loaded"!==t.state&&"errored"!==t.state)return!1}}return!0}addSourceType(e,t,i){this._lazyInitEmptyStyle(),this.style.addSourceType(e,t,i)}removeSource(e){return this._isValidId(e)?(this.style.removeSource(e),this._updateTerrain(),this._update(!0)):this}getSource(e){return this._isValidId(e)?this.style.getOwnSource(e):null}addImage(e,i,{pixelRatio:r=1,sdf:n=!1,stretchX:o,stretchY:s,content:a}={}){if(this._lazyInitEmptyStyle(),i instanceof t.HTMLImageElement||t.ImageBitmap&&i instanceof t.ImageBitmap){const{width:t,height:l,data:c}=dt.getImageData(i);this.style.addImage(e,{data:new ef({width:t,height:l},c),pixelRatio:r,stretchX:o,stretchY:s,content:a,sdf:n,version:0})}else if(void 0===i.width||void 0===i.height)this.fire(new Ct(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:t,height:l}=i,c=i;this.style.addImage(e,{data:new ef({width:t,height:l},new Uint8Array(c.data)),pixelRatio:r,stretchX:o,stretchY:s,content:a,sdf:n,version:0,userImage:c}),c.onAdd&&c.onAdd(this,e)}}updateImage(e,i){this._lazyInitEmptyStyle();const r=this.style.getImage(e);if(!r)return void this.fire(new Ct(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const n=i instanceof t.HTMLImageElement||t.ImageBitmap&&i instanceof t.ImageBitmap?dt.getImageData(i):i,{width:o,height:s}=n;void 0!==o&&void 0!==s?o===r.data.width&&s===r.data.height?(r.data.replace(n.data,!(i instanceof t.HTMLImageElement||t.ImageBitmap&&i instanceof t.ImageBitmap)),this.style.updateImage(e,r)):this.fire(new Ct(new Error(`The width and height of the updated image (${o}, ${s})\n must be that same as the previous version of the image\n (${r.data.width}, ${r.data.height})`))):this.fire(new Ct(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(e){return e?!!this.style&&!!this.style.getImage(e):(this.fire(new Ct(new Error("Missing required image id"))),!1)}removeImage(e){this.style.removeImage(e)}loadImage(e,i){Ie(this._requestManager.transformRequest(e,ye.Image),((e,r)=>{i(e,r instanceof t.HTMLImageElement?dt.getImageData(r):r)}))}listImages(){return this.style.listImages()}addModel(e,t){this._lazyInitEmptyStyle(),this.style.addModel(e,t)}hasModel(e){return e?this.style.hasModel(e):(this.fire(new Ct(new Error("Missing required model id"))),!1)}removeModel(e){this.style.removeModel(e)}listModels(){return this.style.listModels()}addLayer(e,t){return this._isValidId(e.id)?(this._lazyInitEmptyStyle(),this.style.addLayer(e,t),this._update(!0)):this}moveLayer(e,t){return this._isValidId(e)?(this.style.moveLayer(e,t),this._update(!0)):this}removeLayer(e){return this._isValidId(e)?(this.style.removeLayer(e),this._update(!0)):this}getLayer(e){return this._isValidId(e)?this.style.getOwnLayer(e):null}setLayerZoomRange(e,t,i){return this._isValidId(e)?(this.style.setLayerZoomRange(e,t,i),this._update(!0)):this}setFilter(e,t,i={}){return this._isValidId(e)?(this.style.setFilter(e,t,i),this._update(!0)):this}getFilter(e){return this._isValidId(e)?this.style.getFilter(e):null}setPaintProperty(e,t,i,r={}){return this._isValidId(e)?(this.style.setPaintProperty(e,t,i,r),this._update(!0)):this}getPaintProperty(e,t){return this._isValidId(e)?this.style.getPaintProperty(e,t):null}setLayoutProperty(e,t,i,r={}){return this._isValidId(e)?(this.style.setLayoutProperty(e,t,i,r),this._update(!0)):this}getLayoutProperty(e,t){return this._isValidId(e)?this.style.getLayoutProperty(e,t):null}getConfigProperty(e,t){return this.style.getConfigProperty(e,t)}setConfigProperty(e,t,i){return this.style.setConfigProperty(e,t,i),this._update(!0)}setLights(e){if(this._lazyInitEmptyStyle(),e&&1===e.length&&"flat"===e[0].type){const t=e[0];t.properties?this.style.setFlatLight(t.properties,t.id,{}):this.style.setFlatLight({},"flat")}else this.style.setLights(e),this.painter.terrain&&(this.painter.terrain.invalidateRenderCache=!0);return this._update(!0)}getLights(){const e=this.style.getLights()||[];return 0===e.length&&e.push({id:this.style.light.id,type:"flat",properties:this.style.getFlatLight()}),e}setLight(e,t={}){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:e}])}getLight(){return console.log("The `map.getLight` function is deprecated, prefer using `map.getLights` instead."),this.style.getFlatLight()}setTerrain(e){return this._lazyInitEmptyStyle(),!e&&this.transform.projection.requiresDraping?this.style.setTerrainForDraping():this.style.setTerrain(e),this._averageElevationLastSampledAt=-1/0,this._update(!0)}getTerrain(){return this.style?this.style.getTerrain():null}setFog(e){return this._lazyInitEmptyStyle(),this.style.setFog(e),this._update(!0)}getFog(){return this.style?this.style.getFog():null}setCamera(e){return this.style.setCamera(e),this._triggerCameraUpdate(e)}_triggerCameraUpdate(e){return this._update(this.transform.setOrthographicProjectionAtLowPitch("orthographic"===e["camera-projection"]))}getCamera(){return this.style.camera}_queryFogOpacity(e){return this.style&&this.style.fog?this.style.fog.getOpacityAtLatLng(Hd.convert(e),this.transform):0}setFeatureState(e,t){return this._isValidId(e.source)?(this.style.setFeatureState(e,t),this._update()):this}removeFeatureState(e,t){return this._isValidId(e.source)?(this.style.removeFeatureState(e,t),this._update()):this}getFeatureState(e){return this._isValidId(e.source)?this.style.getFeatureState(e):null}_updateContainerDimensions(){if(!this._container)return;const e=this._container.getBoundingClientRect().width||400,i=this._container.getBoundingClientRect().height||300;let r,n,o,s=this._container;for(;s&&(!n||!o);){const e=t.getComputedStyle(s).transform;e&&"none"!==e&&(r=e.match(/matrix.*\((.+)\)/)[1].split(", "),r[0]&&"0"!==r[0]&&"1"!==r[0]&&(n=r[0]),r[3]&&"0"!==r[3]&&"1"!==r[3]&&(o=r[3])),s=s.parentElement}this._containerWidth=n?Math.abs(e/n):e,this._containerHeight=o?Math.abs(i/o):i}_detectMissingCSS(){"rgb(250, 128, 114)"!==t.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color")&&W("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 e=this._container;e.classList.add("mapboxgl-map"),(this._missingCSSCanary=pt("div","mapboxgl-canary",e)).style.visibility="hidden",this._detectMissingCSS();const t=this._canvasContainer=pt("div","mapboxgl-canvas-container",e);this._canvas=pt("canvas","mapboxgl-canvas",t),this._interactive&&(t.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 i=this._controlContainer=pt("div","mapboxgl-control-container",e),r=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach((e=>{r[e]=pt("div",`mapboxgl-ctrl-${e}`,i)})),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(e,t){const i=dt.devicePixelRatio||1;this._canvas.width=i*Math.ceil(e),this._canvas.height=i*Math.ceil(t),this._canvas.style.width=`${e}px`,this._canvas.style.height=`${t}px`}_addMarker(e){this._markers.push(e)}_removeMarker(e){const t=this._markers.indexOf(e);-1!==t&&this._markers.splice(t,1)}_addPopup(e){this._popups.push(e)}_removePopup(e){const t=this._popups.indexOf(e);-1!==t&&this._popups.splice(t,1)}_setupPainter(){const e=R({},rt.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),t=this._canvas.getContext("webgl2",e);t?(Ke(t,!0),this.painter=new jS(t,this._contextCreateOptions,this.transform),this.on("data",(e=>{"source"===e.dataType&&this.painter.setTileLoadedFlag(!0)})),o.testSupport(t)):this.fire(new Ct(new Error("Failed to initialize WebGL")))}_contextLost(e){e.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new It("webglcontextlost",{originalEvent:e}))}_contextRestored(e){this._setupPainter(),this.resize(),this._update(),this.fire(new It("webglcontextrestored",{originalEvent:e}))}_onMapScroll(e){if(e.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(e){return this.style?(this._styleDirty=this._styleDirty||e,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(e){return this._update(),this._renderTaskQueue.add(e)}_cancelRenderFrame(e){this._renderTaskQueue.remove(e)}_requestDomTask(e){!this.loaded()||this.loaded()&&!this.isMoving()?e():this._domRenderTaskQueue.add(e)}_render(e){let i;this.fire(new It("renderstart"));const r=this.painter.context.extTimerQuery,n=dt.now(),o=this.painter.context.gl;if(this.listens("gpu-timing-frame")&&(i=o.createQuery(),o.beginQuery(r.TIME_ELAPSED_EXT,i)),this.painter.context.setDirty(),this.painter.setBaseState(),(this.isMoving()||this.isRotating()||this.isZooming())&&(this._interactionRange[0]=Math.min(this._interactionRange[0],t.performance.now()),this._interactionRange[1]=Math.max(this._interactionRange[1],t.performance.now())),this._renderTaskQueue.run(e),this._domRenderTaskQueue.run(e),this._removed)return;this._updateProjectionTransition();const s=this._isInitialLoad?0:this._fadeDuration;if(this.style&&this._styleDirty){this._styleDirty=!1;const e=this.transform.zoom,t=this.transform.pitch,i=dt.now(),r=new oa(e,{now:i,fadeDuration:s,pitch:t,transition:this.style.transition});this.style.update(r)}this.style&&this.style.hasFogTransition()&&(this.style._markersNeedUpdate=!0,this._sourcesDirty=!0);let a=!1;if(this.style&&this._sourcesDirty?(this._sourcesDirty=!1,this.painter._updateFog(this.style),this._updateTerrain(),a=this._updateAverageElevation(n),this.style.updateSources(this.transform),this._forceMarkerAndPopupUpdate()):a=this._updateAverageElevation(n),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 It("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new It("load"))),this.style&&this.style.hasTransitions()&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),i){const e=dt.now()-n;o.endQuery(r.TIME_ELAPSED_EXT),setTimeout((()=>{const r=o.getQueryParameter(i,o.QUERY_RESULT)/1e6;o.deleteQuery(i),this.fire(new It("gpu-timing-frame",{cpuTime:e,gpuTime:r})),t.performance.mark("frame-gpu",{startTime:n,detail:{gpuTime:r}})}),50)}if(this.listens("gpu-timing-layer")){const e=this.painter.collectGpuTimers();setTimeout((()=>{const t=this.painter.queryGpuTimers(e);this.fire(new It("gpu-timing-layer",{layerTimes:t}))}),50)}if(this.listens("gpu-timing-deferred-render")){const e=this.painter.collectDeferredRenderGpuQueries();setTimeout((()=>{const t=this.painter.queryGpuTimeDeferredRender(e);this.fire(new It("gpu-timing-deferred-render",{gpuTime:t}))}),50)}const l=this._sourcesDirty||this._styleDirty||this._placementDirty||a;if(l||this._repaint)this.triggerRepaint();else{const e=!this.isMoving()&&this.loaded();if(e&&(a=this._updateAverageElevation(n,!0)),a)this.triggerRepaint();else if(this._triggerFrame(!1),e&&(this.fire(new It("idle")),this._isInitialLoad=!1,this.speedIndexTiming)){const e=this._calculateSpeedIndex();this.fire(new It("speedindexcompleted",{speedIndex:e})),this.speedIndexTiming=!1}}!this._loaded||this._fullyLoaded||l||(this._fullyLoaded=!0,Qe.mark(Je.fullLoad),this._performanceMetricsCollection&&He(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(e){for(const t of this._markers)e&&!this.getRenderWorldCopies()&&(t._lngLat=t._lngLat.wrap()),t._update();for(const t of this._popups)!e||this.getRenderWorldCopies()||t._trackPointer||(t._lngLat=t._lngLat.wrap()),t._update()}_updateAverageElevation(e,t=!1){const i=e=>(this.transform.averageElevation=e,this._update(!1),!0);if(!this.painter.averageElevationNeedsEasing())return 0!==this.transform.averageElevation&&i(0);const r=this.transform.elevation&&this.transform.elevation.exaggeration()!==this._averageElevationExaggeration;if(r||(t||e-this._averageElevationLastSampledAt>500)&&!this._averageElevation.isEasing(e)){const t=this.transform.averageElevation;let n=this.transform.sampleAverageElevation();this.transform.elevation&&(this._averageElevationExaggeration=this.transform.elevation.exaggeration()),isNaN(n)?n=0:this._averageElevationLastSampledAt=e;const o=Math.abs(t-n);if(o>1){if(this._isInitialLoad||r)return this._averageElevation.jumpTo(n),i(n);this._averageElevation.easeTo(n,e,300)}else if(o>1e-4)return this._averageElevation.jumpTo(n),i(n)}return!!this._averageElevation.isEasing(e)&&i(this._averageElevation.getValue(e))}_authenticate(){Xe(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(e=>{if(e&&(e.message===Ce||401===e.status)){const e=this.painter.context.gl;Ke(e,!1),this._logoControl instanceof rI&&this._logoControl._updateLogo(),e&&e.clear(e.DEPTH_BUFFER_BIT|e.COLOR_BUFFER_BIT|e.STENCIL_BUFFER_BIT),this._silenceAuthErrors||this.fire(new Ct(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/")))}})),qe(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(()=>{}))}_updateTerrain(){const e=this._isDragging();this.painter.updateTerrain(this.style,e)}_calculateSpeedIndex(){const e=this.painter.canvasCopy(),t=this.painter.getCanvasCopiesAndTimestamps();t.timeStamps.push(performance.now());const i=this.painter.context.gl,r=i.createFramebuffer();function n(e){i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,e,0);const t=new Uint8Array(i.drawingBufferWidth*i.drawingBufferHeight*4);return i.readPixels(0,0,i.drawingBufferWidth,i.drawingBufferHeight,i.RGBA,i.UNSIGNED_BYTE,t),t}return i.bindFramebuffer(i.FRAMEBUFFER,r),this._canvasPixelComparison(n(e),t.canvasCopies.map(n),t.timeStamps)}_canvasPixelComparison(e,t,i){let r=i[1]-i[0];const n=e.length/4;for(let o=0;o{const t=!!this._renderNextFrame;this._frame=null,this._renderNextFrame=null,t&&this._render(e)})))}_preloadTiles(e){return L(this.style?Object.values(this.style._sourceCaches):[],((t,i)=>t._preloadTiles(e,i)),(()=>{this.triggerRepaint()})),this}_onWindowOnline(){this._update()}_onWindowResize(e){this._trackResize&&this.resize({originalEvent:e})._update()}_onVisibilityChange(){"hidden"===t.document.visibilityState&&this._visibilityHidden++}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(e){this._showTileBoundaries!==e&&(this._showTileBoundaries=e,this._update())}get showTerrainWireframe(){return!!this._showTerrainWireframe}set showTerrainWireframe(e){this._showTerrainWireframe!==e&&(this._showTerrainWireframe=e,this._update())}get showLayers2DWireframe(){return!!this._showLayers2DWireframe}set showLayers2DWireframe(e){this._showLayers2DWireframe!==e&&(this._showLayers2DWireframe=e,this._update())}get showLayers3DWireframe(){return!!this._showLayers3DWireframe}set showLayers3DWireframe(e){this._showLayers3DWireframe!==e&&(this._showLayers3DWireframe=e,this._update())}get speedIndexTiming(){return!!this._speedIndexTiming}set speedIndexTiming(e){this._speedIndexTiming!==e&&(this._speedIndexTiming=e,this._update())}get showPadding(){return!!this._showPadding}set showPadding(e){this._showPadding!==e&&(this._showPadding=e,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(e){this._showCollisionBoxes!==e&&(this._showCollisionBoxes=e,e?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(e){this._showOverdrawInspector!==e&&(this._showOverdrawInspector=e,this._update())}get repaint(){return!!this._repaint}set repaint(e){this._repaint!==e&&(this._repaint=e,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(e){this._vertices=e,this._update()}get showTileAABBs(){return!!this._showTileAABBs}set showTileAABBs(e){this._showTileAABBs!==e&&(this._showTileAABBs=e,e&&this._update())}_setCacheLimits(e,t){!function(e,t){ue=e,de=t}(e,t)}get version(){return i}},NavigationControl:class{constructor(e){this.options=R({},fI,e),this._container=pt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",(e=>e.preventDefault())),this.options.showZoom&&(V(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",(e=>{this._map&&this._map.zoomIn({},{originalEvent:e})})),pt("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})})),pt("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(V(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",(e=>{const t=this._map;t&&(this.options.visualizePitch?t.resetNorthPitch({},{originalEvent:e}):t.resetNorth({},{originalEvent:e}))})),this._compassIcon=pt("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}_updateZoomButtons(){const e=this._map;if(!e)return;const t=e.getZoom(),i=t===e.getMaxZoom(),r=t===e.getMinZoom();this._zoomInButton.disabled=i,this._zoomOutButton.disabled=r,this._zoomInButton.setAttribute("aria-disabled",i.toString()),this._zoomOutButton.setAttribute("aria-disabled",r.toString())}_rotateCompassArrow(){const e=this._map;if(!e)return;const t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(e.transform.pitch*(Math.PI/180)),.5)}) rotateX(${e.transform.pitch}deg) rotateZ(${e.transform.angle*(180/Math.PI)}deg)`:`rotate(${e.transform.angle*(180/Math.PI)}deg)`;e._requestDomTask((()=>{this._compassIcon&&(this._compassIcon.style.transform=t)}))}onAdd(e){return this._map=e,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),e.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&e.on("pitch",this._rotateCompassArrow),e.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new mI(e,this._compass,this.options.visualizePitch)),this._container}onRemove(){const e=this._map;e&&(this._container.remove(),this.options.showZoom&&e.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&e.off("pitch",this._rotateCompassArrow),e.off("rotate",this._rotateCompassArrow),this._handler&&this._handler.off(),this._handler=void 0),this._map=void 0)}_createButton(e,t){const i=pt("button",e,this._container);return i.type="button",i.addEventListener("click",t),i}_setButtonTitle(e,t){if(!this._map)return;const i=this._map._getUIString(`NavigationControl.${t}`);e.setAttribute("aria-label",i),e.firstElementChild&&e.firstElementChild.setAttribute("title",i)}},GeolocateControl:class extends kt{constructor(e){super(),this.options=R({geolocation:t.navigator.geolocation},_I,e),V(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker","_updateMarkerRotation","_onDeviceOrientation"],this),this._updateMarkerRotationThrottled=rM(this._updateMarkerRotation,20),this._numberOfWatches=0}onAdd(e){return this._map=e,this._container=pt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkGeolocationSupport(this._setupUI),this._container}onRemove(){void 0!==this._geolocationWatchID&&(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(e){const i=(t=!!this.options.geolocation)=>{this._supportsGeolocation=t,e(t)};void 0!==this._supportsGeolocation?e(this._supportsGeolocation):void 0!==t.navigator.permissions?t.navigator.permissions.query({name:"geolocation"}).then((e=>i("denied"!==e.state))).catch((()=>i())):i()}_isOutOfMapMaxBounds(e){const t=this._map.getMaxBounds(),i=e.coords;return!!t&&(i.longitudet.getEast()||i.latitudet.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(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new It("outofmaxbounds",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,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&&"OFF"!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._userLocationDotMarker.removeClassName("mapboxgl-user-location-dot-stale"),this.fire(new It("geolocate",e)),this._finish()}}_updateCamera(e){const t=new Hd(e.coords.longitude,e.coords.latitude),i=e.coords.accuracy,r=R({bearing:this._map.getBearing()},this.options.fitBoundsOptions);this._map.fitBounds(t.toBounds(i),r,{geolocateSource:!0})}_updateMarker(e){if(e){const t=new Hd(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(t).addTo(this._map),this._userLocationDotMarker.setLngLat(t).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()}_updateCircleRadius(){const e=this._map.transform,t=Qd(1,e._center.lat)*e.worldSize,i=Math.ceil(2*this._accuracy*t);this._circleElement.style.width=`${i}px`,this._circleElement.style.height=`${i}px`}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}_updateMarkerRotation(){this._userLocationDotMarker&&"number"==typeof this._heading?(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(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){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),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===e.code&&this._noTimeout)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._userLocationDotMarker.addClassName("mapboxgl-user-location-dot-stale"),this.fire(new It("error",e)),this._finish()}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0}_setupUI(e){if(void 0!==this._map){if(this._container.addEventListener("contextmenu",(e=>e.preventDefault())),this._geolocateButton=pt("button","mapboxgl-ctrl-geolocate",this._container),pt("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",!1===e){W("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=pt("div","mapboxgl-user-location"),this._dotElement.appendChild(pt("div","mapboxgl-user-location-dot")),this._dotElement.appendChild(pt("div","mapboxgl-user-location-heading")),this._userLocationDotMarker=new aI({element:this._dotElement,rotationAlignment:"map",pitchAlignment:"map"}),this._circleElement=pt("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new aI({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||"ACTIVE_LOCK"!==this._watchState||e.originalEvent&&"resize"===e.originalEvent.type||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this.fire(new It("trackuserlocationend")))}))}}_onDeviceOrientation(e){this._userLocationDotMarker&&(e.webkitCompassHeading?this._heading=e.webkitCompassHeading:!0===e.absolute&&(this._heading=-1*e.alpha),this._updateMarkerRotationThrottled())}trigger(){if(!this._setup)return W("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new It("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 It("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 It("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("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let e;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),this._numberOfWatches++,this._numberOfWatches>1?(e={maximumAge:6e5,timeout:0},this._noTimeout=!0):(e=this.options.positionOptions,this._noTimeout=!1),this._geolocationWatchID=this.options.geolocation.watchPosition(this._onSuccess,this._onError,e),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 e=()=>{t.addEventListener("ondeviceorientationabsolute"in t?"deviceorientationabsolute":"deviceorientation",this._onDeviceOrientation)};void 0!==t.DeviceMotionEvent&&"function"==typeof t.DeviceMotionEvent.requestPermission?DeviceOrientationEvent.requestPermission().then((t=>{"granted"===t&&e()})).catch(console.error):e()}_clearWatch(){this.options.geolocation.clearWatch(this._geolocationWatchID),t.removeEventListener("deviceorientation",this._onDeviceOrientation),t.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:iI,ScaleControl:class{constructor(e){this.options=R({},gI,e),this._isNumberFormatSupported=function(){try{return new Intl.NumberFormat("en",{style:"unit",unitDisplay:"short",unit:"meter"}),!0}catch(e){return!1}}(),V(["_update","_setScale","setUnit"],this)}getDefaultPosition(){return"bottom-left"}_update(){const e=this.options.maxWidth||100,t=this._map,i=t._containerHeight/2,r=t._containerWidth/2-e/2,n=t.unproject([r,i]),o=t.unproject([r+e,i]),s=n.distanceTo(o);if("imperial"===this.options.unit){const t=3.2808*s;t>5280?this._setScale(e,t/5280,"mile"):this._setScale(e,t,"foot")}else"nautical"===this.options.unit?this._setScale(e,s/1852,"nautical-mile"):s>=1e3?this._setScale(e,s/1e3,"kilometer"):this._setScale(e,s,"meter")}_setScale(e,t,i){this._map._requestDomTask((()=>{const r=function(e){const t=Math.pow(10,`${Math.floor(e)}`.length-1);let i=e/t;return i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:i>=1?1:function(e){const t=Math.pow(10,Math.ceil(-Math.log(e)/Math.LN10));return Math.round(e*t)/t}(i),t*i}(t),n=r/t;this._container.innerHTML=this._isNumberFormatSupported&&"nautical-mile"!==i?new Intl.NumberFormat(this._language,{style:"unit",unitDisplay:"short",unit:i}).format(r):`${r} ${yI[i]}`,this._container.style.width=e*n+"px"}))}onAdd(e){return this._map=e,this._language=e.getLanguage(),this._container=pt("div","mapboxgl-ctrl mapboxgl-ctrl-scale",e.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(e){this._language=e,this._update()}setUnit(e){this.options.unit=e,this._update()}},FullscreenControl:class{constructor(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.HTMLElement?this._container=e.container:W("Full screen control 'container' must be a DOM element.")),V(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in t.document?this._fullscreenchange="fullscreenchange":"onwebkitfullscreenchange"in t.document&&(this._fullscreenchange="webkitfullscreenchange")}onAdd(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=pt("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",W("This device does not support fullscreen mode.")),this._controlContainer}onRemove(){this._controlContainer.remove(),this._map=null,t.document.removeEventListener(this._fullscreenchange,this._changeIcon)}_checkFullscreenSupport(){return!(!t.document.fullscreenEnabled&&!t.document.webkitFullscreenEnabled)}_setupUI(){const e=this._fullscreenButton=pt("button","mapboxgl-ctrl-fullscreen",this._controlContainer);pt("span","mapboxgl-ctrl-icon",e).setAttribute("aria-hidden","true"),e.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),t.document.addEventListener(this._fullscreenchange,this._changeIcon)}_updateTitle(){const e=this._getTitle();this._fullscreenButton.setAttribute("aria-label",e),this._fullscreenButton.firstElementChild&&this._fullscreenButton.firstElementChild.setAttribute("title",e)}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_changeIcon(){(t.document.fullscreenElement||t.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()?t.document.exitFullscreen?t.document.exitFullscreen():t.document.webkitCancelFullScreen&&t.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()}},Popup:class extends kt{constructor(e){super(),this.options=R(Object.create(lI),e),V(["_update","_onClose","remove","_onMouseEvent"],this),this._classList=new Set(e&&e.className?e.className.trim().split(/\s+/):[])}addTo(e){return this._map&&this.remove(),this._map=e,this.options.closeOnClick&&e.on("preclick",this._onClose),this.options.closeOnMove&&e.on("move",this._onClose),e.on("remove",this.remove),this._update(),e._addPopup(this),this._focusFirstElement(),this._trackPointer?(e.on("mousemove",this._onMouseEvent),e.on("mouseup",this._onMouseEvent),e._canvasContainer.classList.add("mapboxgl-track-pointer")):e.on("move",this._update),this.fire(new It("open")),this}isOpen(){return!!this._map}remove(){this._content&&this._content.remove(),this._container&&(this._container.remove(),this._container=void 0);const e=this._map;return e&&(e.off("move",this._update),e.off("move",this._onClose),e.off("preclick",this._onClose),e.off("click",this._onClose),e.off("remove",this.remove),e.off("mousemove",this._onMouseEvent),e.off("mouseup",this._onMouseEvent),e.off("drag",this._onMouseEvent),e._canvasContainer&&e._canvasContainer.classList.remove("mapboxgl-track-pointer"),e._removePopup(this),this._map=void 0),this.fire(new It("close")),this}getLngLat(){return this._lngLat}setLngLat(e){this._lngLat=Hd.convert(e),this._pos=null,this._trackPointer=!1,this._update();const t=this._map;return t&&(t.on("move",this._update),t.off("mousemove",this._onMouseEvent),t._canvasContainer.classList.remove("mapboxgl-track-pointer")),this}trackPointer(){this._trackPointer=!0,this._pos=null,this._update();const e=this._map;return e&&(e.off("move",this._update),e.on("mousemove",this._onMouseEvent),e.on("drag",this._onMouseEvent),e._canvasContainer.classList.add("mapboxgl-track-pointer")),this}getElement(){return this._container}setText(e){return this.setDOMContent(t.document.createTextNode(e))}setHTML(e){const i=t.document.createDocumentFragment(),r=t.document.createElement("body");let n;for(r.innerHTML=e;n=r.firstChild,n;)i.appendChild(n);return this.setDOMContent(i)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(e){return this.options.maxWidth=e,this._update(),this}setDOMContent(e){let t=this._content;if(t)for(;t.hasChildNodes();)t.firstChild&&t.removeChild(t.firstChild);else t=this._content=pt("div","mapboxgl-popup-content",this._container||void 0);if(t.appendChild(e),this.options.closeButton){const e=this._closeButton=pt("button","mapboxgl-popup-close-button",t);e.type="button",e.setAttribute("aria-label","Close popup"),e.setAttribute("aria-hidden","true"),e.innerHTML="×",e.addEventListener("click",this._onClose)}return this._update(),this._focusFirstElement(),this}addClassName(e){return this._classList.add(e),this._updateClassList(),this}removeClassName(e){return this._classList.delete(e),this._updateClassList(),this}setOffset(e){return this.options.offset=e,this._update(),this}toggleClassName(e){let t;return this._classList.delete(e)?t=!1:(this._classList.add(e),t=!0),this._updateClassList(),t}_onMouseEvent(e){this._update(e.point)}_getAnchor(e){if(this.options.anchor)return this.options.anchor;const t=this._map,i=this._container,r=this._pos;if(!t||!i||!r)return"bottom";const n=i.offsetWidth,o=i.offsetHeight,s=r.xt.transform.width-n/2;if(r.y+et.transform.height-o){if(s)return"bottom-left";if(a)return"bottom-right"}return s?"left":a?"right":"bottom"}_updateClassList(){const e=this._container;if(!e)return;const t=[...this._classList];t.push("mapboxgl-popup"),this._anchor&&t.push(`mapboxgl-popup-anchor-${this._anchor}`),this._trackPointer&&t.push("mapboxgl-popup-track-pointer"),e.className=t.join(" ")}_update(e){const t=this._map,i=this._content;if(!t||!this._lngLat&&!this._trackPointer||!i)return;let r=this._container;if(r||(r=this._container=pt("div","mapboxgl-popup",t.getContainer()),this._tip=pt("div","mapboxgl-popup-tip",r),r.appendChild(i)),this.options.maxWidth&&r.style.maxWidth!==this.options.maxWidth&&(r.style.maxWidth=this.options.maxWidth),t.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=oI(this._lngLat,this._pos,t.transform)),!this._trackPointer||e){const i=this._pos=this._trackPointer&&e?e:t.project(this._lngLat),r=hI(this.options.offset),n=this._anchor=this._getAnchor(r.y),o=hI(this.options.offset,n),s=i.add(o).round();t._requestDomTask((()=>{this._container&&n&&(this._container.style.transform=`${sI[n]} translate(${s.x}px,${s.y}px)`)}))}if(!this._marker&&t._showingGlobe()){const e=Nd(t.transform,this._lngLat)?0:1;this._setOpacity(e)}this._updateClassList()}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const e=this._container.querySelector(cI);e&&e.focus()}_onClose(){this.remove()}_setOpacity(e){this._container&&(this._container.style.opacity=`${e}`),this._content&&(this._content.style.pointerEvents=e?"auto":"none")}},Marker:aI,Style:iM,LngLat:Hd,LngLatBounds:sc,Point:y,MercatorCoordinate:lp,FreeCameraOptions:Xx,Evented:kt,config:n,prewarm:function(){Hw().acquire($w)},clearPrewarmedResources:function(){const e=Zw;e&&(e.isPreloaded()&&1===e.numActive()?(e.release($w),Zw=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 n.ACCESS_TOKEN},set accessToken(e){n.ACCESS_TOKEN=e},get baseApiUrl(){return n.API_URL},set baseApiUrl(e){n.API_URL=e},get workerCount(){return qw.workerCount},set workerCount(e){qw.workerCount=e},get maxParallelImageRequests(){return n.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){n.MAX_PARALLEL_IMAGE_REQUESTS=e},clearStorage(e){!function(e){if(!pe())return;const i=t.caches.delete(le);e&&i.catch(e).then((()=>e()))}(e)},workerUrl:"",workerClass:null,get dracoUrl(){return Jw()},set dracoUrl(e){!function(e){Xw=dt.resolveURL(e),Kw||(Kw=new Ew(Hw(),new kt)),Kw.broadcast("setDracoUrl",Xw)}(e)},setNow:dt.setNow,restoreNow:dt.restoreNow};e.A=Tw,e.D=Ym,e.E=cr,e.F=Qm,e.K=xE,e.O=$u,e.P=y,e.T=qv,e.V=hm,e.a=Kf,e.b=fm,e.c=ow,e.d=class extends kt{constructor(e,t,i,r,n,o){super(),this.actor=e,this.layerIndex=t,this.availableImages=i,this.loadVectorData=n||jw,this.loading={},this.loaded={},this.deduped=new Nw(e.scheduler),this.isSpriteLoaded=r,this.scheduler=e.scheduler,this.brightness=o}loadTile(e,t){const i=e.uid,r=e&&e.request,n=r&&r.collectResourceTiming,o=this.loading[i]=new Bw(e);o.abort=this.loadVectorData(e,((s,a)=>{const l=!this.loading[i];if(delete this.loading[i],l||s||!a)return o.status="done",l||(this.loaded[i]=o),t(s);const c=a.rawData,h={};a.expires&&(h.expires=a.expires),a.cacheControl&&(h.cacheControl=a.cacheControl),o.vectorTile=a.vectorTile||new cm(new Rm(c));const u=()=>{o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,((e,i)=>{if(e||!i)return t(e);const o={};if(n){const e=it(r);e.length>0&&(o.resourceTiming=JSON.parse(JSON.stringify(e)))}t(null,R({rawTileData:c.slice(0)},i,h,o))}))};this.isSpriteLoaded?u():this.once("isSpriteLoaded",(()=>{this.scheduler?this.scheduler.add(u,{type:"parseTile",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom}):u()})),this.loaded=this.loaded||{},this.loaded[i]=o}))}reloadTile(e,t){const i=this.loaded,r=e.uid,n=this;if(i&&i[r]){const o=i[r];o.showCollisionBoxes=e.showCollisionBoxes,o.projection=e.projection,o.brightness=e.brightness,o.tileTransform=Pg(e.tileID.canonical,e.projection),o.extraShadowCaster=e.extraShadowCaster;const s=(e,i)=>{const r=o.reloadCallback;r&&(delete o.reloadCallback,o.parse(o.vectorTile,n.layerIndex,this.availableImages,n.actor,r)),t(e,i)};"parsing"===o.status?o.reloadCallback=s:"done"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s())}else t(null,void 0)}abortTile(e,t){const i=e.uid,r=this.loading[i];r&&(r.abort&&r.abort(),delete this.loading[i]),t()}removeTile(e,t){const i=this.loaded,r=e.uid;i&&i[r]&&delete i[r],t()}},e.e=Eo,e.f=it,e.g=d,e.h=we,e.i=Te,e.j=function(e,t){const i=TT(e);for(const e of i){for(const t of e.meshes)ET(t);e.lights&&(e.lightMeshIndex=e.meshes.length,e.meshes.push(AT(e.lights,t)))}return i},e.k=oa,e.l=function(e){let t=0;if(new Uint32Array(e,0,1)[0]!==aT){const i=new Uint32Array(e,0,7),[,,r,n,o,s]=i;t=i.byteLength+n+o+s+o,(r!==e.byteLength||t>=e.byteLength)&&W("Invalid b3dm header information.")}return pT(e,t)},e.m=ty,e.n=na,e.o=It,e.p=_,e.q=function(e){fe(),ce&&ce.then((t=>{t.keys().then((i=>{for(let r=0;rthis._layers[e.id])),i=t[0];if("none"===i.visibility)continue;const r=i.source||"";let n=this.familiesBySource[r];n||(n=this.familiesBySource[r]={});const o=i.sourceLayer||"_geojsonTileLayer";let s=n[o];s||(s=n[o]=[]),s.push(t)}}}class n{loadTile(t,i){const{uid:r,encoding:n,rawImageData:o,padding:s}=t,a=e.w.ImageBitmap&&o instanceof e.w.ImageBitmap?this.getImageData(o,s):o;i(null,new e.D(r,a,n,s<1))}getImageData(e,t){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d",{willReadFrequently:!0})),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);const i=this.offscreenCanvasContext.getImageData(-t,-t,e.width+2*t,e.height+2*t);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),i}}function o(e,t){if(0!==e.length){s(e[0],t);for(var i=1;i=Math.abs(a)?i-l+a:a-l+i,i=l}i+r>=0!=!!t&&e.reverse()}var a=e.g((function e(t,i){var r,n=t&&t.type;if("FeatureCollection"===n)for(r=0;r>31}function T(e,t){for(var i=e.loadGeometry(),r=e.type,n=0,o=0,s=i.length,a=0;ae},M=Math.fround||(I=new Float32Array(1),e=>(I[0]=+e,I[0]));var I;const C=3,k=5,P=6;class z{constructor(e){this.options=Object.assign(Object.create(S),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){const{log:t,minZoom:i,maxZoom:r}=this.options;t&&console.time("total time");const n=`prepare ${e.length} points`;t&&console.time(n),this.points=e;const o=[];for(let t=0;t=i;e--){const i=+Date.now();s=this.trees[e]=this._createTree(this._cluster(s,e)),t&&console.log("z%d: %d clusters in %dms",e,s.numItems,+Date.now()-i)}return t&&console.timeEnd("total time"),this}getClusters(e,t){let i=((e[0]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,e[1]));let n=180===e[2]?180:((e[2]+180)%360+360)%360-180;const o=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)i=-180,n=180;else if(i>n){const e=this.getClusters([i,r,180,o],t),s=this.getClusters([-180,r,n,o],t);return e.concat(s)}const s=this.trees[this._limitZoom(t)],a=s.range(R(i),O(o),R(n),O(r)),l=s.data,c=[];for(const e of a){const t=this.stride*e;c.push(l[t+k]>1?L(l,t,this.clusterProps):this.points[l[t+C]])}return c}getChildren(e){const t=this._getOriginId(e),i=this._getOriginZoom(e),r="No cluster with the specified id.",n=this.trees[i];if(!n)throw new Error(r);const o=n.data;if(t*this.stride>=o.length)throw new Error(r);const s=this.options.radius/(this.options.extent*Math.pow(2,i-1)),a=n.within(o[t*this.stride],o[t*this.stride+1],s),l=[];for(const t of a){const i=t*this.stride;o[i+4]===e&&l.push(o[i+k]>1?L(o,i,this.clusterProps):this.points[o[i+C]])}if(0===l.length)throw new Error(r);return l}getLeaves(e,t,i){const r=[];return this._appendLeaves(r,e,t=t||10,i=i||0,0),r}getTile(e,t,i){const r=this.trees[this._limitZoom(e)],n=Math.pow(2,e),{extent:o,radius:s}=this.options,a=s/o,l=(i-a)/n,c=(i+1+a)/n,h={features:[]};return this._addTileFeatures(r.range((t-a)/n,l,(t+1+a)/n,c),r.data,t,i,n,h),0===t&&this._addTileFeatures(r.range(1-a/n,l,1,c),r.data,n,i,n,h),t===n-1&&this._addTileFeatures(r.range(0,l,a/n,c),r.data,-1,i,n,h),h.features.length?h:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){const i=this.getChildren(e);if(t++,1!==i.length)break;e=i[0].properties.cluster_id}return t}_appendLeaves(e,t,i,r,n){const o=this.getChildren(t);for(const t of o){const o=t.properties;if(o&&o.cluster?n+o.point_count<=r?n+=o.point_count:n=this._appendLeaves(e,o.cluster_id,i,r,n):n1;let l,c,h;if(a)l=D(t,e,this.clusterProps),c=t[e],h=t[e+1];else{const i=this.points[t[e+C]];l=i.properties;const[r,n]=i.geometry.coordinates;c=R(r),h=O(n)}const u={type:1,geometry:[[Math.round(this.options.extent*(c*n-i)),Math.round(this.options.extent*(h*n-r))]],tags:l};let d;d=a||this.options.generateId?t[e+C]:this.points[t[e+C]].id,void 0!==d&&(u.id=d),o.features.push(u)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){const{radius:i,extent:r,reduce:n,minPoints:o}=this.options,s=i/(r*Math.pow(2,t)),a=e.data,l=[],c=this.stride;for(let i=0;it&&(p+=a[i+k])}if(p>d&&p>=o){let e,o=r*d,s=h*d,f=-1;const m=((i/c|0)<<5)+(t+1)+this.points.length;for(const r of u){const l=r*c;if(a[l+2]<=t)continue;a[l+2]=t;const h=a[l+k];o+=a[l]*h,s+=a[l+1]*h,a[l+4]=m,n&&(e||(e=this._map(a,i,!0),f=this.clusterProps.length,this.clusterProps.push(e)),n(e,this._map(a,l)))}a[i+4]=m,l.push(o/p,s/p,1/0,m,-1,p),n&&l.push(f)}else{for(let e=0;e1)for(const e of u){const i=e*c;if(!(a[i+2]<=t)){a[i+2]=t;for(let e=0;e>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,t,i){if(e[t+k]>1){const r=this.clusterProps[e[t+P]];return i?Object.assign({},r):r}const r=this.points[e[t+C]].properties,n=this.options.map(r);return i&&n===r?Object.assign({},n):n}}function L(e,t,i){return{type:"Feature",id:e[t+C],properties:D(e,t,i),geometry:{type:"Point",coordinates:[(r=e[t],360*(r-.5)),B(e[t+1])]}};var r}function D(e,t,i){const r=e[t+k],n=r>=1e4?`${Math.round(r/1e3)}k`:r>=1e3?Math.round(r/100)/10+"k":r,o=e[t+P],s=-1===o?{}:Object.assign({},i[o]);return Object.assign(s,{cluster:!0,cluster_id:e[t+C],point_count:r,point_count_abbreviated:n})}function R(e){return e/360+.5}function O(e){const t=Math.sin(e*Math.PI/180),i=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return i<0?0:i>1?1:i}function B(e){const t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}var F={exports:{}};F.exports=function(){function e(i,r,n,o){for(var s,a=o,l=n-r>>1,c=n-r,h=i[r],u=i[r+1],d=i[n],p=i[n+1],f=r+3;fa)s=f,a=m;else if(m===a){var _=Math.abs(f-l);_o&&(s-r>3&&e(i,r,s,o),i[s+2]=a,n-s>3&&e(i,s,n,o))}function t(e,t,i,r,n,o){var s=n-i,a=o-r;if(0!==s||0!==a){var l=((e-i)*s+(t-r)*a)/(s*s+a*a);l>1?(i=n,r=o):l>0&&(i+=s*l,r+=a*l)}return(s=e-i)*s+(a=t-r)*a}function i(e,t,i,n){var o={id:void 0===e?null:e,type:t,geometry:i,tags:n,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(e){var t=e.geometry,i=e.type;if("Point"===i||"MultiPoint"===i||"LineString"===i)r(e,t);else if("Polygon"===i||"MultiLineString"===i)for(var n=0;n0&&(a+=n?(o*d-u*s)/2:Math.sqrt(Math.pow(u-o,2)+Math.pow(d-s,2))),o=u,s=d}var p=i.length-3;i[2]=1,e(i,0,p,r),i[p+2]=1,i.size=Math.abs(a),i.start=0,i.end=i.size}function a(e,t,i,r){for(var n=0;n1?1:i}function h(e,t,r,n,o,s,a,l){if(n/=t,s>=(r/=t)&&a=n)return null;for(var c=[],h=0;h=r&&y=n)){var x=[];if("Point"===_||"MultiPoint"===_)u(m,x,r,n,o);else if("LineString"===_)d(m,x,r,n,o,!1,l.lineMetrics);else if("MultiLineString"===_)f(m,x,r,n,o,!1);else if("Polygon"===_)f(m,x,r,n,o,!0);else if("MultiPolygon"===_)for(var v=0;v=i&&s<=r&&(t.push(e[o]),t.push(e[o+1]),t.push(e[o+2]))}}function d(e,t,i,r,n,o,s){for(var a,l,c=p(e),h=0===n?_:g,u=e.start,d=0;di&&(l=h(c,f,y,v,b,i),s&&(c.start=u+a*l)):w>r?T=i&&(l=h(c,f,y,v,b,i),E=!0),T>r&&w<=r&&(l=h(c,f,y,v,b,r),E=!0),!o&&E&&(s&&(c.end=u+a*l),t.push(c),c=p(e)),s&&(u+=a)}var A=e.length-3;f=e[A],y=e[A+1],x=e[A+2],(w=0===n?f:y)>=i&&w<=r&&m(c,f,y,x),A=c.length-3,o&&A>=3&&(c[A]!==c[0]||c[A+1]!==c[1])&&m(c,c[0],c[1],c[2]),c.length&&t.push(c)}function p(e){var t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function f(e,t,i,r,n,o){for(var s=0;ss.maxX&&(s.maxX=h),u>s.maxY&&(s.maxY=u)}return s}function T(e,t,i,r){var n=t.geometry,o=t.type,s=[];if("Point"===o||"MultiPoint"===o)for(var a=0;a0&&t.size<(n?s:r))i.numPoints+=t.length/3;else{for(var a=[],l=0;ls)&&(i.numSimplified++,a.push(t[l]),a.push(t[l+1])),i.numPoints++;n&&function(e,t){for(var i=0,r=0,n=e.length,o=n-2;r0===t)for(r=0,n=e.length;r24)throw new Error("maxZoom should be in the 0-24 range");if(t.promoteId&&t.generateId)throw new Error("promoteId and generateId cannot be used together.");var r=function(e,t){var i=[];if("FeatureCollection"===e.type)for(var r=0;r1&&console.time("creation"),p=this.tiles[d]=w(e,t,i,r,l),this.tileCoords.push({z:t,x:i,y:r}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",t,i,r,p.numFeatures,p.numPoints,p.numSimplified),console.timeEnd("creation"));var f="z"+t;this.stats[f]=(this.stats[f]||0)+1,this.total++}if(p.source=e,n){if(t===l.maxZoom||t===n)continue;var m=1<1&&console.time("clipping");var _,g,y,x,v,b,T=.5*l.buffer/l.extent,E=.5-T,A=.5+T,M=1+T;_=g=y=x=null,v=h(e,u,i-T,i+A,0,p.minX,p.maxX,l),b=h(e,u,i+E,i+M,0,p.minX,p.maxX,l),e=null,v&&(_=h(v,u,r-T,r+A,1,p.minY,p.maxY,l),g=h(v,u,r+E,r+M,1,p.minY,p.maxY,l),v=null),b&&(y=h(b,u,r-T,r+A,1,p.minY,p.maxY,l),x=h(b,u,r+E,r+M,1,p.minY,p.maxY,l),b=null),c>1&&console.timeEnd("clipping"),a.push(_||[],t+1,2*i,2*r),a.push(g||[],t+1,2*i,2*r+1),a.push(y||[],t+1,2*i+1,2*r),a.push(x||[],t+1,2*i+1,2*r+1)}}},A.prototype.getTile=function(e,t,i){var r=this.options,n=r.extent,o=r.debug;if(e<0||e>24)return null;var s=1<1&&console.log("drilling down to z%d-%d-%d",e,t,i);for(var l,c=e,h=t,u=i;!l&&c>0;)c--,h=Math.floor(h/2),u=Math.floor(u/2),l=this.tiles[S(c,h,u)];return l&&l.source?(o>1&&console.log("found parent tile z%d-%d-%d",c,h,u),o>1&&console.time("drilling down"),this.splitTile(l.source,c,h,u,e,t,i),o>1&&console.timeEnd("drilling down"),this.tiles[a]?v(this.tiles[a],n):null):null},function(e,t){return new A(e,t)}}();var N=e.g(F.exports);function j(t,i){const r=t.tileID.canonical;if(!this._geoJSONIndex)return i(null,null);const n=this._geoJSONIndex.getTile(r.z,r.x,r.y);if(!n)return i(null,null);const o=new class{constructor(t){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.E,this.length=t.length,this._features=t}feature(t){return new class{constructor(t){this._feature=t,this.extent=e.E,this.type=t.type,this.properties=t.tags,"id"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10))}loadGeometry(){if(1===this._feature.type){const t=[];for(const i of this._feature.geometry)t.push([new e.P(i[0],i[1])]);return t}{const t=[];for(const i of this._feature.geometry){const r=[];for(const t of i)r.push(new e.P(t[0],t[1]));t.push(r)}return t}}toGeoJSON(e,t,i){return l.call(this,e,t,i)}}(this._features[t])}}(n.features);let s=A(o);0===s.byteOffset&&s.byteLength===s.buffer.byteLength||(s=new Uint8Array(s)),i(null,{vectorTile:o,rawData:s.buffer})}class U extends e.d{constructor(e,t,i,r,n,o){super(e,t,i,r,j,o),n&&(this.loadGeoJSON=n)}loadData(t,i){const r=t&&t.request,n=r&&r.collectResourceTiming;this.loadGeoJSON(t,((o,s)=>{if(o||!s)return i(o);if("object"!=typeof s)return i(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));{a(s,!0);try{if(t.filter){const i=e.e(t.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if("error"===i.result)throw new Error(i.value.map((e=>`${e.key}: ${e.message}`)).join(", "));const r=s.features.filter((e=>i.value.evaluate({zoom:0},e)));s={type:"FeatureCollection",features:r}}this._geoJSONIndex=t.cluster?new z(function({superclusterOptions:t,clusterProperties:i}){if(!i||!t)return t;const r={},n={},o={accumulated:null,zoom:0},s={properties:null},a=Object.keys(i);for(const t of a){const[o,s]=i[t],a=e.e(s),l=e.e("string"==typeof o?[o,["accumulated"],["get",t]]:o);r[t]=a.value,n[t]=l.value}return t.map=e=>{s.properties=e;const t={};for(const e of a)t[e]=r[e].evaluate(o,s);return t},t.reduce=(e,t)=>{s.properties=t;for(const t of a)o.accumulated=e[t],e[t]=n[t].evaluate(o,s)},t}(t)).load(s.features):N(s,t.geojsonVtOptions)}catch(o){return i(o)}this.loaded={};const l={};if(n){const i=e.f(r);i&&(l.resourceTiming={},l.resourceTiming[t.source]=JSON.parse(JSON.stringify(i)))}i(null,l)}}))}reloadTile(e,t){const i=this.loaded;return i&&i[e.uid]?super.reloadTile(e,t):this.loadTile(e,t)}loadGeoJSON(t,i){if(t.request)e.h(t.request,i);else{if("string"!=typeof t.data)return i(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));try{return i(null,JSON.parse(t.data))}catch(e){return i(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`))}}}getClusterExpansionZoom(e,t){try{t(null,this._geoJSONIndex.getClusterExpansionZoom(e.clusterId))}catch(e){t(e)}}getClusterChildren(e,t){try{t(null,this._geoJSONIndex.getChildren(e.clusterId))}catch(e){t(e)}}getClusterLeaves(e,t){try{t(null,this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset))}catch(e){t(e)}}}class V{constructor(t,i){this.tileID=new e.O(t.tileID.overscaledZ,t.tileID.wrap,t.tileID.canonical.z,t.tileID.canonical.x,t.tileID.canonical.y),this.tileZoom=t.tileZoom,this.uid=t.uid,this.zoom=t.zoom,this.canonical=t.tileID.canonical,this.pixelRatio=t.pixelRatio,this.tileSize=t.tileSize,this.source=t.source,this.overscaling=this.tileID.overscaleFactor(),this.projection=t.projection,this.brightness=i}parse(t,i,r,n){this.status="parsing";const o=new e.O(r.tileID.overscaledZ,r.tileID.wrap,r.tileID.canonical.z,r.tileID.canonical.x,r.tileID.canonical.y),s={},a=i.familiesBySource[r.source],l=new e.F(o,r.promoteId);return l.bucketLayerIDs=[],e.l(t).then((t=>{if(!t)return n(new Error("Could not parse tile"));const i=e.j(t,1/e.t(r.tileID.canonical)),c=t.json.extensionsUsed&&t.json.extensionsUsed.includes("MAPBOX_mesh_features"),h=new e.k(this.zoom,{brightness:this.brightness});for(const r in a)for(const n of a[r]){const r=n[0],a=t.json.extensionsUsed;r.recalculate(h,[]);const l=new e.T(i,o,a&&a.includes("MAPBOX_mesh_features"),this.brightness);c||(l.needsUpload=!0),s[r.fqid]=l,l.evaluate(r)}this.status="done",n(null,{buckets:s,featureIndex:l})})).catch((e=>n(new Error(e.message))))}}class G{constructor(e,t,i,r,n,o){this.actor=e,this.layerIndex=t,this.brightness=o,this.loading={},this.loaded={}}loadTile(t,i){const r=t.uid,n=this.loading[r]=new V(t,this.brightness);e.i(t.request,((e,o)=>{const s=!this.loading[r];return delete this.loading[r],s||e?(n.status="done",s||(this.loaded[r]=n),i(e)):o&&0!==o.byteLength?void n.parse(o,this.layerIndex,t,((e,t)=>{n.status="done",this.loaded=this.loaded||{},this.loaded[r]=n,e||!t?i(e):i(null,t)})):(n.status="done",this.loaded[r]=n,i())}))}reloadTile(e,t){const i=this.loaded,r=e.uid;if(i&&i[r]){const n=i[r];n.projection=e.projection,n.brightness=e.brightness;const o=(i,r)=>{n.reloadCallback&&(delete n.reloadCallback,this.loadTile(e,t)),t(i,r)};"parsing"===n.status?n.reloadCallback=o:"done"===n.status&&this.loadTile(e,t)}}abortTile(e,t){const i=e.uid;this.loading[i]&&delete this.loading[i],t()}removeTile(e,t){const i=this.loaded,r=e.uid;i&&i[r]&&delete i[r],t()}}class ${constructor(t){this.self=t,this.actor=new e.A(t,this),this.layerIndexes={},this.availableImages={},this.isSpriteLoaded={},this.projections={},this.defaultProjection=e.m({name:"mercator"}),this.workerSourceTypes={vector:e.d,geojson:U,"batched-model":G},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(e,t)=>{if(this.workerSourceTypes[e])throw new Error(`Worker source with name "${e}" already registered.`);this.workerSourceTypes[e]=t},this.self.registerRTLTextPlugin=t=>{if(e.n.isParsed())throw new Error("RTL text plugin already registered.");e.n.applyArabicShaping=t.applyArabicShaping,e.n.processBidirectionalText=t.processBidirectionalText,e.n.processStyledBidirectionalText=t.processStyledBidirectionalText}}clearCaches(e,t,i){delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e],i()}checkIfReady(e,t,i){i()}setReferrer(e,t){this.referrer=t}spriteLoaded(t,{scope:i,isLoaded:r}){if(this.isSpriteLoaded[t]||(this.isSpriteLoaded[t]={}),this.isSpriteLoaded[t][i]=r,this.workerSources[t]&&this.workerSources[t][i])for(const n in this.workerSources[t][i]){const o=this.workerSources[t][i][n];for(const t in o)o[t]instanceof e.d&&(o[t].isSpriteLoaded=r,o[t].fire(new e.o("isSpriteLoaded")))}}setImages(e,{scope:t,images:i},r){if(this.availableImages[e]||(this.availableImages[e]={}),this.availableImages[e][t]=i,this.workerSources[e]&&this.workerSources[e][t]){for(const r in this.workerSources[e][t]){const n=this.workerSources[e][t][r];for(const e in n)n[e].availableImages=i}r()}else r()}setProjection(t,i){this.projections[t]=e.m(i)}setBrightness(e,t,i){this.brightness=t,i()}setLayers(e,t,i){this.getLayerIndex(e,t.scope).replace(t.layers,t.options),i()}updateLayers(e,t,i){this.getLayerIndex(e,t.scope).update(t.layers,t.removedIds,t.options),i()}loadTile(e,t,i){t.projection=this.projections[e]||this.defaultProjection,this.getWorkerSource(e,t.type,t.source,t.scope).loadTile(t,i)}loadDEMTile(e,t,i){this.getDEMWorkerSource(e,t.source,t.scope).loadTile(t,i)}reloadTile(e,t,i){t.projection=this.projections[e]||this.defaultProjection,this.getWorkerSource(e,t.type,t.source,t.scope).reloadTile(t,i)}abortTile(e,t,i){this.getWorkerSource(e,t.type,t.source,t.scope).abortTile(t,i)}removeTile(e,t,i){this.getWorkerSource(e,t.type,t.source,t.scope).removeTile(t,i)}removeSource(e,t,i){if(!(this.workerSources[e]&&this.workerSources[e][t.scope]&&this.workerSources[e][t.scope][t.type]&&this.workerSources[e][t.scope][t.type][t.source]))return;const r=this.workerSources[e][t.scope][t.type][t.source];delete this.workerSources[e][t.scope][t.type][t.source],void 0!==r.removeSource?r.removeSource(t,i):i()}loadWorkerSource(e,t,i){try{this.self.importScripts(t.url),i()}catch(e){i(e.toString())}}syncRTLPluginState(t,i,r){try{e.n.setState(i);const t=e.n.getPluginURL();if(e.n.isLoaded()&&!e.n.isParsed()&&null!=t){this.self.importScripts(t);const i=e.n.isParsed();r(i?void 0:new Error(`RTL Text Plugin failed to import scripts from ${t}`),i)}}catch(e){r(e.toString())}}setDracoUrl(e,t){this.dracoUrl=t}getAvailableImages(e,t){this.availableImages[e]||(this.availableImages[e]={});let i=this.availableImages[e][t];return i||(i=[]),i}getLayerIndex(e,t){this.layerIndexes[e]||(this.layerIndexes[e]={});let i=this.layerIndexes[e][t];return i||(i=this.layerIndexes[e][t]=new r,i.scope=t),i}getWorkerSource(e,t,i,r){if(this.workerSources[e]||(this.workerSources[e]={}),this.workerSources[e][r]||(this.workerSources[e][r]={}),this.workerSources[e][r][t]||(this.workerSources[e][r][t]={}),this.isSpriteLoaded[e]||(this.isSpriteLoaded[e]={}),!this.workerSources[e][r][t][i]){const n={send:(t,i,r,n,o,s)=>{this.actor.send(t,i,r,e,o,s)},scheduler:this.actor.scheduler};this.workerSources[e][r][t][i]=new this.workerSourceTypes[t](n,this.getLayerIndex(e,r),this.getAvailableImages(e,r),this.isSpriteLoaded[e][r],void 0,this.brightness)}return this.workerSources[e][r][t][i]}getDEMWorkerSource(e,t,i){return this.demWorkerSources[e]||(this.demWorkerSources[e]={}),this.demWorkerSources[e][i]||(this.demWorkerSources[e][i]={}),this.demWorkerSources[e][i][t]||(this.demWorkerSources[e][i][t]=new n),this.demWorkerSources[e][i][t]}enforceCacheSizeLimit(t,i){e.q(i)}getWorkerPerformanceMetrics(e,t,i){i(void 0,void 0)}}return"undefined"!=typeof WorkerGlobalScope&&"undefined"!=typeof self&&self instanceof WorkerGlobalScope&&(self.worker=new $(self)),$})),r(["./shared"],(function(e){return e.s}));var n=i;return n}();var r=t(i.exports);function n(e){const t=document.createElement("div");return t.classList.add("mapboxgl-ctrl","mapboxgl-ctrl-group",e),t}function o(e={}){const t=document.createElement("button");return t.type="button",e.title&&(t.title=e.title),e.icon&&t.appendChild(e.icon),e.textContent&&(t.textContent=e.textContent),e.disabled&&(t.disabled=!0),e.hidden&&(t.hidden=!0),e.className&&t.classList.add(e.className),e.onClick&&t.addEventListener("click",(()=>{e.onClick&&e.onClick()})),t}function s(e){return(new DOMParser).parseFromString(e,"image/svg+xml").firstChild}const a={compass:s('\n\n \n \n \n \n \n\n')};class l{constructor(e={}){this.options={...e},this.container=n("mapbox-ctrl-compass"),this.icon=a.compass,this.button=o({title:"Compass",icon:a.compass,onClick:()=>this.onControlButtonClick()})}onControlButtonClick(){if(!this.map)throw Error("map is undefined");this.map.easeTo({bearing:0,pitch:0})}onRotate(){if(!this.map)throw Error("map is undefined");const e=-1*this.map.getBearing();this.options.instant||(this.container.hidden=0===e),this.icon.style.transform=`rotate(${e}deg)`}onAdd(e){return this.map=e,this.options.instant||(this.container.hidden=!0),this.container.appendChild(this.button),this.onRotate(),this.map.on("rotate",(()=>this.onRotate())),this.container}onRemove(){this.container.parentNode?.removeChild(this.container)}}const c={inspect:s('\n\n \n \n\n')};function h(e,t){const i=e[t],r=i.properties&&Object.keys(i.properties).length,n=i.properties||{};return`\n
\n ${e.length>1?"":""}\n \n ${e.length>1?"":""}\n
\n \n ${i.id?`\n \n \n \n \n `:""}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ${r?'\n \n \n \n ':""}\n ${r?Object.entries(n).map((([e,t])=>`\n \n \n \n \n `)).join(""):""}\n
$id${i.id}
layer
id${i.layer.id}
type${i.layer.type}
source${i.layer.source}
source-layer${i.layer["source-layer"]??"-"}
properties
${e}${t}
\n `}class u{constructor(e={}){this.options={...e},this.container=n("mapbox-ctrl-inspect"),this.button=o({title:"Inspect",icon:c.inspect,onClick:()=>this.onControlButtonClick()}),this.isActive=!1}onControlButtonClick(){this.isActive?this.deactivate():this.activate()}activate(){if(!this.map)throw Error("map is undefined");this.isActive=!0,this.button.classList.add("-active"),this.map.on("click",this.mapClickListener),this.map.on("move",this.updatePosition),this.map.getCanvas().style.cursor="pointer"}deactivate(){if(!this.map)throw Error("map is undefined");this.isActive=!1,this.button.classList.remove("-active"),this.map.off("click",this.mapClickListener),this.map.off("move",this.updatePosition),this.map.getCanvas().style.cursor="",this.hideDetails()}getPointFeatures(e){if(!this.map)throw Error("map is undefined");const t=[[e.x-3,e.y+3],[e.x+3,e.y-3]];return this.map.queryRenderedFeatures(t)}showDetails(e){if(!this.map)throw Error("map is undefined");this.detailsNode=function(e){const t=document.createElement("div");let i=0;return t.classList.add("mapbox-ctrl-inspect-popup"),e.length?(t.innerHTML=h(e,i),t.addEventListener("click",(r=>{const n=r.target;if(n.matches("[data-prev]"))i=0===i?e.length-1:i-1;else if(n.matches("[data-next]")){const t=i===e.length-1;i=t?0:i+1}t.innerHTML="",t.innerHTML=h(e,i)})),t):(t.textContent="No features",t)}(e),this.map.getContainer().appendChild(this.detailsNode),this.updatePosition(),this.options.console&&console.log(e)}hideDetails(){if(!this.map)throw Error("map is undefined");this.detailsNode&&(this.map.getContainer().removeChild(this.detailsNode),this.detailsNode=void 0)}updatePosition=()=>{if(!this.map)throw Error("map is undefined");if(!this.lngLat)return;if(!this.detailsNode)return;const e=this.map.getCanvas().getBoundingClientRect(),t=this.map.project(this.lngLat);this.detailsNode.style.left=t.x-e.left+"px",this.detailsNode.style.top=t.y-e.top+"px"};mapClickListener=e=>{this.lngLat=e.lngLat;const t=this.getPointFeatures(e.point);this.hideDetails(),this.showDetails(t)};onAdd(e){return this.map=e,this.container.appendChild(this.button),this.container}onRemove(){this.deactivate(),this.container.parentNode?.removeChild(this.container)}}const d={layers:s('\n\n \n\n')},p=[{label:"Streets",styleName:"Mapbox Streets",styleUrl:"mapbox://styles/mapbox/streets-v12"},{label:"Satellite",styleName:"Mapbox Satellite Streets",styleUrl:"mapbox://sprites/mapbox/satellite-streets-v12"}];class f{constructor(e={}){this.options={styles:p,...e},this.container=n("mapbox-ctrl-styles"),this.container.classList.add(e.compact?"mapbox-ctrl-styles-compact":"mapbox-ctrl-styles-expanded")}findStyleByName(e){const t=this.options.styles.find((t=>t.styleName===e));if(!t)throw Error(`can't find style with name ${e}`);return t}expanded(){if(!this.map)throw Error("map is undefined");const e=[];this.options.styles.forEach((t=>{const i=o({title:t.label,textContent:t.label,onClick:()=>{if(!this.map)throw Error("map is undefined");i.classList.contains("-active")||(this.map.setStyle(t.styleUrl),this.options.onChange&&this.options.onChange(t))}});e.push(i),this.container.appendChild(i)})),this.map.on("styledata",(()=>{if(!this.map)throw Error("map is undefined");e.forEach((e=>{e.classList.remove("-active")}));const t=this.options.styles.map((e=>e.styleName)),i=this.map.getStyle().name;if(!i)throw Error("style must have name");const r=t.indexOf(i);if(-1!==r){e[r].classList.add("-active")}}))}compact(){if(!this.map)throw Error("map is undefined");const e=o({title:"Styles",icon:d.layers}),t=document.createElement("select");this.container.appendChild(e),e.appendChild(t),this.options.styles.forEach((e=>{const i=document.createElement("option");t.appendChild(i),i.textContent=e.label,i.value=e.styleName})),t.addEventListener("change",(()=>{if(!this.map)throw Error("map is undefined");const e=this.findStyleByName(t.value);this.map.setStyle(e.styleUrl),this.options.onChange&&this.options.onChange(e)})),this.map.on("styledata",(()=>{if(!this.map)throw Error("map is undefined");const e=this.map.getStyle().name;if(!e)throw Error("style must have name");t.value=e}))}onAdd(e){return this.map=e,this.options.compact?this.compact():this.expanded(),this.container}onRemove(){this.container.parentNode?.removeChild(this.container)}}const m={plus:s('\n\n \n \n\n'),minus:s('\n\n \n \n\n')};class _{constructor(){this.container=n("mapbox-ctrl-zoom"),this.buttonIn=o({title:"Zoom In",icon:m.plus,onClick:()=>this.map?.zoomIn()}),this.buttonOut=o({title:"Zoom Out",icon:m.minus,onClick:()=>this.map?.zoomOut()})}onAdd(e){return this.map=e,this.container.appendChild(this.buttonIn),this.container.appendChild(this.buttonOut),this.container}onRemove(){this.container.parentNode?.removeChild(this.container)}}const g={supportedLanguages:["ar","de","en","es","fr","it","ja","ko","mul","pt","ru","vi","zh-Hans","zh-Hant"],getLanguageKey:e=>"mul"===e?"name":`name_${e}`,excludedLayerIds:[]};class y{constructor(e={}){this.options={...g,...e},this.container=document.createElement("div")}styleChangeListener=()=>{if(!this.map)throw Error("map is undefined");this.map.off("styledata",this.styleChangeListener),this.setLanguage(this.options.language)};setLanguage(e){if(!this.map)throw Error("map is undefined");let t=e||this.browserLanguage();this.options.supportedLanguages.indexOf(t)<0&&(t="mul");const i=this.map.getStyle();if(!i.layers)return;const r=this.options.getLanguageKey(t),n=i.layers.map((e=>{if("symbol"!==e.type)return e;if(!e.layout||!e.layout["text-field"])return e;if(-1!==this.options.excludedLayerIds.indexOf(e.id))return e;const t=e.layout["text-field"],i=this.localizeTextField(t,r);return{...e,layout:{...e.layout,"text-field":i}}}));this.map.setStyle({...i,layers:n})}browserLanguage(){const e=navigator?.languages[0]??navigator.language,t=e.split("-"),i=t.length>1?t[0]:e;return this.options.supportedLanguages.indexOf(i)>-1?i:"mul"}localizeTextField(e,t){if("string"==typeof e)return e.replace(/{name.*?}/,`{${t}}`);const i=JSON.stringify(e);return Array.isArray(e)?JSON.parse(i.replace(/"coalesce",\["get","name.*?"]/g,`"coalesce",["get","${t}"]`)):JSON.parse(i.replace(/{name.*?}/g,`{${t}}`))}onAdd(e){return this.map=e,this.map.on("styledata",this.styleChangeListener),this.container}onRemove(){this.map?.off("styledata",this.styleChangeListener),this.container.parentNode?.removeChild(this.container)}}var x="top",v="bottom",b="right",w="left",T="auto",E=[x,v,b,w],A="start",S="end",M="clippingParents",I="viewport",C="popper",k="reference",P=E.reduce((function(e,t){return e.concat([t+"-"+A,t+"-"+S])}),[]),z=[].concat(E,[T]).reduce((function(e,t){return e.concat([t,t+"-"+A,t+"-"+S])}),[]),L="beforeRead",D="read",R="afterRead",O="beforeMain",B="main",F="afterMain",N="beforeWrite",j="write",U="afterWrite",V=[L,D,R,O,B,F,N,j,U];function G(e){return e?(e.nodeName||"").toLowerCase():null}function $(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function q(e){return e instanceof $(e).Element||e instanceof Element}function Z(e){return e instanceof $(e).HTMLElement||e instanceof HTMLElement}function H(e){return"undefined"!=typeof ShadowRoot&&(e instanceof $(e).ShadowRoot||e instanceof ShadowRoot)}var W={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var i=t.styles[e]||{},r=t.attributes[e]||{},n=t.elements[e];Z(n)&&G(n)&&(Object.assign(n.style,i),Object.keys(r).forEach((function(e){var t=r[e];!1===t?n.removeAttribute(e):n.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],n=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce((function(e,t){return e[t]="",e}),{});Z(r)&&G(r)&&(Object.assign(r.style,o),Object.keys(n).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};function X(e){return e.split("-")[0]}var Y=Math.max,K=Math.min,J=Math.round;function Q(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function ee(){return!/^((?!chrome|android).)*safari/i.test(Q())}function te(e,t,i){void 0===t&&(t=!1),void 0===i&&(i=!1);var r=e.getBoundingClientRect(),n=1,o=1;t&&Z(e)&&(n=e.offsetWidth>0&&J(r.width)/e.offsetWidth||1,o=e.offsetHeight>0&&J(r.height)/e.offsetHeight||1);var s=(q(e)?$(e):window).visualViewport,a=!ee()&&i,l=(r.left+(a&&s?s.offsetLeft:0))/n,c=(r.top+(a&&s?s.offsetTop:0))/o,h=r.width/n,u=r.height/o;return{width:h,height:u,top:c,right:l+h,bottom:c+u,left:l,x:l,y:c}}function ie(e){var t=te(e),i=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:r}}function re(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(i&&H(i)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function ne(e){return $(e).getComputedStyle(e)}function oe(e){return["table","td","th"].indexOf(G(e))>=0}function se(e){return((q(e)?e.ownerDocument:e.document)||window.document).documentElement}function ae(e){return"html"===G(e)?e:e.assignedSlot||e.parentNode||(H(e)?e.host:null)||se(e)}function le(e){return Z(e)&&"fixed"!==ne(e).position?e.offsetParent:null}function ce(e){for(var t=$(e),i=le(e);i&&oe(i)&&"static"===ne(i).position;)i=le(i);return i&&("html"===G(i)||"body"===G(i)&&"static"===ne(i).position)?t:i||function(e){var t=/firefox/i.test(Q());if(/Trident/i.test(Q())&&Z(e)&&"fixed"===ne(e).position)return null;var i=ae(e);for(H(i)&&(i=i.host);Z(i)&&["html","body"].indexOf(G(i))<0;){var r=ne(i);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return i;i=i.parentNode}return null}(e)||t}function he(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function ue(e,t,i){return Y(e,K(t,i))}function de(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function pe(e,t){return t.reduce((function(t,i){return t[i]=e,t}),{})}var fe={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,i=e.state,r=e.name,n=e.options,o=i.elements.arrow,s=i.modifiersData.popperOffsets,a=X(i.placement),l=he(a),c=[w,b].indexOf(a)>=0?"height":"width";if(o&&s){var h=function(e,t){return de("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:pe(e,E))}(n.padding,i),u=ie(o),d="y"===l?x:w,p="y"===l?v:b,f=i.rects.reference[c]+i.rects.reference[l]-s[l]-i.rects.popper[c],m=s[l]-i.rects.reference[l],_=ce(o),g=_?"y"===l?_.clientHeight||0:_.clientWidth||0:0,y=f/2-m/2,T=h[d],A=g-u[c]-h[p],S=g/2-u[c]/2+y,M=ue(T,S,A),I=l;i.modifiersData[r]=((t={})[I]=M,t.centerOffset=M-S,t)}},effect:function(e){var t=e.state,i=e.options.element,r=void 0===i?"[data-popper-arrow]":i;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&re(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function me(e){return e.split("-")[1]}var _e={top:"auto",right:"auto",bottom:"auto",left:"auto"};function ge(e){var t,i=e.popper,r=e.popperRect,n=e.placement,o=e.variation,s=e.offsets,a=e.position,l=e.gpuAcceleration,c=e.adaptive,h=e.roundOffsets,u=e.isFixed,d=s.x,p=void 0===d?0:d,f=s.y,m=void 0===f?0:f,_="function"==typeof h?h({x:p,y:m}):{x:p,y:m};p=_.x,m=_.y;var g=s.hasOwnProperty("x"),y=s.hasOwnProperty("y"),T=w,E=x,A=window;if(c){var M=ce(i),I="clientHeight",C="clientWidth";if(M===$(i)&&"static"!==ne(M=se(i)).position&&"absolute"===a&&(I="scrollHeight",C="scrollWidth"),n===x||(n===w||n===b)&&o===S)E=v,m-=(u&&M===A&&A.visualViewport?A.visualViewport.height:M[I])-r.height,m*=l?1:-1;if(n===w||(n===x||n===v)&&o===S)T=b,p-=(u&&M===A&&A.visualViewport?A.visualViewport.width:M[C])-r.width,p*=l?1:-1}var k,P=Object.assign({position:a},c&&_e),z=!0===h?function(e,t){var i=e.x,r=e.y,n=t.devicePixelRatio||1;return{x:J(i*n)/n||0,y:J(r*n)/n||0}}({x:p,y:m},$(i)):{x:p,y:m};return p=z.x,m=z.y,l?Object.assign({},P,((k={})[E]=y?"0":"",k[T]=g?"0":"",k.transform=(A.devicePixelRatio||1)<=1?"translate("+p+"px, "+m+"px)":"translate3d("+p+"px, "+m+"px, 0)",k)):Object.assign({},P,((t={})[E]=y?m+"px":"",t[T]=g?p+"px":"",t.transform="",t))}var ye={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,r=i.gpuAcceleration,n=void 0===r||r,o=i.adaptive,s=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:X(t.placement),variation:me(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:n,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,ge(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,ge(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},xe={passive:!0};var ve={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,r=e.options,n=r.scroll,o=void 0===n||n,s=r.resize,a=void 0===s||s,l=$(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach((function(e){e.addEventListener("scroll",i.update,xe)})),a&&l.addEventListener("resize",i.update,xe),function(){o&&c.forEach((function(e){e.removeEventListener("scroll",i.update,xe)})),a&&l.removeEventListener("resize",i.update,xe)}},data:{}},be={left:"right",right:"left",bottom:"top",top:"bottom"};function we(e){return e.replace(/left|right|bottom|top/g,(function(e){return be[e]}))}var Te={start:"end",end:"start"};function Ee(e){return e.replace(/start|end/g,(function(e){return Te[e]}))}function Ae(e){var t=$(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Se(e){return te(se(e)).left+Ae(e).scrollLeft}function Me(e){var t=ne(e),i=t.overflow,r=t.overflowX,n=t.overflowY;return/auto|scroll|overlay|hidden/.test(i+n+r)}function Ie(e){return["html","body","#document"].indexOf(G(e))>=0?e.ownerDocument.body:Z(e)&&Me(e)?e:Ie(ae(e))}function Ce(e,t){var i;void 0===t&&(t=[]);var r=Ie(e),n=r===(null==(i=e.ownerDocument)?void 0:i.body),o=$(r),s=n?[o].concat(o.visualViewport||[],Me(r)?r:[]):r,a=t.concat(s);return n?a:a.concat(Ce(ae(s)))}function ke(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Pe(e,t,i){return t===I?ke(function(e,t){var i=$(e),r=se(e),n=i.visualViewport,o=r.clientWidth,s=r.clientHeight,a=0,l=0;if(n){o=n.width,s=n.height;var c=ee();(c||!c&&"fixed"===t)&&(a=n.offsetLeft,l=n.offsetTop)}return{width:o,height:s,x:a+Se(e),y:l}}(e,i)):q(t)?function(e,t){var i=te(e,!1,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):ke(function(e){var t,i=se(e),r=Ae(e),n=null==(t=e.ownerDocument)?void 0:t.body,o=Y(i.scrollWidth,i.clientWidth,n?n.scrollWidth:0,n?n.clientWidth:0),s=Y(i.scrollHeight,i.clientHeight,n?n.scrollHeight:0,n?n.clientHeight:0),a=-r.scrollLeft+Se(e),l=-r.scrollTop;return"rtl"===ne(n||i).direction&&(a+=Y(i.clientWidth,n?n.clientWidth:0)-o),{width:o,height:s,x:a,y:l}}(se(e)))}function ze(e,t,i,r){var n="clippingParents"===t?function(e){var t=Ce(ae(e)),i=["absolute","fixed"].indexOf(ne(e).position)>=0&&Z(e)?ce(e):e;return q(i)?t.filter((function(e){return q(e)&&re(e,i)&&"body"!==G(e)})):[]}(e):[].concat(t),o=[].concat(n,[i]),s=o[0],a=o.reduce((function(t,i){var n=Pe(e,i,r);return t.top=Y(n.top,t.top),t.right=K(n.right,t.right),t.bottom=K(n.bottom,t.bottom),t.left=Y(n.left,t.left),t}),Pe(e,s,r));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function Le(e){var t,i=e.reference,r=e.element,n=e.placement,o=n?X(n):null,s=n?me(n):null,a=i.x+i.width/2-r.width/2,l=i.y+i.height/2-r.height/2;switch(o){case x:t={x:a,y:i.y-r.height};break;case v:t={x:a,y:i.y+i.height};break;case b:t={x:i.x+i.width,y:l};break;case w:t={x:i.x-r.width,y:l};break;default:t={x:i.x,y:i.y}}var c=o?he(o):null;if(null!=c){var h="y"===c?"height":"width";switch(s){case A:t[c]=t[c]-(i[h]/2-r[h]/2);break;case S:t[c]=t[c]+(i[h]/2-r[h]/2)}}return t}function De(e,t){void 0===t&&(t={});var i=t,r=i.placement,n=void 0===r?e.placement:r,o=i.strategy,s=void 0===o?e.strategy:o,a=i.boundary,l=void 0===a?M:a,c=i.rootBoundary,h=void 0===c?I:c,u=i.elementContext,d=void 0===u?C:u,p=i.altBoundary,f=void 0!==p&&p,m=i.padding,_=void 0===m?0:m,g=de("number"!=typeof _?_:pe(_,E)),y=d===C?k:C,w=e.rects.popper,T=e.elements[f?y:d],A=ze(q(T)?T:T.contextElement||se(e.elements.popper),l,h,s),S=te(e.elements.reference),P=Le({reference:S,element:w,strategy:"absolute",placement:n}),z=ke(Object.assign({},w,P)),L=d===C?z:S,D={top:A.top-L.top+g.top,bottom:L.bottom-A.bottom+g.bottom,left:A.left-L.left+g.left,right:L.right-A.right+g.right},R=e.modifiersData.offset;if(d===C&&R){var O=R[n];Object.keys(D).forEach((function(e){var t=[b,v].indexOf(e)>=0?1:-1,i=[x,v].indexOf(e)>=0?"y":"x";D[e]+=O[i]*t}))}return D}function Re(e,t){void 0===t&&(t={});var i=t,r=i.placement,n=i.boundary,o=i.rootBoundary,s=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?z:l,h=me(r),u=h?a?P:P.filter((function(e){return me(e)===h})):E,d=u.filter((function(e){return c.indexOf(e)>=0}));0===d.length&&(d=u);var p=d.reduce((function(t,i){return t[i]=De(e,{placement:i,boundary:n,rootBoundary:o,padding:s})[X(i)],t}),{});return Object.keys(p).sort((function(e,t){return p[e]-p[t]}))}var Oe={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var n=i.mainAxis,o=void 0===n||n,s=i.altAxis,a=void 0===s||s,l=i.fallbackPlacements,c=i.padding,h=i.boundary,u=i.rootBoundary,d=i.altBoundary,p=i.flipVariations,f=void 0===p||p,m=i.allowedAutoPlacements,_=t.options.placement,g=X(_),y=l||(g===_||!f?[we(_)]:function(e){if(X(e)===T)return[];var t=we(e);return[Ee(e),t,Ee(t)]}(_)),E=[_].concat(y).reduce((function(e,i){return e.concat(X(i)===T?Re(t,{placement:i,boundary:h,rootBoundary:u,padding:c,flipVariations:f,allowedAutoPlacements:m}):i)}),[]),S=t.rects.reference,M=t.rects.popper,I=new Map,C=!0,k=E[0],P=0;P=0,O=R?"width":"height",B=De(t,{placement:z,boundary:h,rootBoundary:u,altBoundary:d,padding:c}),F=R?D?b:w:D?v:x;S[O]>M[O]&&(F=we(F));var N=we(F),j=[];if(o&&j.push(B[L]<=0),a&&j.push(B[F]<=0,B[N]<=0),j.every((function(e){return e}))){k=z,C=!1;break}I.set(z,j)}if(C)for(var U=function(e){var t=E.find((function(t){var i=I.get(t);if(i)return i.slice(0,e).every((function(e){return e}))}));if(t)return k=t,"break"},V=f?3:1;V>0;V--){if("break"===U(V))break}t.placement!==k&&(t.modifiersData[r]._skip=!0,t.placement=k,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Be(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function Fe(e){return[x,b,v,w].some((function(t){return e[t]>=0}))}var Ne={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,r=t.rects.reference,n=t.rects.popper,o=t.modifiersData.preventOverflow,s=De(t,{elementContext:"reference"}),a=De(t,{altBoundary:!0}),l=Be(s,r),c=Be(a,n,o),h=Fe(l),u=Fe(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:u},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":u})}};var je={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,r=e.name,n=i.offset,o=void 0===n?[0,0]:n,s=z.reduce((function(e,i){return e[i]=function(e,t,i){var r=X(e),n=[w,x].indexOf(r)>=0?-1:1,o="function"==typeof i?i(Object.assign({},t,{placement:e})):i,s=o[0],a=o[1];return s=s||0,a=(a||0)*n,[w,b].indexOf(r)>=0?{x:a,y:s}:{x:s,y:a}}(i,t.rects,o),e}),{}),a=s[t.placement],l=a.x,c=a.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=s}};var Ue={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=Le({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};var Ve={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,r=e.name,n=i.mainAxis,o=void 0===n||n,s=i.altAxis,a=void 0!==s&&s,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,u=i.padding,d=i.tether,p=void 0===d||d,f=i.tetherOffset,m=void 0===f?0:f,_=De(t,{boundary:l,rootBoundary:c,padding:u,altBoundary:h}),g=X(t.placement),y=me(t.placement),T=!y,E=he(g),S="x"===E?"y":"x",M=t.modifiersData.popperOffsets,I=t.rects.reference,C=t.rects.popper,k="function"==typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,P="number"==typeof k?{mainAxis:k,altAxis:k}:Object.assign({mainAxis:0,altAxis:0},k),z=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,L={x:0,y:0};if(M){if(o){var D,R="y"===E?x:w,O="y"===E?v:b,B="y"===E?"height":"width",F=M[E],N=F+_[R],j=F-_[O],U=p?-C[B]/2:0,V=y===A?I[B]:C[B],G=y===A?-C[B]:-I[B],$=t.elements.arrow,q=p&&$?ie($):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},H=Z[R],W=Z[O],J=ue(0,I[B],q[B]),Q=T?I[B]/2-U-J-H-P.mainAxis:V-J-H-P.mainAxis,ee=T?-I[B]/2+U+J+W+P.mainAxis:G+J+W+P.mainAxis,te=t.elements.arrow&&ce(t.elements.arrow),re=te?"y"===E?te.clientTop||0:te.clientLeft||0:0,ne=null!=(D=null==z?void 0:z[E])?D:0,oe=F+ee-ne,se=ue(p?K(N,F+Q-ne-re):N,F,p?Y(j,oe):j);M[E]=se,L[E]=se-F}if(a){var ae,le="x"===E?x:w,de="x"===E?v:b,pe=M[S],fe="y"===S?"height":"width",_e=pe+_[le],ge=pe-_[de],ye=-1!==[x,w].indexOf(g),xe=null!=(ae=null==z?void 0:z[S])?ae:0,ve=ye?_e:pe-I[fe]-C[fe]-xe+P.altAxis,be=ye?pe+I[fe]+C[fe]-xe-P.altAxis:ge,we=p&&ye?function(e,t,i){var r=ue(e,t,i);return r>i?i:r}(ve,pe,be):ue(p?ve:_e,pe,p?be:ge);M[S]=we,L[S]=we-pe}t.modifiersData[r]=L}},requiresIfExists:["offset"]};function Ge(e,t,i){void 0===i&&(i=!1);var r,n,o=Z(t),s=Z(t)&&function(e){var t=e.getBoundingClientRect(),i=J(t.width)/e.offsetWidth||1,r=J(t.height)/e.offsetHeight||1;return 1!==i||1!==r}(t),a=se(t),l=te(e,s,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==G(t)||Me(a))&&(c=(r=t)!==$(r)&&Z(r)?{scrollLeft:(n=r).scrollLeft,scrollTop:n.scrollTop}:Ae(r)),Z(t)?((h=te(t,!0)).x+=t.clientLeft,h.y+=t.clientTop):a&&(h.x=Se(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function $e(e){var t=new Map,i=new Set,r=[];function n(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!i.has(e)){var r=t.get(e);r&&n(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){i.has(e.name)||n(e)})),r}var qe={placement:"bottom",modifiers:[],strategy:"absolute"};function Ze(){for(var e=arguments.length,t=new Array(e),i=0;iKe.has(e)&&Ke.get(e).get(t)||null,remove(e,t){if(!Ke.has(e))return;const i=Ke.get(e);i.delete(t),0===i.size&&Ke.delete(e)}},Je="transitionend",Qe=e=>(e&&window.CSS&&window.CSS.escape&&(e=e.replace(/#([^\s"#']+)/g,((e,t)=>`#${CSS.escape(t)}`))),e),et=e=>{e.dispatchEvent(new Event(Je))},tt=e=>!(!e||"object"!=typeof e)&&(void 0!==e.jquery&&(e=e[0]),void 0!==e.nodeType),it=e=>tt(e)?e.jquery?e[0]:e:"string"==typeof e&&e.length>0?document.querySelector(Qe(e)):null,rt=e=>{if(!tt(e)||0===e.getClientRects().length)return!1;const t="visible"===getComputedStyle(e).getPropertyValue("visibility"),i=e.closest("details:not([open])");if(!i)return t;if(i!==e){const t=e.closest("summary");if(t&&t.parentNode!==i)return!1;if(null===t)return!1}return t},nt=e=>!e||e.nodeType!==Node.ELEMENT_NODE||(!!e.classList.contains("disabled")||(void 0!==e.disabled?e.disabled:e.hasAttribute("disabled")&&"false"!==e.getAttribute("disabled"))),ot=e=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof e.getRootNode){const t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?ot(e.parentNode):null},st=()=>{},at=e=>{e.offsetHeight},lt=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,ct=[],ht=()=>"rtl"===document.documentElement.dir,ut=e=>{var t;t=()=>{const t=lt();if(t){const i=e.NAME,r=t.fn[i];t.fn[i]=e.jQueryInterface,t.fn[i].Constructor=e,t.fn[i].noConflict=()=>(t.fn[i]=r,e.jQueryInterface)}},"loading"===document.readyState?(ct.length||document.addEventListener("DOMContentLoaded",(()=>{for(const e of ct)e()})),ct.push(t)):t()},dt=(e,t=[],i=e)=>"function"==typeof e?e(...t):i,pt=(e,t,i=!0)=>{if(!i)return void dt(e);const r=(e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:i}=window.getComputedStyle(e);const r=Number.parseFloat(t),n=Number.parseFloat(i);return r||n?(t=t.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(t)+Number.parseFloat(i))):0})(t)+5;let n=!1;const o=({target:i})=>{i===t&&(n=!0,t.removeEventListener(Je,o),dt(e))};t.addEventListener(Je,o),setTimeout((()=>{n||et(t)}),r)},ft=(e,t,i,r)=>{const n=e.length;let o=e.indexOf(t);return-1===o?!i&&r?e[n-1]:e[0]:(o+=i?1:-1,r&&(o=(o+n)%n),e[Math.max(0,Math.min(o,n-1))])},mt=/[^.]*(?=\..*)\.|.*/,_t=/\..*/,gt=/::\d+$/,yt={};let xt=1;const vt={mouseenter:"mouseover",mouseleave:"mouseout"},bt=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function wt(e,t){return t&&`${t}::${xt++}`||e.uidEvent||xt++}function Tt(e){const t=wt(e);return e.uidEvent=t,yt[t]=yt[t]||{},yt[t]}function Et(e,t,i=null){return Object.values(e).find((e=>e.callable===t&&e.delegationSelector===i))}function At(e,t,i){const r="string"==typeof t,n=r?i:t||i;let o=kt(e);return bt.has(o)||(o=e),[r,n,o]}function St(e,t,i,r,n){if("string"!=typeof t||!e)return;let[o,s,a]=At(t,i,r);if(t in vt){const e=e=>function(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};s=e(s)}const l=Tt(e),c=l[a]||(l[a]={}),h=Et(c,s,o?i:null);if(h)return void(h.oneOff=h.oneOff&&n);const u=wt(s,t.replace(mt,"")),d=o?function(e,t,i){return function r(n){const o=e.querySelectorAll(t);for(let{target:s}=n;s&&s!==this;s=s.parentNode)for(const a of o)if(a===s)return Pt(n,{delegateTarget:s}),r.oneOff&&It.off(e,n.type,t,i),i.apply(s,[n])}}(e,i,s):function(e,t){return function i(r){return Pt(r,{delegateTarget:e}),i.oneOff&&It.off(e,r.type,t),t.apply(e,[r])}}(e,s);d.delegationSelector=o?i:null,d.callable=s,d.oneOff=n,d.uidEvent=u,c[u]=d,e.addEventListener(a,d,o)}function Mt(e,t,i,r,n){const o=Et(t[i],r,n);o&&(e.removeEventListener(i,o,Boolean(n)),delete t[i][o.uidEvent])}function Ct(e,t,i,r){const n=t[i]||{};for(const[o,s]of Object.entries(n))o.includes(r)&&Mt(e,t,i,s.callable,s.delegationSelector)}function kt(e){return e=e.replace(_t,""),vt[e]||e}const It={on(e,t,i,r){St(e,t,i,r,!1)},one(e,t,i,r){St(e,t,i,r,!0)},off(e,t,i,r){if("string"!=typeof t||!e)return;const[n,o,s]=At(t,i,r),a=s!==t,l=Tt(e),c=l[s]||{},h=t.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))Ct(e,l,i,t.slice(1));for(const[i,r]of Object.entries(c)){const n=i.replace(gt,"");a&&!t.includes(n)||Mt(e,l,s,r.callable,r.delegationSelector)}}else{if(!Object.keys(c).length)return;Mt(e,l,s,o,n?i:null)}},trigger(e,t,i){if("string"!=typeof t||!e)return null;const r=lt();let n=null,o=!0,s=!0,a=!1;t!==kt(t)&&r&&(n=r.Event(t,i),r(e).trigger(n),o=!n.isPropagationStopped(),s=!n.isImmediatePropagationStopped(),a=n.isDefaultPrevented());const l=Pt(new Event(t,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),s&&e.dispatchEvent(l),l.defaultPrevented&&n&&n.preventDefault(),l}};function Pt(e,t={}){for(const[i,r]of Object.entries(t))try{e[i]=r}catch(t){Object.defineProperty(e,i,{configurable:!0,get:()=>r})}return e}function zt(e){if("true"===e)return!0;if("false"===e)return!1;if(e===Number(e).toString())return Number(e);if(""===e||"null"===e)return null;if("string"!=typeof e)return e;try{return JSON.parse(decodeURIComponent(e))}catch(t){return e}}function Lt(e){return e.replace(/[A-Z]/g,(e=>`-${e.toLowerCase()}`))}const Dt={setDataAttribute(e,t,i){e.setAttribute(`data-bs-${Lt(t)}`,i)},removeDataAttribute(e,t){e.removeAttribute(`data-bs-${Lt(t)}`)},getDataAttributes(e){if(!e)return{};const t={},i=Object.keys(e.dataset).filter((e=>e.startsWith("bs")&&!e.startsWith("bsConfig")));for(const r of i){let i=r.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),t[i]=zt(e.dataset[r])}return t},getDataAttribute:(e,t)=>zt(e.getAttribute(`data-bs-${Lt(t)}`))};class Rt{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(e){return e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e}_mergeConfigObj(e,t){const i=tt(t)?Dt.getDataAttribute(t,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...tt(t)?Dt.getDataAttributes(t):{},..."object"==typeof e?e:{}}}_typeCheckConfig(e,t=this.constructor.DefaultType){for(const[r,n]of Object.entries(t)){const t=e[r],o=tt(t)?"element":null==(i=t)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(n).test(o))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${r}" provided type "${o}" but expected type "${n}".`)}var i}}class Bt extends Rt{constructor(e,t){super(),(e=it(e))&&(this._element=e,this._config=this._getConfig(t),Ye.set(this._element,this.constructor.DATA_KEY,this))}dispose(){Ye.remove(this._element,this.constructor.DATA_KEY),It.off(this._element,this.constructor.EVENT_KEY);for(const e of Object.getOwnPropertyNames(this))this[e]=null}_queueCallback(e,t,i=!0){pt(e,t,i)}_getConfig(e){return e=this._mergeConfigObj(e,this._element),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}static getInstance(e){return Ye.get(it(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,"object"==typeof t?t:null)}static get VERSION(){return"5.3.2"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(e){return`${e}${this.EVENT_KEY}`}}const Ot=e=>{let t=e.getAttribute("data-bs-target");if(!t||"#"===t){let i=e.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),t=i&&"#"!==i?Qe(i.trim()):null}return t},Ft={find:(e,t=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(t,e)),findOne:(e,t=document.documentElement)=>Element.prototype.querySelector.call(t,e),children:(e,t)=>[].concat(...e.children).filter((e=>e.matches(t))),parents(e,t){const i=[];let r=e.parentNode.closest(t);for(;r;)i.push(r),r=r.parentNode.closest(t);return i},prev(e,t){let i=e.previousElementSibling;for(;i;){if(i.matches(t))return[i];i=i.previousElementSibling}return[]},next(e,t){let i=e.nextElementSibling;for(;i;){if(i.matches(t))return[i];i=i.nextElementSibling}return[]},focusableChildren(e){const t=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((e=>`${e}:not([tabindex^="-"])`)).join(",");return this.find(t,e).filter((e=>!nt(e)&&rt(e)))},getSelectorFromElement(e){const t=Ot(e);return t&&Ft.findOne(t)?t:null},getElementFromSelector(e){const t=Ot(e);return t?Ft.findOne(t):null},getMultipleElementsFromSelector(e){const t=Ot(e);return t?Ft.find(t):[]}},jt=(e,t="hide")=>{const i=`click.dismiss${e.EVENT_KEY}`,r=e.NAME;It.on(document,i,`[data-bs-dismiss="${r}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),nt(this))return;const n=Ft.getElementFromSelector(this)||this.closest(`.${r}`);e.getOrCreateInstance(n)[t]()}))},Ut=".bs.alert",Nt=`close${Ut}`,Vt=`closed${Ut}`;class $t extends Bt{static get NAME(){return"alert"}close(){if(It.trigger(this._element,Nt).defaultPrevented)return;this._element.classList.remove("show");const e=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,e)}_destroyElement(){this._element.remove(),It.trigger(this._element,Vt),this.dispose()}static jQueryInterface(e){return this.each((function(){const t=$t.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}jt($t,"close"),ut($t);const Gt='[data-bs-toggle="button"]';class qt extends Bt{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(e){return this.each((function(){const t=qt.getOrCreateInstance(this);"toggle"===e&&t[e]()}))}}It.on(document,"click.bs.button.data-api",Gt,(e=>{e.preventDefault();const t=e.target.closest(Gt);qt.getOrCreateInstance(t).toggle()})),ut(qt);const Zt=".bs.swipe",Wt=`touchstart${Zt}`,Ht=`touchmove${Zt}`,Xt=`touchend${Zt}`,Kt=`pointerdown${Zt}`,Yt=`pointerup${Zt}`,Jt={endCallback:null,leftCallback:null,rightCallback:null},Qt={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class ei extends Rt{constructor(e,t){super(),this._element=e,e&&ei.isSupported()&&(this._config=this._getConfig(t),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return Jt}static get DefaultType(){return Qt}static get NAME(){return"swipe"}dispose(){It.off(this._element,Zt)}_start(e){this._supportPointerEvents?this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX):this._deltaX=e.touches[0].clientX}_end(e){this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX-this._deltaX),this._handleSwipe(),dt(this._config.endCallback)}_move(e){this._deltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this._deltaX}_handleSwipe(){const e=Math.abs(this._deltaX);if(e<=40)return;const t=e/this._deltaX;this._deltaX=0,t&&dt(t>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(It.on(this._element,Kt,(e=>this._start(e))),It.on(this._element,Yt,(e=>this._end(e))),this._element.classList.add("pointer-event")):(It.on(this._element,Wt,(e=>this._start(e))),It.on(this._element,Ht,(e=>this._move(e))),It.on(this._element,Xt,(e=>this._end(e))))}_eventIsPointerPenTouch(e){return this._supportPointerEvents&&("pen"===e.pointerType||"touch"===e.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const ti=".bs.carousel",ii=".data-api",ri="next",ni="prev",oi="left",si="right",ai=`slide${ti}`,li=`slid${ti}`,ci=`keydown${ti}`,hi=`mouseenter${ti}`,ui=`mouseleave${ti}`,di=`dragstart${ti}`,pi=`load${ti}${ii}`,fi=`click${ti}${ii}`,mi="carousel",_i="active",gi=".active",yi=".carousel-item",xi=gi+yi,vi={ArrowLeft:si,ArrowRight:oi},bi={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},wi={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class Ti extends Bt{constructor(e,t){super(e,t),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=Ft.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===mi&&this.cycle()}static get Default(){return bi}static get DefaultType(){return wi}static get NAME(){return"carousel"}next(){this._slide(ri)}nextWhenVisible(){!document.hidden&&rt(this._element)&&this.next()}prev(){this._slide(ni)}pause(){this._isSliding&&et(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?It.one(this._element,li,(()=>this.cycle())):this.cycle())}to(e){const t=this._getItems();if(e>t.length-1||e<0)return;if(this._isSliding)return void It.one(this._element,li,(()=>this.to(e)));const i=this._getItemIndex(this._getActive());if(i===e)return;const r=e>i?ri:ni;this._slide(r,t[e])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(e){return e.defaultInterval=e.interval,e}_addEventListeners(){this._config.keyboard&&It.on(this._element,ci,(e=>this._keydown(e))),"hover"===this._config.pause&&(It.on(this._element,hi,(()=>this.pause())),It.on(this._element,ui,(()=>this._maybeEnableCycle()))),this._config.touch&&ei.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const e of Ft.find(".carousel-item img",this._element))It.on(e,di,(e=>e.preventDefault()));const e={leftCallback:()=>this._slide(this._directionToOrder(oi)),rightCallback:()=>this._slide(this._directionToOrder(si)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new ei(this._element,e)}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;const t=vi[e.key];t&&(e.preventDefault(),this._slide(this._directionToOrder(t)))}_getItemIndex(e){return this._getItems().indexOf(e)}_setActiveIndicatorElement(e){if(!this._indicatorsElement)return;const t=Ft.findOne(gi,this._indicatorsElement);t.classList.remove(_i),t.removeAttribute("aria-current");const i=Ft.findOne(`[data-bs-slide-to="${e}"]`,this._indicatorsElement);i&&(i.classList.add(_i),i.setAttribute("aria-current","true"))}_updateInterval(){const e=this._activeElement||this._getActive();if(!e)return;const t=Number.parseInt(e.getAttribute("data-bs-interval"),10);this._config.interval=t||this._config.defaultInterval}_slide(e,t=null){if(this._isSliding)return;const i=this._getActive(),r=e===ri,n=t||ft(this._getItems(),i,r,this._config.wrap);if(n===i)return;const o=this._getItemIndex(n),s=t=>It.trigger(this._element,t,{relatedTarget:n,direction:this._orderToDirection(e),from:this._getItemIndex(i),to:o});if(s(ai).defaultPrevented)return;if(!i||!n)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=n;const l=r?"carousel-item-start":"carousel-item-end",c=r?"carousel-item-next":"carousel-item-prev";n.classList.add(c),at(n),i.classList.add(l),n.classList.add(l);this._queueCallback((()=>{n.classList.remove(l,c),n.classList.add(_i),i.classList.remove(_i,c,l),this._isSliding=!1,s(li)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return Ft.findOne(xi,this._element)}_getItems(){return Ft.find(yi,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(e){return ht()?e===oi?ni:ri:e===oi?ri:ni}_orderToDirection(e){return ht()?e===ni?oi:si:e===ni?si:oi}static jQueryInterface(e){return this.each((function(){const t=Ti.getOrCreateInstance(this,e);if("number"!=typeof e){if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}else t.to(e)}))}}It.on(document,fi,"[data-bs-slide], [data-bs-slide-to]",(function(e){const t=Ft.getElementFromSelector(this);if(!t||!t.classList.contains(mi))return;e.preventDefault();const i=Ti.getOrCreateInstance(t),r=this.getAttribute("data-bs-slide-to");return r?(i.to(r),void i._maybeEnableCycle()):"next"===Dt.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),It.on(window,pi,(()=>{const e=Ft.find('[data-bs-ride="carousel"]');for(const t of e)Ti.getOrCreateInstance(t)})),ut(Ti);const Ei=".bs.collapse",Ai=`show${Ei}`,Si=`shown${Ei}`,Mi=`hide${Ei}`,Ci=`hidden${Ei}`,ki=`click${Ei}.data-api`,Ii="show",Pi="collapse",zi="collapsing",Li=`:scope .${Pi} .${Pi}`,Di='[data-bs-toggle="collapse"]',Ri={parent:null,toggle:!0},Bi={parent:"(null|element)",toggle:"boolean"};class Oi extends Bt{constructor(e,t){super(e,t),this._isTransitioning=!1,this._triggerArray=[];const i=Ft.find(Di);for(const e of i){const t=Ft.getSelectorFromElement(e),i=Ft.find(t).filter((e=>e===this._element));null!==t&&i.length&&this._triggerArray.push(e)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Ri}static get DefaultType(){return Bi}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let e=[];if(this._config.parent&&(e=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((e=>e!==this._element)).map((e=>Oi.getOrCreateInstance(e,{toggle:!1})))),e.length&&e[0]._isTransitioning)return;if(It.trigger(this._element,Ai).defaultPrevented)return;for(const t of e)t.hide();const t=this._getDimension();this._element.classList.remove(Pi),this._element.classList.add(zi),this._element.style[t]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${t[0].toUpperCase()+t.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(zi),this._element.classList.add(Pi,Ii),this._element.style[t]="",It.trigger(this._element,Si)}),this._element,!0),this._element.style[t]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(It.trigger(this._element,Mi).defaultPrevented)return;const e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,at(this._element),this._element.classList.add(zi),this._element.classList.remove(Pi,Ii);for(const e of this._triggerArray){const t=Ft.getElementFromSelector(e);t&&!this._isShown(t)&&this._addAriaAndCollapsedClass([e],!1)}this._isTransitioning=!0;this._element.style[e]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(zi),this._element.classList.add(Pi),It.trigger(this._element,Ci)}),this._element,!0)}_isShown(e=this._element){return e.classList.contains(Ii)}_configAfterMerge(e){return e.toggle=Boolean(e.toggle),e.parent=it(e.parent),e}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const e=this._getFirstLevelChildren(Di);for(const t of e){const e=Ft.getElementFromSelector(t);e&&this._addAriaAndCollapsedClass([t],this._isShown(e))}}_getFirstLevelChildren(e){const t=Ft.find(Li,this._config.parent);return Ft.find(e,this._config.parent).filter((e=>!t.includes(e)))}_addAriaAndCollapsedClass(e,t){if(e.length)for(const i of e)i.classList.toggle("collapsed",!t),i.setAttribute("aria-expanded",t)}static jQueryInterface(e){const t={};return"string"==typeof e&&/show|hide/.test(e)&&(t.toggle=!1),this.each((function(){const i=Oi.getOrCreateInstance(this,t);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}))}}It.on(document,ki,Di,(function(e){("A"===e.target.tagName||e.delegateTarget&&"A"===e.delegateTarget.tagName)&&e.preventDefault();for(const e of Ft.getMultipleElementsFromSelector(this))Oi.getOrCreateInstance(e,{toggle:!1}).toggle()})),ut(Oi);const Fi="dropdown",ji=".bs.dropdown",Ui=".data-api",Ni="ArrowUp",Vi="ArrowDown",$i=`hide${ji}`,Gi=`hidden${ji}`,qi=`show${ji}`,Zi=`shown${ji}`,Wi=`click${ji}${Ui}`,Hi=`keydown${ji}${Ui}`,Xi=`keyup${ji}${Ui}`,Ki="show",Yi='[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',Ji=`${Yi}.${Ki}`,Qi=".dropdown-menu",er=ht()?"top-end":"top-start",tr=ht()?"top-start":"top-end",ir=ht()?"bottom-end":"bottom-start",rr=ht()?"bottom-start":"bottom-end",nr=ht()?"left-start":"right-start",or=ht()?"right-start":"left-start",sr={autoClose:!0,boundary:"clippingParents",display:"dynamic",offset:[0,2],popperConfig:null,reference:"toggle"},ar={autoClose:"(boolean|string)",boundary:"(string|element)",display:"string",offset:"(array|string|function)",popperConfig:"(null|object|function)",reference:"(string|element|object)"};class lr extends Bt{constructor(e,t){super(e,t),this._popper=null,this._parent=this._element.parentNode,this._menu=Ft.next(this._element,Qi)[0]||Ft.prev(this._element,Qi)[0]||Ft.findOne(Qi,this._parent),this._inNavbar=this._detectNavbar()}static get Default(){return sr}static get DefaultType(){return ar}static get NAME(){return Fi}toggle(){return this._isShown()?this.hide():this.show()}show(){if(nt(this._element)||this._isShown())return;const e={relatedTarget:this._element};if(!It.trigger(this._element,qi,e).defaultPrevented){if(this._createPopper(),"ontouchstart"in document.documentElement&&!this._parent.closest(".navbar-nav"))for(const e of[].concat(...document.body.children))It.on(e,"mouseover",st);this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(Ki),this._element.classList.add(Ki),It.trigger(this._element,Zi,e)}}hide(){if(nt(this._element)||!this._isShown())return;const e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){if(!It.trigger(this._element,$i,e).defaultPrevented){if("ontouchstart"in document.documentElement)for(const e of[].concat(...document.body.children))It.off(e,"mouseover",st);this._popper&&this._popper.destroy(),this._menu.classList.remove(Ki),this._element.classList.remove(Ki),this._element.setAttribute("aria-expanded","false"),Dt.removeDataAttribute(this._menu,"popper"),It.trigger(this._element,Gi,e)}}_getConfig(e){if("object"==typeof(e=super._getConfig(e)).reference&&!tt(e.reference)&&"function"!=typeof e.reference.getBoundingClientRect)throw new TypeError(`${Fi.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(){if(void 0===Xe)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=this._parent:tt(this._config.reference)?e=it(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const t=this._getPopperConfig();this._popper=He(e,this._menu,t)}_isShown(){return this._menu.classList.contains(Ki)}_getPlacement(){const e=this._parent;if(e.classList.contains("dropend"))return nr;if(e.classList.contains("dropstart"))return or;if(e.classList.contains("dropup-center"))return"top";if(e.classList.contains("dropdown-center"))return"bottom";const t="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return e.classList.contains("dropup")?t?tr:er:t?rr:ir}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_getPopperConfig(){const e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(Dt.setDataAttribute(this._menu,"popper","static"),e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...dt(this._config.popperConfig,[e])}}_selectMenuItem({key:e,target:t}){const i=Ft.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((e=>rt(e)));i.length&&ft(i,t,e===Vi,!i.includes(t)).focus()}static jQueryInterface(e){return this.each((function(){const t=lr.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}static clearMenus(e){if(2===e.button||"keyup"===e.type&&"Tab"!==e.key)return;const t=Ft.find(Ji);for(const i of t){const t=lr.getInstance(i);if(!t||!1===t._config.autoClose)continue;const r=e.composedPath(),n=r.includes(t._menu);if(r.includes(t._element)||"inside"===t._config.autoClose&&!n||"outside"===t._config.autoClose&&n)continue;if(t._menu.contains(e.target)&&("keyup"===e.type&&"Tab"===e.key||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;const o={relatedTarget:t._element};"click"===e.type&&(o.clickEvent=e),t._completeHide(o)}}static dataApiKeydownHandler(e){const t=/input|textarea/i.test(e.target.tagName),i="Escape"===e.key,r=[Ni,Vi].includes(e.key);if(!r&&!i)return;if(t&&!i)return;e.preventDefault();const n=this.matches(Yi)?this:Ft.prev(this,Yi)[0]||Ft.next(this,Yi)[0]||Ft.findOne(Yi,e.delegateTarget.parentNode),o=lr.getOrCreateInstance(n);if(r)return e.stopPropagation(),o.show(),void o._selectMenuItem(e);o._isShown()&&(e.stopPropagation(),o.hide(),n.focus())}}It.on(document,Hi,Yi,lr.dataApiKeydownHandler),It.on(document,Hi,Qi,lr.dataApiKeydownHandler),It.on(document,Wi,lr.clearMenus),It.on(document,Xi,lr.clearMenus),It.on(document,Wi,Yi,(function(e){e.preventDefault(),lr.getOrCreateInstance(this).toggle()})),ut(lr);const cr="backdrop",hr="show",ur=`mousedown.bs.${cr}`,dr={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},pr={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class fr extends Rt{constructor(e){super(),this._config=this._getConfig(e),this._isAppended=!1,this._element=null}static get Default(){return dr}static get DefaultType(){return pr}static get NAME(){return cr}show(e){if(!this._config.isVisible)return void dt(e);this._append();const t=this._getElement();this._config.isAnimated&&at(t),t.classList.add(hr),this._emulateAnimation((()=>{dt(e)}))}hide(e){this._config.isVisible?(this._getElement().classList.remove(hr),this._emulateAnimation((()=>{this.dispose(),dt(e)}))):dt(e)}dispose(){this._isAppended&&(It.off(this._element,ur),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add("fade"),this._element=e}return this._element}_configAfterMerge(e){return e.rootElement=it(e.rootElement),e}_append(){if(this._isAppended)return;const e=this._getElement();this._config.rootElement.append(e),It.on(e,ur,(()=>{dt(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(e){pt(e,this._getElement(),this._config.isAnimated)}}const mr=".bs.focustrap",_r=`focusin${mr}`,gr=`keydown.tab${mr}`,yr="backward",xr={autofocus:!0,trapElement:null},vr={autofocus:"boolean",trapElement:"element"};class br extends Rt{constructor(e){super(),this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return xr}static get DefaultType(){return vr}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),It.off(document,mr),It.on(document,_r,(e=>this._handleFocusin(e))),It.on(document,gr,(e=>this._handleKeydown(e))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,It.off(document,mr))}_handleFocusin(e){const{trapElement:t}=this._config;if(e.target===document||e.target===t||t.contains(e.target))return;const i=Ft.focusableChildren(t);0===i.length?t.focus():this._lastTabNavDirection===yr?i[i.length-1].focus():i[0].focus()}_handleKeydown(e){"Tab"===e.key&&(this._lastTabNavDirection=e.shiftKey?yr:"forward")}}const wr=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",Tr=".sticky-top",Er="padding-right",Ar="margin-right";class Sr{constructor(){this._element=document.body}getWidth(){const e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){const e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,Er,(t=>t+e)),this._setElementAttributes(wr,Er,(t=>t+e)),this._setElementAttributes(Tr,Ar,(t=>t-e))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,Er),this._resetElementAttributes(wr,Er),this._resetElementAttributes(Tr,Ar)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,i){const r=this.getWidth();this._applyManipulationCallback(e,(e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+r)return;this._saveInitialAttribute(e,t);const n=window.getComputedStyle(e).getPropertyValue(t);e.style.setProperty(t,`${i(Number.parseFloat(n))}px`)}))}_saveInitialAttribute(e,t){const i=e.style.getPropertyValue(t);i&&Dt.setDataAttribute(e,t,i)}_resetElementAttributes(e,t){this._applyManipulationCallback(e,(e=>{const i=Dt.getDataAttribute(e,t);null!==i?(Dt.removeDataAttribute(e,t),e.style.setProperty(t,i)):e.style.removeProperty(t)}))}_applyManipulationCallback(e,t){if(tt(e))t(e);else for(const i of Ft.find(e,this._element))t(i)}}const Mr=".bs.modal",Cr=`hide${Mr}`,kr=`hidePrevented${Mr}`,Ir=`hidden${Mr}`,Pr=`show${Mr}`,zr=`shown${Mr}`,Lr=`resize${Mr}`,Dr=`click.dismiss${Mr}`,Rr=`mousedown.dismiss${Mr}`,Br=`keydown.dismiss${Mr}`,Or=`click${Mr}.data-api`,Fr="modal-open",jr="show",Ur="modal-static",Nr={backdrop:!0,focus:!0,keyboard:!0},Vr={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class $r extends Bt{constructor(e,t){super(e,t),this._dialog=Ft.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new Sr,this._addEventListeners()}static get Default(){return Nr}static get DefaultType(){return Vr}static get NAME(){return"modal"}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||this._isTransitioning)return;It.trigger(this._element,Pr,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(Fr),this._adjustDialog(),this._backdrop.show((()=>this._showElement(e))))}hide(){if(!this._isShown||this._isTransitioning)return;It.trigger(this._element,Cr).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(jr),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated()))}dispose(){It.off(window,Mr),It.off(this._dialog,Mr),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new fr({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new br({trapElement:this._element})}_showElement(e){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const t=Ft.findOne(".modal-body",this._dialog);t&&(t.scrollTop=0),at(this._element),this._element.classList.add(jr);this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,It.trigger(this._element,zr,{relatedTarget:e})}),this._dialog,this._isAnimated())}_addEventListeners(){It.on(this._element,Br,(e=>{"Escape"===e.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),It.on(window,Lr,(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),It.on(this._element,Rr,(e=>{It.one(this._element,Dr,(t=>{this._element===e.target&&this._element===t.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())}))}))}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(Fr),this._resetAdjustments(),this._scrollBar.reset(),It.trigger(this._element,Ir)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(It.trigger(this._element,kr).defaultPrevented)return;const e=this._element.scrollHeight>document.documentElement.clientHeight,t=this._element.style.overflowY;"hidden"===t||this._element.classList.contains(Ur)||(e||(this._element.style.overflowY="hidden"),this._element.classList.add(Ur),this._queueCallback((()=>{this._element.classList.remove(Ur),this._queueCallback((()=>{this._element.style.overflowY=t}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const e=this._element.scrollHeight>document.documentElement.clientHeight,t=this._scrollBar.getWidth(),i=t>0;if(i&&!e){const e=ht()?"paddingLeft":"paddingRight";this._element.style[e]=`${t}px`}if(!i&&e){const e=ht()?"paddingRight":"paddingLeft";this._element.style[e]=`${t}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each((function(){const i=$r.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e](t)}}))}}It.on(document,Or,'[data-bs-toggle="modal"]',(function(e){const t=Ft.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),It.one(t,Pr,(e=>{e.defaultPrevented||It.one(t,Ir,(()=>{rt(this)&&this.focus()}))}));const i=Ft.findOne(".modal.show");i&&$r.getInstance(i).hide();$r.getOrCreateInstance(t).toggle(this)})),jt($r),ut($r);const Gr=".bs.offcanvas",qr=".data-api",Zr=`load${Gr}${qr}`,Wr="show",Hr="showing",Xr="hiding",Kr=".offcanvas.show",Yr=`show${Gr}`,Jr=`shown${Gr}`,Qr=`hide${Gr}`,en=`hidePrevented${Gr}`,tn=`hidden${Gr}`,rn=`resize${Gr}`,nn=`click${Gr}${qr}`,on=`keydown.dismiss${Gr}`,sn={backdrop:!0,keyboard:!0,scroll:!1},an={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class ln extends Bt{constructor(e,t){super(e,t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return sn}static get DefaultType(){return an}static get NAME(){return"offcanvas"}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown)return;if(It.trigger(this._element,Yr,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._backdrop.show(),this._config.scroll||(new Sr).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Hr);this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Wr),this._element.classList.remove(Hr),It.trigger(this._element,Jr,{relatedTarget:e})}),this._element,!0)}hide(){if(!this._isShown)return;if(It.trigger(this._element,Qr).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(Xr),this._backdrop.hide();this._queueCallback((()=>{this._element.classList.remove(Wr,Xr),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new Sr).reset(),It.trigger(this._element,tn)}),this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const e=Boolean(this._config.backdrop);return new fr({className:"offcanvas-backdrop",isVisible:e,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:e?()=>{"static"!==this._config.backdrop?this.hide():It.trigger(this._element,en)}:null})}_initializeFocusTrap(){return new br({trapElement:this._element})}_addEventListeners(){It.on(this._element,on,(e=>{"Escape"===e.key&&(this._config.keyboard?this.hide():It.trigger(this._element,en))}))}static jQueryInterface(e){return this.each((function(){const t=ln.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}It.on(document,nn,'[data-bs-toggle="offcanvas"]',(function(e){const t=Ft.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),nt(this))return;It.one(t,tn,(()=>{rt(this)&&this.focus()}));const i=Ft.findOne(Kr);i&&i!==t&&ln.getInstance(i).hide();ln.getOrCreateInstance(t).toggle(this)})),It.on(window,Zr,(()=>{for(const e of Ft.find(Kr))ln.getOrCreateInstance(e).show()})),It.on(window,rn,(()=>{for(const e of Ft.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(e).position&&ln.getOrCreateInstance(e).hide()})),jt(ln),ut(ln);const cn={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},hn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),un=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,dn=(e,t)=>{const i=e.nodeName.toLowerCase();return t.includes(i)?!hn.has(i)||Boolean(un.test(e.nodeValue)):t.filter((e=>e instanceof RegExp)).some((e=>e.test(i)))};const pn={allowList:cn,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
"},fn={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},mn={entry:"(string|element|function|null)",selector:"(string|element)"};class _n extends Rt{constructor(e){super(),this._config=this._getConfig(e)}static get Default(){return pn}static get DefaultType(){return fn}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((e=>this._resolvePossibleFunction(e))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(e){return this._checkContent(e),this._config.content={...this._config.content,...e},this}toHtml(){const e=document.createElement("div");e.innerHTML=this._maybeSanitize(this._config.template);for(const[t,i]of Object.entries(this._config.content))this._setContent(e,i,t);const t=e.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&t.classList.add(...i.split(" ")),t}_typeCheckConfig(e){super._typeCheckConfig(e),this._checkContent(e.content)}_checkContent(e){for(const[t,i]of Object.entries(e))super._typeCheckConfig({selector:t,entry:i},mn)}_setContent(e,t,i){const r=Ft.findOne(i,e);r&&((t=this._resolvePossibleFunction(t))?tt(t)?this._putElementInTemplate(it(t),r):this._config.html?r.innerHTML=this._maybeSanitize(t):r.textContent=t:r.remove())}_maybeSanitize(e){return this._config.sanitize?function(e,t,i){if(!e.length)return e;if(i&&"function"==typeof i)return i(e);const r=(new window.DOMParser).parseFromString(e,"text/html"),n=[].concat(...r.body.querySelectorAll("*"));for(const e of n){const i=e.nodeName.toLowerCase();if(!Object.keys(t).includes(i)){e.remove();continue}const r=[].concat(...e.attributes),n=[].concat(t["*"]||[],t[i]||[]);for(const t of r)dn(t,n)||e.removeAttribute(t.nodeName)}return r.body.innerHTML}(e,this._config.allowList,this._config.sanitizeFn):e}_resolvePossibleFunction(e){return dt(e,[this])}_putElementInTemplate(e,t){if(this._config.html)return t.innerHTML="",void t.append(e);t.textContent=e.textContent}}const gn=new Set(["sanitize","allowList","sanitizeFn"]),yn="fade",xn="show",vn=".modal",bn="hide.bs.modal",wn="hover",Tn="focus",En={AUTO:"auto",TOP:"top",RIGHT:ht()?"left":"right",BOTTOM:"bottom",LEFT:ht()?"right":"left"},An={allowList:cn,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},Sn={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class Mn extends Bt{constructor(e,t){if(void 0===Xe)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e,t),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return An}static get DefaultType(){return Sn}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),It.off(this._element.closest(vn),bn,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const e=It.trigger(this._element,this.constructor.eventName("show")),t=(ot(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(e.defaultPrevented||!t)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:r}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(r.append(i),It.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(xn),"ontouchstart"in document.documentElement)for(const e of[].concat(...document.body.children))It.on(e,"mouseover",st);this._queueCallback((()=>{It.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(!this._isShown())return;if(It.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented)return;if(this._getTipElement().classList.remove(xn),"ontouchstart"in document.documentElement)for(const e of[].concat(...document.body.children))It.off(e,"mouseover",st);this._activeTrigger.click=!1,this._activeTrigger[Tn]=!1,this._activeTrigger[wn]=!1,this._isHovered=null;this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),It.trigger(this._element,this.constructor.eventName("hidden")))}),this.tip,this._isAnimated())}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(e){const t=this._getTemplateFactory(e).toHtml();if(!t)return null;t.classList.remove(yn,xn),t.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(e=>{do{e+=Math.floor(1e6*Math.random())}while(document.getElementById(e));return e})(this.constructor.NAME).toString();return t.setAttribute("id",i),this._isAnimated()&&t.classList.add(yn),t}setContent(e){this._newContent=e,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(e){return this._templateFactory?this._templateFactory.changeContent(e):this._templateFactory=new _n({...this._config,content:e,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(e){return this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(yn)}_isShown(){return this.tip&&this.tip.classList.contains(xn)}_createPopper(e){const t=dt(this._config.placement,[this,e,this._element]),i=En[t.toUpperCase()];return He(this._element,e,this._getPopperConfig(i))}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_resolvePossibleFunction(e){return dt(e,[this._element])}_getPopperConfig(e){const t={placement:e,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:e=>{this._getTipElement().setAttribute("data-popper-placement",e.state.placement)}}]};return{...t,...dt(this._config.popperConfig,[t])}}_setListeners(){const e=this._config.trigger.split(" ");for(const t of e)if("click"===t)It.on(this._element,this.constructor.eventName("click"),this._config.selector,(e=>{this._initializeOnDelegatedTarget(e).toggle()}));else if("manual"!==t){const e=t===wn?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=t===wn?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");It.on(this._element,e,this._config.selector,(e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusin"===e.type?Tn:wn]=!0,t._enter()})),It.on(this._element,i,this._config.selector,(e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusout"===e.type?Tn:wn]=t._element.contains(e.relatedTarget),t._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},It.on(this._element.closest(vn),bn,this._hideModalHandler)}_fixTitle(){const e=this._element.getAttribute("title");e&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",e),this._element.setAttribute("data-bs-original-title",e),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout((()=>{this._isHovered&&this.show()}),this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout((()=>{this._isHovered||this.hide()}),this._config.delay.hide))}_setTimeout(e,t){clearTimeout(this._timeout),this._timeout=setTimeout(e,t)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(e){const t=Dt.getDataAttributes(this._element);for(const e of Object.keys(t))gn.has(e)&&delete t[e];return e={...t,..."object"==typeof e&&e?e:{}},e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e.container=!1===e.container?document.body:it(e.container),"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),e}_getDelegateConfig(){const e={};for(const[t,i]of Object.entries(this._config))this.constructor.Default[t]!==i&&(e[t]=i);return e.selector=!1,e.trigger="manual",e}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(e){return this.each((function(){const t=Mn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}ut(Mn);const Cn={...Mn.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},kn={...Mn.DefaultType,content:"(null|string|element|function)"};class In extends Mn{static get Default(){return Cn}static get DefaultType(){return kn}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(e){return this.each((function(){const t=In.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}ut(In);const Pn=".bs.scrollspy",zn=`activate${Pn}`,Ln=`click${Pn}`,Dn=`load${Pn}.data-api`,Rn="active",Bn="[href]",On=".nav-link",Fn=`${On}, .nav-item > ${On}, .list-group-item`,jn={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},Un={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class Nn extends Bt{constructor(e,t){super(e,t),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return jn}static get DefaultType(){return Un}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const e of this._observableSections.values())this._observer.observe(e)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(e){return e.target=it(e.target)||document.body,e.rootMargin=e.offset?`${e.offset}px 0px -30%`:e.rootMargin,"string"==typeof e.threshold&&(e.threshold=e.threshold.split(",").map((e=>Number.parseFloat(e)))),e}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(It.off(this._config.target,Ln),It.on(this._config.target,Ln,Bn,(e=>{const t=this._observableSections.get(e.target.hash);if(t){e.preventDefault();const i=this._rootElement||window,r=t.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:r,behavior:"smooth"});i.scrollTop=r}})))}_getNewObserver(){const e={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((e=>this._observerCallback(e)),e)}_observerCallback(e){const t=e=>this._targetLinks.get(`#${e.target.id}`),i=e=>{this._previousScrollData.visibleEntryTop=e.target.offsetTop,this._process(t(e))},r=(this._rootElement||document.documentElement).scrollTop,n=r>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=r;for(const o of e){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(t(o));continue}const e=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(n&&e){if(i(o),!r)return}else n||e||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const e=Ft.find(Bn,this._config.target);for(const t of e){if(!t.hash||nt(t))continue;const e=Ft.findOne(decodeURI(t.hash),this._element);rt(e)&&(this._targetLinks.set(decodeURI(t.hash),t),this._observableSections.set(t.hash,e))}}_process(e){this._activeTarget!==e&&(this._clearActiveClass(this._config.target),this._activeTarget=e,e.classList.add(Rn),this._activateParents(e),It.trigger(this._element,zn,{relatedTarget:e}))}_activateParents(e){if(e.classList.contains("dropdown-item"))Ft.findOne(".dropdown-toggle",e.closest(".dropdown")).classList.add(Rn);else for(const t of Ft.parents(e,".nav, .list-group"))for(const e of Ft.prev(t,Fn))e.classList.add(Rn)}_clearActiveClass(e){e.classList.remove(Rn);const t=Ft.find(`${Bn}.${Rn}`,e);for(const e of t)e.classList.remove(Rn)}static jQueryInterface(e){return this.each((function(){const t=Nn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}))}}It.on(window,Dn,(()=>{for(const e of Ft.find('[data-bs-spy="scroll"]'))Nn.getOrCreateInstance(e)})),ut(Nn);const Vn=".bs.tab",$n=`hide${Vn}`,Gn=`hidden${Vn}`,qn=`show${Vn}`,Zn=`shown${Vn}`,Wn=`click${Vn}`,Hn=`keydown${Vn}`,Xn=`load${Vn}`,Kn="ArrowLeft",Yn="ArrowRight",Jn="ArrowUp",Qn="ArrowDown",eo="Home",to="End",io="active",ro="fade",no="show",oo=".dropdown-toggle",so=`:not(${oo})`,ao='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',lo=`${`.nav-link${so}, .list-group-item${so}, [role="tab"]${so}`}, ${ao}`,co=`.${io}[data-bs-toggle="tab"], .${io}[data-bs-toggle="pill"], .${io}[data-bs-toggle="list"]`;class ho extends Bt{constructor(e){super(e),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),It.on(this._element,Hn,(e=>this._keydown(e))))}static get NAME(){return"tab"}show(){const e=this._element;if(this._elemIsActive(e))return;const t=this._getActiveElem(),i=t?It.trigger(t,$n,{relatedTarget:e}):null;It.trigger(e,qn,{relatedTarget:t}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(t,e),this._activate(e,t))}_activate(e,t){if(!e)return;e.classList.add(io),this._activate(Ft.getElementFromSelector(e));this._queueCallback((()=>{"tab"===e.getAttribute("role")?(e.removeAttribute("tabindex"),e.setAttribute("aria-selected",!0),this._toggleDropDown(e,!0),It.trigger(e,Zn,{relatedTarget:t})):e.classList.add(no)}),e,e.classList.contains(ro))}_deactivate(e,t){if(!e)return;e.classList.remove(io),e.blur(),this._deactivate(Ft.getElementFromSelector(e));this._queueCallback((()=>{"tab"===e.getAttribute("role")?(e.setAttribute("aria-selected",!1),e.setAttribute("tabindex","-1"),this._toggleDropDown(e,!1),It.trigger(e,Gn,{relatedTarget:t})):e.classList.remove(no)}),e,e.classList.contains(ro))}_keydown(e){if(![Kn,Yn,Jn,Qn,eo,to].includes(e.key))return;e.stopPropagation(),e.preventDefault();const t=this._getChildren().filter((e=>!nt(e)));let i;if([eo,to].includes(e.key))i=t[e.key===eo?0:t.length-1];else{const r=[Yn,Qn].includes(e.key);i=ft(t,e.target,r,!0)}i&&(i.focus({preventScroll:!0}),ho.getOrCreateInstance(i).show())}_getChildren(){return Ft.find(lo,this._parent)}_getActiveElem(){return this._getChildren().find((e=>this._elemIsActive(e)))||null}_setInitialAttributes(e,t){this._setAttributeIfNotExists(e,"role","tablist");for(const e of t)this._setInitialAttributesOnChild(e)}_setInitialAttributesOnChild(e){e=this._getInnerElement(e);const t=this._elemIsActive(e),i=this._getOuterElement(e);e.setAttribute("aria-selected",t),i!==e&&this._setAttributeIfNotExists(i,"role","presentation"),t||e.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(e,"role","tab"),this._setInitialAttributesOnTargetPanel(e)}_setInitialAttributesOnTargetPanel(e){const t=Ft.getElementFromSelector(e);t&&(this._setAttributeIfNotExists(t,"role","tabpanel"),e.id&&this._setAttributeIfNotExists(t,"aria-labelledby",`${e.id}`))}_toggleDropDown(e,t){const i=this._getOuterElement(e);if(!i.classList.contains("dropdown"))return;const r=(e,r)=>{const n=Ft.findOne(e,i);n&&n.classList.toggle(r,t)};r(oo,io),r(".dropdown-menu",no),i.setAttribute("aria-expanded",t)}_setAttributeIfNotExists(e,t,i){e.hasAttribute(t)||e.setAttribute(t,i)}_elemIsActive(e){return e.classList.contains(io)}_getInnerElement(e){return e.matches(lo)?e:Ft.findOne(lo,e)}_getOuterElement(e){return e.closest(".nav-item, .list-group-item")||e}static jQueryInterface(e){return this.each((function(){const t=ho.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}))}}It.on(document,Wn,ao,(function(e){["A","AREA"].includes(this.tagName)&&e.preventDefault(),nt(this)||ho.getOrCreateInstance(this).show()})),It.on(window,Xn,(()=>{for(const e of Ft.find(co))ho.getOrCreateInstance(e)})),ut(ho);const uo=".bs.toast",po=`mouseover${uo}`,fo=`mouseout${uo}`,mo=`focusin${uo}`,_o=`focusout${uo}`,go=`hide${uo}`,yo=`hidden${uo}`,xo=`show${uo}`,vo=`shown${uo}`,bo="hide",wo="show",To="showing",Eo={animation:"boolean",autohide:"boolean",delay:"number"},Ao={animation:!0,autohide:!0,delay:5e3};class So extends Bt{constructor(e,t){super(e,t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return Ao}static get DefaultType(){return Eo}static get NAME(){return"toast"}show(){if(It.trigger(this._element,xo).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");this._element.classList.remove(bo),at(this._element),this._element.classList.add(wo,To),this._queueCallback((()=>{this._element.classList.remove(To),It.trigger(this._element,vo),this._maybeScheduleHide()}),this._element,this._config.animation)}hide(){if(!this.isShown())return;if(It.trigger(this._element,go).defaultPrevented)return;this._element.classList.add(To),this._queueCallback((()=>{this._element.classList.add(bo),this._element.classList.remove(To,wo),It.trigger(this._element,yo)}),this._element,this._config.animation)}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(wo),super.dispose()}isShown(){return this._element.classList.contains(wo)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t}if(t)return void this._clearTimeout();const i=e.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){It.on(this._element,po,(e=>this._onInteraction(e,!0))),It.on(this._element,fo,(e=>this._onInteraction(e,!1))),It.on(this._element,mo,(e=>this._onInteraction(e,!0))),It.on(this._element,_o,(e=>this._onInteraction(e,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each((function(){const t=So.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}jt(So),ut(So);var Mo,Co={exports:{}};Mo=Co,function(){function e(e){var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,describe:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,describe:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,describe:"Parses simple line breaks as
(GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,describe:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,describe:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",describe:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,describe:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,describe:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,describe:"Support for HTML Tag escaping. ex:
foo
",type:"boolean"},emoji:{defaultValue:!1,describe:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,describe:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``",type:"boolean"},ellipsis:{defaultValue:!0,describe:"Replaces three dots with the ellipsis unicode character",type:"boolean"},completeHTMLDocument:{defaultValue:!1,describe:"Outputs a complete html document, including ``, `` and `` tags",type:"boolean"},metadata:{defaultValue:!1,describe:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,describe:"Split adjacent blockquote blocks",type:"boolean"}};if(!1===e)return JSON.parse(JSON.stringify(t));var i={};for(var r in t)t.hasOwnProperty(r)&&(i[r]=t[r].defaultValue);return i}var t={},i={},r={},n=e(!0),o="vanilla",s={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:e(!0),allOn:function(){var t=e(!0),i={};for(var r in t)t.hasOwnProperty(r)&&(i[r]=!0);return i}()};function a(e,i){var r=i?"Error in "+i+" extension->":"Error in unnamed extension",n={valid:!0,error:""};t.helper.isArray(e)||(e=[e]);for(var o=0;o").replace(/&/g,"&")};var c=function(e,t,i,r){var n,o,s,a,l,c=r||"",h=c.indexOf("g")>-1,u=new RegExp(t+"|"+i,"g"+c.replace(/g/g,"")),d=new RegExp(t,c.replace(/g/g,"")),p=[];do{for(n=0;s=u.exec(e);)if(d.test(s[0]))n++||(a=(o=u.lastIndex)-s[0].length);else if(n&&! --n){l=s.index+s[0].length;var f={left:{start:a,end:o},match:{start:o,end:s.index},right:{start:s.index,end:l},wholeMatch:{start:a,end:l}};if(p.push(f),!h)return p}}while(n&&(u.lastIndex=o));return p};t.helper.matchRecursiveRegExp=function(e,t,i,r){for(var n=c(e,t,i,r),o=[],s=0;s0){var u=[];0!==a[0].wholeMatch.start&&u.push(e.slice(0,a[0].wholeMatch.start));for(var d=0;d=0?n+(r||0):n},t.helper.splitAtIndex=function(e,i){if(!t.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";return[e.substring(0,i),e.substring(i)]},t.helper.encodeEmailAddress=function(e){var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}];return e=e.replace(/./g,(function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e);else{var i=Math.random();e=i>.9?t[2](e):i>.45?t[1](e):t[0](e)}return e}))},t.helper.padEnd=function(e,t,i){return t>>=0,i=String(i||" "),e.length>t?String(e):((t-=e.length)>i.length&&(i+=i.repeat(t/i.length)),String(e)+i.slice(0,t))},"undefined"==typeof console&&(console={warn:function(e){alert(e)},log:function(e){alert(e)},error:function(e){throw e}}),t.helper.regexes={asteriskDashAndColon:/([*_:~])/g},t.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:':octocat:',showdown:"S"},t.Converter=function(e){var i={},l=[],c=[],h={},u=o,d={parsed:{},raw:"",format:""};function p(e,i){if(i=i||null,t.helper.isString(e)){if(i=e=t.helper.stdExtName(e),t.extensions[e])return console.warn("DEPRECATION WARNING: "+e+" is an old extension that uses a deprecated loading method.Please inform the developer that the extension should be updated!"),void function(e,i){"function"==typeof e&&(e=e(new t.Converter)),t.helper.isArray(e)||(e=[e]);var r=a(e,i);if(!r.valid)throw Error(r.error);for(var n=0;n[ \t]+¨NBSP;<"),!i){if(!window||!window.document)throw new Error("HTMLParser is undefined. If in a webworker or nodejs environment, you need to provide a WHATWG DOM and HTML such as JSDOM");i=window.document}var r=i.createElement("div");r.innerHTML=e;var n={preList:function(e){for(var i=e.querySelectorAll("pre"),r=[],n=0;n'}else r.push(i[n].innerHTML),i[n].innerHTML="",i[n].setAttribute("prenum",n.toString());return r}(r)};!function e(t){for(var i=0;i? ?(['"].*['"])?\)$/m)>-1)s="";else if(!s){if(o||(o=n.toLowerCase().replace(/ ?\n/g," ")),s="#"+o,t.helper.isUndefined(r.gUrls[o]))return e;s=r.gUrls[o],t.helper.isUndefined(r.gTitles[o])||(c=r.gTitles[o])}var h='"};return e=(e=(e=(e=(e=r.converter._dispatch("anchors.before",e,i,r)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,n)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,n)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,n)).replace(/\[([^\[\]]+)]()()()()()/g,n),i.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gim,(function(e,r,n,o,s){if("\\"===n)return r+o;if(!t.helper.isString(i.ghMentionsLink))throw new Error("ghMentionsLink option must be a string");var a=i.ghMentionsLink.replace(/\{u}/g,s),l="";return i.openLinksInNewWindow&&(l=' rel="noopener noreferrer" target="¨E95Eblank"'),r+'"+o+""}))),e=r.converter._dispatch("anchors.after",e,i,r)}));var h=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,u=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,d=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,p=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,f=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,m=function(e){return function(i,r,n,o,s,a,l){var c=n=n.replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback),h="",u="",d=r||"",p=l||"";return/^www\./i.test(n)&&(n=n.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&a&&(h=a),e.openLinksInNewWindow&&(u=' rel="noopener noreferrer" target="¨E95Eblank"'),d+'"+c+""+h+p}},_=function(e,i){return function(r,n,o){var s="mailto:";return n=n||"",o=t.subParser("unescapeSpecialChars")(o,e,i),e.encodeEmails?(s=t.helper.encodeEmailAddress(s+o),o=t.helper.encodeEmailAddress(o)):s+=o,n+''+o+""}};t.subParser("autoLinks",(function(e,t,i){return e=(e=(e=i.converter._dispatch("autoLinks.before",e,t,i)).replace(d,m(t))).replace(f,_(t,i)),e=i.converter._dispatch("autoLinks.after",e,t,i)})),t.subParser("simplifiedAutoLinks",(function(e,t,i){return t.simplifiedAutoLink?(e=i.converter._dispatch("simplifiedAutoLinks.before",e,t,i),e=(e=t.excludeTrailingPunctuationFromURLs?e.replace(u,m(t)):e.replace(h,m(t))).replace(p,_(t,i)),e=i.converter._dispatch("simplifiedAutoLinks.after",e,t,i)):e})),t.subParser("blockGamut",(function(e,i,r){return e=r.converter._dispatch("blockGamut.before",e,i,r),e=t.subParser("blockQuotes")(e,i,r),e=t.subParser("headers")(e,i,r),e=t.subParser("horizontalRule")(e,i,r),e=t.subParser("lists")(e,i,r),e=t.subParser("codeBlocks")(e,i,r),e=t.subParser("tables")(e,i,r),e=t.subParser("hashHTMLBlocks")(e,i,r),e=t.subParser("paragraphs")(e,i,r),e=r.converter._dispatch("blockGamut.after",e,i,r)})),t.subParser("blockQuotes",(function(e,i,r){e=r.converter._dispatch("blockQuotes.before",e,i,r),e+="\n\n";var n=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm;return i.splitAdjacentBlockquotes&&(n=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=e.replace(n,(function(e){return e=(e=(e=e.replace(/^[ \t]*>[ \t]?/gm,"")).replace(/¨0/g,"")).replace(/^[ \t]+$/gm,""),e=t.subParser("githubCodeBlocks")(e,i,r),e=(e=(e=t.subParser("blockGamut")(e,i,r)).replace(/(^|\n)/g,"$1 ")).replace(/(\s*
[^\r]+?<\/pre>)/gm,(function(e,t){var i=t;return i=(i=i.replace(/^  /gm,"¨0")).replace(/¨0/g,"")})),t.subParser("hashBlock")("
\n"+e+"\n
",i,r)})),e=r.converter._dispatch("blockQuotes.after",e,i,r)})),t.subParser("codeBlocks",(function(e,i,r){return e=r.converter._dispatch("codeBlocks.before",e,i,r),e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,(function(e,n,o){var s=n,a=o,l="\n";return s=t.subParser("outdent")(s,i,r),s=t.subParser("encodeCode")(s,i,r),s=(s=(s=t.subParser("detab")(s,i,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""),i.omitExtraWLInCodeBlocks&&(l=""),s="
"+s+l+"
",t.subParser("hashBlock")(s,i,r)+a})),e=e.replace(/¨0/,""),e=r.converter._dispatch("codeBlocks.after",e,i,r)})),t.subParser("codeSpans",(function(e,i,r){return void 0===(e=r.converter._dispatch("codeSpans.before",e,i,r))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,(function(e,n,o,s){var a=s;return a=(a=a.replace(/^([ \t]*)/g,"")).replace(/[ \t]*$/g,""),a=n+""+(a=t.subParser("encodeCode")(a,i,r))+"",a=t.subParser("hashHTMLSpans")(a,i,r)})),e=r.converter._dispatch("codeSpans.after",e,i,r)})),t.subParser("completeHTMLDocument",(function(e,t,i){if(!t.completeHTMLDocument)return e;e=i.converter._dispatch("completeHTMLDocument.before",e,t,i);var r="html",n="\n",o="",s='\n',a="",l="";for(var c in void 0!==i.metadata.parsed.doctype&&(n="\n","html"!==(r=i.metadata.parsed.doctype.toString().toLowerCase())&&"html5"!==r||(s='')),i.metadata.parsed)if(i.metadata.parsed.hasOwnProperty(c))switch(c.toLowerCase()){case"doctype":break;case"title":o=""+i.metadata.parsed.title+"\n";break;case"charset":s="html"===r||"html5"===r?'\n':'\n';break;case"language":case"lang":a=' lang="'+i.metadata.parsed[c]+'"',l+='\n';break;default:l+='\n'}return e=n+"\n\n"+o+s+l+"\n\n"+e.trim()+"\n\n",e=i.converter._dispatch("completeHTMLDocument.after",e,t,i)})),t.subParser("detab",(function(e,t,i){return e=(e=(e=(e=(e=(e=i.converter._dispatch("detab.before",e,t,i)).replace(/\t(?=\t)/g," ")).replace(/\t/g,"¨A¨B")).replace(/¨B(.+?)¨A/g,(function(e,t){for(var i=t,r=4-i.length%4,n=0;n/g,">"),e=i.converter._dispatch("encodeAmpsAndAngles.after",e,t,i)})),t.subParser("encodeBackslashEscapes",(function(e,i,r){return e=(e=(e=r.converter._dispatch("encodeBackslashEscapes.before",e,i,r)).replace(/\\(\\)/g,t.helper.escapeCharactersCallback)).replace(/\\([`*_{}\[\]()>#+.!~=|:-])/g,t.helper.escapeCharactersCallback),e=r.converter._dispatch("encodeBackslashEscapes.after",e,i,r)})),t.subParser("encodeCode",(function(e,i,r){return e=(e=r.converter._dispatch("encodeCode.before",e,i,r)).replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,t.helper.escapeCharactersCallback),e=r.converter._dispatch("encodeCode.after",e,i,r)})),t.subParser("escapeSpecialCharsWithinTagAttributes",(function(e,i,r){return e=(e=(e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,i,r)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,(function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)}))).replace(/-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,(function(e){return e.replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)})),e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,i,r)})),t.subParser("githubCodeBlocks",(function(e,i,r){return i.ghCodeBlocks?(e=r.converter._dispatch("githubCodeBlocks.before",e,i,r),e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,n,o,s){var a=i.omitExtraWLInCodeBlocks?"":"\n";return s=t.subParser("encodeCode")(s,i,r),s="
"+(s=(s=(s=t.subParser("detab")(s,i,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""))+a+"
",s=t.subParser("hashBlock")(s,i,r),"\n\n¨G"+(r.ghCodeBlocks.push({text:e,codeblock:s})-1)+"G\n\n"})),e=e.replace(/¨0/,""),r.converter._dispatch("githubCodeBlocks.after",e,i,r)):e})),t.subParser("hashBlock",(function(e,t,i){return e=(e=i.converter._dispatch("hashBlock.before",e,t,i)).replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(i.gHtmlBlocks.push(e)-1)+"K\n\n",e=i.converter._dispatch("hashBlock.after",e,t,i)})),t.subParser("hashCodeTags",(function(e,i,r){return e=r.converter._dispatch("hashCodeTags.before",e,i,r),e=t.helper.replaceRecursiveRegExp(e,(function(e,n,o,s){var a=o+t.subParser("encodeCode")(n,i,r)+s;return"¨C"+(r.gHtmlSpans.push(a)-1)+"C"}),"]*>","","gim"),e=r.converter._dispatch("hashCodeTags.after",e,i,r)})),t.subParser("hashElement",(function(e,t,i){return function(e,t){var r=t;return r=(r=(r=r.replace(/\n\n/g,"\n")).replace(/^\n/,"")).replace(/\n+$/g,""),r="\n\n¨K"+(i.gHtmlBlocks.push(r)-1)+"K\n\n"}})),t.subParser("hashHTMLBlocks",(function(e,i,r){e=r.converter._dispatch("hashHTMLBlocks.before",e,i,r);var n=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],o=function(e,t,i,n){var o=e;return-1!==i.search(/\bmarkdown\b/)&&(o=i+r.converter.makeHtml(t)+n),"\n\n¨K"+(r.gHtmlBlocks.push(o)-1)+"K\n\n"};i.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,(function(e,t){return"<"+t+">"})));for(var s=0;s]*>)","im"),c="<"+n[s]+"\\b[^>]*>",h="";-1!==(a=t.helper.regexIndexOf(e,l));){var u=t.helper.splitAtIndex(e,a),d=t.helper.replaceRecursiveRegExp(u[1],o,c,h,"im");if(d===u[1])break;e=u[0].concat(d)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,i,r)),e=(e=t.helper.replaceRecursiveRegExp(e,(function(e){return"\n\n¨K"+(r.gHtmlBlocks.push(e)-1)+"K\n\n"}),"^ {0,3}\x3c!--","--\x3e","gm")).replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,i,r)),e=r.converter._dispatch("hashHTMLBlocks.after",e,i,r)})),t.subParser("hashHTMLSpans",(function(e,t,i){function r(e){return"¨C"+(i.gHtmlSpans.push(e)-1)+"C"}return e=(e=(e=(e=(e=i.converter._dispatch("hashHTMLSpans.before",e,t,i)).replace(/<[^>]+?\/>/gi,(function(e){return r(e)}))).replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<[^>]+?>/gi,(function(e){return r(e)})),e=i.converter._dispatch("hashHTMLSpans.after",e,t,i)})),t.subParser("unhashHTMLSpans",(function(e,t,i){e=i.converter._dispatch("unhashHTMLSpans.before",e,t,i);for(var r=0;r]*>\\s*]*>","^ {0,3}\\s*
","gim"),e=r.converter._dispatch("hashPreCodeTags.after",e,i,r)})),t.subParser("headers",(function(e,i,r){e=r.converter._dispatch("headers.before",e,i,r);var n=isNaN(parseInt(i.headerLevelStart))?1:parseInt(i.headerLevelStart),o=i.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,s=i.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;e=(e=e.replace(o,(function(e,o){var s=t.subParser("spanGamut")(o,i,r),a=i.noHeaderId?"":' id="'+l(o)+'"',c=""+s+"";return t.subParser("hashBlock")(c,i,r)}))).replace(s,(function(e,o){var s=t.subParser("spanGamut")(o,i,r),a=i.noHeaderId?"":' id="'+l(o)+'"',c=n+1,h=""+s+"";return t.subParser("hashBlock")(h,i,r)}));var a=i.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm;function l(e){var n,o;if(i.customizedHeaderId){var s=e.match(/\{([^{]+?)}\s*$/);s&&s[1]&&(e=s[1])}return n=e,o=t.helper.isString(i.prefixHeaderId)?i.prefixHeaderId:!0===i.prefixHeaderId?"section-":"",i.rawPrefixHeaderId||(n=o+n),n=i.ghCompatibleHeaderId?n.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():i.rawHeaderId?n.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():n.replace(/[^\w]/g,"").toLowerCase(),i.rawPrefixHeaderId&&(n=o+n),r.hashLinkCounts[n]?n=n+"-"+r.hashLinkCounts[n]++:r.hashLinkCounts[n]=1,n}return e=e.replace(a,(function(e,o,s){var a=s;i.customizedHeaderId&&(a=s.replace(/\s?\{([^{]+?)}\s*$/,""));var c=t.subParser("spanGamut")(a,i,r),h=i.noHeaderId?"":' id="'+l(s)+'"',u=n-1+o.length,d=""+c+"";return t.subParser("hashBlock")(d,i,r)})),e=r.converter._dispatch("headers.after",e,i,r)})),t.subParser("horizontalRule",(function(e,i,r){e=r.converter._dispatch("horizontalRule.before",e,i,r);var n=t.subParser("hashBlock")("
",i,r);return e=(e=(e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,n)).replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,n)).replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,n),e=r.converter._dispatch("horizontalRule.after",e,i,r)})),t.subParser("images",(function(e,i,r){function n(e,i,n,o,s,a,l,c){var h=r.gUrls,u=r.gTitles,d=r.gDimensions;if(n=n.toLowerCase(),c||(c=""),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)o="";else if(""===o||null===o){if(""!==n&&null!==n||(n=i.toLowerCase().replace(/ ?\n/g," ")),o="#"+n,t.helper.isUndefined(h[n]))return e;o=h[n],t.helper.isUndefined(u[n])||(c=u[n]),t.helper.isUndefined(d[n])||(s=d[n].width,a=d[n].height)}i=i.replace(/"/g,""").replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback);var p=''+i+'"}return e=(e=(e=(e=(e=(e=r.converter._dispatch("images.before",e,i,r)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,n)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,(function(e,t,i,r,o,s,a,l){return n(e,t,i,r=r.replace(/\s/g,""),o,s,0,l)}))).replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,n)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,n)).replace(/!\[([^\[\]]+)]()()()()()/g,n),e=r.converter._dispatch("images.after",e,i,r)})),t.subParser("italicsAndBold",(function(e,t,i){function r(e,t,i){return t+e+i}return e=i.converter._dispatch("italicsAndBold.before",e,t,i),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return r(t,"","")}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return r(t,"","")}))).replace(/\b_(\S[\s\S]*?)_\b/g,(function(e,t){return r(t,"","")})):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/_([^\s_][\s\S]*?)_/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]*?)\*\*\*\B(?!\*)/g,(function(e,t,i){return r(i,t+"","")}))).replace(/([^*]|^)\B\*\*(\S[\s\S]*?)\*\*\B(?!\*)/g,(function(e,t,i){return r(i,t+"","")}))).replace(/([^*]|^)\B\*(\S[\s\S]*?)\*\B(?!\*)/g,(function(e,t,i){return r(i,t+"","")})):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*\*(\S[\s\S]*?)\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*([^\s*][\s\S]*?)\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),e=i.converter._dispatch("italicsAndBold.after",e,t,i)})),t.subParser("lists",(function(e,i,r){function n(e,n){r.gListLevel++,e=e.replace(/\n{2,}$/,"\n");var o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,s=/\n[ \t]*\n(?!¨0)/.test(e+="¨0");return i.disableForced4SpacesIndentedSublists&&(o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=(e=e.replace(o,(function(e,n,o,a,l,c,h){h=h&&""!==h.trim();var u=t.subParser("outdent")(l,i,r),d="";return c&&i.tasklists&&(d=' class="task-list-item" style="list-style-type: none;"',u=u.replace(/^[ \t]*\[(x|X| )?]/m,(function(){var e='-1?(u=t.subParser("githubCodeBlocks")(u,i,r),u=t.subParser("blockGamut")(u,i,r)):(u=(u=t.subParser("lists")(u,i,r)).replace(/\n$/,""),u=(u=t.subParser("hashHTMLBlocks")(u,i,r)).replace(/\n\n+/g,"\n\n"),u=s?t.subParser("paragraphs")(u,i,r):t.subParser("spanGamut")(u,i,r)),u=""+(u=u.replace("¨A",""))+"\n"}))).replace(/¨0/g,""),r.gListLevel--,n&&(e=e.replace(/\s+$/,"")),e}function o(e,t){if("ol"===t){var i=e.match(/^ *(\d+)\./);if(i&&"1"!==i[1])return' start="'+i[1]+'"'}return""}function s(e,t,r){var s=i.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,a=i.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,l="ul"===t?s:a,c="";if(-1!==e.search(l))!function i(h){var u=h.search(l),d=o(e,t);-1!==u?(c+="\n\n<"+t+d+">\n"+n(h.slice(0,u),!!r)+"\n",l="ul"==(t="ul"===t?"ol":"ul")?s:a,i(h.slice(u))):c+="\n\n<"+t+d+">\n"+n(h,!!r)+"\n"}(e);else{var h=o(e,t);c="\n\n<"+t+h+">\n"+n(e,!!r)+"\n"}return c}return e=r.converter._dispatch("lists.before",e,i,r),e+="¨0",e=(e=r.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,i){return s(t,i.search(/[*+-]/g)>-1?"ul":"ol",!0)})):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,i,r){return s(i,r.search(/[*+-]/g)>-1?"ul":"ol",!1)}))).replace(/¨0/,""),e=r.converter._dispatch("lists.after",e,i,r)})),t.subParser("metadata",(function(e,t,i){if(!t.metadata)return e;function r(e){i.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,(function(e,t,r){return i.metadata.parsed[t]=r,""}))}return e=(e=(e=(e=i.converter._dispatch("metadata.before",e,t,i)).replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,(function(e,t,i){return r(i),"¨M"}))).replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,(function(e,t,n){return t&&(i.metadata.format=t),r(n),"¨M"}))).replace(/¨M/g,""),e=i.converter._dispatch("metadata.after",e,t,i)})),t.subParser("outdent",(function(e,t,i){return e=(e=(e=i.converter._dispatch("outdent.before",e,t,i)).replace(/^(\t|[ ]{1,4})/gm,"¨0")).replace(/¨0/g,""),e=i.converter._dispatch("outdent.after",e,t,i)})),t.subParser("paragraphs",(function(e,i,r){for(var n=(e=(e=(e=r.converter._dispatch("paragraphs.before",e,i,r)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),o=[],s=n.length,a=0;a=0?o.push(l):l.search(/\S/)>=0&&(l=(l=t.subParser("spanGamut")(l,i,r)).replace(/^([ \t]*)/g,"

"),l+="

",o.push(l))}for(s=o.length,a=0;a]*>\s*]*>/.test(h)&&(u=!0)}o[a]=h}return e=(e=(e=o.join("\n")).replace(/^\n+/g,"")).replace(/\n+$/g,""),r.converter._dispatch("paragraphs.after",e,i,r)})),t.subParser("runExtension",(function(e,t,i,r){if(e.filter)t=e.filter(t,r.converter,i);else if(e.regex){var n=e.regex;n instanceof RegExp||(n=new RegExp(n,"g")),t=t.replace(n,e.replace)}return t})),t.subParser("spanGamut",(function(e,i,r){return e=r.converter._dispatch("spanGamut.before",e,i,r),e=t.subParser("codeSpans")(e,i,r),e=t.subParser("escapeSpecialCharsWithinTagAttributes")(e,i,r),e=t.subParser("encodeBackslashEscapes")(e,i,r),e=t.subParser("images")(e,i,r),e=t.subParser("anchors")(e,i,r),e=t.subParser("autoLinks")(e,i,r),e=t.subParser("simplifiedAutoLinks")(e,i,r),e=t.subParser("emoji")(e,i,r),e=t.subParser("underline")(e,i,r),e=t.subParser("italicsAndBold")(e,i,r),e=t.subParser("strikethrough")(e,i,r),e=t.subParser("ellipsis")(e,i,r),e=t.subParser("hashHTMLSpans")(e,i,r),e=t.subParser("encodeAmpsAndAngles")(e,i,r),i.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"
\n")):e=e.replace(/ +\n/g,"
\n"),e=r.converter._dispatch("spanGamut.after",e,i,r)})),t.subParser("strikethrough",(function(e,i,r){return i.strikethrough&&(e=(e=r.converter._dispatch("strikethrough.before",e,i,r)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,(function(e,n){return function(e){return i.simplifiedAutoLink&&(e=t.subParser("simplifiedAutoLinks")(e,i,r)),""+e+""}(n)})),e=r.converter._dispatch("strikethrough.after",e,i,r)),e})),t.subParser("stripLinkDefinitions",(function(e,i,r){var n=function(n,o,s,a,l,c,h){return o=o.toLowerCase(),e.toLowerCase().split(o).length-1<2?n:(s.match(/^data:.+?\/.+?;base64,/)?r.gUrls[o]=s.replace(/\s/g,""):r.gUrls[o]=t.subParser("encodeAmpsAndAngles")(s,i,r),c?c+h:(h&&(r.gTitles[o]=h.replace(/"|'/g,""")),i.parseImgDimensions&&a&&l&&(r.gDimensions[o]={width:a,height:l}),""))};return e=(e=(e=(e+="¨0").replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,n)).replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,n)).replace(/¨0/,"")})),t.subParser("tables",(function(e,i,r){if(!i.tables)return e;function n(e,n){return""+t.subParser("spanGamut")(e,i,r)+"\n"}function o(e){var o,s=e.split("\n");for(o=0;o"+(l=t.subParser("spanGamut")(l,i,r))+"\n"));for(o=0;o\n\n\n",n=0;n\n";for(var o=0;o\n"}return i+"\n\n"}(f,_)}return e=(e=(e=(e=r.converter._dispatch("tables.before",e,i,r)).replace(/\\(\|)/g,t.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,o)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,o),e=r.converter._dispatch("tables.after",e,i,r)})),t.subParser("underline",(function(e,i,r){return i.underline?(e=r.converter._dispatch("underline.before",e,i,r),e=(e=i.literalMidWordUnderscores?(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return""+t+""}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return""+t+""})):(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/(_)/g,t.helper.escapeCharactersCallback),e=r.converter._dispatch("underline.after",e,i,r)):e})),t.subParser("unescapeSpecialChars",(function(e,t,i){return e=(e=i.converter._dispatch("unescapeSpecialChars.before",e,t,i)).replace(/¨E(\d+)E/g,(function(e,t){var i=parseInt(t);return String.fromCharCode(i)})),e=i.converter._dispatch("unescapeSpecialChars.after",e,t,i)})),t.subParser("makeMarkdown.blockquote",(function(e,i){var r="";if(e.hasChildNodes())for(var n=e.childNodes,o=n.length,s=0;s ")})),t.subParser("makeMarkdown.codeBlock",(function(e,t){var i=e.getAttribute("language"),r=e.getAttribute("precodenum");return"```"+i+"\n"+t.preList[r]+"\n```"})),t.subParser("makeMarkdown.codeSpan",(function(e){return"`"+e.innerHTML+"`"})),t.subParser("makeMarkdown.emphasis",(function(e,i){var r="";if(e.hasChildNodes()){r+="*";for(var n=e.childNodes,o=n.length,s=0;s",e.hasAttribute("width")&&e.hasAttribute("height")&&(t+=" ="+e.getAttribute("width")+"x"+e.getAttribute("height")),e.hasAttribute("title")&&(t+=' "'+e.getAttribute("title")+'"'),t+=")"),t})),t.subParser("makeMarkdown.links",(function(e,i){var r="";if(e.hasChildNodes()&&e.hasAttribute("href")){var n=e.childNodes,o=n.length;r="[";for(var s=0;s",e.hasAttribute("title")&&(r+=' "'+e.getAttribute("title")+'"'),r+=")"}return r})),t.subParser("makeMarkdown.list",(function(e,i,r){var n="";if(!e.hasChildNodes())return"";for(var o=e.childNodes,s=o.length,a=e.getAttribute("start")||1,l=0;l"+t.preList[i]+""})),t.subParser("makeMarkdown.strikethrough",(function(e,i){var r="";if(e.hasChildNodes()){r+="~~";for(var n=e.childNodes,o=n.length,s=0;str>th"),l=e.querySelectorAll("tbody>tr");for(r=0;rf&&(f=m)}for(r=0;r/g,"\\$1>")).replace(/^#/gm,"\\#")).replace(/^(\s*)([-=]{3,})(\s*)$/,"$1\\$2$3")).replace(/^( {0,3}\d+)\./gm,"$1\\.")).replace(/^( {0,3})([+-])/gm,"$1\\$2")).replace(/]([\s]*)\(/g,"\\]$1\\(")).replace(/^ {0,3}\[([\S \t]*?)]:/gm,"\\[$1]:")})),Mo.exports?Mo.exports=t:this.showdown=t}.call(e);var ko=t(Co.exports);window.onload=async()=>{const e=new Proxy(new URLSearchParams(window.location.search),{get:(e,t)=>e.get(t)}),t=e.projection||"globe",i=e.id||"worldMap";let n=(await(await fetch("https://raw.githubusercontent.com/CIMEngine/MapList/main/index.json")).json())[i];n||alert(`Map ${i} not found`);let o={};o.external=e.external||n.external,o.external&&(o=await(await fetch(o.external)).json()),o.geoURL=e.geoURL||n.geoURL,o.countryInfoUrl=e.countryInfoURL||n.countryInfoURL,o.debug=e.debug||!1,o.icon=e.icon||n.icon,o.name=e.name||n.name,o.icon&&document.getElementById("icon").setAttribute("href",o.icon),o.name&&(document.title=o.name),r.accessToken="pk.eyJ1IjoiYXJ0ZWdvc2VyIiwiYSI6ImNrcDViN3BhcDAwbW0ydnBnOXZ0ZzFreXUifQ.FIVtaBNr9dr_TIw672Zqdw";let s=new r.Map({container:"map",style:"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true",center:[53.19,41.28],zoom:3,projection:t});s.addControl(new f({styles:[{label:"Streets",styleName:"Mapbox Streets",styleUrl:"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true"},{label:"Satellite",styleName:"Satellite",styleUrl:"mapbox://styles/artegoser/cliskjlhw00ug01pgfs9lesog?optimize=true"}]}),"top-left"),s.addControl(new _,"top-right"),s.addControl(new l({instant:!0}),"top-right"),o.debug&&s.addControl(new u({console:!0}),"bottom-right");let a=new ko.Converter;s.on("style.load",(async()=>{let e;s.loadImage("https://cimengine.github.io/map/icons/city.png",((e,t)=>{if(e)throw e;s.addImage("city",t)})),s.loadImage("https://cimengine.github.io/map/icons/capital.png",((e,t)=>{if(e)throw e;s.addImage("capital-city",t),s.addImage("capital",t)})),s.loadImage("https://cimengine.github.io/map/icons/landmark.png",((e,t)=>{if(e)throw e;s.addImage("landmark-0",t)})),function(...e){let t=e.shift();console.log(`%c ${t} `,"color:white; background-color: #78d6fa; border-radius:10px;",...e)}("Getting country data");let t=await fetch(o.countryInfoUrl);t=await t.json();let i={};for(let e=0;e
Population - ${t.properties.amount} people.
`:""}\n
\n ${t?.properties?.img?`
${t.properties.name} img
`:""}\n
\n
${t.properties.name}\n ${t.properties.name_ru?` - ${t.properties.name_ru}`:""}\n
\n
\n ${t.properties.description?`
${a.makeHtml(t.properties.description)}
`:""}\n
\n `).addTo(s);if("Polygon"===t.geometry.type||"MultiPolygon"===t.geometry.type){let o=i[t.properties.name]||{name:"gl js mapbox is awesome"};setTimeout((()=>{if("gl js mapbox is awesome"!==o.name&&e!==n)return(new r.Popup).setLngLat(n).setHTML(`\n
\n
\n \n
\n
\n
\n ${o.name}\n
\n
\n
\n ${JSON.parse(t.properties.tags||"[]").join(", ")}\n
\n
\n Founding date: ${o.date}\n
\n
\n ${o.description?`
${a.makeHtml(o.description)}
`:""}\n
\n
\n Area: ${t.properties.area} km²\n
\n
\n ${o.about?`About`:""}\n
\n
`).addTo(s)}),1)}}s.addSource("map-data",{type:"geojson",data:o.geoURL}),s.addLayer({id:"map-data-fill-outline",type:"line",source:"map-data",paint:{"line-color":["coalesce",["get","stroke"],"#0c7700"],"line-width":2,"line-opacity":.8}}),s.addLayer({id:"map-data-fill",type:"fill",source:"map-data",paint:{"fill-color":["get","fill"],"fill-opacity":["coalesce",["get","fill-opacity"],.3]}}),s.addLayer({id:"map-data-symbol",type:"symbol",source:"map-data",layout:{"icon-image":["get","type"],"icon-size":.15},minzoom:3}),s.on("click","map-data-fill",(e=>{const t=e.lngLat;for(;Math.abs(e.lngLat.lng-t[0])>180;)t[0]+=e.lngLat.lng>t[0]?360:-360;n(e.features[0],t)})),s.on("click","map-data-symbol",(e=>{const t=e.lngLat;for(;Math.abs(e.lngLat.lng-t[0])>180;)t[0]+=e.lngLat.lng>t[0]?360:-360;n(e.features[0],t)}))}))}; +const Je=new Map,Qe={set(e,t,i){Je.has(e)||Je.set(e,new Map);const r=Je.get(e);r.has(t)||0===r.size?r.set(t,i):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(r.keys())[0]}.`)},get:(e,t)=>Je.has(e)&&Je.get(e).get(t)||null,remove(e,t){if(!Je.has(e))return;const i=Je.get(e);i.delete(t),0===i.size&&Je.delete(e)}},et="transitionend",tt=e=>(e&&window.CSS&&window.CSS.escape&&(e=e.replace(/#([^\s"#']+)/g,((e,t)=>`#${CSS.escape(t)}`))),e),it=e=>{e.dispatchEvent(new Event(et))},rt=e=>!(!e||"object"!=typeof e)&&(void 0!==e.jquery&&(e=e[0]),void 0!==e.nodeType),nt=e=>rt(e)?e.jquery?e[0]:e:"string"==typeof e&&e.length>0?document.querySelector(tt(e)):null,ot=e=>{if(!rt(e)||0===e.getClientRects().length)return!1;const t="visible"===getComputedStyle(e).getPropertyValue("visibility"),i=e.closest("details:not([open])");if(!i)return t;if(i!==e){const t=e.closest("summary");if(t&&t.parentNode!==i)return!1;if(null===t)return!1}return t},st=e=>!e||e.nodeType!==Node.ELEMENT_NODE||(!!e.classList.contains("disabled")||(void 0!==e.disabled?e.disabled:e.hasAttribute("disabled")&&"false"!==e.getAttribute("disabled"))),at=e=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof e.getRootNode){const t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?at(e.parentNode):null},lt=()=>{},ct=e=>{e.offsetHeight},ht=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,ut=[],dt=()=>"rtl"===document.documentElement.dir,pt=e=>{var t;t=()=>{const t=ht();if(t){const i=e.NAME,r=t.fn[i];t.fn[i]=e.jQueryInterface,t.fn[i].Constructor=e,t.fn[i].noConflict=()=>(t.fn[i]=r,e.jQueryInterface)}},"loading"===document.readyState?(ut.length||document.addEventListener("DOMContentLoaded",(()=>{for(const e of ut)e()})),ut.push(t)):t()},ft=(e,t=[],i=e)=>"function"==typeof e?e(...t):i,mt=(e,t,i=!0)=>{if(!i)return void ft(e);const r=(e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:i}=window.getComputedStyle(e);const r=Number.parseFloat(t),n=Number.parseFloat(i);return r||n?(t=t.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(t)+Number.parseFloat(i))):0})(t)+5;let n=!1;const o=({target:i})=>{i===t&&(n=!0,t.removeEventListener(et,o),ft(e))};t.addEventListener(et,o),setTimeout((()=>{n||it(t)}),r)},_t=(e,t,i,r)=>{const n=e.length;let o=e.indexOf(t);return-1===o?!i&&r?e[n-1]:e[0]:(o+=i?1:-1,r&&(o=(o+n)%n),e[Math.max(0,Math.min(o,n-1))])},gt=/[^.]*(?=\..*)\.|.*/,yt=/\..*/,xt=/::\d+$/,vt={};let bt=1;const wt={mouseenter:"mouseover",mouseleave:"mouseout"},Tt=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function Et(e,t){return t&&`${t}::${bt++}`||e.uidEvent||bt++}function At(e){const t=Et(e);return e.uidEvent=t,vt[t]=vt[t]||{},vt[t]}function St(e,t,i=null){return Object.values(e).find((e=>e.callable===t&&e.delegationSelector===i))}function Mt(e,t,i){const r="string"==typeof t,n=r?i:t||i;let o=Pt(e);return Tt.has(o)||(o=e),[r,n,o]}function It(e,t,i,r,n){if("string"!=typeof t||!e)return;let[o,s,a]=Mt(t,i,r);if(t in wt){const e=e=>function(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};s=e(s)}const l=At(e),c=l[a]||(l[a]={}),h=St(c,s,o?i:null);if(h)return void(h.oneOff=h.oneOff&&n);const u=Et(s,t.replace(gt,"")),d=o?function(e,t,i){return function r(n){const o=e.querySelectorAll(t);for(let{target:s}=n;s&&s!==this;s=s.parentNode)for(const a of o)if(a===s)return Lt(n,{delegateTarget:s}),r.oneOff&&zt.off(e,n.type,t,i),i.apply(s,[n])}}(e,i,s):function(e,t){return function i(r){return Lt(r,{delegateTarget:e}),i.oneOff&&zt.off(e,r.type,t),t.apply(e,[r])}}(e,s);d.delegationSelector=o?i:null,d.callable=s,d.oneOff=n,d.uidEvent=u,c[u]=d,e.addEventListener(a,d,o)}function Ct(e,t,i,r,n){const o=St(t[i],r,n);o&&(e.removeEventListener(i,o,Boolean(n)),delete t[i][o.uidEvent])}function kt(e,t,i,r){const n=t[i]||{};for(const[o,s]of Object.entries(n))o.includes(r)&&Ct(e,t,i,s.callable,s.delegationSelector)}function Pt(e){return e=e.replace(yt,""),wt[e]||e}const zt={on(e,t,i,r){It(e,t,i,r,!1)},one(e,t,i,r){It(e,t,i,r,!0)},off(e,t,i,r){if("string"!=typeof t||!e)return;const[n,o,s]=Mt(t,i,r),a=s!==t,l=At(e),c=l[s]||{},h=t.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))kt(e,l,i,t.slice(1));for(const[i,r]of Object.entries(c)){const n=i.replace(xt,"");a&&!t.includes(n)||Ct(e,l,s,r.callable,r.delegationSelector)}}else{if(!Object.keys(c).length)return;Ct(e,l,s,o,n?i:null)}},trigger(e,t,i){if("string"!=typeof t||!e)return null;const r=ht();let n=null,o=!0,s=!0,a=!1;t!==Pt(t)&&r&&(n=r.Event(t,i),r(e).trigger(n),o=!n.isPropagationStopped(),s=!n.isImmediatePropagationStopped(),a=n.isDefaultPrevented());const l=Lt(new Event(t,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),s&&e.dispatchEvent(l),l.defaultPrevented&&n&&n.preventDefault(),l}};function Lt(e,t={}){for(const[i,r]of Object.entries(t))try{e[i]=r}catch(t){Object.defineProperty(e,i,{configurable:!0,get:()=>r})}return e}function Dt(e){if("true"===e)return!0;if("false"===e)return!1;if(e===Number(e).toString())return Number(e);if(""===e||"null"===e)return null;if("string"!=typeof e)return e;try{return JSON.parse(decodeURIComponent(e))}catch(t){return e}}function Rt(e){return e.replace(/[A-Z]/g,(e=>`-${e.toLowerCase()}`))}const Ot={setDataAttribute(e,t,i){e.setAttribute(`data-bs-${Rt(t)}`,i)},removeDataAttribute(e,t){e.removeAttribute(`data-bs-${Rt(t)}`)},getDataAttributes(e){if(!e)return{};const t={},i=Object.keys(e.dataset).filter((e=>e.startsWith("bs")&&!e.startsWith("bsConfig")));for(const r of i){let i=r.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),t[i]=Dt(e.dataset[r])}return t},getDataAttribute:(e,t)=>Dt(e.getAttribute(`data-bs-${Rt(t)}`))};class Bt{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(e){return e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e}_mergeConfigObj(e,t){const i=rt(t)?Ot.getDataAttribute(t,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...rt(t)?Ot.getDataAttributes(t):{},..."object"==typeof e?e:{}}}_typeCheckConfig(e,t=this.constructor.DefaultType){for(const[r,n]of Object.entries(t)){const t=e[r],o=rt(t)?"element":null==(i=t)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(n).test(o))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${r}" provided type "${o}" but expected type "${n}".`)}var i}}class Ft extends Bt{constructor(e,t){super(),(e=nt(e))&&(this._element=e,this._config=this._getConfig(t),Qe.set(this._element,this.constructor.DATA_KEY,this))}dispose(){Qe.remove(this._element,this.constructor.DATA_KEY),zt.off(this._element,this.constructor.EVENT_KEY);for(const e of Object.getOwnPropertyNames(this))this[e]=null}_queueCallback(e,t,i=!0){mt(e,t,i)}_getConfig(e){return e=this._mergeConfigObj(e,this._element),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}static getInstance(e){return Qe.get(nt(e),this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,"object"==typeof t?t:null)}static get VERSION(){return"5.3.2"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(e){return`${e}${this.EVENT_KEY}`}}const Nt=e=>{let t=e.getAttribute("data-bs-target");if(!t||"#"===t){let i=e.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),t=i&&"#"!==i?tt(i.trim()):null}return t},jt={find:(e,t=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(t,e)),findOne:(e,t=document.documentElement)=>Element.prototype.querySelector.call(t,e),children:(e,t)=>[].concat(...e.children).filter((e=>e.matches(t))),parents(e,t){const i=[];let r=e.parentNode.closest(t);for(;r;)i.push(r),r=r.parentNode.closest(t);return i},prev(e,t){let i=e.previousElementSibling;for(;i;){if(i.matches(t))return[i];i=i.previousElementSibling}return[]},next(e,t){let i=e.nextElementSibling;for(;i;){if(i.matches(t))return[i];i=i.nextElementSibling}return[]},focusableChildren(e){const t=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((e=>`${e}:not([tabindex^="-"])`)).join(",");return this.find(t,e).filter((e=>!st(e)&&ot(e)))},getSelectorFromElement(e){const t=Nt(e);return t&&jt.findOne(t)?t:null},getElementFromSelector(e){const t=Nt(e);return t?jt.findOne(t):null},getMultipleElementsFromSelector(e){const t=Nt(e);return t?jt.find(t):[]}},Ut=(e,t="hide")=>{const i=`click.dismiss${e.EVENT_KEY}`,r=e.NAME;zt.on(document,i,`[data-bs-dismiss="${r}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),st(this))return;const n=jt.getElementFromSelector(this)||this.closest(`.${r}`);e.getOrCreateInstance(n)[t]()}))},Vt=".bs.alert",Gt=`close${Vt}`,$t=`closed${Vt}`;class qt extends Ft{static get NAME(){return"alert"}close(){if(zt.trigger(this._element,Gt).defaultPrevented)return;this._element.classList.remove("show");const e=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,e)}_destroyElement(){this._element.remove(),zt.trigger(this._element,$t),this.dispose()}static jQueryInterface(e){return this.each((function(){const t=qt.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}Ut(qt,"close"),pt(qt);const Zt='[data-bs-toggle="button"]';class Ht extends Ft{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(e){return this.each((function(){const t=Ht.getOrCreateInstance(this);"toggle"===e&&t[e]()}))}}zt.on(document,"click.bs.button.data-api",Zt,(e=>{e.preventDefault();const t=e.target.closest(Zt);Ht.getOrCreateInstance(t).toggle()})),pt(Ht);const Wt=".bs.swipe",Xt=`touchstart${Wt}`,Yt=`touchmove${Wt}`,Kt=`touchend${Wt}`,Jt=`pointerdown${Wt}`,Qt=`pointerup${Wt}`,ei={endCallback:null,leftCallback:null,rightCallback:null},ti={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class ii extends Bt{constructor(e,t){super(),this._element=e,e&&ii.isSupported()&&(this._config=this._getConfig(t),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return ei}static get DefaultType(){return ti}static get NAME(){return"swipe"}dispose(){zt.off(this._element,Wt)}_start(e){this._supportPointerEvents?this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX):this._deltaX=e.touches[0].clientX}_end(e){this._eventIsPointerPenTouch(e)&&(this._deltaX=e.clientX-this._deltaX),this._handleSwipe(),ft(this._config.endCallback)}_move(e){this._deltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this._deltaX}_handleSwipe(){const e=Math.abs(this._deltaX);if(e<=40)return;const t=e/this._deltaX;this._deltaX=0,t&&ft(t>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(zt.on(this._element,Jt,(e=>this._start(e))),zt.on(this._element,Qt,(e=>this._end(e))),this._element.classList.add("pointer-event")):(zt.on(this._element,Xt,(e=>this._start(e))),zt.on(this._element,Yt,(e=>this._move(e))),zt.on(this._element,Kt,(e=>this._end(e))))}_eventIsPointerPenTouch(e){return this._supportPointerEvents&&("pen"===e.pointerType||"touch"===e.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const ri=".bs.carousel",ni=".data-api",oi="next",si="prev",ai="left",li="right",ci=`slide${ri}`,hi=`slid${ri}`,ui=`keydown${ri}`,di=`mouseenter${ri}`,pi=`mouseleave${ri}`,fi=`dragstart${ri}`,mi=`load${ri}${ni}`,_i=`click${ri}${ni}`,gi="carousel",yi="active",xi=".active",vi=".carousel-item",bi=xi+vi,wi={ArrowLeft:li,ArrowRight:ai},Ti={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},Ei={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class Ai extends Ft{constructor(e,t){super(e,t),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=jt.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===gi&&this.cycle()}static get Default(){return Ti}static get DefaultType(){return Ei}static get NAME(){return"carousel"}next(){this._slide(oi)}nextWhenVisible(){!document.hidden&&ot(this._element)&&this.next()}prev(){this._slide(si)}pause(){this._isSliding&&it(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?zt.one(this._element,hi,(()=>this.cycle())):this.cycle())}to(e){const t=this._getItems();if(e>t.length-1||e<0)return;if(this._isSliding)return void zt.one(this._element,hi,(()=>this.to(e)));const i=this._getItemIndex(this._getActive());if(i===e)return;const r=e>i?oi:si;this._slide(r,t[e])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(e){return e.defaultInterval=e.interval,e}_addEventListeners(){this._config.keyboard&&zt.on(this._element,ui,(e=>this._keydown(e))),"hover"===this._config.pause&&(zt.on(this._element,di,(()=>this.pause())),zt.on(this._element,pi,(()=>this._maybeEnableCycle()))),this._config.touch&&ii.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const e of jt.find(".carousel-item img",this._element))zt.on(e,fi,(e=>e.preventDefault()));const e={leftCallback:()=>this._slide(this._directionToOrder(ai)),rightCallback:()=>this._slide(this._directionToOrder(li)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new ii(this._element,e)}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;const t=wi[e.key];t&&(e.preventDefault(),this._slide(this._directionToOrder(t)))}_getItemIndex(e){return this._getItems().indexOf(e)}_setActiveIndicatorElement(e){if(!this._indicatorsElement)return;const t=jt.findOne(xi,this._indicatorsElement);t.classList.remove(yi),t.removeAttribute("aria-current");const i=jt.findOne(`[data-bs-slide-to="${e}"]`,this._indicatorsElement);i&&(i.classList.add(yi),i.setAttribute("aria-current","true"))}_updateInterval(){const e=this._activeElement||this._getActive();if(!e)return;const t=Number.parseInt(e.getAttribute("data-bs-interval"),10);this._config.interval=t||this._config.defaultInterval}_slide(e,t=null){if(this._isSliding)return;const i=this._getActive(),r=e===oi,n=t||_t(this._getItems(),i,r,this._config.wrap);if(n===i)return;const o=this._getItemIndex(n),s=t=>zt.trigger(this._element,t,{relatedTarget:n,direction:this._orderToDirection(e),from:this._getItemIndex(i),to:o});if(s(ci).defaultPrevented)return;if(!i||!n)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=n;const l=r?"carousel-item-start":"carousel-item-end",c=r?"carousel-item-next":"carousel-item-prev";n.classList.add(c),ct(n),i.classList.add(l),n.classList.add(l);this._queueCallback((()=>{n.classList.remove(l,c),n.classList.add(yi),i.classList.remove(yi,c,l),this._isSliding=!1,s(hi)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return jt.findOne(bi,this._element)}_getItems(){return jt.find(vi,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(e){return dt()?e===ai?si:oi:e===ai?oi:si}_orderToDirection(e){return dt()?e===si?ai:li:e===si?li:ai}static jQueryInterface(e){return this.each((function(){const t=Ai.getOrCreateInstance(this,e);if("number"!=typeof e){if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}else t.to(e)}))}}zt.on(document,_i,"[data-bs-slide], [data-bs-slide-to]",(function(e){const t=jt.getElementFromSelector(this);if(!t||!t.classList.contains(gi))return;e.preventDefault();const i=Ai.getOrCreateInstance(t),r=this.getAttribute("data-bs-slide-to");return r?(i.to(r),void i._maybeEnableCycle()):"next"===Ot.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),zt.on(window,mi,(()=>{const e=jt.find('[data-bs-ride="carousel"]');for(const t of e)Ai.getOrCreateInstance(t)})),pt(Ai);const Si=".bs.collapse",Mi=`show${Si}`,Ii=`shown${Si}`,Ci=`hide${Si}`,ki=`hidden${Si}`,Pi=`click${Si}.data-api`,zi="show",Li="collapse",Di="collapsing",Ri=`:scope .${Li} .${Li}`,Oi='[data-bs-toggle="collapse"]',Bi={parent:null,toggle:!0},Fi={parent:"(null|element)",toggle:"boolean"};class Ni extends Ft{constructor(e,t){super(e,t),this._isTransitioning=!1,this._triggerArray=[];const i=jt.find(Oi);for(const e of i){const t=jt.getSelectorFromElement(e),i=jt.find(t).filter((e=>e===this._element));null!==t&&i.length&&this._triggerArray.push(e)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Bi}static get DefaultType(){return Fi}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let e=[];if(this._config.parent&&(e=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((e=>e!==this._element)).map((e=>Ni.getOrCreateInstance(e,{toggle:!1})))),e.length&&e[0]._isTransitioning)return;if(zt.trigger(this._element,Mi).defaultPrevented)return;for(const t of e)t.hide();const t=this._getDimension();this._element.classList.remove(Li),this._element.classList.add(Di),this._element.style[t]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${t[0].toUpperCase()+t.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Di),this._element.classList.add(Li,zi),this._element.style[t]="",zt.trigger(this._element,Ii)}),this._element,!0),this._element.style[t]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(zt.trigger(this._element,Ci).defaultPrevented)return;const e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,ct(this._element),this._element.classList.add(Di),this._element.classList.remove(Li,zi);for(const e of this._triggerArray){const t=jt.getElementFromSelector(e);t&&!this._isShown(t)&&this._addAriaAndCollapsedClass([e],!1)}this._isTransitioning=!0;this._element.style[e]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Di),this._element.classList.add(Li),zt.trigger(this._element,ki)}),this._element,!0)}_isShown(e=this._element){return e.classList.contains(zi)}_configAfterMerge(e){return e.toggle=Boolean(e.toggle),e.parent=nt(e.parent),e}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const e=this._getFirstLevelChildren(Oi);for(const t of e){const e=jt.getElementFromSelector(t);e&&this._addAriaAndCollapsedClass([t],this._isShown(e))}}_getFirstLevelChildren(e){const t=jt.find(Ri,this._config.parent);return jt.find(e,this._config.parent).filter((e=>!t.includes(e)))}_addAriaAndCollapsedClass(e,t){if(e.length)for(const i of e)i.classList.toggle("collapsed",!t),i.setAttribute("aria-expanded",t)}static jQueryInterface(e){const t={};return"string"==typeof e&&/show|hide/.test(e)&&(t.toggle=!1),this.each((function(){const i=Ni.getOrCreateInstance(this,t);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}))}}zt.on(document,Pi,Oi,(function(e){("A"===e.target.tagName||e.delegateTarget&&"A"===e.delegateTarget.tagName)&&e.preventDefault();for(const e of jt.getMultipleElementsFromSelector(this))Ni.getOrCreateInstance(e,{toggle:!1}).toggle()})),pt(Ni);const ji="dropdown",Ui=".bs.dropdown",Vi=".data-api",Gi="ArrowUp",$i="ArrowDown",qi=`hide${Ui}`,Zi=`hidden${Ui}`,Hi=`show${Ui}`,Wi=`shown${Ui}`,Xi=`click${Ui}${Vi}`,Yi=`keydown${Ui}${Vi}`,Ki=`keyup${Ui}${Vi}`,Ji="show",Qi='[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',er=`${Qi}.${Ji}`,tr=".dropdown-menu",ir=dt()?"top-end":"top-start",rr=dt()?"top-start":"top-end",nr=dt()?"bottom-end":"bottom-start",or=dt()?"bottom-start":"bottom-end",sr=dt()?"left-start":"right-start",ar=dt()?"right-start":"left-start",lr={autoClose:!0,boundary:"clippingParents",display:"dynamic",offset:[0,2],popperConfig:null,reference:"toggle"},cr={autoClose:"(boolean|string)",boundary:"(string|element)",display:"string",offset:"(array|string|function)",popperConfig:"(null|object|function)",reference:"(string|element|object)"};class hr extends Ft{constructor(e,t){super(e,t),this._popper=null,this._parent=this._element.parentNode,this._menu=jt.next(this._element,tr)[0]||jt.prev(this._element,tr)[0]||jt.findOne(tr,this._parent),this._inNavbar=this._detectNavbar()}static get Default(){return lr}static get DefaultType(){return cr}static get NAME(){return ji}toggle(){return this._isShown()?this.hide():this.show()}show(){if(st(this._element)||this._isShown())return;const e={relatedTarget:this._element};if(!zt.trigger(this._element,Hi,e).defaultPrevented){if(this._createPopper(),"ontouchstart"in document.documentElement&&!this._parent.closest(".navbar-nav"))for(const e of[].concat(...document.body.children))zt.on(e,"mouseover",lt);this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(Ji),this._element.classList.add(Ji),zt.trigger(this._element,Wi,e)}}hide(){if(st(this._element)||!this._isShown())return;const e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(e){if(!zt.trigger(this._element,qi,e).defaultPrevented){if("ontouchstart"in document.documentElement)for(const e of[].concat(...document.body.children))zt.off(e,"mouseover",lt);this._popper&&this._popper.destroy(),this._menu.classList.remove(Ji),this._element.classList.remove(Ji),this._element.setAttribute("aria-expanded","false"),Ot.removeDataAttribute(this._menu,"popper"),zt.trigger(this._element,Zi,e)}}_getConfig(e){if("object"==typeof(e=super._getConfig(e)).reference&&!rt(e.reference)&&"function"!=typeof e.reference.getBoundingClientRect)throw new TypeError(`${ji.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_createPopper(){if(void 0===Ke)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=this._parent:rt(this._config.reference)?e=nt(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const t=this._getPopperConfig();this._popper=Ye(e,this._menu,t)}_isShown(){return this._menu.classList.contains(Ji)}_getPlacement(){const e=this._parent;if(e.classList.contains("dropend"))return sr;if(e.classList.contains("dropstart"))return ar;if(e.classList.contains("dropup-center"))return"top";if(e.classList.contains("dropdown-center"))return"bottom";const t="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return e.classList.contains("dropup")?t?rr:ir:t?or:nr}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_getPopperConfig(){const e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(Ot.setDataAttribute(this._menu,"popper","static"),e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,...ft(this._config.popperConfig,[e])}}_selectMenuItem({key:e,target:t}){const i=jt.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((e=>ot(e)));i.length&&_t(i,t,e===$i,!i.includes(t)).focus()}static jQueryInterface(e){return this.each((function(){const t=hr.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}static clearMenus(e){if(2===e.button||"keyup"===e.type&&"Tab"!==e.key)return;const t=jt.find(er);for(const i of t){const t=hr.getInstance(i);if(!t||!1===t._config.autoClose)continue;const r=e.composedPath(),n=r.includes(t._menu);if(r.includes(t._element)||"inside"===t._config.autoClose&&!n||"outside"===t._config.autoClose&&n)continue;if(t._menu.contains(e.target)&&("keyup"===e.type&&"Tab"===e.key||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;const o={relatedTarget:t._element};"click"===e.type&&(o.clickEvent=e),t._completeHide(o)}}static dataApiKeydownHandler(e){const t=/input|textarea/i.test(e.target.tagName),i="Escape"===e.key,r=[Gi,$i].includes(e.key);if(!r&&!i)return;if(t&&!i)return;e.preventDefault();const n=this.matches(Qi)?this:jt.prev(this,Qi)[0]||jt.next(this,Qi)[0]||jt.findOne(Qi,e.delegateTarget.parentNode),o=hr.getOrCreateInstance(n);if(r)return e.stopPropagation(),o.show(),void o._selectMenuItem(e);o._isShown()&&(e.stopPropagation(),o.hide(),n.focus())}}zt.on(document,Yi,Qi,hr.dataApiKeydownHandler),zt.on(document,Yi,tr,hr.dataApiKeydownHandler),zt.on(document,Xi,hr.clearMenus),zt.on(document,Ki,hr.clearMenus),zt.on(document,Xi,Qi,(function(e){e.preventDefault(),hr.getOrCreateInstance(this).toggle()})),pt(hr);const ur="backdrop",dr="show",pr=`mousedown.bs.${ur}`,fr={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},mr={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class _r extends Bt{constructor(e){super(),this._config=this._getConfig(e),this._isAppended=!1,this._element=null}static get Default(){return fr}static get DefaultType(){return mr}static get NAME(){return ur}show(e){if(!this._config.isVisible)return void ft(e);this._append();const t=this._getElement();this._config.isAnimated&&ct(t),t.classList.add(dr),this._emulateAnimation((()=>{ft(e)}))}hide(e){this._config.isVisible?(this._getElement().classList.remove(dr),this._emulateAnimation((()=>{this.dispose(),ft(e)}))):ft(e)}dispose(){this._isAppended&&(zt.off(this._element,pr),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const e=document.createElement("div");e.className=this._config.className,this._config.isAnimated&&e.classList.add("fade"),this._element=e}return this._element}_configAfterMerge(e){return e.rootElement=nt(e.rootElement),e}_append(){if(this._isAppended)return;const e=this._getElement();this._config.rootElement.append(e),zt.on(e,pr,(()=>{ft(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(e){mt(e,this._getElement(),this._config.isAnimated)}}const gr=".bs.focustrap",yr=`focusin${gr}`,xr=`keydown.tab${gr}`,vr="backward",br={autofocus:!0,trapElement:null},wr={autofocus:"boolean",trapElement:"element"};class Tr extends Bt{constructor(e){super(),this._config=this._getConfig(e),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return br}static get DefaultType(){return wr}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),zt.off(document,gr),zt.on(document,yr,(e=>this._handleFocusin(e))),zt.on(document,xr,(e=>this._handleKeydown(e))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,zt.off(document,gr))}_handleFocusin(e){const{trapElement:t}=this._config;if(e.target===document||e.target===t||t.contains(e.target))return;const i=jt.focusableChildren(t);0===i.length?t.focus():this._lastTabNavDirection===vr?i[i.length-1].focus():i[0].focus()}_handleKeydown(e){"Tab"===e.key&&(this._lastTabNavDirection=e.shiftKey?vr:"forward")}}const Er=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",Ar=".sticky-top",Sr="padding-right",Mr="margin-right";class Ir{constructor(){this._element=document.body}getWidth(){const e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){const e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,Sr,(t=>t+e)),this._setElementAttributes(Er,Sr,(t=>t+e)),this._setElementAttributes(Ar,Mr,(t=>t-e))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,Sr),this._resetElementAttributes(Er,Sr),this._resetElementAttributes(Ar,Mr)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,i){const r=this.getWidth();this._applyManipulationCallback(e,(e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+r)return;this._saveInitialAttribute(e,t);const n=window.getComputedStyle(e).getPropertyValue(t);e.style.setProperty(t,`${i(Number.parseFloat(n))}px`)}))}_saveInitialAttribute(e,t){const i=e.style.getPropertyValue(t);i&&Ot.setDataAttribute(e,t,i)}_resetElementAttributes(e,t){this._applyManipulationCallback(e,(e=>{const i=Ot.getDataAttribute(e,t);null!==i?(Ot.removeDataAttribute(e,t),e.style.setProperty(t,i)):e.style.removeProperty(t)}))}_applyManipulationCallback(e,t){if(rt(e))t(e);else for(const i of jt.find(e,this._element))t(i)}}const Cr=".bs.modal",kr=`hide${Cr}`,Pr=`hidePrevented${Cr}`,zr=`hidden${Cr}`,Lr=`show${Cr}`,Dr=`shown${Cr}`,Rr=`resize${Cr}`,Or=`click.dismiss${Cr}`,Br=`mousedown.dismiss${Cr}`,Fr=`keydown.dismiss${Cr}`,Nr=`click${Cr}.data-api`,jr="modal-open",Ur="show",Vr="modal-static",Gr={backdrop:!0,focus:!0,keyboard:!0},$r={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class qr extends Ft{constructor(e,t){super(e,t),this._dialog=jt.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new Ir,this._addEventListeners()}static get Default(){return Gr}static get DefaultType(){return $r}static get NAME(){return"modal"}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown||this._isTransitioning)return;zt.trigger(this._element,Lr,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(jr),this._adjustDialog(),this._backdrop.show((()=>this._showElement(e))))}hide(){if(!this._isShown||this._isTransitioning)return;zt.trigger(this._element,kr).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(Ur),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated()))}dispose(){zt.off(window,Cr),zt.off(this._dialog,Cr),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new _r({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Tr({trapElement:this._element})}_showElement(e){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const t=jt.findOne(".modal-body",this._dialog);t&&(t.scrollTop=0),ct(this._element),this._element.classList.add(Ur);this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,zt.trigger(this._element,Dr,{relatedTarget:e})}),this._dialog,this._isAnimated())}_addEventListeners(){zt.on(this._element,Fr,(e=>{"Escape"===e.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),zt.on(window,Rr,(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),zt.on(this._element,Br,(e=>{zt.one(this._element,Or,(t=>{this._element===e.target&&this._element===t.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())}))}))}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(jr),this._resetAdjustments(),this._scrollBar.reset(),zt.trigger(this._element,zr)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(zt.trigger(this._element,Pr).defaultPrevented)return;const e=this._element.scrollHeight>document.documentElement.clientHeight,t=this._element.style.overflowY;"hidden"===t||this._element.classList.contains(Vr)||(e||(this._element.style.overflowY="hidden"),this._element.classList.add(Vr),this._queueCallback((()=>{this._element.classList.remove(Vr),this._queueCallback((()=>{this._element.style.overflowY=t}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const e=this._element.scrollHeight>document.documentElement.clientHeight,t=this._scrollBar.getWidth(),i=t>0;if(i&&!e){const e=dt()?"paddingLeft":"paddingRight";this._element.style[e]=`${t}px`}if(!i&&e){const e=dt()?"paddingRight":"paddingLeft";this._element.style[e]=`${t}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each((function(){const i=qr.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e](t)}}))}}zt.on(document,Nr,'[data-bs-toggle="modal"]',(function(e){const t=jt.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),zt.one(t,Lr,(e=>{e.defaultPrevented||zt.one(t,zr,(()=>{ot(this)&&this.focus()}))}));const i=jt.findOne(".modal.show");i&&qr.getInstance(i).hide();qr.getOrCreateInstance(t).toggle(this)})),Ut(qr),pt(qr);const Zr=".bs.offcanvas",Hr=".data-api",Wr=`load${Zr}${Hr}`,Xr="show",Yr="showing",Kr="hiding",Jr=".offcanvas.show",Qr=`show${Zr}`,en=`shown${Zr}`,tn=`hide${Zr}`,rn=`hidePrevented${Zr}`,nn=`hidden${Zr}`,on=`resize${Zr}`,sn=`click${Zr}${Hr}`,an=`keydown.dismiss${Zr}`,ln={backdrop:!0,keyboard:!0,scroll:!1},cn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class hn extends Ft{constructor(e,t){super(e,t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return ln}static get DefaultType(){return cn}static get NAME(){return"offcanvas"}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){if(this._isShown)return;if(zt.trigger(this._element,Qr,{relatedTarget:e}).defaultPrevented)return;this._isShown=!0,this._backdrop.show(),this._config.scroll||(new Ir).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Yr);this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Xr),this._element.classList.remove(Yr),zt.trigger(this._element,en,{relatedTarget:e})}),this._element,!0)}hide(){if(!this._isShown)return;if(zt.trigger(this._element,tn).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(Kr),this._backdrop.hide();this._queueCallback((()=>{this._element.classList.remove(Xr,Kr),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new Ir).reset(),zt.trigger(this._element,nn)}),this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const e=Boolean(this._config.backdrop);return new _r({className:"offcanvas-backdrop",isVisible:e,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:e?()=>{"static"!==this._config.backdrop?this.hide():zt.trigger(this._element,rn)}:null})}_initializeFocusTrap(){return new Tr({trapElement:this._element})}_addEventListeners(){zt.on(this._element,an,(e=>{"Escape"===e.key&&(this._config.keyboard?this.hide():zt.trigger(this._element,rn))}))}static jQueryInterface(e){return this.each((function(){const t=hn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}zt.on(document,sn,'[data-bs-toggle="offcanvas"]',(function(e){const t=jt.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),st(this))return;zt.one(t,nn,(()=>{ot(this)&&this.focus()}));const i=jt.findOne(Jr);i&&i!==t&&hn.getInstance(i).hide();hn.getOrCreateInstance(t).toggle(this)})),zt.on(window,Wr,(()=>{for(const e of jt.find(Jr))hn.getOrCreateInstance(e).show()})),zt.on(window,on,(()=>{for(const e of jt.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(e).position&&hn.getOrCreateInstance(e).hide()})),Ut(hn),pt(hn);const un={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},dn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),pn=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,fn=(e,t)=>{const i=e.nodeName.toLowerCase();return t.includes(i)?!dn.has(i)||Boolean(pn.test(e.nodeValue)):t.filter((e=>e instanceof RegExp)).some((e=>e.test(i)))};const mn={allowList:un,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
"},_n={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},gn={entry:"(string|element|function|null)",selector:"(string|element)"};class yn extends Bt{constructor(e){super(),this._config=this._getConfig(e)}static get Default(){return mn}static get DefaultType(){return _n}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((e=>this._resolvePossibleFunction(e))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(e){return this._checkContent(e),this._config.content={...this._config.content,...e},this}toHtml(){const e=document.createElement("div");e.innerHTML=this._maybeSanitize(this._config.template);for(const[t,i]of Object.entries(this._config.content))this._setContent(e,i,t);const t=e.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&t.classList.add(...i.split(" ")),t}_typeCheckConfig(e){super._typeCheckConfig(e),this._checkContent(e.content)}_checkContent(e){for(const[t,i]of Object.entries(e))super._typeCheckConfig({selector:t,entry:i},gn)}_setContent(e,t,i){const r=jt.findOne(i,e);r&&((t=this._resolvePossibleFunction(t))?rt(t)?this._putElementInTemplate(nt(t),r):this._config.html?r.innerHTML=this._maybeSanitize(t):r.textContent=t:r.remove())}_maybeSanitize(e){return this._config.sanitize?function(e,t,i){if(!e.length)return e;if(i&&"function"==typeof i)return i(e);const r=(new window.DOMParser).parseFromString(e,"text/html"),n=[].concat(...r.body.querySelectorAll("*"));for(const e of n){const i=e.nodeName.toLowerCase();if(!Object.keys(t).includes(i)){e.remove();continue}const r=[].concat(...e.attributes),n=[].concat(t["*"]||[],t[i]||[]);for(const t of r)fn(t,n)||e.removeAttribute(t.nodeName)}return r.body.innerHTML}(e,this._config.allowList,this._config.sanitizeFn):e}_resolvePossibleFunction(e){return ft(e,[this])}_putElementInTemplate(e,t){if(this._config.html)return t.innerHTML="",void t.append(e);t.textContent=e.textContent}}const xn=new Set(["sanitize","allowList","sanitizeFn"]),vn="fade",bn="show",wn=".modal",Tn="hide.bs.modal",En="hover",An="focus",Sn={AUTO:"auto",TOP:"top",RIGHT:dt()?"left":"right",BOTTOM:"bottom",LEFT:dt()?"right":"left"},Mn={allowList:un,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},In={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class Cn extends Ft{constructor(e,t){if(void 0===Ke)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e,t),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return Mn}static get DefaultType(){return In}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),zt.off(this._element.closest(wn),Tn,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const e=zt.trigger(this._element,this.constructor.eventName("show")),t=(at(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(e.defaultPrevented||!t)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:r}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(r.append(i),zt.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(bn),"ontouchstart"in document.documentElement)for(const e of[].concat(...document.body.children))zt.on(e,"mouseover",lt);this._queueCallback((()=>{zt.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(!this._isShown())return;if(zt.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented)return;if(this._getTipElement().classList.remove(bn),"ontouchstart"in document.documentElement)for(const e of[].concat(...document.body.children))zt.off(e,"mouseover",lt);this._activeTrigger.click=!1,this._activeTrigger[An]=!1,this._activeTrigger[En]=!1,this._isHovered=null;this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),zt.trigger(this._element,this.constructor.eventName("hidden")))}),this.tip,this._isAnimated())}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(e){const t=this._getTemplateFactory(e).toHtml();if(!t)return null;t.classList.remove(vn,bn),t.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(e=>{do{e+=Math.floor(1e6*Math.random())}while(document.getElementById(e));return e})(this.constructor.NAME).toString();return t.setAttribute("id",i),this._isAnimated()&&t.classList.add(vn),t}setContent(e){this._newContent=e,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(e){return this._templateFactory?this._templateFactory.changeContent(e):this._templateFactory=new yn({...this._config,content:e,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(e){return this.constructor.getOrCreateInstance(e.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(vn)}_isShown(){return this.tip&&this.tip.classList.contains(bn)}_createPopper(e){const t=ft(this._config.placement,[this,e,this._element]),i=Sn[t.toUpperCase()];return Ye(this._element,e,this._getPopperConfig(i))}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_resolvePossibleFunction(e){return ft(e,[this._element])}_getPopperConfig(e){const t={placement:e,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:e=>{this._getTipElement().setAttribute("data-popper-placement",e.state.placement)}}]};return{...t,...ft(this._config.popperConfig,[t])}}_setListeners(){const e=this._config.trigger.split(" ");for(const t of e)if("click"===t)zt.on(this._element,this.constructor.eventName("click"),this._config.selector,(e=>{this._initializeOnDelegatedTarget(e).toggle()}));else if("manual"!==t){const e=t===En?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=t===En?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");zt.on(this._element,e,this._config.selector,(e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusin"===e.type?An:En]=!0,t._enter()})),zt.on(this._element,i,this._config.selector,(e=>{const t=this._initializeOnDelegatedTarget(e);t._activeTrigger["focusout"===e.type?An:En]=t._element.contains(e.relatedTarget),t._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},zt.on(this._element.closest(wn),Tn,this._hideModalHandler)}_fixTitle(){const e=this._element.getAttribute("title");e&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",e),this._element.setAttribute("data-bs-original-title",e),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout((()=>{this._isHovered&&this.show()}),this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout((()=>{this._isHovered||this.hide()}),this._config.delay.hide))}_setTimeout(e,t){clearTimeout(this._timeout),this._timeout=setTimeout(e,t)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(e){const t=Ot.getDataAttributes(this._element);for(const e of Object.keys(t))xn.has(e)&&delete t[e];return e={...t,..."object"==typeof e&&e?e:{}},e=this._mergeConfigObj(e),e=this._configAfterMerge(e),this._typeCheckConfig(e),e}_configAfterMerge(e){return e.container=!1===e.container?document.body:nt(e.container),"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),e}_getDelegateConfig(){const e={};for(const[t,i]of Object.entries(this._config))this.constructor.Default[t]!==i&&(e[t]=i);return e.selector=!1,e.trigger="manual",e}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(e){return this.each((function(){const t=Cn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}pt(Cn);const kn={...Cn.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},Pn={...Cn.DefaultType,content:"(null|string|element|function)"};class zn extends Cn{static get Default(){return kn}static get DefaultType(){return Pn}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(e){return this.each((function(){const t=zn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}pt(zn);const Ln=".bs.scrollspy",Dn=`activate${Ln}`,Rn=`click${Ln}`,On=`load${Ln}.data-api`,Bn="active",Fn="[href]",Nn=".nav-link",jn=`${Nn}, .nav-item > ${Nn}, .list-group-item`,Un={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},Vn={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class Gn extends Ft{constructor(e,t){super(e,t),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return Un}static get DefaultType(){return Vn}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const e of this._observableSections.values())this._observer.observe(e)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(e){return e.target=nt(e.target)||document.body,e.rootMargin=e.offset?`${e.offset}px 0px -30%`:e.rootMargin,"string"==typeof e.threshold&&(e.threshold=e.threshold.split(",").map((e=>Number.parseFloat(e)))),e}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(zt.off(this._config.target,Rn),zt.on(this._config.target,Rn,Fn,(e=>{const t=this._observableSections.get(e.target.hash);if(t){e.preventDefault();const i=this._rootElement||window,r=t.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:r,behavior:"smooth"});i.scrollTop=r}})))}_getNewObserver(){const e={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((e=>this._observerCallback(e)),e)}_observerCallback(e){const t=e=>this._targetLinks.get(`#${e.target.id}`),i=e=>{this._previousScrollData.visibleEntryTop=e.target.offsetTop,this._process(t(e))},r=(this._rootElement||document.documentElement).scrollTop,n=r>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=r;for(const o of e){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(t(o));continue}const e=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(n&&e){if(i(o),!r)return}else n||e||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const e=jt.find(Fn,this._config.target);for(const t of e){if(!t.hash||st(t))continue;const e=jt.findOne(decodeURI(t.hash),this._element);ot(e)&&(this._targetLinks.set(decodeURI(t.hash),t),this._observableSections.set(t.hash,e))}}_process(e){this._activeTarget!==e&&(this._clearActiveClass(this._config.target),this._activeTarget=e,e.classList.add(Bn),this._activateParents(e),zt.trigger(this._element,Dn,{relatedTarget:e}))}_activateParents(e){if(e.classList.contains("dropdown-item"))jt.findOne(".dropdown-toggle",e.closest(".dropdown")).classList.add(Bn);else for(const t of jt.parents(e,".nav, .list-group"))for(const e of jt.prev(t,jn))e.classList.add(Bn)}_clearActiveClass(e){e.classList.remove(Bn);const t=jt.find(`${Fn}.${Bn}`,e);for(const e of t)e.classList.remove(Bn)}static jQueryInterface(e){return this.each((function(){const t=Gn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}))}}zt.on(window,On,(()=>{for(const e of jt.find('[data-bs-spy="scroll"]'))Gn.getOrCreateInstance(e)})),pt(Gn);const $n=".bs.tab",qn=`hide${$n}`,Zn=`hidden${$n}`,Hn=`show${$n}`,Wn=`shown${$n}`,Xn=`click${$n}`,Yn=`keydown${$n}`,Kn=`load${$n}`,Jn="ArrowLeft",Qn="ArrowRight",eo="ArrowUp",to="ArrowDown",io="Home",ro="End",no="active",oo="fade",so="show",ao=".dropdown-toggle",lo=`:not(${ao})`,co='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',ho=`${`.nav-link${lo}, .list-group-item${lo}, [role="tab"]${lo}`}, ${co}`,uo=`.${no}[data-bs-toggle="tab"], .${no}[data-bs-toggle="pill"], .${no}[data-bs-toggle="list"]`;class po extends Ft{constructor(e){super(e),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),zt.on(this._element,Yn,(e=>this._keydown(e))))}static get NAME(){return"tab"}show(){const e=this._element;if(this._elemIsActive(e))return;const t=this._getActiveElem(),i=t?zt.trigger(t,qn,{relatedTarget:e}):null;zt.trigger(e,Hn,{relatedTarget:t}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(t,e),this._activate(e,t))}_activate(e,t){if(!e)return;e.classList.add(no),this._activate(jt.getElementFromSelector(e));this._queueCallback((()=>{"tab"===e.getAttribute("role")?(e.removeAttribute("tabindex"),e.setAttribute("aria-selected",!0),this._toggleDropDown(e,!0),zt.trigger(e,Wn,{relatedTarget:t})):e.classList.add(so)}),e,e.classList.contains(oo))}_deactivate(e,t){if(!e)return;e.classList.remove(no),e.blur(),this._deactivate(jt.getElementFromSelector(e));this._queueCallback((()=>{"tab"===e.getAttribute("role")?(e.setAttribute("aria-selected",!1),e.setAttribute("tabindex","-1"),this._toggleDropDown(e,!1),zt.trigger(e,Zn,{relatedTarget:t})):e.classList.remove(so)}),e,e.classList.contains(oo))}_keydown(e){if(![Jn,Qn,eo,to,io,ro].includes(e.key))return;e.stopPropagation(),e.preventDefault();const t=this._getChildren().filter((e=>!st(e)));let i;if([io,ro].includes(e.key))i=t[e.key===io?0:t.length-1];else{const r=[Qn,to].includes(e.key);i=_t(t,e.target,r,!0)}i&&(i.focus({preventScroll:!0}),po.getOrCreateInstance(i).show())}_getChildren(){return jt.find(ho,this._parent)}_getActiveElem(){return this._getChildren().find((e=>this._elemIsActive(e)))||null}_setInitialAttributes(e,t){this._setAttributeIfNotExists(e,"role","tablist");for(const e of t)this._setInitialAttributesOnChild(e)}_setInitialAttributesOnChild(e){e=this._getInnerElement(e);const t=this._elemIsActive(e),i=this._getOuterElement(e);e.setAttribute("aria-selected",t),i!==e&&this._setAttributeIfNotExists(i,"role","presentation"),t||e.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(e,"role","tab"),this._setInitialAttributesOnTargetPanel(e)}_setInitialAttributesOnTargetPanel(e){const t=jt.getElementFromSelector(e);t&&(this._setAttributeIfNotExists(t,"role","tabpanel"),e.id&&this._setAttributeIfNotExists(t,"aria-labelledby",`${e.id}`))}_toggleDropDown(e,t){const i=this._getOuterElement(e);if(!i.classList.contains("dropdown"))return;const r=(e,r)=>{const n=jt.findOne(e,i);n&&n.classList.toggle(r,t)};r(ao,no),r(".dropdown-menu",so),i.setAttribute("aria-expanded",t)}_setAttributeIfNotExists(e,t,i){e.hasAttribute(t)||e.setAttribute(t,i)}_elemIsActive(e){return e.classList.contains(no)}_getInnerElement(e){return e.matches(ho)?e:jt.findOne(ho,e)}_getOuterElement(e){return e.closest(".nav-item, .list-group-item")||e}static jQueryInterface(e){return this.each((function(){const t=po.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e]()}}))}}zt.on(document,Xn,co,(function(e){["A","AREA"].includes(this.tagName)&&e.preventDefault(),st(this)||po.getOrCreateInstance(this).show()})),zt.on(window,Kn,(()=>{for(const e of jt.find(uo))po.getOrCreateInstance(e)})),pt(po);const fo=".bs.toast",mo=`mouseover${fo}`,_o=`mouseout${fo}`,go=`focusin${fo}`,yo=`focusout${fo}`,xo=`hide${fo}`,vo=`hidden${fo}`,bo=`show${fo}`,wo=`shown${fo}`,To="hide",Eo="show",Ao="showing",So={animation:"boolean",autohide:"boolean",delay:"number"},Mo={animation:!0,autohide:!0,delay:5e3};class Io extends Ft{constructor(e,t){super(e,t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return Mo}static get DefaultType(){return So}static get NAME(){return"toast"}show(){if(zt.trigger(this._element,bo).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");this._element.classList.remove(To),ct(this._element),this._element.classList.add(Eo,Ao),this._queueCallback((()=>{this._element.classList.remove(Ao),zt.trigger(this._element,wo),this._maybeScheduleHide()}),this._element,this._config.animation)}hide(){if(!this.isShown())return;if(zt.trigger(this._element,xo).defaultPrevented)return;this._element.classList.add(Ao),this._queueCallback((()=>{this._element.classList.add(To),this._element.classList.remove(Ao,Eo),zt.trigger(this._element,vo)}),this._element,this._config.animation)}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(Eo),super.dispose()}isShown(){return this._element.classList.contains(Eo)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t}if(t)return void this._clearTimeout();const i=e.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){zt.on(this._element,mo,(e=>this._onInteraction(e,!0))),zt.on(this._element,_o,(e=>this._onInteraction(e,!1))),zt.on(this._element,go,(e=>this._onInteraction(e,!0))),zt.on(this._element,yo,(e=>this._onInteraction(e,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each((function(){const t=Io.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}Ut(Io),pt(Io);var Co,ko={exports:{}};Co=ko,function(){function e(e){var t={omitExtraWLInCodeBlocks:{defaultValue:!1,describe:"Omit the default extra whiteline added to code blocks",type:"boolean"},noHeaderId:{defaultValue:!1,describe:"Turn on/off generated header id",type:"boolean"},prefixHeaderId:{defaultValue:!1,describe:"Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to true will add a generic 'section-' prefix",type:"string"},rawPrefixHeaderId:{defaultValue:!1,describe:'Setting this option to true will prevent showdown from modifying the prefix. This might result in malformed IDs (if, for instance, the " char is used in the prefix)',type:"boolean"},ghCompatibleHeaderId:{defaultValue:!1,describe:"Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)",type:"boolean"},rawHeaderId:{defaultValue:!1,describe:"Remove only spaces, ' and \" from generated header ids (including prefixes), replacing them with dashes (-). WARNING: This might result in malformed ids",type:"boolean"},headerLevelStart:{defaultValue:!1,describe:"The header blocks level start",type:"integer"},parseImgDimensions:{defaultValue:!1,describe:"Turn on/off image dimension parsing",type:"boolean"},simplifiedAutoLink:{defaultValue:!1,describe:"Turn on/off GFM autolink style",type:"boolean"},excludeTrailingPunctuationFromURLs:{defaultValue:!1,describe:"Excludes trailing punctuation from links generated with autoLinking",type:"boolean"},literalMidWordUnderscores:{defaultValue:!1,describe:"Parse midword underscores as literal underscores",type:"boolean"},literalMidWordAsterisks:{defaultValue:!1,describe:"Parse midword asterisks as literal asterisks",type:"boolean"},strikethrough:{defaultValue:!1,describe:"Turn on/off strikethrough support",type:"boolean"},tables:{defaultValue:!1,describe:"Turn on/off tables support",type:"boolean"},tablesHeaderId:{defaultValue:!1,describe:"Add an id to table headers",type:"boolean"},ghCodeBlocks:{defaultValue:!0,describe:"Turn on/off GFM fenced code blocks support",type:"boolean"},tasklists:{defaultValue:!1,describe:"Turn on/off GFM tasklist support",type:"boolean"},smoothLivePreview:{defaultValue:!1,describe:"Prevents weird effects in live previews due to incomplete input",type:"boolean"},smartIndentationFix:{defaultValue:!1,describe:"Tries to smartly fix indentation in es6 strings",type:"boolean"},disableForced4SpacesIndentedSublists:{defaultValue:!1,describe:"Disables the requirement of indenting nested sublists by 4 spaces",type:"boolean"},simpleLineBreaks:{defaultValue:!1,describe:"Parses simple line breaks as
(GFM Style)",type:"boolean"},requireSpaceBeforeHeadingText:{defaultValue:!1,describe:"Makes adding a space between `#` and the header text mandatory (GFM Style)",type:"boolean"},ghMentions:{defaultValue:!1,describe:"Enables github @mentions",type:"boolean"},ghMentionsLink:{defaultValue:"https://github.com/{u}",describe:"Changes the link generated by @mentions. Only applies if ghMentions option is enabled.",type:"string"},encodeEmails:{defaultValue:!0,describe:"Encode e-mail addresses through the use of Character Entities, transforming ASCII e-mail addresses into its equivalent decimal entities",type:"boolean"},openLinksInNewWindow:{defaultValue:!1,describe:"Open all links in new windows",type:"boolean"},backslashEscapesHTMLTags:{defaultValue:!1,describe:"Support for HTML Tag escaping. ex:
foo
",type:"boolean"},emoji:{defaultValue:!1,describe:"Enable emoji support. Ex: `this is a :smile: emoji`",type:"boolean"},underline:{defaultValue:!1,describe:"Enable support for underline. Syntax is double or triple underscores: `__underline word__`. With this option enabled, underscores no longer parses into `` and ``",type:"boolean"},ellipsis:{defaultValue:!0,describe:"Replaces three dots with the ellipsis unicode character",type:"boolean"},completeHTMLDocument:{defaultValue:!1,describe:"Outputs a complete html document, including ``, `` and `` tags",type:"boolean"},metadata:{defaultValue:!1,describe:"Enable support for document metadata (defined at the top of the document between `«««` and `»»»` or between `---` and `---`).",type:"boolean"},splitAdjacentBlockquotes:{defaultValue:!1,describe:"Split adjacent blockquote blocks",type:"boolean"}};if(!1===e)return JSON.parse(JSON.stringify(t));var i={};for(var r in t)t.hasOwnProperty(r)&&(i[r]=t[r].defaultValue);return i}var t={},i={},r={},n=e(!0),o="vanilla",s={github:{omitExtraWLInCodeBlocks:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,disableForced4SpacesIndentedSublists:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghCompatibleHeaderId:!0,ghMentions:!0,backslashEscapesHTMLTags:!0,emoji:!0,splitAdjacentBlockquotes:!0},original:{noHeaderId:!0,ghCodeBlocks:!1},ghost:{omitExtraWLInCodeBlocks:!0,parseImgDimensions:!0,simplifiedAutoLink:!0,excludeTrailingPunctuationFromURLs:!0,literalMidWordUnderscores:!0,strikethrough:!0,tables:!0,tablesHeaderId:!0,ghCodeBlocks:!0,tasklists:!0,smoothLivePreview:!0,simpleLineBreaks:!0,requireSpaceBeforeHeadingText:!0,ghMentions:!1,encodeEmails:!0},vanilla:e(!0),allOn:function(){var t=e(!0),i={};for(var r in t)t.hasOwnProperty(r)&&(i[r]=!0);return i}()};function a(e,i){var r=i?"Error in "+i+" extension->":"Error in unnamed extension",n={valid:!0,error:""};t.helper.isArray(e)||(e=[e]);for(var o=0;o").replace(/&/g,"&")};var c=function(e,t,i,r){var n,o,s,a,l,c=r||"",h=c.indexOf("g")>-1,u=new RegExp(t+"|"+i,"g"+c.replace(/g/g,"")),d=new RegExp(t,c.replace(/g/g,"")),p=[];do{for(n=0;s=u.exec(e);)if(d.test(s[0]))n++||(a=(o=u.lastIndex)-s[0].length);else if(n&&! --n){l=s.index+s[0].length;var f={left:{start:a,end:o},match:{start:o,end:s.index},right:{start:s.index,end:l},wholeMatch:{start:a,end:l}};if(p.push(f),!h)return p}}while(n&&(u.lastIndex=o));return p};t.helper.matchRecursiveRegExp=function(e,t,i,r){for(var n=c(e,t,i,r),o=[],s=0;s0){var u=[];0!==a[0].wholeMatch.start&&u.push(e.slice(0,a[0].wholeMatch.start));for(var d=0;d=0?n+(r||0):n},t.helper.splitAtIndex=function(e,i){if(!t.helper.isString(e))throw"InvalidArgumentError: first parameter of showdown.helper.regexIndexOf function must be a string";return[e.substring(0,i),e.substring(i)]},t.helper.encodeEmailAddress=function(e){var t=[function(e){return"&#"+e.charCodeAt(0)+";"},function(e){return"&#x"+e.charCodeAt(0).toString(16)+";"},function(e){return e}];return e=e.replace(/./g,(function(e){if("@"===e)e=t[Math.floor(2*Math.random())](e);else{var i=Math.random();e=i>.9?t[2](e):i>.45?t[1](e):t[0](e)}return e}))},t.helper.padEnd=function(e,t,i){return t>>=0,i=String(i||" "),e.length>t?String(e):((t-=e.length)>i.length&&(i+=i.repeat(t/i.length)),String(e)+i.slice(0,t))},"undefined"==typeof console&&(console={warn:function(e){alert(e)},log:function(e){alert(e)},error:function(e){throw e}}),t.helper.regexes={asteriskDashAndColon:/([*_:~])/g},t.helper.emojis={"+1":"👍","-1":"👎",100:"💯",1234:"🔢","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉","8ball":"🎱",a:"🅰️",ab:"🆎",abc:"🔤",abcd:"🔡",accept:"🉑",aerial_tramway:"🚡",airplane:"✈️",alarm_clock:"⏰",alembic:"⚗️",alien:"👽",ambulance:"🚑",amphora:"🏺",anchor:"⚓️",angel:"👼",anger:"💢",angry:"😠",anguished:"😧",ant:"🐜",apple:"🍎",aquarius:"♒️",aries:"♈️",arrow_backward:"◀️",arrow_double_down:"⏬",arrow_double_up:"⏫",arrow_down:"⬇️",arrow_down_small:"🔽",arrow_forward:"▶️",arrow_heading_down:"⤵️",arrow_heading_up:"⤴️",arrow_left:"⬅️",arrow_lower_left:"↙️",arrow_lower_right:"↘️",arrow_right:"➡️",arrow_right_hook:"↪️",arrow_up:"⬆️",arrow_up_down:"↕️",arrow_up_small:"🔼",arrow_upper_left:"↖️",arrow_upper_right:"↗️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",art:"🎨",articulated_lorry:"🚛",artificial_satellite:"🛰",astonished:"😲",athletic_shoe:"👟",atm:"🏧",atom_symbol:"⚛️",avocado:"🥑",b:"🅱️",baby:"👶",baby_bottle:"🍼",baby_chick:"🐤",baby_symbol:"🚼",back:"🔙",bacon:"🥓",badminton:"🏸",baggage_claim:"🛄",baguette_bread:"🥖",balance_scale:"⚖️",balloon:"🎈",ballot_box:"🗳",ballot_box_with_check:"☑️",bamboo:"🎍",banana:"🍌",bangbang:"‼️",bank:"🏦",bar_chart:"📊",barber:"💈",baseball:"⚾️",basketball:"🏀",basketball_man:"⛹️",basketball_woman:"⛹️‍♀️",bat:"🦇",bath:"🛀",bathtub:"🛁",battery:"🔋",beach_umbrella:"🏖",bear:"🐻",bed:"🛏",bee:"🐝",beer:"🍺",beers:"🍻",beetle:"🐞",beginner:"🔰",bell:"🔔",bellhop_bell:"🛎",bento:"🍱",biking_man:"🚴",bike:"🚲",biking_woman:"🚴‍♀️",bikini:"👙",biohazard:"☣️",bird:"🐦",birthday:"🎂",black_circle:"⚫️",black_flag:"🏴",black_heart:"🖤",black_joker:"🃏",black_large_square:"⬛️",black_medium_small_square:"◾️",black_medium_square:"◼️",black_nib:"✒️",black_small_square:"▪️",black_square_button:"🔲",blonde_man:"👱",blonde_woman:"👱‍♀️",blossom:"🌼",blowfish:"🐡",blue_book:"📘",blue_car:"🚙",blue_heart:"💙",blush:"😊",boar:"🐗",boat:"⛵️",bomb:"💣",book:"📖",bookmark:"🔖",bookmark_tabs:"📑",books:"📚",boom:"💥",boot:"👢",bouquet:"💐",bowing_man:"🙇",bow_and_arrow:"🏹",bowing_woman:"🙇‍♀️",bowling:"🎳",boxing_glove:"🥊",boy:"👦",bread:"🍞",bride_with_veil:"👰",bridge_at_night:"🌉",briefcase:"💼",broken_heart:"💔",bug:"🐛",building_construction:"🏗",bulb:"💡",bullettrain_front:"🚅",bullettrain_side:"🚄",burrito:"🌯",bus:"🚌",business_suit_levitating:"🕴",busstop:"🚏",bust_in_silhouette:"👤",busts_in_silhouette:"👥",butterfly:"🦋",cactus:"🌵",cake:"🍰",calendar:"📆",call_me_hand:"🤙",calling:"📲",camel:"🐫",camera:"📷",camera_flash:"📸",camping:"🏕",cancer:"♋️",candle:"🕯",candy:"🍬",canoe:"🛶",capital_abcd:"🔠",capricorn:"♑️",car:"🚗",card_file_box:"🗃",card_index:"📇",card_index_dividers:"🗂",carousel_horse:"🎠",carrot:"🥕",cat:"🐱",cat2:"🐈",cd:"💿",chains:"⛓",champagne:"🍾",chart:"💹",chart_with_downwards_trend:"📉",chart_with_upwards_trend:"📈",checkered_flag:"🏁",cheese:"🧀",cherries:"🍒",cherry_blossom:"🌸",chestnut:"🌰",chicken:"🐔",children_crossing:"🚸",chipmunk:"🐿",chocolate_bar:"🍫",christmas_tree:"🎄",church:"⛪️",cinema:"🎦",circus_tent:"🎪",city_sunrise:"🌇",city_sunset:"🌆",cityscape:"🏙",cl:"🆑",clamp:"🗜",clap:"👏",clapper:"🎬",classical_building:"🏛",clinking_glasses:"🥂",clipboard:"📋",clock1:"🕐",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",clock12:"🕛",clock1230:"🕧",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",closed_book:"📕",closed_lock_with_key:"🔐",closed_umbrella:"🌂",cloud:"☁️",cloud_with_lightning:"🌩",cloud_with_lightning_and_rain:"⛈",cloud_with_rain:"🌧",cloud_with_snow:"🌨",clown_face:"🤡",clubs:"♣️",cocktail:"🍸",coffee:"☕️",coffin:"⚰️",cold_sweat:"😰",comet:"☄️",computer:"💻",computer_mouse:"🖱",confetti_ball:"🎊",confounded:"😖",confused:"😕",congratulations:"㊗️",construction:"🚧",construction_worker_man:"👷",construction_worker_woman:"👷‍♀️",control_knobs:"🎛",convenience_store:"🏪",cookie:"🍪",cool:"🆒",policeman:"👮",copyright:"©️",corn:"🌽",couch_and_lamp:"🛋",couple:"👫",couple_with_heart_woman_man:"💑",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_man_woman:"💏",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",cow:"🐮",cow2:"🐄",cowboy_hat_face:"🤠",crab:"🦀",crayon:"🖍",credit_card:"💳",crescent_moon:"🌙",cricket:"🏏",crocodile:"🐊",croissant:"🥐",crossed_fingers:"🤞",crossed_flags:"🎌",crossed_swords:"⚔️",crown:"👑",cry:"😢",crying_cat_face:"😿",crystal_ball:"🔮",cucumber:"🥒",cupid:"💘",curly_loop:"➰",currency_exchange:"💱",curry:"🍛",custard:"🍮",customs:"🛃",cyclone:"🌀",dagger:"🗡",dancer:"💃",dancing_women:"👯",dancing_men:"👯‍♂️",dango:"🍡",dark_sunglasses:"🕶",dart:"🎯",dash:"💨",date:"📅",deciduous_tree:"🌳",deer:"🦌",department_store:"🏬",derelict_house:"🏚",desert:"🏜",desert_island:"🏝",desktop_computer:"🖥",male_detective:"🕵️",diamond_shape_with_a_dot_inside:"💠",diamonds:"♦️",disappointed:"😞",disappointed_relieved:"😥",dizzy:"💫",dizzy_face:"😵",do_not_litter:"🚯",dog:"🐶",dog2:"🐕",dollar:"💵",dolls:"🎎",dolphin:"🐬",door:"🚪",doughnut:"🍩",dove:"🕊",dragon:"🐉",dragon_face:"🐲",dress:"👗",dromedary_camel:"🐪",drooling_face:"🤤",droplet:"💧",drum:"🥁",duck:"🦆",dvd:"📀","e-mail":"📧",eagle:"🦅",ear:"👂",ear_of_rice:"🌾",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",egg:"🥚",eggplant:"🍆",eight_pointed_black_star:"✴️",eight_spoked_asterisk:"✳️",electric_plug:"🔌",elephant:"🐘",email:"✉️",end:"🔚",envelope_with_arrow:"📩",euro:"💶",european_castle:"🏰",european_post_office:"🏤",evergreen_tree:"🌲",exclamation:"❗️",expressionless:"😑",eye:"👁",eye_speech_bubble:"👁‍🗨",eyeglasses:"👓",eyes:"👀",face_with_head_bandage:"🤕",face_with_thermometer:"🤒",fist_oncoming:"👊",factory:"🏭",fallen_leaf:"🍂",family_man_woman_boy:"👪",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",fast_forward:"⏩",fax:"📠",fearful:"😨",feet:"🐾",female_detective:"🕵️‍♀️",ferris_wheel:"🎡",ferry:"⛴",field_hockey:"🏑",file_cabinet:"🗄",file_folder:"📁",film_projector:"📽",film_strip:"🎞",fire:"🔥",fire_engine:"🚒",fireworks:"🎆",first_quarter_moon:"🌓",first_quarter_moon_with_face:"🌛",fish:"🐟",fish_cake:"🍥",fishing_pole_and_fish:"🎣",fist_raised:"✊",fist_left:"🤛",fist_right:"🤜",flags:"🎏",flashlight:"🔦",fleur_de_lis:"⚜️",flight_arrival:"🛬",flight_departure:"🛫",floppy_disk:"💾",flower_playing_cards:"🎴",flushed:"😳",fog:"🌫",foggy:"🌁",football:"🏈",footprints:"👣",fork_and_knife:"🍴",fountain:"⛲️",fountain_pen:"🖋",four_leaf_clover:"🍀",fox_face:"🦊",framed_picture:"🖼",free:"🆓",fried_egg:"🍳",fried_shrimp:"🍤",fries:"🍟",frog:"🐸",frowning:"😦",frowning_face:"☹️",frowning_man:"🙍‍♂️",frowning_woman:"🙍",middle_finger:"🖕",fuelpump:"⛽️",full_moon:"🌕",full_moon_with_face:"🌝",funeral_urn:"⚱️",game_die:"🎲",gear:"⚙️",gem:"💎",gemini:"♊️",ghost:"👻",gift:"🎁",gift_heart:"💝",girl:"👧",globe_with_meridians:"🌐",goal_net:"🥅",goat:"🐐",golf:"⛳️",golfing_man:"🏌️",golfing_woman:"🏌️‍♀️",gorilla:"🦍",grapes:"🍇",green_apple:"🍏",green_book:"📗",green_heart:"💚",green_salad:"🥗",grey_exclamation:"❕",grey_question:"❔",grimacing:"😬",grin:"😁",grinning:"😀",guardsman:"💂",guardswoman:"💂‍♀️",guitar:"🎸",gun:"🔫",haircut_woman:"💇",haircut_man:"💇‍♂️",hamburger:"🍔",hammer:"🔨",hammer_and_pick:"⚒",hammer_and_wrench:"🛠",hamster:"🐹",hand:"✋",handbag:"👜",handshake:"🤝",hankey:"💩",hatched_chick:"🐥",hatching_chick:"🐣",headphones:"🎧",hear_no_evil:"🙉",heart:"❤️",heart_decoration:"💟",heart_eyes:"😍",heart_eyes_cat:"😻",heartbeat:"💓",heartpulse:"💗",hearts:"♥️",heavy_check_mark:"✔️",heavy_division_sign:"➗",heavy_dollar_sign:"💲",heavy_heart_exclamation:"❣️",heavy_minus_sign:"➖",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",helicopter:"🚁",herb:"🌿",hibiscus:"🌺",high_brightness:"🔆",high_heel:"👠",hocho:"🔪",hole:"🕳",honey_pot:"🍯",horse:"🐴",horse_racing:"🏇",hospital:"🏥",hot_pepper:"🌶",hotdog:"🌭",hotel:"🏨",hotsprings:"♨️",hourglass:"⌛️",hourglass_flowing_sand:"⏳",house:"🏠",house_with_garden:"🏡",houses:"🏘",hugs:"🤗",hushed:"😯",ice_cream:"🍨",ice_hockey:"🏒",ice_skate:"⛸",icecream:"🍦",id:"🆔",ideograph_advantage:"🉐",imp:"👿",inbox_tray:"📥",incoming_envelope:"📨",tipping_hand_woman:"💁",information_source:"ℹ️",innocent:"😇",interrobang:"⁉️",iphone:"📱",izakaya_lantern:"🏮",jack_o_lantern:"🎃",japan:"🗾",japanese_castle:"🏯",japanese_goblin:"👺",japanese_ogre:"👹",jeans:"👖",joy:"😂",joy_cat:"😹",joystick:"🕹",kaaba:"🕋",key:"🔑",keyboard:"⌨️",keycap_ten:"🔟",kick_scooter:"🛴",kimono:"👘",kiss:"💋",kissing:"😗",kissing_cat:"😽",kissing_closed_eyes:"😚",kissing_heart:"😘",kissing_smiling_eyes:"😙",kiwi_fruit:"🥝",koala:"🐨",koko:"🈁",label:"🏷",large_blue_circle:"🔵",large_blue_diamond:"🔷",large_orange_diamond:"🔶",last_quarter_moon:"🌗",last_quarter_moon_with_face:"🌜",latin_cross:"✝️",laughing:"😆",leaves:"🍃",ledger:"📒",left_luggage:"🛅",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",lemon:"🍋",leo:"♌️",leopard:"🐆",level_slider:"🎚",libra:"♎️",light_rail:"🚈",link:"🔗",lion:"🦁",lips:"👄",lipstick:"💄",lizard:"🦎",lock:"🔒",lock_with_ink_pen:"🔏",lollipop:"🍭",loop:"➿",loud_sound:"🔊",loudspeaker:"📢",love_hotel:"🏩",love_letter:"💌",low_brightness:"🔅",lying_face:"🤥",m:"Ⓜ️",mag:"🔍",mag_right:"🔎",mahjong:"🀄️",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",man:"👨",man_artist:"👨‍🎨",man_astronaut:"👨‍🚀",man_cartwheeling:"🤸‍♂️",man_cook:"👨‍🍳",man_dancing:"🕺",man_facepalming:"🤦‍♂️",man_factory_worker:"👨‍🏭",man_farmer:"👨‍🌾",man_firefighter:"👨‍🚒",man_health_worker:"👨‍⚕️",man_in_tuxedo:"🤵",man_judge:"👨‍⚖️",man_juggling:"🤹‍♂️",man_mechanic:"👨‍🔧",man_office_worker:"👨‍💼",man_pilot:"👨‍✈️",man_playing_handball:"🤾‍♂️",man_playing_water_polo:"🤽‍♂️",man_scientist:"👨‍🔬",man_shrugging:"🤷‍♂️",man_singer:"👨‍🎤",man_student:"👨‍🎓",man_teacher:"👨‍🏫",man_technologist:"👨‍💻",man_with_gua_pi_mao:"👲",man_with_turban:"👳",tangerine:"🍊",mans_shoe:"👞",mantelpiece_clock:"🕰",maple_leaf:"🍁",martial_arts_uniform:"🥋",mask:"😷",massage_woman:"💆",massage_man:"💆‍♂️",meat_on_bone:"🍖",medal_military:"🎖",medal_sports:"🏅",mega:"📣",melon:"🍈",memo:"📝",men_wrestling:"🤼‍♂️",menorah:"🕎",mens:"🚹",metal:"🤘",metro:"🚇",microphone:"🎤",microscope:"🔬",milk_glass:"🥛",milky_way:"🌌",minibus:"🚐",minidisc:"💽",mobile_phone_off:"📴",money_mouth_face:"🤑",money_with_wings:"💸",moneybag:"💰",monkey:"🐒",monkey_face:"🐵",monorail:"🚝",moon:"🌔",mortar_board:"🎓",mosque:"🕌",motor_boat:"🛥",motor_scooter:"🛵",motorcycle:"🏍",motorway:"🛣",mount_fuji:"🗻",mountain:"⛰",mountain_biking_man:"🚵",mountain_biking_woman:"🚵‍♀️",mountain_cableway:"🚠",mountain_railway:"🚞",mountain_snow:"🏔",mouse:"🐭",mouse2:"🐁",movie_camera:"🎥",moyai:"🗿",mrs_claus:"🤶",muscle:"💪",mushroom:"🍄",musical_keyboard:"🎹",musical_note:"🎵",musical_score:"🎼",mute:"🔇",nail_care:"💅",name_badge:"📛",national_park:"🏞",nauseated_face:"🤢",necktie:"👔",negative_squared_cross_mark:"❎",nerd_face:"🤓",neutral_face:"😐",new:"🆕",new_moon:"🌑",new_moon_with_face:"🌚",newspaper:"📰",newspaper_roll:"🗞",next_track_button:"⏭",ng:"🆖",no_good_man:"🙅‍♂️",no_good_woman:"🙅",night_with_stars:"🌃",no_bell:"🔕",no_bicycles:"🚳",no_entry:"⛔️",no_entry_sign:"🚫",no_mobile_phones:"📵",no_mouth:"😶",no_pedestrians:"🚷",no_smoking:"🚭","non-potable_water":"🚱",nose:"👃",notebook:"📓",notebook_with_decorative_cover:"📔",notes:"🎶",nut_and_bolt:"🔩",o:"⭕️",o2:"🅾️",ocean:"🌊",octopus:"🐙",oden:"🍢",office:"🏢",oil_drum:"🛢",ok:"🆗",ok_hand:"👌",ok_man:"🙆‍♂️",ok_woman:"🙆",old_key:"🗝",older_man:"👴",older_woman:"👵",om:"🕉",on:"🔛",oncoming_automobile:"🚘",oncoming_bus:"🚍",oncoming_police_car:"🚔",oncoming_taxi:"🚖",open_file_folder:"📂",open_hands:"👐",open_mouth:"😮",open_umbrella:"☂️",ophiuchus:"⛎",orange_book:"📙",orthodox_cross:"☦️",outbox_tray:"📤",owl:"🦉",ox:"🐂",package:"📦",page_facing_up:"📄",page_with_curl:"📃",pager:"📟",paintbrush:"🖌",palm_tree:"🌴",pancakes:"🥞",panda_face:"🐼",paperclip:"📎",paperclips:"🖇",parasol_on_ground:"⛱",parking:"🅿️",part_alternation_mark:"〽️",partly_sunny:"⛅️",passenger_ship:"🛳",passport_control:"🛂",pause_button:"⏸",peace_symbol:"☮️",peach:"🍑",peanuts:"🥜",pear:"🍐",pen:"🖊",pencil2:"✏️",penguin:"🐧",pensive:"😔",performing_arts:"🎭",persevere:"😣",person_fencing:"🤺",pouting_woman:"🙎",phone:"☎️",pick:"⛏",pig:"🐷",pig2:"🐖",pig_nose:"🐽",pill:"💊",pineapple:"🍍",ping_pong:"🏓",pisces:"♓️",pizza:"🍕",place_of_worship:"🛐",plate_with_cutlery:"🍽",play_or_pause_button:"⏯",point_down:"👇",point_left:"👈",point_right:"👉",point_up:"☝️",point_up_2:"👆",police_car:"🚓",policewoman:"👮‍♀️",poodle:"🐩",popcorn:"🍿",post_office:"🏣",postal_horn:"📯",postbox:"📮",potable_water:"🚰",potato:"🥔",pouch:"👝",poultry_leg:"🍗",pound:"💷",rage:"😡",pouting_cat:"😾",pouting_man:"🙎‍♂️",pray:"🙏",prayer_beads:"📿",pregnant_woman:"🤰",previous_track_button:"⏮",prince:"🤴",princess:"👸",printer:"🖨",purple_heart:"💜",purse:"👛",pushpin:"📌",put_litter_in_its_place:"🚮",question:"❓",rabbit:"🐰",rabbit2:"🐇",racehorse:"🐎",racing_car:"🏎",radio:"📻",radio_button:"🔘",radioactive:"☢️",railway_car:"🚃",railway_track:"🛤",rainbow:"🌈",rainbow_flag:"🏳️‍🌈",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐",raised_hands:"🙌",raising_hand_woman:"🙋",raising_hand_man:"🙋‍♂️",ram:"🐏",ramen:"🍜",rat:"🐀",record_button:"⏺",recycle:"♻️",red_circle:"🔴",registered:"®️",relaxed:"☺️",relieved:"😌",reminder_ribbon:"🎗",repeat:"🔁",repeat_one:"🔂",rescue_worker_helmet:"⛑",restroom:"🚻",revolving_hearts:"💞",rewind:"⏪",rhinoceros:"🦏",ribbon:"🎀",rice:"🍚",rice_ball:"🍙",rice_cracker:"🍘",rice_scene:"🎑",right_anger_bubble:"🗯",ring:"💍",robot:"🤖",rocket:"🚀",rofl:"🤣",roll_eyes:"🙄",roller_coaster:"🎢",rooster:"🐓",rose:"🌹",rosette:"🏵",rotating_light:"🚨",round_pushpin:"📍",rowing_man:"🚣",rowing_woman:"🚣‍♀️",rugby_football:"🏉",running_man:"🏃",running_shirt_with_sash:"🎽",running_woman:"🏃‍♀️",sa:"🈂️",sagittarius:"♐️",sake:"🍶",sandal:"👡",santa:"🎅",satellite:"📡",saxophone:"🎷",school:"🏫",school_satchel:"🎒",scissors:"✂️",scorpion:"🦂",scorpius:"♏️",scream:"😱",scream_cat:"🙀",scroll:"📜",seat:"💺",secret:"㊙️",see_no_evil:"🙈",seedling:"🌱",selfie:"🤳",shallow_pan_of_food:"🥘",shamrock:"☘️",shark:"🦈",shaved_ice:"🍧",sheep:"🐑",shell:"🐚",shield:"🛡",shinto_shrine:"⛩",ship:"🚢",shirt:"👕",shopping:"🛍",shopping_cart:"🛒",shower:"🚿",shrimp:"🦐",signal_strength:"📶",six_pointed_star:"🔯",ski:"🎿",skier:"⛷",skull:"💀",skull_and_crossbones:"☠️",sleeping:"😴",sleeping_bed:"🛌",sleepy:"😪",slightly_frowning_face:"🙁",slightly_smiling_face:"🙂",slot_machine:"🎰",small_airplane:"🛩",small_blue_diamond:"🔹",small_orange_diamond:"🔸",small_red_triangle:"🔺",small_red_triangle_down:"🔻",smile:"😄",smile_cat:"😸",smiley:"😃",smiley_cat:"😺",smiling_imp:"😈",smirk:"😏",smirk_cat:"😼",smoking:"🚬",snail:"🐌",snake:"🐍",sneezing_face:"🤧",snowboarder:"🏂",snowflake:"❄️",snowman:"⛄️",snowman_with_snow:"☃️",sob:"😭",soccer:"⚽️",soon:"🔜",sos:"🆘",sound:"🔉",space_invader:"👾",spades:"♠️",spaghetti:"🍝",sparkle:"❇️",sparkler:"🎇",sparkles:"✨",sparkling_heart:"💖",speak_no_evil:"🙊",speaker:"🔈",speaking_head:"🗣",speech_balloon:"💬",speedboat:"🚤",spider:"🕷",spider_web:"🕸",spiral_calendar:"🗓",spiral_notepad:"🗒",spoon:"🥄",squid:"🦑",stadium:"🏟",star:"⭐️",star2:"🌟",star_and_crescent:"☪️",star_of_david:"✡️",stars:"🌠",station:"🚉",statue_of_liberty:"🗽",steam_locomotive:"🚂",stew:"🍲",stop_button:"⏹",stop_sign:"🛑",stopwatch:"⏱",straight_ruler:"📏",strawberry:"🍓",stuck_out_tongue:"😛",stuck_out_tongue_closed_eyes:"😝",stuck_out_tongue_winking_eye:"😜",studio_microphone:"🎙",stuffed_flatbread:"🥙",sun_behind_large_cloud:"🌥",sun_behind_rain_cloud:"🌦",sun_behind_small_cloud:"🌤",sun_with_face:"🌞",sunflower:"🌻",sunglasses:"😎",sunny:"☀️",sunrise:"🌅",sunrise_over_mountains:"🌄",surfing_man:"🏄",surfing_woman:"🏄‍♀️",sushi:"🍣",suspension_railway:"🚟",sweat:"😓",sweat_drops:"💦",sweat_smile:"😅",sweet_potato:"🍠",swimming_man:"🏊",swimming_woman:"🏊‍♀️",symbols:"🔣",synagogue:"🕍",syringe:"💉",taco:"🌮",tada:"🎉",tanabata_tree:"🎋",taurus:"♉️",taxi:"🚕",tea:"🍵",telephone_receiver:"📞",telescope:"🔭",tennis:"🎾",tent:"⛺️",thermometer:"🌡",thinking:"🤔",thought_balloon:"💭",ticket:"🎫",tickets:"🎟",tiger:"🐯",tiger2:"🐅",timer_clock:"⏲",tipping_hand_man:"💁‍♂️",tired_face:"😫",tm:"™️",toilet:"🚽",tokyo_tower:"🗼",tomato:"🍅",tongue:"👅",top:"🔝",tophat:"🎩",tornado:"🌪",trackball:"🖲",tractor:"🚜",traffic_light:"🚥",train:"🚋",train2:"🚆",tram:"🚊",triangular_flag_on_post:"🚩",triangular_ruler:"📐",trident:"🔱",triumph:"😤",trolleybus:"🚎",trophy:"🏆",tropical_drink:"🍹",tropical_fish:"🐠",truck:"🚚",trumpet:"🎺",tulip:"🌷",tumbler_glass:"🥃",turkey:"🦃",turtle:"🐢",tv:"📺",twisted_rightwards_arrows:"🔀",two_hearts:"💕",two_men_holding_hands:"👬",two_women_holding_hands:"👭",u5272:"🈹",u5408:"🈴",u55b6:"🈺",u6307:"🈯️",u6708:"🈷️",u6709:"🈶",u6e80:"🈵",u7121:"🈚️",u7533:"🈸",u7981:"🈲",u7a7a:"🈳",umbrella:"☔️",unamused:"😒",underage:"🔞",unicorn:"🦄",unlock:"🔓",up:"🆙",upside_down_face:"🙃",v:"✌️",vertical_traffic_light:"🚦",vhs:"📼",vibration_mode:"📳",video_camera:"📹",video_game:"🎮",violin:"🎻",virgo:"♍️",volcano:"🌋",volleyball:"🏐",vs:"🆚",vulcan_salute:"🖖",walking_man:"🚶",walking_woman:"🚶‍♀️",waning_crescent_moon:"🌘",waning_gibbous_moon:"🌖",warning:"⚠️",wastebasket:"🗑",watch:"⌚️",water_buffalo:"🐃",watermelon:"🍉",wave:"👋",wavy_dash:"〰️",waxing_crescent_moon:"🌒",wc:"🚾",weary:"😩",wedding:"💒",weight_lifting_man:"🏋️",weight_lifting_woman:"🏋️‍♀️",whale:"🐳",whale2:"🐋",wheel_of_dharma:"☸️",wheelchair:"♿️",white_check_mark:"✅",white_circle:"⚪️",white_flag:"🏳️",white_flower:"💮",white_large_square:"⬜️",white_medium_small_square:"◽️",white_medium_square:"◻️",white_small_square:"▫️",white_square_button:"🔳",wilted_flower:"🥀",wind_chime:"🎐",wind_face:"🌬",wine_glass:"🍷",wink:"😉",wolf:"🐺",woman:"👩",woman_artist:"👩‍🎨",woman_astronaut:"👩‍🚀",woman_cartwheeling:"🤸‍♀️",woman_cook:"👩‍🍳",woman_facepalming:"🤦‍♀️",woman_factory_worker:"👩‍🏭",woman_farmer:"👩‍🌾",woman_firefighter:"👩‍🚒",woman_health_worker:"👩‍⚕️",woman_judge:"👩‍⚖️",woman_juggling:"🤹‍♀️",woman_mechanic:"👩‍🔧",woman_office_worker:"👩‍💼",woman_pilot:"👩‍✈️",woman_playing_handball:"🤾‍♀️",woman_playing_water_polo:"🤽‍♀️",woman_scientist:"👩‍🔬",woman_shrugging:"🤷‍♀️",woman_singer:"👩‍🎤",woman_student:"👩‍🎓",woman_teacher:"👩‍🏫",woman_technologist:"👩‍💻",woman_with_turban:"👳‍♀️",womans_clothes:"👚",womans_hat:"👒",women_wrestling:"🤼‍♀️",womens:"🚺",world_map:"🗺",worried:"😟",wrench:"🔧",writing_hand:"✍️",x:"❌",yellow_heart:"💛",yen:"💴",yin_yang:"☯️",yum:"😋",zap:"⚡️",zipper_mouth_face:"🤐",zzz:"💤",octocat:':octocat:',showdown:"S"},t.Converter=function(e){var i={},l=[],c=[],h={},u=o,d={parsed:{},raw:"",format:""};function p(e,i){if(i=i||null,t.helper.isString(e)){if(i=e=t.helper.stdExtName(e),t.extensions[e])return console.warn("DEPRECATION WARNING: "+e+" is an old extension that uses a deprecated loading method.Please inform the developer that the extension should be updated!"),void function(e,i){"function"==typeof e&&(e=e(new t.Converter)),t.helper.isArray(e)||(e=[e]);var r=a(e,i);if(!r.valid)throw Error(r.error);for(var n=0;n[ \t]+¨NBSP;<"),!i){if(!window||!window.document)throw new Error("HTMLParser is undefined. If in a webworker or nodejs environment, you need to provide a WHATWG DOM and HTML such as JSDOM");i=window.document}var r=i.createElement("div");r.innerHTML=e;var n={preList:function(e){for(var i=e.querySelectorAll("pre"),r=[],n=0;n'}else r.push(i[n].innerHTML),i[n].innerHTML="",i[n].setAttribute("prenum",n.toString());return r}(r)};!function e(t){for(var i=0;i? ?(['"].*['"])?\)$/m)>-1)s="";else if(!s){if(o||(o=n.toLowerCase().replace(/ ?\n/g," ")),s="#"+o,t.helper.isUndefined(r.gUrls[o]))return e;s=r.gUrls[o],t.helper.isUndefined(r.gTitles[o])||(c=r.gTitles[o])}var h='"};return e=(e=(e=(e=(e=r.converter._dispatch("anchors.before",e,i,r)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)] ?(?:\n *)?\[(.*?)]()()()()/g,n)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]?<([^>]*)>(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,n)).replace(/\[((?:\[[^\]]*]|[^\[\]])*)]()[ \t]*\([ \t]??(?:[ \t]*((["'])([^"]*?)\5))?[ \t]?\)/g,n)).replace(/\[([^\[\]]+)]()()()()()/g,n),i.ghMentions&&(e=e.replace(/(^|\s)(\\)?(@([a-z\d]+(?:[a-z\d.-]+?[a-z\d]+)*))/gim,(function(e,r,n,o,s){if("\\"===n)return r+o;if(!t.helper.isString(i.ghMentionsLink))throw new Error("ghMentionsLink option must be a string");var a=i.ghMentionsLink.replace(/\{u}/g,s),l="";return i.openLinksInNewWindow&&(l=' rel="noopener noreferrer" target="¨E95Eblank"'),r+'"+o+""}))),e=r.converter._dispatch("anchors.after",e,i,r)}));var h=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+?\.[^'">\s]+?)()(\1)?(?=\s|$)(?!["<>])/gi,u=/([*~_]+|\b)(((https?|ftp|dict):\/\/|www\.)[^'">\s]+\.[^'">\s]+?)([.!?,()\[\]])?(\1)?(?=\s|$)(?!["<>])/gi,d=/()<(((https?|ftp|dict):\/\/|www\.)[^'">\s]+)()>()/gi,p=/(^|\s)(?:mailto:)?([A-Za-z0-9!#$%&'*+-/=?^_`{|}~.]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)(?=$|\s)/gim,f=/<()(?:mailto:)?([-.\w]+@[-a-z0-9]+(\.[-a-z0-9]+)*\.[a-z]+)>/gi,m=function(e){return function(i,r,n,o,s,a,l){var c=n=n.replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback),h="",u="",d=r||"",p=l||"";return/^www\./i.test(n)&&(n=n.replace(/^www\./i,"http://www.")),e.excludeTrailingPunctuationFromURLs&&a&&(h=a),e.openLinksInNewWindow&&(u=' rel="noopener noreferrer" target="¨E95Eblank"'),d+'"+c+""+h+p}},_=function(e,i){return function(r,n,o){var s="mailto:";return n=n||"",o=t.subParser("unescapeSpecialChars")(o,e,i),e.encodeEmails?(s=t.helper.encodeEmailAddress(s+o),o=t.helper.encodeEmailAddress(o)):s+=o,n+''+o+""}};t.subParser("autoLinks",(function(e,t,i){return e=(e=(e=i.converter._dispatch("autoLinks.before",e,t,i)).replace(d,m(t))).replace(f,_(t,i)),e=i.converter._dispatch("autoLinks.after",e,t,i)})),t.subParser("simplifiedAutoLinks",(function(e,t,i){return t.simplifiedAutoLink?(e=i.converter._dispatch("simplifiedAutoLinks.before",e,t,i),e=(e=t.excludeTrailingPunctuationFromURLs?e.replace(u,m(t)):e.replace(h,m(t))).replace(p,_(t,i)),e=i.converter._dispatch("simplifiedAutoLinks.after",e,t,i)):e})),t.subParser("blockGamut",(function(e,i,r){return e=r.converter._dispatch("blockGamut.before",e,i,r),e=t.subParser("blockQuotes")(e,i,r),e=t.subParser("headers")(e,i,r),e=t.subParser("horizontalRule")(e,i,r),e=t.subParser("lists")(e,i,r),e=t.subParser("codeBlocks")(e,i,r),e=t.subParser("tables")(e,i,r),e=t.subParser("hashHTMLBlocks")(e,i,r),e=t.subParser("paragraphs")(e,i,r),e=r.converter._dispatch("blockGamut.after",e,i,r)})),t.subParser("blockQuotes",(function(e,i,r){e=r.converter._dispatch("blockQuotes.before",e,i,r),e+="\n\n";var n=/(^ {0,3}>[ \t]?.+\n(.+\n)*\n*)+/gm;return i.splitAdjacentBlockquotes&&(n=/^ {0,3}>[\s\S]*?(?:\n\n)/gm),e=e.replace(n,(function(e){return e=(e=(e=e.replace(/^[ \t]*>[ \t]?/gm,"")).replace(/¨0/g,"")).replace(/^[ \t]+$/gm,""),e=t.subParser("githubCodeBlocks")(e,i,r),e=(e=(e=t.subParser("blockGamut")(e,i,r)).replace(/(^|\n)/g,"$1 ")).replace(/(\s*
[^\r]+?<\/pre>)/gm,(function(e,t){var i=t;return i=(i=i.replace(/^  /gm,"¨0")).replace(/¨0/g,"")})),t.subParser("hashBlock")("
\n"+e+"\n
",i,r)})),e=r.converter._dispatch("blockQuotes.after",e,i,r)})),t.subParser("codeBlocks",(function(e,i,r){return e=r.converter._dispatch("codeBlocks.before",e,i,r),e=(e+="¨0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=¨0))/g,(function(e,n,o){var s=n,a=o,l="\n";return s=t.subParser("outdent")(s,i,r),s=t.subParser("encodeCode")(s,i,r),s=(s=(s=t.subParser("detab")(s,i,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""),i.omitExtraWLInCodeBlocks&&(l=""),s="
"+s+l+"
",t.subParser("hashBlock")(s,i,r)+a})),e=e.replace(/¨0/,""),e=r.converter._dispatch("codeBlocks.after",e,i,r)})),t.subParser("codeSpans",(function(e,i,r){return void 0===(e=r.converter._dispatch("codeSpans.before",e,i,r))&&(e=""),e=e.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,(function(e,n,o,s){var a=s;return a=(a=a.replace(/^([ \t]*)/g,"")).replace(/[ \t]*$/g,""),a=n+""+(a=t.subParser("encodeCode")(a,i,r))+"",a=t.subParser("hashHTMLSpans")(a,i,r)})),e=r.converter._dispatch("codeSpans.after",e,i,r)})),t.subParser("completeHTMLDocument",(function(e,t,i){if(!t.completeHTMLDocument)return e;e=i.converter._dispatch("completeHTMLDocument.before",e,t,i);var r="html",n="\n",o="",s='\n',a="",l="";for(var c in void 0!==i.metadata.parsed.doctype&&(n="\n","html"!==(r=i.metadata.parsed.doctype.toString().toLowerCase())&&"html5"!==r||(s='')),i.metadata.parsed)if(i.metadata.parsed.hasOwnProperty(c))switch(c.toLowerCase()){case"doctype":break;case"title":o=""+i.metadata.parsed.title+"\n";break;case"charset":s="html"===r||"html5"===r?'\n':'\n';break;case"language":case"lang":a=' lang="'+i.metadata.parsed[c]+'"',l+='\n';break;default:l+='\n'}return e=n+"\n\n"+o+s+l+"\n\n"+e.trim()+"\n\n",e=i.converter._dispatch("completeHTMLDocument.after",e,t,i)})),t.subParser("detab",(function(e,t,i){return e=(e=(e=(e=(e=(e=i.converter._dispatch("detab.before",e,t,i)).replace(/\t(?=\t)/g," ")).replace(/\t/g,"¨A¨B")).replace(/¨B(.+?)¨A/g,(function(e,t){for(var i=t,r=4-i.length%4,n=0;n/g,">"),e=i.converter._dispatch("encodeAmpsAndAngles.after",e,t,i)})),t.subParser("encodeBackslashEscapes",(function(e,i,r){return e=(e=(e=r.converter._dispatch("encodeBackslashEscapes.before",e,i,r)).replace(/\\(\\)/g,t.helper.escapeCharactersCallback)).replace(/\\([`*_{}\[\]()>#+.!~=|:-])/g,t.helper.escapeCharactersCallback),e=r.converter._dispatch("encodeBackslashEscapes.after",e,i,r)})),t.subParser("encodeCode",(function(e,i,r){return e=(e=r.converter._dispatch("encodeCode.before",e,i,r)).replace(/&/g,"&").replace(//g,">").replace(/([*_{}\[\]\\=~-])/g,t.helper.escapeCharactersCallback),e=r.converter._dispatch("encodeCode.after",e,i,r)})),t.subParser("escapeSpecialCharsWithinTagAttributes",(function(e,i,r){return e=(e=(e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.before",e,i,r)).replace(/<\/?[a-z\d_:-]+(?:[\s]+[\s\S]+?)?>/gi,(function(e){return e.replace(/(.)<\/?code>(?=.)/g,"$1`").replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)}))).replace(/-]|-[^>])(?:[^-]|-[^-])*)--)>/gi,(function(e){return e.replace(/([\\`*_~=|])/g,t.helper.escapeCharactersCallback)})),e=r.converter._dispatch("escapeSpecialCharsWithinTagAttributes.after",e,i,r)})),t.subParser("githubCodeBlocks",(function(e,i,r){return i.ghCodeBlocks?(e=r.converter._dispatch("githubCodeBlocks.before",e,i,r),e=(e+="¨0").replace(/(?:^|\n)(?: {0,3})(```+|~~~+)(?: *)([^\s`~]*)\n([\s\S]*?)\n(?: {0,3})\1/g,(function(e,n,o,s){var a=i.omitExtraWLInCodeBlocks?"":"\n";return s=t.subParser("encodeCode")(s,i,r),s="
"+(s=(s=(s=t.subParser("detab")(s,i,r)).replace(/^\n+/g,"")).replace(/\n+$/g,""))+a+"
",s=t.subParser("hashBlock")(s,i,r),"\n\n¨G"+(r.ghCodeBlocks.push({text:e,codeblock:s})-1)+"G\n\n"})),e=e.replace(/¨0/,""),r.converter._dispatch("githubCodeBlocks.after",e,i,r)):e})),t.subParser("hashBlock",(function(e,t,i){return e=(e=i.converter._dispatch("hashBlock.before",e,t,i)).replace(/(^\n+|\n+$)/g,""),e="\n\n¨K"+(i.gHtmlBlocks.push(e)-1)+"K\n\n",e=i.converter._dispatch("hashBlock.after",e,t,i)})),t.subParser("hashCodeTags",(function(e,i,r){return e=r.converter._dispatch("hashCodeTags.before",e,i,r),e=t.helper.replaceRecursiveRegExp(e,(function(e,n,o,s){var a=o+t.subParser("encodeCode")(n,i,r)+s;return"¨C"+(r.gHtmlSpans.push(a)-1)+"C"}),"]*>","","gim"),e=r.converter._dispatch("hashCodeTags.after",e,i,r)})),t.subParser("hashElement",(function(e,t,i){return function(e,t){var r=t;return r=(r=(r=r.replace(/\n\n/g,"\n")).replace(/^\n/,"")).replace(/\n+$/g,""),r="\n\n¨K"+(i.gHtmlBlocks.push(r)-1)+"K\n\n"}})),t.subParser("hashHTMLBlocks",(function(e,i,r){e=r.converter._dispatch("hashHTMLBlocks.before",e,i,r);var n=["pre","div","h1","h2","h3","h4","h5","h6","blockquote","table","dl","ol","ul","script","noscript","form","fieldset","iframe","math","style","section","header","footer","nav","article","aside","address","audio","canvas","figure","hgroup","output","video","p"],o=function(e,t,i,n){var o=e;return-1!==i.search(/\bmarkdown\b/)&&(o=i+r.converter.makeHtml(t)+n),"\n\n¨K"+(r.gHtmlBlocks.push(o)-1)+"K\n\n"};i.backslashEscapesHTMLTags&&(e=e.replace(/\\<(\/?[^>]+?)>/g,(function(e,t){return"<"+t+">"})));for(var s=0;s]*>)","im"),c="<"+n[s]+"\\b[^>]*>",h="";-1!==(a=t.helper.regexIndexOf(e,l));){var u=t.helper.splitAtIndex(e,a),d=t.helper.replaceRecursiveRegExp(u[1],o,c,h,"im");if(d===u[1])break;e=u[0].concat(d)}return e=e.replace(/(\n {0,3}(<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,i,r)),e=(e=t.helper.replaceRecursiveRegExp(e,(function(e){return"\n\n¨K"+(r.gHtmlBlocks.push(e)-1)+"K\n\n"}),"^ {0,3}\x3c!--","--\x3e","gm")).replace(/(?:\n\n)( {0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,t.subParser("hashElement")(e,i,r)),e=r.converter._dispatch("hashHTMLBlocks.after",e,i,r)})),t.subParser("hashHTMLSpans",(function(e,t,i){function r(e){return"¨C"+(i.gHtmlSpans.push(e)-1)+"C"}return e=(e=(e=(e=(e=i.converter._dispatch("hashHTMLSpans.before",e,t,i)).replace(/<[^>]+?\/>/gi,(function(e){return r(e)}))).replace(/<([^>]+?)>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<([^>]+?)\s[^>]+?>[\s\S]*?<\/\1>/g,(function(e){return r(e)}))).replace(/<[^>]+?>/gi,(function(e){return r(e)})),e=i.converter._dispatch("hashHTMLSpans.after",e,t,i)})),t.subParser("unhashHTMLSpans",(function(e,t,i){e=i.converter._dispatch("unhashHTMLSpans.before",e,t,i);for(var r=0;r]*>\\s*]*>","^ {0,3}\\s*
","gim"),e=r.converter._dispatch("hashPreCodeTags.after",e,i,r)})),t.subParser("headers",(function(e,i,r){e=r.converter._dispatch("headers.before",e,i,r);var n=isNaN(parseInt(i.headerLevelStart))?1:parseInt(i.headerLevelStart),o=i.smoothLivePreview?/^(.+)[ \t]*\n={2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n=+[ \t]*\n+/gm,s=i.smoothLivePreview?/^(.+)[ \t]*\n-{2,}[ \t]*\n+/gm:/^(.+)[ \t]*\n-+[ \t]*\n+/gm;e=(e=e.replace(o,(function(e,o){var s=t.subParser("spanGamut")(o,i,r),a=i.noHeaderId?"":' id="'+l(o)+'"',c=""+s+"";return t.subParser("hashBlock")(c,i,r)}))).replace(s,(function(e,o){var s=t.subParser("spanGamut")(o,i,r),a=i.noHeaderId?"":' id="'+l(o)+'"',c=n+1,h=""+s+"";return t.subParser("hashBlock")(h,i,r)}));var a=i.requireSpaceBeforeHeadingText?/^(#{1,6})[ \t]+(.+?)[ \t]*#*\n+/gm:/^(#{1,6})[ \t]*(.+?)[ \t]*#*\n+/gm;function l(e){var n,o;if(i.customizedHeaderId){var s=e.match(/\{([^{]+?)}\s*$/);s&&s[1]&&(e=s[1])}return n=e,o=t.helper.isString(i.prefixHeaderId)?i.prefixHeaderId:!0===i.prefixHeaderId?"section-":"",i.rawPrefixHeaderId||(n=o+n),n=i.ghCompatibleHeaderId?n.replace(/ /g,"-").replace(/&/g,"").replace(/¨T/g,"").replace(/¨D/g,"").replace(/[&+$,\/:;=?@"#{}|^¨~\[\]`\\*)(%.!'<>]/g,"").toLowerCase():i.rawHeaderId?n.replace(/ /g,"-").replace(/&/g,"&").replace(/¨T/g,"¨").replace(/¨D/g,"$").replace(/["']/g,"-").toLowerCase():n.replace(/[^\w]/g,"").toLowerCase(),i.rawPrefixHeaderId&&(n=o+n),r.hashLinkCounts[n]?n=n+"-"+r.hashLinkCounts[n]++:r.hashLinkCounts[n]=1,n}return e=e.replace(a,(function(e,o,s){var a=s;i.customizedHeaderId&&(a=s.replace(/\s?\{([^{]+?)}\s*$/,""));var c=t.subParser("spanGamut")(a,i,r),h=i.noHeaderId?"":' id="'+l(s)+'"',u=n-1+o.length,d=""+c+"";return t.subParser("hashBlock")(d,i,r)})),e=r.converter._dispatch("headers.after",e,i,r)})),t.subParser("horizontalRule",(function(e,i,r){e=r.converter._dispatch("horizontalRule.before",e,i,r);var n=t.subParser("hashBlock")("
",i,r);return e=(e=(e=e.replace(/^ {0,2}( ?-){3,}[ \t]*$/gm,n)).replace(/^ {0,2}( ?\*){3,}[ \t]*$/gm,n)).replace(/^ {0,2}( ?_){3,}[ \t]*$/gm,n),e=r.converter._dispatch("horizontalRule.after",e,i,r)})),t.subParser("images",(function(e,i,r){function n(e,i,n,o,s,a,l,c){var h=r.gUrls,u=r.gTitles,d=r.gDimensions;if(n=n.toLowerCase(),c||(c=""),e.search(/\(? ?(['"].*['"])?\)$/m)>-1)o="";else if(""===o||null===o){if(""!==n&&null!==n||(n=i.toLowerCase().replace(/ ?\n/g," ")),o="#"+n,t.helper.isUndefined(h[n]))return e;o=h[n],t.helper.isUndefined(u[n])||(c=u[n]),t.helper.isUndefined(d[n])||(s=d[n].width,a=d[n].height)}i=i.replace(/"/g,""").replace(t.helper.regexes.asteriskDashAndColon,t.helper.escapeCharactersCallback);var p=''+i+'"}return e=(e=(e=(e=(e=(e=r.converter._dispatch("images.before",e,i,r)).replace(/!\[([^\]]*?)] ?(?:\n *)?\[([\s\S]*?)]()()()()()/g,n)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,(function(e,t,i,r,o,s,a,l){return n(e,t,i,r=r.replace(/\s/g,""),o,s,0,l)}))).replace(/!\[([^\]]*?)][ \t]*()\([ \t]?<([^>]*)>(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(?:(["'])([^"]*?)\6))?[ \t]?\)/g,n)).replace(/!\[([^\]]*?)][ \t]*()\([ \t]??(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*(?:(["'])([^"]*?)\6)?[ \t]?\)/g,n)).replace(/!\[([^\[\]]+)]()()()()()/g,n),e=r.converter._dispatch("images.after",e,i,r)})),t.subParser("italicsAndBold",(function(e,t,i){function r(e,t,i){return t+e+i}return e=i.converter._dispatch("italicsAndBold.before",e,t,i),e=t.literalMidWordUnderscores?(e=(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return r(t,"","")}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return r(t,"","")}))).replace(/\b_(\S[\s\S]*?)_\b/g,(function(e,t){return r(t,"","")})):(e=(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/_([^\s_][\s\S]*?)_/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),e=t.literalMidWordAsterisks?(e=(e=e.replace(/([^*]|^)\B\*\*\*(\S[\s\S]*?)\*\*\*\B(?!\*)/g,(function(e,t,i){return r(i,t+"","")}))).replace(/([^*]|^)\B\*\*(\S[\s\S]*?)\*\*\B(?!\*)/g,(function(e,t,i){return r(i,t+"","")}))).replace(/([^*]|^)\B\*(\S[\s\S]*?)\*\B(?!\*)/g,(function(e,t,i){return r(i,t+"","")})):(e=(e=e.replace(/\*\*\*(\S[\s\S]*?)\*\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*\*(\S[\s\S]*?)\*\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e}))).replace(/\*([^\s*][\s\S]*?)\*/g,(function(e,t){return/\S$/.test(t)?r(t,"",""):e})),e=i.converter._dispatch("italicsAndBold.after",e,t,i)})),t.subParser("lists",(function(e,i,r){function n(e,n){r.gListLevel++,e=e.replace(/\n{2,}$/,"\n");var o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0| {0,3}([*+-]|\d+[.])[ \t]+))/gm,s=/\n[ \t]*\n(?!¨0)/.test(e+="¨0");return i.disableForced4SpacesIndentedSublists&&(o=/(\n)?(^ {0,3})([*+-]|\d+[.])[ \t]+((\[(x|X| )?])?[ \t]*[^\r]+?(\n{1,2}))(?=\n*(¨0|\2([*+-]|\d+[.])[ \t]+))/gm),e=(e=e.replace(o,(function(e,n,o,a,l,c,h){h=h&&""!==h.trim();var u=t.subParser("outdent")(l,i,r),d="";return c&&i.tasklists&&(d=' class="task-list-item" style="list-style-type: none;"',u=u.replace(/^[ \t]*\[(x|X| )?]/m,(function(){var e='-1?(u=t.subParser("githubCodeBlocks")(u,i,r),u=t.subParser("blockGamut")(u,i,r)):(u=(u=t.subParser("lists")(u,i,r)).replace(/\n$/,""),u=(u=t.subParser("hashHTMLBlocks")(u,i,r)).replace(/\n\n+/g,"\n\n"),u=s?t.subParser("paragraphs")(u,i,r):t.subParser("spanGamut")(u,i,r)),u=""+(u=u.replace("¨A",""))+"\n"}))).replace(/¨0/g,""),r.gListLevel--,n&&(e=e.replace(/\s+$/,"")),e}function o(e,t){if("ol"===t){var i=e.match(/^ *(\d+)\./);if(i&&"1"!==i[1])return' start="'+i[1]+'"'}return""}function s(e,t,r){var s=i.disableForced4SpacesIndentedSublists?/^ ?\d+\.[ \t]/gm:/^ {0,3}\d+\.[ \t]/gm,a=i.disableForced4SpacesIndentedSublists?/^ ?[*+-][ \t]/gm:/^ {0,3}[*+-][ \t]/gm,l="ul"===t?s:a,c="";if(-1!==e.search(l))!function i(h){var u=h.search(l),d=o(e,t);-1!==u?(c+="\n\n<"+t+d+">\n"+n(h.slice(0,u),!!r)+"\n",l="ul"==(t="ul"===t?"ol":"ul")?s:a,i(h.slice(u))):c+="\n\n<"+t+d+">\n"+n(h,!!r)+"\n"}(e);else{var h=o(e,t);c="\n\n<"+t+h+">\n"+n(e,!!r)+"\n"}return c}return e=r.converter._dispatch("lists.before",e,i,r),e+="¨0",e=(e=r.gListLevel?e.replace(/^(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,i){return s(t,i.search(/[*+-]/g)>-1?"ul":"ol",!0)})):e.replace(/(\n\n|^\n?)(( {0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(¨0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm,(function(e,t,i,r){return s(i,r.search(/[*+-]/g)>-1?"ul":"ol",!1)}))).replace(/¨0/,""),e=r.converter._dispatch("lists.after",e,i,r)})),t.subParser("metadata",(function(e,t,i){if(!t.metadata)return e;function r(e){i.metadata.raw=e,(e=(e=e.replace(/&/g,"&").replace(/"/g,""")).replace(/\n {4}/g," ")).replace(/^([\S ]+): +([\s\S]+?)$/gm,(function(e,t,r){return i.metadata.parsed[t]=r,""}))}return e=(e=(e=(e=i.converter._dispatch("metadata.before",e,t,i)).replace(/^\s*«««+(\S*?)\n([\s\S]+?)\n»»»+\n/,(function(e,t,i){return r(i),"¨M"}))).replace(/^\s*---+(\S*?)\n([\s\S]+?)\n---+\n/,(function(e,t,n){return t&&(i.metadata.format=t),r(n),"¨M"}))).replace(/¨M/g,""),e=i.converter._dispatch("metadata.after",e,t,i)})),t.subParser("outdent",(function(e,t,i){return e=(e=(e=i.converter._dispatch("outdent.before",e,t,i)).replace(/^(\t|[ ]{1,4})/gm,"¨0")).replace(/¨0/g,""),e=i.converter._dispatch("outdent.after",e,t,i)})),t.subParser("paragraphs",(function(e,i,r){for(var n=(e=(e=(e=r.converter._dispatch("paragraphs.before",e,i,r)).replace(/^\n+/g,"")).replace(/\n+$/g,"")).split(/\n{2,}/g),o=[],s=n.length,a=0;a=0?o.push(l):l.search(/\S/)>=0&&(l=(l=t.subParser("spanGamut")(l,i,r)).replace(/^([ \t]*)/g,"

"),l+="

",o.push(l))}for(s=o.length,a=0;a]*>\s*]*>/.test(h)&&(u=!0)}o[a]=h}return e=(e=(e=o.join("\n")).replace(/^\n+/g,"")).replace(/\n+$/g,""),r.converter._dispatch("paragraphs.after",e,i,r)})),t.subParser("runExtension",(function(e,t,i,r){if(e.filter)t=e.filter(t,r.converter,i);else if(e.regex){var n=e.regex;n instanceof RegExp||(n=new RegExp(n,"g")),t=t.replace(n,e.replace)}return t})),t.subParser("spanGamut",(function(e,i,r){return e=r.converter._dispatch("spanGamut.before",e,i,r),e=t.subParser("codeSpans")(e,i,r),e=t.subParser("escapeSpecialCharsWithinTagAttributes")(e,i,r),e=t.subParser("encodeBackslashEscapes")(e,i,r),e=t.subParser("images")(e,i,r),e=t.subParser("anchors")(e,i,r),e=t.subParser("autoLinks")(e,i,r),e=t.subParser("simplifiedAutoLinks")(e,i,r),e=t.subParser("emoji")(e,i,r),e=t.subParser("underline")(e,i,r),e=t.subParser("italicsAndBold")(e,i,r),e=t.subParser("strikethrough")(e,i,r),e=t.subParser("ellipsis")(e,i,r),e=t.subParser("hashHTMLSpans")(e,i,r),e=t.subParser("encodeAmpsAndAngles")(e,i,r),i.simpleLineBreaks?/\n\n¨K/.test(e)||(e=e.replace(/\n+/g,"
\n")):e=e.replace(/ +\n/g,"
\n"),e=r.converter._dispatch("spanGamut.after",e,i,r)})),t.subParser("strikethrough",(function(e,i,r){return i.strikethrough&&(e=(e=r.converter._dispatch("strikethrough.before",e,i,r)).replace(/(?:~){2}([\s\S]+?)(?:~){2}/g,(function(e,n){return function(e){return i.simplifiedAutoLink&&(e=t.subParser("simplifiedAutoLinks")(e,i,r)),""+e+""}(n)})),e=r.converter._dispatch("strikethrough.after",e,i,r)),e})),t.subParser("stripLinkDefinitions",(function(e,i,r){var n=function(n,o,s,a,l,c,h){return o=o.toLowerCase(),e.toLowerCase().split(o).length-1<2?n:(s.match(/^data:.+?\/.+?;base64,/)?r.gUrls[o]=s.replace(/\s/g,""):r.gUrls[o]=t.subParser("encodeAmpsAndAngles")(s,i,r),c?c+h:(h&&(r.gTitles[o]=h.replace(/"|'/g,""")),i.parseImgDimensions&&a&&l&&(r.gDimensions[o]={width:a,height:l}),""))};return e=(e=(e=(e+="¨0").replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n\n|(?=¨0)|(?=\n\[))/gm,n)).replace(/^ {0,3}\[([^\]]+)]:[ \t]*\n?[ \t]*\s]+)>?(?: =([*\d]+[A-Za-z%]{0,4})x([*\d]+[A-Za-z%]{0,4}))?[ \t]*\n?[ \t]*(?:(\n*)["|'(](.+?)["|')][ \t]*)?(?:\n+|(?=¨0))/gm,n)).replace(/¨0/,"")})),t.subParser("tables",(function(e,i,r){if(!i.tables)return e;function n(e,n){return""+t.subParser("spanGamut")(e,i,r)+"\n"}function o(e){var o,s=e.split("\n");for(o=0;o"+(l=t.subParser("spanGamut")(l,i,r))+"\n"));for(o=0;o\n\n\n",n=0;n\n";for(var o=0;o\n"}return i+"\n\n"}(f,_)}return e=(e=(e=(e=r.converter._dispatch("tables.before",e,i,r)).replace(/\\(\|)/g,t.helper.escapeCharactersCallback)).replace(/^ {0,3}\|?.+\|.+\n {0,3}\|?[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*:?[ \t]*(?:[-=]){2,}[\s\S]+?(?:\n\n|¨0)/gm,o)).replace(/^ {0,3}\|.+\|[ \t]*\n {0,3}\|[ \t]*:?[ \t]*(?:[-=]){2,}[ \t]*:?[ \t]*\|[ \t]*\n( {0,3}\|.+\|[ \t]*\n)*(?:\n|¨0)/gm,o),e=r.converter._dispatch("tables.after",e,i,r)})),t.subParser("underline",(function(e,i,r){return i.underline?(e=r.converter._dispatch("underline.before",e,i,r),e=(e=i.literalMidWordUnderscores?(e=e.replace(/\b___(\S[\s\S]*?)___\b/g,(function(e,t){return""+t+""}))).replace(/\b__(\S[\s\S]*?)__\b/g,(function(e,t){return""+t+""})):(e=e.replace(/___(\S[\s\S]*?)___/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/__(\S[\s\S]*?)__/g,(function(e,t){return/\S$/.test(t)?""+t+"":e}))).replace(/(_)/g,t.helper.escapeCharactersCallback),e=r.converter._dispatch("underline.after",e,i,r)):e})),t.subParser("unescapeSpecialChars",(function(e,t,i){return e=(e=i.converter._dispatch("unescapeSpecialChars.before",e,t,i)).replace(/¨E(\d+)E/g,(function(e,t){var i=parseInt(t);return String.fromCharCode(i)})),e=i.converter._dispatch("unescapeSpecialChars.after",e,t,i)})),t.subParser("makeMarkdown.blockquote",(function(e,i){var r="";if(e.hasChildNodes())for(var n=e.childNodes,o=n.length,s=0;s ")})),t.subParser("makeMarkdown.codeBlock",(function(e,t){var i=e.getAttribute("language"),r=e.getAttribute("precodenum");return"```"+i+"\n"+t.preList[r]+"\n```"})),t.subParser("makeMarkdown.codeSpan",(function(e){return"`"+e.innerHTML+"`"})),t.subParser("makeMarkdown.emphasis",(function(e,i){var r="";if(e.hasChildNodes()){r+="*";for(var n=e.childNodes,o=n.length,s=0;s",e.hasAttribute("width")&&e.hasAttribute("height")&&(t+=" ="+e.getAttribute("width")+"x"+e.getAttribute("height")),e.hasAttribute("title")&&(t+=' "'+e.getAttribute("title")+'"'),t+=")"),t})),t.subParser("makeMarkdown.links",(function(e,i){var r="";if(e.hasChildNodes()&&e.hasAttribute("href")){var n=e.childNodes,o=n.length;r="[";for(var s=0;s",e.hasAttribute("title")&&(r+=' "'+e.getAttribute("title")+'"'),r+=")"}return r})),t.subParser("makeMarkdown.list",(function(e,i,r){var n="";if(!e.hasChildNodes())return"";for(var o=e.childNodes,s=o.length,a=e.getAttribute("start")||1,l=0;l"+t.preList[i]+""})),t.subParser("makeMarkdown.strikethrough",(function(e,i){var r="";if(e.hasChildNodes()){r+="~~";for(var n=e.childNodes,o=n.length,s=0;str>th"),l=e.querySelectorAll("tbody>tr");for(r=0;rf&&(f=m)}for(r=0;r/g,"\\$1>")).replace(/^#/gm,"\\#")).replace(/^(\s*)([-=]{3,})(\s*)$/,"$1\\$2$3")).replace(/^( {0,3}\d+)\./gm,"$1\\.")).replace(/^( {0,3})([+-])/gm,"$1\\$2")).replace(/]([\s]*)\(/g,"\\]$1\\(")).replace(/^ {0,3}\[([\S \t]*?)]:/gm,"\\[$1]:")})),Co.exports?Co.exports=t:this.showdown=t}.call(e);var Po=t(ko.exports);let zo={en:{population:"Population",people:"people",area:"Area",km:"km",about:"About",founded:"Founded"},ru:{population:"Население",people:"человек",area:"Площадь",km:"км",about:"Больше",founded:"Основано"}},Lo=(navigator.language||navigator.userLanguage).split("-")[0];function Do(e){return zo[Lo][e]||zo.en[e]||e}window.onload=async()=>{const e=new Proxy(new URLSearchParams(window.location.search),{get:(e,t)=>e.get(t)}),t=e.projection||"globe",i=e.id||"worldMap";let n=(await(await fetch("https://raw.githubusercontent.com/CIMEngine/MapList/main/index.json")).json())[i];n||alert(`Map "${i}" not found`);let o={};o.external=e.external||n.external,o.external&&(o=await(await fetch(o.external)).json()),o.geoURL=e.geoURL||n.geoURL,o.countryInfoUrl=e.countryInfoURL||n.countryInfoURL,o.debug=e.debug||!1,o.icon=e.icon||n.icon,o.name=e.name||n.name,o.icon&&document.getElementById("icon").setAttribute("href",o.icon),o.name&&(document.title=o.name),r.accessToken="pk.eyJ1IjoiYXJ0ZWdvc2VyIiwiYSI6ImNrcDViN3BhcDAwbW0ydnBnOXZ0ZzFreXUifQ.FIVtaBNr9dr_TIw672Zqdw";let s=new r.Map({container:"map",style:"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true",center:[53.19,41.28],zoom:3,projection:t});s.addControl(new _,"top-right"),s.addControl(new l({instant:!0}),"top-right"),s.addControl(new y),s.addControl(new f({styles:[{label:"Streets",styleName:"Mapbox Streets",styleUrl:"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true"},{label:"Satellite",styleName:"Satellite",styleUrl:"mapbox://styles/artegoser/cliskjlhw00ug01pgfs9lesog?optimize=true"}]}),"top-left"),o.debug&&s.addControl(new u({console:!0}),"bottom-right");let a=new Po.Converter;s.on("style.load",(async()=>{let e;s.loadImage("https://cimengine.github.io/map/icons/city.png",((e,t)=>{if(e)throw e;s.addImage("city",t)})),s.loadImage("https://cimengine.github.io/map/icons/capital.png",((e,t)=>{if(e)throw e;s.addImage("capital-city",t),s.addImage("capital",t)})),s.loadImage("https://cimengine.github.io/map/icons/landmark.png",((e,t)=>{if(e)throw e;s.addImage("landmark-0",t)})),function(...e){let t=e.shift();console.log(`%c ${t} `,"color:white; background-color: #78d6fa; border-radius:10px;",...e)}("Getting country data");let t=await fetch(o.countryInfoUrl);t=await t.json();let i={};for(let e=0;e
${Do("population")} - ${t.properties.amount} ${Do("people")}.
`:""}\n
\n ${t?.properties?.img?`
${t.properties.name} img
`:""}\n
\n
${t.properties.name}\n ${t.properties.translated_name?` - ${t.properties.translated_name}`:""}\n
\n
\n ${t.properties.description?`
${a.makeHtml(t.properties.description)}
`:""}\n
\n `).addTo(s);if("Polygon"===t.geometry.type||"MultiPolygon"===t.geometry.type){let o=i[t.properties.name]||{name:"gl js mapbox is awesome"};setTimeout((()=>{if("gl js mapbox is awesome"!==o.name&&e!==n)return(new r.Popup).setLngLat(n).setHTML(`\n
\n
\n \n
\n
\n
\n ${o.name}\n
\n
\n
\n ${JSON.parse(t.properties.tags||"[]").join(", ")}\n
\n
\n ${Do("founded")}: ${new Date(o.date).toLocaleDateString()}\n
\n
\n ${o.description?`
${a.makeHtml(o.description)}
`:""}\n
\n
\n ${Do("area")}: ${t.properties.area} ${Do("km")}²\n
\n
\n ${o.about?`${Do("about")}`:""}\n
\n
`).addTo(s)}),1)}}s.addSource("map-data",{type:"geojson",data:o.geoURL}),s.addLayer({id:"map-data-fill-outline",type:"line",source:"map-data",paint:{"line-color":["coalesce",["get","stroke"],"#0c7700"],"line-width":2,"line-opacity":.8}}),s.addLayer({id:"map-data-fill",type:"fill",source:"map-data",paint:{"fill-color":["get","fill"],"fill-opacity":["coalesce",["get","fill-opacity"],.3]}}),s.addLayer({id:"map-data-symbol",type:"symbol",source:"map-data",layout:{"icon-image":["get","type"],"icon-size":.15},minzoom:3}),s.on("click","map-data-fill",(e=>{const t=e.lngLat;for(;Math.abs(e.lngLat.lng-t[0])>180;)t[0]+=e.lngLat.lng>t[0]?360:-360;n(e.features[0],t)})),s.on("click","map-data-symbol",(e=>{const t=e.lngLat;for(;Math.abs(e.lngLat.lng-t[0])>180;)t[0]+=e.lngLat.lng>t[0]?360:-360;n(e.features[0],t)}))}))}; //# sourceMappingURL=index.bundle.js.map diff --git a/index.bundle.js.map b/index.bundle.js.map index 5798f9d..02def0f 100644 --- a/index.bundle.js.map +++ b/index.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"index.bundle.js","sources":["../node_modules/mapbox-gl/dist/mapbox-gl.js","../node_modules/@mapbox-controls/helpers/src/index.js","../node_modules/@mapbox-controls/compass/src/icons.js","../node_modules/@mapbox-controls/compass/src/index.js","../node_modules/@mapbox-controls/inspect/src/icons.js","../node_modules/@mapbox-controls/inspect/src/popup.js","../node_modules/@mapbox-controls/inspect/src/index.js","../node_modules/@mapbox-controls/styles/src/icons.js","../node_modules/@mapbox-controls/styles/src/index.js","../node_modules/@mapbox-controls/zoom/src/icons.js","../node_modules/@mapbox-controls/zoom/src/index.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/utils/userAgent.js","../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@popperjs/core/lib/popper-lite.js","../node_modules/@popperjs/core/lib/popper.js","../node_modules/bootstrap/dist/js/bootstrap.esm.js","../node_modules/showdown/dist/showdown.js","../src/index.js"],"sourcesContent":["/* Mapbox GL JS is Copyright © 2020 Mapbox and subject to the Mapbox Terms of Service ((https://www.mapbox.com/legal/tos/). */\n(function (global, factory) {\ntypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\ntypeof define === 'function' && define.amd ? define(factory) :\n(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.mapboxgl = factory());\n})(this, (function () { 'use strict';\n\n/* eslint-disable */\n\nvar shared, worker, mapboxgl;\n// define gets called three times: one for each chunk. we rely on the order\n// they're imported to know which is which\nfunction define(_, chunk) {\nif (!shared) {\n shared = chunk;\n} else if (!worker) {\n worker = chunk;\n} else {\n var workerBundleString = \"self.onerror = function() { console.error('An error occurred while parsing the WebWorker bundle. This is most likely due to improper transpilation by Babel; please see https://docs.mapbox.com/mapbox-gl-js/guides/install/#transpiling'); }; var sharedChunk = {}; (\" + shared + \")(sharedChunk); (\" + worker + \")(sharedChunk); self.onerror = null;\"\n\n var sharedChunk = {};\n shared(sharedChunk);\n mapboxgl = chunk(sharedChunk);\n if (typeof window !== 'undefined' && window && window.URL && window.URL.createObjectURL) {\n mapboxgl.workerUrl = window.URL.createObjectURL(new Blob([workerBundleString], { type: 'text/javascript' }));\n }\n}\n}\n\n\ndefine([\"exports\"],(function(t){\"use strict\";var e=\"undefined\"!=typeof self?self:{},r=\"2.15.0\";let n;const i={API_URL:\"https://api.mapbox.com\",get API_URL_REGEX(){if(null==n){const t=/^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/|\\?|$)/i;try{n=null!=process.env.API_URL_REGEX?new RegExp(process.env.API_URL_REGEX):t;}catch(e){n=t;}}return n},get API_TILEJSON_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/v[0-9]*\\/.*\\.json.*$)/i},get API_SPRITE_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/styles\\/v[0-9]*\\/)(.*\\/sprite.*\\..*$)/i},get API_FONTS_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/fonts\\/v[0-9]*\\/)(.*\\.pbf.*$)/i},get API_STYLE_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/styles\\/v[0-9]*\\/)(.*$)/i},get API_CDN_URL_REGEX(){return /^((https?:)?\\/\\/)?api\\.mapbox\\.c(n|om)(\\/mapbox-gl-js\\/)(.*$)/i},get EVENTS_URL(){if(!i.API_URL)return null;try{const t=new URL(i.API_URL);return \"api.mapbox.cn\"===t.hostname?\"https://events.mapbox.cn/events/v2\":\"api.mapbox.com\"===t.hostname?\"https://events.mapbox.com/events/v2\":null}catch(t){return null}},SESSION_PATH:\"/map-sessions/v1\",FEEDBACK_URL:\"https://apps.mapbox.com/feedback\",TILE_URL_VERSION:\"v4\",RASTER_URL_PREFIX:\"raster/v1\",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},s={supported:!1,testSupport:function(t){!l&&o&&(u?c(t):a=t);}};let a,o,l=!1,u=!1;function c(t){const e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,o),t.isContextLost())return;s.supported=!0;}catch(t){}t.deleteTexture(e),l=!0;}e.document&&(o=e.document.createElement(\"img\"),o.onload=function(){a&&c(a),a=null,u=!0;},o.onerror=function(){l=!0,a=null;},o.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\");const h=\"01\";function p(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}var d=f;function f(t,e,r,n){this.cx=3*t,this.bx=3*(r-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=e,this.p2x=r,this.p2y=n;}f.prototype={sampleCurveX:function(t){return ((this.ax*t+this.bx)*t+this.cx)*t},sampleCurveY:function(t){return ((this.ay*t+this.by)*t+this.cy)*t},sampleCurveDerivativeX:function(t){return (3*this.ax*t+2*this.bx)*t+this.cx},solveCurveX:function(t,e){if(void 0===e&&(e=1e-6),t<0)return 0;if(t>1)return 1;for(var r=t,n=0;n<8;n++){var i=this.sampleCurveX(r)-t;if(Math.abs(i)i?a=r:o=r,r=.5*(o-a)+a;return r},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};var y=p(d),m=g;function g(t,e){this.x=t,this.y=e;}g.prototype={clone:function(){return new g(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,r=t.y-this.y;return e*e+r*r},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[2]*this.x+t[3]*this.y;return this.x=t[0]*this.x+t[1]*this.y,this.y=e,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),r=Math.sin(t),n=r*this.x+e*this.y;return this.x=e*this.x-r*this.y,this.y=n,this},_rotateAround:function(t,e){var r=Math.cos(t),n=Math.sin(t),i=e.y+n*(this.x-e.x)+r*(this.y-e.y);return this.x=e.x+r*(this.x-e.x)-n*(this.y-e.y),this.y=i,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},g.convert=function(t){return t instanceof g?t:Array.isArray(t)?new g(t[0],t[1]):t};var x=p(m);const v=Math.PI/180,b=180/Math.PI;function w(t){return t*v}function _(t){return t*b}const A=[[0,0],[1,0],[1,1],[0,1]];function S(t){if(t<=0)return 0;if(t>=1)return 1;const e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75)}function k(t,e,r,n){const i=new y(t,e,r,n);return function(t){return i.solve(t)}}const I=k(.25,.1,.25,1);function M(t,e,r){return Math.min(r,Math.max(e,t))}function T(t,e,r){return (r=M((r-t)/(e-t),0,1))*r*(3-2*r)}function z(t,e,r){const n=r-e,i=((t-e)%n+n)%n+e;return i===e?r:i}function B(t,e,r){if(!t.length)return r(null,[]);let n=t.length;const i=new Array(t.length);let s=null;t.forEach(((t,a)=>{e(t,((t,e)=>{t&&(s=t),i[a]=e,0==--n&&r(s,i);}));}));}function E(t){const e=[];for(const r in t)e.push(t[r]);return e}function C(t,...e){for(const r of e)for(const e in r)t[e]=r[e];return t}let P=1;function D(){return P++}function V(){return function t(e){return e?(e^Math.random()*(16>>e/4)).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,t)}()}function L(t){return t<=1?1:Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function F(t){return !!t&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)}function R(t,e){t.forEach((t=>{e[t]&&(e[t]=e[t].bind(e));}));}function U(t,e){return -1!==t.indexOf(e,t.length-e.length)}function $(t,e,r){const n={};for(const i in t)n[i]=e.call(r||this,t[i],i,t);return n}function j(t,e,r){const n={};for(const i in t)e.call(r||this,t[i],i,t)&&(n[i]=t[i]);return n}function O(t){return Array.isArray(t)?t.map(O):\"object\"==typeof t&&t?$(t,O):t}const q={};function N(t){q[t]||(\"undefined\"!=typeof console&&console.warn(t),q[t]=!0);}function G(t,e,r){return (r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x)}function Z(t){let e=0;for(let r,n,i=0,s=t.length,a=s-1;i@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,((t,r,n,i)=>{const s=n||i;return e[r]=!s||s.toLowerCase(),\"\"})),e[\"max-age\"]){const t=parseInt(e[\"max-age\"],10);isNaN(t)?delete e[\"max-age\"]:e[\"max-age\"]=t;}return e}let J=null;function H(t){if(null==J){const e=t.navigator?t.navigator.userAgent:null;J=!!t.safari||!(!e||!(/\\b(iPad|iPhone|iPod)\\b/.test(e)||e.match(\"Safari\")&&!e.match(\"Chrome\")));}return J}function Y(t){try{const r=e[t];return r.setItem(\"_mapbox_test_\",1),r.removeItem(\"_mapbox_test_\"),!0}catch(t){return !1}}function W(t,e){return [t[4*e],t[4*e+1],t[4*e+2],t[4*e+3]]}const Q=\"mapbox-tiles\";let tt=500,et=50;let rt,nt;function it(){try{return e.caches}catch(t){}}function st(){it()&&!rt&&(rt=e.caches.open(Q));}function at(t){const e=t.indexOf(\"?\");if(e<0)return t;const r=function(t){const e=t.indexOf(\"?\");return e>0?t.slice(e+1).split(\"&\"):[]}(t),n=r.filter((t=>{const e=t.split(\"=\");return \"language\"===e[0]||\"worldview\"===e[0]}));return n.length?`${t.slice(0,e)}?${n.join(\"&\")}`:t.slice(0,e)}let ot=1/0;const lt={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\"};\"function\"==typeof Object.freeze&&Object.freeze(lt);class ut extends Error{constructor(t,e,r){401===e&&bt(r)&&(t+=\": you may have provided an invalid Mapbox access token. See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes\"),super(t),this.status=e,this.url=r;}toString(){return `${this.name}: ${this.message} (${this.status}): ${this.url}`}}const ct=K()?()=>self.worker&&self.worker.referrer:()=>(\"blob:\"===e.location.protocol?e.parent:e).location.href;const ht=function(t,r){if(!(/^file:/.test(n=t.url)||/^file:/.test(ct())&&!/^\\w+:/.test(n))){if(e.fetch&&e.Request&&e.AbortController&&e.Request.prototype.hasOwnProperty(\"signal\"))return function(t,r){const n=new e.AbortController,i=new e.Request(t.url,{method:t.method||\"GET\",body:t.body,credentials:t.credentials,headers:t.headers,referrer:ct(),referrerPolicy:t.referrerPolicy,signal:n.signal});let s=!1,a=!1;const o=(l=i.url).indexOf(\"sku=\")>0&&bt(l);var l;\"json\"===t.type&&i.headers.set(\"Accept\",\"application/json\");const u=(n,s,l)=>{if(a)return;if(n&&\"SecurityError\"!==n.message&&N(n.toString()),s&&l)return c(s);const u=Date.now();e.fetch(i).then((e=>{if(e.ok){const t=o?e.clone():null;return c(e,t,u)}return r(new ut(e.statusText,e.status,t.url))})).catch((e=>{\"AbortError\"!==e.name&&r(new Error(`${e.message} ${t.url}`));}));},c=(n,o,l)=>{(\"arrayBuffer\"===t.type?n.arrayBuffer():\"json\"===t.type?n.json():n.text()).then((t=>{a||(o&&l&&function(t,r,n){if(st(),!rt)return;const i={status:r.status,statusText:r.statusText,headers:new e.Headers};r.headers.forEach(((t,e)=>i.headers.set(e,t)));const s=X(r.headers.get(\"Cache-Control\")||\"\");if(s[\"no-store\"])return;s[\"max-age\"]&&i.headers.set(\"Expires\",new Date(n+1e3*s[\"max-age\"]).toUTCString());const a=i.headers.get(\"Expires\");a&&(new Date(a).getTime()-n<42e4||function(t,e){if(void 0===nt)try{new Response(new ReadableStream),nt=!0;}catch(t){nt=!1;}nt?e(t.body):t.blob().then(e);}(r,(r=>{const n=new e.Response(r,i);st(),rt&&rt.then((e=>e.put(at(t.url),n))).catch((t=>N(t.message)));})));}(i,o,l),s=!0,r(null,t,n.headers.get(\"Cache-Control\"),n.headers.get(\"Expires\")));})).catch((t=>{a||r(new Error(t.message));}));};return o?function(t,e){if(st(),!rt)return e(null);const r=at(t.url);rt.then((t=>{t.match(r).then((n=>{const i=function(t){if(!t)return !1;const e=new Date(t.headers.get(\"Expires\")||0),r=X(t.headers.get(\"Cache-Control\")||\"\");return e>Date.now()&&!r[\"no-cache\"]}(n);t.delete(r),i&&t.put(r,n.clone()),e(null,n,i);})).catch(e);})).catch(e);}(i,u):u(null,null),{cancel:()=>{a=!0,s||n.abort();}}}(t,r);if(K()&&self.worker&&self.worker.actor)return self.worker.actor.send(\"getResource\",t,r,void 0,!0)}var n;return function(t,r){const n=new e.XMLHttpRequest;n.open(t.method||\"GET\",t.url,!0),\"arrayBuffer\"===t.type&&(n.responseType=\"arraybuffer\");for(const e in t.headers)n.setRequestHeader(e,t.headers[e]);return \"json\"===t.type&&(n.responseType=\"text\",n.setRequestHeader(\"Accept\",\"application/json\")),n.withCredentials=\"include\"===t.credentials,n.onerror=()=>{r(new Error(n.statusText));},n.onload=()=>{if((n.status>=200&&n.status<300||0===n.status)&&null!==n.response){let e=n.response;if(\"json\"===t.type)try{e=JSON.parse(n.response);}catch(t){return r(t)}r(null,e,n.getResponseHeader(\"Cache-Control\"),n.getResponseHeader(\"Expires\"));}else r(new ut(n.statusText,n.status,t.url));},n.send(t.body),{cancel:()=>n.abort()}}(t,r)},pt=function(t,e){return ht(C(t,{type:\"arrayBuffer\"}),e)};function dt(t){const r=e.document.createElement(\"a\");return r.href=t,r.protocol===e.document.location.protocol&&r.host===e.document.location.host}const ft=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";let yt,mt;yt=[],mt=0;const gt=function(t,r){if(s.supported&&(t.headers||(t.headers={}),t.headers.accept=\"image/webp,*/*\"),mt>=i.MAX_PARALLEL_IMAGE_REQUESTS){const e={requestParameters:t,callback:r,cancelled:!1,cancel(){this.cancelled=!0;}};return yt.push(e),e}mt++;let n=!1;const a=()=>{if(!n)for(n=!0,mt--;yt.length&&mt{a(),t?r(t):n&&(e.createImageBitmap?function(t,r){const n=new e.Blob([new Uint8Array(t)],{type:\"image/png\"});e.createImageBitmap(n).then((t=>{r(null,t);})).catch((t=>{r(new Error(`Could not load image because of ${t.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`));}));}(n,((t,e)=>r(t,e,i,s))):function(t,r){const n=new e.Image,i=e.URL;n.onload=()=>{r(null,n),i.revokeObjectURL(n.src),n.onload=null,e.requestAnimationFrame((()=>{n.src=ft;}));},n.onerror=()=>r(new Error(\"Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.\"));const s=new e.Blob([new Uint8Array(t)],{type:\"image/png\"});n.src=t.byteLength?i.createObjectURL(s):ft;}(n,((t,e)=>r(t,e,i,s))));}));return {cancel:()=>{o.cancel(),a();}}},xt=\"NO_ACCESS_TOKEN\";function vt(t){return 0===t.indexOf(\"mapbox:\")}function bt(t){return i.API_URL_REGEX.test(t)}function wt(t){return i.API_CDN_URL_REGEX.test(t)}function _t(t){return i.API_STYLE_REGEX.test(t)&&!At(t)}function At(t){return i.API_SPRITE_REGEX.test(t)}const St=/^(\\w+):\\/\\/([^/?]*)(\\/[^?]+)?\\??(.+)?/;function kt(t){const e=t.match(St);if(!e)throw new Error(\"Unable to parse URL object\");return {protocol:e[1],authority:e[2],path:e[3]||\"/\",params:e[4]?e[4].split(\"&\"):[]}}function It(t){const e=t.params.length?`?${t.params.join(\"&\")}`:\"\";return `${t.protocol}://${t.authority}${t.path}${e}`}const Mt=\"mapbox.eventData\";function Tt(t){if(!t)return null;const r=t.split(\".\");if(!r||3!==r.length)return null;try{return JSON.parse(decodeURIComponent(e.atob(r[1]).split(\"\").map((t=>\"%\"+(\"00\"+t.charCodeAt(0).toString(16)).slice(-2))).join(\"\")))}catch(t){return null}}class zt{constructor(t){this.type=t,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null;}getStorageKey(t){const r=Tt(i.ACCESS_TOKEN);let n=\"\";return n=r&&r.u?e.btoa(encodeURIComponent(r.u).replace(/%([0-9A-F]{2})/g,((t,e)=>String.fromCharCode(Number(\"0x\"+e))))):i.ACCESS_TOKEN||\"\",t?`${Mt}.${t}:${n}`:`${Mt}:${n}`}fetchEventData(){const t=Y(\"localStorage\"),r=this.getStorageKey(),n=this.getStorageKey(\"uuid\");if(t)try{const t=e.localStorage.getItem(r);t&&(this.eventData=JSON.parse(t));const i=e.localStorage.getItem(n);i&&(this.anonId=i);}catch(t){N(\"Unable to read from LocalStorage\");}}saveEventData(){const t=Y(\"localStorage\"),r=this.getStorageKey(),n=this.getStorageKey(\"uuid\");if(t)try{e.localStorage.setItem(n,this.anonId),Object.keys(this.eventData).length>=1&&e.localStorage.setItem(r,JSON.stringify(this.eventData));}catch(t){N(\"Unable to write to LocalStorage\");}}processRequests(t){}postEvent(t,e,r,n){if(!i.EVENTS_URL)return;const s=kt(i.EVENTS_URL);s.params.push(`access_token=${n||i.ACCESS_TOKEN||\"\"}`);const a={event:this.type,created:new Date(t).toISOString()},o=e?C(a,e):a,l={url:It(s),headers:{\"Content-Type\":\"text/plain\"},body:JSON.stringify([o])};this.pendingRequest=function(t,e){return ht(C(t,{method:\"POST\"}),e)}(l,(t=>{this.pendingRequest=null,r(t),this.saveEventData(),this.processRequests(n);}));}queueRequest(t,e){this.queue.push(t),this.processRequests(e);}}const Bt=new class extends zt{constructor(t){super(\"appUserTurnstile\"),this._customAccessToken=t;}postTurnstileEvent(t,e){i.EVENTS_URL&&i.ACCESS_TOKEN&&Array.isArray(t)&&t.some((t=>vt(t)||bt(t)))&&this.queueRequest(Date.now(),e);}processRequests(t){if(this.pendingRequest||0===this.queue.length)return;this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();const e=Tt(i.ACCESS_TOKEN),n=e?e.u:i.ACCESS_TOKEN;let s=n!==this.eventData.tokenU;F(this.anonId)||(this.anonId=V(),s=!0);const a=this.queue.shift();if(this.eventData.lastSuccess){const t=new Date(this.eventData.lastSuccess),e=new Date(a),r=(a-this.eventData.lastSuccess)/864e5;s=s||r>=1||r<-1||t.getDate()!==e.getDate();}else s=!0;s?this.postEvent(a,{sdkIdentifier:\"mapbox-gl-js\",sdkVersion:r,skuId:h,\"enabled.telemetry\":!1,userId:this.anonId},(t=>{t||(this.eventData.lastSuccess=a,this.eventData.tokenU=n);}),t):this.processRequests();}},Et=Bt.postTurnstileEvent.bind(Bt),Ct=new class extends zt{constructor(){super(\"map.load\"),this.success={},this.skuToken=\"\";}postMapLoadEvent(t,e,r,n){this.skuToken=e,this.errorCb=n,i.EVENTS_URL&&(r||i.ACCESS_TOKEN?this.queueRequest({id:t,timestamp:Date.now()},r):this.errorCb(new Error(xt)));}processRequests(t){if(this.pendingRequest||0===this.queue.length)return;const{id:e,timestamp:n}=this.queue.shift();e&&this.success[e]||(this.anonId||this.fetchEventData(),F(this.anonId)||(this.anonId=V()),this.postEvent(n,{sdkIdentifier:\"mapbox-gl-js\",sdkVersion:r,skuId:h,skuToken:this.skuToken,userId:this.anonId},(t=>{t?this.errorCb(t):e&&(this.success[e]=!0);}),t));}},Pt=Ct.postMapLoadEvent.bind(Ct),Dt=new class extends zt{constructor(){super(\"gljs.performance\");}postPerformanceEvent(t,e){i.EVENTS_URL&&(t||i.ACCESS_TOKEN)&&this.queueRequest({timestamp:Date.now(),performanceData:e},t);}processRequests(t){if(this.pendingRequest||0===this.queue.length)return;const{timestamp:n,performanceData:i}=this.queue.shift(),s=function(t){const n=e.performance.getEntriesByType(\"resource\"),i=e.performance.getEntriesByType(\"mark\"),s=function(t){const e={};if(t)for(const r in t)if(\"other\"!==r)for(const n of t[r]){const t=`${r}ResolveRangeMin`,i=`${r}ResolveRangeMax`,s=`${r}RequestCount`,a=`${r}RequestCachedCount`;e[t]=Math.min(e[t]||1/0,n.startTime),e[i]=Math.max(e[i]||-1/0,n.responseEnd);const o=t=>{void 0===e[t]&&(e[t]=0),++e[t];};void 0!==n.transferSize&&0===n.transferSize&&o(a),o(s);}return e}(function(t,e){const r={};if(t)for(const n of t){const t=e(n);void 0===r[t]&&(r[t]=[]),r[t].push(n);}return r}(n,jt)),a=e.devicePixelRatio,o=e.navigator.connection||e.navigator.mozConnection||e.navigator.webkitConnection,l={counters:[],metadata:[],attributes:[]},u=(t,e,r)=>{null!=r&&t.push({name:e,value:r.toString()});};for(const t in s)u(l.counters,t,s[t]);if(t.interactionRange[0]!==1/0&&t.interactionRange[1]!==-1/0&&(u(l.counters,\"interactionRangeMin\",t.interactionRange[0]),u(l.counters,\"interactionRangeMax\",t.interactionRange[1])),i)for(const t of Object.keys(Ut)){const e=Ut[t],r=i.find((t=>t.name===e));r&&u(l.counters,e,r.startTime);}return u(l.counters,\"visibilityHidden\",t.visibilityHidden),u(l.attributes,\"style\",function(t){if(t)for(const e of t){const t=e.name.split(\"?\")[0];if(_t(t)){const e=t.split(\"/\").slice(-2);if(2===e.length)return `mapbox://styles/${e[0]}/${e[1]}`}}}(n)),u(l.attributes,\"terrainEnabled\",t.terrainEnabled?\"true\":\"false\"),u(l.attributes,\"fogEnabled\",t.fogEnabled?\"true\":\"false\"),u(l.attributes,\"projection\",t.projection),u(l.attributes,\"zoom\",t.zoom),u(l.metadata,\"devicePixelRatio\",a),u(l.metadata,\"connectionEffectiveType\",o?o.effectiveType:void 0),u(l.metadata,\"navigatorUserAgent\",e.navigator.userAgent),u(l.metadata,\"screenWidth\",e.screen.width),u(l.metadata,\"screenHeight\",e.screen.height),u(l.metadata,\"windowWidth\",e.innerWidth),u(l.metadata,\"windowHeight\",e.innerHeight),u(l.metadata,\"mapWidth\",t.width/a),u(l.metadata,\"mapHeight\",t.height/a),u(l.metadata,\"webglRenderer\",t.renderer),u(l.metadata,\"webglVendor\",t.vendor),u(l.metadata,\"sdkVersion\",r),u(l.metadata,\"sdkIdentifier\",\"mapbox-gl-js\"),l}(i);for(const t of s.metadata);for(const t of s.counters);for(const t of s.attributes);this.postEvent(n,s,(()=>{}),t);}},Vt=Dt.postPerformanceEvent.bind(Dt),Lt=new class extends zt{constructor(){super(\"map.auth\"),this.success={},this.skuToken=\"\";}getSession(t,e,r,n){if(!i.API_URL||!i.SESSION_PATH)return;const s=kt(i.API_URL+i.SESSION_PATH);s.params.push(`sku=${e||\"\"}`),s.params.push(`access_token=${n||i.ACCESS_TOKEN||\"\"}`);const a={url:It(s),headers:{\"Content-Type\":\"text/plain\"}};this.pendingRequest=function(t,e){return ht(C(t,{method:\"GET\"}),e)}(a,(t=>{this.pendingRequest=null,r(t),this.saveEventData(),this.processRequests(n);}));}getSessionAPI(t,e,r,n){this.skuToken=e,this.errorCb=n,i.SESSION_PATH&&i.API_URL&&(r||i.ACCESS_TOKEN?this.queueRequest({id:t,timestamp:Date.now()},r):this.errorCb(new Error(xt)));}processRequests(t){if(this.pendingRequest||0===this.queue.length)return;const{id:e,timestamp:r}=this.queue.shift();e&&this.success[e]||this.getSession(r,this.skuToken,(t=>{t?this.errorCb(t):e&&(this.success[e]=!0);}),t);}},Ft=Lt.getSessionAPI.bind(Lt),Rt=new Set,Ut={create:\"create\",load:\"load\",fullLoad:\"fullLoad\"},$t={mark(t){e.performance.mark(t);},measure(t,r,n){e.performance.measure(t,r,n);}};function jt(t){const e=t.name.split(\"?\")[0];return wt(e)&&e.includes(\"mapbox-gl.js\")?\"javascript\":wt(e)&&e.includes(\"mapbox-gl.css\")?\"css\":function(t){return i.API_FONTS_REGEX.test(t)}(e)?\"fontRange\":At(e)?\"sprite\":_t(e)?\"style\":function(t){return i.API_TILEJSON_REGEX.test(t)}(e)?\"tilejson\":\"other\"}const Ot=e.performance;function qt(t){const e=t?t.url.toString():void 0;return Ot.getEntriesByName(e)}let Nt,Gt,Zt,Kt;const Xt={now:()=>void 0!==Zt?Zt:e.performance.now(),setNow(t){Zt=t;},restoreNow(){Zt=void 0;},frame(t){const r=e.requestAnimationFrame(t);return {cancel:()=>e.cancelAnimationFrame(r)}},getImageData(t,r=0){const{width:n,height:i}=t;Kt||(Kt=e.document.createElement(\"canvas\"));const s=Kt.getContext(\"2d\",{willReadFrequently:!0});if(!s)throw new Error(\"failed to create canvas 2d context\");return (n>Kt.width||i>Kt.height)&&(Kt.width=n,Kt.height=i),s.clearRect(-r,-r,n+2*r,i+2*r),s.drawImage(t,0,0,n,i),s.getImageData(-r,-r,n+2*r,i+2*r)},resolveURL:t=>(Nt||(Nt=e.document.createElement(\"a\")),Nt.href=t,Nt.href),get devicePixelRatio(){return e.devicePixelRatio},get prefersReducedMotion(){return !!e.matchMedia&&(null==Gt&&(Gt=e.matchMedia(\"(prefers-reduced-motion: reduce)\")),Gt.matches)}};function Jt(t,e,r){r[t]&&-1!==r[t].indexOf(e)||(r[t]=r[t]||[],r[t].push(e));}function Ht(t,e,r){if(r&&r[t]){const n=r[t].indexOf(e);-1!==n&&r[t].splice(n,1);}}class Yt{constructor(t,e={}){C(this,e),this.type=t;}}class Wt extends Yt{constructor(t,e={}){super(\"error\",C({error:t},e));}}class Qt{on(t,e){return this._listeners=this._listeners||{},Jt(t,e,this._listeners),this}off(t,e){return Ht(t,e,this._listeners),Ht(t,e,this._oneTimeListeners),this}once(t,e){return e?(this._oneTimeListeners=this._oneTimeListeners||{},Jt(t,e,this._oneTimeListeners),this):new Promise((e=>this.once(t,e)))}fire(t,e){\"string\"==typeof t&&(t=new Yt(t,e||{}));const r=t.type;if(this.listens(r)){t.target=this;const e=this._listeners&&this._listeners[r]?this._listeners[r].slice():[];for(const r of e)r.call(this,t);const n=this._oneTimeListeners&&this._oneTimeListeners[r]?this._oneTimeListeners[r].slice():[];for(const e of n)Ht(r,e,this._oneTimeListeners),e.call(this,t);const i=this._eventedParent;i&&(C(t,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),i.fire(t));}else t instanceof Wt&&console.error(t.error);return this}listens(t){return !!(this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t))}setEventedParent(t,e){return this._eventedParent=t,this._eventedParentData=e,this}}var te=JSON.parse('{\"$version\":8,\"$root\":{\"version\":{\"required\":true,\"type\":\"enum\",\"values\":[8]},\"name\":{\"type\":\"string\"},\"metadata\":{\"type\":\"*\"},\"center\":{\"type\":\"array\",\"value\":\"number\"},\"zoom\":{\"type\":\"number\"},\"bearing\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\"},\"pitch\":{\"type\":\"number\",\"default\":0,\"units\":\"degrees\"},\"light\":{\"type\":\"light\"},\"terrain\":{\"type\":\"terrain\"},\"fog\":{\"type\":\"fog\"},\"sources\":{\"required\":true,\"type\":\"sources\"},\"sprite\":{\"type\":\"string\"},\"glyphs\":{\"type\":\"string\"},\"transition\":{\"type\":\"transition\"},\"projection\":{\"type\":\"projection\"},\"layers\":{\"required\":true,\"type\":\"array\",\"value\":\"layer\"}},\"sources\":{\"*\":{\"type\":\"source\"}},\"source\":[\"source_vector\",\"source_raster\",\"source_raster_dem\",\"source_geojson\",\"source_video\",\"source_image\"],\"source_vector\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"vector\":{}}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.051129,180,85.051129]},\"scheme\":{\"type\":\"enum\",\"values\":{\"xyz\":{},\"tms\":{}},\"default\":\"xyz\"},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"attribution\":{\"type\":\"string\"},\"promoteId\":{\"type\":\"promoteId\"},\"volatile\":{\"type\":\"boolean\",\"default\":false},\"*\":{\"type\":\"*\"}},\"source_raster\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"raster\":{}}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.051129,180,85.051129]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512,\"units\":\"pixels\"},\"scheme\":{\"type\":\"enum\",\"values\":{\"xyz\":{},\"tms\":{}},\"default\":\"xyz\"},\"attribution\":{\"type\":\"string\"},\"volatile\":{\"type\":\"boolean\",\"default\":false},\"*\":{\"type\":\"*\"}},\"source_raster_dem\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"raster-dem\":{}}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.051129,180,85.051129]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512,\"units\":\"pixels\"},\"attribution\":{\"type\":\"string\"},\"encoding\":{\"type\":\"enum\",\"values\":{\"terrarium\":{},\"mapbox\":{}},\"default\":\"mapbox\"},\"volatile\":{\"type\":\"boolean\",\"default\":false},\"*\":{\"type\":\"*\"}},\"source_geojson\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"geojson\":{}}},\"data\":{\"type\":\"*\"},\"maxzoom\":{\"type\":\"number\",\"default\":18},\"attribution\":{\"type\":\"string\"},\"buffer\":{\"type\":\"number\",\"default\":128,\"maximum\":512,\"minimum\":0},\"filter\":{\"type\":\"*\"},\"tolerance\":{\"type\":\"number\",\"default\":0.375},\"cluster\":{\"type\":\"boolean\",\"default\":false},\"clusterRadius\":{\"type\":\"number\",\"default\":50,\"minimum\":0},\"clusterMaxZoom\":{\"type\":\"number\"},\"clusterMinPoints\":{\"type\":\"number\"},\"clusterProperties\":{\"type\":\"*\"},\"lineMetrics\":{\"type\":\"boolean\",\"default\":false},\"generateId\":{\"type\":\"boolean\",\"default\":false},\"promoteId\":{\"type\":\"promoteId\"}},\"source_video\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"video\":{}}},\"urls\":{\"required\":true,\"type\":\"array\",\"value\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_image\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"image\":{}}},\"url\":{\"required\":true,\"type\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"layer\":{\"id\":{\"type\":\"string\",\"required\":true},\"type\":{\"type\":\"enum\",\"values\":{\"fill\":{},\"line\":{},\"symbol\":{},\"circle\":{},\"heatmap\":{},\"fill-extrusion\":{},\"raster\":{},\"hillshade\":{},\"background\":{},\"sky\":{}},\"required\":true},\"metadata\":{\"type\":\"*\"},\"source\":{\"type\":\"string\"},\"source-layer\":{\"type\":\"string\"},\"minzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"maxzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"filter\":{\"type\":\"filter\"},\"layout\":{\"type\":\"layout\"},\"paint\":{\"type\":\"paint\"}},\"layout\":[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_heatmap\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_hillshade\",\"layout_background\",\"layout_sky\"],\"layout_background\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_sky\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_fill\":{\"fill-sort-key\":{\"type\":\"number\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_circle\":{\"circle-sort-key\":{\"type\":\"number\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_heatmap\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_fill-extrusion\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"},\"fill-extrusion-edge-radius\":{\"type\":\"number\",\"private\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"property-type\":\"constant\"}},\"layout_line\":{\"line-cap\":{\"type\":\"enum\",\"values\":{\"butt\":{},\"round\":{},\"square\":{}},\"default\":\"butt\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-join\":{\"type\":\"enum\",\"values\":{\"bevel\":{},\"round\":{},\"miter\":{}},\"default\":\"miter\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-miter-limit\":{\"type\":\"number\",\"default\":2,\"requires\":[{\"line-join\":\"miter\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-round-limit\":{\"type\":\"number\",\"default\":1.05,\"requires\":[{\"line-join\":\"round\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-sort-key\":{\"type\":\"number\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_symbol\":{\"symbol-placement\":{\"type\":\"enum\",\"values\":{\"point\":{},\"line\":{},\"line-center\":{}},\"default\":\"point\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-spacing\":{\"type\":\"number\",\"default\":250,\"minimum\":1,\"units\":\"pixels\",\"requires\":[{\"symbol-placement\":\"line\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-avoid-edges\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-sort-key\":{\"type\":\"number\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"symbol-z-order\":{\"type\":\"enum\",\"values\":{\"auto\":{},\"viewport-y\":{},\"source\":{}},\"default\":\"auto\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-allow-overlap\":{\"type\":\"boolean\",\"default\":false,\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-ignore-placement\":{\"type\":\"boolean\",\"default\":false,\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-optional\":{\"type\":\"boolean\",\"default\":false,\"requires\":[\"icon-image\",\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-rotation-alignment\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-size\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"units\":\"factor of the original icon size\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-text-fit\":{\"type\":\"enum\",\"values\":{\"none\":{},\"width\":{},\"height\":{},\"both\":{}},\"default\":\"none\",\"requires\":[\"icon-image\",\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-text-fit-padding\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[0,0,0,0],\"units\":\"pixels\",\"requires\":[\"icon-image\",\"text-field\",{\"icon-text-fit\":[\"both\",\"width\",\"height\"]}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-image\":{\"type\":\"resolvedImage\",\"tokens\":true,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"units\":\"pixels\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-keep-upright\":{\"type\":\"boolean\",\"default\":false,\"requires\":[\"icon-image\",{\"icon-rotation-alignment\":\"map\"},{\"symbol-placement\":[\"line\",\"line-center\"]}],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-anchor\":{\"type\":\"enum\",\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-pitch-alignment\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-pitch-alignment\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotation-alignment\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{},\"auto\":{}},\"default\":\"auto\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-field\":{\"type\":\"formatted\",\"default\":\"\",\"tokens\":true,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-font\":{\"type\":\"array\",\"value\":\"string\",\"default\":[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-size\":{\"type\":\"number\",\"default\":16,\"minimum\":0,\"units\":\"pixels\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-width\":{\"type\":\"number\",\"default\":10,\"minimum\":0,\"units\":\"ems\",\"requires\":[\"text-field\",{\"symbol-placement\":[\"point\"]}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-line-height\":{\"type\":\"number\",\"default\":1.2,\"units\":\"ems\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-letter-spacing\":{\"type\":\"number\",\"default\":0,\"units\":\"ems\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-justify\":{\"type\":\"enum\",\"values\":{\"auto\":{},\"left\":{},\"center\":{},\"right\":{}},\"default\":\"center\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-radial-offset\":{\"type\":\"number\",\"units\":\"ems\",\"default\":0,\"requires\":[\"text-field\"],\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]}},\"text-variable-anchor\":{\"type\":\"array\",\"value\":\"enum\",\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"requires\":[\"text-field\",{\"symbol-placement\":[\"point\"]}],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-anchor\":{\"type\":\"enum\",\"values\":{\"center\":{},\"left\":{},\"right\":{},\"top\":{},\"bottom\":{},\"top-left\":{},\"top-right\":{},\"bottom-left\":{},\"bottom-right\":{}},\"default\":\"center\",\"requires\":[\"text-field\",{\"!\":\"text-variable-anchor\"}],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-angle\":{\"type\":\"number\",\"default\":45,\"units\":\"degrees\",\"requires\":[\"text-field\",{\"symbol-placement\":[\"line\",\"line-center\"]}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-writing-mode\":{\"type\":\"array\",\"value\":\"enum\",\"values\":{\"horizontal\":{},\"vertical\":{}},\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"units\":\"degrees\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"units\":\"pixels\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-keep-upright\":{\"type\":\"boolean\",\"default\":true,\"requires\":[\"text-field\",{\"text-rotation-alignment\":\"map\"},{\"symbol-placement\":[\"line\",\"line-center\"]}],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-transform\":{\"type\":\"enum\",\"values\":{\"none\":{},\"uppercase\":{},\"lowercase\":{}},\"default\":\"none\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-offset\":{\"type\":\"array\",\"value\":\"number\",\"units\":\"ems\",\"length\":2,\"default\":[0,0],\"requires\":[\"text-field\",{\"!\":\"text-radial-offset\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-allow-overlap\":{\"type\":\"boolean\",\"default\":false,\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-ignore-placement\":{\"type\":\"boolean\",\"default\":false,\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-optional\":{\"type\":\"boolean\",\"default\":false,\"requires\":[\"text-field\",\"icon-image\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_raster\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"layout_hillshade\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":{},\"none\":{}},\"default\":\"visible\",\"property-type\":\"constant\"}},\"filter\":{\"type\":\"array\",\"value\":\"*\"},\"filter_symbol\":{\"type\":\"boolean\",\"default\":false,\"transition\":false,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\",\"pitch\",\"distance-from-center\"]}},\"filter_fill\":{\"type\":\"boolean\",\"default\":false,\"transition\":false,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]}},\"filter_line\":{\"type\":\"boolean\",\"default\":false,\"transition\":false,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]}},\"filter_circle\":{\"type\":\"boolean\",\"default\":false,\"transition\":false,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]}},\"filter_fill-extrusion\":{\"type\":\"boolean\",\"default\":false,\"transition\":false,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]}},\"filter_heatmap\":{\"type\":\"boolean\",\"default\":false,\"transition\":false,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]}},\"filter_operator\":{\"type\":\"enum\",\"values\":{\"==\":{},\"!=\":{},\">\":{},\">=\":{},\"<\":{},\"<=\":{},\"in\":{},\"!in\":{},\"all\":{},\"any\":{},\"none\":{},\"has\":{},\"!has\":{},\"within\":{}}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":{},\"LineString\":{},\"Polygon\":{}}},\"function\":{\"expression\":{\"type\":\"expression\"},\"stops\":{\"type\":\"array\",\"value\":\"function_stop\"},\"base\":{\"type\":\"number\",\"default\":1,\"minimum\":0},\"property\":{\"type\":\"string\",\"default\":\"$zoom\"},\"type\":{\"type\":\"enum\",\"values\":{\"identity\":{},\"exponential\":{},\"interval\":{},\"categorical\":{}},\"default\":\"exponential\"},\"colorSpace\":{\"type\":\"enum\",\"values\":{\"rgb\":{},\"lab\":{},\"hcl\":{}},\"default\":\"rgb\"},\"default\":{\"type\":\"*\",\"required\":false}},\"function_stop\":{\"type\":\"array\",\"minimum\":0,\"maximum\":24,\"value\":[\"number\",\"color\"],\"length\":2},\"expression\":{\"type\":\"array\",\"value\":\"*\",\"minimum\":1},\"fog\":{\"range\":{\"type\":\"array\",\"default\":[0.5,10],\"minimum\":-20,\"maximum\":20,\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#ffffff\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"high-color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#245cdf\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"space-color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":[\"interpolate\",[\"linear\"],[\"zoom\"],4,\"#010b19\",7,\"#367ab9\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"horizon-blend\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":[\"interpolate\",[\"linear\"],[\"zoom\"],4,0.2,7,0.1],\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"star-intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":[\"interpolate\",[\"linear\"],[\"zoom\"],5,0.35,6,0],\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true}},\"light\":{\"anchor\":{\"type\":\"enum\",\"default\":\"viewport\",\"values\":{\"map\":{},\"viewport\":{}},\"property-type\":\"data-constant\",\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]}},\"position\":{\"type\":\"array\",\"default\":[1.15,210,30],\"length\":3,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#ffffff\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true}},\"projection\":{\"name\":{\"type\":\"enum\",\"values\":{\"albers\":{},\"equalEarth\":{},\"equirectangular\":{},\"lambertConformalConic\":{},\"mercator\":{},\"naturalEarth\":{},\"winkelTripel\":{},\"globe\":{}},\"default\":\"mercator\",\"required\":true},\"center\":{\"type\":\"array\",\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"minimum\":[-180,-90],\"maximum\":[180,90],\"transition\":false,\"requires\":[{\"name\":[\"albers\",\"lambertConformalConic\"]}]},\"parallels\":{\"type\":\"array\",\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"minimum\":[-90,-90],\"maximum\":[90,90],\"transition\":false,\"requires\":[{\"name\":[\"albers\",\"lambertConformalConic\"]}]}},\"terrain\":{\"source\":{\"type\":\"string\",\"required\":true},\"exaggeration\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":1,\"minimum\":0,\"maximum\":1000,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true,\"requires\":[\"source\"]}},\"paint\":[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_heatmap\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_hillshade\",\"paint_background\",\"paint_sky\"],\"paint_fill\":{\"fill-antialias\":{\"type\":\"boolean\",\"default\":true,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-outline-color\":{\"type\":\"color\",\"transition\":true,\"requires\":[{\"!\":\"fill-pattern\"},{\"fill-antialias\":true}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-translate\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-pattern\":{\"type\":\"resolvedImage\",\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"requires\":[{\"!\":\"fill-extrusion-pattern\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"fill-extrusion-translate\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-pattern\":{\"type\":\"resolvedImage\",\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-height\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"units\":\"meters\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-base\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"units\":\"meters\",\"transition\":true,\"requires\":[\"fill-extrusion-height\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-vertical-gradient\":{\"type\":\"boolean\",\"default\":true,\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-ambient-occlusion-intensity\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"private\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"fill-extrusion-ambient-occlusion-radius\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"private\":true,\"default\":3,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true,\"requires\":[\"fill-extrusion-edge-radius\"]},\"fill-extrusion-rounded-roof\":{\"type\":\"boolean\",\"default\":true,\"requires\":[\"fill-extrusion-edge-radius\"],\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_line\":{\"line-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"requires\":[{\"!\":\"line-pattern\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"line-translate\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-width\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-gap-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-offset\":{\"type\":\"number\",\"default\":0,\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-dasharray\":{\"type\":\"array\",\"value\":\"number\",\"minimum\":0,\"transition\":false,\"units\":\"line widths\",\"requires\":[{\"!\":\"line-pattern\"}],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-pattern\":{\"type\":\"resolvedImage\",\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-gradient\":{\"type\":\"color\",\"transition\":false,\"requires\":[{\"!\":\"line-pattern\"},{\"source\":\"geojson\",\"has\":{\"lineMetrics\":true}}],\"expression\":{\"interpolated\":true,\"parameters\":[\"line-progress\"]},\"property-type\":\"color-ramp\"},\"line-trim-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"minimum\":[0,0],\"maximum\":[1,1],\"transition\":false,\"requires\":[{\"source\":\"geojson\",\"has\":{\"lineMetrics\":true}}],\"property-type\":\"constant\"}},\"paint_circle\":{\"circle-radius\":{\"type\":\"number\",\"default\":5,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-blur\":{\"type\":\"number\",\"default\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"circle-translate\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-scale\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-alignment\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"viewport\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-stroke-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-stroke-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"circle-stroke-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"}},\"paint_heatmap\":{\"heatmap-radius\":{\"type\":\"number\",\"default\":30,\"minimum\":1,\"transition\":true,\"units\":\"pixels\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"heatmap-weight\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":false,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"heatmap-intensity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"heatmap-color\":{\"type\":\"color\",\"default\":[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,\"rgba(0, 0, 255, 0)\",0.1,\"royalblue\",0.3,\"cyan\",0.5,\"lime\",0.7,\"yellow\",1,\"red\"],\"transition\":false,\"expression\":{\"interpolated\":true,\"parameters\":[\"heatmap-density\"]},\"property-type\":\"color-ramp\"},\"heatmap-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_symbol\":{\"icon-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"transition\":true,\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"icon-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"units\":\"pixels\",\"requires\":[\"icon-image\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"icon-image\",\"icon-translate\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"overridable\":true,\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"transition\":true,\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"text-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"units\":\"pixels\",\"requires\":[\"text-field\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"map\",\"requires\":[\"text-field\",\"text-translate\"],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_raster\":{\"raster-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-hue-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"transition\":true,\"units\":\"degrees\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-min\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-max\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-saturation\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-contrast\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-resampling\":{\"type\":\"enum\",\"values\":{\"linear\":{},\"nearest\":{}},\"default\":\"linear\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-fade-duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"transition\":false,\"units\":\"milliseconds\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_hillshade\":{\"hillshade-illumination-direction\":{\"type\":\"number\",\"default\":335,\"minimum\":0,\"maximum\":359,\"transition\":false,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-illumination-anchor\":{\"type\":\"enum\",\"values\":{\"map\":{},\"viewport\":{}},\"default\":\"viewport\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-exaggeration\":{\"type\":\"number\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-shadow-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-highlight-color\":{\"type\":\"color\",\"default\":\"#FFFFFF\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-accent-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_background\":{\"background-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"requires\":[{\"!\":\"background-pattern\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"background-pattern\":{\"type\":\"resolvedImage\",\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"background-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_sky\":{\"sky-type\":{\"type\":\"enum\",\"values\":{\"gradient\":{},\"atmosphere\":{}},\"default\":\"atmosphere\",\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-atmosphere-sun\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"units\":\"degrees\",\"minimum\":[0,0],\"maximum\":[360,180],\"transition\":false,\"requires\":[{\"sky-type\":\"atmosphere\"}],\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-atmosphere-sun-intensity\":{\"type\":\"number\",\"requires\":[{\"sky-type\":\"atmosphere\"}],\"default\":10,\"minimum\":0,\"maximum\":100,\"transition\":false,\"property-type\":\"data-constant\"},\"sky-gradient-center\":{\"type\":\"array\",\"requires\":[{\"sky-type\":\"gradient\"}],\"value\":\"number\",\"default\":[0,0],\"length\":2,\"units\":\"degrees\",\"minimum\":[0,0],\"maximum\":[360,180],\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-gradient-radius\":{\"type\":\"number\",\"requires\":[{\"sky-type\":\"gradient\"}],\"default\":90,\"minimum\":0,\"maximum\":180,\"transition\":false,\"expression\":{\"interpolated\":false,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-gradient\":{\"type\":\"color\",\"default\":[\"interpolate\",[\"linear\"],[\"sky-radial-progress\"],0.8,\"#87ceeb\",1,\"white\"],\"transition\":false,\"requires\":[{\"sky-type\":\"gradient\"}],\"expression\":{\"interpolated\":true,\"parameters\":[\"sky-radial-progress\"]},\"property-type\":\"color-ramp\"},\"sky-atmosphere-halo-color\":{\"type\":\"color\",\"default\":\"white\",\"transition\":false,\"requires\":[{\"sky-type\":\"atmosphere\"}],\"property-type\":\"data-constant\"},\"sky-atmosphere-color\":{\"type\":\"color\",\"default\":\"white\",\"transition\":false,\"requires\":[{\"sky-type\":\"atmosphere\"}],\"property-type\":\"data-constant\"},\"sky-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"transition\":{\"duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"units\":\"milliseconds\"},\"delay\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"units\":\"milliseconds\"}},\"property-type\":{\"data-driven\":{\"type\":\"property-type\"},\"color-ramp\":{\"type\":\"property-type\"},\"data-constant\":{\"type\":\"property-type\"},\"constant\":{\"type\":\"property-type\"}},\"promoteId\":{\"*\":{\"type\":\"string\"}}}');function ee(t,...e){for(const r of e)for(const e in r)t[e]=r[e];return t}function re(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t}function ne(t){if(Array.isArray(t))return t.map(ne);if(t instanceof Object&&!(t instanceof Number||t instanceof String||t instanceof Boolean)){const e={};for(const r in t)e[r]=ne(t[r]);return e}return re(t)}class ie extends Error{constructor(t,e){super(e),this.message=e,this.key=t;}}var se=ie;class ae{constructor(t,e=[]){this.parent=t,this.bindings={};for(const[t,r]of e)this.bindings[t]=r;}concat(t){return new ae(this,t)}get(t){if(this.bindings[t])return this.bindings[t];if(this.parent)return this.parent.get(t);throw new Error(`${t} not found in scope.`)}has(t){return !!this.bindings[t]||!!this.parent&&this.parent.has(t)}}var oe=ae;const le={kind:\"null\"},ue={kind:\"number\"},ce={kind:\"string\"},he={kind:\"boolean\"},pe={kind:\"color\"},de={kind:\"object\"},fe={kind:\"value\"},ye={kind:\"collator\"},me={kind:\"formatted\"},ge={kind:\"resolvedImage\"};function xe(t,e){return {kind:\"array\",itemType:t,N:e}}function ve(t){if(\"array\"===t.kind){const e=ve(t.itemType);return \"number\"==typeof t.N?`array<${e}, ${t.N}>`:\"value\"===t.itemType.kind?\"array\":`array<${e}>`}return t.kind}const be=[le,ue,ce,he,pe,me,de,xe(fe),ge];function we(t,e){if(\"error\"===e.kind)return null;if(\"array\"===t.kind){if(\"array\"===e.kind&&(0===e.N&&\"value\"===e.itemType.kind||!we(t.itemType,e.itemType))&&(\"number\"!=typeof t.N||t.N===e.N))return null}else {if(t.kind===e.kind)return null;if(\"value\"===t.kind)for(const t of be)if(!we(t,e))return null}return `Expected ${ve(t)} but found ${ve(e)} instead.`}function _e(t,e){return e.some((e=>e.kind===t.kind))}function Ae(t,e){return e.some((e=>\"null\"===e?null===t:\"array\"===e?Array.isArray(t):\"object\"===e?t&&!Array.isArray(t)&&\"object\"==typeof t:e===typeof t))}var Se,ke={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function Ie(t){return (t=Math.round(t))<0?0:t>255?255:t}function Me(t){return Ie(\"%\"===t[t.length-1]?parseFloat(t)/100*255:parseInt(t))}function Te(t){return (e=\"%\"===t[t.length-1]?parseFloat(t)/100:parseFloat(t))<0?0:e>1?1:e;var e;}function ze(t,e,r){return r<0?r+=1:r>1&&(r-=1),6*r<1?t+(e-t)*r*6:2*r<1?e:3*r<2?t+(e-t)*(2/3-r)*6:t}try{Se={}.parseCSSColor=function(t){var e,r=t.replace(/ /g,\"\").toLowerCase();if(r in ke)return ke[r].slice();if(\"#\"===r[0])return 4===r.length?(e=parseInt(r.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===r.length&&(e=parseInt(r.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var n=r.indexOf(\"(\"),i=r.indexOf(\")\");if(-1!==n&&i+1===r.length){var s=r.substr(0,n),a=r.substr(n+1,i-(n+1)).split(\",\"),o=1;switch(s){case\"rgba\":if(4!==a.length)return null;o=Te(a.pop());case\"rgb\":return 3!==a.length?null:[Me(a[0]),Me(a[1]),Me(a[2]),o];case\"hsla\":if(4!==a.length)return null;o=Te(a.pop());case\"hsl\":if(3!==a.length)return null;var l=(parseFloat(a[0])%360+360)%360/360,u=Te(a[1]),c=Te(a[2]),h=c<=.5?c*(u+1):c+u-c*u,p=2*c-h;return [Ie(255*ze(p,h,l+1/3)),Ie(255*ze(p,h,l)),Ie(255*ze(p,h,l-1/3)),o];default:return null}}return null};}catch(t){}class Be{constructor(t,e,r,n=1){this.r=t,this.g=e,this.b=r,this.a=n;}static parse(t){if(!t)return;if(t instanceof Be)return t;if(\"string\"!=typeof t)return;const e=Se(t);return e?new Be(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]):void 0}toString(){const[t,e,r,n]=this.toArray();return `rgba(${Math.round(t)},${Math.round(e)},${Math.round(r)},${n})`}toArray(){const{r:t,g:e,b:r,a:n}=this;return 0===n?[0,0,0,0]:[255*t/n,255*e/n,255*r/n,n]}toArray01(){const{r:t,g:e,b:r,a:n}=this;return 0===n?[0,0,0,0]:[t/n,e/n,r/n,n]}toArray01PremultipliedAlpha(){const{r:t,g:e,b:r,a:n}=this;return [t,e,r,n]}}Be.black=new Be(0,0,0,1),Be.white=new Be(1,1,1,1),Be.transparent=new Be(0,0,0,0),Be.red=new Be(1,0,0,1),Be.blue=new Be(0,0,1,1);var Ee=Be;class Ce{constructor(t,e,r){this.sensitivity=t?e?\"variant\":\"case\":e?\"accent\":\"base\",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:\"search\"});}compare(t,e){return this.collator.compare(t,e)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Pe{constructor(t,e,r,n,i){this.text=t.normalize?t.normalize():t,this.image=e,this.scale=r,this.fontStack=n,this.textColor=i;}}class De{constructor(t){this.sections=t;}static fromString(t){return new De([new Pe(t,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((t=>0!==t.text.length||t.image&&0!==t.image.name.length))}static factory(t){return t instanceof De?t:De.fromString(t)}toString(){return 0===this.sections.length?\"\":this.sections.map((t=>t.text)).join(\"\")}serialize(){const t=[\"format\"];for(const e of this.sections){if(e.image){t.push([\"image\",e.image.name]);continue}t.push(e.text);const r={};e.fontStack&&(r[\"text-font\"]=[\"literal\",e.fontStack.split(\",\")]),e.scale&&(r[\"font-scale\"]=e.scale),e.textColor&&(r[\"text-color\"]=[\"rgba\"].concat(e.textColor.toArray())),t.push(r);}return t}}class Ve{constructor(t){this.name=t.name,this.available=t.available;}toString(){return this.name}static fromString(t){return t?new Ve({name:t,available:!1}):null}serialize(){return [\"image\",this.name]}}function Le(t,e,r,n){return \"number\"==typeof t&&t>=0&&t<=255&&\"number\"==typeof e&&e>=0&&e<=255&&\"number\"==typeof r&&r>=0&&r<=255?void 0===n||\"number\"==typeof n&&n>=0&&n<=1?null:`Invalid rgba value [${[t,e,r,n].join(\", \")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(\"number\"==typeof n?[t,e,r,n]:[t,e,r]).join(\", \")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Fe(t){if(null===t)return !0;if(\"string\"==typeof t)return !0;if(\"boolean\"==typeof t)return !0;if(\"number\"==typeof t)return !0;if(t instanceof Ee)return !0;if(t instanceof Ce)return !0;if(t instanceof De)return !0;if(t instanceof Ve)return !0;if(Array.isArray(t)){for(const e of t)if(!Fe(e))return !1;return !0}if(\"object\"==typeof t){for(const e in t)if(!Fe(t[e]))return !1;return !0}return !1}function Re(t){if(null===t)return le;if(\"string\"==typeof t)return ce;if(\"boolean\"==typeof t)return he;if(\"number\"==typeof t)return ue;if(t instanceof Ee)return pe;if(t instanceof Ce)return ye;if(t instanceof De)return me;if(t instanceof Ve)return ge;if(Array.isArray(t)){const e=t.length;let r;for(const e of t){const t=Re(e);if(r){if(r===t)continue;r=fe;break}r=t;}return xe(r||fe,e)}return de}function Ue(t){const e=typeof t;return null===t?\"\":\"string\"===e||\"number\"===e||\"boolean\"===e?String(t):t instanceof Ee||t instanceof De||t instanceof Ve?t.toString():JSON.stringify(t)}class $e{constructor(t,e){this.type=t,this.value=e;}static parse(t,e){if(2!==t.length)return e.error(`'literal' expression requires exactly one argument, but found ${t.length-1} instead.`);if(!Fe(t[1]))return e.error(\"invalid value\");const r=t[1];let n=Re(r);const i=e.expectedType;return \"array\"!==n.kind||0!==n.N||!i||\"array\"!==i.kind||\"number\"==typeof i.N&&0!==i.N||(n=i),new $e(n,r)}evaluate(){return this.value}eachChild(){}outputDefined(){return !0}serialize(){return \"array\"===this.type.kind||\"object\"===this.type.kind?[\"literal\",this.value]:this.value instanceof Ee?[\"rgba\"].concat(this.value.toArray()):this.value instanceof De?this.value.serialize():this.value}}var je=$e,Oe=class{constructor(t){this.name=\"ExpressionEvaluationError\",this.message=t;}toJSON(){return this.message}};const qe={string:ce,number:ue,boolean:he,object:de};class Ne{constructor(t,e){this.type=t,this.args=e;}static parse(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");let r,n=1;const i=t[0];if(\"array\"===i){let i,s;if(t.length>2){const r=t[1];if(\"string\"!=typeof r||!(r in qe)||\"object\"===r)return e.error('The item type argument of \"array\" must be one of string, number, boolean',1);i=qe[r],n++;}else i=fe;if(t.length>3){if(null!==t[2]&&(\"number\"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to \"array\" must be a positive integer literal',2);s=t[2],n++;}r=xe(i,s);}else r=qe[i];const s=[];for(;nt.outputDefined()))}serialize(){const t=this.type,e=[t.kind];if(\"array\"===t.kind){const r=t.itemType;if(\"string\"===r.kind||\"number\"===r.kind||\"boolean\"===r.kind){e.push(r.kind);const n=t.N;(\"number\"==typeof n||this.args.length>1)&&e.push(n);}}return e.concat(this.args.map((t=>t.serialize())))}}var Ge=Ne;class Ze{constructor(t){this.type=me,this.sections=t;}static parse(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");const r=t[1];if(!Array.isArray(r)&&\"object\"==typeof r)return e.error(\"First argument must be an image or text section.\");const n=[];let i=!1;for(let r=1;r<=t.length-1;++r){const s=t[r];if(i&&\"object\"==typeof s&&!Array.isArray(s)){i=!1;let t=null;if(s[\"font-scale\"]&&(t=e.parse(s[\"font-scale\"],1,ue),!t))return null;let r=null;if(s[\"text-font\"]&&(r=e.parse(s[\"text-font\"],1,xe(ce)),!r))return null;let a=null;if(s[\"text-color\"]&&(a=e.parse(s[\"text-color\"],1,pe),!a))return null;const o=n[n.length-1];o.scale=t,o.font=r,o.textColor=a;}else {const s=e.parse(t[r],1,fe);if(!s)return null;const a=s.type.kind;if(\"string\"!==a&&\"value\"!==a&&\"null\"!==a&&\"resolvedImage\"!==a)return e.error(\"Formatted text type must be 'string', 'value', 'image' or 'null'.\");i=!0,n.push({content:s,scale:null,font:null,textColor:null});}}return new Ze(n)}evaluate(t){return new De(this.sections.map((e=>{const r=e.content.evaluate(t);return Re(r)===ge?new Pe(\"\",r,null,null,null):new Pe(Ue(r),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(\",\"):null,e.textColor?e.textColor.evaluate(t):null)})))}eachChild(t){for(const e of this.sections)t(e.content),e.scale&&t(e.scale),e.font&&t(e.font),e.textColor&&t(e.textColor);}outputDefined(){return !1}serialize(){const t=[\"format\"];for(const e of this.sections){t.push(e.content.serialize());const r={};e.scale&&(r[\"font-scale\"]=e.scale.serialize()),e.font&&(r[\"text-font\"]=e.font.serialize()),e.textColor&&(r[\"text-color\"]=e.textColor.serialize()),t.push(r);}return t}}class Ke{constructor(t){this.type=ge,this.input=t;}static parse(t,e){if(2!==t.length)return e.error(\"Expected two arguments.\");const r=e.parse(t[1],1,ce);return r?new Ke(r):e.error(\"No image name provided.\")}evaluate(t){const e=this.input.evaluate(t),r=Ve.fromString(e);return r&&t.availableImages&&(r.available=t.availableImages.indexOf(e)>-1),r}eachChild(t){t(this.input);}outputDefined(){return !1}serialize(){return [\"image\",this.input.serialize()]}}const Xe={\"to-boolean\":he,\"to-color\":pe,\"to-number\":ue,\"to-string\":ce};class Je{constructor(t,e){this.type=t,this.args=e;}static parse(t,e){if(t.length<2)return e.error(\"Expected at least one argument.\");const r=t[0];if((\"to-boolean\"===r||\"to-string\"===r)&&2!==t.length)return e.error(\"Expected one argument.\");const n=Xe[r],i=[];for(let r=1;r4?`Invalid rbga value ${JSON.stringify(e)}: expected an array containing either three or four numeric values.`:Le(e[0],e[1],e[2],e[3]),!r))return new Ee(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new Oe(r||`Could not parse color from value '${\"string\"==typeof e?e:String(JSON.stringify(e))}'`)}if(\"number\"===this.type.kind){let e=null;for(const r of this.args){if(e=r.evaluate(t),null===e)return 0;const n=Number(e);if(!isNaN(n))return n}throw new Oe(`Could not convert ${JSON.stringify(e)} to number.`)}return \"formatted\"===this.type.kind?De.fromString(Ue(this.args[0].evaluate(t))):\"resolvedImage\"===this.type.kind?Ve.fromString(Ue(this.args[0].evaluate(t))):Ue(this.args[0].evaluate(t))}eachChild(t){this.args.forEach(t);}outputDefined(){return this.args.every((t=>t.outputDefined()))}serialize(){if(\"formatted\"===this.type.kind)return new Ze([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(\"resolvedImage\"===this.type.kind)return new Ke(this.args[0]).serialize();const t=[`to-${this.type.kind}`];return this.eachChild((e=>{t.push(e.serialize());})),t}}var He=Je;const Ye=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];var We=class{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null;}id(){return this.feature&&void 0!==this.feature.id?this.feature.id:null}geometryType(){return this.feature?\"number\"==typeof this.feature.type?Ye[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&\"geometry\"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const t=this.featureDistanceData.center,e=this.featureDistanceData.scale,{x:r,y:n}=this.featureTileCoord;return this.featureDistanceData.bearing[0]*(r*e-t[0])+this.featureDistanceData.bearing[1]*(n*e-t[1])}return 0}parseColor(t){let e=this._parseColorCache[t];return e||(e=this._parseColorCache[t]=Ee.parse(t)),e}};class Qe{constructor(t,e,r,n){this.name=t,this.type=e,this._evaluate=r,this.args=n;}evaluate(t){return this._evaluate(t,this.args)}eachChild(t){this.args.forEach(t);}outputDefined(){return !1}serialize(){return [this.name].concat(this.args.map((t=>t.serialize())))}static parse(t,e){const r=t[0],n=Qe.definitions[r];if(!n)return e.error(`Unknown expression \"${r}\". If you wanted a literal array, use [\"literal\", [...]].`,0);const i=Array.isArray(n)?n[0]:n.type,s=Array.isArray(n)?[[n[1],n[2]]]:n.overloads,a=s.filter((([e])=>!Array.isArray(e)||e.length===t.length-1));let o=null;for(const[n,s]of a){o=new Ir(e.registry,e.path,null,e.scope);const a=[];let l=!1;for(let e=1;e{return e=t,Array.isArray(e)?`(${e.map(ve).join(\", \")})`:`(${ve(e.type)}...)`;var e;})).join(\" | \"),n=[];for(let r=1;r=e[2]||t[1]<=e[1]||t[3]>=e[3])}function sr(t,e){const r=(180+t[0])/360,n=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t[1]*Math.PI/360)))/360,i=Math.pow(2,e.z);return [Math.round(r*i*rr),Math.round(n*i*rr)]}function ar(t,e,r){const n=t[0]-e[0],i=t[1]-e[1],s=t[0]-r[0],a=t[1]-r[1];return n*a-s*i==0&&n*s<=0&&i*a<=0}function or(t,e){let r=!1;for(let a=0,o=e.length;a(n=t)[1]!=(s=o[e+1])[1]>n[1]&&n[0]<(s[0]-i[0])*(n[1]-i[1])/(s[1]-i[1])+i[0]&&(r=!r);}}var n,i,s;return r}function lr(t,e){for(let r=0;r0&&o<0||a<0&&o>0}function cr(t,e,r){for(const u of r)for(let r=0;rr[2]){const e=.5*n;let i=t[0]-r[0]>e?-n:r[0]-t[0]>e?n:0;0===i&&(i=t[0]-r[2]>e?-n:r[2]-t[0]>e?n:0),t[0]+=i;}nr(e,t);}function mr(t,e,r,n){const i=Math.pow(2,n.z)*rr,s=[n.x*rr,n.y*rr],a=[];if(!t)return a;for(const n of t)for(const t of n){const n=[t.x+s[0],t.y+s[1]];yr(n,e,r,i),a.push(n);}return a}function gr(t,e,r,n){const i=Math.pow(2,n.z)*rr,s=[n.x*rr,n.y*rr],a=[];if(!t)return a;for(const r of t){const t=[];for(const n of r){const r=[n.x+s[0],n.y+s[1]];nr(e,r),t.push(r);}a.push(t);}if(e[2]-e[0]<=i/2){(o=e)[0]=o[1]=1/0,o[2]=o[3]=-1/0;for(const t of a)for(const n of t)yr(n,e,r,i);}var o;return a}class xr{constructor(t,e){this.type=he,this.geojson=t,this.geometries=e;}static parse(t,e){if(2!==t.length)return e.error(`'within' expression requires exactly one argument, but found ${t.length-1} instead.`);if(Fe(t[1])){const e=t[1];if(\"FeatureCollection\"===e.type)for(let t=0;t{e&&!br(t)&&(e=!1);})),e}function wr(t){if(t instanceof tr&&\"feature-state\"===t.name)return !1;let e=!0;return t.eachChild((t=>{e&&!wr(t)&&(e=!1);})),e}function _r(t,e){if(t instanceof tr&&e.indexOf(t.name)>=0)return !1;let r=!0;return t.eachChild((t=>{r&&!_r(t,e)&&(r=!1);})),r}class Ar{constructor(t,e){this.type=e.type,this.name=t,this.boundExpression=e;}static parse(t,e){if(2!==t.length||\"string\"!=typeof t[1])return e.error(\"'var' expression requires exactly one string literal argument.\");const r=t[1];return e.scope.has(r)?new Ar(r,e.scope.get(r)):e.error(`Unknown variable \"${r}\". Make sure \"${r}\" has been bound in an enclosing \"let\" expression before using it.`,1)}evaluate(t){return this.boundExpression.evaluate(t)}eachChild(){}outputDefined(){return !1}serialize(){return [\"var\",this.name]}}var Sr=Ar;class kr{constructor(t,e=[],r,n=new oe,i=[]){this.registry=t,this.path=e,this.key=e.map((t=>`[${t}]`)).join(\"\"),this.scope=n,this.errors=i,this.expectedType=r;}parse(t,e,r,n,i={}){return e?this.concat(e,r,n)._parse(t,i):this._parse(t,i)}_parse(t,e){function r(t,e,r){return \"assert\"===r?new Ge(e,[t]):\"coerce\"===r?new He(e,[t]):t}if(null!==t&&\"string\"!=typeof t&&\"boolean\"!=typeof t&&\"number\"!=typeof t||(t=[\"literal\",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use [\"literal\", []].');const n=t[0];if(\"string\"!=typeof n)return this.error(`Expression name must be a string, but found ${typeof n} instead. If you wanted a literal array, use [\"literal\", [...]].`,0),null;const i=this.registry[n];if(i){let n=i.parse(t,this);if(!n)return null;if(this.expectedType){const t=this.expectedType,i=n.type;if(\"string\"!==t.kind&&\"number\"!==t.kind&&\"boolean\"!==t.kind&&\"object\"!==t.kind&&\"array\"!==t.kind||\"value\"!==i.kind)if(\"color\"!==t.kind&&\"formatted\"!==t.kind&&\"resolvedImage\"!==t.kind||\"value\"!==i.kind&&\"string\"!==i.kind){if(this.checkSubtype(t,i))return null}else n=r(n,t,e.typeAnnotation||\"coerce\");else n=r(n,t,e.typeAnnotation||\"assert\");}if(!(n instanceof je)&&\"resolvedImage\"!==n.type.kind&&Mr(n)){const t=new We;try{n=new je(n.type,n.evaluate(t));}catch(t){return this.error(t.message),null}}return n}return this.error(`Unknown expression \"${n}\". If you wanted a literal array, use [\"literal\", [...]].`,0)}return this.error(void 0===t?\"'undefined' value invalid. Use null instead.\":\"object\"==typeof t?'Bare objects invalid. Use [\"literal\", {...}] instead.':`Expected an array, but found ${typeof t} instead.`)}concat(t,e,r){const n=\"number\"==typeof t?this.path.concat(t):this.path,i=r?this.scope.concat(r):this.scope;return new kr(this.registry,n,e||null,i,this.errors)}error(t,...e){const r=`${this.key}${e.map((t=>`[${t}]`)).join(\"\")}`;this.errors.push(new se(r,t));}checkSubtype(t,e){const r=we(t,e);return r&&this.error(r),r}}var Ir=kr;function Mr(t){if(t instanceof Sr)return Mr(t.boundExpression);if(t instanceof tr&&\"error\"===t.name)return !1;if(t instanceof er)return !1;if(t instanceof vr)return !1;const e=t instanceof He||t instanceof Ge;let r=!0;return t.eachChild((t=>{r=e?r&&Mr(t):r&&t instanceof je;})),!!r&&br(t)&&_r(t,[\"zoom\",\"heatmap-density\",\"line-progress\",\"sky-radial-progress\",\"accumulated\",\"is-supported-script\",\"pitch\",\"distance-from-center\"])}function Tr(t,e){const r=t.length-1;let n,i,s=0,a=r,o=0;for(;s<=a;)if(o=Math.floor((s+a)/2),n=t[o],i=t[o+1],n<=e){if(o===r||ee))throw new Oe(\"Input is not a number.\");a=o-1;}return 0}class zr{constructor(t,e,r){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(const[t,e]of r)this.labels.push(t),this.outputs.push(e);}static parse(t,e){if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");const r=e.parse(t[1],1,ue);if(!r)return null;const n=[];let i=null;e.expectedType&&\"value\"!==e.expectedType.kind&&(i=e.expectedType);for(let r=1;r=s)return e.error('Input/output pairs for \"step\" expressions must be arranged with input values in strictly ascending order.',o);const u=e.parse(a,l,i);if(!u)return null;i=i||u.type,n.push([s,u]);}return new zr(i,r,n)}evaluate(t){const e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);const n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);const i=e.length;return n>=e[i-1]?r[i-1].evaluate(t):r[Tr(e,n)].evaluate(t)}eachChild(t){t(this.input);for(const e of this.outputs)t(e);}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}serialize(){const t=[\"step\",this.input.serialize()];for(let e=0;e0&&t.push(this.labels[e]),t.push(this.outputs[e].serialize());return t}}var Br=zr;function Er(t,e,r){return t*(1-r)+e*r}var Cr=Object.freeze({__proto__:null,array:function(t,e,r){return t.map(((t,n)=>Er(t,e[n],r)))},color:function(t,e,r){return new Ee(Er(t.r,e.r,r),Er(t.g,e.g,r),Er(t.b,e.b,r),Er(t.a,e.a,r))},number:Er});const Pr=.95047,Dr=1.08883,Vr=4/29,Lr=6/29,Fr=3*Lr*Lr,Rr=Lr*Lr*Lr,Ur=Math.PI/180,$r=180/Math.PI;function jr(t){return t>Rr?Math.pow(t,1/3):t/Fr+Vr}function Or(t){return t>Lr?t*t*t:Fr*(t-Vr)}function qr(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Nr(t){return (t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Gr(t){const e=Nr(t.r),r=Nr(t.g),n=Nr(t.b),i=jr((.4124564*e+.3575761*r+.1804375*n)/Pr),s=jr((.2126729*e+.7151522*r+.072175*n)/1);return {l:116*s-16,a:500*(i-s),b:200*(s-jr((.0193339*e+.119192*r+.9503041*n)/Dr)),alpha:t.a}}function Zr(t){let e=(t.l+16)/116,r=isNaN(t.a)?e:e+t.a/500,n=isNaN(t.b)?e:e-t.b/200;return e=1*Or(e),r=Pr*Or(r),n=Dr*Or(n),new Ee(qr(3.2404542*r-1.5371385*e-.4985314*n),qr(-.969266*r+1.8760108*e+.041556*n),qr(.0556434*r-.2040259*e+1.0572252*n),t.alpha)}function Kr(t,e,r){const n=e-t;return t+r*(n>180||n<-180?n-360*Math.round(n/360):n)}const Xr={forward:Gr,reverse:Zr,interpolate:function(t,e,r){return {l:Er(t.l,e.l,r),a:Er(t.a,e.a,r),b:Er(t.b,e.b,r),alpha:Er(t.alpha,e.alpha,r)}}},Jr={forward:function(t){const{l:e,a:r,b:n}=Gr(t),i=Math.atan2(n,r)*$r;return {h:i<0?i+360:i,c:Math.sqrt(r*r+n*n),l:e,alpha:t.a}},reverse:function(t){const e=t.h*Ur,r=t.c;return Zr({l:t.l,a:Math.cos(e)*r,b:Math.sin(e)*r,alpha:t.alpha})},interpolate:function(t,e,r){return {h:Kr(t.h,e.h,r),c:Er(t.c,e.c,r),l:Er(t.l,e.l,r),alpha:Er(t.alpha,e.alpha,r)}}};var Hr=Object.freeze({__proto__:null,hcl:Jr,lab:Xr});class Yr{constructor(t,e,r,n,i){this.type=t,this.operator=e,this.interpolation=r,this.input=n,this.labels=[],this.outputs=[];for(const[t,e]of i)this.labels.push(t),this.outputs.push(e);}static interpolationFactor(t,e,r,n){let i=0;if(\"exponential\"===t.name)i=Wr(e,t.base,r,n);else if(\"linear\"===t.name)i=Wr(e,1,r,n);else if(\"cubic-bezier\"===t.name){const s=t.controlPoints;i=new y(s[0],s[1],s[2],s[3]).solve(Wr(e,1,r,n));}return i}static parse(t,e){let[r,n,i,...s]=t;if(!Array.isArray(n)||0===n.length)return e.error(\"Expected an interpolation type expression.\",1);if(\"linear\"===n[0])n={name:\"linear\"};else if(\"exponential\"===n[0]){const t=n[1];if(\"number\"!=typeof t)return e.error(\"Exponential interpolation requires a numeric base.\",1,1);n={name:\"exponential\",base:t};}else {if(\"cubic-bezier\"!==n[0])return e.error(`Unknown interpolation type ${String(n[0])}`,1,0);{const t=n.slice(1);if(4!==t.length||t.some((t=>\"number\"!=typeof t||t<0||t>1)))return e.error(\"Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.\",1);n={name:\"cubic-bezier\",controlPoints:t};}}if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error(\"Expected an even number of arguments.\");if(i=e.parse(i,2,ue),!i)return null;const a=[];let o=null;\"interpolate-hcl\"===r||\"interpolate-lab\"===r?o=pe:e.expectedType&&\"value\"!==e.expectedType.kind&&(o=e.expectedType);for(let t=0;t=r)return e.error('Input/output pairs for \"interpolate\" expressions must be arranged with input values in strictly ascending order.',i);const u=e.parse(n,l,o);if(!u)return null;o=o||u.type,a.push([r,u]);}return \"number\"===o.kind||\"color\"===o.kind||\"array\"===o.kind&&\"number\"===o.itemType.kind&&\"number\"==typeof o.N?new Yr(o,r,n,i,a):e.error(`Type ${ve(o)} is not interpolatable.`)}evaluate(t){const e=this.labels,r=this.outputs;if(1===e.length)return r[0].evaluate(t);const n=this.input.evaluate(t);if(n<=e[0])return r[0].evaluate(t);const i=e.length;if(n>=e[i-1])return r[i-1].evaluate(t);const s=Tr(e,n),a=Yr.interpolationFactor(this.interpolation,n,e[s],e[s+1]),o=r[s].evaluate(t),l=r[s+1].evaluate(t);return \"interpolate\"===this.operator?Cr[this.type.kind.toLowerCase()](o,l,a):\"interpolate-hcl\"===this.operator?Jr.reverse(Jr.interpolate(Jr.forward(o),Jr.forward(l),a)):Xr.reverse(Xr.interpolate(Xr.forward(o),Xr.forward(l),a))}eachChild(t){t(this.input);for(const e of this.outputs)t(e);}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}serialize(){let t;t=\"linear\"===this.interpolation.name?[\"linear\"]:\"exponential\"===this.interpolation.name?1===this.interpolation.base?[\"linear\"]:[\"exponential\",this.interpolation.base]:[\"cubic-bezier\"].concat(this.interpolation.controlPoints);const e=[this.operator,t,this.input.serialize()];for(let t=0;twe(n,t.type)));return new tn(s?fe:r,i)}evaluate(t){let e,r=null,n=0;for(const i of this.args){if(n++,r=i.evaluate(t),r&&r instanceof Ve&&!r.available&&(e||(e=r),r=null,n===this.args.length))return e;if(null!==r)break}return r}eachChild(t){this.args.forEach(t);}outputDefined(){return this.args.every((t=>t.outputDefined()))}serialize(){const t=[\"coalesce\"];return this.eachChild((e=>{t.push(e.serialize());})),t}}var en=tn;class rn{constructor(t,e){this.type=e.type,this.bindings=[].concat(t),this.result=e;}evaluate(t){return this.result.evaluate(t)}eachChild(t){for(const e of this.bindings)t(e[1]);t(this.result);}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found ${t.length-1} instead.`);const r=[];for(let n=1;n=r.length)throw new Oe(`Array index out of bounds: ${e} > ${r.length-1}.`);if(e!==Math.floor(e))throw new Oe(`Array index must be an integer, but found ${e} instead.`);return r[e]}eachChild(t){t(this.index),t(this.input);}outputDefined(){return !1}serialize(){return [\"at\",this.index.serialize(),this.input.serialize()]}}var an=sn;class on{constructor(t,e){this.type=he,this.needle=t,this.haystack=e;}static parse(t,e){if(3!==t.length)return e.error(`Expected 2 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,fe),n=e.parse(t[2],2,fe);return r&&n?_e(r.type,[he,ce,ue,le,fe])?new on(r,n):e.error(`Expected first argument to be of type boolean, string, number or null, but found ${ve(r.type)} instead`):null}evaluate(t){const e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(null==r)return !1;if(!Ae(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new Oe(`Expected first argument to be of type boolean, string, number or null, but found ${ve(Re(e))} instead.`);if(!Ae(r,[\"string\",\"array\"]))throw new Oe(`Expected second argument to be of type array or string, but found ${ve(Re(r))} instead.`);return r.indexOf(e)>=0}eachChild(t){t(this.needle),t(this.haystack);}outputDefined(){return !0}serialize(){return [\"in\",this.needle.serialize(),this.haystack.serialize()]}}var ln=on;class un{constructor(t,e,r){this.type=ue,this.needle=t,this.haystack=e,this.fromIndex=r;}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,fe),n=e.parse(t[2],2,fe);if(!r||!n)return null;if(!_e(r.type,[he,ce,ue,le,fe]))return e.error(`Expected first argument to be of type boolean, string, number or null, but found ${ve(r.type)} instead`);if(4===t.length){const i=e.parse(t[3],3,ue);return i?new un(r,n,i):null}return new un(r,n)}evaluate(t){const e=this.needle.evaluate(t),r=this.haystack.evaluate(t);if(!Ae(e,[\"boolean\",\"string\",\"number\",\"null\"]))throw new Oe(`Expected first argument to be of type boolean, string, number or null, but found ${ve(Re(e))} instead.`);if(!Ae(r,[\"string\",\"array\"]))throw new Oe(`Expected second argument to be of type array or string, but found ${ve(Re(r))} instead.`);if(this.fromIndex){const n=this.fromIndex.evaluate(t);return r.indexOf(e,n)}return r.indexOf(e)}eachChild(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex);}outputDefined(){return !1}serialize(){if(null!=this.fromIndex&&void 0!==this.fromIndex){const t=this.fromIndex.serialize();return [\"index-of\",this.needle.serialize(),this.haystack.serialize(),t]}return [\"index-of\",this.needle.serialize(),this.haystack.serialize()]}}var cn=un;class hn{constructor(t,e,r,n,i,s){this.inputType=t,this.type=e,this.input=r,this.cases=n,this.outputs=i,this.otherwise=s;}static parse(t,e){if(t.length<5)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if(t.length%2!=1)return e.error(\"Expected an even number of arguments.\");let r,n;e.expectedType&&\"value\"!==e.expectedType.kind&&(n=e.expectedType);const i={},s=[];for(let a=2;aNumber.MAX_SAFE_INTEGER)return u.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(\"number\"==typeof t&&Math.floor(t)!==t)return u.error(\"Numeric branch labels must be integer values.\");if(r){if(u.checkSubtype(r,Re(t)))return null}else r=Re(t);if(void 0!==i[String(t)])return u.error(\"Branch labels must be unique.\");i[String(t)]=s.length;}const c=e.parse(l,a,n);if(!c)return null;n=n||c.type,s.push(c);}const a=e.parse(t[1],1,fe);if(!a)return null;const o=e.parse(t[t.length-1],t.length-1,n);return o?\"value\"!==a.type.kind&&e.concat(1).checkSubtype(r,a.type)?null:new hn(r,n,a,i,s,o):null}evaluate(t){const e=this.input.evaluate(t);return (Re(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)}eachChild(t){t(this.input),this.outputs.forEach(t),t(this.otherwise);}outputDefined(){return this.outputs.every((t=>t.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const t=[\"match\",this.input.serialize()],e=Object.keys(this.cases).sort(),r=[],n={};for(const t of e){const e=n[this.cases[t]];void 0===e?(n[this.cases[t]]=r.length,r.push([this.cases[t],[t]])):r[e][1].push(t);}const i=t=>\"number\"===this.inputType.kind?Number(t):t;for(const[e,n]of r)t.push(1===n.length?i(n[0]):n.map(i)),t.push(this.outputs[e].serialize());return t.push(this.otherwise.serialize()),t}}var pn=hn;class dn{constructor(t,e,r){this.type=t,this.branches=e,this.otherwise=r;}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found only ${t.length-1}.`);if(t.length%2!=0)return e.error(\"Expected an odd number of arguments.\");let r;e.expectedType&&\"value\"!==e.expectedType.kind&&(r=e.expectedType);const n=[];for(let i=1;ie.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const t=[\"case\"];return this.eachChild((e=>{t.push(e.serialize());})),t}}var fn=dn;class yn{constructor(t,e,r,n){this.type=t,this.input=e,this.beginIndex=r,this.endIndex=n;}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const r=e.parse(t[1],1,fe),n=e.parse(t[2],2,ue);if(!r||!n)return null;if(!_e(r.type,[xe(fe),ce,fe]))return e.error(`Expected first argument to be of type array or string, but found ${ve(r.type)} instead`);if(4===t.length){const i=e.parse(t[3],3,ue);return i?new yn(r.type,r,n,i):null}return new yn(r.type,r,n)}evaluate(t){const e=this.input.evaluate(t),r=this.beginIndex.evaluate(t);if(!Ae(e,[\"string\",\"array\"]))throw new Oe(`Expected first argument to be of type array or string, but found ${ve(Re(e))} instead.`);if(this.endIndex){const n=this.endIndex.evaluate(t);return e.slice(r,n)}return e.slice(r)}eachChild(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex);}outputDefined(){return !1}serialize(){if(null!=this.endIndex&&void 0!==this.endIndex){const t=this.endIndex.serialize();return [\"slice\",this.input.serialize(),this.beginIndex.serialize(),t]}return [\"slice\",this.input.serialize(),this.beginIndex.serialize()]}}var mn=yn;function gn(t,e){return \"==\"===t||\"!=\"===t?\"boolean\"===e.kind||\"string\"===e.kind||\"number\"===e.kind||\"null\"===e.kind||\"value\"===e.kind:\"string\"===e.kind||\"number\"===e.kind||\"value\"===e.kind}function xn(t,e,r,n){return 0===n.compare(e,r)}function vn(t,e,r){const n=\"==\"!==t&&\"!=\"!==t;return class i{constructor(t,e,r){this.type=he,this.lhs=t,this.rhs=e,this.collator=r,this.hasUntypedArgument=\"value\"===t.type.kind||\"value\"===e.type.kind;}static parse(t,e){if(3!==t.length&&4!==t.length)return e.error(\"Expected two or three arguments.\");const r=t[0];let s=e.parse(t[1],1,fe);if(!s)return null;if(!gn(r,s.type))return e.concat(1).error(`\"${r}\" comparisons are not supported for type '${ve(s.type)}'.`);let a=e.parse(t[2],2,fe);if(!a)return null;if(!gn(r,a.type))return e.concat(2).error(`\"${r}\" comparisons are not supported for type '${ve(a.type)}'.`);if(s.type.kind!==a.type.kind&&\"value\"!==s.type.kind&&\"value\"!==a.type.kind)return e.error(`Cannot compare types '${ve(s.type)}' and '${ve(a.type)}'.`);n&&(\"value\"===s.type.kind&&\"value\"!==a.type.kind?s=new Ge(a.type,[s]):\"value\"!==s.type.kind&&\"value\"===a.type.kind&&(a=new Ge(s.type,[a])));let o=null;if(4===t.length){if(\"string\"!==s.type.kind&&\"string\"!==a.type.kind&&\"value\"!==s.type.kind&&\"value\"!==a.type.kind)return e.error(\"Cannot use collator to compare non-string types.\");if(o=e.parse(t[3],3,ye),!o)return null}return new i(s,a,o)}evaluate(i){const s=this.lhs.evaluate(i),a=this.rhs.evaluate(i);if(n&&this.hasUntypedArgument){const e=Re(s),r=Re(a);if(e.kind!==r.kind||\"string\"!==e.kind&&\"number\"!==e.kind)throw new Oe(`Expected arguments for \"${t}\" to be (string, string) or (number, number), but found (${e.kind}, ${r.kind}) instead.`)}if(this.collator&&!n&&this.hasUntypedArgument){const t=Re(s),r=Re(a);if(\"string\"!==t.kind||\"string\"!==r.kind)return e(i,s,a)}return this.collator?r(i,s,a,this.collator.evaluate(i)):e(i,s,a)}eachChild(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator);}outputDefined(){return !0}serialize(){const e=[t];return this.eachChild((t=>{e.push(t.serialize());})),e}}}const bn=vn(\"==\",(function(t,e,r){return e===r}),xn),wn=vn(\"!=\",(function(t,e,r){return e!==r}),(function(t,e,r,n){return !xn(0,e,r,n)})),_n=vn(\"<\",(function(t,e,r){return e\",(function(t,e,r){return e>r}),(function(t,e,r,n){return n.compare(e,r)>0})),Sn=vn(\"<=\",(function(t,e,r){return e<=r}),(function(t,e,r,n){return n.compare(e,r)<=0})),kn=vn(\">=\",(function(t,e,r){return e>=r}),(function(t,e,r,n){return n.compare(e,r)>=0}));class In{constructor(t,e,r,n,i,s){this.type=ce,this.number=t,this.locale=e,this.currency=r,this.unit=n,this.minFractionDigits=i,this.maxFractionDigits=s;}static parse(t,e){if(3!==t.length)return e.error(\"Expected two arguments.\");const r=e.parse(t[1],1,ue);if(!r)return null;const n=t[2];if(\"object\"!=typeof n||Array.isArray(n))return e.error(\"NumberFormat options argument must be an object.\");let i=null;if(n.locale&&(i=e.parse(n.locale,1,ce),!i))return null;let s=null;if(n.currency&&(s=e.parse(n.currency,1,ce),!s))return null;let a=null;if(n.unit&&(a=e.parse(n.unit,1,ce),!a))return null;let o=null;if(n[\"min-fraction-digits\"]&&(o=e.parse(n[\"min-fraction-digits\"],1,ue),!o))return null;let l=null;return n[\"max-fraction-digits\"]&&(l=e.parse(n[\"max-fraction-digits\"],1,ue),!l)?null:new In(r,i,s,a,o,l)}evaluate(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:(this.currency?\"currency\":this.unit&&\"unit\")||\"decimal\",currency:this.currency?this.currency.evaluate(t):void 0,unit:this.unit?this.unit.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))}eachChild(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.unit&&t(this.unit),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits);}outputDefined(){return !1}serialize(){const t={};return this.locale&&(t.locale=this.locale.serialize()),this.currency&&(t.currency=this.currency.serialize()),this.unit&&(t.unit=this.unit.serialize()),this.minFractionDigits&&(t[\"min-fraction-digits\"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(t[\"max-fraction-digits\"]=this.maxFractionDigits.serialize()),[\"number-format\",this.number.serialize(),t]}}class Mn{constructor(t){this.type=ue,this.input=t;}static parse(t,e){if(2!==t.length)return e.error(`Expected 1 argument, but found ${t.length-1} instead.`);const r=e.parse(t[1],1);return r?\"array\"!==r.type.kind&&\"string\"!==r.type.kind&&\"value\"!==r.type.kind?e.error(`Expected argument of type string or array, but found ${ve(r.type)} instead.`):new Mn(r):null}evaluate(t){const e=this.input.evaluate(t);if(\"string\"==typeof e)return e.length;if(Array.isArray(e))return e.length;throw new Oe(`Expected value to be of type string or array, but found ${ve(Re(e))} instead.`)}eachChild(t){t(this.input);}outputDefined(){return !1}serialize(){const t=[\"length\"];return this.eachChild((e=>{t.push(e.serialize());})),t}}const Tn={\"==\":bn,\"!=\":wn,\">\":An,\"<\":_n,\">=\":kn,\"<=\":Sn,array:Ge,at:an,boolean:Ge,case:fn,coalesce:en,collator:er,format:Ze,image:Ke,in:ln,\"index-of\":cn,interpolate:Qr,\"interpolate-hcl\":Qr,\"interpolate-lab\":Qr,length:Mn,let:nn,literal:je,match:pn,number:Ge,\"number-format\":In,object:Ge,slice:mn,step:Br,string:Ge,\"to-boolean\":He,\"to-color\":He,\"to-number\":He,\"to-string\":He,var:Sr,within:vr};function zn(t,[e,r,n,i]){e=e.evaluate(t),r=r.evaluate(t),n=n.evaluate(t);const s=i?i.evaluate(t):1,a=Le(e,r,n,s);if(a)throw new Oe(a);return new Ee(e/255*s,r/255*s,n/255*s,s)}function Bn(t,e){return t in e}function En(t,e){const r=e[t];return void 0===r?null:r}function Cn(t){return {type:t}}tr.register(Tn,{error:[{kind:\"error\"},[ce],(t,[e])=>{throw new Oe(e.evaluate(t))}],typeof:[ce,[fe],(t,[e])=>ve(Re(e.evaluate(t)))],\"to-rgba\":[xe(ue,4),[pe],(t,[e])=>e.evaluate(t).toArray()],rgb:[pe,[ue,ue,ue],zn],rgba:[pe,[ue,ue,ue,ue],zn],has:{type:he,overloads:[[[ce],(t,[e])=>Bn(e.evaluate(t),t.properties())],[[ce,de],(t,[e,r])=>Bn(e.evaluate(t),r.evaluate(t))]]},get:{type:fe,overloads:[[[ce],(t,[e])=>En(e.evaluate(t),t.properties())],[[ce,de],(t,[e,r])=>En(e.evaluate(t),r.evaluate(t))]]},\"feature-state\":[fe,[ce],(t,[e])=>En(e.evaluate(t),t.featureState||{})],properties:[de,[],t=>t.properties()],\"geometry-type\":[ce,[],t=>t.geometryType()],id:[fe,[],t=>t.id()],zoom:[ue,[],t=>t.globals.zoom],pitch:[ue,[],t=>t.globals.pitch||0],\"distance-from-center\":[ue,[],t=>t.distanceFromCenter()],\"heatmap-density\":[ue,[],t=>t.globals.heatmapDensity||0],\"line-progress\":[ue,[],t=>t.globals.lineProgress||0],\"sky-radial-progress\":[ue,[],t=>t.globals.skyRadialProgress||0],accumulated:[fe,[],t=>void 0===t.globals.accumulated?null:t.globals.accumulated],\"+\":[ue,Cn(ue),(t,e)=>{let r=0;for(const n of e)r+=n.evaluate(t);return r}],\"*\":[ue,Cn(ue),(t,e)=>{let r=1;for(const n of e)r*=n.evaluate(t);return r}],\"-\":{type:ue,overloads:[[[ue,ue],(t,[e,r])=>e.evaluate(t)-r.evaluate(t)],[[ue],(t,[e])=>-e.evaluate(t)]]},\"/\":[ue,[ue,ue],(t,[e,r])=>e.evaluate(t)/r.evaluate(t)],\"%\":[ue,[ue,ue],(t,[e,r])=>e.evaluate(t)%r.evaluate(t)],ln2:[ue,[],()=>Math.LN2],pi:[ue,[],()=>Math.PI],e:[ue,[],()=>Math.E],\"^\":[ue,[ue,ue],(t,[e,r])=>Math.pow(e.evaluate(t),r.evaluate(t))],sqrt:[ue,[ue],(t,[e])=>Math.sqrt(e.evaluate(t))],log10:[ue,[ue],(t,[e])=>Math.log(e.evaluate(t))/Math.LN10],ln:[ue,[ue],(t,[e])=>Math.log(e.evaluate(t))],log2:[ue,[ue],(t,[e])=>Math.log(e.evaluate(t))/Math.LN2],sin:[ue,[ue],(t,[e])=>Math.sin(e.evaluate(t))],cos:[ue,[ue],(t,[e])=>Math.cos(e.evaluate(t))],tan:[ue,[ue],(t,[e])=>Math.tan(e.evaluate(t))],asin:[ue,[ue],(t,[e])=>Math.asin(e.evaluate(t))],acos:[ue,[ue],(t,[e])=>Math.acos(e.evaluate(t))],atan:[ue,[ue],(t,[e])=>Math.atan(e.evaluate(t))],min:[ue,Cn(ue),(t,e)=>Math.min(...e.map((e=>e.evaluate(t))))],max:[ue,Cn(ue),(t,e)=>Math.max(...e.map((e=>e.evaluate(t))))],abs:[ue,[ue],(t,[e])=>Math.abs(e.evaluate(t))],round:[ue,[ue],(t,[e])=>{const r=e.evaluate(t);return r<0?-Math.round(-r):Math.round(r)}],floor:[ue,[ue],(t,[e])=>Math.floor(e.evaluate(t))],ceil:[ue,[ue],(t,[e])=>Math.ceil(e.evaluate(t))],\"filter-==\":[he,[ce,fe],(t,[e,r])=>t.properties()[e.value]===r.value],\"filter-id-==\":[he,[fe],(t,[e])=>t.id()===e.value],\"filter-type-==\":[he,[ce],(t,[e])=>t.geometryType()===e.value],\"filter-<\":[he,[ce,fe],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n{const r=t.id(),n=e.value;return typeof r==typeof n&&r\":[he,[ce,fe],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>i}],\"filter-id->\":[he,[fe],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r>n}],\"filter-<=\":[he,[ce,fe],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n<=i}],\"filter-id-<=\":[he,[fe],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r<=n}],\"filter->=\":[he,[ce,fe],(t,[e,r])=>{const n=t.properties()[e.value],i=r.value;return typeof n==typeof i&&n>=i}],\"filter-id->=\":[he,[fe],(t,[e])=>{const r=t.id(),n=e.value;return typeof r==typeof n&&r>=n}],\"filter-has\":[he,[fe],(t,[e])=>e.value in t.properties()],\"filter-has-id\":[he,[],t=>null!==t.id()&&void 0!==t.id()],\"filter-type-in\":[he,[xe(ce)],(t,[e])=>e.value.indexOf(t.geometryType())>=0],\"filter-id-in\":[he,[xe(fe)],(t,[e])=>e.value.indexOf(t.id())>=0],\"filter-in-small\":[he,[ce,xe(fe)],(t,[e,r])=>r.value.indexOf(t.properties()[e.value])>=0],\"filter-in-large\":[he,[ce,xe(fe)],(t,[e,r])=>function(t,e,r,n){for(;r<=n;){const i=r+n>>1;if(e[i]===t)return !0;e[i]>t?n=i-1:r=i+1;}return !1}(t.properties()[e.value],r.value,0,r.value.length-1)],all:{type:he,overloads:[[[he,he],(t,[e,r])=>e.evaluate(t)&&r.evaluate(t)],[Cn(he),(t,e)=>{for(const r of e)if(!r.evaluate(t))return !1;return !0}]]},any:{type:he,overloads:[[[he,he],(t,[e,r])=>e.evaluate(t)||r.evaluate(t)],[Cn(he),(t,e)=>{for(const r of e)if(r.evaluate(t))return !0;return !1}]]},\"!\":[he,[he],(t,[e])=>!e.evaluate(t)],\"is-supported-script\":[he,[ce],(t,[e])=>{const r=t.globals&&t.globals.isSupportedScript;return !r||r(e.evaluate(t))}],upcase:[ce,[ce],(t,[e])=>e.evaluate(t).toUpperCase()],downcase:[ce,[ce],(t,[e])=>e.evaluate(t).toLowerCase()],concat:[ce,Cn(fe),(t,e)=>e.map((e=>Ue(e.evaluate(t)))).join(\"\")],\"resolved-locale\":[ce,[ye],(t,[e])=>e.evaluate(t).resolvedLocale()]});var Pn=Tn;function Dn(t){return {result:\"success\",value:t}}function Vn(t){return {result:\"error\",value:t}}function Ln(t){return \"data-driven\"===t[\"property-type\"]}function Fn(t){return !!t.expression&&t.expression.parameters.indexOf(\"zoom\")>-1}function Rn(t){return !!t.expression&&t.expression.interpolated}function Un(t){return t instanceof Number?\"number\":t instanceof String?\"string\":t instanceof Boolean?\"boolean\":Array.isArray(t)?\"array\":null===t?\"null\":typeof t}function $n(t){return \"object\"==typeof t&&null!==t&&!Array.isArray(t)}function jn(t){return t}function On(t,e){const r=\"color\"===e.type,n=t.stops&&\"object\"==typeof t.stops[0][0],i=n||!(n||void 0!==t.property),s=t.type||(Rn(e)?\"exponential\":\"interval\");if(r&&((t=ee({},t)).stops&&(t.stops=t.stops.map((t=>[t[0],Ee.parse(t[1])]))),t.default=Ee.parse(t.default?t.default:e.default)),t.colorSpace&&\"rgb\"!==t.colorSpace&&!Hr[t.colorSpace])throw new Error(`Unknown color space: ${t.colorSpace}`);let a,o,l;if(\"exponential\"===s)a=Zn;else if(\"interval\"===s)a=Gn;else if(\"categorical\"===s){a=Nn,o=Object.create(null);for(const e of t.stops)o[e[0]]=e[1];l=typeof t.stops[0][0];}else {if(\"identity\"!==s)throw new Error(`Unknown function type \"${s}\"`);a=Kn;}if(n){const r={},n=[];for(let e=0;et[0])),evaluate:({zoom:r},n)=>Zn({stops:i,base:t.base},e,r).evaluate(r,n)}}if(i){const r=\"exponential\"===s?{name:\"exponential\",base:void 0!==t.base?t.base:1}:null;return {kind:\"camera\",interpolationType:r,interpolationFactor:Qr.interpolationFactor.bind(void 0,r),zoomStops:t.stops.map((t=>t[0])),evaluate:({zoom:r})=>a(t,e,r,o,l)}}return {kind:\"source\",evaluate(r,n){const i=n&&n.properties?n.properties[t.property]:void 0;return void 0===i?qn(t.default,e.default):a(t,e,i,o,l)}}}function qn(t,e,r){return void 0!==t?t:void 0!==e?e:void 0!==r?r:void 0}function Nn(t,e,r,n,i){return qn(typeof r===i?n[r]:void 0,t.default,e.default)}function Gn(t,e,r){if(\"number\"!==Un(r))return qn(t.default,e.default);const n=t.stops.length;if(1===n)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];const i=Tr(t.stops.map((t=>t[0])),r);return t.stops[i][1]}function Zn(t,e,r){const n=void 0!==t.base?t.base:1;if(\"number\"!==Un(r))return qn(t.default,e.default);const i=t.stops.length;if(1===i)return t.stops[0][1];if(r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];const s=Tr(t.stops.map((t=>t[0])),r),a=function(t,e,r,n){const i=n-r,s=t-r;return 0===i?0:1===e?s/i:(Math.pow(e,s)-1)/(Math.pow(e,i)-1)}(r,n,t.stops[s][0],t.stops[s+1][0]),o=t.stops[s][1],l=t.stops[s+1][1];let u=Cr[e.type]||jn;if(t.colorSpace&&\"rgb\"!==t.colorSpace){const e=Hr[t.colorSpace];u=(t,r)=>e.reverse(e.interpolate(e.forward(t),e.forward(r),a));}return \"function\"==typeof o.evaluate?{evaluate(...t){const e=o.evaluate.apply(void 0,t),r=l.evaluate.apply(void 0,t);if(void 0!==e&&void 0!==r)return u(e,r,a)}}:u(o,l,a)}function Kn(t,e,r){return \"color\"===e.type?r=Ee.parse(r):\"formatted\"===e.type?r=De.fromString(r.toString()):\"resolvedImage\"===e.type?r=Ve.fromString(r.toString()):Un(r)===e.type||\"enum\"===e.type&&e.values[r]||(r=void 0),qn(r,t.default,e.default)}class Xn{constructor(t,e){this.expression=t,this._warningHistory={},this._evaluator=new We,this._defaultValue=e?function(t){return \"color\"===t.type&&($n(t.default)||Array.isArray(t.default))?new Ee(0,0,0,0):\"color\"===t.type?Ee.parse(t.default)||null:void 0===t.default?null:t.default}(e):null,this._enumValues=e&&\"enum\"===e.type?e.values:null;}evaluateWithoutErrorHandling(t,e,r,n,i,s,a,o){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=n||null,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=s,this._evaluator.featureTileCoord=a||null,this._evaluator.featureDistanceData=o||null,this.expression.evaluate(this._evaluator)}evaluate(t,e,r,n,i,s,a,o){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=n||null,this._evaluator.availableImages=i||null,this._evaluator.formattedSection=s||null,this._evaluator.featureTileCoord=a||null,this._evaluator.featureDistanceData=o||null;try{const t=this.expression.evaluate(this._evaluator);if(null==t||\"number\"==typeof t&&t!=t)return this._defaultValue;if(this._enumValues&&!(t in this._enumValues))throw new Oe(`Expected value to be one of ${Object.keys(this._enumValues).map((t=>JSON.stringify(t))).join(\", \")}, but found ${JSON.stringify(t)} instead.`);return t}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,\"undefined\"!=typeof console&&console.warn(t.message)),this._defaultValue}}}function Jn(t){return Array.isArray(t)&&t.length>0&&\"string\"==typeof t[0]&&t[0]in Pn}function Hn(t,e){const r=new Ir(Pn,[],e?function(t){const e={color:pe,string:ce,number:ue,enum:ce,boolean:he,formatted:me,resolvedImage:ge};return \"array\"===t.type?xe(e[t.value]||fe,t.length):e[t.type]}(e):void 0),n=r.parse(t,void 0,void 0,void 0,e&&\"string\"===e.type?{typeAnnotation:\"coerce\"}:void 0);return n?Dn(new Xn(n,e)):Vn(r.errors)}class Yn{constructor(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent=\"constant\"!==t&&!wr(e.expression);}evaluateWithoutErrorHandling(t,e,r,n,i,s){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,s)}evaluate(t,e,r,n,i,s){return this._styleExpression.evaluate(t,e,r,n,i,s)}}class Wn{constructor(t,e,r,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent=\"camera\"!==t&&!wr(e.expression),this.interpolationType=n;}evaluateWithoutErrorHandling(t,e,r,n,i,s){return this._styleExpression.evaluateWithoutErrorHandling(t,e,r,n,i,s)}evaluate(t,e,r,n,i,s){return this._styleExpression.evaluate(t,e,r,n,i,s)}interpolationFactor(t,e,r){return this.interpolationType?Qr.interpolationFactor(this.interpolationType,t,e,r):0}}function Qn(t,e){if(\"error\"===(t=Hn(t,e)).result)return t;const r=t.value.expression,n=br(r);if(!n&&!Ln(e))return Vn([new se(\"\",\"data expressions not supported\")]);const i=_r(r,[\"zoom\",\"pitch\",\"distance-from-center\"]);if(!i&&!Fn(e))return Vn([new se(\"\",\"zoom expressions not supported\")]);const s=ei(r);return s||i?s instanceof se?Vn([s]):s instanceof Qr&&!Rn(e)?Vn([new se(\"\",'\"interpolate\" expressions cannot be used with this property')]):Dn(s?new Wn(n?\"camera\":\"composite\",t.value,s.labels,s instanceof Qr?s.interpolation:void 0):new Yn(n?\"constant\":\"source\",t.value)):Vn([new se(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.')])}class ti{constructor(t,e){this._parameters=t,this._specification=e,ee(this,On(this._parameters,this._specification));}static deserialize(t){return new ti(t._parameters,t._specification)}static serialize(t){return {_parameters:t._parameters,_specification:t._specification}}}function ei(t){let e=null;if(t instanceof nn)e=ei(t.result);else if(t instanceof en){for(const r of t.args)if(e=ei(r),e)break}else (t instanceof Br||t instanceof Qr)&&t.input instanceof tr&&\"zoom\"===t.input.name&&(e=t);return e instanceof se||t.eachChild((t=>{const r=ei(t);r instanceof se?e=r:!e&&r?e=new se(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression.'):e&&r&&e!==r&&(e=new se(\"\",'Only one zoom-based \"step\" or \"interpolate\" subexpression may be used in an expression.'));})),e}class ri{constructor(t,e,r,n){this.message=(t?`${t}: `:\"\")+r,n&&(this.identifier=n),null!=e&&e.__line__&&(this.line=e.__line__);}}function ni(t){const e=t.key,r=t.value,n=t.valueSpec||{},i=t.objectElementValidators||{},s=t.style,a=t.styleSpec;let o=[];const l=Un(r);if(\"object\"!==l)return [new ri(e,r,`object expected, ${l} found`)];for(const t in r){const l=t.split(\".\")[0];let u;i[l]?u=i[l]:n[l]?u=Fi:i[\"*\"]?u=i[\"*\"]:n[\"*\"]&&(u=Fi),u?o=o.concat(u({key:(e?`${e}.`:e)+t,value:r[t],valueSpec:n[l]||n[\"*\"],style:s,styleSpec:a,object:r,objectKey:t},r)):o.push(new ri(e,r[t],`unknown property \"${t}\"`));}for(const t in n)i[t]||n[t].required&&void 0===n[t].default&&void 0===r[t]&&o.push(new ri(e,r,`missing required property \"${t}\"`));return o}function ii(t){const e=t.value,r=t.valueSpec,n=t.style,i=t.styleSpec,s=t.key,a=t.arrayElementValidator||Fi;if(\"array\"!==Un(e))return [new ri(s,e,`array expected, ${Un(e)} found`)];if(r.length&&e.length!==r.length)return [new ri(s,e,`array length ${r.length} expected, length ${e.length} found`)];if(r[\"min-length\"]&&e.lengthi)return [new ri(e,r,`${r} is greater than the maximum value ${i}`)]}return []}function ai(t){const e=t.valueSpec,r=re(t.value.type);let n,i,s,a={};const o=\"categorical\"!==r&&void 0===t.value.property,l=!o,u=\"array\"===Un(t.value.stops)&&\"array\"===Un(t.value.stops[0])&&\"object\"===Un(t.value.stops[0][0]),c=ni({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if(\"identity\"===r)return [new ri(t.key,t.value,'identity function may not have a \"stops\" property')];let e=[];const n=t.value;return e=e.concat(ii({key:t.key,value:n,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:h})),\"array\"===Un(n)&&0===n.length&&e.push(new ri(t.key,n,\"array must have at least one stop\")),e},default:function(t){return Fi({key:t.key,value:t.value,valueSpec:e,style:t.style,styleSpec:t.styleSpec})}}});return \"identity\"===r&&o&&c.push(new ri(t.key,t.value,'missing required property \"property\"')),\"identity\"===r||t.value.stops||c.push(new ri(t.key,t.value,'missing required property \"stops\"')),\"exponential\"===r&&t.valueSpec.expression&&!Rn(t.valueSpec)&&c.push(new ri(t.key,t.value,\"exponential functions not supported\")),t.styleSpec.$version>=8&&(l&&!Ln(t.valueSpec)?c.push(new ri(t.key,t.value,\"property functions not supported\")):o&&!Fn(t.valueSpec)&&c.push(new ri(t.key,t.value,\"zoom functions not supported\"))),\"categorical\"!==r&&!u||void 0!==t.value.property||c.push(new ri(t.key,t.value,'\"property\" property is required')),c;function h(t){let r=[];const n=t.value,o=t.key;if(\"array\"!==Un(n))return [new ri(o,n,`array expected, ${Un(n)} found`)];if(2!==n.length)return [new ri(o,n,`array length 2 expected, length ${n.length} found`)];if(u){if(\"object\"!==Un(n[0]))return [new ri(o,n,`object expected, ${Un(n[0])} found`)];if(void 0===n[0].zoom)return [new ri(o,n,\"object stop key must have zoom\")];if(void 0===n[0].value)return [new ri(o,n,\"object stop key must have value\")];const e=re(n[0].zoom);if(\"number\"!=typeof e)return [new ri(o,n[0].zoom,\"stop zoom values must be numbers\")];if(s&&s>e)return [new ri(o,n[0].zoom,\"stop zoom values must appear in ascending order\")];e!==s&&(s=e,i=void 0,a={}),r=r.concat(ni({key:`${o}[0]`,value:n[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:si,value:p}}));}else r=r.concat(p({key:`${o}[0]`,value:n[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},n));return Jn(ne(n[1]))?r.concat([new ri(`${o}[1]`,n[1],\"expressions are not allowed in function stops.\")]):r.concat(Fi({key:`${o}[1]`,value:n[1],valueSpec:e,style:t.style,styleSpec:t.styleSpec}))}function p(t,s){const o=Un(t.value),l=re(t.value),u=null!==t.value?t.value:s;if(n){if(o!==n)return [new ri(t.key,u,`${o} stop domain type must match previous stop domain type ${n}`)]}else n=o;if(\"number\"!==o&&\"string\"!==o&&\"boolean\"!==o&&\"number\"!=typeof l&&\"string\"!=typeof l&&\"boolean\"!=typeof l)return [new ri(t.key,u,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==o&&\"categorical\"!==r){let n=`number expected, ${o} found`;return Ln(e)&&void 0===r&&(n+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new ri(t.key,u,n)]}return \"categorical\"!==r||\"number\"!==o||\"number\"==typeof l&&isFinite(l)&&Math.floor(l)===l?\"categorical\"!==r&&\"number\"===o&&\"number\"==typeof l&&\"number\"==typeof i&&void 0!==i&&lnew ri(`${t.key}${e.key}`,t.value,e.message)));const r=e.value.expression||e.value._styleExpression.expression;if(\"property\"===t.expressionContext&&\"text-font\"===t.propertyKey&&!r.outputDefined())return [new ri(t.key,t.value,`Invalid data expression for \"${t.propertyKey}\". Output values must be contained as literals within the expression.`)];if(\"property\"===t.expressionContext&&\"layout\"===t.propertyType&&!wr(r))return [new ri(t.key,t.value,'\"feature-state\" data expressions are not supported with layout properties.')];if(\"filter\"===t.expressionContext)return li(r,t);if(t.expressionContext&&0===t.expressionContext.indexOf(\"cluster\")){if(!_r(r,[\"zoom\",\"feature-state\"]))return [new ri(t.key,t.value,'\"zoom\" and \"feature-state\" expressions are not supported with cluster properties.')];if(\"cluster-initial\"===t.expressionContext&&!br(r))return [new ri(t.key,t.value,\"Feature data expressions are not supported with initial expression part of cluster properties.\")]}return []}function li(t,e){const r=new Set([\"zoom\",\"feature-state\",\"pitch\",\"distance-from-center\"]);if(e.valueSpec&&e.valueSpec.expression)for(const t of e.valueSpec.expression.parameters)r.delete(t);if(0===r.size)return [];const n=[];return t instanceof tr&&r.has(t.name)?[new ri(e.key,e.value,`[\"${t.name}\"] expression is not supported in a filter for a ${e.object.type} layer with id: ${e.object.id}`)]:(t.eachChild((t=>{n.push(...li(t,e));})),n)}function ui(t){const e=t.key,r=t.value,n=t.valueSpec,i=[];return Array.isArray(n.values)?-1===n.values.indexOf(re(r))&&i.push(new ri(e,r,`expected one of [${n.values.join(\", \")}], ${JSON.stringify(r)} found`)):-1===Object.keys(n.values).indexOf(re(r))&&i.push(new ri(e,r,`expected one of [${Object.keys(n.values).join(\", \")}], ${JSON.stringify(r)} found`)),i}function ci(t){if(!0===t||!1===t)return !0;if(!Array.isArray(t)||0===t.length)return !1;switch(t[0]){case\"has\":return t.length>=2&&\"$id\"!==t[1]&&\"$type\"!==t[1];case\"in\":return t.length>=3&&(\"string\"!=typeof t[1]||Array.isArray(t[2]));case\"!in\":case\"!has\":case\"none\":return !1;case\"==\":case\"!=\":case\">\":case\">=\":case\"<\":case\"<=\":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case\"any\":case\"all\":for(const e of t.slice(1))if(!ci(e)&&\"boolean\"!=typeof e)return !1;return !0;default:return !0}}function hi(t,e=\"fill\"){if(null==t)return {filter:()=>!0,needGeometry:!1,needFeature:!1};ci(t)||(t=xi(t));const r=t;let n=!0;try{n=function(t){if(!fi(t))return t;let e=ne(t);return di(e),e=pi(e),e}(r);}catch(t){console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate.\\nThis is most likely a bug, please report this via https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.md\\nand paste the contents of this message in the report.\\nThank you!\\nFilter Expression:\\n${JSON.stringify(r,null,2)}\\n `);}const i=te[`filter_${e}`],s=Hn(n,i);let a=null;if(\"error\"===s.result)throw new Error(s.value.map((t=>`${t.key}: ${t.message}`)).join(\", \"));a=(t,e,r)=>s.value.evaluate(t,e,{},r);let o=null,l=null;if(n!==r){const t=Hn(r,i);if(\"error\"===t.result)throw new Error(t.value.map((t=>`${t.key}: ${t.message}`)).join(\", \"));o=(e,r,n,i,s)=>t.value.evaluate(e,r,{},n,void 0,void 0,i,s),l=!br(t.value.expression);}return {filter:a,dynamicFilter:o||void 0,needGeometry:gi(n),needFeature:!!l}}function pi(t){if(!Array.isArray(t))return t;const e=function(t){if(yi.has(t[0]))for(let e=1;epi(t)))}function di(t){let e=!1;const r=[];if(\"case\"===t[0]){for(let n=1;n\",\">=\",\"<\",\"<=\",\"to-boolean\"]);function mi(t,e){return te?1:0}function gi(t){if(!Array.isArray(t))return !1;if(\"within\"===t[0])return !0;for(let e=1;e\"===e||\"<=\"===e||\">=\"===e?vi(t[1],t[2],e):\"any\"===e?(r=t.slice(1),[\"any\"].concat(r.map(xi))):\"all\"===e?[\"all\"].concat(t.slice(1).map(xi)):\"none\"===e?[\"all\"].concat(t.slice(1).map(xi).map(_i)):\"in\"===e?bi(t[1],t.slice(2)):\"!in\"===e?_i(bi(t[1],t.slice(2))):\"has\"===e?wi(t[1]):\"!has\"===e?_i(wi(t[1])):\"within\"!==e||t;var r;}function vi(t,e,r){switch(t){case\"$type\":return [`filter-type-${r}`,e];case\"$id\":return [`filter-id-${r}`,e];default:return [`filter-${r}`,t,e]}}function bi(t,e){if(0===e.length)return !1;switch(t){case\"$type\":return [\"filter-type-in\",[\"literal\",e]];case\"$id\":return [\"filter-id-in\",[\"literal\",e]];default:return e.length>200&&!e.some((t=>typeof t!=typeof e[0]))?[\"filter-in-large\",t,[\"literal\",e.sort(mi)]]:[\"filter-in-small\",t,[\"literal\",e]]}}function wi(t){switch(t){case\"$type\":return !0;case\"$id\":return [\"filter-has-id\"];default:return [\"filter-has\",t]}}function _i(t){return [\"!\",t]}function Ai(t){return ci(ne(t.value))?oi(ee({},t,{expressionContext:\"filter\",valueSpec:t.styleSpec[`filter_${t.layerType||\"fill\"}`]})):Si(t)}function Si(t){const e=t.value,r=t.key;if(\"array\"!==Un(e))return [new ri(r,e,`array expected, ${Un(e)} found`)];const n=t.styleSpec;let i,s=[];if(e.length<1)return [new ri(r,e,\"filter array must have at least 1 element\")];switch(s=s.concat(ui({key:`${r}[0]`,value:e[0],valueSpec:n.filter_operator,style:t.style,styleSpec:t.styleSpec})),re(e[0])){case\"<\":case\"<=\":case\">\":case\">=\":e.length>=2&&\"$type\"===re(e[1])&&s.push(new ri(r,e,`\"$type\" cannot be use with operator \"${e[0]}\"`));case\"==\":case\"!=\":3!==e.length&&s.push(new ri(r,e,`filter array for operator \"${e[0]}\" must have 3 elements`));case\"in\":case\"!in\":e.length>=2&&(i=Un(e[1]),\"string\"!==i&&s.push(new ri(`${r}[1]`,e[1],`string expected, ${i} found`)));for(let a=2;a{t in r&&e.push(new ri(n,r[t],`\"${t}\" is prohibited for ref layers`));})),i.layers.forEach((e=>{re(e.id)===o&&(t=e);})),t?t.ref?e.push(new ri(n,r.ref,\"ref cannot reference another ref layer\")):a=re(t.type):\"string\"==typeof o&&e.push(new ri(n,r.ref,`ref layer \"${o}\" not found`));}else if(\"background\"!==a&&\"sky\"!==a)if(r.source){const t=i.sources&&i.sources[r.source],s=t&&re(t.type);t?\"vector\"===s&&\"raster\"===a?e.push(new ri(n,r.source,`layer \"${r.id}\" requires a raster source`)):\"raster\"===s&&\"raster\"!==a?e.push(new ri(n,r.source,`layer \"${r.id}\" requires a vector source`)):\"vector\"!==s||r[\"source-layer\"]?\"raster-dem\"===s&&\"hillshade\"!==a?e.push(new ri(n,r.source,\"raster-dem source can only be used with layer type 'hillshade'.\")):\"line\"!==a||!r.paint||!r.paint[\"line-gradient\"]&&!r.paint[\"line-trim-offset\"]||\"geojson\"===s&&t.lineMetrics||e.push(new ri(n,r,`layer \"${r.id}\" specifies a line-gradient, which requires a GeoJSON source with \\`lineMetrics\\` enabled.`)):e.push(new ri(n,r,`layer \"${r.id}\" must specify a \"source-layer\"`)):e.push(new ri(n,r.source,`source \"${r.source}\" not found`));}else e.push(new ri(n,r,'missing required property \"source\"'));return e=e.concat(ni({key:n,value:r,valueSpec:s.layer,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":()=>[],type:()=>Fi({key:`${n}.type`,value:r.type,valueSpec:s.layer.type,style:t.style,styleSpec:t.styleSpec,object:r,objectKey:\"type\"}),filter:t=>Ai(ee({layerType:a},t)),layout:t=>ni({layer:r,key:t.key,value:t.value,valueSpec:{},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":t=>Mi(ee({layerType:a},t))}}),paint:t=>ni({layer:r,key:t.key,value:t.value,valueSpec:{},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{\"*\":t=>Ii(ee({layerType:a},t))}})}})),e}function zi(t){const e=t.value,r=t.key,n=Un(e);return \"string\"!==n?[new ri(r,e,`string expected, ${n} found`)]:[]}const Bi={promoteId:function({key:t,value:e}){if(\"string\"===Un(e))return zi({key:t,value:e});{const r=[];for(const n in e)r.push(...zi({key:`${t}.${n}`,value:e[n]}));return r}}};function Ei(t){const e=t.value,r=t.key,n=t.styleSpec,i=t.style;if(!e.type)return [new ri(r,e,'\"type\" is required')];const s=re(e.type);let a;switch(s){case\"vector\":case\"raster\":case\"raster-dem\":return a=ni({key:r,value:e,valueSpec:n[`source_${s.replace(\"-\",\"_\")}`],style:t.style,styleSpec:n,objectElementValidators:Bi}),a;case\"geojson\":if(a=ni({key:r,value:e,valueSpec:n.source_geojson,style:i,styleSpec:n,objectElementValidators:Bi}),e.cluster)for(const t in e.clusterProperties){const[n,i]=e.clusterProperties[t],s=\"string\"==typeof n?[n,[\"accumulated\"],[\"get\",t]]:n;a.push(...oi({key:`${r}.${t}.map`,value:i,expressionContext:\"cluster-map\"})),a.push(...oi({key:`${r}.${t}.reduce`,value:s,expressionContext:\"cluster-reduce\"}));}return a;case\"video\":return ni({key:r,value:e,valueSpec:n.source_video,style:i,styleSpec:n});case\"image\":return ni({key:r,value:e,valueSpec:n.source_image,style:i,styleSpec:n});case\"canvas\":return [new ri(r,null,\"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.\",\"source.canvas\")];default:return ui({key:`${r}.type`,value:e.type,valueSpec:{values:Ci(n)},style:i,styleSpec:n})}}function Ci(t){return t.source.reduce(((e,r)=>{const n=t[r];return \"enum\"===n.type.type&&(e=e.concat(Object.keys(n.type.values))),e}),[])}function Pi(t){const e=t.value,r=t.styleSpec,n=r.light,i=t.style;let s=[];const a=Un(e);if(void 0===e)return s;if(\"object\"!==a)return s=s.concat([new ri(\"light\",e,`object expected, ${a} found`)]),s;for(const t in e){const a=t.match(/^(.*)-transition$/);s=s.concat(a&&n[a[1]]&&n[a[1]].transition?Fi({key:t,value:e[t],valueSpec:r.transition,style:i,styleSpec:r}):n[t]?Fi({key:t,value:e[t],valueSpec:n[t],style:i,styleSpec:r}):[new ri(t,e[t],`unknown property \"${t}\"`)]);}return s}function Di(t){const e=t.value,r=t.key,n=t.style,i=t.styleSpec,s=i.terrain;let a=[];const o=Un(e);if(void 0===e)return a;if(\"object\"!==o)return a=a.concat([new ri(\"terrain\",e,`object expected, ${o} found`)]),a;for(const t in e){const r=t.match(/^(.*)-transition$/);a=a.concat(r&&s[r[1]]&&s[r[1]].transition?Fi({key:t,value:e[t],valueSpec:i.transition,style:n,styleSpec:i}):s[t]?Fi({key:t,value:e[t],valueSpec:s[t],style:n,styleSpec:i}):[new ri(t,e[t],`unknown property \"${t}\"`)]);}if(e.source){const t=n.sources&&n.sources[e.source],i=t&&re(t.type);t?\"raster-dem\"!==i&&a.push(new ri(r,e.source,`terrain cannot be used with a source of type ${String(i)}, it only be used with a \"raster-dem\" source type`)):a.push(new ri(r,e.source,`source \"${e.source}\" not found`));}else a.push(new ri(r,e,'terrain is missing required property \"source\"'));return a}function Vi(t){const e=t.value,r=t.style,n=t.styleSpec,i=n.fog;let s=[];const a=Un(e);if(void 0===e)return s;if(\"object\"!==a)return s=s.concat([new ri(\"fog\",e,`object expected, ${a} found`)]),s;for(const t in e){const a=t.match(/^(.*)-transition$/);s=s.concat(a&&i[a[1]]&&i[a[1]].transition?Fi({key:t,value:e[t],valueSpec:n.transition,style:r,styleSpec:n}):i[t]?Fi({key:t,value:e[t],valueSpec:i[t],style:r,styleSpec:n}):[new ri(t,e[t],`unknown property \"${t}\"`)]);}return s}const Li={\"*\":()=>[],array:ii,boolean:function(t){const e=t.value,r=t.key,n=Un(e);return \"boolean\"!==n?[new ri(r,e,`boolean expected, ${n} found`)]:[]},number:si,color:function(t){const e=t.key,r=t.value,n=Un(r);return \"string\"!==n?[new ri(e,r,`color expected, ${n} found`)]:null===Se(r)?[new ri(e,r,`color expected, \"${r}\" found`)]:[]},enum:ui,filter:Ai,function:ai,layer:Ti,object:ni,source:Ei,light:Pi,terrain:Di,fog:Vi,string:zi,formatted:function(t){return 0===zi(t).length?[]:oi(t)},resolvedImage:function(t){return 0===zi(t).length?[]:oi(t)},projection:function(t){const e=t.value,r=t.styleSpec,n=r.projection,i=t.style;let s=[];const a=Un(e);if(\"object\"===a)for(const t in e)s=s.concat(Fi({key:t,value:e[t],valueSpec:n[t],style:i,styleSpec:r}));else \"string\"!==a&&(s=s.concat([new ri(\"projection\",e,`object or string expected, ${a} found`)]));return s}};function Fi(t){const e=t.value,r=t.valueSpec,n=t.styleSpec;return r.expression&&$n(re(e))?ai(t):r.expression&&Jn(ne(e))?oi(t):r.type&&Li[r.type]?Li[r.type](t):ni(ee({},t,{valueSpec:r.type?n[r.type]:r}))}function Ri(t){const e=t.value,r=t.key,n=zi(t);return n.length||(-1===e.indexOf(\"{fontstack}\")&&n.push(new ri(r,e,'\"glyphs\" url must include a \"{fontstack}\" token')),-1===e.indexOf(\"{range}\")&&n.push(new ri(r,e,'\"glyphs\" url must include a \"{range}\" token'))),n}function Ui(t,e=te){return Oi(Fi({key:\"\",value:t,valueSpec:e.$root,styleSpec:e,style:t,objectElementValidators:{glyphs:Ri,\"*\":()=>[]}}))}const $i=t=>Oi(Ii(t)),ji=t=>Oi(Mi(t));function Oi(t){return t.slice().sort(((t,e)=>t.line&&e.line?t.line-e.line:0))}function qi(t,e){let r=!1;if(e&&e.length)for(const n of e)t.fire(new Wt(new Error(n.message))),r=!0;return r}var Ni=Zi,Gi=3;function Zi(t,e,r){var n=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;var i=new Int32Array(this.arrayBuffer);t=i[0],this.d=(e=i[1])+2*(r=i[2]);for(var s=0;s=c[d+0]&&n>=c[d+1])?(a[p]=!0,s.push(u[p])):a[p]=!1;}}},Zi.prototype._forEachCell=function(t,e,r,n,i,s,a,o){for(var l=this._convertToCellCoord(t),u=this._convertToCellCoord(e),c=this._convertToCellCoord(r),h=this._convertToCellCoord(n),p=l;p<=c;p++)for(var d=u;d<=h;d++){var f=this.d*d+p;if((!o||o(this._convertFromCellCoord(p),this._convertFromCellCoord(d),this._convertFromCellCoord(p+1),this._convertFromCellCoord(d+1)))&&i.call(this,t,e,r,n,f,s,a,o))return}},Zi.prototype._convertFromCellCoord=function(t){return (t-this.padding)/this.scale},Zi.prototype._convertToCellCoord=function(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))},Zi.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var t=this.cells,e=Gi+this.cells.length+1+1,r=0,n=0;n=0||(i[e]=Wi(t[e],r)));t instanceof Error&&(i.message=t.message);}if(i.$name)throw new Error(\"$name property is reserved for worker serialization logic.\");return \"Object\"!==n&&(i.$name=n),i}throw new Error(\"can't serialize object of type \"+typeof t)}function Qi(t){if(null==t||\"boolean\"==typeof t||\"number\"==typeof t||\"string\"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||Hi(t)||Yi(t)||ArrayBuffer.isView(t)||t instanceof e.ImageData)return t;if(Array.isArray(t))return t.map(Qi);if(\"object\"==typeof t){const e=t.$name||\"Object\",{klass:r}=Xi[e];if(!r)throw new Error(`can't deserialize unregistered class ${e}`);if(r.deserialize)return r.deserialize(t);const n=Object.create(r.prototype);for(const e of Object.keys(t))\"$name\"!==e&&(n[e]=Qi(t[e]));return n}throw new Error(\"can't deserialize object of type \"+typeof t)}const ts={\"Latin-1 Supplement\":t=>t>=128&&t<=255,Arabic:t=>t>=1536&&t<=1791,\"Arabic Supplement\":t=>t>=1872&&t<=1919,\"Arabic Extended-A\":t=>t>=2208&&t<=2303,\"Hangul Jamo\":t=>t>=4352&&t<=4607,\"Unified Canadian Aboriginal Syllabics\":t=>t>=5120&&t<=5759,Khmer:t=>t>=6016&&t<=6143,\"Unified Canadian Aboriginal Syllabics Extended\":t=>t>=6320&&t<=6399,\"General Punctuation\":t=>t>=8192&&t<=8303,\"Letterlike Symbols\":t=>t>=8448&&t<=8527,\"Number Forms\":t=>t>=8528&&t<=8591,\"Miscellaneous Technical\":t=>t>=8960&&t<=9215,\"Control Pictures\":t=>t>=9216&&t<=9279,\"Optical Character Recognition\":t=>t>=9280&&t<=9311,\"Enclosed Alphanumerics\":t=>t>=9312&&t<=9471,\"Geometric Shapes\":t=>t>=9632&&t<=9727,\"Miscellaneous Symbols\":t=>t>=9728&&t<=9983,\"Miscellaneous Symbols and Arrows\":t=>t>=11008&&t<=11263,\"CJK Radicals Supplement\":t=>t>=11904&&t<=12031,\"Kangxi Radicals\":t=>t>=12032&&t<=12255,\"Ideographic Description Characters\":t=>t>=12272&&t<=12287,\"CJK Symbols and Punctuation\":t=>t>=12288&&t<=12351,Hiragana:t=>t>=12352&&t<=12447,Katakana:t=>t>=12448&&t<=12543,Bopomofo:t=>t>=12544&&t<=12591,\"Hangul Compatibility Jamo\":t=>t>=12592&&t<=12687,Kanbun:t=>t>=12688&&t<=12703,\"Bopomofo Extended\":t=>t>=12704&&t<=12735,\"CJK Strokes\":t=>t>=12736&&t<=12783,\"Katakana Phonetic Extensions\":t=>t>=12784&&t<=12799,\"Enclosed CJK Letters and Months\":t=>t>=12800&&t<=13055,\"CJK Compatibility\":t=>t>=13056&&t<=13311,\"CJK Unified Ideographs Extension A\":t=>t>=13312&&t<=19903,\"Yijing Hexagram Symbols\":t=>t>=19904&&t<=19967,\"CJK Unified Ideographs\":t=>t>=19968&&t<=40959,\"Yi Syllables\":t=>t>=40960&&t<=42127,\"Yi Radicals\":t=>t>=42128&&t<=42191,\"Hangul Jamo Extended-A\":t=>t>=43360&&t<=43391,\"Hangul Syllables\":t=>t>=44032&&t<=55215,\"Hangul Jamo Extended-B\":t=>t>=55216&&t<=55295,\"Private Use Area\":t=>t>=57344&&t<=63743,\"CJK Compatibility Ideographs\":t=>t>=63744&&t<=64255,\"Arabic Presentation Forms-A\":t=>t>=64336&&t<=65023,\"Vertical Forms\":t=>t>=65040&&t<=65055,\"CJK Compatibility Forms\":t=>t>=65072&&t<=65103,\"Small Form Variants\":t=>t>=65104&&t<=65135,\"Arabic Presentation Forms-B\":t=>t>=65136&&t<=65279,\"Halfwidth and Fullwidth Forms\":t=>t>=65280&&t<=65519};function es(t){for(const e of t)if(is(e.charCodeAt(0)))return !0;return !1}function rs(t){for(const e of t)if(!ns(e.charCodeAt(0)))return !1;return !0}function ns(t){return !(ts.Arabic(t)||ts[\"Arabic Supplement\"](t)||ts[\"Arabic Extended-A\"](t)||ts[\"Arabic Presentation Forms-A\"](t)||ts[\"Arabic Presentation Forms-B\"](t))}function is(t){return !(746!==t&&747!==t&&(t<4352||!(ts[\"Bopomofo Extended\"](t)||ts.Bopomofo(t)||ts[\"CJK Compatibility Forms\"](t)&&!(t>=65097&&t<=65103)||ts[\"CJK Compatibility Ideographs\"](t)||ts[\"CJK Compatibility\"](t)||ts[\"CJK Radicals Supplement\"](t)||ts[\"CJK Strokes\"](t)||!(!ts[\"CJK Symbols and Punctuation\"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||ts[\"CJK Unified Ideographs Extension A\"](t)||ts[\"CJK Unified Ideographs\"](t)||ts[\"Enclosed CJK Letters and Months\"](t)||ts[\"Hangul Compatibility Jamo\"](t)||ts[\"Hangul Jamo Extended-A\"](t)||ts[\"Hangul Jamo Extended-B\"](t)||ts[\"Hangul Jamo\"](t)||ts[\"Hangul Syllables\"](t)||ts.Hiragana(t)||ts[\"Ideographic Description Characters\"](t)||ts.Kanbun(t)||ts[\"Kangxi Radicals\"](t)||ts[\"Katakana Phonetic Extensions\"](t)||ts.Katakana(t)&&12540!==t||!(!ts[\"Halfwidth and Fullwidth Forms\"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!ts[\"Small Form Variants\"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||ts[\"Unified Canadian Aboriginal Syllabics\"](t)||ts[\"Unified Canadian Aboriginal Syllabics Extended\"](t)||ts[\"Vertical Forms\"](t)||ts[\"Yijing Hexagram Symbols\"](t)||ts[\"Yi Syllables\"](t)||ts[\"Yi Radicals\"](t))))}function ss(t){return !(is(t)||function(t){return !!(ts[\"Latin-1 Supplement\"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||ts[\"General Punctuation\"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||ts[\"Letterlike Symbols\"](t)||ts[\"Number Forms\"](t)||ts[\"Miscellaneous Technical\"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||ts[\"Control Pictures\"](t)&&9251!==t||ts[\"Optical Character Recognition\"](t)||ts[\"Enclosed Alphanumerics\"](t)||ts[\"Geometric Shapes\"](t)||ts[\"Miscellaneous Symbols\"](t)&&!(t>=9754&&t<=9759)||ts[\"Miscellaneous Symbols and Arrows\"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||ts[\"CJK Symbols and Punctuation\"](t)||ts.Katakana(t)||ts[\"Private Use Area\"](t)||ts[\"CJK Compatibility Forms\"](t)||ts[\"Small Form Variants\"](t)||ts[\"Halfwidth and Fullwidth Forms\"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}function as(t){return t>=1424&&t<=2303||ts[\"Arabic Presentation Forms-A\"](t)||ts[\"Arabic Presentation Forms-B\"](t)}function os(t,e){return !(!e&&as(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||ts.Khmer(t))}function ls(t){for(const e of t)if(as(e.charCodeAt(0)))return !0;return !1}const us=\"deferred\",cs=\"loading\",hs=\"loaded\";let ps=null,ds=\"unavailable\",fs=null;const ys=function(t){t&&\"string\"==typeof t&&t.indexOf(\"NetworkError\")>-1&&(ds=\"error\"),ps&&ps(t);};function ms(){gs.fire(new Yt(\"pluginStateChange\",{pluginStatus:ds,pluginURL:fs}));}const gs=new Qt,xs=function(){return ds},vs=function(){if(ds!==us||!fs)throw new Error(\"rtl-text-plugin cannot be downloaded unless a pluginURL is specified\");ds=cs,ms(),fs&&pt({url:fs},(t=>{t?ys(t):(ds=hs,ms());}));},bs={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>ds===hs||null!=bs.applyArabicShaping,isLoading:()=>ds===cs,setState(t){ds=t.pluginStatus,fs=t.pluginURL;},isParsed:()=>null!=bs.applyArabicShaping&&null!=bs.processBidirectionalText&&null!=bs.processStyledBidirectionalText,getPluginURL:()=>fs};class ws{constructor(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.transition=e.transition,this.pitch=e.pitch):(this.now=0,this.fadeDuration=0,this.transition={},this.pitch=0);}isSupportedScript(t){return function(t,e){for(const r of t)if(!os(r.charCodeAt(0),e))return !1;return !0}(t,bs.isLoaded())}}class _s{constructor(t,e){this.property=t,this.value=e,this.expression=function(t,e){if($n(t))return new ti(t,e);if(Jn(t)){const r=Qn(t,e);if(\"error\"===r.result)throw new Error(r.value.map((t=>`${t.key}: ${t.message}`)).join(\", \"));return r.value}{let r=t;return \"string\"==typeof t&&\"color\"===e.type&&(r=Ee.parse(t)),{kind:\"constant\",evaluate:()=>r}}}(void 0===e?t.specification.default:e,t.specification);}isDataDriven(){return \"source\"===this.expression.kind||\"composite\"===this.expression.kind}possiblyEvaluate(t,e,r){return this.property.possiblyEvaluate(this,t,e,r)}}class As{constructor(t){this.property=t,this.value=new _s(t,void 0);}transitioned(t,e){return new ks(this.property,this.value,e,C({},t.transition,this.transition),t.now)}untransitioned(){return new ks(this.property,this.value,null,{},0)}}class Ss{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues);}getValue(t){return O(this._values[t].value.value)}setValue(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new As(this._values[t].property)),this._values[t].value=new _s(this._values[t].property,null===e?void 0:O(e));}getTransition(t){return O(this._values[t].transition)}setTransition(t,e){this._values.hasOwnProperty(t)||(this._values[t]=new As(this._values[t].property)),this._values[t].transition=O(e)||void 0;}serialize(){const t={};for(const e of Object.keys(this._values)){const r=this.getValue(e);void 0!==r&&(t[e]=r);const n=this.getTransition(e);void 0!==n&&(t[`${e}-transition`]=n);}return t}transitioned(t,e){const r=new Is(this._properties);for(const n of Object.keys(this._values))r._values[n]=this._values[n].transitioned(t,e._values[n]);return r}untransitioned(){const t=new Is(this._properties);for(const e of Object.keys(this._values))t._values[e]=this._values[e].untransitioned();return t}}class ks{constructor(t,e,r,n,i){const s=n.delay||0,a=n.duration||0;i=i||0,this.property=t,this.value=e,this.begin=i+s,this.end=this.begin+a,t.specification.transition&&(n.delay||n.duration)&&(this.prior=r);}possiblyEvaluate(t,e,r){const n=t.now||0,i=this.value.possiblyEvaluate(t,e,r),s=this.prior;if(s){if(n>this.end)return this.prior=null,i;if(this.value.isDataDriven())return this.prior=null,i;if(nthis.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const e=this.uint8;this._refreshViews(),e&&this.uint8.set(e);}}_refreshViews(){throw new Error(\"_refreshViews() must be implemented by each concrete StructArray layout\")}destroy(){this.int8=this.uint8=this.int16=this.uint16=this.int32=this.uint32=this.float32=null,this.arrayBuffer=null;}}function Rs(t,e=1){let r=0,n=0;return {members:t.map((t=>{const i=Vs[t.type].BYTES_PER_ELEMENT,s=r=Us(r,Math.max(e,i)),a=t.components||1;return n=Math.max(n,i),r+=i*a,{name:t.name,type:t.type,components:a,offset:s}})),size:Us(r,Math.max(n,e)),alignment:e}}function Us(t,e){return Math.ceil(t/e)*e}class $s extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.int16[n+0]=e,this.int16[n+1]=r,t}}$s.prototype.bytesPerElement=4,Ji($s,\"StructArrayLayout2i4\");class js extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.int16[i+0]=e,this.int16[i+1]=r,this.int16[i+2]=n,t}}js.prototype.bytesPerElement=6,Ji(js,\"StructArrayLayout3i6\");class Os extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const s=4*t;return this.int16[s+0]=e,this.int16[s+1]=r,this.int16[s+2]=n,this.int16[s+3]=i,t}}Os.prototype.bytesPerElement=8,Ji(Os,\"StructArrayLayout4i8\");class qs extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,s,a)}emplace(t,e,r,n,i,s,a,o){const l=6*t,u=12*t,c=3*t;return this.int16[l+0]=e,this.int16[l+1]=r,this.uint8[u+4]=n,this.uint8[u+5]=i,this.uint8[u+6]=s,this.uint8[u+7]=a,this.float32[c+2]=o,t}}qs.prototype.bytesPerElement=12,Ji(qs,\"StructArrayLayout2i4ub1f12\");class Ns extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const s=4*t;return this.float32[s+0]=e,this.float32[s+1]=r,this.float32[s+2]=n,this.float32[s+3]=i,t}}Ns.prototype.bytesPerElement=16,Ji(Ns,\"StructArrayLayout4f16\");class Gs extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i){const s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,n,i)}emplace(t,e,r,n,i,s){const a=6*t,o=3*t;return this.uint16[a+0]=e,this.uint16[a+1]=r,this.uint16[a+2]=n,this.uint16[a+3]=i,this.float32[o+2]=s,t}}Gs.prototype.bytesPerElement=12,Ji(Gs,\"StructArrayLayout4ui1f12\");class Zs extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const s=4*t;return this.uint16[s+0]=e,this.uint16[s+1]=r,this.uint16[s+2]=n,this.uint16[s+3]=i,t}}Zs.prototype.bytesPerElement=8,Ji(Zs,\"StructArrayLayout4ui8\");class Ks extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i,s)}emplace(t,e,r,n,i,s,a){const o=6*t;return this.int16[o+0]=e,this.int16[o+1]=r,this.int16[o+2]=n,this.int16[o+3]=i,this.int16[o+4]=s,this.int16[o+5]=a,t}}Ks.prototype.bytesPerElement=12,Ji(Ks,\"StructArrayLayout6i12\");class Xs extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u,c,h){const p=this.length;return this.resize(p+1),this.emplace(p,t,e,r,n,i,s,a,o,l,u,c,h)}emplace(t,e,r,n,i,s,a,o,l,u,c,h,p){const d=12*t;return this.int16[d+0]=e,this.int16[d+1]=r,this.int16[d+2]=n,this.int16[d+3]=i,this.uint16[d+4]=s,this.uint16[d+5]=a,this.uint16[d+6]=o,this.uint16[d+7]=l,this.int16[d+8]=u,this.int16[d+9]=c,this.int16[d+10]=h,this.int16[d+11]=p,t}}Xs.prototype.bytesPerElement=24,Ji(Xs,\"StructArrayLayout4i4ui4i24\");class Js extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,n,i,s)}emplace(t,e,r,n,i,s,a){const o=10*t,l=5*t;return this.int16[o+0]=e,this.int16[o+1]=r,this.int16[o+2]=n,this.float32[l+2]=i,this.float32[l+3]=s,this.float32[l+4]=a,t}}Js.prototype.bytesPerElement=20,Ji(Js,\"StructArrayLayout3i3f20\");class Hs extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint32[1*t+0]=e,t}}Hs.prototype.bytesPerElement=4,Ji(Hs,\"StructArrayLayout1ul4\");class Ys extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u,c,h,p){const d=this.length;return this.resize(d+1),this.emplace(d,t,e,r,n,i,s,a,o,l,u,c,h,p)}emplace(t,e,r,n,i,s,a,o,l,u,c,h,p,d){const f=20*t,y=10*t;return this.int16[f+0]=e,this.int16[f+1]=r,this.int16[f+2]=n,this.int16[f+3]=i,this.int16[f+4]=s,this.float32[y+3]=a,this.float32[y+4]=o,this.float32[y+5]=l,this.float32[y+6]=u,this.int16[f+14]=c,this.uint32[y+8]=h,this.uint16[f+18]=p,this.uint16[f+19]=d,t}}Ys.prototype.bytesPerElement=40,Ji(Ys,\"StructArrayLayout5i4f1i1ul2ui40\");class Ws extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,r,n,i,s,a)}emplace(t,e,r,n,i,s,a,o){const l=8*t;return this.int16[l+0]=e,this.int16[l+1]=r,this.int16[l+2]=n,this.int16[l+4]=i,this.int16[l+5]=s,this.int16[l+6]=a,this.int16[l+7]=o,t}}Ws.prototype.bytesPerElement=16,Ji(Ws,\"StructArrayLayout3i2i2i16\");class Qs extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i){const s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,n,i)}emplace(t,e,r,n,i,s){const a=4*t,o=8*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,this.int16[o+6]=i,this.int16[o+7]=s,t}}Qs.prototype.bytesPerElement=16,Ji(Qs,\"StructArrayLayout2f1f2i16\");class ta extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const s=12*t,a=3*t;return this.uint8[s+0]=e,this.uint8[s+1]=r,this.float32[a+1]=n,this.float32[a+2]=i,t}}ta.prototype.bytesPerElement=12,Ji(ta,\"StructArrayLayout2ub2f12\");class ea extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.float32[i+0]=e,this.float32[i+1]=r,this.float32[i+2]=n,t}}ea.prototype.bytesPerElement=12,Ji(ea,\"StructArrayLayout3f12\");class ra extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,r)}emplace(t,e,r,n){const i=3*t;return this.uint16[i+0]=e,this.uint16[i+1]=r,this.uint16[i+2]=n,t}}ra.prototype.bytesPerElement=6,Ji(ra,\"StructArrayLayout3ui6\");class na extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m,g,x,v,b){const w=this.length;return this.resize(w+1),this.emplace(w,t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m,g,x,v,b)}emplace(t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m,g,x,v,b,w){const _=30*t,A=15*t,S=60*t;return this.int16[_+0]=e,this.int16[_+1]=r,this.int16[_+2]=n,this.float32[A+2]=i,this.float32[A+3]=s,this.uint16[_+8]=a,this.uint16[_+9]=o,this.uint32[A+5]=l,this.uint32[A+6]=u,this.uint32[A+7]=c,this.uint16[_+16]=h,this.uint16[_+17]=p,this.uint16[_+18]=d,this.float32[A+10]=f,this.float32[A+11]=y,this.uint8[S+48]=m,this.uint8[S+49]=g,this.uint8[S+50]=x,this.uint32[A+13]=v,this.int16[_+28]=b,this.uint8[S+58]=w,t}}na.prototype.bytesPerElement=60,Ji(na,\"StructArrayLayout3i2f2ui3ul3ui2f3ub1ul1i1ub60\");class ia extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m,g,x,v,b,w,_,A,S,k,I,M,T,z){const B=this.length;return this.resize(B+1),this.emplace(B,t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m,g,x,v,b,w,_,A,S,k,I,M,T,z)}emplace(t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m,g,x,v,b,w,_,A,S,k,I,M,T,z,B){const E=38*t,C=19*t;return this.int16[E+0]=e,this.int16[E+1]=r,this.int16[E+2]=n,this.float32[C+2]=i,this.float32[C+3]=s,this.int16[E+8]=a,this.int16[E+9]=o,this.int16[E+10]=l,this.int16[E+11]=u,this.int16[E+12]=c,this.int16[E+13]=h,this.uint16[E+14]=p,this.uint16[E+15]=d,this.uint16[E+16]=f,this.uint16[E+17]=y,this.uint16[E+18]=m,this.uint16[E+19]=g,this.uint16[E+20]=x,this.uint16[E+21]=v,this.uint16[E+22]=b,this.uint16[E+23]=w,this.uint16[E+24]=_,this.uint16[E+25]=A,this.uint16[E+26]=S,this.uint16[E+27]=k,this.uint16[E+28]=I,this.uint32[C+15]=M,this.float32[C+16]=T,this.float32[C+17]=z,this.float32[C+18]=B,t}}ia.prototype.bytesPerElement=76,Ji(ia,\"StructArrayLayout3i2f6i15ui1ul3f76\");class sa extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.float32[1*t+0]=e,t}}sa.prototype.bytesPerElement=4,Ji(sa,\"StructArrayLayout1f4\");class aa extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,n,i){const s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,n,i)}emplace(t,e,r,n,i,s){const a=5*t;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=n,this.float32[a+3]=i,this.float32[a+4]=s,t}}aa.prototype.bytesPerElement=20,Ji(aa,\"StructArrayLayout5f20\");class oa extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,n){const i=this.length;return this.resize(i+1),this.emplace(i,t,e,r,n)}emplace(t,e,r,n,i){const s=6*t;return this.uint32[3*t+0]=e,this.uint16[s+2]=r,this.uint16[s+3]=n,this.uint16[s+4]=i,t}}oa.prototype.bytesPerElement=12,Ji(oa,\"StructArrayLayout1ul3ui12\");class la extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.uint16[n+0]=e,this.uint16[n+1]=r,t}}la.prototype.bytesPerElement=4,Ji(la,\"StructArrayLayout2ui4\");class ua extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint16[1*t+0]=e,t}}ua.prototype.bytesPerElement=2,Ji(ua,\"StructArrayLayout1ui2\");class ca extends Fs{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e){const r=this.length;return this.resize(r+1),this.emplace(r,t,e)}emplace(t,e,r){const n=2*t;return this.float32[n+0]=e,this.float32[n+1]=r,t}}ca.prototype.bytesPerElement=8,Ji(ca,\"StructArrayLayout2f8\");class ha extends Ls{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.int16[this._pos2+3]}get tileAnchorY(){return this._structArray.int16[this._pos2+4]}get x1(){return this._structArray.float32[this._pos4+3]}get y1(){return this._structArray.float32[this._pos4+4]}get x2(){return this._structArray.float32[this._pos4+5]}get y2(){return this._structArray.float32[this._pos4+6]}get padding(){return this._structArray.int16[this._pos2+14]}get featureIndex(){return this._structArray.uint32[this._pos4+8]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+18]}get bucketIndex(){return this._structArray.uint16[this._pos2+19]}}ha.prototype.size=40;class pa extends Ys{get(t){return new ha(this,t)}}Ji(pa,\"CollisionBoxArray\");class da extends Ls{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+8]}get numGlyphs(){return this._structArray.uint16[this._pos2+9]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+5]}get lineStartIndex(){return this._structArray.uint32[this._pos4+6]}get lineLength(){return this._structArray.uint32[this._pos4+7]}get segment(){return this._structArray.uint16[this._pos2+16]}get lowerSize(){return this._structArray.uint16[this._pos2+17]}get upperSize(){return this._structArray.uint16[this._pos2+18]}get lineOffsetX(){return this._structArray.float32[this._pos4+10]}get lineOffsetY(){return this._structArray.float32[this._pos4+11]}get writingMode(){return this._structArray.uint8[this._pos1+48]}get placedOrientation(){return this._structArray.uint8[this._pos1+49]}set placedOrientation(t){this._structArray.uint8[this._pos1+49]=t;}get hidden(){return this._structArray.uint8[this._pos1+50]}set hidden(t){this._structArray.uint8[this._pos1+50]=t;}get crossTileID(){return this._structArray.uint32[this._pos4+13]}set crossTileID(t){this._structArray.uint32[this._pos4+13]=t;}get associatedIconIndex(){return this._structArray.int16[this._pos2+28]}get flipState(){return this._structArray.uint8[this._pos1+58]}set flipState(t){this._structArray.uint8[this._pos1+58]=t;}}da.prototype.size=60;class fa extends na{get(t){return new da(this,t)}}Ji(fa,\"PlacedSymbolArray\");class ya extends Ls{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+8]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+9]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+10]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+11]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+12]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+13]}get key(){return this._structArray.uint16[this._pos2+14]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+17]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+18]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+19]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+20]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+21]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+22]}get featureIndex(){return this._structArray.uint16[this._pos2+23]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+24]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+25]}get numIconVertices(){return this._structArray.uint16[this._pos2+26]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+27]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+28]}get crossTileID(){return this._structArray.uint32[this._pos4+15]}set crossTileID(t){this._structArray.uint32[this._pos4+15]=t;}get textOffset0(){return this._structArray.float32[this._pos4+16]}get textOffset1(){return this._structArray.float32[this._pos4+17]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+18]}}ya.prototype.size=76;class ma extends ia{get(t){return new ya(this,t)}}Ji(ma,\"SymbolInstanceArray\");class ga extends sa{getoffsetX(t){return this.float32[1*t+0]}}Ji(ga,\"GlyphOffsetArray\");class xa extends $s{getx(t){return this.int16[2*t+0]}gety(t){return this.int16[2*t+1]}}Ji(xa,\"SymbolLineVertexArray\");class va extends Ls{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}get layoutVertexArrayOffset(){return this._structArray.uint16[this._pos2+4]}}va.prototype.size=12;class ba extends oa{get(t){return new va(this,t)}}Ji(ba,\"FeatureIndexArray\");class wa extends la{geta_centroid_pos0(t){return this.uint16[2*t+0]}geta_centroid_pos1(t){return this.uint16[2*t+1]}}Ji(wa,\"FillExtrusionCentroidArray\");const _a=Rs([{name:\"a_pattern\",components:4,type:\"Uint16\"},{name:\"a_pixel_ratio\",components:1,type:\"Float32\"}]),Aa=Rs([{name:\"a_dash\",components:4,type:\"Uint16\"}]);var Sa={exports:{}},ka={exports:{}};ka.exports=function(t,e){var r,n,i,s,a,o,l,u;for(n=t.length-(r=3&t.length),i=e,a=3432918353,o=461845907,u=0;u>>16)*a&65535)<<16)&4294967295)<<15|l>>>17))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<13|i>>>19))+((5*(i>>>16)&65535)<<16)&4294967295))+((58964+(s>>>16)&65535)<<16);switch(l=0,r){case 3:l^=(255&t.charCodeAt(u+2))<<16;case 2:l^=(255&t.charCodeAt(u+1))<<8;case 1:i^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(u)))*a+(((l>>>16)*a&65535)<<16)&4294967295)<<15|l>>>17))*o+(((l>>>16)*o&65535)<<16)&4294967295;}return i^=t.length,i=2246822507*(65535&(i^=i>>>16))+((2246822507*(i>>>16)&65535)<<16)&4294967295,i=3266489909*(65535&(i^=i>>>13))+((3266489909*(i>>>16)&65535)<<16)&4294967295,(i^=i>>>16)>>>0};var Ia=ka.exports,Ma={exports:{}};Ma.exports=function(t,e){for(var r,n=t.length,i=e^n,s=0;n>=4;)r=1540483477*(65535&(r=255&t.charCodeAt(s)|(255&t.charCodeAt(++s))<<8|(255&t.charCodeAt(++s))<<16|(255&t.charCodeAt(++s))<<24))+((1540483477*(r>>>16)&65535)<<16),i=1540483477*(65535&i)+((1540483477*(i>>>16)&65535)<<16)^(r=1540483477*(65535&(r^=r>>>24))+((1540483477*(r>>>16)&65535)<<16)),n-=4,++s;switch(n){case 3:i^=(255&t.charCodeAt(s+2))<<16;case 2:i^=(255&t.charCodeAt(s+1))<<8;case 1:i=1540483477*(65535&(i^=255&t.charCodeAt(s)))+((1540483477*(i>>>16)&65535)<<16);}return i=1540483477*(65535&(i^=i>>>13))+((1540483477*(i>>>16)&65535)<<16),(i^=i>>>15)>>>0};var Ta=Ia,za=Ma.exports;Sa.exports=Ta,Sa.exports.murmur3=Ta,Sa.exports.murmur2=za;var Ba=p(Sa.exports);class Ea{constructor(){this.ids=[],this.positions=[],this.indexed=!1;}add(t,e,r,n){this.ids.push(Ca(t)),this.positions.push(e,r,n);}getPositions(t){const e=Ca(t);let r=0,n=this.ids.length-1;for(;r>1;this.ids[t]>=e?n=t:r=t+1;}const i=[];for(;this.ids[r]===e;)i.push({index:this.positions[3*r],start:this.positions[3*r+1],end:this.positions[3*r+2]}),r++;return i}static serialize(t,e){const r=new Float64Array(t.ids),n=new Uint32Array(t.positions);return Pa(r,n,0,r.length-1),e&&e.push(r.buffer,n.buffer),{ids:r,positions:n}}static deserialize(t){const e=new Ea;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e}}function Ca(t){const e=+t;return !isNaN(e)&&Number.MIN_SAFE_INTEGER<=e&&e<=Number.MAX_SAFE_INTEGER?e:Ba(String(t))}function Pa(t,e,r,n){for(;r>1];let s=r-1,a=n+1;for(;;){do{s++;}while(t[s]i);if(s>=a)break;Da(t,s,a),Da(e,3*s,3*a),Da(e,3*s+1,3*a+1),Da(e,3*s+2,3*a+2);}a-r`u_${t}`)),this.type=r;}setUniform(t,e,r,n,i){e.set(t,i,n.constantOr(this.value));}getBinding(t,e){return \"color\"===this.type?new Ra(t):new La(t)}}class Na{constructor(t,e){this.uniformNames=e.map((t=>`u_${t}`)),this.pattern=null,this.pixelRatio=1;}setConstantPatternPositions(t){this.pixelRatio=t.pixelRatio||1,this.pattern=t.tl.concat(t.br);}setUniform(t,e,r,n,i){const s=\"u_pattern\"===i||\"u_dash\"===i?this.pattern:\"u_pixel_ratio\"===i?this.pixelRatio:null;s&&e.set(t,i,s);}getBinding(t,e){return \"u_pattern\"===e||\"u_dash\"===e?new Fa(t):new La(t)}}class Ga{constructor(t,e,r,n){this.expression=t,this.type=r,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:\"Float32\",components:\"color\"===r?2:1,offset:0}))),this.paintVertexArray=new n;}populatePaintArray(t,e,r,n,i,s){const a=this.paintVertexArray.length,o=this.expression.evaluate(new ws(0),e,{},i,n,s);this.paintVertexArray.resize(t),this._setPaintValue(a,t,o);}updatePaintArray(t,e,r,n,i){const s=this.expression.evaluate({zoom:0},r,n,void 0,i);this._setPaintValue(t,e,s);}_setPaintValue(t,e,r){if(\"color\"===this.type){const n=Oa(r);for(let r=t;r`u_${t}_t`)),this.type=r,this.useIntegerZoom=n,this.zoom=i,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:\"Float32\",components:\"color\"===r?4:2,offset:0}))),this.paintVertexArray=new s;}populatePaintArray(t,e,r,n,i,s){const a=this.expression.evaluate(new ws(this.zoom),e,{},i,n,s),o=this.expression.evaluate(new ws(this.zoom+1),e,{},i,n,s),l=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(l,t,a,o);}updatePaintArray(t,e,r,n,i){const s=this.expression.evaluate({zoom:this.zoom},r,n,void 0,i),a=this.expression.evaluate({zoom:this.zoom+1},r,n,void 0,i);this._setPaintValue(t,e,s,a);}_setPaintValue(t,e,r,n){if(\"color\"===this.type){const i=Oa(r),s=Oa(n);for(let r=t;r!0)){this.binders={},this._buffers=[];const n=[];for(const i in t.paint._values){if(!r(i))continue;const s=t.paint.get(i);if(!(s instanceof Ts&&Ln(s.property.specification)))continue;const a=Ya(i,t.type),o=s.value,l=s.property.specification.type,u=!!s.property.useIntegerZoom,c=\"line-dasharray\"===i||i.endsWith(\"pattern\"),h=\"line-dasharray\"===i&&\"constant\"!==t.layout.get(\"line-cap\").value.kind;if(\"constant\"!==o.kind||h)if(\"source\"===o.kind||h||c){const e=to(i,l,\"source\");this.binders[i]=c?new Ka(o,a,l,e,t.id):new Ga(o,a,l,e),n.push(`/a_${i}`);}else {const t=to(i,l,\"composite\");this.binders[i]=new Za(o,a,l,u,e,t),n.push(`/z_${i}`);}else this.binders[i]=c?new Na(o.value,a):new qa(o.value,a,l),n.push(`/u_${i}`);}this.cacheKey=n.sort().join(\"\");}getMaxValue(t){const e=this.binders[t];return e instanceof Ga||e instanceof Za?e.maxValue:0}populatePaintArrays(t,e,r,n,i,s){for(const a in this.binders){const o=this.binders[a];(o instanceof Ga||o instanceof Za||o instanceof Ka)&&o.populatePaintArray(t,e,r,n,i,s);}}setConstantPatternPositions(t){for(const e in this.binders){const r=this.binders[e];r instanceof Na&&r.setConstantPatternPositions(t);}}updatePaintArrays(t,e,r,n,i,s){let a=!1;for(const o in t){const l=e.getPositions(o);for(const e of l){const l=r.feature(e.index);for(const r in this.binders){const u=this.binders[r];if((u instanceof Ga||u instanceof Za||u instanceof Ka)&&!0===u.expression.isStateDependent){const c=n.paint.get(r);u.expression=c.value,u.updatePaintArray(e.start,e.end,l,t[o],i,s),a=!0;}}}}return a}defines(){const t=[];for(const e in this.binders){const r=this.binders[e];(r instanceof qa||r instanceof Na)&&t.push(...r.uniformNames.map((t=>`#define HAS_UNIFORM_${t}`)));}return t}getBinderAttributes(){const t=[];for(const e in this.binders){const r=this.binders[e];if(r instanceof Ga||r instanceof Za||r instanceof Ka)for(let e=0;e!0)){this.programConfigurations={};for(const n of t)this.programConfigurations[n.id]=new Xa(n,e,r);this.needsUpload=!1,this._featureMap=new Ea,this._bufferOffset=0;}populatePaintArrays(t,e,r,n,i,s,a){for(const r in this.programConfigurations)this.programConfigurations[r].populatePaintArrays(t,e,n,i,s,a);void 0!==e.id&&this._featureMap.add(e.id,r,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0;}updatePaintArrays(t,e,r,n,i){for(const s of r)this.needsUpload=this.programConfigurations[s.id].updatePaintArrays(t,this._featureMap,e,s,n,i)||this.needsUpload;}get(t){return this.programConfigurations[t]}upload(t){if(this.needsUpload){for(const e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1;}}destroy(){for(const t in this.programConfigurations)this.programConfigurations[t].destroy();}}const Ha={\"text-opacity\":[\"opacity\"],\"icon-opacity\":[\"opacity\"],\"text-color\":[\"fill_color\"],\"icon-color\":[\"fill_color\"],\"text-halo-color\":[\"halo_color\"],\"icon-halo-color\":[\"halo_color\"],\"text-halo-blur\":[\"halo_blur\"],\"icon-halo-blur\":[\"halo_blur\"],\"text-halo-width\":[\"halo_width\"],\"icon-halo-width\":[\"halo_width\"],\"line-gap-width\":[\"gapwidth\"],\"line-pattern\":[\"pattern\",\"pixel_ratio\"],\"fill-pattern\":[\"pattern\",\"pixel_ratio\"],\"fill-extrusion-pattern\":[\"pattern\",\"pixel_ratio\"],\"line-dasharray\":[\"dash\"]};function Ya(t,e){return Ha[t]||[t.replace(`${e}-`,\"\").replace(/-/g,\"_\")]}const Wa={\"line-pattern\":{source:Gs,composite:Gs},\"fill-pattern\":{source:Gs,composite:Gs},\"fill-extrusion-pattern\":{source:Gs,composite:Gs},\"line-dasharray\":{source:Zs,composite:Zs}},Qa={color:{source:ca,composite:Ns},number:{source:sa,composite:ca}};function to(t,e,r){const n=Wa[t];return n&&n[r]||Qa[e][r]}Ji(qa,\"ConstantBinder\"),Ji(Na,\"PatternConstantBinder\"),Ji(Ga,\"SourceExpressionBinder\"),Ji(Ka,\"PatternCompositeBinder\"),Ji(Za,\"CompositeExpressionBinder\"),Ji(Xa,\"ProgramConfiguration\",{omit:[\"_buffers\"]}),Ji(Ja,\"ProgramConfigurationSet\");const eo=\"-transition\";class ro extends Qt{constructor(t,e){if(super(),this.id=t.id,this.type=t.type,this._featureFilter={filter:()=>!0,needGeometry:!1,needFeature:!1},this._filterCompiled=!1,\"custom\"!==t.type&&(this.metadata=t.metadata,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,\"background\"!==t.type&&\"sky\"!==t.type&&(this.source=t.source,this.sourceLayer=t[\"source-layer\"],this.filter=t.filter),e.layout&&(this._unevaluatedLayout=new Ms(e.layout)),e.paint)){this._transitionablePaint=new Ss(e.paint);for(const e in t.paint)this.setPaintProperty(e,t.paint[e],{validate:!1});for(const e in t.layout)this.setLayoutProperty(e,t.layout[e],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new zs(e.paint);}}getLayoutProperty(t){return \"visibility\"===t?this.visibility:this._unevaluatedLayout.getValue(t)}setLayoutProperty(t,e,r={}){null!=e&&this._validate(ji,`layers.${this.id}.layout.${t}`,t,e,r)||(\"visibility\"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e);}getPaintProperty(t){return U(t,eo)?this._transitionablePaint.getTransition(t.slice(0,-11)):this._transitionablePaint.getValue(t)}setPaintProperty(t,e,r={}){if(null!=e&&this._validate($i,`layers.${this.id}.paint.${t}`,t,e,r))return !1;if(U(t,eo))return this._transitionablePaint.setTransition(t.slice(0,-11),e||void 0),!1;{const r=this._transitionablePaint._values[t],n=r.value.isDataDriven(),i=r.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);const s=this._transitionablePaint._values[t].value,a=s.isDataDriven(),o=U(t,\"pattern\")||\"line-dasharray\"===t;return a||n||o||this._handleOverridablePaintPropertyUpdate(t,i,s)}}_handleSpecialPaintPropertyUpdate(t){}getProgramIds(){return null}getProgramConfiguration(t){return null}_handleOverridablePaintPropertyUpdate(t,e,r){return !1}isHidden(t){return !!(this.minzoom&&t=this.maxzoom)||\"none\"===this.visibility}updateTransitions(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint);}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(t,e){this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e);}serialize(){const t={id:this.id,type:this.type,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),j(t,((t,e)=>!(void 0===t||\"layout\"===e&&!Object.keys(t).length||\"paint\"===e&&!Object.keys(t).length)))}_validate(t,e,r,n,i={}){return (!i||!1!==i.validate)&&qi(this,t.call(Ui,{key:e,layerType:this.type,objectKey:r,value:n,styleSpec:te,style:{glyphs:!0,sprite:!0}}))}is3D(){return !1}isSky(){return !1}isTileClipped(){return !1}hasOffscreenPass(){return !1}resize(){}isStateDependent(){for(const t in this.paint._values){const e=this.paint.get(t);if(e instanceof Ts&&Ln(e.property.specification)&&(\"source\"===e.value.kind||\"composite\"===e.value.kind)&&e.value.isStateDependent)return !0}return !1}compileFilter(){this._filterCompiled||(this._featureFilter=hi(this.filter),this._filterCompiled=!0);}invalidateCompiledFilter(){this._filterCompiled=!1;}dynamicFilter(){return this._featureFilter.dynamicFilter}dynamicFilterNeedsFeature(){return this._featureFilter.needFeature}}const no=Rs([{name:\"a_pos\",components:2,type:\"Int16\"}],4),io=Rs([{name:\"a_pos_3\",components:3,type:\"Int16\"},{name:\"a_pos_normal_3\",components:3,type:\"Int16\"}]);class so{constructor(t=[]){this.segments=t;}prepareSegment(t,e,r,n){let i=this.segments[this.segments.length-1];return t>so.MAX_VERTEX_ARRAY_LENGTH&&N(`Max vertices per segment is ${so.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${t}`),(!i||i.vertexLength+t>so.MAX_VERTEX_ARRAY_LENGTH||i.sortKey!==n)&&(i={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0},void 0!==n&&(i.sortKey=n),this.segments.push(i)),i}get(){return this.segments}destroy(){for(const t of this.segments)for(const e in t.vaos)t.vaos[e].destroy();}static simpleSegment(t,e,r,n){return new so([{vertexOffset:t,primitiveOffset:e,vertexLength:r,primitiveLength:n,vaos:{},sortKey:0}])}}so.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Ji(so,\"SegmentVector\");var ao=8192;class oo{constructor(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]));}setNorthEast(t){return this._ne=t instanceof Ol?new Ol(t.lng,t.lat):Ol.convert(t),this}setSouthWest(t){return this._sw=t instanceof Ol?new Ol(t.lng,t.lat):Ol.convert(t),this}extend(t){const e=this._sw,r=this._ne;let n,i;if(t instanceof Ol)n=t,i=t;else {if(!(t instanceof oo))return Array.isArray(t)?4===t.length||t.every(Array.isArray)?this.extend(oo.convert(t)):this.extend(Ol.convert(t)):\"object\"==typeof t&&null!==t&&t.hasOwnProperty(\"lat\")&&(t.hasOwnProperty(\"lon\")||t.hasOwnProperty(\"lng\"))?this.extend(Ol.convert(t)):this;if(n=t._sw,i=t._ne,!n||!i)return this}return e||r?(e.lng=Math.min(n.lng,e.lng),e.lat=Math.min(n.lat,e.lat),r.lng=Math.max(i.lng,r.lng),r.lat=Math.max(i.lat,r.lat)):(this._sw=new Ol(n.lng,n.lat),this._ne=new Ol(i.lng,i.lat)),this}getCenter(){return new Ol((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new Ol(this.getWest(),this.getNorth())}getSouthEast(){return new Ol(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return [this._sw.toArray(),this._ne.toArray()]}toString(){return `LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return !(this._sw&&this._ne)}contains(t){const{lng:e,lat:r}=Ol.convert(t);let n=this._sw.lng<=e&&e<=this._ne.lng;return this._sw.lng>this._ne.lng&&(n=this._sw.lng>=e&&e>=this._ne.lng),this._sw.lat<=r&&r<=this._ne.lat&&n}static convert(t){return !t||t instanceof oo?t:new oo(t)}}var lo=1e-6,uo=\"undefined\"!=typeof Float32Array?Float32Array:Array;function co(){var t=new uo(9);return uo!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t}function ho(t,e,r){var n=e[0],i=e[1],s=e[2],a=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],p=r[0],d=r[1],f=r[2],y=r[3],m=r[4],g=r[5],x=r[6],v=r[7],b=r[8];return t[0]=p*n+d*a+f*u,t[1]=p*i+d*o+f*c,t[2]=p*s+d*l+f*h,t[3]=y*n+m*a+g*u,t[4]=y*i+m*o+g*c,t[5]=y*s+m*l+g*h,t[6]=x*n+v*a+b*u,t[7]=x*i+v*o+b*c,t[8]=x*s+v*l+b*h,t}function po(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function fo(t,e){var r=e[0],n=e[1],i=e[2],s=e[3],a=e[4],o=e[5],l=e[6],u=e[7],c=e[8],h=e[9],p=e[10],d=e[11],f=e[12],y=e[13],m=e[14],g=e[15],x=r*o-n*a,v=r*l-i*a,b=r*u-s*a,w=n*l-i*o,_=n*u-s*o,A=i*u-s*l,S=c*y-h*f,k=c*m-p*f,I=c*g-d*f,M=h*m-p*y,T=h*g-d*y,z=p*g-d*m,B=x*z-v*T+b*M+w*I-_*k+A*S;return B?(t[0]=(o*z-l*T+u*M)*(B=1/B),t[1]=(i*T-n*z-s*M)*B,t[2]=(y*A-m*_+g*w)*B,t[3]=(p*_-h*A-d*w)*B,t[4]=(l*I-a*z-u*k)*B,t[5]=(r*z-i*I+s*k)*B,t[6]=(m*b-f*A-g*v)*B,t[7]=(c*A-p*b+d*v)*B,t[8]=(a*T-o*I+u*S)*B,t[9]=(n*I-r*T-s*S)*B,t[10]=(f*_-y*b+g*x)*B,t[11]=(h*b-c*_-d*x)*B,t[12]=(o*k-a*M-l*S)*B,t[13]=(r*M-n*k+i*S)*B,t[14]=(y*v-f*w-m*x)*B,t[15]=(c*w-h*v+p*x)*B,t):null}function yo(t,e,r){var n=e[0],i=e[1],s=e[2],a=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],p=e[9],d=e[10],f=e[11],y=e[12],m=e[13],g=e[14],x=e[15],v=r[0],b=r[1],w=r[2],_=r[3];return t[0]=v*n+b*o+w*h+_*y,t[1]=v*i+b*l+w*p+_*m,t[2]=v*s+b*u+w*d+_*g,t[3]=v*a+b*c+w*f+_*x,t[4]=(v=r[4])*n+(b=r[5])*o+(w=r[6])*h+(_=r[7])*y,t[5]=v*i+b*l+w*p+_*m,t[6]=v*s+b*u+w*d+_*g,t[7]=v*a+b*c+w*f+_*x,t[8]=(v=r[8])*n+(b=r[9])*o+(w=r[10])*h+(_=r[11])*y,t[9]=v*i+b*l+w*p+_*m,t[10]=v*s+b*u+w*d+_*g,t[11]=v*a+b*c+w*f+_*x,t[12]=(v=r[12])*n+(b=r[13])*o+(w=r[14])*h+(_=r[15])*y,t[13]=v*i+b*l+w*p+_*m,t[14]=v*s+b*u+w*d+_*g,t[15]=v*a+b*c+w*f+_*x,t}function mo(t,e,r){var n,i,s,a,o,l,u,c,h,p,d,f,y=r[0],m=r[1],g=r[2];return e===t?(t[12]=e[0]*y+e[4]*m+e[8]*g+e[12],t[13]=e[1]*y+e[5]*m+e[9]*g+e[13],t[14]=e[2]*y+e[6]*m+e[10]*g+e[14],t[15]=e[3]*y+e[7]*m+e[11]*g+e[15]):(i=e[1],s=e[2],a=e[3],o=e[4],l=e[5],u=e[6],c=e[7],h=e[8],p=e[9],d=e[10],f=e[11],t[0]=n=e[0],t[1]=i,t[2]=s,t[3]=a,t[4]=o,t[5]=l,t[6]=u,t[7]=c,t[8]=h,t[9]=p,t[10]=d,t[11]=f,t[12]=n*y+o*m+h*g+e[12],t[13]=i*y+l*m+p*g+e[13],t[14]=s*y+u*m+d*g+e[14],t[15]=a*y+c*m+f*g+e[15]),t}function go(t,e,r){var n=r[0],i=r[1],s=r[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*i,t[5]=e[5]*i,t[6]=e[6]*i,t[7]=e[7]*i,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function xo(t,e,r){var n=Math.sin(r),i=Math.cos(r),s=e[4],a=e[5],o=e[6],l=e[7],u=e[8],c=e[9],h=e[10],p=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=s*i+u*n,t[5]=a*i+c*n,t[6]=o*i+h*n,t[7]=l*i+p*n,t[8]=u*i-s*n,t[9]=c*i-a*n,t[10]=h*i-o*n,t[11]=p*i-l*n,t}function vo(t,e,r){var n=Math.sin(r),i=Math.cos(r),s=e[0],a=e[1],o=e[2],l=e[3],u=e[8],c=e[9],h=e[10],p=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*i-u*n,t[1]=a*i-c*n,t[2]=o*i-h*n,t[3]=l*i-p*n,t[8]=s*n+u*i,t[9]=a*n+c*i,t[10]=o*n+h*i,t[11]=l*n+p*i,t}function bo(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function wo(t,e,r){var n,i,s,a=r[0],o=r[1],l=r[2],u=Math.hypot(a,o,l);return u0&&(s=1/Math.sqrt(s)),t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t}function Vo(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function Lo(t,e,r){var n=e[0],i=e[1],s=e[2],a=r[0],o=r[1],l=r[2];return t[0]=i*l-s*o,t[1]=s*a-n*l,t[2]=n*o-i*a,t}function Fo(t,e,r){var n=e[0],i=e[1],s=e[2],a=r[3]*n+r[7]*i+r[11]*s+r[15];return t[0]=(r[0]*n+r[4]*i+r[8]*s+r[12])/(a=a||1),t[1]=(r[1]*n+r[5]*i+r[9]*s+r[13])/a,t[2]=(r[2]*n+r[6]*i+r[10]*s+r[14])/a,t}function Ro(t,e,r){var n=r[0],i=r[1],s=r[2],a=e[0],o=e[1],l=e[2],u=i*l-s*o,c=s*a-n*l,h=n*o-i*a,p=i*h-s*c,d=s*u-n*h,f=n*c-i*u,y=2*r[3];return c*=y,h*=y,d*=2,f*=2,t[0]=a+(u*=y)+(p*=2),t[1]=o+c+d,t[2]=l+h+f,t}var Uo,$o=To,jo=zo,Oo=ko;function qo(t,e,r){return t[0]=e[0]*r,t[1]=e[1]*r,t[2]=e[2]*r,t[3]=e[3]*r,t}function No(t,e){var r=e[0],n=e[1],i=e[2],s=e[3],a=r*r+n*n+i*i+s*s;return a>0&&(a=1/Math.sqrt(a)),t[0]=r*a,t[1]=n*a,t[2]=i*a,t[3]=s*a,t}function Go(t,e,r){var n=e[0],i=e[1],s=e[2],a=e[3];return t[0]=r[0]*n+r[4]*i+r[8]*s+r[12]*a,t[1]=r[1]*n+r[5]*i+r[9]*s+r[13]*a,t[2]=r[2]*n+r[6]*i+r[10]*s+r[14]*a,t[3]=r[3]*n+r[7]*i+r[11]*s+r[15]*a,t}function Zo(){var t=new uo(4);return uo!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function Ko(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function Xo(t,e,r){r*=.5;var n=e[0],i=e[1],s=e[2],a=e[3],o=Math.sin(r),l=Math.cos(r);return t[0]=n*l+a*o,t[1]=i*l+s*o,t[2]=s*l-i*o,t[3]=a*l-n*o,t}function Jo(t,e,r){r*=.5;var n=e[0],i=e[1],s=e[2],a=e[3],o=Math.sin(r),l=Math.cos(r);return t[0]=n*l-s*o,t[1]=i*l+a*o,t[2]=s*l+n*o,t[3]=a*l-i*o,t}Ao(),Uo=new uo(4),uo!=Float32Array&&(Uo[0]=0,Uo[1]=0,Uo[2]=0,Uo[3]=0);var Ho=No;Ao(),Io(1,0,0),Io(0,1,0),Zo(),Zo(),co();const Yo=Rs([{type:\"Float32\",name:\"a_globe_pos\",components:3},{type:\"Float32\",name:\"a_uv\",components:2}]),{members:Wo}=Yo,Qo=Rs([{name:\"a_pos_3\",components:3,type:\"Int16\"}]);var tl=Rs([{name:\"a_pos\",type:\"Int16\",components:2}]);class el{constructor(t,e){this.pos=t,this.dir=e;}intersectsPlane(t,e,r){const n=Vo(e,this.dir);if(Math.abs(n)<1e-6)return !1;const i=((t[0]-this.pos[0])*e[0]+(t[1]-this.pos[1])*e[1]+(t[2]-this.pos[2])*e[2])/n;return r[0]=this.pos[0]+this.dir[0]*i,r[1]=this.pos[1]+this.dir[1]*i,r[2]=this.pos[2]+this.dir[2]*i,!0}closestPointOnSphere(t,e,r){if(function(t,e){var r=t[0],n=t[1],i=t[2],s=e[0],a=e[1],o=e[2];return Math.abs(r-s)<=lo*Math.max(1,Math.abs(r),Math.abs(s))&&Math.abs(n-a)<=lo*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(i-o)<=lo*Math.max(1,Math.abs(i),Math.abs(o))}(this.pos,t)||0===e)return r[0]=r[1]=r[2]=0,!1;const[n,i,s]=this.dir,a=this.pos[0]-t[0],o=this.pos[1]-t[1],l=this.pos[2]-t[2],u=n*n+i*i+s*s,c=2*(a*n+o*i+l*s),h=c*c-4*u*(a*a+o*o+l*l-e*e);if(h<0){const t=Math.max(-c/2,0),u=a+n*t,h=o+i*t,p=l+s*t,d=Math.hypot(u,h,p);return r[0]=u*e/d,r[1]=h*e/d,r[2]=p*e/d,!1}{const t=(-c-Math.sqrt(h))/(2*u);if(t<0){const t=Math.hypot(a,o,l);return r[0]=a*e/t,r[1]=o*e/t,r[2]=l*e/t,!1}return r[0]=a+n*t,r[1]=o+i*t,r[2]=l+s*t,!0}}}class rl{constructor(t,e,r,n,i){this.TL=t,this.TR=e,this.BR=r,this.BL=n,this.horizon=i;}static fromInvProjectionMatrix(t,e,r){const n=[-1,1,1],i=[1,1,1],s=[1,-1,1],a=[-1,-1,1],o=Fo(n,n,t),l=Fo(i,i,t),u=Fo(s,s,t),c=Fo(a,a,t);return new rl(o,l,u,c,e/r)}}class nl{constructor(t,e){this.points=t,this.planes=e;}static fromInvProjectionMatrix(t,e,r,n){const i=Math.pow(2,r),s=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((r=>{const s=Go([],r,t),a=1/s[3]/e*i;return function(t,e,r){return t[0]=e[0]*r[0],t[1]=e[1]*r[1],t[2]=e[2]*r[2],t[3]=e[3]*r[3],t}(s,s,[a,a,n?1/s[3]:a,a])})),a=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((t=>{const e=Do([],Lo([],$o([],s[t[0]],s[t[1]]),$o([],s[t[2]],s[t[1]]))),r=-Vo(e,s[t[1]]);return e.concat(r)}));return new nl(s,a)}}class il{static fromPoints(t){const e=[1/0,1/0,1/0],r=[-1/0,-1/0,-1/0];for(const n of t)Bo(e,e,n),Eo(r,r,n);return new il(e,r)}static applyTransform(t,e){const r=t.getCorners();for(let t=0;t=0;if(0===s)return 0;s!==e.length&&(r=!1);}if(r)return 2;for(let e=0;e<3;e++){let r=Number.MAX_VALUE,n=-Number.MAX_VALUE;for(let i=0;ithis.max[e]-this.min[e])return 0}return 1}}const sl=5,al=6,ol=ao/Math.PI/2,ll=16383,ul=64,cl=[ul,32,16],hl=-ol,pl=ol,dl=[new il([hl,hl,hl],[pl,pl,pl]),new il([hl,hl,hl],[0,0,pl]),new il([0,hl,hl],[pl,0,pl]),new il([hl,0,hl],[0,pl,pl]),new il([0,0,hl],[pl,pl,pl])];function fl(t){return t*ol/Ul}function yl(t,e,r,n=!0){const i=Co([],t._camera.position,t.worldSize),s=[e,r,1,1];Go(s,s,t.pixelMatrixInverse),qo(s,s,1/s[3]);const a=Do([],$o([],s,i)),o=t.globeMatrix,l=[o[12],o[13],o[14]],u=$o([],l,i),c=ko(u),h=Do([],u),p=t.worldSize/(2*Math.PI),d=Vo(h,a),f=Math.asin(p/c);if(f1?null:function(t,e,r,n){const i=Math.sin(r);return t*(Math.sin((1-n)*r)/i)+e*(Math.sin(n*r)/i)}(t.a[e],t.b[e],t.angle,M(r,0,1))+t.center[e]}function xl(t){if(t.z<=1)return dl[t.z+2*t.y+t.x];const e=Sl(Al(t));return il.fromPoints(e)}function vl(t,e,r){return Co(t,t,1-r),Po(t,t,e,r)}function bl(t,e){const r=Pl(e.zoom);if(0===r)return xl(t);const n=Al(t),i=Sl(n),s=Nl(n.getWest())*e.worldSize,a=Nl(n.getEast())*e.worldSize,o=Gl(n.getNorth())*e.worldSize,l=Gl(n.getSouth())*e.worldSize,u=[s,o,0],c=[a,o,0],h=[s,l,0],p=[a,l,0],d=fo([],e.globeMatrix);return Fo(u,u,d),Fo(c,c,d),Fo(h,h,d),Fo(p,p,d),i[0]=vl(i[0],h,r),i[1]=vl(i[1],p,r),i[2]=vl(i[2],c,r),i[3]=vl(i[3],u,r),il.fromPoints(i)}function wl(t,e,r){for(const n of t)Fo(n,n,e),Co(n,n,r);}function _l(t,e,r){const n=e/t.worldSize,i=t.globeMatrix;if(r.z<=1){const t=xl(r).getCorners();return wl(t,i,n),il.fromPoints(t)}const s=Al(r),a=Sl(s);wl(a,i,n);const o=Number.MAX_VALUE,l=[-o,-o,-o],u=[o,o,o];if(s.contains(t.center)){for(const t of a)Bo(u,u,t),Eo(l,l,t);l[2]=0;const e=t.point,r=[e.x*n,e.y*n,0];return Bo(u,u,r),Eo(l,l,r),new il(u,l)}const c=[i[12]*n,i[13]*n,i[14]*n],h=s.getCenter(),p=M(t.center.lat,-Hl,Hl),d=M(h.lat,-Hl,Hl),f=Nl(t.center.lng),y=Gl(p);let m=f-Nl(h.lng);const g=y-Gl(d);m>.5?m-=1:m<-.5&&(m+=1);let x=0;Math.abs(m)>Math.abs(g)?x=m>=0?1:3:(x=g>=0?0:2,Po(c,c,[i[4]*n,i[5]*n,i[6]*n],-Math.sin(w(g>=0?s.getSouth():s.getNorth()))*ol));const v=a[x],b=a[(x+1)%4],_=new ml(v,b,c),A=[gl(_,0)||v[0],gl(_,1)||v[1],gl(_,2)||v[2]],S=Pl(t.zoom);if(S>0){const n=function({x:t,y:e,z:r},n,i,s,a){const o=1/(1<.5?p=-1:d<-.5&&(p=1),l=((l+p)*n-(s*=n))*i+s,u=((u+p)*n-s)*i+s,c=(c*n-(a*=n))*i+a,h=(h*n-a)*i+a,[[l,h,0],[u,h,0],[u,c,0],[l,c,0]]}(r,e,t._pixelsPerMercatorPixel,f,y);for(let t=0;tMath.PI/2*1.01}const Ll=w(85),Fl=Math.cos(Ll),Rl=Math.sin(Ll),Ul=6371008.8,$l=2*Math.PI*Ul;class jl{constructor(t,e){if(isNaN(t)||isNaN(e))throw new Error(`Invalid LngLat object: (${t}, ${e})`);if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")}wrap(){return new jl(z(this.lng,-180,180),this.lat)}toArray(){return [this.lng,this.lat]}toString(){return `LngLat(${this.lng}, ${this.lat})`}distanceTo(t){const e=Math.PI/180,r=this.lat*e,n=t.lat*e,i=Math.sin(r)*Math.sin(n)+Math.cos(r)*Math.cos(n)*Math.cos((t.lng-this.lng)*e);return Ul*Math.acos(Math.min(i,1))}toBounds(t=0){const e=360*t/40075017,r=e/Math.cos(Math.PI/180*this.lat);return new oo(new jl(this.lng-r,this.lat-e),new jl(this.lng+r,this.lat+e))}toEcef(t){const e=fl(t);return Il(this.lat,this.lng,ol+e)}static convert(t){if(t instanceof jl)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new jl(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&\"object\"==typeof t&&null!==t)return new jl(Number(\"lng\"in t?t.lng:t.lon),Number(t.lat));throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]\")}}var Ol=jl;function ql(t){return $l*Math.cos(t*Math.PI/180)}function Nl(t){return (180+t)/360}function Gl(t){return (180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function Zl(t,e){return t/ql(e)}function Kl(t){return 360*t-180}function Xl(t){return 360/Math.PI*Math.atan(Math.exp((180-360*t)*Math.PI/180))-90}function Jl(t,e){return t*ql(Xl(e))}const Hl=85.051129;function Yl(t){return 1/Math.cos(t*Math.PI/180)}class Wl{constructor(t,e,r=0){this.x=+t,this.y=+e,this.z=+r;}static fromLngLat(t,e=0){const r=Ol.convert(t);return new Wl(Nl(r.lng),Gl(r.lat),Zl(e,r.lat))}toLngLat(){return new Ol(Kl(this.x),Xl(this.y))}toAltitude(){return Jl(this.z,this.y)}meterInMercatorCoordinateUnits(){return 1/$l*Yl(Xl(this.y))}}function Ql(t,e,r,n,i,s,a,o,l){const u=(e+n)/2,c=(r+i)/2,h=new x(u,c);o(h),function(t,e,r,n,i,s){const a=r-i,o=n-s;return Math.abs((n-e)*a-(r-t)*o)/Math.hypot(a,o)}(h.x,h.y,s.x,s.y,a.x,a.y)>=l?(Ql(t,e,r,u,c,s,h,o,l),Ql(t,u,c,n,i,h,a,o,l)):t.push(a);}function tu(t,e,r){let n=t[0],i=n.x,s=n.y;e(n);const a=[n];for(let o=1;ot.x+1||nt.y+1)&&N(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\"),t}function au(t,e,r){const n=t.loadGeometry(),i=t.extent,s=ao/i;if(e&&r&&r.projection.isReprojectedInTileSpace){const s=1<{const r=Kl((e.x+t.x/i)/s),n=Xl((e.y+t.y/i)/s),c=u.project(r,n);t.x=(c.x*a-o)*i,t.y=(c.y*a-l)*i;};for(let e=0;e=i||r.y<0||r.y>=i||(c(r),t.push(r));n[e]=t;}}for(const t of n)for(const e of t)su(e,s);return n}function ou(t,e){return {type:t.type,id:t.id,properties:t.properties,geometry:e?au(t):[]}}function lu(t,e,r,n,i){t.emplaceBack(2*e+(n+1)/2,2*r+(i+1)/2);}function uu(t,e,r){const n=16384;t.emplaceBack(e.x,e.y,e.z,r[0]*n,r[1]*n,r[2]*n);}class cu{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.projection=t.projection,this.layoutVertexArray=new $s,this.indexArray=new ra,this.segments=new so,this.programConfigurations=new Ja(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id));}populate(t,e,r,n){const i=this.layers[0],s=[];let a=null;\"circle\"===i.type&&(a=i.layout.get(\"circle-sort-key\"));for(const{feature:e,id:i,index:o,sourceLayerIndex:l}of t){const t=this.layers[0]._featureFilter.needGeometry,u=ou(e,t);if(!this.layers[0]._featureFilter.filter(new ws(this.zoom),u,r))continue;const c=a?a.evaluate(u,{},r):void 0,h={id:i,properties:e.properties,type:e.type,sourceLayerIndex:l,index:o,geometry:t?u.geometry:au(e,r,n),patterns:{},sortKey:c};s.push(h);}a&&s.sort(((t,e)=>t.sortKey-e.sortKey));let o=null;\"globe\"===n.projection.name&&(this.globeExtVertexArray=new Ks,o=n.projection);for(const n of s){const{geometry:i,index:s,sourceLayerIndex:a}=n,l=t[s].feature;this.addFeature(n,i,s,e.availableImages,r,o),e.featureIndex.insert(l,i,s,a,this.index);}}update(t,e,r,n){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r,n);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,no.members),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.globeExtVertexArray&&(this.globeExtVertexBuffer=t.createVertexBuffer(this.globeExtVertexArray,io.members))),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy());}addFeature(t,e,r,n,i,s){for(const r of e)for(const e of r){const r=e.x,n=e.y;if(r<0||r>=ao||n<0||n>=ao)continue;if(s){const t=s.projectTilePoint(r,n,i),e=s.upVector(i,r,n),a=this.globeExtVertexArray;uu(a,t,e),uu(a,t,e),uu(a,t,e),uu(a,t,e);}const a=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),o=a.vertexLength;lu(this.layoutVertexArray,r,n,-1,-1),lu(this.layoutVertexArray,r,n,1,-1),lu(this.layoutVertexArray,r,n,1,1),lu(this.layoutVertexArray,r,n,-1,1),this.indexArray.emplaceBack(o,o+1,o+2),this.indexArray.emplaceBack(o,o+2,o+3),a.vertexLength+=4,a.primitiveLength+=2;}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{},n,i);}}function hu(t,e){for(let r=0;r1){if(yu(t,e))return !0;for(let n=0;n1?r:r.sub(e)._mult(i)._add(e))}function vu(t,e){let r,n,i,s=!1;for(let a=0;ae.y!=i.y>e.y&&e.x<(i.x-n.x)*(e.y-n.y)/(i.y-n.y)+n.x&&(s=!s);}return s}function bu(t,e){let r=!1;for(let n=0,i=t.length-1;ne.y!=a.y>e.y&&e.x<(a.x-s.x)*(e.y-s.y)/(a.y-s.y)+s.x&&(r=!r);}return r}function wu(t,e,r,n,i){for(const s of t)if(e<=s.x&&r<=s.y&&n>=s.x&&i>=s.y)return !0;const s=[new x(e,r),new x(e,i),new x(n,i),new x(n,r)];if(t.length>2)for(const e of s)if(bu(t,e))return !0;for(let e=0;ei.x&&e.x>i.x||t.yi.y&&e.y>i.y)return !1;const s=G(t,e,r[0]);return s!==G(t,e,r[1])||s!==G(t,e,r[2])||s!==G(t,e,r[3])}function Au(t,e,r){const n=e.paint.get(t).value;return \"constant\"===n.kind?n.value:r.programConfigurations.get(e.id).getMaxValue(t)}function Su(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function ku(t,e,r,n,i){if(!e[0]&&!e[1])return t;const s=x.convert(e)._mult(i);\"viewport\"===r&&s._rotate(-n);const a=[];for(let e=0;e0){const t=r.projection.upVector(u,h.x,h.y);d.x+=t[0]*c*p,d.y+=t[1]*c*p,d.z+=t[2]*c*p;}const f=s?h:Bu(d.x,d.y,d.z,n),y=s?t.tilespaceRays.map((t=>Pu(t,p))):t.queryGeometry.screenGeometry,m=Go([],[d.x,d.y,d.z,1],n);if(!a&&s?l*=m[3]/r.cameraToCenterDistance:a&&!s&&(l*=r.cameraToCenterDistance/m[3]),s){const t=Xl((e.y/ao+u.y)/(1<t.width||i.height>t.height||r.x>t.width-i.width||r.y>t.height-i.height)throw new RangeError(\"out of range source coordinates for image copy\");if(i.width>e.width||i.height>e.height||n.x>e.width-i.width||n.y>e.height-i.height)throw new RangeError(\"out of range destination coordinates for image copy\");const a=t.data,o=e.data;for(let l=0;l{e[t.evaluationKey]=s;const a=t.expression.evaluate(e);i.data[r+n+0]=Math.floor(255*a.r/a.a),i.data[r+n+1]=Math.floor(255*a.g/a.a),i.data[r+n+2]=Math.floor(255*a.b/a.a),i.data[r+n+3]=Math.floor(255*a.a);};if(t.clips)for(let e=0,i=0;e80*r){n=s=t[0],i=a=t[1];for(var f=r;fs&&(s=o),l>a&&(a=l);u=0!==(u=Math.max(s-n,a-i))?32767/u:0;}return Ju(p,d,r,n,i,u,0),d}function Ku(t,e,r,n,i){var s,a;if(i===gc(t,e,r,n)>0)for(s=e;s=e;s-=n)a=fc(s,t[s],t[s+1],a);return a&&lc(a,a.next)&&(yc(a),a=a.next),a}function Xu(t,e){if(!t)return t;e||(e=t);var r,n=t;do{if(r=!1,n.steiner||!lc(n,n.next)&&0!==oc(n.prev,n,n.next))n=n.next;else {if(yc(n),(n=e=n.prev)===n.next)break;r=!0;}}while(r||n!==e);return e}function Ju(t,e,r,n,i,s,a){if(t){!a&&s&&function(t,e,r,n){var i=t;do{0===i.z&&(i.z=nc(i.x,i.y,e,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,r,n,i,s,a,o,l,u=1;do{for(r=t,t=null,s=null,a=0;r;){for(a++,n=r,o=0,e=0;e0||l>0&&n;)0!==o&&(0===l||!n||r.z<=n.z)?(i=r,r=r.nextZ,o--):(i=n,n=n.nextZ,l--),s?s.nextZ=i:t=i,i.prevZ=s,s=i;r=n;}s.nextZ=null,u*=2;}while(a>1)}(i);}(t,n,i,s);for(var o,l,u=t;t.prev!==t.next;)if(o=t.prev,l=t.next,s?Yu(t,n,i,s):Hu(t))e.push(o.i/r|0),e.push(t.i/r|0),e.push(l.i/r|0),yc(t),t=l.next,u=l.next;else if((t=l)===u){a?1===a?Ju(t=Wu(Xu(t),e,r),e,r,n,i,s,2):2===a&&Qu(t,e,r,n,i,s):Ju(Xu(t),e,r,n,i,s,1);break}}}function Hu(t){var e=t.prev,r=t,n=t.next;if(oc(e,r,n)>=0)return !1;for(var i=e.x,s=r.x,a=n.x,o=e.y,l=r.y,u=n.y,c=is?i>a?i:a:s>a?s:a,d=o>l?o>u?o:u:l>u?l:u,f=n.next;f!==e;){if(f.x>=c&&f.x<=p&&f.y>=h&&f.y<=d&&sc(i,o,s,l,a,u,f.x,f.y)&&oc(f.prev,f,f.next)>=0)return !1;f=f.next;}return !0}function Yu(t,e,r,n){var i=t.prev,s=t,a=t.next;if(oc(i,s,a)>=0)return !1;for(var o=i.x,l=s.x,u=a.x,c=i.y,h=s.y,p=a.y,d=ol?o>u?o:u:l>u?l:u,m=c>h?c>p?c:p:h>p?h:p,g=nc(d,f,e,r,n),x=nc(y,m,e,r,n),v=t.prevZ,b=t.nextZ;v&&v.z>=g&&b&&b.z<=x;){if(v.x>=d&&v.x<=y&&v.y>=f&&v.y<=m&&v!==i&&v!==a&&sc(o,c,l,h,u,p,v.x,v.y)&&oc(v.prev,v,v.next)>=0)return !1;if(v=v.prevZ,b.x>=d&&b.x<=y&&b.y>=f&&b.y<=m&&b!==i&&b!==a&&sc(o,c,l,h,u,p,b.x,b.y)&&oc(b.prev,b,b.next)>=0)return !1;b=b.nextZ;}for(;v&&v.z>=g;){if(v.x>=d&&v.x<=y&&v.y>=f&&v.y<=m&&v!==i&&v!==a&&sc(o,c,l,h,u,p,v.x,v.y)&&oc(v.prev,v,v.next)>=0)return !1;v=v.prevZ;}for(;b&&b.z<=x;){if(b.x>=d&&b.x<=y&&b.y>=f&&b.y<=m&&b!==i&&b!==a&&sc(o,c,l,h,u,p,b.x,b.y)&&oc(b.prev,b,b.next)>=0)return !1;b=b.nextZ;}return !0}function Wu(t,e,r){var n=t;do{var i=n.prev,s=n.next.next;!lc(i,s)&&uc(i,n,n.next,s)&&pc(i,s)&&pc(s,i)&&(e.push(i.i/r|0),e.push(n.i/r|0),e.push(s.i/r|0),yc(n),yc(n.next),n=t=s),n=n.next;}while(n!==t);return Xu(n)}function Qu(t,e,r,n,i,s){var a=t;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&ac(a,o)){var l=dc(a,o);return a=Xu(a,a.next),l=Xu(l,l.next),Ju(a,e,r,n,i,s,0),void Ju(l,e,r,n,i,s,0)}o=o.next;}a=a.next;}while(a!==t)}function tc(t,e){return t.x-e.x}function ec(t,e){var r=function(t,e){var r,n=e,i=t.x,s=t.y,a=-1/0;do{if(s<=n.y&&s>=n.next.y&&n.next.y!==n.y){var o=n.x+(s-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(o<=i&&o>a&&(a=o,r=n.x=n.x&&n.x>=c&&i!==n.x&&sc(sr.x||n.x===r.x&&rc(r,n)))&&(r=n,p=l)),n=n.next;}while(n!==u);return r}(t,e);if(!r)return e;var n=dc(r,t);return Xu(n,n.next),Xu(r,r.next)}function rc(t,e){return oc(t.prev,t,e.prev)<0&&oc(e.next,t,t.next)<0}function nc(t,e,r,n,i){return (t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*i|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-n)*i|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function ic(t){var e=t,r=t;do{(e.x=(t-a)*(s-o)&&(t-a)*(n-o)>=(r-a)*(e-o)&&(r-a)*(s-o)>=(i-a)*(n-o)}function ac(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&uc(r,r.next,t,e))return !0;r=r.next;}while(r!==t);return !1}(t,e)&&(pc(t,e)&&pc(e,t)&&function(t,e){var r=t,n=!1,i=(t.x+e.x)/2,s=(t.y+e.y)/2;do{r.y>s!=r.next.y>s&&r.next.y!==r.y&&i<(r.next.x-r.x)*(s-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;}while(r!==t);return n}(t,e)&&(oc(t.prev,t,e.prev)||oc(t,e.prev,e))||lc(t,e)&&oc(t.prev,t,t.next)>0&&oc(e.prev,e,e.next)>0)}function oc(t,e,r){return (e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function lc(t,e){return t.x===e.x&&t.y===e.y}function uc(t,e,r,n){var i=hc(oc(t,e,r)),s=hc(oc(t,e,n)),a=hc(oc(r,n,t)),o=hc(oc(r,n,e));return i!==s&&a!==o||!(0!==i||!cc(t,r,e))||!(0!==s||!cc(t,n,e))||!(0!==a||!cc(r,t,n))||!(0!==o||!cc(r,e,n))}function cc(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function hc(t){return t>0?1:t<0?-1:0}function pc(t,e){return oc(t.prev,t,t.next)<0?oc(t,e,t.next)>=0&&oc(t,t.prev,e)>=0:oc(t,e,t.prev)<0||oc(t,t.next,e)<0}function dc(t,e){var r=new mc(t.i,t.x,t.y),n=new mc(e.i,e.x,e.y),i=t.next,s=e.prev;return t.next=e,e.prev=t,r.next=i,i.prev=r,n.next=r,r.prev=n,s.next=n,n.prev=s,n}function fc(t,e,r,n){var i=new mc(t,e,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function yc(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ);}function mc(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1;}function gc(t,e,r,n){for(var i=0,s=e,a=r-n;s0&&r.holes.push(n+=t[i-1].length);}return r};var xc=p(Gu.exports);function vc(t,e,r,n,i){bc(t,e,r||0,n||t.length-1,i||_c);}function bc(t,e,r,n,i){for(;n>r;){if(n-r>600){var s=n-r+1,a=e-r+1,o=Math.log(s),l=.5*Math.exp(2*o/3),u=.5*Math.sqrt(o*l*(s-l)/s)*(a-s/2<0?-1:1);bc(t,e,Math.max(r,Math.floor(e-a*l/s+u)),Math.min(n,Math.floor(e+(s-a)*l/s+u)),i);}var c=t[e],h=r,p=n;for(wc(t,r,e),i(t[n],c)>0&&wc(t,r,n);h0;)p--;}0===i(t[r],c)?wc(t,r,p):wc(t,++p,n),p<=e&&(r=p+1),e<=p&&(n=p-1);}}function wc(t,e,r){var n=t[e];t[e]=t[r],t[r]=n;}function _c(t,e){return te?1:0}function Ac(t,e){const r=t.length;if(r<=1)return [t];const n=[];let i,s;for(let e=0;e1)for(let t=0;tt.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new $s,this.indexArray=new ra,this.indexArray2=new la,this.programConfigurations=new Ja(t.layers,t.zoom),this.segments=new so,this.segments2=new so,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id)),this.projection=t.projection;}populate(t,e,r,n){this.hasPattern=kc(\"fill\",this.layers,e);const i=this.layers[0].layout.get(\"fill-sort-key\"),s=[];for(const{feature:a,id:o,index:l,sourceLayerIndex:u}of t){const t=this.layers[0]._featureFilter.needGeometry,c=ou(a,t);if(!this.layers[0]._featureFilter.filter(new ws(this.zoom),c,r))continue;const h=i?i.evaluate(c,{},r,e.availableImages):void 0,p={id:o,properties:a.properties,type:a.type,sourceLayerIndex:u,index:l,geometry:t?c.geometry:au(a,r,n),patterns:{},sortKey:h};s.push(p);}i&&s.sort(((t,e)=>t.sortKey-e.sortKey));for(const n of s){const{geometry:i,index:s,sourceLayerIndex:a}=n;if(this.hasPattern){const t=Ic(\"fill\",this.layers,n,this.zoom,e);this.patternFeatures.push(t);}else this.addFeature(n,i,s,r,{},e.availableImages);e.featureIndex.insert(t[s].feature,i,s,a,this.index);}}update(t,e,r,n){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r,n);}addFeatures(t,e,r,n,i){for(const t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r,n);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Nu),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy());}addFeature(t,e,r,n,i,s=[]){for(const t of Ac(e,500)){let e=0;for(const r of t)e+=r.length;const r=this.segments.prepareSegment(e,this.layoutVertexArray,this.indexArray),n=r.vertexLength,i=[],s=[];for(const e of t){if(0===e.length)continue;e!==t[0]&&s.push(i.length/2);const r=this.segments2.prepareSegment(e.length,this.layoutVertexArray,this.indexArray2),n=r.vertexLength;this.layoutVertexArray.emplaceBack(e[0].x,e[0].y),this.indexArray2.emplaceBack(n+e.length-1,n),i.push(e[0].x),i.push(e[0].y);for(let t=1;t>3;}if(i--,1===n||2===n)s+=t.readSVarint(),a+=t.readSVarint(),1===n&&(e&&o.push(e),e=[]),e.push(new Vc(s,a));else {if(7!==n)throw new Error(\"unknown command \"+n);e&&e.push(e[0].clone());}}return e&&o.push(e),o},Fc.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,r=1,n=0,i=0,s=0,a=1/0,o=-1/0,l=1/0,u=-1/0;t.pos>3;}if(n--,1===r||2===r)(i+=t.readSVarint())o&&(o=i),(s+=t.readSVarint())u&&(u=s);else if(7!==r)throw new Error(\"unknown command \"+r)}return [a,l,o,u]},Fc.prototype.toGeoJSON=function(t,e,r){var n,i,s=this.extent*Math.pow(2,r),a=this.extent*t,o=this.extent*e,l=this.loadGeometry(),u=Fc.types[this.type];function c(t){for(var e=0;e>3;e=1===n?t.readString():2===n?t.readFloat():3===n?t.readDouble():4===n?t.readVarint64():5===n?t.readVarint():6===n?t.readSVarint():7===n?t.readBoolean():null;}return e}(r));}Oc.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new $c(this._pbf,e,this.extent,this._keys,this._values)};var Nc=jc;function Gc(t,e,r){if(3===t){var n=new Nc(r,r.readVarint()+r.pos);n.length&&(e[n.name]=n);}}var Zc=Dc.VectorTile=function(t,e){this.layers=t.readFields(Gc,{},e);},Kc=Dc.VectorTileFeature=Lc;function Xc(t,e,r,n){const i=[],s=0===n?(t,e,r,n,i,s)=>{t.push(new x(s,r+(s-e)/(n-e)*(i-r)));}:(t,e,r,n,i,s)=>{t.push(new x(e+(s-r)/(i-r)*(n-e),s));};for(const a of t){const t=[];for(const i of a){if(i.length<=2)continue;const a=[];for(let t=0;te&&s(a,o,l,u,c,e):h>r?p=e&&s(a,o,l,u,c,e),p>r&&h<=r&&s(a,o,l,u,c,r);}let o=i[i.length-1];const l=0===n?o.x:o.y;l>=e&&l<=r&&a.push(o),a.length&&(o=a[a.length-1],a[0].x===o.x&&a[0].y===o.y||a.push(a[0]),t.push(a));}t.length&&i.push(t);}return i}Dc.VectorTileLayer=jc;const Jc=Kc.types,Hc=Math.pow(2,13);function Yc(t,e,r,n,i,s,a,o){t.emplaceBack((e<<1)+a,(r<<1)+s,(Math.floor(n*Hc)<<1)+i,Math.round(o));}function Wc(t,e,r){const n=16384;t.emplaceBack(e.x,e.y,e.z,r[0]*n,r[1]*n,r[2]*n);}class Qc{constructor(){this.acc=new x(0,0),this.polyCount=[];}startRing(t){this.currentPolyCount={edges:0,top:0},this.polyCount.push(this.currentPolyCount),this.min||(this.min=new x(t.x,t.y),this.max=new x(t.x,t.y));}append(t,e){this.currentPolyCount.edges++,this.acc._add(t);const r=this.min,n=this.max;t.xn.x&&(n.x=t.x),t.yn.y&&(n.y=t.y),((0===t.x||t.x===ao)&&t.x===e.x)!=((0===t.y||t.y===ao)&&t.y===e.y)&&this.processBorderOverlap(t,e),e.x<0!=t.x<0&&this.addBorderIntersection(0,Er(e.y,t.y,(0-e.x)/(t.x-e.x))),e.x>ao!=t.x>ao&&this.addBorderIntersection(1,Er(e.y,t.y,(ao-e.x)/(t.x-e.x))),e.y<0!=t.y<0&&this.addBorderIntersection(2,Er(e.x,t.x,(0-e.y)/(t.y-e.y))),e.y>ao!=t.y>ao&&this.addBorderIntersection(3,Er(e.x,t.x,(ao-e.y)/(t.y-e.y)));}addBorderIntersection(t,e){this.borders||(this.borders=[[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE]]);const r=this.borders[t];er[1]&&(r[1]=e);}processBorderOverlap(t,e){if(t.x===e.x){if(t.y===e.y)return;const r=0===t.x?0:1;this.addBorderIntersection(r,e.y),this.addBorderIntersection(r,t.y);}else {const r=0===t.y?2:3;this.addBorderIntersection(r,e.x),this.addBorderIntersection(r,t.x);}}centroid(){const t=this.polyCount.reduce(((t,e)=>t+e.edges),0);return 0!==t?this.acc.div(t)._round():new x(0,0)}span(){return new x(this.max.x-this.min.x,this.max.y-this.min.y)}intersectsCount(){return this.borders.reduce(((t,e)=>t+ +(e[0]!==Number.MAX_VALUE)),0)}}class th{constructor(t){this.zoom=t.zoom,this.canonical=t.canonical,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.edgeRadius=0,this.projection=t.projection,this.layoutVertexArray=new Os,this.centroidVertexArray=new wa,this.indexArray=new ra,this.programConfigurations=new Ja(t.layers,t.zoom),this.segments=new so,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id)),this.enableTerrain=t.enableTerrain;}populate(t,e,r,n){this.features=[],this.hasPattern=kc(\"fill-extrusion\",this.layers,e),this.featuresOnBorder=[],this.borders=[[],[],[],[]],this.borderDoneWithNeighborZ=[-1,-1,-1,-1],this.tileToMeter=function(t){const e=Math.exp(Math.PI*(1-t.y/(1<=0;t--){const e=p[t];(0===e.length||(d=e[0]).every((t=>t.x<=0))||d.every((t=>t.x>=ao))||d.every((t=>t.y<=0))||d.every((t=>t.y>=ao)))&&p.splice(t,1);}var d;let f;if(u)f=lh(p,o,n);else {f=[];for(const t of p)f.push({polygon:t,bounds:o});}const y=h?this.edgeRadius:0;for(const{polygon:t,bounds:e}of f){let r=0,i=0;for(const e of t)h&&!e[0].equals(e[e.length-1])&&e.push(e[0]),i+=h?e.length-1:e.length;const s=this.segments.prepareSegment((h?5:4)*i,this.layoutVertexArray,this.indexArray);if(h){const e=[],i=[];r=s.vertexLength;for(const r of t){let a,o;r.length&&r!==t[0]&&i.push(e.length/2),a=r[1].sub(r[0])._perp()._unit();for(let t=1;t4&&sh(i[i.length-2],i[0],i[1]),d=y?rh(i[i.length-2],i[0],i[1],y):0;a=i[1].sub(i[0])._perp()._unit();let f=!0;for(let m=1,g=0;m0?1:0,S=x.dist(v);if(g+S>32768&&(g=0),y){o=b.sub(v)._perp()._unit();let t=nh(x,v,b,eh(a,o),y);isNaN(t)&&(t=0);const e=v.sub(x)._unit();x=x.add(e.mult(d))._round(),v=v.add(e.mult(-t))._round(),d=t,a=o;}const k=s.vertexLength,I=i.length>4&&sh(x,v,b);let M=ah(g,p,f);if(Yc(this.layoutVertexArray,x.x,x.y,_,A,0,0,M),Yc(this.layoutVertexArray,x.x,x.y,_,A,0,1,M),g+=S,M=ah(g,I,!f),p=I,Yc(this.layoutVertexArray,v.x,v.y,_,A,0,0,M),Yc(this.layoutVertexArray,v.x,v.y,_,A,0,1,M),s.vertexLength+=4,this.indexArray.emplaceBack(k+0,k+1,k+2),this.indexArray.emplaceBack(k+1,k+3,k+2),s.primitiveLength+=2,y){const n=r+(1===m?i.length-2:m-2),a=1===m?r:n+1;if(this.indexArray.emplaceBack(k+1,n,k+3),this.indexArray.emplaceBack(n,a,k+3),s.primitiveLength+=2,void 0===t&&(t=k),!ih(b,i[m],e)){const e=m===i.length-1?t:s.vertexLength;this.indexArray.emplaceBack(k+2,k+3,e),this.indexArray.emplaceBack(k+3,e+1,e),this.indexArray.emplaceBack(k+3,a,e+1),s.primitiveLength+=3;}f=!f;}if(u){const t=this.layoutVertexExtArray,e=l.projectTilePoint(x.x,x.y,n),r=l.projectTilePoint(v.x,v.y,n),i=l.upVector(n,x.x,x.y),s=l.upVector(n,v.x,v.y);Wc(t,e,i),Wc(t,e,i),Wc(t,r,s),Wc(t,r,s);}}h&&(r+=i.length-1);}}if(c&&c.polyCount.length>0){if(c.borders){c.vertexArrayOffset=this.centroidVertexArray.length;const t=c.borders,e=this.featuresOnBorder.push(c)-1;for(let r=0;r<4;r++)t[r][0]!==Number.MAX_VALUE&&this.borders[r].push(e);}this.encodeCentroid(c.borders?void 0:c.centroid(),c);}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,s,n);}sortBorders(){for(let t=0;t<4;t++)this.borders[t].sort(((e,r)=>this.featuresOnBorder[e].borders[t][0]-this.featuresOnBorder[r].borders[t][0]));}encodeCentroid(t,e,r=!0){let n,i;if(t)if(0!==t.y){const r=e.span()._mult(this.tileToMeter);n=(Math.max(t.x,1)<<3)+Math.min(7,Math.round(r.x/10)),i=(Math.max(t.y,1)<<3)+Math.min(7,Math.round(r.y/10));}else n=Math.ceil(7*(t.x+450)),i=0;else n=0,i=+r;let s=r?this.centroidVertexArray.length:e.vertexArrayOffset;for(const t of e.polyCount){r&&this.centroidVertexArray.resize(this.centroidVertexArray.length+4*t.edges+t.top);for(let e=0;er[1].x&&e.x>r[1].x||t.yr[1].y&&e.y>r[1].y}function sh(t,e,r){if(t.x<0||t.x>=ao||e.x<0||e.x>=ao||r.x<0||r.x>=ao)return !1;const n=r.sub(e),i=n.perp(),s=t.sub(e);return (n.x*s.x+n.y*s.y)/Math.sqrt((n.x*n.x+n.y*n.y)*(s.x*s.x+s.y*s.y))>-.866&&i.x*s.x+i.y*s.y<0}function ah(t,e,r){const n=e?2|t:-3&t;return r?1|n:-2&n}function oh(){const t=Math.PI/32,e=Math.tan(t),r=Ul;return r*Math.sqrt(1+2*e*e)-r}function lh(t,e,r){const n=1<{for(const r of t)a.push({polygon:r,bounds:e});},l=Math.ceil(Math.log2(r)),u=Math.ceil(Math.log2(n)),c=l-u,h=[];for(let t=0;t0?0:1);for(let t=0;te+1?d.push({polygons:p,bounds:t,depth:e+1}):o(p,t);}if(f.length){const t=[new x(0===r?c:n.x,1===r?c:n.y),a];h.length>e+1?d.push({polygons:f,bounds:t,depth:e+1}):o(f,t);}}return a}(t,e,Math.ceil((s-i)/11.25),Math.ceil((a-o)/11.25),1,((t,e,i)=>{if(0===t)return .5*(e+i);{const t=Xl((r.y+e/ao)/n);return (Gl(.5*(Xl((r.y+i/ao)/n)+t))*n-r.y)*ao}}))}Ji(th,\"FillExtrusionBucket\",{omit:[\"layers\",\"features\"]}),Ji(Qc,\"PartMetadata\");const uh=new Ps({\"fill-extrusion-edge-radius\":new Bs(te[\"layout_fill-extrusion\"][\"fill-extrusion-edge-radius\"])});var ch={paint:new Ps({\"fill-extrusion-opacity\":new Bs(te[\"paint_fill-extrusion\"][\"fill-extrusion-opacity\"]),\"fill-extrusion-color\":new Es(te[\"paint_fill-extrusion\"][\"fill-extrusion-color\"]),\"fill-extrusion-translate\":new Bs(te[\"paint_fill-extrusion\"][\"fill-extrusion-translate\"]),\"fill-extrusion-translate-anchor\":new Bs(te[\"paint_fill-extrusion\"][\"fill-extrusion-translate-anchor\"]),\"fill-extrusion-pattern\":new Es(te[\"paint_fill-extrusion\"][\"fill-extrusion-pattern\"]),\"fill-extrusion-height\":new Es(te[\"paint_fill-extrusion\"][\"fill-extrusion-height\"]),\"fill-extrusion-base\":new Es(te[\"paint_fill-extrusion\"][\"fill-extrusion-base\"]),\"fill-extrusion-vertical-gradient\":new Bs(te[\"paint_fill-extrusion\"][\"fill-extrusion-vertical-gradient\"]),\"fill-extrusion-ambient-occlusion-intensity\":new Bs(te[\"paint_fill-extrusion\"][\"fill-extrusion-ambient-occlusion-intensity\"]),\"fill-extrusion-ambient-occlusion-radius\":new Bs(te[\"paint_fill-extrusion\"][\"fill-extrusion-ambient-occlusion-radius\"]),\"fill-extrusion-rounded-roof\":new Bs(te[\"paint_fill-extrusion\"][\"fill-extrusion-rounded-roof\"])}),layout:uh};function hh(t,e,r){var n=2*Math.PI*6378137/256/Math.pow(2,r);return [t*n-2*Math.PI*6378137/2,e*n-2*Math.PI*6378137/2]}class ph{constructor(t,e,r){this.z=t,this.x=e,this.y=r,this.key=yh(0,t,t,e,r);}equals(t){return this.z===t.z&&this.x===t.x&&this.y===t.y}url(t,e){const r=function(t,e,r){var n=hh(256*t,256*(e=Math.pow(2,r)-e-1),r),i=hh(256*(t+1),256*(e+1),r);return n[0]+\",\"+n[1]+\",\"+i[0]+\",\"+i[1]}(this.x,this.y,this.z),n=function(t,e,r){let n,i=\"\";for(let s=t;s>0;s--)n=1<this.canonical.z?new fh(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new fh(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)}calculateScaledKey(t,e=!0){if(this.overscaledZ===t&&e)return this.key;if(t>this.canonical.z)return yh(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y);{const r=this.canonical.z-t;return yh(this.wrap*+e,t,t,this.canonical.x>>r,this.canonical.y>>r)}}isChildOf(t){if(t.wrap!==this.wrap)return !1;const e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ>e&&t.canonical.y===this.canonical.y>>e}children(t){if(this.overscaledZ>=t)return [new fh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const e=this.canonical.z+1,r=2*this.canonical.x,n=2*this.canonical.y;return [new fh(e,this.wrap,e,r,n),new fh(e,this.wrap,e,r+1,n),new fh(e,this.wrap,e,r,n+1),new fh(e,this.wrap,e,r+1,n+1)]}isLessThan(t){return this.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.yt.id)),this.index=t.index,this.projection=t.projection,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((t=>{this.gradients[t.id]={};})),this.layoutVertexArray=new qs,this.layoutVertexArray2=new Ns,this.indexArray=new ra,this.programConfigurations=new Ja(t.layers,t.zoom),this.segments=new so,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id));}populate(t,e,r,n){this.hasPattern=kc(\"line\",this.layers,e);const i=this.layers[0].layout.get(\"line-sort-key\"),s=[];for(const{feature:e,id:a,index:o,sourceLayerIndex:l}of t){const t=this.layers[0]._featureFilter.needGeometry,u=ou(e,t);if(!this.layers[0]._featureFilter.filter(new ws(this.zoom),u,r))continue;const c=i?i.evaluate(u,{},r):void 0,h={id:a,properties:e.properties,type:e.type,sourceLayerIndex:l,index:o,geometry:t?u.geometry:au(e,r,n),patterns:{},sortKey:c};s.push(h);}i&&s.sort(((t,e)=>t.sortKey-e.sortKey));const{lineAtlas:a,featureIndex:o}=e,l=this.addConstantDashes(a);for(const n of s){const{geometry:i,index:s,sourceLayerIndex:u}=n;if(l&&this.addFeatureDashes(n,a),this.hasPattern){const t=Ic(\"line\",this.layers,n,this.zoom,e);this.patternFeatures.push(t);}else this.addFeature(n,i,s,r,a.positions,e.availableImages);o.insert(t[s].feature,i,s,u,this.index);}}addConstantDashes(t){let e=!1;for(const r of this.layers){const n=r.paint.get(\"line-dasharray\").value,i=r.layout.get(\"line-cap\").value;if(\"constant\"!==n.kind||\"constant\"!==i.kind)e=!0;else {const e=i.value,r=n.value;if(!r)continue;t.addDash(r,e);}}return e}addFeatureDashes(t,e){const r=this.zoom;for(const n of this.layers){const i=n.paint.get(\"line-dasharray\").value,s=n.layout.get(\"line-cap\").value;if(\"constant\"===i.kind&&\"constant\"===s.kind)continue;let a,o;if(\"constant\"===i.kind){if(a=i.value,!a)continue}else a=i.evaluate({zoom:r},t);o=\"constant\"===s.kind?s.value:s.evaluate({zoom:r},t),e.addDash(a,o),t.patterns[n.id]=e.getKey(a,o);}}update(t,e,r,n){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,r,n);}addFeatures(t,e,r,n,i){for(const t of this.patternFeatures)this.addFeature(t,t.geometry,t.index,e,r,n);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=t.createVertexBuffer(this.layoutVertexArray2,Ah)),this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,wh),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy());}lineFeatureClips(t){if(t.properties&&t.properties.hasOwnProperty(\"mapbox_clip_start\")&&t.properties.hasOwnProperty(\"mapbox_clip_end\"))return {start:+t.properties.mapbox_clip_start,end:+t.properties.mapbox_clip_end}}addFeature(t,e,r,n,i,s){const a=this.layers[0].layout,o=a.get(\"line-join\").evaluate(t,{}),l=a.get(\"line-cap\").evaluate(t,{}),u=a.get(\"line-miter-limit\"),c=a.get(\"line-round-limit\");this.lineClips=this.lineFeatureClips(t);for(const r of e)this.addLine(r,t,o,l,u,c);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,i,s,n);}addLine(t,e,r,n,i,s){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineSoFar=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let e=0;e=2&&t[o-1].equals(t[o-2]);)o--;let l=0;for(;l0;if(w&&e>l){const t=h.dist(p);if(t>2*u){const e=h.sub(h.sub(p)._mult(u/t)._round());this.updateDistance(p,e),this.addCurrentVertex(e,f,0,0,c),p=e;}}const A=p&&d;let S=A?r:a?\"butt\":n;if(A&&\"round\"===S&&(vi&&(S=\"bevel\"),\"bevel\"===S&&(v>2&&(S=\"flipbevel\"),v100)m=y.mult(-1);else {const t=v*f.add(y).mag()/f.sub(y).mag();m._perp()._mult(t*(_?-1:1));}this.addCurrentVertex(h,m,0,0,c),this.addCurrentVertex(h,m.mult(-1),0,0,c);}else if(\"bevel\"===S||\"fakeround\"===S){const t=-Math.sqrt(v*v-1),e=_?t:0,r=_?0:t;if(p&&this.addCurrentVertex(h,f,e,r,c),\"fakeround\"===S){const t=Math.round(180*b/Math.PI/20);for(let e=1;e2*u){const e=h.add(d.sub(h)._mult(u/t)._round());this.updateDistance(h,e),this.addCurrentVertex(e,y,0,0,c),h=e;}}}}addCurrentVertex(t,e,r,n,i,s=!1){const a=e.y*n-e.x,o=-e.y-e.x*n;this.addHalfVertex(t,e.x+e.y*r,e.y-e.x*r,s,!1,r,i),this.addHalfVertex(t,a,o,s,!0,-n,i);}addHalfVertex({x:t,y:e},r,n,i,s,a,o){this.layoutVertexArray.emplaceBack((t<<1)+(i?1:0),(e<<1)+(s?1:0),Math.round(63*r)+128,Math.round(63*n)+128,1+(0===a?0:a<0?-1:1),0,this.lineSoFar),this.lineClips&&this.layoutVertexArray2.emplaceBack(this.scaledDistance,this.lineClipsArray.length,this.lineClips.start,this.lineClips.end);const l=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,l),o.primitiveLength++),s?this.e2=l:this.e1=l;}updateScaledDistance(){if(this.lineClips){const t=this.totalDistance/(this.lineClips.end-this.lineClips.start);this.scaledDistance=this.distance/this.totalDistance,this.lineSoFar=t*this.lineClips.start+this.distance;}else this.lineSoFar=this.distance;}updateDistance(t,e){this.distance+=t.dist(e),this.updateScaledDistance();}}Ji(Ih,\"LineBucket\",{omit:[\"layers\",\"patternFeatures\"]});const Mh=new Ps({\"line-cap\":new Es(te.layout_line[\"line-cap\"]),\"line-join\":new Es(te.layout_line[\"line-join\"]),\"line-miter-limit\":new Bs(te.layout_line[\"line-miter-limit\"]),\"line-round-limit\":new Bs(te.layout_line[\"line-round-limit\"]),\"line-sort-key\":new Es(te.layout_line[\"line-sort-key\"])});var Th={paint:new Ps({\"line-opacity\":new Es(te.paint_line[\"line-opacity\"]),\"line-color\":new Es(te.paint_line[\"line-color\"]),\"line-translate\":new Bs(te.paint_line[\"line-translate\"]),\"line-translate-anchor\":new Bs(te.paint_line[\"line-translate-anchor\"]),\"line-width\":new Es(te.paint_line[\"line-width\"]),\"line-gap-width\":new Es(te.paint_line[\"line-gap-width\"]),\"line-offset\":new Es(te.paint_line[\"line-offset\"]),\"line-blur\":new Es(te.paint_line[\"line-blur\"]),\"line-dasharray\":new Es(te.paint_line[\"line-dasharray\"]),\"line-pattern\":new Es(te.paint_line[\"line-pattern\"]),\"line-gradient\":new Cs(te.paint_line[\"line-gradient\"]),\"line-trim-offset\":new Bs(te.paint_line[\"line-trim-offset\"])}),layout:Mh};const zh=new class extends Es{possiblyEvaluate(t,e){return e=new ws(Math.floor(e.zoom),{now:e.now,fadeDuration:e.fadeDuration,transition:e.transition}),super.possiblyEvaluate(t,e)}evaluate(t,e,r,n){return e=C({},e,{zoom:Math.floor(e.zoom)}),super.evaluate(t,e,r,n)}}(Th.paint.properties[\"line-width\"].specification);function Bh(t,e){return e>0?e+2*t:t}zh.useIntegerZoom=!0;const Eh=Rs([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_tex_size\",components:4,type:\"Uint16\"},{name:\"a_pixeloffset\",components:4,type:\"Int16\"}],4),Ch=Rs([{name:\"a_globe_anchor\",components:3,type:\"Int16\"},{name:\"a_globe_normal\",components:3,type:\"Float32\"}],4),Ph=Rs([{name:\"a_projected_pos\",components:4,type:\"Float32\"}],4);Rs([{name:\"a_fade_opacity\",components:1,type:\"Uint32\"}],4);const Dh=Rs([{name:\"a_placed\",components:2,type:\"Uint8\"},{name:\"a_shift\",components:2,type:\"Float32\"}]),Vh=Rs([{name:\"a_size_scale\",components:1,type:\"Float32\"},{name:\"a_padding\",components:2,type:\"Float32\"}]);Rs([{type:\"Int16\",name:\"projectedAnchorX\"},{type:\"Int16\",name:\"projectedAnchorY\"},{type:\"Int16\",name:\"projectedAnchorZ\"},{type:\"Int16\",name:\"tileAnchorX\"},{type:\"Int16\",name:\"tileAnchorY\"},{type:\"Float32\",name:\"x1\"},{type:\"Float32\",name:\"y1\"},{type:\"Float32\",name:\"x2\"},{type:\"Float32\",name:\"y2\"},{type:\"Int16\",name:\"padding\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]);const Lh=Rs([{name:\"a_pos\",components:3,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"}],4),Fh=Rs([{name:\"a_pos_2f\",components:2,type:\"Float32\"},{name:\"a_radius\",components:1,type:\"Float32\"},{name:\"a_flags\",components:2,type:\"Int16\"}],4);Rs([{name:\"triangle\",components:3,type:\"Uint16\"}]),Rs([{type:\"Int16\",name:\"projectedAnchorX\"},{type:\"Int16\",name:\"projectedAnchorY\"},{type:\"Int16\",name:\"projectedAnchorZ\"},{type:\"Float32\",name:\"tileAnchorX\"},{type:\"Float32\",name:\"tileAnchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"vertexStartIndex\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Uint8\",name:\"writingMode\"},{type:\"Uint8\",name:\"placedOrientation\"},{type:\"Uint8\",name:\"hidden\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Int16\",name:\"associatedIconIndex\"},{type:\"Uint8\",name:\"flipState\"}]),Rs([{type:\"Int16\",name:\"projectedAnchorX\"},{type:\"Int16\",name:\"projectedAnchorY\"},{type:\"Int16\",name:\"projectedAnchorZ\"},{type:\"Float32\",name:\"tileAnchorX\"},{type:\"Float32\",name:\"tileAnchorY\"},{type:\"Int16\",name:\"rightJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"centerJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"leftJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedTextSymbolIndex\"},{type:\"Int16\",name:\"placedIconSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedIconSymbolIndex\"},{type:\"Uint16\",name:\"key\"},{type:\"Uint16\",name:\"textBoxStartIndex\"},{type:\"Uint16\",name:\"textBoxEndIndex\"},{type:\"Uint16\",name:\"verticalTextBoxStartIndex\"},{type:\"Uint16\",name:\"verticalTextBoxEndIndex\"},{type:\"Uint16\",name:\"iconBoxStartIndex\"},{type:\"Uint16\",name:\"iconBoxEndIndex\"},{type:\"Uint16\",name:\"verticalIconBoxStartIndex\"},{type:\"Uint16\",name:\"verticalIconBoxEndIndex\"},{type:\"Uint16\",name:\"featureIndex\"},{type:\"Uint16\",name:\"numHorizontalGlyphVertices\"},{type:\"Uint16\",name:\"numVerticalGlyphVertices\"},{type:\"Uint16\",name:\"numIconVertices\"},{type:\"Uint16\",name:\"numVerticalIconVertices\"},{type:\"Uint16\",name:\"useRuntimeCollisionCircles\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Float32\",components:2,name:\"textOffset\"},{type:\"Float32\",name:\"collisionCircleDiameter\"}]),Rs([{type:\"Float32\",name:\"offsetX\"}]),Rs([{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"}]);var Rh=24;const Uh=128;function $h(t,e){const{expression:r}=e;if(\"constant\"===r.kind)return {kind:\"constant\",layoutSize:r.evaluate(new ws(t+1))};if(\"source\"===r.kind)return {kind:\"source\"};{const{zoomStops:e,interpolationType:n}=r;let i=0;for(;i{t.text=function(t,e,r){const n=e.layout.get(\"text-transform\").evaluate(r,{});return \"uppercase\"===n?t=t.toLocaleUpperCase():\"lowercase\"===n&&(t=t.toLocaleLowerCase()),bs.applyArabicShaping&&(t=bs.applyArabicShaping(t)),t}(t.text,e,r);})),t}const Gh={\"!\":\"︕\",\"#\":\"#\",$:\"$\",\"%\":\"%\",\"&\":\"&\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"*\",\"+\":\"+\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"/\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"=\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\",\"←\":\"↑\",\"→\":\"↓\"};function Zh(t){return \"︶\"===t||\"﹈\"===t||\"︸\"===t||\"﹄\"===t||\"﹂\"===t||\"︾\"===t||\"︼\"===t||\"︺\"===t||\"︘\"===t||\"﹀\"===t||\"︐\"===t||\"︓\"===t||\"︔\"===t||\"`\"===t||\" ̄\"===t||\"︑\"===t||\"︒\"===t}function Kh(t){return \"︵\"===t||\"﹇\"===t||\"︷\"===t||\"﹃\"===t||\"﹁\"===t||\"︽\"===t||\"︻\"===t||\"︹\"===t||\"︗\"===t||\"︿\"===t}var Xh=Yh,Jh=function(t,e,r,n,i){var s,a,o=8*i-n-1,l=(1<>1,c=-7,h=r?i-1:0,p=r?-1:1,d=t[e+h];for(h+=p,s=d&(1<<-c)-1,d>>=-c,c+=o;c>0;s=256*s+t[e+h],h+=p,c-=8);for(a=s&(1<<-c)-1,s>>=-c,c+=n;c>0;a=256*a+t[e+h],h+=p,c-=8);if(0===s)s=1-u;else {if(s===l)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,n),s-=u;}return (d?-1:1)*a*Math.pow(2,s-n)},Hh=function(t,e,r,n,i,s){var a,o,l,u=8*s-i-1,c=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:s-1,f=n?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(o=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),(e+=a+h>=1?p/l:p*Math.pow(2,1-h))*l>=2&&(a++,l/=2),a+h>=c?(o=0,a=c):a+h>=1?(o=(e*l-1)*Math.pow(2,i),a+=h):(o=e*Math.pow(2,h-1)*Math.pow(2,i),a=0));i>=8;t[r+d]=255&o,d+=f,o/=256,i-=8);for(a=a<0;t[r+d]=255&a,d+=f,a/=256,u-=8);t[r+d-f]|=128*y;};\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */function Yh(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length;}Yh.Varint=0,Yh.Fixed64=1,Yh.Bytes=2,Yh.Fixed32=5;var Wh=4294967296,Qh=1/Wh,tp=\"undefined\"==typeof TextDecoder?null:new TextDecoder(\"utf8\");function ep(t){return t.type===Yh.Bytes?t.readVarint()+t.pos:t.pos+1}function rp(t,e,r){return r?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function np(t,e,r){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));r.realloc(n);for(var i=r.pos-1;i>=t;i--)r.buf[i+n]=r.buf[i];}function ip(t,e){for(var r=0;r>>8,t[r+2]=e>>>16,t[r+3]=e>>>24;}function yp(t,e){return (t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}Yh.prototype={destroy:function(){this.buf=null;},readFields:function(t,e,r){for(r=r||this.length;this.pos>3,s=this.pos;this.type=7&n,t(i,e,this),this.pos===s&&this.skip(n);}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=dp(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=yp(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=dp(this.buf,this.pos)+dp(this.buf,this.pos+4)*Wh;return this.pos+=8,t},readSFixed64:function(){var t=dp(this.buf,this.pos)+yp(this.buf,this.pos+4)*Wh;return this.pos+=8,t},readFloat:function(){var t=Jh(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=Jh(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,r,n=this.buf;return e=127&(r=n[this.pos++]),r<128?e:(e|=(127&(r=n[this.pos++]))<<7,r<128?e:(e|=(127&(r=n[this.pos++]))<<14,r<128?e:(e|=(127&(r=n[this.pos++]))<<21,r<128?e:function(t,e,r){var n,i,s=r.buf;if(n=(112&(i=s[r.pos++]))>>4,i<128)return rp(t,n,e);if(n|=(127&(i=s[r.pos++]))<<3,i<128)return rp(t,n,e);if(n|=(127&(i=s[r.pos++]))<<10,i<128)return rp(t,n,e);if(n|=(127&(i=s[r.pos++]))<<17,i<128)return rp(t,n,e);if(n|=(127&(i=s[r.pos++]))<<24,i<128)return rp(t,n,e);if(n|=(1&(i=s[r.pos++]))<<31,i<128)return rp(t,n,e);throw new Error(\"Expected varint not more than 10 bytes\")}(e|=(15&(r=n[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&tp?function(t,e,r){return tp.decode(t.subarray(e,r))}(this.buf,e,t):function(t,e,r){for(var n=\"\",i=e;i239?4:l>223?3:l>191?2:1;if(i+c>r)break;1===c?l<128&&(u=l):2===c?128==(192&(s=t[i+1]))&&(u=(31&l)<<6|63&s)<=127&&(u=null):3===c?(a=t[i+2],128==(192&(s=t[i+1]))&&128==(192&a)&&((u=(15&l)<<12|(63&s)<<6|63&a)<=2047||u>=55296&&u<=57343)&&(u=null)):4===c&&(a=t[i+2],o=t[i+3],128==(192&(s=t[i+1]))&&128==(192&a)&&128==(192&o)&&((u=(15&l)<<18|(63&s)<<12|(63&a)<<6|63&o)<=65535||u>=1114112)&&(u=null)),null===u?(u=65533,c=1):u>65535&&(u-=65536,n+=String.fromCharCode(u>>>10&1023|55296),u=56320|1023&u),n+=String.fromCharCode(u),i+=c;}return n}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==Yh.Bytes)return t.push(this.readVarint(e));var r=ep(this);for(t=t||[];this.pos127;);else if(e===Yh.Bytes)this.pos=this.readVarint()+this.pos;else if(e===Yh.Fixed32)this.pos+=4;else {if(e!==Yh.Fixed64)throw new Error(\"Unimplemented type: \"+e);this.pos+=8;}},writeTag:function(t,e){this.writeVarint(t<<3|e);},realloc:function(t){for(var e=this.length||16;e268435455||t<0?function(t,e){var r,n;if(t>=0?(r=t%4294967296|0,n=t/4294967296|0):(n=~(-t/4294967296),4294967295^(r=~(-t%4294967296))?r=r+1|0:(r=0,n=n+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");e.realloc(10),function(t,e,r){r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,t>>>=7,r.buf[r.pos++]=127&t|128,r.buf[r.pos]=127&(t>>>=7);}(r,0,e),function(t,e){var r=(7&t)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))));}(n,e);}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))));},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t);},writeBoolean:function(t){this.writeVarint(Boolean(t));},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,r){for(var n,i,s=0;s55295&&n<57344){if(!i){n>56319||s+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):i=n;continue}if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,i=n;continue}n=i-55296<<10|n-56320|65536,i=null;}else i&&(t[r++]=239,t[r++]=191,t[r++]=189,i=null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=63&n|128);}return r}(this.buf,t,this.pos);var r=this.pos-e;r>=128&&np(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r;},writeFloat:function(t){this.realloc(4),Hh(this.buf,t,this.pos,!0,23,4),this.pos+=4;},writeDouble:function(t){this.realloc(8),Hh(this.buf,t,this.pos,!0,52,8),this.pos+=8;},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var r=0;r=128&&np(r,n,this),this.pos=r-1,this.writeVarint(n),this.pos+=n;},writeMessage:function(t,e,r){this.writeTag(t,Yh.Bytes),this.writeRawMessage(e,r);},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,ip,e);},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,sp,e);},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,lp,e);},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,ap,e);},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,op,e);},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,up,e);},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,cp,e);},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,hp,e);},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,pp,e);},writeBytesField:function(t,e){this.writeTag(t,Yh.Bytes),this.writeBytes(e);},writeFixed32Field:function(t,e){this.writeTag(t,Yh.Fixed32),this.writeFixed32(e);},writeSFixed32Field:function(t,e){this.writeTag(t,Yh.Fixed32),this.writeSFixed32(e);},writeFixed64Field:function(t,e){this.writeTag(t,Yh.Fixed64),this.writeFixed64(e);},writeSFixed64Field:function(t,e){this.writeTag(t,Yh.Fixed64),this.writeSFixed64(e);},writeVarintField:function(t,e){this.writeTag(t,Yh.Varint),this.writeVarint(e);},writeSVarintField:function(t,e){this.writeTag(t,Yh.Varint),this.writeSVarint(e);},writeStringField:function(t,e){this.writeTag(t,Yh.Bytes),this.writeString(e);},writeFloatField:function(t,e){this.writeTag(t,Yh.Fixed32),this.writeFloat(e);},writeDoubleField:function(t,e){this.writeTag(t,Yh.Fixed64),this.writeDouble(e);},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e));}};var mp=p(Xh);const gp=3;function xp(t,e,r){e.glyphs=[],1===t&&r.readMessage(vp,e);}function vp(t,e,r){if(3===t){const{id:t,bitmap:n,width:i,height:s,left:a,top:o,advance:l}=r.readMessage(bp,{});e.glyphs.push({id:t,bitmap:new Ru({width:i+2*gp,height:s+2*gp},n),metrics:{width:i,height:s,left:a,top:o,advance:l}});}else 4===t?e.ascender=r.readSVarint():5===t&&(e.descender=r.readSVarint());}function bp(t,e,r){1===t?e.id=r.readVarint():2===t?e.bitmap=r.readBytes():3===t?e.width=r.readVarint():4===t?e.height=r.readVarint():5===t?e.left=r.readSVarint():6===t?e.top=r.readSVarint():7===t&&(e.advance=r.readVarint());}const wp=gp;function _p(t){let e=0,r=0;for(const n of t)e+=n.w*n.h,r=Math.max(r,n.w);t.sort(((t,e)=>e.h-t.h));const n=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}];let i=0,s=0;for(const e of t)for(let t=n.length-1;t>=0;t--){const r=n[t];if(!(e.w>r.w||e.h>r.h)){if(e.x=r.x,e.y=r.y,s=Math.max(s,e.y+e.h),i=Math.max(i,e.x+e.w),e.w===r.w&&e.h===r.h){const e=n.pop();tt.hasImage(e))),t.dispatchRenderCallbacks(this.haveRenderCallbacks);for(const r in t.updatedImages)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e),this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e);}patchUpdatedImage(t,e,r){if(!t||!e)return;if(t.version===e.version)return;t.version=e.version;const[n,i]=t.tl;r.update(e.data,void 0,{x:n,y:i});}}Ji(Sp,\"ImagePosition\"),Ji(kp,\"ImageAtlas\");const Ip={horizontal:1,vertical:2,horizontalOnly:3},Mp=-17;class Tp{constructor(){this.scale=1,this.fontStack=\"\",this.imageName=null;}static forText(t,e){const r=new Tp;return r.scale=t||1,r.fontStack=e,r}static forImage(t){const e=new Tp;return e.imageName=t,e}}class zp{constructor(){this.text=\"\",this.sectionIndex=[],this.sections=[],this.imageSectionID=null;}static fromFeature(t,e){const r=new zp;for(let n=0;n=0&&r>=t&&Ep[this.text.charCodeAt(r)];r--)e--;this.text=this.text.substring(t,e),this.sectionIndex=this.sectionIndex.slice(t,e);}substring(t,e){const r=new zp;return r.text=this.text.substring(t,e),r.sectionIndex=this.sectionIndex.slice(t,e),r.sections=this.sections,r}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((t,e)=>Math.max(t,this.sections[e].scale)),0)}addTextSection(t,e){this.text+=t.text,this.sections.push(Tp.forText(t.scale,t.fontStack||e));const r=this.sections.length-1;for(let e=0;e=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Bp(t,e,r,n,i,s,a,o,l,u,c,h,p,d,f){const y=zp.fromFeature(t,i);h===Ip.vertical&&y.verticalizePunctuation(p);let m=[];const g=function(t,e,r,n,i,s){if(!t)return [];const a=[],o=function(t,e,r,n,i,s){let a=0;for(let r=0;r=0;let u=0;for(let r=0;r0&&s>w&&(w=s);}else {const t=r[o.fontStack];if(!t)continue;t[y]&&(S=t[y]);const n=e[o.fontStack];if(!n)continue;const s=n.glyphs[y];if(!s)continue;if(v=s.metrics,I=8203!==y?Rh:0,m){const t=void 0!==n.ascender?Math.abs(n.ascender):0,e=void 0!==n.descender?Math.abs(n.descender):0,r=(t+e)*g;_-r/2;){if(a--,a<0)return !1;o-=t[a].dist(s),s=t[a];}o+=t[a].dist(t[a+1]),a++;const l=[];let u=0;for(;on;)u-=l.shift().angleDelta;if(u>i)return !1;a++,o+=e.dist(r);}return !0}function Np(t){let e=0;for(let r=0;ru){const c=(u-l)/s,h=Er(n.x,i.x,c),p=Er(n.y,i.y,c),d=new Op(h,p,0,i.angleTo(n),r);return !a||qp(t,d,o,a,e)?d:void 0}l+=s;}}function Xp(t,e,r,n,i,s,a,o,l){const u=Gp(n,s,a),c=Zp(n,i),h=c*a,p=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-h=0&&g=0&&x=0&&p+u<=c){const r=new Op(g,x,0,y,e);r._round(),n&&!qp(t,r,s,n,i)||d.push(r);}}h+=f;}return o||d.length||a||(d=Jp(t,h/2,r,n,i,s,a,!0,l)),d}function Hp(t,e,r,n,i){const s=[];for(let a=0;a=n&&u.x>=n||(a.x>=n?a=new x(n,a.y+(n-a.x)/(u.x-a.x)*(u.y-a.y))._round():u.x>=n&&(u=new x(n,a.y+(n-a.x)/(u.x-a.x)*(u.y-a.y))._round()),a.y>=i&&u.y>=i||(a.y>=i?a=new x(a.x+(i-a.y)/(u.y-a.y)*(u.x-a.x),i)._round():u.y>=i&&(u=new x(a.x+(i-a.y)/(u.y-a.y)*(u.x-a.x),i)._round()),l&&a.equals(l[l.length-1])||(l=[a],s.push(l)),l.push(u)))));}}return s}Ji(Op,\"Anchor\");const Yp=1e20;function Wp(t,e,r,n,i,s,a,o,l){for(let u=e;u-1);l++,s[l]=o,a[l]=u,a[l+1]=Yp;}for(let o=0,l=0;o{let n=this.entries[t];n||(n=this.entries[t]={glyphs:{},requests:{},ranges:{},ascender:void 0,descender:void 0});let i=n.glyphs[e];if(void 0!==i)return void r(null,{stack:t,id:e,glyph:i});if(i=this._tinySDF(n,t,e),i)return n.glyphs[e]=i,void r(null,{stack:t,id:e,glyph:i});const s=Math.floor(e/256);if(256*s>65535)return void r(new Error(\"glyphs > 65535 not supported\"));if(n.ranges[s])return void r(null,{stack:t,id:e,glyph:i});let a=n.requests[s];a||(a=n.requests[s]=[],rd.loadGlyphRange(t,s,this.url,this.requestManager,((t,e)=>{if(e){n.ascender=e.ascender,n.descender=e.descender;for(const t in e.glyphs)this._doesCharSupportLocalGlyph(+t)||(n.glyphs[+t]=e.glyphs[+t]);n.ranges[s]=!0;}for(const r of a)r(t,e);delete n.requests[s];}))),a.push(((n,i)=>{n?r(n):i&&r(null,{stack:t,id:e,glyph:i.glyphs[e]||null});}));}),((t,r)=>{if(t)e(t);else if(r){const t={};for(const{stack:e,id:n,glyph:i}of r)void 0===t[e]&&(t[e]={}),void 0===t[e].glyphs&&(t[e].glyphs={}),t[e].glyphs[n]=i&&{id:i.id,bitmap:i.bitmap.clone(),metrics:i.metrics},t[e].ascender=this.entries[e].ascender,t[e].descender=this.entries[e].descender;e(null,t);}}));}_doesCharSupportLocalGlyph(t){return this.localGlyphMode!==ed.none&&(this.localGlyphMode===ed.all?!!this.localFontFamily:!!this.localFontFamily&&(ts[\"CJK Unified Ideographs\"](t)||ts[\"Hangul Syllables\"](t)||ts.Hiragana(t)||ts.Katakana(t)||ts[\"CJK Symbols and Punctuation\"](t)))}_tinySDF(t,e,r){const n=this.localFontFamily;if(!n||!this._doesCharSupportLocalGlyph(r))return;let i=t.tinySDF;if(!i){let r=\"400\";/bold/i.test(e)?r=\"900\":/medium/i.test(e)?r=\"500\":/light/i.test(e)&&(r=\"200\"),i=t.tinySDF=new rd.TinySDF({fontFamily:n,fontWeight:r,fontSize:24*td,buffer:3*td,radius:8*td}),i.fontWeight=r;}if(this.localGlyphs[i.fontWeight][r])return this.localGlyphs[i.fontWeight][r];const s=String.fromCharCode(r),{data:a,width:o,height:l,glyphWidth:u,glyphHeight:c,glyphLeft:h,glyphTop:p,glyphAdvance:d}=i.draw(s);return this.localGlyphs[i.fontWeight][r]={id:r,bitmap:new Ru({width:o,height:l},a),metrics:{width:u/td,height:c/td,left:h/td,top:p/td-27,advance:d/td,localGlyph:!0}}}}rd.loadGlyphRange=function(t,e,r,n,i){const s=256*e,a=s+255,o=n.transformRequest(n.normalizeGlyphsURL(r).replace(\"{fontstack}\",t).replace(\"{range}\",`${s}-${a}`),lt.Glyphs);pt(o,((t,e)=>{if(t)i(t);else if(e){const t={},r=function(t){return new mp(t).readFields(xp,{})}(e);for(const e of r.glyphs)t[e.id]=e;i(null,{glyphs:t,ascender:r.ascender,descender:r.descender});}}));},rd.TinySDF=class{constructor({fontSize:t=24,buffer:e=3,radius:r=8,cutoff:n=.25,fontFamily:i=\"sans-serif\",fontWeight:s=\"normal\",fontStyle:a=\"normal\"}={}){this.buffer=e,this.cutoff=n,this.radius=r;const o=this.size=t+4*e,l=this._createCanvas(o),u=this.ctx=l.getContext(\"2d\",{willReadFrequently:!0});u.font=`${a} ${s} ${t}px ${i}`,u.textBaseline=\"alphabetic\",u.textAlign=\"left\",u.fillStyle=\"black\",this.gridOuter=new Float64Array(o*o),this.gridInner=new Float64Array(o*o),this.f=new Float64Array(o),this.z=new Float64Array(o+1),this.v=new Uint16Array(o);}_createCanvas(t){const e=document.createElement(\"canvas\");return e.width=e.height=t,e}draw(t){const{width:e,actualBoundingBoxAscent:r,actualBoundingBoxDescent:n,actualBoundingBoxLeft:i,actualBoundingBoxRight:s}=this.ctx.measureText(t),a=Math.ceil(r),o=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(s-i))),l=Math.min(this.size-this.buffer,a+Math.ceil(n)),u=o+2*this.buffer,c=l+2*this.buffer,h=Math.max(u*c,0),p=new Uint8ClampedArray(h),d={data:p,width:u,height:c,glyphWidth:o,glyphHeight:l,glyphTop:a,glyphLeft:0,glyphAdvance:e};if(0===o||0===l)return d;const{ctx:f,buffer:y,gridInner:m,gridOuter:g}=this;f.clearRect(y,y,o,l),f.fillText(t,y,y+a);const x=f.getImageData(y,y,o,l);g.fill(Yp,0,h),m.fill(0,0,h);for(let t=0;t0?t*t:0,m[n]=t<0?t*t:0;}}Wp(g,0,0,u,c,u,this.f,this.v,this.z),Wp(m,y,y,o,l,u,this.f,this.v,this.z);for(let t=0;tt+e[1]-e[0],f=h.reduce(d,0),y=p.reduce(d,0),m=o-f,g=l-y;let v=0,b=f,w=0,_=y,A=0,S=m,k=0,I=g;if(s.content&&n){const t=s.content;v=sd(h,0,t[0]),w=sd(p,0,t[1]),b=sd(h,t[0],t[2]),_=sd(p,t[1],t[3]),A=t[0]-v,k=t[1]-w,S=t[2]-t[0]-b,I=t[3]-t[1]-_;}const M=(n,i,o,l)=>{const h=od(n.stretch-v,b,u,t.left),p=ld(n.fixed-A,S,n.stretch,f),d=od(i.stretch-w,_,c,t.top),m=ld(i.fixed-k,I,i.stretch,y),g=od(o.stretch-v,b,u,t.left),M=ld(o.fixed-A,S,o.stretch,f),T=od(l.stretch-w,_,c,t.top),z=ld(l.fixed-k,I,l.stretch,y),B=new x(h,d),E=new x(g,d),C=new x(g,T),P=new x(h,T),D=new x(p/a,m/a),V=new x(M/a,z/a),L=e*Math.PI/180;if(L){const t=Math.sin(L),e=Math.cos(L),r=[e,-t,t,e];B._matMult(r),E._matMult(r),P._matMult(r),C._matMult(r);}const F=n.stretch+n.fixed,R=i.stretch+i.fixed;return {tl:B,tr:E,bl:P,br:C,tex:{x:s.paddedRect.x+nd+F,y:s.paddedRect.y+nd+R,w:o.stretch+o.fixed-F,h:l.stretch+l.fixed-R},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:D,pixelOffsetBR:V,minFontScaleX:S/a/u,minFontScaleY:I/a/c,isSDF:r}};if(n&&(s.stretchX||s.stretchY)){const t=ad(h,m,f),e=ad(p,g,y);for(let r=0;r0)for(let t=(this.length>>1)-1;t>=0;t--)this._down(t);}push(t){this.data.push(t),this.length++,this._up(this.length-1);}pop(){if(0===this.length)return;const t=this.data[0],e=this.data.pop();return this.length--,this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){const{data:e,compare:r}=this,n=e[t];for(;t>0;){const i=t-1>>1,s=e[i];if(r(n,s)>=0)break;e[t]=s,t=i;}e[t]=n;}_down(t){const{data:e,compare:r}=this,n=this.length>>1,i=e[t];for(;t=0)break;e[t]=s,t=n;}e[t]=i;}}function hd(t,e){return te?1:0}function pd(t,e=1,r=!1){let n=1/0,i=1/0,s=-1/0,a=-1/0;const o=t[0];for(let t=0;ts)&&(s=e.x),(!t||e.y>a)&&(a=e.y);}const l=Math.min(s-n,a-i);let u=l/2;const c=new cd([],dd);if(0===l)return new x(n,i);for(let e=n;eh.d||!h.d)&&(h=n,r&&console.log(\"found best %d after %d probes\",Math.round(1e4*n.d)/1e4,p)),n.max-h.d<=e||(u=n.h/2,c.push(new fd(n.p.x-u,n.p.y-u,u,t)),c.push(new fd(n.p.x+u,n.p.y-u,u,t)),c.push(new fd(n.p.x-u,n.p.y+u,u,t)),c.push(new fd(n.p.x+u,n.p.y+u,u,t)),p+=4);}return r&&(console.log(`num probes: ${p}`),console.log(`best distance: ${h.d}`)),h.p}function dd(t,e){return e.max-t.max}class fd{constructor(t,e,r,n){this.p=new x(t,e),this.h=r,this.d=function(t,e){let r=!1,n=1/0;for(let i=0;it.y!=o.y>t.y&&t.x<(o.x-i.x)*(t.y-i.y)/(o.y-i.y)+i.x&&(r=!r),n=Math.min(n,xu(t,i,o));}}return (r?1:-1)*Math.sqrt(n)}(this.p,n),this.max=this.d+this.h*Math.SQRT2;}}const yd=7,md=Number.POSITIVE_INFINITY,gd=Math.sqrt(2);function xd(t,[e,r]){let n=0,i=0;if(r===md){e<0&&(e=0);const r=e/gd;switch(t){case\"top-right\":case\"top-left\":i=r-yd;break;case\"bottom-right\":case\"bottom-left\":i=-r+yd;break;case\"bottom\":i=-e+yd;break;case\"top\":i=e-yd;}switch(t){case\"top-right\":case\"bottom-right\":n=-r;break;case\"top-left\":case\"bottom-left\":n=r;break;case\"left\":n=e;break;case\"right\":n=-e;}}else {switch(e=Math.abs(e),r=Math.abs(r),t){case\"top-right\":case\"top-left\":case\"top\":i=r-yd;break;case\"bottom-right\":case\"bottom-left\":case\"bottom\":i=-r+yd;}switch(t){case\"top-right\":case\"bottom-right\":case\"right\":n=-e;break;case\"top-left\":case\"bottom-left\":case\"left\":n=e;}}return [n,i]}function vd(t,e,r,n,i,s,a,o,l,u){t.createArrays(),t.tilePixelRatio=ao/(512*t.overscaling),t.compareText={},t.iconsNeedLinear=!1;const c=t.layers[0].layout,h=t.layers[0]._unevaluatedLayout._values,p={};if(\"composite\"===t.textSizeData.kind){const{minZoom:e,maxZoom:r}=t.textSizeData;p.compositeTextSizes=[h[\"text-size\"].possiblyEvaluate(new ws(e),o),h[\"text-size\"].possiblyEvaluate(new ws(r),o)];}if(\"composite\"===t.iconSizeData.kind){const{minZoom:e,maxZoom:r}=t.iconSizeData;p.compositeIconSizes=[h[\"icon-size\"].possiblyEvaluate(new ws(e),o),h[\"icon-size\"].possiblyEvaluate(new ws(r),o)];}p.layoutTextSize=h[\"text-size\"].possiblyEvaluate(new ws(l+1),o),p.layoutIconSize=h[\"icon-size\"].possiblyEvaluate(new ws(l+1),o),p.textMaxSize=h[\"text-size\"].possiblyEvaluate(new ws(18),o);const d=\"map\"===c.get(\"text-rotation-alignment\")&&\"point\"!==c.get(\"symbol-placement\"),f=c.get(\"text-size\");for(const s of t.features){const l=c.get(\"text-font\").evaluate(s,{},o).join(\",\"),h=f.evaluate(s,{},o),y=p.layoutTextSize.evaluate(s,{},o),m=(p.layoutIconSize.evaluate(s,{},o),{horizontal:{},vertical:void 0}),g=s.text;let x,v=[0,0];if(g){const n=g.toString(),a=c.get(\"text-letter-spacing\").evaluate(s,{},o)*Rh,u=c.get(\"text-line-height\").evaluate(s,{},o)*Rh,p=rs(n)?a:0,f=c.get(\"text-anchor\").evaluate(s,{},o),x=c.get(\"text-variable-anchor\");if(!x){const t=c.get(\"text-radial-offset\").evaluate(s,{},o);v=t?xd(f,[t*Rh,md]):c.get(\"text-offset\").evaluate(s,{},o).map((t=>t*Rh));}let b=d?\"center\":c.get(\"text-justify\").evaluate(s,{},o);const w=\"point\"===c.get(\"symbol-placement\"),_=w?c.get(\"text-max-width\").evaluate(s,{},o)*Rh:1/0,A=s=>{t.allowVerticalPlacement&&es(n)&&(m.vertical=Bp(g,e,r,i,l,_,u,f,s,p,v,Ip.vertical,!0,y,h));};if(!d&&x){const t=\"auto\"===b?x.map((t=>bd(t))):[b];let n=!1;for(let s=0;s=0||!es(n)){const t=Bp(g,e,r,i,l,_,u,f,b,p,v,Ip.horizontal,!1,y,h);t&&(m.horizontal[b]=t);}A(w?\"left\":b);}}let b=!1;if(s.icon&&s.icon.name){const e=n[s.icon.name];e&&(x=$p(i[s.icon.name],c.get(\"icon-offset\").evaluate(s,{},o),c.get(\"icon-anchor\").evaluate(s,{},o)),b=e.sdf,void 0===t.sdfIcons?t.sdfIcons=e.sdf:t.sdfIcons!==e.sdf&&N(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),(e.pixelRatio!==t.pixelRatio||0!==c.get(\"icon-rotate\").constantOr(1))&&(t.iconsNeedLinear=!0));}const w=kd(m.horizontal)||m.vertical;t.iconsInText||(t.iconsInText=!!w&&w.iconsInText),(w||x)&&wd(t,s,m,x,n,p,y,0,v,b,a,o,u);}s&&t.generateCollisionDebugBuffers(l,t.collisionBoxArray);}function bd(t){switch(t){case\"right\":case\"top-right\":case\"bottom-right\":return \"right\";case\"left\":case\"top-left\":case\"bottom-left\":return \"left\"}return \"center\"}function wd(t,e,r,n,i,s,a,o,l,u,c,h,p){let d=s.textMaxSize.evaluate(e,{},h);void 0===d&&(d=a);const f=t.layers[0].layout,y=f.get(\"icon-offset\").evaluate(e,{},h),m=kd(r.horizontal)||r.vertical,g=\"globe\"===p.name,x=Rh,v=a/x,b=t.tilePixelRatio*d/x,_=(B=t.overscaling,t.zoom>18&&B>2&&(B>>=1),Math.max(ao/(512*B),1)*f.get(\"symbol-spacing\")),A=f.get(\"text-padding\")*t.tilePixelRatio,S=f.get(\"icon-padding\")*t.tilePixelRatio,k=w(f.get(\"text-max-angle\")),I=\"map\"===f.get(\"text-rotation-alignment\")&&\"point\"!==f.get(\"symbol-placement\"),M=\"map\"===f.get(\"icon-rotation-alignment\")&&\"point\"!==f.get(\"symbol-placement\"),T=f.get(\"symbol-placement\"),z=_/2;var B;const E=f.get(\"icon-text-fit\");let C;n&&\"none\"!==E&&(t.allowVerticalPlacement&&r.vertical&&(C=jp(n,r.vertical,E,f.get(\"icon-text-fit-padding\"),y,v)),m&&(n=jp(n,m,E,f.get(\"icon-text-fit-padding\"),y,v)));const P=(a,o,d)=>{if(o.x<0||o.x>=ao||o.y<0||o.y>=ao)return;let f=null;if(g){const{x:t,y:e,z:r}=p.projectTilePoint(o.x,o.y,d);f={anchor:new Op(t,e,r,0,void 0),up:p.upVector(d,o.x,o.y)};}!function(t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m,g,x,v,b,w,_,A,S){const k=t.addToLineVertexArray(e,n);let I,M,T,z,B,E,C,P=0,D=0,V=0,L=0,F=-1,R=-1;const U={};let $=Ba(\"\");const j=r?r.anchor:e;let O=0,q=0;if(void 0===l._unevaluatedLayout.getValue(\"text-radial-offset\")?[O,q]=l.layout.get(\"text-offset\").evaluate(b,{},S).map((t=>t*Rh)):(O=l.layout.get(\"text-radial-offset\").evaluate(b,{},S)*Rh,q=md),t.allowVerticalPlacement&&i.vertical){const t=i.vertical;if(f)E=Md(t),o&&(C=Md(o));else {const r=l.layout.get(\"text-rotate\").evaluate(b,{},S)+90;T=Id(u,j,e,c,h,p,t,d,r,y),o&&(z=Id(u,j,e,c,h,p,o,g,r));}}if(s){const n=l.layout.get(\"icon-rotate\").evaluate(b,{},S),i=\"none\"!==l.layout.get(\"icon-text-fit\"),a=id(s,n,_,i),d=o?id(o,n,_,i):void 0;M=Id(u,j,e,c,h,p,s,g,n),P=4*a.length;const f=t.iconSizeData;let y=null;\"source\"===f.kind?(y=[Uh*l.layout.get(\"icon-size\").evaluate(b,{},S)],y[0]>Ad&&N(`${t.layerIds[0]}: Value for \"icon-size\" is >= ${_d}. Reduce your \"icon-size\".`)):\"composite\"===f.kind&&(y=[Uh*w.compositeIconSizes[0].evaluate(b,{},S),Uh*w.compositeIconSizes[1].evaluate(b,{},S)],(y[0]>Ad||y[1]>Ad)&&N(`${t.layerIds[0]}: Value for \"icon-size\" is >= ${_d}. Reduce your \"icon-size\".`)),t.addSymbols(t.icon,a,y,v,x,b,!1,r,e,k.lineStartIndex,k.lineLength,-1,A,S),F=t.icon.placedSymbolArray.length-1,d&&(D=4*d.length,t.addSymbols(t.icon,d,y,v,x,b,Ip.vertical,r,e,k.lineStartIndex,k.lineLength,-1,A,S),R=t.icon.placedSymbolArray.length-1);}for(const n in i.horizontal){const s=i.horizontal[n];I||($=Ba(s.text),f?B=Md(s):I=Id(u,j,e,c,h,p,s,d,l.layout.get(\"text-rotate\").evaluate(b,{},S),y));const o=1===s.positionedLines.length;if(V+=Sd(t,r,e,s,a,l,f,b,y,k,i.vertical?Ip.horizontal:Ip.horizontalOnly,o?Object.keys(i.horizontal):[n],U,F,w,A,S),o)break}i.vertical&&(L+=Sd(t,r,e,i.vertical,a,l,f,b,y,k,Ip.vertical,[\"vertical\"],U,R,w,A,S));let G=-1;const Z=(t,e)=>t?Math.max(t,e):e;G=Z(B,G),G=Z(E,G),G=Z(C,G);const K=G>-1?1:0;t.glyphOffsetArray.length>=of.MAX_GLYPHS&&N(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),void 0!==b.sortKey&&t.addToSortKeyRanges(t.symbolInstances.length,b.sortKey),t.symbolInstances.emplaceBack(j.x,j.y,j.z,e.x,e.y,U.right>=0?U.right:-1,U.center>=0?U.center:-1,U.left>=0?U.left:-1,U.vertical>=0?U.vertical:-1,F,R,$,void 0!==I?I:t.collisionBoxArray.length,void 0!==I?I+1:t.collisionBoxArray.length,void 0!==T?T:t.collisionBoxArray.length,void 0!==T?T+1:t.collisionBoxArray.length,void 0!==M?M:t.collisionBoxArray.length,void 0!==M?M+1:t.collisionBoxArray.length,z||t.collisionBoxArray.length,z?z+1:t.collisionBoxArray.length,c,V,L,P,D,K,0,O,q,G);}(t,o,f,a,r,n,i,C,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,A,I,l,0,S,M,y,e,s,u,c,h);};if(\"line\"===T)for(const i of Hp(e.geometry,0,0,ao,ao)){const e=Xp(i,_,k,r.vertical||m,n,x,b,t.overscaling,ao);for(const r of e)m&&Td(t,m.text,z,r)||P(i,r,h);}else if(\"line-center\"===T){for(const t of e.geometry)if(t.length>1){const e=Kp(t,k,r.vertical||m,n,x,b);e&&P(t,e,h);}}else if(\"Polygon\"===e.type)for(const t of Ac(e.geometry,0)){const e=pd(t,16);P(t[0],new Op(e.x,e.y,0,0,void 0),h);}else if(\"LineString\"===e.type)for(const t of e.geometry)P(t,new Op(t[0].x,t[0].y,0,0,void 0),h);else if(\"Point\"===e.type)for(const t of e.geometry)for(const e of t)P([e],new Op(e.x,e.y,0,0,void 0),h);}const _d=255,Ad=_d*Uh;function Sd(t,e,r,n,i,s,a,o,l,u,c,h,p,d,f,y,m){const g=function(t,e,r,n,i,s,a,o){const l=[];if(0===e.positionedLines.length)return l;const u=n.layout.get(\"text-rotate\").evaluate(s,{})*Math.PI/180,c=function(t){const e=t[0],r=t[1],n=e*r;return n>0?[e,-r]:n<0?[-e,r]:0===e?[r,e]:[r,-e]}(r);let h=Math.abs(e.top-e.bottom);for(const t of e.positionedLines)h-=t.lineOffset;const p=e.positionedLines.length,d=h/p;let f=e.top-r[1];for(let t=0;tAd&&N(`${t.layerIds[0]}: Value for \"text-size\" is >= ${_d}. Reduce your \"text-size\".`)):\"composite\"===v.kind&&(b=[Uh*f.compositeTextSizes[0].evaluate(o,{},m),Uh*f.compositeTextSizes[1].evaluate(o,{},m)],(b[0]>Ad||b[1]>Ad)&&N(`${t.layerIds[0]}: Value for \"text-size\" is >= ${_d}. Reduce your \"text-size\".`)),t.addSymbols(t.text,g,b,l,a,o,c,e,r,u.lineStartIndex,u.lineLength,d,y,m);for(const e of h)p[e]=t.text.placedSymbolArray.length-1;return 4*g.length}function kd(t){for(const e in t)return t[e];return null}function Id(t,e,r,n,i,s,a,o,l,u){let c=a.top,h=a.bottom,p=a.left,d=a.right;const f=a.collisionPadding;if(f&&(p-=f[0],c-=f[1],d+=f[2],h+=f[3]),l){const t=new x(p,c),e=new x(d,c),r=new x(p,h),n=new x(d,h),i=w(l);let s=new x(0,0);u&&(s=new x(u[0],u[1])),t._rotateAround(i,s),e._rotateAround(i,s),r._rotateAround(i,s),n._rotateAround(i,s),p=Math.min(t.x,e.x,r.x,n.x),d=Math.max(t.x,e.x,r.x,n.x),c=Math.min(t.y,e.y,r.y,n.y),h=Math.max(t.y,e.y,r.y,n.y);}return t.emplaceBack(e.x,e.y,e.z,r.x,r.y,p,c,d,h,o,n,i,s),t.length-1}function Md(t){t.collisionPadding&&(t.top-=t.collisionPadding[1],t.bottom+=t.collisionPadding[3]);const e=t.bottom-t.top;return e>0?Math.max(10,e):null}function Td(t,e,r,n){const i=t.compareText;if(e in i){const t=i[e];for(let e=t.length-1;e>=0;e--)if(n.dist(t[e])v&&(b(t,u,n,i,o,l),b(u,r,o,l,s,a));}b(h,p,n,s,i,s),b(p,d,i,s,i,a),b(d,f,i,a,n,a),b(f,h,n,a,n,s),y-=v,m-=v,g+=v,x+=v;const w=1/Math.max(g-y,x-m);return {scale:w,x:y*w,y:m*w,x2:g*w,y2:x*w,projection:e}}const Ed=po(new Float32Array(16));class Cd{constructor(t){this.spec=t,this.name=t.name,this.wrap=!1,this.requiresDraping=!1,this.supportsWorldCopies=!1,this.supportsTerrain=!1,this.supportsFog=!1,this.supportsFreeCamera=!1,this.zAxisUnit=\"meters\",this.isReprojectedInTileSpace=!0,this.unsupportedLayers=[\"custom\"],this.center=[0,0],this.range=[3.5,7];}project(t,e){return {x:0,y:0,z:0}}unproject(t,e){return new Ol(0,0)}projectTilePoint(t,e,r){return {x:t,y:e,z:0}}locationPoint(t,e,r=!0){return t._coordinatePoint(t.locationCoordinate(e),r)}pixelsPerMeter(t,e){return Zl(1,t)*e}pixelSpaceConversion(t,e,r){return 1}farthestPixelDistance(t){return zd(t,t.pixelsPerMeter)}pointCoordinate(t,e,r,n){const i=t.horizonLineFromTop(!1),s=new x(e,Math.max(i,r));return t.rayIntersectionCoordinate(t.pointRayIntersection(s,n))}pointCoordinate3D(t,e,r){const n=new x(e,r);if(t.elevation)return t.elevation.pointCoordinate(n);{const e=this.pointCoordinate(t,n.x,n.y,0);return [e.x,e.y,e.z]}}isPointAboveHorizon(t,e){if(t.elevation)return !this.pointCoordinate3D(t,e.x,e.y);const r=t.horizonLineFromTop();return e.y0?e<-jd+r&&(e=-jd+r):e>jd-r&&(e=jd-r);const s=i/Math.pow(Od(e),n);let a=s*Math.sin(n*t),o=i-s*Math.cos(n*t);return a=.5*(a/Math.PI+.5),o=.5*(o/Math.PI+.5),{x:a,y:this.southernCenter?o:1-o,z:0}}unproject(t,e){t=(2*t-.5)*Math.PI,this.southernCenter&&(e=1-e),e=(2*(1-e)-.5)*Math.PI;const{n:r,f:n}=this,i=n-e,s=Math.sign(i),a=Math.sign(r)*Math.sqrt(t*t+i*i);let o=Math.atan2(t,Math.abs(i))*s;i*r<0&&(o-=Math.PI*Math.sign(t)*s);const l=M(_(o/r)+this.center[0],-180,180),u=M(_(2*Math.atan(Math.pow(n/a,1/r))-jd),-Hl,Hl);return new Ol(l,this.southernCenter?-u:u)}}class Nd extends Cd{constructor(t){super(t),this.wrap=!0,this.supportsWorldCopies=!0,this.supportsTerrain=!0,this.supportsFog=!0,this.supportsFreeCamera=!0,this.isReprojectedInTileSpace=!1,this.unsupportedLayers=[],this.range=null;}project(t,e){return {x:Nl(t),y:Gl(e),z:0}}unproject(t,e){const r=Kl(t),n=Xl(e);return new Ol(r,n)}}const Gd=w(Hl);class Zd extends Cd{project(t,e){const r=(e=w(e))*e,n=r*r;return {x:.5*((t=w(t))*(.8707-.131979*r+n*(n*(.003971*r-.001529*n)-.013791))/Math.PI+.5),y:1-.5*(e*(1.007226+r*(.015085+n*(.028874*r-.044475-.005916*n)))/Math.PI+1),z:0}}unproject(t,e){t=(2*t-.5)*Math.PI;let r=e=(2*(1-e)-1)*Math.PI,n=25,i=0,s=r*r;do{s=r*r;const t=s*s;i=(r*(1.007226+s*(.015085+t*(.028874*s-.044475-.005916*t)))-e)/(1.007226+s*(.045255+t*(.259866*s-.311325-.005916*11*t))),r=M(r-i,-Gd,Gd);}while(Math.abs(i)>1e-6&&--n>0);s=r*r;const a=M(_(t/(.8707+s*(s*(s*s*s*(.003971-.001529*s)-.013791)-.131979))),-180,180),o=_(r);return new Ol(a,o)}}const Kd=w(Hl);class Xd extends Cd{project(t,e){e=w(e),t=w(t);const r=Math.cos(e),n=2/Math.PI,i=Math.acos(r*Math.cos(t/2)),s=Math.sin(i)/i,a=.5*(t*n+2*r*Math.sin(t/2)/s)||0,o=.5*(e+Math.sin(e)/s)||0;return {x:.5*(a/Math.PI+.5),y:1-.5*(o/Math.PI+1),z:0}}unproject(t,e){let r=t=(2*t-.5)*Math.PI,n=e=(2*(1-e)-1)*Math.PI,i=25;const s=1e-6;let a=0,o=0;do{const i=Math.cos(n),s=Math.sin(n),l=2*s*i,u=s*s,c=i*i,h=Math.cos(r/2),p=Math.sin(r/2),d=2*h*p,f=p*p,y=1-c*h*h,m=y?1/y:0,g=y?Math.acos(i*h)*Math.sqrt(1/y):0,x=.5*(2*g*i*p+2*r/Math.PI)-t,v=.5*(g*s+n)-e,b=.5*m*(c*f+g*i*h*u)+1/Math.PI,w=m*(d*l/4-g*s*p),_=.125*m*(l*p-g*s*c*d),A=.5*m*(u*h+g*f*i)+.5,S=w*_-A*b;a=(v*w-x*A)/S,o=(x*_-v*b)/S,r=M(r-a,-Math.PI,Math.PI),n=M(n-o,-Kd,Kd);}while((Math.abs(a)>s||Math.abs(o)>s)&&--i>0);return new Ol(_(r),_(n))}}class Jd extends Cd{constructor(t){super(t),this.center=t.center||[0,0],this.parallels=t.parallels||[0,0],this.cosPhi=Math.max(.01,Math.cos(w(this.parallels[0]))),this.scale=1/(2*Math.max(Math.PI*this.cosPhi,1/this.cosPhi)),this.wrap=!0,this.supportsWorldCopies=!0;}project(t,e){const{scale:r,cosPhi:n}=this;return {x:w(t)*n*r+.5,y:-Math.sin(w(e))/n*r+.5,z:0}}unproject(t,e){const{scale:r,cosPhi:n}=this,i=-(e-.5)/r,s=M(_((t-.5)/r)/n,-180,180),a=Math.asin(M(i*n,-1,1)),o=M(_(a),-Hl,Hl);return new Ol(s,o)}}class Hd extends Nd{constructor(t){super(t),this.requiresDraping=!0,this.supportsWorldCopies=!1,this.supportsFog=!0,this.zAxisUnit=\"pixels\",this.unsupportedLayers=[\"debug\"],this.range=[3,5];}projectTilePoint(t,e,r){const n=Ml(t,e,r);return Fo(n,n,Bl(xl(r))),{x:n[0],y:n[1],z:n[2]}}locationPoint(t,e){const r=Il(e.lat,e.lng),n=Do([],r),i=t.elevation?t.elevation.getAtPointOrZero(t.locationCoordinate(e),t._centerAltitude):t._centerAltitude;Po(r,r,n,Zl(1,0)*ao*i);const s=po(new Float64Array(16));return yo(s,t.pixelMatrix,t.globeMatrix),Fo(r,r,s),new x(r[0],r[1])}pixelsPerMeter(t,e){return Zl(1,0)*e}pixelSpaceConversion(t,e,r){const n=Zl(1,t)*e,i=Er(Zl(1,45)*e,n,r);return this.pixelsPerMeter(t,e)/i}createTileMatrix(t,e,r){const n=El(xl(r.canonical));return yo(new Float64Array(16),t.globeMatrix,n)}createInversionMatrix(t,e){const{center:r}=t,n=Bl(xl(e));return vo(n,n,w(r.lng)),xo(n,n,w(r.lat)),go(n,n,[t._pixelsPerMercatorPixel,t._pixelsPerMercatorPixel,1]),Float32Array.from(n)}pointCoordinate(t,e,r,n){return yl(t,e,r,!0)||new Wl(0,0)}pointCoordinate3D(t,e,r){const n=this.pointCoordinate(t,e,r,0);return [n.x,n.y,n.z]}isPointAboveHorizon(t,e){return !yl(t,e.x,e.y,!1)}farthestPixelDistance(t){const e=function(t,e){const r=t.cameraToCenterDistance,n=t._centerAltitude*e,i=t._camera,s=t._camera.forward(),a=Mo([],Co([],s,-r),[0,0,n]),o=t.worldSize/(2*Math.PI),l=[0,0,-o],u=t.width/t.height,c=Math.tan(t.fovAboveCenter),h=Co([],i.up(),c),p=Co([],i.right(),c*u),d=Do([],Mo([],Mo([],s,h),p)),f=[];let y;if(new el(a,d).closestPointOnSphere(l,o,f)){const e=Mo([],f,l),r=$o([],e,a);y=Math.cos(t.fovAboveCenter)*ko(r);}else {const t=$o([],a,l),e=$o([],l,a);Do(e,e);const r=ko(t)-o;y=Math.sqrt(r*(r+2*o));const n=Math.acos(y/(o+r))-Math.acos(Vo(s,e));y*=Math.cos(n);}return 1.01*y}(t,this.pixelsPerMeter(t.center.lat,t.worldSize)),r=Pl(t.zoom);if(r>0){const n=zd(t,Zl(1,t.center.lat)*t.worldSize),i=t.worldSize/(2*Math.PI),s=Math.max(t.width,t.height)/t.worldSize*Math.PI;return Er(e,n+i*(1-Math.cos(s)),Math.pow(r,10))}return e}upVector(t,e,r){return Ml(e,r,t,1)}upVectorScale(t){return {metersToTile:fl(Tl(xl(t)))}}}function Yd(t){const e=t.parallels,r=!!e&&Math.abs(e[0]+e[1])<.01;switch(t.name){case\"mercator\":return new Nd(t);case\"equirectangular\":return new $d(t);case\"naturalEarth\":return new Zd(t);case\"equalEarth\":return new Ud(t);case\"winkelTripel\":return new Xd(t);case\"albers\":return r?new Jd(t):new Pd(t);case\"lambertConformalConic\":return r?new Jd(t):new qd(t);case\"globe\":return new Hd(t)}throw new Error(`Invalid projection name: ${t.name}`)}const Wd=Kc.types,Qd=[{name:\"a_fade_opacity\",components:1,type:\"Uint8\",offset:0}];function tf(t,e,r,n,i,s,a,o,l,u,c,h,p){const d=o?Math.min(Ad,Math.round(o[0])):0,f=o?Math.min(Ad,Math.round(o[1])):0;t.emplaceBack(e,r,Math.round(32*n),Math.round(32*i),s,a,(d<<1)+(l?1:0),f,16*u,16*c,256*h,256*p);}function ef(t,e,r,n,i,s,a){t.emplaceBack(e,r,n,i,s,a);}function rf(t,e,r,n,i){t.emplaceBack(e,r,n,i),t.emplaceBack(e,r,n,i),t.emplaceBack(e,r,n,i),t.emplaceBack(e,r,n,i);}function nf(t){for(const e of t.sections)if(ls(e.text))return !0;return !1}class sf{constructor(t){this.layoutVertexArray=new Xs,this.indexArray=new ra,this.programConfigurations=t,this.segments=new so,this.dynamicLayoutVertexArray=new Ns,this.opacityVertexArray=new Hs,this.placedSymbolArray=new fa,this.globeExtVertexArray=new Js;}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length}upload(t,e,r,n){this.isEmpty()||(r&&(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Eh.members),this.indexBuffer=t.createIndexBuffer(this.indexArray,e),this.dynamicLayoutVertexBuffer=t.createVertexBuffer(this.dynamicLayoutVertexArray,Ph.members,!0),this.opacityVertexBuffer=t.createVertexBuffer(this.opacityVertexArray,Qd,!0),this.globeExtVertexArray.length>0&&(this.globeExtVertexBuffer=t.createVertexBuffer(this.globeExtVertexArray,Ch.members,!0)),this.opacityVertexBuffer.itemSize=1),(r||n)&&this.programConfigurations.upload(t));}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy());}}Ji(sf,\"SymbolBuffers\");class af{constructor(t,e,r){this.layoutVertexArray=new t,this.layoutAttributes=e,this.indexArray=new r,this.segments=new so,this.collisionVertexArray=new ta,this.collisionVertexArrayExt=new ea;}upload(t){this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=t.createVertexBuffer(this.collisionVertexArray,Dh.members,!0),this.collisionVertexBufferExt=t.createVertexBuffer(this.collisionVertexArrayExt,Vh.members,!0);}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy(),this.collisionVertexBufferExt.destroy());}}Ji(af,\"CollisionBuffers\");class of{constructor(t){this.collisionBoxArray=t.collisionBoxArray,this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.pixelRatio=t.pixelRatio,this.sourceLayerIndex=t.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.fullyClipped=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=po([]),this.placementViewportMatrix=po([]);const e=this.layers[0]._unevaluatedLayout._values;this.textSizeData=$h(this.zoom,e[\"text-size\"]),this.iconSizeData=$h(this.zoom,e[\"icon-size\"]);const r=this.layers[0].layout,n=r.get(\"symbol-sort-key\"),i=r.get(\"symbol-z-order\");this.canOverlap=r.get(\"text-allow-overlap\")||r.get(\"icon-allow-overlap\")||r.get(\"text-ignore-placement\")||r.get(\"icon-ignore-placement\"),this.sortFeaturesByKey=\"viewport-y\"!==i&&void 0!==n.constantOr(1),this.sortFeaturesByY=(\"viewport-y\"===i||\"auto\"===i&&!this.sortFeaturesByKey)&&this.canOverlap,this.writingModes=r.get(\"text-writing-mode\").map((t=>Ip[t])),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id)),this.sourceID=t.sourceID,this.projection=t.projection;}createArrays(){this.text=new sf(new Ja(this.layers,this.zoom,(t=>/^text/.test(t)))),this.icon=new sf(new Ja(this.layers,this.zoom,(t=>/^icon/.test(t)))),this.glyphOffsetArray=new ga,this.lineVertexArray=new xa,this.symbolInstances=new ma;}calculateGlyphDependencies(t,e,r,n,i){for(let r=0;r0)&&(\"constant\"!==o.value.kind||o.value.value.length>0),h=\"constant\"!==u.value.kind||!!u.value.value||Object.keys(u.parameters).length>0,p=s.get(\"symbol-sort-key\");if(this.features=[],!c&&!h)return;const d=e.iconDependencies,f=e.glyphDependencies,y=e.availableImages,m=new ws(this.zoom);for(const{feature:e,id:l,index:u,sourceLayerIndex:g}of t){const t=i._featureFilter.needGeometry,x=ou(e,t);if(!i._featureFilter.filter(m,x,r))continue;if(t||(x.geometry=au(e,r,n)),a&&1!==e.type&&r.z<=5){const t=x.geometry,e=.98078528056,n=(t,n)=>Vo(Ml(t.x,t.y,r,1),Ml(n.x,n.y,r,1))=0;for(const r of v.sections)if(r.image)d[r.image.name]=!0;else {const n=es(v.toString()),i=r.fontStack||t,s=f[i]=f[i]||{};this.calculateGlyphDependencies(r.text,s,e,this.allowVerticalPlacement,n);}}}\"line\"===s.get(\"symbol-placement\")&&(this.features=function(t){const e={},r={},n=[];let i=0;function s(e){n.push(t[e]),i++;}function a(t,e,i){const s=r[t];return delete r[t],r[e]=s,n[s].geometry[0].pop(),n[s].geometry[0]=n[s].geometry[0].concat(i[0]),s}function o(t,r,i){const s=e[r];return delete e[r],e[t]=s,n[s].geometry[0].shift(),n[s].geometry[0]=i[0].concat(n[s].geometry[0]),s}function l(t,e,r){const n=r?e[0][e[0].length-1]:e[0][0];return `${t}:${n.x}:${n.y}`}for(let u=0;ut.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((t,e)=>t.sortKey-e.sortKey));}update(t,e,r,n){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,r,n),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,r,n));}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return !this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0;}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy();}getProjection(){return this.projectionInstance||(this.projectionInstance=Yd(this.projection)),this.projectionInstance}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData();}addToLineVertexArray(t,e){const r=this.lineVertexArray.length;if(void 0!==t.segment)for(const{x:t,y:r}of e)this.lineVertexArray.emplaceBack(t,r);return {lineStartIndex:r,lineLength:this.lineVertexArray.length-r}}addSymbols(t,e,r,n,i,s,a,o,l,u,c,h,p,d){const f=t.indexArray,y=t.layoutVertexArray,m=t.globeExtVertexArray,g=t.segments.prepareSegment(4*e.length,y,f,this.canOverlap?s.sortKey:void 0),x=this.glyphOffsetArray.length,v=g.vertexLength,b=this.allowVerticalPlacement&&a===Ip.vertical?Math.PI/2:0,w=s.text&&s.text.sections;for(let n=0;n=0?e.rightJustifiedTextSymbolIndex:e.centerJustifiedTextSymbolIndex>=0?e.centerJustifiedTextSymbolIndex:e.leftJustifiedTextSymbolIndex>=0?e.leftJustifiedTextSymbolIndex:e.verticalPlacedTextSymbolIndex>=0?e.verticalPlacedTextSymbolIndex:n),s=jh(this.textSizeData,t,i)/Rh;return this.tilePixelRatio*s}getSymbolInstanceIconSize(t,e,r){const n=this.icon.placedSymbolArray.get(r),i=jh(this.iconSizeData,t,n);return this.tilePixelRatio*i}_commitDebugCollisionVertexUpdate(t,e,r){t.emplaceBack(e,-r,-r),t.emplaceBack(e,r,-r),t.emplaceBack(e,r,r),t.emplaceBack(e,-r,r);}_updateTextDebugCollisionBoxes(t,e,r,n,i,s){for(let a=n;a0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(t,e){const r=t.placedSymbolArray.get(e),n=r.vertexStartIndex+4*r.numGlyphs;for(let e=r.vertexStartIndex;en[t]-n[e]||i[e]-i[t])),s}addToSortKeyRanges(t,e){const r=this.sortKeyRanges[this.sortKeyRanges.length-1];r&&r.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1});}sortFeatures(t){if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const t of this.symbolInstanceIndexes){const e=this.symbolInstances.get(t);this.featureSortOrder.push(e.featureIndex);const{rightJustifiedTextSymbolIndex:r,centerJustifiedTextSymbolIndex:n,leftJustifiedTextSymbolIndex:i,verticalPlacedTextSymbolIndex:s,placedIconSymbolIndex:a,verticalPlacedIconSymbolIndex:o}=e;r>=0&&this.addIndicesForPlacedSymbol(this.text,r),n>=0&&n!==r&&this.addIndicesForPlacedSymbol(this.text,n),i>=0&&i!==n&&i!==r&&this.addIndicesForPlacedSymbol(this.text,i),s>=0&&this.addIndicesForPlacedSymbol(this.text,s),a>=0&&this.addIndicesForPlacedSymbol(this.icon,a),o>=0&&this.addIndicesForPlacedSymbol(this.icon,o);}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray);}}}Ji(of,\"SymbolBucket\",{omit:[\"layers\",\"collisionBoxArray\",\"features\",\"compareText\"]}),of.MAX_GLYPHS=65535,of.addDynamicAttributes=rf;const lf=new Ps({\"symbol-placement\":new Bs(te.layout_symbol[\"symbol-placement\"]),\"symbol-spacing\":new Bs(te.layout_symbol[\"symbol-spacing\"]),\"symbol-avoid-edges\":new Bs(te.layout_symbol[\"symbol-avoid-edges\"]),\"symbol-sort-key\":new Es(te.layout_symbol[\"symbol-sort-key\"]),\"symbol-z-order\":new Bs(te.layout_symbol[\"symbol-z-order\"]),\"icon-allow-overlap\":new Bs(te.layout_symbol[\"icon-allow-overlap\"]),\"icon-ignore-placement\":new Bs(te.layout_symbol[\"icon-ignore-placement\"]),\"icon-optional\":new Bs(te.layout_symbol[\"icon-optional\"]),\"icon-rotation-alignment\":new Bs(te.layout_symbol[\"icon-rotation-alignment\"]),\"icon-size\":new Es(te.layout_symbol[\"icon-size\"]),\"icon-text-fit\":new Bs(te.layout_symbol[\"icon-text-fit\"]),\"icon-text-fit-padding\":new Bs(te.layout_symbol[\"icon-text-fit-padding\"]),\"icon-image\":new Es(te.layout_symbol[\"icon-image\"]),\"icon-rotate\":new Es(te.layout_symbol[\"icon-rotate\"]),\"icon-padding\":new Bs(te.layout_symbol[\"icon-padding\"]),\"icon-keep-upright\":new Bs(te.layout_symbol[\"icon-keep-upright\"]),\"icon-offset\":new Es(te.layout_symbol[\"icon-offset\"]),\"icon-anchor\":new Es(te.layout_symbol[\"icon-anchor\"]),\"icon-pitch-alignment\":new Bs(te.layout_symbol[\"icon-pitch-alignment\"]),\"text-pitch-alignment\":new Bs(te.layout_symbol[\"text-pitch-alignment\"]),\"text-rotation-alignment\":new Bs(te.layout_symbol[\"text-rotation-alignment\"]),\"text-field\":new Es(te.layout_symbol[\"text-field\"]),\"text-font\":new Es(te.layout_symbol[\"text-font\"]),\"text-size\":new Es(te.layout_symbol[\"text-size\"]),\"text-max-width\":new Es(te.layout_symbol[\"text-max-width\"]),\"text-line-height\":new Es(te.layout_symbol[\"text-line-height\"]),\"text-letter-spacing\":new Es(te.layout_symbol[\"text-letter-spacing\"]),\"text-justify\":new Es(te.layout_symbol[\"text-justify\"]),\"text-radial-offset\":new Es(te.layout_symbol[\"text-radial-offset\"]),\"text-variable-anchor\":new Bs(te.layout_symbol[\"text-variable-anchor\"]),\"text-anchor\":new Es(te.layout_symbol[\"text-anchor\"]),\"text-max-angle\":new Bs(te.layout_symbol[\"text-max-angle\"]),\"text-writing-mode\":new Bs(te.layout_symbol[\"text-writing-mode\"]),\"text-rotate\":new Es(te.layout_symbol[\"text-rotate\"]),\"text-padding\":new Bs(te.layout_symbol[\"text-padding\"]),\"text-keep-upright\":new Bs(te.layout_symbol[\"text-keep-upright\"]),\"text-transform\":new Es(te.layout_symbol[\"text-transform\"]),\"text-offset\":new Es(te.layout_symbol[\"text-offset\"]),\"text-allow-overlap\":new Bs(te.layout_symbol[\"text-allow-overlap\"]),\"text-ignore-placement\":new Bs(te.layout_symbol[\"text-ignore-placement\"]),\"text-optional\":new Bs(te.layout_symbol[\"text-optional\"])});var uf={paint:new Ps({\"icon-opacity\":new Es(te.paint_symbol[\"icon-opacity\"]),\"icon-color\":new Es(te.paint_symbol[\"icon-color\"]),\"icon-halo-color\":new Es(te.paint_symbol[\"icon-halo-color\"]),\"icon-halo-width\":new Es(te.paint_symbol[\"icon-halo-width\"]),\"icon-halo-blur\":new Es(te.paint_symbol[\"icon-halo-blur\"]),\"icon-translate\":new Bs(te.paint_symbol[\"icon-translate\"]),\"icon-translate-anchor\":new Bs(te.paint_symbol[\"icon-translate-anchor\"]),\"text-opacity\":new Es(te.paint_symbol[\"text-opacity\"]),\"text-color\":new Es(te.paint_symbol[\"text-color\"],{runtimeType:pe,getOverride:t=>t.textColor,hasOverride:t=>!!t.textColor}),\"text-halo-color\":new Es(te.paint_symbol[\"text-halo-color\"]),\"text-halo-width\":new Es(te.paint_symbol[\"text-halo-width\"]),\"text-halo-blur\":new Es(te.paint_symbol[\"text-halo-blur\"]),\"text-translate\":new Bs(te.paint_symbol[\"text-translate\"]),\"text-translate-anchor\":new Bs(te.paint_symbol[\"text-translate-anchor\"])}),layout:lf};class cf{constructor(t){this.type=t.property.overrides?t.property.overrides.runtimeType:le,this.defaultValue=t;}evaluate(t){if(t.formattedSection){const e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default}eachChild(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression);}outputDefined(){return !1}serialize(){return null}}Ji(cf,\"FormatSectionOverride\",{omit:[\"defaultValue\"]});class hf extends ro{constructor(t){super(t,uf);}recalculate(t,e){super.recalculate(t,e),\"auto\"===this.layout.get(\"icon-rotation-alignment\")&&(this.layout._values[\"icon-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"viewport\"),\"auto\"===this.layout.get(\"text-rotation-alignment\")&&(this.layout._values[\"text-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"viewport\"),\"auto\"===this.layout.get(\"text-pitch-alignment\")&&(this.layout._values[\"text-pitch-alignment\"]=this.layout.get(\"text-rotation-alignment\")),\"auto\"===this.layout.get(\"icon-pitch-alignment\")&&(this.layout._values[\"icon-pitch-alignment\"]=this.layout.get(\"icon-rotation-alignment\"));const r=this.layout.get(\"text-writing-mode\");if(r){const t=[];for(const e of r)t.indexOf(e)<0&&t.push(e);this.layout._values[\"text-writing-mode\"]=t;}else this.layout._values[\"text-writing-mode\"]=\"point\"===this.layout.get(\"symbol-placement\")?[\"horizontal\"]:[\"horizontal\",\"vertical\"];this._setPaintOverrides();}getValueAndResolveTokens(t,e,r,n){const i=this.layout.get(t).evaluate(e,{},r,n),s=this._unevaluatedLayout._values[t];return s.isDataDriven()||Jn(s.value)||!i?i:function(t,e){return e.replace(/{([^{}]+)}/g,((e,r)=>r in t?String(t[r]):\"\"))}(e.properties,i)}createBucket(t){return new of(t)}queryRadius(){return 0}queryIntersectsFeature(){return !1}_setPaintOverrides(){for(const t of uf.paint.overridableProperties){if(!hf.hasPaintOverride(this.layout,t))continue;const e=this.paint.get(t),r=new cf(e),n=new Xn(r,e.property.specification);let i=null;i=\"constant\"===e.value.kind||\"source\"===e.value.kind?new Yn(\"source\",n):new Wn(\"composite\",n,e.value.zoomStops,e.value._interpolationType),this.paint._values[t]=new Ts(e.property,i,e.parameters);}}_handleOverridablePaintPropertyUpdate(t,e,r){return !(!this.layout||e.isDataDriven()||r.isDataDriven())&&hf.hasPaintOverride(this.layout,t)}static hasPaintOverride(t,e){const r=t.get(\"text-field\"),n=uf.paint.properties[e];let i=!1;const s=t=>{for(const e of t)if(n.overrides&&n.overrides.hasOverride(e))return void(i=!0)};if(\"constant\"===r.value.kind&&r.value.value instanceof De)s(r.value.value.sections);else if(\"source\"===r.value.kind){const t=e=>{i||(e instanceof je&&Re(e.value)===me?s(e.value.sections):e instanceof Ze?s(e.sections):e.eachChild(t));},e=r.value;e._styleExpression&&t(e._styleExpression.expression);}return i}getProgramConfiguration(t){return new Xa(this,t)}}var pf={paint:new Ps({\"background-color\":new Bs(te.paint_background[\"background-color\"]),\"background-pattern\":new Bs(te.paint_background[\"background-pattern\"]),\"background-opacity\":new Bs(te.paint_background[\"background-opacity\"])})},df={paint:new Ps({\"raster-opacity\":new Bs(te.paint_raster[\"raster-opacity\"]),\"raster-hue-rotate\":new Bs(te.paint_raster[\"raster-hue-rotate\"]),\"raster-brightness-min\":new Bs(te.paint_raster[\"raster-brightness-min\"]),\"raster-brightness-max\":new Bs(te.paint_raster[\"raster-brightness-max\"]),\"raster-saturation\":new Bs(te.paint_raster[\"raster-saturation\"]),\"raster-contrast\":new Bs(te.paint_raster[\"raster-contrast\"]),\"raster-resampling\":new Bs(te.paint_raster[\"raster-resampling\"]),\"raster-fade-duration\":new Bs(te.paint_raster[\"raster-fade-duration\"])})};class ff extends ro{constructor(t){super(t,{}),this.implementation=t;}is3D(){return \"3d\"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}isLayerDraped(){return void 0!==this.implementation.renderToTile}shouldRedrape(){return !!this.implementation.shouldRerenderTiles&&this.implementation.shouldRerenderTiles()}recalculate(){}updateTransitions(){}hasTransition(){return !1}serialize(){}onAdd(t){this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl);}onRemove(t){this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl);}}var yf={paint:new Ps({\"sky-type\":new Bs(te.paint_sky[\"sky-type\"]),\"sky-atmosphere-sun\":new Bs(te.paint_sky[\"sky-atmosphere-sun\"]),\"sky-atmosphere-sun-intensity\":new Bs(te.paint_sky[\"sky-atmosphere-sun-intensity\"]),\"sky-gradient-center\":new Bs(te.paint_sky[\"sky-gradient-center\"]),\"sky-gradient-radius\":new Bs(te.paint_sky[\"sky-gradient-radius\"]),\"sky-gradient\":new Cs(te.paint_sky[\"sky-gradient\"]),\"sky-atmosphere-halo-color\":new Bs(te.paint_sky[\"sky-atmosphere-halo-color\"]),\"sky-atmosphere-color\":new Bs(te.paint_sky[\"sky-atmosphere-color\"]),\"sky-opacity\":new Bs(te.paint_sky[\"sky-opacity\"])})};function mf(t,e,r){const n=[0,0,1],i=Ko([]);return Jo(i,i,r?-w(t)+Math.PI:w(t)),Xo(i,i,-w(e)),Ro(n,n,i),Do(n,n)}const gf={circle:class extends ro{constructor(t){super(t,Tu);}createBucket(t){return new cu(t)}queryRadius(t){const e=t;return Au(\"circle-radius\",this,e)+Au(\"circle-stroke-width\",this,e)+Su(this.paint.get(\"circle-translate\"))}queryIntersectsFeature(t,e,r,n,i,s,a,o){const l=Iu(this.paint.get(\"circle-translate\"),this.paint.get(\"circle-translate-anchor\"),s.angle,t.pixelToTileUnitsFactor),u=this.paint.get(\"circle-radius\").evaluate(e,r)+this.paint.get(\"circle-stroke-width\").evaluate(e,r);return zu(t,n,s,a,o,\"map\"===this.paint.get(\"circle-pitch-alignment\"),\"map\"===this.paint.get(\"circle-pitch-scale\"),l,u)}getProgramIds(){return [\"circle\"]}getProgramConfiguration(t){return new Xa(this,t)}},heatmap:class extends ro{createBucket(t){return new Du(t)}constructor(t){super(t,$u),this._updateColorRamp();}_handleSpecialPaintPropertyUpdate(t){\"heatmap-color\"===t&&this._updateColorRamp();}_updateColorRamp(){this.colorRamp=ju({expression:this._transitionablePaint._values[\"heatmap-color\"].value.expression,evaluationKey:\"heatmapDensity\",image:this.colorRamp}),this.colorRampTexture=null;}resize(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null);}queryRadius(t){return Au(\"heatmap-radius\",this,t)}queryIntersectsFeature(t,e,r,n,i,s,a,o){const l=this.paint.get(\"heatmap-radius\").evaluate(e,r);return zu(t,n,s,a,o,!0,!0,new x(0,0),l)}hasOffscreenPass(){return 0!==this.paint.get(\"heatmap-opacity\")&&\"none\"!==this.visibility}getProgramIds(){return [\"heatmap\",\"heatmapTexture\"]}getProgramConfiguration(t){return new Xa(this,t)}},hillshade:class extends ro{constructor(t){super(t,Ou);}hasOffscreenPass(){return 0!==this.paint.get(\"hillshade-exaggeration\")&&\"none\"!==this.visibility}getProgramIds(){return [\"hillshade\",\"hillshadePrepare\"]}},fill:class extends ro{constructor(t){super(t,zc);}getProgramIds(){const t=this.paint.get(\"fill-pattern\"),e=t&&t.constantOr(1),r=[e?\"fillPattern\":\"fill\"];return this.paint.get(\"fill-antialias\")&&r.push(e&&!this.getPaintProperty(\"fill-outline-color\")?\"fillOutlinePattern\":\"fillOutline\"),r}getProgramConfiguration(t){return new Xa(this,t)}recalculate(t,e){super.recalculate(t,e);const r=this.paint._values[\"fill-outline-color\"];\"constant\"===r.value.kind&&void 0===r.value.value&&(this.paint._values[\"fill-outline-color\"]=this.paint._values[\"fill-color\"]);}createBucket(t){return new Mc(t)}queryRadius(){return Su(this.paint.get(\"fill-translate\"))}queryIntersectsFeature(t,e,r,n,i,s){return !t.queryGeometry.isAboveHorizon&&du(ku(t.tilespaceGeometry,this.paint.get(\"fill-translate\"),this.paint.get(\"fill-translate-anchor\"),s.angle,t.pixelToTileUnitsFactor),n)}isTileClipped(){return !0}},\"fill-extrusion\":class extends ro{constructor(t){super(t,ch);}createBucket(t){return new th(t)}queryRadius(){return Su(this.paint.get(\"fill-extrusion-translate\"))}is3D(){return !0}getProgramIds(){return [this.paint.get(\"fill-extrusion-pattern\").constantOr(1)?\"fillExtrusionPattern\":\"fillExtrusion\"]}getProgramConfiguration(t){return new Xa(this,t)}queryIntersectsFeature(t,e,r,n,i,s,a,o,l){const u=Iu(this.paint.get(\"fill-extrusion-translate\"),this.paint.get(\"fill-extrusion-translate-anchor\"),s.angle,t.pixelToTileUnitsFactor),c=this.paint.get(\"fill-extrusion-height\").evaluate(e,r),h=this.paint.get(\"fill-extrusion-base\").evaluate(e,r),p=[0,0],d=o&&s.elevation,f=s.elevation?s.elevation.exaggeration():1,y=t.tile.getBucket(this);if(d&&y instanceof th){const t=y.centroidVertexArray,e=l+1;et.polygon)).flat());const m=d?o:null,[g,v]=function(t,e,r,n,i,s,a,o,l,u,c){return \"globe\"===t.projection.name?function(t,e,r,n,i,s,a,o,l,u,c){const h=[],p=[],d=t.projection.upVectorScale(c,t.center.lat,t.worldSize).metersToTile,f=[0,0,0,1],y=[0,0,0,1],m=(t,e,r,n)=>{t[0]=e,t[1]=r,t[2]=n,t[3]=1;},g=oh();r>0&&(r+=g),n+=g;for(const g of e){const e=[],x=[];for(const h of g){const p=h.x+i.x,g=h.y+i.y,v=t.projection.projectTilePoint(p,g,c),b=t.projection.upVector(c,h.x,h.y);let w=r,_=n;if(a){const t=vh(p,g,r,n,a,o,l,u);w+=t.base,_+=t.top;}0!==r?m(f,v.x+b[0]*d*w,v.y+b[1]*d*w,v.z+b[2]*d*w):m(f,v.x,v.y,v.z),m(y,v.x+b[0]*d*_,v.y+b[1]*d*_,v.z+b[2]*d*_),Fo(f,f,s),Fo(y,y,s),e.push(new mh(f[0],f[1],f[2])),x.push(new mh(y[0],y[1],y[2]));}h.push(e),p.push(x);}return [h,p]}(t,e,r,n,i,s,a,o,l,u,c):a?function(t,e,r,n,i,s,a,o,l){const u=[],c=[],h=[0,0,0,1];for(const p of t){const t=[],d=[];for(const u of p){const c=u.x+n.x,p=u.y+n.y,f=vh(c,p,e,r,s,a,o,l);h[0]=c,h[1]=p,h[2]=f.base,h[3]=1,Go(h,h,i),h[3]=Math.max(h[3],1e-5);const y=new mh(h[0]/h[3],h[1]/h[3],h[2]/h[3]);h[0]=c,h[1]=p,h[2]=f.top,h[3]=1,Go(h,h,i),h[3]=Math.max(h[3],1e-5);const m=new mh(h[0]/h[3],h[1]/h[3],h[2]/h[3]);t.push(y),d.push(m);}u.push(t),c.push(d);}return [u,c]}(e,r,n,i,s,a,o,l,u):function(t,e,r,n,i){const s=[],a=[],o=i[8]*e,l=i[9]*e,u=i[10]*e,c=i[11]*e,h=i[8]*r,p=i[9]*r,d=i[10]*r,f=i[11]*r;for(const e of t){const t=[],r=[];for(const s of e){const e=s.x+n.x,a=s.y+n.y,y=i[0]*e+i[4]*a+i[12],m=i[1]*e+i[5]*a+i[13],g=i[2]*e+i[6]*a+i[14],x=i[3]*e+i[7]*a+i[15],v=y+o,b=m+l,w=g+u,_=Math.max(x+c,1e-5),A=y+h,S=m+p,k=g+d,I=Math.max(x+f,1e-5);t.push(new mh(v/_,b/_,w/_)),r.push(new mh(A/I,S/I,k/I));}s.push(t),a.push(r);}return [s,a]}(e,r,n,i,s)}(s,n,h,c,u,a,m,p,f,s.center.lat,t.tileID.canonical),b=t.queryGeometry;return function(t,e,r){let n=1/0;du(r,e)&&(n=xh(r,e[0]));for(let i=0;i=3)for(let e=0;e{this._triggered=!1,this._callback();});}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._callback();}),0));}remove(){this._channel=void 0,this._callback=()=>{};}}class bf{constructor(){this.tasks={},this.taskQueue=[],R([\"process\"],this),this.invoker=new vf(this.process),this.nextId=0;}add(t,e){const r=this.nextId++,n=function({type:t,isSymbolTile:e,zoom:r}){return r=r||0,\"message\"===t?0:\"maybePrepare\"!==t||e?\"parseTile\"!==t||e?\"parseTile\"===t&&e?300-r:\"maybePrepare\"===t&&e?400-r:500:200-r:100-r}(e);if(0===n){K();try{t();}finally{}return {cancel:()=>{}}}return this.tasks[r]={fn:t,metadata:e,priority:n,id:r},this.taskQueue.push(r),this.invoker.trigger(),{cancel:()=>{delete this.tasks[r];}}}process(){K();try{if(this.taskQueue=this.taskQueue.filter((t=>!!this.tasks[t])),!this.taskQueue.length)return;const t=this.pick();if(null===t)return;const e=this.tasks[t];if(delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),!e)return;e.fn();}finally{}}pick(){let t=null,e=1/0;for(let r=0;r>=1)>1;){const t=r+i>>1,l=n+s>>1;1&e?(i=r,s=n,r=a,n=o):(r=i,n=s,i=a,s=o),a=t,o=l;}const l=4*t;If[l+0]=r,If[l+1]=n,If[l+2]=i,If[l+3]=s;}const Mf=new Uint16Array(2178),Tf=new Uint8Array(1089),zf=new Uint16Array(1089);function Bf(t){return 0===t?-.03125:32===t?.03125:0}var Ef=Rs([{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]);const Cf={type:2,extent:ao,loadGeometry:()=>[[new x(0,0),new x(ao+1,0),new x(ao+1,ao+1),new x(0,ao+1),new x(0,0)]]};class Pf{constructor(t,e,r,n,i){this.tileID=t,this.uid=D(),this.uses=0,this.tileSize=e,this.tileZoom=r,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.isRaster=i,this.expiredRequestCount=0,this.state=\"loading\",n&&n.transform&&(this.projection=n.transform.projection);}registerFadeDuration(t){const e=t+this.timeAdded;ee.getLayer(t))).filter(Boolean);if(0!==t.length){n.layers=t,n.stateDependentLayerIds&&(n.stateDependentLayers=n.stateDependentLayerIds.map((e=>t.filter((t=>t.id===e))[0])));for(const e of t)r[e.id]=n;}}return r}(t.buckets,e.style),this.hasSymbolBuckets=!1;for(const t in this.buckets){const e=this.buckets[t];if(e instanceof of){if(this.hasSymbolBuckets=!0,!r)break;e.justReloaded=!0;}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const t in this.buckets){const e=this.buckets[t];if(e instanceof of&&e.hasRTLText){this.hasRTLText=!0,bs.isLoading()||bs.isLoaded()||\"deferred\"!==xs()||vs();break}}this.queryPadding=0;for(const t in this.buckets){const r=this.buckets[t];this.queryPadding=Math.max(this.queryPadding,e.style.getLayer(t).queryRadius(r));}t.imageAtlas&&(this.imageAtlas=t.imageAtlas),t.glyphAtlasImage&&(this.glyphAtlasImage=t.glyphAtlasImage),t.lineAtlas&&(this.lineAtlas=t.lineAtlas);}else this.collisionBoxArray=new pa;}unloadVectorData(){if(this.hasData()){for(const t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlas&&(this.imageAtlas=null),this.lineAtlas&&(this.lineAtlas=null),this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.lineAtlasTexture&&this.lineAtlasTexture.destroy(),this._tileBoundsBuffer&&(this._tileBoundsBuffer.destroy(),this._tileBoundsIndexBuffer.destroy(),this._tileBoundsSegments.destroy(),this._tileBoundsBuffer=null),this._tileDebugBuffer&&(this._tileDebugBuffer.destroy(),this._tileDebugSegments.destroy(),this._tileDebugBuffer=null),this._tileDebugIndexBuffer&&(this._tileDebugIndexBuffer.destroy(),this._tileDebugIndexBuffer=null),this._globeTileDebugBorderBuffer&&(this._globeTileDebugBorderBuffer.destroy(),this._globeTileDebugBorderBuffer=null),this._tileDebugTextBuffer&&(this._tileDebugTextBuffer.destroy(),this._tileDebugTextSegments.destroy(),this._tileDebugTextIndexBuffer.destroy(),this._tileDebugTextBuffer=null),this._globeTileDebugTextBuffer&&(this._globeTileDebugTextBuffer.destroy(),this._globeTileDebugTextBuffer=null),this.latestFeatureIndex=null,this.state=\"unloaded\";}}getBucket(t){return this.buckets[t.id]}upload(t){for(const e in this.buckets){const r=this.buckets[e];r.uploadPending()&&r.upload(t);}const e=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new xf(t,this.imageAtlas.image,e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new xf(t,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null),this.lineAtlas&&!this.lineAtlas.uploaded&&(this.lineAtlasTexture=new xf(t,this.lineAtlas.image,e.ALPHA),this.lineAtlas.uploaded=!0);}prepare(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture);}queryRenderedFeatures(t,e,r,n,i,s,a,o){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({tileResult:n,pixelPosMatrix:a,transform:s,params:i,tileTransform:this.tileTransform},t,e,r):{}}querySourceFeatures(t,e){const r=this.latestFeatureIndex;if(!r||!r.rawTileData)return;const n=r.loadVTLayers(),i=e?e.sourceLayer:\"\",s=n._geojsonTileLayer||n[i];if(!s)return;const a=hi(e&&e.filter),{z:o,x:l,y:u}=this.tileID.canonical,c={z:o,x:l,y:u};for(let e=0;et)r=!1;else if(e)if(this.expirationTime=0;t--){const e=4*t,r=If[e+0],n=If[e+1],i=If[e+2],s=If[e+3],a=r+i>>1,o=n+s>>1,l=a+o-n,u=o+r-a,c=n*kf+r,h=s*kf+i,p=o*kf+a,d=Math.hypot((Mf[2*c+0]+Mf[2*h+0])/2-Mf[2*p+0],(Mf[2*c+1]+Mf[2*h+1])/2-Mf[2*p+1])>=16;Tf[p]=Tf[p]||(d?1:0),t<1022&&(Tf[p]=Tf[p]||Tf[(n+u>>1)*kf+(r+l>>1)]||Tf[(s+u>>1)*kf+(i+l>>1)]);}const i=new Os,s=new ra;let a=0;function o(t,e){const r=e*kf+t;return 0===zf[r]&&(i.emplaceBack(Mf[2*r+0],Mf[2*r+1],t*ao/Sf,e*ao/Sf),zf[r]=++a),zf[r]-1}function l(t,e,r,n,i,a){const u=t+r>>1,c=e+n>>1;if(Math.abs(t-i)+Math.abs(e-a)>1&&Tf[c*kf+u])l(i,a,t,e,u,c),l(r,n,i,a,u,c);else {const l=o(t,e),u=o(r,n),c=o(i,a);s.emplaceBack(l,u,c);}}return l(0,0,Sf,Sf,Sf,0),l(Sf,Sf,0,0,0,Sf),{vertices:i,indices:s}}(this.tileID.canonical,e);n=t.vertices,i=t.indices;}else {n=new Os,i=new ra;for(const{x:t,y:e}of r)n.emplaceBack(t,e,0,0);const t=xc(n.int16,void 0,4);for(let e=0;e0&&(a=fo(new Float64Array(16),e.globeMatrix)),this._makeGlobeTileDebugBorderBuffer(t,n,e,i,a,s),this._makeGlobeTileDebugTextBuffer(t,n,e,i,a,s);}_globePoint(t,e,r,n,i,s,a){let o=Ml(t,e,r);if(s){const i=1<.5?h=-1:c<-.5&&(h=1);let p=(t/ao+r.x)/i+h,d=(e/ao+r.y)/i;p=(p-l)*n._pixelsPerMercatorPixel+l,d=(d-u)*n._pixelsPerMercatorPixel+u;const f=[p*n.worldSize,d*n.worldSize,0];Fo(f,f,s),o=vl(o,f,a);}return Fo(o,o,i)}_makeGlobeTileDebugBorderBuffer(t,e,r,n,i,s){const a=new $s,o=new ua,l=new js,u=(t,u,c,h,p)=>{const d=(c-t)/(p-1),f=(h-u)/(p-1),y=a.length;for(let c=0;cc*t+e;for(let t=0;te[a])return null}else {const o=1/n[a];let l=(t[a]-r[a])*o,u=(e[a]-r[a])*o;if(l>u){const t=l;l=u,u=t;}if(l>i&&(i=l),us)return null}return i}function Ff(t,e,r,n,i,s,a,o,l,u,c){const h=n-t,p=i-e,d=s-r,f=a-t,y=o-e,m=l-r,g=c[1]*m-c[2]*y,x=c[2]*f-c[0]*m,v=c[0]*y-c[1]*f,b=h*g+p*x+d*v;if(Math.abs(b)<1e-15)return null;const w=1/b,_=u[0]-t,A=u[1]-e,S=u[2]-r,k=(_*g+A*x+S*v)*w;if(k<0||k>1)return null;const I=A*d-S*p,M=S*h-_*d,T=_*p-A*h,z=(c[0]*I+c[1]*M+c[2]*T)*w;return z<0||k+z>1?null:(f*I+y*M+m*T)*w}function Rf(t,e,r){return (t-e)/(r-e)}function Uf(t,e,r,n,i,s,a,o,l){const u=1<{const s=n?1:0,a=(t+1)*r-s,o=e*r,l=(e+1)*r-s;i[0]=t*r,i[1]=o,i[2]=a,i[3]=l;};let a=new Vf(n);const o=[];for(let e=0;e=1;n/=2){const t=r[r.length-1];a=new Vf(n);for(let e=0;e0;){const{idx:o,t:d,nodex:f,nodey:y,depth:m}=p.pop();if(this.leaves[o]){Uf(f,y,m,t,e,r,n,c,h);const o=1<=t[2])return d}continue}let g=0;for(let p=0;p=l[u[r]]&&(u.splice(r,0,p),e=!0);e||(u[g]=p),g++;}}for(let t=0;t=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError(\"out of range source coordinates for DEM data\");return (e+1)*this.stride+(t+1)}static pack(t,e){const r=[0,0,0,0],n=Zf.getUnpackVector(e);let i=Math.floor((t+n[3])/n[2]);return r[2]=i%256,i=Math.floor(i/256),r[1]=i%256,i=Math.floor(i/256),r[0]=i,r}getPixels(){return new Uu({width:this.stride,height:this.stride},this.pixels)}backfillBorder(t,e,r){if(this.dim!==t.dim)throw new Error(\"dem dimension mismatch\");let n=e*this.dim,i=e*this.dim+this.dim,s=r*this.dim,a=r*this.dim+this.dim;switch(e){case-1:n=i-1;break;case 1:i=n+1;}switch(r){case-1:s=a-1;break;case 1:a=s+1;}const o=-e*this.dim,l=-r*this.dim;for(let e=s;e{this.remove(t,i);}),r)),this.data[n].push(i),this.order.push(n),this.order.length>this.max){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t);}return this}has(t){return t.wrapped().key in this.data}getAndRemove(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null}_getAndRemoveByKey(t){const e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value}getByKey(t){const e=this.data[t];return e?e[0].value:null}get(t){return this.has(t)?this.data[t.wrapped().key][0].value:null}remove(t,e){if(!this.has(t))return this;const r=t.wrapped().key,n=void 0===e?0:this.data[r].indexOf(e),i=this.data[r][n];return this.data[r].splice(n,1),i.timeout&&clearTimeout(i.timeout),0===this.data[r].length&&delete this.data[r],this.onRemove(i.value),this.order.splice(this.order.indexOf(r),1),this}setMaxSize(t){for(this.max=t;this.order.length>this.max;){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t);}return this}filter(t){const e=[];for(const r in this.data)for(const n of this.data[r])t(n.value)||e.push(n);for(const t of e)this.remove(t.value.tileID,t);}}class Xf{constructor(t,e,r){this.func=t,this.mask=e,this.range=r;}}Xf.ReadOnly=!1,Xf.ReadWrite=!0,Xf.disabled=new Xf(519,Xf.ReadOnly,[0,1]);const Jf=7680;class Hf{constructor(t,e,r,n,i,s){this.test=t,this.ref=e,this.mask=r,this.fail=n,this.depthFail=i,this.pass=s;}}Hf.disabled=new Hf({func:519,mask:0},0,0,Jf,Jf,Jf);class Yf{constructor(t,e,r){this.blendFunction=t,this.blendColor=e,this.mask=r;}}Yf.Replace=[1,0],Yf.disabled=new Yf(Yf.Replace,Ee.transparent,[!1,!1,!1,!1]),Yf.unblended=new Yf(Yf.Replace,Ee.transparent,[!0,!0,!0,!0]),Yf.alphaBlended=new Yf([1,771],Ee.transparent,[!0,!0,!0,!0]);const Wf=1029,Qf=2305;class ty{constructor(t,e,r){this.enable=t,this.mode=e,this.frontFace=r;}}ty.disabled=new ty(!1,Wf,Qf),ty.backCCW=new ty(!0,Wf,Qf),ty.backCW=new ty(!0,Wf,2304),ty.frontCW=new ty(!0,1028,2304),ty.frontCCW=new ty(!0,1028,Qf);class ey extends Qt{constructor(t,e,r){super(),this.id=t,this._onlySymbols=r,e.on(\"data\",(t=>{\"source\"===t.dataType&&\"metadata\"===t.sourceDataType&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&\"source\"===t.dataType&&\"content\"===t.sourceDataType&&(this.reload(),this.transform&&this.update(this.transform));})),e.on(\"error\",(()=>{this._sourceErrored=!0;})),this._source=e,this._tiles={},this._cache=new Kf(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._minTileCacheSize=e.minTileCacheSize,this._maxTileCacheSize=e.maxTileCacheSize,this._loadedParentTiles={},this._coveredTiles={},this._state=new Df,this._isRaster=\"raster\"===this._source.type||\"raster-dem\"===this._source.type||\"custom\"===this._source.type&&\"raster\"===this._source._dataType;}onAdd(t){this.map=t,this._minTileCacheSize=void 0===this._minTileCacheSize&&t?t._minTileCacheSize:this._minTileCacheSize,this._maxTileCacheSize=void 0===this._maxTileCacheSize&&t?t._maxTileCacheSize:this._maxTileCacheSize;}loaded(){if(this._sourceErrored)return !0;if(!this._sourceLoaded)return !1;if(!this._source.loaded())return !1;for(const t in this._tiles){const e=this._tiles[t];if(\"loaded\"!==e.state&&\"errored\"!==e.state)return !1}return !0}getSource(){return this._source}pause(){this._paused=!0;}resume(){if(!this._paused)return;const t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform);}_loadTile(t,e){return t.isSymbolTile=this._onlySymbols,this._source.loadTile(t,e)}_unloadTile(t){if(this._source.unloadTile)return this._source.unloadTile(t,(()=>{}))}_abortTile(t){if(this._source.abortTile)return this._source.abortTile(t,(()=>{}))}serialize(){return this._source.serialize()}prepare(t){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const e in this._tiles){const r=this._tiles[e];r.upload(t),r.prepare(this.map.style.imageManager);}}getIds(){return E(this._tiles).map((t=>t.tileID)).sort(ry).map((t=>t.key))}getRenderableIds(t){const e=[];for(const r in this._tiles)this._isIdRenderable(+r,t)&&e.push(this._tiles[r]);return t?e.sort(((t,e)=>{const r=t.tileID,n=e.tileID,i=new x(r.canonical.x,r.canonical.y)._rotate(this.transform.angle),s=new x(n.canonical.x,n.canonical.y)._rotate(this.transform.angle);return r.overscaledZ-n.overscaledZ||s.y-i.y||s.x-i.x})).map((t=>t.tileID.key)):e.map((t=>t.tileID)).sort(ry).map((t=>t.key))}hasRenderableParent(t){const e=this.findLoadedParent(t,0);return !!e&&this._isIdRenderable(e.tileID.key)}_isIdRenderable(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else {this._cache.reset();for(const t in this._tiles)\"errored\"!==this._tiles[t].state&&this._reloadTile(+t,\"reloading\");}}_reloadTile(t,e){const r=this._tiles[t];r&&(\"loading\"!==r.state&&(r.state=e),this._loadTile(r,this._tileLoaded.bind(this,r,t,e)));}_tileLoaded(t,e,r,n){if(n)if(t.state=\"errored\",404!==n.status)this._source.fire(new Wt(n,{tile:t}));else if(\"raster-dem\"===this._source.type&&this.usedForTerrain&&this.map.painter.terrain){const t=this.map.painter.terrain;this.update(this.transform,t.getScaledDemTileSize(),!0),t.resetTileLookupCache(this.id);}else this.update(this.transform);else t.timeAdded=Xt.now(),\"expired\"===r&&(t.refreshedUponExpiration=!0),this._setTileReloadTimer(e,t),\"raster-dem\"===this._source.type&&t.dem&&this._backfillDEM(t),this._state.initializeTileState(t,this.map?this.map.painter:null),this._source.fire(new Yt(\"data\",{dataType:\"source\",tile:t,coord:t.tileID,sourceCacheId:this.id}));}_backfillDEM(t){const e=this.getRenderableIds();for(let n=0;n1||(Math.abs(r)>1&&(1===Math.abs(r+i)?r+=i:1===Math.abs(r-i)&&(r-=i)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,r,n),t.neighboringTiles&&t.neighboringTiles[s]&&(t.neighboringTiles[s].backfilled=!0)));}}getTile(t){return this.getTileByID(t.key)}getTileByID(t){return this._tiles[t]}_retainLoadedChildren(t,e,r,n){for(const i in this._tiles){let s=this._tiles[i];if(n[i]||!s.hasData()||s.tileID.overscaledZ<=e||s.tileID.overscaledZ>r)continue;let a=s.tileID;for(;s&&s.tileID.overscaledZ>e+1;){const t=s.tileID.scaledTo(s.tileID.overscaledZ-1);s=this._tiles[t.key],s&&s.hasData()&&(a=t);}let o=a;for(;o.overscaledZ>e;)if(o=o.scaledTo(o.overscaledZ-1),t[o.key]){n[a.key]=a;break}}}findLoadedParent(t,e){if(t.key in this._loadedParentTiles){const r=this._loadedParentTiles[t.key];return r&&r.tileID.overscaledZ>=e?r:null}for(let r=t.overscaledZ-1;r>=e;r--){const e=t.scaledTo(r),n=this._getLoadedTile(e);if(n)return n}}_getLoadedTile(t){const e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(this._source.reparseOverscaled?t.wrapped().key:t.canonical.key)}updateCacheSize(t,e){e=e||this._source.tileSize;const r=Math.ceil(t.width/e)+1,n=Math.ceil(t.height/e)+1,i=Math.floor(r*n*5),s=\"number\"==typeof this._minTileCacheSize?Math.max(this._minTileCacheSize,i):i,a=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,s):s;this._cache.setMaxSize(a);}handleWrapJump(t){const e=Math.round((t-(void 0===this._prevLng?t:this._prevLng))/360);if(this._prevLng=t,e){const t={};for(const r in this._tiles){const n=this._tiles[r];n.tileID=n.tileID.unwrapTo(n.tileID.wrap+e),t[n.tileID.key]=n;}this._tiles=t;for(const t in this._timers)clearTimeout(this._timers[t]),delete this._timers[t];for(const t in this._tiles)this._setTileReloadTimer(+t,this._tiles[t]);}}update(t,e,r){if(this.transform=t,!this._sourceLoaded||this._paused||this.transform.freezeTileCoverage)return;if(this.usedForTerrain&&!r)return;let n;this.updateCacheSize(t,e),\"globe\"!==this.transform.projection.name&&this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?n=t.getVisibleUnwrappedCoordinates(this._source.tileID).map((t=>new fh(t.canonical.z,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y))):(n=t.coveringTiles({tileSize:e||this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!r,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain}),this._source.hasTile&&(n=n.filter((t=>this._source.hasTile(t))))):n=[];const i=this._updateRetainedTiles(n);if(ny(this._source.type)&&0!==n.length){const t={},e={},r=Object.keys(i);for(const n of r){const r=i[n],s=this._tiles[n];if(!s||s.fadeEndTime&&s.fadeEndTime<=Xt.now())continue;const a=this.findLoadedParent(r,Math.max(r.overscaledZ-ey.maxOverzooming,this._source.minzoom));a&&(this._addTile(a.tileID),t[a.tileID.key]=a.tileID),e[n]=r;}const s=n[n.length-1].overscaledZ;for(const t in this._tiles){const r=this._tiles[t];if(i[t]||!r.hasData())continue;let n=r.tileID;for(;n.overscaledZ>s;){n=n.scaledTo(n.overscaledZ-1);const s=this._tiles[n.key];if(s&&s.hasData()&&e[n.key]){i[t]=r.tileID;break}}}for(const e in t)i[e]||(this._coveredTiles[e]=!0,i[e]=t[e]);}for(const t in i)this._tiles[t].clearFadeHold();const s=function(t,e){const r=[];for(const n in t)n in e||r.push(n);return r}(this._tiles,i);for(const t of s){const e=this._tiles[t];e.hasSymbolBuckets&&!e.holdingForFade()?e.setHoldDuration(this.map._fadeDuration):e.hasSymbolBuckets&&!e.symbolFadeFinished()||this._removeTile(+t);}this._updateLoadedParentTileCache(),this._onlySymbols&&this._source.afterUpdate&&this._source.afterUpdate();}releaseSymbolFadeTiles(){for(const t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(+t);}_updateRetainedTiles(t){const e={};if(0===t.length)return e;const r={},n=t.reduce(((t,e)=>Math.min(t,e.overscaledZ)),1/0),i=t[0].overscaledZ,s=Math.max(i-ey.maxOverzooming,this._source.minzoom),a=Math.max(i+ey.maxUnderzooming,this._source.minzoom),o={};for(const r of t){const t=this._addTile(r);e[r.key]=r,t.hasData()||n=this._source.maxzoom){const t=n.children(this._source.maxzoom)[0],r=this.getTile(t);if(r&&r.hasData()){e[t.key]=t;continue}}else {const t=n.children(this._source.maxzoom);if(e[t[0].key]&&e[t[1].key]&&e[t[2].key]&&e[t[3].key])continue}let i=t.wasRequested();for(let a=n.overscaledZ-1;a>=s;--a){const s=n.scaledTo(a);if(r[s.key])break;if(r[s.key]=!0,t=this.getTile(s),!t&&i&&(t=this._addTile(s)),t&&(e[s.key]=s,i=t.wasRequested(),t.hasData()))break}}return e}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const t in this._tiles){const e=[];let r,n=this._tiles[t].tileID;for(;n.overscaledZ>0;){if(n.key in this._loadedParentTiles){r=this._loadedParentTiles[n.key];break}e.push(n.key);const t=n.scaledTo(n.overscaledZ-1);if(r=this._getLoadedTile(t),r)break;n=t;}for(const t of e)this._loadedParentTiles[t]=r;}}_addTile(t){let e=this._tiles[t.key];if(e)return e;e=this._cache.getAndRemove(t),e&&(this._setTileReloadTimer(t.key,e),e.tileID=t,this._state.initializeTileState(e,this.map?this.map.painter:null),this._cacheTimers[t.key]&&(clearTimeout(this._cacheTimers[t.key]),delete this._cacheTimers[t.key],this._setTileReloadTimer(t.key,e)));const r=Boolean(e);if(!r){const r=this.map?this.map.painter:null;e=new Pf(t,this._source.tileSize*t.overscaleFactor(),this.transform.tileZoom,r,this._isRaster),this._loadTile(e,this._tileLoaded.bind(this,e,t.key,e.state));}return e?(e.uses++,this._tiles[t.key]=e,r||this._source.fire(new Yt(\"dataloading\",{tile:e,coord:e.tileID,dataType:\"source\"})),e):null}_setTileReloadTimer(t,e){t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);const r=e.getExpiryTimeout();r&&(this._timers[t]=setTimeout((()=>{this._reloadTile(t,\"expired\"),delete this._timers[t];}),r));}_removeTile(t){const e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&\"reloading\"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))));}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const t in this._tiles)this._removeTile(+t);this._source._clear&&this._source._clear(),this._cache.reset(),this.map&&this.usedForTerrain&&this.map.painter.terrain&&this.map.painter.terrain.resetTileLookupCache(this.id);}tilesIn(t,e,r){const n=[],i=this.transform;if(!i)return n;const s=\"globe\"===i.projection.name,a=Nl(i.center.lng);for(const o in this._tiles){const l=this._tiles[o];if(r&&l.clearQueryDebugViz(),l.holdingForFade())continue;let u;if(s){const t=l.tileID.canonical;if(0===t.z){const e=[Math.abs(M(a,...iy(t,-1))-a),Math.abs(M(a,...iy(t,1))-a)];u=[0,2*e.indexOf(Math.min(...e))-1];}else {const e=[Math.abs(M(a,...iy(t,-1))-a),Math.abs(M(a,...iy(t,0))-a),Math.abs(M(a,...iy(t,1))-a)];u=[e.indexOf(Math.min(...e))-1];}}else u=[0];for(const r of u){const s=t.containsTile(l,i,e,r);s&&n.push(s);}}return n}getVisibleCoordinates(t){const e=this.getRenderableIds(t).map((t=>this._tiles[t].tileID));for(const t of e)t.projMatrix=this.transform.calculateProjMatrix(t.toUnwrapped());return e}hasTransition(){if(this._source.hasTransition())return !0;if(ny(this._source.type))for(const t in this._tiles){const e=this._tiles[t];if(void 0!==e.fadeEndTime&&e.fadeEndTime>=Xt.now())return !0}return !1}setFeatureState(t,e,r){this._state.updateState(t=t||\"_geojsonTileLayer\",e,r);}removeFeatureState(t,e,r){this._state.removeFeatureState(t=t||\"_geojsonTileLayer\",e,r);}getFeatureState(t,e){return this._state.getState(t=t||\"_geojsonTileLayer\",e)}setDependencies(t,e,r){const n=this._tiles[t];n&&n.setDependencies(e,r);}reloadTilesForDependencies(t,e){for(const r in this._tiles)this._tiles[r].hasDependency(t,e)&&this._reloadTile(+r,\"reloading\");this._cache.filter((r=>!r.hasDependency(t,e)));}_preloadTiles(t,e){if(!this._sourceLoaded){const r=()=>{this._sourceLoaded&&(this._source.off(\"data\",r),this._preloadTiles(t,e));};return void this._source.on(\"data\",r)}const r=new Map,n=Array.isArray(t)?t:[t],i=this.map.painter.terrain,s=this.usedForTerrain&&i?i.getScaledDemTileSize():this._source.tileSize;for(const t of n){const e=t.coveringTiles({tileSize:s,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!this.usedForTerrain,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain});for(const t of e)r.set(t.key,t);this.usedForTerrain&&t.updateElevation(!1);}B(Array.from(r.values()),((t,e)=>{const r=new Pf(t,this._source.tileSize*t.overscaleFactor(),this.transform.tileZoom,this.map.painter,this._isRaster);this._loadTile(r,(t=>{\"raster-dem\"===this._source.type&&r.dem&&this._backfillDEM(r),e(t,r);}));}),e);}}function ry(t,e){const r=Math.abs(2*t.wrap)-+(t.wrap<0),n=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||n-r||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function ny(t){return \"raster\"===t||\"image\"===t||\"video\"===t||\"custom\"===t}function iy(t,e){const r=1<=0&&n[3]>=0&&o.insert(a,n[0],n[1],n[2],n[3]);}}loadVTLayers(){if(!this.vtLayers){this.vtLayers=new Zc(new mp(this.rawTileData)).layers,this.sourceLayerCoder=new wf(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"]),this.vtFeatures={};for(const t in this.vtLayers)this.vtFeatures[t]=[];}return this.vtLayers}query(t,e,r,n){this.loadVTLayers();const i=t.params||{},s=hi(i.filter),a=t.tileResult,o=t.transform,l=a.bufferedTilespaceBounds,u=this.grid.query(l.min.x,l.min.y,l.max.x,l.max.y,((t,e,r,n)=>wu(a.bufferedTilespaceGeometry,t,e,r,n)));u.sort(ly);let c=null;o.elevation&&u.length>0&&(c=sy.create(o.elevation,this.tileID));const h={};let p;for(let o=0;o(f||(f=au(e,this.tileID.canonical,t.tileTransform)),r.queryIntersectsFeature(a,e,n,f,this.z,t.transform,t.pixelPosMatrix,c,i))));}return h}loadMatchingFeature(t,e,r,n,i,s,a,o,l){const{featureIndex:u,bucketIndex:c,sourceLayerIndex:h,layoutVertexArrayOffset:p}=e,d=this.bucketLayerIDs[c];if(n&&!function(t,e){for(let r=0;r=0)return !0;return !1}(n,d))return;const f=this.sourceLayerCoder.decode(h),y=this.vtLayers[f].feature(u);if(r.needGeometry){const t=ou(y,!0);if(!r.filter(new ws(this.tileID.overscaledZ),t,this.tileID.canonical))return}else if(!r.filter(new ws(this.tileID.overscaledZ),y))return;const m=this.getId(y,f);for(let e=0;e{const a=e instanceof zs?e.get(s):null;return a&&a.evaluate?a.evaluate(r,n,i):a}))}function ly(t,e){return e-t}Ji(ay,\"FeatureIndex\",{omit:[\"rawTileData\",\"sourceLayerCoder\"]});class uy{constructor(t,e){this.width=t,this.height=e,this.nextRow=0,this.image=new Ru({width:t,height:e}),this.positions={},this.uploaded=!1;}getDash(t,e){const r=this.getKey(t,e);return this.positions[r]}trim(){const t=this.width,e=this.height=L(this.nextRow);this.image.resize({width:t,height:e});}getKey(t,e){return t.join(\",\")+e}getDashRanges(t,e,r){const n=[];let i=t.length%2==1?-t[t.length-1]*r:0,s=t[0]*r,a=!0;n.push({left:i,right:s,isDash:a,zeroLength:0===t[0]});let o=t[0];for(let e=1;e1&&(a=t[++s]);const l=Math.abs(o-a.left),u=Math.abs(o-a.right),c=Math.min(l,u);let h;const p=e/r*(n+1);if(a.isDash){const t=n-Math.abs(p);h=Math.sqrt(c*c+t*t);}else h=n-Math.sqrt(c*c+p*p);this.image.data[i+o]=Math.max(0,Math.min(255,h+128));}}}addRegularDash(t,e){for(let e=t.length-1;e>=0;--e){const r=t[e],n=t[e+1];r.zeroLength?t.splice(e,1):n&&n.isDash===r.isDash&&(n.left=r.left,t.splice(e,1));}const r=t[0],n=t[t.length-1];r.isDash===n.isDash&&(r.left=n.left-this.width,n.right=r.right+this.width);const i=this.width*this.nextRow;let s=0,a=t[s];for(let r=0;r1&&(a=t[++s]);const n=Math.abs(r-a.left),o=Math.abs(r-a.right),l=Math.min(n,o);this.image.data[i+r]=Math.max(0,Math.min(255,(a.isDash?l:-l)+e+128));}}addDash(t,e){const r=this.getKey(t,e);if(this.positions[r])return this.positions[r];const n=\"round\"===e,i=n?7:0,s=2*i+1;if(this.nextRow+s>this.height)return N(\"LineAtlas out of space\"),null;0===t.length&&t.push(1);let a=0;for(let e=0;e=e.maxzoom||\"none\"!==e.visibility&&(dy(t,this.zoom,r),(o[e.id]=e.createBucket({index:a.bucketLayerIDs.length,layers:t,zoom:this.zoom,canonical:this.canonical,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:h,sourceID:this.source,enableTerrain:this.enableTerrain,projection:this.projection.spec,availableImages:r})).populate(p,u,this.tileID.canonical,this.tileTransform),a.bucketLayerIDs.push(t.map((t=>t.id))));}}let h,p,d,f;l.trim();const y={type:\"maybePrepare\",isSymbolTile:this.isSymbolTile,zoom:this.zoom},m=()=>{if(h)return i(h);if(p&&d&&f){const t=new hy(p),e=new kp(d,f);for(const n in o){const i=o[n];i instanceof of?(dy(i.layers,this.zoom,r),vd(i,p,t.positions,d,e.iconPositions,this.showCollisionBoxes,r,this.tileID.canonical,this.tileZoom,this.projection)):i.hasPattern&&(i instanceof Ih||i instanceof Mc||i instanceof th)&&(dy(i.layers,this.zoom,r),i.addFeatures(u,this.tileID.canonical,e.patternPositions,r,this.tileTransform));}this.status=\"done\",i(null,{buckets:E(o).filter((t=>!t.isEmpty())),featureIndex:a,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:t.image,lineAtlas:l,imageAtlas:e,glyphMap:this.returnDependencies?p:null,iconMap:this.returnDependencies?d:null,glyphPositions:this.returnDependencies?t.positions:null});}},g=$(u.glyphDependencies,(t=>Object.keys(t).map(Number)));Object.keys(g).length?n.send(\"getGlyphs\",{uid:this.uid,stacks:g},((t,e)=>{h||(h=t,p=e,m());}),void 0,!1,y):p={};const x=Object.keys(u.iconDependencies);x.length?n.send(\"getImages\",{icons:x,source:this.source,tileID:this.tileID,type:\"icons\"},((t,e)=>{h||(h=t,d=e,m());}),void 0,!1,y):d={};const v=Object.keys(u.patternDependencies);v.length?n.send(\"getImages\",{icons:v,source:this.source,tileID:this.tileID,type:\"patterns\"},((t,e)=>{h||(h=t,f=e,m());}),void 0,!1,y):f={},m();}}function dy(t,e,r){const n=new ws(e);for(const e of t)e.recalculate(n,r);}class fy{constructor(t){this.entries={},this.scheduler=t;}request(t,e,r,n){const i=this.entries[t]=this.entries[t]||{callbacks:[]};if(i.result){const[t,r]=i.result;return this.scheduler?this.scheduler.add((()=>{n(t,r);}),e):n(t,r),()=>{}}return i.callbacks.push(n),i.cancel||(i.cancel=r(((r,n)=>{i.result=[r,n];for(const t of i.callbacks)this.scheduler?this.scheduler.add((()=>{t(r,n);}),e):t(r,n);setTimeout((()=>delete this.entries[t]),3e3);}))),()=>{i.result||(i.callbacks=i.callbacks.filter((t=>t!==n)),i.callbacks.length||(i.cancel(),delete this.entries[t]));}}}function yy(t,e,r){const n=JSON.stringify(t.request);return t.data&&(this.deduped.entries[n]={result:[null,t.data]}),this.deduped.request(n,{type:\"parseTile\",isSymbolTile:t.isSymbolTile,zoom:t.tileZoom},(e=>{const n=pt(t.request,((t,n,i,s)=>{t?e(t):n&&e(null,{vectorTile:r?void 0:new Zc(new mp(n)),rawData:n,cacheControl:i,expires:s});}));return ()=>{n.cancel(),e();}}),e)}const my=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class gy{static from(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");const[e,r]=new Uint8Array(t,0,2);if(219!==e)throw new Error(\"Data does not appear to be in a KDBush format.\");const n=r>>4;if(1!==n)throw new Error(`Got v${n} data when expected v1.`);const i=my[15&r];if(!i)throw new Error(\"Unrecognized array type.\");const[s]=new Uint16Array(t,2,1),[a]=new Uint32Array(t,4,1);return new gy(a,s,i,t)}constructor(t,e=64,r=Float64Array,n){if(isNaN(t)||t<0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+e,2),65535),this.ArrayType=r,this.IndexArrayType=t<65536?Uint16Array:Uint32Array;const i=my.indexOf(this.ArrayType),s=2*t*this.ArrayType.BYTES_PER_ELEMENT,a=t*this.IndexArrayType.BYTES_PER_ELEMENT,o=(8-a%8)%8;if(i<0)throw new Error(`Unexpected typed array class: ${r}.`);n&&n instanceof ArrayBuffer?(this.data=n,this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+a+o,2*t),this._pos=2*t,this._finished=!0):(this.data=new ArrayBuffer(8+s+a+o),this.ids=new this.IndexArrayType(this.data,8,t),this.coords=new this.ArrayType(this.data,8+a+o,2*t),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+i]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t);}add(t,e){const r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=t,this.coords[this._pos++]=e,r}finish(){const t=this._pos>>1;if(t!==this.numItems)throw new Error(`Added ${t} items when expected ${this.numItems}.`);return xy(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(t,e,r,n){if(!this._finished)throw new Error(\"Data not yet indexed - call index.finish().\");const{ids:i,coords:s,nodeSize:a}=this,o=[0,i.length-1,0],l=[];for(;o.length;){const u=o.pop()||0,c=o.pop()||0,h=o.pop()||0;if(c-h<=a){for(let a=h;a<=c;a++){const o=s[2*a],u=s[2*a+1];o>=t&&o<=r&&u>=e&&u<=n&&l.push(i[a]);}continue}const p=h+c>>1,d=s[2*p],f=s[2*p+1];d>=t&&d<=r&&f>=e&&f<=n&&l.push(i[p]),(0===u?t<=d:e<=f)&&(o.push(h),o.push(p-1),o.push(1-u)),(0===u?r>=d:n>=f)&&(o.push(p+1),o.push(c),o.push(1-u));}return l}within(t,e,r){if(!this._finished)throw new Error(\"Data not yet indexed - call index.finish().\");const{ids:n,coords:i,nodeSize:s}=this,a=[0,n.length-1,0],o=[],l=r*r;for(;a.length;){const u=a.pop()||0,c=a.pop()||0,h=a.pop()||0;if(c-h<=s){for(let r=h;r<=c;r++)_y(i[2*r],i[2*r+1],t,e)<=l&&o.push(n[r]);continue}const p=h+c>>1,d=i[2*p],f=i[2*p+1];_y(d,f,t,e)<=l&&o.push(n[p]),(0===u?t-r<=d:e-r<=f)&&(a.push(h),a.push(p-1),a.push(1-u)),(0===u?t+r>=d:e+r>=f)&&(a.push(p+1),a.push(c),a.push(1-u));}return o}}function xy(t,e,r,n,i,s){if(i-n<=r)return;const a=n+i>>1;vy(t,e,a,n,i,s),xy(t,e,r,n,a-1,1-s),xy(t,e,r,a+1,i,1-s);}function vy(t,e,r,n,i,s){for(;i>n;){if(i-n>600){const a=i-n+1,o=r-n+1,l=Math.log(a),u=.5*Math.exp(2*l/3),c=.5*Math.sqrt(l*u*(a-u)/a)*(o-a/2<0?-1:1);vy(t,e,r,Math.max(n,Math.floor(r-o*u/a+c)),Math.min(i,Math.floor(r+(a-o)*u/a+c)),s);}const a=e[2*r+s];let o=n,l=i;for(by(t,e,n,r),e[2*i+s]>a&&by(t,e,n,i);oa;)l--;}e[2*n+s]===a?by(t,e,n,l):(l++,by(t,e,l,i)),l<=r&&(n=l+1),r<=l&&(i=l-1);}}function by(t,e,r,n){wy(t,r,n),wy(e,2*r,2*n),wy(e,2*r+1,2*n+1);}function wy(t,e,r){const n=t[e];t[e]=t[r],t[r]=n;}function _y(t,e,r,n){const i=t-r,s=e-n;return i*i+s*s}t.ARRAY_TYPE=uo,t.AUTH_ERR_MSG=xt,t.Aabb=il,t.Actor=class{constructor(t,r,n){this.target=t,this.parent=r,this.mapId=n,this.callbacks={},this.cancelCallbacks={},R([\"receive\"],this),this.target.addEventListener(\"message\",this.receive,!1),this.globalScope=K()?t:e,this.scheduler=new bf;}send(t,e,r,n,i=!1,s){const a=Math.round(1e18*Math.random()).toString(36).substring(0,10);r&&(r.metadata=s,this.callbacks[a]=r);const o=H(this.globalScope)?void 0:[];return this.target.postMessage({id:a,type:t,hasCallback:!!r,targetMapId:n,mustQueue:i,sourceMapId:this.mapId,data:Wi(e,o)},o),{cancel:()=>{r&&delete this.callbacks[a],this.target.postMessage({id:a,type:\"\",targetMapId:n,sourceMapId:this.mapId});}}}receive(t){const e=t.data,r=e.id;if(r&&(!e.targetMapId||this.mapId===e.targetMapId))if(\"\"===e.type){const t=this.cancelCallbacks[r];delete this.cancelCallbacks[r],t&&t.cancel();}else if(e.mustQueue||K()){const t=this.callbacks[r];this.cancelCallbacks[r]=this.scheduler.add((()=>this.processTask(r,e)),t&&t.metadata||{type:\"message\"});}else this.processTask(r,e);}processTask(t,e){if(\"\"===e.type){const r=this.callbacks[t];delete this.callbacks[t],r&&(e.error?r(Qi(e.error)):r(null,Qi(e.data)));}else {const r=H(this.globalScope)?void 0:[],n=e.hasCallback?(e,n)=>{delete this.cancelCallbacks[t],this.target.postMessage({id:t,type:\"\",sourceMapId:this.mapId,error:e?Wi(e):null,data:Wi(n,r)},r);}:t=>{},i=Qi(e.data);if(this.parent[e.type])this.parent[e.type](e.sourceMapId,i,n);else if(this.parent.getWorkerSource){const t=e.type.split(\".\");this.parent.getWorkerSource(e.sourceMapId,t[0],i.source)[t[1]](i,n);}else n(new Error(`Could not find function ${e.type}`));}}remove(){this.scheduler.remove(),this.target.removeEventListener(\"message\",this.receive,!1);}},t.CanonicalTileID=ph,t.Color=Ee,t.ColorMode=Yf,t.CullFaceMode=ty,t.DEMData=Zf,t.DataConstantProperty=Bs,t.DedupedRequest=fy,t.DepthMode=Xf,t.EXTENT=ao,t.Elevation=class{isDataAvailableAtPoint(t){const e=this._source();if(this.isUsingMockSource()||!e||t.y<0||t.y>1)return !1;const r=e.getSource().maxzoom,n=1<1)return e;const i=n.getSource().maxzoom,s=1<{const s=this.getAtTileOffset(t,i.x,i.y),a=n.upVector(t.canonical,i.x,i.y);return Co(a,a,s*n.upVectorScale(t.canonical,e,r).metersToTile),a}}getForTilePoints(t,e,r,n){if(this.isUsingMockSource())return !1;const i=sy.create(this,t,n);return !!i&&(e.forEach((t=>{t[2]=this.exaggeration()*i.getElevationAt(t[0],t[1],r);})),!0)}getMinMaxForTile(t){if(this.isUsingMockSource())return null;const e=this.findDEMTileFor(t);if(!e||!e.dem)return null;const r=e.dem.tree,n=e.tileID,i=1<{let n=t===s-1?t-2:0===t?t:t-1;return n+=r?24575:0,[n,e]};for(let t=0;tthis._skuTokenExpiresAt}transformRequest(t,e){return this._transformRequestFn&&this._transformRequestFn(t,e)||{url:t}}normalizeStyleURL(t,e){if(!vt(t))return t;const r=kt(t);return r.path=`/styles/v1${r.path}`,this._makeAPIURL(r,this._customAccessToken||e)}normalizeGlyphsURL(t,e){if(!vt(t))return t;const r=kt(t);return r.path=`/fonts/v1${r.path}`,this._makeAPIURL(r,this._customAccessToken||e)}normalizeSourceURL(t,e,r,n){if(!vt(t))return t;const i=kt(t);return i.path=`/v4/${i.authority}.json`,i.params.push(\"secure\"),r&&i.params.push(`language=${r}`),n&&i.params.push(`worldview=${n}`),this._makeAPIURL(i,this._customAccessToken||e)}normalizeSpriteURL(t,e,r,n){const i=kt(t);return vt(t)?(i.path=`/styles/v1${i.path}/sprite${e}${r}`,this._makeAPIURL(i,this._customAccessToken||n)):(i.path+=`${e}${r}`,It(i))}normalizeTileURL(t,e,r){if(this._isSkuTokenExpired()&&this._createSkuToken(),t&&!vt(t))return t;const n=kt(t);n.path=n.path.replace(/(\\.(png|jpg)\\d*)(?=$)/,`${e||r&&\"raster\"!==n.authority&&512===r?\"@2x\":\"\"}${s.supported?\".webp\":\"$1\"}`),\"raster\"===n.authority?n.path=`/${i.RASTER_URL_PREFIX}${n.path}`:(n.path=n.path.replace(/^.+\\/v4\\//,\"/\"),n.path=`/${i.TILE_URL_VERSION}${n.path}`);const a=this._customAccessToken||function(t){for(const e of t){const t=e.match(/^access_token=(.*)$/);if(t)return t[1]}return null}(n.params)||i.ACCESS_TOKEN;return i.REQUIRE_ACCESS_TOKEN&&a&&this._skuToken&&n.params.push(`sku=${this._skuToken}`),this._makeAPIURL(n,a)}canonicalizeTileURL(t,e){const r=kt(t);if(!r.path.match(/^(\\/v4\\/|\\/raster\\/v1\\/)/)||!r.path.match(/\\.[\\w]+$/))return t;let n=\"mapbox://\";r.path.match(/^\\/raster\\/v1\\//)?n+=`raster/${r.path.replace(`/${i.RASTER_URL_PREFIX}/`,\"\")}`:n+=`tiles/${r.path.replace(`/${i.TILE_URL_VERSION}/`,\"\")}`;let s=r.params;return e&&(s=s.filter((t=>!t.match(/^access_token=/)))),s.length&&(n+=`?${s.join(\"&\")}`),n}canonicalizeTileset(t,e){const r=!!e&&vt(e),n=[];for(const e of t.tiles||[])bt(e)?n.push(this.canonicalizeTileURL(e,r)):n.push(e);return n}_makeAPIURL(t,e){const r=\"See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes\",n=kt(i.API_URL);if(t.protocol=n.protocol,t.authority=n.authority,\"http\"===t.protocol){const e=t.params.indexOf(\"secure\");e>=0&&t.params.splice(e,1);}if(\"/\"!==n.path&&(t.path=`${n.path}${t.path}`),!i.REQUIRE_ACCESS_TOKEN)return It(t);if(e=e||i.ACCESS_TOKEN,!this._silenceAuthErrors){if(!e)throw new Error(`An API access token is required to use Mapbox GL. ${r}`);if(\"s\"===e[0])throw new Error(`Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). ${r}`)}return t.params=t.params.filter((t=>-1===t.indexOf(\"access_token\"))),t.params.push(`access_token=${e||\"\"}`),It(t)}},t.ResourceType=lt,t.SegmentVector=so,t.SourceCache=ey,t.StencilMode=Hf,t.StructArrayLayout1ui2=ua,t.StructArrayLayout2f1f2i16=Qs,t.StructArrayLayout2i4=$s,t.StructArrayLayout2ui4=la,t.StructArrayLayout3f12=ea,t.StructArrayLayout3ui6=ra,t.StructArrayLayout4i8=Os,t.StructArrayLayout5f20=aa,t.Texture=xf,t.Tile=Pf,t.Transitionable=Ss,t.Uniform1f=La,t.Uniform1i=class extends Va{constructor(t){super(t),this.current=0;}set(t,e,r){this.fetchUniformLocation(t,e)&&this.current!==r&&(this.current=r,this.gl.uniform1i(this.location,r));}},t.Uniform2f=class extends Va{constructor(t){super(t),this.current=[0,0];}set(t,e,r){this.fetchUniformLocation(t,e)&&(r[0]===this.current[0]&&r[1]===this.current[1]||(this.current=r,this.gl.uniform2f(this.location,r[0],r[1])));}},t.Uniform3f=class extends Va{constructor(t){super(t),this.current=[0,0,0];}set(t,e,r){this.fetchUniformLocation(t,e)&&(r[0]===this.current[0]&&r[1]===this.current[1]&&r[2]===this.current[2]||(this.current=r,this.gl.uniform3f(this.location,r[0],r[1],r[2])));}},t.Uniform4f=Fa,t.UniformColor=Ra,t.UniformMatrix2f=class extends Va{constructor(t){super(t),this.current=ja;}set(t,e,r){if(this.fetchUniformLocation(t,e))for(let t=0;t<4;t++)if(r[t]!==this.current[t]){this.current=r,this.gl.uniformMatrix2fv(this.location,!1,r);break}}},t.UniformMatrix3f=class extends Va{constructor(t){super(t),this.current=$a;}set(t,e,r){if(this.fetchUniformLocation(t,e))for(let t=0;t<9;t++)if(r[t]!==this.current[t]){this.current=r,this.gl.uniformMatrix3fv(this.location,!1,r);break}}},t.UniformMatrix4f=class extends Va{constructor(t){super(t),this.current=Ua;}set(t,e,r){if(this.fetchUniformLocation(t,e)){if(r[12]!==this.current[12]||r[0]!==this.current[0])return this.current=r,void this.gl.uniformMatrix4fv(this.location,!1,r);for(let t=1;t<16;t++)if(r[t]!==this.current[t]){this.current=r,this.gl.uniformMatrix4fv(this.location,!1,r);break}}}},t.UnwrappedTileID=dh,t.ValidationError=ri,t.VectorTileFeature=Kc,t.VectorTileWorkerSource=class extends Qt{constructor(t,e,r,n,i){super(),this.actor=t,this.layerIndex=e,this.availableImages=r,this.loadVectorData=i||yy,this.loading={},this.loaded={},this.deduped=new fy(t.scheduler),this.isSpriteLoaded=n,this.scheduler=t.scheduler;}loadTile(t,e){const r=t.uid,n=t&&t.request,i=n&&n.collectResourceTiming,s=this.loading[r]=new py(t);s.abort=this.loadVectorData(t,((a,o)=>{const l=!this.loading[r];if(delete this.loading[r],l||a||!o)return s.status=\"done\",l||(this.loaded[r]=s),e(a);const u=o.rawData,c={};o.expires&&(c.expires=o.expires),o.cacheControl&&(c.cacheControl=o.cacheControl),s.vectorTile=o.vectorTile||new Zc(new mp(u));const h=()=>{s.parse(s.vectorTile,this.layerIndex,this.availableImages,this.actor,((t,r)=>{if(t||!r)return e(t);const s={};if(i){const t=qt(n);t.length>0&&(s.resourceTiming=JSON.parse(JSON.stringify(t)));}e(null,C({rawTileData:u.slice(0)},r,c,s));}));};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,n=t.uid,i=this;if(r&&r[n]){const s=r[n];s.showCollisionBoxes=t.showCollisionBoxes,s.enableTerrain=!!t.enableTerrain,s.projection=t.projection,s.tileTransform=Bd(t.tileID.canonical,t.projection);const a=(t,r)=>{const n=s.reloadCallback;n&&(delete s.reloadCallback,s.parse(s.vectorTile,i.layerIndex,this.availableImages,i.actor,n)),e(t,r);};\"parsing\"===s.status?s.reloadCallback=a:\"done\"===s.status&&(s.vectorTile?s.parse(s.vectorTile,this.layerIndex,this.availableImages,this.actor,a):a());}}abortTile(t,e){const r=t.uid,n=this.loading[r];n&&(n.abort&&n.abort(),delete this.loading[r]),e();}removeTile(t,e){const r=this.loaded,n=t.uid;r&&r[n]&&delete r[n],e();}},t.WritingMode=Ip,t.ZoomDependentExpression=Wn,t.add=Mo,t.addDynamicAttributes=rf,t.adjoint=function(t,e){var r=e[0],n=e[1],i=e[2],s=e[3],a=e[4],o=e[5],l=e[6],u=e[7],c=e[8];return t[0]=a*c-o*u,t[1]=i*u-n*c,t[2]=n*o-i*a,t[3]=o*l-s*c,t[4]=r*c-i*l,t[5]=i*s-r*o,t[6]=s*u-a*l,t[7]=n*l-r*u,t[8]=r*a-n*s,t},t.asyncAll=B,t.bezier=k,t.bindAll=R,t.boundsAttributes=Ef,t.bufferConvexPolygon=function(t,e){const r=[];for(let n=0;net&&(t.getActor().send(\"enforceCacheSizeLimit\",tt),ot=0);},t.calculateGlobeLabelMatrix=function(t,e){const{x:r,y:n}=t.point,i=Cl(r,n,t.worldSize/t._pixelsPerMercatorPixel,0,0);return yo(i,i,El(xl(e)))},t.calculateGlobeMatrix=function(t){const{x:e,y:r}=t.point,{lng:n,lat:i}=t._center;return Cl(e,r,t.worldSize,n,i)},t.calculateGlobeMercatorMatrix=function(t){const e=t.pixelsPerMeter,r=e/Zl(1,t.center.lat),n=po(new Float64Array(16));return mo(n,n,[t.point.x,t.point.y,0]),go(n,n,[r,r,e]),Float32Array.from(n)},t.circumferenceAtLatitude=ql,t.clamp=M,t.clearTileCache=function(t){if(!it())return;const r=e.caches.delete(Q);t&&r.catch(t).then((()=>t()));},t.clipLine=Hp,t.clone=function(t){var e=new uo(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.clone$1=O,t.collisionCircleLayout=Fh,t.config=i,t.conjugate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3],t},t.create=function(){var t=new uo(16);return uo!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.create$1=co,t.createExpression=Hn,t.createLayout=Rs,t.createStyleLayer=function(t){return \"custom\"===t.type?new ff(t):new gf[t.type](t)},t.cross=Lo,t.degToRad=w,t.distance=function(t,e){return Math.hypot(e[0]-t[0],e[1]-t[1],e[2]-t[2])},t.div=function(t,e,r){return t[0]=e[0]/r[0],t[1]=e[1]/r[1],t[2]=e[2]/r[2],t},t.dot=Vo,t.earthRadius=Ul,t.ease=I,t.easeCubicInOut=S,t.ecefToLatLng=function([t,e,r]){const n=Math.hypot(t,e,r),i=Math.atan2(t,r),s=.5*Math.PI-Math.acos(-e/n);return new Ol(_(i),_(s))},t.emitValidationErrors=qi,t.endsWith=U,t.enforceCacheSizeLimit=function(t){st(),rt&&rt.then((e=>{e.keys().then((r=>{for(let n=0;ns&&(n+=(t[i]-s)*(t[i]-s)),e[i]0){const t=180/n;ho(d,d,[t/u+1,0,0,0,t/c+1,0,-.5*t/h,.5*t/p,1]);}return d[2]=l,d[5]=t.x,d[8]=t.y,d},t.getImage=gt,t.getJSON=function(t,e){return ht(C(t,{type:\"json\"}),e)},t.getLatitudinalLod=function(t){const e=Hl-5;t=M(t,-e,e)/e*90;const r=Math.pow(Math.abs(Math.sin(w(t))),3);return Math.round(r*(cl.length-1))},t.getMapSessionAPI=Ft,t.getPerformanceMeasurement=qt,t.getProjection=Yd,t.getRTLTextPluginStatus=xs,t.getReferrer=ct,t.getTilePoint=function(t,{x:e,y:r},n=0){return new x(((e-n)*t.scale-t.x)*ao,(r*t.scale-t.y)*ao)},t.getTileVec3=function(t,e,r=0){return Io(((e.x-r)*t.scale-t.x)*ao,(e.y*t.scale-t.y)*ao,Jl(e.z,e.y))},t.getVideo=function(t,r){const n=e.document.createElement(\"video\");n.muted=!0,n.onloadstart=function(){r(null,n);};for(let r=0;r{}}},t.globeCenterToScreenPoint=function(t){const e=[0,0,0],r=po(new Float64Array(16));return yo(r,t.pixelMatrix,t.globeMatrix),Fo(e,e,r),new x(e[0],e[1])},t.globeDenormalizeECEF=El,t.globeECEFOrigin=function(t,e){const r=[0,0,0];return Fo(r,r,Bl(xl(e.canonical))),Fo(r,r,t),r},t.globeMetersToEcef=fl,t.globeNormalizeECEF=Bl,t.globePixelsToTileUnits=function(t,e){return ao/(512*Math.pow(2,t))*Tl(xl(e))},t.globePoleMatrixForTile=function(t,e,r){const n=po(new Float64Array(16)),i=(e/(1<0;return 0===n&&!i&&!a&&s},t.identity=po,t.identity$1=Ko,t.invert=fo,t.isFullscreen=function(){return !!e.document.fullscreenElement||!!e.document.webkitFullscreenElement},t.isLngLatBehindGlobe=Vl,t.isMapAuthenticated=function(t){return Rt.has(t)},t.isMapboxURL=vt,t.isSafariWithAntialiasingBug=function(t){const e=t.navigator?t.navigator.userAgent:null;return !!H(t)&&e&&(e.match(\"Version/15.4\")||e.match(\"Version/15.5\")||e.match(/CPU (OS|iPhone OS) (15_4|15_5) like Mac OS X/))},t.latFromMercatorY=Xl,t.latLngToECEF=Il,t.len=Oo,t.length=ko,t.length$1=function(t){return Math.hypot(t[0],t[1],t[2],t[3])},t.lngFromMercatorX=Kl,t.loadVectorTile=yy,t.makeRequest=ht,t.mapValue=function(t,e,r,n,i){return M((t-e)/(r-e)*(i-n)+n,n,i)},t.mercatorScale=Yl,t.mercatorXfromLng=Nl,t.mercatorYfromLat=Gl,t.mercatorZfromAltitude=Zl,t.mul=_o,t.mul$1=jo,t.multiply=yo,t.multiply$1=ho,t.multiply$2=zo,t.nextPowerOfTwo=L,t.normalize=Do,t.normalize$1=Ho,t.normalize$2=No,t.number=Er,t.ortho=function(t,e,r,n,i,s,a){var o=1/(e-r),l=1/(n-i),u=1/(s-a);return t[0]=-2*o,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*u,t[11]=0,t[12]=(e+r)*o,t[13]=(i+n)*l,t[14]=(a+s)*u,t[15]=1,t},t.pbf=Xh,t.perspective=function(t,e,r,n,i){var s,a=1/Math.tan(e/2);return t[0]=a/r,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=i&&i!==1/0?(t[10]=(i+n)*(s=1/(n-i)),t[14]=2*i*n*s):(t[10]=-1,t[14]=-2*n),t},t.pick=function(t,e){const r={};for(let n=0;n0&&r[0]<=t.width&&r[1]>0&&r[1]<=t.height&&!Vl(t,new Ol(t.center.lat,90)),n[0]>0&&n[0]<=t.width&&n[1]>0&&n[1]<=t.height&&!Vl(t,new Ol(t.center.lat,-90))]},t.polygonContainsPoint=bu,t.polygonIntersectsBox=wu,t.polygonIntersectsPolygon=hu,t.polygonizeBounds=function(t,e,r=0,n=!0){const i=new x(r,r),s=t.sub(i),a=e.add(i),o=[s,new x(a.x,s.y),a,new x(s.x,a.y)];return n&&o.push(s.clone()),o},t.posAttributes=tl,t.postMapLoadEvent=Pt,t.postPerformanceEvent=Vt,t.postTurnstileEvent=Et,t.potpack=_p,t.prevPowerOfTwo=function(t){return t<=1?1:Math.pow(2,Math.floor(Math.log(t)/Math.LN2))},t.radToDeg=_,t.refProperties=[\"type\",\"source\",\"source-layer\",\"minzoom\",\"maxzoom\",\"filter\",\"layout\"],t.registerForPluginStateChange=function(t){return t({pluginStatus:ds,pluginURL:fs}),gs.on(\"pluginStateChange\",t),t},t.removeAuthState=function(t){Rt.delete(t);},t.renderColorRamp=ju,t.resample=tu,t.rotateX=xo,t.rotateX$1=Xo,t.rotateY=vo,t.rotateY$1=Jo,t.rotateZ=function(t,e,r){var n=Math.sin(r),i=Math.cos(r),s=e[0],a=e[1],o=e[2],l=e[3],u=e[4],c=e[5],h=e[6],p=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*i+u*n,t[1]=a*i+c*n,t[2]=o*i+h*n,t[3]=l*i+p*n,t[4]=u*i-s*n,t[5]=c*i-a*n,t[6]=h*i-o*n,t[7]=p*i-l*n,t},t.rotateZ$1=function(t,e,r){r*=.5;var n=e[0],i=e[1],s=e[2],a=e[3],o=Math.sin(r),l=Math.cos(r);return t[0]=n*l+i*o,t[1]=i*l-n*o,t[2]=s*l+a*o,t[3]=a*l-s*o,t},t.scale=go,t.scale$1=qo,t.scale$2=Co,t.scaleAndAdd=Po,t.set=function(t,e,r,n){return t[0]=e,t[1]=r,t[2]=n,t},t.setCacheLimits=function(t,e){tt=t,et=e;},t.setColumn=function(t,e,r){t[4*e+0]=r[0],t[4*e+1]=r[1],t[4*e+2]=r[2],t[4*e+3]=r[3];},t.setRTLTextPlugin=function(t,e,r=!1){if(ds===us||ds===cs||ds===hs)throw new Error(\"setRTLTextPlugin cannot be called multiple times.\");fs=Xt.resolveURL(t),ds=us,ps=e,ms(),r||vs();},t.smoothstep=T,t.spec=te,t.squaredLength=function(t){var e=t[0],r=t[1],n=t[2];return e*e+r*r+n*n},t.storeAuthState=function(t,e){e?Rt.add(t):Rt.delete(t);},t.sub=$o,t.subtract=To,t.symbolSize=qh,t.tileAABB=function(t,e,r,n,i,s,a,o,l){if(\"globe\"===l.name)return _l(t,e,new ph(r,n,i));const u=Bd({z:r,x:n,y:i},l);return new il([(s+u.x/u.scale)*e,e*(u.y/u.scale),a],[(s+u.x2/u.scale)*e,e*(u.y2/u.scale),o])},t.tileCornersToBounds=Al,t.tileTransform=Bd,t.transformMat3=function(t,e,r){var n=e[0],i=e[1],s=e[2];return t[0]=n*r[0]+i*r[3]+s*r[6],t[1]=n*r[1]+i*r[4]+s*r[7],t[2]=n*r[2]+i*r[5]+s*r[8],t},t.transformMat4=Fo,t.transformMat4$1=Go,t.transformQuat=Ro,t.transitionTileAABBinECEF=bl,t.translate=mo,t.transpose=function(t,e){if(t===e){var r=e[1],n=e[2],i=e[5];t[1]=e[3],t[2]=e[6],t[3]=r,t[5]=e[7],t[6]=n,t[7]=i;}else t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8];return t},t.triggerPluginCompletionEvent=ys,t.uniqueId=D,t.updateGlobeVertexNormal=function(t,e,r,n,i){const s=5*e+2;t.float32[s+0]=r,t.float32[s+1]=n,t.float32[s+2]=i;},t.validateCustomStyleLayer=function(t){const e=[],r=t.id;return void 0===r&&e.push({message:`layers.${r}: missing required property \"id\"`}),void 0===t.render&&e.push({message:`layers.${r}: missing required method \"render\"`}),t.renderingMode&&\"2d\"!==t.renderingMode&&\"3d\"!==t.renderingMode&&e.push({message:`layers.${r}: property \"renderingMode\" must be either \"2d\" or \"3d\"`}),e},t.validateFilter=t=>Oi(Ai(t)),t.validateFog=t=>Oi(Vi(t)),t.validateLayer=t=>Oi(Ti(t)),t.validateLight=t=>Oi(Pi(t)),t.validateSource=t=>Oi(Ei(t)),t.validateStyle=Ui,t.validateTerrain=t=>Oi(Di(t)),t.values=E,t.vectorTile=Dc,t.version=r,t.warnOnce=N,t.window=e,t.wrap=z;}));\n\ndefine([\"./shared\"],(function(e){\"use strict\";function t(e){if(\"number\"==typeof e||\"boolean\"==typeof e||\"string\"==typeof e||null==e)return JSON.stringify(e);if(Array.isArray(e)){let r=\"[\";for(const o of e)r+=`${t(o)},`;return `${r}]`}let r=\"{\";for(const o of Object.keys(e).sort())r+=`${o}:${t(e[o])},`;return `${r}}`}function r(r){let o=\"\";for(const i of e.refProperties)o+=`/${t(r[i])}`;return o}class o{constructor(e){this.keyCache={},e&&this.replace(e);}replace(e){this._layerConfigs={},this._layers={},this.update(e,[]);}update(t,o){for(const r of t)this._layerConfigs[r.id]=r,(this._layers[r.id]=e.createStyleLayer(r)).compileFilter(),this.keyCache[r.id]&&delete this.keyCache[r.id];for(const e of o)delete this.keyCache[e],delete this._layerConfigs[e],delete this._layers[e];this.familiesBySource={};const i=function(e,t){const o={};for(let i=0;ithis._layers[e.id])),r=t[0];if(\"none\"===r.visibility)continue;const o=r.source||\"\";let i=this.familiesBySource[o];i||(i=this.familiesBySource[o]={});const n=r.sourceLayer||\"_geojsonTileLayer\";let s=i[n];s||(s=i[n]=[]),s.push(t);}}}class i{loadTile(t,r){const{uid:o,encoding:i,rawImageData:n,padding:s,buildQuadTree:a}=t,l=e.window.ImageBitmap&&n instanceof e.window.ImageBitmap?this.getImageData(n,s):n;r(null,new e.DEMData(o,l,i,s<1,a));}getImageData(e,t){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext(\"2d\",{willReadFrequently:!0})),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);const r=this.offscreenCanvasContext.getImageData(-t,-t,e.width+2*t,e.height+2*t);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),r}}function n(e,t){if(0!==e.length){s(e[0],t);for(var r=1;r=Math.abs(a)?r-l+a:a-l+r,r=l;}r+o>=0!=!!t&&e.reverse();}var a=e.getDefaultExportFromCjs((function e(t,r){var o,i=t&&t.type;if(\"FeatureCollection\"===i)for(o=0;o>31}function P(e,t){for(var r=e.loadGeometry(),o=e.type,i=0,n=0,s=r.length,a=0;ae},I=Math.fround||(_=new Float32Array(1),e=>(_[0]=+e,_[0]));var _;const C=3,L=5,O=6;class E{constructor(e){this.options=Object.assign(Object.create(k),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[];}load(e){const{log:t,minZoom:r,maxZoom:o}=this.options;t&&console.time(\"total time\");const i=`prepare ${e.length} points`;t&&console.time(i),this.points=e;const n=[];for(let t=0;t=r;e--){const r=+Date.now();s=this.trees[e]=this._createTree(this._cluster(s,e)),t&&console.log(\"z%d: %d clusters in %dms\",e,s.numItems,+Date.now()-r);}return t&&console.timeEnd(\"total time\"),this}getClusters(e,t){let r=((e[0]+180)%360+360)%360-180;const o=Math.max(-90,Math.min(90,e[1]));let i=180===e[2]?180:((e[2]+180)%360+360)%360-180;const n=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)r=-180,i=180;else if(r>i){const e=this.getClusters([r,o,180,n],t),s=this.getClusters([-180,o,i,n],t);return e.concat(s)}const s=this.trees[this._limitZoom(t)],a=s.range(N(r),Z(n),N(i),Z(o)),l=s.data,u=[];for(const e of a){const t=this.stride*e;u.push(l[t+L]>1?j(l,t,this.clusterProps):this.points[l[t+C]]);}return u}getChildren(e){const t=this._getOriginId(e),r=this._getOriginZoom(e),o=\"No cluster with the specified id.\",i=this.trees[r];if(!i)throw new Error(o);const n=i.data;if(t*this.stride>=n.length)throw new Error(o);const s=this.options.radius/(this.options.extent*Math.pow(2,r-1)),a=i.within(n[t*this.stride],n[t*this.stride+1],s),l=[];for(const t of a){const r=t*this.stride;n[r+4]===e&&l.push(n[r+L]>1?j(n,r,this.clusterProps):this.points[n[r+C]]);}if(0===l.length)throw new Error(o);return l}getLeaves(e,t,r){const o=[];return this._appendLeaves(o,e,t=t||10,r=r||0,0),o}getTile(e,t,r){const o=this.trees[this._limitZoom(e)],i=Math.pow(2,e),{extent:n,radius:s}=this.options,a=s/n,l=(r-a)/i,u=(r+1+a)/i,h={features:[]};return this._addTileFeatures(o.range((t-a)/i,l,(t+1+a)/i,u),o.data,t,r,i,h),0===t&&this._addTileFeatures(o.range(1-a/i,l,1,u),o.data,i,r,i,h),t===i-1&&this._addTileFeatures(o.range(0,l,a/i,u),o.data,-1,r,i,h),h.features.length?h:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){const r=this.getChildren(e);if(t++,1!==r.length)break;e=r[0].properties.cluster_id;}return t}_appendLeaves(e,t,r,o,i){const n=this.getChildren(t);for(const t of n){const n=t.properties;if(n&&n.cluster?i+n.point_count<=o?i+=n.point_count:i=this._appendLeaves(e,n.cluster_id,r,o,i):i1;let l,u,h;if(a)l=F(t,e,this.clusterProps),u=t[e],h=t[e+1];else {const r=this.points[t[e+C]];l=r.properties;const[o,i]=r.geometry.coordinates;u=N(o),h=Z(i);}const c={type:1,geometry:[[Math.round(this.options.extent*(u*i-r)),Math.round(this.options.extent*(h*i-o))]],tags:l};let f;f=a||this.options.generateId?t[e+C]:this.points[t[e+C]].id,void 0!==f&&(c.id=f),n.features.push(c);}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){const{radius:r,extent:o,reduce:i,minPoints:n}=this.options,s=r/(o*Math.pow(2,t)),a=e.data,l=[],u=this.stride;for(let r=0;rt&&(p+=a[r+L]);}if(p>f&&p>=n){let e,n=o*f,s=h*f,g=-1;const d=((r/u|0)<<5)+(t+1)+this.points.length;for(const o of c){const l=o*u;if(a[l+2]<=t)continue;a[l+2]=t;const h=a[l+L];n+=a[l]*h,s+=a[l+1]*h,a[l+4]=d,i&&(e||(e=this._map(a,r,!0),g=this.clusterProps.length,this.clusterProps.push(e)),i(e,this._map(a,l)));}a[r+4]=d,l.push(n/p,s/p,1/0,d,-1,p),i&&l.push(g);}else {for(let e=0;e1)for(const e of c){const r=e*u;if(!(a[r+2]<=t)){a[r+2]=t;for(let e=0;e>5}_getOriginZoom(e){return (e-this.points.length)%32}_map(e,t,r){if(e[t+L]>1){const o=this.clusterProps[e[t+O]];return r?Object.assign({},o):o}const o=this.points[e[t+C]].properties,i=this.options.map(o);return r&&i===o?Object.assign({},i):i}}function j(e,t,r){return {type:\"Feature\",id:e[t+C],properties:F(e,t,r),geometry:{type:\"Point\",coordinates:[(o=e[t],360*(o-.5)),J(e[t+1])]}};var o;}function F(e,t,r){const o=e[t+L],i=o>=1e4?`${Math.round(o/1e3)}k`:o>=1e3?Math.round(o/100)/10+\"k\":o,n=e[t+O],s=-1===n?{}:Object.assign({},r[n]);return Object.assign(s,{cluster:!0,cluster_id:e[t+C],point_count:o,point_count_abbreviated:i})}function N(e){return e/360+.5}function Z(e){const t=Math.sin(e*Math.PI/180),r=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return r<0?0:r>1?1:r}function J(e){const t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function z(e,t,r,o){for(var i,n=o,s=r-t>>1,a=r-t,l=e[t],u=e[t+1],h=e[r],c=e[r+1],f=t+3;fn)i=f,n=p;else if(p===n){var g=Math.abs(f-s);go&&(i-t>3&&z(e,t,i,o),e[i+2]=n,r-i>3&&z(e,i,r,o));}function G(e,t,r,o,i,n){var s=i-r,a=n-o;if(0!==s||0!==a){var l=((e-r)*s+(t-o)*a)/(s*s+a*a);l>1?(r=i,o=n):l>0&&(r+=s*l,o+=a*l);}return (s=e-r)*s+(a=t-o)*a}function W(e,t,r,o){var i={id:void 0===e?null:e,type:t,geometry:r,tags:o,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(e){var t=e.geometry,r=e.type;if(\"Point\"===r||\"MultiPoint\"===r||\"LineString\"===r)Y(e,t);else if(\"Polygon\"===r||\"MultiLineString\"===r)for(var o=0;o0&&(s+=o?(i*u-l*n)/2:Math.sqrt(Math.pow(l-i,2)+Math.pow(u-n,2))),i=l,n=u;}var h=t.length-3;t[2]=1,z(t,0,h,r),t[h+2]=1,t.size=Math.abs(s),t.start=0,t.end=t.size;}function $(e,t,r,o){for(var i=0;i1?1:r}function R(e,t,r,o,i,n,s,a){if(o/=t,n>=(r/=t)&&s=o)return null;for(var l=[],u=0;u=r&&g=o)){var d=[];if(\"Point\"===f||\"MultiPoint\"===f)q(c,d,r,o,i);else if(\"LineString\"===f)Q(c,d,r,o,i,!1,a.lineMetrics);else if(\"MultiLineString\"===f)K(c,d,r,o,i,!1);else if(\"Polygon\"===f)K(c,d,r,o,i,!0);else if(\"MultiPolygon\"===f)for(var m=0;m=r&&s<=o&&(t.push(e[n]),t.push(e[n+1]),t.push(e[n+2]));}}function Q(e,t,r,o,i,n,s){for(var a,l,u=U(e),h=0===i?ee:te,c=e.start,f=0;fr&&(l=h(u,p,g,m,y,r),s&&(u.start=c+a*l)):v>o?x=r&&(l=h(u,p,g,m,y,r),w=!0),x>o&&v<=o&&(l=h(u,p,g,m,y,o),w=!0),!n&&w&&(s&&(u.end=c+a*l),t.push(u),u=U(e)),s&&(c+=a);}var S=e.length-3;p=e[S],g=e[S+1],d=e[S+2],(v=0===i?p:g)>=r&&v<=o&&H(u,p,g,d),S=u.length-3,n&&S>=3&&(u[S]!==u[0]||u[S+1]!==u[1])&&H(u,u[0],u[1],u[2]),u.length&&t.push(u);}function U(e){var t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function K(e,t,r,o,i,n){for(var s=0;ss.maxX&&(s.maxX=h),c>s.maxY&&(s.maxY=c);}return s}function ae(e,t,r,o){var i=t.geometry,n=t.type,s=[];if(\"Point\"===n||\"MultiPoint\"===n)for(var a=0;a0&&t.size<(i?s:o))r.numPoints+=t.length/3;else {for(var a=[],l=0;ls)&&(r.numSimplified++,a.push(t[l]),a.push(t[l+1])),r.numPoints++;i&&function(e,t){for(var r=0,o=0,i=e.length,n=i-2;o0===t)for(o=0,i=e.length;o24)throw new Error(\"maxZoom should be in the 0-24 range\");if(t.promoteId&&t.generateId)throw new Error(\"promoteId and generateId cannot be used together.\");var o=function(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o1&&console.time(\"creation\"),f=this.tiles[c]=se(e,t,r,o,l),this.tileCoords.push({z:t,x:r,y:o}),u)){u>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",t,r,o,f.numFeatures,f.numPoints,f.numSimplified),console.timeEnd(\"creation\"));var p=\"z\"+t;this.stats[p]=(this.stats[p]||0)+1,this.total++;}if(f.source=e,i){if(t===l.maxZoom||t===i)continue;var g=1<1&&console.time(\"clipping\");var d,m,y,v,x,w,S=.5*l.buffer/l.extent,M=.5-S,P=.5+S,b=1+S;d=m=y=v=null,x=R(e,h,r-S,r+P,0,f.minX,f.maxX,l),w=R(e,h,r+M,r+b,0,f.minX,f.maxX,l),e=null,x&&(d=R(x,h,o-S,o+P,1,f.minY,f.maxY,l),m=R(x,h,o+M,o+b,1,f.minY,f.maxY,l),x=null),w&&(y=R(w,h,o-S,o+P,1,f.minY,f.maxY,l),v=R(w,h,o+M,o+b,1,f.minY,f.maxY,l),w=null),u>1&&console.timeEnd(\"clipping\"),a.push(d||[],t+1,2*r,2*o),a.push(m||[],t+1,2*r,2*o+1),a.push(y||[],t+1,2*r+1,2*o),a.push(v||[],t+1,2*r+1,2*o+1);}}},ue.prototype.getTile=function(e,t,r){var o=this.options,i=o.extent,n=o.debug;if(e<0||e>24)return null;var s=1<1&&console.log(\"drilling down to z%d-%d-%d\",e,t,r);for(var l,u=e,h=t,c=r;!l&&u>0;)u--,h=Math.floor(h/2),c=Math.floor(c/2),l=this.tiles[he(u,h,c)];return l&&l.source?(n>1&&console.log(\"found parent tile z%d-%d-%d\",u,h,c),n>1&&console.time(\"drilling down\"),this.splitTile(l.source,u,h,c,e,t,r),n>1&&console.timeEnd(\"drilling down\"),this.tiles[a]?ie(this.tiles[a],i):null):null};class fe extends e.VectorTileWorkerSource{constructor(e,t,r,o,i){super(e,t,r,o,ce),i&&(this.loadGeoJSON=i);}loadData(t,r){const o=t&&t.request,i=o&&o.collectResourceTiming;this.loadGeoJSON(t,((n,s)=>{if(n||!s)return r(n);if(\"object\"!=typeof s)return r(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));{a(s,!0);try{if(t.filter){const r=e.createExpression(t.filter,{type:\"boolean\",\"property-type\":\"data-driven\",overridable:!1,transition:!1});if(\"error\"===r.result)throw new Error(r.value.map((e=>`${e.key}: ${e.message}`)).join(\", \"));const o=s.features.filter((e=>r.value.evaluate({zoom:0},e)));s={type:\"FeatureCollection\",features:o};}this._geoJSONIndex=t.cluster?new E(function({superclusterOptions:t,clusterProperties:r}){if(!r||!t)return t;const o={},i={},n={accumulated:null,zoom:0},s={properties:null},a=Object.keys(r);for(const t of a){const[n,s]=r[t],a=e.createExpression(s),l=e.createExpression(\"string\"==typeof n?[n,[\"accumulated\"],[\"get\",t]]:n);o[t]=a.value,i[t]=l.value;}return t.map=e=>{s.properties=e;const t={};for(const e of a)t[e]=o[e].evaluate(n,s);return t},t.reduce=(e,t)=>{s.properties=t;for(const t of a)n.accumulated=e[t],e[t]=i[t].evaluate(n,s);},t}(t)).load(s.features):function(e,t){return new ue(e,t)}(s,t.geojsonVtOptions);}catch(n){return r(n)}this.loaded={};const l={};if(i){const r=e.getPerformanceMeasurement(o);r&&(l.resourceTiming={},l.resourceTiming[t.source]=JSON.parse(JSON.stringify(r)));}r(null,l);}}));}reloadTile(e,t){const r=this.loaded;return r&&r[e.uid]?super.reloadTile(e,t):this.loadTile(e,t)}loadGeoJSON(t,r){if(t.request)e.getJSON(t.request,r);else {if(\"string\"!=typeof t.data)return r(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));try{return r(null,JSON.parse(t.data))}catch(e){return r(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`))}}}getClusterExpansionZoom(e,t){try{t(null,this._geoJSONIndex.getClusterExpansionZoom(e.clusterId));}catch(e){t(e);}}getClusterChildren(e,t){try{t(null,this._geoJSONIndex.getChildren(e.clusterId));}catch(e){t(e);}}getClusterLeaves(e,t){try{t(null,this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset));}catch(e){t(e);}}}class pe{constructor(t){this.self=t,this.actor=new e.Actor(t,this),this.layerIndexes={},this.availableImages={},this.isSpriteLoaded={},this.projections={},this.defaultProjection=e.getProjection({name:\"mercator\"}),this.workerSourceTypes={vector:e.VectorTileWorkerSource,geojson:fe},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(e,t)=>{if(this.workerSourceTypes[e])throw new Error(`Worker source with name \"${e}\" already registered.`);this.workerSourceTypes[e]=t;},this.self.registerRTLTextPlugin=t=>{if(e.plugin.isParsed())throw new Error(\"RTL text plugin already registered.\");e.plugin.applyArabicShaping=t.applyArabicShaping,e.plugin.processBidirectionalText=t.processBidirectionalText,e.plugin.processStyledBidirectionalText=t.processStyledBidirectionalText;};}clearCaches(e,t,r){delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e],r();}checkIfReady(e,t,r){r();}setReferrer(e,t){this.referrer=t;}spriteLoaded(t,r){this.isSpriteLoaded[t]=r;for(const o in this.workerSources[t]){const i=this.workerSources[t][o];for(const t in i)i[t]instanceof e.VectorTileWorkerSource&&(i[t].isSpriteLoaded=r,i[t].fire(new e.Event(\"isSpriteLoaded\")));}}setImages(e,t,r){this.availableImages[e]=t;for(const r in this.workerSources[e]){const o=this.workerSources[e][r];for(const e in o)o[e].availableImages=t;}r();}enableTerrain(e,t,r){this.terrain=t,r();}setProjection(t,r){this.projections[t]=e.getProjection(r);}setLayers(e,t,r){this.getLayerIndex(e).replace(t),r();}updateLayers(e,t,r){this.getLayerIndex(e).update(t.layers,t.removedIds),r();}loadTile(t,r,o){const i=this.enableTerrain?e.extend({enableTerrain:this.terrain},r):r;i.projection=this.projections[t]||this.defaultProjection,this.getWorkerSource(t,r.type,r.source).loadTile(i,o);}loadDEMTile(t,r,o){const i=this.enableTerrain?e.extend({buildQuadTree:this.terrain},r):r;this.getDEMWorkerSource(t,r.source).loadTile(i,o);}reloadTile(t,r,o){const i=this.enableTerrain?e.extend({enableTerrain:this.terrain},r):r;i.projection=this.projections[t]||this.defaultProjection,this.getWorkerSource(t,r.type,r.source).reloadTile(i,o);}abortTile(e,t,r){this.getWorkerSource(e,t.type,t.source).abortTile(t,r);}removeTile(e,t,r){this.getWorkerSource(e,t.type,t.source).removeTile(t,r);}removeSource(e,t,r){if(!this.workerSources[e]||!this.workerSources[e][t.type]||!this.workerSources[e][t.type][t.source])return;const o=this.workerSources[e][t.type][t.source];delete this.workerSources[e][t.type][t.source],void 0!==o.removeSource?o.removeSource(t,r):r();}loadWorkerSource(e,t,r){try{this.self.importScripts(t.url),r();}catch(e){r(e.toString());}}syncRTLPluginState(t,r,o){try{e.plugin.setState(r);const t=e.plugin.getPluginURL();if(e.plugin.isLoaded()&&!e.plugin.isParsed()&&null!=t){this.self.importScripts(t);const r=e.plugin.isParsed();o(r?void 0:new Error(`RTL Text Plugin failed to import scripts from ${t}`),r);}}catch(e){o(e.toString());}}getAvailableImages(e){let t=this.availableImages[e];return t||(t=[]),t}getLayerIndex(e){let t=this.layerIndexes[e];return t||(t=this.layerIndexes[e]=new o),t}getWorkerSource(e,t,r){if(this.workerSources[e]||(this.workerSources[e]={}),this.workerSources[e][t]||(this.workerSources[e][t]={}),!this.workerSources[e][t][r]){const o={send:(t,r,o,i,n,s)=>{this.actor.send(t,r,o,e,n,s);},scheduler:this.actor.scheduler};this.workerSources[e][t][r]=new this.workerSourceTypes[t](o,this.getLayerIndex(e),this.getAvailableImages(e),this.isSpriteLoaded[e]);}return this.workerSources[e][t][r]}getDEMWorkerSource(e,t){return this.demWorkerSources[e]||(this.demWorkerSources[e]={}),this.demWorkerSources[e][t]||(this.demWorkerSources[e][t]=new i),this.demWorkerSources[e][t]}enforceCacheSizeLimit(t,r){e.enforceCacheSizeLimit(r);}getWorkerPerformanceMetrics(e,t,r){r(void 0,void 0);}}return \"undefined\"!=typeof WorkerGlobalScope&&\"undefined\"!=typeof self&&self instanceof WorkerGlobalScope&&(self.worker=new pe(self)),pe}));\n\ndefine([\"./shared\"],(function(e){\"use strict\";function t(e,i){if(Array.isArray(e)){if(!Array.isArray(i)||e.length!==i.length)return !1;for(let o=0;o{e.window.removeEventListener(\"click\",_,!0);}),0);}function p(e,t){const i=e.getBoundingClientRect();return g(e,i,t)}function m(e,t){const i=e.getBoundingClientRect(),o=[];for(let r=0;r=0?0:t.button}function g(t,i,o){const r=t.offsetWidth===i.width?1:t.offsetWidth/i.width;return new e.Point((o.clientX-i.left)*r,(o.clientY-i.top)*r)}function v(e,t){var i=t[0],o=t[1],r=t[2],n=t[3],s=i*n-r*o;return s?(e[0]=n*(s=1/s),e[1]=-o*s,e[2]=-r*s,e[3]=i*s,e):null}function x(e){const{userImage:t}=e;return !!(t&&t.render&&t.render())&&(e.data.replace(new Uint8Array(t.data.buffer)),!0)}class y extends e.Evented{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0;}isLoaded(){return this.loaded}setLoaded(e){if(this.loaded!==e&&(this.loaded=e,e)){for(const{ids:e,callback:t}of this.requestors)this._notify(e,t);this.requestors=[];}}hasImage(e){return !!this.getImage(e)}getImage(e){return this.images[e]}addImage(e,t){this._validate(e,t)&&(this.images[e]=t);}_validate(t,i){let o=!0;return this._validateStretch(i.stretchX,i.data&&i.data.width)||(this.fire(new e.ErrorEvent(new Error(`Image \"${t}\" has invalid \"stretchX\" value`))),o=!1),this._validateStretch(i.stretchY,i.data&&i.data.height)||(this.fire(new e.ErrorEvent(new Error(`Image \"${t}\" has invalid \"stretchY\" value`))),o=!1),this._validateContent(i.content,i)||(this.fire(new e.ErrorEvent(new Error(`Image \"${t}\" has invalid \"content\" value`))),o=!1),o}_validateStretch(e,t){if(!e)return !0;let i=0;for(const o of e){if(o[0]{this.ready=!0;}));}broadcast(t,i,o){e.asyncAll(this.actors,((e,o)=>{e.send(t,i,o);}),o=o||function(){});}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(){this.actors.forEach((e=>{e.remove();})),this.actors=[],this.workerPool.release(this.id);}}function D(t,i,o){return i*(e.EXTENT/(t.tileSize*Math.pow(2,o-t.tileID.overscaledZ)))}S.Actor=e.Actor;class L{constructor(e,t,i,o){this.screenBounds=e,this.cameraPoint=t,this._screenRaycastCache={},this._cameraRaycastCache={},this.isAboveHorizon=i,this.screenGeometry=this.bufferedScreenGeometry(0),this.screenGeometryMercator=this._bufferedScreenMercator(0,o);}static createFromScreenPoints(t,i){let o,r;if(t instanceof e.Point||\"number\"==typeof t[0]){const n=e.Point.convert(t);o=[n],r=i.isPointAboveHorizon(n);}else {const n=e.Point.convert(t[0]),s=e.Point.convert(t[1]);o=[n,s],r=e.polygonizeBounds(n,s).every((e=>i.isPointAboveHorizon(e)));}return new L(o,i.getCameraPoint(),r,i)}isPointQuery(){return 1===this.screenBounds.length}bufferedScreenGeometry(t){return e.polygonizeBounds(this.screenBounds[0],1===this.screenBounds.length?this.screenBounds[0]:this.screenBounds[1],t)}bufferedCameraGeometry(t){const i=this.screenBounds[0],o=1===this.screenBounds.length?this.screenBounds[0].add(new e.Point(1,1)):this.screenBounds[1],r=e.polygonizeBounds(i,o,0,!1);return this.cameraPoint.y>o.y&&(this.cameraPoint.x>i.x&&this.cameraPoint.x=o.x?r[2]=this.cameraPoint:this.cameraPoint.x<=i.x&&(r[3]=this.cameraPoint)),e.bufferConvexPolygon(r,t)}bufferedCameraGeometryGlobe(t){const i=this.screenBounds[0],o=1===this.screenBounds.length?this.screenBounds[0].add(new e.Point(1,1)):this.screenBounds[1],r=e.polygonizeBounds(i,o,t),n=this.cameraPoint.clone();switch(3*((n.y>i.y)+(n.y>o.y))+((n.x>i.x)+(n.x>o.x))){case 0:r[0]=n,r[4]=n.clone();break;case 1:r.splice(1,0,n);break;case 2:r[1]=n;break;case 3:r.splice(4,0,n);break;case 5:r.splice(2,0,n);break;case 6:r[3]=n;break;case 7:r.splice(3,0,n);break;case 8:r[2]=n;}return r}containsTile(t,i,o,r=0){const n=t.queryPadding/i._pixelsPerMercatorPixel+1,s=o?this._bufferedCameraMercator(n,i):this._bufferedScreenMercator(n,i);let a=t.tileID.wrap+(s.unwrapped?r:0);const l=s.polygon.map((i=>e.getTilePoint(t.tileTransform,i,a)));if(!e.polygonIntersectsBox(l,0,0,e.EXTENT,e.EXTENT))return;a=t.tileID.wrap+(this.screenGeometryMercator.unwrapped?r:0);const c=this.screenGeometryMercator.polygon.map((i=>e.getTileVec3(t.tileTransform,i,a))),h=c.map((t=>new e.Point(t[0],t[1]))),u=i.getFreeCameraOptions().position||new e.MercatorCoordinate(0,0,0),_=e.getTileVec3(t.tileTransform,u,a),d=c.map((t=>{const i=e.sub(t,t,_);return e.normalize(i,i),new e.Ray(_,i)})),p=D(t,1,i.zoom)*i._pixelsPerMercatorPixel;return {queryGeometry:this,tilespaceGeometry:h,tilespaceRays:d,bufferedTilespaceGeometry:l,bufferedTilespaceBounds:(m=e.getBounds(l),m.min.x=e.clamp(m.min.x,0,e.EXTENT),m.min.y=e.clamp(m.min.y,0,e.EXTENT),m.max.x=e.clamp(m.max.x,0,e.EXTENT),m.max.y=e.clamp(m.max.y,0,e.EXTENT),m),tile:t,tileID:t.tileID,pixelToTileUnitsFactor:p};var m;}_bufferedScreenMercator(e,t){const i=R(e);if(this._screenRaycastCache[i])return this._screenRaycastCache[i];{let o;return o=\"globe\"===t.projection.name?this._projectAndResample(this.bufferedScreenGeometry(e),t):{polygon:this.bufferedScreenGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._screenRaycastCache[i]=o,o}}_bufferedCameraMercator(e,t){const i=R(e);if(this._cameraRaycastCache[i])return this._cameraRaycastCache[i];{let o;return o=\"globe\"===t.projection.name?this._projectAndResample(this.bufferedCameraGeometryGlobe(e),t):{polygon:this.bufferedCameraGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._cameraRaycastCache[i]=o,o}}_projectAndResample(t,i){const o=function(t,i){const o=e.multiply([],i.pixelMatrix,i.globeMatrix),r=[0,-e.GLOBE_RADIUS,0,1],n=[0,e.GLOBE_RADIUS,0,1],s=[0,0,0,1];e.transformMat4$1(r,r,o),e.transformMat4$1(n,n,o),e.transformMat4$1(s,s,o);const a=new e.Point(r[0]/r[3],r[1]/r[3]),l=new e.Point(n[0]/n[3],n[1]/n[3]),c=e.polygonContainsPoint(t,a)&&r[3]1?A(t.slice(0,_),i):[],m=_new e.Point(z(t.x),t.y))),m=m.map((t=>new e.Point(z(t.x),t.y)));const f=[...p];0===f.length&&f.push(m[m.length-1]);const g=e.number(f[f.length-1].y,(0===m.length?p[0]:m[0]).y,d);let v;return v=c?[new e.Point(0,g),new e.Point(0,0),new e.Point(1,0),new e.Point(1,g)]:[new e.Point(1,g),new e.Point(1,1),new e.Point(0,1),new e.Point(0,g)],f.push(...v),0===m.length?f.push(p[0]):f.push(...m),{polygon:f.map((t=>new e.MercatorCoordinate(t.x,t.y))),unwrapped:!1}}(t,i);if(o)return o;const r=function(t,i){let o=!1,r=-1/0,n=0;for(let e=0;er&&(r=t[e].x,n=e);for(let e=0;e.5&&(r.x{e.x-=1;})),{polygon:t,unwrapped:o}}(A(t,i).map((t=>new e.Point(z(t.x),t.y))),i);return {polygon:r.polygon.map((t=>new e.MercatorCoordinate(t.x,t.y))),unwrapped:r.unwrapped}}}function A(t,i){return e.resample(t,(e=>{const t=i.pointCoordinate3D(e);e.x=t.x,e.y=t.y;}),1/256)}function z(e){return e<0?1+e%1:e%1}function R(e){return 100*e|0}function O(t,i,o,r,n){const s=function(o,r){if(o)return n(o);if(r){t.url&&r.tiles&&t.tiles&&delete t.tiles;const o=e.pick(e.extend(r,t),[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\",\"scheme\",\"tileSize\",\"encoding\"]);r.vector_layers&&(o.vectorLayers=r.vector_layers,o.vectorLayerIds=o.vectorLayers.map((e=>e.id))),o.tiles=i.canonicalizeTileset(o,t.url),n(null,o);}};return t.url?e.getJSON(i.transformRequest(i.normalizeSourceURL(t.url,null,o,r),e.ResourceType.Source),s):e.exported.frame((()=>s(null,t)))}class B{constructor(t,i,o){this.bounds=e.LngLatBounds.convert(this.validateBounds(t)),this.minzoom=i||0,this.maxzoom=o||24;}validateBounds(e){return Array.isArray(e)&&4===e.length?[Math.max(-180,e[0]),Math.max(-90,e[1]),Math.min(180,e[2]),Math.min(90,e[3])]:[-180,-90,180,90]}contains(t){const i=Math.pow(2,t.z),o=Math.floor(e.mercatorXfromLng(this.bounds.getWest())*i),r=Math.floor(e.mercatorYfromLat(this.bounds.getNorth())*i),n=Math.ceil(e.mercatorXfromLng(this.bounds.getEast())*i),s=Math.ceil(e.mercatorYfromLat(this.bounds.getSouth())*i);return t.x>=o&&t.x=r&&t.y{this._tileJSONRequest=null,this._loaded=!0,r?(i&&console.warn(`Ensure that your requested language string is a valid BCP-47 code or list of codes. Found: ${i}`),o&&2!==o.length&&console.warn(`Requested worldview strings must be a valid ISO alpha-2 code. Found: ${o}`),this.fire(new e.ErrorEvent(r))):n&&(e.extend(this,n),n.bounds&&(this.tileBounds=new B(n.bounds,this.minzoom,this.maxzoom)),e.postTurnstileEvent(n.tiles,this.map._requestManager._customAccessToken),this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))),t&&t(r);}));}loaded(){return this._loaded}hasTile(e){return !this.tileBounds||this.tileBounds.contains(e.canonical)}onAdd(e){this.map=e,this.load();}reload(){this.cancelTileJSONRequest(),this.load((()=>this.map.style._clearSource(this.id)));}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest();}serialize(){return e.extend({},this._options)}loadTile(t,i){const o=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme)),r={request:this.map._requestManager.transformRequest(o,e.ResourceType.Tile),data:void 0,uid:t.uid,tileID:t.tileID,tileZoom:t.tileZoom,zoom:t.tileID.overscaledZ,tileSize:this.tileSize*t.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:e.exported.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId,isSymbolTile:t.isSymbolTile};if(r.request.collectResourceTiming=this._collectResourceTiming,t.actor&&\"expired\"!==t.state)\"loading\"===t.state?t.reloadCallback=i:t.request=t.actor.send(\"reloadTile\",r,n.bind(this));else if(t.actor=this._tileWorkers[o]=this._tileWorkers[o]||this.dispatcher.getActor(),this.dispatcher.ready)t.request=t.actor.send(\"loadTile\",r,n.bind(this),void 0,!0);else {const i=e.loadVectorTile.call({deduped:this._deduped},r,((e,i)=>{e||!i?n.call(this,e):(r.data={cacheControl:i.cacheControl,expires:i.expires,rawData:i.rawData.slice(0)},t.actor&&t.actor.send(\"loadTile\",r,n.bind(this),void 0,!0));}),!0);t.request={cancel:i};}function n(o,r){return delete t.request,t.aborted?i(null):o&&404!==o.status?i(o):(r&&r.resourceTiming&&(t.resourceTiming=r.resourceTiming),this.map._refreshExpiredTiles&&r&&t.setExpiryData(r),t.loadVectorData(r,this.map.painter),e.cacheEntryPossiblyAdded(this.dispatcher),i(null),void(t.reloadCallback&&(this.loadTile(t,t.reloadCallback),t.reloadCallback=null)))}}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.actor&&e.actor.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id});}unloadTile(e){e.unloadVectorData(),e.actor&&e.actor.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id});}hasTransition(){return !1}afterUpdate(){this._tileWorkers={};}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null);}}class Me extends e.Evented{constructor(t,i,o,r){super(),this.id=t,this.dispatcher=o,this.setEventedParent(r),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=e.extend({type:\"raster\"},i),e.extend(this,e.pick(i,[\"url\",\"scheme\",\"tileSize\"]));}load(t){this._loaded=!1,this.fire(new e.Event(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=O(this._options,this.map._requestManager,null,null,((i,o)=>{this._tileJSONRequest=null,this._loaded=!0,i?this.fire(new e.ErrorEvent(i)):o&&(e.extend(this,o),o.bounds&&(this.tileBounds=new B(o.bounds,this.minzoom,this.maxzoom)),e.postTurnstileEvent(o.tiles),this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))),t&&t(i);}));}loaded(){return this._loaded}onAdd(e){this.map=e,this.load();}reload(){this.cancelTileJSONRequest(),this.load((()=>this.map.style._clearSource(this.id)));}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest();}serialize(){return e.extend({},this._options)}hasTile(e){return !this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(t,i){const o=e.exported.devicePixelRatio>=2,r=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme),o,this.tileSize);t.request=e.getImage(this.map._requestManager.transformRequest(r,e.ResourceType.Tile),((o,r,n,s)=>(delete t.request,t.aborted?(t.state=\"unloaded\",i(null)):o?(t.state=\"errored\",i(o)):r?(this.map._refreshExpiredTiles&&t.setExpiryData({cacheControl:n,expires:s}),t.setTexture(r,this.map.painter),t.state=\"loaded\",e.cacheEntryPossiblyAdded(this.dispatcher),void i(null)):i(null))));}static loadTileData(e,t,i){e.setTexture(t,i);}static unloadTileData(e,t){e.texture&&t.saveTileTexture(e.texture);}abortTile(e,t){e.request&&(e.request.cancel(),delete e.request),t();}unloadTile(e,t){e.texture&&this.map.painter.saveTileTexture(e.texture),t();}hasTransition(){return !1}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null);}}function Ie(t,i,o,r,n,s,a,l){const c=[t,o,n,i,r,s,1,1,1],h=[a,l,1],u=e.adjoint([],c),[_,d,p]=e.transformMat3(h,h,e.transpose(u,u));return e.multiply$1(c,[_,0,0,0,d,0,0,0,p],c)}class Pe extends e.Evented{constructor(e,t,i,o){super(),this.id=e,this.dispatcher=i,this.coordinates=t.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(o),this.options=t,this._dirty=!1;}load(t,i){this._loaded=i||!1,this.fire(new e.Event(\"dataloading\",{dataType:\"source\"})),this.url=this.options.url,this._imageRequest=e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),((i,o)=>{if(this._imageRequest=null,this._loaded=!0,i)this.fire(new e.ErrorEvent(i));else if(o){const{HTMLImageElement:i}=e.window;this.image=o instanceof i?e.exported.getImageData(o):o,this._dirty=!0,this.width=this.image.width,this.height=this.image.height,t&&(this.coordinates=t),this._finishLoading();}}));}loaded(){return this._loaded}updateImage(e){return this.image&&e.url?(this._imageRequest&&e.url!==this.options.url&&(this._imageRequest.cancel(),this._imageRequest=null),this.options.url=e.url,this.load(e.coordinates,this._loaded),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})));}onAdd(e){this.map=e,this.load();}onRemove(){this._imageRequest&&(this._imageRequest.cancel(),this._imageRequest=null),this.texture&&this.texture.destroy();}setCoordinates(t){this.coordinates=t,this._boundsArray=void 0;const i=t.map(e.MercatorCoordinate.fromLngLat);return this.tileID=function(t){let i=1/0,o=1/0,r=-1/0,n=-1/0;for(const e of t)i=Math.min(i,e.x),o=Math.min(o,e.y),r=Math.max(r,e.x),n=Math.max(n,e.y);const s=Math.max(r-i,n-o),a=Math.max(0,Math.floor(-Math.log(s)/Math.LN2)),l=Math.pow(2,a);return new e.CanonicalTileID(a,Math.floor((i+r)/2*l),Math.floor((o+n)/2*l))}(i),this.minzoom=this.maxzoom=this.tileID.z,this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"})),this}_clear(){this._boundsArray=void 0;}_prepareData(t){for(const e in this.tiles){const t=this.tiles[e];\"loaded\"!==t.state&&(t.state=\"loaded\",t.texture=this.texture);}if(this._boundsArray)return;const i=e.tileTransform(this.tileID,this.map.transform.projection),[o,r,n,s]=this.coordinates.map((t=>{const o=i.projection.project(t[0],t[1]);return e.getTilePoint(i,o)._round()}));this.perspectiveTransform=function(t,i,o,r,n,s,a,l,c,h){const u=Ie(0,0,t,0,0,i,t,i),_=Ie(o,r,n,s,a,l,c,h);return e.multiply$1(_,e.adjoint(u,u),_),[_[6]/_[8]*t/e.EXTENT,_[7]/_[8]*i/e.EXTENT]}(this.width,this.height,o.x,o.y,r.x,r.y,s.x,s.y,n.x,n.y);const a=this._boundsArray=new e.StructArrayLayout4i8;a.emplaceBack(o.x,o.y,0,0),a.emplaceBack(r.x,r.y,e.EXTENT,0),a.emplaceBack(s.x,s.y,0,e.EXTENT),a.emplaceBack(n.x,n.y,e.EXTENT,e.EXTENT),this.boundsBuffer&&this.boundsBuffer.destroy(),this.boundsBuffer=t.createVertexBuffer(a,e.boundsAttributes.members),this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2);}prepare(){if(0===Object.keys(this.tiles).length||!this.image)return;const t=this.map.painter.context,i=t.gl;this._dirty&&(this.texture?this.texture.update(this.image):(this.texture=new e.Texture(t,this.image,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE)),this._dirty=!1),this._prepareData(t);}loadTile(e,t){this.tileID&&this.tileID.equals(e.tileID.canonical)?(this.tiles[String(e.tileID.wrap)]=e,e.buckets={},t(null)):(e.state=\"errored\",t(null));}serialize(){return {type:\"image\",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return !1}}const Se={vector:Ce,raster:Me,\"raster-dem\":class extends Me{constructor(t,i,o,r){super(t,i,o,r),this.type=\"raster-dem\",this.maxzoom=22,this._options=e.extend({type:\"raster-dem\"},i),this.encoding=i.encoding||\"mapbox\";}loadTile(t,i){const o=this.map._requestManager.normalizeTileURL(t.tileID.canonical.url(this.tiles,this.scheme),!1,this.tileSize);function r(e,o){e&&(t.state=\"errored\",i(e)),o&&(t.dem=o,t.dem.onDeserialize(),t.needsHillshadePrepare=!0,t.needsDEMTextureUpload=!0,t.state=\"loaded\",i(null));}t.request=e.getImage(this.map._requestManager.transformRequest(o,e.ResourceType.Tile),function(o,n,s,a){if(delete t.request,t.aborted)t.state=\"unloaded\",i(null);else if(o)t.state=\"errored\",i(o);else if(n){this.map._refreshExpiredTiles&&t.setExpiryData({cacheControl:s,expires:a});const i=e.window.ImageBitmap&&n instanceof e.window.ImageBitmap&&(null==se&&(se=e.window.OffscreenCanvas&&new e.window.OffscreenCanvas(1,1).getContext(\"2d\")&&\"function\"==typeof e.window.createImageBitmap),se),o=1-(n.width-e.prevPowerOfTwo(n.width))/2;o<1||t.neighboringTiles||(t.neighboringTiles=this._getNeighboringTiles(t.tileID));const l=i?n:e.exported.getImageData(n,o),c={uid:t.uid,coord:t.tileID,source:this.id,rawImageData:l,encoding:this.encoding,padding:o};t.actor&&\"expired\"!==t.state||(t.actor=this.dispatcher.getActor(),t.actor.send(\"loadDEMTile\",c,r.bind(this),void 0,!0));}}.bind(this));}_getNeighboringTiles(t){const i=t.canonical,o=Math.pow(2,i.z),r=(i.x-1+o)%o,n=0===i.x?t.wrap-1:t.wrap,s=(i.x+1+o)%o,a=i.x+1===o?t.wrap+1:t.wrap,l={};return l[new e.OverscaledTileID(t.overscaledZ,n,i.z,r,i.y).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,a,i.z,s,i.y).key]={backfilled:!1},i.y>0&&(l[new e.OverscaledTileID(t.overscaledZ,n,i.z,r,i.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,t.wrap,i.z,i.x,i.y-1).key]={backfilled:!1},l[new e.OverscaledTileID(t.overscaledZ,a,i.z,s,i.y-1).key]={backfilled:!1}),i.y+1{if(this._loaded=!0,this._pendingLoad=null,t)this.fire(new e.ErrorEvent(t));else {const t={dataType:\"source\",sourceDataType:this._metadataFired?\"content\":\"metadata\"};this._collectResourceTiming&&i&&i.resourceTiming&&i.resourceTiming[this.id]&&(t.resourceTiming=i.resourceTiming[this.id]),this.fire(new e.Event(\"data\",t)),this._metadataFired=!0;}this._coalesce&&(this._updateWorkerData(),this._coalesce=!1);}));}loaded(){return this._loaded}loadTile(t,i){const o=t.actor?\"reloadTile\":\"loadTile\";t.actor=this.actor,t.request=this.actor.send(o,{type:this.type,uid:t.uid,tileID:t.tileID,tileZoom:t.tileZoom,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.exported.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId},((e,r)=>(delete t.request,t.unloadVectorData(),t.aborted?i(null):e?i(e):(t.loadVectorData(r,this.map.painter,\"reloadTile\"===o),i(null)))),void 0,\"loadTile\"===o);}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.aborted=!0;}unloadTile(e){e.unloadVectorData(),this.actor.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id});}onRemove(){this._pendingLoad&&this._pendingLoad.cancel();}serialize(){return e.extend({},this._options,{type:this.type,data:this._data})}hasTransition(){return !1}},video:class extends Pe{constructor(e,t,i,o){super(e,t,i,o),this.roundZoom=!0,this.type=\"video\",this.options=t;}load(){this._loaded=!1;const t=this.options;this.urls=[];for(const i of t.urls)this.urls.push(this.map._requestManager.transformRequest(i,e.ResourceType.Source).url);e.getVideo(this.urls,((t,i)=>{this._loaded=!0,t?this.fire(new e.ErrorEvent(t)):i&&(this.video=i,this.video.loop=!0,this.video.setAttribute(\"playsinline\",\"\"),this.video.addEventListener(\"playing\",(()=>{this.map.triggerRepaint();})),this.map&&this.video.play(),this._finishLoading());}));}pause(){this.video&&this.video.pause();}play(){this.video&&this.video.play();}seek(t){if(this.video){const i=this.video.seekable;ti.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${this.id}`,null,`Playback for this video can be set only between the ${i.start(0)} and ${i.end(0)}-second mark.`))):this.video.currentTime=t;}}getVideo(){return this.video}onAdd(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)));}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const t=this.map.painter.context,i=t.gl;this.texture?this.video.paused||(this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE),i.texSubImage2D(i.TEXTURE_2D,0,0,0,i.RGBA,i.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(t,this.video,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE),this.width=this.video.videoWidth,this.height=this.video.videoHeight),this._prepareData(t);}serialize(){return {type:\"video\",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}},image:Pe,canvas:class extends Pe{constructor(t,i,o,r){super(t,i,o,r),i.coordinates?Array.isArray(i.coordinates)&&4===i.coordinates.length&&!i.coordinates.some((e=>!Array.isArray(e)||2!==e.length||e.some((e=>\"number\"!=typeof e))))||this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'\"coordinates\" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'missing required property \"coordinates\"'))),i.animate&&\"boolean\"!=typeof i.animate&&this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'optional \"animate\" property must be a boolean value'))),i.canvas?\"string\"==typeof i.canvas||i.canvas instanceof e.window.HTMLCanvasElement||this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'\"canvas\" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new e.ErrorEvent(new e.ValidationError(`sources.${t}`,null,'missing required property \"canvas\"'))),this.options=i,this.animate=void 0===i.animate||i.animate;}load(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new e.ErrorEvent(new Error(\"Canvas dimensions cannot be less than or equal to zero.\"))):(this.play=function(){this._playing=!0,this.map.triggerRepaint();},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1);},this._finishLoading());}getCanvas(){return this.canvas}onAdd(e){this.map=e,this.load(),this.canvas&&this.animate&&this.play();}onRemove(){this.pause();}prepare(){let t=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,t=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,t=!0),this._hasInvalidDimensions())return;if(0===Object.keys(this.tiles).length)return;const i=this.map.painter.context;this.texture?(t||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(i,this.canvas,i.gl.RGBA,{premultiply:!0}),this._prepareData(i);}serialize(){return {type:\"canvas\",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const e of [this.canvas.width,this.canvas.height])if(isNaN(e)||e<=0)return !0;return !1}},custom:class extends e.Evented{constructor(t,i,o,r){super(),this.id=t,this.type=\"custom\",this._dataType=\"raster\",this._dispatcher=o,this._implementation=i,this.setEventedParent(r),this.scheme=\"xyz\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this._loaded=!1,this.roundZoom=!0,this._implementation||this.fire(new e.ErrorEvent(new Error(`Missing implementation for ${this.id} custom source`))),this._implementation.loadTile||this.fire(new e.ErrorEvent(new Error(`Missing loadTile implementation for ${this.id} custom source`))),this._implementation.bounds&&(this.tileBounds=new B(this._implementation.bounds,this.minzoom,this.maxzoom)),i.update=this._update.bind(this),i.clearTiles=this._clearTiles.bind(this),i.coveringTiles=this._coveringTiles.bind(this),e.extend(this,e.pick(i,[\"dataType\",\"scheme\",\"minzoom\",\"maxzoom\",\"tileSize\",\"attribution\",\"minTileCacheSize\",\"maxTileCacheSize\"]));}serialize(){return e.pick(this,[\"type\",\"scheme\",\"minzoom\",\"maxzoom\",\"tileSize\",\"attribution\"])}load(){this._loaded=!0,this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"}));}loaded(){return this._loaded}onAdd(t){this._map=t,this._loaded=!1,this.fire(new e.Event(\"dataloading\",{dataType:\"source\"})),this._implementation.onAdd&&this._implementation.onAdd(t),this.load();}onRemove(e){this._implementation.onRemove&&this._implementation.onRemove(e);}hasTile(e){if(this._implementation.hasTile){const{x:t,y:i,z:o}=e.canonical;return this._implementation.hasTile({x:t,y:i,z:o})}return !this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(t,i){const{x:o,y:r,z:n}=t.tileID.canonical,s=new e.window.AbortController;t.request=Promise.resolve(this._implementation.loadTile({x:o,y:r,z:n},{signal:s.signal})).then(function(o){return delete t.request,t.aborted?(t.state=\"unloaded\",i(null)):void 0===o?(t.state=\"errored\",i(null)):null===o?(this.loadTileData(t,{width:this.tileSize,height:this.tileSize,data:null}),t.state=\"loaded\",i(null)):function(t){return t instanceof e.window.ImageData||t instanceof e.window.HTMLCanvasElement||t instanceof e.window.ImageBitmap||t instanceof e.window.HTMLImageElement}(o)?(this.loadTileData(t,o),t.state=\"loaded\",void i(null)):(t.state=\"errored\",i(new Error(`Can't infer data type for ${this.id}, only raster data supported at the moment`)))}.bind(this)).catch((e=>{20!==e.code&&(t.state=\"errored\",i(e));})),t.request.cancel=()=>s.abort();}loadTileData(e,t){Me.loadTileData(e,t,this._map.painter);}unloadTileData(e){Me.unloadTileData(e,this._map.painter);}unloadTile(e,t){if(this.unloadTileData(e),this._implementation.unloadTile){const{x:t,y:i,z:o}=e.tileID.canonical;this._implementation.unloadTile({x:t,y:i,z:o});}t();}abortTile(e,t){e.request&&e.request.cancel&&(e.request.cancel(),delete e.request),t();}hasTransition(){return !1}_coveringTiles(){return this._map.transform.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,roundZoom:this.roundZoom}).map((e=>({x:e.canonical.x,y:e.canonical.y,z:e.canonical.z})))}_clearTiles(){this._map.style._clearSource(this.id);}_update(){this.fire(new e.Event(\"data\",{dataType:\"source\",sourceDataType:\"content\"}));}}},De=function(t,i,o,r){const n=new Se[i.type](t,i,o,r);if(n.id!==t)throw new Error(`Expected Source id to be ${t} instead of ${n.id}`);return e.bindAll([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],n),n};function Le(t,i){const o=e.identity([]);return e.scale(o,o,[.5*t.width,.5*-t.height,1]),e.translate(o,o,[1,-1,0]),e.multiply(o,o,t.calculateProjMatrix(i.toUnwrapped())),Float32Array.from(o)}function Ae(e,t,i,o,r,n,s,a=!1){const l=e.tilesIn(o,s,a);l.sort(Re);const c=[];for(const o of l)c.push({wrappedTileID:o.tile.tileID.wrapped().key,queryResults:o.tile.queryRenderedFeatures(t,i,e._state,o,r,n,Le(e.transform,o.tile.tileID),a)});const h=function(e){const t={},i={};for(const o of e){const e=o.queryResults,r=o.wrappedTileID,n=i[r]=i[r]||{};for(const i in e){const o=e[i],r=n[i]=n[i]||{},s=t[i]=t[i]||[];for(const e of o)r[e.featureIndex]||(r[e.featureIndex]=!0,s.push(e));}}return t}(c);for(const t in h)h[t].forEach((t=>{const i=t.feature,o=i.layer;o&&\"background\"!==o.type&&\"sky\"!==o.type&&(i.source=o.source,o[\"source-layer\"]&&(i.sourceLayer=o[\"source-layer\"]),i.state=void 0!==i.id?e.getFeatureState(o[\"source-layer\"],i.id):{});}));return h}function ze(e,t){const i=e.getRenderableIds().map((t=>e.getTileByID(t))),o=[],r={};for(let e=0;e{e.terminate();})),this.workers=null);}isPreloaded(){return !!this.active[Be]}numActive(){return Object.keys(this.active).length}}let Fe;function Ue(){return Fe||(Fe=new ke),Fe}function Ne(t,i){const o={};for(const e in t)\"ref\"!==e&&(o[e]=t[e]);return e.refProperties.forEach((e=>{e in i&&(o[e]=i[e]);})),o}function je(e){e=e.slice();const t=Object.create(null);for(let i=0;i0?(r-s)/a:0;return this.points[n].mult(1-l).add(this.points[i].mult(l))}}class Ke{constructor(e,t,i){const o=this.boxCells=[],r=this.circleCells=[];this.xCellCount=Math.ceil(e/i),this.yCellCount=Math.ceil(t/i);for(let e=0;ethis.width||o<0||t>this.height)return !r&&[];const s=[];if(e<=0&&t<=0&&this.width<=i&&this.height<=o){if(r)return !0;for(let e=0;e0:s}_queryCircle(e,t,i,o,r){const n=e-i,s=e+i,a=t-i,l=t+i;if(s<0||n>this.width||l<0||a>this.height)return !o&&[];const c=[];return this._forEachCell(n,a,s,l,this._queryCellCircle,c,{hitTest:o,circle:{x:e,y:t,radius:i},seenUids:{box:{},circle:{}}},r),o?c.length>0:c}query(e,t,i,o,r){return this._query(e,t,i,o,!1,r)}hitTest(e,t,i,o,r){return this._query(e,t,i,o,!0,r)}hitTestCircle(e,t,i,o){return this._queryCircle(e,t,i,!0,o)}_queryCell(e,t,i,o,r,n,s,a){const l=s.seenUids,c=this.boxCells[r];if(null!==c){const r=this.bboxes;for(const h of c)if(!l.box[h]){l.box[h]=!0;const c=4*h;if(e<=r[c+2]&&t<=r[c+3]&&i>=r[c+0]&&o>=r[c+1]&&(!a||a(this.boxKeys[h]))){if(s.hitTest)return n.push(!0),!0;n.push({key:this.boxKeys[h],x1:r[c],y1:r[c+1],x2:r[c+2],y2:r[c+3]});}}}const h=this.circleCells[r];if(null!==h){const r=this.circles;for(const c of h)if(!l.circle[c]){l.circle[c]=!0;const h=3*c;if(this._circleAndRectCollide(r[h],r[h+1],r[h+2],e,t,i,o)&&(!a||a(this.circleKeys[c]))){if(s.hitTest)return n.push(!0),!0;{const e=r[h],t=r[h+1],i=r[h+2];n.push({key:this.circleKeys[c],x1:e-i,y1:t-i,x2:e+i,y2:t+i});}}}}}_queryCellCircle(e,t,i,o,r,n,s,a){const l=s.circle,c=s.seenUids,h=this.boxCells[r];if(null!==h){const e=this.bboxes;for(const t of h)if(!c.box[t]){c.box[t]=!0;const i=4*t;if(this._circleAndRectCollide(l.x,l.y,l.radius,e[i+0],e[i+1],e[i+2],e[i+3])&&(!a||a(this.boxKeys[t])))return n.push(!0),!0}}const u=this.circleCells[r];if(null!==u){const e=this.circles;for(const t of u)if(!c.circle[t]){c.circle[t]=!0;const i=3*t;if(this._circlesCollide(e[i],e[i+1],e[i+2],l.x,l.y,l.radius)&&(!a||a(this.circleKeys[t])))return n.push(!0),!0}}}_forEachCell(e,t,i,o,r,n,s,a){const l=this._convertToXCellCoord(e),c=this._convertToYCellCoord(t),h=this._convertToXCellCoord(i),u=this._convertToYCellCoord(o);for(let _=l;_<=h;_++)for(let l=c;l<=u;l++)if(r.call(this,e,t,i,o,this.xCellCount*l+_,n,s,a))return}_convertToXCellCoord(e){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(e*this.xScale)))}_convertToYCellCoord(e){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(e*this.yScale)))}_circlesCollide(e,t,i,o,r,n){const s=o-e,a=r-t,l=i+n;return l*l>s*s+a*a}_circleAndRectCollide(e,t,i,o,r,n,s){const a=(n-o)/2,l=Math.abs(e-(o+a));if(l>a+i)return !1;const c=(s-r)/2,h=Math.abs(t-(r+c));if(h>c+i)return !1;if(l<=a||h<=c)return !0;const u=l-a,_=h-c;return u*u+_*_<=i*i}}const Je={unknown:0,flipRequired:1,flipNotRequired:2},Qe=Math.tan(85*Math.PI/180);function et(t,i,o,r,n,s,a){const l=e.create();if(o)if(\"globe\"===s.name){const t=e.calculateGlobeLabelMatrix(n,i);e.multiply(l,l,t);}else {const t=v([],a);l[0]=t[0],l[1]=t[1],l[4]=t[2],l[5]=t[3],r||e.rotateZ(l,l,n.angle);}else e.multiply(l,n.labelPlaneMatrix,t);return l}function tt(e,t,i,o,r,n,s){const a=et(e,t,i,o,r,n,s);return \"globe\"===n.name&&i||(a[2]=a[6]=a[10]=a[14]=0),a}function it(t,i,o,r,n,s,a){if(o){if(\"globe\"===s.name){const l=et(t,i,o,r,n,s,a);return e.invert(l,l),e.multiply(l,t,l),l}{const i=e.clone(t),o=e.identity([]);return o[0]=a[0],o[1]=a[1],o[4]=a[2],o[5]=a[3],e.multiply(i,i,o),r||e.rotateZ(i,i,-n.angle),i}}return n.glCoordMatrix}function ot(t,i,o,r){const n=[t,i,o,1];o?e.transformMat4$1(n,n,r):pt(n,n,r);const s=n[3];return n[0]/=s,n[1]/=s,n[2]/=s,n}function rt(e,t){return Math.min(.5+e/t*.5,1.5)}function nt(e,t){const i=e[0]/e[3],o=e[1]/e[3];return i>=-t[0]&&i<=t[0]&&o>=-t[1]&&o<=t[1]}function st(t,i,o,r,n,s,a,l,c,h){const u=o.transform,_=r?t.textSizeData:t.iconSizeData,d=e.evaluateSizeForZoom(_,o.transform.zoom),p=\"globe\"===u.projection.name,m=[256/o.width*2+1,256/o.height*2+1],f=r?t.text.dynamicLayoutVertexArray:t.icon.dynamicLayoutVertexArray;f.clear();let g=null;p&&(g=r?t.text.globeExtVertexArray:t.icon.globeExtVertexArray);const v=t.lineVertexArray,x=r?t.text.placedSymbolArray:t.icon.placedSymbolArray,y=o.transform.width/o.transform.height;let b,w=!1;for(let r=0;rMath.abs(o)?{useVertical:!0}:t===e.WritingMode.vertical?r>0?{needsFlipping:!0}:null:i!==Je.unknown&&function(e,t){return 0===e||Math.abs(t/e)>Qe}(o,r)?i===Je.flipRequired?{needsFlipping:!0}:null:o<0?{needsFlipping:!0}:null}function ct(t,i,o,r,n,s,a,l,c,h,u,_,d,p,m,f,g,v,x){const y=i/24,b=t.lineOffsetX*y,w=t.lineOffsetY*y,{lineStartIndex:T,glyphStartIndex:E,numGlyphs:C,segment:M,writingMode:I,flipState:P}=t,S=T+t.lineLength,D=t=>{if(u){const[i,o,r]=t.up,n=h.length;e.updateGlobeVertexNormal(u,n+0,i,o,r),e.updateGlobeVertexNormal(u,n+1,i,o,r),e.updateGlobeVertexNormal(u,n+2,i,o,r),e.updateGlobeVertexNormal(u,n+3,i,o,r);}const[i,o,r]=t.point;e.addDynamicAttributes(h,i,o,r,t.angle);};if(C>1){const e=at(y,l,b,w,o,_,d,t,c,s,p,f,!1,g,v,x);if(!e)return {notEnoughRoom:!0};if(r&&!o){let[i,o,r]=e.first.point,[n,s,l]=e.last.point;[i,o]=ot(i,o,r,a),[n,s]=ot(n,s,l,a);const c=lt(I,P,(n-i)*m,s-o);if(t.flipState=c&&c.needsFlipping?Je.flipRequired:Je.flipNotRequired,c)return c}D(e.first);for(let e=E+1;e0?s:ut(d,r,i,1,n,void 0,g,v.canonical),l=lt(I,P,(a[0]-i[0])*m,a[1]-i[1]);if(t.flipState=l&&l.needsFlipping?Je.flipRequired:Je.flipNotRequired,l)return l}const i=_t(y*l.getoffsetX(E),b,w,o,_,d,M,T,S,c,s,p,f,!1,!1,g,v,x);if(!i)return {notEnoughRoom:!0};D(i);}return {}}function ht(e,t,i,o,r){const{x:n,y:s,z:a}=o.projectTilePoint(e.x,e.y,t);if(!r)return ot(n,s,a,i);const[l,c,h]=r(e);return ot(n+l,s+c,a+h,i)}function ut(t,i,o,r,n,s,a,l){const c=ht(t.sub(i)._unit()._add(t),l,n,a,s);return e.sub(c,o,c),e.normalize(c,c),e.scaleAndAdd(c,o,c,r)}function _t(t,i,o,r,n,s,a,l,c,h,u,_,d,p,m,f,g,v){const x=r?t-i:t+i;let y=x>0?1:-1,b=0;r&&(y*=-1,b=Math.PI),y<0&&(b+=Math.PI);let w=l+a+(y>0?0:1)|0,T=n,E=n,C=0,M=0;const I=Math.abs(x),P=[],S=[];let D=s,L=D;const A=()=>ut(L,D,E,I-C+1,u,d,f,g.canonical);for(;C+M<=I;){if(w+=y,w=c)return null;if(E=T,L=D,P.push(E),p&&S.push(L),D=new e.Point(h.getx(w),h.gety(w)),T=_[w],!T){const e=ht(D,g.canonical,u,f,d);T=e[3]>0?_[w]=e:A();}C+=M,M=e.distance(E,T);}m&&d&&(_[w]&&(T=A(),M=e.distance(E,T)),_[w]=T);const z=(I-C)/M,R=D.sub(L)._mult(z)._add(L),O=e.sub([],T,E),B=e.scaleAndAdd([],E,O,z);let k=[0,0,1],F=O[0],U=O[1];if(v&&(k=f.upVector(g.canonical,R.x,R.y),0!==k[0]||0!==k[1]||1!==k[2])){const t=[k[2],0,-k[0]],i=e.cross([],k,t);e.normalize(t,t),e.normalize(i,i),F=e.dot(O,t),U=e.dot(O,i);}if(o){const t=e.cross([],k,O);e.normalize(t,t),e.scaleAndAdd(B,B,t,o*y);}const N=b+Math.atan2(U,F);return P.push(B),p&&S.push(R),{point:B,angle:N,path:P,tilePath:S,up:k}}function dt(e,t){const i=t.length,o=i+4*e;t.resize(o),t.float32.fill(-1/0,4*i,4*o);}function pt(e,t,i){const o=t[0],r=t[1];return e[0]=i[0]*o+i[4]*r+i[12],e[1]=i[1]*o+i[5]*r+i[13],e[3]=i[3]*o+i[7]*r+i[15],e}const mt=100;class ft{constructor(e,t,i=new Ke(e.width+200,e.height+200,25),o=new Ke(e.width+200,e.height+200,25)){this.transform=e,this.grid=i,this.ignoredGrid=o,this.pitchfactor=Math.cos(e._pitch)*e.cameraToCenterDistance,this.screenRightBoundary=e.width+mt,this.screenBottomBoundary=e.height+mt,this.gridRightBoundary=e.width+200,this.gridBottomBoundary=e.height+200,this.fogState=t;}placeCollisionBox(e,t,i,o,r,n,s,a){let l=i.projectedAnchorX,c=i.projectedAnchorY,h=i.projectedAnchorZ;const u=i.elevation,_=i.tileID,d=e.getProjection();if(u&&_){const[e,t,o]=d.upVector(_.canonical,i.tileAnchorX,i.tileAnchorY),r=d.upVectorScale(_.canonical,this.transform.center.lat,this.transform.worldSize).metersToTile;l+=e*u*r,c+=t*u*r,h+=o*u*r;}const p=this.projectAndGetPerspectiveRatio(s,l,c,h,i.tileID,\"globe\"===d.name||!!u||this.transform.pitch>0,d),m=n*p.perspectiveRatio,f=(i.x1*t+o.x-i.padding)*m+p.point.x,g=(i.y1*t+o.y-i.padding)*m+p.point.y,v=(i.x2*t+o.x+i.padding)*m+p.point.x,x=(i.y2*t+o.y+i.padding)*m+p.point.y,y=p.perspectiveRatio<=.55||p.occluded;return !this.isInsideGrid(f,g,v,x)||!r&&this.grid.hitTest(f,g,v,x,a)||y?{box:[],offscreen:!1,occluded:p.occluded}:{box:[f,g,v,x],offscreen:this.isOffscreen(f,g,v,x),occluded:!1}}placeCollisionCircles(t,i,o,r,n,s,a,l,c,h,u,_,d,p,m){const f=[],g=this.transform.elevation,v=t.getProjection(),x=g?g.getAtTileOffsetFunc(m,this.transform.center.lat,this.transform.worldSize,v):null,y=new e.Point(o.tileAnchorX,o.tileAnchorY);let{x:b,y:w,z:T}=v.projectTilePoint(y.x,y.y,m.canonical);if(x){const[e,t,i]=x(y);b+=e,w+=t,T+=i;}const E=\"globe\"===v.name,C=this.projectAndGetPerspectiveRatio(a,b,w,T,m,E||!!g||this.transform.pitch>0,v),{perspectiveRatio:M}=C,I=(u?s/M:s*M)/e.ONE_EM,P=ot(b,w,T,l),S=C.signedDistanceFromCamera>0?at(I,n,o.lineOffsetX*I,o.lineOffsetY*I,!1,P,y,o,r,l,{},g&&!u?x:null,u&&!!g,v,m,u):null;let D=!1,L=!1,A=!0;if(S&&!C.occluded){const t=.5*d*M+p,o=new e.Point(-100,-100),r=new e.Point(this.screenRightBoundary,this.screenBottomBoundary),n=new Ye,{first:s,last:a}=S,l=s.path.length;let u=[];for(let e=l-1;e>=1;e--)u.push(s.path[e]);for(let e=1;e(x&&!E&&(i=x(oe[3]<=0))&&(u=[]));let g=[];if(u.length>0){let t=1/0,i=-1/0,n=1/0,s=-1/0;for(const e of u)t=Math.min(t,e[0]),n=Math.min(n,e[1]),i=Math.max(i,e[0]),s=Math.max(s,e[1]);i>=o.x&&t<=r.x&&s>=o.y&&n<=r.y&&(g=[u.map((t=>new e.Point(t[0],t[1])))],(tr.x||nr.y)&&(g=e.clipLine(g,o.x,o.y,r.x,r.y)));}for(const e of g){n.reset(e,.25*t);let o=0;o=n.length<=.5*t?1:Math.ceil(n.paddedLength/m)+1;for(let e=0;e0){if(e.transformMat4$1(l,l,t),this.fogState&&n&&\"globe\"!==a.name){const t=function(t,i,o,r,n,s){const a=s.calculateFogTileMatrix(n),l=[i,o,r];return e.transformMat4(l,l,a),C(t,l,s.pitch,s._fov)}(this.fogState,i,o,r,n.toUnwrapped(),this.transform);c=t>.9;}}else pt(l,l,t);const h=l[3];return {point:new e.Point((l[0]/h+1)/2*this.transform.width+mt,(-l[1]/h+1)/2*this.transform.height+mt),perspectiveRatio:Math.min(.5+this.transform.getCameraToCenterDistance(a)/h*.5,1.5),signedDistanceFromCamera:h,occluded:s&&l[2]>h||c}}isOffscreen(e,t,i,o){return i=this.screenRightBoundary||othis.screenBottomBoundary}isInsideGrid(e,t,i,o){return i>=0&&e=0&&te.collisionGroupID===t};}return this.collisionGroups[e]}}function Mt(t,i,o,r,n){const{horizontalAlign:s,verticalAlign:a}=e.getAnchorAlignment(t),l=-(s-.5)*i,c=-(a-.5)*o,h=e.evaluateVariableOffset(t,r);return new e.Point(l+h[0]*n,c+h[1]*n)}function It(t,i,o,r,n){const s=new e.Point(t,i);return o&&s._rotate(r?n:-n),s}class Pt{constructor(e,t,i,o,r){this.transform=e.clone(),this.projection=e.projection.name,this.collisionIndex=new ft(this.transform,r),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=t,this.retainedQueryData={},this.collisionGroups=new Ct(i),this.collisionCircleArrays={},this.prevPlacement=o,o&&(o.prevPlacement=void 0),this.placedOrientations={};}getBucketParts(t,i,o,r){const n=o.getBucket(i),s=o.latestFeatureIndex;if(!n||!s||i.id!==n.layerIds[0])return;const a=n.layers[0].layout,l=o.collisionBoxArray,c=Math.pow(2,this.transform.zoom-o.tileID.overscaledZ),h=o.tileSize/e.EXTENT,u=o.tileID.toUnwrapped();this.transform.setProjection(n.projection);const _=(d=o.tileID,p=n.getProjection(),m=this.transform,p.name===this.projection?m.calculateProjMatrix(d.toUnwrapped()):gt(m,p,d));var d,p,m;const f=\"map\"===a.get(\"text-pitch-alignment\"),g=\"map\"===a.get(\"text-rotation-alignment\");i.compileFilter();const v=i.dynamicFilter(),x=i.dynamicFilterNeedsFeature(),y=this.transform.calculatePixelsToTileUnitsMatrix(o),b=tt(_,o.tileID.canonical,f,g,this.transform,n.getProjection(),y);let w=null;if(f){const t=it(_,o.tileID.canonical,f,g,this.transform,n.getProjection(),y);w=e.multiply([],this.transform.labelPlaneMatrix,t);}let T=null;v&&o.latestFeatureIndex&&(T={unwrappedTileID:u,dynamicFilter:v,dynamicFilterNeedsFeature:x,featureIndex:o.latestFeatureIndex}),this.retainedQueryData[n.bucketInstanceId]=new Et(n.bucketInstanceId,s,n.sourceLayerIndex,n.index,o.tileID);const E={bucket:n,layout:a,posMatrix:_,textLabelPlaneMatrix:b,labelToScreenMatrix:w,clippingData:T,scale:c,textPixelRatio:h,holdingForFade:o.holdingForFade(),collisionBoxArray:l,partiallyEvaluatedTextSize:e.evaluateSizeForZoom(n.textSizeData,this.transform.zoom),partiallyEvaluatedIconSize:e.evaluateSizeForZoom(n.iconSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(n.sourceID)};if(r)for(const e of n.sortKeyRanges){const{sortKey:i,symbolInstanceStart:o,symbolInstanceEnd:r}=e;t.push({sortKey:i,symbolInstanceStart:o,symbolInstanceEnd:r,parameters:E});}else t.push({symbolInstanceStart:0,symbolInstanceEnd:n.symbolInstances.length,parameters:E});}attemptAnchorPlacement(e,t,i,o,r,n,s,a,l,c,h,u,_,d,p,m,f,g){const{textOffset0:v,textOffset1:x,crossTileID:y}=u,b=[v,x],w=Mt(e,i,o,b,r),T=this.collisionIndex.placeCollisionBox(d,r,t,It(w.x,w.y,n,s,this.transform.angle),h,a,l,c.predicate);if(m){const e=d.getSymbolInstanceIconSize(g,this.transform.zoom,u.placedIconSymbolIndex);if(0===this.collisionIndex.placeCollisionBox(d,e,m,It(w.x,w.y,n,s,this.transform.angle),h,a,l,c.predicate).box.length)return}if(T.box.length>0){let t;return this.prevPlacement&&this.prevPlacement.variableOffsets[y]&&this.prevPlacement.placements[y]&&this.prevPlacement.placements[y].text&&(t=this.prevPlacement.variableOffsets[y].anchor),this.variableOffsets[y]={textOffset:b,width:i,height:o,anchor:e,textScale:r,prevAnchor:t},this.markUsedJustification(d,e,u,p),d.allowVerticalPlacement&&(this.markUsedOrientation(d,p,u),this.placedOrientations[y]=p),{shift:w,placedGlyphBoxes:T}}}placeLayerBucketPart(t,i,o,r){const{bucket:n,layout:s,posMatrix:a,textLabelPlaneMatrix:l,labelToScreenMatrix:c,clippingData:h,textPixelRatio:u,holdingForFade:_,collisionBoxArray:d,partiallyEvaluatedTextSize:p,partiallyEvaluatedIconSize:m,collisionGroup:f}=t.parameters,g=s.get(\"text-optional\"),v=s.get(\"icon-optional\"),x=s.get(\"text-allow-overlap\"),y=s.get(\"icon-allow-overlap\"),b=\"map\"===s.get(\"text-rotation-alignment\"),w=\"map\"===s.get(\"text-pitch-alignment\"),T=\"none\"!==s.get(\"icon-text-fit\"),E=\"viewport-y\"===s.get(\"symbol-z-order\");this.transform.setProjection(n.projection);let C=x&&(y||!n.hasIconData()||v),M=y&&(x||!n.hasTextData()||g);!n.collisionArrays&&d&&n.deserializeCollisionBoxes(d),o&&r&&n.updateCollisionDebugBuffers(this.transform.zoom,d);const I=(t,r,d)=>{const{crossTileID:E,numVerticalGlyphVertices:I}=t;if(h){const o={zoom:this.transform.zoom,pitch:this.transform.pitch};let r=null;if(h.dynamicFilterNeedsFeature){const e=this.retainedQueryData[n.bucketInstanceId];r=h.featureIndex.loadFeature({featureIndex:t.featureIndex,bucketIndex:e.bucketIndex,sourceLayerIndex:e.sourceLayerIndex,layoutVertexArrayOffset:0});}if(!(0,h.dynamicFilter)(o,r,this.retainedQueryData[n.bucketInstanceId].tileID.canonical,new e.Point(t.tileAnchorX,t.tileAnchorY),this.transform.calculateDistanceTileData(h.unwrappedTileID)))return this.placements[E]=new wt(!1,!1,!1,!0),void i.add(E)}if(i.has(E))return;if(_)return void(this.placements[E]=new wt(!1,!1,!1));let P=!1,S=!1,D=!0,L=!1,A=!1,z=null,R={box:null,offscreen:null,occluded:null},O={box:null,offscreen:null,occluded:null},B=null,k=null,F=null,U=0,N=0,j=0;d.textFeatureIndex?U=d.textFeatureIndex:t.useRuntimeCollisionCircles&&(U=t.featureIndex),d.verticalTextFeatureIndex&&(N=d.verticalTextFeatureIndex);const G=e=>{e.tileID=this.retainedQueryData[n.bucketInstanceId].tileID;const t=this.transform.elevation;(t||e.elevation)&&(e.elevation=t?t.getAtTileOffset(e.tileID,e.tileAnchorX,e.tileAnchorY):0);},Z=d.textBox;if(Z){G(Z);const i=i=>{let o=e.WritingMode.horizontal;if(n.allowVerticalPlacement&&!i&&this.prevPlacement){const e=this.prevPlacement.placedOrientations[E];e&&(this.placedOrientations[E]=e,o=e,this.markUsedOrientation(n,o,t));}return o},o=(t,i)=>{if(n.allowVerticalPlacement&&I>0&&d.verticalTextBox){for(const o of n.writingModes)if(o===e.WritingMode.vertical?(R=i(),O=R):R=t(),R&&R.box&&R.box.length)break}else R=t();};if(s.get(\"text-variable-anchor\")){let l=s.get(\"text-variable-anchor\");if(this.prevPlacement&&this.prevPlacement.variableOffsets[E]){const e=this.prevPlacement.variableOffsets[E];l.indexOf(e.anchor)>0&&(l=l.filter((t=>t!==e.anchor)),l.unshift(e.anchor));}const c=(e,i,o)=>{const s=n.getSymbolInstanceTextSize(p,t,this.transform.zoom,r),c=(e.x2-e.x1)*s+2*e.padding,h=(e.y2-e.y1)*s+2*e.padding,_=T&&!y?i:null;_&&G(_);let d={box:[],offscreen:!1,occluded:!1};const g=x?2*l.length:l.length;for(let i=0;i=l.length,t,r,n,o,_,p,m);if(g&&(d=g.placedGlyphBoxes,d&&d.box&&d.box.length)){P=!0,z=g.shift;break}}return d};o((()=>c(Z,d.iconBox,e.WritingMode.horizontal)),(()=>{const t=d.verticalTextBox;return t&&G(t),n.allowVerticalPlacement&&!(R&&R.box&&R.box.length)&&I>0&&t?c(t,d.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null,occluded:null}})),R&&(P=R.box,D=R.offscreen,L=R.occluded);const h=i(!(!R||!R.box));if(!P&&this.prevPlacement){const e=this.prevPlacement.variableOffsets[E];e&&(this.variableOffsets[E]=e,this.markUsedJustification(n,e.anchor,t,h));}}else {const s=(i,o)=>{const s=n.getSymbolInstanceTextSize(p,t,this.transform.zoom,r),l=this.collisionIndex.placeCollisionBox(n,s,i,new e.Point(0,0),x,u,a,f.predicate);return l&&l.box&&l.box.length&&(this.markUsedOrientation(n,o,t),this.placedOrientations[E]=o),l};o((()=>s(Z,e.WritingMode.horizontal)),(()=>{const t=d.verticalTextBox;return n.allowVerticalPlacement&&I>0&&t?(G(t),s(t,e.WritingMode.vertical)):{box:null,offscreen:null,occluded:null}})),i(!!(R&&R.box&&R.box.length));}}if(B=R,P=B&&B.box&&B.box.length>0,D=B&&B.offscreen,L=B&&B.occluded,t.useRuntimeCollisionCircles){const i=n.text.placedSymbolArray.get(t.centerJustifiedTextSymbolIndex>=0?t.centerJustifiedTextSymbolIndex:t.verticalPlacedTextSymbolIndex),r=e.evaluateSizeForFeature(n.textSizeData,p,i),h=s.get(\"text-padding\");k=this.collisionIndex.placeCollisionCircles(n,x,i,n.lineVertexArray,n.glyphOffsetArray,r,a,l,c,o,w,f.predicate,t.collisionCircleDiameter*r/e.ONE_EM,h,this.retainedQueryData[n.bucketInstanceId].tileID),P=x||k.circles.length>0&&!k.collisionDetected,D=D&&k.offscreen,L=k.occluded;}if(d.iconFeatureIndex&&(j=d.iconFeatureIndex),d.iconBox){const i=i=>{G(i);const o=T&&z?It(z.x,z.y,b,w,this.transform.angle):new e.Point(0,0),r=n.getSymbolInstanceIconSize(m,this.transform.zoom,t.placedIconSymbolIndex);return this.collisionIndex.placeCollisionBox(n,r,i,o,y,u,a,f.predicate)};O&&O.box&&O.box.length&&d.verticalIconBox?(F=i(d.verticalIconBox),S=F.box.length>0):(F=i(d.iconBox),S=F.box.length>0),D=D&&F.offscreen,A=F.occluded;}const V=g||0===t.numHorizontalGlyphVertices&&0===I,W=v||0===t.numIconVertices;if(V||W?W?V||(S=S&&P):P=S&&P:S=P=S&&P,P&&B&&B.box&&this.collisionIndex.insertCollisionBox(B.box,s.get(\"text-ignore-placement\"),n.bucketInstanceId,O&&O.box&&N?N:U,f.ID),S&&F&&this.collisionIndex.insertCollisionBox(F.box,s.get(\"icon-ignore-placement\"),n.bucketInstanceId,j,f.ID),k&&(P&&this.collisionIndex.insertCollisionCircles(k.circles,s.get(\"text-ignore-placement\"),n.bucketInstanceId,U,f.ID),o)){const e=n.bucketInstanceId;let t=this.collisionCircleArrays[e];void 0===t&&(t=this.collisionCircleArrays[e]=new Tt);for(let e=0;e=0;--t){const i=e[t];I(n.symbolInstances.get(i),i,n.collisionArrays[i]);}}else for(let e=t.symbolInstanceStart;e=0&&(t.text.placedSymbolArray.get(n).crossTileID=u>=0&&n!==u?0:c),s>=0&&(t.text.placedSymbolArray.get(s).crossTileID=u>=0&&s!==u?0:c),a>=0&&(t.text.placedSymbolArray.get(a).crossTileID=u>=0&&a!==u?0:c),l>=0&&(t.text.placedSymbolArray.get(l).crossTileID=u>=0&&l!==u?0:c);}markUsedOrientation(t,i,o){const r=i===e.WritingMode.horizontal||i===e.WritingMode.horizontalOnly?i:0,n=i===e.WritingMode.vertical?i:0,{leftJustifiedTextSymbolIndex:s,centerJustifiedTextSymbolIndex:a,rightJustifiedTextSymbolIndex:l,verticalPlacedTextSymbolIndex:c}=o,h=t.text.placedSymbolArray;s>=0&&(h.get(s).placedOrientation=r),a>=0&&(h.get(a).placedOrientation=r),l>=0&&(h.get(l).placedOrientation=r),c>=0&&(h.get(c).placedOrientation=n);}commit(e){this.commitTime=e,this.zoomAtLastRecencyCheck=this.transform.zoom;const t=this.prevPlacement;let i=!1;this.prevZoomAdjustment=t?t.zoomAdjustment(this.transform.zoom):0;const o=t?t.symbolFadeChange(e):1,r=t?t.opacities:{},n=t?t.variableOffsets:{},s=t?t.placedOrientations:{};for(const e in this.placements){const t=this.placements[e],n=r[e];n?(this.opacities[e]=new bt(n,o,t.text,t.icon,null,t.clipped),i=i||t.text!==n.text.placed||t.icon!==n.icon.placed):(this.opacities[e]=new bt(null,o,t.text,t.icon,t.skipFade,t.clipped),i=i||t.text||t.icon);}for(const e in r){const t=r[e];if(!this.opacities[e]){const r=new bt(t,o,!1,!1);r.isHidden()||(this.opacities[e]=r,i=i||t.text.placed||t.icon.placed);}}for(const e in n)this.variableOffsets[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.variableOffsets[e]=n[e]);for(const e in s)this.placedOrientations[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.placedOrientations[e]=s[e]);i?this.lastPlacementChangeTime=e:\"number\"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=t?t.lastPlacementChangeTime:e);}updateLayerOpacities(e,t){const i=new Set;for(const o of t){const t=o.getBucket(e);t&&o.latestFeatureIndex&&e.id===t.layerIds[0]&&this.updateBucketOpacities(t,i,o.collisionBoxArray);}}updateBucketOpacities(t,i,o){t.hasTextData()&&t.text.opacityVertexArray.clear(),t.hasIconData()&&t.icon.opacityVertexArray.clear(),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexArray.clear(),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexArray.clear();const r=t.layers[0].layout,n=!!t.layers[0].dynamicFilter(),s=new bt(null,0,!1,!1,!0),a=r.get(\"text-allow-overlap\"),l=r.get(\"icon-allow-overlap\"),c=r.get(\"text-variable-anchor\"),h=\"map\"===r.get(\"text-rotation-alignment\"),u=\"map\"===r.get(\"text-pitch-alignment\"),_=\"none\"!==r.get(\"icon-text-fit\"),d=new bt(null,0,a&&(l||!t.hasIconData()||r.get(\"icon-optional\")),l&&(a||!t.hasTextData()||r.get(\"text-optional\")),!0);!t.collisionArrays&&o&&(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData())&&t.deserializeCollisionBoxes(o);const p=(e,t,i)=>{for(let o=0;o0||l>0,b=g>0,w=this.placedOrientations[f],T=w===e.WritingMode.vertical,E=w===e.WritingMode.horizontal||w===e.WritingMode.horizontalOnly;if(!y&&!b||x.isHidden()||m++,y){const e=kt(x.text);p(t.text,a,T?Ft:e),p(t.text,l,E?Ft:e);const i=x.text.isHidden(),{leftJustifiedTextSymbolIndex:o,centerJustifiedTextSymbolIndex:n,rightJustifiedTextSymbolIndex:s,verticalPlacedTextSymbolIndex:c}=r,h=t.text.placedSymbolArray,u=i||T?1:0;o>=0&&(h.get(o).hidden=u),n>=0&&(h.get(n).hidden=u),s>=0&&(h.get(s).hidden=u),c>=0&&(h.get(c).hidden=i||E?1:0);const _=this.variableOffsets[f];_&&this.markUsedJustification(t,_.anchor,r,w);const d=this.placedOrientations[f];d&&(this.markUsedJustification(t,\"left\",r,d),this.markUsedOrientation(t,d,r));}if(b){const e=kt(x.icon),{placedIconSymbolIndex:i,verticalPlacedIconSymbolIndex:o}=r,n=t.icon.placedSymbolArray,s=x.icon.isHidden()?1:0;i>=0&&(p(t.icon,g,T?Ft:e),n.get(i).hidden=s),o>=0&&(p(t.icon,r.numVerticalIconVertices,E?Ft:e),n.get(o).hidden=s);}if(t.hasIconCollisionBoxData()||t.hasTextCollisionBoxData()){const i=t.collisionArrays[o];if(i){let o=new e.Point(0,0),r=!0;if(i.textBox||i.verticalTextBox){if(c){const e=this.variableOffsets[f];e?(o=Mt(e.anchor,e.width,e.height,e.textOffset,e.textScale),h&&o._rotate(u?this.transform.angle:-this.transform.angle)):r=!1;}n&&(r=!x.clipped),i.textBox&&St(t.textCollisionBox.collisionVertexArray,x.text.placed,!r||T,o.x,o.y),i.verticalTextBox&&St(t.textCollisionBox.collisionVertexArray,x.text.placed,!r||E,o.x,o.y);}const s=r&&Boolean(!E&&i.verticalIconBox);i.iconBox&&St(t.iconCollisionBox.collisionVertexArray,x.icon.placed,s,_?o.x:0,_?o.y:0),i.verticalIconBox&&St(t.iconCollisionBox.collisionVertexArray,x.icon.placed,!s,_?o.x:0,_?o.y:0);}}}if(t.fullyClipped=0===m,t.sortFeatures(this.transform.angle),this.retainedQueryData[t.bucketInstanceId]&&(this.retainedQueryData[t.bucketInstanceId].featureSortOrder=t.featureSortOrder),t.hasTextData()&&t.text.opacityVertexBuffer&&t.text.opacityVertexBuffer.updateData(t.text.opacityVertexArray),t.hasIconData()&&t.icon.opacityVertexBuffer&&t.icon.opacityVertexBuffer.updateData(t.icon.opacityVertexArray),t.hasIconCollisionBoxData()&&t.iconCollisionBox.collisionVertexBuffer&&t.iconCollisionBox.collisionVertexBuffer.updateData(t.iconCollisionBox.collisionVertexArray),t.hasTextCollisionBoxData()&&t.textCollisionBox.collisionVertexBuffer&&t.textCollisionBox.collisionVertexBuffer.updateData(t.textCollisionBox.collisionVertexArray),t.bucketInstanceId in this.collisionCircleArrays){const e=this.collisionCircleArrays[t.bucketInstanceId];t.placementInvProjMatrix=e.invProjMatrix,t.placementViewportMatrix=e.viewportMatrix,t.collisionCircleArray=e.circles,delete this.collisionCircleArrays[t.bucketInstanceId];}}symbolFadeChange(e){return 0===this.fadeDuration?1:(e-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(e){return Math.max(0,(this.transform.zoom-e)/1.5)}hasTransitions(e){return this.stale||e-this.lastPlacementChangeTimee}setStale(){this.stale=!0;}}function St(e,t,i,o,r){e.emplaceBack(t?1:0,i?1:0,o||0,r||0),e.emplaceBack(t?1:0,i?1:0,o||0,r||0),e.emplaceBack(t?1:0,i?1:0,o||0,r||0),e.emplaceBack(t?1:0,i?1:0,o||0,r||0);}const Dt=Math.pow(2,25),Lt=Math.pow(2,24),At=Math.pow(2,17),zt=Math.pow(2,16),Rt=Math.pow(2,9),Ot=Math.pow(2,8),Bt=Math.pow(2,1);function kt(e){if(0===e.opacity&&!e.placed)return 0;if(1===e.opacity&&e.placed)return 4294967295;const t=e.placed?1:0,i=Math.floor(127*e.opacity);return i*Dt+t*Lt+i*At+t*zt+i*Rt+t*Ot+i*Bt+t}const Ft=0;class Ut{constructor(e){this._sortAcrossTiles=\"viewport-y\"!==e.layout.get(\"symbol-z-order\")&&void 0!==e.layout.get(\"symbol-sort-key\").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs=new Set,this._bucketParts=[];}continuePlacement(e,t,i,o,r){const n=this._bucketParts;for(;this._currentTileIndexe.sortKey-t.sortKey)));this._currentPartIndex{const t=e.exported.now()-r;return !this._forceFullPlacement&&t>2};for(;this._currentPlacementIndex>=0;){const e=i[t[this._currentPlacementIndex]],r=this.placement.collisionIndex.transform.zoom;if(\"symbol\"===e.type&&(!e.minzoom||e.minzoom<=r)&&(!e.maxzoom||e.maxzoom>r)){if(this._inProgressLayer||(this._inProgressLayer=new Ut(e)),this._inProgressLayer.continuePlacement(o[e.source],this.placement,this._showCollisionBoxes,e,n))return;delete this._inProgressLayer;}this._currentPlacementIndex--;}this._done=!0;}commit(e){return this.placement.commit(e),this.placement}}const jt=512/e.EXTENT/2;class Gt{constructor(t,i,o){this.tileID=t,this.bucketInstanceId=o,this.index=new e.KDBush(i.length,16,Int32Array),this.keys=[],this.crossTileIDs=[];const r=t.canonical.x*e.EXTENT,n=t.canonical.y*e.EXTENT;for(let e=0;ee.overscaledZ)for(const i in r){const n=r[i];n.tileID.isChildOf(e)&&n.findMatches(t.symbolInstances,e,o);}else {const n=r[e.scaledTo(Number(i)).key];n&&n.findMatches(t.symbolInstances,e,o);}}for(let e=0;e{t[e]=!0;}));for(const e in this.layerIndexes)t[e]||delete this.layerIndexes[e];}}const Xt=(t,i)=>e.emitValidationErrors(t,i&&i.filter((e=>\"source.canvas\"!==e.identifier))),qt=e.pick(Ge,[\"addLayer\",\"removeLayer\",\"setPaintProperty\",\"setLayoutProperty\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\",\"setGeoJSONSourceData\",\"setTerrain\",\"setFog\",\"setProjection\"]),$t=e.pick(Ge,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),Ht={version:8,layers:[],sources:{}},Yt={fill:!0,line:!0,background:!0,hillshade:!0,raster:!0};class Kt extends e.Evented{constructor(t,i={}){super(),this.map=t,this.dispatcher=new S(Ue(),this),this.imageManager=new y,this.imageManager.setEventedParent(this),this.glyphManager=new e.GlyphManager(t._requestManager,i.localFontFamily?e.LocalGlyphMode.all:i.localIdeographFontFamily?e.LocalGlyphMode.ideographs:e.LocalGlyphMode.none,i.localFontFamily||i.localIdeographFontFamily),this.crossTileSymbolIndex=new Wt,this._layers={},this._num3DLayers=0,this._numSymbolLayers=0,this._numCircleLayers=0,this._serializedLayers={},this._sourceCaches={},this._otherSourceCaches={},this._symbolSourceCaches={},this._loaded=!1,this._availableImages=[],this._order=[],this._drapedFirstOrder=[],this._markersNeedUpdate=!1,this._resetUpdates(),this.dispatcher.broadcast(\"setReferrer\",e.getReferrer());const o=this;this._rtlTextPluginCallback=Kt.registerForPluginStateChange((t=>{o.dispatcher.broadcast(\"syncRTLPluginState\",{pluginStatus:t.pluginStatus,pluginURL:t.pluginURL},((t,i)=>{if(e.triggerPluginCompletionEvent(t),i&&i.every((e=>e)))for(const e in o._sourceCaches){const t=o._sourceCaches[e],i=t.getSource().type;\"vector\"!==i&&\"geojson\"!==i||t.reload();}}));})),this.on(\"data\",(e=>{if(\"source\"!==e.dataType||\"metadata\"!==e.sourceDataType)return;const t=this.getSource(e.sourceId);if(t&&t.vectorLayerIds)for(const e in this._layers){const i=this._layers[e];i.source===t.id&&this._validateLayer(i);}}));}loadURL(t,i={}){this.fire(new e.Event(\"dataloading\",{dataType:\"style\"}));const o=\"boolean\"==typeof i.validate?i.validate:!e.isMapboxURL(t);t=this.map._requestManager.normalizeStyleURL(t,i.accessToken);const r=this.map._requestManager.transformRequest(t,e.ResourceType.Style);this._request=e.getJSON(r,((t,i)=>{this._request=null,t?this.fire(new e.ErrorEvent(t)):i&&this._load(i,o);}));}loadJSON(t,i={}){this.fire(new e.Event(\"dataloading\",{dataType:\"style\"})),this._request=e.exported.frame((()=>{this._request=null,this._load(t,!1!==i.validate);}));}loadEmpty(){this.fire(new e.Event(\"dataloading\",{dataType:\"style\"})),this._load(Ht,!1);}_updateLayerCount(e,t){const i=t?1:-1;e.is3D()&&(this._num3DLayers+=i),\"circle\"===e.type&&(this._numCircleLayers+=i),\"symbol\"===e.type&&(this._numSymbolLayers+=i);}_load(t,i){if(i&&Xt(this,e.validateStyle(t)))return;this._loaded=!0,this.stylesheet=e.clone$1(t),this._updateMapProjection();for(const e in t.sources)this.addSource(e,t.sources[e],{validate:!1});this._changed=!1,t.sprite?this._loadSprite(t.sprite):(this.imageManager.setLoaded(!0),this.dispatcher.broadcast(\"spriteLoaded\",!0)),this.glyphManager.setURL(t.glyphs);const o=je(this.stylesheet.layers);this._order=o.map((e=>e.id)),this._layers={},this._serializedLayers={};for(const t of o){const i=e.createStyleLayer(t);i.setEventedParent(this,{layer:{id:i.id}}),this._layers[i.id]=i,this._serializedLayers[i.id]=i.serialize(),this._updateLayerCount(i,!0);}this.dispatcher.broadcast(\"setLayers\",this._serializeLayers(this._order)),this.light=new w(this.stylesheet.light),this.stylesheet.terrain&&!this.terrainSetForDrapingOnly()&&this._createTerrain(this.stylesheet.terrain,1),this.stylesheet.fog&&this._createFog(this.stylesheet.fog),this._updateDrapeFirstLayers(),this.fire(new e.Event(\"data\",{dataType:\"style\"})),this.fire(new e.Event(\"style.load\"));}terrainSetForDrapingOnly(){return !!this.terrain&&0===this.terrain.drapeRenderMode}setProjection(e){e?this.stylesheet.projection=e:delete this.stylesheet.projection,this._updateMapProjection();}applyProjectionUpdate(){this._loaded&&(this.dispatcher.broadcast(\"setProjection\",this.map.transform.projectionOptions),this.map.transform.projection.requiresDraping?this.getTerrain()||this.stylesheet.terrain||this.setTerrainForDraping():this.terrainSetForDrapingOnly()&&this.setTerrain(null));}_updateMapProjection(){this.map._useExplicitProjection?this.applyProjectionUpdate():this.map._prioritizeAndUpdateProjection(null,this.stylesheet.projection);}_loadSprite(t){this._spriteRequest=function(t,i,o){let r,n,s;const a=e.exported.devicePixelRatio>1?\"@2x\":\"\";let l=e.getJSON(i.transformRequest(i.normalizeSpriteURL(t,a,\".json\"),e.ResourceType.SpriteJSON),((e,t)=>{l=null,s||(s=e,r=t,h());})),c=e.getImage(i.transformRequest(i.normalizeSpriteURL(t,a,\".png\"),e.ResourceType.SpriteImage),((e,t)=>{c=null,s||(s=e,n=t,h());}));function h(){if(s)o(s);else if(r&&n){const t=e.exported.getImageData(n),i={};for(const o in r){const{width:n,height:s,x:a,y:l,sdf:c,pixelRatio:h,stretchX:u,stretchY:_,content:d}=r[o],p=new e.RGBAImage({width:n,height:s});e.RGBAImage.copy(t,p,{x:a,y:l},{x:0,y:0},{width:n,height:s}),i[o]={data:p,pixelRatio:h,sdf:c,stretchX:u,stretchY:_,content:d};}o(null,i);}}return {cancel(){l&&(l.cancel(),l=null),c&&(c.cancel(),c=null);}}}(t,this.map._requestManager,((t,i)=>{if(this._spriteRequest=null,t)this.fire(new e.ErrorEvent(t));else if(i)for(const e in i)this.imageManager.addImage(e,i[e]);this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),this.dispatcher.broadcast(\"setImages\",this._availableImages),this.dispatcher.broadcast(\"spriteLoaded\",!0),this.fire(new e.Event(\"data\",{dataType:\"style\"}));}));}_validateLayer(t){const i=this.getSource(t.source);if(!i)return;const o=t.sourceLayer;o&&(\"geojson\"===i.type||i.vectorLayerIds&&-1===i.vectorLayerIds.indexOf(o))&&this.fire(new e.ErrorEvent(new Error(`Source layer \"${o}\" does not exist on source \"${i.id}\" as specified by style layer \"${t.id}\"`)));}loaded(){if(!this._loaded)return !1;if(Object.keys(this._updatedSources).length)return !1;for(const e in this._sourceCaches)if(!this._sourceCaches[e].loaded())return !1;return !!this.imageManager.isLoaded()}_serializeLayers(e){const t=[];for(const i of e){const e=this._layers[i];\"custom\"!==e.type&&t.push(e.serialize());}return t}hasTransitions(){if(this.light&&this.light.hasTransition())return !0;if(this.fog&&this.fog.hasTransition())return !0;for(const e in this._sourceCaches)if(this._sourceCaches[e].hasTransition())return !0;for(const e in this._layers)if(this._layers[e].hasTransition())return !0;return !1}get order(){return this.map._optimizeForTerrain&&this.terrain?this._drapedFirstOrder:this._order}isLayerDraped(e){return !!this.terrain&&(\"function\"==typeof e.isLayerDraped?e.isLayerDraped():Yt[e.type])}_checkLoaded(){if(!this._loaded)throw new Error(\"Style is not done loading\")}update(t){if(!this._loaded)return;const i=this._changed;if(this._changed){const e=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(e.length||i.length)&&this._updateWorkerLayers(e,i);for(const e in this._updatedSources){const t=this._updatedSources[e];\"reload\"===t?this._reloadSource(e):\"clear\"===t&&this._clearSource(e);}this._updateTilesForChangedImages();for(const e in this._updatedPaintProps)this._layers[e].updateTransitions(t);this.light.updateTransitions(t),this.fog&&this.fog.updateTransitions(t),this._resetUpdates();}const o={};for(const e in this._sourceCaches){const t=this._sourceCaches[e];o[e]=t.used,t.used=!1;}for(const e of this._order){const i=this._layers[e];if(i.recalculate(t,this._availableImages),!i.isHidden(t.zoom)){const e=this._getLayerSourceCache(i);e&&(e.used=!0);}const o=this.map.painter;if(o){const e=i.getProgramIds();if(!e)continue;const r=i.getProgramConfiguration(t.zoom);for(const t of e)o.useProgram(t,r);}}for(const t in o){const i=this._sourceCaches[t];o[t]!==i.used&&i.getSource().fire(new e.Event(\"data\",{sourceDataType:\"visibility\",dataType:\"source\",sourceId:i.getSource().id}));}this.light.recalculate(t),this.terrain&&this.terrain.recalculate(t),this.fog&&this.fog.recalculate(t),this.z=t.zoom,this._markersNeedUpdate&&(this._updateMarkersOpacity(),this._markersNeedUpdate=!1),i&&this.fire(new e.Event(\"data\",{dataType:\"style\"}));}_updateTilesForChangedImages(){const e=Object.keys(this._changedImages);if(e.length){for(const t in this._sourceCaches)this._sourceCaches[t].reloadTilesForDependencies([\"icons\",\"patterns\"],e);this._changedImages={};}}_updateWorkerLayers(e,t){this.dispatcher.broadcast(\"updateLayers\",{layers:this._serializeLayers(e),removedIds:t});}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={};}setState(i){if(this._checkLoaded(),Xt(this,e.validateStyle(i)))return !1;(i=e.clone$1(i)).layers=je(i.layers);const o=function(e,i){if(!e)return [{command:Ge.setStyle,args:[i]}];let o=[];try{if(!t(e.version,i.version))return [{command:Ge.setStyle,args:[i]}];t(e.center,i.center)||o.push({command:Ge.setCenter,args:[i.center]}),t(e.zoom,i.zoom)||o.push({command:Ge.setZoom,args:[i.zoom]}),t(e.bearing,i.bearing)||o.push({command:Ge.setBearing,args:[i.bearing]}),t(e.pitch,i.pitch)||o.push({command:Ge.setPitch,args:[i.pitch]}),t(e.sprite,i.sprite)||o.push({command:Ge.setSprite,args:[i.sprite]}),t(e.glyphs,i.glyphs)||o.push({command:Ge.setGlyphs,args:[i.glyphs]}),t(e.transition,i.transition)||o.push({command:Ge.setTransition,args:[i.transition]}),t(e.light,i.light)||o.push({command:Ge.setLight,args:[i.light]}),t(e.fog,i.fog)||o.push({command:Ge.setFog,args:[i.fog]}),t(e.projection,i.projection)||o.push({command:Ge.setProjection,args:[i.projection]});const r={},n=[];!function(e,i,o,r){let n;for(n in i=i||{},e=e||{})e.hasOwnProperty(n)&&(i.hasOwnProperty(n)||Ve(n,o,r));for(n in i){if(!i.hasOwnProperty(n))continue;const s=i[n];e.hasOwnProperty(n)?t(e[n],s)||(\"geojson\"===e[n].type&&\"geojson\"===s.type&&Xe(e,i,n)?o.push({command:Ge.setGeoJSONSourceData,args:[n,s.data]}):We(n,i,o,r)):Ze(n,i,o);}}(e.sources,i.sources,n,r);const s=[];e.layers&&e.layers.forEach((e=>{e.source&&r[e.source]?o.push({command:Ge.removeLayer,args:[e.id]}):s.push(e);}));let a=e.terrain;a&&r[a.source]&&(o.push({command:Ge.setTerrain,args:[void 0]}),a=void 0),o=o.concat(n),t(a,i.terrain)||o.push({command:Ge.setTerrain,args:[i.terrain]}),function(e,i,o){i=i||[];const r=(e=e||[]).map($e),n=i.map($e),s=e.reduce(He,{}),a=i.reduce(He,{}),l=r.slice(),c=Object.create(null);let h,u,_,d,p,m,f;for(h=0,u=0;h!(e.command in $t)));if(0===o.length)return !1;const r=o.filter((e=>!(e.command in qt)));if(r.length>0)throw new Error(`Unimplemented: ${r.map((e=>e.command)).join(\", \")}.`);return o.forEach((e=>{\"setTransition\"!==e.command&&\"setProjection\"!==e.command&&this[e.command].apply(this,e.args);})),this.stylesheet=i,this._updateMapProjection(),!0}addImage(t,i){return this.getImage(t)?this.fire(new e.ErrorEvent(new Error(\"An image with this name already exists.\"))):(this.imageManager.addImage(t,i),this._afterImageUpdated(t),this)}updateImage(e,t){this.imageManager.updateImage(e,t);}getImage(e){return this.imageManager.getImage(e)}removeImage(t){return this.getImage(t)?(this.imageManager.removeImage(t),this._afterImageUpdated(t),this):this.fire(new e.ErrorEvent(new Error(\"No image with this name exists.\")))}_afterImageUpdated(t){this._availableImages=this.imageManager.listImages(),this._changedImages[t]=!0,this._changed=!0,this.dispatcher.broadcast(\"setImages\",this._availableImages),this.fire(new e.Event(\"data\",{dataType:\"style\"}));}listImages(){return this._checkLoaded(),this._availableImages.slice()}addSource(t,i,o={}){if(this._checkLoaded(),void 0!==this.getSource(t))throw new Error(\"There is already a source with this ID\");if(!i.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(i).join(\", \")}.`);if([\"vector\",\"raster\",\"geojson\",\"video\",\"image\"].indexOf(i.type)>=0&&this._validate(e.validateSource,`sources.${t}`,i,null,o))return;this.map&&this.map._collectResourceTiming&&(i.collectResourceTiming=!0);const r=De(t,i,this.dispatcher,this);r.setEventedParent(this,(()=>({isSourceLoaded:this._isSourceCacheLoaded(t),source:r.serialize(),sourceId:t})));const n=i=>{const o=(i?\"symbol:\":\"other:\")+t,n=this._sourceCaches[o]=new e.SourceCache(o,r,i);(i?this._symbolSourceCaches:this._otherSourceCaches)[t]=n,n.style=this,n.onAdd(this.map);};n(!1),\"vector\"!==i.type&&\"geojson\"!==i.type||n(!0),r.onAdd&&r.onAdd(this.map),this._changed=!0;}removeSource(t){this._checkLoaded();const i=this.getSource(t);if(!i)throw new Error(\"There is no source with this ID\");for(const i in this._layers)if(this._layers[i].source===t)return this.fire(new e.ErrorEvent(new Error(`Source \"${t}\" cannot be removed while layer \"${i}\" is using it.`)));if(this.terrain&&this.terrain.get().source===t)return this.fire(new e.ErrorEvent(new Error(`Source \"${t}\" cannot be removed while terrain is using it.`)));const o=this._getSourceCaches(t);for(const t of o)delete this._sourceCaches[t.id],delete this._updatedSources[t.id],t.fire(new e.Event(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId:t.getSource().id})),t.setEventedParent(null),t.clearTiles();return delete this._otherSourceCaches[t],delete this._symbolSourceCaches[t],i.setEventedParent(null),i.onRemove&&i.onRemove(this.map),this._changed=!0,this}setGeoJSONSourceData(e,t){this._checkLoaded(),this.getSource(e).setData(t),this._changed=!0;}getSource(e){const t=this._getSourceCache(e);return t&&t.getSource()}_getSources(){const e=[];for(const t in this._otherSourceCaches){const i=this._getSourceCache(t);i&&e.push(i.getSource());}return e}addLayer(t,i,o={}){this._checkLoaded();const r=t.id;if(this.getLayer(r))return void this.fire(new e.ErrorEvent(new Error(`Layer with id \"${r}\" already exists on this map`)));let n;if(\"custom\"===t.type){if(Xt(this,e.validateCustomStyleLayer(t)))return;n=e.createStyleLayer(t);}else {if(\"object\"==typeof t.source&&(this.addSource(r,t.source),t=e.clone$1(t),t=e.extend(t,{source:r})),this._validate(e.validateLayer,`layers.${r}`,t,{arrayIndex:-1},o))return;n=e.createStyleLayer(t),this._validateLayer(n),n.setEventedParent(this,{layer:{id:r}}),this._serializedLayers[n.id]=n.serialize(),this._updateLayerCount(n,!0);}const s=i?this._order.indexOf(i):this._order.length;if(i&&-1===s)return void this.fire(new e.ErrorEvent(new Error(`Layer with id \"${i}\" does not exist on this map.`)));this._order.splice(s,0,r),this._layerOrderChanged=!0,this._layers[r]=n;const a=this._getLayerSourceCache(n);if(this._removedLayers[r]&&n.source&&a&&\"custom\"!==n.type){const e=this._removedLayers[r];delete this._removedLayers[r],e.type!==n.type?this._updatedSources[n.source]=\"clear\":(this._updatedSources[n.source]=\"reload\",a.pause());}this._updateLayer(n),n.onAdd&&n.onAdd(this.map),this._updateDrapeFirstLayers();}moveLayer(t,i){if(this._checkLoaded(),this._changed=!0,!this._layers[t])return void this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be moved.`)));if(t===i)return;const o=this._order.indexOf(t);this._order.splice(o,1);const r=i?this._order.indexOf(i):this._order.length;i&&-1===r?this.fire(new e.ErrorEvent(new Error(`Layer with id \"${i}\" does not exist on this map.`))):(this._order.splice(r,0,t),this._layerOrderChanged=!0,this._updateDrapeFirstLayers());}removeLayer(t){this._checkLoaded();const i=this._layers[t];if(!i)return void this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot be removed.`)));i.setEventedParent(null),this._updateLayerCount(i,!1);const o=this._order.indexOf(t);this._order.splice(o,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[t]=i,delete this._layers[t],delete this._serializedLayers[t],delete this._updatedLayers[t],delete this._updatedPaintProps[t],i.onRemove&&i.onRemove(this.map),this._updateDrapeFirstLayers();}getLayer(e){return this._layers[e]}hasLayer(e){return e in this._layers}hasLayerType(e){for(const t in this._layers)if(this._layers[t].type===e)return !0;return !1}setLayerZoomRange(t,i,o){this._checkLoaded();const r=this.getLayer(t);r?r.minzoom===i&&r.maxzoom===o||(null!=i&&(r.minzoom=i),null!=o&&(r.maxzoom=o),this._updateLayer(r)):this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style and cannot have zoom extent.`)));}setFilter(i,o,r={}){this._checkLoaded();const n=this.getLayer(i);if(n){if(!t(n.filter,o))return null==o?(n.filter=void 0,void this._updateLayer(n)):void(this._validate(e.validateFilter,`layers.${n.id}.filter`,o,{layerType:n.type},r)||(n.filter=e.clone$1(o),this._updateLayer(n)))}else this.fire(new e.ErrorEvent(new Error(`The layer '${i}' does not exist in the map's style and cannot be filtered.`)));}getFilter(t){const i=this.getLayer(t);return i&&e.clone$1(i.filter)}setLayoutProperty(i,o,r,n={}){this._checkLoaded();const s=this.getLayer(i);s?t(s.getLayoutProperty(o),r)||(s.setLayoutProperty(o,r,n),this._updateLayer(s)):this.fire(new e.ErrorEvent(new Error(`The layer '${i}' does not exist in the map's style and cannot be styled.`)));}getLayoutProperty(t,i){const o=this.getLayer(t);if(o)return o.getLayoutProperty(i);this.fire(new e.ErrorEvent(new Error(`The layer '${t}' does not exist in the map's style.`)));}setPaintProperty(i,o,r,n={}){this._checkLoaded();const s=this.getLayer(i);s?t(s.getPaintProperty(o),r)||(s.setPaintProperty(o,r,n)&&this._updateLayer(s),this._changed=!0,this._updatedPaintProps[i]=!0):this.fire(new e.ErrorEvent(new Error(`The layer '${i}' does not exist in the map's style and cannot be styled.`)));}getPaintProperty(e,t){const i=this.getLayer(e);return i&&i.getPaintProperty(t)}setFeatureState(t,i){this._checkLoaded();const o=t.source,r=t.sourceLayer,n=this.getSource(o);if(!n)return void this.fire(new e.ErrorEvent(new Error(`The source '${o}' does not exist in the map's style.`)));const s=n.type;if(\"geojson\"===s&&r)return void this.fire(new e.ErrorEvent(new Error(\"GeoJSON sources cannot have a sourceLayer parameter.\")));if(\"vector\"===s&&!r)return void this.fire(new e.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")));void 0===t.id&&this.fire(new e.ErrorEvent(new Error(\"The feature id parameter must be provided.\")));const a=this._getSourceCaches(o);for(const e of a)e.setFeatureState(r,t.id,i);}removeFeatureState(t,i){this._checkLoaded();const o=t.source,r=this.getSource(o);if(!r)return void this.fire(new e.ErrorEvent(new Error(`The source '${o}' does not exist in the map's style.`)));const n=r.type,s=\"vector\"===n?t.sourceLayer:void 0;if(\"vector\"===n&&!s)return void this.fire(new e.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")));if(i&&\"string\"!=typeof t.id&&\"number\"!=typeof t.id)return void this.fire(new e.ErrorEvent(new Error(\"A feature id is required to remove its specific state property.\")));const a=this._getSourceCaches(o);for(const e of a)e.removeFeatureState(s,t.id,i);}getFeatureState(t){this._checkLoaded();const i=t.source,o=t.sourceLayer,r=this.getSource(i);if(r){if(\"vector\"!==r.type||o)return void 0===t.id&&this.fire(new e.ErrorEvent(new Error(\"The feature id parameter must be provided.\"))),this._getSourceCaches(i)[0].getFeatureState(o,t.id);this.fire(new e.ErrorEvent(new Error(\"The sourceLayer parameter must be provided for vector source types.\")));}else this.fire(new e.ErrorEvent(new Error(`The source '${i}' does not exist in the map's style.`)));}getTransition(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){const t={};for(const e in this._sourceCaches){const i=this._sourceCaches[e].getSource();t[i.id]||(t[i.id]=i.serialize());}return e.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,terrain:this.getTerrain()||void 0,fog:this.stylesheet.fog,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,projection:this.stylesheet.projection,sources:t,layers:this._serializeLayers(this._order)},(e=>void 0!==e))}_updateLayer(e){this._updatedLayers[e.id]=!0;const t=this._getLayerSourceCache(e);e.source&&!this._updatedSources[e.source]&&t&&\"raster\"!==t.getSource().type&&(this._updatedSources[e.source]=\"reload\",t.pause()),this._changed=!0,e.invalidateCompiledFilter();}_flattenAndSortRenderedFeatures(e){const t=e=>\"fill-extrusion\"===this._layers[e].type,i={},o=[];for(let r=this._order.length-1;r>=0;r--){const n=this._order[r];if(t(n)){i[n]=r;for(const t of e){const e=t[n];if(e)for(const t of e)o.push(t);}}}o.sort(((e,t)=>t.intersectionZ-e.intersectionZ));const r=[];for(let n=this._order.length-1;n>=0;n--){const s=this._order[n];if(t(s))for(let e=o.length-1;e>=0;e--){const t=o[e].feature;if(i[t.layer.id]{const t=this.getLayer(e);return t&&t.is3D()})):this.has3DLayers(),a=L.createFromScreenPoints(t,o);for(const e in this._sourceCaches){const t=this._sourceCaches[e].getSource().id;i.layers&&!r[t]||n.push(Ae(this._sourceCaches[e],this._layers,this._serializedLayers,a,i,o,s,!!this.map._showQueryGeometry));}return this.placement&&n.push(function(e,t,i,o,r,n,s){const a={},l=n.queryRenderedSymbols(o),c=[];for(const e of Object.keys(l).map(Number))c.push(s[e]);c.sort(Re);for(const i of c){const o=i.featureIndex.lookupSymbolFeatures(l[i.bucketInstanceId],t,i.bucketIndex,i.sourceLayerIndex,r.filter,r.layers,r.availableImages,e);for(const e in o){const t=a[e]=a[e]||[],r=o[e];r.sort(((e,t)=>{const o=i.featureSortOrder;if(o){const i=o.indexOf(e.featureIndex);return o.indexOf(t.featureIndex)-i}return t.featureIndex-e.featureIndex}));for(const e of r)t.push(e);}}for(const t in a)a[t].forEach((o=>{const r=o.feature,n=i(e[t]);if(!n)return;const s=n.getFeatureState(r.layer[\"source-layer\"],r.id);r.source=r.layer.source,r.layer[\"source-layer\"]&&(r.sourceLayer=r.layer[\"source-layer\"]),r.state=s;}));return a}(this._layers,this._serializedLayers,this._getLayerSourceCache.bind(this),a.screenGeometry,i,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(n)}querySourceFeatures(t,i){i&&i.filter&&this._validate(e.validateFilter,\"querySourceFeatures.filter\",i.filter,null,i);const o=this._getSourceCaches(t);let r=[];for(const e of o)r=r.concat(ze(e,i));return r}addSourceType(e,t,i){return Kt.getSourceType(e)?i(new Error(`A source type called \"${e}\" already exists.`)):(Kt.setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:e,url:t.workerSourceURL},i):i(null,null))}getLight(){return this.light.getLight()}setLight(e,i={}){this._checkLoaded();const o=this.light.getLight();let r=!1;for(const i in e)if(!t(e[i],o[i])){r=!0;break}if(!r)return;const n=this._setTransitionParameters({duration:300,delay:0});this.light.setLight(e,i),this.light.updateTransitions(n);}getTerrain(){return this.terrain&&1===this.terrain.drapeRenderMode?this.terrain.get():null}setTerrainForDraping(){this.setTerrain({source:\"\",exaggeration:0},0);}setTerrain(i,o=1){if(this._checkLoaded(),!i)return delete this.terrain,delete this.stylesheet.terrain,this.dispatcher.broadcast(\"enableTerrain\",!1),this._force3DLayerUpdate(),void(this._markersNeedUpdate=!0);let r=i;if(1===o){if(\"object\"==typeof r.source){const t=\"terrain-dem-src\";this.addSource(t,r.source),r=e.clone$1(r),r=e.extend(r,{source:t});}if(this._validate(e.validateTerrain,\"terrain\",r))return}if(!this.terrain||this.terrain&&o!==this.terrain.drapeRenderMode){if(!r)return;this._createTerrain(r,o);}else {const i=this.terrain,o=i.get();for(const t of Object.keys(e.spec.terrain))!r.hasOwnProperty(t)&&e.spec.terrain[t].default&&(r[t]=e.spec.terrain[t].default);for(const e in r)if(!t(r[e],o[e])){i.set(r),this.stylesheet.terrain=r;const e=this._setTransitionParameters({duration:0});i.updateTransitions(e);break}}this._updateDrapeFirstLayers(),this._markersNeedUpdate=!0;}_createFog(e){const t=this.fog=new P(e,this.map.transform);this.stylesheet.fog=e;const i=this._setTransitionParameters({duration:0});t.updateTransitions(i);}_updateMarkersOpacity(){0!==this.map._markers.length&&this.map._requestDomTask((()=>{for(const e of this.map._markers)e._evaluateOpacity();}));}getFog(){return this.fog?this.fog.get():null}setFog(e){if(this._checkLoaded(),!e)return delete this.fog,delete this.stylesheet.fog,void(this._markersNeedUpdate=!0);if(this.fog){const i=this.fog,o=i.get();0===Object.keys(e).length&&i.set(e);for(const r in e)if(!t(e[r],o[r])){i.set(e),this.stylesheet.fog=e;const t=this._setTransitionParameters({duration:0});i.updateTransitions(t);break}}else this._createFog(e);this._markersNeedUpdate=!0;}_setTransitionParameters(t){return {now:e.exported.now(),transition:e.extend(t,this.stylesheet.transition)}}_updateDrapeFirstLayers(){if(!this.map._optimizeForTerrain||!this.terrain)return;const e=this._order.filter((e=>this.isLayerDraped(this._layers[e]))),t=this._order.filter((e=>!this.isLayerDraped(this._layers[e])));this._drapedFirstOrder=[],this._drapedFirstOrder.push(...e),this._drapedFirstOrder.push(...t);}_createTerrain(e,t){const i=this.terrain=new E(e,t);this.stylesheet.terrain=e,this.dispatcher.broadcast(\"enableTerrain\",!this.terrainSetForDrapingOnly()),this._force3DLayerUpdate();const o=this._setTransitionParameters({duration:0});i.updateTransitions(o);}_force3DLayerUpdate(){for(const e in this._layers){const t=this._layers[e];\"fill-extrusion\"===t.type&&this._updateLayer(t);}}_forceSymbolLayerUpdate(){for(const e in this._layers){const t=this._layers[e];\"symbol\"===t.type&&this._updateLayer(t);}}_validate(t,i,o,r,n={}){return (!n||!1!==n.validate)&&Xt(this,t.call(e.validateStyle,e.extend({key:i,style:this.serialize(),value:o,styleSpec:e.spec},r)))}_remove(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),e.evented.off(\"pluginStateChange\",this._rtlTextPluginCallback);for(const e in this._layers)this._layers[e].setEventedParent(null);for(const e in this._sourceCaches)this._sourceCaches[e].clearTiles(),this._sourceCaches[e].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove();}_clearSource(e){const t=this._getSourceCaches(e);for(const e of t)e.clearTiles();}_reloadSource(e){const t=this._getSourceCaches(e);for(const e of t)e.resume(),e.reload();}_reloadSources(){for(const e of this._getSources())e.reload&&e.reload();}_updateSources(e){for(const t in this._sourceCaches)this._sourceCaches[t].update(e);}_generateCollisionBoxes(){for(const e in this._sourceCaches){const t=this._sourceCaches[e];t.resume(),t.reload();}}_updatePlacement(t,i,o,r,n=!1){let s=!1,a=!1;const l={};for(const e of this._order){const i=this._layers[e];if(\"symbol\"!==i.type)continue;if(!l[i.source]){const e=this._getLayerSourceCache(i);if(!e)continue;l[i.source]=e.getRenderableIds(!0).map((t=>e.getTileByID(t))).sort(((e,t)=>t.tileID.overscaledZ-e.tileID.overscaledZ||(e.tileID.isLessThan(t.tileID)?-1:1)));}const o=this.crossTileSymbolIndex.addLayer(i,l[i.source],t.center.lng,t.projection);s=s||o;}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),n=n||this._layerOrderChanged||0===o,this._layerOrderChanged&&this.fire(new e.Event(\"neworder\")),(n||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(e.exported.now(),t.zoom))&&(this.pauseablePlacement=new Nt(t,this._order,n,i,o,r,this.placement,this.fog&&t.projection.supportsFog?this.fog.state:null),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(e.exported.now()),a=!0),s&&this.pauseablePlacement.placement.setStale()),a||s)for(const e of this._order){const t=this._layers[e];\"symbol\"===t.type&&this.placement.updateLayerOpacities(t,l[t.source]);}return !this.pauseablePlacement.isDone()||this.placement.hasTransitions(e.exported.now())}_releaseSymbolFadeTiles(){for(const e in this._sourceCaches)this._sourceCaches[e].releaseSymbolFadeTiles();}getImages(e,t,i){this.imageManager.getImages(t.icons,i),this._updateTilesForChangedImages();const o=e=>{e&&e.setDependencies(t.tileID.key,t.type,t.icons);};o(this._otherSourceCaches[t.source]),o(this._symbolSourceCaches[t.source]);}getGlyphs(e,t,i){this.glyphManager.getGlyphs(t.stacks,i);}getResource(t,i,o){return e.makeRequest(i,o)}_getSourceCache(e){return this._otherSourceCaches[e]}_getLayerSourceCache(e){return \"symbol\"===e.type?this._symbolSourceCaches[e.source]:this._otherSourceCaches[e.source]}_getSourceCaches(e){const t=[];return this._otherSourceCaches[e]&&t.push(this._otherSourceCaches[e]),this._symbolSourceCaches[e]&&t.push(this._symbolSourceCaches[e]),t}_isSourceCacheLoaded(t){const i=this._getSourceCaches(t);return 0===i.length?(this.fire(new e.ErrorEvent(new Error(`There is no source with ID '${t}'`))),!1):i.every((e=>e.loaded()))}has3DLayers(){return this._num3DLayers>0}hasSymbolLayers(){return this._numSymbolLayers>0}hasCircleLayers(){return this._numCircleLayers>0}_clearWorkerCaches(){this.dispatcher.broadcast(\"clearCaches\");}destroy(){this._clearWorkerCaches(),this.terrainSetForDrapingOnly()&&(delete this.terrain,delete this.stylesheet.terrain);}}Kt.getSourceType=function(e){return Se[e]},Kt.setSourceType=function(e,t){Se[e]=t;},Kt.registerForPluginStateChange=e.registerForPluginStateChange;var Jt=\"\\n#define EPSILON 0.0000001\\n#define PI 3.141592653589793\\n#define EXTENT 8192.0\\n#define HALF_PI PI/2.0\\n#define QUARTER_PI PI/4.0\\n#define RAD_TO_DEG 180.0/PI\\n#define DEG_TO_RAD PI/180.0\\n#define GLOBE_RADIUS EXTENT/PI/2.0\",Qt=\"attribute highp vec3 a_pos_3f;uniform lowp mat4 u_matrix;varying highp vec3 v_uv;void main() {const mat3 half_neg_pi_around_x=mat3(1.0,0.0, 0.0,0.0,0.0,-1.0,0.0,1.0, 0.0);v_uv=half_neg_pi_around_x*a_pos_3f;vec4 pos=u_matrix*vec4(a_pos_3f,1.0);gl_Position=pos.xyww;}\",ei=\"\\n#define ELEVATION_SCALE 7.0\\n#define ELEVATION_OFFSET 450.0\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_tl_up;uniform vec3 u_tile_tr_up;uniform vec3 u_tile_br_up;uniform vec3 u_tile_bl_up;uniform float u_tile_up_scale;vec3 elevationVector(vec2 pos) {vec2 uv=pos/EXTENT;vec3 up=normalize(mix(\\nmix(u_tile_tl_up,u_tile_tr_up,uv.xxx),mix(u_tile_bl_up,u_tile_br_up,uv.xxx),uv.yyy));return up*u_tile_up_scale;}\\n#else\\nvec3 elevationVector(vec2 pos) { return vec3(0,0,1); }\\n#endif\\nconst float skirtOffset=24575.0;vec3 decomposeToPosAndSkirt(vec2 posWithComposedSkirt)\\n{float skirt=float(posWithComposedSkirt.x >=skirtOffset);vec2 pos=posWithComposedSkirt-vec2(skirt*skirtOffset,0.0);return vec3(pos,skirt);}\\n#ifdef TERRAIN\\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\\nuniform highp sampler2D u_dem;uniform highp sampler2D u_dem_prev;\\n#else\\nuniform sampler2D u_dem;uniform sampler2D u_dem_prev;\\n#endif\\nuniform vec4 u_dem_unpack;uniform vec2 u_dem_tl;uniform vec2 u_dem_tl_prev;uniform float u_dem_scale;uniform float u_dem_scale_prev;uniform float u_dem_size;uniform float u_dem_lerp;uniform float u_exaggeration;uniform float u_meter_to_dem;uniform mat4 u_label_plane_matrix_inv;uniform sampler2D u_depth;uniform vec2 u_depth_size_inv;vec4 tileUvToDemSample(vec2 uv,float dem_size,float dem_scale,vec2 dem_tl) {vec2 pos=dem_size*(uv*dem_scale+dem_tl)+1.0;vec2 f=fract(pos);return vec4((pos-f+0.5)/(dem_size+2.0),f);}float decodeElevation(vec4 v) {return dot(vec4(v.xyz*255.0,-1.0),u_dem_unpack);}float currentElevation(vec2 apos) {\\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale+u_dem_tl)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture2D(u_dem,pos).a;\\n#else\\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale,u_dem_tl);vec2 pos=r.xy;vec2 f=r.zw;float tl=decodeElevation(texture2D(u_dem,pos));\\n#ifdef TERRAIN_DEM_NEAREST_FILTER\\nreturn u_exaggeration*tl;\\n#endif\\nfloat tr=decodeElevation(texture2D(u_dem,pos+vec2(dd,0.0)));float bl=decodeElevation(texture2D(u_dem,pos+vec2(0.0,dd)));float br=decodeElevation(texture2D(u_dem,pos+vec2(dd,dd)));return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\\n#endif\\n}float prevElevation(vec2 apos) {\\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale_prev+u_dem_tl_prev)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture2D(u_dem_prev,pos).a;\\n#else\\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale_prev,u_dem_tl_prev);vec2 pos=r.xy;vec2 f=r.zw;float tl=decodeElevation(texture2D(u_dem_prev,pos));float tr=decodeElevation(texture2D(u_dem_prev,pos+vec2(dd,0.0)));float bl=decodeElevation(texture2D(u_dem_prev,pos+vec2(0.0,dd)));float br=decodeElevation(texture2D(u_dem_prev,pos+vec2(dd,dd)));return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\\n#endif\\n}\\n#ifdef TERRAIN_VERTEX_MORPHING\\nfloat elevation(vec2 apos) {\\n#ifdef ZERO_EXAGGERATION\\nreturn 0.0;\\n#endif\\nfloat nextElevation=currentElevation(apos);float prevElevation=prevElevation(apos);return mix(prevElevation,nextElevation,u_dem_lerp);}\\n#else\\nfloat elevation(vec2 apos) {\\n#ifdef ZERO_EXAGGERATION\\nreturn 0.0;\\n#endif\\nreturn currentElevation(apos);}\\n#endif\\nhighp float unpack_depth(highp vec4 rgba_depth)\\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}bool isOccluded(vec4 frag) {vec3 coord=frag.xyz/frag.w;float depth=unpack_depth(texture2D(u_depth,(coord.xy+1.0)*0.5));return coord.z > depth+0.0005;}float occlusionFade(vec4 frag) {vec3 coord=frag.xyz/frag.w;vec3 df=vec3(5.0*u_depth_size_inv,0.0);vec2 uv=0.5*coord.xy+0.5;vec4 depth=vec4(\\nunpack_depth(texture2D(u_depth,uv-df.xz)),unpack_depth(texture2D(u_depth,uv+df.xz)),unpack_depth(texture2D(u_depth,uv-df.zy)),unpack_depth(texture2D(u_depth,uv+df.zy))\\n);return dot(vec4(0.25),vec4(1.0)-clamp(300.0*(vec4(coord.z-0.001)-depth),0.0,1.0));}vec4 fourSample(vec2 pos,vec2 off) {\\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\\nfloat tl=texture2D(u_dem,pos).a;float tr=texture2D(u_dem,pos+vec2(off.x,0.0)).a;float bl=texture2D(u_dem,pos+vec2(0.0,off.y)).a;float br=texture2D(u_dem,pos+off).a;\\n#else\\nvec4 demtl=vec4(texture2D(u_dem,pos).xyz*255.0,-1.0);float tl=dot(demtl,u_dem_unpack);vec4 demtr=vec4(texture2D(u_dem,pos+vec2(off.x,0.0)).xyz*255.0,-1.0);float tr=dot(demtr,u_dem_unpack);vec4 dembl=vec4(texture2D(u_dem,pos+vec2(0.0,off.y)).xyz*255.0,-1.0);float bl=dot(dembl,u_dem_unpack);vec4 dembr=vec4(texture2D(u_dem,pos+off).xyz*255.0,-1.0);float br=dot(dembr,u_dem_unpack);\\n#endif\\nreturn vec4(tl,tr,bl,br);}float flatElevation(vec2 pack) {vec2 apos=floor(pack/8.0);vec2 span=10.0*(pack-apos*8.0);vec2 uvTex=(apos-vec2(1.0,1.0))/8190.0;float size=u_dem_size+2.0;float dd=1.0/size;vec2 pos=u_dem_size*(uvTex*u_dem_scale+u_dem_tl)+1.0;vec2 f=fract(pos);pos=(pos-f+0.5)*dd;vec4 h=fourSample(pos,vec2(dd));float z=mix(mix(h.x,h.y,f.x),mix(h.z,h.w,f.x),f.y);vec2 w=floor(0.5*(span*u_meter_to_dem-1.0));vec2 d=dd*w;h=fourSample(pos-d,2.0*d+vec2(dd));vec4 diff=abs(h.xzxy-h.ywzw);vec2 slope=min(vec2(0.25),u_meter_to_dem*0.5*(diff.xz+diff.yw)/(2.0*w+vec2(1.0)));vec2 fix=slope*span;float base=z+max(fix.x,fix.y);return u_exaggeration*base;}float elevationFromUint16(float word) {return u_exaggeration*(word/ELEVATION_SCALE-ELEVATION_OFFSET);}\\n#else\\nfloat elevation(vec2 pos) { return 0.0; }bool isOccluded(vec4 frag) { return false; }float occlusionFade(vec4 frag) { return 1.0; }\\n#endif\",ti=\"#ifdef FOG\\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump mat4 u_fog_matrix;varying vec3 v_fog_pos;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}vec3 fog_position(vec3 pos) {return (u_fog_matrix*vec4(pos,1.0)).xyz;}vec3 fog_position(vec2 pos) {return fog_position(vec3(pos,0.0));}float fog(vec3 pos) {float depth=length(pos);float opacity=fog_opacity(fog_range(depth));return opacity*fog_horizon_blending(pos/depth);}\\n#endif\",ii=\"#ifdef FOG\\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump float u_fog_temporal_offset;varying vec3 v_fog_pos;uniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform highp vec2 u_viewport;uniform float u_globe_transition;uniform int u_is_globe;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}float globe_glow_progress() {highp vec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);highp vec3 dir=normalize(ray_dir);highp vec3 closest_point=dot(u_globe_pos,dir)*dir;highp float sdf=length(closest_point-u_globe_pos)/u_globe_radius;return sdf+PI*0.5;}float fog_opacity(vec3 pos) {float depth=length(pos);return fog_opacity(fog_range(depth));}vec3 fog_apply(vec3 color,vec3 pos) {float depth=length(pos);float opacity;if (u_is_globe==1) {float glow_progress=globe_glow_progress();float t=mix(glow_progress,depth,u_globe_transition);opacity=fog_opacity(fog_range(t));} else {opacity=fog_opacity(fog_range(depth));opacity*=fog_horizon_blending(pos/depth);}return mix(color,u_fog_color.rgb,opacity);}vec4 fog_apply_from_vert(vec4 color,float fog_opac) {float alpha=EPSILON+color.a;color.rgb=mix(color.rgb/alpha,u_fog_color.rgb,fog_opac)*alpha;return color;}vec3 fog_apply_sky_gradient(vec3 camera_ray,vec3 sky_color) {float horizon_blend=fog_horizon_blending(normalize(camera_ray));return mix(sky_color,u_fog_color.rgb,horizon_blend);}vec4 fog_apply_premultiplied(vec4 color,vec3 pos) {float alpha=EPSILON+color.a;color.rgb=fog_apply(color.rgb/alpha,pos)*alpha;return color;}vec3 fog_dither(vec3 color) {vec2 dither_seed=gl_FragCoord.xy+u_fog_temporal_offset;return dither(color,dither_seed);}vec4 fog_dither(vec4 color) {return vec4(fog_dither(color.rgb),color.a);}\\n#endif\";let oi={},ri={};const ni=[];hi(Jt,ni),hi(ei,ni),hi(ti,ni),hi(ii,ni),oi=ui(\"\",ei),ri=ui(ii,ti);const si=ui(\"\\n#if __VERSION__ >=300\\n#define varying in\\n#define gl_FragColor glFragColor\\n#define texture2D texture\\n#define textureCube texture\\nout vec4 glFragColor;\\n#endif\\nhighp vec3 hash(highp vec2 p) {highp vec3 p3=fract(p.xyx*vec3(443.8975,397.2973,491.1871));p3+=dot(p3,p3.yxz+19.19);return fract((p3.xxy+p3.yzz)*p3.zyx);}vec3 dither(vec3 color,highp vec2 seed) {vec3 rnd=hash(seed)+hash(seed+0.59374)-0.5;return color+rnd/255.0;}highp float unpack_depth(highp vec4 rgba_depth)\\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}highp vec4 pack_depth(highp float ndc_z) {highp float depth=ndc_z*0.5+0.5;const highp vec4 bit_shift=vec4(255.0*255.0*255.0,255.0*255.0,255.0,1.0);const highp vec4 bit_mask =vec4(0.0,1.0/255.0,1.0/255.0,1.0/255.0);highp vec4 res=fract(depth*bit_shift);res-=res.xxyz*bit_mask;return res;}\",\"\\n#if __VERSION__ >=300\\n#define attribute in\\n#define varying out\\n#define texture2D texture\\n#endif\\nfloat wrap(float n,float min,float max) {float d=max-min;float w=mod(mod(n-min,d)+d,d)+min;return (w==min) ? max : w;}\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 mercator_tile_position(mat4 matrix,vec2 tile_anchor,vec3 tile_id,vec2 mercator_center) {\\n#ifndef PROJECTED_POS_ON_VIEWPORT\\nfloat tiles=tile_id.z;vec2 mercator=(tile_anchor/EXTENT+tile_id.xy)/tiles;mercator-=mercator_center;mercator.x=wrap(mercator.x,-0.5,0.5);vec4 mercator_tile=vec4(mercator.xy*EXTENT,EXTENT/(2.0*PI),1.0);mercator_tile=matrix*mercator_tile;return mercator_tile.xyz;\\n#else\\nreturn vec3(0.0);\\n#endif\\n}vec3 mix_globe_mercator(vec3 globe,vec3 mercator,float t) {return mix(globe,mercator,t);}mat3 globe_mercator_surface_vectors(vec3 pos_normal,vec3 up_dir,float zoom_transition) {vec3 normal=zoom_transition==0.0 ? pos_normal : normalize(mix(pos_normal,up_dir,zoom_transition));vec3 xAxis=normalize(vec3(normal.z,0.0,-normal.x));vec3 yAxis=normalize(cross(normal,xAxis));return mat3(xAxis,yAxis,normal);}\\n#endif\\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(\\nunpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}const vec4 AWAY=vec4(-1000.0,-1000.0,-1000.0,1);//Normalized device coordinate that is not rendered.\"),ai=Jt,li=\"\\n#ifdef GL_ES\\nprecision mediump float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\";var ci={background:ui(\"uniform vec4 u_color;uniform float u_opacity;\\n#ifdef LIGHTING_3D_MODE\\nvarying vec4 v_color;\\n#endif\\nvoid main() {vec4 out_color;\\n#ifdef LIGHTING_3D_MODE\\nout_color=v_color;\\n#else\\nout_color=u_color;\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=out_color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;\\n#ifdef LIGHTING_3D_MODE\\nuniform vec4 u_color;varying vec4 v_color;\\n#endif\\nvoid main() {gl_Position=u_matrix*vec4(a_pos,0,1);\\n#ifdef LIGHTING_3D_MODE\\nv_color=apply_lighting(u_color);\\n#endif\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),backgroundPattern:ui(\"uniform vec2 u_pattern_tl;uniform vec2 u_pattern_br;uniform vec2 u_texsize;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos;void main() {vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(u_pattern_tl/u_texsize,u_pattern_br/u_texsize,imagecoord);vec4 out_color=texture2D(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=out_color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pattern_size;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_pattern_size,u_tile_units_to_pixels,a_pos);\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),circle:ui(\"varying vec3 v_data;varying float v_visibility;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(\\nantialiased_blur,0.0,extrude_length-radius/(radius+stroke_width)\\n);vec4 out_color=mix(color*opacity,stroke_color*stroke_opacity,color_t);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_apply_premultiplied(out_color,v_fog_pos);\\n#endif\\ngl_FragColor=out_color*(v_visibility*opacity_t);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"#define NUM_VISIBILITY_RINGS 2\\n#define INV_SQRT2 0.70710678\\n#define ELEVATION_BIAS 0.0001\\n#define NUM_SAMPLES_PER_RING 16\\nuniform mat4 u_matrix;uniform mat2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\\n#endif\\nvarying vec3 v_data;varying float v_visibility;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvec2 calc_offset(vec2 extrusion,float radius,float stroke_width, float view_scale) {return extrusion*(radius+stroke_width)*u_extrude_scale*view_scale;}float cantilevered_elevation(vec2 pos,float radius,float stroke_width,float view_scale) {vec2 c1=pos+calc_offset(vec2(-1,-1),radius,stroke_width,view_scale);vec2 c2=pos+calc_offset(vec2(1,-1),radius,stroke_width,view_scale);vec2 c3=pos+calc_offset(vec2(1,1),radius,stroke_width,view_scale);vec2 c4=pos+calc_offset(vec2(-1,1),radius,stroke_width,view_scale);float h1=elevation(c1)+ELEVATION_BIAS;float h2=elevation(c2)+ELEVATION_BIAS;float h3=elevation(c3)+ELEVATION_BIAS;float h4=elevation(c4)+ELEVATION_BIAS;return max(h4,max(h3,max(h1,h2)));}float circle_elevation(vec2 pos) {\\n#if defined(TERRAIN)\\nreturn elevation(pos)+ELEVATION_BIAS;\\n#else\\nreturn 0.0;\\n#endif\\n}vec4 project_vertex(vec2 extrusion,vec4 world_center,vec4 projected_center,float radius,float stroke_width, float view_scale,mat3 surface_vectors) {vec2 sample_offset=calc_offset(extrusion,radius,stroke_width,view_scale);\\n#ifdef PITCH_WITH_MAP\\n#ifdef PROJECTION_GLOBE_VIEW\\nreturn u_matrix*( world_center+vec4(sample_offset.x*surface_vectors[0]+sample_offset.y*surface_vectors[1],0) );\\n#else\\nreturn u_matrix*( world_center+vec4(sample_offset,0,0) );\\n#endif\\n#else\\nreturn projected_center+vec4(sample_offset,0,0);\\n#endif\\n}float get_sample_step() {\\n#ifdef PITCH_WITH_MAP\\nreturn 2.0*PI/float(NUM_SAMPLES_PER_RING);\\n#else\\nreturn PI/float(NUM_SAMPLES_PER_RING);\\n#endif\\n}void main(void) {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);vec4 world_center;mat3 surface_vectors;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 pos_normal_3=a_pos_normal_3/16384.0;surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(circle_center)*circle_elevation(circle_center);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*circle_elevation(circle_center);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,circle_center,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;vec3 pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);world_center=vec4(pos,1);\\n#else \\nsurface_vectors=mat3(1.0);float height=circle_elevation(circle_center);world_center=vec4(circle_center,height,1);\\n#endif\\nvec4 projected_center=u_matrix*world_center;float view_scale=0.0;\\n#ifdef PITCH_WITH_MAP\\n#ifdef SCALE_WITH_MAP\\nview_scale=1.0;\\n#else\\nview_scale=projected_center.w/u_camera_to_center_distance;\\n#endif\\n#else\\n#ifdef SCALE_WITH_MAP\\nview_scale=u_camera_to_center_distance;\\n#else\\nview_scale=projected_center.w;\\n#endif\\n#endif\\ngl_Position=project_vertex(extrude,world_center,projected_center,radius,stroke_width,view_scale,surface_vectors);float visibility=0.0;\\n#ifdef TERRAIN\\nfloat step=get_sample_step();vec4 occlusion_world_center;vec4 occlusion_projected_center;\\n#ifdef PITCH_WITH_MAP\\nfloat cantilevered_height=cantilevered_elevation(circle_center,radius,stroke_width,view_scale);occlusion_world_center=vec4(circle_center,cantilevered_height,1);occlusion_projected_center=u_matrix*occlusion_world_center;\\n#else\\nocclusion_world_center=world_center;occlusion_projected_center=projected_center;\\n#endif\\nfor(int ring=0; ring < NUM_VISIBILITY_RINGS; ring++) {float scale=(float(ring)+1.0)/float(NUM_VISIBILITY_RINGS);for(int i=0; i < NUM_SAMPLES_PER_RING; i++) {vec2 extrusion=vec2(cos(step*float(i)),-sin(step*float(i)))*scale;vec4 frag_pos=project_vertex(extrusion,occlusion_world_center,occlusion_projected_center,radius,stroke_width,view_scale,surface_vectors);visibility+=float(!isOccluded(frag_pos));}}visibility/=float(NUM_VISIBILITY_RINGS)*float(NUM_SAMPLES_PER_RING);\\n#else\\nvisibility=1.0;\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nvisibility=1.0;\\n#endif\\nv_visibility=visibility;lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);\\n#ifdef FOG\\nv_fog_pos=fog_position(world_center.xyz);\\n#endif\\n}\"),clippingMask:ui(\"void main() {gl_FragColor=vec4(1.0);}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),heatmap:ui(\"uniform highp float u_intensity;varying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main() {\\n#pragma mapbox: initialize highp float weight\\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\\n#ifdef FOG\\nif (u_is_globe==0) {gl_FragColor.r*=pow(1.0-fog_opacity(v_fog_pos),2.0);}\\n#endif\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\\n#endif\\nvarying vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#pragma mapbox: define mediump float radius\\nconst highp float ZERO=1.0/255.0/16.0;\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main(void) {\\n#pragma mapbox: initialize highp float weight\\n#pragma mapbox: initialize mediump float radius\\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec2 tilePos=floor(a_pos*0.5);vec3 pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 pos_normal_3=a_pos_normal_3/16384.0;mat3 surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(tilePos)*elevation(tilePos);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*elevation(tilePos);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,tilePos,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\\n#else\\npos=vec3(tilePos+extrude,elevation(tilePos));\\n#endif\\ngl_Position=u_matrix*vec4(pos,1);\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n}\"),heatmapTexture:ui(\"uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(0.0);\\n#endif\\n}\",\"attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=vec4(a_pos,0,1);v_pos=a_pos*0.5+0.5;}\"),collisionBox:ui(\"varying float v_placed;varying float v_notUsed;void main() {vec4 red =vec4(1.0,0.0,0.0,1.0);vec4 blue=vec4(0.0,0.0,1.0,0.5);gl_FragColor =mix(red,blue,step(0.5,v_placed))*0.5;gl_FragColor*=mix(1.0,0.1,step(0.5,v_notUsed));}\",\"attribute vec3 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;attribute float a_size_scale;attribute vec2 a_padding;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_pos+elevationVector(a_anchor_pos)*elevation(a_anchor_pos),1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(\\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,1.5);gl_Position=projectedPoint;gl_Position.xy+=(a_extrude*a_size_scale+a_shift+a_padding)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}\"),collisionCircle:ui(\"varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}\",\"attribute vec2 a_pos_2f;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos_2f;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(\\nmix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(\\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}\"),debug:ui(\"uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}\",\"attribute vec2 a_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_pos_3;\\n#endif\\nvarying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {float h=elevation(a_pos);v_uv=a_pos/8192.0;\\n#ifdef PROJECTION_GLOBE_VIEW\\ngl_Position=u_matrix*vec4(a_pos_3+elevationVector(a_pos)*h,1);\\n#else\\ngl_Position=u_matrix*vec4(a_pos*u_overlay_scale,h,1);\\n#endif\\n}\"),fill:ui(\"#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float opacity\\nvec4 out_color=color;\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=out_color*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float opacity\\ngl_Position=u_matrix*vec4(a_pos,0,1);\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),fillOutline:ui(\"varying vec2 v_pos;\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 outline_color\\n#pragma mapbox: initialize lowp float opacity\\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=outline_color;\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=out_color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 outline_color\\n#pragma mapbox: initialize lowp float opacity\\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),fillOutlinePattern:ui(\"uniform vec2 u_texsize;uniform sampler2D u_image;varying vec2 v_pos;varying vec2 v_pos_world;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);float dist=length(v_pos_world-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=texture2D(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=out_color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos;varying vec2 v_pos_world;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);v_pos_world=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),fillPattern:ui(\"uniform vec2 u_texsize;uniform sampler2D u_image;varying vec2 v_pos;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture2D(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=out_color*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),fillExtrusion:ui(\"varying vec4 v_color;\\n#ifdef RENDER_SHADOWS\\nvarying highp vec4 v_pos_light_view_0;varying highp vec4 v_pos_light_view_1;varying float v_depth;\\n#endif\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;varying vec3 v_ao;\\n#endif\\n#ifdef ZERO_ROOF_RADIUS\\nvarying vec4 v_roof_color;\\n#endif\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\\nvarying highp vec3 v_normal;\\n#endif\\nvoid main() {\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\\nvec3 normal=v_normal;\\n#endif\\nfloat z;vec4 color;\\n#ifdef ZERO_ROOF_RADIUS\\nz=float(normal.z > 0.00001);color=mix(v_color,v_roof_color,z);\\n#else\\ncolor=v_color;\\n#endif\\n#ifdef FAUX_AO\\nfloat intensity=u_ao[0];float h=max(0.0,v_ao.z);float h_floors=h/u_ao[1];float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);float shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;\\n#ifdef ZERO_ROOF_RADIUS\\nconcave*=(1.0-z);\\n#endif\\nfloat x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);shade*=mix(1.0,x_shade*x_shade*x_shade,concave);color.rgb=color.rgb*shade;\\n#endif\\n#ifdef RENDER_SHADOWS\\n#ifdef ZERO_ROOF_RADIUS\\nnormal=mix(normal,vec3(0.0,0.0,1.0),z);\\n#endif\\ncolor.xyz=shadowed_color_normal(color.xyz,normalize(normal),v_pos_light_view_0,v_pos_light_view_1,v_depth);\\n#endif\\n#ifdef FOG\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\\n#endif\\ngl_FragColor=color;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform float u_edge_radius;attribute vec4 a_pos_normal_ed;attribute vec2 a_centroid_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\\n#endif\\nvarying vec4 v_color;\\n#ifdef RENDER_SHADOWS\\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;varying highp vec4 v_pos_light_view_0;varying highp vec4 v_pos_light_view_1;varying float v_depth;\\n#endif\\n#ifdef ZERO_ROOF_RADIUS\\nvarying vec4 v_roof_color;\\n#endif\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\\nvarying highp vec3 v_normal;\\n#endif\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;varying vec3 v_ao;\\n#endif\\n#pragma mapbox: define highp float base\\n#pragma mapbox: define highp float height\\n#pragma mapbox: define highp vec4 color\\nvoid main() {\\n#pragma mapbox: initialize highp float base\\n#pragma mapbox: initialize highp float height\\n#pragma mapbox: initialize highp vec4 color\\nvec4 pos_nx=floor(a_pos_normal_ed*0.5);vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS)\\nv_normal=normal;\\n#endif\\nbase=max(0.0,base);height=max(0.0,top_up_ny.y==0.0 && top_up_ny.x==1.0 ? height-u_edge_radius : height);float t=top_up_ny.x;vec2 centroid_pos=vec2(0.0);\\n#if defined(HAS_CENTROID) || defined(TERRAIN)\\ncentroid_pos=a_centroid_pos;\\n#endif\\nfloat ele=0.0;float h=0.0;float c_ele;vec3 pos;\\n#ifdef TERRAIN\\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);pos=vec3(pos_nx.xy,h);\\n#else\\nh=t > 0.0 ? height : base;pos=vec3(pos_nx.xy,h);\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*h);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,pos.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*pos.z;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\\n#endif\\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(pos,1),AWAY,hidden);\\n#ifdef RENDER_SHADOWS\\nv_pos_light_view_0=u_light_matrix_0*vec4(pos,1);v_pos_light_view_1=u_light_matrix_1*vec4(pos,1);v_depth=gl_Position.w;\\n#endif\\nfloat NdotL=0.0;float colorvalue=0.0;\\n#ifdef LIGHTING_3D_MODE\\nNdotL=calculate_NdotL(normal);\\n#else\\ncolorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;NdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),NdotL);\\n#endif\\nif (normal.y !=0.0) {float r=0.84;\\n#ifndef LIGHTING_3D_MODE\\nr=mix(0.7,0.98,1.0-u_lightintensity);\\n#endif\\nNdotL*=(\\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}v_color=vec4(0.0,0.0,0.0,1.0);\\n#ifdef FAUX_AO\\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\\n#ifdef TERRAIN\\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\\n#endif\\nv_ao=vec3(mix(concave,-concave,start),y_ground,h-ele);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\\n#ifdef PROJECTION_GLOBE_VIEW\\ntop_height+=u_height_lift;\\n#endif\\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nv_color=apply_lighting(color,NdotL);\\n#else\\nv_color.rgb+=clamp(color.rgb*NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));\\n#endif\\nv_color*=u_opacity;\\n#ifdef ZERO_ROOF_RADIUS\\nv_roof_color=vec4(0.0,0.0,0.0,1.0);\\n#ifdef LIGHTING_3D_MODE\\nv_roof_color=apply_lighting(color,calculate_NdotL(vec3(0.0,0.0,1.0)));\\n#else\\nfloat roofNdotL=clamp(u_lightpos.z,0.0,1.0);roofNdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),roofNdotL);v_roof_color.rgb+=clamp(color.rgb*roofNdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));\\n#endif\\nv_roof_color*=u_opacity;\\n#endif\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n}\"),fillExtrusionPattern:ui(\"uniform vec2 u_texsize;uniform sampler2D u_image;\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;varying vec3 v_ao;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nvarying float v_NdotL;\\n#endif\\nvarying vec2 v_pos;varying vec4 v_lighting;uniform lowp float u_opacity;\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float base\\n#pragma mapbox: initialize lowp float height\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture2D(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color,v_NdotL)*u_opacity;\\n#else\\nout_color=out_color*v_lighting;\\n#endif\\n#ifdef FAUX_AO\\nfloat intensity=u_ao[0];float h=max(0.0,v_ao.z);float h_floors=h/u_ao[1];float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);float shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;float x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);shade*=mix(1.0,x_shade*x_shade*x_shade,concave);out_color.rgb=out_color.rgb*shade;\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=out_color;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform float u_tile_units_to_pixels;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec4 a_pos_normal_ed;attribute vec2 a_centroid_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_pos_3;attribute vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\\n#endif\\nvarying vec2 v_pos;varying vec4 v_lighting;\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;varying vec3 v_ao;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nvarying float v_NdotL;\\n#endif\\n#pragma mapbox: define lowp float base\\n#pragma mapbox: define lowp float height\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float base\\n#pragma mapbox: initialize lowp float height\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec4 pos_nx=floor(a_pos_normal_ed*0.5);mediump vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;mediump vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));float edgedistance=a_pos_normal_ed.w;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;base=max(0.0,base);height=max(0.0,height);float t=top_up_ny.x;float z=t > 0.0 ? height : base;vec2 centroid_pos=vec2(0.0);\\n#if defined(HAS_CENTROID) || defined(TERRAIN)\\ncentroid_pos=a_centroid_pos;\\n#endif\\nfloat ele=0.0;float h=z;vec3 p;float c_ele;\\n#ifdef TERRAIN\\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);p=vec3(pos_nx.xy,h);\\n#else\\np=vec3(pos_nx.xy,z);\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*(p.z+lift));vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,p.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*p.z;p=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\\n#endif\\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(p,1),AWAY,hidden);vec2 pos=normal.z==1.0\\n? pos_nx.xy\\n: vec2(edgedistance,z*u_height_factor);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float NdotL=0.0;\\n#ifdef LIGHTING_3D_MODE\\nNdotL=calculate_NdotL(normal);\\n#else\\nNdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),NdotL);\\n#endif\\nif (normal.y !=0.0) {float r=0.84;\\n#ifndef LIGHTING_3D_MODE\\nr=mix(0.7,0.98,1.0-u_lightintensity);\\n#endif\\nNdotL*=(\\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}\\n#ifdef FAUX_AO\\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\\n#ifdef TERRAIN\\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\\n#endif\\nv_ao=vec3(mix(concave,-concave,start),y_ground,h-ele);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\\n#ifdef PROJECTION_GLOBE_VIEW\\ntop_height+=u_height_lift;\\n#endif\\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nv_NdotL=NdotL;\\n#else\\nv_lighting.rgb+=clamp(NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;\\n#endif \\n#ifdef FOG\\nv_fog_pos=fog_position(p);\\n#endif\\n}\"),hillshadePrepare:ui(\"#ifdef GL_ES\\nprecision highp float;\\n#endif\\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord) {\\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\\nreturn texture2D(u_image,coord).a/4.0;\\n#else\\nvec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;\\n#endif\\n}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y));float b=getElevation(v_pos+vec2(0,-epsilon.y));float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y));float d=getElevation(v_pos+vec2(-epsilon.x,0));float e=getElevation(v_pos+vec2(epsilon.x,0));float f=getElevation(v_pos+vec2(-epsilon.x,epsilon.y));float g=getElevation(v_pos+vec2(0,epsilon.y));float h=getElevation(v_pos+vec2(epsilon.x,epsilon.y));float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2(\\n(c+e+e+h)-(a+d+d+f),(f+g+g+h)-(a+b+b+c)\\n)/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(\\nderiv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}\"),hillshade:ui(\"uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\\n#ifdef LIGHTING_3D_MODE\\ngl_FragColor=apply_lighting(gl_FragColor);\\n#endif\\n#ifdef FOG\\ngl_FragColor=fog_dither(fog_apply_premultiplied(gl_FragColor,v_fog_pos));\\n#endif\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),line:ui(\"uniform lowp float u_device_pixel_ratio;uniform float u_alpha_discard_threshold;uniform highp vec2 u_trim_offset;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec4 v_uv;\\n#ifdef RENDER_LINE_DASH\\nuniform sampler2D u_dash_image;varying vec2 v_tex;\\n#endif\\n#ifdef RENDER_LINE_GRADIENT\\nuniform sampler2D u_gradient_image;\\n#endif\\nuniform float u_border_width;uniform vec4 u_border_color;float luminance(vec3 c) {return (c.r+c.r+c.b+c.g+c.g+c.g)*0.1667;}\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float floorwidth\\n#pragma mapbox: define lowp vec4 dash\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\nfloat linearstep(float edge0,float edge1,float x) {return clamp((x-edge0)/(edge1-edge0),0.0,1.0);}void main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float floorwidth\\n#pragma mapbox: initialize lowp vec4 dash\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);\\n#ifdef RENDER_LINE_DASH\\nfloat sdfdist=texture2D(u_dash_image,v_tex).a;float sdfgamma=1.0/(2.0*u_device_pixel_ratio)/dash.z;alpha*=linearstep(0.5-sdfgamma/floorwidth,0.5+sdfgamma/floorwidth,sdfdist);\\n#endif\\nhighp vec4 out_color;\\n#ifdef RENDER_LINE_GRADIENT\\nout_color=texture2D(u_gradient_image,v_uv.xy);\\n#else\\nout_color=color;\\n#endif\\nfloat trimmed=1.0;\\n#ifdef RENDER_LINE_TRIM_OFFSET\\nhighp float start=v_uv[2];highp float end=v_uv[3];highp float trim_start=u_trim_offset[0];highp float trim_end=u_trim_offset[1];highp float line_progress=(start+(v_uv.x)*(end-start));if (trim_end > trim_start) {if (line_progress <=trim_end && line_progress >=trim_start) {out_color=vec4(0,0,0,0);trimmed=0.0;}}\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\n#ifdef RENDER_LINE_ALPHA_DISCARD\\nif (alpha < u_alpha_discard_threshold) {discard;}\\n#endif\\n#ifdef RENDER_LINE_BORDER\\nfloat edgeBlur=(u_border_width+1.0/u_device_pixel_ratio);float alpha2=clamp(min(dist-(v_width2.t-edgeBlur),v_width2.s-dist)/edgeBlur,0.0,1.0);if (alpha2 < 1.) {float smoothAlpha=smoothstep(0.6,1.0,alpha2);\\n#ifdef RENDER_LINE_BORDER_AUTO\\nfloat Y=(out_color.a > 0.01) ? luminance(out_color.rgb/out_color.a) : 1.;float adjustment=(Y > 0.) ? 0.5/Y : 0.45;if (out_color.a > 0.25 && Y < 0.25) {vec3 borderColor=(Y > 0.) ? out_color.rgb : vec3(1,1,1)*out_color.a;out_color.rgb=out_color.rgb+borderColor*(adjustment*(1.0-smoothAlpha));} else {out_color.rgb*=(0.6 +0.4*smoothAlpha);}\\n#else\\nout_color.rgb=mix(u_border_color.rgb*u_border_color.a*trimmed,out_color.rgb,smoothAlpha);\\n#endif\\n}\\n#endif\\ngl_FragColor=out_color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define EXTRUDE_SCALE 0.015873016\\nattribute vec2 a_pos_normal;attribute vec4 a_data;\\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\\nattribute highp vec4 a_packed;\\n#endif\\n#ifdef RENDER_LINE_DASH\\nattribute float a_linesofar;\\n#endif\\nuniform mat4 u_matrix;uniform mat2 u_pixels_to_tile_units;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec4 v_uv;\\n#ifdef RENDER_LINE_DASH\\nuniform vec2 u_texsize;uniform float u_tile_units_to_pixels;varying vec2 v_tex;\\n#endif\\n#ifdef RENDER_LINE_GRADIENT\\nuniform float u_image_height;\\n#endif\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float floorwidth\\n#pragma mapbox: define lowp vec4 dash\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float width\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float floorwidth\\n#pragma mapbox: initialize lowp vec4 dash\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float width\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*EXTRUDE_SCALE;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*EXTRUDE_SCALE*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\\n#ifndef RENDER_TO_TEXTURE\\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\\n#else\\nv_gamma_scale=1.0;\\n#endif\\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\\nfloat a_uv_x=a_packed[0];float a_split_index=a_packed[1];highp float a_clip_start=a_packed[2];highp float a_clip_end=a_packed[3];\\n#ifdef RENDER_LINE_GRADIENT\\nhighp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec4(a_uv_x,a_split_index*texel_height-half_texel_height,a_clip_start,a_clip_end);\\n#else\\nv_uv=vec4(a_uv_x,0.0,a_clip_start,a_clip_end);\\n#endif\\n#endif\\n#ifdef RENDER_LINE_DASH\\nfloat scale=dash.z==0.0 ? 0.0 : u_tile_units_to_pixels/dash.z;float height=dash.y;v_tex=vec2(a_linesofar*scale/floorwidth,(-normal.y*height+dash.x+0.5)/u_texsize.y);\\n#endif\\nv_width2=vec2(outset,inset);\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n}\"),linePattern:ui(\"uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_tile_units_to_pixels;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;vec2 pattern_size=vec2(display_size.x/u_tile_units_to_pixels,display_size.y);float aspect=display_size.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x=mod(v_linesofar/pattern_size.x*aspect,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos=mix(pattern_tl*texel_size-texel_size,pattern_br*texel_size+texel_size,vec2(x,y));vec4 color=texture2D(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\ncolor=apply_lighting(color);\\n#endif\\n#ifdef FOG\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\\n#endif\\ngl_FragColor=color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"\\n#define scale 0.015873016\\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_linesofar;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mat2 u_pixels_to_tile_units;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize mediump float width\\n#pragma mapbox: initialize lowp float floorwidth\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\\n#ifndef RENDER_TO_TEXTURE\\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\\n#else\\nv_gamma_scale=1.0;\\n#endif\\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n}\"),raster:ui(\"uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(\\ndot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);vec3 out_color=mix(u_high_vec,u_low_vec,rgb);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply(out_color,v_fog_pos));\\n#endif\\ngl_FragColor=vec4(out_color*color.a,color.a);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform vec2 u_perspective_transform;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {float w=1.0+dot(a_texture_pos,u_perspective_transform);gl_Position=u_matrix*vec4(a_pos*w,0,w);v_pos0=a_texture_pos/8192.0;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}\"),symbolIcon:ui(\"uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_pixeloffset;attribute vec4 a_projected_pos;attribute float a_fade_opacity;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_globe_anchor;attribute vec3 a_globe_normal;\\n#endif\\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform vec3 u_up_vector;\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\\n#endif\\nvarying vec2 v_tex;varying float v_fade_opacity;\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_min_font_scale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;vec3 h=elevationVector(tile_anchor)*elevation(tile_anchor);float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\\n#else\\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\\n#endif\\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjected_point;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetProjected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\\n#else\\noffsetProjected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\\n#endif\\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetProjected_point.xy/offsetProjected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\\n#else\\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\\n#endif\\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*max(a_min_font_scale,font_scale)+a_pxoffset/16.0);\\n#ifdef TERRAIN\\n#ifdef PITCH_WITH_MAP_TERRAIN\\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\\n#endif\\n#endif\\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\\n#else\\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\\n#endif\\nfloat projection_transition_fade=1.0;\\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\\n#endif\\nv_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change))*projection_transition_fade;}\"),symbolSDF:ui(\"#define SDF_PX 8.0\\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_pixeloffset;attribute vec4 a_projected_pos;attribute float a_fade_opacity;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_globe_anchor;attribute vec3 a_globe_normal;\\n#endif\\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\\n#endif\\nvarying vec2 v_data0;varying vec3 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;vec3 h=elevationVector(tile_anchor)*elevation(tile_anchor);float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\\n#else\\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\\n#endif\\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetprojected_point;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetprojected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\\n#else\\noffsetprojected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\\n#endif\\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetprojected_point.xy/offsetprojected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\\n#else\\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\\n#endif\\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset);\\n#ifdef TERRAIN\\n#ifdef PITCH_WITH_MAP_TERRAIN\\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\\n#endif\\n#endif\\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\\n#else\\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\\n#endif\\nfloat gamma_scale=gl_Position.w;float projection_transition_fade=1.0;\\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\\n#endif\\nvec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity*projection_transition_fade);}\"),symbolTextAndIcon:ui(\"#define SDF_PX 8.0\\n#define SDF 1.0\\n#define ICON 0.0\\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"attribute vec4 a_pos_offset;attribute vec4 a_tex_size;attribute vec4 a_projected_pos;attribute float a_fade_opacity;\\n#ifdef PROJECTION_GLOBE_VIEW\\nattribute vec3 a_globe_anchor;attribute vec3 a_globe_normal;\\n#endif\\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;uniform vec2 u_texsize_icon;\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\\n#endif\\nvarying vec4 v_data0;varying vec4 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;vec3 h=elevationVector(tile_anchor)*elevation(tile_anchor);float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\\n#else\\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\\n#endif\\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offset_projected_point=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projected_point.xy/projected_point.w;vec2 b=offset_projected_point.xy/offset_projected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\\n#else\\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\\n#endif\\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*font_scale);\\n#ifdef TERRAIN\\n#ifdef PITCH_WITH_MAP_TERRAIN\\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\\n#endif\\n#endif\\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\\n#else\\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,float(projected_point.w <=0.0 || occlusion_fade==0.0));\\n#endif\\nfloat gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));float projection_transition_fade=1.0;\\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\\n#endif\\nv_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity*projection_transition_fade,is_sdf);}\"),terrainRaster:ui(\"uniform sampler2D u_image0;varying vec2 v_pos0;\\n#ifdef FOG\\nvarying float v_fog_opacity;\\n#endif\\n#ifdef RENDER_SHADOWS\\nvarying vec4 v_pos_light_view_0;varying vec4 v_pos_light_view_1;varying float v_depth;\\n#endif\\nvoid main() {vec4 color=texture2D(u_image0,v_pos0);\\n#ifdef RENDER_SHADOWS\\ncolor.xyz=shadowed_color(color.xyz,v_pos_light_view_0,v_pos_light_view_1,v_depth);\\n#endif\\n#ifdef FOG\\n#ifdef ZERO_EXAGGERATION\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\\n#else\\ncolor=fog_dither(fog_apply_from_vert(color,v_fog_opacity));\\n#endif\\n#endif\\ngl_FragColor=color;\\n#ifdef TERRAIN_WIREFRAME\\ngl_FragColor=vec4(1.0,0.0,0.0,0.8);\\n#endif\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_matrix;uniform float u_skirt_height;attribute vec2 a_pos;varying vec2 v_pos0;\\n#ifdef FOG\\nvarying float v_fog_opacity;\\n#endif\\n#ifdef RENDER_SHADOWS\\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;varying vec4 v_pos_light_view_0;varying vec4 v_pos_light_view_1;varying float v_depth;\\n#endif\\nconst float wireframeOffset=0.00015;void main() {vec3 decomposedPosAndSkirt=decomposeToPosAndSkirt(a_pos);float skirt=decomposedPosAndSkirt.z;vec2 decodedPos=decomposedPosAndSkirt.xy;float elevation=elevation(decodedPos)-skirt*u_skirt_height;\\n#ifdef TERRAIN_WIREFRAME\\nelevation+=wireframeOffset;\\n#endif\\nv_pos0=decodedPos/8192.0;gl_Position=u_matrix*vec4(decodedPos,elevation,1.0);\\n#ifdef FOG\\n#ifdef ZERO_EXAGGERATION\\nv_fog_pos=fog_position(decodedPos);\\n#else\\nv_fog_opacity=fog(fog_position(vec3(decodedPos,elevation)));\\n#endif\\n#endif\\n#ifdef RENDER_SHADOWS\\nvec3 pos=vec3(decodedPos,elevation);v_pos_light_view_0=u_light_matrix_0*vec4(pos,1.);v_pos_light_view_1=u_light_matrix_1*vec4(pos,1.);v_depth=gl_Position.w;\\n#endif\\n}\"),terrainDepth:ui(\"#ifdef GL_ES\\nprecision highp float;\\n#endif\\nvarying float v_depth;void main() {gl_FragColor=pack_depth(v_depth);}\",\"uniform mat4 u_matrix;attribute vec2 a_pos;varying float v_depth;void main() {float elevation=elevation(a_pos);gl_Position=u_matrix*vec4(a_pos,elevation,1.0);v_depth=gl_Position.z/gl_Position.w;}\"),skybox:ui(\"\\nvarying lowp vec3 v_uv;uniform lowp samplerCube u_cubemap;uniform lowp float u_opacity;uniform highp float u_temporal_offset;uniform highp vec3 u_sun_direction;float sun_disk(highp vec3 ray_direction,highp vec3 sun_direction) {highp float cos_angle=dot(normalize(ray_direction),sun_direction);const highp float cos_sun_angular_diameter=0.99996192306;const highp float smoothstep_delta=1e-5;return smoothstep(\\ncos_sun_angular_diameter-smoothstep_delta,cos_sun_angular_diameter+smoothstep_delta,cos_angle);}float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec3 uv=v_uv;const float y_bias=0.015;uv.y+=y_bias;uv.y=pow(abs(uv.y),1.0/5.0);uv.y=map(uv.y,0.0,1.0,-1.0,1.0);vec3 sky_color=textureCube(u_cubemap,uv).rgb;\\n#ifdef FOG\\nsky_color=fog_apply_sky_gradient(v_uv.xzy,sky_color);\\n#endif\\nsky_color.rgb=dither(sky_color.rgb,gl_FragCoord.xy+u_temporal_offset);sky_color+=0.1*sun_disk(v_uv,u_sun_direction);gl_FragColor=vec4(sky_color*u_opacity,u_opacity);\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",Qt),skyboxGradient:ui(\"varying highp vec3 v_uv;uniform lowp sampler2D u_color_ramp;uniform highp vec3 u_center_direction;uniform lowp float u_radius;uniform lowp float u_opacity;uniform highp float u_temporal_offset;void main() {float progress=acos(dot(normalize(v_uv),u_center_direction))/u_radius;vec4 color=texture2D(u_color_ramp,vec2(progress,0.5));\\n#ifdef FOG\\ncolor.rgb=fog_apply_sky_gradient(v_uv.xzy,color.rgb/color.a)*color.a;\\n#endif\\ncolor*=u_opacity;color.rgb=dither(color.rgb,gl_FragCoord.xy+u_temporal_offset);gl_FragColor=color;\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",Qt),skyboxCapture:ui(\"\\nvarying highp vec3 v_position;uniform highp float u_sun_intensity;uniform highp float u_luminance;uniform lowp vec3 u_sun_direction;uniform highp vec4 u_color_tint_r;uniform highp vec4 u_color_tint_m;\\n#ifdef GL_ES\\nprecision highp float;\\n#endif\\n#define BETA_R vec3(5.5e-6,13.0e-6,22.4e-6)\\n#define BETA_M vec3(21e-6,21e-6,21e-6)\\n#define MIE_G 0.76\\n#define DENSITY_HEIGHT_SCALE_R 8000.0\\n#define DENSITY_HEIGHT_SCALE_M 1200.0\\n#define PLANET_RADIUS 6360e3\\n#define ATMOSPHERE_RADIUS 6420e3\\n#define SAMPLE_STEPS 10\\n#define DENSITY_STEPS 4\\nfloat ray_sphere_exit(vec3 orig,vec3 dir,float radius) {float a=dot(dir,dir);float b=2.0*dot(dir,orig);float c=dot(orig,orig)-radius*radius;float d=sqrt(b*b-4.0*a*c);return (-b+d)/(2.0*a);}vec3 extinction(vec2 density) {return exp(-vec3(BETA_R*u_color_tint_r.a*density.x+BETA_M*u_color_tint_m.a*density.y));}vec2 local_density(vec3 point) {float height=max(length(point)-PLANET_RADIUS,0.0);float exp_r=exp(-height/DENSITY_HEIGHT_SCALE_R);float exp_m=exp(-height/DENSITY_HEIGHT_SCALE_M);return vec2(exp_r,exp_m);}float phase_ray(float cos_angle) {return (3.0/(16.0*PI))*(1.0+cos_angle*cos_angle);}float phase_mie(float cos_angle) {return (3.0/(8.0*PI))*((1.0-MIE_G*MIE_G)*(1.0+cos_angle*cos_angle))/((2.0+MIE_G*MIE_G)*pow(1.0+MIE_G*MIE_G-2.0*MIE_G*cos_angle,1.5));}vec2 density_to_atmosphere(vec3 point,vec3 light_dir) {float ray_len=ray_sphere_exit(point,light_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(DENSITY_STEPS);vec2 density_point_to_atmosphere=vec2(0.0);for (int i=0; i < DENSITY_STEPS;++i) {vec3 point_on_ray=point+light_dir*((float(i)+0.5)*step_len);density_point_to_atmosphere+=local_density(point_on_ray)*step_len;;}return density_point_to_atmosphere;}vec3 atmosphere(vec3 ray_dir,vec3 sun_direction,float sun_intensity) {vec2 density_orig_to_point=vec2(0.0);vec3 scatter_r=vec3(0.0);vec3 scatter_m=vec3(0.0);vec3 origin=vec3(0.0,PLANET_RADIUS,0.0);float ray_len=ray_sphere_exit(origin,ray_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(SAMPLE_STEPS);for (int i=0; i < SAMPLE_STEPS;++i) {vec3 point_on_ray=origin+ray_dir*((float(i)+0.5)*step_len);vec2 density=local_density(point_on_ray)*step_len;density_orig_to_point+=density;vec2 density_point_to_atmosphere=density_to_atmosphere(point_on_ray,sun_direction);vec2 density_orig_to_atmosphere=density_orig_to_point+density_point_to_atmosphere;vec3 extinction=extinction(density_orig_to_atmosphere);scatter_r+=density.x*extinction;scatter_m+=density.y*extinction;}float cos_angle=dot(ray_dir,sun_direction);float phase_r=phase_ray(cos_angle);float phase_m=phase_mie(cos_angle);vec3 beta_r=BETA_R*u_color_tint_r.rgb*u_color_tint_r.a;vec3 beta_m=BETA_M*u_color_tint_m.rgb*u_color_tint_m.a;return (scatter_r*phase_r*beta_r+scatter_m*phase_m*beta_m)*sun_intensity;}const float A=0.15;const float B=0.50;const float C=0.10;const float D=0.20;const float E=0.02;const float F=0.30;vec3 uncharted2_tonemap(vec3 x) {return ((x*(A*x+C*B)+D*E)/(x*(A*x+B)+D*F))-E/F;}void main() {vec3 ray_direction=v_position;ray_direction.y=pow(ray_direction.y,5.0);const float y_bias=0.015;ray_direction.y+=y_bias;vec3 color=atmosphere(normalize(ray_direction),u_sun_direction,u_sun_intensity);float white_scale=1.0748724675633854;color=uncharted2_tonemap((log2(2.0/pow(u_luminance,4.0)))*color)*white_scale;gl_FragColor=vec4(color,1.0);}\",\"attribute highp vec3 a_pos_3f;uniform mat3 u_matrix_3f;varying highp vec3 v_position;float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec4 pos=vec4(u_matrix_3f*a_pos_3f,1.0);v_position=pos.xyz;v_position.y*=-1.0;v_position.y=map(v_position.y,-1.0,1.0,0.0,1.0);gl_Position=vec4(a_pos_3f.xy,0.0,1.0);}\"),globeRaster:ui(\"uniform sampler2D u_image0;varying vec2 v_pos0;\\n#ifndef FOG\\nuniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform vec2 u_viewport;\\n#endif\\nvoid main() {vec4 color;\\n#ifdef CUSTOM_ANTIALIASING\\nvec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);vec3 dir=normalize(ray_dir);vec3 closest_point=dot(u_globe_pos,dir)*dir;float norm_dist_from_center=1.0-length(closest_point-u_globe_pos)/u_globe_radius;const float antialias_pixel=2.0;float antialias_factor=antialias_pixel*fwidth(norm_dist_from_center);float antialias=smoothstep(0.0,antialias_factor,norm_dist_from_center);vec4 raster=texture2D(u_image0,v_pos0);color=vec4(raster.rgb*antialias,raster.a*antialias);\\n#else\\ncolor=texture2D(u_image0,v_pos0);\\n#endif\\n#ifdef FOG\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\\n#endif\\ngl_FragColor=color;\\n#ifdef TERRAIN_WIREFRAME\\ngl_FragColor=vec4(1.0,0.0,0.0,0.8);\\n#endif\\n#ifdef OVERDRAW_INSPECTOR\\ngl_FragColor=vec4(1.0);\\n#endif\\n}\",\"uniform mat4 u_proj_matrix;uniform mat4 u_normalize_matrix;uniform mat4 u_globe_matrix;uniform mat4 u_merc_matrix;uniform float u_zoom_transition;uniform vec2 u_merc_center;uniform mat3 u_grid_matrix;uniform float u_skirt_height;\\n#ifdef GLOBE_POLES\\nattribute vec3 a_globe_pos;attribute vec2 a_uv;\\n#else\\nattribute vec2 a_pos;\\n#endif\\nvarying vec2 v_pos0;const float wireframeOffset=1e3;float mercatorXfromLng(float lng) {return (180.0+lng)/360.0;}float mercatorYfromLat(float lat) {return (180.0-(RAD_TO_DEG*log(tan(QUARTER_PI+lat/2.0*DEG_TO_RAD))))/360.0;}vec3 latLngToECEF(vec2 latLng) {latLng=DEG_TO_RAD*latLng;float cosLat=cos(latLng[0]);float sinLat=sin(latLng[0]);float cosLng=cos(latLng[1]);float sinLng=sin(latLng[1]);float sx=cosLat*sinLng*GLOBE_RADIUS;float sy=-sinLat*GLOBE_RADIUS;float sz=cosLat*cosLng*GLOBE_RADIUS;return vec3(sx,sy,sz);}void main() {\\n#ifdef GLOBE_POLES\\nvec3 globe_pos=a_globe_pos;vec2 uv=a_uv;\\n#else\\nfloat tiles=u_grid_matrix[0][2];float idx=u_grid_matrix[1][2];float idy=u_grid_matrix[2][2];vec3 decomposed_pos_and_skirt=decomposeToPosAndSkirt(a_pos);vec3 latLng=u_grid_matrix*vec3(decomposed_pos_and_skirt.xy,1.0);float mercatorY=mercatorYfromLat(latLng[0]);float uvY=mercatorY*tiles-idy;float mercatorX=mercatorXfromLng(latLng[1]);float uvX=mercatorX*tiles-idx;vec3 globe_pos=latLngToECEF(latLng.xy);vec2 merc_pos=vec2(mercatorX,mercatorY);vec2 uv=vec2(uvX,uvY);\\n#endif\\nv_pos0=uv;vec2 tile_pos=uv*EXTENT;vec3 globe_derived_up_vector=normalize(globe_pos)*u_tile_up_scale;\\n#ifdef GLOBE_POLES\\nvec3 up_vector=globe_derived_up_vector;\\n#else\\nvec3 up_vector=elevationVector(tile_pos);\\n#endif\\nfloat height=elevation(tile_pos);\\n#ifdef TERRAIN_WIREFRAME\\nheight+=wireframeOffset;\\n#endif\\nglobe_pos+=up_vector*height;\\n#ifndef GLOBE_POLES\\nglobe_pos-=globe_derived_up_vector*u_skirt_height*decomposed_pos_and_skirt.z;\\n#endif\\n#ifdef GLOBE_POLES\\nvec4 interpolated_pos=u_globe_matrix*vec4(globe_pos,1.0);\\n#else\\nvec4 globe_world_pos=u_globe_matrix*vec4(globe_pos,1.0);vec4 merc_world_pos=vec4(0.0);if (u_zoom_transition > 0.0) {merc_world_pos=vec4(merc_pos,height-u_skirt_height*decomposed_pos_and_skirt.z,1.0);merc_world_pos.xy-=u_merc_center;merc_world_pos.x=wrap(merc_world_pos.x,-0.5,0.5);merc_world_pos=u_merc_matrix*merc_world_pos;}vec4 interpolated_pos=vec4(mix(globe_world_pos.xyz,merc_world_pos.xyz,u_zoom_transition),1.0);\\n#endif\\ngl_Position=u_proj_matrix*interpolated_pos;\\n#ifdef FOG\\nv_fog_pos=fog_position((u_normalize_matrix*vec4(globe_pos,1.0)).xyz);\\n#endif\\n}\"),globeAtmosphere:ui(\"uniform float u_transition;uniform highp float u_fadeout_range;uniform highp float u_temporal_offset;uniform vec3 u_start_color;uniform vec4 u_color;uniform vec4 u_space_color;uniform vec4 u_high_color;uniform float u_star_intensity;uniform float u_star_size;uniform float u_star_density;uniform float u_horizon_angle;uniform mat4 u_rotation_matrix;varying highp vec3 v_ray_dir;varying highp vec3 v_horizon_dir;highp float random(highp vec3 p) {p=fract(p*vec3(23.2342,97.1231,91.2342));p+=dot(p.zxy,p.yxz+123.1234);return fract(p.x*p.y);}float stars(vec3 p,float scale,vec2 offset) {vec2 uv_scale=(u_viewport/u_star_size)*scale;vec3 position=vec3(p.xy*uv_scale+offset*u_viewport,p.z);vec3 q=fract(position)-0.5;vec3 id=floor(position);float random_visibility=step(random(id),u_star_density);float circle=smoothstep(0.5+u_star_intensity,0.5,length(q));return circle*random_visibility;}void main() {highp vec3 dir=normalize(v_ray_dir);float globe_pos_dot_dir;\\n#ifdef PROJECTION_GLOBE_VIEW\\nglobe_pos_dot_dir=dot(u_globe_pos,dir);highp vec3 closest_point_forward=abs(globe_pos_dot_dir)*dir;float norm_dist_from_center=length(closest_point_forward-u_globe_pos)/u_globe_radius;if (norm_dist_from_center < 0.98) {discard;return;}\\n#endif\\nhighp vec3 horizon_dir=normalize(v_horizon_dir);float horizon_angle_mercator=dir.y < horizon_dir.y ?\\n0.0 : max(acos(dot(dir,horizon_dir)),0.0);float horizon_angle;\\n#ifdef PROJECTION_GLOBE_VIEW\\nhighp vec3 closest_point=globe_pos_dot_dir*dir;float closest_point_to_center=length(closest_point-u_globe_pos);float theta=asin(clamp(closest_point_to_center/length(u_globe_pos),-1.0,1.0));horizon_angle=globe_pos_dot_dir < 0.0 ?\\nPI-theta-u_horizon_angle : theta-u_horizon_angle;float angle_t=pow(u_transition,10.0);horizon_angle=mix(horizon_angle,horizon_angle_mercator,angle_t);\\n#else\\nhorizon_angle=horizon_angle_mercator;\\n#endif\\nhorizon_angle/=PI;float t=exp(-horizon_angle/u_fadeout_range);float alpha_0=u_color.a;float alpha_1=u_high_color.a;float alpha_2=u_space_color.a;vec3 color_stop_0=u_color.rgb;vec3 color_stop_1=u_high_color.rgb;vec3 color_stop_2=u_space_color.rgb;vec3 c0=mix(color_stop_2,color_stop_1,alpha_1);vec3 c1=mix(c0,color_stop_0,alpha_0);vec3 c2=mix(c0,c1,t);vec3 c =mix(color_stop_2,c2,t);float a0=mix(alpha_2,1.0,alpha_1);float a1=mix(a0,1.0,alpha_0);float a2=mix(a0,a1,t);float a =mix(alpha_2,a2,t);vec2 uv=gl_FragCoord.xy/u_viewport-0.5;float aspect_ratio=u_viewport.x/u_viewport.y;vec4 uv_dir=vec4(normalize(vec3(uv.x*aspect_ratio,uv.y,1.0)),1.0);uv_dir=u_rotation_matrix*uv_dir;vec3 n=abs(uv_dir.xyz);vec2 uv_remap=(n.x > n.y && n.x > n.z) ? uv_dir.yz/uv_dir.x:\\n(n.y > n.x && n.y > n.z) ? uv_dir.zx/uv_dir.y:\\nuv_dir.xy/uv_dir.z;uv_remap.x/=aspect_ratio;vec3 D=vec3(uv_remap,1.0);highp float star_field=0.0;if (u_star_intensity > 0.0) {star_field+=stars(D,1.2,vec2(0.0,0.0));star_field+=stars(D,1.0,vec2(1.0,0.0));star_field+=stars(D,0.8,vec2(0.0,1.0));star_field+=stars(D,0.6,vec2(1.0,1.0));star_field*=(1.0-pow(t,0.25+(1.0-u_high_color.a)*0.75));c+=star_field*alpha_2;}c=dither(c,gl_FragCoord.xy+u_temporal_offset);gl_FragColor=vec4(c,a);}\",\"attribute vec3 a_pos;attribute vec2 a_uv;uniform vec3 u_frustum_tl;uniform vec3 u_frustum_tr;uniform vec3 u_frustum_br;uniform vec3 u_frustum_bl;uniform float u_horizon;varying highp vec3 v_ray_dir;varying highp vec3 v_horizon_dir;void main() {v_ray_dir=mix(\\nmix(u_frustum_tl,u_frustum_tr,a_uv.x),mix(u_frustum_bl,u_frustum_br,a_uv.x),a_uv.y);v_horizon_dir=mix(\\nmix(u_frustum_tl,u_frustum_bl,u_horizon),mix(u_frustum_tr,u_frustum_br,u_horizon),a_uv.x);gl_Position=vec4(a_pos,1.0);}\")};function hi(e,t){const i=e.replace(/\\s*\\/\\/[^\\n]*\\n/g,\"\\n\").split(\"\\n\");for(let e of i)if(e=e.trim(),\"#\"===e[0]&&e.includes(\"if\")&&!e.includes(\"endif\")){e=e.replace(\"#\",\"\").replace(/ifdef|ifndef|elif|if/g,\"\").replace(/!|defined|\\(|\\)|\\|\\||&&/g,\"\").replace(/\\s+/g,\" \").trim();const i=e.split(\" \");for(const e of i)t.includes(e)||t.push(e);}}function ui(e,t){const i=/#pragma mapbox: ([\\w]+) ([\\w]+) ([\\w]+) ([\\w]+)/g,o=t.match(/attribute (highp |mediump |lowp )?([\\w]+) ([\\w]+)/g),r={},n=[...ni];return hi(e,n),hi(t,n),{fragmentSource:e=e.replace(i,((e,t,i,o,n)=>(r[n]=!0,\"define\"===t?`\\n#ifndef HAS_UNIFORM_u_${n}\\nvarying ${i} ${o} ${n};\\n#else\\nuniform ${i} ${o} u_${n};\\n#endif\\n`:`\\n#ifdef HAS_UNIFORM_u_${n}\\n ${i} ${o} ${n} = u_${n};\\n#endif\\n`))),vertexSource:t=t.replace(i,((e,t,i,o,n)=>{const s=\"float\"===o?\"vec2\":\"vec4\",a=n.match(/color/)?\"color\":s;return r[n]?\"define\"===t?`\\n#ifndef HAS_UNIFORM_u_${n}\\nuniform lowp float u_${n}_t;\\nattribute ${i} ${s} a_${n};\\nvarying ${i} ${o} ${n};\\n#else\\nuniform ${i} ${o} u_${n};\\n#endif\\n`:\"vec4\"===a?`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${n} = a_${n};\\n#else\\n ${i} ${o} ${n} = u_${n};\\n#endif\\n`:`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\\n#else\\n ${i} ${o} ${n} = u_${n};\\n#endif\\n`:\"define\"===t?`\\n#ifndef HAS_UNIFORM_u_${n}\\nuniform lowp float u_${n}_t;\\nattribute ${i} ${s} a_${n};\\n#else\\nuniform ${i} ${o} u_${n};\\n#endif\\n`:\"vec4\"===a?`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${i} ${o} ${n} = a_${n};\\n#else\\n ${i} ${o} ${n} = u_${n};\\n#endif\\n`:`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${i} ${o} ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\\n#else\\n ${i} ${o} ${n} = u_${n};\\n#endif\\n`})),staticAttributes:o,usedDefines:n}}class _i{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffers=[],this.vao=null;}bind(e,t,i,o,r,n,s){this.context=e;let a=this.boundPaintVertexBuffers.length!==o.length;for(let e=0;!a&&e{const r=i.paint.get(\"hillshade-shadow-color\"),n=i.paint.get(\"hillshade-highlight-color\"),s=i.paint.get(\"hillshade-accent-color\");let a=i.paint.get(\"hillshade-illumination-direction\")*(Math.PI/180);\"viewport\"===i.paint.get(\"hillshade-illumination-anchor\")&&(a-=e.transform.angle);const l=!e.options.moving;return {u_matrix:o||e.transform.calculateProjMatrix(t.tileID.toUnwrapped(),l),u_image:0,u_latrange:di(0,t.tileID),u_light:[i.paint.get(\"hillshade-exaggeration\"),a],u_shadow:r,u_highlight:n,u_accent:s}})(t,o,r,t.terrain?i.projMatrix:null);t.prepareDrawProgram(l,u,i.toUnwrapped());const{tileBoundsBuffer:d,tileBoundsIndexBuffer:p,tileBoundsSegments:m}=t.getTileBoundsBuffers(o);u.draw(l,c.TRIANGLES,n,s,a,e.CullFaceMode.disabled,_,r.id,d,p,m);}function mi(t,i,o){if(!i.needsDEMTextureUpload)return;const r=t.context,n=r.gl;r.pixelStoreUnpackPremultiplyAlpha.set(!1),i.demTexture=i.demTexture||t.getTileTexture(o.stride);const s=o.getPixels();i.demTexture?i.demTexture.update(s,{premultiply:!1}):i.demTexture=new e.Texture(r,s,n.RGBA,{premultiply:!1}),i.needsDEMTextureUpload=!1;}function fi(t,i,o,r,n,s){const a=t.context,l=a.gl;if(!i.dem)return;const c=i.dem;if(a.activeTexture.set(l.TEXTURE1),mi(t,i,c),!i.demTexture)return;i.demTexture.bind(l.NEAREST,l.CLAMP_TO_EDGE);const h=c.dim;a.activeTexture.set(l.TEXTURE0);let u=i.fbo;if(!u){const t=new e.Texture(a,{width:h,height:h,data:null},l.RGBA);t.bind(l.LINEAR,l.CLAMP_TO_EDGE),u=i.fbo=a.createFramebuffer(h,h,!0),u.colorAttachment.set(t.texture);}a.bindFramebuffer.set(u.framebuffer),a.viewport.set([0,0,h,h]);const{tileBoundsBuffer:_,tileBoundsIndexBuffer:d,tileBoundsSegments:p}=t.getMercatorTileBoundsBuffers();t.useProgram(\"hillshadePrepare\").draw(a,l.TRIANGLES,r,n,s,e.CullFaceMode.disabled,((t,i)=>{const o=i.stride,r=e.create();return e.ortho(r,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(r,r,[0,-e.EXTENT,0]),{u_matrix:r,u_image:1,u_dimension:[o,o],u_zoom:t.overscaledZ,u_unpack:i.unpackVector}})(i.tileID,c),o.id,_,d,p),i.needsHillshadePrepare=!1;}const gi=t=>({u_matrix:new e.UniformMatrix4f(t),u_image0:new e.Uniform1i(t),u_skirt_height:new e.Uniform1f(t)}),vi=(e,t)=>({u_matrix:e,u_image0:0,u_skirt_height:t}),xi=(e,t,i,o,r,n,s,a,l,c,h,u,_,d,p)=>({u_proj_matrix:Float32Array.from(e),u_globe_matrix:t,u_normalize_matrix:Float32Array.from(o),u_merc_matrix:i,u_zoom_transition:r,u_merc_center:n,u_image0:0,u_frustum_tl:s,u_frustum_tr:a,u_frustum_br:l,u_frustum_bl:c,u_globe_pos:h,u_globe_radius:u,u_viewport:_,u_grid_matrix:p?Float32Array.from(p):new Float32Array(9),u_skirt_height:d});function yi(e,t){return null!=e&&null!=t&&!(!e.hasData()||!t.hasData())&&null!=e.demTexture&&null!=t.demTexture&&e.tileID.key!==t.tileID.key}const bi=new class{constructor(){this.operations={};}newMorphing(e,t,i,o,r){if(e in this.operations){const t=this.operations[e];t.to.tileID.key!==i.tileID.key&&(t.queued=i);}else this.operations[e]={startTime:o,phase:0,duration:r,from:t,to:i,queued:null};}getMorphValuesForProxy(e){if(!(e in this.operations))return null;const t=this.operations[e];return {from:t.from,to:t.to,phase:t.phase}}update(e){for(const t in this.operations){const i=this.operations[t];for(i.phase=(e-i.startTime)/i.duration;i.phase>=1||!this._validOp(i);)if(!this._nextOp(i,e)){delete this.operations[t];break}}}_nextOp(e,t){return !!e.queued&&(e.from=e.to,e.to=e.queued,e.queued=null,e.phase=0,e.startTime=t,!0)}_validOp(e){return e.from.hasData()&&e.to.hasData()}},wi={0:null,1:\"TERRAIN_VERTEX_MORPHING\",2:\"TERRAIN_WIREFRAME\"};function Ti(e){return 6*Math.pow(1.5,22-e)}function Ei(e,t){const i=1<({u_matrix:e});function Mi(t,i,o,r,n){if(n>0){const s=e.exported.now(),a=(s-t.timeAdded)/n,l=i?(s-i.timeAdded)/n:-1,c=o.getSource(),h=r.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),u=!i||Math.abs(i.tileID.overscaledZ-h)>Math.abs(t.tileID.overscaledZ-h),_=u&&t.refreshedUponExpiration?1:e.clamp(u?a:1-l,0,1);return t.refreshedUponExpiration&&a>=1&&(t.refreshedUponExpiration=!1),i?{opacity:1,mix:1-_}:{opacity:_,mix:0}}return {opacity:1,mix:0}}class Ii extends e.SourceCache{constructor(e){const t={type:\"raster-dem\",maxzoom:e.transform.maxZoom},i=new S(Ue(),null),o=De(\"mock-dem\",t,i,e.style);super(\"mock-dem\",o,!1),o.setEventedParent(this),this._sourceLoaded=!0;}_loadTile(e,t){e.state=\"loaded\",t(null);}}class Pi extends e.SourceCache{constructor(e){const t=De(\"proxy\",{type:\"geojson\",maxzoom:e.transform.maxZoom},new S(Ue(),null),e.style);super(\"proxy\",t,!1),t.setEventedParent(this),this.map=this.getSource().map=e,this.used=this._sourceLoaded=!0,this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={};}update(t,i,o){if(t.freezeTileCoverage)return;this.transform=t;const r=t.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}).reduce(((i,o)=>{if(i[o.key]=\"\",!this._tiles[o.key]){const i=new e.Tile(o,this._source.tileSize*o.overscaleFactor(),t.tileZoom);i.state=\"loaded\",this._tiles[o.key]=i;}return i}),{});for(const e in this._tiles)e in r||(this.freeFBO(e),this._tiles[e].unloadVectorData(),delete this._tiles[e]);}freeFBO(e){const t=this.proxyCachedFBO[e];if(void 0!==t){const i=Object.values(t);this.renderCachePool.push(...i),delete this.proxyCachedFBO[e];}}deallocRenderCache(){this.renderCache.forEach((e=>e.fb.destroy())),this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={};}}class Si extends e.OverscaledTileID{constructor(e,t,i){super(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y),this.proxyTileKey=t,this.projMatrix=i;}}class Di extends e.Elevation{constructor(t,i){super(),this.painter=t,this.terrainTileForTile={},this.prevTerrainTileForTile={};const[o,r,n]=function(t){const i=new e.StructArrayLayout2i4,o=new e.StructArrayLayout3ui6,r=131;i.reserve(17161),o.reserve(33800);const n=e.EXTENT/128,s=e.EXTENT+n/2,a=s+n;for(let t=-n;ts||t<0||t>s?24575:0,n=e.clamp(Math.round(o),0,e.EXTENT),a=e.clamp(Math.round(t),0,e.EXTENT);i.emplaceBack(n+r,a);}const l=(e,t)=>{const i=t*r+e;o.emplaceBack(i+1,i,i+r),o.emplaceBack(i+r,i+r+1,i+1);};for(let e=1;e<129;e++)for(let t=1;t<129;t++)l(t,e);return [0,129].forEach((e=>{for(let t=0;t<130;t++)l(t,e),l(e,t);})),[i,o,32768]}(),s=t.context;this.gridBuffer=s.createVertexBuffer(o,e.posAttributes.members),this.gridIndexBuffer=s.createIndexBuffer(r),this.gridSegments=e.SegmentVector.simpleSegment(0,0,o.length,r.length),this.gridNoSkirtSegments=e.SegmentVector.simpleSegment(0,0,o.length,n),this.proxyCoords=[],this.proxiedCoords={},this._visibleDemTiles=[],this._drapedRenderBatches=[],this._sourceTilesOverlap={},this.proxySourceCache=new Pi(i.map),this.orthoMatrix=e.create(),e.ortho(this.orthoMatrix,\"globe\"===this.painter.transform.projection.name?.015:0,e.EXTENT,0,e.EXTENT,0,1);const a=s.gl;this._overlapStencilMode=new e.StencilMode({func:a.GEQUAL,mask:255},0,255,a.KEEP,a.KEEP,a.REPLACE),this._previousZoom=t.transform.zoom,this.pool=[],this._findCoveringTileCache={},this._tilesDirty={},this.style=i,this._useVertexMorphing=!0,this._exaggeration=1,this._mockSourceCache=new Ii(i.map);}set style(e){e.on(\"data\",this._onStyleDataEvent.bind(this)),e.on(\"neworder\",this._checkRenderCacheEfficiency.bind(this)),this._style=e,this._checkRenderCacheEfficiency(),this._style.map.on(\"moveend\",(()=>{this._clearLineLayersFromRenderCache();}));}update(t,i,o){if(t&&t.terrain){this._style!==t&&(this.style=t),this.enabled=!0;const r=t.terrain.properties;this.sourceCache=0===t.terrain.drapeRenderMode?this._mockSourceCache:t._getSourceCache(r.get(\"source\")),this._exaggeration=r.get(\"exaggeration\");const n=()=>{this.sourceCache.used&&e.warnOnce(`Raster DEM source '${this.sourceCache.id}' is used both for terrain and as layer source.\\nThis leads to lower resolution of hillshade. For full hillshade resolution but higher memory consumption, define another raster DEM source.`);const t=this.getScaledDemTileSize();this.sourceCache.update(i,t,!0),this.resetTileLookupCache(this.sourceCache.id);};this.sourceCache.usedForTerrain||(this.resetTileLookupCache(this.sourceCache.id),this.sourceCache.usedForTerrain=!0,n(),this._initializing=!0),n(),i.updateElevation(!0,o),this.resetTileLookupCache(this.proxySourceCache.id),this.proxySourceCache.update(i),this._emptyDEMTextureDirty=!0;}else this._disable();}resetTileLookupCache(e){this._findCoveringTileCache[e]={};}getScaledDemTileSize(){return this.sourceCache.getSource().tileSize/128*this.proxySourceCache.getSource().tileSize}_checkRenderCacheEfficiency(){const t=this.renderCacheEfficiency(this._style);this._style.map._optimizeForTerrain||100!==t.efficiency&&e.warnOnce(`Terrain render cache efficiency is not optimal (${t.efficiency}%) and performance\\n may be affected negatively, consider placing all background, fill and line layers before layer\\n with id '${t.firstUndrapedLayer}' or create a map using optimizeForTerrain: true option.`);}_onStyleDataEvent(e){e.coord&&\"source\"===e.dataType?this._clearRenderCacheForTile(e.sourceCacheId,e.coord):\"style\"===e.dataType&&(this._invalidateRenderCache=!0);}_disable(){if(this.enabled&&(this.enabled=!1,this._sharedDepthStencil=void 0,this.proxySourceCache.deallocRenderCache(),this._style))for(const e in this._style._sourceCaches)this._style._sourceCaches[e].usedForTerrain=!1;}destroy(){this._disable(),this._emptyDEMTexture&&this._emptyDEMTexture.destroy(),this._emptyDepthBufferTexture&&this._emptyDepthBufferTexture.destroy(),this.pool.forEach((e=>e.fb.destroy())),this.pool=[],this._depthFBO&&(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0);}_source(){return this.enabled?this.sourceCache:null}isUsingMockSource(){return this.sourceCache===this._mockSourceCache}exaggeration(){return this._exaggeration}get visibleDemTiles(){return this._visibleDemTiles}get drapeBufferSize(){const e=2*this.proxySourceCache.getSource().tileSize;return [e,e]}set useVertexMorphing(e){this._useVertexMorphing=e;}updateTileBinding(t){if(!this.enabled)return;this.prevTerrainTileForTile=this.terrainTileForTile;const i=this.proxySourceCache,o=this.painter.transform;this._initializing&&(this._initializing=0===o._centerAltitude&&-1===this.getAtPointOrZero(e.MercatorCoordinate.fromLngLat(o.center),-1),this._emptyDEMTextureDirty=!this._initializing);const r=this.proxyCoords=i.getIds().map((e=>{const t=i.getTileByID(e).tileID;return t.projMatrix=o.calculateProjMatrix(t.toUnwrapped()),t}));!function(t,i){const o=i.transform.pointCoordinate(i.transform.getCameraPoint()),r=new e.Point(o.x,o.y);t.sort(((t,i)=>{if(i.overscaledZ-t.overscaledZ)return i.overscaledZ-t.overscaledZ;const o=new e.Point(t.canonical.x+(1<{this.proxyToSource[e.key]={};})),this.terrainTileForTile={};const s=this._style._sourceCaches;for(const e in s){const i=s[e];if(!i.used)continue;if(i!==this.sourceCache&&this.resetTileLookupCache(i.id),this._setupProxiedCoordsForOrtho(i,t[e],n),i.usedForTerrain)continue;const o=t[e];i.getSource().reparseOverscaled&&this._assignTerrainTiles(o);}this.proxiedCoords[i.id]=r.map((e=>new Si(e,e.key,this.orthoMatrix))),this._assignTerrainTiles(r),this._prepareDEMTextures(),this._setupDrapedRenderBatches(),this._initFBOPool(),this._setupRenderCache(n),this.renderingToTexture=!1,this._updateTimestamp=e.exported.now();const a={};this._visibleDemTiles=[];for(const e of this.proxyCoords){const t=this.terrainTileForTile[e.key];if(!t)continue;const i=t.tileID.key;i in a||(this._visibleDemTiles.push(t),a[i]=i);}}_assignTerrainTiles(e){this._initializing||e.forEach((e=>{if(this.terrainTileForTile[e.key])return;const t=this._findTileCoveringTileID(e,this.sourceCache);t&&(this.terrainTileForTile[e.key]=t);}));}_prepareDEMTextures(){const e=this.painter.context,t=e.gl;for(const i in this.terrainTileForTile){const o=this.terrainTileForTile[i],r=o.dem;!r||o.demTexture&&!o.needsDEMTextureUpload||(e.activeTexture.set(t.TEXTURE1),mi(this.painter,o,r));}}_prepareDemTileUniforms(e,t,i,o){if(!t||null==t.demTexture)return !1;const r=e.tileID.canonical,n=Math.pow(2,t.tileID.canonical.z-r.z),s=o||\"\";return i[`u_dem_tl${s}`]=[r.x*n%1,r.y*n%1],i[`u_dem_scale${s}`]=n,!0}get emptyDEMTexture(){return !this._emptyDEMTextureDirty&&this._emptyDEMTexture?this._emptyDEMTexture:this._updateEmptyDEMTexture()}get emptyDepthBufferTexture(){const t=this.painter.context,i=t.gl;if(!this._emptyDepthBufferTexture){const o=new e.RGBAImage({width:1,height:1},Uint8Array.of(255,255,255,255));this._emptyDepthBufferTexture=new e.Texture(t,o,i.RGBA,{premultiply:!1});}return this._emptyDepthBufferTexture}_getLoadedAreaMinimum(){let e=0;const t=this._visibleDemTiles.reduce(((t,i)=>{if(!i.dem)return t;const o=i.dem.tree.minimums[0];return o>0&&e++,t+o}),0);return e?t/e:0}_updateEmptyDEMTexture(){const t=this.painter.context,i=t.gl;t.activeTexture.set(i.TEXTURE2);const o=this._getLoadedAreaMinimum(),r=new e.RGBAImage({width:1,height:1},new Uint8Array(e.DEMData.pack(o,this.sourceCache.getSource().encoding)));this._emptyDEMTextureDirty=!1;let n=this._emptyDEMTexture;return n?n.update(r,{premultiply:!1}):n=this._emptyDEMTexture=new e.Texture(t,r,i.RGBA,{premultiply:!1}),n}setupElevationDraw(t,i,o){const r=this.painter.context,n=r.gl,s=(a=this.sourceCache.getSource().encoding,{u_dem:2,u_dem_prev:4,u_dem_unpack:e.DEMData.getUnpackVector(a),u_dem_tl:[0,0],u_dem_tl_prev:[0,0],u_dem_scale:0,u_dem_scale_prev:0,u_dem_size:0,u_dem_lerp:1,u_depth:3,u_depth_size_inv:[0,0],u_exaggeration:0});var a;s.u_dem_size=this.sourceCache.getSource().tileSize,s.u_exaggeration=this.exaggeration();let l=null,c=null,h=1;if(o&&o.morphing&&this._useVertexMorphing){const e=o.morphing.srcDemTile,i=o.morphing.dstDemTile;h=o.morphing.phase,e&&i&&(this._prepareDemTileUniforms(t,e,s,\"_prev\")&&(c=e),this._prepareDemTileUniforms(t,i,s)&&(l=i));}if(c&&l?(r.activeTexture.set(n.TEXTURE2),l.demTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE,n.NEAREST),r.activeTexture.set(n.TEXTURE4),c.demTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE,n.NEAREST),s.u_dem_lerp=h):(l=this.terrainTileForTile[t.tileID.key],r.activeTexture.set(n.TEXTURE2),(this._prepareDemTileUniforms(t,l,s)?l.demTexture:this.emptyDEMTexture).bind(n.NEAREST,n.CLAMP_TO_EDGE)),r.activeTexture.set(n.TEXTURE3),o&&o.useDepthForOcclusion?(this._depthTexture&&this._depthTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE),this._depthFBO&&(s.u_depth_size_inv=[1/this._depthFBO.width,1/this._depthFBO.height])):(this.emptyDepthBufferTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE),s.u_depth_size_inv=[1,1]),o&&o.useMeterToDem&&l){const t=(1<{if(c===e)return;const o=[wi[e],\"PROJECTION_GLOBE_VIEW\"];_&&o.push(\"CUSTOM_ANTIALIASING\"),i&&o.push(wi[h]),l=t.useProgram(\"globeRaster\",null,o),c=e;},p=t.colorModeForRenderPass(),m=new e.DepthMode(a.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);bi.update(n);const f=e.calculateGlobeMercatorMatrix(u),g=[e.mercatorXfromLng(u.center.lng),e.mercatorYfromLat(u.center.lat)],v=h?[!1,!0]:[!1],x=t.globeSharedBuffers,y=[u.width*e.exported.devicePixelRatio,u.height*e.exported.devicePixelRatio],b=Float32Array.from(u.globeMatrix),w={useDenormalizedUpVectorScale:!0};if(v.forEach((h=>{const u=t.transform,_=Ti(u.zoom)*i.exaggeration();c=-1;const v=h?a.LINES:a.TRIANGLES;for(const c of r){const r=o.getTile(c),T=e.StencilMode.disabled,E=i.prevTerrainTileForTile[c.key],C=i.terrainTileForTile[c.key];yi(E,C)&&bi.newMorphing(c.key,E,C,n,250),s.activeTexture.set(a.TEXTURE0),r.texture.bind(a.LINEAR,a.CLAMP_TO_EDGE);const M=bi.getMorphValuesForProxy(c.key),I=M?1:0;M&&e.extend$1(w,{morphing:{srcDemTile:M.from,dstDemTile:M.to,phase:e.easeCubicInOut(M.phase)}});const P=e.tileCornersToBounds(c.canonical),S=e.getLatitudinalLod(P.getCenter().lat),D=e.getGridMatrix(c.canonical,P,S,u.worldSize/u._pixelsPerMercatorPixel),L=e.globeNormalizeECEF(e.globeTileBounds(c.canonical)),A=xi(u.projMatrix,b,f,L,e.globeToMercatorTransition(u.zoom),g,u.frustumCorners.TL,u.frustumCorners.TR,u.frustumCorners.BR,u.frustumCorners.BL,u.globeCenterInViewSpace,u.globeRadius,y,_,D);if(d(I,h),i.setupElevationDraw(r,l,w),t.prepareDrawProgram(s,l,c.toUnwrapped()),x){const[i,o,r]=h?x.getWirefameBuffers(t.context,S):x.getGridBuffers(S,0!==_);l.draw(s,v,m,T,p,e.CullFaceMode.backCCW,A,\"globe_raster\",i,o,r);}}})),x){const n=[\"GLOBE_POLES\",\"PROJECTION_GLOBE_VIEW\"];_&&n.push(\"CUSTOM_ANTIALIASING\"),l=t.useProgram(\"globeRaster\",null,n);for(const n of r){const{x:r,y:c,z:h}=n.canonical,_=0===c,d=c===(1<t.draw(s,a.TRIANGLES,m,e.StencilMode.disabled,p,e.CullFaceMode.disabled,xi(u.projMatrix,x,x,E,0,g,u.frustumCorners.TL,u.frustumCorners.TR,u.frustumCorners.BR,u.frustumCorners.BL,u.globeCenterInViewSpace,u.globeRadius,y,0),\"globe_pole_raster\",i,b,T);i.setupElevationDraw(c,l,w),t.prepareDrawProgram(s,l,n.toUnwrapped()),_&&C(l,f),d&&(x=e.scale(e.create(),x,[1,-1,1]),C(l,v));}}}}(t,i,o,r,n);else {const s=t.context,a=s.gl;let l,c;const h=t.options.showTerrainWireframe?2:0,u=(e,i)=>{if(c===e)return;const o=[wi[e]];i&&o.push(wi[h]),l=t.useProgram(\"terrainRaster\",null,o),c=e;},_=t.colorModeForRenderPass(),d=new e.DepthMode(a.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);bi.update(n);const p=t.transform,m=Ti(p.zoom)*i.exaggeration();(h?[!1,!0]:[!1]).forEach((h=>{c=-1;const f=h?a.LINES:a.TRIANGLES,[g,v]=h?i.getWirefameBuffer():[i.gridIndexBuffer,i.gridSegments];for(const c of r){const r=o.getTile(c),x=e.StencilMode.disabled,y=i.prevTerrainTileForTile[c.key],b=i.terrainTileForTile[c.key];yi(y,b)&&bi.newMorphing(c.key,y,b,n,250),s.activeTexture.set(a.TEXTURE0),r.texture.bind(a.LINEAR,a.CLAMP_TO_EDGE,a.LINEAR_MIPMAP_NEAREST);const w=bi.getMorphValuesForProxy(c.key),T=w?1:0;let E;w&&(E={morphing:{srcDemTile:w.from,dstDemTile:w.to,phase:e.easeCubicInOut(w.phase)}});const C=vi(c.projMatrix,Ei(c.canonical,p.renderWorldCopies)?m/10:m);u(T,h),i.setupElevationDraw(r,l,E),t.prepareDrawProgram(s,l,c.toUnwrapped()),l.draw(s,f,d,x,_,e.CullFaceMode.backCCW,C,\"terrain_raster\",i.gridBuffer,g,v);}}));}}(i,this,this.proxySourceCache,t,this._updateTimestamp),this.renderingToTexture=!0,i.gpuTimingDeferredRenderEnd(),t.splice(0,t.length));}renderBatch(t){if(0===this._drapedRenderBatches.length)return t+1;this.renderingToTexture=!0;const i=this.painter,o=this.painter.context,r=this.proxySourceCache,n=this.proxiedCoords[r.id],s=this._drapedRenderBatches.shift(),a=[],l=i.style.order;let c=0;for(const h of n){const n=r.getTileByID(h.proxyTileKey),u=r.proxyCachedFBO[h.key]?r.proxyCachedFBO[h.key][t]:void 0,_=void 0!==u?r.renderCache[u]:this.pool[c++],d=void 0!==u;if(n.texture=_.tex,d&&!_.dirty){a.push(n.tileID);continue}let p;o.bindFramebuffer.set(_.fb.framebuffer),this.renderedToTile=!1,_.dirty&&(o.clear({color:e.Color.transparent,stencil:0}),_.dirty=!1);for(let e=s.start;e<=s.end;++e){const t=i.style._layers[l[e]];if(t.isHidden(i.transform.zoom))continue;const r=i.style._getLayerSourceCache(t),n=r?this.proxyToSource[h.key][r.id]:[h];if(!n)continue;const s=n;o.viewport.set([0,0,_.fb.width,_.fb.height]),p!==(r?r.id:null)&&(this._setupStencil(_,n,t,r),p=r?r.id:null),i.renderLayer(i,r,t,s);}this.renderedToTile?(_.dirty=!0,a.push(n.tileID)):d||--c,5===c&&(c=0,this.renderToBackBuffer(a));}return this.renderToBackBuffer(a),this.renderingToTexture=!1,o.bindFramebuffer.set(null),o.viewport.set([0,0,i.width,i.height]),s.end+1}postRender(){}renderCacheEfficiency(e){const t=e.order.length;if(0===t)return {efficiency:100};let i,o=0,r=0,n=!1;for(let s=0;se.dem)).forEach((t=>{e=Math.min(e,t.dem.tree.minimums[0]);})),0===e?e:(e-30)*this._exaggeration}raycast(e,t,i){if(!this._visibleDemTiles)return null;const o=this._visibleDemTiles.filter((e=>e.dem)).map((o=>{const r=o.tileID,n=1<(null!==e.t?e.t:Number.MAX_VALUE)-(null!==t.t?t.t:Number.MAX_VALUE)));for(const r of o){if(null==r.t)return null;const o=r.tile.dem.tree.raycast(r.minx,r.miny,r.maxx,r.maxy,e,t,i);if(null!=o)return o}return null}_createFBO(){const t=this.painter.context,i=t.gl,o=this.drapeBufferSize;t.activeTexture.set(i.TEXTURE0);const r=new e.Texture(t,{width:o[0],height:o[1],data:null},i.RGBA);r.bind(i.LINEAR,i.CLAMP_TO_EDGE);const n=t.createFramebuffer(o[0],o[1],!1);return n.colorAttachment.set(r.texture),n.depthAttachment=new we(t,n.framebuffer),void 0===this._sharedDepthStencil?(this._sharedDepthStencil=t.createRenderbuffer(t.gl.DEPTH_STENCIL,o[0],o[1]),this._stencilRef=0,n.depthAttachment.set(this._sharedDepthStencil),t.clear({stencil:0})):n.depthAttachment.set(this._sharedDepthStencil),t.extTextureFilterAnisotropic&&!t.extTextureFilterAnisotropicForceOff&&i.texParameterf(i.TEXTURE_2D,t.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,t.extTextureFilterAnisotropicMax),{fb:n,tex:r,dirty:!1}}_initFBOPool(){for(;this.pool.length{const t=this._style._layers[e],i=t.isHidden(this.painter.transform.zoom);return \"custom\"===t.type?!i&&t.shouldRedrape():!i&&t.hasTransition()}))}_clearLineLayersFromRenderCache(){let t=!1;for(const e of this._style._getSources())if(e instanceof Ce){t=!0;break}if(!t)return;const i={};for(let t=0;tt.renderCachePool.length){const e=Object.values(t.proxyCachedFBO);t.proxyCachedFBO={};for(let i=0;i=0;r--){const n=i[r];if(t.getTileByID(n.key),void 0!==t.proxyCachedFBO[n.key]){const i=e[n.key],r=this.proxyToSource[n.key];let s=0;for(const e in r){const t=r[e],n=i[e];if(!n||n.length!==t.length||t.some(((t,i)=>t!==n[i]||o[e]&&o[e].hasOwnProperty(t.key)))){s=-1;break}++s;}for(const e in t.proxyCachedFBO[n.key])t.renderCache[t.proxyCachedFBO[n.key][e]].dirty=s<0||s!==Object.values(i).length;}}const r=[...this._drapedRenderBatches];r.sort(((e,t)=>t.end-t.start-(e.end-e.start)));for(const e of r)for(const o of i){if(t.proxyCachedFBO[o.key])continue;let i=t.renderCachePool.pop();void 0===i&&t.renderCache.length<50&&(i=t.renderCache.length,t.renderCache.push(this._createFBO())),void 0!==i&&(t.proxyCachedFBO[o.key]={},t.proxyCachedFBO[o.key][e.start]=i,t.renderCache[i].dirty=!0);}this._tilesDirty={};}_setupStencil(e,t,i,o){if(!o||!this._sourceTilesOverlap[o.id])return void(this._overlapStencilType&&(this._overlapStencilType=!1));const r=this.painter.context,n=r.gl;if(t.length<=1)return void(this._overlapStencilType=!1);let s;if(i.isTileClipped())s=t.length,this._overlapStencilMode.test={func:n.EQUAL,mask:255},this._overlapStencilType=\"Clip\";else {if(!(t[0].overscaledZ>t[t.length-1].overscaledZ))return void(this._overlapStencilType=!1);s=1,this._overlapStencilMode.test={func:n.GREATER,mask:255},this._overlapStencilType=\"Mask\";}this._stencilRef+s>255&&(r.clear({stencil:0}),this._stencilRef=0),this._stencilRef+=s,this._overlapStencilMode.ref=this._stencilRef,i.isTileClipped()&&this._renderTileClippingMasks(t,this._overlapStencilMode.ref);}clipOrMaskOverlapStencilType(){return \"Clip\"===this._overlapStencilType||\"Mask\"===this._overlapStencilType}stencilModeForRTTOverlap(t){return this.renderingToTexture&&this._overlapStencilType?(\"Clip\"===this._overlapStencilType&&(this._overlapStencilMode.ref=this.painter._tileClippingMaskIDs[t.key]),this._overlapStencilMode):e.StencilMode.disabled}_renderTileClippingMasks(t,i){const o=this.painter,r=this.painter.context,n=r.gl;o._tileClippingMaskIDs={},r.setColorMode(e.ColorMode.disabled),r.setDepthMode(e.DepthMode.disabled);const s=o.useProgram(\"clippingMask\");for(const a of t){const t=o._tileClippingMaskIDs[a.key]=--i;s.draw(r,n.TRIANGLES,e.DepthMode.disabled,new e.StencilMode({func:n.ALWAYS,mask:0},t,255,n.KEEP,n.KEEP,n.REPLACE),e.ColorMode.disabled,e.CullFaceMode.disabled,Ci(a.projMatrix),\"$clipping\",o.tileExtentBuffer,o.quadTriangleIndexBuffer,o.tileExtentSegments);}}pointCoordinate(t){const i=this.painter.transform;if(t.x<0||t.x>i.width||t.y<0||t.y>i.height)return null;const o=[t.x,t.y,1,1];e.transformMat4$1(o,o,i.pixelMatrixInverse),e.scale$1(o,o,1/o[3]),o[0]/=i.worldSize,o[1]/=i.worldSize;const r=i._camera.position,n=e.mercatorZfromAltitude(1,i.center.lat),s=[r[0],r[1],r[2]/n,0],a=e.subtract([],o.slice(0,3),s);e.normalize(a,a);const l=this.raycast(s,a,this._exaggeration);return null!==l&&l?(e.scaleAndAdd(s,s,a,l),s[3]=s[2],s[2]*=n,s):null}drawDepth(){const t=this.painter,i=t.context,o=this.proxySourceCache,r=Math.ceil(t.width),n=Math.ceil(t.height);if(!this._depthFBO||this._depthFBO.width===r&&this._depthFBO.height===n||(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0),!this._depthFBO){const t=i.gl,o=i.createFramebuffer(r,n,!0);i.activeTexture.set(t.TEXTURE0);const s=new e.Texture(i,{width:r,height:n,data:null},t.RGBA);s.bind(t.NEAREST,t.CLAMP_TO_EDGE),o.colorAttachment.set(s.texture);const a=i.createRenderbuffer(i.gl.DEPTH_COMPONENT16,r,n);o.depthAttachment.set(a),this._depthFBO=o,this._depthTexture=s;}i.bindFramebuffer.set(this._depthFBO.framebuffer),i.viewport.set([0,0,r,n]),function(t,i,o,r){if(\"globe\"===t.transform.projection.name)return;const n=t.context,s=n.gl;n.clear({depth:1});const a=t.useProgram(\"terrainDepth\"),l=new e.DepthMode(s.LESS,e.DepthMode.ReadWrite,t.depthRangeFor3D);for(const t of r){const r=o.getTile(t),c=vi(t.projMatrix,0);i.setupElevationDraw(r,a),a.draw(n,s.TRIANGLES,l,e.StencilMode.disabled,e.ColorMode.unblended,e.CullFaceMode.backCCW,c,\"terrain_depth\",i.gridBuffer,i.gridIndexBuffer,i.gridNoSkirtSegments);}}(t,this,o,this.proxyCoords);}_setupProxiedCoordsForOrtho(e,t,i){if(e.getSource()instanceof Pe)return this._setupProxiedCoordsForImageSource(e,t,i);this._findCoveringTileCache[e.id]=this._findCoveringTileCache[e.id]||{};const o=this.proxiedCoords[e.id]=[],r=this.proxyCoords;for(let t=0;t(e.min.x=Math.min(e.min.x,t.x-a.x),e.min.y=Math.min(e.min.y,t.y-a.y),e.max.x=Math.max(e.max.x,t.x-a.x),e.max.y=Math.max(e.max.y,t.y-a.y),e)),{min:new e.Point(Number.MAX_VALUE,Number.MAX_VALUE),max:new e.Point(-Number.MAX_VALUE,-Number.MAX_VALUE)}),c=(t,i)=>{const o=t.wrap+t.canonical.x/(1<s+l.max.x||r+na+l.max.y};for(let e=0;ee.key===i.tileID.key));if(e)return e}if(i.tileID.key!==t.key){const o=t.canonical.z-i.tileID.canonical.z;let n,s,a;r=e.create();const l=i.tileID.wrap-t.wrap<0?(n=e.EXTENT>>o,s=n*((i.tileID.canonical.x<=r){const o=t.canonical.z-r;i.getSource().reparseOverscaled?(a=Math.max(t.canonical.z+2,i.transform.tileZoom),s=new e.OverscaledTileID(a,t.wrap,r,t.canonical.x>>o,t.canonical.y>>o)):0!==o&&(a=r,s=new e.OverscaledTileID(a,t.wrap,r,t.canonical.x>>o,t.canonical.y>>o));}s.key!==t.key&&(c.push(s.key),o=i.getTile(s));}const h=e=>{c.forEach((t=>{r[t]=e;})),c.length=0;};for(a-=1;a>=l&&(!o||!o.hasData());a--){o&&h(o.tileID.key);const e=s.calculateScaledKey(a);if(o=i.getTileByID(e),o&&o.hasData())break;const t=r[e];if(null===t)break;void 0===t?c.push(e):o=i.getTileByID(t);}return h(o?o.tileID.key:null),o&&o.hasData()?o:null}findDEMTileFor(e){return this.enabled?this._findTileCoveringTileID(e,this.sourceCache):null}prepareDrawTile(){this.renderedToTile=!0;}_clearRenderCacheForTile(e,t){let i=this._tilesDirty[e];i||(i=this._tilesDirty[e]={}),i[t.key]=!0;}getWirefameBuffer(){if(!this.wireframeSegments){const t=function(t){let i=0;const o=new e.StructArrayLayout2ui4,r=131;for(let e=1;e<129;e++){for(let t=1;t<129;t++)i=e*r+t,o.emplaceBack(i,i+1),o.emplaceBack(i,i+r),o.emplaceBack(i+1,i+r),128===e&&o.emplaceBack(i+r,i+r+1);o.emplaceBack(i+1,i+1+r);}return o}();this.wireframeIndexBuffer=this.painter.context.createIndexBuffer(t),this.wireframeSegments=e.SegmentVector.simpleSegment(0,0,this.gridBuffer.length,t.length);}return [this.wireframeIndexBuffer,this.wireframeSegments]}}class Li{static cacheKey(e,t,i,o){let r=`${t}${o?o.cacheKey:\"\"}`;for(const t of i)e.usedDefines.includes(t)&&(r+=`/${t}`);return r}constructor(t,i,o,r,n,s){const a=t.gl;this.program=a.createProgram();const l=function(e){const t=[];for(let i=0;i`#define ${e}`)));const _=t.isWebGL2?\"#version 300 es\\n\":\"\",d=_+u.concat(t.extStandardDerivatives&&0===_.length?\"#extension GL_OES_standard_derivatives : enable\\n\".concat(li):li,li,ai,si.fragmentSource,ri.fragmentSource,o.fragmentSource).join(\"\\n\"),p=_+u.concat(\"\\n#ifdef GL_ES\\nprecision highp float;\\n#else\\n\\n#if !defined(lowp)\\n#define lowp\\n#endif\\n\\n#if !defined(mediump)\\n#define mediump\\n#endif\\n\\n#if !defined(highp)\\n#define highp\\n#endif\\n\\n#endif\",ai,si.vertexSource,ri.vertexSource,oi.vertexSource,o.vertexSource).join(\"\\n\"),m=a.createShader(a.FRAGMENT_SHADER);if(a.isContextLost())return void(this.failedToCreate=!0);a.shaderSource(m,d),a.compileShader(m),a.attachShader(this.program,m);const f=a.createShader(a.VERTEX_SHADER);if(a.isContextLost())this.failedToCreate=!0;else {a.shaderSource(f,p),a.compileShader(f),a.attachShader(this.program,f),this.attributes={},this.numAttributes=h.length;for(let e=0;e({u_dem:new e.Uniform1i(t),u_dem_prev:new e.Uniform1i(t),u_dem_unpack:new e.Uniform4f(t),u_dem_tl:new e.Uniform2f(t),u_dem_scale:new e.Uniform1f(t),u_dem_tl_prev:new e.Uniform2f(t),u_dem_scale_prev:new e.Uniform1f(t),u_dem_size:new e.Uniform1f(t),u_dem_lerp:new e.Uniform1f(t),u_exaggeration:new e.Uniform1f(t),u_depth:new e.Uniform1i(t),u_depth_size_inv:new e.Uniform2f(t),u_meter_to_dem:new e.Uniform1f(t),u_label_plane_matrix_inv:new e.UniformMatrix4f(t)}))(t)),s.includes(\"GLOBE\")&&(this.globeUniforms=(t=>({u_tile_tl_up:new e.Uniform3f(t),u_tile_tr_up:new e.Uniform3f(t),u_tile_br_up:new e.Uniform3f(t),u_tile_bl_up:new e.Uniform3f(t),u_tile_up_scale:new e.Uniform1f(t)}))(t)),s.includes(\"FOG\")&&(this.fogUniforms=(t=>({u_fog_matrix:new e.UniformMatrix4f(t),u_fog_range:new e.Uniform2f(t),u_fog_color:new e.Uniform4f(t),u_fog_horizon_blend:new e.Uniform1f(t),u_fog_temporal_offset:new e.Uniform1f(t),u_frustum_tl:new e.Uniform3f(t),u_frustum_tr:new e.Uniform3f(t),u_frustum_br:new e.Uniform3f(t),u_frustum_bl:new e.Uniform3f(t),u_globe_pos:new e.Uniform3f(t),u_globe_radius:new e.Uniform1f(t),u_globe_transition:new e.Uniform1f(t),u_is_globe:new e.Uniform1i(t),u_viewport:new e.Uniform2f(t)}))(t));}}setTerrainUniformValues(e,t){if(!this.terrainUniforms)return;const i=this.terrainUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e]);}}setGlobeUniformValues(e,t){if(!this.globeUniforms)return;const i=this.globeUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e]);}}setFogUniformValues(e,t){if(!this.fogUniforms)return;const i=this.fogUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e]);}}draw(e,t,i,o,r,n,s,a,l,c,h,u,_,d,p){const m=e.gl;if(this.failedToCreate)return;e.program.set(this.program),e.setDepthMode(i),e.setStencilMode(o),e.setColorMode(r),e.setCullFace(n);for(const e of Object.keys(this.fixedUniforms))this.fixedUniforms[e].set(this.program,e,s[e]);d&&d.setUniforms(this.program,e,this.binderUniforms,u,{zoom:_});const f={[m.LINES]:2,[m.TRIANGLES]:3,[m.LINE_STRIP]:1}[t];for(const i of h.get()){const o=i.vaos||(i.vaos={});(o[a]||(o[a]=new _i)).bind(e,this,l,d?d.getPaintVertexBuffers():[],c,i.vertexOffset,p||[]),m.drawElements(t,i.primitiveLength*f,m.UNSIGNED_SHORT,i.primitiveOffset*f*2);}}}function Ai(e,t){const i=Math.pow(2,t.tileID.overscaledZ),o=t.tileSize*Math.pow(2,e.transform.tileZoom)/i,r=o*(t.tileID.canonical.x+t.tileID.wrap*i),n=o*t.tileID.canonical.y;return {u_image:0,u_texsize:t.imageAtlasTexture.size,u_tile_units_to_pixels:1/D(t,1,e.transform.tileZoom),u_pixel_coord_upper:[r>>16,n>>16],u_pixel_coord_lower:[65535&r,65535&n]}}const zi=e.create(),Ri=(t,i,o,r,n,s,a,l,c,h,u)=>{const _=i.style.light,d=_.properties.get(\"position\"),p=[d.x,d.y,d.z],m=e.create$1();\"viewport\"===_.properties.get(\"anchor\")&&(e.fromRotation(m,-i.transform.angle),e.transformMat3(p,p,m));const f=_.properties.get(\"color\"),g=i.transform,v={u_matrix:t,u_lightpos:p,u_lightintensity:_.properties.get(\"intensity\"),u_lightcolor:[f.r,f.g,f.b],u_vertical_gradient:+o,u_opacity:r,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:zi,u_merc_center:[0,0],u_up_dir:[0,0,0],u_height_lift:0,u_ao:n,u_edge_radius:s};return \"globe\"===g.projection.name&&(v.u_tile_id=[a.canonical.x,a.canonical.y,1<{const d=Ri(t,i,o,r,n,s,a,c,h,u,_),p={u_height_factor:-Math.pow(2,a.overscaledZ)/l.tileSize/8};return e.extend(d,Ai(i,l),p)},Bi=e=>({u_matrix:e}),ki=(t,i,o)=>e.extend(Bi(t),Ai(i,o)),Fi=(e,t)=>({u_matrix:e,u_world:t}),Ui=(t,i,o,r)=>e.extend(ki(t,i,o),{u_world:r}),Ni=e.create(),ji=(t,i,o,r,n,s)=>{const a=t.transform,l=\"globe\"===a.projection.name;let c;if(\"map\"===s.paint.get(\"circle-pitch-alignment\"))if(l){const t=e.globePixelsToTileUnits(a.zoom,i.canonical)*a._pixelsPerMercatorPixel;c=Float32Array.from([t,0,0,t]);}else c=a.calculatePixelsToTileUnitsMatrix(o);else c=new Float32Array([a.pixelsToGLUnits[0],0,0,a.pixelsToGLUnits[1]]);const h={u_camera_to_center_distance:a.cameraToCenterDistance,u_matrix:t.translatePosMatrix(i.projMatrix,o,s.paint.get(\"circle-translate\"),s.paint.get(\"circle-translate-anchor\")),u_device_pixel_ratio:e.exported.devicePixelRatio,u_extrude_scale:c,u_inv_rot_matrix:Ni,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0]};if(l){h.u_inv_rot_matrix=r,h.u_merc_center=n,h.u_tile_id=[i.canonical.x,i.canonical.y,1<{const t=[];return \"map\"===e.paint.get(\"circle-pitch-alignment\")&&t.push(\"PITCH_WITH_MAP\"),\"map\"===e.paint.get(\"circle-pitch-scale\")&&t.push(\"SCALE_WITH_MAP\"),t},Zi=(t,i,o,r)=>{const n=e.EXTENT/o.tileSize;return {u_matrix:t,u_camera_to_center_distance:i.getCameraToCenterDistance(r),u_extrude_scale:[i.pixelsToGLUnits[0]/n,i.pixelsToGLUnits[1]/n]}},Vi=(e,t,i=1)=>({u_matrix:e,u_color:t,u_overlay:0,u_overlay_scale:i}),Wi=e.create(),Xi=(t,i,o,r,n,s,a)=>{const l=t.transform,c=\"globe\"===l.projection.name,h=c?e.globePixelsToTileUnits(l.zoom,i.canonical)*l._pixelsPerMercatorPixel:D(o,1,s),u={u_matrix:i.projMatrix,u_extrude_scale:h,u_intensity:a,u_inv_rot_matrix:Wi,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0]};if(c){u.u_inv_rot_matrix=r,u.u_merc_center=n,u.u_tile_id=[i.canonical.x,i.canonical.y,1<{const a=e.transform,l=a.calculatePixelsToTileUnitsMatrix(t);return {u_matrix:Yi(e,t,i,o),u_pixels_to_tile_units:l,u_device_pixel_ratio:n,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]],u_dash_image:0,u_gradient_image:1,u_image_height:r,u_texsize:Ki(i)?t.lineAtlasTexture.size:[0,0],u_tile_units_to_pixels:Hi(t,e.transform),u_alpha_discard_threshold:0,u_trim_offset:s}},$i=(e,t,i,o,r)=>{const n=e.transform;return {u_matrix:Yi(e,t,i,o),u_texsize:t.imageAtlasTexture.size,u_pixels_to_tile_units:n.calculatePixelsToTileUnitsMatrix(t),u_device_pixel_ratio:r,u_image:0,u_tile_units_to_pixels:Hi(t,n),u_units_to_pixels:[1/n.pixelsToGLUnits[0],1/n.pixelsToGLUnits[1]],u_alpha_discard_threshold:0}};function Hi(e,t){return 1/D(e,1,t.tileZoom)}function Yi(e,t,i,o){return e.translatePosMatrix(o||t.tileID.projMatrix,t,i.paint.get(\"line-translate\"),i.paint.get(\"line-translate-anchor\"))}function Ki(e){const t=e.paint.get(\"line-dasharray\").value;return t.value||\"constant\"!==t.kind}const Ji=(e,t,i,o,r,n)=>{return {u_matrix:e,u_tl_parent:t,u_scale_parent:i,u_fade_t:o.mix,u_opacity:o.opacity*r.paint.get(\"raster-opacity\"),u_image0:0,u_image1:1,u_brightness_low:r.paint.get(\"raster-brightness-min\"),u_brightness_high:r.paint.get(\"raster-brightness-max\"),u_saturation_factor:(a=r.paint.get(\"raster-saturation\"),a>0?1-1/(1.001-a):-a),u_contrast_factor:(s=r.paint.get(\"raster-contrast\"),s>0?1/(1-s):1+s),u_spin_weights:Qi(r.paint.get(\"raster-hue-rotate\")),u_perspective_transform:n};var s,a;};function Qi(e){e*=Math.PI/180;const t=Math.sin(e),i=Math.cos(e);return [(2*i+1)/3,(-Math.sqrt(3)*t-i+1)/3,(Math.sqrt(3)*t-i+1)/3]}const eo=e.create(),to=(t,i,o,r,n,s,a,l,c,h,u,_,d,p,m,f)=>{const g=n.transform,v={u_is_size_zoom_constant:+(\"constant\"===t||\"source\"===t),u_is_size_feature_constant:+(\"constant\"===t||\"camera\"===t),u_size_t:i?i.uSizeT:0,u_size:i?i.uSize:0,u_camera_to_center_distance:g.cameraToCenterDistance,u_rotate_symbol:+o,u_aspect_ratio:g.width/g.height,u_fade_change:n.options.fadeDuration?n.symbolFadeChange:1,u_matrix:s,u_label_plane_matrix:a,u_coord_matrix:l,u_is_text:+c,u_pitch_with_map:+r,u_texsize:h,u_texture:0,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:eo,u_merc_center:[0,0],u_camera_forward:[0,0,0],u_ecef_origin:[0,0,0],u_tile_matrix:eo,u_up_vector:[0,-1,0]};return \"globe\"===f.name&&(v.u_tile_id=[u.canonical.x,u.canonical.y,1<e.extend(to(t,i,o,r,n,s,a,l,c,h,_,d,p,m,f,g),{u_gamma_scale:r?n.transform.cameraToCenterDistance*Math.cos(n.terrain?0:n.transform._pitch):1,u_device_pixel_ratio:e.exported.devicePixelRatio,u_is_halo:+u}),oo=(t,i,o,r,n,s,a,l,c,h,u,_,d,p,m,f)=>e.extend(io(t,i,o,r,n,s,a,l,!0,c,!0,u,_,d,p,m,f),{u_texsize_icon:h,u_texture_icon:1}),ro=(e,t,i)=>({u_matrix:e,u_opacity:t,u_color:i}),no=(t,i,o,r,n)=>e.extend(function(e,t,i){const o=t.imageManager.getPattern(e.toString()),{width:r,height:n}=t.imageManager.getPixelSize(),s=Math.pow(2,i.tileID.overscaledZ),a=i.tileSize*Math.pow(2,t.transform.tileZoom)/s,l=a*(i.tileID.canonical.x+i.tileID.wrap*s),c=a*i.tileID.canonical.y;return {u_image:0,u_pattern_tl:o.tl,u_pattern_br:o.br,u_texsize:[r,n],u_pattern_size:o.displaySize,u_tile_units_to_pixels:1/D(i,1,t.transform.tileZoom),u_pixel_coord_upper:[l>>16,c>>16],u_pixel_coord_lower:[65535&l,65535&c]}}(r,o,n),{u_matrix:t,u_opacity:i}),so={fillExtrusion:t=>({u_matrix:new e.UniformMatrix4f(t),u_lightpos:new e.Uniform3f(t),u_lightintensity:new e.Uniform1f(t),u_lightcolor:new e.Uniform3f(t),u_vertical_gradient:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t),u_edge_radius:new e.Uniform1f(t),u_ao:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_up_dir:new e.Uniform3f(t),u_height_lift:new e.Uniform1f(t)}),fillExtrusionPattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_lightpos:new e.Uniform3f(t),u_lightintensity:new e.Uniform1f(t),u_lightcolor:new e.Uniform3f(t),u_vertical_gradient:new e.Uniform1f(t),u_height_factor:new e.Uniform1f(t),u_edge_radius:new e.Uniform1f(t),u_ao:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_up_dir:new e.Uniform3f(t),u_height_lift:new e.Uniform1f(t),u_image:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t)}),fill:t=>({u_matrix:new e.UniformMatrix4f(t)}),fillPattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_image:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t)}),fillOutline:t=>({u_matrix:new e.UniformMatrix4f(t),u_world:new e.Uniform2f(t)}),fillOutlinePattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_world:new e.Uniform2f(t),u_image:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t)}),circle:t=>({u_camera_to_center_distance:new e.Uniform1f(t),u_extrude_scale:new e.UniformMatrix2f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_up_dir:new e.Uniform3f(t)}),collisionBox:t=>({u_matrix:new e.UniformMatrix4f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_extrude_scale:new e.Uniform2f(t)}),collisionCircle:t=>({u_matrix:new e.UniformMatrix4f(t),u_inv_matrix:new e.UniformMatrix4f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_viewport_size:new e.Uniform2f(t)}),debug:t=>({u_color:new e.UniformColor(t),u_matrix:new e.UniformMatrix4f(t),u_overlay:new e.Uniform1i(t),u_overlay_scale:new e.Uniform1f(t)}),clippingMask:t=>({u_matrix:new e.UniformMatrix4f(t)}),heatmap:t=>({u_extrude_scale:new e.Uniform1f(t),u_intensity:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_up_dir:new e.Uniform3f(t)}),heatmapTexture:t=>({u_image:new e.Uniform1i(t),u_color_ramp:new e.Uniform1i(t),u_opacity:new e.Uniform1f(t)}),hillshade:t=>({u_matrix:new e.UniformMatrix4f(t),u_image:new e.Uniform1i(t),u_latrange:new e.Uniform2f(t),u_light:new e.Uniform2f(t),u_shadow:new e.UniformColor(t),u_highlight:new e.UniformColor(t),u_accent:new e.UniformColor(t)}),hillshadePrepare:t=>({u_matrix:new e.UniformMatrix4f(t),u_image:new e.Uniform1i(t),u_dimension:new e.Uniform2f(t),u_zoom:new e.Uniform1f(t),u_unpack:new e.Uniform4f(t)}),line:t=>({u_matrix:new e.UniformMatrix4f(t),u_pixels_to_tile_units:new e.UniformMatrix2f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_units_to_pixels:new e.Uniform2f(t),u_dash_image:new e.Uniform1i(t),u_gradient_image:new e.Uniform1i(t),u_image_height:new e.Uniform1f(t),u_texsize:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t),u_alpha_discard_threshold:new e.Uniform1f(t),u_trim_offset:new e.Uniform2f(t)}),linePattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_texsize:new e.Uniform2f(t),u_pixels_to_tile_units:new e.UniformMatrix2f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_image:new e.Uniform1i(t),u_units_to_pixels:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t),u_alpha_discard_threshold:new e.Uniform1f(t)}),raster:t=>({u_matrix:new e.UniformMatrix4f(t),u_tl_parent:new e.Uniform2f(t),u_scale_parent:new e.Uniform1f(t),u_fade_t:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t),u_image0:new e.Uniform1i(t),u_image1:new e.Uniform1i(t),u_brightness_low:new e.Uniform1f(t),u_brightness_high:new e.Uniform1f(t),u_saturation_factor:new e.Uniform1f(t),u_contrast_factor:new e.Uniform1f(t),u_spin_weights:new e.Uniform3f(t),u_perspective_transform:new e.Uniform2f(t)}),symbolIcon:t=>({u_is_size_zoom_constant:new e.Uniform1i(t),u_is_size_feature_constant:new e.Uniform1i(t),u_size_t:new e.Uniform1f(t),u_size:new e.Uniform1f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_rotate_symbol:new e.Uniform1i(t),u_aspect_ratio:new e.Uniform1f(t),u_fade_change:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_label_plane_matrix:new e.UniformMatrix4f(t),u_coord_matrix:new e.UniformMatrix4f(t),u_is_text:new e.Uniform1i(t),u_pitch_with_map:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_camera_forward:new e.Uniform3f(t),u_tile_matrix:new e.UniformMatrix4f(t),u_up_vector:new e.Uniform3f(t),u_ecef_origin:new e.Uniform3f(t),u_texture:new e.Uniform1i(t)}),symbolSDF:t=>({u_is_size_zoom_constant:new e.Uniform1i(t),u_is_size_feature_constant:new e.Uniform1i(t),u_size_t:new e.Uniform1f(t),u_size:new e.Uniform1f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_rotate_symbol:new e.Uniform1i(t),u_aspect_ratio:new e.Uniform1f(t),u_fade_change:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_label_plane_matrix:new e.UniformMatrix4f(t),u_coord_matrix:new e.UniformMatrix4f(t),u_is_text:new e.Uniform1i(t),u_pitch_with_map:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_texture:new e.Uniform1i(t),u_gamma_scale:new e.Uniform1f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_tile_id:new e.Uniform3f(t),u_zoom_transition:new e.Uniform1f(t),u_inv_rot_matrix:new e.UniformMatrix4f(t),u_merc_center:new e.Uniform2f(t),u_camera_forward:new e.Uniform3f(t),u_tile_matrix:new e.UniformMatrix4f(t),u_up_vector:new e.Uniform3f(t),u_ecef_origin:new e.Uniform3f(t),u_is_halo:new e.Uniform1i(t)}),symbolTextAndIcon:t=>({u_is_size_zoom_constant:new e.Uniform1i(t),u_is_size_feature_constant:new e.Uniform1i(t),u_size_t:new e.Uniform1f(t),u_size:new e.Uniform1f(t),u_camera_to_center_distance:new e.Uniform1f(t),u_rotate_symbol:new e.Uniform1i(t),u_aspect_ratio:new e.Uniform1f(t),u_fade_change:new e.Uniform1f(t),u_matrix:new e.UniformMatrix4f(t),u_label_plane_matrix:new e.UniformMatrix4f(t),u_coord_matrix:new e.UniformMatrix4f(t),u_is_text:new e.Uniform1i(t),u_pitch_with_map:new e.Uniform1i(t),u_texsize:new e.Uniform2f(t),u_texsize_icon:new e.Uniform2f(t),u_texture:new e.Uniform1i(t),u_texture_icon:new e.Uniform1i(t),u_gamma_scale:new e.Uniform1f(t),u_device_pixel_ratio:new e.Uniform1f(t),u_is_halo:new e.Uniform1i(t)}),background:t=>({u_matrix:new e.UniformMatrix4f(t),u_opacity:new e.Uniform1f(t),u_color:new e.UniformColor(t)}),backgroundPattern:t=>({u_matrix:new e.UniformMatrix4f(t),u_opacity:new e.Uniform1f(t),u_image:new e.Uniform1i(t),u_pattern_tl:new e.Uniform2f(t),u_pattern_br:new e.Uniform2f(t),u_texsize:new e.Uniform2f(t),u_pattern_size:new e.Uniform2f(t),u_pixel_coord_upper:new e.Uniform2f(t),u_pixel_coord_lower:new e.Uniform2f(t),u_tile_units_to_pixels:new e.Uniform1f(t)}),terrainRaster:gi,terrainDepth:gi,skybox:t=>({u_matrix:new e.UniformMatrix4f(t),u_sun_direction:new e.Uniform3f(t),u_cubemap:new e.Uniform1i(t),u_opacity:new e.Uniform1f(t),u_temporal_offset:new e.Uniform1f(t)}),skyboxGradient:t=>({u_matrix:new e.UniformMatrix4f(t),u_color_ramp:new e.Uniform1i(t),u_center_direction:new e.Uniform3f(t),u_radius:new e.Uniform1f(t),u_opacity:new e.Uniform1f(t),u_temporal_offset:new e.Uniform1f(t)}),skyboxCapture:t=>({u_matrix_3f:new e.UniformMatrix3f(t),u_sun_direction:new e.Uniform3f(t),u_sun_intensity:new e.Uniform1f(t),u_color_tint_r:new e.Uniform4f(t),u_color_tint_m:new e.Uniform4f(t),u_luminance:new e.Uniform1f(t)}),globeRaster:t=>({u_proj_matrix:new e.UniformMatrix4f(t),u_globe_matrix:new e.UniformMatrix4f(t),u_normalize_matrix:new e.UniformMatrix4f(t),u_merc_matrix:new e.UniformMatrix4f(t),u_zoom_transition:new e.Uniform1f(t),u_merc_center:new e.Uniform2f(t),u_image0:new e.Uniform1i(t),u_grid_matrix:new e.UniformMatrix3f(t),u_skirt_height:new e.Uniform1f(t),u_frustum_tl:new e.Uniform3f(t),u_frustum_tr:new e.Uniform3f(t),u_frustum_br:new e.Uniform3f(t),u_frustum_bl:new e.Uniform3f(t),u_globe_pos:new e.Uniform3f(t),u_globe_radius:new e.Uniform1f(t),u_viewport:new e.Uniform2f(t)}),globeAtmosphere:t=>({u_frustum_tl:new e.Uniform3f(t),u_frustum_tr:new e.Uniform3f(t),u_frustum_br:new e.Uniform3f(t),u_frustum_bl:new e.Uniform3f(t),u_horizon:new e.Uniform1f(t),u_transition:new e.Uniform1f(t),u_fadeout_range:new e.Uniform1f(t),u_color:new e.Uniform4f(t),u_high_color:new e.Uniform4f(t),u_space_color:new e.Uniform4f(t),u_star_intensity:new e.Uniform1f(t),u_star_density:new e.Uniform1f(t),u_star_size:new e.Uniform1f(t),u_temporal_offset:new e.Uniform1f(t),u_horizon_angle:new e.Uniform1f(t),u_rotation_matrix:new e.UniformMatrix4f(t)})};let ao;function lo(t,i,o,r,n,s,a){const l=t.context,c=l.gl,h=t.transform,u=t.useProgram(\"collisionBox\"),_=[];let d=0,p=0;for(let m=0;m0){const t=e.create(),i=y;e.mul(t,v.placementInvProjMatrix,h.glCoordMatrix),e.mul(t,t,v.placementViewportMatrix),_.push({circleArray:w,circleOffset:p,transform:i,invTransform:t,projection:v.getProjection()}),d+=w.length/4,p=d;}b&&(t.terrain&&t.terrain.setupElevationDraw(g,u),u.draw(l,c.LINES,e.DepthMode.disabled,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.disabled,Zi(y,h,g,v.getProjection()),o.id,b.layoutVertexBuffer,b.indexBuffer,b.segments,null,h.zoom,null,[b.collisionVertexBuffer,b.collisionVertexBufferExt]));}if(!a||!_.length)return;const m=t.useProgram(\"collisionCircle\"),f=new e.StructArrayLayout2f1f2i16;f.resize(4*d),f._trim();let g=0;for(const e of _)for(let t=0;t=0&&(m[y.associatedIconIndex]={x:C,y:M,z:I,angle:A});}else dt(T,d);}if(u){p.clear();const i=t.icon.placedSymbolArray;for(let t=0;te.sortKey-t.sortKey));for(const e of M){const i=e.state;if(t.terrain&&t.terrain.setupElevationDraw(i.tile,i.program,{useDepthForOcclusion:!C,labelPlaneMatrixInv:i.labelPlaneMatrixInv}),d.activeTexture.set(p.TEXTURE0),i.atlasTexture.bind(i.atlasInterpolation,p.CLAMP_TO_EDGE),i.atlasTextureIcon&&(d.activeTexture.set(p.TEXTURE1),i.atlasTextureIcon&&i.atlasTextureIcon.bind(i.atlasInterpolationIcon,p.CLAMP_TO_EDGE)),i.isSDF){const r=i.uniformValues;i.hasHalo&&(r.u_is_halo=1,mo(i.buffers,e.segments,o,t,i.program,w,u,_,r)),r.u_is_halo=0;}mo(i.buffers,e.segments,o,t,i.program,w,u,_,i.uniformValues);}}function mo(t,i,o,r,n,s,a,l,c){const h=r.context,u=[t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer,t.globeExtVertexBuffer];n.draw(h,h.gl.TRIANGLES,s,a,l,e.CullFaceMode.disabled,c,o.id,t.layoutVertexBuffer,t.indexBuffer,i,o.paint,r.transform.zoom,t.programConfigurations.get(o.id),u);}function fo(t,i,o,r,n,s,a){const l=t.context.gl,c=o.paint.get(\"fill-pattern\"),h=c&&c.constantOr(1);let u,_,d,p,m;a?(_=h&&!o.getPaintProperty(\"fill-outline-color\")?\"fillOutlinePattern\":\"fillOutline\",u=l.LINES):(_=h?\"fillPattern\":\"fill\",u=l.TRIANGLES);for(const f of r){const r=i.getTile(f);if(h&&!r.patternsLoaded())continue;const g=r.getBucket(o);if(!g)continue;t.prepareDrawTile();const v=g.programConfigurations.get(o.id),x=t.useProgram(_,v);h&&(t.context.activeTexture.set(l.TEXTURE0),r.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),v.updatePaintBuffers());const y=c.constantOr(null);if(y&&r.imageAtlas){const e=r.imageAtlas.patternPositions[y.toString()];e&&v.setConstantPatternPositions(e);}const b=t.translatePosMatrix(f.projMatrix,r,o.paint.get(\"fill-translate\"),o.paint.get(\"fill-translate-anchor\"));if(a){p=g.indexBuffer2,m=g.segments2;const e=t.terrain&&t.terrain.renderingToTexture?t.terrain.drapeBufferSize:[l.drawingBufferWidth,l.drawingBufferHeight];d=\"fillOutlinePattern\"===_&&h?Ui(b,t,r,e):Fi(b,e);}else p=g.indexBuffer,m=g.segments,d=h?ki(b,t,r):Bi(b);t.prepareDrawProgram(t.context,x,f.toUnwrapped()),x.draw(t.context,u,n,t.stencilModeForClipping(f),s,e.CullFaceMode.disabled,d,o.id,g.layoutVertexBuffer,p,m,o.paint,t.transform.zoom,v);}}function go(t,i,o,r,n,s,a){const l=t.context,c=l.gl,h=t.transform,u=o.paint.get(\"fill-extrusion-pattern\"),_=u.constantOr(1),d=o.paint.get(\"fill-extrusion-opacity\"),p=[o.paint.get(\"fill-extrusion-ambient-occlusion-intensity\"),o.paint.get(\"fill-extrusion-ambient-occlusion-radius\")],m=o.layout.get(\"fill-extrusion-edge-radius\"),f=m>0&&!o.paint.get(\"fill-extrusion-rounded-roof\"),g=f?0:m,v=\"globe\"===h.projection.name?e.fillExtrusionHeightLift():0,x=\"globe\"===h.projection.name,y=x?e.globeToMercatorTransition(h.zoom):0,b=[e.mercatorXfromLng(h.center.lng),e.mercatorYfromLat(h.center.lat)],w=[];x&&w.push(\"PROJECTION_GLOBE_VIEW\"),p[0]>0&&w.push(\"FAUX_AO\"),f&&w.push(\"ZERO_ROOF_RADIUS\");for(const m of r){const r=i.getTile(m),f=r.getBucket(o);if(!f||f.projection.name!==h.projection.name)continue;const T=f.programConfigurations.get(o.id),E=t.useProgram(_?\"fillExtrusionPattern\":\"fillExtrusion\",T,w);if(t.terrain){const e=t.terrain;if(t.style.terrainSetForDrapingOnly())e.setupElevationDraw(r,E,{useMeterToDem:!0});else {if(!f.enableTerrain)continue;if(e.setupElevationDraw(r,E,{useMeterToDem:!0}),vo(l,i,m,f,o,e),!f.centroidVertexBuffer){const e=E.attributes.a_centroid_pos;void 0!==e&&c.vertexAttrib2f(e,0,0);}}}_&&(t.context.activeTexture.set(c.TEXTURE0),r.imageAtlasTexture.bind(c.LINEAR,c.CLAMP_TO_EDGE),T.updatePaintBuffers());const C=u.constantOr(null);if(C&&r.imageAtlas){const e=r.imageAtlas.patternPositions[C.toString()];e&&T.setConstantPatternPositions(e);}const M=t.translatePosMatrix(m.projMatrix,r,o.paint.get(\"fill-extrusion-translate\"),o.paint.get(\"fill-extrusion-translate-anchor\")),I=h.projection.createInversionMatrix(h,m.canonical),P=o.paint.get(\"fill-extrusion-vertical-gradient\"),S=_?Oi(M,t,P,d,p,g,m,r,v,y,b,I):Ri(M,t,P,d,p,g,m,v,y,b,I);t.prepareDrawProgram(l,E,m.toUnwrapped());const D=[];t.terrain&&D.push(f.centroidVertexBuffer),x&&D.push(f.layoutVertexExtBuffer),E.draw(l,l.gl.TRIANGLES,n,s,a,e.CullFaceMode.backCCW,S,o.id,f.layoutVertexBuffer,f.indexBuffer,f.segments,o.paint,t.transform.zoom,T,D);}}function vo(t,i,o,r,n,s){const a=[t=>{let i=t.canonical.x-1,o=t.wrap;return i<0&&(i=(1<{let i=t.canonical.x+1,o=t.wrap;return i===1<new e.OverscaledTileID(t.overscaledZ,t.wrap,t.canonical.z,t.canonical.x,(0===t.canonical.y?1<new e.OverscaledTileID(t.overscaledZ,t.wrap,t.canonical.z,t.canonical.x,t.canonical.y===(1<{const t=i.getSource().minzoom,o=e=>{const t=i.getTileByID(e);if(t&&t.hasData())return t.getBucket(n)},r=[0,-1,1];for(const i of r){if(e.overscaledZ+i(c[0]=Math.min(t.min.y,i.min.y),c[1]=Math.max(t.max.y,i.max.y),c[2]=e.EXTENT-i.min.x>t.max.x?i.min.x-e.EXTENT:t.max.x,c),u=(t,i)=>(c[0]=Math.min(t.min.x,i.min.x),c[1]=Math.max(t.max.x,i.max.x),c[2]=e.EXTENT-i.min.y>t.max.y?i.min.y-e.EXTENT:t.max.y,c),_=[(e,t)=>h(e,t),(e,t)=>h(t,e),(e,t)=>u(e,t),(e,t)=>u(t,e)],d=new e.Point(0,0);let p,m,f;const g=(t,i,r,n,a)=>{const l=[[n?r:t,n?t:r,0],[n?r:i,n?i:r,0]],c=a<0?e.EXTENT+a:a,h=[n?c:(t+i)/2,n?(t+i)/2:c,0];return 0===r&&a<0||0!==r&&a>0?s.getForTilePoints(f,[h],!0,m):l.push(h),s.getForTilePoints(o,l,!0,p),Math.max(l[0][2],l[1][2],h[2])/s.exaggeration()};for(let t=0;t<4;t++){const i=(t<2?1:5)-t,n=r.borders[t];if(0===n.length)continue;const c=f=a[t](o),h=l(c);if(!(h&&h instanceof e.FillExtrusionBucket&&h.enableTerrain))continue;if(r.borderDoneWithNeighborZ[t]===h.canonical.z&&h.borderDoneWithNeighborZ[i]===r.canonical.z)continue;if(m=s.findDEMTileFor(c),!m||!m.dem)continue;if(!p){const e=s.findDEMTileFor(o);if(!e||!e.dem)return;p=e;}const u=h.borders[i];let v=0;const x=h.borderDoneWithNeighborZ[i]!==r.canonical.z;if(r.canonical.z===h.canonical.z){for(let o=0;oa[0]+3));)x&&h.encodeCentroid(void 0,l,!1),v++;if(l&&va[1]-3)&&(n++,++v!==u.length);)l=h.featuresOnBorder[u[v]];if(l=h.featuresOnBorder[u[o]],s.intersectsCount()>1||l.intersectsCount()>1||1!==n){1!==n&&(v=o),r.encodeCentroid(void 0,s,!1),x&&h.encodeCentroid(void 0,l,!1);continue}const c=_[t](s,l),p=t%2?e.EXTENT-1:0;d.x=g(c[0],Math.min(e.EXTENT-1,c[1]),p,t<2,c[2]),d.y=0,r.encodeCentroid(d,s,!1),x&&h.encodeCentroid(d,l,!1);}else r.encodeCentroid(void 0,s,!1);}r.borderDoneWithNeighborZ[t]=h.canonical.z,r.needsCentroidUpdate=!0,x&&(h.borderDoneWithNeighborZ[i]=r.canonical.z,h.needsCentroidUpdate=!0);}else {for(const e of n)r.encodeCentroid(void 0,r.featuresOnBorder[e],!1);if(x){for(const e of u)h.encodeCentroid(void 0,h.featuresOnBorder[e],!1);h.borderDoneWithNeighborZ[i]=r.canonical.z,h.needsCentroidUpdate=!0;}r.borderDoneWithNeighborZ[t]=h.canonical.z,r.needsCentroidUpdate=!0;}}(r.needsCentroidUpdate||!r.centroidVertexBuffer&&0!==r.centroidVertexArray.length)&&r.uploadCentroid(t);}const xo=new e.Color(1,0,0,1),yo=new e.Color(0,1,0,1),bo=new e.Color(0,0,1,1),wo=new e.Color(1,0,1,1),To=new e.Color(0,1,1,1);function Eo(t,i,o){const r=t.context,n=t.transform,s=r.gl,a=\"globe\"===n.projection.name,l=a?[\"PROJECTION_GLOBE_VIEW\"]:null;let c=o.projMatrix;if(a&&e.globeToMercatorTransition(n.zoom)>0){const t=e.transitionTileAABBinECEF(o.canonical,n),i=e.globeDenormalizeECEF(t);c=e.multiply(new Float32Array(16),n.globeMatrix,i),e.multiply(c,n.projMatrix,c);}const h=t.useProgram(\"debug\",null,l),u=i.getTileByID(o.key);t.terrain&&t.terrain.setupElevationDraw(u,h);const _=e.DepthMode.disabled,d=e.StencilMode.disabled,p=t.colorModeForRenderPass(),m=\"$debug\";r.activeTexture.set(s.TEXTURE0),t.emptyTexture.bind(s.LINEAR,s.CLAMP_TO_EDGE),a?u._makeGlobeTileDebugBuffers(t.context,n):u._makeDebugTileBoundsBuffers(t.context,n.projection);const f=u._tileDebugBuffer||t.debugBuffer,g=u._tileDebugIndexBuffer||t.debugIndexBuffer,v=u._tileDebugSegments||t.debugSegments;h.draw(r,s.LINE_STRIP,_,d,p,e.CullFaceMode.disabled,Vi(c,e.Color.red),m,f,g,v,null,null,null,[u._globeTileDebugBorderBuffer]);const x=u.latestRawTileData,y=Math.floor((x&&x.byteLength||0)/1024),b=i.getTile(o).tileSize,w=512/Math.min(b,512)*(o.overscaledZ/n.zoom)*.5;let T=o.canonical.toString();o.overscaledZ!==o.canonical.z&&(T+=` => ${o.overscaledZ}`),T+=` ${y}kb`,function(e,t){e.initDebugOverlayCanvas();const i=e.debugOverlayCanvas,o=e.context.gl,r=e.debugOverlayCanvas.getContext(\"2d\");r.clearRect(0,0,i.width,i.height),r.shadowColor=\"white\",r.shadowBlur=2,r.lineWidth=1.5,r.strokeStyle=\"white\",r.textBaseline=\"top\",r.font=\"bold 36px Open Sans, sans-serif\",r.fillText(t,5,5),r.strokeText(t,5,5),e.debugOverlayTexture.update(i),e.debugOverlayTexture.bind(o.LINEAR,o.CLAMP_TO_EDGE);}(t,T);const E=u._tileDebugTextBuffer||t.debugBuffer,C=u._tileDebugTextIndexBuffer||t.quadTriangleIndexBuffer,M=u._tileDebugTextSegments||t.debugSegments;h.draw(r,s.TRIANGLES,_,d,e.ColorMode.alphaBlended,e.CullFaceMode.disabled,Vi(c,e.Color.transparent,w),m,E,C,M,null,null,null,[u._globeTileDebugTextBuffer]);}function Co(e,t,i,o){Io(e,0,t+i/2,e.transform.width,i,o);}function Mo(e,t,i,o){Io(e,t-i/2,0,i,e.transform.height,o);}function Io(t,i,o,r,n,s){const a=t.context,l=a.gl;l.enable(l.SCISSOR_TEST),l.scissor(i*e.exported.devicePixelRatio,o*e.exported.devicePixelRatio,r*e.exported.devicePixelRatio,n*e.exported.devicePixelRatio),a.clear({color:s}),l.disable(l.SCISSOR_TEST);}const Po=e.createLayout([{name:\"a_pos_3f\",components:3,type:\"Float32\"}]),{members:So}=Po;function Do(e,t,i,o){e.emplaceBack(t,i,o);}class Lo{constructor(t){this.vertexArray=new e.StructArrayLayout3f12,this.indices=new e.StructArrayLayout3ui6,Do(this.vertexArray,-1,-1,1),Do(this.vertexArray,1,-1,1),Do(this.vertexArray,-1,1,1),Do(this.vertexArray,1,1,1),Do(this.vertexArray,-1,-1,-1),Do(this.vertexArray,1,-1,-1),Do(this.vertexArray,-1,1,-1),Do(this.vertexArray,1,1,-1),this.indices.emplaceBack(5,1,3),this.indices.emplaceBack(3,7,5),this.indices.emplaceBack(6,2,0),this.indices.emplaceBack(0,4,6),this.indices.emplaceBack(2,6,7),this.indices.emplaceBack(7,3,2),this.indices.emplaceBack(5,4,0),this.indices.emplaceBack(0,1,5),this.indices.emplaceBack(0,2,3),this.indices.emplaceBack(3,1,0),this.indices.emplaceBack(7,6,4),this.indices.emplaceBack(4,5,7),this.vertexBuffer=t.createVertexBuffer(this.vertexArray,So),this.indexBuffer=t.createIndexBuffer(this.indices),this.segment=e.SegmentVector.simpleSegment(0,0,36,12);}}function Ao(t,i,o,r,n,s){const a=t.gl,l=i.paint.get(\"sky-atmosphere-color\"),c=i.paint.get(\"sky-atmosphere-halo-color\"),h=i.paint.get(\"sky-atmosphere-sun-intensity\"),u=((e,t,i,o,r)=>({u_matrix_3f:e,u_sun_direction:t,u_sun_intensity:i,u_color_tint_r:[o.r,o.g,o.b,o.a],u_color_tint_m:[r.r,r.g,r.b,r.a],u_luminance:5e-5}))(e.fromMat4(e.create$1(),r),n,h,l,c);a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_CUBE_MAP_POSITIVE_X+s,i.skyboxTexture,0),o.draw(t,a.TRIANGLES,e.DepthMode.disabled,e.StencilMode.disabled,e.ColorMode.unblended,e.CullFaceMode.frontCW,u,\"skyboxCapture\",i.skyboxGeometry.vertexBuffer,i.skyboxGeometry.indexBuffer,i.skyboxGeometry.segment);}const zo=e.createLayout([{type:\"Float32\",name:\"a_pos\",components:3},{type:\"Float32\",name:\"a_uv\",components:2}]);class Ro{constructor(t){const i=new e.StructArrayLayout5f20;i.emplaceBack(-1,1,1,0,0),i.emplaceBack(1,1,1,1,0),i.emplaceBack(1,-1,1,1,1),i.emplaceBack(-1,-1,1,0,1);const o=new e.StructArrayLayout3ui6;o.emplaceBack(0,1,2),o.emplaceBack(2,3,0),this.vertexBuffer=t.createVertexBuffer(i,zo.members),this.indexBuffer=t.createIndexBuffer(o),this.segments=e.SegmentVector.simpleSegment(0,0,4,2);}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy();}}const Oo={symbol:function(t,i,o,r,n){if(\"translucent\"!==t.renderPass)return;const s=e.StencilMode.disabled,a=t.colorModeForRenderPass();o.layout.get(\"text-variable-anchor\")&&function(t,i,o,r,n,s,a){const l=i.transform,c=\"map\"===n,h=\"map\"===s;for(const i of t){const t=r.getTile(i),n=t.getBucket(o);if(!n||!n.text||!n.text.segments.get().length)continue;const s=e.evaluateSizeForZoom(n.textSizeData,l.zoom),u=xt(i,n.getProjection(),l),_=l.calculatePixelsToTileUnitsMatrix(t),d=et(u,t.tileID.canonical,h,c,l,n.getProjection(),_),p=\"none\"!==o.layout.get(\"icon-text-fit\")&&n.hasIconData();if(s){const o=Math.pow(2,l.zoom-t.tileID.overscaledZ);uo(n,c,h,a,e.symbolSize,l,d,i,o,s,p);}}}(r,t,o,i,o.layout.get(\"text-rotation-alignment\"),o.layout.get(\"text-pitch-alignment\"),n),0!==o.paint.get(\"icon-opacity\").constantOr(1)&&po(t,i,o,r,!1,o.paint.get(\"icon-translate\"),o.paint.get(\"icon-translate-anchor\"),o.layout.get(\"icon-rotation-alignment\"),o.layout.get(\"icon-pitch-alignment\"),o.layout.get(\"icon-keep-upright\"),s,a),0!==o.paint.get(\"text-opacity\").constantOr(1)&&po(t,i,o,r,!0,o.paint.get(\"text-translate\"),o.paint.get(\"text-translate-anchor\"),o.layout.get(\"text-rotation-alignment\"),o.layout.get(\"text-pitch-alignment\"),o.layout.get(\"text-keep-upright\"),s,a),i.map.showCollisionBoxes&&(lo(t,i,o,r,o.paint.get(\"text-translate\"),o.paint.get(\"text-translate-anchor\"),!0),lo(t,i,o,r,o.paint.get(\"icon-translate\"),o.paint.get(\"icon-translate-anchor\"),!1));},circle:function(t,i,o,r){if(\"translucent\"!==t.renderPass)return;const n=o.paint.get(\"circle-opacity\"),s=o.paint.get(\"circle-stroke-width\"),a=o.paint.get(\"circle-stroke-opacity\"),l=void 0!==o.layout.get(\"circle-sort-key\").constantOr(1);if(0===n.constantOr(1)&&(0===s.constantOr(1)||0===a.constantOr(1)))return;const c=t.context,h=c.gl,u=t.transform,_=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),d=e.StencilMode.disabled,p=t.colorModeForRenderPass(),m=\"globe\"===u.projection.name,f=[e.mercatorXfromLng(u.center.lng),e.mercatorYfromLat(u.center.lat)],g=[];for(let n=0;ne.sortKey-t.sortKey));const v={useDepthForOcclusion:!m};for(const i of g){const{programConfiguration:r,program:n,layoutVertexBuffer:s,globeExtVertexBuffer:a,indexBuffer:l,uniformValues:m,tile:f}=i.state,g=i.segments;t.terrain&&t.terrain.setupElevationDraw(f,n,v),t.prepareDrawProgram(c,n,f.tileID.toUnwrapped()),n.draw(c,h.TRIANGLES,_,d,p,e.CullFaceMode.disabled,m,o.id,s,l,g,o.paint,u.zoom,r,[a]);}},heatmap:function(t,i,o,r){if(0!==o.paint.get(\"heatmap-opacity\"))if(\"offscreen\"===t.renderPass){const n=t.context,s=n.gl,a=e.StencilMode.disabled,l=new e.ColorMode([s.ONE,s.ONE],e.Color.transparent,[!0,!0,!0,!0]);!function(e,t,i,o){const r=e.gl,n=t.width*o,s=t.height*o;e.activeTexture.set(r.TEXTURE1),e.viewport.set([0,0,n,s]);let a=i.heatmapFbo;if(!a||a&&(a.width!==n||a.height!==s)){a&&a.destroy();const t=r.createTexture();r.bindTexture(r.TEXTURE_2D,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),a=i.heatmapFbo=e.createFramebuffer(n,s,!1),function(e,t,i,o,r,n){const s=e.gl;s.texImage2D(s.TEXTURE_2D,0,e.isWebGL2&&e.extRenderToTextureHalfFloat?s.RGBA16F:s.RGBA,r,n,0,s.RGBA,e.extRenderToTextureHalfFloat?e.isWebGL2?s.HALF_FLOAT:e.extTextureHalfFloat.HALF_FLOAT_OES:s.UNSIGNED_BYTE,null),o.colorAttachment.set(i);}(e,0,t,a,n,s);}else r.bindTexture(r.TEXTURE_2D,a.colorAttachment.get()),e.bindFramebuffer.set(a.framebuffer);}(n,t,o,\"globe\"===t.transform.projection.name?.5:.25),n.clear({color:e.Color.transparent});const c=t.transform,h=\"globe\"===c.projection.name,u=h?[\"PROJECTION_GLOBE_VIEW\"]:null,_=h?e.CullFaceMode.frontCCW:e.CullFaceMode.disabled,d=[e.mercatorXfromLng(c.center.lng),e.mercatorYfromLat(c.center.lat)];for(let p=0;p({u_image:0,u_color_ramp:1,u_opacity:t.paint.get(\"heatmap-opacity\")}))(0,i),i.id,t.viewportBuffer,t.quadTriangleIndexBuffer,t.viewportSegments,i.paint,t.transform.zoom);}(t,o));},line:function(t,i,o,r){if(\"translucent\"!==t.renderPass)return;const n=o.paint.get(\"line-opacity\"),s=o.paint.get(\"line-width\");if(0===n.constantOr(1)||0===s.constantOr(1))return;const a=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),l=t.colorModeForRenderPass(),c=t.terrain&&t.terrain.renderingToTexture?1:e.exported.devicePixelRatio,h=o.paint.get(\"line-dasharray\"),u=h.constantOr(1),_=o.layout.get(\"line-cap\"),d=o.paint.get(\"line-pattern\"),p=d.constantOr(1),m=o.paint.get(\"line-gradient\"),f=p?\"linePattern\":\"line\",g=t.context,v=g.gl,x=(e=>{const t=[];Ki(e)&&t.push(\"RENDER_LINE_DASH\"),e.paint.get(\"line-gradient\")&&t.push(\"RENDER_LINE_GRADIENT\");const i=e.paint.get(\"line-trim-offset\");0===i[0]&&0===i[1]||t.push(\"RENDER_LINE_TRIM_OFFSET\");const o=e.paint.get(\"line-pattern\").constantOr(1),r=1!==e.paint.get(\"line-opacity\").constantOr(1);return !o&&r&&t.push(\"RENDER_LINE_ALPHA_DISCARD\"),t})(o);let y=x.includes(\"RENDER_LINE_ALPHA_DISCARD\");t.terrain&&t.terrain.clipOrMaskOverlapStencilType()&&(y=!1);for(const n of r){const r=i.getTile(n);if(p&&!r.patternsLoaded())continue;const s=r.getBucket(o);if(!s)continue;t.prepareDrawTile();const b=s.programConfigurations.get(o.id),w=t.useProgram(f,b,x),T=d.constantOr(null);if(T&&r.imageAtlas){const e=r.imageAtlas.patternPositions[T.toString()];e&&b.setConstantPatternPositions(e);}const E=h.constantOr(null),C=_.constantOr(null);if(!p&&E&&C&&r.lineAtlas){const e=r.lineAtlas.getDash(E,C);e&&b.setConstantPatternPositions(e);}let[M,I]=o.paint.get(\"line-trim-offset\");if(\"round\"===C||\"square\"===C){const e=1;M!==I&&(0===M&&(M-=e),1===I&&(I+=e));}const P=t.terrain?n.projMatrix:null,S=p?$i(t,r,o,P,c):qi(t,r,o,P,s.lineClipsArray.length,c,[M,I]);if(m){const r=s.gradients[o.id];let a=r.texture;if(o.gradientVersion!==r.version){let l=256;if(o.stepInterpolant){const o=i.getSource().maxzoom,r=n.canonical.z===o?Math.ceil(1<{w.draw(g,v.TRIANGLES,a,i,l,e.CullFaceMode.disabled,S,o.id,s.layoutVertexBuffer,s.indexBuffer,s.segments,o.paint,t.transform.zoom,b,[s.layoutVertexBuffer2]);};if(y){const i=t.stencilModeForClipping(n).ref;0===i&&t.terrain&&g.clear({stencil:0});const o={func:v.EQUAL,mask:255};S.u_alpha_discard_threshold=.8,D(new e.StencilMode(o,i,255,v.KEEP,v.KEEP,v.INVERT)),S.u_alpha_discard_threshold=0,D(new e.StencilMode(o,i,255,v.KEEP,v.KEEP,v.KEEP));}else D(t.stencilModeForClipping(n));}y&&(t.resetStencilClippingMasks(),t.terrain&&g.clear({stencil:0}));},fill:function(t,i,o,r){const n=o.paint.get(\"fill-color\"),s=o.paint.get(\"fill-opacity\");if(0===s.constantOr(1))return;const a=t.colorModeForRenderPass(),l=o.paint.get(\"fill-pattern\"),c=t.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===n.constantOr(e.Color.transparent).a&&1===s.constantOr(0)?\"opaque\":\"translucent\";if(t.renderPass===c){const n=t.depthModeForSublayer(1,\"opaque\"===t.renderPass?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly);fo(t,i,o,r,n,a,!1);}if(\"translucent\"===t.renderPass&&o.paint.get(\"fill-antialias\")){const n=t.depthModeForSublayer(o.getPaintProperty(\"fill-outline-color\")?2:0,e.DepthMode.ReadOnly);fo(t,i,o,r,n,a,!0);}},\"fill-extrusion\":function(t,i,o,r){const n=o.paint.get(\"fill-extrusion-opacity\");if(0!==n&&\"translucent\"===t.renderPass){const s=new e.DepthMode(t.context.gl.LEQUAL,e.DepthMode.ReadWrite,t.depthRangeFor3D);if(1!==n||o.paint.get(\"fill-extrusion-pattern\").constantOr(1))go(t,i,o,r,s,e.StencilMode.disabled,e.ColorMode.disabled),go(t,i,o,r,s,t.stencilModeFor3D(),t.colorModeForRenderPass()),t.resetStencilClippingMasks();else {const n=t.colorModeForRenderPass();go(t,i,o,r,s,e.StencilMode.disabled,n);}}},hillshade:function(t,i,o,r){if(\"offscreen\"!==t.renderPass&&\"translucent\"!==t.renderPass)return;const n=t.context,s=t.depthModeForSublayer(0,e.DepthMode.ReadOnly),a=t.colorModeForRenderPass(),l=t.terrain&&t.terrain.renderingToTexture,[c,h]=\"translucent\"!==t.renderPass||l?[{},r]:t.stencilConfigForOverlap(r);for(const r of h){const n=i.getTile(r);if(n.needsHillshadePrepare&&\"offscreen\"===t.renderPass)fi(t,n,o,s,e.StencilMode.disabled,a);else if(\"translucent\"===t.renderPass){const e=l&&t.terrain?t.terrain.stencilModeForRTTOverlap(r):c[r.overscaledZ];pi(t,r,n,o,s,e,a);}}n.viewport.set([0,0,t.width,t.height]),t.resetStencilClippingMasks();},raster:function(t,i,o,r,n,s){if(\"translucent\"!==t.renderPass)return;if(0===o.paint.get(\"raster-opacity\"))return;if(!r.length)return;const a=t.context,l=a.gl,c=i.getSource(),h=t.useProgram(\"raster\"),u=t.colorModeForRenderPass(),_=t.terrain&&t.terrain.renderingToTexture,[d,p]=c instanceof Pe||_?[{},r]:t.stencilConfigForOverlap(r),m=p[p.length-1].overscaledZ,f=!t.options.moving;for(const r of p){const n=_?e.DepthMode.disabled:t.depthModeForSublayer(r.overscaledZ-m,1===o.paint.get(\"raster-opacity\")?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly,l.LESS),p=r.toUnwrapped(),g=i.getTile(r);if(_&&(!g||!g.hasData()))continue;const v=_?r.projMatrix:t.transform.calculateProjMatrix(p,f),x=t.terrain&&_?t.terrain.stencilModeForRTTOverlap(r):d[r.overscaledZ],y=s?0:o.paint.get(\"raster-fade-duration\");g.registerFadeDuration(y);const b=i.findLoadedParent(r,0),w=Mi(g,b,i,t.transform,y);let T,E;t.terrain&&t.terrain.prepareDrawTile();const C=\"nearest\"===o.paint.get(\"raster-resampling\")?l.NEAREST:l.LINEAR;a.activeTexture.set(l.TEXTURE0),g.texture.bind(C,l.CLAMP_TO_EDGE),a.activeTexture.set(l.TEXTURE1),b?(b.texture.bind(C,l.CLAMP_TO_EDGE),T=Math.pow(2,b.tileID.overscaledZ-g.tileID.overscaledZ),E=[g.tileID.canonical.x*T%1,g.tileID.canonical.y*T%1]):g.texture.bind(C,l.CLAMP_TO_EDGE),g.texture.useMipmap&&a.extTextureFilterAnisotropic&&t.transform.pitch>20&&l.texParameterf(l.TEXTURE_2D,a.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,a.extTextureFilterAnisotropicMax);const M=Ji(v,E||[0,0],T||1,w,o,c instanceof Pe?c.perspectiveTransform:[0,0]);if(t.prepareDrawProgram(a,h,p),c instanceof Pe)c.boundsBuffer&&c.boundsSegments&&h.draw(a,l.TRIANGLES,n,e.StencilMode.disabled,u,e.CullFaceMode.disabled,M,o.id,c.boundsBuffer,t.quadTriangleIndexBuffer,c.boundsSegments);else {const{tileBoundsBuffer:i,tileBoundsIndexBuffer:r,tileBoundsSegments:s}=t.getTileBoundsBuffers(g);h.draw(a,l.TRIANGLES,n,x,u,e.CullFaceMode.disabled,M,o.id,i,r,s);}}t.resetStencilClippingMasks();},background:function(t,i,o,r){const n=o.paint.get(\"background-color\"),s=o.paint.get(\"background-opacity\");if(0===s)return;const a=t.context,l=a.gl,c=t.transform,h=c.tileSize,u=o.paint.get(\"background-pattern\");if(t.isPatternMissing(u))return;const _=!u&&1===n.a&&1===s&&t.opaquePassEnabledForLayer()?\"opaque\":\"translucent\";if(t.renderPass!==_)return;const d=e.StencilMode.disabled,p=t.depthModeForSublayer(0,\"opaque\"===_?e.DepthMode.ReadWrite:e.DepthMode.ReadOnly),m=t.colorModeForRenderPass(),f=t.useProgram(u?\"backgroundPattern\":\"background\");let g,v=r;v||(g=t.getBackgroundTiles(),v=Object.values(g).map((e=>e.tileID))),u&&(a.activeTexture.set(l.TEXTURE0),t.imageManager.bind(t.context));for(const _ of v){const v=_.toUnwrapped(),x=r?_.projMatrix:t.transform.calculateProjMatrix(v);t.prepareDrawTile();const y=i?i.getTile(_):g?g[_.key]:new e.Tile(_,h,c.zoom,t),b=u?no(x,s,t,u,{tileID:_,tileSize:h}):ro(x,s,n);t.prepareDrawProgram(a,f,v);const{tileBoundsBuffer:w,tileBoundsIndexBuffer:T,tileBoundsSegments:E}=t.getTileBoundsBuffers(y);f.draw(a,l.TRIANGLES,p,d,m,e.CullFaceMode.disabled,b,o.id,w,T,E);}},sky:function(t,i,o){const r=t.transform,n=\"mercator\"===r.projection.name||\"globe\"===r.projection.name?1:e.smoothstep(7,8,r.zoom),s=o.paint.get(\"sky-opacity\")*n;if(0===s)return;const a=t.context,l=o.paint.get(\"sky-type\"),c=new e.DepthMode(a.gl.LEQUAL,e.DepthMode.ReadOnly,[0,1]),h=t.frameCounter/1e3%1;\"atmosphere\"===l?\"offscreen\"===t.renderPass?o.needsSkyboxCapture(t)&&(function(t,i,o,r){const n=t.context,s=n.gl;let a=i.skyboxFbo;if(!a){a=i.skyboxFbo=n.createFramebuffer(32,32,!1),i.skyboxGeometry=new Lo(n),i.skyboxTexture=n.gl.createTexture(),s.bindTexture(s.TEXTURE_CUBE_MAP,i.skyboxTexture),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_WRAP_S,s.CLAMP_TO_EDGE),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_WRAP_T,s.CLAMP_TO_EDGE),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_MIN_FILTER,s.LINEAR),s.texParameteri(s.TEXTURE_CUBE_MAP,s.TEXTURE_MAG_FILTER,s.LINEAR);for(let e=0;e<6;++e)s.texImage2D(s.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,s.RGBA,32,32,0,s.RGBA,s.UNSIGNED_BYTE,null);}n.bindFramebuffer.set(a.framebuffer),n.viewport.set([0,0,32,32]);const l=i.getCenter(t,!0),c=t.useProgram(\"skyboxCapture\"),h=new Float64Array(16);e.identity(h),e.rotateY(h,h,.5*-Math.PI),Ao(n,i,c,h,l,0),e.identity(h),e.rotateY(h,h,.5*Math.PI),Ao(n,i,c,h,l,1),e.identity(h),e.rotateX(h,h,.5*-Math.PI),Ao(n,i,c,h,l,2),e.identity(h),e.rotateX(h,h,.5*Math.PI),Ao(n,i,c,h,l,3),e.identity(h),Ao(n,i,c,h,l,4),e.identity(h),e.rotateY(h,h,Math.PI),Ao(n,i,c,h,l,5),n.viewport.set([0,0,t.width,t.height]);}(t,o),o.markSkyboxValid(t)):\"sky\"===t.renderPass&&function(t,i,o,r,n){const s=t.context,a=s.gl,l=t.transform,c=t.useProgram(\"skybox\");s.activeTexture.set(a.TEXTURE0),a.bindTexture(a.TEXTURE_CUBE_MAP,i.skyboxTexture);const h=((e,t,i,o,r)=>({u_matrix:e,u_sun_direction:t,u_cubemap:0,u_opacity:o,u_temporal_offset:r}))(l.skyboxMatrix,i.getCenter(t,!1),0,r,n);t.prepareDrawProgram(s,c),c.draw(s,a.TRIANGLES,o,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.backCW,h,\"skybox\",i.skyboxGeometry.vertexBuffer,i.skyboxGeometry.indexBuffer,i.skyboxGeometry.segment);}(t,o,c,s,h):\"gradient\"===l&&\"sky\"===t.renderPass&&function(t,i,o,r,n){const s=t.context,a=s.gl,l=t.transform,c=t.useProgram(\"skyboxGradient\");i.skyboxGeometry||(i.skyboxGeometry=new Lo(s)),s.activeTexture.set(a.TEXTURE0);let h=i.colorRampTexture;h||(h=i.colorRampTexture=new e.Texture(s,i.colorRamp,a.RGBA)),h.bind(a.LINEAR,a.CLAMP_TO_EDGE);const u=((t,i,o,r,n)=>({u_matrix:t,u_color_ramp:0,u_center_direction:i,u_radius:e.degToRad(o),u_opacity:r,u_temporal_offset:n}))(l.skyboxMatrix,i.getCenter(t,!1),i.paint.get(\"sky-gradient-radius\"),r,n);t.prepareDrawProgram(s,c),c.draw(s,a.TRIANGLES,o,e.StencilMode.disabled,t.colorModeForRenderPass(),e.CullFaceMode.backCW,u,\"skyboxGradient\",i.skyboxGeometry.vertexBuffer,i.skyboxGeometry.indexBuffer,i.skyboxGeometry.segment);}(t,o,c,s,h);},debug:function(e,t,i){for(let o=0;oo)return void(this.transform.fogCullDistSq=null);const r=i+.78*(o-i);this.transform.fogCullDistSq=r*r;}get terrain(){return this.transform._terrainEnabled()&&this._terrain&&this._terrain.enabled?this._terrain:null}resize(t,i){if(this.width=t*e.exported.devicePixelRatio,this.height=i*e.exported.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const e of this.style.order)this.style._layers[e].resize();}setup(){const t=this.context,i=new e.StructArrayLayout2i4;i.emplaceBack(0,0),i.emplaceBack(e.EXTENT,0),i.emplaceBack(0,e.EXTENT),i.emplaceBack(e.EXTENT,e.EXTENT),this.tileExtentBuffer=t.createVertexBuffer(i,e.posAttributes.members),this.tileExtentSegments=e.SegmentVector.simpleSegment(0,0,4,2);const o=new e.StructArrayLayout2i4;o.emplaceBack(0,0),o.emplaceBack(e.EXTENT,0),o.emplaceBack(0,e.EXTENT),o.emplaceBack(e.EXTENT,e.EXTENT),this.debugBuffer=t.createVertexBuffer(o,e.posAttributes.members),this.debugSegments=e.SegmentVector.simpleSegment(0,0,4,5);const r=new e.StructArrayLayout2i4;r.emplaceBack(-1,-1),r.emplaceBack(1,-1),r.emplaceBack(-1,1),r.emplaceBack(1,1),this.viewportBuffer=t.createVertexBuffer(r,e.posAttributes.members),this.viewportSegments=e.SegmentVector.simpleSegment(0,0,4,2);const n=new e.StructArrayLayout4i8;n.emplaceBack(0,0,0,0),n.emplaceBack(e.EXTENT,0,e.EXTENT,0),n.emplaceBack(0,e.EXTENT,0,e.EXTENT),n.emplaceBack(e.EXTENT,e.EXTENT,e.EXTENT,e.EXTENT),this.mercatorBoundsBuffer=t.createVertexBuffer(n,e.boundsAttributes.members),this.mercatorBoundsSegments=e.SegmentVector.simpleSegment(0,0,4,2);const s=new e.StructArrayLayout3ui6;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=t.createIndexBuffer(s);const a=new e.StructArrayLayout1ui2;for(const e of [0,1,3,2,0])a.emplaceBack(e);this.debugIndexBuffer=t.createIndexBuffer(a),this.emptyTexture=new e.Texture(t,new e.RGBAImage({width:1,height:1},Uint8Array.of(0,0,0,0)),t.gl.RGBA),this.identityMat=e.create();const l=this.context.gl;this.stencilClearMode=new e.StencilMode({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO),this.loadTimeStamps.push(e.window.performance.now()),this.atmosphereBuffer=new Ro(this.context);}getMercatorTileBoundsBuffers(){return {tileBoundsBuffer:this.mercatorBoundsBuffer,tileBoundsIndexBuffer:this.quadTriangleIndexBuffer,tileBoundsSegments:this.mercatorBoundsSegments}}getTileBoundsBuffers(e){return e._makeTileBoundsBuffers(this.context,this.transform.projection),e._tileBoundsBuffer?{tileBoundsBuffer:e._tileBoundsBuffer,tileBoundsIndexBuffer:e._tileBoundsIndexBuffer,tileBoundsSegments:e._tileBoundsSegments}:this.getMercatorTileBoundsBuffers()}clearStencil(){const t=this.context,i=t.gl;this.nextStencilID=1,this.currentStencilSource=void 0,this._tileClippingMaskIDs={},this.useProgram(\"clippingMask\").draw(t,i.TRIANGLES,e.DepthMode.disabled,this.stencilClearMode,e.ColorMode.disabled,e.CullFaceMode.disabled,Ci(this.identityMat),\"$clipping\",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments);}resetStencilClippingMasks(){this.terrain||(this.currentStencilSource=void 0,this._tileClippingMaskIDs={});}_renderTileClippingMasks(t,i,o){if(!i||this.currentStencilSource===i.id||!t.isTileClipped()||!o||0===o.length)return;if(this._tileClippingMaskIDs&&!this.terrain){let e=!1;for(const t of o)if(void 0===this._tileClippingMaskIDs[t.key]){e=!0;break}if(!e)return}this.currentStencilSource=i.id;const r=this.context,n=r.gl;this.nextStencilID+o.length>256&&this.clearStencil(),r.setColorMode(e.ColorMode.disabled),r.setDepthMode(e.DepthMode.disabled);const s=this.useProgram(\"clippingMask\");this._tileClippingMaskIDs={};for(const t of o){const o=i.getTile(t),a=this._tileClippingMaskIDs[t.key]=this.nextStencilID++,{tileBoundsBuffer:l,tileBoundsIndexBuffer:c,tileBoundsSegments:h}=this.getTileBoundsBuffers(o);s.draw(r,n.TRIANGLES,e.DepthMode.disabled,new e.StencilMode({func:n.ALWAYS,mask:0},a,255,n.KEEP,n.KEEP,n.REPLACE),e.ColorMode.disabled,e.CullFaceMode.disabled,Ci(t.projMatrix),\"$clipping\",l,c,h);}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const t=this.nextStencilID++,i=this.context.gl;return new e.StencilMode({func:i.NOTEQUAL,mask:255},t,255,i.KEEP,i.KEEP,i.REPLACE)}stencilModeForClipping(t){if(this.terrain)return this.terrain.stencilModeForRTTOverlap(t);const i=this.context.gl;return new e.StencilMode({func:i.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,i.KEEP,i.KEEP,i.REPLACE)}stencilConfigForOverlap(t){const i=this.context.gl,o=t.sort(((e,t)=>t.overscaledZ-e.overscaledZ)),r=o[o.length-1].overscaledZ,n=o[0].overscaledZ-r+1;if(n>1){this.currentStencilSource=void 0,this.nextStencilID+n>256&&this.clearStencil();const t={};for(let o=0;o=0;this.currentLayer--){const e=this.style._layers[o[this.currentLayer]],i=t._getLayerSourceCache(e);if(e.isSky())continue;const r=i?s[i.id]:void 0;this._renderTileClippingMasks(e,i,r),this.renderLayer(this,i,e,r);}if(this.style.fog&&this.transform.projection.supportsFog&&function(t,i){const o=t.context,r=o.gl,n=t.transform,s=new e.DepthMode(r.LEQUAL,e.DepthMode.ReadOnly,[0,1]),a=t.useProgram(\"globeAtmosphere\",null,\"globe\"===n.projection.name?[\"PROJECTION_GLOBE_VIEW\",\"FOG\"]:[\"FOG\"]),l=e.globeToMercatorTransition(n.zoom),c=i.properties.get(\"color\").toArray01(),h=i.properties.get(\"high-color\").toArray01(),u=i.properties.get(\"space-color\").toArray01PremultipliedAlpha(),_=e.identity$1([]);e.rotateY$1(_,_,-e.degToRad(n._center.lng)),e.rotateX$1(_,_,e.degToRad(n._center.lat)),e.rotateZ$1(_,_,n.angle),e.rotateX$1(_,_,-n._pitch);const d=e.fromQuat(new Float32Array(16),_),p=e.mapValue(i.properties.get(\"star-intensity\"),0,1,0,.25),m=5e-4,f=e.mapValue(i.properties.get(\"horizon-blend\"),0,1,m,.25),g=e.globeUseCustomAntiAliasing(t,o,n)&&f===m?n.worldSize/(2*Math.PI*1.025)-1:n.globeRadius,v=t.frameCounter/1e3%1,x=e.length(n.globeCenterInViewSpace),y=Math.sqrt(Math.pow(x,2)-Math.pow(g,2)),b=Math.acos(y/x),w=((t,i,o,r,n,s,a,l,c,h,u,_,d,p)=>({u_frustum_tl:t,u_frustum_tr:i,u_frustum_br:o,u_frustum_bl:r,u_horizon:n,u_transition:s,u_fadeout_range:a,u_color:l,u_high_color:c,u_space_color:h,u_star_intensity:u,u_star_size:5*e.exported.devicePixelRatio,u_star_density:0,u_temporal_offset:_,u_horizon_angle:d,u_rotation_matrix:p}))(n.frustumCorners.TL,n.frustumCorners.TR,n.frustumCorners.BR,n.frustumCorners.BL,n.frustumCorners.horizon,l,f,c,h,u,p,v,b,d);t.prepareDrawProgram(o,a);const T=t.atmosphereBuffer;T&&a.draw(o,r.TRIANGLES,s,e.StencilMode.disabled,e.ColorMode.alphaBlended,e.CullFaceMode.backCW,w,\"skybox\",T.vertexBuffer,T.indexBuffer,T.segments);}(this,this.style.fog),this.renderPass=\"sky\",(e.globeToMercatorTransition(this.transform.zoom)>0||\"globe\"!==this.transform.projection.name)&&this.transform.isHorizonVisible())for(this.currentLayer=0;this.currentLayer{const o=t._getLayerSourceCache(e);o&&!e.isHidden(this.transform.zoom)&&(!i||i.getSource().maxzoom0?t.pop():null}isPatternMissing(e){return null===e||void 0!==e&&!this.imageManager.getPattern(e.toString())}terrainRenderModeElevated(){return this.style&&!!this.style.getTerrain()&&!!this.terrain&&!this.terrain.renderingToTexture}currentGlobalDefines(){const e=this.terrain&&this.terrain.renderingToTexture,t=this.terrain&&0===this.terrain.exaggeration(),i=this.style&&this.style.fog,o=[];return this.terrainRenderModeElevated()&&o.push(\"TERRAIN\"),\"globe\"===this.transform.projection.name&&o.push(\"GLOBE\"),t&&o.push(\"ZERO_EXAGGERATION\"),i&&!e&&0!==i.getOpacity(this.transform.pitch)&&o.push(\"FOG\"),e&&o.push(\"RENDER_TO_TEXTURE\"),this._showOverdrawInspector&&o.push(\"OVERDRAW_INSPECTOR\"),o}useProgram(e,t,i){this.cache=this.cache||{};const o=i||[],r=this.currentGlobalDefines().concat(o),n=Li.cacheKey(ci[e],e,r,t);return this.cache[n]||(this.cache[n]=new Li(this.context,e,ci[e],t,so[e],r)),this.cache[n]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.frontFace.setDefault(),this.context.cullFaceSide.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault();}setBaseState(){const e=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(e.FUNC_ADD);}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=e.window.document.createElement(\"canvas\"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,this.context.gl.RGBA));}destroy(){this._terrain&&this._terrain.destroy(),this.globeSharedBuffers&&this.globeSharedBuffers.destroy(),this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy(),this.atmosphereBuffer&&this.atmosphereBuffer.destroy();}prepareDrawTile(){this.terrain&&this.terrain.prepareDrawTile();}prepareDrawProgram(t,i,o){if(this.terrain&&this.terrain.renderingToTexture)return;const r=this.style.fog;if(r){const n=r.getOpacity(this.transform.pitch),s=((t,i,o,r,n,s,a,l,c,h,u)=>{const _=t.transform,d=i.properties.get(\"color\").toArray01();d[3]=r;const p=t.frameCounter/1e3%1;return {u_fog_matrix:o?_.calculateFogTileMatrix(o):t.identityMat,u_fog_range:i.getFovAdjustedRange(_._fov),u_fog_color:d,u_fog_horizon_blend:i.properties.get(\"horizon-blend\"),u_fog_temporal_offset:p,u_frustum_tl:n,u_frustum_tr:s,u_frustum_br:a,u_frustum_bl:l,u_globe_pos:c,u_globe_radius:h,u_viewport:u,u_globe_transition:e.globeToMercatorTransition(_.zoom),u_is_globe:+(\"globe\"===_.projection.name)}})(this,r,o,n,this.transform.frustumCorners.TL,this.transform.frustumCorners.TR,this.transform.frustumCorners.BR,this.transform.frustumCorners.BL,this.transform.globeCenterInViewSpace,this.transform.globeRadius,[this.transform.width*e.exported.devicePixelRatio,this.transform.height*e.exported.devicePixelRatio]);i.setFogUniformValues(t,s);}}setTileLoadedFlag(e){this.tileLoaded=e;}saveCanvasCopy(){const e=this.canvasCopy();e&&(this.frameCopies.push(e),this.tileLoaded=!1);}canvasCopy(){const e=this.context.gl,t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.copyTexImage2D(e.TEXTURE_2D,0,e.RGBA,0,0,e.drawingBufferWidth,e.drawingBufferHeight,0),t}getCanvasCopiesAndTimestamps(){return {canvasCopies:this.frameCopies,timeStamps:this.loadTimeStamps}}averageElevationNeedsEasing(){if(!this.transform._elevation)return !1;const e=this.style&&this.style.fog;return !!e&&0!==e.getOpacity(this.transform.pitch)}getBackgroundTiles(){const t=this._backgroundTiles,i=this._backgroundTiles={},o=this.transform.coveringTiles({tileSize:512});for(const r of o)i[r.key]=t[r.key]||new e.Tile(r,512,this.transform.tileZoom,this);return i}clearBackgroundTiles(){this._backgroundTiles={};}}class ko{constructor(e=0,t=0,i=0,o=0){if(isNaN(e)||e<0||isNaN(t)||t<0||isNaN(i)||i<0||isNaN(o)||o<0)throw new Error(\"Invalid value for edge-insets, top, bottom, left and right must all be numbers\");this.top=e,this.bottom=t,this.left=i,this.right=o;}interpolate(t,i,o){return null!=i.top&&null!=t.top&&(this.top=e.number(t.top,i.top,o)),null!=i.bottom&&null!=t.bottom&&(this.bottom=e.number(t.bottom,i.bottom,o)),null!=i.left&&null!=t.left&&(this.left=e.number(t.left,i.left,o)),null!=i.right&&null!=t.right&&(this.right=e.number(t.right,i.right,o)),this}getCenter(t,i){const o=e.clamp((this.left+t-this.right)/2,0,t),r=e.clamp((this.top+i-this.bottom)/2,0,i);return new e.Point(o,r)}equals(e){return this.top===e.top&&this.bottom===e.bottom&&this.left===e.left&&this.right===e.right}clone(){return new ko(this.top,this.bottom,this.left,this.right)}toJSON(){return {top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}function Fo(t,i){const o=e.getColumn(t,3);e.fromQuat(t,i),e.setColumn(t,3,o);}function Uo(t,i){const o=e.identity$1([]);return e.rotateZ$1(o,o,-i),e.rotateX$1(o,o,-t),o}function No(t,i){const o=[t[0],t[1],0],r=[i[0],i[1],0];if(e.length(o)>=1e-15){const t=e.normalize([],o);e.scale$2(r,t,e.dot(r,t)),i[0]=r[0],i[1]=r[1];}const n=e.cross([],i,t);if(e.len(n)<1e-15)return null;const s=Math.atan2(-n[1],n[0]);return Uo(Math.atan2(Math.sqrt(t[0]*t[0]+t[1]*t[1]),-t[2]),s)}class jo{constructor(e,t){this.position=e,this.orientation=t;}get position(){return this._position}set position(t){if(t){const i=t instanceof e.MercatorCoordinate?t:new e.MercatorCoordinate(t[0],t[1],t[2]);this._renderWorldCopies&&(i.x=e.wrap(i.x,0,1)),this._position=i;}else this._position=null;}lookAtPoint(t,i){if(this.orientation=null,!this.position)return;const o=this.position,r=this._elevation?this._elevation.getAtPointOrZero(e.MercatorCoordinate.fromLngLat(t)):0,n=e.MercatorCoordinate.fromLngLat(t,r),s=[n.x-o.x,n.y-o.y,n.z-o.z];i||(i=[0,0,1]),i[2]=Math.abs(i[2]),this.orientation=No(s,i);}setPitchBearing(t,i){this.orientation=Uo(e.degToRad(t),e.degToRad(-i));}}class Go{constructor(t,i){this._transform=e.identity([]),this.orientation=i,this.position=t;}get mercatorPosition(){const t=this.position;return new e.MercatorCoordinate(t[0],t[1],t[2])}get position(){const t=e.getColumn(this._transform,3);return [t[0],t[1],t[2]]}set position(t){var i;t&&e.setColumn(this._transform,3,[(i=t)[0],i[1],i[2],1]);}get orientation(){return this._orientation}set orientation(t){this._orientation=t||e.identity$1([]),t&&Fo(this._transform,this._orientation);}getPitchBearing(){const e=this.forward(),t=this.right();return {bearing:Math.atan2(-t[1],t[0]),pitch:Math.atan2(Math.sqrt(e[0]*e[0]+e[1]*e[1]),-e[2])}}setPitchBearing(e,t){this._orientation=Uo(e,t),Fo(this._transform,this._orientation);}forward(){const t=e.getColumn(this._transform,2);return [-t[0],-t[1],-t[2]]}up(){const t=e.getColumn(this._transform,1);return [-t[0],-t[1],-t[2]]}right(){const t=e.getColumn(this._transform,0);return [t[0],t[1],t[2]]}getCameraToWorld(t,i){const o=new Float64Array(16);return e.invert(o,this.getWorldToCamera(t,i)),o}getWorldToCameraPosition(t,i,o){const r=this.position;e.scale$2(r,r,-t);const n=new Float64Array(16);return e.fromScaling(n,[o,o,o]),e.translate(n,n,r),n[10]*=i,n}getWorldToCamera(t,i){const o=new Float64Array(16),r=new Float64Array(4),n=this.position;return e.conjugate(r,this._orientation),e.scale$2(n,n,-t),e.fromQuat(o,r),e.translate(o,o,n),o[1]*=-1,o[5]*=-1,o[9]*=-1,o[13]*=-1,o[8]*=i,o[9]*=i,o[10]*=i,o[11]*=i,o}getCameraToClipPerspective(t,i,o,r){const n=new Float64Array(16);return e.perspective(n,t,i,o,r),n}getDistanceToElevation(t,i=!1){const o=0===t?0:e.mercatorZfromAltitude(t,i?e.latFromMercatorY(this.position[1]):this.position[1]),r=this.forward();return (o-this.position[2])/r[2]}clone(){return new Go([...this.position],[...this.orientation])}}function Zo(t,i){const o=Wo(t.projection,t.zoom,t.width,t.height),r=function(t,i,o,r,n){const s=new e.LngLat(o.lng-180*Xo,o.lat),a=new e.LngLat(o.lng+180*Xo,o.lat),l=t.project(s.lng,s.lat),c=t.project(a.lng,a.lat),h=-Math.atan2(c.y-l.y,c.x-l.x),u=e.MercatorCoordinate.fromLngLat(o);u.y=e.clamp(u.y,-1+Xo,1-Xo);const _=u.toLngLat(),d=t.project(_.lng,_.lat),p=e.MercatorCoordinate.fromLngLat(_);p.x+=Xo;const m=p.toLngLat(),f=t.project(m.lng,m.lat),g=$o(f.x-d.x,f.y-d.y,h),v=e.MercatorCoordinate.fromLngLat(_);v.y+=Xo;const x=v.toLngLat(),y=t.project(x.lng,x.lat),b=$o(y.x-d.x,y.y-d.y,h),w=Math.abs(g.x)/Math.abs(b.y),T=e.identity([]);e.rotateZ(T,T,-h*(1-(n?0:r)));const E=e.identity([]);return e.scale(E,E,[1,1-(1-w)*r,1]),E[4]=-b.x/b.y*r,e.rotateZ(E,E,h),e.multiply(E,T,E),E}(t.projection,0,t.center,o,i),n=Vo(t);return e.scale(r,r,[n,n,1]),r}function Vo(t){const i=t.projection,o=Wo(t.projection,t.zoom,t.width,t.height),r=qo(i,t.center),n=qo(i,e.LngLat.convert(i.center));return Math.pow(2,r*o+(1-o)*n)}function Wo(t,i,o,r,n=1/0){const s=t.range;if(!s)return 0;const a=Math.min(n,Math.max(o,r)),l=Math.log(a/1024)/Math.LN2;return e.smoothstep(s[0]+l,s[1]+l,i)}const Xo=1/4e4;function qo(t,i){const o=e.clamp(i.lat,-e.MAX_MERCATOR_LATITUDE,e.MAX_MERCATOR_LATITUDE),r=new e.LngLat(i.lng-180*Xo,o),n=new e.LngLat(i.lng+180*Xo,o),s=t.project(r.lng,o),a=t.project(n.lng,o),l=e.MercatorCoordinate.fromLngLat(r),c=e.MercatorCoordinate.fromLngLat(n),h=a.x-s.x,u=a.y-s.y,_=c.x-l.x,d=c.y-l.y,p=Math.sqrt((_*_+d*d)/(h*h+u*u));return Math.log(p)/Math.LN2}function $o(e,t,i){const o=Math.cos(i),r=Math.sin(i);return {x:e*o-t*r,y:e*r+t*o}}class Ho{constructor(t,i,o,r,n,s,a){this.tileSize=512,this._renderWorldCopies=void 0===n||n,this._minZoom=t||0,this._maxZoom=i||22,this._minPitch=null==o?0:o,this._maxPitch=null==r?60:r,this.setProjection(s),this.setMaxBounds(a),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._nearZ=0,this._farZ=0,this._unmodified=!0,this._edgeInsets=new ko,this._projMatrixCache={},this._alignedProjMatrixCache={},this._fogTileMatrixCache={},this._distanceTileDataCache={},this._camera=new Go,this._centerAltitude=0,this._averageElevation=0,this.cameraElevationReference=\"ground\",this._pixelsPerMercatorPixel=1,this.globeRadius=0,this.globeCenterInViewSpace=[0,0,0],this._horizonShift=.1;}clone(){const e=new Ho(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies,this.getProjection());return e._elevation=this._elevation,e._centerAltitude=this._centerAltitude,e._centerAltitudeValidForExaggeration=this._centerAltitudeValidForExaggeration,e.tileSize=this.tileSize,e.mercatorFromTransition=this.mercatorFromTransition,e.width=this.width,e.height=this.height,e.cameraElevationReference=this.cameraElevationReference,e._center=this._center,e._setZoom(this.zoom),e._seaLevelZoom=this._seaLevelZoom,e.angle=this.angle,e._fov=this._fov,e._pitch=this._pitch,e._nearZ=this._nearZ,e._farZ=this._farZ,e._averageElevation=this._averageElevation,e._unmodified=this._unmodified,e._edgeInsets=this._edgeInsets.clone(),e._camera=this._camera.clone(),e._calcMatrices(),e.freezeTileCoverage=this.freezeTileCoverage,e.frustumCorners=this.frustumCorners,e}get elevation(){return this._elevation}set elevation(e){this._elevation!==e&&(this._elevation=e,this._updateCameraOnTerrain(),this._calcMatrices());}updateElevation(e,t=!1){const i=this._elevation&&this._elevation.exaggeration()!==this._centerAltitudeValidForExaggeration;(null==this._seaLevelZoom||i)&&this._updateCameraOnTerrain(),(e||i)&&this._constrainCamera(t),this._calcMatrices();}getProjection(){return e.pick(this.projection,[\"name\",\"center\",\"parallels\"])}setProjection(i){this.projectionOptions=i||{name:\"mercator\"};const o=this.projection?this.getProjection():void 0;this.projection=e.getProjection(this.projectionOptions);const r=!t(o,this.getProjection());return r&&this._calcMatrices(),this.mercatorFromTransition=!1,r}setMercatorFromTransition(){const t=this.projection.name;this.mercatorFromTransition=!0,this.projectionOptions={name:\"mercator\"},this.projection=e.getProjection({name:\"mercator\"});const i=t!==this.projection.name;return i&&this._calcMatrices(),i}get minZoom(){return this._minZoom}set minZoom(e){this._minZoom!==e&&(this._minZoom=e,this.zoom=Math.max(this.zoom,e));}get maxZoom(){return this._maxZoom}set maxZoom(e){this._maxZoom!==e&&(this._maxZoom=e,this.zoom=Math.min(this.zoom,e));}get minPitch(){return this._minPitch}set minPitch(e){this._minPitch!==e&&(this._minPitch=e,this.pitch=Math.max(this.pitch,e));}get maxPitch(){return this._maxPitch}set maxPitch(e){this._maxPitch!==e&&(this._maxPitch=e,this.pitch=Math.min(this.pitch,e));}get renderWorldCopies(){return this._renderWorldCopies&&!0===this.projection.supportsWorldCopies}set renderWorldCopies(e){void 0===e?e=!0:null===e&&(e=!1),this._renderWorldCopies=e;}get worldSize(){return this.tileSize*this.scale}get cameraWorldSizeForFog(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get cameraWorldSize(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation,!0),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get pixelsPerMeter(){return this.projection.pixelsPerMeter(this.center.lat,this.worldSize)}get cameraPixelsPerMeter(){return e.mercatorZfromAltitude(this.center.lat,this.cameraWorldSizeForFog)}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new e.Point(this.width,this.height)}get bearing(){return e.wrap(this.rotation,-180,180)}set bearing(e){this.rotation=e;}get rotation(){return -this.angle/Math.PI*180}set rotation(t){const i=-t*Math.PI/180;var o;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=(o=new e.ARRAY_TYPE(4),e.ARRAY_TYPE!=Float32Array&&(o[1]=0,o[2]=0),o[0]=1,o[3]=1,o),function(e,t,i){var o=t[0],r=t[1],n=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);e[0]=o*l+n*a,e[1]=r*l+s*a,e[2]=o*-a+n*l,e[3]=r*-a+s*l;}(this.rotationMatrix,this.rotationMatrix,this.angle));}get pitch(){return this._pitch/Math.PI*180}set pitch(t){const i=e.clamp(t,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices());}get aspect(){return this.width/this.height}get fov(){return this._fov/Math.PI*180}get fovX(){return this._fov}get fovY(){const e=1/Math.tan(.5*this.fovX);return 2*Math.atan(1/this.aspect/e)}set fov(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=e.degToRad(t),this._calcMatrices());}get averageElevation(){return this._averageElevation}set averageElevation(e){this._averageElevation=e,this._calcFogMatrices(),this._distanceTileDataCache={};}get zoom(){return this._zoom}set zoom(e){const t=Math.min(Math.max(e,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._setZoom(t),this._updateSeaLevelZoom(),this._constrain(),this._calcMatrices());}_setZoom(e){this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom;}_updateCameraOnTerrain(){if(!this._elevation||!this._elevation.isDataAvailableAtPoint(this.locationCoordinate(this.center)))return this._centerAltitude=0,this._seaLevelZoom=null,void(this._centerAltitudeValidForExaggeration=void 0);const e=this._elevation;this._centerAltitude=e.getAtPointOrZero(this.locationCoordinate(this.center)),this._centerAltitudeValidForExaggeration=e.exaggeration(),this._updateSeaLevelZoom();}_updateSeaLevelZoom(){void 0!==this._centerAltitudeValidForExaggeration&&(this._seaLevelZoom=this._zoomFromMercatorZ((this.pixelsPerMeter*this._centerAltitude+this.cameraToCenterDistance)/this.worldSize));}sampleAverageElevation(){if(!this._elevation)return 0;const t=this._elevation,i=[[.5,.2],[.3,.5],[.5,.5],[.7,.5],[.5,.8]],o=this.horizonLineFromTop();let r=0,n=0;for(let s=0;st.maxzoom&&(i=t.maxzoom);const s=this.locationCoordinate(this.center),a=this.center.lat,l=1<{const i=1/4e4,o=new e.MercatorCoordinate(t.x+i,t.y,t.z),r=new e.MercatorCoordinate(t.x,t.y+i,t.z),n=t.toLngLat(),s=o.toLngLat(),a=r.toLngLat(),l=this.locationCoordinate(n),c=this.locationCoordinate(s),h=this.locationCoordinate(a),u=Math.hypot(c.x-l.x,c.y-l.y),_=Math.hypot(h.x-l.x,h.y-l.y);return Math.sqrt(u*_)*b/i},T=t=>{const i=x,o=y;return {aabb:e.tileAABB(this,l,0,0,0,t,o,i,this.projection),zoom:0,x:0,y:0,minZ:o,maxZ:i,wrap:t,fullyVisible:!1}},E=[];let C=[];const M=i,I=t.reparseOverscaled?o:i,P=e=>e*e,S=P((m-this._centerAltitude)*p),D=e=>{if(!this._elevation||!e.tileID||!n)return;const t=this._elevation.getMinMaxForTile(e.tileID),i=e.aabb;t?(i.min[2]=t.min,i.max[2]=t.max,i.center[2]=(i.min[2]+i.max[2])/2):(e.shouldSplit=L(e),e.shouldSplit||(i.min[2]=i.max[2]=i.center[2]=this._centerAltitude));},L=t=>{if(t.zoom=.9)return !0}else if(r&&(s=P(t.aabb.distanceZ(f)*p)),this.projection.isReprojectedInTileSpace&&o<=5){const i=Math.pow(2,t.zoom),o=w(new e.MercatorCoordinate((t.x+.5)/i,(t.y+.5)/i));l=o>.85?1:o;}const c=i*i+n*n+s,u=P((1<{if(t*P(.707)0;){const o=E.pop(),s=o.x,a=o.y;let u=o.fullyVisible;if(!u){const e=o.aabb.intersects(_);if(0===e)continue;u=2===e;}if(o.zoom!==M&&L(o))for(let t=0;t<4;t++){const i=(s<<1)+t%2,c=(a<<1)+(t>>1),_={aabb:n?o.aabb.quadrant(t):e.tileAABB(this,l,o.zoom+1,i,c,o.wrap,o.minZ,o.maxZ,this.projection),zoom:o.zoom+1,x:i,y:c,wrap:o.wrap,fullyVisible:u,tileID:void 0,shouldSplit:void 0,minZ:o.minZ,maxZ:o.maxZ};r&&!h&&(_.tileID=new e.OverscaledTileID(o.zoom+1===M?I:o.zoom+1,o.wrap,o.zoom+1,i,c),D(_)),E.push(_);}else {const r=o.zoom===M?I:o.zoom;if(t.minzoom&&t.minzoom>r)continue;const n=c[0]-(.5+s+(o.wrap<{const n=[0,0,0,1],s=[e.EXTENT,e.EXTENT,0,1],a=this.calculateFogTileMatrix(r.tileID.toUnwrapped());e.transformMat4$1(n,n,a),e.transformMat4$1(s,s,a);const l=e.getAABBPointSquareDist(n,s);if(0===l)return !0;let c=!1;const h=this._elevation;if(h&&l>i&&0!==o){const i=this.calculateProjMatrix(r.tileID.toUnwrapped());let n;t.isTerrainDEM||(n=h.getMinMaxForTile(r.tileID)),n||(n={min:y,max:x});const s=e.furthestTileCorner(this.rotation),a=[s[0]*e.EXTENT,s[1]*e.EXTENT,n.max];e.transformMat4(a,a,i),c=(1-a[1])*this.height*.5e.distanceSq-t.distanceSq)).map((e=>e.tileID))}resize(e,t){this.width=e,this.height=t,this.pixelsToGLUnits=[2/e,-2/t],this._constrain(),this._calcMatrices();}get unmodified(){return this._unmodified}zoomScale(e){return Math.pow(2,e)}scaleZoom(e){return Math.log(e)/Math.LN2}project(t){const i=e.clamp(t.lat,-e.MAX_MERCATOR_LATITUDE,e.MAX_MERCATOR_LATITUDE),o=this.projection.project(t.lng,i);return new e.Point(o.x*this.worldSize,o.y*this.worldSize)}unproject(e){return this.projection.unproject(e.x/this.worldSize,e.y/this.worldSize)}get point(){return this.project(this.center)}get pointMerc(){return this.point._div(this.worldSize)}get pixelsPerMeterRatio(){return this.pixelsPerMeter/e.mercatorZfromAltitude(1,this.center.lat)/this.worldSize}setLocationAtPoint(t,i){let o,r;const n=this.centerPoint;if(\"globe\"===this.projection.name){const e=this.worldSize;o=(i.x-n.x)/e,r=(i.y-n.y)/e;}else {const e=this.pointCoordinate(i),t=this.pointCoordinate(n);o=e.x-t.x,r=e.y-t.y;}const s=this.locationCoordinate(t);this.setLocation(new e.MercatorCoordinate(s.x-o,s.y-r));}setLocation(e){this.center=this.coordinateLocation(e),this.projection.wrap&&(this.center=this.center.wrap());}locationPoint(e){return this.projection.locationPoint(this,e)}locationPoint3D(e){return this.projection.locationPoint(this,e,!0)}pointLocation(e){return this.coordinateLocation(this.pointCoordinate(e))}pointLocation3D(e){return this.coordinateLocation(this.pointCoordinate3D(e))}locationCoordinate(t,i){const o=i?e.mercatorZfromAltitude(i,t.lat):void 0,r=this.projection.project(t.lng,t.lat);return new e.MercatorCoordinate(r.x,r.y,o)}coordinateLocation(e){return this.projection.unproject(e.x,e.y)}pointRayIntersection(t,i){const o=null!=i?i:this._centerAltitude,r=[t.x,t.y,0,1],n=[t.x,t.y,1,1];e.transformMat4$1(r,r,this.pixelMatrixInverse),e.transformMat4$1(n,n,this.pixelMatrixInverse);const s=n[3];e.scale$1(r,r,1/r[3]),e.scale$1(n,n,1/s);const a=r[2],l=n[2];return {p0:r,p1:n,t:a===l?0:(o-a)/(l-a)}}screenPointToMercatorRay(t){const i=[t.x,t.y,0,1],o=[t.x,t.y,1,1];return e.transformMat4$1(i,i,this.pixelMatrixInverse),e.transformMat4$1(o,o,this.pixelMatrixInverse),e.scale$1(i,i,1/i[3]),e.scale$1(o,o,1/o[3]),i[2]=e.mercatorZfromAltitude(i[2],this._center.lat)*this.worldSize,o[2]=e.mercatorZfromAltitude(o[2],this._center.lat)*this.worldSize,e.scale$1(i,i,1/this.worldSize),e.scale$1(o,o,1/this.worldSize),new e.Ray([i[0],i[1],i[2]],e.normalize([],e.sub([],o,i)))}rayIntersectionCoordinate(t){const{p0:i,p1:o,t:r}=t,n=e.mercatorZfromAltitude(i[2],this._center.lat),s=e.mercatorZfromAltitude(o[2],this._center.lat);return new e.MercatorCoordinate(e.number(i[0],o[0],r)/this.worldSize,e.number(i[1],o[1],r)/this.worldSize,e.number(n,s,r))}pointCoordinate(e,t=this._centerAltitude){return this.projection.pointCoordinate(this,e.x,e.y,t)}pointCoordinate3D(t){if(!this.elevation)return this.pointCoordinate(t);let i=this.projection.pointCoordinate3D(this,t.x,t.y);if(i)return new e.MercatorCoordinate(i[0],i[1],i[2]);let o=0,r=this.horizonLineFromTop();if(t.y>r)return this.pointCoordinate(t);const n=.02*r,s=t.clone();for(let t=0;t<10&&r-o>n;t++){s.y=e.number(o,r,.66);const t=this.projection.pointCoordinate3D(this,s.x,s.y);t?(r=s.y,i=t):o=s.y;}return i?new e.MercatorCoordinate(i[0],i[1],i[2]):this.pointCoordinate(t)}isPointAboveHorizon(e){return this.projection.isPointAboveHorizon(this,e)}isPointOnSurface(t){if(t.y<0||t.y>this.height||t.x<0||t.x>this.width)return !1;if(this.elevation||this.zoom>=e.GLOBE_ZOOM_THRESHOLD_MAX)return !this.isPointAboveHorizon(t);const i=this.pointCoordinate(t);return i.y>=0&&i.y<=1}_coordinatePoint(t,i){const o=i&&this.elevation?this.elevation.getAtPointOrZero(t,this._centerAltitude):this._centerAltitude,r=[t.x*this.worldSize,t.y*this.worldSize,o+t.toAltitude(),1];return e.transformMat4$1(r,r,this.pixelMatrix),r[3]>0?new e.Point(r[0]/r[3],r[1]/r[3]):new e.Point(Number.MAX_VALUE,Number.MAX_VALUE)}_getBoundsNonRectangular(){const{top:t,left:i}=this._edgeInsets,o=this.height-this._edgeInsets.bottom,r=this.width-this._edgeInsets.right,n=this.pointLocation3D(new e.Point(i,t)),s=this.pointLocation3D(new e.Point(r,t)),a=this.pointLocation3D(new e.Point(r,o)),l=this.pointLocation3D(new e.Point(i,o));let c=Math.min(n.lng,s.lng,a.lng,l.lng),h=Math.max(n.lng,s.lng,a.lng,l.lng),u=Math.min(n.lat,s.lat,a.lat,l.lat),_=Math.max(n.lat,s.lat,a.lat,l.lat);const d=Math.pow(2,-this.zoom)/16*270,p=\"globe\"===this.projection.name?1:4,m=(t,i,o,r,n)=>{const s=(t+o)/2,a=(i+r)/2,l=new e.Point(s,a),{lng:f,lat:g}=this.pointLocation3D(l),v=Math.max(0,c-f,u-g,f-h,g-_);c=Math.min(c,f),h=Math.max(h,f),u=Math.min(u,g),_=Math.max(_,g),(nd)&&(m(t,i,s,a,n+1),m(s,a,o,r,n+1));};if(m(i,t,r,t,1),m(r,t,r,o,1),m(r,o,i,o,1),m(i,o,i,t,1),\"globe\"===this.projection.name){const[t,i]=e.polesInViewport(this);t?(_=90,h=180,c=-180):i&&(u=-90,h=180,c=-180);}return new e.LngLatBounds(new e.LngLat(c,u),new e.LngLat(h,_))}_getBoundsRectangular(t,i){const{top:o,left:r}=this._edgeInsets,n=this.height-this._edgeInsets.bottom,s=this.width-this._edgeInsets.right,a=new e.Point(r,o),l=new e.Point(s,o),c=new e.Point(s,n),h=new e.Point(r,n);let u=this.pointCoordinate(a,t),_=this.pointCoordinate(l,t);const d=this.pointCoordinate(c,i),p=this.pointCoordinate(h,i),m=(e,t)=>(t.y-e.y)/(t.x-e.x);return u.y>1&&_.y>=0?u=new e.MercatorCoordinate((1-p.y)/m(p,u)+p.x,1):u.y<0&&_.y<=1&&(u=new e.MercatorCoordinate(-p.y/m(p,u)+p.x,0)),_.y>1&&u.y>=0?_=new e.MercatorCoordinate((1-d.y)/m(d,_)+d.x,1):_.y<0&&u.y<=1&&(_=new e.MercatorCoordinate(-d.y/m(d,_)+d.x,0)),(new e.LngLatBounds).extend(this.coordinateLocation(u)).extend(this.coordinateLocation(_)).extend(this.coordinateLocation(p)).extend(this.coordinateLocation(d))}_getBoundsRectangularTerrain(){const e=this.elevation;if(!e.visibleDemTiles.length||e.isUsingMockSource())return this._getBoundsRectangular(0,0);const t=e.visibleDemTiles.reduce(((e,t)=>{if(t.dem){const i=t.dem.tree;e.min=Math.min(e.min,i.minimums[0]),e.max=Math.max(e.max,i.maximums[0]);}return e}),{min:Number.MAX_VALUE,max:0});return this._getBoundsRectangular(t.min*e.exaggeration(),t.max*e.exaggeration())}getBounds(){return \"mercator\"===this.projection.name||\"equirectangular\"===this.projection.name?this._terrainEnabled()?this._getBoundsRectangularTerrain():this._getBoundsRectangular(0,0):this._getBoundsNonRectangular()}horizonLineFromTop(e=!0){const t=this.height/2/Math.tan(this._fov/2)/Math.tan(Math.max(this._pitch,.1))+this.centerOffset.y,i=this.height/2-t*(1-this._horizonShift);return e?Math.max(0,i):i}getMaxBounds(){return this.maxBounds}setMaxBounds(t){this.maxBounds=t,this.minLat=-e.MAX_MERCATOR_LATITUDE,this.maxLat=e.MAX_MERCATOR_LATITUDE,this.minLng=-180,this.maxLng=180,t&&(this.minLat=t.getSouth(),this.maxLat=t.getNorth(),this.minLng=t.getWest(),this.maxLng=t.getEast(),this.maxLngu&&(a=u-c),u-ht&&(s=t-l),t-e.5?y-1:y,b>.5?b-1:b,0]),this.alignedProjMatrix=w,a=e.create(),e.scale(a,a,[this.width/2,-this.height/2,1]),e.translate(a,a,[1,-1,0]),this.labelPlaneMatrix=a,a=e.create(),e.scale(a,a,[1,-1,1]),e.translate(a,a,[-1,-1,0]),e.scale(a,a,[2/this.width,2/this.height,1]),this.glCoordMatrix=a,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),this._calcFogMatrices(),this._distanceTileDataCache={},a=e.invert(new Float64Array(16),this.pixelMatrix),!a)throw new Error(\"failed to invert matrix\");if(this.pixelMatrixInverse=a,\"globe\"===this.projection.name||this.mercatorFromTransition){this.globeMatrix=e.calculateGlobeMatrix(this);const t=[this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]];this.globeCenterInViewSpace=e.transformMat4(t,t,n),this.globeRadius=this.worldSize/2/Math.PI-1;}else this.globeMatrix=a;this._projMatrixCache={},this._alignedProjMatrixCache={},this._pixelsToTileUnitsCache={};}_calcFogMatrices(){this._fogTileMatrixCache={};const t=this.cameraWorldSizeForFog,i=this.cameraPixelsPerMeter,o=this._camera.position,r=1/this.height/this._pixelsPerMercatorPixel,n=[t,t,i];e.scale$2(n,n,r),e.scale$2(o,o,-1),e.multiply$2(o,o,n);const s=e.create();e.translate(s,s,o),e.scale(s,s,n),this.mercatorFogMatrix=s,this.worldToFogMatrix=this._camera.getWorldToCameraPosition(t,i,r);}_computeCameraPosition(e){const t=(e=e||this.pixelsPerMeter)/this.pixelsPerMeter,i=this._camera.forward(),o=this.point,r=this._mercatorZfromZoom(this._seaLevelZoom?this._seaLevelZoom:this._zoom)*t-e/this.worldSize*this._centerAltitude;return [o.x/this.worldSize-i[0]*r,o.y/this.worldSize-i[1]*r,e/this.worldSize*this._centerAltitude-i[2]*r]}_updateCameraState(){this.height&&(this._camera.setPitchBearing(this._pitch,this.angle),this._camera.position=this._computeCameraPosition());}_translateCameraConstrained(t){const i=this._maxCameraBoundsDistance()*Math.cos(this._pitch),o=this._camera.position[2],r=t[2];let n=1;this.projection.wrap&&(this.center=this.center.wrap()),r>0&&(n=Math.min((i-o)/r,1)),this._camera.position=e.scaleAndAdd([],this._camera.position,t,n),this._updateStateFromCamera();}_updateStateFromCamera(){const t=this._camera.position,i=this._camera.forward(),{pitch:o,bearing:r}=this._camera.getPitchBearing(),n=e.mercatorZfromAltitude(this._centerAltitude,this.center.lat)*this._pixelsPerMercatorPixel,s=this._mercatorZfromZoom(this._maxZoom)*Math.cos(e.degToRad(this._maxPitch)),a=Math.max((t[2]-n)/Math.cos(o),s),l=this._zoomFromMercatorZ(a);e.scaleAndAdd(t,t,i,a),this._pitch=e.clamp(o,e.degToRad(this.minPitch),e.degToRad(this.maxPitch)),this.angle=e.wrap(r,-Math.PI,Math.PI),this._setZoom(e.clamp(l,this._minZoom,this._maxZoom)),this._updateSeaLevelZoom(),this._center=this.coordinateLocation(new e.MercatorCoordinate(t[0],t[1],t[2])),this._unmodified=!1,this._constrain(),this._calcMatrices();}_worldSizeFromZoom(e){return Math.pow(2,e)*this.tileSize}_mercatorZfromZoom(e){return this.cameraToCenterDistance/this._worldSizeFromZoom(e)}_minimumHeightOverTerrain(){const e=Math.min((null!=this._seaLevelZoom?this._seaLevelZoom:this._zoom)+4,this._maxZoom);return this._mercatorZfromZoom(e)}_zoomFromMercatorZ(e){return this.scaleZoom(this.cameraToCenterDistance/(e*this.tileSize))}zoomFromMercatorZAdjusted(t){let i=0,o=e.GLOBE_ZOOM_THRESHOLD_MAX,r=0,n=1/0;for(;o-i>1e-6&&o>i;){const e=i+.5*(o-i),s=this.tileSize*Math.pow(2,e),a=this.getCameraToCenterDistance(this.projection,e,s),l=this.scaleZoom(a/(t*this.tileSize)),c=Math.abs(e-l);cc||i.y>1)return !0}return !1}isHorizonVisible(){return this.pitch+e.radToDeg(this.fovAboveCenter)>88||this.anyCornerOffEdge(new e.Point(0,0),new e.Point(this.width,this.height))}zoomDeltaToMovement(t,i){const o=e.length(e.sub([],this._camera.position,t)),r=this._zoomFromMercatorZ(o)+i;return o-this._mercatorZfromZoom(r)}getCameraPoint(){if(\"globe\"===this.projection.name){const t=function([t,i,o],r){const n=[t,i,o,1];e.transformMat4$1(n,n,r);const s=n[3]=Math.max(n[3],1e-6);return n[0]/=s,n[1]/=s,n[2]/=s,n}([this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]],this.pixelMatrix);return new e.Point(t[0],t[1])}{const t=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,t))}}getCameraToCenterDistance(e,t=this.zoom,i=this.worldSize){const o=Wo(e,t,this.width,this.height,1024),r=e.pixelSpaceConversion(this.center.lat,i,o);return .5/Math.tan(.5*this._fov)*this.height*r}getWorldToCameraMatrix(){const t=this._camera.getWorldToCamera(this.worldSize,\"meters\"===this.projection.zAxisUnit?this.pixelsPerMeter:1);return \"globe\"===this.projection.name&&e.multiply(t,t,this.globeMatrix),t}}function Yo(e,t){let i=!1,o=null;const r=()=>{o=null,i&&(e(),o=setTimeout(r,t),i=!1);};return ()=>(i=!0,o||r(),o)}class Ko{constructor(t){this._hashName=t&&encodeURIComponent(t),e.bindAll([\"_getCurrentHash\",\"_onHashChange\",\"_updateHash\"],this),this._updateHash=Yo(this._updateHashUnthrottled.bind(this),300);}addTo(t){return this._map=t,e.window.addEventListener(\"hashchange\",this._onHashChange,!1),t.on(\"moveend\",this._updateHash),this}remove(){return this._map?(this._map.off(\"moveend\",this._updateHash),e.window.removeEventListener(\"hashchange\",this._onHashChange,!1),clearTimeout(this._updateHash()),this._map=void 0,this):this}getHashString(){const t=this._map;if(!t)return \"\";const i=Jo(t);if(this._hashName){const t=this._hashName;let o=!1;const r=e.window.location.hash.slice(1).split(\"&\").map((e=>{const r=e.split(\"=\")[0];return r===t?(o=!0,`${r}=${i}`):e})).filter((e=>e));return o||r.push(`${t}=${i}`),`#${r.join(\"&\")}`}return `#${i}`}_getCurrentHash(){const t=e.window.location.hash.replace(\"#\",\"\");if(this._hashName){let e;return t.split(\"&\").map((e=>e.split(\"=\"))).forEach((t=>{t[0]===this._hashName&&(e=t);})),(e&&e[1]||\"\").split(\"/\")}return t.split(\"/\")}_onHashChange(){const e=this._map;if(!e)return !1;const t=this._getCurrentHash();if(t.length>=3&&!t.some((e=>isNaN(e)))){const i=e.dragRotate.isEnabled()&&e.touchZoomRotate.isEnabled()?+(t[3]||0):e.getBearing();return e.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:i,pitch:+(t[4]||0)}),!0}return !1}_updateHashUnthrottled(){const t=e.window.location.href.replace(/(#.+)?$/,this.getHashString());e.window.history.replaceState(e.window.history.state,null,t);}}function Jo(e,t){const i=e.getCenter(),o=Math.round(100*e.getZoom())/100,r=Math.ceil((o*Math.LN2+Math.log(512/360/.5))/Math.LN10),n=Math.pow(10,r),s=Math.round(i.lng*n)/n,a=Math.round(i.lat*n)/n,l=e.getBearing(),c=e.getPitch();let h=t?`/${s}/${a}/${o}`:`${o}/${a}/${s}`;return (l||c)&&(h+=\"/\"+Math.round(10*l)/10),c&&(h+=`/${Math.round(c)}`),h}const Qo={linearity:.3,easing:e.bezier(0,0,.3,1)},er=e.extend({deceleration:2500,maxSpeed:1400},Qo),tr=e.extend({deceleration:20,maxSpeed:1400},Qo),ir=e.extend({deceleration:1e3,maxSpeed:360},Qo),or=e.extend({deceleration:1e3,maxSpeed:90},Qo);class rr{constructor(e){this._map=e,this.clear();}clear(){this._inertiaBuffer=[];}record(t){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.exported.now(),settings:t});}_drainInertiaBuffer(){const t=this._inertiaBuffer,i=e.exported.now();for(;t.length>0&&i-t[0].time>160;)t.shift();}_onMoveEnd(t){if(this._map._prefersReducedMotion())return;if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const i={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0};for(const{settings:e}of this._inertiaBuffer)i.zoom+=e.zoomDelta||0,i.bearing+=e.bearingDelta||0,i.pitch+=e.pitchDelta||0,e.panDelta&&i.pan._add(e.panDelta),e.around&&(i.around=e.around),e.pinchAround&&(i.pinchAround=e.pinchAround);const o=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,r={};if(i.pan.mag()){const n=sr(i.pan.mag(),o,e.extend({},er,t||{}));r.offset=i.pan.mult(n.amount/i.pan.mag()),r.center=this._map.transform.center,nr(r,n);}if(i.zoom){const e=sr(i.zoom,o,tr);r.zoom=this._map.transform.zoom+e.amount,nr(r,e);}if(i.bearing){const t=sr(i.bearing,o,ir);r.bearing=this._map.transform.bearing+e.clamp(t.amount,-179,179),nr(r,t);}if(i.pitch){const e=sr(i.pitch,o,or);r.pitch=this._map.transform.pitch+e.amount,nr(r,e);}if(r.zoom||r.bearing){const e=void 0===i.pinchAround?i.around:i.pinchAround;r.around=e?this._map.unproject(e):this._map.getCenter();}return this.clear(),r.noMoveStart=!0,r}}function nr(e,t){(!e.duration||e.durationi.unproject(e))),a=n.reduce(((e,t,i,o)=>e.add(t.div(o.length))),new e.Point(0,0));super(t,{points:n,point:a,lngLats:s,lngLat:i.unproject(a),originalEvent:o}),this._defaultPrevented=!1;}}class cr extends e.Event{preventDefault(){this._defaultPrevented=!0;}get defaultPrevented(){return this._defaultPrevented}constructor(e,t,i){super(e,{originalEvent:i}),this._defaultPrevented=!1;}}class hr{constructor(e,t){this._map=e,this._clickTolerance=t.clickTolerance;}reset(){this._mousedownPos=void 0;}wheel(e){return this._firePreventable(new cr(e.type,this._map,e))}mousedown(e,t){return this._mousedownPos=t,this._firePreventable(new ar(e.type,this._map,e))}mouseup(e){this._map.fire(new ar(e.type,this._map,e));}preclick(t){const i=e.extend({},t);i.type=\"preclick\",this._map.fire(new ar(i.type,this._map,i));}click(e,t){this._mousedownPos&&this._mousedownPos.dist(t)>=this._clickTolerance||(this.preclick(e),this._map.fire(new ar(e.type,this._map,e)));}dblclick(e){return this._firePreventable(new ar(e.type,this._map,e))}mouseover(e){this._map.fire(new ar(e.type,this._map,e));}mouseout(e){this._map.fire(new ar(e.type,this._map,e));}touchstart(e){return this._firePreventable(new lr(e.type,this._map,e))}touchmove(e){this._map.fire(new lr(e.type,this._map,e));}touchend(e){this._map.fire(new lr(e.type,this._map,e));}touchcancel(e){this._map.fire(new lr(e.type,this._map,e));}_firePreventable(e){if(this._map.fire(e),e.defaultPrevented)return {}}isEnabled(){return !0}isActive(){return !1}enable(){}disable(){}}class ur{constructor(e){this._map=e;}reset(){this._delayContextMenu=!1,this._contextMenuEvent=void 0;}mousemove(e){this._map.fire(new ar(e.type,this._map,e));}mousedown(){this._delayContextMenu=!0;}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new ar(\"contextmenu\",this._map,this._contextMenuEvent)),delete this._contextMenuEvent);}contextmenu(e){this._delayContextMenu?this._contextMenuEvent=e:this._map.fire(new ar(e.type,this._map,e)),this._map.listens(\"contextmenu\")&&e.preventDefault();}isEnabled(){return !0}isActive(){return !1}enable(){}disable(){}}class _r{constructor(e,t){this._map=e,this._el=e.getCanvasContainer(),this._container=e.getContainer(),this._clickTolerance=t.clickTolerance||1;}isEnabled(){return !!this._enabled}isActive(){return !!this._active}enable(){this.isEnabled()||(this._enabled=!0);}disable(){this.isEnabled()&&(this._enabled=!1);}mousedown(e,t){this.isEnabled()&&e.shiftKey&&0===e.button&&(h(),this._startPos=this._lastPos=t,this._active=!0);}mousemoveWindow(e,t){if(!this._active)return;const i=t,o=this._startPos,r=this._lastPos;if(!o||!r||r.equals(i)||!this._box&&i.dist(o){this._box&&(this._box.style.transform=`translate(${s}px,${l}px)`,this._box.style.width=a-s+\"px\",this._box.style.height=c-l+\"px\");}));}mouseupWindow(t,i){if(!this._active)return;const o=this._startPos,r=i;if(o&&0===t.button){if(this.reset(),d(),o.x!==r.x||o.y!==r.y)return this._map.fire(new e.Event(\"boxzoomend\",{originalEvent:t})),{cameraAnimation:e=>e.fitScreenCoordinates(o,r,this._map.getBearing(),{linear:!1})};this._fireEvent(\"boxzoomcancel\",t);}}keydown(e){this._active&&27===e.keyCode&&(this.reset(),this._fireEvent(\"boxzoomcancel\",e));}blur(){this.reset();}reset(){this._active=!1,this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(this._box.remove(),this._box=null),u(),delete this._startPos,delete this._lastPos;}_fireEvent(t,i){return this._map.fire(new e.Event(t,{originalEvent:i}))}}function dr(e,t){const i={};for(let o=0;othis.numTouches)&&(this.aborted=!0),this.aborted||(0===this.startTime&&(this.startTime=t.timeStamp),o.length===this.numTouches&&(this.centroid=function(t){const i=new e.Point(0,0);for(const e of t)i._add(e);return i.div(t.length)}(i),this.touches=dr(o,i)));}touchmove(e,t,i){if(this.aborted||!this.centroid)return;const o=dr(i,t);for(const e in this.touches){const t=o[e];(!t||t.dist(this.touches[e])>30)&&(this.aborted=!0);}}touchend(e,t,i){if((!this.centroid||e.timeStamp-this.startTime>500)&&(this.aborted=!0),0===i.length){const e=!this.aborted&&this.centroid;if(this.reset(),e)return e}}}class mr{constructor(e){this.singleTap=new pr(e),this.numTaps=e.numTaps,this.reset();}reset(){this.lastTime=1/0,this.lastTap=void 0,this.count=0,this.singleTap.reset();}touchstart(e,t,i){this.singleTap.touchstart(e,t,i);}touchmove(e,t,i){this.singleTap.touchmove(e,t,i);}touchend(e,t,i){const o=this.singleTap.touchend(e,t,i);if(o){const t=e.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(o)<30;if(t&&i||this.reset(),this.count++,this.lastTime=e.timeStamp,this.lastTap=o,this.count===this.numTaps)return this.reset(),o}}}class fr{constructor(){this._zoomIn=new mr({numTouches:1,numTaps:2}),this._zoomOut=new mr({numTouches:2,numTaps:1}),this.reset();}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset();}touchstart(e,t,i){this._zoomIn.touchstart(e,t,i),this._zoomOut.touchstart(e,t,i);}touchmove(e,t,i){this._zoomIn.touchmove(e,t,i),this._zoomOut.touchmove(e,t,i);}touchend(e,t,i){const o=this._zoomIn.touchend(e,t,i),r=this._zoomOut.touchend(e,t,i);return o?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()+1,around:t.unproject(o)},{originalEvent:e})}):r?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()-1,around:t.unproject(r)},{originalEvent:e})}):void 0}touchcancel(){this.reset();}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}const gr={0:1,2:2};class vr{constructor(e){this.reset(),this._clickTolerance=e.clickTolerance||1;}blur(){this.reset();}reset(){this._active=!1,this._moved=!1,this._lastPoint=void 0,this._eventButton=void 0;}_correctButton(e,t){return !1}_move(e,t){return {}}mousedown(e,t){if(this._lastPoint)return;const i=f(e);this._correctButton(e,i)&&(this._lastPoint=t,this._eventButton=i);}mousemoveWindow(e,t){const i=this._lastPoint;if(i)if(e.preventDefault(),null!=this._eventButton&&function(e,t){const i=gr[t];return void 0===e.buttons||(e.buttons&i)!==i}(e,this._eventButton))this.reset();else if(this._moved||!(t.dist(i)0&&(this._active=!0);const r=dr(o,i),n=new e.Point(0,0),s=new e.Point(0,0);let a=0;for(const e in r){const t=r[e],i=this._touches[e];i&&(n._add(t),s._add(t.sub(i)),a++,r[e]=t);}if(this._touches=r,a{this._alertContainer.classList.remove(\"mapboxgl-touch-pan-blocker-show\"),this._alertContainer.setAttribute(\"role\",\"null\");}),500);}}class Tr{constructor(){this.reset();}reset(){this._active=!1,this._firstTwoTouches=void 0;}_start(e){}_move(e,t,i){return {}}touchstart(e,t,i){this._firstTwoTouches||i.length<2||(this._firstTwoTouches=[i[0].identifier,i[1].identifier],this._start([t[0],t[1]]));}touchmove(e,t,i){const o=this._firstTwoTouches;if(!o)return;e.preventDefault();const[r,n]=o,s=Er(i,t,r),a=Er(i,t,n);if(!s||!a)return;const l=this._aroundCenter?null:s.add(a).div(2);return this._move([s,a],l,e)}touchend(e,t,i){if(!this._firstTwoTouches)return;const[o,r]=this._firstTwoTouches,n=Er(i,t,o),s=Er(i,t,r);n&&s||(this._active&&d(),this.reset());}touchcancel(){this.reset();}enable(e){this._enabled=!0,this._aroundCenter=!!e&&\"center\"===e.around;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}function Er(e,t,i){for(let o=0;oMath.abs(e.x)}class Dr extends Tr{constructor(e){super(),this._map=e;}reset(){super.reset(),this._valid=void 0,this._firstMove=void 0,this._lastPoints=void 0;}_start(e){this._lastPoints=e,Sr(e[0].sub(e[1]))&&(this._valid=!1);}_move(t,i,o){const r=this._lastPoints;if(!r)return;const n=t[0].sub(r[0]),s=t[1].sub(r[1]);return this._map._cooperativeGestures&&!e.isFullscreen()&&o.touches.length<3||(this._valid=this.gestureBeginsVertically(n,s,o.timeStamp),!this._valid)?void 0:(this._lastPoints=t,this._active=!0,{pitchDelta:(n.y+s.y)/2*-.5})}gestureBeginsVertically(e,t,i){if(void 0!==this._valid)return this._valid;const o=e.mag()>=2,r=t.mag()>=2;if(!o&&!r)return;if(!o||!r)return null==this._firstMove&&(this._firstMove=i),i-this._firstMove<100&&void 0;const n=e.y>0==t.y>0;return Sr(e)&&Sr(t)&&n}}const Lr={panStep:100,bearingStep:15,pitchStep:10};class Ar{constructor(){const e=Lr;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1;}blur(){this.reset();}reset(){this._active=!1;}keydown(e){if(e.altKey||e.ctrlKey||e.metaKey)return;let t=0,i=0,o=0,r=0,n=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?i=-1:(e.preventDefault(),r=-1);break;case 39:e.shiftKey?i=1:(e.preventDefault(),r=1);break;case 38:e.shiftKey?o=1:(e.preventDefault(),n=-1);break;case 40:e.shiftKey?o=-1:(e.preventDefault(),n=1);break;default:return}return this._rotationDisabled&&(i=0,o=0),{cameraAnimation:s=>{const a=s.getZoom();s.easeTo({duration:300,easeId:\"keyboardHandler\",easing:zr,zoom:t?Math.round(a)+t*(e.shiftKey?2:1):a,bearing:s.getBearing()+i*this._bearingStep,pitch:s.getPitch()+o*this._pitchStep,offset:[-r*this._panStep,-n*this._panStep],center:s.getCenter()},{originalEvent:e});}}}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0;}enableRotation(){this._rotationDisabled=!1;}}function zr(e){return e*(2-e)}const Rr=4.000244140625;class Or{constructor(t,i){this._map=t,this._el=t.getCanvasContainer(),this._handler=i,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,e.bindAll([\"_onTimeout\",\"_addScrollZoomBlocker\",\"_showBlockerAlert\"],this);}setZoomRate(e){this._defaultZoomRate=e;}setWheelZoomRate(e){this._wheelZoomRate=e;}isEnabled(){return !!this._enabled}isActive(){return this._active||void 0!==this._finishTimeout}isZooming(){return !!this._zooming}enable(e){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!e&&\"center\"===e.around,this._map._cooperativeGestures&&this._addScrollZoomBlocker());}disable(){this.isEnabled()&&(this._enabled=!1,this._map._cooperativeGestures&&(clearTimeout(this._alertTimer),this._alertContainer.remove()));}wheel(t){if(!this.isEnabled())return;if(this._map._cooperativeGestures){if(!(t.ctrlKey||t.metaKey||this.isZooming()||e.isFullscreen()))return void this._showBlockerAlert();\"hidden\"!==this._alertContainer.style.visibility&&(this._alertContainer.style.visibility=\"hidden\",clearTimeout(this._alertTimer));}let i=t.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?40*t.deltaY:t.deltaY;const o=e.exported.now(),r=o-(this._lastWheelEventTime||0);this._lastWheelEventTime=o,0!==i&&i%Rr==0?this._type=\"wheel\":0!==i&&Math.abs(i)<4?this._type=\"trackpad\":r>400?(this._type=null,this._lastValue=i,this._timeout=setTimeout(this._onTimeout,40,t)):this._type||(this._type=Math.abs(r*i)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,i+=this._lastValue)),t.shiftKey&&i&&(i/=4),this._type&&(this._lastWheelEvent=t,this._delta-=i,this._active||this._start(t)),t.preventDefault();}_onTimeout(e){this._type=\"wheel\",this._delta-=this._lastValue,this._active||this._start(e);}_start(e){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const t=p(this._el,e);this._aroundPoint=this._aroundCenter?this._map.transform.centerPoint:t,this._aroundCoord=this._map.transform.pointCoordinate3D(this._aroundPoint),this._targetZoom=void 0,this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame());}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const t=this._map.transform;\"wheel\"===this._type&&t.projection.wrap&&(t._center.lng>=180||t._center.lng<=-180)&&(this._prevEase=null,this._easing=null,this._lastWheelEvent=null,this._lastWheelEventTime=0);const i=()=>t._terrainEnabled()&&this._aroundCoord?t.computeZoomRelativeTo(this._aroundCoord):t.zoom;if(0!==this._delta){const e=\"wheel\"===this._type&&Math.abs(this._delta)>Rr?this._wheelZoomRate:this._defaultZoomRate;let o=2/(1+Math.exp(-Math.abs(this._delta*e)));this._delta<0&&0!==o&&(o=1/o);const r=i(),n=Math.pow(2,r),s=\"number\"==typeof this._targetZoom?t.zoomScale(this._targetZoom):n;this._targetZoom=Math.min(t.maxZoom,Math.max(t.minZoom,t.scaleZoom(s*o))),\"wheel\"===this._type&&(this._startZoom=r,this._easing=this._smoothOutEasing(200)),this._delta=0;}const o=\"number\"==typeof this._targetZoom?this._targetZoom:i(),r=this._startZoom,n=this._easing;let s,a=!1;if(\"wheel\"===this._type&&r&&n){const t=Math.min((e.exported.now()-this._lastWheelEventTime)/200,1),i=n(t);s=e.number(r,o,i),t<1?this._frameId||(this._frameId=!0):a=!0;}else s=o,a=!0;return this._active=!0,a&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._handler._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout;}),200)),{noInertia:!0,needsRenderFrame:!a,zoomDelta:s-i(),around:this._aroundPoint,aroundCoord:this._aroundCoord,originalEvent:this._lastWheelEvent}}_smoothOutEasing(t){let i=e.ease;if(this._prevEase){const t=this._prevEase,o=(e.exported.now()-t.start)/t.duration,r=t.easing(o+.01)-t.easing(o),n=.27/Math.sqrt(r*r+1e-4)*.01,s=Math.sqrt(.0729-n*n);i=e.bezier(n,s,.25,1);}return this._prevEase={start:e.exported.now(),duration:t,easing:i},i}blur(){this.reset();}reset(){this._active=!1;}_addScrollZoomBlocker(){this._map&&!this._alertContainer&&(this._alertContainer=n(\"div\",\"mapboxgl-scroll-zoom-blocker\",this._map._container),this._alertContainer.textContent=/(Mac|iPad)/i.test(e.window.navigator.userAgent)?this._map._getUIString(\"ScrollZoomBlocker.CmdMessage\"):this._map._getUIString(\"ScrollZoomBlocker.CtrlMessage\"),this._alertContainer.style.fontSize=`${Math.max(10,Math.min(24,Math.floor(.05*this._el.clientWidth)))}px`);}_showBlockerAlert(){this._alertContainer.style.visibility=\"visible\",this._alertContainer.classList.add(\"mapboxgl-scroll-zoom-blocker-show\"),this._alertContainer.setAttribute(\"role\",\"alert\"),clearTimeout(this._alertTimer),this._alertTimer=setTimeout((()=>{this._alertContainer.classList.remove(\"mapboxgl-scroll-zoom-blocker-show\"),this._alertContainer.setAttribute(\"role\",\"null\");}),200);}}class Br{constructor(e,t){this._clickZoom=e,this._tapZoom=t;}enable(){this._clickZoom.enable(),this._tapZoom.enable();}disable(){this._clickZoom.disable(),this._tapZoom.disable();}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class kr{constructor(){this.reset();}reset(){this._active=!1;}blur(){this.reset();}dblclick(e,t){return e.preventDefault(),{cameraAnimation:i=>{i.easeTo({duration:300,zoom:i.getZoom()+(e.shiftKey?-1:1),around:i.unproject(t)},{originalEvent:e});}}}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}class Fr{constructor(){this._tap=new mr({numTouches:1,numTaps:1}),this.reset();}reset(){this._active=!1,this._swipePoint=void 0,this._swipeTouch=0,this._tapTime=0,this._tap.reset();}touchstart(e,t,i){this._swipePoint||(this._tapTime&&e.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?i.length>0&&(this._swipePoint=t[0],this._swipeTouch=i[0].identifier):this._tap.touchstart(e,t,i));}touchmove(e,t,i){if(this._tapTime){if(this._swipePoint){if(i[0].identifier!==this._swipeTouch)return;const o=t[0],r=o.y-this._swipePoint.y;return this._swipePoint=o,e.preventDefault(),this._active=!0,{zoomDelta:r/128}}}else this._tap.touchmove(e,t,i);}touchend(e,t,i){this._tapTime?this._swipePoint&&0===i.length&&this.reset():this._tap.touchend(e,t,i)&&(this._tapTime=e.timeStamp);}touchcancel(){this.reset();}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}class Ur{constructor(e,t,i){this._el=e,this._mousePan=t,this._touchPan=i;}enable(e){this._inertiaOptions=e||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add(\"mapboxgl-touch-drag-pan\");}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove(\"mapboxgl-touch-drag-pan\");}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Nr{constructor(e,t,i){this._pitchWithRotate=e.pitchWithRotate,this._mouseRotate=t,this._mousePitch=i;}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable();}disable(){this._mouseRotate.disable(),this._mousePitch.disable();}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class jr{constructor(e,t,i,o){this._el=e,this._touchZoom=t,this._touchRotate=i,this._tapDragZoom=o,this._rotationDisabled=!1,this._enabled=!0;}enable(e){this._touchZoom.enable(e),this._rotationDisabled||this._touchRotate.enable(e),this._tapDragZoom.enable(),this._el.classList.add(\"mapboxgl-touch-zoom-rotate\");}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove(\"mapboxgl-touch-zoom-rotate\");}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable();}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable();}}const Gr=e=>e.zoom||e.drag||e.pitch||e.rotate;class Zr extends e.Event{}class Vr{constructor(){this.constants=[1,1,.01],this.radius=0;}setup(t,i){const o=e.sub([],i,t);this.radius=e.length(o[2]<0?e.div([],o,this.constants):[o[0],o[1],0]);}projectRay(t){e.div(t,t,this.constants),e.normalize(t,t),e.mul$1(t,t,this.constants);const i=e.scale$2([],t,this.radius);if(i[2]>0){const t=e.scale$2([],[0,0,1],e.dot(i,[0,0,1])),o=e.scale$2([],e.normalize([],[i[0],i[1],0]),this.radius),r=e.add([],i,e.scale$2([],e.sub([],e.add([],o,t),i),2));i[0]=r[0],i[1]=r[1];}return i}}function Wr(e){return e.panDelta&&e.panDelta.mag()||e.zoomDelta||e.bearingDelta||e.pitchDelta}class Xr{constructor(t,i){this._map=t,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new rr(t),this._bearingSnap=i.bearingSnap,this._previousActiveHandlers={},this._trackingEllipsoid=new Vr,this._dragOrigin=null,this._eventsInProgress={},this._addDefaultHandlers(i),e.bindAll([\"handleEvent\",\"handleWindowEvent\"],this);const o=this._el;this._listeners=[[o,\"touchstart\",{passive:!0}],[o,\"touchmove\",{passive:!1}],[o,\"touchend\",void 0],[o,\"touchcancel\",void 0],[o,\"mousedown\",void 0],[o,\"mousemove\",void 0],[o,\"mouseup\",void 0],[e.window.document,\"mousemove\",{capture:!0}],[e.window.document,\"mouseup\",void 0],[o,\"mouseover\",void 0],[o,\"mouseout\",void 0],[o,\"dblclick\",void 0],[o,\"click\",void 0],[o,\"keydown\",{capture:!1}],[o,\"keyup\",void 0],[o,\"wheel\",{passive:!1}],[o,\"contextmenu\",void 0],[e.window,\"blur\",void 0]];for(const[t,i,o]of this._listeners)t.addEventListener(i,t===e.window.document?this.handleWindowEvent:this.handleEvent,o);}destroy(){for(const[t,i,o]of this._listeners)t.removeEventListener(i,t===e.window.document?this.handleWindowEvent:this.handleEvent,o);}_addDefaultHandlers(e){const t=this._map,i=t.getCanvasContainer();this._add(\"mapEvent\",new hr(t,e));const o=t.boxZoom=new _r(t,e);this._add(\"boxZoom\",o);const r=new fr,n=new kr;t.doubleClickZoom=new Br(n,r),this._add(\"tapZoom\",r),this._add(\"clickZoom\",n);const s=new Fr;this._add(\"tapDragZoom\",s);const a=t.touchPitch=new Dr(t);this._add(\"touchPitch\",a);const l=new yr(e),c=new br(e);t.dragRotate=new Nr(e,l,c),this._add(\"mouseRotate\",l,[\"mousePitch\"]),this._add(\"mousePitch\",c,[\"mouseRotate\"]);const h=new xr(e),u=new wr(t,e);t.dragPan=new Ur(i,h,u),this._add(\"mousePan\",h),this._add(\"touchPan\",u,[\"touchZoom\",\"touchRotate\"]);const _=new Pr,d=new Mr;t.touchZoomRotate=new jr(i,d,_,s),this._add(\"touchRotate\",_,[\"touchPan\",\"touchZoom\"]),this._add(\"touchZoom\",d,[\"touchPan\",\"touchRotate\"]),this._add(\"blockableMapEvent\",new ur(t));const p=t.scrollZoom=new Or(t,this);this._add(\"scrollZoom\",p,[\"mousePan\"]);const m=t.keyboard=new Ar;this._add(\"keyboard\",m);for(const i of [\"boxZoom\",\"doubleClickZoom\",\"tapDragZoom\",\"touchPitch\",\"dragRotate\",\"dragPan\",\"touchZoomRotate\",\"scrollZoom\",\"keyboard\"])e.interactive&&e[i]&&t[i].enable(e[i]);}_add(e,t,i){this._handlers.push({handlerName:e,handler:t,allowed:i}),this._handlersById[e]=t;}stop(e){if(!this._updatingCamera){for(const{handler:e}of this._handlers)e.reset();this._inertia.clear(),this._fireEvents({},{},e),this._changes=[];}}isActive(){for(const{handler:e}of this._handlers)if(e.isActive())return !0;return !1}isZooming(){return !!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return !!this._eventsInProgress.rotate}isMoving(){return !!Gr(this._eventsInProgress)||this.isZooming()}_isDragging(){return !!this._eventsInProgress.drag}_blockedByActive(e,t,i){for(const o in e)if(o!==i&&(!t||t.indexOf(o)<0))return !0;return !1}handleWindowEvent(e){this.handleEvent(e,`${e.type}Window`);}_getMapTouches(e){const t=[];for(const i of e)this._el.contains(i.target)&&t.push(i);return t}handleEvent(e,t){this._updatingCamera=!0;const i=\"renderFrame\"===e.type,o=i?void 0:e,r={needsRenderFrame:!1},n={},s={},a=e.touches?this._getMapTouches(e.touches):void 0,l=a?m(this._el,a):i?void 0:p(this._el,e);for(const{handlerName:i,handler:c,allowed:h}of this._handlers){if(!c.isEnabled())continue;let u;this._blockedByActive(s,h,i)?c.reset():c[t||e.type]&&(u=c[t||e.type](e,l,a),this.mergeHandlerResult(r,n,u,i,o),u&&u.needsRenderFrame&&this._triggerRenderFrame()),(u||c.isActive())&&(s[i]=c);}const c={};for(const e in this._previousActiveHandlers)s[e]||(c[e]=o);this._previousActiveHandlers=s,(Object.keys(c).length||Wr(r))&&(this._changes.push([r,n,c]),this._triggerRenderFrame()),(Object.keys(s).length||Wr(r))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:h}=r;h&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],h(this._map));}mergeHandlerResult(t,i,o,r,n){if(!o)return;e.extend(t,o);const s={handlerName:r,originalEvent:o.originalEvent||n};void 0!==o.zoomDelta&&(i.zoom=s),void 0!==o.panDelta&&(i.drag=s),void 0!==o.pitchDelta&&(i.pitch=s),void 0!==o.bearingDelta&&(i.rotate=s);}_applyChanges(){const t={},i={},o={};for(const[r,n,s]of this._changes)r.panDelta&&(t.panDelta=(t.panDelta||new e.Point(0,0))._add(r.panDelta)),r.zoomDelta&&(t.zoomDelta=(t.zoomDelta||0)+r.zoomDelta),r.bearingDelta&&(t.bearingDelta=(t.bearingDelta||0)+r.bearingDelta),r.pitchDelta&&(t.pitchDelta=(t.pitchDelta||0)+r.pitchDelta),void 0!==r.around&&(t.around=r.around),void 0!==r.aroundCoord&&(t.aroundCoord=r.aroundCoord),void 0!==r.pinchAround&&(t.pinchAround=r.pinchAround),r.noInertia&&(t.noInertia=r.noInertia),e.extend(i,n),e.extend(o,s);this._updateMapTransform(t,i,o),this._changes=[];}_updateMapTransform(t,i,o){const r=this._map,n=r.transform,s=e=>[e.x,e.y,e.z];if((e=>{const t=this._eventsInProgress.drag;return t&&!this._handlersById[t.handlerName].isActive()})()&&!Wr(t)){const e=n.zoom;n.cameraElevationReference=\"sea\",n.recenterOnTerrain(),n.cameraElevationReference=\"ground\",e!==n.zoom&&this._map._update(!0);}if(n._isCameraConstrained&&r._stop(!0),!Wr(t))return void this._fireEvents(i,o,!0);let{panDelta:a,zoomDelta:l,bearingDelta:c,pitchDelta:h,around:u,aroundCoord:_,pinchAround:d}=t;n._isCameraConstrained&&(l>0&&(l=0),n._isCameraConstrained=!1),void 0!==d&&(u=d),(l||(e=>i[e]&&!this._eventsInProgress[e])(\"drag\"))&&u&&(this._dragOrigin=s(n.pointCoordinate3D(u)),this._trackingEllipsoid.setup(n._camera.position,this._dragOrigin)),n.cameraElevationReference=\"sea\",r._stop(!0),u=u||r.transform.centerPoint,c&&(n.bearing+=c),h&&(n.pitch+=h),n._updateCameraState();const p=[0,0,0];if(a)if(\"mercator\"===n.projection.name){const e=this._trackingEllipsoid.projectRay(n.screenPointToMercatorRay(u).dir),t=this._trackingEllipsoid.projectRay(n.screenPointToMercatorRay(u.sub(a)).dir);p[0]=t[0]-e[0],p[1]=t[1]-e[1];}else {const t=n.pointCoordinate(u);if(\"globe\"===n.projection.name){a=a.rotate(-n.angle);const i=n._pixelsPerMercatorPixel/n.worldSize;p[0]=-a.x*e.mercatorScale(e.latFromMercatorY(t.y))*i,p[1]=-a.y*e.mercatorScale(n.center.lat)*i;}else {const e=n.pointCoordinate(u.sub(a));t&&e&&(p[0]=e.x-t.x,p[1]=e.y-t.y);}}const m=n.zoom,f=[0,0,0];if(l){const t=s(_||n.pointCoordinate3D(u)),i={dir:e.normalize([],e.sub([],t,n._camera.position))};if(i.dir[2]<0){const o=n.zoomDeltaToMovement(t,l);e.scale$2(f,i.dir,o);}}const g=e.add(p,p,f);n._translateCameraConstrained(g),l&&Math.abs(n.zoom-m)>1e-4&&n.recenterOnTerrain(),n.cameraElevationReference=\"ground\",this._map._update(),t.noInertia||this._inertia.record(t),this._fireEvents(i,o,!0);}_fireEvents(t,i,o){const r=Gr(this._eventsInProgress),n=Gr(t),s={};for(const e in t){const{originalEvent:i}=t[e];this._eventsInProgress[e]||(s[`${e}start`]=i),this._eventsInProgress[e]=t[e];}!r&&n&&this._fireEvent(\"movestart\",n.originalEvent);for(const e in s)this._fireEvent(e,s[e]);n&&this._fireEvent(\"move\",n.originalEvent);for(const e in t){const{originalEvent:i}=t[e];this._fireEvent(e,i);}const a={};let l;for(const e in this._eventsInProgress){const{handlerName:t,originalEvent:o}=this._eventsInProgress[e];this._handlersById[t].isActive()||(delete this._eventsInProgress[e],l=i[t]||o,a[`${e}end`]=l);}for(const e in a)this._fireEvent(e,a[e]);const c=Gr(this._eventsInProgress);if(o&&(r||n)&&!c){this._updatingCamera=!0;const t=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),i=e=>0!==e&&-this._bearingSnap{this._frameId=void 0,this.handleEvent(new Zr(\"renderFrame\",{timeStamp:e})),this._applyChanges();}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame());}}const qr=\"map.setFreeCameraOptions(...) and map.getFreeCameraOptions() are not yet supported for non-mercator projections.\";class $r extends e.Evented{constructor(t,i){super(),this._moving=!1,this._zooming=!1,this.transform=t,this._bearingSnap=i.bearingSnap,this._respectPrefersReducedMotion=!1!==i.respectPrefersReducedMotion,e.bindAll([\"_renderFrameCallback\"],this);}getCenter(){return new e.LngLat(this.transform.center.lng,this.transform.center.lat)}setCenter(e,t){return this.jumpTo({center:e},t)}panBy(t,i,o){return t=e.Point.convert(t).mult(-1),this.panTo(this.transform.center,e.extend({offset:t},i),o)}panTo(t,i,o){return this.easeTo(e.extend({center:t},i),o)}getZoom(){return this.transform.zoom}setZoom(e,t){return this.jumpTo({zoom:e},t),this}zoomTo(t,i,o){return this.easeTo(e.extend({zoom:t},i),o)}zoomIn(e,t){return this.zoomTo(this.getZoom()+1,e,t),this}zoomOut(e,t){return this.zoomTo(this.getZoom()-1,e,t),this}getBearing(){return this.transform.bearing}setBearing(e,t){return this.jumpTo({bearing:e},t),this}getPadding(){return this.transform.padding}setPadding(e,t){return this.jumpTo({padding:e},t),this}rotateTo(t,i,o){return this.easeTo(e.extend({bearing:t},i),o)}resetNorth(t,i){return this.rotateTo(0,e.extend({duration:1e3},t),i),this}resetNorthPitch(t,i){return this.easeTo(e.extend({bearing:0,pitch:0,duration:1e3},t),i),this}snapToNorth(e,t){return Math.abs(this.getBearing())e.aspect?i/(2*Math.tan(.5*e.fovX)*e.aspect):o/(2*Math.tan(.5*e.fovY)*e.aspect)}_cameraForBoundsOnGlobe(t,i,o,r,n,s){const a=t.clone(),l=this._extendCameraOptions(s);a.bearing=r,a.pitch=n;const c=e.LngLat.convert(i),h=e.LngLat.convert(o),u=.5*(c.lat+h.lat),_=.5*(c.lng+h.lng),d=e.latLngToECEF(u,_),p=e.normalize([],d),m=e.normalize([],e.cross([],p,[0,1,0])),f=e.cross([],m,p),g=[m[0],m[1],m[2],0,f[0],f[1],f[2],0,p[0],p[1],p[2],0,0,0,0,1],v=[d,e.latLngToECEF(c.lat,c.lng),e.latLngToECEF(h.lat,c.lng),e.latLngToECEF(h.lat,h.lng),e.latLngToECEF(c.lat,h.lng),e.latLngToECEF(u,c.lng),e.latLngToECEF(u,h.lng),e.latLngToECEF(c.lat,_),e.latLngToECEF(h.lat,_)];let x=e.Aabb.fromPoints(v.map((t=>[e.dot(m,t),e.dot(f,t),e.dot(p,t)])));const y=e.transformMat4([],x.center,g);0===e.squaredLength(y)&&e.set(y,0,0,1),e.normalize(y,y),e.scale$2(y,y,e.GLOBE_RADIUS),a.center=e.ecefToLatLng(y);const b=a.getWorldToCameraMatrix(),w=e.invert(new Float64Array(16),b);x=e.Aabb.applyTransform(x,e.multiply([],b,g)),e.transformMat4(y,y,b);const T=.5*(x.max[2]-x.min[2]),E=this._minimumAABBFrustumDistance(a,x),C=e.scale$2([],[0,0,1],T),M=e.add(C,y,C),I=E+(0===a.pitch?0:e.distance(y,M)),P=a.globeCenterInViewSpace,S=e.sub([],y,[P[0],P[1],P[2]]);e.normalize(S,S),e.scale$2(S,S,I);const D=e.add([],y,S);e.transformMat4(D,D,w);const L=e.earthRadius/e.GLOBE_RADIUS,A=e.length(D),z=e.mercatorZfromAltitude(Math.max(A*L-e.earthRadius,Number.EPSILON),0),R=Math.min(a.zoomFromMercatorZAdjusted(z),l.maxZoom);return R>.5*(e.GLOBE_ZOOM_THRESHOLD_MIN+e.GLOBE_ZOOM_THRESHOLD_MAX)?(a.setProjection({name:\"mercator\"}),a.zoom=R,this._cameraForBounds(a,i,o,r,n,s)):{center:a.center,zoom:R,bearing:r,pitch:n}}queryTerrainElevation(t,i){const o=this.transform.elevation;return o?(i=e.extend({},{exaggerated:!0},i),o.getAtPoint(e.MercatorCoordinate.fromLngLat(t),null,i.exaggerated)):null}_cameraForBounds(t,i,o,r,n,s){if(\"globe\"===t.projection.name)return this._cameraForBoundsOnGlobe(t,i,o,r,n,s);const a=t.clone(),l=this._extendCameraOptions(s),c=a.padding;a.bearing=r,a.pitch=n;const h=e.LngLat.convert(i),u=e.LngLat.convert(o),_=new e.LngLat(h.lng,u.lat),d=new e.LngLat(u.lng,h.lat),p=a.project(h),m=a.project(u),f=this.queryTerrainElevation(h),g=this.queryTerrainElevation(u),v=this.queryTerrainElevation(_),x=this.queryTerrainElevation(d),y=[[p.x,p.y,Math.min(f||0,g||0,v||0,x||0)],[m.x,m.y,Math.max(f||0,g||0,v||0,x||0)]];let b=e.Aabb.fromPoints(y);const w=a.getWorldToCameraMatrix(),T=e.invert(new Float64Array(16),w);b=e.Aabb.applyTransform(b,w);const E=e.sub([],b.max,b.min),C=c.left||0,M=c.right||0,I=c.bottom||0,P=c.top||0,{left:S,right:D,top:L,bottom:A}=l.padding,z=.5*(C+M),R=.5*(P+I),O=Math.min(a.scaleZoom(a.scale*Math.min((a.width-(C+M+S+D))/E[0],(a.height-(I+P+A+L))/E[1])),l.maxZoom),B=a.scale/a.zoomScale(O);b=new e.Aabb([b.min[0]-(S+z)*B,b.min[1]-(A+R)*B,b.min[2]],[b.max[0]+(D+z)*B,b.max[1]+(L+R)*B,b.max[2]]);const k=.5*E[2],F=this._minimumAABBFrustumDistance(a,b),U=[0,0,1,0];e.transformMat4$1(U,U,w),e.normalize$2(U,U);const N=e.scale$2([],U,F+k),j=e.add([],b.center,N),G=(\"number\"==typeof l.offset.x&&\"number\"==typeof l.offset.y?new e.Point(l.offset.x,l.offset.y):e.Point.convert(l.offset)).rotate(-e.degToRad(r));b.center[0]-=G.x*B,b.center[1]+=G.y*B,e.transformMat4(b.center,b.center,T),e.transformMat4(j,j,T);const Z=[b.center[0],b.center[1],j[2]*a.pixelsPerMeter];e.scale$2(Z,Z,1/a.worldSize);const V=e.lngFromMercatorX(Z[0]),W=e.latFromMercatorY(Z[1]),X=Math.min(a._zoomFromMercatorZ(Z[2]),l.maxZoom),q=new e.LngLat(V,W);return a.mercatorFromTransition&&X<.5*(e.GLOBE_ZOOM_THRESHOLD_MIN+e.GLOBE_ZOOM_THRESHOLD_MAX)?(a.setProjection({name:\"globe\"}),a.zoom=X,this._cameraForBounds(a,i,o,r,n,s)):{center:q,zoom:X,bearing:r,pitch:n}}fitBounds(e,t,i){const o=this.cameraForBounds(e,t);return this._fitInternal(o,t,i)}fitScreenCoordinates(t,i,o,r,n){const s=e.Point.convert(t),a=e.Point.convert(i),l=new e.Point(Math.min(s.x,a.x),Math.min(s.y,a.y)),c=new e.Point(Math.max(s.x,a.x),Math.max(s.y,a.y));if(\"mercator\"===this.transform.projection.name&&this.transform.anyCornerOffEdge(s,a))return this;const h=this.transform.pointLocation3D(l),u=this.transform.pointLocation3D(c),_=this.transform.pointLocation3D(new e.Point(l.x,c.y)),d=this.transform.pointLocation3D(new e.Point(c.x,l.y)),p=[Math.min(h.lng,u.lng,_.lng,d.lng),Math.min(h.lat,u.lat,_.lat,d.lat)],m=[Math.max(h.lng,u.lng,_.lng,d.lng),Math.max(h.lat,u.lat,_.lat,d.lat)],f=r&&r.pitch?r.pitch:this.getPitch(),g=this._cameraForBounds(this.transform,p,m,o,f,r);return this._fitInternal(g,r,n)}_fitInternal(t,i,o){return t?(delete(i=e.extend(t,i)).padding,i.linear?this.easeTo(i,o):this.flyTo(i,o)):this}jumpTo(t,i){this.stop();const o=t.preloadOnly?this.transform.clone():this.transform;let r=!1,n=!1,s=!1;return \"zoom\"in t&&o.zoom!==+t.zoom&&(r=!0,o.zoom=+t.zoom),void 0!==t.center&&(o.center=e.LngLat.convert(t.center)),\"bearing\"in t&&o.bearing!==+t.bearing&&(n=!0,o.bearing=+t.bearing),\"pitch\"in t&&o.pitch!==+t.pitch&&(s=!0,o.pitch=+t.pitch),null==t.padding||o.isPaddingEqual(t.padding)||(o.padding=t.padding),t.preloadOnly?(this._preloadTiles(o),this):(this.fire(new e.Event(\"movestart\",i)).fire(new e.Event(\"move\",i)),r&&this.fire(new e.Event(\"zoomstart\",i)).fire(new e.Event(\"zoom\",i)).fire(new e.Event(\"zoomend\",i)),n&&this.fire(new e.Event(\"rotatestart\",i)).fire(new e.Event(\"rotate\",i)).fire(new e.Event(\"rotateend\",i)),s&&this.fire(new e.Event(\"pitchstart\",i)).fire(new e.Event(\"pitch\",i)).fire(new e.Event(\"pitchend\",i)),this.fire(new e.Event(\"moveend\",i)))}getFreeCameraOptions(){return this.transform.projection.supportsFreeCamera||e.warnOnce(qr),this.transform.getFreeCameraOptions()}setFreeCameraOptions(t,i){const o=this.transform;if(!o.projection.supportsFreeCamera)return e.warnOnce(qr),this;this.stop();const r=o.zoom,n=o.pitch,s=o.bearing;o.setFreeCameraOptions(t);const a=r!==o.zoom,l=n!==o.pitch,c=s!==o.bearing;return this.fire(new e.Event(\"movestart\",i)).fire(new e.Event(\"move\",i)),a&&this.fire(new e.Event(\"zoomstart\",i)).fire(new e.Event(\"zoom\",i)).fire(new e.Event(\"zoomend\",i)),c&&this.fire(new e.Event(\"rotatestart\",i)).fire(new e.Event(\"rotate\",i)).fire(new e.Event(\"rotateend\",i)),l&&this.fire(new e.Event(\"pitchstart\",i)).fire(new e.Event(\"pitch\",i)).fire(new e.Event(\"pitchend\",i)),this.fire(new e.Event(\"moveend\",i)),this}easeTo(t,i){this._stop(!1,t.easeId),(!1===(t=e.extend({offset:[0,0],duration:500,easing:e.ease},t)).animate||this._prefersReducedMotion(t))&&(t.duration=0);const o=this.transform,r=this.getZoom(),n=this.getBearing(),s=this.getPitch(),a=this.getPadding(),l=\"zoom\"in t?+t.zoom:r,c=\"bearing\"in t?this._normalizeBearing(t.bearing,n):n,h=\"pitch\"in t?+t.pitch:s,u=\"padding\"in t?t.padding:o.padding,_=e.Point.convert(t.offset);let d,p,m;if(\"globe\"===o.projection.name){const i=e.MercatorCoordinate.fromLngLat(o.center),r=_.rotate(-o.angle);i.x+=r.x/o.worldSize,i.y+=r.y/o.worldSize;const n=i.toLngLat(),s=e.LngLat.convert(t.center||n);this._normalizeCenter(s),d=o.centerPoint.add(r),p=new e.Point(i.x,i.y).mult(o.worldSize),m=new e.Point(e.mercatorXfromLng(s.lng),e.mercatorYfromLat(s.lat)).mult(o.worldSize).sub(p);}else {d=o.centerPoint.add(_);const i=o.pointLocation(d),r=e.LngLat.convert(t.center||i);this._normalizeCenter(r),p=o.project(i),m=o.project(r).sub(p);}const f=o.zoomScale(l-r);let g,v;t.around&&(g=e.LngLat.convert(t.around),v=o.locationPoint(g));const x=this._zooming||l!==r,y=this._rotating||n!==c,b=this._pitching||h!==s,w=!o.isPaddingEqual(u),T=o=>T=>{if(x&&(o.zoom=e.number(r,l,T)),y&&(o.bearing=e.number(n,c,T)),b&&(o.pitch=e.number(s,h,T)),w&&(o.interpolatePadding(a,u,T),d=o.centerPoint.add(_)),g)o.setLocationAtPoint(g,v);else {const e=o.zoomScale(o.zoom-r),t=l>r?Math.min(2,f):Math.max(.5,f),i=Math.pow(t,1-T),n=o.unproject(p.add(m.mult(T*i)).mult(e));o.setLocationAtPoint(o.renderWorldCopies?n.wrap():n,d);}return t.preloadOnly||this._fireMoveEvents(i),o};if(t.preloadOnly){const e=this._emulate(T,t.duration,o);return this._preloadTiles(e),this}const E={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=x,this._rotating=y,this._pitching=b,this._padding=w,this._easeId=t.easeId,this._prepareEase(i,t.noMoveStart,E),this._ease(T(o),(e=>{o.recenterOnTerrain(),this._afterEase(i,e);}),t),this}_prepareEase(t,i,o={}){this._moving=!0,this.transform.cameraElevationReference=\"sea\",i||o.moving||this.fire(new e.Event(\"movestart\",t)),this._zooming&&!o.zooming&&this.fire(new e.Event(\"zoomstart\",t)),this._rotating&&!o.rotating&&this.fire(new e.Event(\"rotatestart\",t)),this._pitching&&!o.pitching&&this.fire(new e.Event(\"pitchstart\",t));}_fireMoveEvents(t){this.fire(new e.Event(\"move\",t)),this._zooming&&this.fire(new e.Event(\"zoom\",t)),this._rotating&&this.fire(new e.Event(\"rotate\",t)),this._pitching&&this.fire(new e.Event(\"pitch\",t));}_afterEase(t,i){if(this._easeId&&i&&this._easeId===i)return;this._easeId=void 0,this.transform.cameraElevationReference=\"ground\";const o=this._zooming,r=this._rotating,n=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,o&&this.fire(new e.Event(\"zoomend\",t)),r&&this.fire(new e.Event(\"rotateend\",t)),n&&this.fire(new e.Event(\"pitchend\",t)),this.fire(new e.Event(\"moveend\",t));}flyTo(t,i){if(this._prefersReducedMotion(t)){const o=e.pick(t,[\"center\",\"zoom\",\"bearing\",\"pitch\",\"around\"]);return this.jumpTo(o,i)}this.stop(),t=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},t);const o=this.transform,r=this.getZoom(),n=this.getBearing(),s=this.getPitch(),a=this.getPadding(),l=\"zoom\"in t?e.clamp(+t.zoom,o.minZoom,o.maxZoom):r,c=\"bearing\"in t?this._normalizeBearing(t.bearing,n):n,h=\"pitch\"in t?+t.pitch:s,u=\"padding\"in t?t.padding:o.padding,_=o.zoomScale(l-r),d=e.Point.convert(t.offset);let p=o.centerPoint.add(d);const m=o.pointLocation(p),f=e.LngLat.convert(t.center||m);this._normalizeCenter(f);const g=o.project(m),v=o.project(f).sub(g);let x=t.curve;const y=Math.max(o.width,o.height),b=y/_,w=v.mag();if(\"minZoom\"in t){const i=e.clamp(Math.min(t.minZoom,r,l),o.minZoom,o.maxZoom),n=y/o.zoomScale(i-r);x=Math.sqrt(n/w*2);}const T=x*x;function E(e){const t=(b*b-y*y+(e?-1:1)*T*T*w*w)/(2*(e?b:y)*T*w);return Math.log(Math.sqrt(t*t+1)-t)}function C(e){return (Math.exp(e)-Math.exp(-e))/2}function M(e){return (Math.exp(e)+Math.exp(-e))/2}const I=E(0);let P=function(e){return M(I)/M(I+x*e)},S=function(e){return y*((M(I)*(C(t=I+x*e)/M(t))-C(I))/T)/w;var t;},D=(E(1)-I)/x;if(Math.abs(w)<1e-6||!isFinite(D)){if(Math.abs(y-b)<1e-6)return this.easeTo(t,i);const e=bt.maxDuration&&(t.duration=0);const L=n!==c,A=h!==s,z=!o.isPaddingEqual(u),R=o=>_=>{const m=_*D,x=1/P(m);o.zoom=1===_?l:r+o.scaleZoom(x),L&&(o.bearing=e.number(n,c,_)),A&&(o.pitch=e.number(s,h,_)),z&&(o.interpolatePadding(a,u,_),p=o.centerPoint.add(d));const y=1===_?f:o.unproject(g.add(v.mult(S(m))).mult(x));return o.setLocationAtPoint(o.renderWorldCopies?y.wrap():y,p),o._updateCameraOnTerrain(),t.preloadOnly||this._fireMoveEvents(i),o};if(t.preloadOnly){const e=this._emulate(R,t.duration,o);return this._preloadTiles(e),this}return this._zooming=!0,this._rotating=L,this._pitching=A,this._padding=z,this._prepareEase(i,!1),this._ease(R(o),(()=>this._afterEase(i)),t),this}isEasing(){return !!this._easeFrameId}stop(){return this._stop()}_stop(e,t){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),this._easeFrameId=void 0,this._onEaseFrame=void 0),this._onEaseEnd){const e=this._onEaseEnd;this._onEaseEnd=void 0,e.call(this,t);}if(!e){const e=this.handlers;e&&e.stop(!1);}return this}_ease(t,i,o){!1===o.animate||0===o.duration?(t(1),i()):(this._easeStart=e.exported.now(),this._easeOptions=o,this._onEaseFrame=t,this._onEaseEnd=i,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback));}_renderFrameCallback(){const t=Math.min((e.exported.now()-this._easeStart)/this._easeOptions.duration,1),i=this._onEaseFrame;i&&i(this._easeOptions.easing(t)),t<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop();}_normalizeBearing(t,i){t=e.wrap(t,-180,180);const o=Math.abs(t-i);return Math.abs(t-360-i)180?-360:i<-180?360:0;}_prefersReducedMotion(t){return this._respectPrefersReducedMotion&&e.exported.prefersReducedMotion&&!(t&&t.essential)}_emulate(e,t,i){const o=Math.ceil(15*t/1e3),r=[],n=e(i.clone());for(let e=0;e<=o;e++){const t=n(e/o);r.push(t.clone());}return r}}class Hr{constructor(t={}){this.options=t,e.bindAll([\"_toggleAttribution\",\"_updateEditLink\",\"_updateData\",\"_updateCompact\"],this);}getDefaultPosition(){return \"bottom-right\"}onAdd(e){const t=this.options&&this.options.compact;return this._map=e,this._container=n(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-attrib\"),this._compactButton=n(\"button\",\"mapboxgl-ctrl-attrib-button\",this._container),n(\"span\",\"mapboxgl-ctrl-icon\",this._compactButton).setAttribute(\"aria-hidden\",\"true\"),this._compactButton.type=\"button\",this._compactButton.addEventListener(\"click\",this._toggleAttribution),this._setElementTitle(this._compactButton,\"ToggleAttribution\"),this._innerContainer=n(\"div\",\"mapboxgl-ctrl-attrib-inner\",this._container),this._innerContainer.setAttribute(\"role\",\"list\"),t&&this._container.classList.add(\"mapboxgl-compact\"),this._updateAttributions(),this._updateEditLink(),this._map.on(\"styledata\",this._updateData),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"moveend\",this._updateEditLink),void 0===t&&(this._map.on(\"resize\",this._updateCompact),this._updateCompact()),this._container}onRemove(){this._container.remove(),this._map.off(\"styledata\",this._updateData),this._map.off(\"sourcedata\",this._updateData),this._map.off(\"moveend\",this._updateEditLink),this._map.off(\"resize\",this._updateCompact),this._map=void 0,this._attribHTML=void 0;}_setElementTitle(e,t){const i=this._map._getUIString(`AttributionControl.${t}`);e.setAttribute(\"aria-label\",i),e.removeAttribute(\"title\"),e.firstElementChild&&e.firstElementChild.setAttribute(\"title\",i);}_toggleAttribution(){this._container.classList.contains(\"mapboxgl-compact-show\")?(this._container.classList.remove(\"mapboxgl-compact-show\"),this._compactButton.setAttribute(\"aria-expanded\",\"false\")):(this._container.classList.add(\"mapboxgl-compact-show\"),this._compactButton.setAttribute(\"aria-expanded\",\"true\"));}_updateEditLink(){let t=this._editLink;t||(t=this._editLink=this._container.querySelector(\".mapbox-improve-map\"));const i=[{key:\"owner\",value:this.styleOwner},{key:\"id\",value:this.styleId},{key:\"access_token\",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(t){const o=i.reduce(((e,t,o)=>(t.value&&(e+=`${t.key}=${t.value}${oe.length-t.length)),e=e.filter(((t,i)=>{for(let o=i+1;o=0)return !1;return !0})),this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?e=[...this.options.customAttribution,...e]:e.unshift(this.options.customAttribution));const i=e.join(\" | \");i!==this._attribHTML&&(this._attribHTML=i,e.length?(this._innerContainer.innerHTML=i,this._container.classList.remove(\"mapboxgl-attrib-empty\")):this._container.classList.add(\"mapboxgl-attrib-empty\"),this._editLink=null);}_updateCompact(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\",\"mapboxgl-compact-show\");}}class Yr{constructor(){e.bindAll([\"_updateLogo\",\"_updateCompact\"],this);}onAdd(e){this._map=e,this._container=n(\"div\",\"mapboxgl-ctrl\");const t=n(\"a\",\"mapboxgl-ctrl-logo\");return t.target=\"_blank\",t.rel=\"noopener nofollow\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",this._map._getUIString(\"LogoControl.Title\")),t.setAttribute(\"rel\",\"noopener nofollow\"),this._container.appendChild(t),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._map.on(\"resize\",this._updateCompact),this._updateCompact(),this._container}onRemove(){this._container.remove(),this._map.off(\"sourcedata\",this._updateLogo),this._map.off(\"resize\",this._updateCompact);}getDefaultPosition(){return \"bottom-left\"}_updateLogo(e){e&&\"metadata\"!==e.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\");}_logoRequired(){if(!this._map.style)return !0;const e=this._map.style._sourceCaches;if(0===Object.entries(e).length)return !0;for(const t in e){const i=e[t].getSource();if(i.hasOwnProperty(\"mapbox_logo\")&&!i.mapbox_logo)return !1}return !0}_updateCompact(){const e=this._container.children;if(e.length){const t=e[0];this._map.getCanvasContainer().offsetWidth<250?t.classList.add(\"mapboxgl-compact\"):t.classList.remove(\"mapboxgl-compact\");}}}class Kr{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1;}add(e){const t=++this._id;return this._queue.push({callback:e,id:t,cancelled:!1}),t}remove(e){const t=this._currentlyRunning,i=t?this._queue.concat(t):this._queue;for(const t of i)if(t.id===e)return void(t.cancelled=!0)}run(e=0){const t=this._currentlyRunning=this._queue;this._queue=[];for(const i of t)if(!i.cancelled&&(i.callback(e),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1;}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[];}}function Jr(t,i,o){if(t=new e.LngLat(t.lng,t.lat),i){const r=new e.LngLat(t.lng-360,t.lat),n=new e.LngLat(t.lng+360,t.lat),s=360*Math.ceil(Math.abs(t.lng-o.center.lng)/360),a=o.locationPoint(t).distSqr(i),l=i.x<0||i.y<0||i.x>o.width||i.y>o.height;o.locationPoint(r).distSqr(i)180;){const e=o.locationPoint(t);if(e.x>=0&&e.y>=0&&e.x<=o.width&&e.y<=o.height)break;t.lng>o.center.lng?t.lng-=360:t.lng+=360;}return t}const Qr={center:\"translate(-50%,-50%)\",top:\"translate(-50%,0)\",\"top-left\":\"translate(0,0)\",\"top-right\":\"translate(-100%,0)\",bottom:\"translate(-50%,-100%)\",\"bottom-left\":\"translate(0,-100%)\",\"bottom-right\":\"translate(-100%,-100%)\",left:\"translate(0,-50%)\",right:\"translate(-100%,-50%)\"};class en extends e.Evented{constructor(t,i){if(super(),(t instanceof e.window.HTMLElement||i)&&(t=e.extend({element:t},i)),e.bindAll([\"_update\",\"_onMove\",\"_onUp\",\"_addDragHandler\",\"_onMapClick\",\"_onKeyPress\",\"_clearFadeTimer\"],this),this._anchor=t&&t.anchor||\"center\",this._color=t&&t.color||\"#3FB1CE\",this._scale=t&&t.scale||1,this._draggable=t&&t.draggable||!1,this._clickTolerance=t&&t.clickTolerance||0,this._isDragging=!1,this._state=\"inactive\",this._rotation=t&&t.rotation||0,this._rotationAlignment=t&&t.rotationAlignment||\"auto\",this._pitchAlignment=t&&t.pitchAlignment&&t.pitchAlignment||\"auto\",this._updateMoving=()=>this._update(!0),this._occludedOpacity=t&&t.occludedOpacity||.2,t&&t.element)this._element=t.element,this._offset=e.Point.convert(t&&t.offset||[0,0]);else {this._defaultMarker=!0,this._element=n(\"div\");const i=41,o=27,r=s(\"svg\",{display:\"block\",height:i*this._scale+\"px\",width:o*this._scale+\"px\",viewBox:`0 0 ${o} ${i}`},this._element),a=s(\"radialGradient\",{id:\"shadowGradient\"},s(\"defs\",{},r));s(\"stop\",{offset:\"10%\",\"stop-opacity\":.4},a),s(\"stop\",{offset:\"100%\",\"stop-opacity\":.05},a),s(\"ellipse\",{cx:13.5,cy:34.8,rx:10.5,ry:5.25,fill:\"url(#shadowGradient)\"},r),s(\"path\",{fill:this._color,d:\"M27,13.5C27,19.07 20.25,27 14.75,34.5C14.02,35.5 12.98,35.5 12.25,34.5C6.75,27 0,19.22 0,13.5C0,6.04 6.04,0 13.5,0C20.96,0 27,6.04 27,13.5Z\"},r),s(\"path\",{opacity:.25,d:\"M13.5,0C6.04,0 0,6.04 0,13.5C0,19.22 6.75,27 12.25,34.5C13,35.52 14.02,35.5 14.75,34.5C20.25,27 27,19.07 27,13.5C27,6.04 20.96,0 13.5,0ZM13.5,1C20.42,1 26,6.58 26,13.5C26,15.9 24.5,19.18 22.22,22.74C19.95,26.3 16.71,30.14 13.94,33.91C13.74,34.18 13.61,34.32 13.5,34.44C13.39,34.32 13.26,34.18 13.06,33.91C10.28,30.13 7.41,26.31 5.02,22.77C2.62,19.23 1,15.95 1,13.5C1,6.58 6.58,1 13.5,1Z\"},r),s(\"circle\",{fill:\"white\",cx:13.5,cy:13.5,r:5.5},r),this._offset=e.Point.convert(t&&t.offset||[0,-14]);}this._element.hasAttribute(\"aria-label\")||this._element.setAttribute(\"aria-label\",\"Map marker\"),this._element.classList.add(\"mapboxgl-marker\"),this._element.addEventListener(\"dragstart\",(e=>{e.preventDefault();})),this._element.addEventListener(\"mousedown\",(e=>{e.preventDefault();}));const o=this._element.classList;for(const e in Qr)o.remove(`mapboxgl-marker-anchor-${e}`);o.add(`mapboxgl-marker-anchor-${this._anchor}`),this._popup=null;}addTo(e){return e===this._map||(this.remove(),this._map=e,e.getCanvasContainer().appendChild(this._element),e.on(\"move\",this._updateMoving),e.on(\"moveend\",this._update),e.on(\"remove\",this._clearFadeTimer),e._addMarker(this),this.setDraggable(this._draggable),this._update(),e.on(\"click\",this._onMapClick)),this}remove(){const e=this._map;return e&&(e.off(\"click\",this._onMapClick),e.off(\"move\",this._updateMoving),e.off(\"moveend\",this._update),e.off(\"mousedown\",this._addDragHandler),e.off(\"touchstart\",this._addDragHandler),e.off(\"mouseup\",this._onUp),e.off(\"touchend\",this._onUp),e.off(\"mousemove\",this._onMove),e.off(\"touchmove\",this._onMove),e.off(\"remove\",this._clearFadeTimer),e._removeMarker(this),this._map=void 0),this._clearFadeTimer(),this._element.remove(),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(t){return this._lngLat=e.LngLat.convert(t),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(!0),this}getElement(){return this._element}setPopup(e){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeAttribute(\"role\"),this._element.removeEventListener(\"keypress\",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute(\"tabindex\")),e){if(!(\"offset\"in e.options)){const t=38.1,i=13.5,o=Math.sqrt(Math.pow(i,2)/2);e.options.offset=this._defaultMarker?{top:[0,0],\"top-left\":[0,0],\"top-right\":[0,0],bottom:[0,-t],\"bottom-left\":[o,-1*(t-i+o)],\"bottom-right\":[-o,-1*(t-i+o)],left:[i,-1*(t-i)],right:[-i,-1*(t-i)]}:this._offset;}this._popup=e,e._marker=this,this._lngLat&&this._popup.setLngLat(this._lngLat),this._element.setAttribute(\"role\",\"button\"),this._originalTabIndex=this._element.getAttribute(\"tabindex\"),this._originalTabIndex||this._element.setAttribute(\"tabindex\",\"0\"),this._element.addEventListener(\"keypress\",this._onKeyPress),this._element.setAttribute(\"aria-expanded\",\"false\");}return this}_onKeyPress(e){const t=e.code,i=e.charCode||e.keyCode;\"Space\"!==t&&\"Enter\"!==t&&32!==i&&13!==i||this.togglePopup();}_onMapClick(e){const t=e.originalEvent.target,i=this._element;this._popup&&(t===i||i.contains(t))&&this.togglePopup();}getPopup(){return this._popup}togglePopup(){const e=this._popup;return e?(e.isOpen()?(e.remove(),this._element.setAttribute(\"aria-expanded\",\"false\")):this._map&&(e.addTo(this._map),this._element.setAttribute(\"aria-expanded\",\"true\")),this):this}_behindTerrain(){const e=this._map,t=this._pos;if(!e||!t)return !1;const i=e.unproject(t),o=e.getFreeCameraOptions();if(!o.position)return !1;const r=o.position.toLngLat();return r.distanceTo(i)<.9*r.distanceTo(this._lngLat)}_evaluateOpacity(){const t=this._map;if(!t)return;const i=this._pos;if(!i||i.x<0||i.x>t.transform.width||i.y<0||i.y>t.transform.height)return void this._clearFadeTimer();const o=t.unproject(i);let r;t._showingGlobe()&&e.isLngLatBehindGlobe(t.transform,this._lngLat)?r=0:(r=1-t._queryFogOpacity(o),t.transform._terrainEnabled()&&t.getTerrain()&&this._behindTerrain()&&(r*=this._occludedOpacity)),this._element.style.opacity=`${r}`,this._element.style.pointerEvents=r>0?\"auto\":\"none\",this._popup&&this._popup._setOpacity(r),this._fadeTimer=null;}_clearFadeTimer(){this._fadeTimer&&(clearTimeout(this._fadeTimer),this._fadeTimer=null);}_updateDOM(){const e=this._pos;if(!e||!this._map)return;const t=this._offset.mult(this._scale);this._element.style.transform=`\\n translate(${e.x}px,${e.y}px)\\n ${Qr[this._anchor]}\\n ${this._calculateXYTransform()} ${this._calculateZTransform()}\\n translate(${t.x}px,${t.y}px)\\n `;}_calculateXYTransform(){const t=this._pos,i=this._map,o=this.getPitchAlignment();if(!i||!t||\"map\"!==o)return \"\";if(!i._showingGlobe()){const e=i.getPitch();return e?`rotateX(${e}deg)`:\"\"}const r=e.radToDeg(e.globeTiltAtLngLat(i.transform,this._lngLat)),n=t.sub(e.globeCenterToScreenPoint(i.transform)),s=Math.abs(n.x)+Math.abs(n.y);if(0===s)return \"\";const a=r/s;return `rotateX(${-n.y*a}deg) rotateY(${n.x*a}deg)`}_calculateZTransform(){const t=this._pos,i=this._map;if(!i||!t)return \"\";let o=0;const r=this.getRotationAlignment();if(\"map\"===r)if(i._showingGlobe()){const t=i.project(new e.LngLat(this._lngLat.lng,this._lngLat.lat+.001)),r=i.project(new e.LngLat(this._lngLat.lng,this._lngLat.lat-.001)).sub(t);o=e.radToDeg(Math.atan2(r.y,r.x))-90;}else o=-i.getBearing();else if(\"horizon\"===r){const r=e.smoothstep(4,6,i.getZoom()),n=e.globeCenterToScreenPoint(i.transform);n.y+=r*i.transform.height;const s=t.sub(n),a=e.radToDeg(Math.atan2(s.y,s.x));o=(a>90?a-270:a+90)*(1-r);}return o+=this._rotation,o?`rotateZ(${o}deg)`:\"\"}_update(t){e.window.cancelAnimationFrame(this._updateFrameId);const i=this._map;i&&(i.transform.renderWorldCopies&&(this._lngLat=Jr(this._lngLat,this._pos,i.transform)),this._pos=i.project(this._lngLat),!0===t?this._updateFrameId=e.window.requestAnimationFrame((()=>{this._element&&this._pos&&this._anchor&&(this._pos=this._pos.round(),this._updateDOM());})):this._pos=this._pos.round(),i._requestDomTask((()=>{this._map&&(this._element&&this._pos&&this._anchor&&this._updateDOM(),(i._showingGlobe()||i.getTerrain()||i.getFog())&&!this._fadeTimer&&(this._fadeTimer=setTimeout(this._evaluateOpacity.bind(this),60)));})));}getOffset(){return this._offset}setOffset(t){return this._offset=e.Point.convert(t),this._update(),this}_onMove(t){const i=this._map;if(!i)return;const o=this._pointerdownPos,r=this._positionDelta;if(o&&r){if(!this._isDragging){const e=this._clickTolerance||i._clickTolerance;if(t.point.dist(o)=this._endTime)return this._end;const i=e.easeCubicInOut((t-this._startTime)/(this._endTime-this._startTime));return this._start*(1-i)+this._end*i}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,t,i){this._start=this.getValue(t),this._end=e,this._startTime=t,this._endTime=t+i;}}const sn={\"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\"},an={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,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,optimizeForTerrain:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,minTileCacheSize:null,maxTileCacheSize:null,localIdeographFontFamily:\"sans-serif\",localFontFamily:null,transformRequest:null,accessToken:null,fadeDuration:300,respectPrefersReducedMotion:!0,crossSourceCollisions:!0},ln={showCompass:!0,showZoom:!0,visualizePitch:!1};class cn{constructor(t,i,o=!1){this._clickTolerance=10,this.element=i,this.mouseRotate=new yr({clickTolerance:t.dragRotate._mouseRotate._clickTolerance}),this.map=t,o&&(this.mousePitch=new br({clickTolerance:t.dragRotate._mousePitch._clickTolerance})),e.bindAll([\"mousedown\",\"mousemove\",\"mouseup\",\"touchstart\",\"touchmove\",\"touchend\",\"reset\"],this),i.addEventListener(\"mousedown\",this.mousedown),i.addEventListener(\"touchstart\",this.touchstart,{passive:!1}),i.addEventListener(\"touchmove\",this.touchmove),i.addEventListener(\"touchend\",this.touchend),i.addEventListener(\"touchcancel\",this.reset);}down(e,t){this.mouseRotate.mousedown(e,t),this.mousePitch&&this.mousePitch.mousedown(e,t),h();}move(e,t){const i=this.map,o=this.mouseRotate.mousemoveWindow(e,t),r=o&&o.bearingDelta;if(r&&i.setBearing(i.getBearing()+r),this.mousePitch){const o=this.mousePitch.mousemoveWindow(e,t),r=o&&o.pitchDelta;r&&i.setPitch(i.getPitch()+r);}}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(){u(),e.window.removeEventListener(\"mousemove\",this.mousemove),e.window.removeEventListener(\"mouseup\",this.mouseup);}mousedown(t){this.down(e.extend({},t,{ctrlKey:!0,preventDefault:()=>t.preventDefault()}),p(this.element,t)),e.window.addEventListener(\"mousemove\",this.mousemove),e.window.addEventListener(\"mouseup\",this.mouseup);}mousemove(e){this.move(e,p(this.element,e));}mouseup(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp();}touchstart(e){1!==e.targetTouches.length?this.reset():(this._startPos=this._lastPos=m(this.element,e.targetTouches)[0],this.down({type:\"mousedown\",button:0,ctrlKey:!0,preventDefault:()=>e.preventDefault()},this._startPos));}touchmove(e){1!==e.targetTouches.length?this.reset():(this._lastPos=m(this.element,e.targetTouches)[0],this.move({preventDefault:()=>e.preventDefault()},this._lastPos));}touchend(e){0===e.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)t.maxZoom)throw new Error(\"maxZoom must be greater than or equal to minZoom\");if(null!=t.minPitch&&null!=t.maxPitch&&t.minPitch>t.maxPitch)throw new Error(\"maxPitch must be greater than or equal to minPitch\");if(null!=t.minPitch&&t.minPitch<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(null!=t.maxPitch&&t.maxPitch>85)throw new Error(\"maxPitch must be less than or equal to 85\");if(t.antialias&&e.isSafariWithAntialiasingBug(e.window)&&(t.antialias=!1,e.warnOnce(\"Antialiasing is disabled for this WebGL context to avoid browser bug: https://github.com/mapbox/mapbox-gl-js/issues/11609\")),super(new Ho(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._useWebGL2=t.useWebGL2,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._optimizeForTerrain=t.optimizeForTerrain,this._language=this._parseLanguage(t.language),this._worldview=t.worldview,this._renderTaskQueue=new Kr,this._domRenderTaskQueue=new Kr,this._controls=[],this._markers=[],this._popups=[],this._mapId=e.uniqueId(),this._locale=e.extend({},sn,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 nn(0),this._interactionRange=[1/0,-1/0],this._visibilityHidden=0,this._useExplicitProjection=!1,this._requestManager=new e.RequestManager(t.transformRequest,t.accessToken,t.testMode),this._silenceAuthErrors=!!t.testMode,\"string\"==typeof t.container){if(this._container=e.window.document.getElementById(t.container),!this._container)throw new Error(`Container '${t.container}' not found.`)}else {if(!(t.container instanceof e.window.HTMLElement))throw new Error(\"Invalid type: 'container' must be a String or HTMLElement.\");this._container=t.container;}if(this._container.childNodes.length>0&&e.warnOnce(\"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),e.bindAll([\"_onWindowOnline\",\"_onWindowResize\",\"_onVisibilityChange\",\"_onMapScroll\",\"_contextLost\",\"_contextRestored\"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error(\"Failed to initialize WebGL.\");this.on(\"move\",(()=>this._update(!1))),this.on(\"moveend\",(()=>this._update(!1))),this.on(\"zoom\",(()=>this._update(!0))),void 0!==e.window&&(e.window.addEventListener(\"online\",this._onWindowOnline,!1),e.window.addEventListener(\"resize\",this._onWindowResize,!1),e.window.addEventListener(\"orientationchange\",this._onWindowResize,!1),e.window.addEventListener(\"webkitfullscreenchange\",this._onWindowResize,!1),e.window.addEventListener(\"visibilitychange\",this._onVisibilityChange,!1)),this.handlers=new Xr(this,t),this._localFontFamily=t.localFontFamily,this._localIdeographFontFamily=t.localIdeographFontFamily,t.style&&this.setStyle(t.style,{localFontFamily:this._localFontFamily,localIdeographFontFamily:this._localIdeographFontFamily}),t.projection&&this.setProjection(t.projection),this._hash=t.hash&&new Ko(\"string\"==typeof t.hash&&t.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:t.center,zoom:t.zoom,bearing:t.bearing,pitch:t.pitch}),t.bounds&&(this.resize(),this.fitBounds(t.bounds,e.extend({},t.fitBoundsOptions,{duration:0})))),this.resize(),t.attributionControl&&this.addControl(new Hr({customAttribution:t.customAttribution})),this._logoControl=new Yr,this.addControl(this._logoControl,t.logoPosition),this.on(\"style.load\",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet);})),this.on(\"data\",(t=>{this._update(\"style\"===t.dataType),this.fire(new e.Event(`${t.dataType}data`,t));})),this.on(\"dataloading\",(t=>{this.fire(new e.Event(`${t.dataType}dataloading`,t));}));}_getMapId(){return this._mapId}addControl(t,i){if(void 0===i&&(i=t.getDefaultPosition?t.getDefaultPosition():\"top-right\"),!t||!t.onAdd)return this.fire(new e.ErrorEvent(new Error(\"Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.\")));const o=t.onAdd(this);this._controls.push(t);const r=this._controlPositions[i];return -1!==i.indexOf(\"bottom\")?r.insertBefore(o,r.firstChild):r.appendChild(o),this}removeControl(t){if(!t||!t.onRemove)return this.fire(new e.ErrorEvent(new Error(\"Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.\")));const i=this._controls.indexOf(t);return i>-1&&this._controls.splice(i,1),t.onRemove(this),this}hasControl(e){return this._controls.indexOf(e)>-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 i=!this._moving;return i&&this.fire(new e.Event(\"movestart\",t)).fire(new e.Event(\"move\",t)),this.fire(new e.Event(\"resize\",t)),i&&this.fire(new e.Event(\"moveend\",t)),this}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()||null}setMaxBounds(t){return this.transform.setMaxBounds(e.LngLatBounds.convert(t)),this._update()}setMinZoom(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t?this.setZoom(t):this.fire(new e.Event(\"zoomstart\")).fire(new e.Event(\"zoom\")).fire(new e.Event(\"zoomend\")),this;throw new Error(\"maxZoom must be greater than the current minZoom\")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=null==t?0:t)<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()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 e.Event(\"pitchstart\")).fire(new e.Event(\"pitch\")).fire(new e.Event(\"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(e){return this.transform.renderWorldCopies=e,this.transform.renderWorldCopies||this._forceMarkerAndPopupUpdate(!0),this._update()}getLanguage(){return this._language}_parseLanguage(t){return \"auto\"===t?e.window.navigator.language:Array.isArray(t)?0===t.length?void 0:t.map((t=>\"auto\"===t?e.window.navigator.language:t)):t}setLanguage(e){const t=this._parseLanguage(e);if(!this.style||t===this._language)return this;this._language=t,this.style._reloadSources();for(const e of this._controls)e._setLanguage&&e._setLanguage(this._language);return this}getWorldview(){return this._worldview}setWorldview(e){return this.style&&e!==this._worldview?(this._worldview=e,this.style._reloadSources(),this):this}getProjection(){return this.transform.mercatorFromTransition?{name:\"globe\",center:[0,0]}:this.transform.getProjection()}_showingGlobe(){return \"globe\"===this.transform.projection.name}setProjection(e){return this._lazyInitEmptyStyle(),e?\"string\"==typeof e&&(e={name:e}):e=null,this._useExplicitProjection=!!e,this._prioritizeAndUpdateProjection(e,this.style.stylesheet?this.style.stylesheet.projection:null)}_updateProjectionTransition(){if(\"globe\"!==this.getProjection().name)return;const t=this.transform,i=t.projection.name;let o;\"globe\"===i&&t.zoom>=e.GLOBE_ZOOM_THRESHOLD_MAX?(t.setMercatorFromTransition(),o=!0):\"mercator\"===i&&t.zoom=e.GLOBE_ZOOM_THRESHOLD_MAX?this.transform.setMercatorFromTransition():this.transform.setProjection(t),this.style.applyProjectionUpdate(),i){this.painter.clearBackgroundTiles();for(const e in this.style._sourceCaches)this.style._sourceCaches[e].clearTiles();this._update(!0),this._forceMarkerAndPopupUpdate(!0);}return this}project(t){return this.transform.locationPoint3D(e.LngLat.convert(t))}unproject(t){return this.transform.pointLocation3D(e.Point.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(e,t,i){if(\"mouseenter\"===e||\"mouseover\"===e){let o=!1;const r=r=>{const n=t.filter((e=>this.getLayer(e))),s=n.length?this.queryRenderedFeatures(r.point,{layers:n}):[];s.length?o||(o=!0,i.call(this,new ar(e,this,r.originalEvent,{features:s}))):o=!1;},n=()=>{o=!1;};return {layers:new Set(t),listener:i,delegates:{mousemove:r,mouseout:n}}}if(\"mouseleave\"===e||\"mouseout\"===e){let o=!1;const r=r=>{const n=t.filter((e=>this.getLayer(e)));(n.length?this.queryRenderedFeatures(r.point,{layers:n}):[]).length?o=!0:o&&(o=!1,i.call(this,new ar(e,this,r.originalEvent)));},n=t=>{o&&(o=!1,i.call(this,new ar(e,this,t.originalEvent)));};return {layers:new Set(t),listener:i,delegates:{mousemove:r,mouseout:n}}}{const o=e=>{const o=t.filter((e=>this.getLayer(e))),r=o.length?this.queryRenderedFeatures(e.point,{layers:o}):[];r.length&&(e.features=r,i.call(this,e),delete e.features);};return {layers:new Set(t),listener:i,delegates:{[e]:o}}}}on(e,t,i){if(void 0===i)return super.on(e,t);Array.isArray(t)||(t=[t]);const o=this._createDelegatedListener(e,t,i);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(o);for(const e in o.delegates)this.on(e,o.delegates[e]);return this}once(e,t,i){if(void 0===i)return super.once(e,t);Array.isArray(t)||(t=[t]);const o=this._createDelegatedListener(e,t,i);for(const e in o.delegates)this.once(e,o.delegates[e]);return this}off(e,t,i){if(void 0===i)return super.off(e,t);t=new Set(Array.isArray(t)?t:[t]);const o=(e,t)=>{if(e.size!==t.size)return !1;for(const i of e)if(!t.has(i))return !1;return !0},r=this._delegatedListeners?this._delegatedListeners[e]:void 0;return r&&(e=>{for(let r=0;r{t?this.fire(new e.ErrorEvent(t)):o&&this._updateDiff(o,i);}));}else \"object\"==typeof t&&this._updateDiff(t,i);}_updateDiff(t,i){try{this.style.setState(t)&&this._update(!0);}catch(o){e.warnOnce(`Unable to perform style diff: ${o.message||o.error||o}. Rebuilding the style from scratch.`),this._updateStyle(t,i);}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():(e.warnOnce(\"There is no style added to the map.\"),!1)}addSource(e,t){return this._lazyInitEmptyStyle(),this.style.addSource(e,t),this._update(!0)}isSourceLoaded(e){return !!this.style&&this.style._isSourceCacheLoaded(e)}areTilesLoaded(){const e=this.style&&this.style._sourceCaches;for(const t in e){const i=e[t]._tiles;for(const e in i){const t=i[e];if(\"loaded\"!==t.state&&\"errored\"!==t.state)return !1}}return !0}addSourceType(e,t,i){this._lazyInitEmptyStyle(),this.style.addSourceType(e,t,i);}removeSource(e){return this.style.removeSource(e),this._updateTerrain(),this._update(!0)}getSource(e){return this.style.getSource(e)}addImage(t,i,{pixelRatio:o=1,sdf:r=!1,stretchX:n,stretchY:s,content:a}={}){if(this._lazyInitEmptyStyle(),i instanceof e.window.HTMLImageElement||e.window.ImageBitmap&&i instanceof e.window.ImageBitmap){const{width:l,height:c,data:h}=e.exported.getImageData(i);this.style.addImage(t,{data:new e.RGBAImage({width:l,height:c},h),pixelRatio:o,stretchX:n,stretchY:s,content:a,sdf:r,version:0});}else if(void 0===i.width||void 0===i.height)this.fire(new e.ErrorEvent(new Error(\"Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")));else {const{width:l,height:c}=i,h=i;this.style.addImage(t,{data:new e.RGBAImage({width:l,height:c},new Uint8Array(h.data)),pixelRatio:o,stretchX:n,stretchY:s,content:a,sdf:r,version:0,userImage:h}),h.onAdd&&h.onAdd(this,t);}}updateImage(t,i){const o=this.style.getImage(t);if(!o)return void this.fire(new e.ErrorEvent(new Error(\"The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.\")));const r=i instanceof e.window.HTMLImageElement||e.window.ImageBitmap&&i instanceof e.window.ImageBitmap?e.exported.getImageData(i):i,{width:n,height:s}=r;void 0!==n&&void 0!==s?n===o.data.width&&s===o.data.height?(o.data.replace(r.data,!(i instanceof e.window.HTMLImageElement||e.window.ImageBitmap&&i instanceof e.window.ImageBitmap)),this.style.updateImage(t,o)):this.fire(new e.ErrorEvent(new Error(`The width and height of the updated image (${n}, ${s})\\n must be that same as the previous version of the image\\n (${o.data.width}, ${o.data.height})`))):this.fire(new e.ErrorEvent(new Error(\"Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`\")));}hasImage(t){return t?!!this.style.getImage(t):(this.fire(new e.ErrorEvent(new Error(\"Missing required image id\"))),!1)}removeImage(e){this.style.removeImage(e);}loadImage(t,i){e.getImage(this._requestManager.transformRequest(t,e.ResourceType.Image),((t,o)=>{i(t,o instanceof e.window.HTMLImageElement?e.exported.getImageData(o):o);}));}listImages(){return this.style.listImages()}addLayer(e,t){return this._lazyInitEmptyStyle(),this.style.addLayer(e,t),this._update(!0)}moveLayer(e,t){return this.style.moveLayer(e,t),this._update(!0)}removeLayer(e){return this.style.removeLayer(e),this._update(!0)}getLayer(e){return this.style.getLayer(e)}setLayerZoomRange(e,t,i){return this.style.setLayerZoomRange(e,t,i),this._update(!0)}setFilter(e,t,i={}){return this.style.setFilter(e,t,i),this._update(!0)}getFilter(e){return this.style.getFilter(e)}setPaintProperty(e,t,i,o={}){return this.style.setPaintProperty(e,t,i,o),this._update(!0)}getPaintProperty(e,t){return this.style.getPaintProperty(e,t)}setLayoutProperty(e,t,i,o={}){return this.style.setLayoutProperty(e,t,i,o),this._update(!0)}getLayoutProperty(e,t){return this.style.getLayoutProperty(e,t)}setLight(e,t={}){return this._lazyInitEmptyStyle(),this.style.setLight(e,t),this._update(!0)}getLight(){return this.style.getLight()}setTerrain(e){return this._lazyInitEmptyStyle(),!e&&this.transform.projection.requiresDraping?this.style.setTerrainForDraping():this.style.setTerrain(e),this._averageElevationLastSampledAt=-1/0,this._update(!0)}getTerrain(){return this.style?this.style.getTerrain():null}setFog(e){return this._lazyInitEmptyStyle(),this.style.setFog(e),this._update(!0)}getFog(){return this.style?this.style.getFog():null}_queryFogOpacity(t){return this.style&&this.style.fog?this.style.fog.getOpacityAtLatLng(e.LngLat.convert(t),this.transform):0}setFeatureState(e,t){return this.style.setFeatureState(e,t),this._update()}removeFeatureState(e,t){return this.style.removeFeatureState(e,t),this._update()}getFeatureState(e){return this.style.getFeatureState(e)}_updateContainerDimensions(){if(!this._container)return;const t=this._container.getBoundingClientRect().width||400,i=this._container.getBoundingClientRect().height||300;let o,r,n,s=this._container;for(;s&&(!r||!n);){const t=e.window.getComputedStyle(s).transform;t&&\"none\"!==t&&(o=t.match(/matrix.*\\((.+)\\)/)[1].split(\", \"),o[0]&&\"0\"!==o[0]&&\"1\"!==o[0]&&(r=o[0]),o[3]&&\"0\"!==o[3]&&\"1\"!==o[3]&&(n=o[3])),s=s.parentElement;}this._containerWidth=r?Math.abs(t/r):t,this._containerHeight=n?Math.abs(i/n):i;}_detectMissingCSS(){\"rgb(250, 128, 114)\"!==e.window.getComputedStyle(this._missingCSSCanary).getPropertyValue(\"background-color\")&&e.warnOnce(\"This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.\");}_setupContainer(){const e=this._container;e.classList.add(\"mapboxgl-map\"),(this._missingCSSCanary=n(\"div\",\"mapboxgl-canary\",e)).style.visibility=\"hidden\",this._detectMissingCSS();const t=this._canvasContainer=n(\"div\",\"mapboxgl-canvas-container\",e);this._interactive&&t.classList.add(\"mapboxgl-interactive\"),this._canvas=n(\"canvas\",\"mapboxgl-canvas\",t),this._canvas.addEventListener(\"webglcontextlost\",this._contextLost,!1),this._canvas.addEventListener(\"webglcontextrestored\",this._contextRestored,!1),this._canvas.setAttribute(\"tabindex\",\"0\"),this._canvas.setAttribute(\"aria-label\",this._getUIString(\"Map.Title\")),this._canvas.setAttribute(\"role\",\"region\"),this._updateContainerDimensions(),this._resizeCanvas(this._containerWidth,this._containerHeight);const i=this._controlContainer=n(\"div\",\"mapboxgl-control-container\",e),o=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach((e=>{o[e]=n(\"div\",`mapboxgl-ctrl-${e}`,i);})),this._container.addEventListener(\"scroll\",this._onMapScroll,!1);}_resizeCanvas(t,i){const o=e.exported.devicePixelRatio||1;this._canvas.width=o*Math.ceil(t),this._canvas.height=o*Math.ceil(i),this._canvas.style.width=`${t}px`,this._canvas.style.height=`${i}px`;}_addMarker(e){this._markers.push(e);}_removeMarker(e){const t=this._markers.indexOf(e);-1!==t&&this._markers.splice(t,1);}_addPopup(e){this._popups.push(e);}_removePopup(e){const t=this._popups.indexOf(e);-1!==t&&this._popups.splice(t,1);}_setupPainter(){const t=e.extend({},i.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),o=this._useWebGL2&&this._canvas.getContext(\"webgl2\",t),r=o||this._canvas.getContext(\"webgl\",t)||this._canvas.getContext(\"experimental-webgl\",t);r?(this._useWebGL2&&!o&&e.warnOnce(\"Failed to create WebGL 2 context. Using WebGL 1.\"),e.storeAuthState(r,!0),this.painter=new Bo(r,this.transform,!!o),this.on(\"data\",(e=>{\"source\"===e.dataType&&this.painter.setTileLoadedFlag(!0);})),e.exported$1.testSupport(r)):this.fire(new e.ErrorEvent(new Error(\"Failed to initialize WebGL\")));}_contextLost(t){t.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new e.Event(\"webglcontextlost\",{originalEvent:t}));}_contextRestored(t){this._setupPainter(),this.resize(),this._update(),this.fire(new e.Event(\"webglcontextrestored\",{originalEvent:t}));}_onMapScroll(e){if(e.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(e){return this.style?(this._styleDirty=this._styleDirty||e,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(e){return this._update(),this._renderTaskQueue.add(e)}_cancelRenderFrame(e){this._renderTaskQueue.remove(e);}_requestDomTask(e){!this.loaded()||this.loaded()&&!this.isMoving()?e():this._domRenderTaskQueue.add(e);}_render(t){let i;const o=this.painter.context.extTimerQuery,r=e.exported.now();if(this.listens(\"gpu-timing-frame\")&&(i=o.createQueryEXT(),o.beginQueryEXT(o.TIME_ELAPSED_EXT,i)),this.painter.context.setDirty(),this.painter.setBaseState(),(this.isMoving()||this.isRotating()||this.isZooming())&&(this._interactionRange[0]=Math.min(this._interactionRange[0],e.window.performance.now()),this._interactionRange[1]=Math.max(this._interactionRange[1],e.window.performance.now())),this._renderTaskQueue.run(t),this._domRenderTaskQueue.run(t),this._removed)return;this._updateProjectionTransition();const n=this._isInitialLoad?0:this._fadeDuration;if(this.style&&this._styleDirty){this._styleDirty=!1;const t=this.transform.zoom,i=this.transform.pitch,o=e.exported.now(),r=new e.EvaluationParameters(t,{now:o,fadeDuration:n,pitch:i,transition:this.style.getTransition()});this.style.update(r);}this.style&&this.style.fog&&this.style.fog.hasTransition()&&(this.style._markersNeedUpdate=!0,this._sourcesDirty=!0);let s=!1;if(this.style&&this._sourcesDirty?(this._sourcesDirty=!1,this.painter._updateFog(this.style),this._updateTerrain(),s=this._updateAverageElevation(r),this.style._updateSources(this.transform),this._forceMarkerAndPopupUpdate()):s=this._updateAverageElevation(r),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,n,this._crossSourceCollisions),this.style&&this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showTerrainWireframe:this.showTerrainWireframe,showOverdrawInspector:this._showOverdrawInspector,showQueryGeometry:!!this._showQueryGeometry,showTileAABBs:this.showTileAABBs,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:n,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 e.Event(\"render\")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new e.Event(\"load\"))),this.style&&this.style.hasTransitions()&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),i){const t=e.exported.now()-r;o.endQueryEXT(o.TIME_ELAPSED_EXT,i),setTimeout((()=>{const n=o.getQueryObjectEXT(i,o.QUERY_RESULT_EXT)/1e6;o.deleteQueryEXT(i),this.fire(new e.Event(\"gpu-timing-frame\",{cpuTime:t,gpuTime:n})),e.window.performance.mark(\"frame-gpu\",{startTime:r,detail:{gpuTime:n}});}),50);}if(this.listens(\"gpu-timing-layer\")){const t=this.painter.collectGpuTimers();setTimeout((()=>{const i=this.painter.queryGpuTimers(t);this.fire(new e.Event(\"gpu-timing-layer\",{layerTimes:i}));}),50);}if(this.listens(\"gpu-timing-deferred-render\")){const t=this.painter.collectDeferredRenderGpuQueries();setTimeout((()=>{const i=this.painter.queryGpuTimeDeferredRender(t);this.fire(new e.Event(\"gpu-timing-deferred-render\",{gpuTime:i}));}),50);}const a=this._sourcesDirty||this._styleDirty||this._placementDirty||s;if(a||this._repaint)this.triggerRepaint();else {const t=!this.isMoving()&&this.loaded();if(t&&(s=this._updateAverageElevation(r,!0)),s)this.triggerRepaint();else if(this._triggerFrame(!1),t&&(this.fire(new e.Event(\"idle\")),this._isInitialLoad=!1,this.speedIndexTiming)){const t=this._calculateSpeedIndex();this.fire(new e.Event(\"speedindexcompleted\",{speedIndex:t})),this.speedIndexTiming=!1;}}!this._loaded||this._fullyLoaded||a||(this._fullyLoaded=!0,e.LivePerformanceUtils.mark(e.PerformanceMarkers.fullLoad),this._performanceMetricsCollection&&e.postPerformanceEvent(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(e){for(const t of this._markers)e&&!this.getRenderWorldCopies()&&(t._lngLat=t._lngLat.wrap()),t._update();for(const t of this._popups)!e||this.getRenderWorldCopies()||t._trackPointer||(t._lngLat=t._lngLat.wrap()),t._update();}_updateAverageElevation(e,t=!1){const i=e=>(this.transform.averageElevation=e,this._update(!1),!0);if(!this.painter.averageElevationNeedsEasing())return 0!==this.transform.averageElevation&&i(0);if((t||e-this._averageElevationLastSampledAt>500)&&!this._averageElevation.isEasing(e)){const t=this.transform.averageElevation;let o=this.transform.sampleAverageElevation(),r=!1;this.transform.elevation&&(r=this.transform.elevation.exaggeration()!==this._averageElevationExaggeration,this._averageElevationExaggeration=this.transform.elevation.exaggeration()),isNaN(o)?o=0:this._averageElevationLastSampledAt=e;const n=Math.abs(t-o);if(n>1){if(this._isInitialLoad||r)return this._averageElevation.jumpTo(o),i(o);this._averageElevation.easeTo(o,e,300);}else if(n>1e-4)return this._averageElevation.jumpTo(o),i(o)}return !!this._averageElevation.isEasing(e)&&i(this._averageElevation.getValue(e))}_authenticate(){e.getMapSessionAPI(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(t=>{if(t&&(t.message===e.AUTH_ERR_MSG||401===t.status)){const t=this.painter.context.gl;e.storeAuthState(t,!1),this._logoControl instanceof Yr&&this._logoControl._updateLogo(),t&&t.clear(t.DEPTH_BUFFER_BIT|t.COLOR_BUFFER_BIT|t.STENCIL_BUFFER_BIT),this._silenceAuthErrors||this.fire(new e.ErrorEvent(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/\")));}})),e.postMapLoadEvent(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(()=>{}));}_updateTerrain(){const e=this._isDragging();this.painter.updateTerrain(this.style,e);}_calculateSpeedIndex(){const e=this.painter.canvasCopy(),t=this.painter.getCanvasCopiesAndTimestamps();t.timeStamps.push(performance.now());const i=this.painter.context.gl,o=i.createFramebuffer();function r(e){i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,e,0);const t=new Uint8Array(i.drawingBufferWidth*i.drawingBufferHeight*4);return i.readPixels(0,0,i.drawingBufferWidth,i.drawingBufferHeight,i.RGBA,i.UNSIGNED_BYTE,t),t}return i.bindFramebuffer(i.FRAMEBUFFER,o),this._canvasPixelComparison(r(e),t.canvasCopies.map(r),t.timeStamps)}_canvasPixelComparison(e,t,i){let o=i[1]-i[0];const r=e.length/4;for(let n=0;n{const t=!!this._renderNextFrame;this._frame=null,this._renderNextFrame=null,t&&this._render(e);})));}_preloadTiles(t){const i=this.style?Object.values(this.style._sourceCaches):[];return e.asyncAll(i,((e,i)=>e._preloadTiles(t,i)),(()=>{this.triggerRepaint();})),this}_onWindowOnline(){this._update();}_onWindowResize(e){this._trackResize&&this.resize({originalEvent:e})._update();}_onVisibilityChange(){\"hidden\"===e.window.document.visibilityState&&this._visibilityHidden++;}get showTileBoundaries(){return !!this._showTileBoundaries}set showTileBoundaries(e){this._showTileBoundaries!==e&&(this._showTileBoundaries=e,this._update());}get showTerrainWireframe(){return !!this._showTerrainWireframe}set showTerrainWireframe(e){this._showTerrainWireframe!==e&&(this._showTerrainWireframe=e,this._update());}get speedIndexTiming(){return !!this._speedIndexTiming}set speedIndexTiming(e){this._speedIndexTiming!==e&&(this._speedIndexTiming=e,this._update());}get showPadding(){return !!this._showPadding}set showPadding(e){this._showPadding!==e&&(this._showPadding=e,this._update());}get showCollisionBoxes(){return !!this._showCollisionBoxes}set showCollisionBoxes(e){this._showCollisionBoxes!==e&&(this._showCollisionBoxes=e,e?this.style._generateCollisionBoxes():this._update());}get showOverdrawInspector(){return !!this._showOverdrawInspector}set showOverdrawInspector(e){this._showOverdrawInspector!==e&&(this._showOverdrawInspector=e,this._update());}get repaint(){return !!this._repaint}set repaint(e){this._repaint!==e&&(this._repaint=e,this.triggerRepaint());}get vertices(){return !!this._vertices}set vertices(e){this._vertices=e,this._update();}get showTileAABBs(){return !!this._showTileAABBs}set showTileAABBs(e){this._showTileAABBs!==e&&(this._showTileAABBs=e,e&&this._update());}_setCacheLimits(t,i){e.setCacheLimits(t,i);}get version(){return e.version}},NavigationControl:class{constructor(t){this.options=e.extend({},ln,t),this._container=n(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",(e=>e.preventDefault())),this.options.showZoom&&(e.bindAll([\"_setButtonTitle\",\"_updateZoomButtons\"],this),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-zoom-in\",(e=>{this._map&&this._map.zoomIn({},{originalEvent:e});})),n(\"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});})),n(\"span\",\"mapboxgl-ctrl-icon\",this._zoomOutButton).setAttribute(\"aria-hidden\",\"true\")),this.options.showCompass&&(e.bindAll([\"_rotateCompassArrow\"],this),this._compass=this._createButton(\"mapboxgl-ctrl-compass\",(e=>{const t=this._map;t&&(this.options.visualizePitch?t.resetNorthPitch({},{originalEvent:e}):t.resetNorth({},{originalEvent:e}));})),this._compassIcon=n(\"span\",\"mapboxgl-ctrl-icon\",this._compass),this._compassIcon.setAttribute(\"aria-hidden\",\"true\"));}_updateZoomButtons(){const e=this._map;if(!e)return;const t=e.getZoom(),i=t===e.getMaxZoom(),o=t===e.getMinZoom();this._zoomInButton.disabled=i,this._zoomOutButton.disabled=o,this._zoomInButton.setAttribute(\"aria-disabled\",i.toString()),this._zoomOutButton.setAttribute(\"aria-disabled\",o.toString());}_rotateCompassArrow(){const e=this._map;if(!e)return;const t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(e.transform.pitch*(Math.PI/180)),.5)}) rotateX(${e.transform.pitch}deg) rotateZ(${e.transform.angle*(180/Math.PI)}deg)`:`rotate(${e.transform.angle*(180/Math.PI)}deg)`;e._requestDomTask((()=>{this._compassIcon&&(this._compassIcon.style.transform=t);}));}onAdd(e){return this._map=e,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,\"ZoomIn\"),this._setButtonTitle(this._zoomOutButton,\"ZoomOut\"),e.on(\"zoom\",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,\"ResetBearing\"),this.options.visualizePitch&&e.on(\"pitch\",this._rotateCompassArrow),e.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new cn(e,this._compass,this.options.visualizePitch)),this._container}onRemove(){const e=this._map;e&&(this._container.remove(),this.options.showZoom&&e.off(\"zoom\",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&e.off(\"pitch\",this._rotateCompassArrow),e.off(\"rotate\",this._rotateCompassArrow),this._handler&&this._handler.off(),this._handler=void 0),this._map=void 0);}_createButton(e,t){const i=n(\"button\",e,this._container);return i.type=\"button\",i.addEventListener(\"click\",t),i}_setButtonTitle(e,t){if(!this._map)return;const i=this._map._getUIString(`NavigationControl.${t}`);e.setAttribute(\"aria-label\",i),e.firstElementChild&&e.firstElementChild.setAttribute(\"title\",i);}},GeolocateControl:class extends e.Evented{constructor(t){super(),this.options=e.extend({geolocation:e.window.navigator.geolocation},hn,t),e.bindAll([\"_onSuccess\",\"_onError\",\"_onZoom\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\",\"_updateMarkerRotation\",\"_onDeviceOrientation\"],this),this._updateMarkerRotationThrottled=Yo(this._updateMarkerRotation,20),this._numberOfWatches=0;}onAdd(e){return this._map=e,this._container=n(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._checkGeolocationSupport(this._setupUI),this._container}onRemove(){void 0!==this._geolocationWatchID&&(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 i=(e=!!this.options.geolocation)=>{this._supportsGeolocation=e,t(e);};void 0!==this._supportsGeolocation?t(this._supportsGeolocation):void 0!==e.window.navigator.permissions?e.window.navigator.permissions.query({name:\"geolocation\"}).then((e=>i(\"denied\"!==e.state))).catch((()=>i())):i();}_isOutOfMapMaxBounds(e){const t=this._map.getMaxBounds(),i=e.coords;return !!t&&(i.longitudet.getEast()||i.latitudet.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 e.Event(\"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&&\"OFF\"!==this._watchState&&this._updateMarker(t),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(t),this.options.showUserLocation&&this._dotElement.classList.remove(\"mapboxgl-user-location-dot-stale\"),this.fire(new e.Event(\"geolocate\",t)),this._finish();}}_updateCamera(t){const i=new e.LngLat(t.coords.longitude,t.coords.latitude),o=t.coords.accuracy,r=this._map.getBearing(),n=e.extend({bearing:r},this.options.fitBoundsOptions);this._map.fitBounds(i.toBounds(o),n,{geolocateSource:!0});}_updateMarker(t){if(t){const i=new e.LngLat(t.coords.longitude,t.coords.latitude);this._accuracyCircleMarker.setLngLat(i).addTo(this._map),this._userLocationDotMarker.setLngLat(i).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,i=e.mercatorZfromAltitude(1,t._center.lat)*t.worldSize,o=Math.ceil(2*this._accuracy*i);this._circleElement.style.width=`${o}px`,this._circleElement.style.height=`${o}px`;}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius();}_updateMarkerRotation(){this._userLocationDotMarker&&\"number\"==typeof this._heading?(this._userLocationDotMarker.setRotation(this._heading),this._dotElement.classList.add(\"mapboxgl-user-location-show-heading\")):(this._dotElement.classList.remove(\"mapboxgl-user-location-show-heading\"),this._userLocationDotMarker.setRotation(0));}_onError(t){if(this._map){if(this.options.trackUserLocation)if(1===t.code){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),void 0!==this._geolocationWatchID&&this._clearWatch();}else {if(3===t.code&&this._noTimeout)return;this._setErrorState();}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add(\"mapboxgl-user-location-dot-stale\"),this.fire(new e.Event(\"error\",t)),this._finish();}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0;}_setupUI(t){if(void 0!==this._map){if(this._container.addEventListener(\"contextmenu\",(e=>e.preventDefault())),this._geolocateButton=n(\"button\",\"mapboxgl-ctrl-geolocate\",this._container),n(\"span\",\"mapboxgl-ctrl-icon\",this._geolocateButton).setAttribute(\"aria-hidden\",\"true\"),this._geolocateButton.type=\"button\",!1===t){e.warnOnce(\"Geolocation support is not available so the GeolocateControl will be disabled.\");const t=this._map._getUIString(\"GeolocateControl.LocationNotAvailable\");this._geolocateButton.disabled=!0,this._geolocateButton.setAttribute(\"aria-label\",t),this._geolocateButton.firstElementChild&&this._geolocateButton.firstElementChild.setAttribute(\"title\",t);}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=n(\"div\",\"mapboxgl-user-location\"),this._dotElement.appendChild(n(\"div\",\"mapboxgl-user-location-dot\")),this._dotElement.appendChild(n(\"div\",\"mapboxgl-user-location-heading\")),this._userLocationDotMarker=new en({element:this._dotElement,rotationAlignment:\"map\",pitchAlignment:\"map\"}),this._circleElement=n(\"div\",\"mapboxgl-user-location-accuracy-circle\"),this._accuracyCircleMarker=new en({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\",(t=>{t.geolocateSource||\"ACTIVE_LOCK\"!==this._watchState||t.originalEvent&&\"resize\"===t.originalEvent.type||(this._watchState=\"BACKGROUND\",this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this.fire(new e.Event(\"trackuserlocationend\")));}));}}_onDeviceOrientation(e){this._userLocationDotMarker&&(e.webkitCompassHeading?this._heading=e.webkitCompassHeading:!0===e.absolute&&(this._heading=-1*e.alpha),this._updateMarkerRotationThrottled());}trigger(){if(!this._setup)return e.warnOnce(\"Geolocate control triggered before added to a map\"),!1;if(this.options.trackUserLocation){switch(this._watchState){case\"OFF\":this._watchState=\"WAITING_ACTIVE\",this.fire(new e.Event(\"trackuserlocationstart\"));break;case\"WAITING_ACTIVE\":case\"ACTIVE_LOCK\":case\"ACTIVE_ERROR\":case\"BACKGROUND_ERROR\":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 e.Event(\"trackuserlocationend\"));break;case\"BACKGROUND\":this._watchState=\"ACTIVE_LOCK\",this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-background\"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new e.Event(\"trackuserlocationstart\"));}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(\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let e;this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),this._numberOfWatches++,this._numberOfWatches>1?(e={maximumAge:6e5,timeout:0},this._noTimeout=!0):(e=this.options.positionOptions,this._noTimeout=!1),this._geolocationWatchID=this.options.geolocation.watchPosition(this._onSuccess,this._onError,e),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=()=>{e.window.addEventListener(\"ondeviceorientationabsolute\"in e.window?\"deviceorientationabsolute\":\"deviceorientation\",this._onDeviceOrientation);};void 0!==e.window.DeviceMotionEvent&&\"function\"==typeof e.window.DeviceMotionEvent.requestPermission?DeviceOrientationEvent.requestPermission().then((e=>{\"granted\"===e&&t();})).catch(console.error):t();}_clearWatch(){this.options.geolocation.clearWatch(this._geolocationWatchID),e.window.removeEventListener(\"deviceorientation\",this._onDeviceOrientation),e.window.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:Hr,ScaleControl:class{constructor(t){this.options=e.extend({},un,t),this._isNumberFormatSupported=function(){try{return new Intl.NumberFormat(\"en\",{style:\"unit\",unitDisplay:\"short\",unit:\"meter\"}),!0}catch(e){return !1}}(),e.bindAll([\"_update\",\"_setScale\",\"setUnit\"],this);}getDefaultPosition(){return \"bottom-left\"}_update(){const e=this.options.maxWidth||100,t=this._map,i=t._containerHeight/2,o=t._containerWidth/2-e/2,r=t.unproject([o,i]),n=t.unproject([o+e,i]),s=r.distanceTo(n);if(\"imperial\"===this.options.unit){const t=3.2808*s;t>5280?this._setScale(e,t/5280,\"mile\"):this._setScale(e,t,\"foot\");}else \"nautical\"===this.options.unit?this._setScale(e,s/1852,\"nautical-mile\"):s>=1e3?this._setScale(e,s/1e3,\"kilometer\"):this._setScale(e,s,\"meter\");}_setScale(e,t,i){this._map._requestDomTask((()=>{const o=function(e){const t=Math.pow(10,`${Math.floor(e)}`.length-1);let i=e/t;return i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:i>=1?1:function(e){const t=Math.pow(10,Math.ceil(-Math.log(e)/Math.LN10));return Math.round(e*t)/t}(i),t*i}(t),r=o/t;this._container.innerHTML=this._isNumberFormatSupported&&\"nautical-mile\"!==i?new Intl.NumberFormat(this._language,{style:\"unit\",unitDisplay:\"short\",unit:i}).format(o):`${o} ${_n[i]}`,this._container.style.width=e*r+\"px\";}));}onAdd(e){return this._map=e,this._language=e.getLanguage(),this._container=n(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",e.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(e){this._language=e,this._update();}setUnit(e){this.options.unit=e,this._update();}},FullscreenControl:class{constructor(t){this._fullscreen=!1,t&&t.container&&(t.container instanceof e.window.HTMLElement?this._container=t.container:e.warnOnce(\"Full screen control 'container' must be a DOM element.\")),e.bindAll([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in e.window.document?this._fullscreenchange=\"fullscreenchange\":\"onwebkitfullscreenchange\"in e.window.document&&(this._fullscreenchange=\"webkitfullscreenchange\");}onAdd(t){return this._map=t,this._container||(this._container=this._map.getContainer()),this._controlContainer=n(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display=\"none\",e.warnOnce(\"This device does not support fullscreen mode.\")),this._controlContainer}onRemove(){this._controlContainer.remove(),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon);}_checkFullscreenSupport(){return !(!e.window.document.fullscreenEnabled&&!e.window.document.webkitFullscreenEnabled)}_setupUI(){const t=this._fullscreenButton=n(\"button\",\"mapboxgl-ctrl-fullscreen\",this._controlContainer);n(\"span\",\"mapboxgl-ctrl-icon\",t).setAttribute(\"aria-hidden\",\"true\"),t.type=\"button\",this._updateTitle(),this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon);}_updateTitle(){const e=this._getTitle();this._fullscreenButton.setAttribute(\"aria-label\",e),this._fullscreenButton.firstElementChild&&this._fullscreenButton.firstElementChild.setAttribute(\"title\",e);}_getTitle(){return this._map._getUIString(this._isFullscreen()?\"FullscreenControl.Exit\":\"FullscreenControl.Enter\")}_isFullscreen(){return this._fullscreen}_changeIcon(){(e.window.document.fullscreenElement||e.window.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()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.webkitCancelFullScreen&&e.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen();}},Popup:class extends e.Evented{constructor(t){super(),this.options=e.extend(Object.create(tn),t),e.bindAll([\"_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 e.Event(\"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 e.Event(\"close\")),this}getLngLat(){return this._lngLat}setLngLat(t){this._lngLat=e.LngLat.convert(t),this._pos=null,this._trackPointer=!1,this._update();const i=this._map;return i&&(i.on(\"move\",this._update),i.off(\"mousemove\",this._onMouseEvent),i._canvasContainer.classList.remove(\"mapboxgl-track-pointer\")),this}trackPointer(){this._trackPointer=!0,this._pos=null,this._update();const e=this._map;return e&&(e.off(\"move\",this._update),e.on(\"mousemove\",this._onMouseEvent),e.on(\"drag\",this._onMouseEvent),e._canvasContainer.classList.add(\"mapboxgl-track-pointer\")),this}getElement(){return this._container}setText(t){return this.setDOMContent(e.window.document.createTextNode(t))}setHTML(t){const i=e.window.document.createDocumentFragment(),o=e.window.document.createElement(\"body\");let r;for(o.innerHTML=t;r=o.firstChild,r;)i.appendChild(r);return this.setDOMContent(i)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(e){return this.options.maxWidth=e,this._update(),this}setDOMContent(e){let t=this._content;if(t)for(;t.hasChildNodes();)t.firstChild&&t.removeChild(t.firstChild);else t=this._content=n(\"div\",\"mapboxgl-popup-content\",this._container||void 0);if(t.appendChild(e),this.options.closeButton){const e=this._closeButton=n(\"button\",\"mapboxgl-popup-close-button\",t);e.type=\"button\",e.setAttribute(\"aria-label\",\"Close popup\"),e.setAttribute(\"aria-hidden\",\"true\"),e.innerHTML=\"×\",e.addEventListener(\"click\",this._onClose);}return this._update(),this._focusFirstElement(),this}addClassName(e){return this._classList.add(e),this._updateClassList(),this}removeClassName(e){return this._classList.delete(e),this._updateClassList(),this}setOffset(e){return this.options.offset=e,this._update(),this}toggleClassName(e){let t;return this._classList.delete(e)?t=!1:(this._classList.add(e),t=!0),this._updateClassList(),t}_onMouseEvent(e){this._update(e.point);}_getAnchor(e){if(this.options.anchor)return this.options.anchor;const t=this._map,i=this._container,o=this._pos;if(!t||!i||!o)return \"bottom\";const r=i.offsetWidth,n=i.offsetHeight,s=o.xt.transform.width-r/2;if(o.y+et.transform.height-n){if(s)return \"bottom-left\";if(a)return \"bottom-right\"}return s?\"left\":a?\"right\":\"bottom\"}_updateClassList(){const e=this._container;if(!e)return;const t=[...this._classList];t.push(\"mapboxgl-popup\"),this._anchor&&t.push(`mapboxgl-popup-anchor-${this._anchor}`),this._trackPointer&&t.push(\"mapboxgl-popup-track-pointer\"),e.className=t.join(\" \");}_update(t){const i=this._map,o=this._content;if(!i||!this._lngLat&&!this._trackPointer||!o)return;let r=this._container;if(r||(r=this._container=n(\"div\",\"mapboxgl-popup\",i.getContainer()),this._tip=n(\"div\",\"mapboxgl-popup-tip\",r),r.appendChild(o)),this.options.maxWidth&&r.style.maxWidth!==this.options.maxWidth&&(r.style.maxWidth=this.options.maxWidth),i.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Jr(this._lngLat,this._pos,i.transform)),!this._trackPointer||t){const e=this._pos=this._trackPointer&&t?t:i.project(this._lngLat),o=rn(this.options.offset),r=this._anchor=this._getAnchor(o.y),n=rn(this.options.offset,r),s=e.add(n).round();i._requestDomTask((()=>{this._container&&r&&(this._container.style.transform=`${Qr[r]} translate(${s.x}px,${s.y}px)`);}));}if(!this._marker&&i._showingGlobe()){const t=e.isLngLatBehindGlobe(i.transform,this._lngLat)?0:1;this._setOpacity(t);}this._updateClassList();}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const e=this._container.querySelector(on);e&&e.focus();}_onClose(){this.remove();}_setOpacity(e){this._container&&(this._container.style.opacity=`${e}`),this._content&&(this._content.style.pointerEvents=e?\"auto\":\"none\");}},Marker:en,Style:Kt,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,FreeCameraOptions:jo,Evented:e.Evented,config:e.config,prewarm:function(){Ue().acquire(Be);},clearPrewarmedResources:function(){const e=Fe;e&&(e.isPreloaded()&&1===e.numActive()?(e.release(Be),Fe=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 e.config.ACCESS_TOKEN},set accessToken(t){e.config.ACCESS_TOKEN=t;},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(t){e.config.API_URL=t;},get workerCount(){return ke.workerCount},set workerCount(e){ke.workerCount=e;},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(t){e.config.MAX_PARALLEL_IMAGE_REQUESTS=t;},clearStorage(t){e.clearTileCache(t);},workerUrl:\"\",workerClass:null,setNow:e.exported.setNow,restoreNow:e.exported.restoreNow};return dn}));\n\n//\n// Our custom intro provides a specialized \"define()\" function, called by the\n// AMD modules below, that sets up the worker blob URL and then executes the\n// main module, storing its exported value as 'mapboxgl'\n\n\nvar mapboxgl$1 = mapboxgl;\n\nreturn mapboxgl$1;\n\n}));\n//# sourceMappingURL=mapbox-gl.js.map\n","/**\n * Create mapbox control container\n * @param {string} className\n */\nexport function controlContainer(className) {\n\tconst container = document.createElement('div');\n\tcontainer.classList.add('mapboxgl-ctrl', 'mapboxgl-ctrl-group', className);\n\treturn container;\n}\n\n/**\n * Create mapbox control button\n * @param {Object} options\n * @param {string=} options.title\n * @param {Node=} options.icon\n * @param {string=} options.textContent\n * @param {boolean=} options.disabled\n * @param {boolean=} options.hidden\n * @param {string=} options.className\n * @param {() => void=} options.onClick\n */\nexport function controlButton(options = {}) {\n\tconst button = document.createElement('button');\n\tbutton.type = 'button';\n\tif (options.title) {\n\t\tbutton.title = options.title;\n\t}\n\tif (options.icon) {\n\t\tbutton.appendChild(options.icon);\n\t}\n\tif (options.textContent) {\n\t\tbutton.textContent = options.textContent;\n\t}\n\tif (options.disabled) {\n\t\tbutton.disabled = true;\n\t}\n\tif (options.hidden) {\n\t\tbutton.hidden = true;\n\t}\n\tif (options.className) {\n\t\tbutton.classList.add(options.className);\n\t}\n\tif (options.onClick) {\n\t\tbutton.addEventListener('click', () => {\n\t\t\tif (!options.onClick) return;\n\t\t\toptions.onClick();\n\t\t});\n\t}\n\treturn button;\n}\n\n/**\n * Create SVG element from string code\n * @param {string} string\n */\nexport function parseSVG(string) {\n\treturn /** @type SVGElement */ ((new DOMParser().parseFromString(string, 'image/svg+xml')).firstChild);\n}\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst compass = parseSVG(`\n\n \n \n \n \n \n\n`);\n\nexport const icons = {\n\tcompass,\n};\n","import { controlContainer, controlButton } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\n\n/**\n * @typedef {{\n * \tinstant?: boolean;\n * }} CompassControlOptions\n */\n\nclass CompassControl {\n\t/**\n\t * @param {CompassControlOptions} options\n\t */\n\tconstructor(options = {}) {\n\t\tthis.options = { ...options };\n\t\tthis.container = controlContainer('mapbox-ctrl-compass');\n\t\tthis.icon = icons.compass;\n\t\tthis.button = controlButton({\n\t\t\ttitle: 'Compass',\n\t\t\ticon: icons.compass,\n\t\t\tonClick: () => this.onControlButtonClick(),\n\t\t});\n\t}\n\n\tonControlButtonClick() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.map.easeTo({ bearing: 0, pitch: 0 });\n\t}\n\n\tonRotate() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tconst angle = this.map.getBearing() * (-1);\n\t\tif (!this.options.instant) {\n\t\t\tthis.container.hidden = angle === 0;\n\t\t}\n\t\tthis.icon.style.transform = `rotate(${angle}deg)`;\n\t}\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tif (!this.options.instant) {\n\t\t\tthis.container.hidden = true;\n\t\t}\n\t\tthis.container.appendChild(this.button);\n\t\tthis.onRotate();\n\t\tthis.map.on('rotate', () => this.onRotate());\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n\nexport default CompassControl;\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst inspect = parseSVG(`\n\n \n \n\n`);\n\nexport const icons = {\n\tinspect,\n};\n","/**\n * @typedef {import('mapbox-gl').MapboxGeoJSONFeature} GeoJSONFeature\n */\n\n/**\n * @param {GeoJSONFeature[]} features\n * @param {number} current\n * @returns {string}\n */\nfunction html(features, current) {\n\tconst feature = features[current];\n\tconst withProperties = feature.properties && Object.keys(feature.properties).length;\n\tconst properties = feature.properties || {};\n\n\treturn (`\n
\n ${features.length > 1 ? '' : ''}\n \n ${features.length > 1 ? '' : ''}\n
\n \n ${feature.id ? (`\n \n \n \n \n `) : ''}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ${withProperties ? (`\n \n \n \n `) : ''}\n ${withProperties ? Object.entries(properties).map(([key, value]) => (`\n \n \n \n \n `)).join('') : ''}\n
$id${feature.id}
layer
id${feature.layer.id}
type${feature.layer.type}
source${feature.layer.source}
source-layer${feature.layer['source-layer'] ?? '-'}
properties
${key}${value}
\n `);\n}\n\n/**\n * @param {GeoJSONFeature[]} features\n * @returns {HTMLDivElement}\n */\nexport function popup(features) {\n\tconst node = document.createElement('div');\n\tlet current = 0;\n\tnode.classList.add('mapbox-ctrl-inspect-popup');\n\n\tif (!features.length) {\n\t\tnode.textContent = 'No features';\n\t\treturn node;\n\t}\n\n\tnode.innerHTML = html(features, current);\n\n\tnode.addEventListener('click', (event) => {\n\t\tconst target = /** @type {HTMLElement} */(event.target);\n\t\tif (target.matches('[data-prev]')) {\n\t\t\tconst isFirst = current === 0;\n\t\t\tcurrent = isFirst ? features.length - 1 : current - 1;\n\t\t} else if (target.matches('[data-next]')) {\n\t\t\tconst isLast = current === features.length - 1;\n\t\t\tcurrent = isLast ? 0 : current + 1;\n\t\t}\n\t\tnode.innerHTML = '';\n\t\tnode.innerHTML = html(features, current);\n\t});\n\n\treturn node;\n}\n","import { controlButton, controlContainer } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\nimport { popup } from './popup.js';\n\n/**\n * @typedef {{\n * \tconsole?: boolean\n * }} InspectControlOptions\n */\n\nexport default class InspectControl {\n\t/** @param {InspectControlOptions} options */\n\tconstructor(options = {}) {\n\t\tthis.options = { ...options };\n\t\tthis.container = controlContainer('mapbox-ctrl-inspect');\n\t\tthis.button = controlButton({\n\t\t\ttitle: 'Inspect',\n\t\t\ticon: icons.inspect,\n\t\t\tonClick: () => this.onControlButtonClick(),\n\t\t});\n\t\tthis.isActive = false;\n\t}\n\n\tonControlButtonClick() {\n\t\tif (this.isActive) {\n\t\t\tthis.deactivate();\n\t\t} else {\n\t\t\tthis.activate();\n\t\t}\n\t}\n\n\tactivate() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.isActive = true;\n\t\tthis.button.classList.add('-active');\n\t\tthis.map.on('click', this.mapClickListener);\n\t\tthis.map.on('move', this.updatePosition);\n\t\tthis.map.getCanvas().style.cursor = 'pointer';\n\t}\n\n\tdeactivate() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.isActive = false;\n\t\tthis.button.classList.remove('-active');\n\t\tthis.map.off('click', this.mapClickListener);\n\t\tthis.map.off('move', this.updatePosition);\n\t\tthis.map.getCanvas().style.cursor = '';\n\t\tthis.hideDetails();\n\t}\n\n\t/** @param {import('mapbox-gl').Point} point */\n\tgetPointFeatures(point) {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tconst selectThreshold = 3;\n\n\t\t/** @type {[[number, number], [number, number]]} */\n\t\tconst queryBox = [\n\t\t\t[point.x - selectThreshold, point.y + selectThreshold], // bottom left (SW)\n\t\t\t[point.x + selectThreshold, point.y - selectThreshold], // top right (NE)\n\t\t];\n\n\t\treturn this.map.queryRenderedFeatures(queryBox);\n\t}\n\n\t/** @param {import('mapbox-gl').MapboxGeoJSONFeature[]} features */\n\tshowDetails(features) {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.detailsNode = popup(features);\n\t\tthis.map.getContainer().appendChild(this.detailsNode);\n\t\tthis.updatePosition();\n\t\tif (this.options.console) {\n\t\t\tconsole.log(features);\n\t\t}\n\t}\n\n\thideDetails() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tif (!this.detailsNode) return;\n\t\tthis.map.getContainer().removeChild(this.detailsNode);\n\t\tthis.detailsNode = undefined;\n\t}\n\n\tupdatePosition = () => {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tif (!this.lngLat) return;\n\t\tif (!this.detailsNode) return;\n\t\tconst canvasRect = this.map.getCanvas().getBoundingClientRect();\n\t\tconst pos = this.map.project(this.lngLat);\n\t\tthis.detailsNode.style.left = `${pos.x - canvasRect.left}px`;\n\t\tthis.detailsNode.style.top = `${pos.y - canvasRect.top}px`;\n\t};\n\n\t/** @param {import('mapbox-gl').MapMouseEvent} event */\n\tmapClickListener = (event) => {\n\t\tthis.lngLat = event.lngLat;\n\t\tconst features = this.getPointFeatures(event.point);\n\t\tthis.hideDetails();\n\t\tthis.showDetails(features);\n\t};\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tthis.container.appendChild(this.button);\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.deactivate();\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst layers = parseSVG(`\n\n \n\n`);\n\nexport const icons = {\n\tlayers,\n};\n","import { controlButton, controlContainer } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\n\n/**\n * @typedef {{\n * \tlabel: string\n * \tstyleName: string\n * \tstyleUrl: string\n * }} Style\n *\n * @typedef {{\n * \tstyles?: Style[]\n * \tonChange?: (style: Style) => void\n * \tcompact?: boolean\n * }} StylesControlOptions\n */\n\nconst defaults = [\n\t{\n\t\tlabel: 'Streets',\n\t\tstyleName: 'Mapbox Streets',\n\t\tstyleUrl: 'mapbox://styles/mapbox/streets-v12',\n\t}, {\n\t\tlabel: 'Satellite',\n\t\tstyleName: 'Mapbox Satellite Streets',\n\t\tstyleUrl: 'mapbox://sprites/mapbox/satellite-streets-v12',\n\t},\n];\n\nexport default class StylesControl {\n\t/** @param {StylesControlOptions} options */\n\tconstructor(options = {}) {\n\t\tthis.options = { styles: defaults, ...options };\n\t\tthis.container = controlContainer('mapbox-ctrl-styles');\n\t\tthis.container.classList.add(options.compact ? 'mapbox-ctrl-styles-compact' : 'mapbox-ctrl-styles-expanded');\n\t}\n\n\t/** @param {string} name */\n\tfindStyleByName(name) {\n\t\tconst style = this.options.styles.find((s) => s.styleName === name);\n\t\tif (!style) throw Error(`can't find style with name ${name}`);\n\t\treturn style;\n\t}\n\n\texpanded() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\t/** @type HTMLButtonElement[] */\n\t\tconst buttons = [];\n\t\tthis.options.styles.forEach((style) => {\n\t\t\tconst button = controlButton({\n\t\t\t\ttitle: style.label,\n\t\t\t\ttextContent: style.label,\n\t\t\t\tonClick: () => {\n\t\t\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\t\t\tif (button.classList.contains('-active')) return;\n\t\t\t\t\tthis.map.setStyle(style.styleUrl);\n\t\t\t\t\tif (this.options.onChange) this.options.onChange(style);\n\t\t\t\t},\n\t\t\t});\n\t\t\tbuttons.push(button);\n\t\t\tthis.container.appendChild(button);\n\t\t});\n\n\t\tthis.map.on('styledata', () => {\n\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\tbuttons.forEach((button) => {\n\t\t\t\tbutton.classList.remove('-active');\n\t\t\t});\n\t\t\tconst styleNames = this.options.styles.map((style) => style.styleName);\n\t\t\tconst styleName = this.map.getStyle().name;\n\t\t\tif (!styleName) throw Error('style must have name');\n\t\t\tconst currentStyleIndex = styleNames.indexOf(styleName);\n\t\t\tif (currentStyleIndex !== -1) {\n\t\t\t\tconst currentButton = buttons[currentStyleIndex];\n\t\t\t\tcurrentButton.classList.add('-active');\n\t\t\t}\n\t\t});\n\t}\n\n\tcompact() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tconst button = controlButton({ title: 'Styles', icon: icons.layers });\n\t\tconst select = document.createElement('select');\n\t\tthis.container.appendChild(button);\n\t\tbutton.appendChild(select);\n\n\t\tthis.options.styles.forEach((style) => {\n\t\t\tconst option = document.createElement('option');\n\t\t\tselect.appendChild(option);\n\t\t\toption.textContent = style.label;\n\t\t\toption.value = style.styleName;\n\t\t});\n\n\t\tselect.addEventListener('change', () => {\n\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\tconst style = this.findStyleByName(select.value);\n\t\t\tthis.map.setStyle(style.styleUrl);\n\t\t\tif (this.options.onChange) this.options.onChange(style);\n\t\t});\n\n\t\tthis.map.on('styledata', () => {\n\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\tconst styleName = this.map.getStyle().name;\n\t\t\tif (!styleName) throw Error('style must have name');\n\t\t\tselect.value = styleName;\n\t\t});\n\t}\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tif (this.options.compact) {\n\t\t\tthis.compact();\n\t\t} else {\n\t\t\tthis.expanded();\n\t\t}\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst plus = parseSVG(`\n\n \n \n\n`);\n\nconst minus = parseSVG(`\n\n \n \n\n`);\n\nexport const icons = {\n\tplus,\n\tminus,\n};\n","import { controlButton, controlContainer } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\n\nclass ZoomControl {\n\tconstructor() {\n\t\tthis.container = controlContainer('mapbox-ctrl-zoom');\n\t\tthis.buttonIn = controlButton({\n\t\t\ttitle: 'Zoom In',\n\t\t\ticon: icons.plus,\n\t\t\tonClick: () => this.map?.zoomIn(),\n\t\t});\n\t\tthis.buttonOut = controlButton({\n\t\t\ttitle: 'Zoom Out',\n\t\t\ticon: icons.minus,\n\t\t\tonClick: () => this.map?.zoomOut(),\n\t\t});\n\t}\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tthis.container.appendChild(this.buttonIn);\n\t\tthis.container.appendChild(this.buttonOut);\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n\nexport default ZoomControl;\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","export default function getUAString() {\n var uaData = navigator.userAgentData;\n\n if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n\n return navigator.userAgent;\n}","import getUAString from \"../utils/userAgent.js\";\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}","import { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nimport getWindow from \"./getWindow.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n\n var _ref = isElement(element) ? getWindow(element) : window,\n visualViewport = _ref.visualViewport;\n\n var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getUAString from \"../utils/userAgent.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test(getUAString());\n var isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref, win) {\n var x = _ref.x,\n y = _ref.y;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }, getWindow(popper)) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = getBoundingClientRect(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getViewportRect(element, strategy) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = isLayoutViewport();\n\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n });\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref) {\n var name = _ref.name,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n effect = _ref.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/*!\n * Bootstrap v5.3.2 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\nimport * as Popper from '@popperjs/core';\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * Constants\n */\n\nconst elementMap = new Map();\nconst Data = {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map());\n }\n const instanceMap = elementMap.get(element);\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);\n return;\n }\n instanceMap.set(key, instance);\n },\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null;\n }\n return null;\n },\n remove(element, key) {\n if (!elementMap.has(element)) {\n return;\n }\n const instanceMap = elementMap.get(element);\n instanceMap.delete(key);\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element);\n }\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000;\nconst MILLISECONDS_MULTIPLIER = 1000;\nconst TRANSITION_END = 'transitionend';\n\n/**\n * Properly escape IDs selectors to handle weird IDs\n * @param {string} selector\n * @returns {string}\n */\nconst parseSelector = selector => {\n if (selector && window.CSS && window.CSS.escape) {\n // document.querySelector needs escaping to handle IDs (html5+) containing for instance /\n selector = selector.replace(/#([^\\s\"#']+)/g, (match, id) => `#${CSS.escape(id)}`);\n }\n return selector;\n};\n\n// Shout-out Angus Croll (https://goo.gl/pxwQGp)\nconst toType = object => {\n if (object === null || object === undefined) {\n return `${object}`;\n }\n return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase();\n};\n\n/**\n * Public Util API\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID);\n } while (document.getElementById(prefix));\n return prefix;\n};\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0;\n }\n\n // Get transition-duration of the element\n let {\n transitionDuration,\n transitionDelay\n } = window.getComputedStyle(element);\n const floatTransitionDuration = Number.parseFloat(transitionDuration);\n const floatTransitionDelay = Number.parseFloat(transitionDelay);\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0;\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0];\n transitionDelay = transitionDelay.split(',')[0];\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;\n};\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END));\n};\nconst isElement = object => {\n if (!object || typeof object !== 'object') {\n return false;\n }\n if (typeof object.jquery !== 'undefined') {\n object = object[0];\n }\n return typeof object.nodeType !== 'undefined';\n};\nconst getElement = object => {\n // it's a jQuery object or a node element\n if (isElement(object)) {\n return object.jquery ? object[0] : object;\n }\n if (typeof object === 'string' && object.length > 0) {\n return document.querySelector(parseSelector(object));\n }\n return null;\n};\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false;\n }\n const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible';\n // Handle `details` element as its content may falsie appear visible when it is closed\n const closedDetails = element.closest('details:not([open])');\n if (!closedDetails) {\n return elementIsVisible;\n }\n if (closedDetails !== element) {\n const summary = element.closest('summary');\n if (summary && summary.parentNode !== closedDetails) {\n return false;\n }\n if (summary === null) {\n return false;\n }\n }\n return elementIsVisible;\n};\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true;\n }\n if (element.classList.contains('disabled')) {\n return true;\n }\n if (typeof element.disabled !== 'undefined') {\n return element.disabled;\n }\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false';\n};\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null;\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode();\n return root instanceof ShadowRoot ? root : null;\n }\n if (element instanceof ShadowRoot) {\n return element;\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null;\n }\n return findShadowRoot(element.parentNode);\n};\nconst noop = () => {};\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n element.offsetHeight; // eslint-disable-line no-unused-expressions\n};\n\nconst getjQuery = () => {\n if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return window.jQuery;\n }\n return null;\n};\nconst DOMContentLoadedCallbacks = [];\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n for (const callback of DOMContentLoadedCallbacks) {\n callback();\n }\n });\n }\n DOMContentLoadedCallbacks.push(callback);\n } else {\n callback();\n }\n};\nconst isRTL = () => document.documentElement.dir === 'rtl';\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery();\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME;\n const JQUERY_NO_CONFLICT = $.fn[name];\n $.fn[name] = plugin.jQueryInterface;\n $.fn[name].Constructor = plugin;\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT;\n return plugin.jQueryInterface;\n };\n }\n });\n};\nconst execute = (possibleCallback, args = [], defaultValue = possibleCallback) => {\n return typeof possibleCallback === 'function' ? possibleCallback(...args) : defaultValue;\n};\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback);\n return;\n }\n const durationPadding = 5;\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding;\n let called = false;\n const handler = ({\n target\n }) => {\n if (target !== transitionElement) {\n return;\n }\n called = true;\n transitionElement.removeEventListener(TRANSITION_END, handler);\n execute(callback);\n };\n transitionElement.addEventListener(TRANSITION_END, handler);\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement);\n }\n }, emulatedDuration);\n};\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n const listLength = list.length;\n let index = list.indexOf(activeElement);\n\n // if the element does not exist in the list return an element\n // depending on the direction and if cycle is allowed\n if (index === -1) {\n return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0];\n }\n index += shouldGetNext ? 1 : -1;\n if (isCycleAllowed) {\n index = (index + listLength) % listLength;\n }\n return list[Math.max(0, Math.min(index, listLength - 1))];\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/;\nconst stripNameRegex = /\\..*/;\nconst stripUidRegex = /::\\d+$/;\nconst eventRegistry = {}; // Events storage\nlet uidEvent = 1;\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n};\nconst nativeEvents = new Set(['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll']);\n\n/**\n * Private methods\n */\n\nfunction makeEventUid(element, uid) {\n return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++;\n}\nfunction getElementEvents(element) {\n const uid = makeEventUid(element);\n element.uidEvent = uid;\n eventRegistry[uid] = eventRegistry[uid] || {};\n return eventRegistry[uid];\n}\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n hydrateObj(event, {\n delegateTarget: element\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn);\n }\n return fn.apply(element, [event]);\n };\n}\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector);\n for (let {\n target\n } = event; target && target !== this; target = target.parentNode) {\n for (const domElement of domElements) {\n if (domElement !== target) {\n continue;\n }\n hydrateObj(event, {\n delegateTarget: target\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, selector, fn);\n }\n return fn.apply(target, [event]);\n }\n }\n };\n}\nfunction findHandler(events, callable, delegationSelector = null) {\n return Object.values(events).find(event => event.callable === callable && event.delegationSelector === delegationSelector);\n}\nfunction normalizeParameters(originalTypeEvent, handler, delegationFunction) {\n const isDelegated = typeof handler === 'string';\n // TODO: tooltip passes `false` instead of selector, so we need to check\n const callable = isDelegated ? delegationFunction : handler || delegationFunction;\n let typeEvent = getTypeEvent(originalTypeEvent);\n if (!nativeEvents.has(typeEvent)) {\n typeEvent = originalTypeEvent;\n }\n return [isDelegated, callable, typeEvent];\n}\nfunction addHandler(element, originalTypeEvent, handler, delegationFunction, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n let [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (originalTypeEvent in customEvents) {\n const wrapFunction = fn => {\n return function (event) {\n if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) {\n return fn.call(this, event);\n }\n };\n };\n callable = wrapFunction(callable);\n }\n const events = getElementEvents(element);\n const handlers = events[typeEvent] || (events[typeEvent] = {});\n const previousFunction = findHandler(handlers, callable, isDelegated ? handler : null);\n if (previousFunction) {\n previousFunction.oneOff = previousFunction.oneOff && oneOff;\n return;\n }\n const uid = makeEventUid(callable, originalTypeEvent.replace(namespaceRegex, ''));\n const fn = isDelegated ? bootstrapDelegationHandler(element, handler, callable) : bootstrapHandler(element, callable);\n fn.delegationSelector = isDelegated ? handler : null;\n fn.callable = callable;\n fn.oneOff = oneOff;\n fn.uidEvent = uid;\n handlers[uid] = fn;\n element.addEventListener(typeEvent, fn, isDelegated);\n}\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector);\n if (!fn) {\n return;\n }\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector));\n delete events[typeEvent][fn.uidEvent];\n}\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {};\n for (const [handlerKey, event] of Object.entries(storeElementEvent)) {\n if (handlerKey.includes(namespace)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n}\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '');\n return customEvents[event] || event;\n}\nconst EventHandler = {\n on(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, false);\n },\n one(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, true);\n },\n off(element, originalTypeEvent, handler, delegationFunction) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n const [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n const inNamespace = typeEvent !== originalTypeEvent;\n const events = getElementEvents(element);\n const storeElementEvent = events[typeEvent] || {};\n const isNamespace = originalTypeEvent.startsWith('.');\n if (typeof callable !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!Object.keys(storeElementEvent).length) {\n return;\n }\n removeHandler(element, events, typeEvent, callable, isDelegated ? handler : null);\n return;\n }\n if (isNamespace) {\n for (const elementEvent of Object.keys(events)) {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1));\n }\n }\n for (const [keyHandlers, event] of Object.entries(storeElementEvent)) {\n const handlerKey = keyHandlers.replace(stripUidRegex, '');\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n },\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null;\n }\n const $ = getjQuery();\n const typeEvent = getTypeEvent(event);\n const inNamespace = event !== typeEvent;\n let jQueryEvent = null;\n let bubbles = true;\n let nativeDispatch = true;\n let defaultPrevented = false;\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args);\n $(element).trigger(jQueryEvent);\n bubbles = !jQueryEvent.isPropagationStopped();\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();\n defaultPrevented = jQueryEvent.isDefaultPrevented();\n }\n const evt = hydrateObj(new Event(event, {\n bubbles,\n cancelable: true\n }), args);\n if (defaultPrevented) {\n evt.preventDefault();\n }\n if (nativeDispatch) {\n element.dispatchEvent(evt);\n }\n if (evt.defaultPrevented && jQueryEvent) {\n jQueryEvent.preventDefault();\n }\n return evt;\n }\n};\nfunction hydrateObj(obj, meta = {}) {\n for (const [key, value] of Object.entries(meta)) {\n try {\n obj[key] = value;\n } catch (_unused) {\n Object.defineProperty(obj, key, {\n configurable: true,\n get() {\n return value;\n }\n });\n }\n }\n return obj;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(value) {\n if (value === 'true') {\n return true;\n }\n if (value === 'false') {\n return false;\n }\n if (value === Number(value).toString()) {\n return Number(value);\n }\n if (value === '' || value === 'null') {\n return null;\n }\n if (typeof value !== 'string') {\n return value;\n }\n try {\n return JSON.parse(decodeURIComponent(value));\n } catch (_unused) {\n return value;\n }\n}\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`);\n}\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value);\n },\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`);\n },\n getDataAttributes(element) {\n if (!element) {\n return {};\n }\n const attributes = {};\n const bsKeys = Object.keys(element.dataset).filter(key => key.startsWith('bs') && !key.startsWith('bsConfig'));\n for (const key of bsKeys) {\n let pureKey = key.replace(/^bs/, '');\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length);\n attributes[pureKey] = normalizeData(element.dataset[key]);\n }\n return attributes;\n },\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`));\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/config.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Class definition\n */\n\nclass Config {\n // Getters\n static get Default() {\n return {};\n }\n static get DefaultType() {\n return {};\n }\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!');\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n return config;\n }\n _mergeConfigObj(config, element) {\n const jsonConfig = isElement(element) ? Manipulator.getDataAttribute(element, 'config') : {}; // try to parse\n\n return {\n ...this.constructor.Default,\n ...(typeof jsonConfig === 'object' ? jsonConfig : {}),\n ...(isElement(element) ? Manipulator.getDataAttributes(element) : {}),\n ...(typeof config === 'object' ? config : {})\n };\n }\n _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {\n for (const [property, expectedTypes] of Object.entries(configTypes)) {\n const value = config[property];\n const valueType = isElement(value) ? 'element' : toType(value);\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`);\n }\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst VERSION = '5.3.2';\n\n/**\n * Class definition\n */\n\nclass BaseComponent extends Config {\n constructor(element, config) {\n super();\n element = getElement(element);\n if (!element) {\n return;\n }\n this._element = element;\n this._config = this._getConfig(config);\n Data.set(this._element, this.constructor.DATA_KEY, this);\n }\n\n // Public\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY);\n EventHandler.off(this._element, this.constructor.EVENT_KEY);\n for (const propertyName of Object.getOwnPropertyNames(this)) {\n this[propertyName] = null;\n }\n }\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated);\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config, this._element);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n\n // Static\n static getInstance(element) {\n return Data.get(getElement(element), this.DATA_KEY);\n }\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null);\n }\n static get VERSION() {\n return VERSION;\n }\n static get DATA_KEY() {\n return `bs.${this.NAME}`;\n }\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`;\n }\n static eventName(name) {\n return `${name}${this.EVENT_KEY}`;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target');\n if (!selector || selector === '#') {\n let hrefAttribute = element.getAttribute('href');\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttribute || !hrefAttribute.includes('#') && !hrefAttribute.startsWith('.')) {\n return null;\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {\n hrefAttribute = `#${hrefAttribute.split('#')[1]}`;\n }\n selector = hrefAttribute && hrefAttribute !== '#' ? parseSelector(hrefAttribute.trim()) : null;\n }\n return selector;\n};\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector));\n },\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector);\n },\n children(element, selector) {\n return [].concat(...element.children).filter(child => child.matches(selector));\n },\n parents(element, selector) {\n const parents = [];\n let ancestor = element.parentNode.closest(selector);\n while (ancestor) {\n parents.push(ancestor);\n ancestor = ancestor.parentNode.closest(selector);\n }\n return parents;\n },\n prev(element, selector) {\n let previous = element.previousElementSibling;\n while (previous) {\n if (previous.matches(selector)) {\n return [previous];\n }\n previous = previous.previousElementSibling;\n }\n return [];\n },\n // TODO: this is now unused; remove later along with prev()\n next(element, selector) {\n let next = element.nextElementSibling;\n while (next) {\n if (next.matches(selector)) {\n return [next];\n }\n next = next.nextElementSibling;\n }\n return [];\n },\n focusableChildren(element) {\n const focusables = ['a', 'button', 'input', 'textarea', 'select', 'details', '[tabindex]', '[contenteditable=\"true\"]'].map(selector => `${selector}:not([tabindex^=\"-\"])`).join(',');\n return this.find(focusables, element).filter(el => !isDisabled(el) && isVisible(el));\n },\n getSelectorFromElement(element) {\n const selector = getSelector(element);\n if (selector) {\n return SelectorEngine.findOne(selector) ? selector : null;\n }\n return null;\n },\n getElementFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.findOne(selector) : null;\n },\n getMultipleElementsFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.find(selector) : [];\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/component-functions.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst enableDismissTrigger = (component, method = 'hide') => {\n const clickEvent = `click.dismiss${component.EVENT_KEY}`;\n const name = component.NAME;\n EventHandler.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n const target = SelectorEngine.getElementFromSelector(this) || this.closest(`.${name}`);\n const instance = component.getOrCreateInstance(target);\n\n // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n instance[method]();\n });\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$f = 'alert';\nconst DATA_KEY$a = 'bs.alert';\nconst EVENT_KEY$b = `.${DATA_KEY$a}`;\nconst EVENT_CLOSE = `close${EVENT_KEY$b}`;\nconst EVENT_CLOSED = `closed${EVENT_KEY$b}`;\nconst CLASS_NAME_FADE$5 = 'fade';\nconst CLASS_NAME_SHOW$8 = 'show';\n\n/**\n * Class definition\n */\n\nclass Alert extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$f;\n }\n\n // Public\n close() {\n const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE);\n if (closeEvent.defaultPrevented) {\n return;\n }\n this._element.classList.remove(CLASS_NAME_SHOW$8);\n const isAnimated = this._element.classList.contains(CLASS_NAME_FADE$5);\n this._queueCallback(() => this._destroyElement(), this._element, isAnimated);\n }\n\n // Private\n _destroyElement() {\n this._element.remove();\n EventHandler.trigger(this._element, EVENT_CLOSED);\n this.dispose();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nenableDismissTrigger(Alert, 'close');\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Alert);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$e = 'button';\nconst DATA_KEY$9 = 'bs.button';\nconst EVENT_KEY$a = `.${DATA_KEY$9}`;\nconst DATA_API_KEY$6 = '.data-api';\nconst CLASS_NAME_ACTIVE$3 = 'active';\nconst SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle=\"button\"]';\nconst EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$6}`;\n\n/**\n * Class definition\n */\n\nclass Button extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$e;\n }\n\n // Public\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3));\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this);\n if (config === 'toggle') {\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => {\n event.preventDefault();\n const button = event.target.closest(SELECTOR_DATA_TOGGLE$5);\n const data = Button.getOrCreateInstance(button);\n data.toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Button);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/swipe.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$d = 'swipe';\nconst EVENT_KEY$9 = '.bs.swipe';\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`;\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`;\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`;\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`;\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`;\nconst POINTER_TYPE_TOUCH = 'touch';\nconst POINTER_TYPE_PEN = 'pen';\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event';\nconst SWIPE_THRESHOLD = 40;\nconst Default$c = {\n endCallback: null,\n leftCallback: null,\n rightCallback: null\n};\nconst DefaultType$c = {\n endCallback: '(function|null)',\n leftCallback: '(function|null)',\n rightCallback: '(function|null)'\n};\n\n/**\n * Class definition\n */\n\nclass Swipe extends Config {\n constructor(element, config) {\n super();\n this._element = element;\n if (!element || !Swipe.isSupported()) {\n return;\n }\n this._config = this._getConfig(config);\n this._deltaX = 0;\n this._supportPointerEvents = Boolean(window.PointerEvent);\n this._initEvents();\n }\n\n // Getters\n static get Default() {\n return Default$c;\n }\n static get DefaultType() {\n return DefaultType$c;\n }\n static get NAME() {\n return NAME$d;\n }\n\n // Public\n dispose() {\n EventHandler.off(this._element, EVENT_KEY$9);\n }\n\n // Private\n _start(event) {\n if (!this._supportPointerEvents) {\n this._deltaX = event.touches[0].clientX;\n return;\n }\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX;\n }\n }\n _end(event) {\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX - this._deltaX;\n }\n this._handleSwipe();\n execute(this._config.endCallback);\n }\n _move(event) {\n this._deltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this._deltaX;\n }\n _handleSwipe() {\n const absDeltaX = Math.abs(this._deltaX);\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return;\n }\n const direction = absDeltaX / this._deltaX;\n this._deltaX = 0;\n if (!direction) {\n return;\n }\n execute(direction > 0 ? this._config.rightCallback : this._config.leftCallback);\n }\n _initEvents() {\n if (this._supportPointerEvents) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => this._start(event));\n EventHandler.on(this._element, EVENT_POINTERUP, event => this._end(event));\n this._element.classList.add(CLASS_NAME_POINTER_EVENT);\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => this._start(event));\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => this._move(event));\n EventHandler.on(this._element, EVENT_TOUCHEND, event => this._end(event));\n }\n }\n _eventIsPointerPenTouch(event) {\n return this._supportPointerEvents && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH);\n }\n\n // Static\n static isSupported() {\n return 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$c = 'carousel';\nconst DATA_KEY$8 = 'bs.carousel';\nconst EVENT_KEY$8 = `.${DATA_KEY$8}`;\nconst DATA_API_KEY$5 = '.data-api';\nconst ARROW_LEFT_KEY$1 = 'ArrowLeft';\nconst ARROW_RIGHT_KEY$1 = 'ArrowRight';\nconst TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch\n\nconst ORDER_NEXT = 'next';\nconst ORDER_PREV = 'prev';\nconst DIRECTION_LEFT = 'left';\nconst DIRECTION_RIGHT = 'right';\nconst EVENT_SLIDE = `slide${EVENT_KEY$8}`;\nconst EVENT_SLID = `slid${EVENT_KEY$8}`;\nconst EVENT_KEYDOWN$1 = `keydown${EVENT_KEY$8}`;\nconst EVENT_MOUSEENTER$1 = `mouseenter${EVENT_KEY$8}`;\nconst EVENT_MOUSELEAVE$1 = `mouseleave${EVENT_KEY$8}`;\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY$8}`;\nconst EVENT_LOAD_DATA_API$3 = `load${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst CLASS_NAME_CAROUSEL = 'carousel';\nconst CLASS_NAME_ACTIVE$2 = 'active';\nconst CLASS_NAME_SLIDE = 'slide';\nconst CLASS_NAME_END = 'carousel-item-end';\nconst CLASS_NAME_START = 'carousel-item-start';\nconst CLASS_NAME_NEXT = 'carousel-item-next';\nconst CLASS_NAME_PREV = 'carousel-item-prev';\nconst SELECTOR_ACTIVE = '.active';\nconst SELECTOR_ITEM = '.carousel-item';\nconst SELECTOR_ACTIVE_ITEM = SELECTOR_ACTIVE + SELECTOR_ITEM;\nconst SELECTOR_ITEM_IMG = '.carousel-item img';\nconst SELECTOR_INDICATORS = '.carousel-indicators';\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]';\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]';\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY$1]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY$1]: DIRECTION_LEFT\n};\nconst Default$b = {\n interval: 5000,\n keyboard: true,\n pause: 'hover',\n ride: false,\n touch: true,\n wrap: true\n};\nconst DefaultType$b = {\n interval: '(number|boolean)',\n // TODO:v6 remove boolean support\n keyboard: 'boolean',\n pause: '(string|boolean)',\n ride: '(boolean|string)',\n touch: 'boolean',\n wrap: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._interval = null;\n this._activeElement = null;\n this._isSliding = false;\n this.touchTimeout = null;\n this._swipeHelper = null;\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element);\n this._addEventListeners();\n if (this._config.ride === CLASS_NAME_CAROUSEL) {\n this.cycle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$b;\n }\n static get DefaultType() {\n return DefaultType$b;\n }\n static get NAME() {\n return NAME$c;\n }\n\n // Public\n next() {\n this._slide(ORDER_NEXT);\n }\n nextWhenVisible() {\n // FIXME TODO use `document.visibilityState`\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next();\n }\n }\n prev() {\n this._slide(ORDER_PREV);\n }\n pause() {\n if (this._isSliding) {\n triggerTransitionEnd(this._element);\n }\n this._clearInterval();\n }\n cycle() {\n this._clearInterval();\n this._updateInterval();\n this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval);\n }\n _maybeEnableCycle() {\n if (!this._config.ride) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.cycle());\n return;\n }\n this.cycle();\n }\n to(index) {\n const items = this._getItems();\n if (index > items.length - 1 || index < 0) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index));\n return;\n }\n const activeIndex = this._getItemIndex(this._getActive());\n if (activeIndex === index) {\n return;\n }\n const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV;\n this._slide(order, items[index]);\n }\n dispose() {\n if (this._swipeHelper) {\n this._swipeHelper.dispose();\n }\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n config.defaultInterval = config.interval;\n return config;\n }\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN$1, event => this._keydown(event));\n }\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER$1, () => this.pause());\n EventHandler.on(this._element, EVENT_MOUSELEAVE$1, () => this._maybeEnableCycle());\n }\n if (this._config.touch && Swipe.isSupported()) {\n this._addTouchEventListeners();\n }\n }\n _addTouchEventListeners() {\n for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {\n EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault());\n }\n const endCallBack = () => {\n if (this._config.pause !== 'hover') {\n return;\n }\n\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause();\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout);\n }\n this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval);\n };\n const swipeConfig = {\n leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),\n rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),\n endCallback: endCallBack\n };\n this._swipeHelper = new Swipe(this._element, swipeConfig);\n }\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return;\n }\n const direction = KEY_TO_DIRECTION[event.key];\n if (direction) {\n event.preventDefault();\n this._slide(this._directionToOrder(direction));\n }\n }\n _getItemIndex(element) {\n return this._getItems().indexOf(element);\n }\n _setActiveIndicatorElement(index) {\n if (!this._indicatorsElement) {\n return;\n }\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement);\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2);\n activeIndicator.removeAttribute('aria-current');\n const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to=\"${index}\"]`, this._indicatorsElement);\n if (newActiveIndicator) {\n newActiveIndicator.classList.add(CLASS_NAME_ACTIVE$2);\n newActiveIndicator.setAttribute('aria-current', 'true');\n }\n }\n _updateInterval() {\n const element = this._activeElement || this._getActive();\n if (!element) {\n return;\n }\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10);\n this._config.interval = elementInterval || this._config.defaultInterval;\n }\n _slide(order, element = null) {\n if (this._isSliding) {\n return;\n }\n const activeElement = this._getActive();\n const isNext = order === ORDER_NEXT;\n const nextElement = element || getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap);\n if (nextElement === activeElement) {\n return;\n }\n const nextElementIndex = this._getItemIndex(nextElement);\n const triggerEvent = eventName => {\n return EventHandler.trigger(this._element, eventName, {\n relatedTarget: nextElement,\n direction: this._orderToDirection(order),\n from: this._getItemIndex(activeElement),\n to: nextElementIndex\n });\n };\n const slideEvent = triggerEvent(EVENT_SLIDE);\n if (slideEvent.defaultPrevented) {\n return;\n }\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n // TODO: change tests that use empty divs to avoid this check\n return;\n }\n const isCycling = Boolean(this._interval);\n this.pause();\n this._isSliding = true;\n this._setActiveIndicatorElement(nextElementIndex);\n this._activeElement = nextElement;\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END;\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV;\n nextElement.classList.add(orderClassName);\n reflow(nextElement);\n activeElement.classList.add(directionalClassName);\n nextElement.classList.add(directionalClassName);\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName);\n nextElement.classList.add(CLASS_NAME_ACTIVE$2);\n activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName);\n this._isSliding = false;\n triggerEvent(EVENT_SLID);\n };\n this._queueCallback(completeCallBack, activeElement, this._isAnimated());\n if (isCycling) {\n this.cycle();\n }\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_SLIDE);\n }\n _getActive() {\n return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element);\n }\n _getItems() {\n return SelectorEngine.find(SELECTOR_ITEM, this._element);\n }\n _clearInterval() {\n if (this._interval) {\n clearInterval(this._interval);\n this._interval = null;\n }\n }\n _directionToOrder(direction) {\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT;\n }\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV;\n }\n _orderToDirection(order) {\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT;\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Carousel.getOrCreateInstance(this, config);\n if (typeof config === 'number') {\n data.to(config);\n return;\n }\n if (typeof config === 'string') {\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return;\n }\n event.preventDefault();\n const carousel = Carousel.getOrCreateInstance(target);\n const slideIndex = this.getAttribute('data-bs-slide-to');\n if (slideIndex) {\n carousel.to(slideIndex);\n carousel._maybeEnableCycle();\n return;\n }\n if (Manipulator.getDataAttribute(this, 'slide') === 'next') {\n carousel.next();\n carousel._maybeEnableCycle();\n return;\n }\n carousel.prev();\n carousel._maybeEnableCycle();\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$3, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE);\n for (const carousel of carousels) {\n Carousel.getOrCreateInstance(carousel);\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Carousel);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$b = 'collapse';\nconst DATA_KEY$7 = 'bs.collapse';\nconst EVENT_KEY$7 = `.${DATA_KEY$7}`;\nconst DATA_API_KEY$4 = '.data-api';\nconst EVENT_SHOW$6 = `show${EVENT_KEY$7}`;\nconst EVENT_SHOWN$6 = `shown${EVENT_KEY$7}`;\nconst EVENT_HIDE$6 = `hide${EVENT_KEY$7}`;\nconst EVENT_HIDDEN$6 = `hidden${EVENT_KEY$7}`;\nconst EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`;\nconst CLASS_NAME_SHOW$7 = 'show';\nconst CLASS_NAME_COLLAPSE = 'collapse';\nconst CLASS_NAME_COLLAPSING = 'collapsing';\nconst CLASS_NAME_COLLAPSED = 'collapsed';\nconst CLASS_NAME_DEEPER_CHILDREN = `:scope .${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`;\nconst CLASS_NAME_HORIZONTAL = 'collapse-horizontal';\nconst WIDTH = 'width';\nconst HEIGHT = 'height';\nconst SELECTOR_ACTIVES = '.collapse.show, .collapse.collapsing';\nconst SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle=\"collapse\"]';\nconst Default$a = {\n parent: null,\n toggle: true\n};\nconst DefaultType$a = {\n parent: '(null|element)',\n toggle: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isTransitioning = false;\n this._triggerArray = [];\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4);\n for (const elem of toggleList) {\n const selector = SelectorEngine.getSelectorFromElement(elem);\n const filterElement = SelectorEngine.find(selector).filter(foundElement => foundElement === this._element);\n if (selector !== null && filterElement.length) {\n this._triggerArray.push(elem);\n }\n }\n this._initializeChildren();\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._triggerArray, this._isShown());\n }\n if (this._config.toggle) {\n this.toggle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$a;\n }\n static get DefaultType() {\n return DefaultType$a;\n }\n static get NAME() {\n return NAME$b;\n }\n\n // Public\n toggle() {\n if (this._isShown()) {\n this.hide();\n } else {\n this.show();\n }\n }\n show() {\n if (this._isTransitioning || this._isShown()) {\n return;\n }\n let activeChildren = [];\n\n // find active children\n if (this._config.parent) {\n activeChildren = this._getFirstLevelChildren(SELECTOR_ACTIVES).filter(element => element !== this._element).map(element => Collapse.getOrCreateInstance(element, {\n toggle: false\n }));\n }\n if (activeChildren.length && activeChildren[0]._isTransitioning) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n for (const activeInstance of activeChildren) {\n activeInstance.hide();\n }\n const dimension = this._getDimension();\n this._element.classList.remove(CLASS_NAME_COLLAPSE);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.style[dimension] = 0;\n this._addAriaAndCollapsedClass(this._triggerArray, true);\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n this._element.style[dimension] = '';\n EventHandler.trigger(this._element, EVENT_SHOWN$6);\n };\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);\n const scrollSize = `scroll${capitalizedDimension}`;\n this._queueCallback(complete, this._element, true);\n this._element.style[dimension] = `${this._element[scrollSize]}px`;\n }\n hide() {\n if (this._isTransitioning || !this._isShown()) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n const dimension = this._getDimension();\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`;\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n for (const trigger of this._triggerArray) {\n const element = SelectorEngine.getElementFromSelector(trigger);\n if (element && !this._isShown(element)) {\n this._addAriaAndCollapsedClass([trigger], false);\n }\n }\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE);\n EventHandler.trigger(this._element, EVENT_HIDDEN$6);\n };\n this._element.style[dimension] = '';\n this._queueCallback(complete, this._element, true);\n }\n _isShown(element = this._element) {\n return element.classList.contains(CLASS_NAME_SHOW$7);\n }\n\n // Private\n _configAfterMerge(config) {\n config.toggle = Boolean(config.toggle); // Coerce string values\n config.parent = getElement(config.parent);\n return config;\n }\n _getDimension() {\n return this._element.classList.contains(CLASS_NAME_HORIZONTAL) ? WIDTH : HEIGHT;\n }\n _initializeChildren() {\n if (!this._config.parent) {\n return;\n }\n const children = this._getFirstLevelChildren(SELECTOR_DATA_TOGGLE$4);\n for (const element of children) {\n const selected = SelectorEngine.getElementFromSelector(element);\n if (selected) {\n this._addAriaAndCollapsedClass([element], this._isShown(selected));\n }\n }\n }\n _getFirstLevelChildren(selector) {\n const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent);\n // remove children if greater depth\n return SelectorEngine.find(selector, this._config.parent).filter(element => !children.includes(element));\n }\n _addAriaAndCollapsedClass(triggerArray, isOpen) {\n if (!triggerArray.length) {\n return;\n }\n for (const element of triggerArray) {\n element.classList.toggle(CLASS_NAME_COLLAPSED, !isOpen);\n element.setAttribute('aria-expanded', isOpen);\n }\n }\n\n // Static\n static jQueryInterface(config) {\n const _config = {};\n if (typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false;\n }\n return this.each(function () {\n const data = Collapse.getOrCreateInstance(this, _config);\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) {\n // preventDefault only for elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') {\n event.preventDefault();\n }\n for (const element of SelectorEngine.getMultipleElementsFromSelector(this)) {\n Collapse.getOrCreateInstance(element, {\n toggle: false\n }).toggle();\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Collapse);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$a = 'dropdown';\nconst DATA_KEY$6 = 'bs.dropdown';\nconst EVENT_KEY$6 = `.${DATA_KEY$6}`;\nconst DATA_API_KEY$3 = '.data-api';\nconst ESCAPE_KEY$2 = 'Escape';\nconst TAB_KEY$1 = 'Tab';\nconst ARROW_UP_KEY$1 = 'ArrowUp';\nconst ARROW_DOWN_KEY$1 = 'ArrowDown';\nconst RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button\n\nconst EVENT_HIDE$5 = `hide${EVENT_KEY$6}`;\nconst EVENT_HIDDEN$5 = `hidden${EVENT_KEY$6}`;\nconst EVENT_SHOW$5 = `show${EVENT_KEY$6}`;\nconst EVENT_SHOWN$5 = `shown${EVENT_KEY$6}`;\nconst EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst CLASS_NAME_SHOW$6 = 'show';\nconst CLASS_NAME_DROPUP = 'dropup';\nconst CLASS_NAME_DROPEND = 'dropend';\nconst CLASS_NAME_DROPSTART = 'dropstart';\nconst CLASS_NAME_DROPUP_CENTER = 'dropup-center';\nconst CLASS_NAME_DROPDOWN_CENTER = 'dropdown-center';\nconst SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle=\"dropdown\"]:not(.disabled):not(:disabled)';\nconst SELECTOR_DATA_TOGGLE_SHOWN = `${SELECTOR_DATA_TOGGLE$3}.${CLASS_NAME_SHOW$6}`;\nconst SELECTOR_MENU = '.dropdown-menu';\nconst SELECTOR_NAVBAR = '.navbar';\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav';\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)';\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start';\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end';\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start';\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end';\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start';\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start';\nconst PLACEMENT_TOPCENTER = 'top';\nconst PLACEMENT_BOTTOMCENTER = 'bottom';\nconst Default$9 = {\n autoClose: true,\n boundary: 'clippingParents',\n display: 'dynamic',\n offset: [0, 2],\n popperConfig: null,\n reference: 'toggle'\n};\nconst DefaultType$9 = {\n autoClose: '(boolean|string)',\n boundary: '(string|element)',\n display: 'string',\n offset: '(array|string|function)',\n popperConfig: '(null|object|function)',\n reference: '(string|element|object)'\n};\n\n/**\n * Class definition\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._popper = null;\n this._parent = this._element.parentNode; // dropdown wrapper\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);\n this._inNavbar = this._detectNavbar();\n }\n\n // Getters\n static get Default() {\n return Default$9;\n }\n static get DefaultType() {\n return DefaultType$9;\n }\n static get NAME() {\n return NAME$a;\n }\n\n // Public\n toggle() {\n return this._isShown() ? this.hide() : this.show();\n }\n show() {\n if (isDisabled(this._element) || this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$5, relatedTarget);\n if (showEvent.defaultPrevented) {\n return;\n }\n this._createPopper();\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement && !this._parent.closest(SELECTOR_NAVBAR_NAV)) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n this._element.focus();\n this._element.setAttribute('aria-expanded', true);\n this._menu.classList.add(CLASS_NAME_SHOW$6);\n this._element.classList.add(CLASS_NAME_SHOW$6);\n EventHandler.trigger(this._element, EVENT_SHOWN$5, relatedTarget);\n }\n hide() {\n if (isDisabled(this._element) || !this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n this._completeHide(relatedTarget);\n }\n dispose() {\n if (this._popper) {\n this._popper.destroy();\n }\n super.dispose();\n }\n update() {\n this._inNavbar = this._detectNavbar();\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Private\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$5, relatedTarget);\n if (hideEvent.defaultPrevented) {\n return;\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n if (this._popper) {\n this._popper.destroy();\n }\n this._menu.classList.remove(CLASS_NAME_SHOW$6);\n this._element.classList.remove(CLASS_NAME_SHOW$6);\n this._element.setAttribute('aria-expanded', 'false');\n Manipulator.removeDataAttribute(this._menu, 'popper');\n EventHandler.trigger(this._element, EVENT_HIDDEN$5, relatedTarget);\n }\n _getConfig(config) {\n config = super._getConfig(config);\n if (typeof config.reference === 'object' && !isElement(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME$a.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`);\n }\n return config;\n }\n _createPopper() {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)');\n }\n let referenceElement = this._element;\n if (this._config.reference === 'parent') {\n referenceElement = this._parent;\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference);\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference;\n }\n const popperConfig = this._getPopperConfig();\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig);\n }\n _isShown() {\n return this._menu.classList.contains(CLASS_NAME_SHOW$6);\n }\n _getPlacement() {\n const parentDropdown = this._parent;\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP_CENTER)) {\n return PLACEMENT_TOPCENTER;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPDOWN_CENTER)) {\n return PLACEMENT_BOTTOMCENTER;\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end';\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP;\n }\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM;\n }\n _detectNavbar() {\n return this._element.closest(SELECTOR_NAVBAR) !== null;\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n };\n\n // Disable Popper if we have a static display or Dropdown is in Navbar\n if (this._inNavbar || this._config.display === 'static') {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // TODO: v6 remove\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }];\n }\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _selectMenuItem({\n key,\n target\n }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(element => isVisible(element));\n if (!items.length) {\n return;\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY$1, !items.includes(target)).focus();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Dropdown.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n static clearMenus(event) {\n if (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY$1) {\n return;\n }\n const openToggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE_SHOWN);\n for (const toggle of openToggles) {\n const context = Dropdown.getInstance(toggle);\n if (!context || context._config.autoClose === false) {\n continue;\n }\n const composedPath = event.composedPath();\n const isMenuTarget = composedPath.includes(context._menu);\n if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) {\n continue;\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY$1 || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue;\n }\n const relatedTarget = {\n relatedTarget: context._element\n };\n if (event.type === 'click') {\n relatedTarget.clickEvent = event;\n }\n context._completeHide(relatedTarget);\n }\n }\n static dataApiKeydownHandler(event) {\n // If not an UP | DOWN | ESCAPE key => not a dropdown command\n // If input/textarea && if key is other than ESCAPE => not a dropdown command\n\n const isInput = /input|textarea/i.test(event.target.tagName);\n const isEscapeEvent = event.key === ESCAPE_KEY$2;\n const isUpOrDownEvent = [ARROW_UP_KEY$1, ARROW_DOWN_KEY$1].includes(event.key);\n if (!isUpOrDownEvent && !isEscapeEvent) {\n return;\n }\n if (isInput && !isEscapeEvent) {\n return;\n }\n event.preventDefault();\n\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);\n const instance = Dropdown.getOrCreateInstance(getToggleButton);\n if (isUpOrDownEvent) {\n event.stopPropagation();\n instance.show();\n instance._selectMenuItem(event);\n return;\n }\n if (instance._isShown()) {\n // else is escape and we check if it is shown\n event.stopPropagation();\n instance.hide();\n getToggleButton.focus();\n }\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) {\n event.preventDefault();\n Dropdown.getOrCreateInstance(this).toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Dropdown);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$9 = 'backdrop';\nconst CLASS_NAME_FADE$4 = 'fade';\nconst CLASS_NAME_SHOW$5 = 'show';\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME$9}`;\nconst Default$8 = {\n className: 'modal-backdrop',\n clickCallback: null,\n isAnimated: false,\n isVisible: true,\n // if false, we use the backdrop helper without adding any element to the dom\n rootElement: 'body' // give the choice to place backdrop under different elements\n};\n\nconst DefaultType$8 = {\n className: 'string',\n clickCallback: '(function|null)',\n isAnimated: 'boolean',\n isVisible: 'boolean',\n rootElement: '(element|string)'\n};\n\n/**\n * Class definition\n */\n\nclass Backdrop extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isAppended = false;\n this._element = null;\n }\n\n // Getters\n static get Default() {\n return Default$8;\n }\n static get DefaultType() {\n return DefaultType$8;\n }\n static get NAME() {\n return NAME$9;\n }\n\n // Public\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._append();\n const element = this._getElement();\n if (this._config.isAnimated) {\n reflow(element);\n }\n element.classList.add(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n execute(callback);\n });\n }\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._getElement().classList.remove(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n this.dispose();\n execute(callback);\n });\n }\n dispose() {\n if (!this._isAppended) {\n return;\n }\n EventHandler.off(this._element, EVENT_MOUSEDOWN);\n this._element.remove();\n this._isAppended = false;\n }\n\n // Private\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div');\n backdrop.className = this._config.className;\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE$4);\n }\n this._element = backdrop;\n }\n return this._element;\n }\n _configAfterMerge(config) {\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement);\n return config;\n }\n _append() {\n if (this._isAppended) {\n return;\n }\n const element = this._getElement();\n this._config.rootElement.append(element);\n EventHandler.on(element, EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback);\n });\n this._isAppended = true;\n }\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated);\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/focustrap.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$8 = 'focustrap';\nconst DATA_KEY$5 = 'bs.focustrap';\nconst EVENT_KEY$5 = `.${DATA_KEY$5}`;\nconst EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$5}`;\nconst EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY$5}`;\nconst TAB_KEY = 'Tab';\nconst TAB_NAV_FORWARD = 'forward';\nconst TAB_NAV_BACKWARD = 'backward';\nconst Default$7 = {\n autofocus: true,\n trapElement: null // The element to trap focus inside of\n};\n\nconst DefaultType$7 = {\n autofocus: 'boolean',\n trapElement: 'element'\n};\n\n/**\n * Class definition\n */\n\nclass FocusTrap extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isActive = false;\n this._lastTabNavDirection = null;\n }\n\n // Getters\n static get Default() {\n return Default$7;\n }\n static get DefaultType() {\n return DefaultType$7;\n }\n static get NAME() {\n return NAME$8;\n }\n\n // Public\n activate() {\n if (this._isActive) {\n return;\n }\n if (this._config.autofocus) {\n this._config.trapElement.focus();\n }\n EventHandler.off(document, EVENT_KEY$5); // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN$2, event => this._handleFocusin(event));\n EventHandler.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event));\n this._isActive = true;\n }\n deactivate() {\n if (!this._isActive) {\n return;\n }\n this._isActive = false;\n EventHandler.off(document, EVENT_KEY$5);\n }\n\n // Private\n _handleFocusin(event) {\n const {\n trapElement\n } = this._config;\n if (event.target === document || event.target === trapElement || trapElement.contains(event.target)) {\n return;\n }\n const elements = SelectorEngine.focusableChildren(trapElement);\n if (elements.length === 0) {\n trapElement.focus();\n } else if (this._lastTabNavDirection === TAB_NAV_BACKWARD) {\n elements[elements.length - 1].focus();\n } else {\n elements[0].focus();\n }\n }\n _handleKeydown(event) {\n if (event.key !== TAB_KEY) {\n return;\n }\n this._lastTabNavDirection = event.shiftKey ? TAB_NAV_BACKWARD : TAB_NAV_FORWARD;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';\nconst SELECTOR_STICKY_CONTENT = '.sticky-top';\nconst PROPERTY_PADDING = 'padding-right';\nconst PROPERTY_MARGIN = 'margin-right';\n\n/**\n * Class definition\n */\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body;\n }\n\n // Public\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth;\n return Math.abs(window.innerWidth - documentWidth);\n }\n hide() {\n const width = this.getWidth();\n this._disableOverFlow();\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);\n }\n reset() {\n this._resetElementAttributes(this._element, 'overflow');\n this._resetElementAttributes(this._element, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);\n }\n isOverflowing() {\n return this.getWidth() > 0;\n }\n\n // Private\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow');\n this._element.style.overflow = 'hidden';\n }\n _setElementAttributes(selector, styleProperty, callback) {\n const scrollbarWidth = this.getWidth();\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return;\n }\n this._saveInitialAttribute(element, styleProperty);\n const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);\n element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _saveInitialAttribute(element, styleProperty) {\n const actualValue = element.style.getPropertyValue(styleProperty);\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProperty, actualValue);\n }\n }\n _resetElementAttributes(selector, styleProperty) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProperty);\n // We only want to remove the property if the value is `null`; the value can also be zero\n if (value === null) {\n element.style.removeProperty(styleProperty);\n return;\n }\n Manipulator.removeDataAttribute(element, styleProperty);\n element.style.setProperty(styleProperty, value);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector);\n return;\n }\n for (const sel of SelectorEngine.find(selector, this._element)) {\n callBack(sel);\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$7 = 'modal';\nconst DATA_KEY$4 = 'bs.modal';\nconst EVENT_KEY$4 = `.${DATA_KEY$4}`;\nconst DATA_API_KEY$2 = '.data-api';\nconst ESCAPE_KEY$1 = 'Escape';\nconst EVENT_HIDE$4 = `hide${EVENT_KEY$4}`;\nconst EVENT_HIDE_PREVENTED$1 = `hidePrevented${EVENT_KEY$4}`;\nconst EVENT_HIDDEN$4 = `hidden${EVENT_KEY$4}`;\nconst EVENT_SHOW$4 = `show${EVENT_KEY$4}`;\nconst EVENT_SHOWN$4 = `shown${EVENT_KEY$4}`;\nconst EVENT_RESIZE$1 = `resize${EVENT_KEY$4}`;\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY$4}`;\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$4}`;\nconst EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$4}`;\nconst EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$4}${DATA_API_KEY$2}`;\nconst CLASS_NAME_OPEN = 'modal-open';\nconst CLASS_NAME_FADE$3 = 'fade';\nconst CLASS_NAME_SHOW$4 = 'show';\nconst CLASS_NAME_STATIC = 'modal-static';\nconst OPEN_SELECTOR$1 = '.modal.show';\nconst SELECTOR_DIALOG = '.modal-dialog';\nconst SELECTOR_MODAL_BODY = '.modal-body';\nconst SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle=\"modal\"]';\nconst Default$6 = {\n backdrop: true,\n focus: true,\n keyboard: true\n};\nconst DefaultType$6 = {\n backdrop: '(boolean|string)',\n focus: 'boolean',\n keyboard: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element);\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._isShown = false;\n this._isTransitioning = false;\n this._scrollBar = new ScrollBarHelper();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$6;\n }\n static get DefaultType() {\n return DefaultType$6;\n }\n static get NAME() {\n return NAME$7;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._isTransitioning = true;\n this._scrollBar.hide();\n document.body.classList.add(CLASS_NAME_OPEN);\n this._adjustDialog();\n this._backdrop.show(() => this._showElement(relatedTarget));\n }\n hide() {\n if (!this._isShown || this._isTransitioning) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._isShown = false;\n this._isTransitioning = true;\n this._focustrap.deactivate();\n this._element.classList.remove(CLASS_NAME_SHOW$4);\n this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());\n }\n dispose() {\n EventHandler.off(window, EVENT_KEY$4);\n EventHandler.off(this._dialog, EVENT_KEY$4);\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n handleUpdate() {\n this._adjustDialog();\n }\n\n // Private\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop),\n // 'static' option will be translated to true, and booleans will keep their value,\n isAnimated: this._isAnimated()\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _showElement(relatedTarget) {\n // try to append dynamic modal\n if (!document.body.contains(this._element)) {\n document.body.append(this._element);\n }\n this._element.style.display = 'block';\n this._element.removeAttribute('aria-hidden');\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.scrollTop = 0;\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog);\n if (modalBody) {\n modalBody.scrollTop = 0;\n }\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_SHOW$4);\n const transitionComplete = () => {\n if (this._config.focus) {\n this._focustrap.activate();\n }\n this._isTransitioning = false;\n EventHandler.trigger(this._element, EVENT_SHOWN$4, {\n relatedTarget\n });\n };\n this._queueCallback(transitionComplete, this._dialog, this._isAnimated());\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => {\n if (event.key !== ESCAPE_KEY$1) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n this._triggerBackdropTransition();\n });\n EventHandler.on(window, EVENT_RESIZE$1, () => {\n if (this._isShown && !this._isTransitioning) {\n this._adjustDialog();\n }\n });\n EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {\n // a bad trick to segregate clicks that may start inside dialog but end outside, and avoid listen to scrollbar clicks\n EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {\n if (this._element !== event.target || this._element !== event2.target) {\n return;\n }\n if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition();\n return;\n }\n if (this._config.backdrop) {\n this.hide();\n }\n });\n });\n }\n _hideModal() {\n this._element.style.display = 'none';\n this._element.setAttribute('aria-hidden', true);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n this._isTransitioning = false;\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN);\n this._resetAdjustments();\n this._scrollBar.reset();\n EventHandler.trigger(this._element, EVENT_HIDDEN$4);\n });\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE$3);\n }\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED$1);\n if (hideEvent.defaultPrevented) {\n return;\n }\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const initialOverflowY = this._element.style.overflowY;\n // return if the following background transition hasn't yet completed\n if (initialOverflowY === 'hidden' || this._element.classList.contains(CLASS_NAME_STATIC)) {\n return;\n }\n if (!isModalOverflowing) {\n this._element.style.overflowY = 'hidden';\n }\n this._element.classList.add(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.classList.remove(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.style.overflowY = initialOverflowY;\n }, this._dialog);\n }, this._dialog);\n this._element.focus();\n }\n\n /**\n * The following methods are used to handle overflowing modals\n */\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const scrollbarWidth = this._scrollBar.getWidth();\n const isBodyOverflowing = scrollbarWidth > 0;\n if (isBodyOverflowing && !isModalOverflowing) {\n const property = isRTL() ? 'paddingLeft' : 'paddingRight';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n if (!isBodyOverflowing && isModalOverflowing) {\n const property = isRTL() ? 'paddingRight' : 'paddingLeft';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n }\n _resetAdjustments() {\n this._element.style.paddingLeft = '';\n this._element.style.paddingRight = '';\n }\n\n // Static\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](relatedTarget);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n EventHandler.one(target, EVENT_SHOW$4, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$4, () => {\n if (isVisible(this)) {\n this.focus();\n }\n });\n });\n\n // avoid conflict when clicking modal toggler while another one is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR$1);\n if (alreadyOpen) {\n Modal.getInstance(alreadyOpen).hide();\n }\n const data = Modal.getOrCreateInstance(target);\n data.toggle(this);\n});\nenableDismissTrigger(Modal);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Modal);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$6 = 'offcanvas';\nconst DATA_KEY$3 = 'bs.offcanvas';\nconst EVENT_KEY$3 = `.${DATA_KEY$3}`;\nconst DATA_API_KEY$1 = '.data-api';\nconst EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst ESCAPE_KEY = 'Escape';\nconst CLASS_NAME_SHOW$3 = 'show';\nconst CLASS_NAME_SHOWING$1 = 'showing';\nconst CLASS_NAME_HIDING = 'hiding';\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop';\nconst OPEN_SELECTOR = '.offcanvas.show';\nconst EVENT_SHOW$3 = `show${EVENT_KEY$3}`;\nconst EVENT_SHOWN$3 = `shown${EVENT_KEY$3}`;\nconst EVENT_HIDE$3 = `hide${EVENT_KEY$3}`;\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$3}`;\nconst EVENT_HIDDEN$3 = `hidden${EVENT_KEY$3}`;\nconst EVENT_RESIZE = `resize${EVENT_KEY$3}`;\nconst EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$3}`;\nconst SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle=\"offcanvas\"]';\nconst Default$5 = {\n backdrop: true,\n keyboard: true,\n scroll: false\n};\nconst DefaultType$5 = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n scroll: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isShown = false;\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$5;\n }\n static get DefaultType() {\n return DefaultType$5;\n }\n static get NAME() {\n return NAME$6;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._backdrop.show();\n if (!this._config.scroll) {\n new ScrollBarHelper().hide();\n }\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.classList.add(CLASS_NAME_SHOWING$1);\n const completeCallBack = () => {\n if (!this._config.scroll || this._config.backdrop) {\n this._focustrap.activate();\n }\n this._element.classList.add(CLASS_NAME_SHOW$3);\n this._element.classList.remove(CLASS_NAME_SHOWING$1);\n EventHandler.trigger(this._element, EVENT_SHOWN$3, {\n relatedTarget\n });\n };\n this._queueCallback(completeCallBack, this._element, true);\n }\n hide() {\n if (!this._isShown) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._focustrap.deactivate();\n this._element.blur();\n this._isShown = false;\n this._element.classList.add(CLASS_NAME_HIDING);\n this._backdrop.hide();\n const completeCallback = () => {\n this._element.classList.remove(CLASS_NAME_SHOW$3, CLASS_NAME_HIDING);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n if (!this._config.scroll) {\n new ScrollBarHelper().reset();\n }\n EventHandler.trigger(this._element, EVENT_HIDDEN$3);\n };\n this._queueCallback(completeCallback, this._element, true);\n }\n dispose() {\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n\n // Private\n _initializeBackDrop() {\n const clickCallback = () => {\n if (this._config.backdrop === 'static') {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n return;\n }\n this.hide();\n };\n\n // 'static' option will be translated to true, and booleans will keep their value\n const isVisible = Boolean(this._config.backdrop);\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: isVisible ? clickCallback : null\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n });\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$3, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus();\n }\n });\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);\n if (alreadyOpen && alreadyOpen !== target) {\n Offcanvas.getInstance(alreadyOpen).hide();\n }\n const data = Offcanvas.getOrCreateInstance(target);\n data.toggle(this);\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$2, () => {\n for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {\n Offcanvas.getOrCreateInstance(selector).show();\n }\n});\nEventHandler.on(window, EVENT_RESIZE, () => {\n for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {\n if (getComputedStyle(element).position !== 'fixed') {\n Offcanvas.getOrCreateInstance(element).hide();\n }\n }\n});\nenableDismissTrigger(Offcanvas);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Offcanvas);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n// js-docs-start allow-list\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\nconst DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n};\n// js-docs-end allow-list\n\nconst uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);\n\n/**\n * A pattern that recognizes URLs that are safe wrt. XSS in URL navigation\n * contexts.\n *\n * Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38\n */\n// eslint-disable-next-line unicorn/better-regex\nconst SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;\nconst allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase();\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue));\n }\n return true;\n }\n\n // Check if a regular expression validates the attribute.\n return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));\n};\nfunction sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {\n if (!unsafeHtml.length) {\n return unsafeHtml;\n }\n if (sanitizeFunction && typeof sanitizeFunction === 'function') {\n return sanitizeFunction(unsafeHtml);\n }\n const domParser = new window.DOMParser();\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'));\n for (const element of elements) {\n const elementName = element.nodeName.toLowerCase();\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove();\n continue;\n }\n const attributeList = [].concat(...element.attributes);\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || []);\n for (const attribute of attributeList) {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName);\n }\n }\n }\n return createdDocument.body.innerHTML;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/template-factory.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$5 = 'TemplateFactory';\nconst Default$4 = {\n allowList: DefaultAllowlist,\n content: {},\n // { selector : text , selector2 : text2 , }\n extraClass: '',\n html: false,\n sanitize: true,\n sanitizeFn: null,\n template: '
'\n};\nconst DefaultType$4 = {\n allowList: 'object',\n content: 'object',\n extraClass: '(string|function)',\n html: 'boolean',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n template: 'string'\n};\nconst DefaultContentType = {\n entry: '(string|element|function|null)',\n selector: '(string|element)'\n};\n\n/**\n * Class definition\n */\n\nclass TemplateFactory extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n }\n\n // Getters\n static get Default() {\n return Default$4;\n }\n static get DefaultType() {\n return DefaultType$4;\n }\n static get NAME() {\n return NAME$5;\n }\n\n // Public\n getContent() {\n return Object.values(this._config.content).map(config => this._resolvePossibleFunction(config)).filter(Boolean);\n }\n hasContent() {\n return this.getContent().length > 0;\n }\n changeContent(content) {\n this._checkContent(content);\n this._config.content = {\n ...this._config.content,\n ...content\n };\n return this;\n }\n toHtml() {\n const templateWrapper = document.createElement('div');\n templateWrapper.innerHTML = this._maybeSanitize(this._config.template);\n for (const [selector, text] of Object.entries(this._config.content)) {\n this._setContent(templateWrapper, text, selector);\n }\n const template = templateWrapper.children[0];\n const extraClass = this._resolvePossibleFunction(this._config.extraClass);\n if (extraClass) {\n template.classList.add(...extraClass.split(' '));\n }\n return template;\n }\n\n // Private\n _typeCheckConfig(config) {\n super._typeCheckConfig(config);\n this._checkContent(config.content);\n }\n _checkContent(arg) {\n for (const [selector, content] of Object.entries(arg)) {\n super._typeCheckConfig({\n selector,\n entry: content\n }, DefaultContentType);\n }\n }\n _setContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template);\n if (!templateElement) {\n return;\n }\n content = this._resolvePossibleFunction(content);\n if (!content) {\n templateElement.remove();\n return;\n }\n if (isElement(content)) {\n this._putElementInTemplate(getElement(content), templateElement);\n return;\n }\n if (this._config.html) {\n templateElement.innerHTML = this._maybeSanitize(content);\n return;\n }\n templateElement.textContent = content;\n }\n _maybeSanitize(arg) {\n return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this]);\n }\n _putElementInTemplate(element, templateElement) {\n if (this._config.html) {\n templateElement.innerHTML = '';\n templateElement.append(element);\n return;\n }\n templateElement.textContent = element.textContent;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$4 = 'tooltip';\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']);\nconst CLASS_NAME_FADE$2 = 'fade';\nconst CLASS_NAME_MODAL = 'modal';\nconst CLASS_NAME_SHOW$2 = 'show';\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner';\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`;\nconst EVENT_MODAL_HIDE = 'hide.bs.modal';\nconst TRIGGER_HOVER = 'hover';\nconst TRIGGER_FOCUS = 'focus';\nconst TRIGGER_CLICK = 'click';\nconst TRIGGER_MANUAL = 'manual';\nconst EVENT_HIDE$2 = 'hide';\nconst EVENT_HIDDEN$2 = 'hidden';\nconst EVENT_SHOW$2 = 'show';\nconst EVENT_SHOWN$2 = 'shown';\nconst EVENT_INSERTED = 'inserted';\nconst EVENT_CLICK$1 = 'click';\nconst EVENT_FOCUSIN$1 = 'focusin';\nconst EVENT_FOCUSOUT$1 = 'focusout';\nconst EVENT_MOUSEENTER = 'mouseenter';\nconst EVENT_MOUSELEAVE = 'mouseleave';\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n};\nconst Default$3 = {\n allowList: DefaultAllowlist,\n animation: true,\n boundary: 'clippingParents',\n container: false,\n customClass: '',\n delay: 0,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n html: false,\n offset: [0, 6],\n placement: 'top',\n popperConfig: null,\n sanitize: true,\n sanitizeFn: null,\n selector: false,\n template: '
' + '
' + '
' + '
',\n title: '',\n trigger: 'hover focus'\n};\nconst DefaultType$3 = {\n allowList: 'object',\n animation: 'boolean',\n boundary: '(string|element)',\n container: '(string|element|boolean)',\n customClass: '(string|function)',\n delay: '(number|object)',\n fallbackPlacements: 'array',\n html: 'boolean',\n offset: '(array|string|function)',\n placement: '(string|function)',\n popperConfig: '(null|object|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n selector: '(string|boolean)',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string'\n};\n\n/**\n * Class definition\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)');\n }\n super(element, config);\n\n // Private\n this._isEnabled = true;\n this._timeout = 0;\n this._isHovered = null;\n this._activeTrigger = {};\n this._popper = null;\n this._templateFactory = null;\n this._newContent = null;\n\n // Protected\n this.tip = null;\n this._setListeners();\n if (!this._config.selector) {\n this._fixTitle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$3;\n }\n static get DefaultType() {\n return DefaultType$3;\n }\n static get NAME() {\n return NAME$4;\n }\n\n // Public\n enable() {\n this._isEnabled = true;\n }\n disable() {\n this._isEnabled = false;\n }\n toggleEnabled() {\n this._isEnabled = !this._isEnabled;\n }\n toggle() {\n if (!this._isEnabled) {\n return;\n }\n this._activeTrigger.click = !this._activeTrigger.click;\n if (this._isShown()) {\n this._leave();\n return;\n }\n this._enter();\n }\n dispose() {\n clearTimeout(this._timeout);\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n if (this._element.getAttribute('data-bs-original-title')) {\n this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));\n }\n this._disposePopper();\n super.dispose();\n }\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements');\n }\n if (!(this._isWithContent() && this._isEnabled)) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW$2));\n const shadowRoot = findShadowRoot(this._element);\n const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element);\n if (showEvent.defaultPrevented || !isInTheDom) {\n return;\n }\n\n // TODO: v6 remove this or make it optional\n this._disposePopper();\n const tip = this._getTipElement();\n this._element.setAttribute('aria-describedby', tip.getAttribute('id'));\n const {\n container\n } = this._config;\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip);\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED));\n }\n this._popper = this._createPopper(tip);\n tip.classList.add(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n const complete = () => {\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN$2));\n if (this._isHovered === false) {\n this._leave();\n }\n this._isHovered = false;\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n hide() {\n if (!this._isShown()) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE$2));\n if (hideEvent.defaultPrevented) {\n return;\n }\n const tip = this._getTipElement();\n tip.classList.remove(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n this._activeTrigger[TRIGGER_CLICK] = false;\n this._activeTrigger[TRIGGER_FOCUS] = false;\n this._activeTrigger[TRIGGER_HOVER] = false;\n this._isHovered = null; // it is a trick to support manual triggering\n\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return;\n }\n if (!this._isHovered) {\n this._disposePopper();\n }\n this._element.removeAttribute('aria-describedby');\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN$2));\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n update() {\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Protected\n _isWithContent() {\n return Boolean(this._getTitle());\n }\n _getTipElement() {\n if (!this.tip) {\n this.tip = this._createTipElement(this._newContent || this._getContentForTemplate());\n }\n return this.tip;\n }\n _createTipElement(content) {\n const tip = this._getTemplateFactory(content).toHtml();\n\n // TODO: remove this check in v6\n if (!tip) {\n return null;\n }\n tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);\n // TODO: v6 the following can be achieved with CSS only\n tip.classList.add(`bs-${this.constructor.NAME}-auto`);\n const tipId = getUID(this.constructor.NAME).toString();\n tip.setAttribute('id', tipId);\n if (this._isAnimated()) {\n tip.classList.add(CLASS_NAME_FADE$2);\n }\n return tip;\n }\n setContent(content) {\n this._newContent = content;\n if (this._isShown()) {\n this._disposePopper();\n this.show();\n }\n }\n _getTemplateFactory(content) {\n if (this._templateFactory) {\n this._templateFactory.changeContent(content);\n } else {\n this._templateFactory = new TemplateFactory({\n ...this._config,\n // the `content` var has to be after `this._config`\n // to override config.content in case of popover\n content,\n extraClass: this._resolvePossibleFunction(this._config.customClass)\n });\n }\n return this._templateFactory;\n }\n _getContentForTemplate() {\n return {\n [SELECTOR_TOOLTIP_INNER]: this._getTitle()\n };\n }\n _getTitle() {\n return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');\n }\n\n // Private\n _initializeOnDelegatedTarget(event) {\n return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());\n }\n _isAnimated() {\n return this._config.animation || this.tip && this.tip.classList.contains(CLASS_NAME_FADE$2);\n }\n _isShown() {\n return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW$2);\n }\n _createPopper(tip) {\n const placement = execute(this._config.placement, [this, tip, this._element]);\n const attachment = AttachmentMap[placement.toUpperCase()];\n return Popper.createPopper(this._element, tip, this._getPopperConfig(attachment));\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this._element]);\n }\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [{\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }, {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n }, {\n name: 'preSetPlacement',\n enabled: true,\n phase: 'beforeMain',\n fn: data => {\n // Pre-set Popper's placement attribute in order to read the arrow sizes properly.\n // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement\n this._getTipElement().setAttribute('data-popper-placement', data.state.placement);\n }\n }]\n };\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _setListeners() {\n const triggers = this._config.trigger.split(' ');\n for (const trigger of triggers) {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context.toggle();\n });\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN$1);\n const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT$1);\n EventHandler.on(this._element, eventIn, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true;\n context._enter();\n });\n EventHandler.on(this._element, eventOut, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget);\n context._leave();\n });\n }\n }\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide();\n }\n };\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n }\n _fixTitle() {\n const title = this._element.getAttribute('title');\n if (!title) {\n return;\n }\n if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {\n this._element.setAttribute('aria-label', title);\n }\n this._element.setAttribute('data-bs-original-title', title); // DO NOT USE IT. Is only for backwards compatibility\n this._element.removeAttribute('title');\n }\n _enter() {\n if (this._isShown() || this._isHovered) {\n this._isHovered = true;\n return;\n }\n this._isHovered = true;\n this._setTimeout(() => {\n if (this._isHovered) {\n this.show();\n }\n }, this._config.delay.show);\n }\n _leave() {\n if (this._isWithActiveTrigger()) {\n return;\n }\n this._isHovered = false;\n this._setTimeout(() => {\n if (!this._isHovered) {\n this.hide();\n }\n }, this._config.delay.hide);\n }\n _setTimeout(handler, timeout) {\n clearTimeout(this._timeout);\n this._timeout = setTimeout(handler, timeout);\n }\n _isWithActiveTrigger() {\n return Object.values(this._activeTrigger).includes(true);\n }\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element);\n for (const dataAttribute of Object.keys(dataAttributes)) {\n if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {\n delete dataAttributes[dataAttribute];\n }\n }\n config = {\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n };\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n config.container = config.container === false ? document.body : getElement(config.container);\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n };\n }\n if (typeof config.title === 'number') {\n config.title = config.title.toString();\n }\n if (typeof config.content === 'number') {\n config.content = config.content.toString();\n }\n return config;\n }\n _getDelegateConfig() {\n const config = {};\n for (const [key, value] of Object.entries(this._config)) {\n if (this.constructor.Default[key] !== value) {\n config[key] = value;\n }\n }\n config.selector = false;\n config.trigger = 'manual';\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config;\n }\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy();\n this._popper = null;\n }\n if (this.tip) {\n this.tip.remove();\n this.tip = null;\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tooltip);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$3 = 'popover';\nconst SELECTOR_TITLE = '.popover-header';\nconst SELECTOR_CONTENT = '.popover-body';\nconst Default$2 = {\n ...Tooltip.Default,\n content: '',\n offset: [0, 8],\n placement: 'right',\n template: '
' + '
' + '

' + '
' + '
',\n trigger: 'click'\n};\nconst DefaultType$2 = {\n ...Tooltip.DefaultType,\n content: '(null|string|element|function)'\n};\n\n/**\n * Class definition\n */\n\nclass Popover extends Tooltip {\n // Getters\n static get Default() {\n return Default$2;\n }\n static get DefaultType() {\n return DefaultType$2;\n }\n static get NAME() {\n return NAME$3;\n }\n\n // Overrides\n _isWithContent() {\n return this._getTitle() || this._getContent();\n }\n\n // Private\n _getContentForTemplate() {\n return {\n [SELECTOR_TITLE]: this._getTitle(),\n [SELECTOR_CONTENT]: this._getContent()\n };\n }\n _getContent() {\n return this._resolvePossibleFunction(this._config.content);\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Popover);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$2 = 'scrollspy';\nconst DATA_KEY$2 = 'bs.scrollspy';\nconst EVENT_KEY$2 = `.${DATA_KEY$2}`;\nconst DATA_API_KEY = '.data-api';\nconst EVENT_ACTIVATE = `activate${EVENT_KEY$2}`;\nconst EVENT_CLICK = `click${EVENT_KEY$2}`;\nconst EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$2}${DATA_API_KEY}`;\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';\nconst CLASS_NAME_ACTIVE$1 = 'active';\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]';\nconst SELECTOR_TARGET_LINKS = '[href]';\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';\nconst SELECTOR_NAV_LINKS = '.nav-link';\nconst SELECTOR_NAV_ITEMS = '.nav-item';\nconst SELECTOR_LIST_ITEMS = '.list-group-item';\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`;\nconst SELECTOR_DROPDOWN = '.dropdown';\nconst SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle';\nconst Default$1 = {\n offset: null,\n // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null,\n threshold: [0.1, 0.5, 1]\n};\nconst DefaultType$1 = {\n offset: '(number|null)',\n // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element',\n threshold: 'array'\n};\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map();\n this._observableSections = new Map();\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element;\n this._activeTarget = null;\n this._observer = null;\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n };\n this.refresh(); // initialize\n }\n\n // Getters\n static get Default() {\n return Default$1;\n }\n static get DefaultType() {\n return DefaultType$1;\n }\n static get NAME() {\n return NAME$2;\n }\n\n // Public\n refresh() {\n this._initializeTargetsAndObservables();\n this._maybeEnableSmoothScroll();\n if (this._observer) {\n this._observer.disconnect();\n } else {\n this._observer = this._getNewObserver();\n }\n for (const section of this._observableSections.values()) {\n this._observer.observe(section);\n }\n }\n dispose() {\n this._observer.disconnect();\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body;\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin;\n if (typeof config.threshold === 'string') {\n config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value));\n }\n return config;\n }\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return;\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK);\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash);\n if (observableSection) {\n event.preventDefault();\n const root = this._rootElement || window;\n const height = observableSection.offsetTop - this._element.offsetTop;\n if (root.scrollTo) {\n root.scrollTo({\n top: height,\n behavior: 'smooth'\n });\n return;\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height;\n }\n });\n }\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: this._config.threshold,\n rootMargin: this._config.rootMargin\n };\n return new IntersectionObserver(entries => this._observerCallback(entries), options);\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`);\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop;\n this._process(targetElement(entry));\n };\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop;\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop;\n this._previousScrollData.parentScrollTop = parentScrollTop;\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null;\n this._clearActiveClass(targetElement(entry));\n continue;\n }\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop;\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry);\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return;\n }\n continue;\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry);\n }\n }\n }\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map();\n this._observableSections = new Map();\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target);\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue;\n }\n const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element);\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(decodeURI(anchor.hash), anchor);\n this._observableSections.set(anchor.hash, observableSection);\n }\n }\n }\n _process(target) {\n if (this._activeTarget === target) {\n return;\n }\n this._clearActiveClass(this._config.target);\n this._activeTarget = target;\n target.classList.add(CLASS_NAME_ACTIVE$1);\n this._activateParents(target);\n EventHandler.trigger(this._element, EVENT_ACTIVATE, {\n relatedTarget: target\n });\n }\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, target.closest(SELECTOR_DROPDOWN)).classList.add(CLASS_NAME_ACTIVE$1);\n return;\n }\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both
\n // instead of:\n //
  • - - a
\n // So, to prevent it, we will put a marker (¨A)in the beginning of the line\n // Kind of hackish/monkey patching, but seems more effective than overcomplicating the list parser\n item = item.replace(/^([-*+]|\\d\\.)[ \\t]+[\\S\\n ]*/g, function (wm2) {\n return '¨A' + wm2;\n });\n\n // m1 - Leading line or\n // Has a double return (multi paragraph) or\n // Has sublist\n if (m1 || (item.search(/\\n{2,}/) > -1)) {\n item = showdown.subParser('githubCodeBlocks')(item, options, globals);\n item = showdown.subParser('blockGamut')(item, options, globals);\n } else {\n // Recursion for sub-lists:\n item = showdown.subParser('lists')(item, options, globals);\n item = item.replace(/\\n$/, ''); // chomp(item)\n item = showdown.subParser('hashHTMLBlocks')(item, options, globals);\n\n // Colapse double linebreaks\n item = item.replace(/\\n\\n+/g, '\\n\\n');\n if (isParagraphed) {\n item = showdown.subParser('paragraphs')(item, options, globals);\n } else {\n item = showdown.subParser('spanGamut')(item, options, globals);\n }\n }\n\n // now we need to remove the marker (¨A)\n item = item.replace('¨A', '');\n // we can finally wrap the line in list item tags\n item = '' + item + '\\n';\n\n return item;\n });\n\n // attacklab: strip sentinel\n listStr = listStr.replace(/¨0/g, '');\n\n globals.gListLevel--;\n\n if (trimTrailing) {\n listStr = listStr.replace(/\\s+$/, '');\n }\n\n return listStr;\n }\n\n function styleStartNumber (list, listType) {\n // check if ol and starts by a number different than 1\n if (listType === 'ol') {\n var res = list.match(/^ *(\\d+)\\./);\n if (res && res[1] !== '1') {\n return ' start=\"' + res[1] + '\"';\n }\n }\n return '';\n }\n\n /**\n * Check and parse consecutive lists (better fix for issue #142)\n * @param {string} list\n * @param {string} listType\n * @param {boolean} trimTrailing\n * @returns {string}\n */\n function parseConsecutiveLists (list, listType, trimTrailing) {\n // check if we caught 2 or more consecutive lists by mistake\n // we use the counterRgx, meaning if listType is UL we look for OL and vice versa\n var olRgx = (options.disableForced4SpacesIndentedSublists) ? /^ ?\\d+\\.[ \\t]/gm : /^ {0,3}\\d+\\.[ \\t]/gm,\n ulRgx = (options.disableForced4SpacesIndentedSublists) ? /^ ?[*+-][ \\t]/gm : /^ {0,3}[*+-][ \\t]/gm,\n counterRxg = (listType === 'ul') ? olRgx : ulRgx,\n result = '';\n\n if (list.search(counterRxg) !== -1) {\n (function parseCL (txt) {\n var pos = txt.search(counterRxg),\n style = styleStartNumber(list, listType);\n if (pos !== -1) {\n // slice\n result += '\\n\\n<' + listType + style + '>\\n' + processListItems(txt.slice(0, pos), !!trimTrailing) + '\\n';\n\n // invert counterType and listType\n listType = (listType === 'ul') ? 'ol' : 'ul';\n counterRxg = (listType === 'ul') ? olRgx : ulRgx;\n\n //recurse\n parseCL(txt.slice(pos));\n } else {\n result += '\\n\\n<' + listType + style + '>\\n' + processListItems(txt, !!trimTrailing) + '\\n';\n }\n })(list);\n } else {\n var style = styleStartNumber(list, listType);\n result = '\\n\\n<' + listType + style + '>\\n' + processListItems(list, !!trimTrailing) + '\\n';\n }\n\n return result;\n }\n\n /** Start of list parsing **/\n text = globals.converter._dispatch('lists.before', text, options, globals);\n // add sentinel to hack around khtml/safari bug:\n // http://bugs.webkit.org/show_bug.cgi?id=11231\n text += '¨0';\n\n if (globals.gListLevel) {\n text = text.replace(/^(( {0,3}([*+-]|\\d+[.])[ \\t]+)[^\\r]+?(¨0|\\n{2,}(?=\\S)(?![ \\t]*(?:[*+-]|\\d+[.])[ \\t]+)))/gm,\n function (wholeMatch, list, m2) {\n var listType = (m2.search(/[*+-]/g) > -1) ? 'ul' : 'ol';\n return parseConsecutiveLists(list, listType, true);\n }\n );\n } else {\n text = text.replace(/(\\n\\n|^\\n?)(( {0,3}([*+-]|\\d+[.])[ \\t]+)[^\\r]+?(¨0|\\n{2,}(?=\\S)(?![ \\t]*(?:[*+-]|\\d+[.])[ \\t]+)))/gm,\n function (wholeMatch, m1, list, m3) {\n var listType = (m3.search(/[*+-]/g) > -1) ? 'ul' : 'ol';\n return parseConsecutiveLists(list, listType, false);\n }\n );\n }\n\n // strip sentinel\n text = text.replace(/¨0/, '');\n text = globals.converter._dispatch('lists.after', text, options, globals);\n return text;\n});\n\r\n/**\n * Parse metadata at the top of the document\n */\nshowdown.subParser('metadata', function (text, options, globals) {\n 'use strict';\n\n if (!options.metadata) {\n return text;\n }\n\n text = globals.converter._dispatch('metadata.before', text, options, globals);\n\n function parseMetadataContents (content) {\n // raw is raw so it's not changed in any way\n globals.metadata.raw = content;\n\n // escape chars forbidden in html attributes\n // double quotes\n content = content\n // ampersand first\n .replace(/&/g, '&')\n // double quotes\n .replace(/\"/g, '"');\n\n content = content.replace(/\\n {4}/g, ' ');\n content.replace(/^([\\S ]+): +([\\s\\S]+?)$/gm, function (wm, key, value) {\n globals.metadata.parsed[key] = value;\n return '';\n });\n }\n\n text = text.replace(/^\\s*«««+(\\S*?)\\n([\\s\\S]+?)\\n»»»+\\n/, function (wholematch, format, content) {\n parseMetadataContents(content);\n return '¨M';\n });\n\n text = text.replace(/^\\s*---+(\\S*?)\\n([\\s\\S]+?)\\n---+\\n/, function (wholematch, format, content) {\n if (format) {\n globals.metadata.format = format;\n }\n parseMetadataContents(content);\n return '¨M';\n });\n\n text = text.replace(/¨M/g, '');\n\n text = globals.converter._dispatch('metadata.after', text, options, globals);\n return text;\n});\n\r\n/**\n * Remove one level of line-leading tabs or spaces\n */\nshowdown.subParser('outdent', function (text, options, globals) {\n 'use strict';\n text = globals.converter._dispatch('outdent.before', text, options, globals);\n\n // attacklab: hack around Konqueror 3.5.4 bug:\n // \"----------bug\".replace(/^-/g,\"\") == \"bug\"\n text = text.replace(/^(\\t|[ ]{1,4})/gm, '¨0'); // attacklab: g_tab_width\n\n // attacklab: clean up hack\n text = text.replace(/¨0/g, '');\n\n text = globals.converter._dispatch('outdent.after', text, options, globals);\n return text;\n});\n\r\n/**\n *\n */\nshowdown.subParser('paragraphs', function (text, options, globals) {\n 'use strict';\n\n text = globals.converter._dispatch('paragraphs.before', text, options, globals);\n // Strip leading and trailing lines:\n text = text.replace(/^\\n+/g, '');\n text = text.replace(/\\n+$/g, '');\n\n var grafs = text.split(/\\n{2,}/g),\n grafsOut = [],\n end = grafs.length; // Wrap

tags\n\n for (var i = 0; i < end; i++) {\n var str = grafs[i];\n // if this is an HTML marker, copy it\n if (str.search(/¨(K|G)(\\d+)\\1/g) >= 0) {\n grafsOut.push(str);\n\n // test for presence of characters to prevent empty lines being parsed\n // as paragraphs (resulting in undesired extra empty paragraphs)\n } else if (str.search(/\\S/) >= 0) {\n str = showdown.subParser('spanGamut')(str, options, globals);\n str = str.replace(/^([ \\t]*)/g, '

');\n str += '

';\n grafsOut.push(str);\n }\n }\n\n /** Unhashify HTML blocks */\n end = grafsOut.length;\n for (i = 0; i < end; i++) {\n var blockText = '',\n grafsOutIt = grafsOut[i],\n codeFlag = false;\n // if this is a marker for an html block...\n // use RegExp.test instead of string.search because of QML bug\n while (/¨(K|G)(\\d+)\\1/.test(grafsOutIt)) {\n var delim = RegExp.$1,\n num = RegExp.$2;\n\n if (delim === 'K') {\n blockText = globals.gHtmlBlocks[num];\n } else {\n // we need to check if ghBlock is a false positive\n if (codeFlag) {\n // use encoded version of all text\n blockText = showdown.subParser('encodeCode')(globals.ghCodeBlocks[num].text, options, globals);\n } else {\n blockText = globals.ghCodeBlocks[num].codeblock;\n }\n }\n blockText = blockText.replace(/\\$/g, '$$$$'); // Escape any dollar signs\n\n grafsOutIt = grafsOutIt.replace(/(\\n\\n)?¨(K|G)\\d+\\2(\\n\\n)?/, blockText);\n // Check if grafsOutIt is a pre->code\n if (/^]*>\\s*]*>/.test(grafsOutIt)) {\n codeFlag = true;\n }\n }\n grafsOut[i] = grafsOutIt;\n }\n text = grafsOut.join('\\n');\n // Strip leading and trailing lines:\n text = text.replace(/^\\n+/g, '');\n text = text.replace(/\\n+$/g, '');\n return globals.converter._dispatch('paragraphs.after', text, options, globals);\n});\n\r\n/**\n * Run extension\n */\nshowdown.subParser('runExtension', function (ext, text, options, globals) {\n 'use strict';\n\n if (ext.filter) {\n text = ext.filter(text, globals.converter, options);\n\n } else if (ext.regex) {\n // TODO remove this when old extension loading mechanism is deprecated\n var re = ext.regex;\n if (!(re instanceof RegExp)) {\n re = new RegExp(re, 'g');\n }\n text = text.replace(re, ext.replace);\n }\n\n return text;\n});\n\r\n/**\n * These are all the transformations that occur *within* block-level\n * tags like paragraphs, headers, and list items.\n */\nshowdown.subParser('spanGamut', function (text, options, globals) {\n 'use strict';\n\n text = globals.converter._dispatch('spanGamut.before', text, options, globals);\n text = showdown.subParser('codeSpans')(text, options, globals);\n text = showdown.subParser('escapeSpecialCharsWithinTagAttributes')(text, options, globals);\n text = showdown.subParser('encodeBackslashEscapes')(text, options, globals);\n\n // Process anchor and image tags. Images must come first,\n // because ![foo][f] looks like an anchor.\n text = showdown.subParser('images')(text, options, globals);\n text = showdown.subParser('anchors')(text, options, globals);\n\n // Make links out of things like ``\n // Must come after anchors, because you can use < and >\n // delimiters in inline links like [this]().\n text = showdown.subParser('autoLinks')(text, options, globals);\n text = showdown.subParser('simplifiedAutoLinks')(text, options, globals);\n text = showdown.subParser('emoji')(text, options, globals);\n text = showdown.subParser('underline')(text, options, globals);\n text = showdown.subParser('italicsAndBold')(text, options, globals);\n text = showdown.subParser('strikethrough')(text, options, globals);\n text = showdown.subParser('ellipsis')(text, options, globals);\n\n // we need to hash HTML tags inside spans\n text = showdown.subParser('hashHTMLSpans')(text, options, globals);\n\n // now we encode amps and angles\n text = showdown.subParser('encodeAmpsAndAngles')(text, options, globals);\n\n // Do hard breaks\n if (options.simpleLineBreaks) {\n // GFM style hard breaks\n // only add line breaks if the text does not contain a block (special case for lists)\n if (!/\\n\\n¨K/.test(text)) {\n text = text.replace(/\\n+/g, '
\\n');\n }\n } else {\n // Vanilla hard breaks\n text = text.replace(/ +\\n/g, '
\\n');\n }\n\n text = globals.converter._dispatch('spanGamut.after', text, options, globals);\n return text;\n});\n\r\nshowdown.subParser('strikethrough', function (text, options, globals) {\n 'use strict';\n\n function parseInside (txt) {\n if (options.simplifiedAutoLink) {\n txt = showdown.subParser('simplifiedAutoLinks')(txt, options, globals);\n }\n return '' + txt + '';\n }\n\n if (options.strikethrough) {\n text = globals.converter._dispatch('strikethrough.before', text, options, globals);\n text = text.replace(/(?:~){2}([\\s\\S]+?)(?:~){2}/g, function (wm, txt) { return parseInside(txt); });\n text = globals.converter._dispatch('strikethrough.after', text, options, globals);\n }\n\n return text;\n});\n\r\n/**\n * Strips link definitions from text, stores the URLs and titles in\n * hash references.\n * Link defs are in the form: ^[id]: url \"optional title\"\n */\nshowdown.subParser('stripLinkDefinitions', function (text, options, globals) {\n 'use strict';\n\n var regex = /^ {0,3}\\[([^\\]]+)]:[ \\t]*\\n?[ \\t]*\\s]+)>?(?: =([*\\d]+[A-Za-z%]{0,4})x([*\\d]+[A-Za-z%]{0,4}))?[ \\t]*\\n?[ \\t]*(?:(\\n*)[\"|'(](.+?)[\"|')][ \\t]*)?(?:\\n+|(?=¨0))/gm,\n base64Regex = /^ {0,3}\\[([^\\]]+)]:[ \\t]*\\n?[ \\t]*?(?: =([*\\d]+[A-Za-z%]{0,4})x([*\\d]+[A-Za-z%]{0,4}))?[ \\t]*\\n?[ \\t]*(?:(\\n*)[\"|'(](.+?)[\"|')][ \\t]*)?(?:\\n\\n|(?=¨0)|(?=\\n\\[))/gm;\n\n // attacklab: sentinel workarounds for lack of \\A and \\Z, safari\\khtml bug\n text += '¨0';\n\n var replaceFunc = function (wholeMatch, linkId, url, width, height, blankLines, title) {\n\n // if there aren't two instances of linkId it must not be a reference link so back out\n linkId = linkId.toLowerCase();\n if (text.toLowerCase().split(linkId).length - 1 < 2) {\n return wholeMatch;\n }\n if (url.match(/^data:.+?\\/.+?;base64,/)) {\n // remove newlines\n globals.gUrls[linkId] = url.replace(/\\s/g, '');\n } else {\n globals.gUrls[linkId] = showdown.subParser('encodeAmpsAndAngles')(url, options, globals); // Link IDs are case-insensitive\n }\n\n if (blankLines) {\n // Oops, found blank lines, so it's not a title.\n // Put back the parenthetical statement we stole.\n return blankLines + title;\n\n } else {\n if (title) {\n globals.gTitles[linkId] = title.replace(/\"|'/g, '"');\n }\n if (options.parseImgDimensions && width && height) {\n globals.gDimensions[linkId] = {\n width: width,\n height: height\n };\n }\n }\n // Completely remove the definition from the text\n return '';\n };\n\n // first we try to find base64 link references\n text = text.replace(base64Regex, replaceFunc);\n\n text = text.replace(regex, replaceFunc);\n\n // attacklab: strip sentinel\n text = text.replace(/¨0/, '');\n\n return text;\n});\n\r\nshowdown.subParser('tables', function (text, options, globals) {\n 'use strict';\n\n if (!options.tables) {\n return text;\n }\n\n var tableRgx = /^ {0,3}\\|?.+\\|.+\\n {0,3}\\|?[ \\t]*:?[ \\t]*(?:[-=]){2,}[ \\t]*:?[ \\t]*\\|[ \\t]*:?[ \\t]*(?:[-=]){2,}[\\s\\S]+?(?:\\n\\n|¨0)/gm,\n //singeColTblRgx = /^ {0,3}\\|.+\\|\\n {0,3}\\|[ \\t]*:?[ \\t]*(?:[-=]){2,}[ \\t]*:?[ \\t]*\\|[ \\t]*\\n(?: {0,3}\\|.+\\|\\n)+(?:\\n\\n|¨0)/gm;\n singeColTblRgx = /^ {0,3}\\|.+\\|[ \\t]*\\n {0,3}\\|[ \\t]*:?[ \\t]*(?:[-=]){2,}[ \\t]*:?[ \\t]*\\|[ \\t]*\\n( {0,3}\\|.+\\|[ \\t]*\\n)*(?:\\n|¨0)/gm;\n\n function parseStyles (sLine) {\n if (/^:[ \\t]*--*$/.test(sLine)) {\n return ' style=\"text-align:left;\"';\n } else if (/^--*[ \\t]*:[ \\t]*$/.test(sLine)) {\n return ' style=\"text-align:right;\"';\n } else if (/^:[ \\t]*--*[ \\t]*:$/.test(sLine)) {\n return ' style=\"text-align:center;\"';\n } else {\n return '';\n }\n }\n\n function parseHeaders (header, style) {\n var id = '';\n header = header.trim();\n // support both tablesHeaderId and tableHeaderId due to error in documentation so we don't break backwards compatibility\n if (options.tablesHeaderId || options.tableHeaderId) {\n id = ' id=\"' + header.replace(/ /g, '_').toLowerCase() + '\"';\n }\n header = showdown.subParser('spanGamut')(header, options, globals);\n\n return '' + header + '\\n';\n }\n\n function parseCells (cell, style) {\n var subText = showdown.subParser('spanGamut')(cell, options, globals);\n return '' + subText + '\\n';\n }\n\n function buildTable (headers, cells) {\n var tb = '\\n\\n\\n',\n tblLgn = headers.length;\n\n for (var i = 0; i < tblLgn; ++i) {\n tb += headers[i];\n }\n tb += '\\n\\n\\n';\n\n for (i = 0; i < cells.length; ++i) {\n tb += '\\n';\n for (var ii = 0; ii < tblLgn; ++ii) {\n tb += cells[i][ii];\n }\n tb += '\\n';\n }\n tb += '\\n
\\n';\n return tb;\n }\n\n function parseTable (rawTable) {\n var i, tableLines = rawTable.split('\\n');\n\n for (i = 0; i < tableLines.length; ++i) {\n // strip wrong first and last column if wrapped tables are used\n if (/^ {0,3}\\|/.test(tableLines[i])) {\n tableLines[i] = tableLines[i].replace(/^ {0,3}\\|/, '');\n }\n if (/\\|[ \\t]*$/.test(tableLines[i])) {\n tableLines[i] = tableLines[i].replace(/\\|[ \\t]*$/, '');\n }\n // parse code spans first, but we only support one line code spans\n tableLines[i] = showdown.subParser('codeSpans')(tableLines[i], options, globals);\n }\n\n var rawHeaders = tableLines[0].split('|').map(function (s) { return s.trim();}),\n rawStyles = tableLines[1].split('|').map(function (s) { return s.trim();}),\n rawCells = [],\n headers = [],\n styles = [],\n cells = [];\n\n tableLines.shift();\n tableLines.shift();\n\n for (i = 0; i < tableLines.length; ++i) {\n if (tableLines[i].trim() === '') {\n continue;\n }\n rawCells.push(\n tableLines[i]\n .split('|')\n .map(function (s) {\n return s.trim();\n })\n );\n }\n\n if (rawHeaders.length < rawStyles.length) {\n return rawTable;\n }\n\n for (i = 0; i < rawStyles.length; ++i) {\n styles.push(parseStyles(rawStyles[i]));\n }\n\n for (i = 0; i < rawHeaders.length; ++i) {\n if (showdown.helper.isUndefined(styles[i])) {\n styles[i] = '';\n }\n headers.push(parseHeaders(rawHeaders[i], styles[i]));\n }\n\n for (i = 0; i < rawCells.length; ++i) {\n var row = [];\n for (var ii = 0; ii < headers.length; ++ii) {\n if (showdown.helper.isUndefined(rawCells[i][ii])) {\n\n }\n row.push(parseCells(rawCells[i][ii], styles[ii]));\n }\n cells.push(row);\n }\n\n return buildTable(headers, cells);\n }\n\n text = globals.converter._dispatch('tables.before', text, options, globals);\n\n // find escaped pipe characters\n text = text.replace(/\\\\(\\|)/g, showdown.helper.escapeCharactersCallback);\n\n // parse multi column tables\n text = text.replace(tableRgx, parseTable);\n\n // parse one column tables\n text = text.replace(singeColTblRgx, parseTable);\n\n text = globals.converter._dispatch('tables.after', text, options, globals);\n\n return text;\n});\n\r\nshowdown.subParser('underline', function (text, options, globals) {\n 'use strict';\n\n if (!options.underline) {\n return text;\n }\n\n text = globals.converter._dispatch('underline.before', text, options, globals);\n\n if (options.literalMidWordUnderscores) {\n text = text.replace(/\\b___(\\S[\\s\\S]*?)___\\b/g, function (wm, txt) {\n return '' + txt + '';\n });\n text = text.replace(/\\b__(\\S[\\s\\S]*?)__\\b/g, function (wm, txt) {\n return '' + txt + '';\n });\n } else {\n text = text.replace(/___(\\S[\\s\\S]*?)___/g, function (wm, m) {\n return (/\\S$/.test(m)) ? '' + m + '' : wm;\n });\n text = text.replace(/__(\\S[\\s\\S]*?)__/g, function (wm, m) {\n return (/\\S$/.test(m)) ? '' + m + '' : wm;\n });\n }\n\n // escape remaining underscores to prevent them being parsed by italic and bold\n text = text.replace(/(_)/g, showdown.helper.escapeCharactersCallback);\n\n text = globals.converter._dispatch('underline.after', text, options, globals);\n\n return text;\n});\n\r\n/**\n * Swap back in all the special characters we've hidden.\n */\nshowdown.subParser('unescapeSpecialChars', function (text, options, globals) {\n 'use strict';\n text = globals.converter._dispatch('unescapeSpecialChars.before', text, options, globals);\n\n text = text.replace(/¨E(\\d+)E/g, function (wholeMatch, m1) {\n var charCodeToReplace = parseInt(m1);\n return String.fromCharCode(charCodeToReplace);\n });\n\n text = globals.converter._dispatch('unescapeSpecialChars.after', text, options, globals);\n return text;\n});\n\r\nshowdown.subParser('makeMarkdown.blockquote', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n var children = node.childNodes,\n childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; ++i) {\n var innerTxt = showdown.subParser('makeMarkdown.node')(children[i], globals);\n\n if (innerTxt === '') {\n continue;\n }\n txt += innerTxt;\n }\n }\n // cleanup\n txt = txt.trim();\n txt = '> ' + txt.split('\\n').join('\\n> ');\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.codeBlock', function (node, globals) {\n 'use strict';\n\n var lang = node.getAttribute('language'),\n num = node.getAttribute('precodenum');\n return '```' + lang + '\\n' + globals.preList[num] + '\\n```';\n});\n\r\nshowdown.subParser('makeMarkdown.codeSpan', function (node) {\n 'use strict';\n\n return '`' + node.innerHTML + '`';\n});\n\r\nshowdown.subParser('makeMarkdown.emphasis', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n txt += '*';\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '*';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.header', function (node, globals, headerLevel) {\n 'use strict';\n\n var headerMark = new Array(headerLevel + 1).join('#'),\n txt = '';\n\n if (node.hasChildNodes()) {\n txt = headerMark + ' ';\n var children = node.childNodes,\n childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.hr', function () {\n 'use strict';\n\n return '---';\n});\n\r\nshowdown.subParser('makeMarkdown.image', function (node) {\n 'use strict';\n\n var txt = '';\n if (node.hasAttribute('src')) {\n txt += '![' + node.getAttribute('alt') + '](';\n txt += '<' + node.getAttribute('src') + '>';\n if (node.hasAttribute('width') && node.hasAttribute('height')) {\n txt += ' =' + node.getAttribute('width') + 'x' + node.getAttribute('height');\n }\n\n if (node.hasAttribute('title')) {\n txt += ' \"' + node.getAttribute('title') + '\"';\n }\n txt += ')';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.links', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes() && node.hasAttribute('href')) {\n var children = node.childNodes,\n childrenLength = children.length;\n txt = '[';\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '](';\n txt += '<' + node.getAttribute('href') + '>';\n if (node.hasAttribute('title')) {\n txt += ' \"' + node.getAttribute('title') + '\"';\n }\n txt += ')';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.list', function (node, globals, type) {\n 'use strict';\n\n var txt = '';\n if (!node.hasChildNodes()) {\n return '';\n }\n var listItems = node.childNodes,\n listItemsLenght = listItems.length,\n listNum = node.getAttribute('start') || 1;\n\n for (var i = 0; i < listItemsLenght; ++i) {\n if (typeof listItems[i].tagName === 'undefined' || listItems[i].tagName.toLowerCase() !== 'li') {\n continue;\n }\n\n // define the bullet to use in list\n var bullet = '';\n if (type === 'ol') {\n bullet = listNum.toString() + '. ';\n } else {\n bullet = '- ';\n }\n\n // parse list item\n txt += bullet + showdown.subParser('makeMarkdown.listItem')(listItems[i], globals);\n ++listNum;\n }\n\n // add comment at the end to prevent consecutive lists to be parsed as one\n txt += '\\n\\n';\n return txt.trim();\n});\n\r\nshowdown.subParser('makeMarkdown.listItem', function (node, globals) {\n 'use strict';\n\n var listItemTxt = '';\n\n var children = node.childNodes,\n childrenLenght = children.length;\n\n for (var i = 0; i < childrenLenght; ++i) {\n listItemTxt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n // if it's only one liner, we need to add a newline at the end\n if (!/\\n$/.test(listItemTxt)) {\n listItemTxt += '\\n';\n } else {\n // it's multiparagraph, so we need to indent\n listItemTxt = listItemTxt\n .split('\\n')\n .join('\\n ')\n .replace(/^ {4}$/gm, '')\n .replace(/\\n\\n+/g, '\\n\\n');\n }\n\n return listItemTxt;\n});\n\r\n\n\nshowdown.subParser('makeMarkdown.node', function (node, globals, spansOnly) {\n 'use strict';\n\n spansOnly = spansOnly || false;\n\n var txt = '';\n\n // edge case of text without wrapper paragraph\n if (node.nodeType === 3) {\n return showdown.subParser('makeMarkdown.txt')(node, globals);\n }\n\n // HTML comment\n if (node.nodeType === 8) {\n return '\\n\\n';\n }\n\n // process only node elements\n if (node.nodeType !== 1) {\n return '';\n }\n\n var tagName = node.tagName.toLowerCase();\n\n switch (tagName) {\n\n //\n // BLOCKS\n //\n case 'h1':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 1) + '\\n\\n'; }\n break;\n case 'h2':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 2) + '\\n\\n'; }\n break;\n case 'h3':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 3) + '\\n\\n'; }\n break;\n case 'h4':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 4) + '\\n\\n'; }\n break;\n case 'h5':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 5) + '\\n\\n'; }\n break;\n case 'h6':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 6) + '\\n\\n'; }\n break;\n\n case 'p':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.paragraph')(node, globals) + '\\n\\n'; }\n break;\n\n case 'blockquote':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.blockquote')(node, globals) + '\\n\\n'; }\n break;\n\n case 'hr':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.hr')(node, globals) + '\\n\\n'; }\n break;\n\n case 'ol':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.list')(node, globals, 'ol') + '\\n\\n'; }\n break;\n\n case 'ul':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.list')(node, globals, 'ul') + '\\n\\n'; }\n break;\n\n case 'precode':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.codeBlock')(node, globals) + '\\n\\n'; }\n break;\n\n case 'pre':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.pre')(node, globals) + '\\n\\n'; }\n break;\n\n case 'table':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.table')(node, globals) + '\\n\\n'; }\n break;\n\n //\n // SPANS\n //\n case 'code':\n txt = showdown.subParser('makeMarkdown.codeSpan')(node, globals);\n break;\n\n case 'em':\n case 'i':\n txt = showdown.subParser('makeMarkdown.emphasis')(node, globals);\n break;\n\n case 'strong':\n case 'b':\n txt = showdown.subParser('makeMarkdown.strong')(node, globals);\n break;\n\n case 'del':\n txt = showdown.subParser('makeMarkdown.strikethrough')(node, globals);\n break;\n\n case 'a':\n txt = showdown.subParser('makeMarkdown.links')(node, globals);\n break;\n\n case 'img':\n txt = showdown.subParser('makeMarkdown.image')(node, globals);\n break;\n\n default:\n txt = node.outerHTML + '\\n\\n';\n }\n\n // common normalization\n // TODO eventually\n\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.paragraph', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n }\n\n // some text normalization\n txt = txt.trim();\n\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.pre', function (node, globals) {\n 'use strict';\n\n var num = node.getAttribute('prenum');\n return '
' + globals.preList[num] + '
';\n});\n\r\nshowdown.subParser('makeMarkdown.strikethrough', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n txt += '~~';\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '~~';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.strong', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n txt += '**';\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '**';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.table', function (node, globals) {\n 'use strict';\n\n var txt = '',\n tableArray = [[], []],\n headings = node.querySelectorAll('thead>tr>th'),\n rows = node.querySelectorAll('tbody>tr'),\n i, ii;\n for (i = 0; i < headings.length; ++i) {\n var headContent = showdown.subParser('makeMarkdown.tableCell')(headings[i], globals),\n allign = '---';\n\n if (headings[i].hasAttribute('style')) {\n var style = headings[i].getAttribute('style').toLowerCase().replace(/\\s/g, '');\n switch (style) {\n case 'text-align:left;':\n allign = ':---';\n break;\n case 'text-align:right;':\n allign = '---:';\n break;\n case 'text-align:center;':\n allign = ':---:';\n break;\n }\n }\n tableArray[0][i] = headContent.trim();\n tableArray[1][i] = allign;\n }\n\n for (i = 0; i < rows.length; ++i) {\n var r = tableArray.push([]) - 1,\n cols = rows[i].getElementsByTagName('td');\n\n for (ii = 0; ii < headings.length; ++ii) {\n var cellContent = ' ';\n if (typeof cols[ii] !== 'undefined') {\n cellContent = showdown.subParser('makeMarkdown.tableCell')(cols[ii], globals);\n }\n tableArray[r].push(cellContent);\n }\n }\n\n var cellSpacesCount = 3;\n for (i = 0; i < tableArray.length; ++i) {\n for (ii = 0; ii < tableArray[i].length; ++ii) {\n var strLen = tableArray[i][ii].length;\n if (strLen > cellSpacesCount) {\n cellSpacesCount = strLen;\n }\n }\n }\n\n for (i = 0; i < tableArray.length; ++i) {\n for (ii = 0; ii < tableArray[i].length; ++ii) {\n if (i === 1) {\n if (tableArray[i][ii].slice(-1) === ':') {\n tableArray[i][ii] = showdown.helper.padEnd(tableArray[i][ii].slice(-1), cellSpacesCount - 1, '-') + ':';\n } else {\n tableArray[i][ii] = showdown.helper.padEnd(tableArray[i][ii], cellSpacesCount, '-');\n }\n } else {\n tableArray[i][ii] = showdown.helper.padEnd(tableArray[i][ii], cellSpacesCount);\n }\n }\n txt += '| ' + tableArray[i].join(' | ') + ' |\\n';\n }\n\n return txt.trim();\n});\n\r\nshowdown.subParser('makeMarkdown.tableCell', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (!node.hasChildNodes()) {\n return '';\n }\n var children = node.childNodes,\n childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals, true);\n }\n return txt.trim();\n});\n\r\nshowdown.subParser('makeMarkdown.txt', function (node) {\n 'use strict';\n\n var txt = node.nodeValue;\n\n // multiple spaces are collapsed\n txt = txt.replace(/ +/g, ' ');\n\n // replace the custom ¨NBSP; with a space\n txt = txt.replace(/¨NBSP;/g, ' ');\n\n // \", <, > and & should replace escaped html entities\n txt = showdown.helper.unescapeHTMLEntities(txt);\n\n // escape markdown magic characters\n // emphasis, strong and strikethrough - can appear everywhere\n // we also escape pipe (|) because of tables\n // and escape ` because of code blocks and spans\n txt = txt.replace(/([*_~|`])/g, '\\\\$1');\n\n // escape > because of blockquotes\n txt = txt.replace(/^(\\s*)>/g, '\\\\$1>');\n\n // hash character, only troublesome at the beginning of a line because of headers\n txt = txt.replace(/^#/gm, '\\\\#');\n\n // horizontal rules\n txt = txt.replace(/^(\\s*)([-=]{3,})(\\s*)$/, '$1\\\\$2$3');\n\n // dot, because of ordered lists, only troublesome at the beginning of a line when preceded by an integer\n txt = txt.replace(/^( {0,3}\\d+)\\./gm, '$1\\\\.');\n\n // +, * and -, at the beginning of a line becomes a list, so we need to escape them also (asterisk was already escaped)\n txt = txt.replace(/^( {0,3})([+-])/gm, '$1\\\\$2');\n\n // images and links, ] followed by ( is problematic, so we escape it\n txt = txt.replace(/]([\\s]*)\\(/g, '\\\\]$1\\\\(');\n\n // reference URIs must also be escaped\n txt = txt.replace(/^ {0,3}\\[([\\S \\t]*?)]:/gm, '\\\\[$1]:');\n\n return txt;\n});\n\r\nvar root = this;\n\n// AMD Loader\nif (typeof define === 'function' && define.amd) {\n define(function () {\n 'use strict';\n return showdown;\n });\n\n// CommonJS/nodeJS Loader\n} else if (typeof module !== 'undefined' && module.exports) {\n module.exports = showdown;\n\n// Regular Browser loader\n} else {\n root.showdown = showdown;\n}\n}).call(this);\r\n\n//# sourceMappingURL=showdown.js.map\r\n","import \"./index.css\";\n\nimport mapboxgl from \"mapbox-gl\";\nimport \"mapbox-gl/dist/mapbox-gl.css\";\n\nimport CompassControl from \"@mapbox-controls/compass\";\nimport InspectControl from \"@mapbox-controls/inspect\";\nimport StylesControl from \"@mapbox-controls/styles\";\nimport ZoomControl from \"@mapbox-controls/zoom\";\n\nimport \"@mapbox-controls/compass/src/index.css\";\nimport \"@mapbox-controls/inspect/src/index.css\";\nimport \"@mapbox-controls/styles/src/index.css\";\nimport \"@mapbox-controls/zoom/src/index.css\";\n\nimport \"bootstrap\";\nimport \"bootstrap/dist/css/bootstrap.min.css\";\n\nimport showdown from \"showdown\";\n\nfunction loginfo(...str) {\n let info = str.shift();\n console.log(\n `%c ${info} `,\n \"color:white; background-color: #78d6fa; border-radius:10px;\",\n ...str\n );\n}\nwindow.onload = async () => {\n const params = new Proxy(new URLSearchParams(window.location.search), {\n get: (searchParams, prop) => searchParams.get(prop),\n });\n\n const projection = params.projection || \"globe\";\n const mapId = params.id || \"worldMap\";\n\n let mIdData = (\n await (\n await fetch(\n `https://raw.githubusercontent.com/CIMEngine/MapList/main/index.json`\n )\n ).json()\n )[mapId];\n\n if (!mIdData) {\n alert(`Map ${mapId} not found`);\n }\n\n let mData = {};\n\n mData.external = params.external || mIdData.external;\n\n if (mData.external) {\n mData = await (await fetch(mData.external)).json();\n }\n\n mData.geoURL = params.geoURL || mIdData.geoURL;\n mData.countryInfoUrl = params.countryInfoURL || mIdData.countryInfoURL;\n mData.debug = params.debug || false;\n mData.icon = params.icon || mIdData.icon;\n mData.name = params.name || mIdData.name;\n\n if (mData.icon) {\n document.getElementById(\"icon\").setAttribute(\"href\", mData.icon);\n }\n\n if (mData.name) {\n document.title = mData.name;\n }\n\n mapboxgl.accessToken =\n \"pk.eyJ1IjoiYXJ0ZWdvc2VyIiwiYSI6ImNrcDViN3BhcDAwbW0ydnBnOXZ0ZzFreXUifQ.FIVtaBNr9dr_TIw672Zqdw\";\n let map = new mapboxgl.Map({\n container: \"map\",\n style: \"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true\",\n center: [53.19, 41.28],\n zoom: 3,\n projection: projection,\n });\n\n map.addControl(\n new StylesControl({\n styles: [\n {\n label: \"Streets\",\n styleName: \"Mapbox Streets\",\n styleUrl:\n \"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true\",\n },\n {\n label: \"Satellite\",\n styleName: \"Satellite\",\n styleUrl:\n \"mapbox://styles/artegoser/cliskjlhw00ug01pgfs9lesog?optimize=true\",\n },\n ],\n }),\n \"top-left\"\n );\n\n map.addControl(new ZoomControl(), \"top-right\");\n map.addControl(new CompassControl({ instant: true }), \"top-right\");\n\n if (mData.debug) {\n map.addControl(new InspectControl({ console: true }), \"bottom-right\");\n }\n\n let converter = new showdown.Converter();\n\n map.on(\"style.load\", async () => {\n map.loadImage(\n \"https://cimengine.github.io/map/icons/city.png\",\n (error, image) => {\n if (error) throw error;\n map.addImage(\"city\", image);\n }\n );\n\n map.loadImage(\n \"https://cimengine.github.io/map/icons/capital.png\",\n (error, image) => {\n if (error) throw error;\n map.addImage(\"capital-city\", image);\n map.addImage(\"capital\", image);\n }\n );\n\n map.loadImage(\n \"https://cimengine.github.io/map/icons/landmark.png\",\n (error, image) => {\n if (error) throw error;\n map.addImage(\"landmark-0\", image);\n }\n );\n\n let lasticocords;\n\n loginfo(\"Getting country data\");\n let coarray = await fetch(mData.countryInfoUrl);\n coarray = await coarray.json();\n let countries = {};\n for (let i = 0; i < coarray.length; i++)\n countries[coarray[i].idc] = coarray[i];\n\n map.addSource(\"map-data\", {\n type: \"geojson\",\n data: mData.geoURL,\n });\n\n map.addLayer({\n id: \"map-data-fill-outline\",\n type: \"line\",\n source: \"map-data\",\n paint: {\n \"line-color\": [\"coalesce\", [\"get\", \"stroke\"], \"#0c7700\"],\n \"line-width\": 2,\n \"line-opacity\": 0.8,\n },\n });\n\n map.addLayer({\n id: \"map-data-fill\",\n type: \"fill\",\n source: \"map-data\",\n paint: {\n \"fill-color\": [\"get\", \"fill\"],\n \"fill-opacity\": [\"coalesce\", [\"get\", \"fill-opacity\"], 0.3],\n },\n });\n\n map.addLayer({\n id: \"map-data-symbol\",\n type: \"symbol\",\n source: \"map-data\",\n layout: {\n \"icon-image\": [\"get\", \"type\"],\n \"icon-size\": 0.15,\n },\n minzoom: 3,\n });\n\n map.on(\"click\", \"map-data-fill\", (e) => {\n const coordinates = e.lngLat;\n while (Math.abs(e.lngLat.lng - coordinates[0]) > 180) {\n coordinates[0] += e.lngLat.lng > coordinates[0] ? 360 : -360;\n }\n\n onEachFeature(e.features[0], coordinates);\n });\n\n map.on(\"click\", \"map-data-symbol\", (e) => {\n const coordinates = e.lngLat;\n while (Math.abs(e.lngLat.lng - coordinates[0]) > 180) {\n coordinates[0] += e.lngLat.lng > coordinates[0] ? 360 : -360;\n }\n\n onEachFeature(e.features[0], coordinates);\n });\n\n function onEachFeature(feature, coordinates) {\n if (feature.geometry.type === \"Point\") {\n lasticocords = coordinates;\n return new mapboxgl.Popup()\n .setLngLat(coordinates)\n .setHTML(\n `\n ${\n feature?.properties?.amount\n ? `
Population - ${feature.properties.amount} people.
`\n : \"\"\n }\n
\n ${\n feature?.properties?.img\n ? `
\"${feature.properties.name}
`\n : \"\"\n }\n
\n
${feature.properties.name}\n ${\n feature.properties.name_ru\n ? ` - ${feature.properties.name_ru}`\n : \"\"\n }\n
\n
\n ${\n feature.properties.description\n ? `
${converter.makeHtml(\n feature.properties.description\n )}
`\n : \"\"\n }\n
\n `\n )\n .addTo(map);\n } else if (\n feature.geometry.type === \"Polygon\" ||\n feature.geometry.type === \"MultiPolygon\"\n ) {\n let country = countries[feature.properties.name] || {\n name: \"gl js mapbox is awesome\",\n };\n setTimeout(() => {\n if (country.name !== \"gl js mapbox is awesome\")\n if (lasticocords !== coordinates)\n return new mapboxgl.Popup()\n .setLngLat(coordinates)\n .setHTML(\n `\n
`\n )\n .addTo(map);\n }, 1);\n }\n }\n });\n};\n"],"names":["exports","shared","worker","mapboxgl","define","_","chunk","workerBundleString","sharedChunk","window","URL","createObjectURL","workerUrl","Blob","type","t","e","self","r","n","i","API_URL","API_URL_REGEX","process","env","RegExp","API_TILEJSON_REGEX","API_SPRITE_REGEX","API_FONTS_REGEX","API_STYLE_REGEX","API_CDN_URL_REGEX","EVENTS_URL","hostname","SESSION_PATH","FEEDBACK_URL","TILE_URL_VERSION","RASTER_URL_PREFIX","REQUIRE_ACCESS_TOKEN","ACCESS_TOKEN","MAX_PARALLEL_IMAGE_REQUESTS","s","supported","testSupport","l","o","u","c","a","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","isContextLost","deleteTexture","document","createElement","onload","onerror","src","h","p","__esModule","Object","prototype","hasOwnProperty","call","default","d","f","this","cx","bx","ax","cy","by","ay","p1x","p1y","p2x","p2y","sampleCurveX","sampleCurveY","sampleCurveDerivativeX","solveCurveX","Math","abs","solve","y","m","g","x","clone","add","_add","sub","_sub","multByPoint","_multByPoint","divByPoint","_divByPoint","mult","_mult","div","_div","rotate","_rotate","rotateAround","_rotateAround","matMult","_matMult","unit","_unit","perp","_perp","round","_round","mag","sqrt","equals","dist","distSqr","angle","atan2","angleTo","angleWith","angleWithSep","cos","sin","convert","Array","isArray","v","PI","b","w","A","S","k","I","M","min","max","T","z","B","length","forEach","E","push","C","P","D","V","random","toString","replace","L","pow","ceil","log","LN2","F","test","R","bind","U","indexOf","$","j","O","map","q","N","console","warn","G","Z","K","WorkerGlobalScope","X","toLowerCase","parseInt","isNaN","J","H","navigator","userAgent","safari","match","Y","setItem","removeItem","W","Q","rt","nt","tt","et","it","caches","st","open","at","slice","split","filter","join","ot","lt","Unknown","Style","Source","Tile","Glyphs","SpriteImage","SpriteJSON","Image","freeze","ut","Error","constructor","bt","super","status","url","name","message","ct","referrer","location","protocol","parent","href","ht","fetch","Request","AbortController","method","body","credentials","headers","referrerPolicy","signal","set","Date","now","then","ok","statusText","catch","arrayBuffer","json","text","Headers","get","toUTCString","getTime","Response","ReadableStream","blob","put","delete","cancel","abort","actor","send","XMLHttpRequest","responseType","setRequestHeader","withCredentials","response","JSON","parse","getResponseHeader","pt","dt","host","ft","yt","mt","gt","accept","requestParameters","callback","cancelled","shift","createImageBitmap","Uint8Array","revokeObjectURL","requestAnimationFrame","byteLength","xt","vt","wt","_t","At","St","kt","authority","path","params","It","Mt","Tt","decodeURIComponent","atob","charCodeAt","zt","anonId","eventData","queue","pendingRequest","getStorageKey","btoa","encodeURIComponent","String","fromCharCode","Number","fetchEventData","localStorage","getItem","saveEventData","keys","stringify","processRequests","postEvent","event","created","toISOString","queueRequest","Bt","_customAccessToken","postTurnstileEvent","some","lastSuccess","tokenU","getDate","sdkIdentifier","sdkVersion","skuId","userId","Et","Ct","success","skuToken","postMapLoadEvent","errorCb","id","timestamp","Pt","Dt","postPerformanceEvent","performanceData","performance","getEntriesByType","startTime","responseEnd","transferSize","jt","devicePixelRatio","connection","mozConnection","webkitConnection","counters","metadata","attributes","value","interactionRange","Ut","find","visibilityHidden","terrainEnabled","fogEnabled","projection","zoom","effectiveType","screen","width","height","innerWidth","innerHeight","renderer","vendor","Vt","Lt","getSession","getSessionAPI","Ft","Rt","Set","create","load","fullLoad","$t","mark","measure","includes","Ot","qt","getEntriesByName","Nt","Gt","Zt","Kt","Xt","setNow","restoreNow","frame","cancelAnimationFrame","getImageData","getContext","willReadFrequently","clearRect","drawImage","resolveURL","prefersReducedMotion","matchMedia","matches","Jt","Ht","splice","Yt","Wt","error","Qt","on","_listeners","off","_oneTimeListeners","once","Promise","fire","listens","target","_eventedParent","_eventedParentData","setEventedParent","te","ee","re","Boolean","valueOf","ne","ie","key","se","ae","bindings","concat","has","oe","le","kind","ue","ce","he","pe","de","fe","ye","me","ge","xe","itemType","ve","be","we","_e","Ae","Se","ke","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","Ie","Me","parseFloat","Te","ze","parseCSSColor","substr","pop","Be","toArray","toArray01","toArray01PremultipliedAlpha","Ee","Ce","sensitivity","locale","collator","Intl","Collator","usage","compare","resolvedLocale","resolvedOptions","Pe","normalize","image","scale","fontStack","textColor","De","sections","fromString","isEmpty","factory","serialize","Ve","available","Le","Fe","Re","Ue","$e","expectedType","evaluate","eachChild","outputDefined","je","Oe","toJSON","qe","string","number","boolean","object","Ne","args","floor","every","Ge","Ze","font","content","Ke","input","availableImages","Xe","Je","parseColor","He","Ye","We","globals","feature","featureState","formattedSection","_parseColorCache","canonical","featureTileCoord","featureDistanceData","geometryType","geometry","canonicalID","properties","distanceFromCenter","center","bearing","Qe","_evaluate","definitions","overloads","Ir","registry","scope","checkSubtype","errors","register","tr","er","caseSensitive","diacriticSensitive","rr","nr","ir","sr","ar","or","lr","ur","cr","hr","pr","dr","fr","yr","mr","gr","xr","geojson","geometries","features","coordinates","vr","br","wr","_r","Ar","boundExpression","Sr","kr","_parse","typeAnnotation","Mr","Tr","zr","labels","outputs","Br","Er","Cr","__proto__","array","color","Pr","Dr","Vr","Lr","Fr","Rr","Ur","$r","jr","Or","qr","Nr","Gr","alpha","Zr","Kr","Xr","forward","reverse","interpolate","Jr","Hr","hcl","lab","Yr","operator","interpolation","interpolationFactor","Wr","base","controlPoints","Qr","tn","en","rn","result","nn","sn","index","an","needle","haystack","ln","un","fromIndex","cn","hn","inputType","cases","otherwise","MAX_SAFE_INTEGER","sort","pn","dn","branches","fn","yn","beginIndex","endIndex","mn","gn","xn","vn","lhs","rhs","hasUntypedArgument","bn","wn","_n","An","Sn","kn","In","currency","minFractionDigits","maxFractionDigits","NumberFormat","style","minimumFractionDigits","maximumFractionDigits","format","Mn","Tn","case","coalesce","in","let","literal","step","var","within","zn","Bn","En","Cn","typeof","rgb","rgba","pitch","heatmapDensity","lineProgress","skyRadialProgress","accumulated","ln2","pi","log10","LN10","log2","asin","acos","atan","all","any","isSupportedScript","upcase","toUpperCase","downcase","Pn","Dn","Vn","Ln","Fn","expression","parameters","Rn","interpolated","Un","$n","jn","On","stops","property","colorSpace","Zn","Gn","Nn","Kn","interpolationType","zoomStops","qn","apply","values","Xn","_warningHistory","_evaluator","_defaultValue","_enumValues","evaluateWithoutErrorHandling","Jn","Hn","enum","formatted","resolvedImage","Yn","_styleExpression","isStateDependent","Wn","Qn","ei","ti","_parameters","_specification","deserialize","ri","identifier","__line__","line","ni","valueSpec","objectElementValidators","styleSpec","Fi","objectKey","required","ii","arrayElementValidator","minimum","maximum","function","$version","arrayIndex","si","ai","isFinite","oi","expressionContext","propertyKey","propertyType","li","size","ui","ci","hi","needGeometry","needFeature","xi","fi","di","dynamicFilter","gi","yi","mi","vi","_i","bi","wi","Ai","layerType","Si","filter_operator","geometry_type","ki","transition","tokens","exec","glyphs","Ii","Mi","Ti","ref","layers","source","sources","paint","lineMetrics","layer","layout","zi","Bi","promoteId","Ei","source_geojson","cluster","clusterProperties","source_video","source_image","Ci","reduce","Pi","light","Di","terrain","Vi","fog","Li","Ri","Ui","Oi","$root","$i","ji","qi","Ni","Zi","Gi","cells","ArrayBuffer","Int32Array","subarray","bboxes","insert","_insertReadonly","extent","padding","uid","_forEachCell","_insertCell","query","_queryCell","_convertToCellCoord","_convertFromCellCoord","toArrayBuffer","buffer","Ki","Xi","Ji","defineProperty","writeable","klass","omit","_classRegistryKey","Hi","Yi","ImageBitmap","Wi","isView","ImageData","data","$name","Qi","ts","Arabic","Khmer","Hiragana","Katakana","Bopomofo","Kanbun","es","is","rs","ns","ss","as","os","ls","us","cs","hs","ps","ds","fs","ys","ms","gs","pluginStatus","pluginURL","xs","vs","bs","applyArabicShaping","processBidirectionalText","processStyledBidirectionalText","isLoaded","isLoading","setState","isParsed","getPluginURL","ws","fadeDuration","_s","specification","isDataDriven","possiblyEvaluate","As","transitioned","ks","untransitioned","Ss","_properties","_values","defaultTransitionablePropertyValues","getValue","setValue","getTransition","setTransition","Is","delay","duration","begin","end","prior","defaultTransitioningPropertyValues","zs","hasTransition","Ms","defaultPropertyValues","Ts","isConstant","constantOr","defaultPossiblyEvaluatedValues","Bs","Es","overrides","Cs","Ps","overridableProperties","overridable","Ds","Vs","Int8","Int8Array","Uint8","Int16","Int16Array","Uint16","Uint16Array","Int32","Uint32","Uint32Array","Float32","Float32Array","Ls","_structArray","_pos1","_pos2","_pos4","_pos8","Fs","isTransferred","capacity","resize","_trim","bytesPerElement","_refreshViews","clear","reserve","uint8","destroy","int8","int16","uint16","int32","uint32","float32","Rs","members","BYTES_PER_ELEMENT","Us","components","offset","alignment","$s","emplaceBack","emplace","js","Os","qs","Ns","Gs","Zs","Ks","Xs","Js","Hs","Ys","Ws","Qs","ta","ea","ra","na","ia","sa","aa","oa","la","ua","ca","ha","projectedAnchorX","projectedAnchorY","projectedAnchorZ","tileAnchorX","tileAnchorY","x1","y1","x2","y2","featureIndex","sourceLayerIndex","bucketIndex","pa","da","glyphStartIndex","numGlyphs","vertexStartIndex","lineStartIndex","lineLength","segment","lowerSize","upperSize","lineOffsetX","lineOffsetY","writingMode","placedOrientation","hidden","crossTileID","associatedIconIndex","flipState","fa","ya","rightJustifiedTextSymbolIndex","centerJustifiedTextSymbolIndex","leftJustifiedTextSymbolIndex","verticalPlacedTextSymbolIndex","placedIconSymbolIndex","verticalPlacedIconSymbolIndex","textBoxStartIndex","textBoxEndIndex","verticalTextBoxStartIndex","verticalTextBoxEndIndex","iconBoxStartIndex","iconBoxEndIndex","verticalIconBoxStartIndex","verticalIconBoxEndIndex","numHorizontalGlyphVertices","numVerticalGlyphVertices","numIconVertices","numVerticalIconVertices","useRuntimeCollisionCircles","textOffset0","textOffset1","collisionCircleDiameter","ma","ga","getoffsetX","xa","getx","gety","va","layoutVertexArrayOffset","ba","wa","geta_centroid_pos0","geta_centroid_pos1","_a","Aa","Sa","ka","Ia","Ma","Ta","za","murmur3","murmur2","Ba","Ea","ids","positions","indexed","Ca","getPositions","start","Float64Array","Pa","MIN_SAFE_INTEGER","Da","Va","gl","initialized","fetchUniformLocation","getUniformLocation","La","current","uniform1f","Fa","uniform4f","Ra","Ua","$a","ja","Oa","qa","uniformNames","setUniform","getBinding","Na","pattern","pixelRatio","setConstantPatternPositions","tl","Ga","maxValue","paintVertexAttributes","paintVertexArray","populatePaintArray","_setPaintValue","updatePaintArray","upload","paintVertexBuffer","updateData","createVertexBuffer","Za","useIntegerZoom","Ka","layerId","_setPaintValues","patterns","Xa","binders","_buffers","Ya","endsWith","to","cacheKey","getMaxValue","populatePaintArrays","updatePaintArrays","defines","getBinderAttributes","getBinderUniforms","getPaintVertexBuffers","getUniforms","binding","setUniforms","updatePaintBuffers","Ja","programConfigurations","needsUpload","_featureMap","_bufferOffset","Ha","Wa","composite","Qa","eo","ro","_featureFilter","_filterCompiled","minzoom","maxzoom","sourceLayer","_unevaluatedLayout","_transitionablePaint","setPaintProperty","validate","setLayoutProperty","_transitioningPaint","getLayoutProperty","visibility","_validate","getPaintProperty","_handleSpecialPaintPropertyUpdate","_handleOverridablePaintPropertyUpdate","getProgramIds","getProgramConfiguration","isHidden","updateTransitions","recalculate","sprite","is3D","isSky","isTileClipped","hasOffscreenPass","compileFilter","invalidateCompiledFilter","dynamicFilterNeedsFeature","no","io","so","segments","prepareSegment","MAX_VERTEX_ARRAY_LENGTH","vertexLength","sortKey","vertexOffset","primitiveOffset","primitiveLength","vaos","simpleSegment","ao","oo","setSouthWest","setNorthEast","_ne","Ol","lng","lat","_sw","extend","getCenter","getSouthWest","getNorthEast","getNorthWest","getWest","getNorth","getSouthEast","getEast","getSouth","contains","lo","uo","co","ho","po","fo","yo","mo","go","xo","vo","bo","wo","hypot","arguments","_o","Ao","So","ko","Io","Mo","To","zo","Bo","Eo","Co","Po","Do","Vo","Lo","Fo","Ro","Uo","$o","jo","Oo","qo","No","Go","Zo","Ko","Xo","Jo","Ho","Yo","Wo","Qo","el","pos","dir","intersectsPlane","closestPointOnSphere","rl","TL","TR","BR","BL","horizon","fromInvProjectionMatrix","nl","points","planes","il","fromPoints","applyTransform","getCorners","quadrant","distanceX","distanceY","distanceZ","intersects","MAX_VALUE","sl","al","ol","ll","ul","cl","hl","pl","dl","fl","Ul","yl","_camera","position","worldSize","pixelMatrixInverse","globeMatrix","Nl","Gl","Wl","ml","xl","Sl","Al","vl","bl","Pl","wl","_l","point","Hl","_pixelsPerMercatorPixel","Kl","Xl","kl","Il","Ml","Tl","zl","Bl","El","Cl","Dl","_center","_pitch","cameraToCenterDistance","pixelsPerMeter","Vl","Ll","Fl","Rl","$l","jl","wrap","distanceTo","toBounds","toEcef","lon","ql","Zl","exp","Jl","Yl","fromLngLat","toLngLat","toAltitude","meterInMercatorCoordinateUnits","Ql","tu","eu","ru","nu","iu","su","au","loadGeometry","isReprojectedInTileSpace","project","ou","lu","uu","cu","overscaling","layerIds","hasPattern","layoutVertexArray","indexArray","stateDependentLayerIds","populate","globeExtVertexArray","addFeature","update","stateDependentLayers","uploadPending","uploaded","layoutVertexBuffer","indexBuffer","createIndexBuffer","globeExtVertexBuffer","projectTilePoint","upVector","hu","bu","yu","pu","gu","du","vu","fu","mu","xu","wu","_u","Au","Su","ku","Iu","Mu","layout_circle","Tu","paint_circle","zu","queryGeometry","isAboveHorizon","pixelToTileUnitsFactor","tileID","upVectorScale","metersToTile","elevation","exaggeration","getElevationAt","Bu","tilespaceRays","Pu","screenGeometry","Eu","Cu","Du","Vu","Uint8ClampedArray","RangeError","Lu","Fu","Ru","copy","Uu","$u","paint_heatmap","ju","resolution","clips","evaluationKey","Ou","paint_hillshade","qu","Nu","Gu","Zu","Ku","next","prev","steiner","ic","tc","ec","Ju","gc","fc","lc","yc","Xu","oc","nc","prevZ","nextZ","Yu","Hu","Wu","Qu","sc","uc","pc","ac","dc","rc","hc","cc","mc","deviation","flatten","vertices","holes","dimensions","xc","vc","bc","_c","wc","Ac","area","Sc","kc","patternDependencies","Ic","Mc","patternFeatures","indexArray2","segments2","addFeatures","indexBuffer2","Tc","layout_fill","zc","paint_fill","Bc","Ec","Cc","Pc","Dc","Vc","Lc","Fc","_pbf","_geometry","_keys","readFields","Rc","readVarint","Uc","types","readSVarint","bbox","toGeoJSON","$c","jc","Oc","version","_features","qc","readString","readFloat","readDouble","readVarint64","readBoolean","Nc","Gc","Zc","VectorTile","Kc","VectorTileFeature","Xc","VectorTileLayer","Jc","Hc","Yc","Wc","Qc","acc","polyCount","startRing","currentPolyCount","edges","top","append","processBorderOverlap","addBorderIntersection","borders","centroid","span","intersectsCount","th","edgeRadius","centroidVertexArray","enableTerrain","featuresOnBorder","borderDoneWithNeighborZ","tileToMeter","sortBorders","layoutVertexExtArray","layoutVertexExtBuffer","uploadCentroid","centroidVertexBuffer","needsCentroidUpdate","lh","polygon","bounds","sh","rh","ih","nh","eh","ah","vertexArrayOffset","encodeCentroid","oh","polygons","depth","uh","ch","hh","ph","yh","dh","fh","overscaledZ","scaledTo","calculateScaledKey","isChildOf","children","isLessThan","wrapped","unwrapTo","overscaleFactor","toUnwrapped","mh","gh","xh","vh","getMeterToDEM","tileCoordToPixel","getElevationAtPixel","bh","wh","_h","Ah","Sh","kh","Ih","lineClipsArray","gradients","layoutVertexArray2","maxLineLength","lineAtlas","addConstantDashes","addFeatureDashes","addDash","getKey","layoutVertexBuffer2","lineFeatureClips","mapbox_clip_start","mapbox_clip_end","lineClips","addLine","distance","scaledDistance","totalDistance","lineSoFar","updateScaledDistance","e1","e2","updateDistance","addCurrentVertex","addHalfVertex","Mh","layout_line","Th","paint_line","zh","Bh","Eh","Ch","Ph","Dh","Vh","Lh","Fh","Rh","Uh","$h","layoutSize","minZoom","maxZoom","minSize","maxSize","jh","uSize","uSizeT","Oh","qh","SIZE_PACK_FACTOR","evaluateSizeForFeature","evaluateSizeForZoom","getSizeData","Nh","toLocaleUpperCase","toLocaleLowerCase","Gh","Zh","Kh","Xh","Yh","Jh","NaN","Hh","buf","Varint","Fixed64","Bytes","Fixed32","Wh","Qh","tp","TextDecoder","ep","rp","np","realloc","ip","writeVarint","sp","writeSVarint","ap","writeFloat","op","writeDouble","lp","writeBoolean","up","writeFixed32","cp","writeSFixed32","hp","writeFixed64","pp","writeSFixed64","dp","fp","yp","skip","readMessage","readFixed32","readSFixed32","readFixed64","readSFixed64","decode","readBytes","readPackedVarint","readPackedSVarint","readPackedBoolean","readPackedFloat","readPackedDouble","readPackedFixed32","readPackedSFixed32","readPackedFixed64","readPackedSFixed64","writeTag","finish","writeString","writeBytes","writeRawMessage","writeMessage","writePackedVarint","writePackedSVarint","writePackedBoolean","writePackedFloat","writePackedDouble","writePackedFixed32","writePackedSFixed32","writePackedFixed64","writePackedSFixed64","writeBytesField","writeFixed32Field","writeSFixed32Field","writeFixed64Field","writeSFixed64Field","writeVarintField","writeSVarintField","writeStringField","writeFloatField","writeDoubleField","writeBooleanField","mp","gp","xp","vp","bitmap","left","advance","bp","metrics","ascender","descender","wp","_p","fill","Ap","Sp","stretchX","stretchY","paddedRect","displaySize","kp","haveRenderCallbacks","addImages","iconPositions","patternPositions","hasRenderCallback","patchUpdatedImages","hasImage","dispatchRenderCallbacks","updatedImages","patchUpdatedImage","getImage","Ip","horizontal","vertical","horizontalOnly","Mp","Tp","imageName","forText","forImage","zp","sectionIndex","imageSectionID","fromFeature","addImageSection","addTextSection","getSection","getSections","getSectionIndex","getCharCode","verticalizePunctuation","trim","Ep","substring","getMaxScale","getNextImageSectionCharCode","Bp","Pp","Cp","Lp","Vp","Fp","positionedLines","bottom","right","iconsInText","verticalizable","hasBaseline","positionedGlyphs","lineOffset","localGlyph","glyph","rect","Up","horizontalAlign","verticalAlign","Rp","Dp","badness","priorBreak","$p","jp","collisionPadding","Op","qp","angleDelta","Np","Gp","Zp","Kp","Xp","Jp","Hp","Yp","Wp","Qp","td","ed","none","ideographs","rd","requestManager","localGlyphMode","localFontFamily","entries","localGlyphs","setURL","getGlyphs","stack","requests","ranges","_tinySDF","loadGlyphRange","_doesCharSupportLocalGlyph","tinySDF","TinySDF","fontFamily","fontWeight","fontSize","radius","glyphWidth","glyphHeight","glyphLeft","glyphTop","glyphAdvance","draw","transformRequest","normalizeGlyphsURL","cutoff","fontStyle","_createCanvas","ctx","textBaseline","textAlign","fillStyle","gridOuter","gridInner","actualBoundingBoxAscent","actualBoundingBoxDescent","actualBoundingBoxLeft","actualBoundingBoxRight","measureText","fillText","nd","sd","od","stretch","ld","fixed","tex","glyphOffset","pixelOffsetTL","pixelOffsetBR","minFontScaleX","minFontScaleY","isSDF","ad","ud","cd","hd","_down","_up","peek","pd","dd","fd","SQRT2","yd","md","POSITIVE_INFINITY","gd","xd","vd","createArrays","tilePixelRatio","compareText","iconsNeedLinear","textSizeData","compositeTextSizes","iconSizeData","compositeIconSizes","layoutTextSize","layoutIconSize","textMaxSize","allowVerticalPlacement","bd","icon","sdf","sdfIcons","kd","wd","generateCollisionDebugBuffers","collisionBoxArray","anchor","addToLineVertexArray","Md","Id","Ad","_d","addSymbols","placedSymbolArray","Sd","glyphOffsetArray","of","MAX_GLYPHS","addToSortKeyRanges","symbolInstances","Td","zd","fovAboveCenter","getMinElevationBelowMSL","_horizonShift","Bd","Ed","Cd","spec","requiresDraping","supportsWorldCopies","supportsTerrain","supportsFog","supportsFreeCamera","zAxisUnit","unsupportedLayers","range","unproject","locationPoint","_coordinatePoint","locationCoordinate","pixelSpaceConversion","farthestPixelDistance","pointCoordinate","horizonLineFromTop","rayIntersectionCoordinate","pointRayIntersection","pointCoordinate3D","isPointAboveHorizon","createInversionMatrix","createTileMatrix","zoomScale","Pd","parallels","r0","sign","Dd","Vd","Ld","Fd","Rd","Ud","$d","jd","Od","qd","southernCenter","Nd","Gd","Zd","Kd","Xd","Jd","cosPhi","Hd","getAtPointOrZero","_centerAltitude","pixelMatrix","from","Yd","Wd","Qd","tf","ef","rf","nf","sf","dynamicLayoutVertexArray","opacityVertexArray","dynamicLayoutVertexBuffer","opacityVertexBuffer","itemSize","af","layoutAttributes","collisionVertexArray","collisionVertexArrayExt","collisionVertexBuffer","collisionVertexBufferExt","hasRTLText","fullyClipped","sortKeyRanges","collisionCircleArray","placementInvProjMatrix","placementViewportMatrix","canOverlap","sortFeaturesByKey","sortFeaturesByY","writingModes","sourceID","lineVertexArray","calculateGlyphDependencies","charAt","iconDependencies","glyphDependencies","getValueAndResolveTokens","hasDebugData","textCollisionBox","iconCollisionBox","destroyDebugData","getProjection","projectionInstance","_commitLayoutVertex","_addCollisionDebugVertices","_addTextDebugCollisionBoxes","getSymbolInstanceTextSize","_addIconDebugCollisionBoxes","getSymbolInstanceIconSize","_commitDebugCollisionVertexUpdate","_updateTextDebugCollisionBoxes","_updateIconDebugCollisionBoxes","updateCollisionDebugBuffers","hasTextCollisionBoxData","hasIconCollisionBoxData","_deserializeCollisionBoxesForSymbol","textBox","textFeatureIndex","verticalTextBox","verticalTextFeatureIndex","iconBox","iconFeatureIndex","verticalIconBox","verticalIconFeatureIndex","deserializeCollisionBoxes","collisionArrays","hasTextData","hasIconData","addIndicesForPlacedSymbol","getSortedSymbolIndexes","sortedAngle","symbolInstanceIndexes","symbolInstanceEnd","symbolInstanceStart","sortFeatures","featureSortOrder","addDynamicAttributes","lf","layout_symbol","uf","paint_symbol","runtimeType","getOverride","hasOverride","cf","defaultValue","hf","_setPaintOverrides","createBucket","queryRadius","queryIntersectsFeature","hasPaintOverride","_interpolationType","pf","paint_background","df","paint_raster","ff","implementation","renderingMode","prerender","isLayerDraped","renderToTile","shouldRedrape","shouldRerenderTiles","onAdd","painter","context","onRemove","yf","paint_sky","mf","gf","circle","heatmap","_updateColorRamp","colorRamp","colorRampTexture","heatmapFbo","hillshade","tilespaceGeometry","tile","getBucket","flat","isPointQuery","screenBounds","gradientVersion","stepInterpolant","gradientExpression","widthExpression","symbol","background","raster","sky","_skyboxInvalidated","needsSkyboxCapture","skyboxTexture","skyboxGeometry","_lightPosition","azimuthal","polar","markSkyboxValid","xf","texture","HTMLImageElement","HTMLCanvasElement","HTMLVideoElement","pixelStoreUnpackFlipY","pixelStoreUnpack","pixelStoreUnpackPremultiplyAlpha","premultiply","texSubImage2D","useMipmap","isSizePowerOfTwo","generateMipmap","texParameteri","TEXTURE_MAG_FILTER","TEXTURE_MIN_FILTER","NEAREST","NEAREST_MIPMAP_NEAREST","LINEAR_MIPMAP_NEAREST","TEXTURE_WRAP_S","TEXTURE_WRAP_T","vf","_callback","_triggered","MessageChannel","_channel","port2","onmessage","trigger","port1","postMessage","setTimeout","remove","bf","tasks","taskQueue","invoker","nextId","isSymbolTile","priority","pick","wf","_stringToNumber","_numberToString","encode","_f","Af","_vectorTileFeature","_z","_x","_y","state","Sf","kf","If","Mf","Tf","zf","Bf","Ef","Cf","Pf","uses","tileSize","tileZoom","buckets","expirationTime","queryPadding","hasSymbolBuckets","dependencies","isRaster","expiredRequestCount","transform","registerFadeDuration","timeAdded","fadeEndTime","wasRequested","tileTransform","_tileTransform","loadVectorData","unloadVectorData","latestFeatureIndex","rawTileData","latestRawTileData","getLayer","justReloaded","imageAtlas","glyphAtlasImage","hasData","imageAtlasTexture","glyphAtlasTexture","lineAtlasTexture","_tileBoundsBuffer","_tileBoundsIndexBuffer","_tileBoundsSegments","_tileDebugBuffer","_tileDebugSegments","_tileDebugIndexBuffer","_globeTileDebugBorderBuffer","_tileDebugTextBuffer","_tileDebugTextSegments","_tileDebugTextIndexBuffer","_globeTileDebugTextBuffer","ALPHA","prepare","queryRenderedFeatures","tileResult","pixelPosMatrix","querySourceFeatures","loadVTLayers","_geojsonTileLayer","getId","patternsLoaded","setExpiryData","cacheControl","expires","getExpiryTimeout","setFeatureState","listImages","hasLayer","_getSourceCache","_terrain","enabled","_clearRenderCacheForTile","holdingForFade","symbolFadeHoldUntil","symbolFadeFinished","clearFadeHold","setHoldDuration","setTexture","getTileTexture","LINEAR","CLAMP_TO_EDGE","setDependencies","hasDependency","clearQueryDebugViz","_makeDebugTileBoundsBuffers","_makeTileBoundsBuffers","indices","_makeGlobeTileDebugBuffers","freezeTileCoverage","_makeGlobeTileDebugBorderBuffer","_makeGlobeTileDebugTextBuffer","_globePoint","Df","stateChanges","deletedStates","updateState","removeFeatureState","getState","initializeTileState","coalesceChanges","Vf","minimums","maximums","leaves","getElevation","toIdx","isLeaf","Lf","Ff","Rf","Uf","$f","childOffsets","nodeCount","dem","_siblingOffset","dim","Of","_addNode","_construct","raycastRoot","raycast","idx","nodex","nodey","jf","qf","mapbox","terrarium","Nf","Gf","Zf","tree","_tree","_buildQuadTree","stride","pixels","encoding","borderReady","_idx","getUnpackVector","unpackVector","pack","getPixels","backfillBorder","onDeserialize","Kf","reset","timeout","clearTimeout","order","_getAndRemoveByKey","getAndRemove","getByKey","setMaxSize","Xf","func","mask","ReadOnly","ReadWrite","disabled","Jf","Hf","fail","depthFail","pass","Yf","blendFunction","blendColor","Replace","unblended","alphaBlended","Wf","Qf","ty","enable","mode","frontFace","backCCW","backCW","frontCW","frontCCW","ey","_onlySymbols","dataType","sourceDataType","_sourceLoaded","_paused","reload","_sourceErrored","_source","_tiles","_cache","_unloadTile","_timers","_cacheTimers","_minTileCacheSize","minTileCacheSize","_maxTileCacheSize","maxTileCacheSize","_loadedParentTiles","_coveredTiles","_state","_isRaster","_dataType","loaded","getSource","pause","resume","_shouldReloadOnResume","_loadTile","loadTile","unloadTile","_abortTile","abortTile","imageManager","getIds","ry","getRenderableIds","_isIdRenderable","hasRenderableParent","findLoadedParent","_reloadTile","_tileLoaded","usedForTerrain","getScaledDemTileSize","resetTileLookupCache","refreshedUponExpiration","_setTileReloadTimer","_backfillDEM","coord","sourceCacheId","neighboringTiles","getTileByID","needsHillshadePrepare","needsDEMTextureUpload","backfilled","getTile","_retainLoadedChildren","_getLoadedTile","reparseOverscaled","updateCacheSize","handleWrapJump","_prevLng","used","getVisibleUnwrappedCoordinates","coveringTiles","roundZoom","isTerrainDEM","hasTile","_updateRetainedTiles","ny","maxOverzooming","_addTile","_fadeDuration","_removeTile","_updateLoadedParentTileCache","afterUpdate","releaseSymbolFadeTiles","maxUnderzooming","aborted","clearTiles","_clear","tilesIn","iy","containsTile","getVisibleCoordinates","projMatrix","calculateProjMatrix","getFeatureState","reloadTilesForDependencies","_preloadTiles","Map","updateElevation","sy","_demTile","_dem","_scale","_offset","findDEMTileFor","grid","featureIndexArray","vtLayers","sourceLayerCoder","vtFeatures","bufferedTilespaceBounds","bufferedTilespaceGeometry","ly","loadMatchingFeature","bucketLayerIDs","oy","intersectionZ","lookupSymbolFeatures","loadFeature","uy","nextRow","getDash","getDashRanges","isDash","zeroLength","addRoundDash","addRegularDash","hy","py","showCollisionBoxes","collectResourceTiming","returnDependencies","familiesBySource","dy","glyphMap","iconMap","glyphPositions","stacks","icons","fy","scheduler","request","callbacks","yy","deduped","vectorTile","rawData","my","gy","numItems","nodeSize","ArrayType","IndexArrayType","coords","_pos","_finished","xy","vy","wy","ARRAY_TYPE","AUTH_ERR_MSG","Aabb","Actor","mapId","cancelCallbacks","addEventListener","receive","globalScope","hasCallback","targetMapId","mustQueue","sourceMapId","processTask","getWorkerSource","removeEventListener","CanonicalTileID","Color","ColorMode","CullFaceMode","DEMData","DataConstantProperty","DedupedRequest","DepthMode","EXTENT","Elevation","isDataAvailableAtPoint","isUsingMockSource","getAtPoint","getAtTileOffset","getAtTileOffsetFunc","getForTilePoints","getMinMaxForTile","visibleDemTiles","ErrorEvent","EvaluationParameters","Event","Evented","FillExtrusionBucket","Frustum","FrustumCorners","GLOBE_RADIUS","GLOBE_SCALE_MATCH_LATITUDE","GLOBE_ZOOM_THRESHOLD_MAX","GLOBE_ZOOM_THRESHOLD_MIN","GlobeSharedBuffers","_createGrid","_createPoles","_poleIndexBuffer","_gridBuffer","_gridIndexBuffer","_poleNorthVertexBuffer","_poleSouthVertexBuffer","_poleSegments","_gridSegments","withSkirts","withoutSkirts","_wireframeIndexBuffer","_wireframeSegments","_fillGridMeshWithLods","getGridBuffers","getPoleBuffers","getWirefameBuffers","GlyphManager","ImagePosition","KDBush","LivePerformanceUtils","LngLat","LngLatBounds","LocalGlyphMode","MAX_MERCATOR_LATITUDE","MercatorCoordinate","ONE_EM","OverscaledTileID","PerformanceMarkers","Point","Properties","RGBAImage","Ray","RequestManager","_transformRequestFn","_silenceAuthErrors","_createSkuToken","token","tokenExpiresAt","_skuToken","_skuTokenExpiresAt","_isSkuTokenExpired","normalizeStyleURL","_makeAPIURL","normalizeSourceURL","normalizeSpriteURL","normalizeTileURL","canonicalizeTileURL","canonicalizeTileset","tiles","ResourceType","SegmentVector","SourceCache","StencilMode","StructArrayLayout1ui2","StructArrayLayout2f1f2i16","StructArrayLayout2i4","StructArrayLayout2ui4","StructArrayLayout3f12","StructArrayLayout3ui6","StructArrayLayout4i8","StructArrayLayout5f20","Texture","Transitionable","Uniform1f","Uniform1i","uniform1i","Uniform2f","uniform2f","Uniform3f","uniform3f","Uniform4f","UniformColor","UniformMatrix2f","uniformMatrix2fv","UniformMatrix3f","uniformMatrix3fv","UniformMatrix4f","uniformMatrix4fv","UnwrappedTileID","ValidationError","VectorTileWorkerSource","layerIndex","loading","isSpriteLoaded","resourceTiming","reloadTile","reloadCallback","removeTile","WritingMode","ZoomDependentExpression","adjoint","asyncAll","bezier","bindAll","boundsAttributes","bufferConvexPolygon","cacheEntryPossiblyAdded","getActor","calculateGlobeLabelMatrix","calculateGlobeMatrix","calculateGlobeMercatorMatrix","circumferenceAtLatitude","clamp","clearTileCache","clipLine","clone$1","collisionCircleLayout","config","conjugate","create$1","createExpression","createLayout","createStyleLayer","cross","degToRad","dot","earthRadius","ease","easeCubicInOut","ecefToLatLng","emitValidationErrors","enforceCacheSizeLimit","evaluateVariableOffset","evented","exactEquals","exactEquals$1","exported","exported$1","extend$1","fillExtrusionHeightLift","filterObject","fromMat4","fromQuat","fromRotation","fromScaling","furthestTileCorner","getAABBPointSquareDist","getAnchorAlignment","getAnchorJustification","getBounds","getColumn","getDefaultExportFromCjs","getGridMatrix","getJSON","getLatitudinalLod","getMapSessionAPI","getPerformanceMeasurement","getRTLTextPluginStatus","getReferrer","getTilePoint","getTileVec3","getVideo","muted","onloadstart","crossOrigin","appendChild","globeCenterToScreenPoint","globeDenormalizeECEF","globeECEFOrigin","globeMetersToEcef","globeNormalizeECEF","globePixelsToTileUnits","globePoleMatrixForTile","globeTileBounds","globeTiltAtLngLat","globeToMercatorTransition","globeUseCustomAntiAliasing","_antialias","extStandardDerivatives","extStandardDerivativesForceOff","identity","identity$1","invert","isFullscreen","fullscreenElement","webkitFullscreenElement","isLngLatBehindGlobe","isMapAuthenticated","isMapboxURL","isSafariWithAntialiasingBug","latFromMercatorY","latLngToECEF","len","length$1","lngFromMercatorX","loadVectorTile","makeRequest","mapValue","mercatorScale","mercatorXfromLng","mercatorYfromLat","mercatorZfromAltitude","mul","mul$1","multiply","multiply$1","multiply$2","nextPowerOfTwo","normalize$1","normalize$2","ortho","pbf","perspective","plugin","pointGeometry","polesInViewport","polygonContainsPoint","polygonIntersectsBox","polygonIntersectsPolygon","polygonizeBounds","posAttributes","potpack","prevPowerOfTwo","radToDeg","refProperties","registerForPluginStateChange","removeAuthState","renderColorRamp","resample","rotateX","rotateX$1","rotateY","rotateY$1","rotateZ","rotateZ$1","scale$1","scale$2","scaleAndAdd","setCacheLimits","setColumn","setRTLTextPlugin","smoothstep","squaredLength","storeAuthState","subtract","symbolSize","tileAABB","tileCornersToBounds","transformMat3","transformMat4","transformMat4$1","transformQuat","transitionTileAABBinECEF","translate","transpose","triggerPluginCompletionEvent","uniqueId","updateGlobeVertexNormal","validateCustomStyleLayer","render","validateFilter","validateFog","validateLayer","validateLight","validateSource","validateStyle","validateTerrain","warnOnce","keyCache","_layerConfigs","_layers","rawImageData","buildQuadTree","offscreenCanvas","offscreenCanvasContext","OffscreenCanvas","options","rawGeometry","tags","keycache","valuecache","fromVectorTileJs","fromGeojsonVt","GeoJSONWrapper","minPoints","generateId","fround","assign","trees","clusterProps","time","_createTree","timeEnd","_cluster","getClusters","_limitZoom","getChildren","_getOriginId","_getOriginZoom","getLeaves","_appendLeaves","_addTileFeatures","getClusterExpansionZoom","cluster_id","point_count","_map","point_count_abbreviated","minX","minY","maxX","maxY","tolerance","transformed","numPoints","numSimplified","numFeatures","debug","tileCoords","indexMaxZoom","indexMaxPoints","stats","total","splitTile","_geoJSONIndex","_feature","byteOffset","loadGeoJSON","loadData","superclusterOptions","geojsonVtOptions","clusterId","getClusterChildren","getClusterLeaves","limit","layerIndexes","projections","defaultProjection","workerSourceTypes","vector","workerSources","demWorkerSources","registerWorkerSource","registerRTLTextPlugin","clearCaches","checkIfReady","setReferrer","spriteLoaded","setImages","setProjection","setLayers","getLayerIndex","updateLayers","removedIds","loadDEMTile","getDEMWorkerSource","removeSource","loadWorkerSource","importScripts","syncRTLPluginState","getAvailableImages","getWorkerPerformanceMetrics","lastIndexOf","reduceRight","Function","getPrototypeOf","getOwnPropertyNames","isSealed","isFrozen","isExtensible","getOwnPropertyDescriptor","defineProperties","seal","preventExtensions","Worker","terminate","failIfMajorPerformanceCaveat","webGLContextAttributes","createShader","VERTEX_SHADER","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","documentMode","className","createElementNS","setAttributeNS","antialias","stencil","documentElement","userSelect","preventDefault","stopPropagation","getBoundingClientRect","InstallTrigger","button","ctrlKey","platform","offsetWidth","clientX","clientY","userImage","images","callbackDispatchedThisFrame","requestors","atlasImage","dirty","setLoaded","_notify","addImage","_validateStretch","_validateContent","updateImage","removeImage","getImages","getPixelSize","getPattern","bin","_updatePatternAtlas","atlasTexture","beginFrame","intensity","_transitionable","setLight","_transitioning","getLight","drapeRenderMode","_transform","horizonBlend","getOpacity","getOpacityAtLatLng","mercatorFogMatrix","_fov","getFovAdjustedRange","workerPool","actors","currentActor","acquire","ready","broadcast","release","cameraPoint","_screenRaycastCache","_cameraRaycastCache","bufferedScreenGeometry","screenGeometryMercator","_bufferedScreenMercator","createFromScreenPoints","getCameraPoint","bufferedCameraGeometry","bufferedCameraGeometryGlobe","_bufferedCameraMercator","unwrapped","getFreeCameraOptions","_projectAndResample","vector_layers","vectorLayers","vectorLayerIds","validateBounds","createBuffer","dynamicDraw","unbindVAO","bindElementBuffer","bufferData","ELEMENT_ARRAY_BUFFER","DYNAMIC_DRAW","STATIC_DRAW","bufferSubData","deleteBuffer","bindVertexBuffer","ARRAY_BUFFER","enableAttributes","enableVertexAttribArray","setVertexAttribPointers","vertexAttribPointer","getDefault","setDefault","clearColor","clearDepth","clearStencil","colorMask","depthMask","stencilMask","ALWAYS","stencilFunc","KEEP","stencilOp","STENCIL_TEST","disable","depthRange","DEPTH_TEST","LESS","depthFunc","BLEND","ONE","ZERO","blendFunc","FUNC_ADD","blendEquation","CULL_FACE","BACK","cullFace","CCW","useProgram","TEXTURE0","activeTexture","drawingBufferWidth","drawingBufferHeight","viewport","bindFramebuffer","FRAMEBUFFER","bindRenderbuffer","RENDERBUFFER","bindBuffer","vao","extVertexArrayObject","bindVertexArrayOES","pixelStorei","UNPACK_ALIGNMENT","UNPACK_PREMULTIPLY_ALPHA_WEBGL","UNPACK_FLIP_Y_WEBGL","setDirty","framebufferTexture2D","COLOR_ATTACHMENT0","attachment","DEPTH_ATTACHMENT","framebufferRenderbuffer","DEPTH_STENCIL_ATTACHMENT","framebuffer","createFramebuffer","colorAttachment","depthAttachment","deleteRenderbuffer","deleteFramebuffer","isWebGL2","getExtension","createVertexArrayOES","createVertexArray","deleteVertexArrayOES","deleteVertexArray","bindVertexArray","stencilTest","depthTest","blend","cullFaceSide","program","extTextureFilterAnisotropic","extTextureFilterAnisotropicMax","getParameter","MAX_TEXTURE_MAX_ANISOTROPY_EXT","extTextureFilterAnisotropicForceOff","extDebugRendererInfo","UNMASKED_RENDERER_WEBGL","UNMASKED_VENDOR_WEBGL","extTextureHalfFloat","extRenderToTextureHalfFloat","extTimerQuery","maxTextureSize","MAX_TEXTURE_SIZE","createRenderbuffer","renderbufferStorage","COLOR_BUFFER_BIT","DEPTH_BUFFER_BIT","STENCIL_BUFFER_BIT","setCullFace","setDepthMode","setStencilMode","setColorMode","dispatcher","scheme","_loaded","_options","_collectResourceTiming","_tileWorkers","_deduped","_language","_worldview","_tileJSONRequest","_requestManager","tileBounds","cancelTileJSONRequest","_clearSource","setTiles","setUrl","_refreshExpiredTiles","loadTileData","unloadTileData","saveTileTexture","_dirty","_imageRequest","_finishLoading","setCoordinates","_boundsArray","_prepareData","perspectiveTransform","boundsBuffer","boundsSegments","_getNeighboringTiles","demTexture","fbo","_data","attribution","workerOptions","clusterMaxZoom","clusterMinPoints","clusterRadius","setData","_updateWorkerData","_pendingLoad","_coalesce","_metadataFired","video","urls","loop","setAttribute","triggerRepaint","play","seek","seekable","currentTime","readyState","paused","videoWidth","videoHeight","canvas","animate","getElementById","_hasInvalidDimensions","_playing","getCanvas","custom","_dispatcher","_implementation","_update","_clearTiles","_coveringTiles","resolve","code","wrappedTileID","queryResults","workerClass","active","workers","workerCount","numActive","isPreloaded","setStyle","addLayer","removeLayer","setFilter","addSource","setGeoJSONSourceData","setLayerZoomRange","setLayerProperty","setCenter","setZoom","setBearing","setPitch","setSprite","setGlyphs","setTerrain","setFog","command","_distances","paddedLength","lerp","boxCells","circleCells","xCellCount","yCellCount","circleKeys","boxKeys","circles","xScale","yScale","boxUid","circleUid","keysLength","_insertBoxCell","insertCircle","_insertCircleCell","_query","hitTest","seenUids","box","_queryCircle","_queryCellCircle","hitTestCircle","_circleAndRectCollide","_circlesCollide","_convertToXCellCoord","_convertToYCellCoord","unknown","flipRequired","flipNotRequired","labelPlaneMatrix","glCoordMatrix","useVertical","needsFlipping","notEnoughRoom","first","last","tilePath","ignoredGrid","pitchfactor","screenRightBoundary","screenBottomBoundary","gridRightBoundary","gridBottomBoundary","fogState","placeCollisionBox","projectAndGetPerspectiveRatio","perspectiveRatio","occluded","isInsideGrid","offscreen","isOffscreen","placeCollisionCircles","signedDistanceFromCamera","collisionDetected","queryRenderedSymbols","bucketInstanceId","insertCollisionBox","collisionGroupID","insertCollisionCircles","calculateFogTileMatrix","getCameraToCenterDistance","getViewportMatrix","opacity","placed","clipped","skipFade","invProjMatrix","viewportMatrix","crossSourceCollisions","maxGroupID","collisionGroups","ID","predicate","collisionIndex","placements","opacities","variableOffsets","stale","commitTime","retainedQueryData","collisionCircleArrays","prevPlacement","placedOrientations","getBucketParts","calculatePixelsToTileUnitsMatrix","unwrappedTileID","bucket","posMatrix","textLabelPlaneMatrix","labelToScreenMatrix","clippingData","textPixelRatio","partiallyEvaluatedTextSize","partiallyEvaluatedIconSize","collisionGroup","attemptAnchorPlacement","textOffset","textScale","prevAnchor","markUsedJustification","markUsedOrientation","placedGlyphBoxes","placeLayerBucketPart","calculateDistanceTileData","unshift","commit","zoomAtLastRecencyCheck","prevZoomAdjustment","zoomAdjustment","symbolFadeChange","lastPlacementChangeTime","updateLayerOpacities","updateBucketOpacities","hasTransitions","stillRecent","setStale","_sortAcrossTiles","_currentTileIndex","_currentPartIndex","_seenCrossTileIDs","_bucketParts","continuePlacement","placement","_currentPlacementIndex","_forceFullPlacement","_showCollisionBoxes","_done","isDone","_inProgressLayer","crossTileIDs","findMatches","maxCrossTileID","generate","indexes","usedCrossTileIDs","addBucket","removeBucketCrossTileIDs","removeStaleBuckets","maxBucketInstanceId","bucketsInCurrentPlacement","pruneUnusedLayers","glyphManager","localIdeographFontFamily","crossTileSymbolIndex","_num3DLayers","_numSymbolLayers","_numCircleLayers","_serializedLayers","_sourceCaches","_otherSourceCaches","_symbolSourceCaches","_availableImages","_order","_drapedFirstOrder","_markersNeedUpdate","_resetUpdates","_rtlTextPluginCallback","sourceId","_validateLayer","loadURL","accessToken","_request","_load","loadJSON","loadEmpty","_updateLayerCount","stylesheet","_updateMapProjection","_changed","_loadSprite","_serializeLayers","terrainSetForDrapingOnly","_createTerrain","_createFog","_updateDrapeFirstLayers","applyProjectionUpdate","projectionOptions","getTerrain","setTerrainForDraping","_useExplicitProjection","_prioritizeAndUpdateProjection","_spriteRequest","_updatedSources","_optimizeForTerrain","_checkLoaded","_updatedLayers","_removedLayers","_updateWorkerLayers","_reloadSource","_updateTilesForChangedImages","_updatedPaintProps","_getLayerSourceCache","_updateMarkersOpacity","_changedImages","_afterImageUpdated","isSourceLoaded","_isSourceCacheLoaded","_getSourceCaches","_getSources","_layerOrderChanged","_updateLayer","moveLayer","hasLayerType","getFilter","_flattenAndSortRenderedFeatures","has3DLayers","_showQueryGeometry","addSourceType","getSourceType","setSourceType","workerSourceURL","_setTransitionParameters","_force3DLayerUpdate","_markers","_requestDomTask","_evaluateOpacity","getFog","_forceSymbolLayerUpdate","_remove","_reloadSources","_updateSources","_generateCollisionBoxes","_updatePlacement","pauseablePlacement","_releaseSymbolFadeTiles","getResource","hasSymbolLayers","hasCircleLayers","_clearWorkerCaches","backgroundPattern","clippingMask","heatmapTexture","collisionBox","collisionCircle","fillOutline","fillOutlinePattern","fillPattern","fillExtrusion","fillExtrusionPattern","hillshadePrepare","linePattern","symbolIcon","symbolSDF","symbolTextAndIcon","terrainRaster","terrainDepth","skybox","skyboxGradient","skyboxCapture","globeRaster","globeAtmosphere","fragmentSource","vertexSource","staticAttributes","usedDefines","boundProgram","boundLayoutVertexBuffer","boundPaintVertexBuffers","boundIndexBuffer","boundVertexOffset","boundDynamicVertexBuffers","freshBind","numAttributes","currentNumAttributes","disableVertexAttribArray","prepareDrawTile","moving","u_matrix","u_image","u_latrange","u_light","u_shadow","u_highlight","u_accent","prepareDrawProgram","tileBoundsBuffer","tileBoundsIndexBuffer","tileBoundsSegments","getTileBoundsBuffers","TRIANGLES","TEXTURE1","getMercatorTileBoundsBuffers","u_dimension","u_zoom","u_unpack","u_image0","u_skirt_height","u_proj_matrix","u_globe_matrix","u_normalize_matrix","u_merc_matrix","u_zoom_transition","u_merc_center","u_frustum_tl","u_frustum_tr","u_frustum_br","u_frustum_bl","u_globe_pos","u_globe_radius","u_viewport","u_grid_matrix","operations","newMorphing","queued","phase","getMorphValuesForProxy","_validOp","_nextOp","coveringZoomLevel","mix","renderCache","renderCachePool","proxyCachedFBO","freeFBO","deallocRenderCache","fb","proxyTileKey","terrainTileForTile","prevTerrainTileForTile","gridBuffer","gridIndexBuffer","gridSegments","gridNoSkirtSegments","proxyCoords","proxiedCoords","_visibleDemTiles","_drapedRenderBatches","_sourceTilesOverlap","proxySourceCache","orthoMatrix","_overlapStencilMode","GEQUAL","REPLACE","_previousZoom","pool","_findCoveringTileCache","_tilesDirty","_useVertexMorphing","_exaggeration","_mockSourceCache","_onStyleDataEvent","_checkRenderCacheEfficiency","_style","_clearLineLayersFromRenderCache","sourceCache","_initializing","_emptyDEMTextureDirty","_disable","renderCacheEfficiency","efficiency","firstUndrapedLayer","_invalidateRenderCache","_sharedDepthStencil","_emptyDEMTexture","_emptyDepthBufferTexture","_depthFBO","_depthTexture","drapeBufferSize","useVertexMorphing","updateTileBinding","proxyToSource","_setupProxiedCoordsForOrtho","_assignTerrainTiles","_prepareDEMTextures","_setupDrapedRenderBatches","_initFBOPool","_setupRenderCache","renderingToTexture","_updateTimestamp","_findTileCoveringTileID","_prepareDemTileUniforms","emptyDEMTexture","_updateEmptyDEMTexture","emptyDepthBufferTexture","_getLoadedAreaMinimum","TEXTURE2","setupElevationDraw","u_dem","u_dem_prev","u_dem_unpack","u_dem_tl","u_dem_tl_prev","u_dem_scale","u_dem_scale_prev","u_dem_size","u_dem_lerp","u_depth","u_depth_size_inv","u_exaggeration","morphing","srcDemTile","dstDemTile","TEXTURE4","TEXTURE3","useDepthForOcclusion","useMeterToDem","u_meter_to_dem","labelPlaneMatrixInv","u_label_plane_matrix_inv","setTerrainUniformValues","globeUniformValues","useDenormalizedUpVectorScale","setGlobeUniformValues","u_tile_tl_up","u_tile_tr_up","u_tile_br_up","u_tile_bl_up","u_tile_up_scale","renderToBackBuffer","gpuTimingDeferredRenderStart","showTerrainWireframe","colorModeForRenderPass","LEQUAL","depthRangeFor3D","globeSharedBuffers","LINES","frustumCorners","globeCenterInViewSpace","globeRadius","getWirefameBuffer","renderWorldCopies","gpuTimingDeferredRenderEnd","renderBatch","renderedToTile","_setupStencil","renderLayer","postRender","minx","miny","maxx","maxy","_createFBO","DEPTH_STENCIL","_stencilRef","texParameterf","TEXTURE_MAX_ANISOTROPY_EXT","_shouldDisableRenderCache","_clearRasterLayersFromRenderCache","_overlapStencilType","EQUAL","GREATER","_renderTileClippingMasks","clipOrMaskOverlapStencilType","stencilModeForRTTOverlap","_tileClippingMaskIDs","tileExtentBuffer","quadTriangleIndexBuffer","tileExtentSegments","drawDepth","DEPTH_COMPONENT16","_setupProxiedCoordsForImageSource","_createProxiedId","wireframeSegments","wireframeIndexBuffer","createProgram","FRAGMENT_SHADER","failedToCreate","attachShader","bindAttribLocation","linkProgram","deleteShader","fixedUniforms","binderUniforms","terrainUniforms","globeUniforms","fogUniforms","u_fog_matrix","u_fog_range","u_fog_color","u_fog_horizon_blend","u_fog_temporal_offset","u_globe_transition","u_is_globe","setFogUniformValues","LINE_STRIP","drawElements","UNSIGNED_SHORT","u_texsize","u_tile_units_to_pixels","u_pixel_coord_upper","u_pixel_coord_lower","u_lightpos","u_lightintensity","u_lightcolor","u_vertical_gradient","u_opacity","u_tile_id","u_inv_rot_matrix","u_up_dir","u_height_lift","u_ao","u_edge_radius","u_height_factor","u_world","pixelsToGLUnits","u_camera_to_center_distance","translatePosMatrix","u_device_pixel_ratio","u_extrude_scale","u_color","u_overlay","u_overlay_scale","u_intensity","u_pixels_to_tile_units","u_units_to_pixels","u_dash_image","u_gradient_image","u_image_height","u_alpha_discard_threshold","u_trim_offset","u_tl_parent","u_scale_parent","u_fade_t","u_image1","u_brightness_low","u_brightness_high","u_saturation_factor","u_contrast_factor","u_spin_weights","u_perspective_transform","u_is_size_zoom_constant","u_is_size_feature_constant","u_size_t","u_size","u_rotate_symbol","u_aspect_ratio","u_fade_change","u_label_plane_matrix","u_coord_matrix","u_is_text","u_pitch_with_map","u_texture","u_camera_forward","u_ecef_origin","u_tile_matrix","u_up_vector","u_gamma_scale","u_is_halo","u_texsize_icon","u_texture_icon","u_pattern_tl","u_pattern_br","u_pattern_size","u_inv_matrix","u_viewport_size","u_color_ramp","u_sun_direction","u_cubemap","u_temporal_offset","u_center_direction","u_radius","u_matrix_3f","u_sun_intensity","u_color_tint_r","u_color_tint_m","u_luminance","u_horizon","u_transition","u_fadeout_range","u_high_color","u_space_color","u_star_intensity","u_star_density","u_star_size","u_horizon_angle","u_rotation_matrix","circleArray","circleOffset","invTransform","depthModeForSublayer","mercatorFromTransition","getWorldToCamera","rotating","zooming","terrainRenderModeElevated","buffers","uniformValues","atlasTextureIcon","atlasInterpolation","atlasInterpolationIcon","hasHalo","stencilModeForClipping","a_centroid_pos","vertexAttrib2f","emptyTexture","debugBuffer","debugIndexBuffer","debugSegments","initDebugOverlayCanvas","debugOverlayCanvas","shadowColor","shadowBlur","lineWidth","strokeStyle","strokeText","debugOverlayTexture","SCISSOR_TEST","scissor","vertexArray","vertexBuffer","TEXTURE_CUBE_MAP_POSITIVE_X","renderPass","programConfiguration","RGBA16F","HALF_FLOAT","HALF_FLOAT_OES","viewportBuffer","viewportSegments","gradient","REPEAT","INVERT","resetStencilClippingMasks","opaquePassEnabledForLayer","stencilModeFor3D","stencilConfigForOverlap","isPatternMissing","getBackgroundTiles","frameCounter","skyboxFbo","TEXTURE_CUBE_MAP","skyboxMatrix","setCustomLayerDefaults","pointMerc","customLayerMatrix","globeToMercatorMatrix","pixelsPerMeterRatio","setBaseState","_tileTextures","frameCopies","loadTimeStamps","setup","numSublayers","depthEpsilon","deferredRenderGpuTimeQueries","gpuTimers","_backgroundTiles","updateTerrain","_updateFog","fogCullDistSq","_terrainEnabled","mercatorBoundsBuffer","mercatorBoundsSegments","identityMat","stencilClearMode","atmosphereBuffer","nextStencilID","currentStencilSource","NOTEQUAL","_showOverdrawInspector","CONSTANT_COLOR","currentLayer","opaquePassCutoff","showOverdrawInspector","isHorizonVisible","showTileBoundaries","showQueryGeometry","showTileAABBs","showPadding","centerPoint","tileLoaded","speedIndexTiming","saveCanvasCopy","gpuTimingStart","isInitialLoad","gpuTimingEnd","gpuTiming","calls","cpuTime","createQueryEXT","beginQueryEXT","TIME_ELAPSED_EXT","gpuTimingDeferredRender","endQueryEXT","collectGpuTimers","collectDeferredRenderGpuQueries","queryGpuTimers","getQueryObjectEXT","QUERY_RESULT_EXT","deleteQueryEXT","queryGpuTimeDeferredRender","currentGlobalDefines","cache","setTileLoadedFlag","canvasCopy","copyTexImage2D","getCanvasCopiesAndTimestamps","canvasCopies","timeStamps","averageElevationNeedsEasing","_elevation","clearBackgroundTiles","orientation","_position","_renderWorldCopies","lookAtPoint","setPitchBearing","mercatorPosition","_orientation","getPitchBearing","getCameraToWorld","getWorldToCameraPosition","getCameraToClipPerspective","getDistanceToElevation","_minZoom","_maxZoom","_minPitch","_maxPitch","setMaxBounds","_nearZ","_farZ","_unmodified","_edgeInsets","_projMatrixCache","_alignedProjMatrixCache","_fogTileMatrixCache","_distanceTileDataCache","_averageElevation","cameraElevationReference","maxPitch","_centerAltitudeValidForExaggeration","_setZoom","_seaLevelZoom","_calcMatrices","_updateCameraOnTerrain","_constrainCamera","setMercatorFromTransition","minPitch","cameraWorldSizeForFog","EPSILON","_worldSizeFromZoom","_zoomFromMercatorZ","cameraWorldSize","cameraPixelsPerMeter","centerOffset","rotation","rotationMatrix","aspect","fov","fovX","fovY","averageElevation","_calcFogMatrices","_zoom","_updateSeaLevelZoom","_constrain","zoomFraction","sampleAverageElevation","_updateZoomFromElevation","_mercatorZfromZoom","computeZoomRelativeTo","setFreeCameraOptions","_updateCameraState","_setCameraOrientation","_setCameraPosition","_updateStateFromCamera","recenterOnTerrain","isPaddingEqual","interpolatePadding","scaleZoom","aabb","minZ","maxZ","fullyVisible","shouldSplit","_mercatorScaleRatio","distanceSq","unmodified","setLocationAtPoint","setLocation","coordinateLocation","locationPoint3D","pointLocation","pointLocation3D","p0","p1","screenPointToMercatorRay","isPointOnSurface","_getBoundsNonRectangular","_getBoundsRectangular","_getBoundsRectangularTerrain","getMaxBounds","maxBounds","minLat","maxLat","minLng","maxLng","worldMinX","worldMaxX","worldMinY","worldMaxY","calculatePosMatrix","worldToFogMatrix","mercatorMatrix","alignedProjMatrix","_pixelsToTileUnitsCache","inverseAdjustmentMatrix","_computeCameraPosition","_minimumHeightOverTerrain","_isCameraConstrained","_constraining","_minZoomForBounds","_maxCameraBoundsDistance","_translateCameraConstrained","zoomFromMercatorZAdjusted","anyCornerOffEdge","zoomDeltaToMovement","getWorldToCameraMatrix","_hashName","_updateHash","_updateHashUnthrottled","addTo","_onHashChange","getHashString","hash","_getCurrentHash","dragRotate","isEnabled","touchZoomRotate","getBearing","jumpTo","history","replaceState","getZoom","getPitch","linearity","easing","deceleration","maxSpeed","_inertiaBuffer","record","_drainInertiaBuffer","settings","_onMoveEnd","_prefersReducedMotion","pan","pinchAround","around","zoomDelta","bearingDelta","pitchDelta","panDelta","amount","noMoveStart","_defaultPrevented","defaultPrevented","getCanvasContainer","lngLat","originalEvent","changedTouches","touches","lngLats","_clickTolerance","clickTolerance","_mousedownPos","wheel","_firePreventable","mousedown","mouseup","preclick","click","dblclick","mouseover","mouseout","touchstart","touchmove","touchend","touchcancel","isActive","_delayContextMenu","_contextMenuEvent","mousemove","contextmenu","_el","_container","getContainer","_enabled","_active","shiftKey","_startPos","_lastPos","mousemoveWindow","_box","classList","_fireEvent","mouseupWindow","cameraAnimation","fitScreenCoordinates","linear","keydown","keyCode","blur","numTouches","timeStamp","singleTap","numTaps","lastTime","lastTap","count","_zoomIn","_zoomOut","easeTo","_moved","_lastPoint","_eventButton","_correctButton","_move","buttons","_minTouches","_touches","_sum","_calculateTransform","_cooperativeGestures","isMoving","_showTouchPanBlockerAlert","_alertContainer","_alertTimer","cancelable","_addTouchPanBlocker","textContent","_getUIString","clientWidth","_firstTwoTouches","_start","_aroundCenter","_distance","_startDistance","_minDiameter","_startVector","_vector","_isBelowThreshold","_valid","_firstMove","_lastPoints","gestureBeginsVertically","panStep","bearingStep","pitchStep","_panStep","_bearingStep","_pitchStep","_rotationDisabled","altKey","metaKey","easeId","disableRotation","enableRotation","_handler","_delta","_defaultZoomRate","_wheelZoomRate","setZoomRate","setWheelZoomRate","_finishTimeout","isZooming","_zooming","_addScrollZoomBlocker","_showBlockerAlert","deltaMode","WheelEvent","DOM_DELTA_LINE","deltaY","_lastWheelEventTime","_type","_lastValue","_timeout","_onTimeout","_lastWheelEvent","_frameId","_aroundPoint","_aroundCoord","_targetZoom","_triggerRenderFrame","renderFrame","_prevEase","_easing","_startZoom","_smoothOutEasing","noInertia","needsRenderFrame","aroundCoord","_clickZoom","_tapZoom","_tap","_swipePoint","_swipeTouch","_tapTime","_mousePan","_touchPan","_inertiaOptions","_pitchWithRotate","pitchWithRotate","_mouseRotate","_mousePitch","_touchZoom","_touchRotate","_tapDragZoom","drag","constants","projectRay","_handlers","_handlersById","_changes","_inertia","_bearingSnap","bearingSnap","_previousActiveHandlers","_trackingEllipsoid","_dragOrigin","_eventsInProgress","_addDefaultHandlers","passive","capture","handleWindowEvent","handleEvent","boxZoom","doubleClickZoom","touchPitch","dragPan","scrollZoom","keyboard","interactive","handlerName","handler","allowed","stop","_updatingCamera","_fireEvents","isRotating","_isDragging","_blockedByActive","_getMapTouches","mergeHandlerResult","_stop","_applyChanges","_updateMapTransform","resetNorth","_requestFrame","_renderTaskQueue","_moving","_respectPrefersReducedMotion","respectPrefersReducedMotion","panBy","panTo","zoomTo","zoomIn","zoomOut","getPadding","setPadding","rotateTo","resetNorthPitch","snapToNorth","cameraForBounds","_cameraForBounds","_extendCameraOptions","_minimumAABBFrustumDistance","_cameraForBoundsOnGlobe","queryTerrainElevation","exaggerated","fitBounds","_fitInternal","flyTo","preloadOnly","_normalizeBearing","_normalizeCenter","_rotating","_pitching","_fireMoveEvents","_emulate","pitching","_padding","_easeId","_prepareEase","_ease","_afterEase","speed","curve","screenSpeed","maxDuration","isEasing","_easeFrameId","_cancelRenderFrame","_onEaseFrame","_onEaseEnd","handlers","_easeStart","_easeOptions","_requestRenderFrame","_renderFrameCallback","essential","getDefaultPosition","compact","_compactButton","_toggleAttribution","_setElementTitle","_innerContainer","_updateAttributions","_updateEditLink","_updateData","_updateCompact","_attribHTML","removeAttribute","firstElementChild","_editLink","querySelector","styleOwner","styleId","rel","owner","customAttribution","innerHTML","display","_updateLogo","_logoRequired","mapbox_logo","_queue","_id","_cleared","_currentlyRunning","run","HTMLElement","element","_anchor","_color","_draggable","draggable","_rotation","_rotationAlignment","rotationAlignment","_pitchAlignment","pitchAlignment","_updateMoving","_occludedOpacity","occludedOpacity","_element","_defaultMarker","viewBox","rx","hasAttribute","_popup","_clearFadeTimer","_addMarker","setDraggable","_onMapClick","_addDragHandler","_onUp","_onMove","_removeMarker","getLngLat","_lngLat","setLngLat","getElement","setPopup","_onKeyPress","_originalTabIndex","_marker","getAttribute","charCode","togglePopup","getPopup","isOpen","_behindTerrain","_showingGlobe","_queryFogOpacity","pointerEvents","_setOpacity","_fadeTimer","_updateDOM","_calculateXYTransform","_calculateZTransform","getPitchAlignment","getRotationAlignment","_updateFrameId","getOffset","setOffset","_pointerdownPos","_positionDelta","isDraggable","setRotation","getRotation","setRotationAlignment","setPitchAlignment","setOccludedOpacity","getOccludedOpacity","closeButton","closeOnClick","focusAfterOpen","maxWidth","_startTime","_endTime","_end","cooperativeGestures","performanceMetricsCollection","attributionControl","preserveDrawingBuffer","trackResize","optimizeForTerrain","refreshExpiredTiles","showCompass","showZoom","visualizePitch","mouseRotate","mousePitch","down","move","offTemp","targetTouches","positionOptions","enableHighAccuracy","maximumAge","fitBoundsOptions","trackUserLocation","showAccuracyCircle","showUserLocation","showUserHeading","kilometer","meter","mile","foot","_interactive","_failIfMajorPerformanceCaveat","_preserveDrawingBuffer","_useWebGL2","useWebGL2","_trackResize","_isInitialLoad","_crossSourceCollisions","_parseLanguage","language","worldview","_domRenderTaskQueue","_controls","_popups","_mapId","_locale","_performanceMetricsCollection","_containerWidth","_containerHeight","_averageElevationLastSampledAt","_averageElevationExaggeration","_interactionRange","_visibilityHidden","testMode","container","childNodes","_setupContainer","_setupPainter","_onWindowOnline","_onWindowResize","_onVisibilityChange","_localFontFamily","_localIdeographFontFamily","_hash","addControl","_logoControl","logoPosition","_getMapId","_controlPositions","insertBefore","firstChild","removeControl","hasControl","_canvasContainer","_canvas","_updateContainerDimensions","_resizeCanvas","setMinZoom","getMinZoom","setMaxZoom","getMaxZoom","setMinPitch","getMinPitch","setMaxPitch","getMaxPitch","getRenderWorldCopies","setRenderWorldCopies","_forceMarkerAndPopupUpdate","getLanguage","setLanguage","_setLanguage","getWorldview","setWorldview","_lazyInitEmptyStyle","_updateProjectionTransition","_updateProjection","_createDelegatedListener","listener","delegates","_delegatedListeners","diff","_diffStyle","_updateStyle","_updateTerrain","_updateDiff","getStyle","isStyleLoaded","areTilesLoaded","loadImage","getComputedStyle","parentElement","_detectMissingCSS","_missingCSSCanary","getPropertyValue","_contextLost","_contextRestored","_controlContainer","_onMapScroll","_addPopup","_removePopup","_frame","scrollTop","scrollLeft","_styleDirty","_sourcesDirty","_render","_removed","_updateAverageElevation","_placementDirty","gpuTime","detail","layerTimes","_repaint","_triggerFrame","_calculateSpeedIndex","speedIndex","_fullyLoaded","_authenticate","_trackPointer","readPixels","_canvasPixelComparison","loseContext","_renderNextFrame","visibilityState","_showTileBoundaries","_showTerrainWireframe","_speedIndexTiming","_showPadding","repaint","_vertices","_showTileAABBs","_setCacheLimits","NavigationControl","_zoomInButton","_createButton","_zoomOutButton","_compass","_compassIcon","_updateZoomButtons","_rotateCompassArrow","_setButtonTitle","GeolocateControl","geolocation","_updateMarkerRotationThrottled","_updateMarkerRotation","_numberOfWatches","_checkGeolocationSupport","_setupUI","_geolocationWatchID","clearWatch","_userLocationDotMarker","_accuracyCircleMarker","_onZoom","_noTimeout","_supportsGeolocation","permissions","_isOutOfMapMaxBounds","longitude","latitude","_setErrorState","_watchState","_geolocateButton","_onSuccess","_updateMarker","_finish","_lastKnownPosition","_updateCamera","_dotElement","accuracy","geolocateSource","_accuracy","_updateCircleRadius","_circleElement","_heading","_onError","_clearWatch","_timeoutId","_setup","_onDeviceOrientation","webkitCompassHeading","absolute","watchPosition","_addDeviceOrientationListener","getCurrentPosition","DeviceMotionEvent","requestPermission","DeviceOrientationEvent","AttributionControl","ScaleControl","_isNumberFormatSupported","unitDisplay","_setScale","setUnit","FullscreenControl","_fullscreen","_fullscreenchange","_checkFullscreenSupport","_changeIcon","fullscreenEnabled","webkitFullscreenEnabled","_fullscreenButton","_updateTitle","_onClickFullscreen","_getTitle","_isFullscreen","toggle","exitFullscreen","webkitCancelFullScreen","requestFullscreen","webkitRequestFullscreen","Popup","_classList","_onClose","closeOnMove","_focusFirstElement","_onMouseEvent","_content","trackPointer","setText","setDOMContent","createTextNode","setHTML","createDocumentFragment","getMaxWidth","setMaxWidth","hasChildNodes","removeChild","_closeButton","addClassName","_updateClassList","removeClassName","toggleClassName","_getAnchor","offsetHeight","_tip","focus","Marker","FreeCameraOptions","prewarm","clearPrewarmedResources","baseApiUrl","maxParallelImageRequests","clearStorage","mapboxgl$1","controlContainer","controlButton","title","onClick","parseSVG","DOMParser","parseFromString","compass","CompassControl","onControlButtonClick","onRotate","instant","parentNode","inspect","html","withProperties","InspectControl","deactivate","activate","mapClickListener","updatePosition","cursor","hideDetails","getPointFeatures","queryBox","showDetails","detailsNode","node","isLast","popup","undefined","canvasRect","defaults","label","styleName","styleUrl","StylesControl","styles","findStyleByName","expanded","onChange","styleNames","currentStyleIndex","select","option","plus","minus","ZoomControl","buttonIn","buttonOut","auto","basePlacements","clippingParents","popper","reference","variationPlacements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","ownerDocument","defaultView","isElement","Element","isHTMLElement","isShadowRoot","ShadowRoot","applyStyles$1","_ref","elements","effect","_ref2","initialStyles","strategy","margin","arrow","attribute","requires","getBasePlacement","getUAString","uaData","userAgentData","brands","item","brand","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","visualViewport","addVisualOffsets","offsetLeft","offsetTop","getLayoutRect","child","rootNode","getRootNode","isSameNode","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","currentNode","css","contain","willChange","getContainingBlock","getMainAxisFromPlacement","mathMax","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","arrow$1","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","centerToReference","axisProp","_options$element","requiresIfExists","getVariation","unsetSides","mapToStyles","_Object$assign2","popperRect","variation","offsets","gpuAcceleration","adaptive","roundOffsets","isFixed","_offsets$x","_offsets$y","_ref3","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","dpr","roundOffsetsByDPR","computeStyles$1","_ref5","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","eventListeners","instance","_options$scroll","scroll","_options$resize","scrollParents","scrollParent","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","list","_element$ownerDocumen","isBody","updatedList","rectToClientRect","getClientRectFromMixedType","clippingParent","layoutViewport","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","direction","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","computeOffsets","commonX","commonY","mainAxis","detectOverflow","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","flip$1","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","check","_loop","fittingPlacement","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","hide$1","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","offset$1","_options$offset","invertDistance","skidding","distanceAndSkiddingToXY","_data$state$placement","popperOffsets$1","preventOverflow$1","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_len","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","withinMaxClamp","getCompositeRect","elementOrVirtualElement","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","modifiers","visited","modifier","dep","depModifier","DEFAULT_OPTIONS","areValidElements","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","pending","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","merged","orderModifiers","existing","_ref$options","cleanupFn","noopFn","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","onFirstUpdate","createPopper","computeStyles","applyStyles","flip","hide","elementMap","Data","instanceMap","TRANSITION_END","parseSelector","selector","CSS","escape","triggerTransitionEnd","dispatchEvent","jquery","nodeType","isVisible","getClientRects","elementIsVisible","closedDetails","closest","summary","isDisabled","Node","ELEMENT_NODE","findShadowRoot","attachShadow","root","noop","reflow","getjQuery","jQuery","DOMContentLoadedCallbacks","isRTL","defineJQueryPlugin","NAME","JQUERY_NO_CONFLICT","jQueryInterface","Constructor","noConflict","execute","possibleCallback","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","floatTransitionDelay","getTransitionDurationFromElement","called","getNextActiveElement","activeElement","shouldGetNext","isCycleAllowed","listLength","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","nativeEvents","makeEventUid","getElementEvents","findHandler","events","callable","delegationSelector","normalizeParameters","originalTypeEvent","delegationFunction","isDelegated","typeEvent","getTypeEvent","addHandler","oneOff","wrapFunction","relatedTarget","delegateTarget","previousFunction","domElements","querySelectorAll","domElement","hydrateObj","EventHandler","bootstrapDelegationHandler","bootstrapHandler","removeHandler","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","one","inNamespace","isNamespace","startsWith","elementEvent","keyHandlers","jQueryEvent","bubbles","nativeDispatch","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","evt","obj","meta","_unused","configurable","normalizeData","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","getDataAttributes","bsKeys","dataset","pureKey","getDataAttribute","Config","Default","DefaultType","_getConfig","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","jsonConfig","configTypes","expectedTypes","valueType","TypeError","BaseComponent","_config","DATA_KEY","dispose","EVENT_KEY","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","VERSION","eventName","getSelector","hrefAttribute","SelectorEngine","findOne","parents","ancestor","previous","previousElementSibling","nextElementSibling","focusableChildren","focusables","getSelectorFromElement","getElementFromSelector","getMultipleElementsFromSelector","enableDismissTrigger","component","clickEvent","tagName","EVENT_KEY$b","EVENT_CLOSE","EVENT_CLOSED","Alert","close","_destroyElement","each","SELECTOR_DATA_TOGGLE$5","Button","EVENT_KEY$9","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","Default$c","endCallback","leftCallback","rightCallback","DefaultType$c","Swipe","isSupported","_deltaX","_supportPointerEvents","PointerEvent","_initEvents","_eventIsPointerPenTouch","_handleSwipe","absDeltaX","pointerType","maxTouchPoints","EVENT_KEY$8","DATA_API_KEY$5","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN$1","EVENT_MOUSEENTER$1","EVENT_MOUSELEAVE$1","EVENT_DRAG_START","EVENT_LOAD_DATA_API$3","EVENT_CLICK_DATA_API$5","CLASS_NAME_CAROUSEL","CLASS_NAME_ACTIVE$2","SELECTOR_ACTIVE","SELECTOR_ITEM","SELECTOR_ACTIVE_ITEM","KEY_TO_DIRECTION","ArrowLeft","ArrowRight","Default$b","interval","ride","touch","DefaultType$b","Carousel","_interval","_activeElement","_isSliding","touchTimeout","_swipeHelper","_indicatorsElement","_addEventListeners","cycle","_slide","nextWhenVisible","_clearInterval","_updateInterval","setInterval","_maybeEnableCycle","items","_getItems","activeIndex","_getItemIndex","_getActive","defaultInterval","_keydown","_addTouchEventListeners","img","swipeConfig","_directionToOrder","_setActiveIndicatorElement","activeIndicator","newActiveIndicator","elementInterval","isNext","nextElement","nextElementIndex","triggerEvent","_orderToDirection","isCycling","directionalClassName","orderClassName","_isAnimated","clearInterval","carousel","slideIndex","carousels","EVENT_KEY$7","EVENT_SHOW$6","EVENT_SHOWN$6","EVENT_HIDE$6","EVENT_HIDDEN$6","EVENT_CLICK_DATA_API$4","CLASS_NAME_SHOW$7","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_DEEPER_CHILDREN","SELECTOR_DATA_TOGGLE$4","Default$a","DefaultType$a","Collapse","_isTransitioning","_triggerArray","toggleList","elem","filterElement","foundElement","_initializeChildren","_addAriaAndCollapsedClass","_isShown","show","activeChildren","_getFirstLevelChildren","activeInstance","dimension","_getDimension","scrollSize","selected","triggerArray","NAME$a","EVENT_KEY$6","DATA_API_KEY$3","ARROW_UP_KEY$1","ARROW_DOWN_KEY$1","EVENT_HIDE$5","EVENT_HIDDEN$5","EVENT_SHOW$5","EVENT_SHOWN$5","EVENT_CLICK_DATA_API$3","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_SHOW$6","SELECTOR_DATA_TOGGLE$3","SELECTOR_DATA_TOGGLE_SHOWN","SELECTOR_MENU","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","Default$9","autoClose","popperConfig","DefaultType$9","Dropdown","_popper","_parent","_menu","_inNavbar","_detectNavbar","_createPopper","_completeHide","Popper","referenceElement","_getPopperConfig","Popper.createPopper","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","clearMenus","openToggles","composedPath","isMenuTarget","dataApiKeydownHandler","isInput","isEscapeEvent","isUpOrDownEvent","getToggleButton","NAME$9","CLASS_NAME_SHOW$5","EVENT_MOUSEDOWN","Default$8","clickCallback","rootElement","DefaultType$8","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","EVENT_KEY$5","EVENT_FOCUSIN$2","EVENT_KEYDOWN_TAB","TAB_NAV_BACKWARD","Default$7","autofocus","trapElement","DefaultType$7","FocusTrap","_isActive","_lastTabNavDirection","_handleFocusin","_handleKeydown","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","PROPERTY_PADDING","PROPERTY_MARGIN","ScrollBarHelper","getWidth","documentWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_resetElementAttributes","isOverflowing","_saveInitialAttribute","styleProperty","scrollbarWidth","_applyManipulationCallback","setProperty","actualValue","removeProperty","callBack","sel","EVENT_KEY$4","EVENT_HIDE$4","EVENT_HIDE_PREVENTED$1","EVENT_HIDDEN$4","EVENT_SHOW$4","EVENT_SHOWN$4","EVENT_RESIZE$1","EVENT_CLICK_DISMISS","EVENT_MOUSEDOWN_DISMISS","EVENT_KEYDOWN_DISMISS$1","EVENT_CLICK_DATA_API$2","CLASS_NAME_OPEN","CLASS_NAME_SHOW$4","CLASS_NAME_STATIC","Default$6","DefaultType$6","Modal","_dialog","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_scrollBar","_adjustDialog","_showElement","_hideModal","handleUpdate","modalBody","_triggerBackdropTransition","event2","_resetAdjustments","isModalOverflowing","initialOverflowY","isBodyOverflowing","paddingLeft","paddingRight","showEvent","alreadyOpen","EVENT_KEY$3","DATA_API_KEY$1","EVENT_LOAD_DATA_API$2","CLASS_NAME_SHOW$3","CLASS_NAME_SHOWING$1","CLASS_NAME_HIDING","OPEN_SELECTOR","EVENT_SHOW$3","EVENT_SHOWN$3","EVENT_HIDE$3","EVENT_HIDE_PREVENTED","EVENT_HIDDEN$3","EVENT_RESIZE","EVENT_CLICK_DATA_API$1","EVENT_KEYDOWN_DISMISS","Default$5","DefaultType$5","Offcanvas","DefaultAllowlist","col","em","h1","h2","h3","h4","h5","h6","pre","small","sup","strong","uriAttributes","SAFE_URL_PATTERN","allowedAttribute","allowedAttributeList","attributeName","nodeValue","attributeRegex","regex","Default$4","allowList","extraClass","sanitize","sanitizeFn","template","DefaultType$4","DefaultContentType","entry","TemplateFactory","getContent","_resolvePossibleFunction","hasContent","changeContent","_checkContent","toHtml","templateWrapper","_maybeSanitize","_setContent","arg","templateElement","_putElementInTemplate","unsafeHtml","sanitizeFunction","createdDocument","elementName","attributeList","allowedAttributes","sanitizeHtml","DISALLOWED_ATTRIBUTES","CLASS_NAME_FADE$2","CLASS_NAME_SHOW$2","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","Default$3","animation","customClass","DefaultType$3","Tooltip","_isEnabled","_isHovered","_activeTrigger","_templateFactory","_newContent","tip","_setListeners","_fixTitle","toggleEnabled","_leave","_enter","_hideModalHandler","_disposePopper","_isWithContent","isInTheDom","_getTipElement","_isWithActiveTrigger","_createTipElement","_getContentForTemplate","_getTemplateFactory","tipId","prefix","getUID","setContent","_initializeOnDelegatedTarget","_getDelegateConfig","triggers","eventIn","eventOut","_setTimeout","dataAttributes","dataAttribute","Default$2","DefaultType$2","Popover","_getContent","EVENT_KEY$2","EVENT_ACTIVATE","EVENT_CLICK","EVENT_LOAD_DATA_API$1","CLASS_NAME_ACTIVE$1","SELECTOR_TARGET_LINKS","SELECTOR_NAV_LINKS","SELECTOR_LINK_ITEMS","Default$1","rootMargin","smoothScroll","threshold","DefaultType$1","ScrollSpy","_targetLinks","_observableSections","_rootElement","_activeTarget","_observer","_previousScrollData","visibleEntryTop","parentScrollTop","refresh","_initializeTargetsAndObservables","_maybeEnableSmoothScroll","disconnect","_getNewObserver","section","observe","observableSection","scrollTo","behavior","IntersectionObserver","_observerCallback","targetElement","_process","userScrollsDown","isIntersecting","_clearActiveClass","entryIsLowerThanPrevious","targetLinks","decodeURI","_activateParents","listGroup","activeNodes","spy","EVENT_KEY$1","EVENT_HIDE$1","EVENT_HIDDEN$1","EVENT_SHOW$1","EVENT_SHOWN$1","EVENT_CLICK_DATA_API","EVENT_KEYDOWN","EVENT_LOAD_DATA_API","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","HOME_KEY","END_KEY","CLASS_NAME_ACTIVE","CLASS_NAME_FADE$1","CLASS_NAME_SHOW$1","SELECTOR_DROPDOWN_TOGGLE","NOT_SELECTOR_DROPDOWN_TOGGLE","SELECTOR_DATA_TOGGLE","SELECTOR_INNER_ELEM","SELECTOR_DATA_TOGGLE_ACTIVE","Tab","_setInitialAttributes","_getChildren","innerElem","_elemIsActive","_getActiveElem","hideEvent","_deactivate","_activate","relatedElem","_toggleDropDown","nextActiveElement","preventScroll","_setAttributeIfNotExists","_setInitialAttributesOnChild","_getInnerElement","outerElem","_getOuterElement","_setInitialAttributesOnTargetPanel","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSIN","EVENT_FOCUSOUT","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","CLASS_NAME_HIDE","CLASS_NAME_SHOW","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","isShown","_onInteraction","isInteracting","getDefaultOpts","simple","omitExtraWLInCodeBlocks","describe","noHeaderId","prefixHeaderId","rawPrefixHeaderId","ghCompatibleHeaderId","rawHeaderId","headerLevelStart","parseImgDimensions","simplifiedAutoLink","excludeTrailingPunctuationFromURLs","literalMidWordUnderscores","literalMidWordAsterisks","strikethrough","tables","tablesHeaderId","ghCodeBlocks","tasklists","smoothLivePreview","smartIndentationFix","disableForced4SpacesIndentedSublists","simpleLineBreaks","requireSpaceBeforeHeadingText","ghMentions","ghMentionsLink","encodeEmails","openLinksInNewWindow","backslashEscapesHTMLTags","emoji","underline","ellipsis","completeHTMLDocument","splitAdjacentBlockquotes","ret","opt","showdown","parsers","extensions","globalOptions","setFlavor","flavor","github","original","ghost","vanilla","allOn","allOptionsOn","extension","errMsg","valid","helper","baseMsg","ext","isString","isUndefined","listeners","escapeCharactersCallback","wholeMatch","m1","setOption","getOption","getOptions","resetOptions","preset","getFlavor","getFlavorOptions","getDefaultOptions","subParser","stdExtName","validExtension","getAllExtensions","removeExtension","resetExtensions","validateExtension","isFunction","prop","escapeCharacters","charsToEscape","afterBackslash","regexString","unescapeHTMLEntities","txt","rgxFindMatchPos","str","flags","lastIndex","matchRecursiveRegExp","matchPos","results","replaceRecursiveRegExp","replacement","repStr","finalStr","bits","regexIndexOf","search","splitAtIndex","encodeEmailAddress","mail","padEnd","targetLength","padString","repeat","msg","alert","regexes","asteriskDashAndColon","emojis","ab","abc","abcd","aerial_tramway","airplane","alarm_clock","alembic","alien","ambulance","amphora","angel","anger","angry","anguished","ant","apple","aquarius","aries","arrow_backward","arrow_double_down","arrow_double_up","arrow_down","arrow_down_small","arrow_forward","arrow_heading_down","arrow_heading_up","arrow_left","arrow_lower_left","arrow_lower_right","arrow_right","arrow_right_hook","arrow_up","arrow_up_down","arrow_up_small","arrow_upper_left","arrow_upper_right","arrows_clockwise","arrows_counterclockwise","art","articulated_lorry","artificial_satellite","astonished","athletic_shoe","atm","atom_symbol","avocado","baby","baby_bottle","baby_chick","baby_symbol","back","bacon","badminton","baggage_claim","baguette_bread","balance_scale","balloon","ballot_box","ballot_box_with_check","bamboo","banana","bangbang","bank","bar_chart","barber","baseball","basketball","basketball_man","basketball_woman","bat","bath","bathtub","battery","beach_umbrella","bear","bed","bee","beer","beers","beetle","beginner","bell","bellhop_bell","bento","biking_man","bike","biking_woman","bikini","biohazard","bird","birthday","black_circle","black_flag","black_heart","black_joker","black_large_square","black_medium_small_square","black_medium_square","black_nib","black_small_square","black_square_button","blonde_man","blonde_woman","blossom","blowfish","blue_book","blue_car","blue_heart","blush","boar","boat","bomb","book","bookmark","bookmark_tabs","books","boom","boot","bouquet","bowing_man","bow_and_arrow","bowing_woman","bowling","boxing_glove","boy","bread","bride_with_veil","bridge_at_night","briefcase","broken_heart","bug","building_construction","bulb","bullettrain_front","bullettrain_side","burrito","bus","business_suit_levitating","busstop","bust_in_silhouette","busts_in_silhouette","butterfly","cactus","cake","calendar","call_me_hand","calling","camel","camera","camera_flash","camping","cancer","candle","candy","canoe","capital_abcd","capricorn","car","card_file_box","card_index","card_index_dividers","carousel_horse","carrot","cat","cat2","chains","champagne","chart","chart_with_downwards_trend","chart_with_upwards_trend","checkered_flag","cheese","cherries","cherry_blossom","chestnut","chicken","children_crossing","chipmunk","chocolate_bar","christmas_tree","church","cinema","circus_tent","city_sunrise","city_sunset","cityscape","clap","clapper","classical_building","clinking_glasses","clipboard","clock1","clock10","clock1030","clock11","clock1130","clock12","clock1230","clock130","clock2","clock230","clock3","clock330","clock4","clock430","clock5","clock530","clock6","clock630","clock7","clock730","clock8","clock830","clock9","clock930","closed_book","closed_lock_with_key","closed_umbrella","cloud","cloud_with_lightning","cloud_with_lightning_and_rain","cloud_with_rain","cloud_with_snow","clown_face","clubs","cocktail","coffee","coffin","cold_sweat","comet","computer","computer_mouse","confetti_ball","confounded","confused","congratulations","construction","construction_worker_man","construction_worker_woman","control_knobs","convenience_store","cookie","cool","policeman","copyright","corn","couch_and_lamp","couple","couple_with_heart_woman_man","couple_with_heart_man_man","couple_with_heart_woman_woman","couplekiss_man_man","couplekiss_man_woman","couplekiss_woman_woman","cow","cow2","cowboy_hat_face","crab","crayon","credit_card","crescent_moon","cricket","crocodile","croissant","crossed_fingers","crossed_flags","crossed_swords","crown","cry","crying_cat_face","crystal_ball","cucumber","cupid","curly_loop","currency_exchange","curry","custard","customs","cyclone","dagger","dancer","dancing_women","dancing_men","dango","dark_sunglasses","dart","dash","date","deciduous_tree","deer","department_store","derelict_house","desert","desert_island","desktop_computer","male_detective","diamond_shape_with_a_dot_inside","diamonds","disappointed","disappointed_relieved","dizzy","dizzy_face","do_not_litter","dog","dog2","dollar","dolls","dolphin","door","doughnut","dove","dragon","dragon_face","dress","dromedary_camel","drooling_face","droplet","drum","duck","dvd","eagle","ear","ear_of_rice","earth_africa","earth_americas","earth_asia","egg","eggplant","eight_pointed_black_star","eight_spoked_asterisk","electric_plug","elephant","email","envelope_with_arrow","euro","european_castle","european_post_office","evergreen_tree","exclamation","expressionless","eye","eye_speech_bubble","eyeglasses","eyes","face_with_head_bandage","face_with_thermometer","fist_oncoming","fallen_leaf","family_man_woman_boy","family_man_boy","family_man_boy_boy","family_man_girl","family_man_girl_boy","family_man_girl_girl","family_man_man_boy","family_man_man_boy_boy","family_man_man_girl","family_man_man_girl_boy","family_man_man_girl_girl","family_man_woman_boy_boy","family_man_woman_girl","family_man_woman_girl_boy","family_man_woman_girl_girl","family_woman_boy","family_woman_boy_boy","family_woman_girl","family_woman_girl_boy","family_woman_girl_girl","family_woman_woman_boy","family_woman_woman_boy_boy","family_woman_woman_girl","family_woman_woman_girl_boy","family_woman_woman_girl_girl","fast_forward","fax","fearful","feet","female_detective","ferris_wheel","ferry","field_hockey","file_cabinet","file_folder","film_projector","film_strip","fire_engine","fireworks","first_quarter_moon","first_quarter_moon_with_face","fish","fish_cake","fishing_pole_and_fish","fist_raised","fist_left","fist_right","flashlight","fleur_de_lis","flight_arrival","flight_departure","floppy_disk","flower_playing_cards","flushed","foggy","football","footprints","fork_and_knife","fountain","fountain_pen","four_leaf_clover","fox_face","framed_picture","free","fried_egg","fried_shrimp","fries","frog","frowning","frowning_face","frowning_man","frowning_woman","middle_finger","fuelpump","full_moon","full_moon_with_face","funeral_urn","game_die","gear","gem","gemini","gift","gift_heart","girl","globe_with_meridians","goal_net","goat","golf","golfing_man","golfing_woman","gorilla","grapes","green_apple","green_book","green_heart","green_salad","grey_exclamation","grey_question","grimacing","grin","grinning","guardsman","guardswoman","guitar","gun","haircut_woman","haircut_man","hamburger","hammer","hammer_and_pick","hammer_and_wrench","hamster","hand","handbag","handshake","hankey","hatched_chick","hatching_chick","headphones","hear_no_evil","heart","heart_decoration","heart_eyes","heart_eyes_cat","heartbeat","heartpulse","hearts","heavy_check_mark","heavy_division_sign","heavy_dollar_sign","heavy_heart_exclamation","heavy_minus_sign","heavy_multiplication_x","heavy_plus_sign","helicopter","herb","hibiscus","high_brightness","high_heel","hocho","hole","honey_pot","horse","horse_racing","hospital","hot_pepper","hotdog","hotel","hotsprings","hourglass","hourglass_flowing_sand","house","house_with_garden","houses","hugs","hushed","ice_cream","ice_hockey","ice_skate","icecream","ideograph_advantage","imp","inbox_tray","incoming_envelope","tipping_hand_woman","information_source","innocent","interrobang","iphone","izakaya_lantern","jack_o_lantern","japan","japanese_castle","japanese_goblin","japanese_ogre","jeans","joy","joy_cat","joystick","kaaba","keycap_ten","kick_scooter","kimono","kiss","kissing","kissing_cat","kissing_closed_eyes","kissing_heart","kissing_smiling_eyes","kiwi_fruit","koala","koko","large_blue_circle","large_blue_diamond","large_orange_diamond","last_quarter_moon","last_quarter_moon_with_face","latin_cross","laughing","ledger","left_luggage","left_right_arrow","leftwards_arrow_with_hook","lemon","leo","leopard","level_slider","libra","light_rail","link","lion","lips","lipstick","lizard","lock","lock_with_ink_pen","lollipop","loud_sound","loudspeaker","love_hotel","love_letter","low_brightness","lying_face","mag_right","mahjong","mailbox","mailbox_closed","mailbox_with_mail","mailbox_with_no_mail","man","man_artist","man_astronaut","man_cartwheeling","man_cook","man_dancing","man_facepalming","man_factory_worker","man_farmer","man_firefighter","man_health_worker","man_in_tuxedo","man_judge","man_juggling","man_mechanic","man_office_worker","man_pilot","man_playing_handball","man_playing_water_polo","man_scientist","man_shrugging","man_singer","man_student","man_teacher","man_technologist","man_with_gua_pi_mao","man_with_turban","tangerine","mans_shoe","mantelpiece_clock","maple_leaf","martial_arts_uniform","massage_woman","massage_man","meat_on_bone","medal_military","medal_sports","mega","melon","memo","men_wrestling","menorah","mens","metal","metro","microphone","microscope","milk_glass","milky_way","minibus","minidisc","mobile_phone_off","money_mouth_face","money_with_wings","moneybag","monkey","monkey_face","monorail","moon","mortar_board","mosque","motor_boat","motor_scooter","motorcycle","motorway","mount_fuji","mountain","mountain_biking_man","mountain_biking_woman","mountain_cableway","mountain_railway","mountain_snow","mouse","mouse2","movie_camera","moyai","mrs_claus","muscle","mushroom","musical_keyboard","musical_note","musical_score","mute","nail_care","name_badge","national_park","nauseated_face","necktie","negative_squared_cross_mark","nerd_face","neutral_face","new","new_moon","new_moon_with_face","newspaper","newspaper_roll","next_track_button","ng","no_good_man","no_good_woman","night_with_stars","no_bell","no_bicycles","no_entry","no_entry_sign","no_mobile_phones","no_mouth","no_pedestrians","no_smoking","nose","notebook","notebook_with_decorative_cover","notes","nut_and_bolt","o2","ocean","octopus","oden","office","oil_drum","ok_hand","ok_man","ok_woman","old_key","older_man","older_woman","om","oncoming_automobile","oncoming_bus","oncoming_police_car","oncoming_taxi","open_file_folder","open_hands","open_mouth","open_umbrella","ophiuchus","orange_book","orthodox_cross","outbox_tray","owl","ox","package","page_facing_up","page_with_curl","pager","paintbrush","palm_tree","pancakes","panda_face","paperclip","paperclips","parasol_on_ground","parking","part_alternation_mark","partly_sunny","passenger_ship","passport_control","pause_button","peace_symbol","peach","peanuts","pear","pen","pencil2","penguin","pensive","performing_arts","persevere","person_fencing","pouting_woman","phone","pig","pig2","pig_nose","pill","pineapple","ping_pong","pisces","pizza","place_of_worship","plate_with_cutlery","play_or_pause_button","point_down","point_left","point_right","point_up","point_up_2","police_car","policewoman","poodle","popcorn","post_office","postal_horn","postbox","potable_water","potato","pouch","poultry_leg","pound","rage","pouting_cat","pouting_man","pray","prayer_beads","pregnant_woman","previous_track_button","prince","princess","printer","purple_heart","purse","pushpin","put_litter_in_its_place","question","rabbit","rabbit2","racehorse","racing_car","radio","radio_button","radioactive","railway_car","railway_track","rainbow","rainbow_flag","raised_back_of_hand","raised_hand_with_fingers_splayed","raised_hands","raising_hand_woman","raising_hand_man","ram","ramen","rat","record_button","recycle","red_circle","registered","relaxed","relieved","reminder_ribbon","repeat_one","rescue_worker_helmet","restroom","revolving_hearts","rewind","rhinoceros","ribbon","rice","rice_ball","rice_cracker","rice_scene","right_anger_bubble","ring","robot","rocket","rofl","roll_eyes","roller_coaster","rooster","rose","rosette","rotating_light","round_pushpin","rowing_man","rowing_woman","rugby_football","running_man","running_shirt_with_sash","running_woman","sagittarius","sake","sandal","santa","satellite","saxophone","school","school_satchel","scissors","scorpion","scorpius","scream","scream_cat","seat","secret","see_no_evil","seedling","selfie","shallow_pan_of_food","shamrock","shark","shaved_ice","sheep","shell","shield","shinto_shrine","ship","shirt","shopping","shopping_cart","shower","shrimp","signal_strength","six_pointed_star","ski","skier","skull","skull_and_crossbones","sleeping","sleeping_bed","sleepy","slightly_frowning_face","slightly_smiling_face","slot_machine","small_airplane","small_blue_diamond","small_orange_diamond","small_red_triangle","small_red_triangle_down","smile","smile_cat","smiley","smiley_cat","smiling_imp","smirk","smirk_cat","smoking","snail","snake","sneezing_face","snowboarder","snowflake","snowman","snowman_with_snow","sob","soccer","soon","sos","sound","space_invader","spades","spaghetti","sparkle","sparkler","sparkles","sparkling_heart","speak_no_evil","speaker","speaking_head","speech_balloon","speedboat","spider","spider_web","spiral_calendar","spiral_notepad","spoon","squid","stadium","star","star2","star_and_crescent","star_of_david","stars","station","statue_of_liberty","steam_locomotive","stew","stop_button","stop_sign","stopwatch","straight_ruler","strawberry","stuck_out_tongue","stuck_out_tongue_closed_eyes","stuck_out_tongue_winking_eye","studio_microphone","stuffed_flatbread","sun_behind_large_cloud","sun_behind_rain_cloud","sun_behind_small_cloud","sun_with_face","sunflower","sunglasses","sunny","sunrise","sunrise_over_mountains","surfing_man","surfing_woman","sushi","suspension_railway","sweat","sweat_drops","sweat_smile","sweet_potato","swimming_man","swimming_woman","symbols","synagogue","syringe","taco","tada","tanabata_tree","taurus","taxi","tea","telephone_receiver","telescope","tennis","tent","thermometer","thinking","thought_balloon","ticket","tickets","tiger","tiger2","timer_clock","tipping_hand_man","tired_face","tm","toilet","tokyo_tower","tongue","tophat","tornado","trackball","tractor","traffic_light","train","train2","tram","triangular_flag_on_post","triangular_ruler","trident","triumph","trolleybus","trophy","tropical_drink","tropical_fish","truck","trumpet","tulip","tumbler_glass","turkey","turtle","tv","twisted_rightwards_arrows","two_hearts","two_men_holding_hands","two_women_holding_hands","u5272","u5408","u55b6","u6307","u6708","u6709","u6e80","u7121","u7533","u7981","u7a7a","umbrella","unamused","underage","unicorn","unlock","upside_down_face","vertical_traffic_light","vhs","vibration_mode","video_camera","video_game","violin","virgo","volcano","volleyball","vulcan_salute","walking_man","walking_woman","waning_crescent_moon","waning_gibbous_moon","warning","wastebasket","watch","water_buffalo","watermelon","wave","wavy_dash","waxing_crescent_moon","weary","wedding","weight_lifting_man","weight_lifting_woman","whale","whale2","wheel_of_dharma","wheelchair","white_check_mark","white_circle","white_flag","white_flower","white_large_square","white_medium_small_square","white_medium_square","white_small_square","white_square_button","wilted_flower","wind_chime","wind_face","wine_glass","wink","wolf","woman","woman_artist","woman_astronaut","woman_cartwheeling","woman_cook","woman_facepalming","woman_factory_worker","woman_farmer","woman_firefighter","woman_health_worker","woman_judge","woman_juggling","woman_mechanic","woman_office_worker","woman_pilot","woman_playing_handball","woman_playing_water_polo","woman_scientist","woman_shrugging","woman_singer","woman_student","woman_teacher","woman_technologist","woman_with_turban","womans_clothes","womans_hat","women_wrestling","womens","world_map","worried","wrench","writing_hand","yellow_heart","yen","yin_yang","yum","zap","zipper_mouth_face","zzz","octocat","Converter","converterOptions","langExtensions","outputModifiers","setConvFlavor","parsed","raw","_parseExtension","legacyExtensionLoading","validExt","listen","gOpt","_constructor","_dispatch","evtName","nText","makeHtml","gHtmlBlocks","gHtmlMdBlocks","gHtmlSpans","gUrls","gTitles","gDimensions","gListLevel","hashLinkCounts","converter","rsp","rgx","rTrimInputText","makeMarkdown","makeMd","HTMLParser","doc","preList","pres","presPH","childElementCount","classes","outerHTML","substitutePreCodeTags","clean","nodes","mdDoc","addExtension","useExtension","extensionName","output","getMetadata","getMetadataFormat","_setMetadataPair","_setMetadataFormat","_setMetadataRaw","writeAnchorTag","linkText","linkId","m5","m6","wm","mentions","username","lnk","simpleURLRegex","simpleURLRegex2","delimUrlRegex","simpleMailRegex","delimMailRegex","replaceLink","leadingMagicChars","m2","m3","trailingPunctuation","trailingMagicChars","lnkTxt","lmc","tmc","replaceMail","bq","codeblock","nextChar","doctype","doctypeParsed","charset","lang","leadingText","numSpaces","emojiCode","delim","blockText","blockTags","repFunc","inside","opTagPos","rgx1","patLeft","patRight","subTexts","newSubText1","hashHTMLSpan","repText","num","$1","setextRegexH1","setextRegexH2","spanGamut","hID","headerId","hashBlock","matchFound","hLevel","atxStyle","customizedHeaderId","hText","header","writeImageTag","altText","gDims","parseInside","lead","processListItems","listStr","trimTrailing","isParagraphed","m4","taskbtn","checked","bulletStyle","otp","wm2","styleStartNumber","listType","res","parseConsecutiveLists","olRgx","ulRgx","counterRxg","parseCL","parseMetadataContents","wholematch","grafs","grafsOut","grafsOutIt","codeFlag","$2","replaceFunc","blankLines","parseCells","cell","parseTable","rawTable","tableLines","sLine","rawHeaders","rawStyles","rawCells","tableHeaderId","row","tb","tblLgn","buildTable","charCodeToReplace","childrenLength","innerTxt","headerLevel","headerMark","listItems","listItemsLenght","listNum","listItemTxt","childrenLenght","spansOnly","tableArray","headings","rows","headContent","allign","cols","getElementsByTagName","cellContent","cellSpacesCount","strLen","module","async","Proxy","URLSearchParams","searchParams","mIdData","mData","external","geoURL","countryInfoUrl","countryInfoURL","lasticocords","info","loginfo","coarray","countries","idc","onEachFeature","name_ru","description","country","about"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67]} \ No newline at end of file +{"version":3,"file":"index.bundle.js","sources":["../node_modules/mapbox-gl/dist/mapbox-gl.js","../node_modules/@mapbox-controls/helpers/src/index.js","../node_modules/@mapbox-controls/compass/src/icons.js","../node_modules/@mapbox-controls/compass/src/index.js","../node_modules/@mapbox-controls/inspect/src/icons.js","../node_modules/@mapbox-controls/inspect/src/popup.js","../node_modules/@mapbox-controls/inspect/src/index.js","../node_modules/@mapbox-controls/styles/src/icons.js","../node_modules/@mapbox-controls/styles/src/index.js","../node_modules/@mapbox-controls/zoom/src/icons.js","../node_modules/@mapbox-controls/zoom/src/index.js","../node_modules/@mapbox-controls/language/src/index.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/utils/userAgent.js","../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@popperjs/core/lib/popper-lite.js","../node_modules/@popperjs/core/lib/popper.js","../node_modules/bootstrap/dist/js/bootstrap.esm.js","../node_modules/showdown/dist/showdown.js","../src/locales.js","../src/index.js"],"sourcesContent":["/* Mapbox GL JS is Copyright © 2020 Mapbox and subject to the Mapbox Terms of Service ((https://www.mapbox.com/legal/tos/). */\n(function (global, factory) {\ntypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\ntypeof define === 'function' && define.amd ? define(factory) :\n(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.mapboxgl = factory());\n})(this, (function () { 'use strict';\n\n/* eslint-disable */\n\nvar shared, worker, mapboxgl;\n// define gets called three times: one for each chunk. we rely on the order\n// they're imported to know which is which\nfunction define(_, chunk) {\nif (!shared) {\n shared = chunk;\n} else if (!worker) {\n worker = chunk;\n} else {\n var workerBundleString = \"self.onerror = function() { console.error('An error occurred while parsing the WebWorker bundle. This is most likely due to improper transpilation by Babel; please see https://docs.mapbox.com/mapbox-gl-js/guides/install/#transpiling'); }; var sharedChunk = {}; (\" + shared + \")(sharedChunk); (\" + worker + \")(sharedChunk); self.onerror = null;\"\n\n var sharedChunk = {};\n shared(sharedChunk);\n mapboxgl = chunk(sharedChunk);\n if (typeof window !== 'undefined' && window && window.URL && window.URL.createObjectURL) {\n mapboxgl.workerUrl = window.URL.createObjectURL(new Blob([workerBundleString], { type: 'text/javascript' }));\n }\n}\n}\n\n\ndefine([\"exports\"],(function(e){\"use strict\";var t=\"undefined\"!=typeof self?self:{},i=\"3.1.0\";let r;const n={API_URL:\"https://api.mapbox.com\",get API_URL_REGEX(){if(null==r){const e=/^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/|\\?|$)/i;try{r=null!=process.env.API_URL_REGEX?new RegExp(process.env.API_URL_REGEX):e;}catch(t){r=e;}}return r},get API_TILEJSON_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/v[0-9]*\\/.*\\.json.*$)/i},get API_SPRITE_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/styles\\/v[0-9]*\\/)(.*\\/sprite.*\\..*$)/i},get API_FONTS_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/fonts\\/v[0-9]*\\/)(.*\\.pbf.*$)/i},get API_STYLE_REGEX(){return /^((https?:)?\\/\\/)?([^\\/]+\\.)?mapbox\\.c(n|om)(\\/styles\\/v[0-9]*\\/)(.*$)/i},get API_CDN_URL_REGEX(){return /^((https?:)?\\/\\/)?api\\.mapbox\\.c(n|om)(\\/mapbox-gl-js\\/)(.*$)/i},get EVENTS_URL(){if(!n.API_URL)return null;try{const e=new URL(n.API_URL);return \"api.mapbox.cn\"===e.hostname?\"https://events.mapbox.cn/events/v2\":\"api.mapbox.com\"===e.hostname?\"https://events.mapbox.com/events/v2\":null}catch(e){return null}},SESSION_PATH:\"/map-sessions/v1\",FEEDBACK_URL:\"https://apps.mapbox.com/feedback\",TILE_URL_VERSION:\"v4\",RASTER_URL_PREFIX:\"raster/v1\",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,DEFAULT_STYLE:\"mapbox://styles/mapbox/standard\",MAX_PARALLEL_IMAGE_REQUESTS:16,DRACO_URL:\"https://api.mapbox.com/mapbox-gl-js/draco_decoder_gltf_v1.5.6.wasm\",GLYPHS_URL:\"mapbox://fonts/mapbox/{fontstack}/{range}.pbf\"},o={supported:!1,testSupport:function(e){!l&&a&&(c?h(e):s=e);}};let s,a,l=!1,c=!1;function h(e){const t=e.createTexture();e.bindTexture(e.TEXTURE_2D,t);try{if(e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,a),e.isContextLost())return;o.supported=!0;}catch(e){}e.deleteTexture(t),l=!0;}t.document&&(a=t.document.createElement(\"img\"),a.onload=function(){s&&h(s),s=null,c=!0;},a.onerror=function(){l=!0,s=null;},a.src=\"data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=\");const u=\"01\";function d(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}var p=f;function f(e,t,i,r){this.cx=3*e,this.bx=3*(i-e)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*t,this.by=3*(r-t)-this.cy,this.ay=1-this.cy-this.by,this.p1x=e,this.p1y=t,this.p2x=i,this.p2y=r;}f.prototype={sampleCurveX:function(e){return ((this.ax*e+this.bx)*e+this.cx)*e},sampleCurveY:function(e){return ((this.ay*e+this.by)*e+this.cy)*e},sampleCurveDerivativeX:function(e){return (3*this.ax*e+2*this.bx)*e+this.cx},solveCurveX:function(e,t){if(void 0===t&&(t=1e-6),e<0)return 0;if(e>1)return 1;for(var i=e,r=0;r<8;r++){var n=this.sampleCurveX(i)-e;if(Math.abs(n)n?s=i:a=i,i=.5*(a-s)+s;return i},solve:function(e,t){return this.sampleCurveY(this.solveCurveX(e,t))}};var m=d(p),_=g;function g(e,t){this.x=e,this.y=t;}g.prototype={clone:function(){return new g(this.x,this.y)},add:function(e){return this.clone()._add(e)},sub:function(e){return this.clone()._sub(e)},multByPoint:function(e){return this.clone()._multByPoint(e)},divByPoint:function(e){return this.clone()._divByPoint(e)},mult:function(e){return this.clone()._mult(e)},div:function(e){return this.clone()._div(e)},rotate:function(e){return this.clone()._rotate(e)},rotateAround:function(e,t){return this.clone()._rotateAround(e,t)},matMult:function(e){return this.clone()._matMult(e)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(e){return this.x===e.x&&this.y===e.y},dist:function(e){return Math.sqrt(this.distSqr(e))},distSqr:function(e){var t=e.x-this.x,i=e.y-this.y;return t*t+i*i},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(e){return Math.atan2(this.y-e.y,this.x-e.x)},angleWith:function(e){return this.angleWithSep(e.x,e.y)},angleWithSep:function(e,t){return Math.atan2(this.x*t-this.y*e,this.x*e+this.y*t)},_matMult:function(e){var t=e[2]*this.x+e[3]*this.y;return this.x=e[0]*this.x+e[1]*this.y,this.y=t,this},_add:function(e){return this.x+=e.x,this.y+=e.y,this},_sub:function(e){return this.x-=e.x,this.y-=e.y,this},_mult:function(e){return this.x*=e,this.y*=e,this},_div:function(e){return this.x/=e,this.y/=e,this},_multByPoint:function(e){return this.x*=e.x,this.y*=e.y,this},_divByPoint:function(e){return this.x/=e.x,this.y/=e.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var e=this.y;return this.y=this.x,this.x=-e,this},_rotate:function(e){var t=Math.cos(e),i=Math.sin(e),r=i*this.x+t*this.y;return this.x=t*this.x-i*this.y,this.y=r,this},_rotateAround:function(e,t){var i=Math.cos(e),r=Math.sin(e),n=t.y+r*(this.x-t.x)+i*(this.y-t.y);return this.x=t.x+i*(this.x-t.x)-r*(this.y-t.y),this.y=n,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},g.convert=function(e){return e instanceof g?e:Array.isArray(e)?new g(e[0],e[1]):e};var y=d(_);function x(e,t){if(Array.isArray(e)){if(!Array.isArray(t)||e.length!==t.length)return !1;for(let i=0;i=1)return 1;const t=e*e,i=t*e;return 4*(e<.5?i:3*(e-t)+i-.75)}function A(e){let t=1/0,i=1/0,r=-1/0,n=-1/0;for(const o of e)t=Math.min(t,o.x),i=Math.min(i,o.y),r=Math.max(r,o.x),n=Math.max(n,o.y);return {min:new y(t,i),max:new y(r,n)}}function S(e,t,i=0,r=!0){const n=new y(i,i),o=e.sub(n),s=t.add(n),a=[o,new y(s.x,o.y),s,new y(o.x,s.y)];return r&&a.push(o.clone()),a}function I(e,t,i,r){const n=new m(e,t,i,r);return function(e){return n.solve(e)}}const C=I(.25,.1,.25,1);function z(e,t,i){return Math.min(i,Math.max(t,e))}function P(e,t,i){return (i=z((i-e)/(t-e),0,1))*i*(3-2*i)}function D(e,t,i){const r=i-t,n=((e-t)%r+r)%r+t;return n===t?i:n}function R(e,t,i){if(!e.length)return i(null,[]);let r=e.length;const n=new Array(e.length);let o=null;e.forEach(((e,s)=>{t(e,((e,t)=>{e&&(o=e),n[s]=t,0==--r&&i(o,n);}));}));}function L(e){const t=[];for(const i in e)t.push(e[i]);return t}function k(e,...t){for(const i of t)for(const t in i)e[t]=i[t];return e}function O(e,t){const i={};for(let r=0;r>t/4)).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,e)}()}function U(e){return e<=1?1:Math.pow(2,Math.ceil(Math.log(e)/Math.LN2))}function V(e){return !!e&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e)}function j(e,t){e.forEach((e=>{t[e]&&(t[e]=t[e].bind(t));}));}function G(e,t){return -1!==e.indexOf(t,e.length-t.length)}function q(e,t,i){const r={};for(const n in e)r[n]=t.call(i||this,e[n],n,e);return r}function Z(e,t,i){const r={};for(const n in e)t.call(i||this,e[n],n,e)&&(r[n]=e[n]);return r}function $(e){return Array.isArray(e)?e.map($):\"object\"==typeof e&&e?q(e,$):e}const W={};function H(e){W[e]||(\"undefined\"!=typeof console&&console.warn(e),W[e]=!0);}function X(e,t,i){return (i.y-e.y)*(t.x-e.x)>(t.y-e.y)*(i.x-e.x)}function Y(e){let t=0;for(let i,r,n=0,o=e.length,s=o-1;n0?Math.acos(i/r)*b:0;let o=0!==e||0!==t?Math.atan2(-t,-e)*b+90:0;return o<0&&(o+=360),[r,o,n]}function Q(){return \"undefined\"!=typeof WorkerGlobalScope&&\"undefined\"!=typeof self&&self instanceof WorkerGlobalScope}function ee(e){const t={};if(e.replace(/(?:^|(?:\\s*\\,\\s*))([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)(?:\\=(?:([^\\x00-\\x20\\(\\)<>@\\,;\\:\\\\\"\\/\\[\\]\\?\\=\\{\\}\\x7F]+)|(?:\\\"((?:[^\"\\\\]|\\\\.)*)\\\")))?/g,((e,i,r,n)=>{const o=r||n;return t[i]=!o||o.toLowerCase(),\"\"})),t[\"max-age\"]){const e=parseInt(t[\"max-age\"],10);isNaN(e)?delete t[\"max-age\"]:t[\"max-age\"]=e;}return t}let te=null;function ie(){return !!t.document.fullscreenElement||!!t.document.webkitFullscreenElement}function re(e){try{const i=t[e];return i.setItem(\"_mapbox_test_\",1),i.removeItem(\"_mapbox_test_\"),!0}catch(e){return !1}}function ne(e,t){return [e[4*t],e[4*t+1],e[4*t+2],e[4*t+3]]}function oe(e,t,i){e[4*t+0]=i[0],e[4*t+1]=i[1],e[4*t+2]=i[2],e[4*t+3]=i[3];}function se(e,t){return [Math.pow(e[0],2.2)*t,Math.pow(e[1],2.2)*t,Math.pow(e[2],2.2)*t]}function ae(e){return [Math.pow(e[0],1/2.2),Math.pow(e[1],1/2.2),Math.pow(e[2],1/2.2)]}const le=\"mapbox-tiles\";let ce=500,he=50;let ue,de;function pe(){try{return t.caches}catch(e){}}function fe(){pe()&&!ue&&(ue=t.caches.open(le));}function me(e){const t=e.indexOf(\"?\");if(t<0)return e;const i=function(e){const t=e.indexOf(\"?\");return t>0?e.slice(t+1).split(\"&\"):[]}(e),r=i.filter((e=>{const t=e.split(\"=\");return \"language\"===t[0]||\"worldview\"===t[0]}));return r.length?`${e.slice(0,t)}?${r.join(\"&\")}`:e.slice(0,t)}let _e=1/0;function ge(e){_e++,_e>he&&(e.getActor().send(\"enforceCacheSizeLimit\",ce),_e=0);}const ye={Unknown:\"Unknown\",Style:\"Style\",Source:\"Source\",Tile:\"Tile\",Glyphs:\"Glyphs\",SpriteImage:\"SpriteImage\",SpriteJSON:\"SpriteJSON\",Image:\"Image\",Model:\"Model\"};\"function\"==typeof Object.freeze&&Object.freeze(ye);class xe extends Error{constructor(e,t,i){401===t&&De(i)&&(e+=\": you may have provided an invalid Mapbox access token. See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes\"),super(e),this.status=t,this.url=i;}toString(){return `${this.name}: ${this.message} (${this.status}): ${this.url}`}}const ve=Q()?()=>self.worker&&self.worker.referrer:()=>(\"blob:\"===t.location.protocol?t.parent:t).location.href;const be=function(e,i){if(!(/^file:/.test(r=e.url)||/^file:/.test(ve())&&!/^\\w+:/.test(r))){if(t.fetch&&t.Request&&t.AbortController&&t.Request.prototype.hasOwnProperty(\"signal\"))return function(e,i){const r=new t.AbortController,n=new t.Request(e.url,{method:e.method||\"GET\",body:e.body,credentials:e.credentials,headers:e.headers,referrer:ve(),referrerPolicy:e.referrerPolicy,signal:r.signal});let o=!1,s=!1;const a=(l=n.url).indexOf(\"sku=\")>0&&De(l);var l;\"json\"===e.type&&n.headers.set(\"Accept\",\"application/json\");const c=(r,o,l)=>{if(s)return;if(r&&\"SecurityError\"!==r.message&&H(r.toString()),o&&l)return h(o);const c=Date.now();t.fetch(n).then((t=>{if(t.ok){const e=a?t.clone():null;return h(t,e,c)}return i(new xe(t.statusText,t.status,e.url))})).catch((t=>{\"AbortError\"!==t.name&&i(new Error(`${t.message} ${e.url}`));}));},h=(r,a,l)=>{(\"arrayBuffer\"===e.type?r.arrayBuffer():\"json\"===e.type?r.json():r.text()).then((e=>{s||(a&&l&&function(e,i,r){if(fe(),!ue)return;const n={status:i.status,statusText:i.statusText,headers:new t.Headers};i.headers.forEach(((e,t)=>n.headers.set(t,e)));const o=ee(i.headers.get(\"Cache-Control\")||\"\");if(o[\"no-store\"])return;o[\"max-age\"]&&n.headers.set(\"Expires\",new Date(r+1e3*o[\"max-age\"]).toUTCString());const s=n.headers.get(\"Expires\");s&&(new Date(s).getTime()-r<42e4||function(e,t){if(void 0===de)try{new Response(new ReadableStream),de=!0;}catch(e){de=!1;}de?t(e.body):e.blob().then(t);}(i,(i=>{const r=new t.Response(i,n);fe(),ue&&ue.then((t=>t.put(me(e.url),r))).catch((e=>H(e.message)));})));}(n,a,l),o=!0,i(null,e,r.headers.get(\"Cache-Control\"),r.headers.get(\"Expires\")));})).catch((e=>{s||i(new Error(e.message));}));};return a?function(e,t){if(fe(),!ue)return t(null);const i=me(e.url);ue.then((e=>{e.match(i).then((r=>{const n=function(e){if(!e)return !1;const t=new Date(e.headers.get(\"Expires\")||0),i=ee(e.headers.get(\"Cache-Control\")||\"\");return t>Date.now()&&!i[\"no-cache\"]}(r);e.delete(i),n&&e.put(i,r.clone()),t(null,r,n);})).catch(t);})).catch(t);}(n,c):c(null,null),{cancel:()=>{s=!0,o||r.abort();}}}(e,i);if(Q()&&self.worker&&self.worker.actor)return self.worker.actor.send(\"getResource\",e,i,void 0,!0)}var r;return function(e,i){const r=new t.XMLHttpRequest;r.open(e.method||\"GET\",e.url,!0),\"arrayBuffer\"===e.type&&(r.responseType=\"arraybuffer\");for(const t in e.headers)r.setRequestHeader(t,e.headers[t]);return \"json\"===e.type&&(r.responseType=\"text\",r.setRequestHeader(\"Accept\",\"application/json\")),r.withCredentials=\"include\"===e.credentials,r.onerror=()=>{i(new Error(r.statusText));},r.onload=()=>{if((r.status>=200&&r.status<300||0===r.status)&&null!==r.response){let t=r.response;if(\"json\"===e.type)try{t=JSON.parse(r.response);}catch(e){return i(e)}i(null,t,r.getResponseHeader(\"Cache-Control\"),r.getResponseHeader(\"Expires\"));}else i(new xe(r.statusText,r.status,e.url));},r.send(e.body),{cancel:()=>r.abort()}}(e,i)},we=function(e,t){return be(k(e,{type:\"json\"}),t)},Te=function(e,t){return be(k(e,{type:\"arrayBuffer\"}),t)};function Ee(e){const i=t.document.createElement(\"a\");return i.href=e,i.protocol===t.document.location.protocol&&i.host===t.document.location.host}const Me=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=\";let Ae,Se;Ae=[],Se=0;const Ie=function(e,i){if(o.supported&&(e.headers||(e.headers={}),e.headers.accept=\"image/webp,*/*\"),Se>=n.MAX_PARALLEL_IMAGE_REQUESTS){const t={requestParameters:e,callback:i,cancelled:!1,cancel(){this.cancelled=!0;}};return Ae.push(t),t}Se++;let r=!1;const s=()=>{if(!r)for(r=!0,Se--;Ae.length&&Se{s(),e?i(e):r&&(t.createImageBitmap?function(e,i){const r=new t.Blob([new Uint8Array(e)],{type:\"image/png\"});t.createImageBitmap(r).then((e=>{i(null,e);})).catch((e=>{i(new Error(`Could not load image because of ${e.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`));}));}(r,((e,t)=>i(e,t,n,o))):function(e,i){const r=new t.Image,n=t.URL;r.onload=()=>{i(null,r),n.revokeObjectURL(r.src),r.onload=null,t.requestAnimationFrame((()=>{r.src=Me;}));},r.onerror=()=>i(new Error(\"Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.\"));const o=new t.Blob([new Uint8Array(e)],{type:\"image/png\"});r.src=e.byteLength?n.createObjectURL(o):Me;}(r,((e,t)=>i(e,t,n,o))));}));return {cancel:()=>{a.cancel(),s();}}},Ce=\"NO_ACCESS_TOKEN\";class ze{constructor(e,t,i){this._transformRequestFn=e,this._customAccessToken=t,this._silenceAuthErrors=!!i,this._createSkuToken();}_createSkuToken(){const e=function(){let e=\"\";for(let t=0;t<10;t++)e+=\"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\"[Math.floor(62*Math.random())];return {token:[\"1\",u,e].join(\"\"),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=e.token,this._skuTokenExpiresAt=e.tokenExpiresAt;}_isSkuTokenExpired(){return Date.now()>this._skuTokenExpiresAt}transformRequest(e,t){return this._transformRequestFn&&this._transformRequestFn(e,t)||{url:e}}normalizeStyleURL(e,t){if(!Pe(e))return e;const r=Be(e);return r.params.push(`sdk=js-${i}`),r.path=`/styles/v1${r.path}`,this._makeAPIURL(r,this._customAccessToken||t)}normalizeGlyphsURL(e,t){if(!Pe(e))return e;const i=Be(e);return i.path=`/fonts/v1${i.path}`,this._makeAPIURL(i,this._customAccessToken||t)}normalizeModelURL(e,t){if(!Pe(e))return e;const i=Be(e);return i.path=`/models/v1${i.path}`,this._makeAPIURL(i,this._customAccessToken||t)}normalizeSourceURL(e,t,i,r){if(!Pe(e))return e;const n=Be(e);return n.path=`/v4/${n.authority}.json`,n.params.push(\"secure\"),i&&n.params.push(`language=${i}`),r&&n.params.push(`worldview=${r}`),this._makeAPIURL(n,this._customAccessToken||t)}normalizeSpriteURL(e,t,i,r){const n=Be(e);return Pe(e)?(n.path=`/styles/v1${n.path}/sprite${t}${i}`,this._makeAPIURL(n,this._customAccessToken||r)):(n.path+=`${t}${i}`,Fe(n))}normalizeTileURL(e,t,i){if(this._isSkuTokenExpired()&&this._createSkuToken(),e&&!Pe(e))return e;const r=Be(e);r.path=r.path.replace(/(\\.(png|jpg)\\d*)(?=$)/,`${t||i&&\"raster\"!==r.authority&&512===i?\"@2x\":\"\"}${o.supported?\".webp\":\"$1\"}`),\"raster\"===r.authority?r.path=`/${n.RASTER_URL_PREFIX}${r.path}`:(r.path=r.path.replace(/^.+\\/v4\\//,\"/\"),r.path=`/${n.TILE_URL_VERSION}${r.path}`);const s=this._customAccessToken||function(e){for(const t of e){const e=t.match(/^access_token=(.*)$/);if(e)return e[1]}return null}(r.params)||n.ACCESS_TOKEN;return n.REQUIRE_ACCESS_TOKEN&&s&&this._skuToken&&r.params.push(`sku=${this._skuToken}`),this._makeAPIURL(r,s)}canonicalizeTileURL(e,t){const i=Be(e);if(!i.path.match(/^(\\/v4\\/|\\/raster\\/v1\\/)/)||!i.path.match(/\\.[\\w]+$/))return e;let r=\"mapbox://\";i.path.match(/^\\/raster\\/v1\\//)?r+=`raster/${i.path.replace(`/${n.RASTER_URL_PREFIX}/`,\"\")}`:r+=`tiles/${i.path.replace(`/${n.TILE_URL_VERSION}/`,\"\")}`;let o=i.params;return t&&(o=o.filter((e=>!e.match(/^access_token=/)))),o.length&&(r+=`?${o.join(\"&\")}`),r}canonicalizeTileset(e,t){const i=!!t&&Pe(t),r=[];for(const t of e.tiles||[])De(t)?r.push(this.canonicalizeTileURL(t,i)):r.push(t);return r}_makeAPIURL(e,t){const i=\"See https://docs.mapbox.com/api/overview/#access-tokens-and-token-scopes\",r=Be(n.API_URL);if(e.protocol=r.protocol,e.authority=r.authority,\"http\"===e.protocol){const t=e.params.indexOf(\"secure\");t>=0&&e.params.splice(t,1);}if(\"/\"!==r.path&&(e.path=`${r.path}${e.path}`),!n.REQUIRE_ACCESS_TOKEN)return Fe(e);if(t=t||n.ACCESS_TOKEN,!this._silenceAuthErrors){if(!t)throw new Error(`An API access token is required to use Mapbox GL. ${i}`);if(\"s\"===t[0])throw new Error(`Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). ${i}`)}return e.params=e.params.filter((e=>-1===e.indexOf(\"access_token\"))),e.params.push(`access_token=${t||\"\"}`),Fe(e)}}function Pe(e){return 0===e.indexOf(\"mapbox:\")}function De(e){return n.API_URL_REGEX.test(e)}function Re(e){return n.API_CDN_URL_REGEX.test(e)}function Le(e){return n.API_STYLE_REGEX.test(e)&&!ke(e)}function ke(e){return n.API_SPRITE_REGEX.test(e)}const Oe=/^(\\w+):\\/\\/([^/?]*)(\\/[^?]+)?\\??(.+)?/;function Be(e){const t=e.match(Oe);if(!t)throw new Error(\"Unable to parse URL object\");return {protocol:t[1],authority:t[2],path:t[3]||\"/\",params:t[4]?t[4].split(\"&\"):[]}}function Fe(e){const t=e.params.length?`?${e.params.join(\"&\")}`:\"\";return `${e.protocol}://${e.authority}${e.path}${t}`}const Ne=\"mapbox.eventData\";function Ue(e){if(!e)return null;const i=e.split(\".\");if(!i||3!==i.length)return null;try{return JSON.parse(decodeURIComponent(t.atob(i[1]).split(\"\").map((e=>\"%\"+(\"00\"+e.charCodeAt(0).toString(16)).slice(-2))).join(\"\")))}catch(e){return null}}class Ve{constructor(e){this.type=e,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null;}getStorageKey(e){const i=Ue(n.ACCESS_TOKEN);let r=\"\";return r=i&&i.u?t.btoa(encodeURIComponent(i.u).replace(/%([0-9A-F]{2})/g,((e,t)=>String.fromCharCode(Number(\"0x\"+t))))):n.ACCESS_TOKEN||\"\",e?`${Ne}.${e}:${r}`:`${Ne}:${r}`}fetchEventData(){const e=re(\"localStorage\"),i=this.getStorageKey(),r=this.getStorageKey(\"uuid\");if(e)try{const e=t.localStorage.getItem(i);e&&(this.eventData=JSON.parse(e));const n=t.localStorage.getItem(r);n&&(this.anonId=n);}catch(e){H(\"Unable to read from LocalStorage\");}}saveEventData(){const e=re(\"localStorage\"),i=this.getStorageKey(),r=this.getStorageKey(\"uuid\");if(e)try{t.localStorage.setItem(r,this.anonId),Object.keys(this.eventData).length>=1&&t.localStorage.setItem(i,JSON.stringify(this.eventData));}catch(e){H(\"Unable to write to LocalStorage\");}}processRequests(e){}postEvent(e,t,i,r){if(!n.EVENTS_URL)return;const o=Be(n.EVENTS_URL);o.params.push(`access_token=${r||n.ACCESS_TOKEN||\"\"}`);const s={event:this.type,created:new Date(e).toISOString()},a=t?k(s,t):s,l={url:Fe(o),headers:{\"Content-Type\":\"text/plain\"},body:JSON.stringify([a])};this.pendingRequest=function(e,t){return be(k(e,{method:\"POST\"}),t)}(l,(e=>{this.pendingRequest=null,i(e),this.saveEventData(),this.processRequests(r);}));}queueRequest(e,t){this.queue.push(e),this.processRequests(t);}}const je=new class extends Ve{constructor(e){super(\"appUserTurnstile\"),this._customAccessToken=e;}postTurnstileEvent(e,t){n.EVENTS_URL&&n.ACCESS_TOKEN&&Array.isArray(e)&&e.some((e=>Pe(e)||De(e)))&&this.queueRequest(Date.now(),t);}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();const t=Ue(n.ACCESS_TOKEN),r=t?t.u:n.ACCESS_TOKEN;let o=r!==this.eventData.tokenU;V(this.anonId)||(this.anonId=N(),o=!0);const s=this.queue.shift();if(this.eventData.lastSuccess){const e=new Date(this.eventData.lastSuccess),t=new Date(s),i=(s-this.eventData.lastSuccess)/864e5;o=o||i>=1||i<-1||e.getDate()!==t.getDate();}else o=!0;o?this.postEvent(s,{sdkIdentifier:\"mapbox-gl-js\",sdkVersion:i,skuId:u,\"enabled.telemetry\":!1,userId:this.anonId},(e=>{e||(this.eventData.lastSuccess=s,this.eventData.tokenU=r);}),e):this.processRequests();}},Ge=je.postTurnstileEvent.bind(je),qe=new class extends Ve{constructor(){super(\"map.load\"),this.success={},this.skuToken=\"\";}postMapLoadEvent(e,t,i,r){this.skuToken=t,this.errorCb=r,n.EVENTS_URL&&(i||n.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},i):this.errorCb(new Error(Ce)));}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:r}=this.queue.shift();t&&this.success[t]||(this.anonId||this.fetchEventData(),V(this.anonId)||(this.anonId=N()),this.postEvent(r,{sdkIdentifier:\"mapbox-gl-js\",sdkVersion:i,skuId:u,skuToken:this.skuToken,userId:this.anonId},(e=>{e?this.errorCb(e):t&&(this.success[t]=!0);}),e));}},Ze=qe.postMapLoadEvent.bind(qe),$e=new class extends Ve{constructor(){super(\"gljs.performance\");}postPerformanceEvent(e,t){n.EVENTS_URL&&(e||n.ACCESS_TOKEN)&&this.queueRequest({timestamp:Date.now(),performanceData:t},e);}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{timestamp:r,performanceData:n}=this.queue.shift(),o=function(e){const r=t.performance.getEntriesByType(\"resource\"),n=t.performance.getEntriesByType(\"mark\"),o=function(e){const t={};if(e)for(const i in e)if(\"other\"!==i)for(const r of e[i]){const e=`${i}ResolveRangeMin`,n=`${i}ResolveRangeMax`,o=`${i}RequestCount`,s=`${i}RequestCachedCount`;t[e]=Math.min(t[e]||1/0,r.startTime),t[n]=Math.max(t[n]||-1/0,r.responseEnd);const a=e=>{void 0===t[e]&&(t[e]=0),++t[e];};void 0!==r.transferSize&&0===r.transferSize&&a(s),a(o);}return t}(function(e,t){const i={};if(e)for(const r of e){const e=t(r);void 0===i[e]&&(i[e]=[]),i[e].push(r);}return i}(r,et)),s=t.devicePixelRatio,a=t.navigator.connection||t.navigator.mozConnection||t.navigator.webkitConnection,l={counters:[],metadata:[],attributes:[]},c=(e,t,i)=>{null!=i&&e.push({name:t,value:i.toString()});};for(const e in o)c(l.counters,e,o[e]);if(e.interactionRange[0]!==1/0&&e.interactionRange[1]!==-1/0&&(c(l.counters,\"interactionRangeMin\",e.interactionRange[0]),c(l.counters,\"interactionRangeMax\",e.interactionRange[1])),n)for(const e of Object.keys(Je)){const t=Je[e],i=n.find((e=>e.name===t));i&&c(l.counters,t,i.startTime);}return c(l.counters,\"visibilityHidden\",e.visibilityHidden),c(l.attributes,\"style\",function(e){if(e)for(const t of e){const e=t.name.split(\"?\")[0];if(Le(e)){const t=e.split(\"/\").slice(-2);if(2===t.length)return `mapbox://styles/${t[0]}/${t[1]}`}}}(r)),c(l.attributes,\"terrainEnabled\",e.terrainEnabled?\"true\":\"false\"),c(l.attributes,\"fogEnabled\",e.fogEnabled?\"true\":\"false\"),c(l.attributes,\"projection\",e.projection),c(l.attributes,\"zoom\",e.zoom),c(l.metadata,\"devicePixelRatio\",s),c(l.metadata,\"connectionEffectiveType\",a?a.effectiveType:void 0),c(l.metadata,\"navigatorUserAgent\",t.navigator.userAgent),c(l.metadata,\"screenWidth\",t.screen.width),c(l.metadata,\"screenHeight\",t.screen.height),c(l.metadata,\"windowWidth\",t.innerWidth),c(l.metadata,\"windowHeight\",t.innerHeight),c(l.metadata,\"mapWidth\",e.width/s),c(l.metadata,\"mapHeight\",e.height/s),c(l.metadata,\"webglRenderer\",e.renderer),c(l.metadata,\"webglVendor\",e.vendor),c(l.metadata,\"sdkVersion\",i),c(l.metadata,\"sdkIdentifier\",\"mapbox-gl-js\"),l}(n);for(const e of o.metadata);for(const e of o.counters);for(const e of o.attributes);this.postEvent(r,o,(()=>{}),e);}},We=$e.postPerformanceEvent.bind($e),He=new class extends Ve{constructor(){super(\"map.auth\"),this.success={},this.skuToken=\"\";}getSession(e,t,i,r){if(!n.API_URL||!n.SESSION_PATH)return;const o=Be(n.API_URL+n.SESSION_PATH);o.params.push(`sku=${t||\"\"}`),o.params.push(`access_token=${r||n.ACCESS_TOKEN||\"\"}`);const s={url:Fe(o),headers:{\"Content-Type\":\"text/plain\"}};this.pendingRequest=function(e,t){return be(k(e,{method:\"GET\"}),t)}(s,(e=>{this.pendingRequest=null,i(e),this.saveEventData(),this.processRequests(r);}));}getSessionAPI(e,t,i,r){this.skuToken=t,this.errorCb=r,n.SESSION_PATH&&n.API_URL&&(i||n.ACCESS_TOKEN?this.queueRequest({id:e,timestamp:Date.now()},i):this.errorCb(new Error(Ce)));}processRequests(e){if(this.pendingRequest||0===this.queue.length)return;const{id:t,timestamp:i}=this.queue.shift();t&&this.success[t]||this.getSession(i,this.skuToken,(e=>{e?this.errorCb(e):t&&(this.success[t]=!0);}),e);}},Xe=He.getSessionAPI.bind(He),Ye=new Set;function Ke(e,t){t?Ye.add(e):Ye.delete(e);}const Je={create:\"create\",load:\"load\",fullLoad:\"fullLoad\"},Qe={mark(e){t.performance.mark(e);},measure(e,i,r){t.performance.measure(e,i,r);}};function et(e){const t=e.name.split(\"?\")[0];return Re(t)&&t.includes(\"mapbox-gl.js\")?\"javascript\":Re(t)&&t.includes(\"mapbox-gl.css\")?\"css\":function(e){return n.API_FONTS_REGEX.test(e)}(t)?\"fontRange\":ke(t)?\"sprite\":Le(t)?\"style\":function(e){return n.API_TILEJSON_REGEX.test(e)}(t)?\"tilejson\":\"other\"}const tt=t.performance;function it(e){const t=e?e.url.toString():void 0;return tt.getEntriesByName(t)}var rt=nt;function nt(e){return !function(e){return \"undefined\"==typeof window||\"undefined\"==typeof document?\"not a browser\":Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?\"JSON\"in window&&\"parse\"in JSON&&\"stringify\"in JSON?function(){if(!(\"Worker\"in window&&\"Blob\"in window&&\"URL\"in window))return !1;var e,t,i=new Blob([\"\"],{type:\"text/javascript\"}),r=URL.createObjectURL(i);try{t=new Worker(r),e=!0;}catch(t){e=!1;}return t&&t.terminate(),URL.revokeObjectURL(r),e}()?\"Uint8ClampedArray\"in window?ArrayBuffer.isView?function(){var e=document.createElement(\"canvas\");e.width=e.height=1;var t=e.getContext(\"2d\");if(!t)return !1;var i=t.getImageData(0,0,1,1);return i&&i.width===e.width}()?(void 0===ot[t=e&&e.failIfMajorPerformanceCaveat]&&(ot[t]=function(e){var t,i=function(e){var t=document.createElement(\"canvas\"),i=Object.create(nt.webGLContextAttributes);return i.failIfMajorPerformanceCaveat=e,t.getContext(\"webgl\",i)||t.getContext(\"experimental-webgl\",i)}(e);if(!i)return !1;try{t=i.createShader(i.VERTEX_SHADER);}catch(e){return !1}return !(!t||i.isContextLost())&&(i.shaderSource(t,\"void main() {}\"),i.compileShader(t),!0===i.getShaderParameter(t,i.COMPILE_STATUS))}(t)),ot[t]?document.documentMode?\"insufficient ECMAScript 6 support\":void 0:\"insufficient WebGL support\"):\"insufficient Canvas/getImageData support\":\"insufficient ArrayBuffer support\":\"insufficient Uint8ClampedArray support\":\"insufficient worker support\":\"insufficient JSON support\":\"insufficient Object support\":\"insufficient Function support\":\"insufficent Array support\";var t;}(e)}var ot={};let st,at,lt,ct,ht;function ut(){return null==st&&(st=t.OffscreenCanvas&&new t.OffscreenCanvas(1,1).getContext(\"2d\")&&\"function\"==typeof t.createImageBitmap),st}nt.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};const dt={now:()=>void 0!==ct?ct:t.performance.now(),setNow(e){ct=e;},restoreNow(){ct=void 0;},frame(e){const i=t.requestAnimationFrame(e);return {cancel:()=>t.cancelAnimationFrame(i)}},getImageData(e,i=0){const{width:r,height:n}=e;ht||(ht=t.document.createElement(\"canvas\"));const o=ht.getContext(\"2d\",{willReadFrequently:!0});if(!o)throw new Error(\"failed to create canvas 2d context\");return (r>ht.width||n>ht.height)&&(ht.width=r,ht.height=n),o.clearRect(-i,-i,r+2*i,n+2*i),o.drawImage(e,0,0,r,n),o.getImageData(-i,-i,r+2*i,n+2*i)},resolveURL:e=>(at||(at=t.document.createElement(\"a\")),at.href=e,at.href),get devicePixelRatio(){return t.devicePixelRatio},get prefersReducedMotion(){return !!t.matchMedia&&(null==lt&&(lt=t.matchMedia(\"(prefers-reduced-motion: reduce)\")),lt.matches)},hasCanvasFingerprintNoise(){if(!ut())return !1;const e=new t.OffscreenCanvas(85,1),i=e.getContext(\"2d\",{willReadFrequently:!0});let r=0;for(let t=0;t{t.removeEventListener(\"click\",vt,!0);}),0);}function wt(e,t){const i=e.getBoundingClientRect();return Mt(e,i,t)}function Tt(e,t){const i=e.getBoundingClientRect(),r=[];for(let n=0;n=0?0:e.button}function Mt(e,t,i){const r=e.offsetWidth===t.width?1:e.offsetWidth/t.width;return new y((i.clientX-t.left)*r,(i.clientY-t.top)*r)}function At(e,t,i){i[e]&&-1!==i[e].indexOf(t)||(i[e]=i[e]||[],i[e].push(t));}function St(e,t,i){if(i&&i[e]){const r=i[e].indexOf(t);-1!==r&&i[e].splice(r,1);}}class It{constructor(e,t={}){k(this,t),this.type=e;}}class Ct extends It{constructor(e,t={}){super(\"error\",k({error:e},t));}}class zt{on(e,t){return this._listeners=this._listeners||{},At(e,t,this._listeners),this}off(e,t){return St(e,t,this._listeners),St(e,t,this._oneTimeListeners),this}once(e,t){return t?(this._oneTimeListeners=this._oneTimeListeners||{},At(e,t,this._oneTimeListeners),this):new Promise((t=>this.once(e,t)))}fire(e,t){\"string\"==typeof e&&(e=new It(e,t||{}));const i=e.type;if(this.listens(i)){e.target=this;const t=this._listeners&&this._listeners[i]?this._listeners[i].slice():[];for(const i of t)i.call(this,e);const r=this._oneTimeListeners&&this._oneTimeListeners[i]?this._oneTimeListeners[i].slice():[];for(const t of r)St(i,t,this._oneTimeListeners),t.call(this,e);const n=this._eventedParent;n&&(k(e,\"function\"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),n.fire(e));}else e instanceof Ct&&console.error(e.error);return this}listens(e){return !!(this._listeners&&this._listeners[e]&&this._listeners[e].length>0||this._oneTimeListeners&&this._oneTimeListeners[e]&&this._oneTimeListeners[e].length>0||this._eventedParent&&this._eventedParent.listens(e))}setEventedParent(e,t){return this._eventedParent=e,this._eventedParentData=t,this}}var Pt=JSON.parse('{\"$version\":8,\"$root\":{\"version\":{\"required\":true,\"type\":\"enum\",\"values\":[8]},\"fragment\":{\"type\":\"boolean\"},\"name\":{\"type\":\"string\"},\"metadata\":{\"type\":\"*\"},\"center\":{\"type\":\"array\",\"value\":\"number\"},\"zoom\":{\"type\":\"number\"},\"bearing\":{\"type\":\"number\",\"default\":0,\"period\":360},\"pitch\":{\"type\":\"number\",\"default\":0},\"light\":{\"type\":\"light\"},\"lights\":{\"required\":false,\"type\":\"array\",\"value\":\"light-3d\"},\"terrain\":{\"type\":\"terrain\",\"optional\":true},\"fog\":{\"type\":\"fog\"},\"camera\":{\"type\":\"camera\"},\"imports\":{\"type\":\"array\",\"value\":\"import\"},\"schema\":{\"type\":\"schema\"},\"sources\":{\"required\":true,\"type\":\"sources\"},\"sprite\":{\"type\":\"string\"},\"glyphs\":{\"type\":\"string\",\"default\":\"mapbox://fonts/mapbox/{fontstack}/{range}.pbf\"},\"transition\":{\"type\":\"transition\"},\"projection\":{\"type\":\"projection\"},\"layers\":{\"required\":true,\"type\":\"array\",\"value\":\"layer\"},\"models\":{\"type\":\"models\"}},\"model\":{\"type\":\"string\",\"required\":true},\"import\":{\"id\":{\"type\":\"string\",\"required\":true},\"url\":{\"type\":\"string\",\"required\":true},\"config\":{\"type\":\"config\"},\"data\":{\"type\":\"$root\"}},\"config\":{\"*\":{\"type\":\"*\"}},\"schema\":{\"*\":{\"type\":\"option\"}},\"option\":{\"default\":{\"type\":\"*\",\"required\":true},\"type\":{\"type\":\"enum\",\"values\":{\"string\":1,\"number\":1,\"boolean\":1,\"color\":1}},\"array\":{\"type\":\"boolean\"},\"minValue\":{\"type\":\"number\"},\"maxValue\":{\"type\":\"number\"},\"stepValue\":{\"type\":\"number\"},\"values\":{\"type\":\"array\",\"value\":\"*\"},\"metadata\":{\"type\":\"*\"}},\"models\":{\"*\":{\"type\":\"model\"}},\"light-3d\":{\"id\":{\"type\":\"string\",\"required\":true},\"properties\":{\"type\":\"properties\"},\"type\":{\"type\":\"enum\",\"values\":{\"ambient\":{},\"directional\":{},\"flat\":{}}}},\"properties\":[\"properties_light_directional\",\"properties_light_ambient\",\"properties_light_flat\"],\"properties_light_directional\":{\"direction\":{\"type\":\"array\",\"default\":[210,30],\"minimum\":[0,0],\"maximum\":[360,90],\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#ffffff\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"cast-shadows\":{\"type\":\"boolean\",\"default\":false,\"expression\":{},\"property-type\":\"data-constant\"},\"shadow-intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":1,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true}},\"properties_light_ambient\":{\"color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#ffffff\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true}},\"properties_light_flat\":{\"anchor\":{\"type\":\"enum\",\"default\":\"viewport\",\"values\":{\"map\":1,\"viewport\":1},\"property-type\":\"data-constant\",\"expression\":{\"parameters\":[\"zoom\"]}},\"position\":{\"type\":\"array\",\"default\":[1.15,210,30],\"length\":3,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#ffffff\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true}},\"sources\":{\"*\":{\"type\":\"source\"}},\"source\":[\"source_vector\",\"source_raster\",\"source_raster_dem\",\"source_raster_array\",\"source_geojson\",\"source_video\",\"source_image\",\"source_model\"],\"source_vector\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"vector\":1}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.051129,180,85.051129]},\"scheme\":{\"type\":\"enum\",\"values\":{\"xyz\":1,\"tms\":1},\"default\":\"xyz\"},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"attribution\":{\"type\":\"string\"},\"promoteId\":{\"type\":\"promoteId\"},\"volatile\":{\"type\":\"boolean\",\"default\":false},\"*\":{\"type\":\"*\"}},\"source_raster\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"raster\":1}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.051129,180,85.051129]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512},\"scheme\":{\"type\":\"enum\",\"values\":{\"xyz\":1,\"tms\":1},\"default\":\"xyz\"},\"attribution\":{\"type\":\"string\"},\"volatile\":{\"type\":\"boolean\",\"default\":false},\"*\":{\"type\":\"*\"}},\"source_raster_dem\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"raster-dem\":1}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.051129,180,85.051129]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512},\"attribution\":{\"type\":\"string\"},\"encoding\":{\"type\":\"enum\",\"values\":{\"terrarium\":1,\"mapbox\":1},\"default\":\"mapbox\"},\"volatile\":{\"type\":\"boolean\",\"default\":false},\"*\":{\"type\":\"*\"}},\"source_raster_array\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"raster-array\":1}},\"url\":{\"type\":\"string\"},\"tiles\":{\"type\":\"array\",\"value\":\"string\"},\"bounds\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[-180,-85.051129,180,85.051129]},\"minzoom\":{\"type\":\"number\",\"default\":0},\"maxzoom\":{\"type\":\"number\",\"default\":22},\"tileSize\":{\"type\":\"number\",\"default\":512},\"attribution\":{\"type\":\"string\"},\"rasterLayers\":{\"type\":\"*\"},\"*\":{\"type\":\"*\"}},\"source_geojson\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"geojson\":1}},\"data\":{\"type\":\"*\"},\"maxzoom\":{\"type\":\"number\",\"default\":18},\"attribution\":{\"type\":\"string\"},\"buffer\":{\"type\":\"number\",\"default\":128,\"maximum\":512,\"minimum\":0},\"filter\":{\"type\":\"*\"},\"tolerance\":{\"type\":\"number\",\"default\":0.375},\"cluster\":{\"type\":\"boolean\",\"default\":false},\"clusterRadius\":{\"type\":\"number\",\"default\":50,\"minimum\":0},\"clusterMaxZoom\":{\"type\":\"number\"},\"clusterMinPoints\":{\"type\":\"number\"},\"clusterProperties\":{\"type\":\"*\"},\"lineMetrics\":{\"type\":\"boolean\",\"default\":false},\"generateId\":{\"type\":\"boolean\",\"default\":false},\"promoteId\":{\"type\":\"promoteId\"}},\"source_video\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"video\":1}},\"urls\":{\"required\":true,\"type\":\"array\",\"value\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_image\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"image\":1}},\"url\":{\"required\":false,\"type\":\"string\"},\"coordinates\":{\"required\":true,\"type\":\"array\",\"length\":4,\"value\":{\"type\":\"array\",\"length\":2,\"value\":\"number\"}}},\"source_model\":{\"type\":{\"required\":true,\"type\":\"enum\",\"values\":{\"model\":1,\"batched-model\":1}},\"maxzoom\":{\"type\":\"number\",\"default\":18},\"minzoom\":{\"type\":\"number\",\"default\":0},\"tiles\":{\"type\":\"array\",\"value\":\"string\"}},\"layer\":{\"id\":{\"type\":\"string\",\"required\":true},\"type\":{\"type\":\"enum\",\"values\":{\"fill\":{},\"line\":{},\"symbol\":{},\"circle\":{},\"heatmap\":{},\"fill-extrusion\":{},\"raster\":{},\"hillshade\":{},\"model\":{},\"background\":{},\"sky\":{},\"slot\":{}},\"required\":true},\"metadata\":{\"type\":\"*\"},\"source\":{\"type\":\"string\"},\"source-layer\":{\"type\":\"string\"},\"slot\":{\"type\":\"string\"},\"minzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"maxzoom\":{\"type\":\"number\",\"minimum\":0,\"maximum\":24},\"filter\":{\"type\":\"filter\"},\"layout\":{\"type\":\"layout\"},\"paint\":{\"type\":\"paint\"}},\"layout\":[\"layout_fill\",\"layout_line\",\"layout_circle\",\"layout_heatmap\",\"layout_fill-extrusion\",\"layout_symbol\",\"layout_raster\",\"layout_hillshade\",\"layout_background\",\"layout_sky\",\"layout_model\"],\"layout_background\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_sky\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_model\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"},\"model-id\":{\"type\":\"string\",\"default\":\"\",\"property-type\":\"data-driven\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]}}},\"layout_fill\":{\"fill-sort-key\":{\"type\":\"number\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_circle\":{\"circle-sort-key\":{\"type\":\"number\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_heatmap\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_fill-extrusion\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"},\"fill-extrusion-edge-radius\":{\"type\":\"number\",\"private\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"expression\":{},\"property-type\":\"constant\"}},\"layout_line\":{\"line-cap\":{\"type\":\"enum\",\"values\":{\"butt\":1,\"round\":1,\"square\":1},\"default\":\"butt\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-join\":{\"type\":\"enum\",\"values\":{\"bevel\":1,\"round\":1,\"miter\":1},\"default\":\"miter\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-miter-limit\":{\"type\":\"number\",\"default\":2,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-round-limit\":{\"type\":\"number\",\"default\":1.05,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-sort-key\":{\"type\":\"number\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_symbol\":{\"symbol-placement\":{\"type\":\"enum\",\"values\":{\"point\":1,\"line\":1,\"line-center\":1},\"default\":\"point\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-spacing\":{\"type\":\"number\",\"default\":250,\"minimum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-avoid-edges\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-sort-key\":{\"type\":\"number\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"symbol-z-order\":{\"type\":\"enum\",\"values\":{\"auto\":1,\"viewport-y\":1,\"source\":1},\"default\":\"auto\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"symbol-z-elevate\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-allow-overlap\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-ignore-placement\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-optional\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-rotation-alignment\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1,\"auto\":1},\"default\":\"auto\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-size\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-text-fit\":{\"type\":\"enum\",\"values\":{\"none\":1,\"width\":1,\"height\":1,\"both\":1},\"default\":\"none\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-text-fit-padding\":{\"type\":\"array\",\"value\":\"number\",\"length\":4,\"default\":[0,0,0,0],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-image\":{\"type\":\"resolvedImage\",\"tokens\":true,\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-keep-upright\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-anchor\":{\"type\":\"enum\",\"values\":{\"center\":1,\"left\":1,\"right\":1,\"top\":1,\"bottom\":1,\"top-left\":1,\"top-right\":1,\"bottom-left\":1,\"bottom-right\":1},\"default\":\"center\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"icon-pitch-alignment\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1,\"auto\":1},\"default\":\"auto\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-pitch-alignment\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1,\"auto\":1},\"default\":\"auto\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotation-alignment\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1,\"auto\":1},\"default\":\"auto\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-field\":{\"type\":\"formatted\",\"default\":\"\",\"tokens\":true,\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-font\":{\"type\":\"array\",\"value\":\"string\",\"default\":[\"Open Sans Regular\",\"Arial Unicode MS Regular\"],\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-size\":{\"type\":\"number\",\"default\":16,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-width\":{\"type\":\"number\",\"default\":10,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-line-height\":{\"type\":\"number\",\"default\":1.2,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-letter-spacing\":{\"type\":\"number\",\"default\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-justify\":{\"type\":\"enum\",\"values\":{\"auto\":1,\"left\":1,\"center\":1,\"right\":1},\"default\":\"center\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-radial-offset\":{\"type\":\"number\",\"default\":0,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]}},\"text-variable-anchor\":{\"type\":\"array\",\"value\":\"enum\",\"values\":{\"center\":1,\"left\":1,\"right\":1,\"top\":1,\"bottom\":1,\"top-left\":1,\"top-right\":1,\"bottom-left\":1,\"bottom-right\":1},\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-anchor\":{\"type\":\"enum\",\"values\":{\"center\":1,\"left\":1,\"right\":1,\"top\":1,\"bottom\":1,\"top-left\":1,\"top-right\":1,\"bottom-left\":1,\"bottom-right\":1},\"default\":\"center\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-max-angle\":{\"type\":\"number\",\"default\":45,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-writing-mode\":{\"type\":\"array\",\"value\":\"enum\",\"values\":{\"horizontal\":1,\"vertical\":1},\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-padding\":{\"type\":\"number\",\"default\":2,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-keep-upright\":{\"type\":\"boolean\",\"default\":true,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-transform\":{\"type\":\"enum\",\"values\":{\"none\":1,\"uppercase\":1,\"lowercase\":1},\"default\":\"none\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"text-allow-overlap\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-ignore-placement\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-optional\":{\"type\":\"boolean\",\"default\":false,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_raster\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"layout_hillshade\":{\"visibility\":{\"type\":\"enum\",\"values\":{\"visible\":1,\"none\":1},\"default\":\"visible\",\"expression\":{},\"property-type\":\"constant\"}},\"filter\":{\"type\":\"array\",\"value\":\"*\"},\"filter_symbol\":{\"type\":\"boolean\",\"default\":false,\"property-type\":\"data-driven\",\"expression\":{\"parameters\":[\"zoom\",\"feature\",\"pitch\",\"distance-from-center\"]}},\"filter_fill\":{\"type\":\"boolean\",\"default\":false,\"property-type\":\"data-driven\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]}},\"filter_line\":{\"type\":\"boolean\",\"default\":false,\"property-type\":\"data-driven\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]}},\"filter_circle\":{\"type\":\"boolean\",\"default\":false,\"property-type\":\"data-driven\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]}},\"filter_fill-extrusion\":{\"type\":\"boolean\",\"default\":false,\"property-type\":\"data-driven\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]}},\"filter_heatmap\":{\"type\":\"boolean\",\"default\":false,\"property-type\":\"data-driven\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]}},\"filter_operator\":{\"type\":\"enum\",\"values\":{\"==\":1,\"!=\":1,\">\":1,\">=\":1,\"<\":1,\"<=\":1,\"in\":1,\"!in\":1,\"all\":1,\"any\":1,\"none\":1,\"has\":1,\"!has\":1}},\"geometry_type\":{\"type\":\"enum\",\"values\":{\"Point\":1,\"LineString\":1,\"Polygon\":1}},\"function\":{\"expression\":{\"type\":\"expression\"},\"stops\":{\"type\":\"array\",\"value\":\"function_stop\"},\"base\":{\"type\":\"number\",\"default\":1,\"minimum\":0},\"property\":{\"type\":\"string\",\"default\":\"$zoom\"},\"type\":{\"type\":\"enum\",\"values\":{\"identity\":1,\"exponential\":1,\"interval\":1,\"categorical\":1},\"default\":\"exponential\"},\"colorSpace\":{\"type\":\"enum\",\"values\":{\"rgb\":1,\"lab\":1,\"hcl\":1},\"default\":\"rgb\"},\"default\":{\"type\":\"*\",\"required\":false}},\"function_stop\":{\"type\":\"array\",\"minimum\":0,\"maximum\":24,\"value\":[\"number\",\"color\"],\"length\":2},\"expression\":{\"type\":\"array\",\"value\":\"*\",\"minimum\":1},\"fog\":{\"range\":{\"type\":\"array\",\"default\":[0.5,10],\"minimum\":-20,\"maximum\":20,\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"],\"relaxZoomRestriction\":true}},\"color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#ffffff\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"],\"relaxZoomRestriction\":true},\"transition\":true},\"high-color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#245cdf\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"],\"relaxZoomRestriction\":true},\"transition\":true},\"space-color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":[\"interpolate\",[\"linear\"],[\"zoom\"],4,\"#010b19\",7,\"#367ab9\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"],\"relaxZoomRestriction\":true},\"transition\":true},\"horizon-blend\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":[\"interpolate\",[\"linear\"],[\"zoom\"],4,0.2,7,0.1],\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"],\"relaxZoomRestriction\":true},\"transition\":true},\"star-intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":[\"interpolate\",[\"linear\"],[\"zoom\"],5,0.35,6,0],\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"],\"relaxZoomRestriction\":true},\"transition\":true},\"vertical-range\":{\"type\":\"array\",\"default\":[0,0],\"minimum\":0,\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"],\"relaxZoomRestriction\":true}}},\"camera\":{\"camera-projection\":{\"type\":\"enum\",\"values\":{\"perspective\":1,\"orthographic\":1},\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"default\":\"perspective\",\"property-type\":\"data-constant\"}},\"light\":{\"anchor\":{\"type\":\"enum\",\"default\":\"viewport\",\"values\":{\"map\":1,\"viewport\":1},\"property-type\":\"data-constant\",\"expression\":{\"parameters\":[\"zoom\"]}},\"position\":{\"type\":\"array\",\"default\":[1.15,210,30],\"length\":3,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"color\":{\"type\":\"color\",\"property-type\":\"data-constant\",\"default\":\"#ffffff\",\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"intensity\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true}},\"projection\":{\"name\":{\"type\":\"enum\",\"values\":{\"albers\":1,\"equalEarth\":1,\"equirectangular\":1,\"lambertConformalConic\":1,\"mercator\":1,\"naturalEarth\":1,\"winkelTripel\":1,\"globe\":1},\"default\":\"mercator\",\"required\":true},\"center\":{\"type\":\"array\",\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"minimum\":[-180,-90],\"maximum\":[180,90]},\"parallels\":{\"type\":\"array\",\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"minimum\":[-90,-90],\"maximum\":[90,90]}},\"terrain\":{\"source\":{\"type\":\"string\",\"required\":true},\"exaggeration\":{\"type\":\"number\",\"property-type\":\"data-constant\",\"default\":1,\"minimum\":0,\"maximum\":1000,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true}},\"paint\":[\"paint_fill\",\"paint_line\",\"paint_circle\",\"paint_heatmap\",\"paint_fill-extrusion\",\"paint_symbol\",\"paint_raster\",\"paint_hillshade\",\"paint_background\",\"paint_sky\",\"paint_model\"],\"paint_fill\":{\"fill-antialias\":{\"type\":\"boolean\",\"default\":true,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"fill-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"fill-outline-color\":{\"type\":\"color\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"fill-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"map\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-pattern\":{\"type\":\"resolvedImage\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"fill-emissive-strength\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"}},\"paint_fill-extrusion\":{\"fill-extrusion-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"map\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-pattern\":{\"type\":\"resolvedImage\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-height\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-base\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"fill-extrusion-vertical-gradient\":{\"type\":\"boolean\",\"default\":true,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"fill-extrusion-ambient-occlusion-intensity\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"private\":true,\"default\":0,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"fill-extrusion-ambient-occlusion-radius\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"private\":true,\"default\":3,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"fill-extrusion-ambient-occlusion-wall-radius\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"default\":3,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"fill-extrusion-ambient-occlusion-ground-radius\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"default\":3,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"transition\":true},\"fill-extrusion-ambient-occlusion-ground-attenuation\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"default\":0.69,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"fill-extrusion-flood-light-color\":{\"property-type\":\"data-constant\",\"type\":\"color\",\"default\":\"#ffffff\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]}},\"fill-extrusion-flood-light-intensity\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"default\":0,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]}},\"fill-extrusion-flood-light-wall-radius\":{\"property-type\":\"data-driven\",\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\"]}},\"fill-extrusion-flood-light-ground-radius\":{\"property-type\":\"data-driven\",\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\"]}},\"fill-extrusion-flood-light-ground-attenuation\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"default\":0.69,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"fill-extrusion-vertical-scale\":{\"property-type\":\"data-constant\",\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"fill-extrusion-rounded-roof\":{\"property-type\":\"data-constant\",\"type\":\"boolean\",\"default\":true,\"expression\":{\"parameters\":[\"zoom\"]}},\"fill-extrusion-cutoff-fade-range\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"maximum\":1,\"expression\":{},\"property-type\":\"data-constant\"},\"fill-extrusion-emissive-strength\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"}},\"paint_line\":{\"line-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"line-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"line-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"map\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"line-width\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"line-gap-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"line-offset\":{\"type\":\"number\",\"default\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"line-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"line-dasharray\":{\"type\":\"array\",\"value\":\"number\",\"minimum\":0,\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-pattern\":{\"type\":\"resolvedImage\",\"expression\":{\"parameters\":[\"zoom\",\"feature\"]},\"property-type\":\"data-driven\"},\"line-gradient\":{\"type\":\"color\",\"expression\":{\"interpolated\":true,\"parameters\":[\"line-progress\"]},\"property-type\":\"color-ramp\"},\"line-trim-offset\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"minimum\":[0,0],\"maximum\":[1,1],\"property-type\":\"constant\"},\"line-emissive-strength\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"},\"line-border-width\":{\"type\":\"number\",\"private\":true,\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"},\"line-border-color\":{\"type\":\"color\",\"private\":true,\"default\":\"rgba(0, 0, 0, 0)\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\"]},\"property-type\":\"data-driven\"}},\"paint_circle\":{\"circle-radius\":{\"type\":\"number\",\"default\":5,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"circle-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"circle-blur\":{\"type\":\"number\",\"default\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"circle-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"circle-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"map\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-scale\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"map\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-pitch-alignment\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"viewport\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"circle-stroke-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"circle-stroke-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"circle-stroke-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"circle-emissive-strength\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"}},\"paint_heatmap\":{\"heatmap-radius\":{\"type\":\"number\",\"default\":30,\"minimum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"heatmap-weight\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"heatmap-intensity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"heatmap-color\":{\"type\":\"color\",\"default\":[\"interpolate\",[\"linear\"],[\"heatmap-density\"],0,\"rgba(0, 0, 255, 0)\",0.1,\"royalblue\",0.3,\"cyan\",0.5,\"lime\",0.7,\"yellow\",1,\"red\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"heatmap-density\"]},\"property-type\":\"color-ramp\"},\"heatmap-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_symbol\":{\"icon-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"icon-emissive-strength\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"text-emissive-strength\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"icon-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"icon-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"icon-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"icon-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"icon-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"map\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-image-cross-fade\":{\"type\":\"number\",\"property-type\":\"data-driven\",\"default\":0,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"transition\":true},\"text-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"text-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"overridable\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"text-halo-color\":{\"type\":\"color\",\"default\":\"rgba(0, 0, 0, 0)\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"text-halo-width\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"text-halo-blur\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"feature\",\"feature-state\",\"measure-light\"]},\"property-type\":\"data-driven\"},\"text-translate\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"default\":[0,0],\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"text-translate-anchor\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"map\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"icon-color-saturation\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{},\"property-type\":\"data-constant\"}},\"paint_raster\":{\"raster-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-color\":{\"type\":\"color\",\"expression\":{\"interpolated\":true,\"parameters\":[\"raster-value\"]},\"property-type\":\"color-ramp\"},\"raster-color-mix\":{\"type\":\"array\",\"default\":[0.2126,0.7152,0.0722,0],\"length\":4,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"raster-color-range\":{\"type\":\"array\",\"default\":[0,1],\"length\":2,\"value\":\"number\",\"property-type\":\"data-constant\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]}},\"raster-hue-rotate\":{\"type\":\"number\",\"default\":0,\"period\":360,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-min\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-brightness-max\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-saturation\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-contrast\":{\"type\":\"number\",\"default\":0,\"minimum\":-1,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-resampling\":{\"type\":\"enum\",\"values\":{\"linear\":1,\"nearest\":1},\"default\":\"linear\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-fade-duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"raster-emissive-strength\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"},\"raster-array-band\":{\"type\":\"string\",\"required\":false,\"property-type\":\"data-constant\"},\"raster-elevation\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_hillshade\":{\"hillshade-illumination-direction\":{\"type\":\"number\",\"default\":335,\"minimum\":0,\"maximum\":359,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-illumination-anchor\":{\"type\":\"enum\",\"values\":{\"map\":1,\"viewport\":1},\"default\":\"viewport\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-exaggeration\":{\"type\":\"number\",\"default\":0.5,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"hillshade-shadow-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"},\"hillshade-highlight-color\":{\"type\":\"color\",\"default\":\"#FFFFFF\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"},\"hillshade-accent-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"},\"hillshade-emissive-strength\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"}},\"paint_background\":{\"background-color\":{\"type\":\"color\",\"default\":\"#000000\",\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"background-pattern\":{\"type\":\"resolvedImage\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"background-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"background-emissive-strength\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\",\"measure-light\"]},\"property-type\":\"data-constant\"}},\"paint_sky\":{\"sky-type\":{\"type\":\"enum\",\"values\":{\"gradient\":1,\"atmosphere\":1},\"default\":\"atmosphere\",\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-atmosphere-sun\":{\"type\":\"array\",\"value\":\"number\",\"length\":2,\"minimum\":[0,0],\"maximum\":[360,180],\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-atmosphere-sun-intensity\":{\"type\":\"number\",\"default\":10,\"minimum\":0,\"maximum\":100,\"property-type\":\"data-constant\"},\"sky-gradient-center\":{\"type\":\"array\",\"value\":\"number\",\"default\":[0,0],\"length\":2,\"minimum\":[0,0],\"maximum\":[360,180],\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-gradient-radius\":{\"type\":\"number\",\"default\":90,\"minimum\":0,\"maximum\":180,\"expression\":{\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"sky-gradient\":{\"type\":\"color\",\"default\":[\"interpolate\",[\"linear\"],[\"sky-radial-progress\"],0.8,\"#87ceeb\",1,\"white\"],\"expression\":{\"interpolated\":true,\"parameters\":[\"sky-radial-progress\"]},\"property-type\":\"color-ramp\"},\"sky-atmosphere-halo-color\":{\"type\":\"color\",\"default\":\"white\",\"property-type\":\"data-constant\"},\"sky-atmosphere-color\":{\"type\":\"color\",\"default\":\"white\",\"property-type\":\"data-constant\"},\"sky-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"}},\"paint_model\":{\"model-opacity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"transition\":true,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\"},\"model-rotation\":{\"type\":\"array\",\"value\":\"number\",\"length\":3,\"default\":[0,0,0],\"period\":360,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\",\"zoom\"]},\"transition\":true},\"model-scale\":{\"type\":\"array\",\"value\":\"number\",\"length\":3,\"default\":[1,1,1],\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\",\"zoom\"]},\"transition\":true},\"model-translation\":{\"type\":\"array\",\"value\":\"number\",\"length\":3,\"default\":[0,0,0],\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\",\"zoom\"]},\"transition\":true},\"model-color\":{\"type\":\"color\",\"default\":\"#ffffff\",\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\",\"measure-light\",\"zoom\"]},\"transition\":true},\"model-color-mix-intensity\":{\"type\":\"number\",\"property-type\":\"data-driven\",\"default\":0,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\",\"measure-light\"]},\"transition\":true},\"model-type\":{\"type\":\"enum\",\"values\":{\"common-3d\":1,\"location-indicator\":1},\"default\":\"common-3d\",\"property-type\":\"data-constant\"},\"model-cast-shadows\":{\"type\":\"boolean\",\"default\":true,\"expression\":{},\"property-type\":\"data-constant\"},\"model-receive-shadows\":{\"type\":\"boolean\",\"default\":true,\"expression\":{},\"property-type\":\"data-constant\"},\"model-ambient-occlusion-intensity\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"expression\":{\"interpolated\":true,\"parameters\":[\"zoom\"]},\"property-type\":\"data-constant\",\"transition\":true},\"model-emissive-strength\":{\"type\":\"number\",\"property-type\":\"data-driven\",\"default\":0,\"minimum\":0,\"maximum\":5,\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\",\"measure-light\"]},\"transition\":true},\"model-roughness\":{\"type\":\"number\",\"default\":1,\"minimum\":0,\"maximum\":1,\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\"]},\"transition\":true},\"model-height-based-emissive-strength-multiplier\":{\"type\":\"array\",\"default\":[1,1,1,1,0],\"length\":5,\"value\":\"number\",\"property-type\":\"data-driven\",\"expression\":{\"interpolated\":true,\"parameters\":[\"feature\",\"feature-state\",\"measure-light\"]},\"transition\":true},\"model-cutoff-fade-range\":{\"type\":\"number\",\"default\":0,\"minimum\":0,\"maximum\":1,\"expression\":{},\"property-type\":\"data-constant\"}},\"transition\":{\"duration\":{\"type\":\"number\",\"default\":300,\"minimum\":0},\"delay\":{\"type\":\"number\",\"default\":0,\"minimum\":0}},\"property-type\":{\"data-driven\":{\"type\":\"property-type\"},\"color-ramp\":{\"type\":\"property-type\"},\"data-constant\":{\"type\":\"property-type\"},\"constant\":{\"type\":\"property-type\"}},\"promoteId\":{\"*\":{\"type\":\"string\"}}}');class Dt{constructor(e,t,i,r){this.message=(e?`${e}: `:\"\")+i,r&&(this.identifier=r),null!=t&&t.__line__&&(this.line=t.__line__);}}class Rt extends Dt{}function Lt(e,...t){for(const i of t)for(const t in i)e[t]=i[t];return e}function kt(e){return e instanceof Number||e instanceof String||e instanceof Boolean?e.valueOf():e}function Ot(e){if(Array.isArray(e))return e.map(Ot);if(e instanceof Object&&!(e instanceof Number||e instanceof String||e instanceof Boolean)){const t={};for(const i in e)t[i]=Ot(e[i]);return t}return kt(e)}class Bt extends Error{constructor(e,t){super(t),this.message=t,this.key=e;}}var Ft=Bt;class Nt{constructor(e,t=[]){this.parent=e,this.bindings={};for(const[e,i]of t)this.bindings[e]=i;}concat(e){return new Nt(this,e)}get(e){if(this.bindings[e])return this.bindings[e];if(this.parent)return this.parent.get(e);throw new Error(`${e} not found in scope.`)}has(e){return !!this.bindings[e]||!!this.parent&&this.parent.has(e)}}var Ut=Nt;const Vt={kind:\"null\"},jt={kind:\"number\"},Gt={kind:\"string\"},qt={kind:\"boolean\"},Zt={kind:\"color\"},$t={kind:\"object\"},Wt={kind:\"value\"},Ht={kind:\"collator\"},Xt={kind:\"formatted\"},Yt={kind:\"resolvedImage\"};function Kt(e,t){return {kind:\"array\",itemType:e,N:t}}function Jt(e){if(\"array\"===e.kind){const t=Jt(e.itemType);return \"number\"==typeof e.N?`array<${t}, ${e.N}>`:\"value\"===e.itemType.kind?\"array\":`array<${t}>`}return e.kind}const Qt=[Vt,jt,Gt,qt,Zt,Xt,$t,Kt(Wt),Yt];function ei(e,t){if(\"error\"===t.kind)return null;if(\"array\"===e.kind){if(\"array\"===t.kind&&(0===t.N&&\"value\"===t.itemType.kind||!ei(e.itemType,t.itemType))&&(\"number\"!=typeof e.N||e.N===t.N))return null}else {if(e.kind===t.kind)return null;if(\"value\"===e.kind)for(const e of Qt)if(!ei(e,t))return null}return `Expected ${Jt(e)} but found ${Jt(t)} instead.`}function ti(e,t){return t.some((t=>t.kind===e.kind))}function ii(e,t){return t.some((t=>\"null\"===t?null===e:\"array\"===t?Array.isArray(e):\"object\"===t?e&&!Array.isArray(e)&&\"object\"==typeof e:t===typeof e))}var ri,ni={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function oi(e){return (e=Math.round(e))<0?0:e>255?255:e}function si(e){return oi(\"%\"===e[e.length-1]?parseFloat(e)/100*255:parseInt(e))}function ai(e){return (t=\"%\"===e[e.length-1]?parseFloat(e)/100:parseFloat(e))<0?0:t>1?1:t;var t;}function li(e,t,i){return i<0?i+=1:i>1&&(i-=1),6*i<1?e+(t-e)*i*6:2*i<1?t:3*i<2?e+(t-e)*(2/3-i)*6:e}try{ri={}.parseCSSColor=function(e){var t,i=e.replace(/ /g,\"\").toLowerCase();if(i in ni)return ni[i].slice();if(\"#\"===i[0])return 4===i.length?(t=parseInt(i.substr(1),16))>=0&&t<=4095?[(3840&t)>>4|(3840&t)>>8,240&t|(240&t)>>4,15&t|(15&t)<<4,1]:null:7===i.length&&(t=parseInt(i.substr(1),16))>=0&&t<=16777215?[(16711680&t)>>16,(65280&t)>>8,255&t,1]:null;var r=i.indexOf(\"(\"),n=i.indexOf(\")\");if(-1!==r&&n+1===i.length){var o=i.substr(0,r),s=i.substr(r+1,n-(r+1)).split(\",\"),a=1;switch(o){case\"rgba\":if(4!==s.length)return null;a=ai(s.pop());case\"rgb\":return 3!==s.length?null:[si(s[0]),si(s[1]),si(s[2]),a];case\"hsla\":if(4!==s.length)return null;a=ai(s.pop());case\"hsl\":if(3!==s.length)return null;var l=(parseFloat(s[0])%360+360)%360/360,c=ai(s[1]),h=ai(s[2]),u=h<=.5?h*(c+1):h+c-h*c,d=2*h-u;return [oi(255*li(d,u,l+1/3)),oi(255*li(d,u,l)),oi(255*li(d,u,l-1/3)),a];default:return null}}return null};}catch(e){}class ci{constructor(e,t,i,r=1){this.r=e,this.g=t,this.b=i,this.a=r;}static parse(e){if(!e)return;if(e instanceof ci)return e;if(\"string\"!=typeof e)return;const t=ri(e);return t?new ci(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3]):void 0}toString(){const[e,t,i,r]=this.toArray();return `rgba(${Math.round(e)},${Math.round(t)},${Math.round(i)},${r})`}toArray(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[255*e/r,255*t/r,255*i/r,r]}toArray01(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[e/r,t/r,i/r,r]}toArray01Scaled(e){const{r:t,g:i,b:r,a:n}=this;return 0===n?[0,0,0]:[t/n*e,i/n*e,r/n*e]}toArray01PremultipliedAlpha(){const{r:e,g:t,b:i,a:r}=this;return [e,t,i,r]}toArray01Linear(){const{r:e,g:t,b:i,a:r}=this;return 0===r?[0,0,0,0]:[Math.pow(e/r,2.2),Math.pow(t/r,2.2),Math.pow(i/r,2.2),r]}}ci.black=new ci(0,0,0,1),ci.white=new ci(1,1,1,1),ci.transparent=new ci(0,0,0,0),ci.red=new ci(1,0,0,1),ci.blue=new ci(0,0,1,1);var hi=ci;class ui{constructor(e,t,i){this.sensitivity=e?t?\"variant\":\"case\":t?\"accent\":\"base\",this.locale=i,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:\"search\"});}compare(e,t){return this.collator.compare(e,t)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class di{constructor(e,t,i,r,n){this.text=e.normalize?e.normalize():e,this.image=t,this.scale=i,this.fontStack=r,this.textColor=n;}}class pi{constructor(e){this.sections=e;}static fromString(e){return new pi([new di(e,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((e=>0!==e.text.length||e.image&&0!==e.image.namePrimary.length))}static factory(e){return e instanceof pi?e:pi.fromString(e)}toString(){return 0===this.sections.length?\"\":this.sections.map((e=>e.text)).join(\"\")}serialize(){const e=[\"format\"];for(const t of this.sections){if(t.image){e.push([\"image\",t.image.namePrimary]);continue}e.push(t.text);const i={};t.fontStack&&(i[\"text-font\"]=[\"literal\",t.fontStack.split(\",\")]),t.scale&&(i[\"font-scale\"]=t.scale),t.textColor&&(i[\"text-color\"]=[\"rgba\"].concat(t.textColor.toArray())),e.push(i);}return e}}class fi{constructor(e){this.namePrimary=e.namePrimary,e.nameSecondary&&(this.nameSecondary=e.nameSecondary),this.available=e.available;}toString(){return this.nameSecondary?`[${this.namePrimary},${this.nameSecondary}]`:this.namePrimary}static fromString(e,t){return e?new fi({namePrimary:e,nameSecondary:t,available:!1}):null}serialize(){return this.nameSecondary?[\"image\",this.namePrimary,this.nameSecondary]:[\"image\",this.namePrimary]}}function mi(e,t,i,r){return \"number\"==typeof e&&e>=0&&e<=255&&\"number\"==typeof t&&t>=0&&t<=255&&\"number\"==typeof i&&i>=0&&i<=255?void 0===r||\"number\"==typeof r&&r>=0&&r<=1?null:`Invalid rgba value [${[e,t,i,r].join(\", \")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(\"number\"==typeof r?[e,t,i,r]:[e,t,i]).join(\", \")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function _i(e){if(null===e)return !0;if(\"string\"==typeof e)return !0;if(\"boolean\"==typeof e)return !0;if(\"number\"==typeof e)return !0;if(e instanceof hi)return !0;if(e instanceof ui)return !0;if(e instanceof pi)return !0;if(e instanceof fi)return !0;if(Array.isArray(e)){for(const t of e)if(!_i(t))return !1;return !0}if(\"object\"==typeof e){for(const t in e)if(!_i(e[t]))return !1;return !0}return !1}function gi(e){if(null===e)return Vt;if(\"string\"==typeof e)return Gt;if(\"boolean\"==typeof e)return qt;if(\"number\"==typeof e)return jt;if(e instanceof hi)return Zt;if(e instanceof ui)return Ht;if(e instanceof pi)return Xt;if(e instanceof fi)return Yt;if(Array.isArray(e)){const t=e.length;let i;for(const t of e){const e=gi(t);if(i){if(i===e)continue;i=Wt;break}i=e;}return Kt(i||Wt,t)}return $t}function yi(e){const t=typeof e;return null===e?\"\":\"string\"===t||\"number\"===t||\"boolean\"===t?String(e):e instanceof hi||e instanceof pi||e instanceof fi?e.toString():JSON.stringify(e)}class xi{constructor(e,t){this.type=e,this.value=t;}static parse(e,t){if(2!==e.length)return t.error(`'literal' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!_i(e[1]))return t.error(\"invalid value\");const i=e[1];let r=gi(i);const n=t.expectedType;return \"array\"!==r.kind||0!==r.N||!n||\"array\"!==n.kind||\"number\"==typeof n.N&&0!==n.N||(r=n),new xi(r,i)}evaluate(){return this.value}eachChild(){}outputDefined(){return !0}serialize(){return \"array\"===this.type.kind||\"object\"===this.type.kind?[\"literal\",this.value]:this.value instanceof hi?[\"rgba\"].concat(this.value.toArray()):this.value instanceof pi?this.value.serialize():this.value}}var vi=xi,bi=class{constructor(e){this.name=\"ExpressionEvaluationError\",this.message=e;}toJSON(){return this.message}};const wi={string:Gt,number:jt,boolean:qt,object:$t};class Ti{constructor(e,t){this.type=e,this.args=t;}static parse(e,t){if(e.length<2)return t.error(\"Expected at least one argument.\");let i,r=1;const n=e[0];if(\"array\"===n){let n,o;if(e.length>2){const i=e[1];if(\"string\"!=typeof i||!(i in wi)||\"object\"===i)return t.error('The item type argument of \"array\" must be one of string, number, boolean',1);n=wi[i],r++;}else n=Wt;if(e.length>3){if(null!==e[2]&&(\"number\"!=typeof e[2]||e[2]<0||e[2]!==Math.floor(e[2])))return t.error('The length argument to \"array\" must be a positive integer literal',2);o=e[2],r++;}i=Kt(n,o);}else i=wi[n];const o=[];for(;re.outputDefined()))}serialize(){const e=this.type,t=[e.kind];if(\"array\"===e.kind){const i=e.itemType;if(\"string\"===i.kind||\"number\"===i.kind||\"boolean\"===i.kind){t.push(i.kind);const r=e.N;(\"number\"==typeof r||this.args.length>1)&&t.push(r);}}return t.concat(this.args.map((e=>e.serialize())))}}var Ei=Ti;class Mi{constructor(e){this.type=Xt,this.sections=e;}static parse(e,t){if(e.length<2)return t.error(\"Expected at least one argument.\");const i=e[1];if(!Array.isArray(i)&&\"object\"==typeof i)return t.error(\"First argument must be an image or text section.\");const r=[];let n=!1;for(let i=1;i<=e.length-1;++i){const o=e[i];if(n&&\"object\"==typeof o&&!Array.isArray(o)){n=!1;let e=null;if(o[\"font-scale\"]&&(e=t.parse(o[\"font-scale\"],1,jt),!e))return null;let i=null;if(o[\"text-font\"]&&(i=t.parse(o[\"text-font\"],1,Kt(Gt)),!i))return null;let s=null;if(o[\"text-color\"]&&(s=t.parse(o[\"text-color\"],1,Zt),!s))return null;const a=r[r.length-1];a.scale=e,a.font=i,a.textColor=s;}else {const o=t.parse(e[i],1,Wt);if(!o)return null;const s=o.type.kind;if(\"string\"!==s&&\"value\"!==s&&\"null\"!==s&&\"resolvedImage\"!==s)return t.error(\"Formatted text type must be 'string', 'value', 'image' or 'null'.\");n=!0,r.push({content:o,scale:null,font:null,textColor:null});}}return new Mi(r)}evaluate(e){return new pi(this.sections.map((t=>{const i=t.content.evaluate(e);return gi(i)===Yt?new di(\"\",i,null,null,null):new di(yi(i),null,t.scale?t.scale.evaluate(e):null,t.font?t.font.evaluate(e).join(\",\"):null,t.textColor?t.textColor.evaluate(e):null)})))}eachChild(e){for(const t of this.sections)e(t.content),t.scale&&e(t.scale),t.font&&e(t.font),t.textColor&&e(t.textColor);}outputDefined(){return !1}serialize(){const e=[\"format\"];for(const t of this.sections){e.push(t.content.serialize());const i={};t.scale&&(i[\"font-scale\"]=t.scale.serialize()),t.font&&(i[\"text-font\"]=t.font.serialize()),t.textColor&&(i[\"text-color\"]=t.textColor.serialize()),e.push(i);}return e}}class Ai{constructor(e,t){this.type=Yt,this.inputPrimary=e,this.inputSecondary=t;}static parse(e,t){if(e.length<2)return t.error(\"Expected two or more arguments.\");const i=t.parse(e[1],1,Gt);if(!i)return t.error(\"No image name provided.\");if(2===e.length)return new Ai(i);const r=t.parse(e[2],1,Gt);return r?new Ai(i,r):t.error(\"Secondary image variant is not a string.\")}evaluate(e){const t=fi.fromString(this.inputPrimary.evaluate(e),this.inputSecondary?this.inputSecondary.evaluate(e):void 0);return t&&e.availableImages&&(t.available=e.availableImages.indexOf(t.namePrimary)>-1,t.nameSecondary&&t.available&&e.availableImages&&(t.available=e.availableImages.indexOf(t.nameSecondary)>-1)),t}eachChild(e){e(this.inputPrimary),this.inputSecondary&&e(this.inputSecondary);}outputDefined(){return !1}serialize(){return this.inputSecondary?[\"image\",this.inputPrimary.serialize(),this.inputSecondary.serialize()]:[\"image\",this.inputPrimary.serialize()]}}function Si(e){return e instanceof Number?\"number\":e instanceof String?\"string\":e instanceof Boolean?\"boolean\":Array.isArray(e)?\"array\":null===e?\"null\":typeof e}const Ii={\"to-boolean\":qt,\"to-color\":Zt,\"to-number\":jt,\"to-string\":Gt};class Ci{constructor(e,t){this.type=e,this.args=t;}static parse(e,t){if(e.length<2)return t.error(\"Expected at least one argument.\");const i=e[0],r=[];let n=Vt;if(\"to-array\"===i){if(!Array.isArray(e[1]))return null;const i=e[1].length;if(t.expectedType){if(\"array\"!==t.expectedType.kind)return t.error(`Expected ${t.expectedType.kind} but found array.`);n=Kt(t.expectedType.itemType,i);}else {if(!(i>0&&_i(e[1][0])))return null;n=Kt(gi(e[1][0]),i);}for(let o=0;o4?`Invalid rbga value ${JSON.stringify(t)}: expected an array containing either three or four numeric values.`:mi(t[0],t[1],t[2],t[3]),!i))return new hi(t[0]/255,t[1]/255,t[2]/255,t[3])}throw new bi(i||`Could not parse color from value '${\"string\"==typeof t?t:String(JSON.stringify(t))}'`)}if(\"number\"===this.type.kind){let t=null;for(const i of this.args){if(t=i.evaluate(e),null===t)return 0;const r=Number(t);if(!isNaN(r))return r}throw new bi(`Could not convert ${JSON.stringify(t)} to number.`)}return \"formatted\"===this.type.kind?pi.fromString(yi(this.args[0].evaluate(e))):\"resolvedImage\"===this.type.kind?fi.fromString(yi(this.args[0].evaluate(e))):\"array\"===this.type.kind?this.args.map((t=>t.evaluate(e))):yi(this.args[0].evaluate(e))}eachChild(e){this.args.forEach(e);}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){if(\"formatted\"===this.type.kind)return new Mi([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(\"resolvedImage\"===this.type.kind)return new Ai(this.args[0]).serialize();const e=\"array\"===this.type.kind?[]:[`to-${this.type.kind}`];return this.eachChild((t=>{e.push(t.serialize());})),e}}var zi=Ci;const Pi=[\"Unknown\",\"Point\",\"LineString\",\"Polygon\"];var Di=class{constructor(e){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null,this.options=e;}id(){return this.feature&&void 0!==this.feature.id?this.feature.id:null}geometryType(){return this.feature?\"number\"==typeof this.feature.type?Pi[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&\"geometry\"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}measureLight(e){return this.globals.brightness||0}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const e=this.featureDistanceData.center,t=this.featureDistanceData.scale,{x:i,y:r}=this.featureTileCoord;return this.featureDistanceData.bearing[0]*(i*t-e[0])+this.featureDistanceData.bearing[1]*(r*t-e[1])}return 0}parseColor(e){let t=this._parseColorCache[e];return t||(t=this._parseColorCache[e]=hi.parse(e)),t}getConfig(e){return this.options?this.options.get(e):null}};class Ri{constructor(e,t,i,r,n){this.name=e,this.type=t,this._evaluate=i,this.args=r,this._overloadIndex=n;}evaluate(e){if(!this._evaluate){const e=Ri.definitions[this.name];this._evaluate=Array.isArray(e)?e[2]:e.overloads[this._overloadIndex][1];}return this._evaluate(e,this.args)}eachChild(e){this.args.forEach(e);}outputDefined(){return !1}serialize(){return [this.name].concat(this.args.map((e=>e.serialize())))}static parse(e,t){const i=e[0],r=Ri.definitions[i];if(!r)return t.error(`Unknown expression \"${i}\". If you wanted a literal array, use [\"literal\", [...]].`,0);const n=Array.isArray(r)?r[0]:r.type,o=Array.isArray(r)?[[r[1],r[2]]]:r.overloads,s=[];let a=null,l=-1;for(const[r,c]of o){if(Array.isArray(r)&&r.length!==e.length-1)continue;s.push(r),l++,a=new $r(t.registry,t.path,null,t.scope,void 0,t.options);const o=[];let h=!1;for(let t=1;te))).map(Li).join(\" | \"),r=[];for(let i=1;in;){if(o-n>600){var a=o-n+1,l=r-n+1,c=Math.log(a),h=.5*Math.exp(2*c/3),u=.5*Math.sqrt(c*h*(a-h)/a)*(l-a/2<0?-1:1);e(i,r,Math.max(n,Math.floor(r-l*h/a+u)),Math.min(o,Math.floor(r+(a-l)*h/a+u)),s);}var d=i[r],p=n,f=o;for(t(i,n,r),s(i[o],d)>0&&t(i,n,o);p0;)f--;}0===s(i[n],d)?t(i,n,f):t(i,++f,o),f<=r&&(n=f+1),r<=f&&(o=f-1);}}function t(e,t,i){var r=e[t];e[t]=e[i],e[i]=r;}function i(e,t){return et?1:0}return function(t,r,n,o,s){e(t,r,n||0,o||t.length-1,s||i);}}();var Fi=d(Bi.exports);function Ni(e){let t=0;for(let i,r,n=0,o=e.length,s=o-1;n=t[2]||e[1]<=t[1]||e[3]>=t[3])}function ji(e,t,i){const r=e[0]-t[0],n=e[1]-t[1],o=e[0]-i[0],s=e[1]-i[1];return r*s-o*n==0&&r*o<=0&&n*s<=0}function Gi(e,t,i=!1){let r=!1;for(let a=0,l=t.length;a(n=e)[1]!=(s=h)[1]>n[1]&&n[0]<(s[0]-o[0])*(n[1]-o[1])/(s[1]-o[1])+o[0]&&(r=!r);}}var n,o,s;return r}function qi(e,t,i,r){const n=r[0]-i[0],o=r[1]-i[1],s=(e[0]-i[0])*o-n*(e[1]-i[1]),a=(t[0]-i[0])*o-n*(t[1]-i[1]);return s>0&&a<0||s<0&&a>0}function Zi(e,t,i,r){return 0!=(n=[r[0]-i[0],r[1]-i[1]])[0]*(o=[t[0]-e[0],t[1]-e[1]])[1]-n[1]*o[0]&&!(!qi(e,t,i,r)||!qi(i,r,e,t));var n,o;}const $i=8192;function Wi(e,t){const i=(180+e[0])/360,r=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e[1]*Math.PI/360)))/360,n=Math.pow(2,t.z);return [Math.round(i*n*$i),Math.round(r*n*$i)]}function Hi(e,t){for(let i=0;ii[2]){const t=.5*r;let n=e[0]-i[0]>t?-r:i[0]-e[0]>t?r:0;0===n&&(n=e[0]-i[2]>t?-r:i[2]-e[0]>t?r:0),e[0]+=n;}Ui(t,e);}function tr(e,t,i,r){const n=Math.pow(2,r.z)*$i,o=[r.x*$i,r.y*$i],s=[];if(!e)return s;for(const r of e)for(const e of r){const r=[e.x+o[0],e.y+o[1]];er(r,t,i,n),s.push(r);}return s}function ir(e,t,i,r){const n=Math.pow(2,r.z)*$i,o=[r.x*$i,r.y*$i],s=[];if(!e)return s;for(const i of e){const e=[];for(const r of i){const i=[r.x+o[0],r.y+o[1]];Ui(t,i),e.push(i);}s.push(e);}if(t[2]-t[0]<=n/2){(a=t)[0]=a[1]=1/0,a[2]=a[3]=-1/0;for(const e of s)for(const r of e)er(r,t,i,n);}var a;return s}class rr{constructor(e,t){this.type=qt,this.geojson=e,this.geometries=t;}static parse(e,t){if(2!==e.length)return t.error(`'within' expression requires exactly one argument, but found ${e.length-1} instead.`);if(_i(e[1])){const t=e[1];if(\"FeatureCollection\"===t.type)for(let e=0;e180;)e-=360;return e}return n.fromTile=function(e,t,i){var o=Math.PI*(1-2*(e+.5)/Math.pow(2,t)),s=Math.atan(.5*(Math.exp(o)-Math.exp(-o)))/r;return new n(s,i)},o.units.get=function(){return e},n.prototype.distance=function(e,t){var i=l(e[0]-t[0])*this.kx,r=(e[1]-t[1])*this.ky;return Math.sqrt(i*i+r*r)},n.prototype.bearing=function(e,t){var i=l(t[0]-e[0])*this.kx;return Math.atan2(i,(t[1]-e[1])*this.ky)/r},n.prototype.destination=function(e,t,i){var n=i*r;return this.offset(e,Math.sin(n)*t,Math.cos(n)*t)},n.prototype.offset=function(e,t,i){return [e[0]+t/this.kx,e[1]+i/this.ky]},n.prototype.lineDistance=function(e){for(var t=0,i=0;it)return a(n,o,(t-(i-s))/s)}return e[e.length-1]},n.prototype.pointToSegmentDistance=function(e,t,i){var r=t[0],n=t[1],o=l(i[0]-r)*this.kx,s=(i[1]-n)*this.ky,a=0;return 0===o&&0===s||((a=(l(e[0]-r)*this.kx*o+(e[1]-n)*this.ky*s)/(o*o+s*s))>1?(r=i[0],n=i[1]):a>0&&(r+=o/this.kx*a,n+=s/this.ky*a)),o=l(e[0]-r)*this.kx,s=(e[1]-n)*this.ky,Math.sqrt(o*o+s*s)},n.prototype.pointOnLine=function(e,t){for(var i,r,n,o,s=1/0,a=0;a1?(c=e[a+1][0],h=e[a+1][1]):p>0&&(c+=u/this.kx*p,h+=d/this.ky*p));var f=(u=l(t[0]-c)*this.kx)*u+(d=(t[1]-h)*this.ky)*d;fn.index||r.index===n.index&&r.t>n.t){var o=r;r=n,n=o;}var a=[r.point],l=r.index+1,c=n.index;!s(i[l],a[0])&&l<=c&&a.push(i[l]);for(var h=l+1;h<=c;h++)a.push(i[h]);return s(i[c],n.point)||a.push(n.point),a},n.prototype.lineSliceAlong=function(e,t,i){for(var r=0,n=[],o=0;oe&&0===n.length&&n.push(a(s,l,(e-(r-c))/c)),r>=t)return n.push(a(s,l,(t-(r-c))/c)),n;r>e&&n.push(l);}return n},n.prototype.bufferPoint=function(e,t){var i=t/this.ky,r=t/this.kx;return [e[0]-r,e[1]-i,e[0]+r,e[1]+i]},n.prototype.bufferBBox=function(e,t){var i=t/this.ky,r=t/this.kx;return [e[0]-r,e[1]-i,e[2]+r,e[3]+i]},n.prototype.insideBBox=function(e,t){return l(e[0]-t[0])>=0&&l(e[0]-t[2])<=0&&e[1]>=t[1]&&e[1]<=t[3]},Object.defineProperties(n,o),n}();var sr=d(or.exports),ar={exports:{}};ar.exports=function(){var e=function(e,i){if(void 0===e&&(e=[]),void 0===i&&(i=t),this.data=e,this.length=this.data.length,this.compare=i,this.length>0)for(var r=(this.length>>1)-1;r>=0;r--)this._down(r);};function t(e,t){return et?1:0}return e.prototype.push=function(e){this.data.push(e),this.length++,this._up(this.length-1);},e.prototype.pop=function(){if(0!==this.length){var e=this.data[0],t=this.data.pop();return this.length--,this.length>0&&(this.data[0]=t,this._down(0)),e}},e.prototype.peek=function(){return this.data[0]},e.prototype._up=function(e){for(var t=this.data,i=this.compare,r=t[e];e>0;){var n=e-1>>1,o=t[n];if(i(r,o)>=0)break;t[e]=o,e=n;}t[e]=r;},e.prototype._down=function(e){for(var t=this.data,i=this.compare,r=this.length>>1,n=t[e];e=0)break;t[e]=s,e=o;}t[e]=n;},e}();var lr=d(ar.exports),cr=8192;function hr(e,t){return t.dist-e.dist}const ur=100,dr=50;function pr(e){const t=[1/0,1/0,-1/0,-1/0];if(t.length!==e.length)return !1;for(let i=0;i=e[0]&&e[1]e[1])return [null,null];const i=fr(e);if(t){if(2===i)return [e,null];const t=Math.floor(i/2);return [[e[0],e[0]+t],[e[0]+t,e[1]]]}{if(1===i)return [e,null];const t=Math.floor(i/2)-1;return [[e[0],e[0]+t],[e[0]+t+1,e[1]]]}}function gr(e,t){const i=[1/0,1/0,-1/0,-1/0];if(!mr(t,e.length))return i;for(let r=t[0];r<=t[1];++r)Ui(i,e[r]);return i}function yr(e){const t=[1/0,1/0,-1/0,-1/0];for(let i=0;it[2]&&(r=e[0]-t[2]),e[1]>t[3]&&(n=e[1]-t[3]),e[3]=r)return r;if(Vi(n,o)){if(Cr(e,t))return 0}else if(Cr(t,e))return 0;let s=r;for(const r of e)for(let e=0,n=r.length,o=n-1;e=o)continue;const c=n.range1;if(fr(c)<=a){if(!mr(c,e.length))return NaN;if(t){const t=Ir(e,c,i,r);if(0===(o=Math.min(o,t)))return o}else for(let t=c[0];t<=c[1];++t){const n=Sr(e[t],i,r);if(0===(o=Math.min(o,n)))return o}}else {const i=_r(c,t);if(null!==i[0]){const t=xr(gr(e,i[0]),l,r);t=s)continue;const h=o.range1,u=o.range2;if(fr(h)<=l&&fr(u)<=c){if(!mr(h,e.length)||!mr(u,i.length))return NaN;if(t&&r?s=Math.min(s,Mr(e,h,i,u,n)):t||r?t&&!r?s=Math.min(s,Tr(i,u,e,h,n)):!t&&r&&(s=Math.min(s,Tr(e,h,i,u,n))):s=Math.min(s,Ar(e,h,i,u,n)),0===s)return s}else {const o=_r(h,t),l=_r(u,r);Pr(a,s,n,e,i,o[0],l[0]),Pr(a,s,n,e,i,o[0],l[1]),Pr(a,s,n,e,i,o[1],l[0]),Pr(a,s,n,e,i,o[1],l[1]);}}return s}function Lr(e,t,i,r,n=1/0){let o=n;const s=gr(e,[0,e.length-1]);for(const n of i)if(!(o!==1/0&&xr(s,gr(n,[0,n.length-1]),r)>=o)&&(o=Math.min(o,Rr(e,t,n,!0,r,o)),0===o))return o;return o}function kr(e,t,i,r,n=1/0){let o=n;const s=gr(e,[0,e.length-1]);for(const n of i){if(o!==1/0&&xr(s,yr(n),r)>=o)continue;const i=Dr(e,t,n,r,o);if(isNaN(i))return i;if(0===(o=Math.min(o,i)))return o}return o}function Or(e){return \"Point\"===e||\"MultiPoint\"===e||\"LineString\"===e||\"MultiLineString\"===e||\"Polygon\"===e||\"MultiPolygon\"===e}class Br{constructor(e,t){this.type=jt,this.geojson=e,this.geometries=t;}static parse(e,t){if(2!==e.length)return t.error(`'distance' expression requires either one argument, but found ' ${e.length-1} instead.`);if(_i(e[1])){const t=e[1];if(\"FeatureCollection\"===t.type){for(let e=0;e{t&&!Nr(e)&&(t=!1);})),t}function Ur(e){if(e instanceof ki&&\"feature-state\"===e.name)return !1;let t=!0;return e.eachChild((e=>{t&&!Ur(e)&&(t=!1);})),t}function Vr(e){if(e instanceof ki&&\"config\"===e.name)return !1;let t=!0;return e.eachChild((e=>{t&&!Vr(e)&&(t=!1);})),t}function jr(e,t){if(e instanceof ki&&t.indexOf(e.name)>=0)return !1;let i=!0;return e.eachChild((e=>{i&&!jr(e,t)&&(i=!1);})),i}class Gr{constructor(e,t){this.type=t.type,this.name=e,this.boundExpression=t;}static parse(e,t){if(2!==e.length||\"string\"!=typeof e[1])return t.error(\"'var' expression requires exactly one string literal argument.\");const i=e[1];return t.scope.has(i)?new Gr(i,t.scope.get(i)):t.error(`Unknown variable \"${i}\". Make sure \"${i}\" has been bound in an enclosing \"let\" expression before using it.`,1)}evaluate(e){return this.boundExpression.evaluate(e)}eachChild(){}outputDefined(){return !1}serialize(){return [\"var\",this.name]}}var qr=Gr;class Zr{constructor(e,t=[],i,r=new Ut,n=[],o){this.registry=e,this.path=t,this.key=t.map((e=>`[${e}]`)).join(\"\"),this.scope=r,this.errors=n,this.expectedType=i,this.options=o;}parse(e,t,i,r,n={}){return t||i?this.concat(t,i,r)._parse(e,n):this._parse(e,n)}_parse(e,t){function i(e,t,i){return \"assert\"===i?new Ei(t,[e]):\"coerce\"===i?new zi(t,[e]):e}if(null!==e&&\"string\"!=typeof e&&\"boolean\"!=typeof e&&\"number\"!=typeof e||(e=[\"literal\",e]),Array.isArray(e)){if(0===e.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use [\"literal\", []].');const r=\"string\"==typeof e[0]?this.registry[e[0]]:void 0;if(r){let n=r.parse(e,this);if(!n)return null;if(this.expectedType){const e=this.expectedType,r=n.type;if(\"string\"!==e.kind&&\"number\"!==e.kind&&\"boolean\"!==e.kind&&\"object\"!==e.kind&&\"array\"!==e.kind||\"value\"!==r.kind)if(\"color\"!==e.kind&&\"formatted\"!==e.kind&&\"resolvedImage\"!==e.kind||\"value\"!==r.kind&&\"string\"!==r.kind){if(this.checkSubtype(e,r))return null}else n=i(n,e,t.typeAnnotation||\"coerce\");else n=i(n,e,t.typeAnnotation||\"assert\");}if(!(n instanceof vi)&&\"resolvedImage\"!==n.type.kind&&Wr(n)){const e=new Di(this.options);try{n=new vi(n.type,n.evaluate(e));}catch(e){return this.error(e.message),null}}return n}return zi.parse([\"to-array\",e],this)}return this.error(void 0===e?\"'undefined' value invalid. Use null instead.\":\"object\"==typeof e?'Bare objects invalid. Use [\"literal\", {...}] instead.':`Expected an array, but found ${typeof e} instead.`)}concat(e,t,i){const r=\"number\"==typeof e?this.path.concat(e):this.path,n=i?this.scope.concat(i):this.scope;return new Zr(this.registry,r,t||null,n,this.errors,this.options)}error(e,...t){const i=`${this.key}${t.map((e=>`[${e}]`)).join(\"\")}`;this.errors.push(new Ft(i,e));}checkSubtype(e,t){const i=ei(e,t);return i&&this.error(i),i}}var $r=Zr;function Wr(e){if(e instanceof qr)return Wr(e.boundExpression);if(e instanceof ki&&\"error\"===e.name)return !1;if(e instanceof ki&&\"config\"===e.name)return !1;if(e instanceof Oi)return !1;if(e instanceof nr)return !1;if(e instanceof Fr)return !1;const t=e instanceof zi||e instanceof Ei;let i=!0;return e.eachChild((e=>{i=t?i&&Wr(e):i&&e instanceof vi;})),!!i&&Nr(e)&&jr(e,[\"zoom\",\"heatmap-density\",\"line-progress\",\"raster-value\",\"sky-radial-progress\",\"accumulated\",\"is-supported-script\",\"pitch\",\"distance-from-center\",\"measure-light\"])}function Hr(e,t){const i=e.length-1;let r,n,o=0,s=i,a=0;for(;o<=s;)if(a=Math.floor((o+s)/2),r=e[a],n=e[a+1],r<=t){if(a===i||tt))throw new bi(\"Input is not a number.\");s=a-1;}return 0}class Xr{constructor(e,t,i){this.type=e,this.input=t,this.labels=[],this.outputs=[];for(const[e,t]of i)this.labels.push(e),this.outputs.push(t);}static parse(e,t){if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error(\"Expected an even number of arguments.\");const i=t.parse(e[1],1,jt);if(!i)return null;const r=[];let n=null;t.expectedType&&\"value\"!==t.expectedType.kind&&(n=t.expectedType);for(let i=1;i=o)return t.error('Input/output pairs for \"step\" expressions must be arranged with input values in strictly ascending order.',a);const c=t.parse(s,l,n);if(!c)return null;n=n||c.type,r.push([o,c]);}return new Xr(n,i,r)}evaluate(e){const t=this.labels,i=this.outputs;if(1===t.length)return i[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return i[0].evaluate(e);const n=t.length;return r>=t[n-1]?i[n-1].evaluate(e):i[Hr(t,r)].evaluate(e)}eachChild(e){e(this.input);for(const t of this.outputs)e(t);}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){const e=[\"step\",this.input.serialize()];for(let t=0;t0&&e.push(this.labels[t]),e.push(this.outputs[t].serialize());return e}}var Yr=Xr;function Kr(e,t,i){return e*(1-i)+t*i}function Jr(e,t,i){return e.map(((e,r)=>Kr(e,t[r],i)))}var Qr=Object.freeze({__proto__:null,array:Jr,color:function(e,t,i){return new hi(Kr(e.r,t.r,i),Kr(e.g,t.g,i),Kr(e.b,t.b,i),Kr(e.a,t.a,i))},number:Kr});const en=.95047,tn=1.08883,rn=4/29,nn=6/29,on=3*nn*nn,sn=nn*nn*nn,an=Math.PI/180,ln=180/Math.PI;function cn(e){return e>sn?Math.pow(e,1/3):e/on+rn}function hn(e){return e>nn?e*e*e:on*(e-rn)}function un(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function dn(e){return (e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function pn(e){const t=dn(e.r),i=dn(e.g),r=dn(e.b),n=cn((.4124564*t+.3575761*i+.1804375*r)/en),o=cn((.2126729*t+.7151522*i+.072175*r)/1);return {l:116*o-16,a:500*(n-o),b:200*(o-cn((.0193339*t+.119192*i+.9503041*r)/tn)),alpha:e.a}}function fn(e){let t=(e.l+16)/116,i=isNaN(e.a)?t:t+e.a/500,r=isNaN(e.b)?t:t-e.b/200;return t=1*hn(t),i=en*hn(i),r=tn*hn(r),new hi(un(3.2404542*i-1.5371385*t-.4985314*r),un(-.969266*i+1.8760108*t+.041556*r),un(.0556434*i-.2040259*t+1.0572252*r),e.alpha)}function mn(e,t,i){const r=t-e;return e+i*(r>180||r<-180?r-360*Math.round(r/360):r)}const _n={forward:pn,reverse:fn,interpolate:function(e,t,i){return {l:Kr(e.l,t.l,i),a:Kr(e.a,t.a,i),b:Kr(e.b,t.b,i),alpha:Kr(e.alpha,t.alpha,i)}}},gn={forward:function(e){const{l:t,a:i,b:r}=pn(e),n=Math.atan2(r,i)*ln;return {h:n<0?n+360:n,c:Math.sqrt(i*i+r*r),l:t,alpha:e.a}},reverse:function(e){const t=e.h*an,i=e.c;return fn({l:e.l,a:Math.cos(t)*i,b:Math.sin(t)*i,alpha:e.alpha})},interpolate:function(e,t,i){return {h:mn(e.h,t.h,i),c:Kr(e.c,t.c,i),l:Kr(e.l,t.l,i),alpha:Kr(e.alpha,t.alpha,i)}}};var yn=Object.freeze({__proto__:null,hcl:gn,lab:_n});class xn{constructor(e,t,i,r,n){this.type=e,this.operator=t,this.interpolation=i,this.input=r,this.labels=[],this.outputs=[];for(const[e,t]of n)this.labels.push(e),this.outputs.push(t);}static interpolationFactor(e,t,i,r){let n=0;if(\"exponential\"===e.name)n=vn(t,e.base,i,r);else if(\"linear\"===e.name)n=vn(t,1,i,r);else if(\"cubic-bezier\"===e.name){const o=e.controlPoints;n=new m(o[0],o[1],o[2],o[3]).solve(vn(t,1,i,r));}return n}static parse(e,t){let[i,r,n,...o]=e;if(!Array.isArray(r)||0===r.length)return t.error(\"Expected an interpolation type expression.\",1);if(\"linear\"===r[0])r={name:\"linear\"};else if(\"exponential\"===r[0]){const e=r[1];if(\"number\"!=typeof e)return t.error(\"Exponential interpolation requires a numeric base.\",1,1);r={name:\"exponential\",base:e};}else {if(\"cubic-bezier\"!==r[0])return t.error(`Unknown interpolation type ${String(r[0])}`,1,0);{const e=r.slice(1);if(4!==e.length||e.some((e=>\"number\"!=typeof e||e<0||e>1)))return t.error(\"Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.\",1);r={name:\"cubic-bezier\",controlPoints:e};}}if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return t.error(\"Expected an even number of arguments.\");if(n=t.parse(n,2,jt),!n)return null;const s=[];let a=null;\"interpolate-hcl\"===i||\"interpolate-lab\"===i?a=Zt:t.expectedType&&\"value\"!==t.expectedType.kind&&(a=t.expectedType);for(let e=0;e=i)return t.error('Input/output pairs for \"interpolate\" expressions must be arranged with input values in strictly ascending order.',n);const c=t.parse(r,l,a);if(!c)return null;a=a||c.type,s.push([i,c]);}return \"number\"===a.kind||\"color\"===a.kind||\"array\"===a.kind&&\"number\"===a.itemType.kind&&\"number\"==typeof a.N?new xn(a,i,r,n,s):t.error(`Type ${Jt(a)} is not interpolatable.`)}evaluate(e){const t=this.labels,i=this.outputs;if(1===t.length)return i[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return i[0].evaluate(e);const n=t.length;if(r>=t[n-1])return i[n-1].evaluate(e);const o=Hr(t,r),s=xn.interpolationFactor(this.interpolation,r,t[o],t[o+1]),a=i[o].evaluate(e),l=i[o+1].evaluate(e);return \"interpolate\"===this.operator?Qr[this.type.kind.toLowerCase()](a,l,s):\"interpolate-hcl\"===this.operator?gn.reverse(gn.interpolate(gn.forward(a),gn.forward(l),s)):_n.reverse(_n.interpolate(_n.forward(a),_n.forward(l),s))}eachChild(e){e(this.input);for(const t of this.outputs)e(t);}outputDefined(){return this.outputs.every((e=>e.outputDefined()))}serialize(){let e;e=\"linear\"===this.interpolation.name?[\"linear\"]:\"exponential\"===this.interpolation.name?1===this.interpolation.base?[\"linear\"]:[\"exponential\",this.interpolation.base]:[\"cubic-bezier\"].concat(this.interpolation.controlPoints);const t=[this.operator,e,this.input.serialize()];for(let e=0;eei(r,e.type)));return new wn(o?Wt:i,n)}evaluate(e){let t,i=null,r=0;for(const n of this.args){if(r++,i=n.evaluate(e),i&&i instanceof fi&&!i.available&&(t||(t=i),i=null,r===this.args.length))return t;if(null!==i)break}return i}eachChild(e){this.args.forEach(e);}outputDefined(){return this.args.every((e=>e.outputDefined()))}serialize(){const e=[\"coalesce\"];return this.eachChild((t=>{e.push(t.serialize());})),e}}var Tn=wn;class En{constructor(e,t){this.type=t.type,this.bindings=[].concat(e),this.result=t;}evaluate(e){return this.result.evaluate(e)}eachChild(e){for(const t of this.bindings)e(t[1]);e(this.result);}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);const i=[];for(let r=1;r=i.length)throw new bi(`Array index out of bounds: ${t} > ${i.length-1}.`);if(t!==Math.floor(t))throw new bi(`Array index must be an integer, but found ${t} instead.`);return i[t]}eachChild(e){e(this.index),e(this.input);}outputDefined(){return !1}serialize(){return [\"at\",this.index.serialize(),this.input.serialize()]}}var Sn=An;class In{constructor(e,t){this.type=qt,this.needle=e,this.haystack=t;}static parse(e,t){if(3!==e.length)return t.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,Wt),r=t.parse(e[2],2,Wt);return i&&r?ti(i.type,[qt,Gt,jt,Vt,Wt])?new In(i,r):t.error(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(i.type)} instead`):null}evaluate(e){const t=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(null==i)return !1;if(!ii(t,[\"boolean\",\"string\",\"number\",\"null\"]))throw new bi(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(gi(t))} instead.`);if(!ii(i,[\"string\",\"array\"]))throw new bi(`Expected second argument to be of type array or string, but found ${Jt(gi(i))} instead.`);return i.indexOf(t)>=0}eachChild(e){e(this.needle),e(this.haystack);}outputDefined(){return !0}serialize(){return [\"in\",this.needle.serialize(),this.haystack.serialize()]}}var Cn=In;class zn{constructor(e,t,i){this.type=jt,this.needle=e,this.haystack=t,this.fromIndex=i;}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,Wt),r=t.parse(e[2],2,Wt);if(!i||!r)return null;if(!ti(i.type,[qt,Gt,jt,Vt,Wt]))return t.error(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(i.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,jt);return n?new zn(i,r,n):null}return new zn(i,r)}evaluate(e){const t=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(!ii(t,[\"boolean\",\"string\",\"number\",\"null\"]))throw new bi(`Expected first argument to be of type boolean, string, number or null, but found ${Jt(gi(t))} instead.`);if(!ii(i,[\"string\",\"array\"]))throw new bi(`Expected second argument to be of type array or string, but found ${Jt(gi(i))} instead.`);if(this.fromIndex){const r=this.fromIndex.evaluate(e);return i.indexOf(t,r)}return i.indexOf(t)}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex);}outputDefined(){return !1}serialize(){if(null!=this.fromIndex&&void 0!==this.fromIndex){const e=this.fromIndex.serialize();return [\"index-of\",this.needle.serialize(),this.haystack.serialize(),e]}return [\"index-of\",this.needle.serialize(),this.haystack.serialize()]}}var Pn=zn;class Dn{constructor(e,t,i,r,n,o){this.inputType=e,this.type=t,this.input=i,this.cases=r,this.outputs=n,this.otherwise=o;}static parse(e,t){if(e.length<5)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!=1)return t.error(\"Expected an even number of arguments.\");let i,r;t.expectedType&&\"value\"!==t.expectedType.kind&&(r=t.expectedType);const n={},o=[];for(let s=2;sNumber.MAX_SAFE_INTEGER)return c.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(\"number\"==typeof e&&Math.floor(e)!==e)return c.error(\"Numeric branch labels must be integer values.\");if(i){if(c.checkSubtype(i,gi(e)))return null}else i=gi(e);if(void 0!==n[String(e)])return c.error(\"Branch labels must be unique.\");n[String(e)]=o.length;}const h=t.parse(l,s,r);if(!h)return null;r=r||h.type,o.push(h);}const s=t.parse(e[1],1,Wt);if(!s)return null;const a=t.parse(e[e.length-1],e.length-1,r);return a?\"value\"!==s.type.kind&&t.concat(1).checkSubtype(i,s.type)?null:new Dn(i,r,s,n,o,a):null}evaluate(e){const t=this.input.evaluate(e);return (gi(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(e)}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise);}outputDefined(){return this.outputs.every((e=>e.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=[\"match\",this.input.serialize()],t=Object.keys(this.cases).sort(),i=[],r={};for(const e of t){const t=r[this.cases[e]];void 0===t?(r[this.cases[e]]=i.length,i.push([this.cases[e],[e]])):i[t][1].push(e);}const n=e=>\"number\"===this.inputType.kind?Number(e):e;for(const[t,r]of i)e.push(1===r.length?n(r[0]):r.map(n)),e.push(this.outputs[t].serialize());return e.push(this.otherwise.serialize()),e}}var Rn=Dn;class Ln{constructor(e,t,i){this.type=e,this.branches=t,this.otherwise=i;}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!=0)return t.error(\"Expected an odd number of arguments.\");let i;t.expectedType&&\"value\"!==t.expectedType.kind&&(i=t.expectedType);const r=[];for(let n=1;nt.outputDefined()))&&this.otherwise.outputDefined()}serialize(){const e=[\"case\"];return this.eachChild((t=>{e.push(t.serialize());})),e}}var kn=Ln;class On{constructor(e,t,i,r){this.type=e,this.input=t,this.beginIndex=i,this.endIndex=r;}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const i=t.parse(e[1],1,Wt),r=t.parse(e[2],2,jt);if(!i||!r)return null;if(!ti(i.type,[Kt(Wt),Gt,Wt]))return t.error(`Expected first argument to be of type array or string, but found ${Jt(i.type)} instead`);if(4===e.length){const n=t.parse(e[3],3,jt);return n?new On(i.type,i,r,n):null}return new On(i.type,i,r)}evaluate(e){const t=this.input.evaluate(e),i=this.beginIndex.evaluate(e);if(!ii(t,[\"string\",\"array\"]))throw new bi(`Expected first argument to be of type array or string, but found ${Jt(gi(t))} instead.`);if(this.endIndex){const r=this.endIndex.evaluate(e);return t.slice(i,r)}return t.slice(i)}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex);}outputDefined(){return !1}serialize(){if(null!=this.endIndex&&void 0!==this.endIndex){const e=this.endIndex.serialize();return [\"slice\",this.input.serialize(),this.beginIndex.serialize(),e]}return [\"slice\",this.input.serialize(),this.beginIndex.serialize()]}}var Bn=On;function Fn(e,t){return \"==\"===e||\"!=\"===e?\"boolean\"===t.kind||\"string\"===t.kind||\"number\"===t.kind||\"null\"===t.kind||\"value\"===t.kind:\"string\"===t.kind||\"number\"===t.kind||\"value\"===t.kind}function Nn(e,t,i,r){return 0===r.compare(t,i)}function Un(e,t,i){const r=\"==\"!==e&&\"!=\"!==e;return class n{constructor(e,t,i){this.type=qt,this.lhs=e,this.rhs=t,this.collator=i,this.hasUntypedArgument=\"value\"===e.type.kind||\"value\"===t.type.kind;}static parse(e,t){if(3!==e.length&&4!==e.length)return t.error(\"Expected two or three arguments.\");const i=e[0];let o=t.parse(e[1],1,Wt);if(!o)return null;if(!Fn(i,o.type))return t.concat(1).error(`\"${i}\" comparisons are not supported for type '${Jt(o.type)}'.`);let s=t.parse(e[2],2,Wt);if(!s)return null;if(!Fn(i,s.type))return t.concat(2).error(`\"${i}\" comparisons are not supported for type '${Jt(s.type)}'.`);if(o.type.kind!==s.type.kind&&\"value\"!==o.type.kind&&\"value\"!==s.type.kind)return t.error(`Cannot compare types '${Jt(o.type)}' and '${Jt(s.type)}'.`);r&&(\"value\"===o.type.kind&&\"value\"!==s.type.kind?o=new Ei(s.type,[o]):\"value\"!==o.type.kind&&\"value\"===s.type.kind&&(s=new Ei(o.type,[s])));let a=null;if(4===e.length){if(\"string\"!==o.type.kind&&\"string\"!==s.type.kind&&\"value\"!==o.type.kind&&\"value\"!==s.type.kind)return t.error(\"Cannot use collator to compare non-string types.\");if(a=t.parse(e[3],3,Ht),!a)return null}return new n(o,s,a)}evaluate(n){const o=this.lhs.evaluate(n),s=this.rhs.evaluate(n);if(r&&this.hasUntypedArgument){const t=gi(o),i=gi(s);if(t.kind!==i.kind||\"string\"!==t.kind&&\"number\"!==t.kind)throw new bi(`Expected arguments for \"${e}\" to be (string, string) or (number, number), but found (${t.kind}, ${i.kind}) instead.`)}if(this.collator&&!r&&this.hasUntypedArgument){const e=gi(o),i=gi(s);if(\"string\"!==e.kind||\"string\"!==i.kind)return t(n,o,s)}return this.collator?i(n,o,s,this.collator.evaluate(n)):t(n,o,s)}eachChild(e){e(this.lhs),e(this.rhs),this.collator&&e(this.collator);}outputDefined(){return !0}serialize(){const t=[e];return this.eachChild((e=>{t.push(e.serialize());})),t}}}const Vn=Un(\"==\",(function(e,t,i){return t===i}),Nn),jn=Un(\"!=\",(function(e,t,i){return t!==i}),(function(e,t,i,r){return !Nn(0,t,i,r)})),Gn=Un(\"<\",(function(e,t,i){return t\",(function(e,t,i){return t>i}),(function(e,t,i,r){return r.compare(t,i)>0})),Zn=Un(\"<=\",(function(e,t,i){return t<=i}),(function(e,t,i,r){return r.compare(t,i)<=0})),$n=Un(\">=\",(function(e,t,i){return t>=i}),(function(e,t,i,r){return r.compare(t,i)>=0}));class Wn{constructor(e,t,i,r,n,o){this.type=Gt,this.number=e,this.locale=t,this.currency=i,this.unit=r,this.minFractionDigits=n,this.maxFractionDigits=o;}static parse(e,t){if(3!==e.length)return t.error(\"Expected two arguments.\");const i=t.parse(e[1],1,jt);if(!i)return null;const r=e[2];if(\"object\"!=typeof r||Array.isArray(r))return t.error(\"NumberFormat options argument must be an object.\");let n=null;if(r.locale&&(n=t.parse(r.locale,1,Gt),!n))return null;let o=null;if(r.currency&&(o=t.parse(r.currency,1,Gt),!o))return null;let s=null;if(r.unit&&(s=t.parse(r.unit,1,Gt),!s))return null;let a=null;if(r[\"min-fraction-digits\"]&&(a=t.parse(r[\"min-fraction-digits\"],1,jt),!a))return null;let l=null;return r[\"max-fraction-digits\"]&&(l=t.parse(r[\"max-fraction-digits\"],1,jt),!l)?null:new Wn(i,n,o,s,a,l)}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:(this.currency?\"currency\":this.unit&&\"unit\")||\"decimal\",currency:this.currency?this.currency.evaluate(e):void 0,unit:this.unit?this.unit.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.unit&&e(this.unit),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits);}outputDefined(){return !1}serialize(){const e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.unit&&(e.unit=this.unit.serialize()),this.minFractionDigits&&(e[\"min-fraction-digits\"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e[\"max-fraction-digits\"]=this.maxFractionDigits.serialize()),[\"number-format\",this.number.serialize(),e]}}class Hn{constructor(e){this.type=jt,this.input=e;}static parse(e,t){if(2!==e.length)return t.error(`Expected 1 argument, but found ${e.length-1} instead.`);const i=t.parse(e[1],1);return i?\"array\"!==i.type.kind&&\"string\"!==i.type.kind&&\"value\"!==i.type.kind?t.error(`Expected argument of type string or array, but found ${Jt(i.type)} instead.`):new Hn(i):null}evaluate(e){const t=this.input.evaluate(e);if(\"string\"==typeof t)return t.length;if(Array.isArray(t))return t.length;throw new bi(`Expected value to be of type string or array, but found ${Jt(gi(t))} instead.`)}eachChild(e){e(this.input);}outputDefined(){return !1}serialize(){const e=[\"length\"];return this.eachChild((t=>{e.push(t.serialize());})),e}}function Xn(e){return function(){e=1831565813+(e|=0)|0;let t=Math.imul(e^e>>>15,1|e);return t=t+Math.imul(t^t>>>7,61|t)^t,((t^t>>>14)>>>0)/4294967296}}const Yn={\"==\":Vn,\"!=\":jn,\">\":qn,\"<\":Gn,\">=\":$n,\"<=\":Zn,array:Ei,at:Sn,boolean:Ei,case:kn,coalesce:Tn,collator:Oi,format:Mi,image:Ai,in:Cn,\"index-of\":Pn,interpolate:bn,\"interpolate-hcl\":bn,\"interpolate-lab\":bn,length:Hn,let:Mn,literal:vi,match:Rn,number:Ei,\"number-format\":Wn,object:Ei,slice:Bn,step:Yr,string:Ei,\"to-boolean\":zi,\"to-color\":zi,\"to-number\":zi,\"to-string\":zi,var:qr,within:nr,distance:Fr};function Kn(e,[t,i,r,n]){t=t.evaluate(e),i=i.evaluate(e),r=r.evaluate(e);const o=n?n.evaluate(e):1,s=mi(t,i,r,o);if(s)throw new bi(s);return new hi(t/255*o,i/255*o,r/255*o,o)}function Jn(e,[t,i,r,n]){t=t.evaluate(e),i=i.evaluate(e),r=r.evaluate(e);const o=n?n.evaluate(e):1,s=function(e,t,i,r){return \"number\"==typeof e&&e>=0&&e<=360?\"number\"==typeof t&&t>=0&&t<=100&&\"number\"==typeof i&&i>=0&&i<=100?void 0===r||\"number\"==typeof r&&r>=0&&r<=1?null:`Invalid hsla value [${[e,t,i,r].join(\", \")}]: 'a' must be between 0 and 1.`:`Invalid hsla value [${(\"number\"==typeof r?[e,t,i,r]:[e,t,i]).join(\", \")}]: 's', and 'l' must be between 0 and 100.`:`Invalid hsla value [${(\"number\"==typeof r?[e,t,i,r]:[e,t,i]).join(\", \")}]: 'h' must be between 0 and 360.`}(t,i,r,o);if(s)throw new bi(s);const a=`hsla(${t}, ${i}%, ${r}%, ${o})`,l=hi.parse(a);if(!l)throw new bi(`Failed to parse HSLA color: ${a}`);return l}function Qn(e,t){return e in t}function eo(e,t){const i=t[e];return void 0===i?null:i}function to(e,t){switch(e){case\"string\":return String(t);case\"number\":return +t;case\"boolean\":return !!t;case\"color\":return hi.parse(t)}return t}function io(e,t,i,r){return void 0!==r&&(e=r*Math.round(e/r)),void 0!==t&&ei&&(e=i),e}function ro(e,t,i){i.length&&(t+=`\u001f${i}`);const r=e.getConfig(t);if(!r)return null;const{type:n,value:o,values:s,minValue:a,maxValue:l,stepValue:c}=r,h=r.default.evaluate(e);let u=o?o.evaluate(e):h;return n&&(u=to(n,u)),void 0!==o&&void 0!==u&&s&&!s.includes(u)&&(u=h,n&&(u=to(n,u))),void 0===u||void 0===a&&void 0===l&&void 0===c||(\"number\"==typeof u?u=io(u,a,l,c):Array.isArray(u)&&(u=u.map((e=>\"number\"==typeof e?io(e,a,l,c):e)))),u}function no(e){return {type:e}}ki.register(Yn,{error:[{kind:\"error\"},[Gt],(e,[t])=>{throw new bi(t.evaluate(e))}],typeof:[Gt,[Wt],(e,[t])=>Jt(gi(t.evaluate(e)))],\"to-rgba\":[Kt(jt,4),[Zt],(e,[t])=>t.evaluate(e).toArray()],rgb:[Zt,[jt,jt,jt],Kn],rgba:[Zt,[jt,jt,jt,jt],Kn],hsl:[Zt,[jt,jt,jt],Jn],hsla:[Zt,[jt,jt,jt,jt],Jn],has:{type:qt,overloads:[[[Gt],(e,[t])=>Qn(t.evaluate(e),e.properties())],[[Gt,$t],(e,[t,i])=>Qn(t.evaluate(e),i.evaluate(e))]]},get:{type:Wt,overloads:[[[Gt],(e,[t])=>eo(t.evaluate(e),e.properties())],[[Gt,$t],(e,[t,i])=>eo(t.evaluate(e),i.evaluate(e))]]},config:{type:Wt,overloads:[[[Gt],(e,[t])=>ro(e,t.evaluate(e),\"\")],[[Gt,Gt],(e,[t,i])=>ro(e,t.evaluate(e),i.evaluate(e))]]},\"feature-state\":[Wt,[Gt],(e,[t])=>eo(t.evaluate(e),e.featureState||{})],properties:[$t,[],e=>e.properties()],\"geometry-type\":[Gt,[],e=>e.geometryType()],id:[Wt,[],e=>e.id()],zoom:[jt,[],e=>e.globals.zoom],pitch:[jt,[],e=>e.globals.pitch||0],\"distance-from-center\":[jt,[],e=>e.distanceFromCenter()],\"measure-light\":[jt,[Gt],(e,[t])=>e.measureLight(t.evaluate(e))],\"heatmap-density\":[jt,[],e=>e.globals.heatmapDensity||0],\"line-progress\":[jt,[],e=>e.globals.lineProgress||0],\"raster-value\":[jt,[],e=>e.globals.rasterValue||0],\"sky-radial-progress\":[jt,[],e=>e.globals.skyRadialProgress||0],accumulated:[Wt,[],e=>void 0===e.globals.accumulated?null:e.globals.accumulated],\"+\":[jt,no(jt),(e,t)=>{let i=0;for(const r of t)i+=r.evaluate(e);return i}],\"*\":[jt,no(jt),(e,t)=>{let i=1;for(const r of t)i*=r.evaluate(e);return i}],\"-\":{type:jt,overloads:[[[jt,jt],(e,[t,i])=>t.evaluate(e)-i.evaluate(e)],[[jt],(e,[t])=>-t.evaluate(e)]]},\"/\":[jt,[jt,jt],(e,[t,i])=>t.evaluate(e)/i.evaluate(e)],\"%\":[jt,[jt,jt],(e,[t,i])=>t.evaluate(e)%i.evaluate(e)],ln2:[jt,[],()=>Math.LN2],pi:[jt,[],()=>Math.PI],e:[jt,[],()=>Math.E],\"^\":[jt,[jt,jt],(e,[t,i])=>Math.pow(t.evaluate(e),i.evaluate(e))],sqrt:[jt,[jt],(e,[t])=>Math.sqrt(t.evaluate(e))],log10:[jt,[jt],(e,[t])=>Math.log(t.evaluate(e))/Math.LN10],ln:[jt,[jt],(e,[t])=>Math.log(t.evaluate(e))],log2:[jt,[jt],(e,[t])=>Math.log(t.evaluate(e))/Math.LN2],sin:[jt,[jt],(e,[t])=>Math.sin(t.evaluate(e))],cos:[jt,[jt],(e,[t])=>Math.cos(t.evaluate(e))],tan:[jt,[jt],(e,[t])=>Math.tan(t.evaluate(e))],asin:[jt,[jt],(e,[t])=>Math.asin(t.evaluate(e))],acos:[jt,[jt],(e,[t])=>Math.acos(t.evaluate(e))],atan:[jt,[jt],(e,[t])=>Math.atan(t.evaluate(e))],min:[jt,no(jt),(e,t)=>Math.min(...t.map((t=>t.evaluate(e))))],max:[jt,no(jt),(e,t)=>Math.max(...t.map((t=>t.evaluate(e))))],abs:[jt,[jt],(e,[t])=>Math.abs(t.evaluate(e))],round:[jt,[jt],(e,[t])=>{const i=t.evaluate(e);return i<0?-Math.round(-i):Math.round(i)}],floor:[jt,[jt],(e,[t])=>Math.floor(t.evaluate(e))],ceil:[jt,[jt],(e,[t])=>Math.ceil(t.evaluate(e))],\"filter-==\":[qt,[Gt,Wt],(e,[t,i])=>e.properties()[t.value]===i.value],\"filter-id-==\":[qt,[Wt],(e,[t])=>e.id()===t.value],\"filter-type-==\":[qt,[Gt],(e,[t])=>e.geometryType()===t.value],\"filter-<\":[qt,[Gt,Wt],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r{const i=e.id(),r=t.value;return typeof i==typeof r&&i\":[qt,[Gt,Wt],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r>n}],\"filter-id->\":[qt,[Wt],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i>r}],\"filter-<=\":[qt,[Gt,Wt],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r<=n}],\"filter-id-<=\":[qt,[Wt],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i<=r}],\"filter->=\":[qt,[Gt,Wt],(e,[t,i])=>{const r=e.properties()[t.value],n=i.value;return typeof r==typeof n&&r>=n}],\"filter-id->=\":[qt,[Wt],(e,[t])=>{const i=e.id(),r=t.value;return typeof i==typeof r&&i>=r}],\"filter-has\":[qt,[Wt],(e,[t])=>t.value in e.properties()],\"filter-has-id\":[qt,[],e=>null!==e.id()&&void 0!==e.id()],\"filter-type-in\":[qt,[Kt(Gt)],(e,[t])=>t.value.indexOf(e.geometryType())>=0],\"filter-id-in\":[qt,[Kt(Wt)],(e,[t])=>t.value.indexOf(e.id())>=0],\"filter-in-small\":[qt,[Gt,Kt(Wt)],(e,[t,i])=>i.value.indexOf(e.properties()[t.value])>=0],\"filter-in-large\":[qt,[Gt,Kt(Wt)],(e,[t,i])=>function(e,t,i,r){for(;i<=r;){const n=i+r>>1;if(t[n]===e)return !0;t[n]>e?r=n-1:i=n+1;}return !1}(e.properties()[t.value],i.value,0,i.value.length-1)],all:{type:qt,overloads:[[[qt,qt],(e,[t,i])=>t.evaluate(e)&&i.evaluate(e)],[no(qt),(e,t)=>{for(const i of t)if(!i.evaluate(e))return !1;return !0}]]},any:{type:qt,overloads:[[[qt,qt],(e,[t,i])=>t.evaluate(e)||i.evaluate(e)],[no(qt),(e,t)=>{for(const i of t)if(i.evaluate(e))return !0;return !1}]]},\"!\":[qt,[qt],(e,[t])=>!t.evaluate(e)],\"is-supported-script\":[qt,[Gt],(e,[t])=>{const i=e.globals&&e.globals.isSupportedScript;return !i||i(t.evaluate(e))}],upcase:[Gt,[Gt],(e,[t])=>t.evaluate(e).toUpperCase()],downcase:[Gt,[Gt],(e,[t])=>t.evaluate(e).toLowerCase()],concat:[Gt,no(Wt),(e,t)=>t.map((t=>yi(t.evaluate(e)))).join(\"\")],\"resolved-locale\":[Gt,[Ht],(e,[t])=>t.evaluate(e).resolvedLocale()],random:[jt,[jt,jt,Wt],(e,t)=>{const[i,r,n]=t.map((t=>t.evaluate(e)));if(i>r)return i;if(i===r)return i;let o;if(\"string\"==typeof n)o=function(e){let t=0;if(0===e.length)return t;for(let i=0;i-1}function co(e){return \"data-driven\"===e[\"property-type\"]}function ho(e){return lo(e.expression,\"measure-light\")}function uo(e){return lo(e.expression,\"zoom\")}function po(e){return !!e.expression&&e.expression.interpolated}function fo(e){return \"object\"==typeof e&&null!==e&&!Array.isArray(e)}function mo(e){return e}function _o(e,t){const i=\"color\"===t.type,r=e.stops&&\"object\"==typeof e.stops[0][0],n=r||!(r||void 0!==e.property),o=e.type||(po(t)?\"exponential\":\"interval\");if(i&&((e=Lt({},e)).stops&&(e.stops=e.stops.map((e=>[e[0],hi.parse(e[1])]))),e.default=hi.parse(e.default?e.default:t.default)),e.colorSpace&&\"rgb\"!==e.colorSpace&&!yn[e.colorSpace])throw new Error(`Unknown color space: ${e.colorSpace}`);let s,a,l;if(\"exponential\"===o)s=vo;else if(\"interval\"===o)s=xo;else if(\"categorical\"===o){s=yo,a=Object.create(null);for(const t of e.stops)a[t[0]]=t[1];l=typeof e.stops[0][0];}else {if(\"identity\"!==o)throw new Error(`Unknown function type \"${o}\"`);s=bo;}if(r){const i={},r=[];for(let t=0;te[0])),evaluate:({zoom:i},r)=>vo({stops:n,base:e.base},t,i).evaluate(i,r)}}if(n){const i=\"exponential\"===o?{name:\"exponential\",base:void 0!==e.base?e.base:1}:null;return {kind:\"camera\",interpolationType:i,interpolationFactor:bn.interpolationFactor.bind(void 0,i),zoomStops:e.stops.map((e=>e[0])),evaluate:({zoom:i})=>s(e,t,i,a,l)}}return {kind:\"source\",evaluate(i,r){const n=r&&r.properties?r.properties[e.property]:void 0;return void 0===n?go(e.default,t.default):s(e,t,n,a,l)}}}function go(e,t,i){return void 0!==e?e:void 0!==t?t:void 0!==i?i:void 0}function yo(e,t,i,r,n){return go(typeof i===n?r[i]:void 0,e.default,t.default)}function xo(e,t,i){if(\"number\"!==Si(i))return go(e.default,t.default);const r=e.stops.length;if(1===r)return e.stops[0][1];if(i<=e.stops[0][0])return e.stops[0][1];if(i>=e.stops[r-1][0])return e.stops[r-1][1];const n=Hr(e.stops.map((e=>e[0])),i);return e.stops[n][1]}function vo(e,t,i){const r=void 0!==e.base?e.base:1;if(\"number\"!==Si(i))return go(e.default,t.default);const n=e.stops.length;if(1===n)return e.stops[0][1];if(i<=e.stops[0][0])return e.stops[0][1];if(i>=e.stops[n-1][0])return e.stops[n-1][1];const o=Hr(e.stops.map((e=>e[0])),i),s=function(e,t,i,r){const n=r-i,o=e-i;return 0===n?0:1===t?o/n:(Math.pow(t,o)-1)/(Math.pow(t,n)-1)}(i,r,e.stops[o][0],e.stops[o+1][0]),a=e.stops[o][1],l=e.stops[o+1][1];let c=Qr[t.type]||mo;if(e.colorSpace&&\"rgb\"!==e.colorSpace){const t=yn[e.colorSpace];c=(e,i)=>t.reverse(t.interpolate(t.forward(e),t.forward(i),s));}return \"function\"==typeof a.evaluate?{evaluate(...e){const t=a.evaluate.apply(void 0,e),i=l.evaluate.apply(void 0,e);if(void 0!==t&&void 0!==i)return c(t,i,s)}}:c(a,l,s)}function bo(e,t,i){return \"color\"===t.type?i=hi.parse(i):\"formatted\"===t.type?i=pi.fromString(i.toString()):\"resolvedImage\"===t.type?i=fi.fromString(i.toString()):Si(i)===t.type||\"enum\"===t.type&&t.values[i]||(i=void 0),go(i,e.default,t.default)}class wo{constructor(e,t,i){this.expression=e,this._warningHistory={},this._evaluator=new Di(i),this._defaultValue=t?function(e){return \"color\"===e.type&&(fo(e.default)||Array.isArray(e.default))?new hi(0,0,0,0):\"color\"===e.type?hi.parse(e.default)||null:void 0===e.default?null:e.default}(t):null,this._enumValues=t&&\"enum\"===t.type?t.values:null;}evaluateWithoutErrorHandling(e,t,i,r,n,o,s,a){return this._evaluator.globals=e,this._evaluator.feature=t,this._evaluator.featureState=i,this._evaluator.canonical=r||null,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=o,this._evaluator.featureTileCoord=s||null,this._evaluator.featureDistanceData=a||null,this.expression.evaluate(this._evaluator)}evaluate(e,t,i,r,n,o,s,a){this._evaluator.globals=e,this._evaluator.feature=t||null,this._evaluator.featureState=i||null,this._evaluator.canonical=r||null,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=o||null,this._evaluator.featureTileCoord=s||null,this._evaluator.featureDistanceData=a||null;try{const e=this.expression.evaluate(this._evaluator);if(null==e||\"number\"==typeof e&&e!=e)return this._defaultValue;if(this._enumValues&&!(e in this._enumValues))throw new bi(`Expected value to be one of ${Object.keys(this._enumValues).map((e=>JSON.stringify(e))).join(\", \")}, but found ${JSON.stringify(e)} instead.`);return e}catch(e){return this._warningHistory[e.message]||(this._warningHistory[e.message]=!0,\"undefined\"!=typeof console&&console.warn(e.message)),this._defaultValue}}}function To(e){return Array.isArray(e)&&e.length>0&&\"string\"==typeof e[0]&&e[0]in oo}function Eo(e,t,i){const r=new $r(oo,[],t?function(e){const t={color:Zt,string:Gt,number:jt,enum:Gt,boolean:qt,formatted:Xt,resolvedImage:Yt};return \"array\"===e.type?Kt(t[e.value]||Wt,e.length):t[e.type]}(t):void 0,void 0,void 0,i),n=r.parse(e,void 0,void 0,void 0,t&&\"string\"===t.type?{typeAnnotation:\"coerce\"}:void 0);return n?so(new wo(n,t,i)):ao(r.errors)}class Mo{constructor(e,t,i){this.kind=e,this._styleExpression=t,this.isLightConstant=i,this.isStateDependent=\"constant\"!==e&&!Ur(t.expression),this.isConfigDependent=!Vr(t.expression);}evaluateWithoutErrorHandling(e,t,i,r,n,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,i,r,n,o)}evaluate(e,t,i,r,n,o){return this._styleExpression.evaluate(e,t,i,r,n,o)}}class Ao{constructor(e,t,i,r,n){this.kind=e,this.zoomStops=i,this._styleExpression=t,this.isStateDependent=\"camera\"!==e&&!Ur(t.expression),this.isLightConstant=n,this.isConfigDependent=!Vr(t.expression),this.interpolationType=r;}evaluateWithoutErrorHandling(e,t,i,r,n,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,i,r,n,o)}evaluate(e,t,i,r,n,o){return this._styleExpression.evaluate(e,t,i,r,n,o)}interpolationFactor(e,t,i){return this.interpolationType?bn.interpolationFactor(this.interpolationType,e,t,i):0}}function So(e,t,i){if(\"error\"===(e=Eo(e,t,i)).result)return e;const r=e.value.expression,n=Nr(r);if(!n&&!co(t))return ao([new Ft(\"\",\"data expressions not supported\")]);const o=jr(r,[\"zoom\",\"pitch\",\"distance-from-center\"]);if(!o&&!uo(t))return ao([new Ft(\"\",\"zoom expressions not supported\")]);const s=jr(r,[\"measure-light\"]);if(!s&&!ho(t))return ao([new Ft(\"\",\"measure-light expression not supported\")]);const a=t.expression&&t.expression.relaxZoomRestriction,l=Co(r);return l||o||a?l instanceof Ft?ao([l]):l instanceof bn&&!po(t)?ao([new Ft(\"\",'\"interpolate\" expressions cannot be used with this property')]):so(l?new Ao(n?\"camera\":\"composite\",e.value,l.labels,l instanceof bn?l.interpolation:void 0,s):new Mo(n?\"constant\":\"source\",e.value,s)):ao([new Ft(\"\",'\"zoom\" expression may only be used as input to a top-level \"step\" or \"interpolate\" expression, or in the properties of atmosphere.')])}class Io{constructor(e,t){this._parameters=e,this._specification=t,Lt(this,_o(this._parameters,this._specification));}static deserialize(e){return new Io(e._parameters,e._specification)}static serialize(e){return {_parameters:e._parameters,_specification:e._specification}}}function Co(e){let t=null;if(e instanceof Mn)t=Co(e.result);else if(e instanceof Tn){for(const i of e.args)if(t=Co(i),t)break}else (e instanceof Yr||e instanceof bn)&&e.input instanceof ki&&\"zoom\"===e.input.name&&(t=e);return t instanceof Ft||e.eachChild((e=>{const i=Co(e);i instanceof Ft?t=i:t&&i&&t!==i&&(t=new Ft(\"\",'Only one zoom-based \"step\" or \"interpolate\" subexpression may be used in an expression.'));})),t}function zo(e){const t=e.key,i=e.value,r=e.valueSpec||{},n=e.objectElementValidators||{},o=e.style,s=e.styleSpec;let a=[];const l=Si(i);if(\"object\"!==l)return [new Dt(t,i,`object expected, ${l} found`)];for(const e in i){const l=e.split(\".\")[0];let c;n[l]?c=n[l]:r[l]?c=ds:n[\"*\"]?c=n[\"*\"]:r[\"*\"]&&(c=ds),c?a=a.concat(c({key:(t?`${t}.`:t)+e,value:i[e],valueSpec:r[l]||r[\"*\"],style:o,styleSpec:s,object:i,objectKey:e},i)):a.push(new Rt(t,i[e],`unknown property \"${e}\"`));}for(const e in r)n[e]||r[e].required&&void 0===r[e].default&&void 0===i[e]&&a.push(new Dt(t,i,`missing required property \"${e}\"`));return a}function Po(e){const t=e.value,i=e.valueSpec,r=e.style,n=e.styleSpec,o=e.key,s=e.arrayElementValidator||ds;if(\"array\"!==Si(t))return [new Dt(o,t,`array expected, ${Si(t)} found`)];if(i.length&&t.length!==i.length)return [new Dt(o,t,`array length ${i.length} expected, length ${t.length} found`)];if(i[\"min-length\"]&&t.lengthn)return [new Dt(t,i,`${i} is greater than the maximum value ${n}`)]}return []}function Ro(e){const t=e.valueSpec,i=kt(e.value.type);let r,n,o,s={};const a=\"categorical\"!==i&&void 0===e.value.property,l=!a,c=\"array\"===Si(e.value.stops)&&\"array\"===Si(e.value.stops[0])&&\"object\"===Si(e.value.stops[0][0]),h=zo({key:e.key,value:e.value,valueSpec:e.styleSpec.function,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{stops:function(e){if(\"identity\"===i)return [new Dt(e.key,e.value,'identity function may not have a \"stops\" property')];let t=[];const r=e.value;return t=t.concat(Po({key:e.key,value:r,valueSpec:e.valueSpec,style:e.style,styleSpec:e.styleSpec,arrayElementValidator:u})),\"array\"===Si(r)&&0===r.length&&t.push(new Dt(e.key,r,\"array must have at least one stop\")),t},default:function(e){return ds({key:e.key,value:e.value,valueSpec:t,style:e.style,styleSpec:e.styleSpec})}}});return \"identity\"===i&&a&&h.push(new Dt(e.key,e.value,'missing required property \"property\"')),\"identity\"===i||e.value.stops||h.push(new Dt(e.key,e.value,'missing required property \"stops\"')),\"exponential\"===i&&e.valueSpec.expression&&!po(e.valueSpec)&&h.push(new Dt(e.key,e.value,\"exponential functions not supported\")),e.styleSpec.$version>=8&&(l&&!co(e.valueSpec)?h.push(new Dt(e.key,e.value,\"property functions not supported\")):a&&!uo(e.valueSpec)&&h.push(new Dt(e.key,e.value,\"zoom functions not supported\"))),\"categorical\"!==i&&!c||void 0!==e.value.property||h.push(new Dt(e.key,e.value,'\"property\" property is required')),h;function u(e){let i=[];const r=e.value,a=e.key;if(\"array\"!==Si(r))return [new Dt(a,r,`array expected, ${Si(r)} found`)];if(2!==r.length)return [new Dt(a,r,`array length 2 expected, length ${r.length} found`)];if(c){if(\"object\"!==Si(r[0]))return [new Dt(a,r,`object expected, ${Si(r[0])} found`)];if(void 0===r[0].zoom)return [new Dt(a,r,\"object stop key must have zoom\")];if(void 0===r[0].value)return [new Dt(a,r,\"object stop key must have value\")];const t=kt(r[0].zoom);if(\"number\"!=typeof t)return [new Dt(a,r[0].zoom,\"stop zoom values must be numbers\")];if(o&&o>t)return [new Dt(a,r[0].zoom,\"stop zoom values must appear in ascending order\")];t!==o&&(o=t,n=void 0,s={}),i=i.concat(zo({key:`${a}[0]`,value:r[0],valueSpec:{zoom:{}},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{zoom:Do,value:d}}));}else i=i.concat(d({key:`${a}[0]`,value:r[0],valueSpec:{},style:e.style,styleSpec:e.styleSpec},r));return To(Ot(r[1]))?i.concat([new Dt(`${a}[1]`,r[1],\"expressions are not allowed in function stops.\")]):i.concat(ds({key:`${a}[1]`,value:r[1],valueSpec:t,style:e.style,styleSpec:e.styleSpec}))}function d(e,o){const a=Si(e.value),l=kt(e.value),c=null!==e.value?e.value:o;if(r){if(a!==r)return [new Dt(e.key,c,`${a} stop domain type must match previous stop domain type ${r}`)]}else r=a;if(\"number\"!==a&&\"string\"!==a&&\"boolean\"!==a&&\"number\"!=typeof l&&\"string\"!=typeof l&&\"boolean\"!=typeof l)return [new Dt(e.key,c,\"stop domain value must be a number, string, or boolean\")];if(\"number\"!==a&&\"categorical\"!==i){let r=`number expected, ${a} found`;return co(t)&&void 0===i&&(r+='\\nIf you intended to use a categorical function, specify `\"type\": \"categorical\"`.'),[new Dt(e.key,c,r)]}return \"categorical\"!==i||\"number\"!==a||\"number\"==typeof l&&isFinite(l)&&Math.floor(l)===l?\"categorical\"!==i&&\"number\"===a&&\"number\"==typeof l&&\"number\"==typeof n&&void 0!==n&&lnew Dt(`${e.key}${t.key}`,e.value,t.message)));const i=t.value.expression||t.value._styleExpression.expression;if(\"property\"===e.expressionContext&&\"text-font\"===e.propertyKey&&!i.outputDefined())return [new Dt(e.key,e.value,`Invalid data expression for \"${e.propertyKey}\". Output values must be contained as literals within the expression.`)];if(\"property\"===e.expressionContext&&\"layout\"===e.propertyType&&!Ur(i))return [new Dt(e.key,e.value,'\"feature-state\" data expressions are not supported with layout properties.')];if(\"filter\"===e.expressionContext)return ko(i,e);if(e.expressionContext&&0===e.expressionContext.indexOf(\"cluster\")){if(!jr(i,[\"zoom\",\"feature-state\"]))return [new Dt(e.key,e.value,'\"zoom\" and \"feature-state\" expressions are not supported with cluster properties.')];if(\"cluster-initial\"===e.expressionContext&&!Nr(i))return [new Dt(e.key,e.value,\"Feature data expressions are not supported with initial expression part of cluster properties.\")]}return []}function ko(e,t){const i=new Set([\"zoom\",\"feature-state\",\"pitch\",\"distance-from-center\"]);if(t.valueSpec&&t.valueSpec.expression)for(const e of t.valueSpec.expression.parameters)i.delete(e);if(0===i.size)return [];const r=[];return e instanceof ki&&i.has(e.name)?[new Dt(t.key,t.value,`[\"${e.name}\"] expression is not supported in a filter for a ${t.object.type} layer with id: ${t.object.id}`)]:(e.eachChild((e=>{r.push(...ko(e,t));})),r)}function Oo(e){const t=e.key,i=e.value,r=e.valueSpec,n=[];return Array.isArray(r.values)?-1===r.values.indexOf(kt(i))&&n.push(new Dt(t,i,`expected one of [${r.values.join(\", \")}], ${JSON.stringify(i)} found`)):-1===Object.keys(r.values).indexOf(kt(i))&&n.push(new Dt(t,i,`expected one of [${Object.keys(r.values).join(\", \")}], ${JSON.stringify(i)} found`)),n}function Bo(e){if(!0===e||!1===e)return !0;if(!Array.isArray(e)||0===e.length)return !1;switch(e[0]){case\"has\":return e.length>=2&&\"$id\"!==e[1]&&\"$type\"!==e[1];case\"in\":return e.length>=3&&(\"string\"!=typeof e[1]||Array.isArray(e[2]));case\"!in\":case\"!has\":case\"none\":return !1;case\"==\":case\"!=\":case\">\":case\">=\":case\"<\":case\"<=\":return 3!==e.length||Array.isArray(e[1])||Array.isArray(e[2]);case\"any\":case\"all\":for(const t of e.slice(1))if(!Bo(t)&&\"boolean\"!=typeof t)return !1;return !0;default:return !0}}function Fo(e,t=\"fill\"){if(null==e)return {filter:()=>!0,needGeometry:!1,needFeature:!1};Bo(e)||(e=Zo(e));const i=e;let r=!0;try{r=function(e){if(!Vo(e))return e;let t=Ot(e);return Uo(t),t=No(t),t}(i);}catch(e){console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate.\\nThis is most likely a bug, please report this via https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.md\\nand paste the contents of this message in the report.\\nThank you!\\nFilter Expression:\\n${JSON.stringify(i,null,2)}\\n `);}const n=Pt[`filter_${t}`],o=Eo(r,n);let s=null;if(\"error\"===o.result)throw new Error(o.value.map((e=>`${e.key}: ${e.message}`)).join(\", \"));s=(e,t,i)=>o.value.evaluate(e,t,{},i);let a=null,l=null;if(r!==i){const e=Eo(i,n);if(\"error\"===e.result)throw new Error(e.value.map((e=>`${e.key}: ${e.message}`)).join(\", \"));a=(t,i,r,n,o)=>e.value.evaluate(t,i,{},r,void 0,void 0,n,o),l=!Nr(e.value.expression);}return {filter:s,dynamicFilter:a||void 0,needGeometry:qo(r),needFeature:!!l}}function No(e){if(!Array.isArray(e))return e;const t=function(e){if(jo.has(e[0]))for(let t=1;tNo(e)))}function Uo(e){let t=!1;const i=[];if(\"case\"===e[0]){for(let r=1;r\",\">=\",\"<\",\"<=\",\"to-boolean\"]);function Go(e,t){return et?1:0}function qo(e){if(!Array.isArray(e))return !1;if(\"within\"===e[0]||\"distance\"===e[0])return !0;for(let t=1;t\"===t||\"<=\"===t||\">=\"===t?$o(e[1],e[2],t):\"any\"===t?(i=e.slice(1),[\"any\"].concat(i.map(Zo))):\"all\"===t?[\"all\"].concat(e.slice(1).map(Zo)):\"none\"===t?[\"all\"].concat(e.slice(1).map(Zo).map(Xo)):\"in\"===t?Wo(e[1],e.slice(2)):\"!in\"===t?Xo(Wo(e[1],e.slice(2))):\"has\"===t?Ho(e[1]):\"!has\"!==t||Xo(Ho(e[1]));var i;}function $o(e,t,i){switch(e){case\"$type\":return [`filter-type-${i}`,t];case\"$id\":return [`filter-id-${i}`,t];default:return [`filter-${i}`,e,t]}}function Wo(e,t){if(0===t.length)return !1;switch(e){case\"$type\":return [\"filter-type-in\",[\"literal\",t]];case\"$id\":return [\"filter-id-in\",[\"literal\",t]];default:return t.length>200&&!t.some((e=>typeof e!=typeof t[0]))?[\"filter-in-large\",e,[\"literal\",t.sort(Go)]]:[\"filter-in-small\",e,[\"literal\",t]]}}function Ho(e){switch(e){case\"$type\":return !0;case\"$id\":return [\"filter-has-id\"];default:return [\"filter-has\",e]}}function Xo(e){return [\"!\",e]}function Yo(e){return Bo(Ot(e.value))?Lo(Lt({},e,{expressionContext:\"filter\",valueSpec:e.styleSpec[`filter_${e.layerType||\"fill\"}`]})):Ko(e)}function Ko(e){const t=e.value,i=e.key;if(\"array\"!==Si(t))return [new Dt(i,t,`array expected, ${Si(t)} found`)];const r=e.styleSpec;let n,o=[];if(t.length<1)return [new Dt(i,t,\"filter array must have at least 1 element\")];switch(o=o.concat(Oo({key:`${i}[0]`,value:t[0],valueSpec:r.filter_operator,style:e.style,styleSpec:e.styleSpec})),kt(t[0])){case\"<\":case\"<=\":case\">\":case\">=\":t.length>=2&&\"$type\"===kt(t[1])&&o.push(new Dt(i,t,`\"$type\" cannot be use with operator \"${t[0]}\"`));case\"==\":case\"!=\":3!==t.length&&o.push(new Dt(i,t,`filter array for operator \"${t[0]}\" must have 3 elements`));case\"in\":case\"!in\":t.length>=2&&(n=Si(t[1]),\"string\"!==n&&o.push(new Dt(`${i}[1]`,t[1],`string expected, ${n} found`)));for(let s=2;s{e in i&&t.push(new Dt(r,i[e],`\"${e}\" is prohibited for ref layers`));})),n.layers.forEach((t=>{kt(t.id)===a&&(e=t);})),e?e.ref?t.push(new Dt(r,i.ref,\"ref cannot reference another ref layer\")):s=kt(e.type):\"string\"==typeof a&&t.push(new Dt(r,i.ref,`ref layer \"${a}\" not found`));}else if(\"background\"!==s&&\"sky\"!==s&&\"slot\"!==s)if(i.source){const e=n.sources&&n.sources[i.source],o=e&&kt(e.type);e?\"vector\"===o&&\"raster\"===s?t.push(new Dt(r,i.source,`layer \"${i.id}\" requires a raster source`)):\"raster\"===o&&\"raster\"!==s?t.push(new Dt(r,i.source,`layer \"${i.id}\" requires a vector source`)):\"vector\"!==o||i[\"source-layer\"]?\"raster-dem\"===o&&\"hillshade\"!==s?t.push(new Dt(r,i.source,\"raster-dem source can only be used with layer type 'hillshade'.\")):\"line\"!==s||!i.paint||!i.paint[\"line-gradient\"]&&!i.paint[\"line-trim-offset\"]||\"geojson\"===o&&e.lineMetrics||t.push(new Dt(r,i,`layer \"${i.id}\" specifies a line-gradient, which requires a GeoJSON source with \\`lineMetrics\\` enabled.`)):t.push(new Dt(r,i,`layer \"${i.id}\" must specify a \"source-layer\"`)):t.push(new Dt(r,i.source,`source \"${i.source}\" not found`));}else t.push(new Dt(r,i,'missing required property \"source\"'));return t=t.concat(zo({key:r,value:i,valueSpec:o.layer,style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":()=>[],type:()=>ds({key:`${r}.type`,value:i.type,valueSpec:o.layer.type,style:e.style,styleSpec:e.styleSpec,object:i,objectKey:\"type\"}),filter:e=>Yo(Lt({layerType:s},e)),layout:e=>zo({layer:i,key:e.key,value:e.value,valueSpec:{},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":e=>es(Lt({layerType:s},e))}}),paint:e=>zo({layer:i,key:e.key,value:e.value,valueSpec:{},style:e.style,styleSpec:e.styleSpec,objectElementValidators:{\"*\":e=>Qo(Lt({layerType:s,layer:i},e))}})}})),t}function is(e){const t=e.value,i=e.key,r=Si(t);return \"string\"!==r?[new Dt(i,t,`string expected, ${r} found`)]:[]}const rs={promoteId:function({key:e,value:t}){if(\"string\"===Si(t))return is({key:e,value:t});{const i=[];for(const r in t)i.push(...is({key:`${e}.${r}`,value:t[r]}));return i}}};function ns(e){const t=e.value,i=e.key,r=e.styleSpec,n=e.style;if(!t.type)return [new Dt(i,t,'\"type\" is required')];const o=kt(t.type);let s=[];switch([\"vector\",\"raster\",\"raster-dem\"].includes(o)&&(t.url||t.tiles||s.push(new Dt(i,t,'Either \"url\" or \"tiles\" is required.'))),o){case\"vector\":case\"raster\":case\"raster-dem\":return s=s.concat(zo({key:i,value:t,valueSpec:r[`source_${o.replace(\"-\",\"_\")}`],style:e.style,styleSpec:r,objectElementValidators:rs})),s;case\"geojson\":if(s=zo({key:i,value:t,valueSpec:r.source_geojson,style:n,styleSpec:r,objectElementValidators:rs}),t.cluster)for(const e in t.clusterProperties){const[r,n]=t.clusterProperties[e],o=\"string\"==typeof r?[r,[\"accumulated\"],[\"get\",e]]:r;s.push(...Lo({key:`${i}.${e}.map`,value:n,expressionContext:\"cluster-map\"})),s.push(...Lo({key:`${i}.${e}.reduce`,value:o,expressionContext:\"cluster-reduce\"}));}return s;case\"video\":return zo({key:i,value:t,valueSpec:r.source_video,style:n,styleSpec:r});case\"image\":return zo({key:i,value:t,valueSpec:r.source_image,style:n,styleSpec:r});case\"canvas\":return [new Dt(i,null,\"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.\",\"source.canvas\")];default:return Oo({key:`${i}.type`,value:t.type,valueSpec:{values:os(r)},style:n,styleSpec:r})}}function os(e){return e.source.reduce(((t,i)=>{const r=e[i];return \"enum\"===r.type.type&&(t=t.concat(Object.keys(r.type.values))),t}),[])}function ss(e){const t=e.value;let i=[];if(!t)return i;const r=Si(t);return \"string\"!==r?(i=i.concat([new Dt(e.key,t,`string expected, \"${r}\" found`)]),i):(function(e){const t=-1===e.indexOf(\"://\");try{return new URL(e,t?\"http://example.com\":void 0),!0}catch(e){return !1}}(t)||(i=i.concat([new Dt(e.key,t,`invalid url \"${t}\"`)])),i)}function as(e){const t=e.value,i=e.styleSpec,r=i.light,n=e.style;let o=[];const s=Si(t);if(void 0===t)return o;if(\"object\"!==s)return o=o.concat([new Dt(\"light\",t,`object expected, ${s} found`)]),o;for(const e in t){const s=e.match(/^(.*)-transition$/);o=o.concat(s&&r[s[1]]&&r[s[1]].transition?ds({key:e,value:t[e],valueSpec:i.transition,style:n,styleSpec:i}):r[e]?ds({key:e,value:t[e],valueSpec:r[e],style:n,styleSpec:i}):[new Dt(e,t[e],`unknown property \"${e}\"`)]);}return o}function ls(e){const t=e.value;let i=[];if(!t)return i;const r=Si(t);if(\"object\"!==r)return i=i.concat([new Dt(\"light-3d\",t,`object expected, ${r} found`)]),i;const n=e.styleSpec,o=n[\"light-3d\"],s=e.key,a=e.style,l=e.style.lights;for(const e of [\"type\",\"id\"])if(!(e in t))return i=i.concat([new Dt(\"light-3d\",t,`missing property ${e} on light`)]),i;if(t.type&&l)for(let r=0;r[],array:Po,boolean:function(e){const t=e.value,i=e.key,r=Si(t);return \"boolean\"!==r?[new Dt(i,t,`boolean expected, ${r} found`)]:[]},number:Do,color:function(e){const t=e.key,i=e.value,r=Si(i);return \"string\"!==r?[new Dt(t,i,`color expected, ${r} found`)]:null===ri(i)?[new Dt(t,i,`color expected, \"${i}\" found`)]:[]},enum:Oo,filter:Yo,function:Ro,layer:ts,object:zo,source:ns,model:ss,light:as,\"light-3d\":ls,terrain:cs,fog:hs,string:is,formatted:function(e){return 0===is(e).length?[]:Lo(e)},resolvedImage:function(e){return 0===is(e).length?[]:Lo(e)},projection:function(e){const t=e.value,i=e.styleSpec,r=i.projection,n=e.style;let o=[];const s=Si(t);if(\"object\"===s)for(const e in t)o=o.concat(ds({key:e,value:t[e],valueSpec:r[e],style:n,styleSpec:i}));else \"string\"!==s&&(o=o.concat([new Dt(\"projection\",t,`object or string expected, ${s} found`)]));return o},import:function(e){const{value:t,styleSpec:i}=e,{data:r,...n}=t;Object.defineProperty(n,\"__line__\",{value:t.__line__,enumerable:!1});let o=zo(Lt({},e,{value:n,valueSpec:i.import}));return \"\"===kt(n.id)&&o.push(new Dt(`${e.key}.id`,n,\"import id can't be an empty string\")),r&&(o=o.concat(fs(r,i,{key:`${e.key}.data`}))),o}};function ds(e,t=!1){const i=e.value,r=e.valueSpec,n=e.styleSpec;if(r.expression&&fo(kt(i)))return Ro(e);if(r.expression&&To(Ot(i)))return Lo(e);if(r.type&&us[r.type]){const i=us[r.type](e);return !0===t&&i.length>0&&\"array\"===Si(e.value)?Lo(e):i}return zo(Lt({},e,{valueSpec:r.type?n[r.type]:r}))}function ps(e){const t=e.value,i=e.key,r=is(e);return r.length||(-1===t.indexOf(\"{fontstack}\")&&r.push(new Dt(i,t,'\"glyphs\" url must include a \"{fontstack}\" token')),-1===t.indexOf(\"{range}\")&&r.push(new Dt(i,t,'\"glyphs\" url must include a \"{range}\" token'))),r}function fs(e,t=Pt,i={}){return ds({key:i.key||\"\",value:e,valueSpec:t.$root,styleSpec:t,style:e,objectElementValidators:{glyphs:ps,\"*\":()=>[]}})}function ms(e,t=Pt){return As(fs(e,t))}const _s=e=>As(ns(e)),gs=e=>As(as(e)),ys=e=>As(ls(e)),xs=e=>As(cs(e)),vs=e=>As(hs(e)),bs=e=>As(ts(e)),ws=e=>As(Yo(e)),Ts=e=>As(Qo(e)),Es=e=>As(es(e)),Ms=e=>As(ss(e));function As(e){return e.slice().sort(((e,t)=>e.line&&t.line?e.line-t.line:0))}function Ss(e,t){let i=!1;if(t&&t.length)for(const r of t)r instanceof Rt?H(r.message):(e.fire(new Ct(new Error(r.message))),i=!0);return i}var Is=zs,Cs=3;function zs(e,t,i){var r=this.cells=[];if(e instanceof ArrayBuffer){this.arrayBuffer=e;var n=new Int32Array(this.arrayBuffer);e=n[0],this.d=(t=n[1])+2*(i=n[2]);for(var o=0;o=h[p+0]&&r>=h[p+1])?(s[d]=!0,o.push(c[d])):s[d]=!1;}}},zs.prototype._forEachCell=function(e,t,i,r,n,o,s,a){for(var l=this._convertToCellCoord(e),c=this._convertToCellCoord(t),h=this._convertToCellCoord(i),u=this._convertToCellCoord(r),d=l;d<=h;d++)for(var p=c;p<=u;p++){var f=this.d*p+d;if((!a||a(this._convertFromCellCoord(d),this._convertFromCellCoord(p),this._convertFromCellCoord(d+1),this._convertFromCellCoord(p+1)))&&n.call(this,e,t,i,r,f,o,s,a))return}},zs.prototype._convertFromCellCoord=function(e){return (e-this.padding)/this.scale},zs.prototype._convertToCellCoord=function(e){return Math.max(0,Math.min(this.d-1,Math.floor(e*this.scale)+this.padding))},zs.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var e=this.cells,t=Cs+this.cells.length+1+1,i=0,r=0;r=0||(n[t]=Os(e[t],i)));e instanceof Error&&(n.message=e.message);}if(n.$name)throw new Error(\"$name property is reserved for worker serialization logic.\");return \"Object\"!==r&&(n.$name=r),n}throw new Error(\"can't serialize object of type \"+typeof e)}function Bs(e){if(null==e||\"boolean\"==typeof e||\"number\"==typeof e||\"string\"==typeof e||e instanceof Boolean||e instanceof Number||e instanceof String||e instanceof Date||e instanceof RegExp||Ls(e)||ks(e)||ArrayBuffer.isView(e)||e instanceof t.ImageData)return e;if(Array.isArray(e))return e.map(Bs);if(\"object\"==typeof e){const t=e.$name||\"Object\";if(\"Map\"===t){const t=new Map;for(const i of Object.keys(e))\"$name\"!==i&&t.set(i,Bs(e[i]));return t}const{klass:i}=Ds[t];if(!i)throw new Error(`can't deserialize unregistered class ${t}`);if(i.deserialize)return i.deserialize(e);const r=Object.create(i.prototype);for(const t of Object.keys(e))\"$name\"!==t&&(r[t]=Bs(e[t]));return r}throw new Error(\"can't deserialize object of type \"+typeof e)}const Fs={\"Latin-1 Supplement\":e=>e>=128&&e<=255,Arabic:e=>e>=1536&&e<=1791,\"Arabic Supplement\":e=>e>=1872&&e<=1919,\"Arabic Extended-A\":e=>e>=2208&&e<=2303,\"Hangul Jamo\":e=>e>=4352&&e<=4607,\"Unified Canadian Aboriginal Syllabics\":e=>e>=5120&&e<=5759,Khmer:e=>e>=6016&&e<=6143,\"Unified Canadian Aboriginal Syllabics Extended\":e=>e>=6320&&e<=6399,\"General Punctuation\":e=>e>=8192&&e<=8303,\"Letterlike Symbols\":e=>e>=8448&&e<=8527,\"Number Forms\":e=>e>=8528&&e<=8591,\"Miscellaneous Technical\":e=>e>=8960&&e<=9215,\"Control Pictures\":e=>e>=9216&&e<=9279,\"Optical Character Recognition\":e=>e>=9280&&e<=9311,\"Enclosed Alphanumerics\":e=>e>=9312&&e<=9471,\"Geometric Shapes\":e=>e>=9632&&e<=9727,\"Miscellaneous Symbols\":e=>e>=9728&&e<=9983,\"Miscellaneous Symbols and Arrows\":e=>e>=11008&&e<=11263,\"CJK Radicals Supplement\":e=>e>=11904&&e<=12031,\"Kangxi Radicals\":e=>e>=12032&&e<=12255,\"Ideographic Description Characters\":e=>e>=12272&&e<=12287,\"CJK Symbols and Punctuation\":e=>e>=12288&&e<=12351,Hiragana:e=>e>=12352&&e<=12447,Katakana:e=>e>=12448&&e<=12543,Bopomofo:e=>e>=12544&&e<=12591,\"Hangul Compatibility Jamo\":e=>e>=12592&&e<=12687,Kanbun:e=>e>=12688&&e<=12703,\"Bopomofo Extended\":e=>e>=12704&&e<=12735,\"CJK Strokes\":e=>e>=12736&&e<=12783,\"Katakana Phonetic Extensions\":e=>e>=12784&&e<=12799,\"Enclosed CJK Letters and Months\":e=>e>=12800&&e<=13055,\"CJK Compatibility\":e=>e>=13056&&e<=13311,\"CJK Unified Ideographs Extension A\":e=>e>=13312&&e<=19903,\"Yijing Hexagram Symbols\":e=>e>=19904&&e<=19967,\"CJK Unified Ideographs\":e=>e>=19968&&e<=40959,\"Yi Syllables\":e=>e>=40960&&e<=42127,\"Yi Radicals\":e=>e>=42128&&e<=42191,\"Hangul Jamo Extended-A\":e=>e>=43360&&e<=43391,\"Hangul Syllables\":e=>e>=44032&&e<=55215,\"Hangul Jamo Extended-B\":e=>e>=55216&&e<=55295,\"Private Use Area\":e=>e>=57344&&e<=63743,\"CJK Compatibility Ideographs\":e=>e>=63744&&e<=64255,\"Arabic Presentation Forms-A\":e=>e>=64336&&e<=65023,\"Vertical Forms\":e=>e>=65040&&e<=65055,\"CJK Compatibility Forms\":e=>e>=65072&&e<=65103,\"Small Form Variants\":e=>e>=65104&&e<=65135,\"Arabic Presentation Forms-B\":e=>e>=65136&&e<=65279,\"Halfwidth and Fullwidth Forms\":e=>e>=65280&&e<=65519,\"CJK Unified Ideographs Extension B\":e=>e>=131072&&e<=173791};function Ns(e){for(const t of e)if(js(t.charCodeAt(0)))return !0;return !1}function Us(e){for(const t of e)if(!Vs(t.charCodeAt(0)))return !1;return !0}function Vs(e){return !(Fs.Arabic(e)||Fs[\"Arabic Supplement\"](e)||Fs[\"Arabic Extended-A\"](e)||Fs[\"Arabic Presentation Forms-A\"](e)||Fs[\"Arabic Presentation Forms-B\"](e))}function js(e){return !(746!==e&&747!==e&&(e<4352||!(Fs[\"Bopomofo Extended\"](e)||Fs.Bopomofo(e)||Fs[\"CJK Compatibility Forms\"](e)&&!(e>=65097&&e<=65103)||Fs[\"CJK Compatibility Ideographs\"](e)||Fs[\"CJK Compatibility\"](e)||Fs[\"CJK Radicals Supplement\"](e)||Fs[\"CJK Strokes\"](e)||!(!Fs[\"CJK Symbols and Punctuation\"](e)||e>=12296&&e<=12305||e>=12308&&e<=12319||12336===e)||Fs[\"CJK Unified Ideographs Extension A\"](e)||Fs[\"CJK Unified Ideographs\"](e)||Fs[\"Enclosed CJK Letters and Months\"](e)||Fs[\"Hangul Compatibility Jamo\"](e)||Fs[\"Hangul Jamo Extended-A\"](e)||Fs[\"Hangul Jamo Extended-B\"](e)||Fs[\"Hangul Jamo\"](e)||Fs[\"Hangul Syllables\"](e)||Fs.Hiragana(e)||Fs[\"Ideographic Description Characters\"](e)||Fs.Kanbun(e)||Fs[\"Kangxi Radicals\"](e)||Fs[\"Katakana Phonetic Extensions\"](e)||Fs.Katakana(e)&&12540!==e||!(!Fs[\"Halfwidth and Fullwidth Forms\"](e)||65288===e||65289===e||65293===e||e>=65306&&e<=65310||65339===e||65341===e||65343===e||e>=65371&&e<=65503||65507===e||e>=65512&&e<=65519)||!(!Fs[\"Small Form Variants\"](e)||e>=65112&&e<=65118||e>=65123&&e<=65126)||Fs[\"Unified Canadian Aboriginal Syllabics\"](e)||Fs[\"Unified Canadian Aboriginal Syllabics Extended\"](e)||Fs[\"Vertical Forms\"](e)||Fs[\"Yijing Hexagram Symbols\"](e)||Fs[\"Yi Syllables\"](e)||Fs[\"Yi Radicals\"](e))))}function Gs(e){return !(js(e)||function(e){return !!(Fs[\"Latin-1 Supplement\"](e)&&(167===e||169===e||174===e||177===e||188===e||189===e||190===e||215===e||247===e)||Fs[\"General Punctuation\"](e)&&(8214===e||8224===e||8225===e||8240===e||8241===e||8251===e||8252===e||8258===e||8263===e||8264===e||8265===e||8273===e)||Fs[\"Letterlike Symbols\"](e)||Fs[\"Number Forms\"](e)||Fs[\"Miscellaneous Technical\"](e)&&(e>=8960&&e<=8967||e>=8972&&e<=8991||e>=8996&&e<=9e3||9003===e||e>=9085&&e<=9114||e>=9150&&e<=9165||9167===e||e>=9169&&e<=9179||e>=9186&&e<=9215)||Fs[\"Control Pictures\"](e)&&9251!==e||Fs[\"Optical Character Recognition\"](e)||Fs[\"Enclosed Alphanumerics\"](e)||Fs[\"Geometric Shapes\"](e)||Fs[\"Miscellaneous Symbols\"](e)&&!(e>=9754&&e<=9759)||Fs[\"Miscellaneous Symbols and Arrows\"](e)&&(e>=11026&&e<=11055||e>=11088&&e<=11097||e>=11192&&e<=11243)||Fs[\"CJK Symbols and Punctuation\"](e)||Fs.Katakana(e)||Fs[\"Private Use Area\"](e)||Fs[\"CJK Compatibility Forms\"](e)||Fs[\"Small Form Variants\"](e)||Fs[\"Halfwidth and Fullwidth Forms\"](e)||8734===e||8756===e||8757===e||e>=9984&&e<=10087||e>=10102&&e<=10131||65532===e||65533===e)}(e))}function qs(e){return e>=1424&&e<=2303||Fs[\"Arabic Presentation Forms-A\"](e)||Fs[\"Arabic Presentation Forms-B\"](e)}function Zs(e,t){return !(!t&&qs(e)||e>=2304&&e<=3583||e>=3840&&e<=4255||Fs.Khmer(e))}function $s(e){for(const t of e)if(qs(t.charCodeAt(0)))return !0;return !1}const Ws=\"deferred\",Hs=\"loading\",Xs=\"loaded\";let Ys=null,Ks=\"unavailable\",Js=null;const Qs=function(e){e&&\"string\"==typeof e&&e.indexOf(\"NetworkError\")>-1&&(Ks=\"error\"),Ys&&Ys(e);};function ea(){ta.fire(new It(\"pluginStateChange\",{pluginStatus:Ks,pluginURL:Js}));}const ta=new zt,ia=function(){return Ks},ra=function(){if(Ks!==Ws||!Js)throw new Error(\"rtl-text-plugin cannot be downloaded unless a pluginURL is specified\");Ks=Hs,ea(),Js&&Te({url:Js},(e=>{e?Qs(e):(Ks=Xs,ea());}));},na={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>Ks===Xs||null!=na.applyArabicShaping,isLoading:()=>Ks===Hs,setState(e){Ks=e.pluginStatus,Js=e.pluginURL;},isParsed:()=>null!=na.applyArabicShaping&&null!=na.processBidirectionalText&&null!=na.processStyledBidirectionalText,getPluginURL:()=>Js};class oa{constructor(e,t){this.zoom=e,t?(this.now=t.now,this.fadeDuration=t.fadeDuration,this.transition=t.transition,this.pitch=t.pitch,this.brightness=t.brightness):(this.now=0,this.fadeDuration=0,this.transition={},this.pitch=0,this.brightness=0);}isSupportedScript(e){return function(e,t){for(const i of e)if(!Zs(i.charCodeAt(0),t))return !1;return !0}(e,na.isLoaded())}}class sa{constructor(e,t,i){this.property=e,this.value=t,this.expression=function(e,t,i){if(fo(e))return new Io(e,t);if(To(e)||Array.isArray(e)&&e.length>0){const r=So(e,t,i);if(\"error\"===r.result)throw new Error(r.value.map((e=>`${e.key}: ${e.message}`)).join(\", \"));return r.value}{let i=e;return \"string\"==typeof e&&\"color\"===t.type&&(i=hi.parse(e)),{kind:\"constant\",isConfigDependent:!1,evaluate:()=>i}}}(void 0===t?e.specification.default:t,e.specification,i);}isDataDriven(){return \"source\"===this.expression.kind||\"composite\"===this.expression.kind}possiblyEvaluate(e,t,i){return this.property.possiblyEvaluate(this,e,t,i)}}class aa{constructor(e,t){this.property=e,this.value=new sa(e,void 0,t);}transitioned(e,t){return new ca(this.property,this.value,t,k({},e.transition,this.transition),e.now)}untransitioned(){return new ca(this.property,this.value,null,{},0)}}class la{constructor(e,t){this._properties=e,this._values=Object.create(e.defaultTransitionablePropertyValues),this._options=t,this.isConfigDependent=!1;}getValue(e){return $(this._values[e].value.value)}setValue(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new aa(this._values[e].property,this._options)),this._values[e].value=new sa(this._values[e].property,null===t?void 0:$(t),this._options),this.isConfigDependent=this.isConfigDependent||this._values[e].value.expression.isConfigDependent;}setTransitionOrValue(e,t){t&&(this._options=t);const i=this._properties.properties;if(e)for(const t in e){const r=e[t];if(G(t,\"-transition\")){const e=t.slice(0,-11);i[e]&&this.setTransition(e,r);}else i[t]&&this.setValue(t,r);}}getTransition(e){return $(this._values[e].transition)}setTransition(e,t){this._values.hasOwnProperty(e)||(this._values[e]=new aa(this._values[e].property)),this._values[e].transition=$(t)||void 0;}serialize(){const e={};for(const t of Object.keys(this._values)){const i=this.getValue(t);void 0!==i&&(e[t]=i);const r=this.getTransition(t);void 0!==r&&(e[`${t}-transition`]=r);}return e}transitioned(e,t){const i=new ha(this._properties);for(const r of Object.keys(this._values))i._values[r]=this._values[r].transitioned(e,t._values[r]);return i}untransitioned(){const e=new ha(this._properties);for(const t of Object.keys(this._values))e._values[t]=this._values[t].untransitioned();return e}}class ca{constructor(e,t,i,r,n){const o=r.delay||0,s=r.duration||0;n=n||0,this.property=e,this.value=t,this.begin=n+o,this.end=this.begin+s,e.specification.transition&&(r.delay||r.duration)&&(this.prior=i);}possiblyEvaluate(e,t,i){const r=e.now||0,n=this.value.possiblyEvaluate(e,t,i),o=this.prior;if(o){if(r>this.end)return this.prior=null,n;if(this.value.isDataDriven())return this.prior=null,n;if(r=0}function va(e,t){return t?`${e}${ya}${t}`:e}function ba(e){const t=e.indexOf(ya);return t>=0?e.slice(0,t):e}const wa=\"-transition\";class Ta extends zt{constructor(e,t,i){if(super(),this.id=e.id,this.type=e.type,this._featureFilter={filter:()=>!0,needGeometry:!1,needFeature:!1},this._filterCompiled=!1,this.isConfigDependent=!1,\"custom\"!==e.type&&(this.metadata=e.metadata,this.minzoom=e.minzoom,this.maxzoom=e.maxzoom,\"background\"!==e.type&&\"sky\"!==e.type&&\"slot\"!==e.type&&(this.source=e.source,this.sourceLayer=e[\"source-layer\"],this.filter=e.filter),this.options=i,e.slot&&(this.slot=e.slot),t.layout&&(this._unevaluatedLayout=new ua(t.layout,i),this.isConfigDependent=this.isConfigDependent||this._unevaluatedLayout.isConfigDependent),t.paint)){this._transitionablePaint=new la(t.paint,i);for(const t in e.paint)this.setPaintProperty(t,e.paint[t],{validate:!1});for(const t in e.layout)this.setLayoutProperty(t,e.layout[t],{validate:!1});this.isConfigDependent=this.isConfigDependent||this._transitionablePaint.isConfigDependent,this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new pa(t.paint);}}setScope(e){this.scope=e,this.fqid=va(this.id,e);}getLayoutProperty(e){return \"visibility\"===e?this.visibility:this._unevaluatedLayout.getValue(e)}setLayoutProperty(e,t,i={}){if(null!=t&&this._validate(Es,`layers.${this.id}.layout.${e}`,e,t,i))return;if(\"custom\"===this.type&&\"visibility\"===e)return void(this.visibility=t);const r=this._unevaluatedLayout;r._properties.properties[e]&&(r.setValue(e,t),this.isConfigDependent=this.isConfigDependent||r.isConfigDependent,\"visibility\"===e&&this.possiblyEvaluateVisibility());}possiblyEvaluateVisibility(){this.visibility=this._unevaluatedLayout._values.visibility.possiblyEvaluate({zoom:0});}getPaintProperty(e){return G(e,wa)?this._transitionablePaint.getTransition(e.slice(0,-11)):this._transitionablePaint.getValue(e)}setPaintProperty(e,t,i={}){if(null!=t&&this._validate(Ts,`layers.${this.id}.paint.${e}`,e,t,i))return !1;const r=this._transitionablePaint,n=r._properties.properties;if(G(e,wa)){const i=e.slice(0,-11);return n[i]&&r.setTransition(i,t||void 0),!1}if(!n[e])return !1;const o=r._values[e],s=o.value.isDataDriven(),a=o.value;r.setValue(e,t),this.isConfigDependent=this.isConfigDependent||r.isConfigDependent,this._handleSpecialPaintPropertyUpdate(e);const l=r._values[e].value,c=l.isDataDriven(),h=G(e,\"pattern\")||\"line-dasharray\"===e;return c||s||h||this._handleOverridablePaintPropertyUpdate(e,a,l)}_handleSpecialPaintPropertyUpdate(e){}getProgramIds(){return null}getDefaultProgramParams(e,t){return null}_handleOverridablePaintPropertyUpdate(e,t,i){return !1}isHidden(e){return !!(this.minzoom&&e=this.maxzoom)||\"none\"===this.visibility}updateTransitions(e){this._transitioningPaint=this._transitionablePaint.transitioned(e,this._transitioningPaint);}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(e,t){this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(e,void 0,t)),this.paint=this._transitioningPaint.possiblyEvaluate(e,void 0,t);}serialize(){return Z({id:this.id,type:this.type,slot:this.slot,source:this.source,\"source-layer\":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()},((e,t)=>!(void 0===e||\"layout\"===t&&!Object.keys(e).length||\"paint\"===t&&!Object.keys(e).length)))}_validate(e,t,i,r,n={}){return (!n||!1!==n.validate)&&Ss(this,e.call(ms,{key:t,layerType:this.type,objectKey:i,value:r,styleSpec:Pt,style:{glyphs:!0,sprite:!0}}))}is3D(){return !1}isSky(){return !1}isTileClipped(){return !1}hasOffscreenPass(){return !1}hasShadowPass(){return !1}canCastShadows(){return !1}hasLightBeamPass(){return !1}cutoffRange(){return 0}resize(){}isStateDependent(){for(const e in this.paint._values){const t=this.paint.get(e);if(t instanceof da&&co(t.property.specification)&&(\"source\"===t.value.kind||\"composite\"===t.value.kind)&&t.value.isStateDependent)return !0}return !1}compileFilter(){this._filterCompiled||(this._featureFilter=Fo(this.filter),this._filterCompiled=!0);}invalidateCompiledFilter(){this._filterCompiled=!1;}dynamicFilter(){return this._featureFilter.dynamicFilter}dynamicFilterNeedsFeature(){return this._featureFilter.needFeature}getLayerRenderingStats(){return this._stats}resetLayerRenderingStats(){this._stats&&(this._stats.numRenderedVerticesInShadowPass=0,this._stats.numRenderedVerticesInTransparentPass=0);}}class Ea{constructor(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSourceCaches={},this._updatedPaintProps=new Set,this._updatedImages=new Set;}isDirty(){return this._changed}setDirty(){this._changed=!0;}getUpdatedSourceCaches(){return this._updatedSourceCaches}updateSourceCache(e,t){this._updatedSourceCaches[e]=t,this.setDirty();}discardSourceCacheUpdate(e){delete this._updatedSourceCaches[e];}updateLayer(e){const t=e.scope;this._updatedLayers[t]=this._updatedLayers[t]||new Set,this._updatedLayers[t].add(e.id),this.setDirty();}removeLayer(e){const t=e.scope;this._removedLayers[t]=this._removedLayers[t]||{},this._updatedLayers[t]=this._updatedLayers[t]||new Set,this._removedLayers[t][e.id]=e,this._updatedLayers[t].delete(e.id),this._updatedPaintProps.delete(e.fqid),this.setDirty();}getRemovedLayer(e){return this._removedLayers[e.scope]?this._removedLayers[e.scope][e.id]:null}discardLayerRemoval(e){this._removedLayers[e.scope]&&delete this._removedLayers[e.scope][e.id];}getLayerUpdatesByScope(){const e={};for(const t in this._updatedLayers)e[t]=e[t]||{},e[t].updatedIds=Array.from(this._updatedLayers[t].values());for(const t in this._removedLayers)e[t]=e[t]||{},e[t].removedIds=Object.keys(this._removedLayers[t]);return e}getUpdatedPaintProperties(){return this._updatedPaintProps}updatePaintProperties(e){this._updatedPaintProps.add(e.fqid),this.setDirty();}getUpdatedImages(){return Array.from(this._updatedImages.values())}updateImage(e){this._updatedImages.add(e),this.setDirty();}resetUpdatedImages(){this._updatedImages.clear();}reset(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSourceCaches={},this._updatedPaintProps.clear(),this._updatedImages.clear();}}const Ma={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class Aa{constructor(e,t){this._structArray=e,this._pos1=t*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8;}}class Sa{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0);}static serialize(e,t){return e._trim(),t&&(e.isTransferred=!0,t.add(e.arrayBuffer)),{length:e.length,arrayBuffer:e.arrayBuffer}}static deserialize(e){const t=Object.create(this.prototype);return t.arrayBuffer=e.arrayBuffer,t.length=e.length,t.capacity=e.arrayBuffer.byteLength/t.bytesPerElement,t._refreshViews(),t}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews());}clear(){this.length=0;}resize(e){this.reserve(e),this.length=e;}reserve(e){if(e>this.capacity){this.capacity=Math.max(e,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const t=this.uint8;this._refreshViews(),t&&this.uint8.set(t);}}_refreshViews(){throw new Error(\"_refreshViews() must be implemented by each concrete StructArray layout\")}destroy(){this.int8=this.uint8=this.int16=this.uint16=this.int32=this.uint32=this.float32=null,this.arrayBuffer=null;}}function Ia(e,t=1){let i=0,r=0;return {members:e.map((e=>{const n=Ma[e.type].BYTES_PER_ELEMENT,o=i=Ca(i,Math.max(t,n)),s=e.components||1;return r=Math.max(r,n),i+=n*s,{name:e.name,type:e.type,components:s,offset:o}})),size:Ca(i,Math.max(r,t)),alignment:t}}function Ca(e,t){return Math.ceil(e/t)*t}class za extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.int16[r+0]=t,this.int16[r+1]=i,e}}za.prototype.bytesPerElement=4,Rs(za,\"StructArrayLayout2i4\");class Pa extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.int16[n+0]=t,this.int16[n+1]=i,this.int16[n+2]=r,e}}Pa.prototype.bytesPerElement=6,Rs(Pa,\"StructArrayLayout3i6\");class Da extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.int16[o+0]=t,this.int16[o+1]=i,this.int16[o+2]=r,this.int16[o+3]=n,e}}Da.prototype.bytesPerElement=8,Rs(Da,\"StructArrayLayout4i8\");class Ra extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=5*e;return this.int16[s+0]=t,this.int16[s+1]=i,this.int16[s+2]=r,this.int16[s+3]=n,this.int16[s+4]=o,e}}Ra.prototype.bytesPerElement=10,Rs(Ra,\"StructArrayLayout5i10\");class La extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=6*e,c=12*e,h=3*e;return this.int16[l+0]=t,this.int16[l+1]=i,this.uint8[c+4]=r,this.uint8[c+5]=n,this.uint8[c+6]=o,this.uint8[c+7]=s,this.float32[h+2]=a,e}}La.prototype.bytesPerElement=12,Rs(La,\"StructArrayLayout2i4ub1f12\");class ka extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.float32[o+0]=t,this.float32[o+1]=i,this.float32[o+2]=r,this.float32[o+3]=n,e}}ka.prototype.bytesPerElement=16,Rs(ka,\"StructArrayLayout4f16\");class Oa extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=6*e,a=3*e;return this.uint16[s+0]=t,this.uint16[s+1]=i,this.uint16[s+2]=r,this.uint16[s+3]=n,this.float32[a+2]=o,e}}Oa.prototype.bytesPerElement=12,Rs(Oa,\"StructArrayLayout4ui1f12\");class Ba extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=4*e;return this.uint16[o+0]=t,this.uint16[o+1]=i,this.uint16[o+2]=r,this.uint16[o+3]=n,e}}Ba.prototype.bytesPerElement=8,Rs(Ba,\"StructArrayLayout4ui8\");class Fa extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,i,r,n,o)}emplace(e,t,i,r,n,o,s){const a=6*e;return this.int16[a+0]=t,this.int16[a+1]=i,this.int16[a+2]=r,this.int16[a+3]=n,this.int16[a+4]=o,this.int16[a+5]=s,e}}Fa.prototype.bytesPerElement=12,Rs(Fa,\"StructArrayLayout6i12\");class Na extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u){const d=this.length;return this.resize(d+1),this.emplace(d,e,t,i,r,n,o,s,a,l,c,h,u)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=12*e;return this.int16[p+0]=t,this.int16[p+1]=i,this.int16[p+2]=r,this.int16[p+3]=n,this.uint16[p+4]=o,this.uint16[p+5]=s,this.uint16[p+6]=a,this.uint16[p+7]=l,this.int16[p+8]=c,this.int16[p+9]=h,this.int16[p+10]=u,this.int16[p+11]=d,e}}Na.prototype.bytesPerElement=24,Rs(Na,\"StructArrayLayout4i4ui4i24\");class Ua extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o){const s=this.length;return this.resize(s+1),this.emplace(s,e,t,i,r,n,o)}emplace(e,t,i,r,n,o,s){const a=10*e,l=5*e;return this.int16[a+0]=t,this.int16[a+1]=i,this.int16[a+2]=r,this.float32[l+2]=n,this.float32[l+3]=o,this.float32[l+4]=s,e}}Ua.prototype.bytesPerElement=20,Rs(Ua,\"StructArrayLayout3i3f20\");class Va extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint32[1*e+0]=t,e}}Va.prototype.bytesPerElement=4,Rs(Va,\"StructArrayLayout1ul4\");class ja extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.uint16[r+0]=t,this.uint16[r+1]=i,e}}ja.prototype.bytesPerElement=4,Rs(ja,\"StructArrayLayout2ui4\");class Ga extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=this.length;return this.resize(p+1),this.emplace(p,e,t,i,r,n,o,s,a,l,c,h,u,d)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p){const f=20*e,m=10*e;return this.int16[f+0]=t,this.int16[f+1]=i,this.int16[f+2]=r,this.int16[f+3]=n,this.int16[f+4]=o,this.float32[m+3]=s,this.float32[m+4]=a,this.float32[m+5]=l,this.float32[m+6]=c,this.int16[f+14]=h,this.uint32[m+8]=u,this.uint16[f+18]=d,this.uint16[f+19]=p,e}}Ga.prototype.bytesPerElement=40,Rs(Ga,\"StructArrayLayout5i4f1i1ul2ui40\");class qa extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=8*e;return this.int16[l+0]=t,this.int16[l+1]=i,this.int16[l+2]=r,this.int16[l+4]=n,this.int16[l+5]=o,this.int16[l+6]=s,this.int16[l+7]=a,e}}qa.prototype.bytesPerElement=16,Rs(qa,\"StructArrayLayout3i2i2i16\");class Za extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=4*e,a=8*e;return this.float32[s+0]=t,this.float32[s+1]=i,this.float32[s+2]=r,this.int16[a+6]=n,this.int16[a+7]=o,e}}Za.prototype.bytesPerElement=16,Rs(Za,\"StructArrayLayout2f1f2i16\");class $a extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=12*e,s=3*e;return this.uint8[o+0]=t,this.uint8[o+1]=i,this.float32[s+1]=r,this.float32[s+2]=n,e}}$a.prototype.bytesPerElement=12,Rs($a,\"StructArrayLayout2ub2f12\");class Wa extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.uint16[n+0]=t,this.uint16[n+1]=i,this.uint16[n+2]=r,e}}Wa.prototype.bytesPerElement=6,Rs(Wa,\"StructArrayLayout3ui6\");class Ha extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v){const b=this.length;return this.resize(b+1),this.emplace(b,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b){const w=30*e,T=15*e,E=60*e;return this.int16[w+0]=t,this.int16[w+1]=i,this.int16[w+2]=r,this.float32[T+2]=n,this.float32[T+3]=o,this.uint16[w+8]=s,this.uint16[w+9]=a,this.uint32[T+5]=l,this.uint32[T+6]=c,this.uint32[T+7]=h,this.uint16[w+16]=u,this.uint16[w+17]=d,this.uint16[w+18]=p,this.float32[T+10]=f,this.float32[T+11]=m,this.uint8[E+48]=_,this.uint8[E+49]=g,this.uint8[E+50]=y,this.uint32[T+13]=x,this.int16[w+28]=v,this.uint8[E+58]=b,e}}Ha.prototype.bytesPerElement=60,Rs(Ha,\"StructArrayLayout3i2f2ui3ul3ui2f3ub1ul1i1ub60\");class Xa extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,M,A,S,I,C,z,P){const D=this.length;return this.resize(D+1),this.emplace(D,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,M,A,S,I,C,z,P)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,M,A,S,I,C,z,P,D){const R=20*e,L=40*e,k=80*e;return this.float32[R+0]=t,this.float32[R+1]=i,this.int16[L+4]=r,this.int16[L+5]=n,this.int16[L+6]=o,this.int16[L+7]=s,this.int16[L+8]=a,this.int16[L+9]=l,this.int16[L+10]=c,this.int16[L+11]=h,this.int16[L+12]=u,this.uint16[L+13]=d,this.uint16[L+14]=p,this.uint16[L+15]=f,this.uint16[L+16]=m,this.uint16[L+17]=_,this.uint16[L+18]=g,this.uint16[L+19]=y,this.uint16[L+20]=x,this.uint16[L+21]=v,this.uint16[L+22]=b,this.uint16[L+23]=w,this.uint16[L+24]=T,this.uint16[L+25]=E,this.uint16[L+26]=M,this.uint16[L+27]=A,this.uint32[R+14]=S,this.float32[R+15]=I,this.float32[R+16]=C,this.float32[R+17]=z,this.float32[R+18]=P,this.uint8[k+76]=D,e}}Xa.prototype.bytesPerElement=80,Rs(Xa,\"StructArrayLayout2f9i15ui1ul4f1ub80\");class Ya extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.float32[1*e+0]=t,e}}Ya.prototype.bytesPerElement=4,Rs(Ya,\"StructArrayLayout1f4\");class Ka extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n){const o=this.length;return this.resize(o+1),this.emplace(o,e,t,i,r,n)}emplace(e,t,i,r,n,o){const s=5*e;return this.float32[s+0]=t,this.float32[s+1]=i,this.float32[s+2]=r,this.float32[s+3]=n,this.float32[s+4]=o,e}}Ka.prototype.bytesPerElement=20,Rs(Ka,\"StructArrayLayout5f20\");class Ja extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=7*e;return this.float32[l+0]=t,this.float32[l+1]=i,this.float32[l+2]=r,this.float32[l+3]=n,this.float32[l+4]=o,this.float32[l+5]=s,this.float32[l+6]=a,e}}Ja.prototype.bytesPerElement=28,Rs(Ja,\"StructArrayLayout7f28\");class Qa extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(e,t,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,e,t,i,r)}emplace(e,t,i,r,n){const o=6*e;return this.uint32[3*e+0]=t,this.uint16[o+2]=i,this.uint16[o+3]=r,this.uint16[o+4]=n,e}}Qa.prototype.bytesPerElement=12,Rs(Qa,\"StructArrayLayout1ul3ui12\");class el extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint16[1*e+0]=t,e}}el.prototype.bytesPerElement=2,Rs(el,\"StructArrayLayout1ui2\");class tl extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i){const r=this.length;return this.resize(r+1),this.emplace(r,e,t,i)}emplace(e,t,i,r){const n=3*e;return this.float32[n+0]=t,this.float32[n+1]=i,this.float32[n+2]=r,e}}tl.prototype.bytesPerElement=12,Rs(tl,\"StructArrayLayout3f12\");class il extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t){const i=this.length;return this.resize(i+1),this.emplace(i,e,t)}emplace(e,t,i){const r=2*e;return this.float32[r+0]=t,this.float32[r+1]=i,e}}il.prototype.bytesPerElement=8,Rs(il,\"StructArrayLayout2f8\");class rl extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){const _=this.length;return this.resize(_+1),this.emplace(_,e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m)}emplace(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_){const g=16*e;return this.float32[g+0]=t,this.float32[g+1]=i,this.float32[g+2]=r,this.float32[g+3]=n,this.float32[g+4]=o,this.float32[g+5]=s,this.float32[g+6]=a,this.float32[g+7]=l,this.float32[g+8]=c,this.float32[g+9]=h,this.float32[g+10]=u,this.float32[g+11]=d,this.float32[g+12]=p,this.float32[g+13]=f,this.float32[g+14]=m,this.float32[g+15]=_,e}}rl.prototype.bytesPerElement=64,Rs(rl,\"StructArrayLayout16f64\");class nl extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(e,t,i,r,n,o,s){const a=this.length;return this.resize(a+1),this.emplace(a,e,t,i,r,n,o,s)}emplace(e,t,i,r,n,o,s,a){const l=10*e,c=5*e;return this.uint16[l+0]=t,this.uint16[l+1]=i,this.uint16[l+2]=r,this.uint16[l+3]=n,this.float32[c+2]=o,this.float32[c+3]=s,this.float32[c+4]=a,e}}nl.prototype.bytesPerElement=20,Rs(nl,\"StructArrayLayout4ui3f20\");class ol extends Sa{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer);}emplaceBack(e){const t=this.length;return this.resize(t+1),this.emplace(t,e)}emplace(e,t){return this.uint8[1*e+0]=t,e}}ol.prototype.bytesPerElement=1,Rs(ol,\"StructArrayLayout1ub1\");class sl extends Aa{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.int16[this._pos2+3]}get tileAnchorY(){return this._structArray.int16[this._pos2+4]}get x1(){return this._structArray.float32[this._pos4+3]}get y1(){return this._structArray.float32[this._pos4+4]}get x2(){return this._structArray.float32[this._pos4+5]}get y2(){return this._structArray.float32[this._pos4+6]}get padding(){return this._structArray.int16[this._pos2+14]}get featureIndex(){return this._structArray.uint32[this._pos4+8]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+18]}get bucketIndex(){return this._structArray.uint16[this._pos2+19]}}sl.prototype.size=40;class al extends Ga{get(e){return new sl(this,e)}}Rs(al,\"CollisionBoxArray\");class ll extends Aa{get projectedAnchorX(){return this._structArray.int16[this._pos2+0]}get projectedAnchorY(){return this._structArray.int16[this._pos2+1]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+2]}get tileAnchorX(){return this._structArray.float32[this._pos4+2]}get tileAnchorY(){return this._structArray.float32[this._pos4+3]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+8]}get numGlyphs(){return this._structArray.uint16[this._pos2+9]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+5]}get lineStartIndex(){return this._structArray.uint32[this._pos4+6]}get lineLength(){return this._structArray.uint32[this._pos4+7]}get segment(){return this._structArray.uint16[this._pos2+16]}get lowerSize(){return this._structArray.uint16[this._pos2+17]}get upperSize(){return this._structArray.uint16[this._pos2+18]}get lineOffsetX(){return this._structArray.float32[this._pos4+10]}get lineOffsetY(){return this._structArray.float32[this._pos4+11]}get writingMode(){return this._structArray.uint8[this._pos1+48]}get placedOrientation(){return this._structArray.uint8[this._pos1+49]}set placedOrientation(e){this._structArray.uint8[this._pos1+49]=e;}get hidden(){return this._structArray.uint8[this._pos1+50]}set hidden(e){this._structArray.uint8[this._pos1+50]=e;}get crossTileID(){return this._structArray.uint32[this._pos4+13]}set crossTileID(e){this._structArray.uint32[this._pos4+13]=e;}get associatedIconIndex(){return this._structArray.int16[this._pos2+28]}get flipState(){return this._structArray.uint8[this._pos1+58]}set flipState(e){this._structArray.uint8[this._pos1+58]=e;}}ll.prototype.size=60;class cl extends Ha{get(e){return new ll(this,e)}}Rs(cl,\"PlacedSymbolArray\");class hl extends Aa{get tileAnchorX(){return this._structArray.float32[this._pos4+0]}get tileAnchorY(){return this._structArray.float32[this._pos4+1]}get projectedAnchorX(){return this._structArray.int16[this._pos2+4]}get projectedAnchorY(){return this._structArray.int16[this._pos2+5]}get projectedAnchorZ(){return this._structArray.int16[this._pos2+6]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+7]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+8]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+9]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+10]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+11]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+12]}get key(){return this._structArray.uint16[this._pos2+13]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+14]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+15]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+16]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+17]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+18]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+19]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+20]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+21]}get featureIndex(){return this._structArray.uint16[this._pos2+22]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+23]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+24]}get numIconVertices(){return this._structArray.uint16[this._pos2+25]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+26]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+27]}get crossTileID(){return this._structArray.uint32[this._pos4+14]}set crossTileID(e){this._structArray.uint32[this._pos4+14]=e;}get textOffset0(){return this._structArray.float32[this._pos4+15]}get textOffset1(){return this._structArray.float32[this._pos4+16]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+17]}get zOffset(){return this._structArray.float32[this._pos4+18]}set zOffset(e){this._structArray.float32[this._pos4+18]=e;}get hasIconTextFit(){return this._structArray.uint8[this._pos1+76]}}hl.prototype.size=80;class ul extends Xa{get(e){return new hl(this,e)}}Rs(ul,\"SymbolInstanceArray\");class dl extends Ya{getoffsetX(e){return this.float32[1*e+0]}}Rs(dl,\"GlyphOffsetArray\");class pl extends za{getx(e){return this.int16[2*e+0]}gety(e){return this.int16[2*e+1]}}Rs(pl,\"SymbolLineVertexArray\");class fl extends Aa{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}get layoutVertexArrayOffset(){return this._structArray.uint16[this._pos2+4]}}fl.prototype.size=12;class ml extends Qa{get(e){return new fl(this,e)}}Rs(ml,\"FeatureIndexArray\");class _l extends ja{geta_centroid_pos0(e){return this.uint16[2*e+0]}geta_centroid_pos1(e){return this.uint16[2*e+1]}}Rs(_l,\"FillExtrusionCentroidArray\");const gl=Ia([{name:\"a_pos\",components:2,type:\"Int16\"}],4),yl=Ia([{name:\"a_pos_3\",components:3,type:\"Int16\"},{name:\"a_pos_normal_3\",components:3,type:\"Int16\"}]);class xl{constructor(e=[]){this.segments=e;}_prepareSegment(e,t,i,r){let n=this.segments[this.segments.length-1];return e>xl.MAX_VERTEX_ARRAY_LENGTH&&H(`Max vertices per segment is ${xl.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${e}`),(!n||n.vertexLength+e>xl.MAX_VERTEX_ARRAY_LENGTH||n.sortKey!==r)&&(n={vertexOffset:t,primitiveOffset:i,vertexLength:0,primitiveLength:0},void 0!==r&&(n.sortKey=r),this.segments.push(n)),n}prepareSegment(e,t,i,r){return this._prepareSegment(e,t.length,i.length,r)}get(){return this.segments}destroy(){for(const e of this.segments)for(const t in e.vaos)e.vaos[t].destroy();}static simpleSegment(e,t,i,r){return new xl([{vertexOffset:e,primitiveOffset:t,vertexLength:i,primitiveLength:r,vaos:{},sortKey:0}])}}function vl(e,t){return 256*(e=z(Math.floor(e),0,255))+z(Math.floor(t),0,255)}xl.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Rs(xl,\"SegmentVector\");const bl=Ia([{name:\"a_pattern\",components:4,type:\"Uint16\"},{name:\"a_pixel_ratio\",components:1,type:\"Float32\"}]),wl=Ia([{name:\"a_dash\",components:4,type:\"Uint16\"}]);var Tl={exports:{}},El={exports:{}};!function(e){e.exports=function(e,t){var i,r,n,o,s,a,l,c;for(r=e.length-(i=3&e.length),n=t,s=3432918353,a=461845907,c=0;c>>16)*s&65535)<<16)&4294967295)<<15|l>>>17))*a+(((l>>>16)*a&65535)<<16)&4294967295)<<13|n>>>19))+((5*(n>>>16)&65535)<<16)&4294967295))+((58964+(o>>>16)&65535)<<16);switch(l=0,i){case 3:l^=(255&e.charCodeAt(c+2))<<16;case 2:l^=(255&e.charCodeAt(c+1))<<8;case 1:n^=l=(65535&(l=(l=(65535&(l^=255&e.charCodeAt(c)))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<15|l>>>17))*a+(((l>>>16)*a&65535)<<16)&4294967295;}return n^=e.length,n=2246822507*(65535&(n^=n>>>16))+((2246822507*(n>>>16)&65535)<<16)&4294967295,n=3266489909*(65535&(n^=n>>>13))+((3266489909*(n>>>16)&65535)<<16)&4294967295,(n^=n>>>16)>>>0};}(El);var Ml=El.exports,Al={exports:{}};!function(e){e.exports=function(e,t){for(var i,r=e.length,n=t^r,o=0;r>=4;)i=1540483477*(65535&(i=255&e.charCodeAt(o)|(255&e.charCodeAt(++o))<<8|(255&e.charCodeAt(++o))<<16|(255&e.charCodeAt(++o))<<24))+((1540483477*(i>>>16)&65535)<<16),n=1540483477*(65535&n)+((1540483477*(n>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),r-=4,++o;switch(r){case 3:n^=(255&e.charCodeAt(o+2))<<16;case 2:n^=(255&e.charCodeAt(o+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(o)))+((1540483477*(n>>>16)&65535)<<16);}return n=1540483477*(65535&(n^=n>>>13))+((1540483477*(n>>>16)&65535)<<16),(n^=n>>>15)>>>0};}(Al);var Sl=Ml,Il=Al.exports;Tl.exports=Sl,Tl.exports.murmur3=Sl,Tl.exports.murmur2=Il;var Cl=d(Tl.exports);class zl{constructor(){this.ids=[],this.uniqueIds=[],this.positions=[],this.indexed=!1;}add(e,t,i,r){this.ids.push(Pl(e)),this.positions.push(t,i,r);}eachPosition(e,t){const i=Pl(e);let r=0,n=this.ids.length-1;for(;r>1;this.ids[e]>=i?n=e:r=e+1;}for(;this.ids[r]===i;)t(this.positions[3*r],this.positions[3*r+1],this.positions[3*r+2]),r++;}static serialize(e,t){const i=new Float64Array(e.ids),r=new Uint32Array(e.positions);return Dl(i,r,0,i.length-1),t&&(t.add(i.buffer),t.add(r.buffer)),{ids:i,positions:r}}static deserialize(e){const t=new zl;let i;t.ids=e.ids,t.positions=e.positions;for(const e of t.ids)e!==i&&t.uniqueIds.push(e),i=e;return t.indexed=!0,t}}function Pl(e){const t=+e;return !isNaN(t)&&Number.MIN_SAFE_INTEGER<=t&&t<=Number.MAX_SAFE_INTEGER?t:Cl(String(e))}function Dl(e,t,i,r){for(;i>1];let o=i-1,s=r+1;for(;;){do{o++;}while(e[o]n);if(o>=s)break;Rl(e,o,s),Rl(t,3*o,3*s),Rl(t,3*o+1,3*s+1),Rl(t,3*o+2,3*s+2);}s-i`u_${e}`)),this.type=i;}setUniform(e,t,i,r,n){t.set(e,n,r.constantOr(this.value));}getBinding(e,t){return \"color\"===this.type?new Ul(e):new Ol(e)}}class Xl{constructor(e,t){this.uniformNames=t.map((e=>`u_${e}`)),this.pattern=null,this.pixelRatio=1;}setConstantPatternPositions(e){this.pixelRatio=e.pixelRatio||1,this.pattern=e.tl.concat(e.br);}setUniform(e,t,i,r,n){const o=\"u_pattern\"===n||\"u_dash\"===n?this.pattern:\"u_pixel_ratio\"===n?this.pixelRatio:null;o&&t.set(e,n,o);}getBinding(e,t){return \"u_pattern\"===t||\"u_dash\"===t?new Nl(e):new Ol(e)}}class Yl{constructor(e,t,i,r){this.expression=e,this.type=i,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:\"Float32\",components:\"color\"===i?2:1,offset:0}))),this.paintVertexArray=new r;}populatePaintArray(e,t,i,r,n,o,s){const a=this.paintVertexArray.length,l=this.expression.evaluate(new oa(0,{brightness:o}),t,{},n,r,s);this.paintVertexArray.resize(e),this._setPaintValue(a,e,l);}updatePaintArray(e,t,i,r,n,o,s){const a=this.expression.evaluate({zoom:0,brightness:s},i,r,void 0,n);this._setPaintValue(e,t,a);}_setPaintValue(e,t,i){if(\"color\"===this.type){const r=Wl(i);for(let i=e;i`u_${e}_t`)),this.type=i,this.useIntegerZoom=r,this.zoom=n,this.maxValue=0,this.paintVertexAttributes=t.map((e=>({name:`a_${e}`,type:\"Float32\",components:\"color\"===i?4:2,offset:0}))),this.paintVertexArray=new o;}populatePaintArray(e,t,i,r,n,o,s){const a=this.expression.evaluate(new oa(this.zoom,{brightness:o}),t,{},n,r,s),l=this.expression.evaluate(new oa(this.zoom+1,{brightness:o}),t,{},n,r,s),c=this.paintVertexArray.length;this.paintVertexArray.resize(e),this._setPaintValue(c,e,a,l);}updatePaintArray(e,t,i,r,n,o,s){const a=this.expression.evaluate({zoom:this.zoom,brightness:s},i,r,void 0,n),l=this.expression.evaluate({zoom:this.zoom+1,brightness:s},i,r,void 0,n);this._setPaintValue(e,t,a,l);}_setPaintValue(e,t,i,r){if(\"color\"===this.type){const n=Wl(i),o=Wl(r);for(let i=e;i!0)){this.binders={},this._buffers=[];const r=[];for(const n in e.paint._values){const o=e.paint.get(n);if(!i(n))continue;if(!(o instanceof da&&co(o.property.specification)))continue;const s=ic(n,e.type),a=o.value,l=o.property.specification.type,c=!!o.property.useIntegerZoom,h=\"line-dasharray\"===n||n.endsWith(\"pattern\"),u=\"line-dasharray\"===n&&\"constant\"!==e.layout.get(\"line-cap\").value.kind;if(\"constant\"!==a.kind||u)if(\"source\"===a.kind||u||h){const t=oc(n,l,\"source\");this.binders[n]=h?new Jl(a,s,l,t,e.id):new Yl(a,s,l,t),r.push(`/a_${n}`);}else {const e=oc(n,l,\"composite\");this.binders[n]=new Kl(a,s,l,c,t,e),r.push(`/z_${n}`);}else this.binders[n]=h?new Xl(a.value,s):new Hl(a.value,s,l),r.push(`/u_${n}`);}this.cacheKey=r.sort().join(\"\");}getMaxValue(e){const t=this.binders[e];return t instanceof Yl||t instanceof Kl?t.maxValue:0}populatePaintArrays(e,t,i,r,n,o,s){for(const a in this.binders){const l=this.binders[a];(l instanceof Yl||l instanceof Kl||l instanceof Jl)&&l.populatePaintArray(e,t,i,r,n,o,s);}}setConstantPatternPositions(e){for(const t in this.binders){const i=this.binders[t];i instanceof Xl&&i.setConstantPatternPositions(e);}}updatePaintArrays(e,t,i,r,n,o,s,a){let l=!1;const c=Object.keys(e),h=0!==c.length,u=h?c:t.uniqueIds;for(const c in this.binders){const d=this.binders[c];if((d instanceof Yl||d instanceof Kl||d instanceof Jl)&&(!0===d.expression.isStateDependent||!1===d.expression.isLightConstant)){const p=n.paint.get(c);d.expression=p.value;for(const i of u){const n=e[i.toString()];t.eachPosition(i,((e,t,i)=>{const l=r.feature(e);d.updatePaintArray(t,i,l,n,o,s,a);}));}if(!h)for(const t of i.uniqueIds){const n=e[t.toString()];i.eachPosition(t,((e,t,i)=>{const l=r.feature(e);d.updatePaintArray(t,i,l,n,o,s,a);}));}l=!0;}}return l}defines(){const e=[];for(const t in this.binders){const i=this.binders[t];(i instanceof Hl||i instanceof Xl)&&e.push(...i.uniformNames.map((e=>`#define HAS_UNIFORM_${e}`)));}return e}getBinderAttributes(){const e=[];for(const t in this.binders){const i=this.binders[t];if(i instanceof Yl||i instanceof Kl||i instanceof Jl)for(let t=0;t!0)){this.programConfigurations={};for(const r of e)this.programConfigurations[r.id]=new Ql(r,t,i);this.needsUpload=!1,this._featureMap=new zl,this._featureMapWithoutIds=new zl,this._bufferOffset=0,this._idlessCounter=0;}populatePaintArrays(e,t,i,r,n,o,s,a){for(const i in this.programConfigurations)this.programConfigurations[i].populatePaintArrays(e,t,r,n,o,s,a);void 0!==t.id?this._featureMap.add(t.id,i,this._bufferOffset,e):(this._featureMapWithoutIds.add(this._idlessCounter,i,this._bufferOffset,e),this._idlessCounter+=1),this._bufferOffset=e,this.needsUpload=!0;}updatePaintArrays(e,t,i,r,n,o){for(const s of i)this.needsUpload=this.programConfigurations[s.id].updatePaintArrays(e,this._featureMap,this._featureMapWithoutIds,t,s,r,n,o||0)||this.needsUpload;}get(e){return this.programConfigurations[e]}upload(e){if(this.needsUpload){for(const t in this.programConfigurations)this.programConfigurations[t].upload(e);this.needsUpload=!1;}}destroy(){for(const e in this.programConfigurations)this.programConfigurations[e].destroy();}}const tc={\"text-opacity\":[\"opacity\"],\"icon-opacity\":[\"opacity\"],\"text-color\":[\"fill_color\"],\"icon-color\":[\"fill_color\"],\"text-emissive-strength\":[\"emissive_strength\"],\"icon-emissive-strength\":[\"emissive_strength\"],\"text-halo-color\":[\"halo_color\"],\"icon-halo-color\":[\"halo_color\"],\"text-halo-blur\":[\"halo_blur\"],\"icon-halo-blur\":[\"halo_blur\"],\"text-halo-width\":[\"halo_width\"],\"icon-halo-width\":[\"halo_width\"],\"line-gap-width\":[\"gapwidth\"],\"line-pattern\":[\"pattern\",\"pixel_ratio\"],\"fill-pattern\":[\"pattern\",\"pixel_ratio\"],\"fill-extrusion-pattern\":[\"pattern\",\"pixel_ratio\"],\"line-dasharray\":[\"dash\"]};function ic(e,t){return tc[e]||[e.replace(`${t}-`,\"\").replace(/-/g,\"_\")]}const rc={\"line-pattern\":{source:Oa,composite:Oa},\"fill-pattern\":{source:Oa,composite:Oa},\"fill-extrusion-pattern\":{source:Oa,composite:Oa},\"line-dasharray\":{source:Ba,composite:Ba}},nc={color:{source:il,composite:ka},number:{source:Ya,composite:il}};function oc(e,t,i){const r=rc[e];return r&&r[i]||nc[t][i]}Rs(Hl,\"ConstantBinder\"),Rs(Xl,\"PatternConstantBinder\"),Rs(Yl,\"SourceExpressionBinder\"),Rs(Jl,\"PatternCompositeBinder\"),Rs(Kl,\"CompositeExpressionBinder\"),Rs(Ql,\"ProgramConfiguration\",{omit:[\"_buffers\"]}),Rs(ec,\"ProgramConfigurationSet\");class sc{constructor(e,t){e&&(t?this.setSouthWest(e).setNorthEast(t):4===e.length?this.setSouthWest([e[0],e[1]]).setNorthEast([e[2],e[3]]):this.setSouthWest(e[0]).setNorthEast(e[1]));}setNorthEast(e){return this._ne=e instanceof Wd?new Wd(e.lng,e.lat):Wd.convert(e),this}setSouthWest(e){return this._sw=e instanceof Wd?new Wd(e.lng,e.lat):Wd.convert(e),this}extend(e){const t=this._sw,i=this._ne;let r,n;if(e instanceof Wd)r=e,n=e;else {if(!(e instanceof sc))return Array.isArray(e)?4===e.length||e.every(Array.isArray)?this.extend(sc.convert(e)):this.extend(Wd.convert(e)):\"object\"==typeof e&&null!==e&&e.hasOwnProperty(\"lat\")&&(e.hasOwnProperty(\"lon\")||e.hasOwnProperty(\"lng\"))?this.extend(Wd.convert(e)):this;if(r=e._sw,n=e._ne,!r||!n)return this}return t||i?(t.lng=Math.min(r.lng,t.lng),t.lat=Math.min(r.lat,t.lat),i.lng=Math.max(n.lng,i.lng),i.lat=Math.max(n.lat,i.lat)):(this._sw=new Wd(r.lng,r.lat),this._ne=new Wd(n.lng,n.lat)),this}getCenter(){return new Wd((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new Wd(this.getWest(),this.getNorth())}getSouthEast(){return new Wd(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return [this._sw.toArray(),this._ne.toArray()]}toString(){return `LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return !(this._sw&&this._ne)}contains(e){const{lng:t,lat:i}=Wd.convert(e);let r=this._sw.lng<=t&&t<=this._ne.lng;return this._sw.lng>this._ne.lng&&(r=this._sw.lng>=t&&t>=this._ne.lng),this._sw.lat<=i&&i<=this._ne.lat&&r}static convert(e){return !e||e instanceof sc?e:new sc(e)}}var ac={},lc={};Object.defineProperty(lc,\"__esModule\",{value:!0}),lc.setMatrixArrayType=function(e){lc.ARRAY_TYPE=hc=e;},lc.toRadian=function(e){return e*dc},lc.equals=function(e,t){return Math.abs(e-t)<=cc*Math.max(1,Math.abs(e),Math.abs(t))},lc.RANDOM=lc.ARRAY_TYPE=lc.EPSILON=void 0;var cc=1e-6;lc.EPSILON=cc;var hc=\"undefined\"!=typeof Float32Array?Float32Array:Array;lc.ARRAY_TYPE=hc;var uc=Math.random;lc.RANDOM=uc;var dc=Math.PI/180;Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t];return Math.sqrt(e)});var pc={};function fc(e){return fc=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},fc(e)}Object.defineProperty(pc,\"__esModule\",{value:!0}),pc.create=function(){var e=new mc.ARRAY_TYPE(4);return mc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0),e[0]=1,e[3]=1,e},pc.clone=function(e){var t=new mc.ARRAY_TYPE(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},pc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},pc.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e},pc.fromValues=function(e,t,i,r){var n=new mc.ARRAY_TYPE(4);return n[0]=e,n[1]=t,n[2]=i,n[3]=r,n},pc.set=function(e,t,i,r,n){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e},pc.transpose=function(e,t){if(e===t){var i=t[1];e[1]=t[2],e[2]=i;}else e[0]=t[0],e[1]=t[2],e[2]=t[1],e[3]=t[3];return e},pc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i*o-n*r;return s?(e[0]=o*(s=1/s),e[1]=-r*s,e[2]=-n*s,e[3]=i*s,e):null},pc.adjoint=function(e,t){var i=t[0];return e[0]=t[3],e[1]=-t[1],e[2]=-t[2],e[3]=i,e},pc.determinant=function(e){return e[0]*e[3]-e[2]*e[1]},pc.multiply=gc,pc.rotate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+o*a,e[1]=n*l+s*a,e[2]=r*-a+o*l,e[3]=n*-a+s*l,e},pc.scale=function(e,t,i){var r=t[1],n=t[2],o=t[3],s=i[0],a=i[1];return e[0]=t[0]*s,e[1]=r*s,e[2]=n*a,e[3]=o*a,e},pc.fromRotation=function(e,t){var i=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=i,e[2]=-i,e[3]=r,e},pc.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e},pc.str=function(e){return \"mat2(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\", \"+e[3]+\")\"},pc.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3])},pc.LDU=function(e,t,i,r){return e[2]=r[2]/r[0],i[0]=r[0],i[1]=r[1],i[3]=r[3]-e[2]*i[1],[e,t,i]},pc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e},pc.subtract=yc,pc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]},pc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=t[0],a=t[1],l=t[2],c=t[3];return Math.abs(i-s)<=mc.EPSILON*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(r-a)<=mc.EPSILON*Math.max(1,Math.abs(r),Math.abs(a))&&Math.abs(n-l)<=mc.EPSILON*Math.max(1,Math.abs(n),Math.abs(l))&&Math.abs(o-c)<=mc.EPSILON*Math.max(1,Math.abs(o),Math.abs(c))},pc.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e},pc.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e},pc.sub=pc.mul=void 0;var mc=function(e,t){if(e&&e.__esModule)return e;if(null===e||\"object\"!==fc(e)&&\"function\"!=typeof e)return {default:e};var i=_c(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}(lc);function _c(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (_c=function(e){return e?i:t})(e)}function gc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[0],l=i[1],c=i[2],h=i[3];return e[0]=r*a+o*l,e[1]=n*a+s*l,e[2]=r*c+o*h,e[3]=n*c+s*h,e}function yc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e}pc.mul=gc,pc.sub=yc;var xc={};function vc(e){return vc=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},vc(e)}Object.defineProperty(xc,\"__esModule\",{value:!0}),xc.create=function(){var e=new bc.ARRAY_TYPE(6);return bc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0,e[4]=0,e[5]=0),e[0]=1,e[3]=1,e},xc.clone=function(e){var t=new bc.ARRAY_TYPE(6);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t},xc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e},xc.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e},xc.fromValues=function(e,t,i,r,n,o){var s=new bc.ARRAY_TYPE(6);return s[0]=e,s[1]=t,s[2]=i,s[3]=r,s[4]=n,s[5]=o,s},xc.set=function(e,t,i,r,n,o,s){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e},xc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=i*o-r*n;return l?(e[0]=o*(l=1/l),e[1]=-r*l,e[2]=-n*l,e[3]=i*l,e[4]=(n*a-o*s)*l,e[5]=(r*s-i*a)*l,e):null},xc.determinant=function(e){return e[0]*e[3]-e[1]*e[2]},xc.multiply=Tc,xc.rotate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=Math.sin(i),h=Math.cos(i);return e[0]=r*h+o*c,e[1]=n*h+s*c,e[2]=r*-c+o*h,e[3]=n*-c+s*h,e[4]=a,e[5]=l,e},xc.scale=function(e,t,i){var r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=i[0],c=i[1];return e[0]=t[0]*l,e[1]=r*l,e[2]=n*c,e[3]=o*c,e[4]=s,e[5]=a,e},xc.translate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=i[0],h=i[1];return e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=r*c+o*h+a,e[5]=n*c+s*h+l,e},xc.fromRotation=function(e,t){var i=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=i,e[2]=-i,e[3]=r,e[4]=0,e[5]=0,e},xc.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e[4]=0,e[5]=0,e},xc.fromTranslation=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=t[0],e[5]=t[1],e},xc.str=function(e){return \"mat2d(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\", \"+e[3]+\", \"+e[4]+\", \"+e[5]+\")\"},xc.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],1)},xc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e[4]=t[4]+i[4],e[5]=t[5]+i[5],e},xc.subtract=Ec,xc.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*i,e[5]=t[5]*i,e},xc.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e[4]=t[4]+i[4]*r,e[5]=t[5]+i[5]*r,e},xc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]},xc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=t[0],c=t[1],h=t[2],u=t[3],d=t[4],p=t[5];return Math.abs(i-l)<=bc.EPSILON*Math.max(1,Math.abs(i),Math.abs(l))&&Math.abs(r-c)<=bc.EPSILON*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(n-h)<=bc.EPSILON*Math.max(1,Math.abs(n),Math.abs(h))&&Math.abs(o-u)<=bc.EPSILON*Math.max(1,Math.abs(o),Math.abs(u))&&Math.abs(s-d)<=bc.EPSILON*Math.max(1,Math.abs(s),Math.abs(d))&&Math.abs(a-p)<=bc.EPSILON*Math.max(1,Math.abs(a),Math.abs(p))},xc.sub=xc.mul=void 0;var bc=function(e,t){if(e&&e.__esModule)return e;if(null===e||\"object\"!==vc(e)&&\"function\"!=typeof e)return {default:e};var i=wc(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}(lc);function wc(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (wc=function(e){return e?i:t})(e)}function Tc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=i[0],h=i[1],u=i[2],d=i[3],p=i[4],f=i[5];return e[0]=r*c+o*h,e[1]=n*c+s*h,e[2]=r*u+o*d,e[3]=n*u+s*d,e[4]=r*p+o*f+a,e[5]=n*p+s*f+l,e}function Ec(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e[4]=t[4]-i[4],e[5]=t[5]-i[5],e}xc.mul=Tc,xc.sub=Ec;var Mc={};function Ac(e){return Ac=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},Ac(e)}Object.defineProperty(Mc,\"__esModule\",{value:!0}),Mc.create=function(){var e=new Sc.ARRAY_TYPE(9);return Sc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e},Mc.fromMat4=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e},Mc.clone=function(e){var t=new Sc.ARRAY_TYPE(9);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t},Mc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},Mc.fromValues=function(e,t,i,r,n,o,s,a,l){var c=new Sc.ARRAY_TYPE(9);return c[0]=e,c[1]=t,c[2]=i,c[3]=r,c[4]=n,c[5]=o,c[6]=s,c[7]=a,c[8]=l,c},Mc.set=function(e,t,i,r,n,o,s,a,l,c){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e[6]=a,e[7]=l,e[8]=c,e},Mc.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},Mc.transpose=function(e,t){if(e===t){var i=t[1],r=t[2],n=t[5];e[1]=t[3],e[2]=t[6],e[3]=i,e[5]=t[7],e[6]=r,e[7]=n;}else e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8];return e},Mc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=h*s-a*c,d=-h*o+a*l,p=c*o-s*l,f=i*u+r*d+n*p;return f?(e[0]=u*(f=1/f),e[1]=(-h*r+n*c)*f,e[2]=(a*r-n*s)*f,e[3]=d*f,e[4]=(h*i-n*l)*f,e[5]=(-a*i+n*o)*f,e[6]=p*f,e[7]=(-c*i+r*l)*f,e[8]=(s*i-r*o)*f,e):null},Mc.adjoint=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8];return e[0]=s*h-a*c,e[1]=n*c-r*h,e[2]=r*a-n*s,e[3]=a*l-o*h,e[4]=i*h-n*l,e[5]=n*o-i*a,e[6]=o*c-s*l,e[7]=r*l-i*c,e[8]=i*s-r*o,e},Mc.determinant=function(e){var t=e[3],i=e[4],r=e[5],n=e[6],o=e[7],s=e[8];return e[0]*(s*i-r*o)+e[1]*(-s*t+r*n)+e[2]*(o*t-i*n)},Mc.multiply=Cc,Mc.translate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=i[0],p=i[1];return e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=a,e[5]=l,e[6]=d*r+p*s+c,e[7]=d*n+p*a+h,e[8]=d*o+p*l+u,e},Mc.rotate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=Math.sin(i),p=Math.cos(i);return e[0]=p*r+d*s,e[1]=p*n+d*a,e[2]=p*o+d*l,e[3]=p*s-d*r,e[4]=p*a-d*n,e[5]=p*l-d*o,e[6]=c,e[7]=h,e[8]=u,e},Mc.scale=function(e,t,i){var r=i[0],n=i[1];return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=n*t[3],e[4]=n*t[4],e[5]=n*t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},Mc.fromTranslation=function(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=t[0],e[7]=t[1],e[8]=1,e},Mc.fromRotation=function(e,t){var i=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=i,e[2]=0,e[3]=-i,e[4]=r,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},Mc.fromScaling=function(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=t[1],e[5]=0,e[6]=0,e[7]=0,e[8]=1,e},Mc.fromMat2d=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=0,e[3]=t[2],e[4]=t[3],e[5]=0,e[6]=t[4],e[7]=t[5],e[8]=1,e},Mc.fromQuat=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i+i,a=r+r,l=n+n,c=i*s,h=r*s,u=r*a,d=n*s,p=n*a,f=n*l,m=o*s,_=o*a,g=o*l;return e[0]=1-u-f,e[3]=h-g,e[6]=d+_,e[1]=h+g,e[4]=1-c-f,e[7]=p-m,e[2]=d-_,e[5]=p+m,e[8]=1-c-u,e},Mc.normalFromMat4=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],_=t[14],g=t[15],y=i*a-r*s,x=i*l-n*s,v=i*c-o*s,b=r*l-n*a,w=r*c-o*a,T=n*c-o*l,E=h*m-u*f,M=h*_-d*f,A=h*g-p*f,S=u*_-d*m,I=u*g-p*m,C=d*g-p*_,z=y*C-x*I+v*S+b*A-w*M+T*E;return z?(e[0]=(a*C-l*I+c*S)*(z=1/z),e[1]=(l*A-s*C-c*M)*z,e[2]=(s*I-a*A+c*E)*z,e[3]=(n*I-r*C-o*S)*z,e[4]=(i*C-n*A+o*M)*z,e[5]=(r*A-i*I-o*E)*z,e[6]=(m*T-_*w+g*b)*z,e[7]=(_*v-f*T-g*x)*z,e[8]=(f*w-m*v+g*y)*z,e):null},Mc.projection=function(e,t,i){return e[0]=2/t,e[1]=0,e[2]=0,e[3]=0,e[4]=-2/i,e[5]=0,e[6]=-1,e[7]=1,e[8]=1,e},Mc.str=function(e){return \"mat3(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\", \"+e[3]+\", \"+e[4]+\", \"+e[5]+\", \"+e[6]+\", \"+e[7]+\", \"+e[8]+\")\"},Mc.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8])},Mc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e[4]=t[4]+i[4],e[5]=t[5]+i[5],e[6]=t[6]+i[6],e[7]=t[7]+i[7],e[8]=t[8]+i[8],e},Mc.subtract=zc,Mc.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*i,e},Mc.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e[4]=t[4]+i[4]*r,e[5]=t[5]+i[5]*r,e[6]=t[6]+i[6]*r,e[7]=t[7]+i[7]*r,e[8]=t[8]+i[8]*r,e},Mc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]},Mc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=e[6],c=e[7],h=e[8],u=t[0],d=t[1],p=t[2],f=t[3],m=t[4],_=t[5],g=t[6],y=t[7],x=t[8];return Math.abs(i-u)<=Sc.EPSILON*Math.max(1,Math.abs(i),Math.abs(u))&&Math.abs(r-d)<=Sc.EPSILON*Math.max(1,Math.abs(r),Math.abs(d))&&Math.abs(n-p)<=Sc.EPSILON*Math.max(1,Math.abs(n),Math.abs(p))&&Math.abs(o-f)<=Sc.EPSILON*Math.max(1,Math.abs(o),Math.abs(f))&&Math.abs(s-m)<=Sc.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))&&Math.abs(a-_)<=Sc.EPSILON*Math.max(1,Math.abs(a),Math.abs(_))&&Math.abs(l-g)<=Sc.EPSILON*Math.max(1,Math.abs(l),Math.abs(g))&&Math.abs(c-y)<=Sc.EPSILON*Math.max(1,Math.abs(c),Math.abs(y))&&Math.abs(h-x)<=Sc.EPSILON*Math.max(1,Math.abs(h),Math.abs(x))},Mc.sub=Mc.mul=void 0;var Sc=function(e,t){if(e&&e.__esModule)return e;if(null===e||\"object\"!==Ac(e)&&\"function\"!=typeof e)return {default:e};var i=Ic(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}(lc);function Ic(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (Ic=function(e){return e?i:t})(e)}function Cc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=i[0],p=i[1],f=i[2],m=i[3],_=i[4],g=i[5],y=i[6],x=i[7],v=i[8];return e[0]=d*r+p*s+f*c,e[1]=d*n+p*a+f*h,e[2]=d*o+p*l+f*u,e[3]=m*r+_*s+g*c,e[4]=m*n+_*a+g*h,e[5]=m*o+_*l+g*u,e[6]=y*r+x*s+v*c,e[7]=y*n+x*a+v*h,e[8]=y*o+x*l+v*u,e}function zc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e[4]=t[4]-i[4],e[5]=t[5]-i[5],e[6]=t[6]-i[6],e[7]=t[7]-i[7],e[8]=t[8]-i[8],e}Mc.mul=Cc,Mc.sub=zc;var Pc={};function Dc(e){return Dc=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},Dc(e)}Object.defineProperty(Pc,\"__esModule\",{value:!0}),Pc.create=function(){var e=new Rc.ARRAY_TYPE(16);return Rc.ARRAY_TYPE!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e},Pc.clone=function(e){var t=new Rc.ARRAY_TYPE(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},Pc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},Pc.fromValues=function(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){var _=new Rc.ARRAY_TYPE(16);return _[0]=e,_[1]=t,_[2]=i,_[3]=r,_[4]=n,_[5]=o,_[6]=s,_[7]=a,_[8]=l,_[9]=c,_[10]=h,_[11]=u,_[12]=d,_[13]=p,_[14]=f,_[15]=m,_},Pc.set=function(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e[6]=a,e[7]=l,e[8]=c,e[9]=h,e[10]=u,e[11]=d,e[12]=p,e[13]=f,e[14]=m,e[15]=_,e},Pc.identity=kc,Pc.transpose=function(e,t){if(e===t){var i=t[1],r=t[2],n=t[3],o=t[6],s=t[7],a=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=i,e[6]=t[9],e[7]=t[13],e[8]=r,e[9]=o,e[11]=t[14],e[12]=n,e[13]=s,e[14]=a;}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e},Pc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],_=t[14],g=t[15],y=i*a-r*s,x=i*l-n*s,v=i*c-o*s,b=r*l-n*a,w=r*c-o*a,T=n*c-o*l,E=h*m-u*f,M=h*_-d*f,A=h*g-p*f,S=u*_-d*m,I=u*g-p*m,C=d*g-p*_,z=y*C-x*I+v*S+b*A-w*M+T*E;return z?(e[0]=(a*C-l*I+c*S)*(z=1/z),e[1]=(n*I-r*C-o*S)*z,e[2]=(m*T-_*w+g*b)*z,e[3]=(d*w-u*T-p*b)*z,e[4]=(l*A-s*C-c*M)*z,e[5]=(i*C-n*A+o*M)*z,e[6]=(_*v-f*T-g*x)*z,e[7]=(h*T-d*v+p*x)*z,e[8]=(s*I-a*A+c*E)*z,e[9]=(r*A-i*I-o*E)*z,e[10]=(f*w-m*v+g*y)*z,e[11]=(u*v-h*w-p*y)*z,e[12]=(a*M-s*S-l*E)*z,e[13]=(i*S-r*M+n*E)*z,e[14]=(m*x-f*b-_*y)*z,e[15]=(h*b-u*x+d*y)*z,e):null},Pc.adjoint=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=t[4],a=t[5],l=t[6],c=t[7],h=t[8],u=t[9],d=t[10],p=t[11],f=t[12],m=t[13],_=t[14],g=t[15];return e[0]=a*(d*g-p*_)-u*(l*g-c*_)+m*(l*p-c*d),e[1]=-(r*(d*g-p*_)-u*(n*g-o*_)+m*(n*p-o*d)),e[2]=r*(l*g-c*_)-a*(n*g-o*_)+m*(n*c-o*l),e[3]=-(r*(l*p-c*d)-a*(n*p-o*d)+u*(n*c-o*l)),e[4]=-(s*(d*g-p*_)-h*(l*g-c*_)+f*(l*p-c*d)),e[5]=i*(d*g-p*_)-h*(n*g-o*_)+f*(n*p-o*d),e[6]=-(i*(l*g-c*_)-s*(n*g-o*_)+f*(n*c-o*l)),e[7]=i*(l*p-c*d)-s*(n*p-o*d)+h*(n*c-o*l),e[8]=s*(u*g-p*m)-h*(a*g-c*m)+f*(a*p-c*u),e[9]=-(i*(u*g-p*m)-h*(r*g-o*m)+f*(r*p-o*u)),e[10]=i*(a*g-c*m)-s*(r*g-o*m)+f*(r*c-o*a),e[11]=-(i*(a*p-c*u)-s*(r*p-o*u)+h*(r*c-o*a)),e[12]=-(s*(u*_-d*m)-h*(a*_-l*m)+f*(a*d-l*u)),e[13]=i*(u*_-d*m)-h*(r*_-n*m)+f*(r*d-n*u),e[14]=-(i*(a*_-l*m)-s*(r*_-n*m)+f*(r*l-n*a)),e[15]=i*(a*d-l*u)-s*(r*d-n*u)+h*(r*l-n*a),e},Pc.determinant=function(e){var t=e[0],i=e[1],r=e[2],n=e[3],o=e[4],s=e[5],a=e[6],l=e[7],c=e[8],h=e[9],u=e[10],d=e[11],p=e[12],f=e[13],m=e[14],_=e[15];return (t*s-i*o)*(u*_-d*m)-(t*a-r*o)*(h*_-d*f)+(t*l-n*o)*(h*m-u*f)+(i*a-r*s)*(c*_-d*p)-(i*l-n*s)*(c*m-u*p)+(r*l-n*a)*(c*f-h*p)},Pc.multiply=Oc,Pc.translate=function(e,t,i){var r,n,o,s,a,l,c,h,u,d,p,f,m=i[0],_=i[1],g=i[2];return t===e?(e[12]=t[0]*m+t[4]*_+t[8]*g+t[12],e[13]=t[1]*m+t[5]*_+t[9]*g+t[13],e[14]=t[2]*m+t[6]*_+t[10]*g+t[14],e[15]=t[3]*m+t[7]*_+t[11]*g+t[15]):(n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=t[9],p=t[10],f=t[11],e[0]=r=t[0],e[1]=n,e[2]=o,e[3]=s,e[4]=a,e[5]=l,e[6]=c,e[7]=h,e[8]=u,e[9]=d,e[10]=p,e[11]=f,e[12]=r*m+a*_+u*g+t[12],e[13]=n*m+l*_+d*g+t[13],e[14]=o*m+c*_+p*g+t[14],e[15]=s*m+h*_+f*g+t[15]),e},Pc.scale=function(e,t,i){var r=i[0],n=i[1],o=i[2];return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*o,e[9]=t[9]*o,e[10]=t[10]*o,e[11]=t[11]*o,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},Pc.rotate=function(e,t,i,r){var n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,M,A,S,I=r[0],C=r[1],z=r[2],P=Math.hypot(I,C,z);return P0?(i[0]=2*(a*s+h*r+l*o-c*n)/u,i[1]=2*(l*s+h*n+c*r-a*o)/u,i[2]=2*(c*s+h*o+a*n-l*r)/u):(i[0]=2*(a*s+h*r+l*o-c*n),i[1]=2*(l*s+h*n+c*r-a*o),i[2]=2*(c*s+h*o+a*n-l*r)),Bc(e,t,i),e},Pc.getTranslation=function(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e},Pc.getScaling=Fc,Pc.getRotation=function(e,t){var i=new Rc.ARRAY_TYPE(3);Fc(i,t);var r=1/i[0],n=1/i[1],o=1/i[2],s=t[0]*r,a=t[1]*n,l=t[2]*o,c=t[4]*r,h=t[5]*n,u=t[6]*o,d=t[8]*r,p=t[9]*n,f=t[10]*o,m=s+h+f,_=0;return m>0?(_=2*Math.sqrt(m+1),e[3]=.25*_,e[0]=(u-p)/_,e[1]=(d-l)/_,e[2]=(a-c)/_):s>h&&s>f?(_=2*Math.sqrt(1+s-h-f),e[3]=(u-p)/_,e[0]=.25*_,e[1]=(a+c)/_,e[2]=(d+l)/_):h>f?(_=2*Math.sqrt(1+h-s-f),e[3]=(d-l)/_,e[0]=(a+c)/_,e[1]=.25*_,e[2]=(u+p)/_):(_=2*Math.sqrt(1+f-s-h),e[3]=(a-c)/_,e[0]=(d+l)/_,e[1]=(u+p)/_,e[2]=.25*_),e},Pc.fromRotationTranslationScale=function(e,t,i,r){var n=t[0],o=t[1],s=t[2],a=t[3],l=n+n,c=o+o,h=s+s,u=n*l,d=n*c,p=n*h,f=o*c,m=o*h,_=s*h,g=a*l,y=a*c,x=a*h,v=r[0],b=r[1],w=r[2];return e[0]=(1-(f+_))*v,e[1]=(d+x)*v,e[2]=(p-y)*v,e[3]=0,e[4]=(d-x)*b,e[5]=(1-(u+_))*b,e[6]=(m+g)*b,e[7]=0,e[8]=(p+y)*w,e[9]=(m-g)*w,e[10]=(1-(u+f))*w,e[11]=0,e[12]=i[0],e[13]=i[1],e[14]=i[2],e[15]=1,e},Pc.fromRotationTranslationScaleOrigin=function(e,t,i,r,n){var o=t[0],s=t[1],a=t[2],l=t[3],c=o+o,h=s+s,u=a+a,d=o*c,p=o*h,f=o*u,m=s*h,_=s*u,g=a*u,y=l*c,x=l*h,v=l*u,b=r[0],w=r[1],T=r[2],E=n[0],M=n[1],A=n[2],S=(1-(m+g))*b,I=(p+v)*b,C=(f-x)*b,z=(p-v)*w,P=(1-(d+g))*w,D=(_+y)*w,R=(f+x)*T,L=(_-y)*T,k=(1-(d+m))*T;return e[0]=S,e[1]=I,e[2]=C,e[3]=0,e[4]=z,e[5]=P,e[6]=D,e[7]=0,e[8]=R,e[9]=L,e[10]=k,e[11]=0,e[12]=i[0]+E-(S*E+z*M+R*A),e[13]=i[1]+M-(I*E+P*M+L*A),e[14]=i[2]+A-(C*E+D*M+k*A),e[15]=1,e},Pc.fromQuat=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i+i,a=r+r,l=n+n,c=i*s,h=r*s,u=r*a,d=n*s,p=n*a,f=n*l,m=o*s,_=o*a,g=o*l;return e[0]=1-u-f,e[1]=h+g,e[2]=d-_,e[3]=0,e[4]=h-g,e[5]=1-c-f,e[6]=p+m,e[7]=0,e[8]=d+_,e[9]=p-m,e[10]=1-c-u,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},Pc.frustum=function(e,t,i,r,n,o,s){var a=1/(i-t),l=1/(n-r),c=1/(o-s);return e[0]=2*o*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*o*l,e[6]=0,e[7]=0,e[8]=(i+t)*a,e[9]=(n+r)*l,e[10]=(s+o)*c,e[11]=-1,e[12]=0,e[13]=0,e[14]=s*o*2*c,e[15]=0,e},Pc.perspectiveNO=Nc,Pc.perspectiveZO=function(e,t,i,r,n){var o,s=1/Math.tan(t/2);return e[0]=s/i,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=n&&n!==1/0?(e[10]=n*(o=1/(r-n)),e[14]=n*r*o):(e[10]=-1,e[14]=-r),e},Pc.perspectiveFromFieldOfView=function(e,t,i,r){var n=Math.tan(t.upDegrees*Math.PI/180),o=Math.tan(t.downDegrees*Math.PI/180),s=Math.tan(t.leftDegrees*Math.PI/180),a=Math.tan(t.rightDegrees*Math.PI/180),l=2/(s+a),c=2/(n+o);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=c,e[6]=0,e[7]=0,e[8]=-(s-a)*l*.5,e[9]=(n-o)*c*.5,e[10]=r/(i-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*i/(i-r),e[15]=0,e},Pc.orthoNO=Uc,Pc.orthoZO=function(e,t,i,r,n,o,s){var a=1/(t-i),l=1/(r-n),c=1/(o-s);return e[0]=-2*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=c,e[11]=0,e[12]=(t+i)*a,e[13]=(n+r)*l,e[14]=o*c,e[15]=1,e},Pc.lookAt=function(e,t,i,r){var n,o,s,a,l,c,h,u,d,p,f=t[0],m=t[1],_=t[2],g=r[0],y=r[1],x=r[2],v=i[0],b=i[1],w=i[2];return Math.abs(f-v)0&&(h*=p=1/Math.sqrt(p),u*=p,d*=p);var f=l*d-c*u,m=c*h-a*d,_=a*u-l*h;return (p=f*f+m*m+_*_)>0&&(f*=p=1/Math.sqrt(p),m*=p,_*=p),e[0]=f,e[1]=m,e[2]=_,e[3]=0,e[4]=u*_-d*m,e[5]=d*f-h*_,e[6]=h*m-u*f,e[7]=0,e[8]=h,e[9]=u,e[10]=d,e[11]=0,e[12]=n,e[13]=o,e[14]=s,e[15]=1,e},Pc.str=function(e){return \"mat4(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\", \"+e[3]+\", \"+e[4]+\", \"+e[5]+\", \"+e[6]+\", \"+e[7]+\", \"+e[8]+\", \"+e[9]+\", \"+e[10]+\", \"+e[11]+\", \"+e[12]+\", \"+e[13]+\", \"+e[14]+\", \"+e[15]+\")\"},Pc.frob=function(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15])},Pc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e[4]=t[4]+i[4],e[5]=t[5]+i[5],e[6]=t[6]+i[6],e[7]=t[7]+i[7],e[8]=t[8]+i[8],e[9]=t[9]+i[9],e[10]=t[10]+i[10],e[11]=t[11]+i[11],e[12]=t[12]+i[12],e[13]=t[13]+i[13],e[14]=t[14]+i[14],e[15]=t[15]+i[15],e},Pc.subtract=Vc,Pc.multiplyScalar=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*i,e[9]=t[9]*i,e[10]=t[10]*i,e[11]=t[11]*i,e[12]=t[12]*i,e[13]=t[13]*i,e[14]=t[14]*i,e[15]=t[15]*i,e},Pc.multiplyScalarAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e[3]=t[3]+i[3]*r,e[4]=t[4]+i[4]*r,e[5]=t[5]+i[5]*r,e[6]=t[6]+i[6]*r,e[7]=t[7]+i[7]*r,e[8]=t[8]+i[8]*r,e[9]=t[9]+i[9]*r,e[10]=t[10]+i[10]*r,e[11]=t[11]+i[11]*r,e[12]=t[12]+i[12]*r,e[13]=t[13]+i[13]*r,e[14]=t[14]+i[14]*r,e[15]=t[15]+i[15]*r,e},Pc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]},Pc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=e[6],c=e[7],h=e[8],u=e[9],d=e[10],p=e[11],f=e[12],m=e[13],_=e[14],g=e[15],y=t[0],x=t[1],v=t[2],b=t[3],w=t[4],T=t[5],E=t[6],M=t[7],A=t[8],S=t[9],I=t[10],C=t[11],z=t[12],P=t[13],D=t[14],R=t[15];return Math.abs(i-y)<=Rc.EPSILON*Math.max(1,Math.abs(i),Math.abs(y))&&Math.abs(r-x)<=Rc.EPSILON*Math.max(1,Math.abs(r),Math.abs(x))&&Math.abs(n-v)<=Rc.EPSILON*Math.max(1,Math.abs(n),Math.abs(v))&&Math.abs(o-b)<=Rc.EPSILON*Math.max(1,Math.abs(o),Math.abs(b))&&Math.abs(s-w)<=Rc.EPSILON*Math.max(1,Math.abs(s),Math.abs(w))&&Math.abs(a-T)<=Rc.EPSILON*Math.max(1,Math.abs(a),Math.abs(T))&&Math.abs(l-E)<=Rc.EPSILON*Math.max(1,Math.abs(l),Math.abs(E))&&Math.abs(c-M)<=Rc.EPSILON*Math.max(1,Math.abs(c),Math.abs(M))&&Math.abs(h-A)<=Rc.EPSILON*Math.max(1,Math.abs(h),Math.abs(A))&&Math.abs(u-S)<=Rc.EPSILON*Math.max(1,Math.abs(u),Math.abs(S))&&Math.abs(d-I)<=Rc.EPSILON*Math.max(1,Math.abs(d),Math.abs(I))&&Math.abs(p-C)<=Rc.EPSILON*Math.max(1,Math.abs(p),Math.abs(C))&&Math.abs(f-z)<=Rc.EPSILON*Math.max(1,Math.abs(f),Math.abs(z))&&Math.abs(m-P)<=Rc.EPSILON*Math.max(1,Math.abs(m),Math.abs(P))&&Math.abs(_-D)<=Rc.EPSILON*Math.max(1,Math.abs(_),Math.abs(D))&&Math.abs(g-R)<=Rc.EPSILON*Math.max(1,Math.abs(g),Math.abs(R))},Pc.sub=Pc.mul=Pc.ortho=Pc.perspective=void 0;var Rc=function(e,t){if(e&&e.__esModule)return e;if(null===e||\"object\"!==Dc(e)&&\"function\"!=typeof e)return {default:e};var i=Lc(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}(lc);function Lc(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (Lc=function(e){return e?i:t})(e)}function kc(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Oc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=t[8],d=t[9],p=t[10],f=t[11],m=t[12],_=t[13],g=t[14],y=t[15],x=i[0],v=i[1],b=i[2],w=i[3];return e[0]=x*r+v*a+b*u+w*m,e[1]=x*n+v*l+b*d+w*_,e[2]=x*o+v*c+b*p+w*g,e[3]=x*s+v*h+b*f+w*y,e[4]=(x=i[4])*r+(v=i[5])*a+(b=i[6])*u+(w=i[7])*m,e[5]=x*n+v*l+b*d+w*_,e[6]=x*o+v*c+b*p+w*g,e[7]=x*s+v*h+b*f+w*y,e[8]=(x=i[8])*r+(v=i[9])*a+(b=i[10])*u+(w=i[11])*m,e[9]=x*n+v*l+b*d+w*_,e[10]=x*o+v*c+b*p+w*g,e[11]=x*s+v*h+b*f+w*y,e[12]=(x=i[12])*r+(v=i[13])*a+(b=i[14])*u+(w=i[15])*m,e[13]=x*n+v*l+b*d+w*_,e[14]=x*o+v*c+b*p+w*g,e[15]=x*s+v*h+b*f+w*y,e}function Bc(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=r+r,l=n+n,c=o+o,h=r*a,u=r*l,d=r*c,p=n*l,f=n*c,m=o*c,_=s*a,g=s*l,y=s*c;return e[0]=1-(p+m),e[1]=u+y,e[2]=d-g,e[3]=0,e[4]=u-y,e[5]=1-(h+m),e[6]=f+_,e[7]=0,e[8]=d+g,e[9]=f-_,e[10]=1-(h+p),e[11]=0,e[12]=i[0],e[13]=i[1],e[14]=i[2],e[15]=1,e}function Fc(e,t){var i=t[4],r=t[5],n=t[6],o=t[8],s=t[9],a=t[10];return e[0]=Math.hypot(t[0],t[1],t[2]),e[1]=Math.hypot(i,r,n),e[2]=Math.hypot(o,s,a),e}function Nc(e,t,i,r,n){var o,s=1/Math.tan(t/2);return e[0]=s/i,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=n&&n!==1/0?(e[10]=(n+r)*(o=1/(r-n)),e[14]=2*n*r*o):(e[10]=-1,e[14]=-2*r),e}function Uc(e,t,i,r,n,o,s){var a=1/(t-i),l=1/(r-n),c=1/(o-s);return e[0]=-2*a,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*c,e[11]=0,e[12]=(t+i)*a,e[13]=(n+r)*l,e[14]=(s+o)*c,e[15]=1,e}function Vc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e[4]=t[4]-i[4],e[5]=t[5]-i[5],e[6]=t[6]-i[6],e[7]=t[7]-i[7],e[8]=t[8]-i[8],e[9]=t[9]-i[9],e[10]=t[10]-i[10],e[11]=t[11]-i[11],e[12]=t[12]-i[12],e[13]=t[13]-i[13],e[14]=t[14]-i[14],e[15]=t[15]-i[15],e}Pc.perspective=Nc,Pc.ortho=Uc,Pc.mul=Oc,Pc.sub=Vc;var jc={},Gc={};function qc(e){return qc=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},qc(e)}Object.defineProperty(Gc,\"__esModule\",{value:!0}),Gc.create=Wc,Gc.clone=function(e){var t=new Zc.ARRAY_TYPE(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},Gc.length=Hc,Gc.fromValues=function(e,t,i){var r=new Zc.ARRAY_TYPE(3);return r[0]=e,r[1]=t,r[2]=i,r},Gc.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},Gc.set=function(e,t,i,r){return e[0]=t,e[1]=i,e[2]=r,e},Gc.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e},Gc.subtract=Xc,Gc.multiply=Yc,Gc.divide=Kc,Gc.ceil=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e},Gc.floor=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e},Gc.min=function(e,t,i){return e[0]=Math.min(t[0],i[0]),e[1]=Math.min(t[1],i[1]),e[2]=Math.min(t[2],i[2]),e},Gc.max=function(e,t,i){return e[0]=Math.max(t[0],i[0]),e[1]=Math.max(t[1],i[1]),e[2]=Math.max(t[2],i[2]),e},Gc.round=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e},Gc.scale=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e},Gc.scaleAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e[2]=t[2]+i[2]*r,e},Gc.distance=Jc,Gc.squaredDistance=Qc,Gc.squaredLength=eh,Gc.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e},Gc.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e},Gc.normalize=function(e,t){var i=t[0],r=t[1],n=t[2],o=i*i+r*r+n*n;return o>0&&(o=1/Math.sqrt(o)),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o,e},Gc.dot=th,Gc.cross=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[0],a=i[1],l=i[2];return e[0]=n*l-o*a,e[1]=o*s-r*l,e[2]=r*a-n*s,e},Gc.lerp=function(e,t,i,r){var n=t[0],o=t[1],s=t[2];return e[0]=n+r*(i[0]-n),e[1]=o+r*(i[1]-o),e[2]=s+r*(i[2]-s),e},Gc.hermite=function(e,t,i,r,n,o){var s=o*o,a=s*(2*o-3)+1,l=s*(o-2)+o,c=s*(o-1),h=s*(3-2*o);return e[0]=t[0]*a+i[0]*l+r[0]*c+n[0]*h,e[1]=t[1]*a+i[1]*l+r[1]*c+n[1]*h,e[2]=t[2]*a+i[2]*l+r[2]*c+n[2]*h,e},Gc.bezier=function(e,t,i,r,n,o){var s=1-o,a=s*s,l=o*o,c=a*s,h=3*o*a,u=3*l*s,d=l*o;return e[0]=t[0]*c+i[0]*h+r[0]*u+n[0]*d,e[1]=t[1]*c+i[1]*h+r[1]*u+n[1]*d,e[2]=t[2]*c+i[2]*h+r[2]*u+n[2]*d,e},Gc.random=function(e,t){t=t||1;var i=2*Zc.RANDOM()*Math.PI,r=2*Zc.RANDOM()-1,n=Math.sqrt(1-r*r)*t;return e[0]=Math.cos(i)*n,e[1]=Math.sin(i)*n,e[2]=r*t,e},Gc.transformMat4=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[3]*r+i[7]*n+i[11]*o+i[15];return e[0]=(i[0]*r+i[4]*n+i[8]*o+i[12])/(s=s||1),e[1]=(i[1]*r+i[5]*n+i[9]*o+i[13])/s,e[2]=(i[2]*r+i[6]*n+i[10]*o+i[14])/s,e},Gc.transformMat3=function(e,t,i){var r=t[0],n=t[1],o=t[2];return e[0]=r*i[0]+n*i[3]+o*i[6],e[1]=r*i[1]+n*i[4]+o*i[7],e[2]=r*i[2]+n*i[5]+o*i[8],e},Gc.transformQuat=function(e,t,i){var r=i[0],n=i[1],o=i[2],s=t[0],a=t[1],l=t[2],c=n*l-o*a,h=o*s-r*l,u=r*a-n*s,d=n*u-o*h,p=o*c-r*u,f=r*h-n*c,m=2*i[3];return h*=m,u*=m,p*=2,f*=2,e[0]=s+(c*=m)+(d*=2),e[1]=a+h+p,e[2]=l+u+f,e},Gc.rotateX=function(e,t,i,r){var n=[],o=[];return n[0]=t[0]-i[0],n[1]=t[1]-i[1],n[2]=t[2]-i[2],o[0]=n[0],o[1]=n[1]*Math.cos(r)-n[2]*Math.sin(r),o[2]=n[1]*Math.sin(r)+n[2]*Math.cos(r),e[0]=o[0]+i[0],e[1]=o[1]+i[1],e[2]=o[2]+i[2],e},Gc.rotateY=function(e,t,i,r){var n=[],o=[];return n[0]=t[0]-i[0],n[1]=t[1]-i[1],n[2]=t[2]-i[2],o[0]=n[2]*Math.sin(r)+n[0]*Math.cos(r),o[1]=n[1],o[2]=n[2]*Math.cos(r)-n[0]*Math.sin(r),e[0]=o[0]+i[0],e[1]=o[1]+i[1],e[2]=o[2]+i[2],e},Gc.rotateZ=function(e,t,i,r){var n=[],o=[];return n[0]=t[0]-i[0],n[1]=t[1]-i[1],n[2]=t[2]-i[2],o[0]=n[0]*Math.cos(r)-n[1]*Math.sin(r),o[1]=n[0]*Math.sin(r)+n[1]*Math.cos(r),o[2]=n[2],e[0]=o[0]+i[0],e[1]=o[1]+i[1],e[2]=o[2]+i[2],e},Gc.angle=function(e,t){var i=e[0],r=e[1],n=e[2],o=t[0],s=t[1],a=t[2],l=Math.sqrt(i*i+r*r+n*n)*Math.sqrt(o*o+s*s+a*a),c=l&&th(e,t)/l;return Math.acos(Math.min(Math.max(c,-1),1))},Gc.zero=function(e){return e[0]=0,e[1]=0,e[2]=0,e},Gc.str=function(e){return \"vec3(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\")\"},Gc.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]},Gc.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=t[0],s=t[1],a=t[2];return Math.abs(i-o)<=Zc.EPSILON*Math.max(1,Math.abs(i),Math.abs(o))&&Math.abs(r-s)<=Zc.EPSILON*Math.max(1,Math.abs(r),Math.abs(s))&&Math.abs(n-a)<=Zc.EPSILON*Math.max(1,Math.abs(n),Math.abs(a))},Gc.forEach=Gc.sqrLen=Gc.len=Gc.sqrDist=Gc.dist=Gc.div=Gc.mul=Gc.sub=void 0;var Zc=function(e,t){if(e&&e.__esModule)return e;if(null===e||\"object\"!==qc(e)&&\"function\"!=typeof e)return {default:e};var i=$c(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}(lc);function $c(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return ($c=function(e){return e?i:t})(e)}function Wc(){var e=new Zc.ARRAY_TYPE(3);return Zc.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function Hc(e){return Math.hypot(e[0],e[1],e[2])}function Xc(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e}function Yc(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e}function Kc(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e}function Jc(e,t){return Math.hypot(t[0]-e[0],t[1]-e[1],t[2]-e[2])}function Qc(e,t){var i=t[0]-e[0],r=t[1]-e[1],n=t[2]-e[2];return i*i+r*r+n*n}function eh(e){var t=e[0],i=e[1],r=e[2];return t*t+i*i+r*r}function th(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}Gc.sub=Xc,Gc.mul=Yc,Gc.div=Kc,Gc.dist=Jc,Gc.sqrDist=Qc,Gc.len=Hc,Gc.sqrLen=eh;var ih,rh=(ih=Wc(),function(e,t,i,r,n,o){var s,a;for(t||(t=3),i||(i=0),a=r?Math.min(r*t+i,e.length):e.length,s=i;s0&&(s=1/Math.sqrt(s)),e[0]=i*s,e[1]=r*s,e[2]=n*s,e[3]=o*s,e},nh.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]},nh.cross=function(e,t,i,r){var n=i[0]*r[1]-i[1]*r[0],o=i[0]*r[2]-i[2]*r[0],s=i[0]*r[3]-i[3]*r[0],a=i[1]*r[2]-i[2]*r[1],l=i[1]*r[3]-i[3]*r[1],c=i[2]*r[3]-i[3]*r[2],h=t[0],u=t[1],d=t[2],p=t[3];return e[0]=u*c-d*l+p*a,e[1]=-h*c+d*s-p*o,e[2]=h*l-u*s+p*n,e[3]=-h*a+u*o-d*n,e},nh.lerp=function(e,t,i,r){var n=t[0],o=t[1],s=t[2],a=t[3];return e[0]=n+r*(i[0]-n),e[1]=o+r*(i[1]-o),e[2]=s+r*(i[2]-s),e[3]=a+r*(i[3]-a),e},nh.random=function(e,t){var i,r,n,o,s,a;t=t||1;do{s=(i=2*sh.RANDOM()-1)*i+(r=2*sh.RANDOM()-1)*r;}while(s>=1);do{a=(n=2*sh.RANDOM()-1)*n+(o=2*sh.RANDOM()-1)*o;}while(a>=1);var l=Math.sqrt((1-s)/a);return e[0]=t*i,e[1]=t*r,e[2]=t*n*l,e[3]=t*o*l,e},nh.transformMat4=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3];return e[0]=i[0]*r+i[4]*n+i[8]*o+i[12]*s,e[1]=i[1]*r+i[5]*n+i[9]*o+i[13]*s,e[2]=i[2]*r+i[6]*n+i[10]*o+i[14]*s,e[3]=i[3]*r+i[7]*n+i[11]*o+i[15]*s,e},nh.transformQuat=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=i[0],a=i[1],l=i[2],c=i[3],h=c*r+a*o-l*n,u=c*n+l*r-s*o,d=c*o+s*n-a*r,p=-s*r-a*n-l*o;return e[0]=h*c+p*-s+u*-l-d*-a,e[1]=u*c+p*-a+d*-s-h*-l,e[2]=d*c+p*-l+h*-a-u*-s,e[3]=t[3],e},nh.zero=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e},nh.str=function(e){return \"vec4(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\", \"+e[3]+\")\"},nh.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]},nh.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=t[0],a=t[1],l=t[2],c=t[3];return Math.abs(i-s)<=sh.EPSILON*Math.max(1,Math.abs(i),Math.abs(s))&&Math.abs(r-a)<=sh.EPSILON*Math.max(1,Math.abs(r),Math.abs(a))&&Math.abs(n-l)<=sh.EPSILON*Math.max(1,Math.abs(n),Math.abs(l))&&Math.abs(o-c)<=sh.EPSILON*Math.max(1,Math.abs(o),Math.abs(c))},nh.forEach=nh.sqrLen=nh.len=nh.sqrDist=nh.dist=nh.div=nh.mul=nh.sub=void 0;var sh=function(e,t){if(e&&e.__esModule)return e;if(null===e||\"object\"!==oh(e)&&\"function\"!=typeof e)return {default:e};var i=ah(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}(lc);function ah(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (ah=function(e){return e?i:t})(e)}function lh(){var e=new sh.ARRAY_TYPE(4);return sh.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function ch(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e}function hh(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e[3]=t[3]*i[3],e}function uh(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e[3]=t[3]/i[3],e}function dh(e,t){return Math.hypot(t[0]-e[0],t[1]-e[1],t[2]-e[2],t[3]-e[3])}function ph(e,t){var i=t[0]-e[0],r=t[1]-e[1],n=t[2]-e[2],o=t[3]-e[3];return i*i+r*r+n*n+o*o}function fh(e){return Math.hypot(e[0],e[1],e[2],e[3])}function mh(e){var t=e[0],i=e[1],r=e[2],n=e[3];return t*t+i*i+r*r+n*n}nh.sub=ch,nh.mul=hh,nh.div=uh,nh.dist=dh,nh.sqrDist=ph,nh.len=fh,nh.sqrLen=mh;var _h=function(){var e=lh();return function(t,i,r,n,o,s){var a,l;for(i||(i=4),r||(r=0),l=n?Math.min(n*i+r,t.length):t.length,a=r;ayh.EPSILON?(e[0]=t[0]/r,e[1]=t[1]/r,e[2]=t[2]/r):(e[0]=1,e[1]=0,e[2]=0),i},jc.getAngle=function(e,t){var i=Dh(e,t);return Math.acos(2*i*i-1)},jc.multiply=Ah,jc.rotateX=function(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+s*a,e[1]=n*l+o*a,e[2]=o*l-n*a,e[3]=s*l-r*a,e},jc.rotateY=function(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l-o*a,e[1]=n*l+s*a,e[2]=o*l+r*a,e[3]=s*l-n*a,e},jc.rotateZ=function(e,t,i){i*=.5;var r=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(i),l=Math.cos(i);return e[0]=r*l+n*a,e[1]=n*l-r*a,e[2]=o*l+s*a,e[3]=s*l-o*a,e},jc.calculateW=function(e,t){var i=t[0],r=t[1],n=t[2];return e[0]=i,e[1]=r,e[2]=n,e[3]=Math.sqrt(Math.abs(1-i*i-r*r-n*n)),e},jc.exp=Sh,jc.ln=Ih,jc.pow=function(e,t,i){return Ih(e,t),Ph(e,e,i),Sh(e,e),e},jc.slerp=Ch,jc.random=function(e){var t=yh.RANDOM(),i=yh.RANDOM(),r=yh.RANDOM(),n=Math.sqrt(1-t),o=Math.sqrt(t);return e[0]=n*Math.sin(2*Math.PI*i),e[1]=n*Math.cos(2*Math.PI*i),e[2]=o*Math.sin(2*Math.PI*r),e[3]=o*Math.cos(2*Math.PI*r),e},jc.invert=function(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=i*i+r*r+n*n+o*o,a=s?1/s:0;return e[0]=-i*a,e[1]=-r*a,e[2]=-n*a,e[3]=o*a,e},jc.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e},jc.fromMat3=zh,jc.fromEuler=function(e,t,i,r){var n=.5*Math.PI/180;t*=n,i*=n,r*=n;var o=Math.sin(t),s=Math.cos(t),a=Math.sin(i),l=Math.cos(i),c=Math.sin(r),h=Math.cos(r);return e[0]=o*l*h-s*a*c,e[1]=s*a*h+o*l*c,e[2]=s*l*c-o*a*h,e[3]=s*l*h+o*a*c,e},jc.str=function(e){return \"quat(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\", \"+e[3]+\")\"},jc.setAxes=jc.sqlerp=jc.rotationTo=jc.equals=jc.exactEquals=jc.normalize=jc.sqrLen=jc.squaredLength=jc.len=jc.length=jc.lerp=jc.dot=jc.scale=jc.mul=jc.add=jc.set=jc.copy=jc.fromValues=jc.clone=void 0;var yh=Th(lc),xh=Th(Mc),vh=Th(Gc),bh=Th(nh);function wh(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (wh=function(e){return e?i:t})(e)}function Th(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||\"object\"!==gh(e)&&\"function\"!=typeof e)return {default:e};var i=wh(t);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}function Eh(){var e=new yh.ARRAY_TYPE(4);return yh.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function Mh(e,t,i){i*=.5;var r=Math.sin(i);return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=Math.cos(i),e}function Ah(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[0],l=i[1],c=i[2],h=i[3];return e[0]=r*h+s*a+n*c-o*l,e[1]=n*h+s*l+o*a-r*c,e[2]=o*h+s*c+r*l-n*a,e[3]=s*h-r*a-n*l-o*c,e}function Sh(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=Math.sqrt(i*i+r*r+n*n),a=Math.exp(o),l=s>0?a*Math.sin(s)/s:0;return e[0]=i*l,e[1]=r*l,e[2]=n*l,e[3]=a*Math.cos(s),e}function Ih(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],s=Math.sqrt(i*i+r*r+n*n),a=s>0?Math.atan2(s,o)/s:0;return e[0]=i*a,e[1]=r*a,e[2]=n*a,e[3]=.5*Math.log(i*i+r*r+n*n+o*o),e}function Ch(e,t,i,r){var n,o,s,a,l,c=t[0],h=t[1],u=t[2],d=t[3],p=i[0],f=i[1],m=i[2],_=i[3];return (o=c*p+h*f+u*m+d*_)<0&&(o=-o,p=-p,f=-f,m=-m,_=-_),1-o>yh.EPSILON?(n=Math.acos(o),s=Math.sin(n),a=Math.sin((1-r)*n)/s,l=Math.sin(r*n)/s):(a=1-r,l=r),e[0]=a*c+l*p,e[1]=a*h+l*f,e[2]=a*u+l*m,e[3]=a*d+l*_,e}function zh(e,t){var i,r=t[0]+t[4]+t[8];if(r>0)i=Math.sqrt(r+1),e[3]=.5*i,e[0]=(t[5]-t[7])*(i=.5/i),e[1]=(t[6]-t[2])*i,e[2]=(t[1]-t[3])*i;else {var n=0;t[4]>t[0]&&(n=1),t[8]>t[3*n+n]&&(n=2);var o=(n+1)%3,s=(n+2)%3;i=Math.sqrt(t[3*n+n]-t[3*o+o]-t[3*s+s]+1),e[n]=.5*i,e[3]=(t[3*o+s]-t[3*s+o])*(i=.5/i),e[o]=(t[3*o+n]+t[3*n+o])*i,e[s]=(t[3*s+n]+t[3*n+s])*i;}return e}jc.clone=bh.clone,jc.fromValues=bh.fromValues,jc.copy=bh.copy,jc.set=bh.set,jc.add=bh.add,jc.mul=Ah;var Ph=bh.scale;jc.scale=Ph;var Dh=bh.dot;jc.dot=Dh,jc.lerp=bh.lerp;var Rh=bh.length;jc.length=Rh,jc.len=Rh;var Lh=bh.squaredLength;jc.squaredLength=Lh,jc.sqrLen=Lh;var kh=bh.normalize;jc.normalize=kh,jc.exactEquals=bh.exactEquals,jc.equals=bh.equals;var Oh,Bh,Fh,Nh=(Oh=vh.create(),Bh=vh.fromValues(1,0,0),Fh=vh.fromValues(0,1,0),function(e,t,i){var r=vh.dot(t,i);return r<-.999999?(vh.cross(Oh,Bh,t),vh.len(Oh)<1e-6&&vh.cross(Oh,Fh,t),vh.normalize(Oh,Oh),Mh(e,Oh,Math.PI),e):r>.999999?(e[0]=0,e[1]=0,e[2]=0,e[3]=1,e):(vh.cross(Oh,t,i),e[0]=Oh[0],e[1]=Oh[1],e[2]=Oh[2],e[3]=1+r,kh(e,e))});jc.rotationTo=Nh;var Uh,Vh,jh=(Uh=Eh(),Vh=Eh(),function(e,t,i,r,n,o){return Ch(Uh,t,n,o),Ch(Vh,i,r,o),Ch(e,Uh,Vh,2*o*(1-o)),e});jc.sqlerp=jh;var Gh,qh=(Gh=xh.create(),function(e,t,i,r){return Gh[0]=i[0],Gh[3]=i[1],Gh[6]=i[2],Gh[1]=r[0],Gh[4]=r[1],Gh[7]=r[2],Gh[2]=-t[0],Gh[5]=-t[1],Gh[8]=-t[2],kh(e,zh(e,Gh))});jc.setAxes=qh;var Zh={};function $h(e){return $h=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},$h(e)}Object.defineProperty(Zh,\"__esModule\",{value:!0}),Zh.create=function(){var e=new Wh.ARRAY_TYPE(8);return Wh.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[4]=0,e[5]=0,e[6]=0,e[7]=0),e[3]=1,e},Zh.clone=function(e){var t=new Wh.ARRAY_TYPE(8);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t},Zh.fromValues=function(e,t,i,r,n,o,s,a){var l=new Wh.ARRAY_TYPE(8);return l[0]=e,l[1]=t,l[2]=i,l[3]=r,l[4]=n,l[5]=o,l[6]=s,l[7]=a,l},Zh.fromRotationTranslationValues=function(e,t,i,r,n,o,s){var a=new Wh.ARRAY_TYPE(8);a[0]=e,a[1]=t,a[2]=i,a[3]=r;var l=.5*n,c=.5*o,h=.5*s;return a[4]=l*r+c*i-h*t,a[5]=c*r+h*e-l*i,a[6]=h*r+l*t-c*e,a[7]=-l*e-c*t-h*i,a},Zh.fromRotationTranslation=Jh,Zh.fromTranslation=function(e,t){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=.5*t[0],e[5]=.5*t[1],e[6]=.5*t[2],e[7]=0,e},Zh.fromRotation=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=0,e[5]=0,e[6]=0,e[7]=0,e},Zh.fromMat4=function(e,t){var i=Hh.create();Xh.getRotation(i,t);var r=new Wh.ARRAY_TYPE(3);return Xh.getTranslation(r,t),Jh(e,i,r),e},Zh.copy=Qh,Zh.identity=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e[6]=0,e[7]=0,e},Zh.set=function(e,t,i,r,n,o,s,a,l){return e[0]=t,e[1]=i,e[2]=r,e[3]=n,e[4]=o,e[5]=s,e[6]=a,e[7]=l,e},Zh.getDual=function(e,t){return e[0]=t[4],e[1]=t[5],e[2]=t[6],e[3]=t[7],e},Zh.setDual=function(e,t){return e[4]=t[0],e[5]=t[1],e[6]=t[2],e[7]=t[3],e},Zh.getTranslation=function(e,t){var i=t[4],r=t[5],n=t[6],o=t[7],s=-t[0],a=-t[1],l=-t[2],c=t[3];return e[0]=2*(i*c+o*s+r*l-n*a),e[1]=2*(r*c+o*a+n*s-i*l),e[2]=2*(n*c+o*l+i*a-r*s),e},Zh.translate=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=.5*i[0],l=.5*i[1],c=.5*i[2],h=t[4],u=t[5],d=t[6],p=t[7];return e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=s*a+n*c-o*l+h,e[5]=s*l+o*a-r*c+u,e[6]=s*c+r*l-n*a+d,e[7]=-r*a-n*l-o*c+p,e},Zh.rotateX=function(e,t,i){var r=-t[0],n=-t[1],o=-t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=a*s+h*r+l*o-c*n,d=l*s+h*n+c*r-a*o,p=c*s+h*o+a*n-l*r,f=h*s-a*r-l*n-c*o;return Hh.rotateX(e,t,i),e[4]=u*(s=e[3])+f*(r=e[0])+d*(o=e[2])-p*(n=e[1]),e[5]=d*s+f*n+p*r-u*o,e[6]=p*s+f*o+u*n-d*r,e[7]=f*s-u*r-d*n-p*o,e},Zh.rotateY=function(e,t,i){var r=-t[0],n=-t[1],o=-t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=a*s+h*r+l*o-c*n,d=l*s+h*n+c*r-a*o,p=c*s+h*o+a*n-l*r,f=h*s-a*r-l*n-c*o;return Hh.rotateY(e,t,i),e[4]=u*(s=e[3])+f*(r=e[0])+d*(o=e[2])-p*(n=e[1]),e[5]=d*s+f*n+p*r-u*o,e[6]=p*s+f*o+u*n-d*r,e[7]=f*s-u*r-d*n-p*o,e},Zh.rotateZ=function(e,t,i){var r=-t[0],n=-t[1],o=-t[2],s=t[3],a=t[4],l=t[5],c=t[6],h=t[7],u=a*s+h*r+l*o-c*n,d=l*s+h*n+c*r-a*o,p=c*s+h*o+a*n-l*r,f=h*s-a*r-l*n-c*o;return Hh.rotateZ(e,t,i),e[4]=u*(s=e[3])+f*(r=e[0])+d*(o=e[2])-p*(n=e[1]),e[5]=d*s+f*n+p*r-u*o,e[6]=p*s+f*o+u*n-d*r,e[7]=f*s-u*r-d*n-p*o,e},Zh.rotateByQuatAppend=function(e,t,i){var r=i[0],n=i[1],o=i[2],s=i[3],a=t[0],l=t[1],c=t[2],h=t[3];return e[0]=a*s+h*r+l*o-c*n,e[1]=l*s+h*n+c*r-a*o,e[2]=c*s+h*o+a*n-l*r,e[3]=h*s-a*r-l*n-c*o,e[4]=(a=t[4])*s+(h=t[7])*r+(l=t[5])*o-(c=t[6])*n,e[5]=l*s+h*n+c*r-a*o,e[6]=c*s+h*o+a*n-l*r,e[7]=h*s-a*r-l*n-c*o,e},Zh.rotateByQuatPrepend=function(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[0],l=i[1],c=i[2],h=i[3];return e[0]=r*h+s*a+n*c-o*l,e[1]=n*h+s*l+o*a-r*c,e[2]=o*h+s*c+r*l-n*a,e[3]=s*h-r*a-n*l-o*c,e[4]=r*(h=i[7])+s*(a=i[4])+n*(c=i[6])-o*(l=i[5]),e[5]=n*h+s*l+o*a-r*c,e[6]=o*h+s*c+r*l-n*a,e[7]=s*h-r*a-n*l-o*c,e},Zh.rotateAroundAxis=function(e,t,i,r){if(Math.abs(r)0){i=Math.sqrt(i);var r=t[0]/i,n=t[1]/i,o=t[2]/i,s=t[3]/i,a=t[4],l=t[5],c=t[6],h=t[7],u=r*a+n*l+o*c+s*h;e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=(a-r*u)/i,e[5]=(l-n*u)/i,e[6]=(c-o*u)/i,e[7]=(h-s*u)/i;}return e},Zh.str=function(e){return \"quat2(\"+e[0]+\", \"+e[1]+\", \"+e[2]+\", \"+e[3]+\", \"+e[4]+\", \"+e[5]+\", \"+e[6]+\", \"+e[7]+\")\"},Zh.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]},Zh.equals=function(e,t){var i=e[0],r=e[1],n=e[2],o=e[3],s=e[4],a=e[5],l=e[6],c=e[7],h=t[0],u=t[1],d=t[2],p=t[3],f=t[4],m=t[5],_=t[6],g=t[7];return Math.abs(i-h)<=Wh.EPSILON*Math.max(1,Math.abs(i),Math.abs(h))&&Math.abs(r-u)<=Wh.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(n-d)<=Wh.EPSILON*Math.max(1,Math.abs(n),Math.abs(d))&&Math.abs(o-p)<=Wh.EPSILON*Math.max(1,Math.abs(o),Math.abs(p))&&Math.abs(s-f)<=Wh.EPSILON*Math.max(1,Math.abs(s),Math.abs(f))&&Math.abs(a-m)<=Wh.EPSILON*Math.max(1,Math.abs(a),Math.abs(m))&&Math.abs(l-_)<=Wh.EPSILON*Math.max(1,Math.abs(l),Math.abs(_))&&Math.abs(c-g)<=Wh.EPSILON*Math.max(1,Math.abs(c),Math.abs(g))},Zh.sqrLen=Zh.squaredLength=Zh.len=Zh.length=Zh.dot=Zh.mul=Zh.setReal=Zh.getReal=void 0;var Wh=Kh(lc),Hh=Kh(jc),Xh=Kh(Pc);function Yh(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (Yh=function(e){return e?i:t})(e)}function Kh(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||\"object\"!==$h(e)&&\"function\"!=typeof e)return {default:e};var i=Yh(t);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}function Jh(e,t,i){var r=.5*i[0],n=.5*i[1],o=.5*i[2],s=t[0],a=t[1],l=t[2],c=t[3];return e[0]=s,e[1]=a,e[2]=l,e[3]=c,e[4]=r*c+n*l-o*a,e[5]=n*c+o*s-r*l,e[6]=o*c+r*a-n*s,e[7]=-r*s-n*a-o*l,e}function Qh(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e}function eu(e,t,i){var r=t[0],n=t[1],o=t[2],s=t[3],a=i[4],l=i[5],c=i[6],h=i[7],u=t[4],d=t[5],p=t[6],f=t[7],m=i[0],_=i[1],g=i[2],y=i[3];return e[0]=r*y+s*m+n*g-o*_,e[1]=n*y+s*_+o*m-r*g,e[2]=o*y+s*g+r*_-n*m,e[3]=s*y-r*m-n*_-o*g,e[4]=r*h+s*a+n*c-o*l+u*y+f*m+d*g-p*_,e[5]=n*h+s*l+o*a-r*c+d*y+f*_+p*m-u*g,e[6]=o*h+s*c+r*l-n*a+p*y+f*g+u*_-d*m,e[7]=s*h-r*a-n*l-o*c+f*y-u*m-d*_-p*g,e}Zh.getReal=Hh.copy,Zh.setReal=Hh.copy,Zh.mul=eu;var tu=Hh.dot;Zh.dot=tu;var iu=Hh.length;Zh.length=iu,Zh.len=iu;var ru=Hh.squaredLength;Zh.squaredLength=ru,Zh.sqrLen=ru;var nu={};function ou(e){return ou=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},ou(e)}Object.defineProperty(nu,\"__esModule\",{value:!0}),nu.create=lu,nu.clone=function(e){var t=new su.ARRAY_TYPE(2);return t[0]=e[0],t[1]=e[1],t},nu.fromValues=function(e,t){var i=new su.ARRAY_TYPE(2);return i[0]=e,i[1]=t,i},nu.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e},nu.set=function(e,t,i){return e[0]=t,e[1]=i,e},nu.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e},nu.subtract=cu,nu.multiply=hu,nu.divide=uu,nu.ceil=function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e},nu.floor=function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e},nu.min=function(e,t,i){return e[0]=Math.min(t[0],i[0]),e[1]=Math.min(t[1],i[1]),e},nu.max=function(e,t,i){return e[0]=Math.max(t[0],i[0]),e[1]=Math.max(t[1],i[1]),e},nu.round=function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e},nu.scale=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e},nu.scaleAndAdd=function(e,t,i,r){return e[0]=t[0]+i[0]*r,e[1]=t[1]+i[1]*r,e},nu.distance=du,nu.squaredDistance=pu,nu.length=fu,nu.squaredLength=mu,nu.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e},nu.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e},nu.normalize=function(e,t){var i=t[0],r=t[1],n=i*i+r*r;return n>0&&(n=1/Math.sqrt(n)),e[0]=t[0]*n,e[1]=t[1]*n,e},nu.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]},nu.cross=function(e,t,i){var r=t[0]*i[1]-t[1]*i[0];return e[0]=e[1]=0,e[2]=r,e},nu.lerp=function(e,t,i,r){var n=t[0],o=t[1];return e[0]=n+r*(i[0]-n),e[1]=o+r*(i[1]-o),e},nu.random=function(e,t){t=t||1;var i=2*su.RANDOM()*Math.PI;return e[0]=Math.cos(i)*t,e[1]=Math.sin(i)*t,e},nu.transformMat2=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[2]*n,e[1]=i[1]*r+i[3]*n,e},nu.transformMat2d=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[2]*n+i[4],e[1]=i[1]*r+i[3]*n+i[5],e},nu.transformMat3=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[3]*n+i[6],e[1]=i[1]*r+i[4]*n+i[7],e},nu.transformMat4=function(e,t,i){var r=t[0],n=t[1];return e[0]=i[0]*r+i[4]*n+i[12],e[1]=i[1]*r+i[5]*n+i[13],e},nu.rotate=function(e,t,i,r){var n=t[0]-i[0],o=t[1]-i[1],s=Math.sin(r),a=Math.cos(r);return e[0]=n*a-o*s+i[0],e[1]=n*s+o*a+i[1],e},nu.angle=function(e,t){var i=e[0],r=e[1],n=t[0],o=t[1],s=Math.sqrt(i*i+r*r)*Math.sqrt(n*n+o*o);return Math.acos(Math.min(Math.max(s&&(i*n+r*o)/s,-1),1))},nu.zero=function(e){return e[0]=0,e[1]=0,e},nu.str=function(e){return \"vec2(\"+e[0]+\", \"+e[1]+\")\"},nu.exactEquals=function(e,t){return e[0]===t[0]&&e[1]===t[1]},nu.equals=function(e,t){var i=e[0],r=e[1],n=t[0],o=t[1];return Math.abs(i-n)<=su.EPSILON*Math.max(1,Math.abs(i),Math.abs(n))&&Math.abs(r-o)<=su.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))},nu.forEach=nu.sqrLen=nu.sqrDist=nu.dist=nu.div=nu.mul=nu.sub=nu.len=void 0;var su=function(e,t){if(e&&e.__esModule)return e;if(null===e||\"object\"!==ou(e)&&\"function\"!=typeof e)return {default:e};var i=au(void 0);if(i&&i.has(e))return i.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(\"default\"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var s=n?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(r,o,s):r[o]=e[o];}return r.default=e,i&&i.set(e,r),r}(lc);function au(e){if(\"function\"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return (au=function(e){return e?i:t})(e)}function lu(){var e=new su.ARRAY_TYPE(2);return su.ARRAY_TYPE!=Float32Array&&(e[0]=0,e[1]=0),e}function cu(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e}function hu(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e}function uu(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e}function du(e,t){return Math.hypot(t[0]-e[0],t[1]-e[1])}function pu(e,t){var i=t[0]-e[0],r=t[1]-e[1];return i*i+r*r}function fu(e){return Math.hypot(e[0],e[1])}function mu(e){var t=e[0],i=e[1];return t*t+i*i}nu.len=fu,nu.sub=cu,nu.mul=hu,nu.div=uu,nu.dist=du,nu.sqrDist=pu,nu.sqrLen=mu;var _u=function(){var e=lu();return function(t,i,r,n,o,s){var a,l;for(i||(i=2),r||(r=0),l=n?Math.min(n*i+r,t.length):t.length,a=r;a0;o--)r=1<this.canonical.z?new qu(e,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new qu(e,this.wrap,e,this.canonical.x>>t,this.canonical.y>>t)}calculateScaledKey(e,t=!0){if(this.overscaledZ===e&&t)return this.key;if(e>this.canonical.z)return Zu(this.wrap*+t,e,this.canonical.z,this.canonical.x,this.canonical.y);{const i=this.canonical.z-e;return Zu(this.wrap*+t,e,e,this.canonical.x>>i,this.canonical.y>>i)}}isChildOf(e){if(e.wrap!==this.wrap)return !1;const t=this.canonical.z-e.canonical.z;return 0===e.overscaledZ||e.overscaledZ>t&&e.canonical.y===this.canonical.y>>t}children(e){if(this.overscaledZ>=e)return [new qu(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const t=this.canonical.z+1,i=2*this.canonical.x,r=2*this.canonical.y;return [new qu(t,this.wrap,t,i,r),new qu(t,this.wrap,t,i+1,r),new qu(t,this.wrap,t,i,r+1),new qu(t,this.wrap,t,i+1,r+1)]}isLessThan(e){return this.wrape.wrap)&&(this.overscaledZe.overscaledZ)&&(this.canonical.xe.canonical.x)&&this.canonical.y{let t=e.canonical.x-1,i=e.wrap;return t<0&&(t=(1<{let t=e.canonical.x+1,i=e.wrap;return t===1<new qu(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,(0===e.canonical.y?1<new qu(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y===(1<=0;if(0===o)return 0;o!==t.length&&(i=!1);}return i?2:1}function Ku(e,t){for(const i of e.projections){const r=Xu(t,e.points[0],i.axis);if(i.projection[1]r[1])return 0}return 1}function Ju(e,t){let i=0;const r=[0,0,0,0];for(let n=0;n=0&&i++;return i}class Qu{constructor(e,t){this.points=e||new Array(8).fill([0,0,0]),this.planes=t||new Array(6).fill([0,0,0,0]),this.bounds=ed.fromPoints(this.points),this.projections=[],this.frustumEdges=[Du.sub([],this.points[2],this.points[3]),Du.sub([],this.points[0],this.points[3]),Du.sub([],this.points[4],this.points[0]),Du.sub([],this.points[5],this.points[1]),Du.sub([],this.points[6],this.points[2]),Du.sub([],this.points[7],this.points[3])];for(const e of this.frustumEdges){const t=[0,-e[2],e[1]],i=[e[2],0,-e[0]];this.projections.push({axis:t,projection:Xu(this.points,this.points[0],t)}),this.projections.push({axis:i,projection:Xu(this.points,this.points[0],i)});}}static fromInvProjectionMatrix(e,t,i,r){const n=Math.pow(2,i),o=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((i=>{const o=yu.transformMat4([],i,e),s=1/o[3]/t*n;return yu.mul(o,o,[s,s,r?1/o[3]:s,s])})),s=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((e=>{const t=Du.sub([],o[e[0]],o[e[1]]),i=Du.sub([],o[e[2]],o[e[1]]),r=Du.normalize([],Du.cross([],t,i)),n=-Du.dot(r,o[e[1]]);return r.concat(n)})),a=[];for(let e=0;es[1]||s[0]>o[1])return 0}return 1}}class ed{static fromPoints(e){const t=[1/0,1/0,1/0],i=[-1/0,-1/0,-1/0];for(const r of e)Du.min(t,t,r),Du.max(i,i,r);return new ed(t,i)}static fromTileIdAndHeight(e,t,i){const r=1<e.max[t]||e.min[t]>this.max[t])return !1;return !0}intersectsAabbXY(e){return !(this.min[0]>e.max[0]||e.min[0]>this.max[0]||this.min[1]>e.max[1]||e.min[1]>this.max[1])}encapsulate(e){for(let t=0;t<3;t++)this.min[t]=Math.min(this.min[t],e.min[t]),this.max[t]=Math.max(this.max[t],e.max[t]);}encapsulatePoint(e){for(let t=0;t<3;t++)this.min[t]=Math.min(this.min[t],e[t]),this.max[t]=Math.max(this.max[t],e[t]);}closestPoint(e){return [Math.max(Math.min(this.max[0],e[0]),this.min[0]),Math.max(Math.min(this.max[1],e[1]),this.min[1]),Math.max(Math.min(this.max[2],e[2]),this.min[2])]}}Rs(ed,\"Aabb\");const td=5,id=6,rd=cr/Math.PI/2,nd=16383,od=64,sd=[od,32,16],ad=-rd,ld=rd,cd=[new ed([ad,ad,ad],[ld,ld,ld]),new ed([ad,ad,ad],[0,0,ld]),new ed([0,ad,ad],[ld,0,ld]),new ed([ad,0,ad],[0,ld,ld]),new ed([0,0,ad],[ld,ld,ld])];function hd(e){return e*rd/qd}function ud(e,t,i,r=!0){const n=Du.scale([],e._camera.position,e.worldSize),o=[t,i,1,1];yu.transformMat4(o,o,e.pixelMatrixInverse),yu.scale(o,o,1/o[3]);const s=Du.sub([],o,n),a=Du.normalize([],s),l=e.globeMatrix,c=[l[12],l[13],l[14]],h=Du.sub([],c,n),u=Du.length(h),d=Du.normalize([],h),p=e.worldSize/(2*Math.PI),f=Du.dot(d,a),m=Math.asin(p/u);if(m1?null:function(e,t,i,r){const n=Math.sin(i);return e*(Math.sin((1-r)*i)/n)+t*(Math.sin(r*i)/n)}(e.a[t],e.b[t],e.angle,z(i,0,1))+e.center[t]}function fd(e){if(e.z<=1)return cd[e.z+2*e.y+e.x];const t=vd(xd(e));return ed.fromPoints(t)}function md(e,t,i){return Du.scale(e,e,1-i),Du.scaleAndAdd(e,e,t,i)}function _d(e,t){const i=Dd(t.zoom);if(0===i)return fd(e);const r=xd(e),n=vd(r),o=Kd(r.getWest())*t.worldSize,s=Kd(r.getEast())*t.worldSize,a=Jd(r.getNorth())*t.worldSize,l=Jd(r.getSouth())*t.worldSize,c=[o,a,0],h=[s,a,0],u=[o,l,0],d=[s,l,0],p=Au.invert([],t.globeMatrix);return Du.transformMat4(c,c,p),Du.transformMat4(h,h,p),Du.transformMat4(u,u,p),Du.transformMat4(d,d,p),n[0]=md(n[0],u,i),n[1]=md(n[1],d,i),n[2]=md(n[2],h,i),n[3]=md(n[3],c,i),ed.fromPoints(n)}function gd(e,t,i){for(const r of e)Du.transformMat4(r,r,t),Du.scale(r,r,i);}function yd(e,t,i,r){const n=t/e.worldSize,o=e.globeMatrix;if(i.z<=1){const e=fd(i).getCorners();return gd(e,o,n),ed.fromPoints(e)}const s=xd(i,r),a=vd(s);gd(a,o,n);const l=Number.MAX_VALUE,c=[-l,-l,-l],h=[l,l,l];if(s.contains(e.center)){for(const e of a)Du.min(h,h,e),Du.max(c,c,e);c[2]=0;const t=e.point,i=[t.x*n,t.y*n,0];return Du.min(h,h,i),Du.max(c,c,i),new ed(h,c)}const u=[o[12]*n,o[13]*n,o[14]*n],d=s.getCenter(),p=z(e.center.lat,-rp,rp),f=z(d.lat,-rp,rp),m=Kd(e.center.lng),_=Jd(p);let g=m-Kd(d.lng);const y=_-Jd(f);g>.5?g-=1:g<-.5&&(g+=1);let x=0;if(Math.abs(g)>Math.abs(y))x=g>=0?1:3;else {x=y>=0?0:2;const e=[o[4]*n,o[5]*n,o[6]*n],t=-Math.sin(w(y>=0?s.getSouth():s.getNorth()))*rd;Du.scaleAndAdd(u,u,e,t);}const v=a[x],b=a[(x+1)%4],T=new dd(v,b,u),E=[pd(T,0)||v[0],pd(T,1)||v[1],pd(T,2)||v[2]],M=Dd(e.zoom);if(M>0){const r=function({x:e,y:t,z:i},r,n,o,s){const a=1/(1<.5?d=-1:p<-.5&&(d=1),l=((l+d)*r-(o*=r))*n+o,c=((c+d)*r-o)*n+o,h=(h*r-(s*=r))*n+s,u=(u*r-s)*n+s,[[l,u,0],[c,u,0],[c,h,0],[l,h,0]]}(i,t,e._pixelsPerMercatorPixel,m,_);for(let e=0;e0;return 0===r&&!n&&!o}function kd(e,t,i,r){const n=t.getNorth(),o=t.getSouth(),s=t.getWest(),a=t.getEast(),l=1<0){const e=180/r;Eu.multiply(p,p,[e/c+1,0,0,0,e/h+1,0,-.5*e/u,.5*e/d,1]);}return p[2]=l,p[5]=e.x,p[8]=e.y,p}function Od(e){const t=rp-5;e=z(e,-t,t)/t*90;const i=Math.pow(Math.abs(Math.sin(w(e))),3);return Math.round(i*(sd.length-1))}function Bd(e){const t=[0,0,0],i=Au.identity(new Float64Array(16));return Au.multiply(i,e.pixelMatrix,e.globeMatrix),Du.transformMat4(t,t,i),new y(t[0],t[1])}function Fd(e,t){const i=wd(t.lat,t.lng),r=function(e){const t=wd(e._center.lat,e._center.lng),i=Du.fromValues(0,1,0);let r=Du.cross([],i,t);const n=Au.fromRotation([],-e.angle,t);r=Du.transformMat4(r,r,n),Au.fromRotation(n,-e._pitch,r);const o=Du.normalize([],t);return Du.scale(o,o,hd(e.cameraToCenterDistance/e.pixelsPerMeter)),Du.transformMat4(o,o,n),Du.add([],t,o)}(e),n=Du.subtract([],r,i);return Du.angle(n,i)}function Nd(e,t){return Fd(e,t)>Math.PI/2*1.01}const Ud=w(85),Vd=Math.cos(Ud),jd=Math.sin(Ud);class Gd{constructor(e){this._createGrid(e),this._createPoles(e);}destroy(){this._poleIndexBuffer.destroy(),this._gridBuffer.destroy(),this._gridIndexBuffer.destroy(),this._poleNorthVertexBuffer.destroy(),this._poleSouthVertexBuffer.destroy();for(const e of this._poleSegments)e.destroy();for(const e of this._gridSegments)e.withSkirts.destroy(),e.withoutSkirts.destroy();}_fillGridMeshWithLods(e,t){const i=new za,r=new Wa,n=[],o=e+1+2,s=t[0]+1,a=t[0]+1+(1+t.length),l=(e,t,i)=>{let r=e===o-1?e-2:0===e?e:e-1;return r+=i?24575:0,[r,t]};for(let e=0;e90||this.lat<-90)throw new Error(\"Invalid LngLat latitude value: must be between -90 and 90\")}wrap(){return new $d(D(this.lng,-180,180),this.lat)}toArray(){return [this.lng,this.lat]}toString(){return `LngLat(${this.lng}, ${this.lat})`}distanceTo(e){const t=Math.PI/180,i=this.lat*t,r=e.lat*t,n=Math.sin(i)*Math.sin(r)+Math.cos(i)*Math.cos(r)*Math.cos((e.lng-this.lng)*t);return qd*Math.acos(Math.min(n,1))}toBounds(e=0){const t=360*e/40075017,i=t/Math.cos(Math.PI/180*this.lat);return new sc(new $d(this.lng-i,this.lat-t),new $d(this.lng+i,this.lat+t))}toEcef(e){const t=hd(e);return wd(this.lat,this.lng,rd+t)}static convert(e){if(e instanceof $d)return e;if(Array.isArray(e)&&(2===e.length||3===e.length))return new $d(Number(e[0]),Number(e[1]));if(!Array.isArray(e)&&\"object\"==typeof e&&null!==e)return new $d(Number(\"lng\"in e?e.lng:e.lon),Number(e.lat));throw new Error(\"`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]\")}}var Wd=$d;const Hd=0,Xd=25.5;function Yd(e){return Zd*Math.cos(e*Math.PI/180)}function Kd(e){return (180+e)/360}function Jd(e){return (180-180/Math.PI*Math.log(Math.tan(Math.PI/4+e*Math.PI/360)))/360}function Qd(e,t){return e/Yd(t)}function ep(e){return 360*e-180}function tp(e){return 360/Math.PI*Math.atan(Math.exp((180-360*e)*Math.PI/180))-90}function ip(e,t){return e*Yd(tp(t))}const rp=85.051129;function np(e){return Math.cos(w(z(e,-rp,rp)))}function op(e,t){const i=z(t,Hd,Xd),r=Math.pow(2,i);return np(e)*Zd/(512*r)}function sp(e){return 1/Math.cos(e*Math.PI/180)}function ap(e,t=0){const i=Math.exp(Math.PI*(1-(e.y+t/cr)/(1<=l?(cp(e,t,i,c,h,o,u,a,l),cp(e,c,h,r,n,u,s,a,l)):e.push(s);}function hp(e,t,i){let r=e[0],n=r.x,o=r.y;t(r);const s=[r];for(let a=1;ae.x+1||re.y+1)&&H(\"Geometry exceeds allowed extent, reduce your vector tile buffer size\"),e}function _p(e,t,i){const r=e.loadGeometry(),n=e.extent,o=cr/n;if(t&&i&&i.projection.isReprojectedInTileSpace){const o=1<{const i=ep((t.x+e.x/n)/o),r=tp((t.y+e.y/n)/o),h=c.project(i,r);e.x=(h.x*s-a)*n,e.y=(h.y*s-l)*n;};for(let t=0;t=n||i.y<0||i.y>=n||(h(i),e.push(i));r[t]=e;}}for(const e of r)for(const t of e)mp(t,o);return r}function gp(e,t){return {type:e.type,id:e.id,properties:e.properties,geometry:t?_p(e):[]}}function yp(e,t,i,r,n){e.emplaceBack(2*t+(r+1)/2,2*i+(n+1)/2);}function xp(e,t,i){const r=16384;e.emplaceBack(t.x,t.y,t.z,i[0]*r,i[1]*r,i[2]*r);}class vp{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.hasPattern=!1,this.projection=e.projection,this.layoutVertexArray=new za,this.indexArray=new Wa,this.segments=new xl,this.programConfigurations=new ec(e.layers,e.zoom),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id));}populate(e,t,i,r){const n=this.layers[0],o=[];let s=null;\"circle\"===n.type&&(s=n.layout.get(\"circle-sort-key\"));for(const{feature:t,id:n,index:a,sourceLayerIndex:l}of e){const e=this.layers[0]._featureFilter.needGeometry,c=gp(t,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),c,i))continue;const h=s?s.evaluate(c,{},i):void 0,u={id:n,properties:t.properties,type:t.type,sourceLayerIndex:l,index:a,geometry:e?c.geometry:_p(t,i,r),patterns:{},sortKey:h};o.push(u);}s&&o.sort(((e,t)=>e.sortKey-t.sortKey));let a=null;\"globe\"===r.projection.name&&(this.globeExtVertexArray=new Fa,a=r.projection);for(const r of o){const{geometry:n,index:o,sourceLayerIndex:s}=r,l=e[o].feature;this.addFeature(r,n,o,t.availableImages,i,a,t.brightness),t.featureIndex.insert(l,n,o,s,this.index);}}update(e,t,i,r,n){const o=0!==Object.keys(e).length;o&&!this.stateDependentLayers.length||this.programConfigurations.updatePaintArrays(e,t,o?this.stateDependentLayers:this.layers,i,r,n);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,gl.members),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.globeExtVertexArray&&(this.globeExtVertexBuffer=e.createVertexBuffer(this.globeExtVertexArray,yl.members))),this.programConfigurations.upload(e),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy());}addFeature(e,t,i,r,n,o,s){for(const i of t)for(const t of i){const i=t.x,r=t.y;if(i<0||i>=cr||r<0||r>=cr)continue;if(o){const e=o.projectTilePoint(i,r,n),t=o.upVector(n,i,r),s=this.globeExtVertexArray;xp(s,e,t),xp(s,e,t),xp(s,e,t),xp(s,e,t);}const s=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,e.sortKey),a=s.vertexLength;yp(this.layoutVertexArray,i,r,-1,-1),yp(this.layoutVertexArray,i,r,1,-1),yp(this.layoutVertexArray,i,r,1,1),yp(this.layoutVertexArray,i,r,-1,1),this.indexArray.emplaceBack(a,a+1,a+2),this.indexArray.emplaceBack(a,a+2,a+3),s.vertexLength+=4,s.primitiveLength+=2;}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,i,{},r,n,s);}}function bp(e,t){for(let i=0;i1){if(Mp(e,t))return !0;for(let r=0;r1?i:i.sub(t)._mult(n)._add(t))}function Cp(e,t){let i,r,n,o=!1;for(let s=0;st.y!=n.y>t.y&&t.x<(n.x-r.x)*(t.y-r.y)/(n.y-r.y)+r.x&&(o=!o);}return o}function zp(e,t){let i=!1;for(let r=0,n=e.length-1;rt.y!=s.y>t.y&&t.x<(s.x-o.x)*(t.y-o.y)/(s.y-o.y)+o.x&&(i=!i);}return i}function Pp(e,t,i,r,n){for(const o of e)if(t<=o.x&&i<=o.y&&r>=o.x&&n>=o.y)return !0;const o=[new y(t,i),new y(t,n),new y(r,n),new y(r,i)];if(e.length>2)for(const t of o)if(zp(e,t))return !0;for(let t=0;tn.x&&t.x>n.x||e.yn.y&&t.y>n.y)return !1;const o=X(e,t,i[0]);return o!==X(e,t,i[1])||o!==X(e,t,i[2])||o!==X(e,t,i[3])}function Rp(e,t,i,r,n,o){let s=t.y-e.y,a=e.x-t.x;if(o=o||0){const e=s*s+a*a;if(0===e)return !0;const t=Math.sqrt(e);s/=t,a/=t;}return !((i.x-e.x)*s+(i.y-e.y)*a-o<0||(r.x-e.x)*s+(r.y-e.y)*a-o<0||(n.x-e.x)*s+(n.y-e.y)*a-o<0)}function Lp(e,t,i,r,n,o,s){return !(Rp(e,t,r,n,o,s)||Rp(t,i,r,n,o,s)||Rp(i,e,r,n,o,s)||Rp(r,n,e,t,i,s)||Rp(n,o,e,t,i,s)||Rp(o,r,e,t,i,s))}function kp(e,t,i){const r=t.paint.get(e).value;return \"constant\"===r.kind?r.value:i.programConfigurations.get(t.id).getMaxValue(e)}function Op(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function Bp(e,t,i,r,n){if(!t[0]&&!t[1])return e;const o=y.convert(t)._mult(n);\"viewport\"===i&&o._rotate(-r);const s=[];for(let t=0;t{const s=e.transform,a=\"globe\"===s.projection.name;let l;if(\"map\"===o.paint.get(\"circle-pitch-alignment\"))if(a){const e=Cd(s.zoom,t.canonical)*s._pixelsPerMercatorPixel;l=Float32Array.from([e,0,0,e]);}else l=s.calculatePixelsToTileUnitsMatrix(i);else l=new Float32Array([s.pixelsToGLUnits[0],0,0,s.pixelsToGLUnits[1]]);const c={u_camera_to_center_distance:e.transform.getCameraToCenterDistance(s.projection),u_matrix:e.translatePosMatrix(t.projMatrix,i,o.paint.get(\"circle-translate\"),o.paint.get(\"circle-translate-anchor\")),u_device_pixel_ratio:dt.devicePixelRatio,u_extrude_scale:l,u_inv_rot_matrix:Vp,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0],u_emissive_strength:o.paint.get(\"circle-emissive-strength\")};if(a){c.u_inv_rot_matrix=r,c.u_merc_center=n,c.u_tile_id=[t.canonical.x,t.canonical.y,1<{const t=[];return \"map\"===e.paint.get(\"circle-pitch-alignment\")&&t.push(\"PITCH_WITH_MAP\"),\"map\"===e.paint.get(\"circle-pitch-scale\")&&t.push(\"SCALE_WITH_MAP\"),t};function qp(e,t,i,r,n,o,s,a,l){if(o&&e.queryGeometry.isAboveHorizon)return !1;o&&(l*=e.pixelToTileUnitsFactor);const c=e.tileID.canonical,h=i.projection.upVectorScale(c,i.center.lat,i.worldSize).metersToTile;for(const u of t)for(const t of u){const u=t.add(a),d=n&&i.elevation?i.elevation.exaggeration()*n.getElevationAt(u.x,u.y,!0):0,p=i.projection.projectTilePoint(u.x,u.y,c);if(d>0){const e=i.projection.upVector(c,u.x,u.y);p.x+=e[0]*h*d,p.y+=e[1]*h*d,p.z+=e[2]*h*d;}const f=o?u:Zp(p.x,p.y,p.z,r),m=o?e.tilespaceRays.map((e=>Hp(e,d))):e.queryGeometry.screenGeometry,_=yu.transformMat4([],[p.x,p.y,p.z,1],r);if(!s&&o?l*=_[3]/i.cameraToCenterDistance:s&&!o&&(l*=i.cameraToCenterDistance/_[3]),o){const e=tp((t.y/cr+c.y)/(1<e.width||n.height>e.height||i.x>e.width-n.width||i.y>e.height-n.height)throw new RangeError(\"out of range source coordinates for image copy\");if(n.width>t.width||n.height>t.height||r.x>t.width-n.width||r.y>t.height-n.height)throw new RangeError(\"out of range destination coordinates for image copy\");const s=e.data,a=t.data;for(let l=0;l{t[e.evaluationKey]=o;const s=e.expression.evaluate(t);s&&(n.data[i+r+0]=Math.floor(255*s.r/s.a),n.data[i+r+1]=Math.floor(255*s.g/s.a),n.data[i+r+2]=Math.floor(255*s.b/s.a),n.data[i+r+3]=Math.floor(255*s.a));};if(e.clips)for(let t=0,n=0;t80*i){r=o=e[0],n=s=e[1];for(var f=i;fo&&(o=a),l>s&&(s=l);c=0!==(c=Math.max(o-r,s-n))?32767/c:0;}return ff(d,p,i,r,n,c,0),p}function df(e,t,i,r,n){var o,s;if(n===Of(e,t,i,r)>0)for(o=t;o=t;o-=r)s=Rf(o,e[o],e[o+1],s);return s&&Sf(s,s.next)&&(Lf(s),s=s.next),s}function pf(e,t){if(!e)return e;t||(t=e);var i,r=e;do{if(i=!1,r.steiner||!Sf(r,r.next)&&0!==Af(r.prev,r,r.next))r=r.next;else {if(Lf(r),(r=t=r.prev)===r.next)break;i=!0;}}while(i||r!==t);return t}function ff(e,t,i,r,n,o,s){if(e){!s&&o&&function(e,t,i,r){var n=e;do{0===n.z&&(n.z=wf(n.x,n.y,t,i,r)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next;}while(n!==e);n.prevZ.nextZ=null,n.prevZ=null,function(e){var t,i,r,n,o,s,a,l,c=1;do{for(i=e,e=null,o=null,s=0;i;){for(s++,r=i,a=0,t=0;t0||l>0&&r;)0!==a&&(0===l||!r||i.z<=r.z)?(n=i,i=i.nextZ,a--):(n=r,r=r.nextZ,l--),o?o.nextZ=n:e=n,n.prevZ=o,o=n;i=r;}o.nextZ=null,c*=2;}while(s>1)}(n);}(e,r,n,o);for(var a,l,c=e;e.prev!==e.next;)if(a=e.prev,l=e.next,o?_f(e,r,n,o):mf(e))t.push(a.i/i|0),t.push(e.i/i|0),t.push(l.i/i|0),Lf(e),e=l.next,c=l.next;else if((e=l)===c){s?1===s?ff(e=gf(pf(e),t,i),t,i,r,n,o,2):2===s&&yf(e,t,i,r,n,o):ff(pf(e),t,i,r,n,o,1);break}}}function mf(e){var t=e.prev,i=e,r=e.next;if(Af(t,i,r)>=0)return !1;for(var n=t.x,o=i.x,s=r.x,a=t.y,l=i.y,c=r.y,h=no?n>s?n:s:o>s?o:s,p=a>l?a>c?a:c:l>c?l:c,f=r.next;f!==t;){if(f.x>=h&&f.x<=d&&f.y>=u&&f.y<=p&&Ef(n,a,o,l,s,c,f.x,f.y)&&Af(f.prev,f,f.next)>=0)return !1;f=f.next;}return !0}function _f(e,t,i,r){var n=e.prev,o=e,s=e.next;if(Af(n,o,s)>=0)return !1;for(var a=n.x,l=o.x,c=s.x,h=n.y,u=o.y,d=s.y,p=al?a>c?a:c:l>c?l:c,_=h>u?h>d?h:d:u>d?u:d,g=wf(p,f,t,i,r),y=wf(m,_,t,i,r),x=e.prevZ,v=e.nextZ;x&&x.z>=g&&v&&v.z<=y;){if(x.x>=p&&x.x<=m&&x.y>=f&&x.y<=_&&x!==n&&x!==s&&Ef(a,h,l,u,c,d,x.x,x.y)&&Af(x.prev,x,x.next)>=0)return !1;if(x=x.prevZ,v.x>=p&&v.x<=m&&v.y>=f&&v.y<=_&&v!==n&&v!==s&&Ef(a,h,l,u,c,d,v.x,v.y)&&Af(v.prev,v,v.next)>=0)return !1;v=v.nextZ;}for(;x&&x.z>=g;){if(x.x>=p&&x.x<=m&&x.y>=f&&x.y<=_&&x!==n&&x!==s&&Ef(a,h,l,u,c,d,x.x,x.y)&&Af(x.prev,x,x.next)>=0)return !1;x=x.prevZ;}for(;v&&v.z<=y;){if(v.x>=p&&v.x<=m&&v.y>=f&&v.y<=_&&v!==n&&v!==s&&Ef(a,h,l,u,c,d,v.x,v.y)&&Af(v.prev,v,v.next)>=0)return !1;v=v.nextZ;}return !0}function gf(e,t,i){var r=e;do{var n=r.prev,o=r.next.next;!Sf(n,o)&&If(n,r,r.next,o)&&Pf(n,o)&&Pf(o,n)&&(t.push(n.i/i|0),t.push(r.i/i|0),t.push(o.i/i|0),Lf(r),Lf(r.next),r=e=o),r=r.next;}while(r!==e);return pf(r)}function yf(e,t,i,r,n,o){var s=e;do{for(var a=s.next.next;a!==s.prev;){if(s.i!==a.i&&Mf(s,a)){var l=Df(s,a);return s=pf(s,s.next),l=pf(l,l.next),ff(s,t,i,r,n,o,0),void ff(l,t,i,r,n,o,0)}a=a.next;}s=s.next;}while(s!==e)}function xf(e,t){return e.x-t.x}function vf(e,t){var i=function(e,t){var i,r=t,n=e.x,o=e.y,s=-1/0;do{if(o<=r.y&&o>=r.next.y&&r.next.y!==r.y){var a=r.x+(o-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(a<=n&&a>s&&(s=a,i=r.x=r.x&&r.x>=h&&n!==r.x&&Ef(oi.x||r.x===i.x&&bf(i,r)))&&(i=r,d=l)),r=r.next;}while(r!==c);return i}(e,t);if(!i)return t;var r=Df(i,e);return pf(r,r.next),pf(i,i.next)}function bf(e,t){return Af(e.prev,e,t.prev)<0&&Af(t.next,e,e.next)<0}function wf(e,t,i,r,n){return (e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-i)*n|0)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*n|0)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function Tf(e){var t=e,i=e;do{(t.x=(e-s)*(o-a)&&(e-s)*(r-a)>=(i-s)*(t-a)&&(i-s)*(o-a)>=(n-s)*(r-a)}function Mf(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var i=e;do{if(i.i!==e.i&&i.next.i!==e.i&&i.i!==t.i&&i.next.i!==t.i&&If(i,i.next,e,t))return !0;i=i.next;}while(i!==e);return !1}(e,t)&&(Pf(e,t)&&Pf(t,e)&&function(e,t){var i=e,r=!1,n=(e.x+t.x)/2,o=(e.y+t.y)/2;do{i.y>o!=i.next.y>o&&i.next.y!==i.y&&n<(i.next.x-i.x)*(o-i.y)/(i.next.y-i.y)+i.x&&(r=!r),i=i.next;}while(i!==e);return r}(e,t)&&(Af(e.prev,e,t.prev)||Af(e,t.prev,t))||Sf(e,t)&&Af(e.prev,e,e.next)>0&&Af(t.prev,t,t.next)>0)}function Af(e,t,i){return (t.y-e.y)*(i.x-t.x)-(t.x-e.x)*(i.y-t.y)}function Sf(e,t){return e.x===t.x&&e.y===t.y}function If(e,t,i,r){var n=zf(Af(e,t,i)),o=zf(Af(e,t,r)),s=zf(Af(i,r,e)),a=zf(Af(i,r,t));return n!==o&&s!==a||!(0!==n||!Cf(e,i,t))||!(0!==o||!Cf(e,r,t))||!(0!==s||!Cf(i,e,r))||!(0!==a||!Cf(i,t,r))}function Cf(e,t,i){return t.x<=Math.max(e.x,i.x)&&t.x>=Math.min(e.x,i.x)&&t.y<=Math.max(e.y,i.y)&&t.y>=Math.min(e.y,i.y)}function zf(e){return e>0?1:e<0?-1:0}function Pf(e,t){return Af(e.prev,e,e.next)<0?Af(e,t,e.next)>=0&&Af(e,e.prev,t)>=0:Af(e,t,e.prev)<0||Af(e,e.next,t)<0}function Df(e,t){var i=new kf(e.i,e.x,e.y),r=new kf(t.i,t.x,t.y),n=e.next,o=t.prev;return e.next=t,t.prev=e,i.next=n,n.prev=i,r.next=i,i.prev=r,o.next=r,r.prev=o,r}function Rf(e,t,i,r){var n=new kf(e,t,i);return r?(n.next=r.next,n.prev=r,r.next.prev=n,r.next=n):(n.prev=n,n.next=n),n}function Lf(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ);}function kf(e,t,i){this.i=e,this.x=t,this.y=i,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1;}function Of(e,t,i,r){for(var n=0,o=t,s=i-r;o0&&i.holes.push(r+=e[n-1].length);}return i};var Bf=d(hf.exports);function Ff(e,t){const i=e.length;if(i<=1)return [e];const r=[];let n,o;for(let t=0;t1)for(let e=0;ee.fqid)),this.index=e.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new za,this.indexArray=new Wa,this.indexArray2=new ja,this.programConfigurations=new ec(e.layers,e.zoom),this.segments=new xl,this.segments2=new xl,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.projection=e.projection;}populate(e,t,i,r){this.hasPattern=Uf(\"fill\",this.layers,t);const n=this.layers[0].layout.get(\"fill-sort-key\"),o=[];for(const{feature:s,id:a,index:l,sourceLayerIndex:c}of e){const e=this.layers[0]._featureFilter.needGeometry,h=gp(s,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),h,i))continue;const u=n?n.evaluate(h,{},i,t.availableImages):void 0,d={id:a,properties:s.properties,type:s.type,sourceLayerIndex:c,index:l,geometry:e?h.geometry:_p(s,i,r),patterns:{},sortKey:u};o.push(d);}n&&o.sort(((e,t)=>e.sortKey-t.sortKey));for(const r of o){const{geometry:n,index:o,sourceLayerIndex:s}=r;if(this.hasPattern){const e=Vf(\"fill\",this.layers,r,this.zoom,t);this.patternFeatures.push(e);}else this.addFeature(r,n,o,i,{},t.availableImages,t.brightness);t.featureIndex.insert(e[o].feature,n,o,s,this.index);}}update(e,t,i,r,n){const o=0!==Object.keys(e).length;o&&!this.stateDependentLayers.length||this.programConfigurations.updatePaintArrays(e,t,o?this.stateDependentLayers:this.layers,i,r,n);}addFeatures(e,t,i,r,n,o){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,i,r,o);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,cf),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.indexBuffer2=e.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(e),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy());}addFeature(e,t,i,r,n,o=[],s){for(const e of Ff(t,500)){let t=0;for(const i of e)t+=i.length;const i=this.segments.prepareSegment(t,this.layoutVertexArray,this.indexArray),r=i.vertexLength,n=[],o=[];for(const t of e){if(0===t.length)continue;t!==e[0]&&o.push(n.length/2);const i=this.segments2.prepareSegment(t.length,this.layoutVertexArray,this.indexArray2),r=i.vertexLength;this.layoutVertexArray.emplaceBack(t[0].x,t[0].y),this.indexArray2.emplaceBack(r+t.length-1,r),n.push(t[0].x),n.push(t[0].y);for(let e=1;e>3;}if(n--,1===r||2===r)o+=e.readSVarint(),s+=e.readSVarint(),1===r&&(t&&a.push(t),t=[]),t.push(new Jf(o,s));else {if(7!==r)throw new Error(\"unknown command \"+r);t&&t.push(t[0].clone());}}return t&&a.push(t),a},em.prototype.bbox=function(){var e=this._pbf;e.pos=this._geometry;for(var t=e.readVarint()+e.pos,i=1,r=0,n=0,o=0,s=1/0,a=-1/0,l=1/0,c=-1/0;e.pos>3;}if(r--,1===i||2===i)(n+=e.readSVarint())a&&(a=n),(o+=e.readSVarint())c&&(c=o);else if(7!==i)throw new Error(\"unknown command \"+i)}return [s,l,a,c]},em.prototype.toGeoJSON=function(e,t,i){var r,n,o=this.extent*Math.pow(2,i),s=this.extent*e,a=this.extent*t,l=this.loadGeometry(),c=em.types[this.type];function h(e){for(var t=0;t>3;t=1===r?e.readString():2===r?e.readFloat():3===r?e.readDouble():4===r?e.readVarint64():5===r?e.readVarint():6===r?e.readSVarint():7===r?e.readBoolean():null;}return t}(i));}om.prototype.feature=function(e){if(e<0||e>=this._features.length)throw new Error(\"feature index out of bounds\");this._pbf.pos=this._features[e];var t=this._pbf.readVarint()+this._pbf.pos;return new rm(this._pbf,t,this.extent,this._keys,this._values)};var am=nm;function lm(e,t,i){if(3===e){var r=new am(i,i.readVarint()+i.pos);r.length&&(t[r.name]=r);}}var cm=Kf.VectorTile=function(e,t){this.layers=e.readFields(lm,{},t);},hm=Kf.VectorTileFeature=Qf;function um(e,t,i,r){const n=[],o=0===r?(e,t,i,r,n,o)=>{e.push(new y(o,i+(o-t)/(r-t)*(n-i)));}:(e,t,i,r,n,o)=>{e.push(new y(t+(o-i)/(n-i)*(r-t),o));};for(const s of e){const e=[];for(const n of s){if(n.length<=2)continue;const s=[];for(let e=0;et&&o(s,a,l,c,h,t):u>i?d=t&&o(s,a,l,c,h,t),d>i&&u<=i&&o(s,a,l,c,h,i);}let a=n[n.length-1];const l=0===r?a.x:a.y;l>=t&&l<=i&&s.push(a),s.length&&(a=s[s.length-1],s[0].x===a.x&&s[0].y===a.y||s.push(s[0]),e.push(s));}e.length&&n.push(e);}return n}Kf.VectorTileLayer=nm;class dm{constructor(e){this._stringToNumber={},this._numberToString=[];for(let t=0;t */\nread:function(e,t,i,r,n){var o,s,a=8*n-r-1,l=(1<>1,h=-7,u=i?n-1:0,d=i?-1:1,p=e[t+u];for(u+=d,o=p&(1<<-h)-1,p>>=-h,h+=a;h>0;o=256*o+e[t+u],u+=d,h-=8);for(s=o&(1<<-h)-1,o>>=-h,h+=r;h>0;s=256*s+e[t+u],u+=d,h-=8);if(0===o)o=1-c;else {if(o===l)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,r),o-=c;}return (p?-1:1)*s*Math.pow(2,o-r)},write:function(e,t,i,r,n,o){var s,a,l,c=8*o-n-1,h=(1<>1,d=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,f=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=h):(s=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-s))<1&&(s--,l*=2),(t+=s+u>=1?d/l:d*Math.pow(2,1-u))*l>=2&&(s++,l/=2),s+u>=h?(a=0,s=h):s+u>=1?(a=(t*l-1)*Math.pow(2,n),s+=u):(a=t*Math.pow(2,u-1)*Math.pow(2,n),s=0));n>=8;e[i+p]=255&a,p+=f,a/=256,n-=8);for(s=s<0;e[i+p]=255&s,p+=f,s/=256,c-=8);e[i+p-f]|=128*m;}},fm=_m,mm=pm;function _m(e){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(e)?e:new Uint8Array(e||0),this.pos=0,this.type=0,this.length=this.buf.length;}_m.Varint=0,_m.Fixed64=1,_m.Bytes=2,_m.Fixed32=5;var gm=4294967296,ym=1/gm,xm=\"undefined\"==typeof TextDecoder?null:new TextDecoder(\"utf8\");function vm(e){return e.type===_m.Bytes?e.readVarint()+e.pos:e.pos+1}function bm(e,t,i){return i?4294967296*t+(e>>>0):4294967296*(t>>>0)+(e>>>0)}function wm(e,t,i){var r=t<=16383?1:t<=2097151?2:t<=268435455?3:Math.floor(Math.log(t)/(7*Math.LN2));i.realloc(r);for(var n=i.pos-1;n>=e;n--)i.buf[n+r]=i.buf[n];}function Tm(e,t){for(var i=0;i>>8,e[i+2]=t>>>16,e[i+3]=t>>>24;}function Lm(e,t){return (e[t]|e[t+1]<<8|e[t+2]<<16)+(e[t+3]<<24)}_m.prototype={destroy:function(){this.buf=null;},readFields:function(e,t,i){for(i=i||this.length;this.pos>3,o=this.pos;this.type=7&r,e(n,t,this),this.pos===o&&this.skip(r);}return t},readMessage:function(e,t){return this.readFields(e,t,this.readVarint()+this.pos)},readFixed32:function(){var e=Dm(this.buf,this.pos);return this.pos+=4,e},readSFixed32:function(){var e=Lm(this.buf,this.pos);return this.pos+=4,e},readFixed64:function(){var e=Dm(this.buf,this.pos)+Dm(this.buf,this.pos+4)*gm;return this.pos+=8,e},readSFixed64:function(){var e=Dm(this.buf,this.pos)+Lm(this.buf,this.pos+4)*gm;return this.pos+=8,e},readFloat:function(){var e=mm.read(this.buf,this.pos,!0,23,4);return this.pos+=4,e},readDouble:function(){var e=mm.read(this.buf,this.pos,!0,52,8);return this.pos+=8,e},readVarint:function(e){var t,i,r=this.buf;return t=127&(i=r[this.pos++]),i<128?t:(t|=(127&(i=r[this.pos++]))<<7,i<128?t:(t|=(127&(i=r[this.pos++]))<<14,i<128?t:(t|=(127&(i=r[this.pos++]))<<21,i<128?t:function(e,t,i){var r,n,o=i.buf;if(r=(112&(n=o[i.pos++]))>>4,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<3,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<10,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<17,n<128)return bm(e,r,t);if(r|=(127&(n=o[i.pos++]))<<24,n<128)return bm(e,r,t);if(r|=(1&(n=o[i.pos++]))<<31,n<128)return bm(e,r,t);throw new Error(\"Expected varint not more than 10 bytes\")}(t|=(15&(i=r[this.pos]))<<28,e,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var e=this.readVarint();return e%2==1?(e+1)/-2:e/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var e=this.readVarint()+this.pos,t=this.pos;return this.pos=e,e-t>=12&&xm?function(e,t,i){return xm.decode(e.subarray(t,i))}(this.buf,t,e):function(e,t,i){for(var r=\"\",n=t;n239?4:l>223?3:l>191?2:1;if(n+h>i)break;1===h?l<128&&(c=l):2===h?128==(192&(o=e[n+1]))&&(c=(31&l)<<6|63&o)<=127&&(c=null):3===h?(s=e[n+2],128==(192&(o=e[n+1]))&&128==(192&s)&&((c=(15&l)<<12|(63&o)<<6|63&s)<=2047||c>=55296&&c<=57343)&&(c=null)):4===h&&(s=e[n+2],a=e[n+3],128==(192&(o=e[n+1]))&&128==(192&s)&&128==(192&a)&&((c=(15&l)<<18|(63&o)<<12|(63&s)<<6|63&a)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,h=1):c>65535&&(c-=65536,r+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),r+=String.fromCharCode(c),n+=h;}return r}(this.buf,t,e)},readBytes:function(){var e=this.readVarint()+this.pos,t=this.buf.subarray(this.pos,e);return this.pos=e,t},readPackedVarint:function(e,t){if(this.type!==_m.Bytes)return e.push(this.readVarint(t));var i=vm(this);for(e=e||[];this.pos127;);else if(t===_m.Bytes)this.pos=this.readVarint()+this.pos;else if(t===_m.Fixed32)this.pos+=4;else {if(t!==_m.Fixed64)throw new Error(\"Unimplemented type: \"+t);this.pos+=8;}},writeTag:function(e,t){this.writeVarint(e<<3|t);},realloc:function(e){for(var t=this.length||16;t268435455||e<0?function(e,t){var i,r;if(e>=0?(i=e%4294967296|0,r=e/4294967296|0):(r=~(-e/4294967296),4294967295^(i=~(-e%4294967296))?i=i+1|0:(i=0,r=r+1|0)),e>=0x10000000000000000||e<-0x10000000000000000)throw new Error(\"Given varint doesn't fit into 10 bytes\");t.realloc(10),function(e,t,i){i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,e>>>=7,i.buf[i.pos++]=127&e|128,i.buf[i.pos]=127&(e>>>=7);}(i,0,t),function(e,t){var i=(7&e)<<4;t.buf[t.pos++]|=i|((e>>>=3)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e|((e>>>=7)?128:0),e&&(t.buf[t.pos++]=127&e)))));}(r,t);}(e,this):(this.realloc(4),this.buf[this.pos++]=127&e|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=127&(e>>>=7)|(e>127?128:0),e<=127||(this.buf[this.pos++]=e>>>7&127))));},writeSVarint:function(e){this.writeVarint(e<0?2*-e-1:2*e);},writeBoolean:function(e){this.writeVarint(Boolean(e));},writeString:function(e){e=String(e),this.realloc(4*e.length),this.pos++;var t=this.pos;this.pos=function(e,t,i){for(var r,n,o=0;o55295&&r<57344){if(!n){r>56319||o+1===t.length?(e[i++]=239,e[i++]=191,e[i++]=189):n=r;continue}if(r<56320){e[i++]=239,e[i++]=191,e[i++]=189,n=r;continue}r=n-55296<<10|r-56320|65536,n=null;}else n&&(e[i++]=239,e[i++]=191,e[i++]=189,n=null);r<128?e[i++]=r:(r<2048?e[i++]=r>>6|192:(r<65536?e[i++]=r>>12|224:(e[i++]=r>>18|240,e[i++]=r>>12&63|128),e[i++]=r>>6&63|128),e[i++]=63&r|128);}return i}(this.buf,e,this.pos);var i=this.pos-t;i>=128&&wm(t,i,this),this.pos=t-1,this.writeVarint(i),this.pos+=i;},writeFloat:function(e){this.realloc(4),mm.write(this.buf,e,this.pos,!0,23,4),this.pos+=4;},writeDouble:function(e){this.realloc(8),mm.write(this.buf,e,this.pos,!0,52,8),this.pos+=8;},writeBytes:function(e){var t=e.length;this.writeVarint(t),this.realloc(t);for(var i=0;i=128&&wm(i,r,this),this.pos=i-1,this.writeVarint(r),this.pos+=r;},writeMessage:function(e,t,i){this.writeTag(e,_m.Bytes),this.writeRawMessage(t,i);},writePackedVarint:function(e,t){t.length&&this.writeMessage(e,Tm,t);},writePackedSVarint:function(e,t){t.length&&this.writeMessage(e,Em,t);},writePackedBoolean:function(e,t){t.length&&this.writeMessage(e,Sm,t);},writePackedFloat:function(e,t){t.length&&this.writeMessage(e,Mm,t);},writePackedDouble:function(e,t){t.length&&this.writeMessage(e,Am,t);},writePackedFixed32:function(e,t){t.length&&this.writeMessage(e,Im,t);},writePackedSFixed32:function(e,t){t.length&&this.writeMessage(e,Cm,t);},writePackedFixed64:function(e,t){t.length&&this.writeMessage(e,zm,t);},writePackedSFixed64:function(e,t){t.length&&this.writeMessage(e,Pm,t);},writeBytesField:function(e,t){this.writeTag(e,_m.Bytes),this.writeBytes(t);},writeFixed32Field:function(e,t){this.writeTag(e,_m.Fixed32),this.writeFixed32(t);},writeSFixed32Field:function(e,t){this.writeTag(e,_m.Fixed32),this.writeSFixed32(t);},writeFixed64Field:function(e,t){this.writeTag(e,_m.Fixed64),this.writeFixed64(t);},writeSFixed64Field:function(e,t){this.writeTag(e,_m.Fixed64),this.writeSFixed64(t);},writeVarintField:function(e,t){this.writeTag(e,_m.Varint),this.writeVarint(t);},writeSVarintField:function(e,t){this.writeTag(e,_m.Varint),this.writeSVarint(t);},writeStringField:function(e,t){this.writeTag(e,_m.Bytes),this.writeString(t);},writeFloatField:function(e,t){this.writeTag(e,_m.Fixed32),this.writeFloat(t);},writeDoubleField:function(e,t){this.writeTag(e,_m.Fixed64),this.writeDouble(t);},writeBooleanField:function(e,t){this.writeVarintField(e,Boolean(t));}};var km=d(fm);const Om=[\"tile\",\"layer\",\"source\",\"sourceLayer\",\"state\"];class Bm{constructor(e,t,i,r,n){this.type=\"Feature\",this._vectorTileFeature=e,this._z=t,this._x=i,this._y=r,this.properties=e.properties,this.id=n;}get geometry(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._x,this._y,this._z).geometry),this._geometry}set geometry(e){this._geometry=e;}toJSON(){const e={type:\"Feature\",state:void 0,geometry:this.geometry,properties:this.properties};void 0!==this.id&&(e.id=this.id);for(const t of Om)void 0!==this[t]&&(e[t]=this[t]);return e}}class Fm{constructor(){this.state={},this.stateChanges={},this.deletedStates={};}updateState(e,t,i){const r=String(t);if(this.stateChanges[e]=this.stateChanges[e]||{},this.stateChanges[e][r]=this.stateChanges[e][r]||{},k(this.stateChanges[e][r],i),null===this.deletedStates[e]){this.deletedStates[e]={};for(const t in this.state[e])t!==r&&(this.deletedStates[e][t]=null);}else if(this.deletedStates[e]&&null===this.deletedStates[e][r]){this.deletedStates[e][r]={};for(const t in this.state[e][r])i[t]||(this.deletedStates[e][r][t]=null);}else for(const t in i)this.deletedStates[e]&&this.deletedStates[e][r]&&null===this.deletedStates[e][r][t]&&delete this.deletedStates[e][r][t];}removeFeatureState(e,t,i){if(null===this.deletedStates[e])return;const r=String(t);if(this.deletedStates[e]=this.deletedStates[e]||{},i&&void 0!==t)null!==this.deletedStates[e][r]&&(this.deletedStates[e][r]=this.deletedStates[e][r]||{},this.deletedStates[e][r][i]=null);else if(void 0!==t)if(this.stateChanges[e]&&this.stateChanges[e][r])for(i in this.deletedStates[e][r]={},this.stateChanges[e][r])this.deletedStates[e][r][i]=null;else this.deletedStates[e][r]=null;else this.deletedStates[e]=null;}getState(e,t){const i=String(t),r=k({},(this.state[e]||{})[i],(this.stateChanges[e]||{})[i]);if(null===this.deletedStates[e])return {};if(this.deletedStates[e]){const i=this.deletedStates[e][t];if(null===i)return {};for(const e in i)delete r[e];}return r}initializeTileState(e,t){e.setFeatureState(this.state,t);}coalesceChanges(e,t){const i={};for(const e in this.stateChanges){this.state[e]=this.state[e]||{};const t={};for(const i in this.stateChanges[e])this.state[e][i]||(this.state[e][i]={}),k(this.state[e][i],this.stateChanges[e][i]),t[i]=this.state[e][i];i[e]=t;}for(const e in this.deletedStates){this.state[e]=this.state[e]||{};const t={};if(null===this.deletedStates[e])for(const i in this.state[e])t[i]={},this.state[e][i]={};else for(const i in this.deletedStates[e]){if(null===this.deletedStates[e][i])this.state[e][i]={};else if(this.state[e][i])for(const t of Object.keys(this.deletedStates[e][i]))delete this.state[e][i][t];t[i]=this.state[e][i];}i[e]=i[e]||{},k(i[e],t);}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(i).length)for(const r in e)e[r].setFeatureState(i,t);}}class Nm{constructor(e){this.size=e,this.minimums=[],this.maximums=[],this.leaves=[];}getElevation(e,t){const i=this.toIdx(e,t);return {min:this.minimums[i],max:this.maximums[i]}}isLeaf(e,t){return this.leaves[this.toIdx(e,t)]}toIdx(e,t){return t*this.size+e}}function Um(e,t,i,r){let n=0,o=Number.MAX_VALUE;for(let s=0;s<3;s++)if(Math.abs(r[s])<1e-15){if(i[s]t[s])return null}else {const a=1/r[s];let l=(e[s]-i[s])*a,c=(t[s]-i[s])*a;if(l>c){const e=l;l=c,c=e;}if(l>n&&(n=l),co)return null}return n}function Vm(e,t,i,r,n,o,s,a,l,c,h){const u=r-e,d=n-t,p=o-i,f=s-e,m=a-t,_=l-i,g=h[1]*_-h[2]*m,y=h[2]*f-h[0]*_,x=h[0]*m-h[1]*f,v=u*g+d*y+p*x;if(Math.abs(v)<1e-15)return null;const b=1/v,w=c[0]-e,T=c[1]-t,E=c[2]-i,M=(w*g+T*y+E*x)*b;if(M<0||M>1)return null;const A=T*p-E*d,S=E*u-w*p,I=w*d-T*u,C=(h[0]*A+h[1]*S+h[2]*I)*b;return C<0||M+C>1?null:(f*A+m*S+_*I)*b}function jm(e,t,i){return (e-t)/(i-t)}function Gm(e,t,i,r,n,o,s,a,l){const c=1<{const o=r?1:0,s=(e+1)*i-o,a=t*i,l=(t+1)*i-o;n[0]=e*i,n[1]=a,n[2]=s,n[3]=l;};let s=new Nm(r);const a=[];for(let t=0;t=1;r/=2){const e=i[i.length-1];s=new Nm(r);for(let t=0;t0;){const{idx:a,t:p,nodex:f,nodey:m,depth:_}=d.pop();if(this.leaves[a]){Gm(f,m,_,e,t,i,r,h,u);const a=1<<_,l=(f+0)/a,c=(f+1)/a,d=(m+0)/a,g=(m+1)/a,y=$m(l,d,this.dem)*s,x=$m(c,d,this.dem)*s,v=$m(c,g,this.dem)*s,b=$m(l,g,this.dem)*s,w=Vm(h[0],h[1],y,u[0],h[1],x,u[0],u[1],v,n,o),T=Vm(u[0],u[1],v,h[0],u[1],b,h[0],h[1],y,n,o),E=Math.min(null!==w?w:Number.MAX_VALUE,null!==T?T:Number.MAX_VALUE);if(E!==Number.MAX_VALUE)return E;{const e=Du.scaleAndAdd([],n,o,p);if(Zm(y,x,b,v,jm(e[0],h[0],u[0]),jm(e[1],h[1],u[1]))>=e[2])return p}continue}let g=0;for(let d=0;d=l[c[i]]&&(c.splice(i,0,d),t=!0);t||(c[g]=d),g++;}}for(let e=0;e=this.dim+1||t<-1||t>=this.dim+1)throw new RangeError(\"out of range source coordinates for DEM data\");return (t+1)*this.stride+(e+1)}static pack(e,t){const i=[0,0,0,0],r=Ym.getUnpackVector(t);let n=Math.floor((e+r[3])/r[2]);return i[2]=n%256,n=Math.floor(n/256),i[1]=n%256,n=Math.floor(n/256),i[0]=n,i}getPixels(){return new tf({width:this.stride,height:this.stride},this.pixels)}backfillBorder(e,t,i){if(this.dim!==e.dim)throw new Error(\"dem dimension mismatch\");let r=t*this.dim,n=t*this.dim+this.dim,o=i*this.dim,s=i*this.dim+this.dim;switch(t){case-1:r=n-1;break;case 1:n=r+1;}switch(i){case-1:o=s-1;break;case 1:s=o+1;}const a=-t*this.dim,l=-i*this.dim;for(let t=o;t1)return !1;const i=t.getSource().maxzoom,r=1<1)return t;const n=r.getSource().maxzoom,o=1<{const o=this.getAtTileOffset(e,n.x,n.y),s=r.upVector(e.canonical,n.x,n.y),a=r.upVectorScale(e.canonical,t,i).metersToTile;return Du.scale(s,s,o*a),s}}getForTilePoints(e,t,i,r){if(this.isUsingMockSource())return !1;const n=Jm.create(this,e,r);return !!n&&(t.forEach((e=>{e[2]=this.exaggeration()*n.getElevationAt(e[0],e[1],i);})),!0)}getMinMaxForTile(e){if(this.isUsingMockSource())return null;const t=this.findDEMTileFor(e);if(!t||!t.dem)return null;const i=t.dem.tree,r=t.tileID,n=1<=0&&r[3]>=0&&a.insert(s,r[0],r[1],r[2],r[3]);}}loadVTLayers(){if(!this.vtLayers){this.vtLayers=new cm(new km(this.rawTileData)).layers,this.sourceLayerCoder=new dm(this.vtLayers?Object.keys(this.vtLayers).sort():[\"_geojsonTileLayer\"]),this.vtFeatures={};for(const e in this.vtLayers)this.vtFeatures[e]=[];}return this.vtLayers}query(e,t,i,r){this.loadVTLayers();const n=e.params||{},o=Fo(n.filter),s=e.tileResult,a=e.transform,l=s.bufferedTilespaceBounds,c=this.grid.query(l.min.x,l.min.y,l.max.x,l.max.y,((e,t,i,r)=>Pp(s.bufferedTilespaceGeometry,e,t,i,r)));c.sort(t_);let h=null;a.elevation&&c.length>0&&(h=Jm.create(a.elevation,this.tileID));const u={};let d;for(let a=0;a(f||(f=_p(t,this.tileID.canonical,e.tileTransform)),i.queryIntersectsFeature(s,t,r,f,this.z,e.transform,e.pixelPosMatrix,h,n))));}return u}loadMatchingFeature(e,t,i,r,n,o,s,a,l){const{featureIndex:c,bucketIndex:h,sourceLayerIndex:u,layoutVertexArrayOffset:d}=t,p=this.bucketLayerIDs[h];if(r&&!function(e,t){for(let i=0;i=0)return !0;return !1}(r,p))return;const f=this.sourceLayerCoder.decode(u),m=this.vtLayers[f].feature(c);if(i.needGeometry){const e=gp(m,!0);if(!i.filter(new oa(this.tileID.overscaledZ),e,this.tileID.canonical))return}else if(!i.filter(new oa(this.tileID.overscaledZ),m))return;const _=this.getId(m,f);for(let t=0;t{const s=t instanceof pa?t.get(o):null;return s&&s.evaluate?s.evaluate(i,r,n):s}))}function t_(e,t){return t-e}Rs(Qm,\"FeatureIndex\",{omit:[\"rawTileData\",\"sourceLayerCoder\"]});const i_=Ia([{name:\"a_pos_offset\",components:4,type:\"Int16\"},{name:\"a_tex_size\",components:4,type:\"Uint16\"},{name:\"a_pixeloffset\",components:4,type:\"Int16\"}],4),r_=Ia([{name:\"a_globe_anchor\",components:3,type:\"Int16\"},{name:\"a_globe_normal\",components:3,type:\"Float32\"}],4),n_=Ia([{name:\"a_projected_pos\",components:4,type:\"Float32\"}],4);Ia([{name:\"a_fade_opacity\",components:1,type:\"Uint32\"}],4);const o_=Ia([{name:\"a_z_offset\",components:1,type:\"Float32\"}],4),s_=Ia([{name:\"a_texb\",components:2,type:\"Uint16\"}]),a_=Ia([{name:\"a_placed\",components:2,type:\"Uint8\"},{name:\"a_shift\",components:2,type:\"Float32\"}]),l_=Ia([{name:\"a_size_scale\",components:1,type:\"Float32\"},{name:\"a_padding\",components:2,type:\"Float32\"},{name:\"a_z_offset\",components:1,type:\"Float32\"}]);Ia([{type:\"Int16\",name:\"projectedAnchorX\"},{type:\"Int16\",name:\"projectedAnchorY\"},{type:\"Int16\",name:\"projectedAnchorZ\"},{type:\"Int16\",name:\"tileAnchorX\"},{type:\"Int16\",name:\"tileAnchorY\"},{type:\"Float32\",name:\"x1\"},{type:\"Float32\",name:\"y1\"},{type:\"Float32\",name:\"x2\"},{type:\"Float32\",name:\"y2\"},{type:\"Int16\",name:\"padding\"},{type:\"Uint32\",name:\"featureIndex\"},{type:\"Uint16\",name:\"sourceLayerIndex\"},{type:\"Uint16\",name:\"bucketIndex\"}]);const c_=Ia([{name:\"a_pos\",components:3,type:\"Int16\"},{name:\"a_anchor_pos\",components:2,type:\"Int16\"},{name:\"a_extrude\",components:2,type:\"Int16\"}],4),h_=Ia([{name:\"a_pos_2f\",components:2,type:\"Float32\"},{name:\"a_radius\",components:1,type:\"Float32\"},{name:\"a_flags\",components:2,type:\"Int16\"}],4);Ia([{name:\"triangle\",components:3,type:\"Uint16\"}]),Ia([{type:\"Int16\",name:\"projectedAnchorX\"},{type:\"Int16\",name:\"projectedAnchorY\"},{type:\"Int16\",name:\"projectedAnchorZ\"},{type:\"Float32\",name:\"tileAnchorX\"},{type:\"Float32\",name:\"tileAnchorY\"},{type:\"Uint16\",name:\"glyphStartIndex\"},{type:\"Uint16\",name:\"numGlyphs\"},{type:\"Uint32\",name:\"vertexStartIndex\"},{type:\"Uint32\",name:\"lineStartIndex\"},{type:\"Uint32\",name:\"lineLength\"},{type:\"Uint16\",name:\"segment\"},{type:\"Uint16\",name:\"lowerSize\"},{type:\"Uint16\",name:\"upperSize\"},{type:\"Float32\",name:\"lineOffsetX\"},{type:\"Float32\",name:\"lineOffsetY\"},{type:\"Uint8\",name:\"writingMode\"},{type:\"Uint8\",name:\"placedOrientation\"},{type:\"Uint8\",name:\"hidden\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Int16\",name:\"associatedIconIndex\"},{type:\"Uint8\",name:\"flipState\"}]),Ia([{type:\"Float32\",name:\"tileAnchorX\"},{type:\"Float32\",name:\"tileAnchorY\"},{type:\"Int16\",name:\"projectedAnchorX\"},{type:\"Int16\",name:\"projectedAnchorY\"},{type:\"Int16\",name:\"projectedAnchorZ\"},{type:\"Int16\",name:\"rightJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"centerJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"leftJustifiedTextSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedTextSymbolIndex\"},{type:\"Int16\",name:\"placedIconSymbolIndex\"},{type:\"Int16\",name:\"verticalPlacedIconSymbolIndex\"},{type:\"Uint16\",name:\"key\"},{type:\"Uint16\",name:\"textBoxStartIndex\"},{type:\"Uint16\",name:\"textBoxEndIndex\"},{type:\"Uint16\",name:\"verticalTextBoxStartIndex\"},{type:\"Uint16\",name:\"verticalTextBoxEndIndex\"},{type:\"Uint16\",name:\"iconBoxStartIndex\"},{type:\"Uint16\",name:\"iconBoxEndIndex\"},{type:\"Uint16\",name:\"verticalIconBoxStartIndex\"},{type:\"Uint16\",name:\"verticalIconBoxEndIndex\"},{type:\"Uint16\",name:\"featureIndex\"},{type:\"Uint16\",name:\"numHorizontalGlyphVertices\"},{type:\"Uint16\",name:\"numVerticalGlyphVertices\"},{type:\"Uint16\",name:\"numIconVertices\"},{type:\"Uint16\",name:\"numVerticalIconVertices\"},{type:\"Uint16\",name:\"useRuntimeCollisionCircles\"},{type:\"Uint32\",name:\"crossTileID\"},{type:\"Float32\",components:2,name:\"textOffset\"},{type:\"Float32\",name:\"collisionCircleDiameter\"},{type:\"Float32\",name:\"zOffset\"},{type:\"Uint8\",name:\"hasIconTextFit\"}]),Ia([{type:\"Float32\",name:\"offsetX\"}]),Ia([{type:\"Int16\",name:\"x\"},{type:\"Int16\",name:\"y\"}]);var u_=24;const d_=128;function p_(e,t){const{expression:i}=t;if(\"constant\"===i.kind)return {kind:\"constant\",layoutSize:i.evaluate(new oa(e+1))};if(\"source\"===i.kind)return {kind:\"source\"};{const{zoomStops:t,interpolationType:r}=i;let n=0;for(;n{e.text=function(e,t,i){const r=t.layout.get(\"text-transform\").evaluate(i,{});return \"uppercase\"===r?e=e.toLocaleUpperCase():\"lowercase\"===r&&(e=e.toLocaleLowerCase()),na.applyArabicShaping&&(e=na.applyArabicShaping(e)),e}(e.text,t,i);})),e}const y_={\"!\":\"︕\",\"#\":\"#\",$:\"$\",\"%\":\"%\",\"&\":\"&\",\"(\":\"︵\",\")\":\"︶\",\"*\":\"*\",\"+\":\"+\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\"/\":\"/\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\"=\":\"=\",\">\":\"﹀\",\"?\":\"︖\",\"@\":\"@\",\"[\":\"﹇\",\"\\\\\":\"\\",\"]\":\"﹈\",\"^\":\"^\",_:\"︳\",\"`\":\"`\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"~\":\"~\",\"¢\":\"¢\",\"£\":\"£\",\"¥\":\"¥\",\"¦\":\"¦\",\"¬\":\"¬\",\"¯\":\" ̄\",\"–\":\"︲\",\"—\":\"︱\",\"‘\":\"﹃\",\"’\":\"﹄\",\"“\":\"﹁\",\"”\":\"﹂\",\"…\":\"︙\",\"‧\":\"・\",\"₩\":\"₩\",\"、\":\"︑\",\"。\":\"︒\",\"〈\":\"︿\",\"〉\":\"﹀\",\"《\":\"︽\",\"》\":\"︾\",\"「\":\"﹁\",\"」\":\"﹂\",\"『\":\"﹃\",\"』\":\"﹄\",\"【\":\"︻\",\"】\":\"︼\",\"〔\":\"︹\",\"〕\":\"︺\",\"〖\":\"︗\",\"〗\":\"︘\",\"!\":\"︕\",\"(\":\"︵\",\")\":\"︶\",\",\":\"︐\",\"-\":\"︲\",\".\":\"・\",\":\":\"︓\",\";\":\"︔\",\"<\":\"︿\",\">\":\"﹀\",\"?\":\"︖\",\"[\":\"﹇\",\"]\":\"﹈\",\"_\":\"︳\",\"{\":\"︷\",\"|\":\"―\",\"}\":\"︸\",\"⦅\":\"︵\",\"⦆\":\"︶\",\"。\":\"︒\",\"「\":\"﹁\",\"」\":\"﹂\",\"←\":\"↑\",\"→\":\"↓\"};function x_(e){return \"︶\"===e||\"﹈\"===e||\"︸\"===e||\"﹄\"===e||\"﹂\"===e||\"︾\"===e||\"︼\"===e||\"︺\"===e||\"︘\"===e||\"﹀\"===e||\"︐\"===e||\"︓\"===e||\"︔\"===e||\"`\"===e||\" ̄\"===e||\"︑\"===e||\"︒\"===e}function v_(e){return \"︵\"===e||\"﹇\"===e||\"︷\"===e||\"﹃\"===e||\"﹁\"===e||\"︽\"===e||\"︻\"===e||\"︹\"===e||\"︗\"===e||\"︿\"===e}const b_=3;function w_(e,t,i){t.glyphs=[],1===e&&i.readMessage(T_,t);}function T_(e,t,i){if(3===e){const{id:e,bitmap:r,width:n,height:o,left:s,top:a,advance:l}=i.readMessage(E_,{});t.glyphs.push({id:e,bitmap:new Qp({width:n+2*b_,height:o+2*b_},r),metrics:{width:n,height:o,left:s,top:a,advance:l}});}else 4===e?t.ascender=i.readSVarint():5===e&&(t.descender=i.readSVarint());}function E_(e,t,i){1===e?t.id=i.readVarint():2===e?t.bitmap=i.readBytes():3===e?t.width=i.readVarint():4===e?t.height=i.readVarint():5===e?t.left=i.readSVarint():6===e?t.top=i.readSVarint():7===e&&(t.advance=i.readVarint());}const M_=b_,A_={horizontal:1,vertical:2,horizontalOnly:3},S_=-17;class I_{constructor(){this.scale=1,this.fontStack=\"\",this.imageName=null;}static forText(e,t){const i=new I_;return i.scale=e||1,i.fontStack=t,i}static forImage(e){const t=new I_;return t.imageName=e,t}}class C_{constructor(){this.text=\"\",this.sectionIndex=[],this.sections=[],this.imageSectionID=null;}static fromFeature(e,t){const i=new C_;for(let r=0;r=0&&i>=e&&P_[this.text.charCodeAt(i)];i--)t--;this.text=this.text.substring(e,t),this.sectionIndex=this.sectionIndex.slice(e,t);}substring(e,t){const i=new C_;return i.text=this.text.substring(e,t),i.sectionIndex=this.sectionIndex.slice(e,t),i.sections=this.sections,i}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((e,t)=>Math.max(e,this.sections[t].scale)),0)}addTextSection(e,t){this.text+=e.text,this.sections.push(I_.forText(e.scale,e.fontStack||t));const i=this.sections.length-1;for(let t=0;t=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function z_(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){const m=C_.fromFeature(e,n);u===A_.vertical&&m.verticalizePunctuation(d);let _=[];const g=function(e,t,i,r,n,o){if(!e)return [];const s=[],a=function(e,t,i,r,n,o){let s=0;for(let i=0;i=0;let c=0;for(let i=0;i0&&o>b&&(b=o);}else {const e=i[a.fontStack];if(!e)continue;e[m]&&(E=e[m]);const r=t[a.fontStack];if(!r)continue;const o=r.glyphs[m];if(!o)continue;if(x=o.metrics,A=8203!==m?u_:0,_){const e=void 0!==r.ascender?Math.abs(r.ascender):0,t=void 0!==r.descender?Math.abs(r.descender):0,i=(e+t)*g;w-i/2;){if(s--,s<0)return !1;a-=e[s].dist(o),o=e[s];}a+=e[s].dist(e[s+1]),s++;const l=[];let c=0;for(;ar;)c-=l.shift().angleDelta;if(c>n)return !1;s++,a+=t.dist(i);}return !0}function q_(e){let t=0;for(let i=0;ic){const h=(c-l)/o,u=Kr(r.x,n.x,h),d=Kr(r.y,n.y,h),p=new j_(u,d,0,n.angleTo(r),i);return !s||G_(e,p,a,s,t)?p:void 0}l+=o;}}function H_(e,t,i,r,n,o,s,a,l){const c=Z_(r,o,s),h=$_(r,n),u=h*s,d=0===e[0].x||e[0].x===l||0===e[0].y||e[0].y===l;return t-u=0&&g=0&&y=0&&d+c<=h){const i=new j_(g,y,0,m,t);r&&!G_(e,i,o,r,n)||p.push(i);}}u+=f;}return a||p.length||s||(p=X_(e,u/2,i,r,n,o,s,!0,l)),p}function Y_(e,t,i,r,n){const o=[];for(let s=0;s=r&&c.x>=r||(s.x>=r?s=new y(r,s.y+(r-s.x)/(c.x-s.x)*(c.y-s.y))._round():c.x>=r&&(c=new y(r,s.y+(r-s.x)/(c.x-s.x)*(c.y-s.y))._round()),s.y>=n&&c.y>=n||(s.y>=n?s=new y(s.x+(n-s.y)/(c.y-s.y)*(c.x-s.x),n)._round():c.y>=n&&(c=new y(s.x+(n-s.y)/(c.y-s.y)*(c.x-s.x),n)._round()),l&&s.equals(l[l.length-1])||(l=[s],o.push(l)),l.push(c)))));}}return o}function K_(e){let t=0,i=0;for(const r of e)t+=r.w*r.h,i=Math.max(i,r.w);e.sort(((e,t)=>t.h-e.h));const r=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(t/.95)),i),h:1/0}];let n=0,o=0;for(const t of e)for(let e=r.length-1;e>=0;e--){const i=r[e];if(!(t.w>i.w||t.h>i.h)){if(t.x=i.x,t.y=i.y,o=Math.max(o,t.y+t.h),n=Math.max(n,t.x+t.w),t.w===i.w&&t.h===i.h){const t=r.pop();ee.hasImage(t,i))),e.dispatchRenderCallbacks(this.haveRenderCallbacks,i);for(const r in e.getUpdatedImages(i))this.patchUpdatedImage(this.iconPositions[r],e.getImage(r,i),t),this.patchUpdatedImage(this.patternPositions[r],e.getImage(r,i),t);}patchUpdatedImage(e,t,i){if(!e||!t)return;if(e.version===t.version)return;e.version=t.version;const[r,n]=e.tl;i.update(t.data,void 0,{x:r,y:n});}}Rs(Q_,\"ImagePosition\"),Rs(eg,\"ImageAtlas\");const tg=1e20;function ig(e,t,i,r,n,o,s,a,l){for(let c=t;c-1);l++,o[l]=a,s[l]=c,s[l+1]=tg;}for(let a=0,l=0;a{let r=this.entries[e];r||(r=this.entries[e]={glyphs:{},requests:{},ranges:{},ascender:void 0,descender:void 0});let n=r.glyphs[t];if(void 0!==n)return void i(null,{stack:e,id:t,glyph:n});if(n=this._tinySDF(r,e,t),n)return r.glyphs[t]=n,void i(null,{stack:e,id:t,glyph:n});const s=Math.floor(t/256);if(256*s>65535)return void i(new Error(\"glyphs > 65535 not supported\"));if(r.ranges[s])return void i(null,{stack:e,id:t,glyph:n});let a=r.requests[s];a||(a=r.requests[s]=[],og.loadGlyphRange(e,s,o,this.requestManager,((e,t)=>{if(t){r.ascender=t.ascender,r.descender=t.descender;for(const e in t.glyphs)this._doesCharSupportLocalGlyph(+e)||(r.glyphs[+e]=t.glyphs[+e]);r.ranges[s]=!0;}for(const i of a)i(e,t);delete r.requests[s];}))),a.push(((r,n)=>{r?i(r):n&&i(null,{stack:e,id:t,glyph:n.glyphs[t]||null});}));}),((e,t)=>{if(e)i(e);else if(t){const e={};for(const{stack:i,id:r,glyph:n}of t)void 0===e[i]&&(e[i]={}),void 0===e[i].glyphs&&(e[i].glyphs={}),e[i].glyphs[r]=n&&{id:n.id,bitmap:n.bitmap.clone(),metrics:n.metrics},e[i].ascender=this.entries[i].ascender,e[i].descender=this.entries[i].descender;i(null,e);}}));}_doesCharSupportLocalGlyph(e){return 0!==this.localGlyphMode&&(2===this.localGlyphMode?!!this.localFontFamily:!!this.localFontFamily&&(Fs[\"CJK Unified Ideographs\"](e)||Fs[\"Hangul Syllables\"](e)||Fs.Hiragana(e)||Fs.Katakana(e)||Fs[\"CJK Symbols and Punctuation\"](e)||Fs[\"CJK Unified Ideographs Extension A\"](e)||Fs[\"CJK Unified Ideographs Extension B\"](e)))}_tinySDF(e,t,i){const r=this.localFontFamily;if(!r||!this._doesCharSupportLocalGlyph(i))return;let n=e.tinySDF;if(!n){let i=\"400\";/bold/i.test(t)?i=\"900\":/medium/i.test(t)?i=\"500\":/light/i.test(t)&&(i=\"200\"),n=e.tinySDF=new og.TinySDF({fontFamily:r,fontWeight:i,fontSize:24*ng,buffer:3*ng,radius:8*ng}),n.fontWeight=i;}if(this.localGlyphs[n.fontWeight][i])return this.localGlyphs[n.fontWeight][i];const o=String.fromCodePoint(i),{data:s,width:a,height:l,glyphWidth:c,glyphHeight:h,glyphLeft:u,glyphTop:d,glyphAdvance:p}=n.draw(o);return this.localGlyphs[n.fontWeight][i]={id:i,bitmap:new Qp({width:a,height:l},s),metrics:{width:c/ng,height:h/ng,left:u/ng,top:d/ng-27,advance:p/ng,localGlyph:!0}}}}og.loadGlyphRange=function(e,t,i,r,n){const o=256*t,s=o+255,a=r.transformRequest(r.normalizeGlyphsURL(i).replace(\"{fontstack}\",e).replace(\"{range}\",`${o}-${s}`),ye.Glyphs);Te(a,((e,t)=>{if(e)n(e);else if(t){const e={},i=function(e){return new km(e).readFields(w_,{})}(t);for(const t of i.glyphs)e[t.id]=t;n(null,{glyphs:e,ascender:i.ascender,descender:i.descender});}}));},og.TinySDF=class{constructor({fontSize:e=24,buffer:t=3,radius:i=8,cutoff:r=.25,fontFamily:n=\"sans-serif\",fontWeight:o=\"normal\",fontStyle:s=\"normal\"}={}){this.buffer=t,this.cutoff=r,this.radius=i;const a=this.size=e+4*t,l=this._createCanvas(a),c=this.ctx=l.getContext(\"2d\",{willReadFrequently:!0});c.font=`${s} ${o} ${e}px ${n}`,c.textBaseline=\"alphabetic\",c.textAlign=\"left\",c.fillStyle=\"black\",this.gridOuter=new Float64Array(a*a),this.gridInner=new Float64Array(a*a),this.f=new Float64Array(a),this.z=new Float64Array(a+1),this.v=new Uint16Array(a);}_createCanvas(e){const t=document.createElement(\"canvas\");return t.width=t.height=e,t}draw(e){const{width:t,actualBoundingBoxAscent:i,actualBoundingBoxDescent:r,actualBoundingBoxLeft:n,actualBoundingBoxRight:o}=this.ctx.measureText(e),s=Math.ceil(i),a=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(o-n))),l=Math.min(this.size-this.buffer,s+Math.ceil(r)),c=a+2*this.buffer,h=l+2*this.buffer,u=Math.max(c*h,0),d=new Uint8ClampedArray(u),p={data:d,width:c,height:h,glyphWidth:a,glyphHeight:l,glyphTop:s,glyphLeft:0,glyphAdvance:t};if(0===a||0===l)return p;const{ctx:f,buffer:m,gridInner:_,gridOuter:g}=this;f.clearRect(m,m,a,l),f.fillText(e,m,m+s);const y=f.getImageData(m,m,a,l);g.fill(tg,0,u),_.fill(0,0,u);for(let e=0;e0?e*e:0,_[r]=e<0?e*e:0;}}ig(g,0,0,c,h,c,this.f,this.v,this.z),ig(_,m,m,a,l,c,this.f,this.v,this.z);for(let e=0;ee+t[1]-t[0],f=u.reduce(p,0),m=d.reduce(p,0),_=a-f,g=l-m;let x=0,v=f,b=0,w=m,T=0,E=_,M=0,A=g;if(o.content&&r){const e=o.content;x=lg(u,0,e[0]),b=lg(d,0,e[1]),v=lg(u,e[0],e[2]),w=lg(d,e[1],e[3]),T=e[0]-x,M=e[1]-b,E=e[2]-e[0]-v,A=e[3]-e[1]-w;}const S=(r,n,a,l)=>{const u=hg(r.stretch-x,v,c,e.left),d=ug(r.fixed-T,E,r.stretch,f),p=hg(n.stretch-b,w,h,e.top),_=ug(n.fixed-M,A,n.stretch,m),g=hg(a.stretch-x,v,c,e.left),S=ug(a.fixed-T,E,a.stretch,f),I=hg(l.stretch-b,w,h,e.top),C=ug(l.fixed-M,A,l.stretch,m),z=new y(u,p),P=new y(g,p),D=new y(g,I),R=new y(u,I),L=new y(d/s,_/s),k=new y(S/s,C/s),O=t*Math.PI/180;if(O){const e=Math.sin(O),t=Math.cos(O),i=[t,-e,e,t];z._matMult(i),P._matMult(i),R._matMult(i),D._matMult(i);}const B=r.stretch+r.fixed,F=a.stretch+a.fixed,N=n.stretch+n.fixed,U=l.stretch+l.fixed,V=e.imageSecondary;return {tl:z,tr:P,bl:R,br:D,texPrimary:{x:o.paddedRect.x+sg+B,y:o.paddedRect.y+sg+N,w:F-B,h:U-N},texSecondary:V?{x:V.paddedRect.x+sg+B,y:V.paddedRect.y+sg+N,w:F-B,h:U-N}:void 0,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:L,pixelOffsetBR:k,minFontScaleX:E/s/c,minFontScaleY:A/s/h,isSDF:i}};if(r&&(o.stretchX||o.stretchY)){const e=cg(u,_,f),t=cg(d,g,m);for(let i=0;io)&&(o=t.x),(!e||t.y>s)&&(s=t.y);}const l=Math.min(o-r,s-n);let c=l/2;const h=new lr([],fg);if(0===l)return new y(r,n);for(let t=r;tu.d||!u.d)&&(u=r,i&&console.log(\"found best %d after %d probes\",Math.round(1e4*r.d)/1e4,d)),r.max-u.d<=t||(c=r.h/2,h.push(new mg(r.p.x-c,r.p.y-c,c,e)),h.push(new mg(r.p.x+c,r.p.y-c,c,e)),h.push(new mg(r.p.x-c,r.p.y+c,c,e)),h.push(new mg(r.p.x+c,r.p.y+c,c,e)),d+=4);}return i&&(console.log(`num probes: ${d}`),console.log(`best distance: ${u.d}`)),u.p}function fg(e,t){return t.max-e.max}class mg{constructor(e,t,i,r){this.p=new y(e,t),this.h=i,this.d=function(e,t){let i=!1,r=1/0;for(let n=0;ne.y!=a.y>e.y&&e.x<(a.x-n.x)*(e.y-n.y)/(a.y-n.y)+n.x&&(i=!i),r=Math.min(r,Ip(e,n,a));}}return (i?1:-1)*Math.sqrt(r)}(this.p,r),this.max=this.d+this.h*Math.SQRT2;}}const _g=7,gg=Number.POSITIVE_INFINITY,yg=Math.sqrt(2);function xg(e,[t,i]){let r=0,n=0;if(i===gg){t<0&&(t=0);const i=t/yg;switch(e){case\"top-right\":case\"top-left\":n=i-_g;break;case\"bottom-right\":case\"bottom-left\":n=-i+_g;break;case\"bottom\":n=-t+_g;break;case\"top\":n=t-_g;}switch(e){case\"top-right\":case\"bottom-right\":r=-i;break;case\"top-left\":case\"bottom-left\":r=i;break;case\"left\":r=t;break;case\"right\":r=-t;}}else {switch(t=Math.abs(t),i=Math.abs(i),e){case\"top-right\":case\"top-left\":case\"top\":n=i-_g;break;case\"bottom-right\":case\"bottom-left\":case\"bottom\":n=-i+_g;}switch(e){case\"top-right\":case\"bottom-right\":case\"right\":r=-t;break;case\"top-left\":case\"bottom-left\":case\"left\":r=t;}}return [r,n]}function vg(e,t,i,r,n,o,s,a,l,c,h){e.createArrays(),e.tilePixelRatio=cr/(512*e.overscaling),e.compareText={},e.iconsNeedLinear=!1;const u=e.layers[0].layout,d=e.layers[0]._unevaluatedLayout._values,p={};if(\"composite\"===e.textSizeData.kind){const{minZoom:t,maxZoom:i}=e.textSizeData;p.compositeTextSizes=[d[\"text-size\"].possiblyEvaluate(new oa(t),a),d[\"text-size\"].possiblyEvaluate(new oa(i),a)];}if(\"composite\"===e.iconSizeData.kind){const{minZoom:t,maxZoom:i}=e.iconSizeData;p.compositeIconSizes=[d[\"icon-size\"].possiblyEvaluate(new oa(t),a),d[\"icon-size\"].possiblyEvaluate(new oa(i),a)];}p.layoutTextSize=d[\"text-size\"].possiblyEvaluate(new oa(l+1),a),p.layoutIconSize=d[\"icon-size\"].possiblyEvaluate(new oa(l+1),a),p.textMaxSize=d[\"text-size\"].possiblyEvaluate(new oa(18),a);const f=\"map\"===u.get(\"text-rotation-alignment\")&&\"point\"!==u.get(\"symbol-placement\"),m=u.get(\"text-size\");let _=!1;for(const t of e.features)if(t.icon&&t.icon.nameSecondary){_=!0;break}for(const o of e.features){const l=u.get(\"text-font\").evaluate(o,{},a).join(\",\"),d=m.evaluate(o,{},a),g=p.layoutTextSize.evaluate(o,{},a),y=(p.layoutIconSize.evaluate(o,{},a),{horizontal:{},vertical:void 0}),x=o.text;let v,b=[0,0];if(x){const r=x.toString(),s=u.get(\"text-letter-spacing\").evaluate(o,{},a)*u_,c=u.get(\"text-line-height\").evaluate(o,{},a)*u_,h=Us(r)?s:0,p=u.get(\"text-anchor\").evaluate(o,{},a),m=u.get(\"text-variable-anchor\");if(!m){const e=u.get(\"text-radial-offset\").evaluate(o,{},a);b=e?xg(p,[e*u_,gg]):u.get(\"text-offset\").evaluate(o,{},a).map((e=>e*u_));}let _=f?\"center\":u.get(\"text-justify\").evaluate(o,{},a);const v=\"point\"===u.get(\"symbol-placement\"),w=v?u.get(\"text-max-width\").evaluate(o,{},a)*u_:1/0,T=o=>{e.allowVerticalPlacement&&Ns(r)&&(y.vertical=z_(x,t,i,n,l,w,c,p,o,h,b,A_.vertical,!0,g,d));};if(!f&&m){const e=\"auto\"===_?m.map((e=>bg(e))):[_];let r=!1;for(let o=0;o=0||!Ns(r)){const e=z_(x,t,i,n,l,w,c,p,_,h,b,A_.horizontal,!1,g,d);e&&(y.horizontal[_]=e);}T(v?\"left\":_);}}let w=!1;if(o.icon&&o.icon.namePrimary){const t=r[o.icon.namePrimary];t&&(v=U_(n[o.icon.namePrimary],o.icon.nameSecondary?n[o.icon.nameSecondary]:void 0,u.get(\"icon-offset\").evaluate(o,{},a),u.get(\"icon-anchor\").evaluate(o,{},a)),w=t.sdf,void 0===e.sdfIcons?e.sdfIcons=t.sdf:e.sdfIcons!==t.sdf&&H(\"Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer\"),(t.pixelRatio!==e.pixelRatio||0!==u.get(\"icon-rotate\").constantOr(1))&&(e.iconsNeedLinear=!0));}const T=Ag(y.horizontal)||y.vertical;e.iconsInText||(e.iconsInText=!!T&&T.iconsInText),(T||v)&&wg(e,o,y,v,r,p,g,0,b,w,s,a,c,h,_);}o&&e.generateCollisionDebugBuffers(l,e.collisionBoxArray);}function bg(e){switch(e){case\"right\":case\"top-right\":case\"bottom-right\":return \"right\";case\"left\":case\"top-left\":case\"bottom-left\":return \"left\"}return \"center\"}function wg(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){let m=o.textMaxSize.evaluate(t,{},u);void 0===m&&(m=s);const _=e.layers[0].layout,g=_.get(\"icon-offset\").evaluate(t,{},u),y=Ag(i.horizontal)||i.vertical,x=\"globe\"===d.name,v=u_,b=s/v,T=e.tilePixelRatio*m/v,E=(D=e.overscaling,e.zoom>18&&D>2&&(D>>=1),Math.max(cr/(512*D),1)*_.get(\"symbol-spacing\")),M=_.get(\"text-padding\")*e.tilePixelRatio,A=_.get(\"icon-padding\")*e.tilePixelRatio,S=w(_.get(\"text-max-angle\")),I=\"map\"===_.get(\"text-rotation-alignment\")&&\"point\"!==_.get(\"symbol-placement\"),C=\"map\"===_.get(\"icon-rotation-alignment\")&&\"point\"!==_.get(\"symbol-placement\"),z=_.get(\"symbol-placement\"),P=E/2;var D;const R=_.get(\"icon-text-fit\").evaluate(t,{},u),L=_.get(\"icon-text-fit-padding\").evaluate(t,{},u),k=\"none\"!==R;let O;!1===e.hasAnyIconTextFit&&k&&(e.hasAnyIconTextFit=!0),r&&k&&(e.allowVerticalPlacement&&i.vertical&&(O=V_(r,i.vertical,R,L,g,b)),y&&(r=V_(r,y,R,L,g,b)));const B=(s,a,m)=>{if(a.x<0||a.x>=cr||a.y<0||a.y>=cr)return;let _=null;if(x){const{x:e,y:t,z:i}=d.projectTilePoint(a.x,a.y,m);_={anchor:new j_(e,t,i,0,void 0),up:d.upVector(m,a.x,a.y)};}!function(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y,x,v,b,w,T,E,M,A){const S=e.addToLineVertexArray(t,r);let I,C,z,P,D,R,L,k=0,O=0,B=0,F=0,N=-1,U=-1;const V={};let j=Cl(\"\");const G=i?i.anchor:t,q=\"none\"!==l.layout.get(\"icon-text-fit\").evaluate(v,{},E);let Z=0,$=0;if(void 0===l._unevaluatedLayout.getValue(\"text-radial-offset\")?[Z,$]=l.layout.get(\"text-offset\").evaluate(v,{},E).map((e=>e*u_)):(Z=l.layout.get(\"text-radial-offset\").evaluate(v,{},E)*u_,$=gg),e.allowVerticalPlacement&&n.vertical){const e=n.vertical;if(f)R=Ig(e),a&&(L=Ig(a));else {const i=l.layout.get(\"text-rotate\").evaluate(v,{},E)+90;z=Sg(c,G,t,h,u,d,e,p,i,m),a&&(P=Sg(c,G,t,h,u,d,a,g,i));}}if(o){const r=l.layout.get(\"icon-rotate\").evaluate(v,{},E),n=ag(o,r,w,q),s=a?ag(a,r,w,q):void 0;C=Sg(c,G,t,h,u,d,o,g,r),k=4*n.length;const p=e.iconSizeData;let f=null;\"source\"===p.kind?(f=[d_*l.layout.get(\"icon-size\").evaluate(v,{},E)],f[0]>Eg&&H(`${e.layerIds[0]}: Value for \"icon-size\" is >= ${Tg}. Reduce your \"icon-size\".`)):\"composite\"===p.kind&&(f=[d_*b.compositeIconSizes[0].evaluate(v,{},E),d_*b.compositeIconSizes[1].evaluate(v,{},E)],(f[0]>Eg||f[1]>Eg)&&H(`${e.layerIds[0]}: Value for \"icon-size\" is >= ${Tg}. Reduce your \"icon-size\".`)),e.addSymbols(e.icon,n,f,x,y,v,!1,i,t,S.lineStartIndex,S.lineLength,-1,T,E,M,A),N=e.icon.placedSymbolArray.length-1,s&&(O=4*s.length,e.addSymbols(e.icon,s,f,x,y,v,A_.vertical,i,t,S.lineStartIndex,S.lineLength,-1,T,E,M,A),U=e.icon.placedSymbolArray.length-1);}for(const r in n.horizontal){const o=n.horizontal[r];I||(j=Cl(o.text),f?D=Ig(o):I=Sg(c,G,t,h,u,d,o,p,l.layout.get(\"text-rotate\").evaluate(v,{},E),m));const a=1===o.positionedLines.length;if(B+=Mg(e,i,t,o,s,l,f,v,m,S,n.vertical?A_.horizontal:A_.horizontalOnly,a?Object.keys(n.horizontal):[r],V,N,b,T,E,M),a)break}n.vertical&&(F+=Mg(e,i,t,n.vertical,s,l,f,v,m,S,A_.vertical,[\"vertical\"],V,U,b,T,E,M));let W=-1;const X=(e,t)=>e?Math.max(e,t):t;W=X(D,W),W=X(R,W),W=X(L,W);const Y=W>-1?1:0;e.glyphOffsetArray.length>=gy.MAX_GLYPHS&&H(\"Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907\"),void 0!==v.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,v.sortKey),e.symbolInstances.emplaceBack(t.x,t.y,G.x,G.y,G.z,V.right>=0?V.right:-1,V.center>=0?V.center:-1,V.left>=0?V.left:-1,V.vertical>=0?V.vertical:-1,N,U,j,void 0!==I?I:e.collisionBoxArray.length,void 0!==I?I+1:e.collisionBoxArray.length,void 0!==z?z:e.collisionBoxArray.length,void 0!==z?z+1:e.collisionBoxArray.length,void 0!==C?C:e.collisionBoxArray.length,void 0!==C?C+1:e.collisionBoxArray.length,P||e.collisionBoxArray.length,P?P+1:e.collisionBoxArray.length,h,B,F,k,O,Y,0,Z,$,W,0,q?1:0);}(e,a,_,s,i,r,n,O,e.layers[0],e.collisionBoxArray,t.index,t.sourceLayerIndex,e.index,M,I,l,0,A,C,g,t,o,c,h,u,p,f);};if(\"line\"===z)for(const n of Y_(t.geometry,0,0,cr,cr)){const t=H_(n,E,S,i.vertical||y,r,v,T,e.overscaling,cr);for(const i of t)y&&Cg(e,y.text,P,i)||B(n,i,u);}else if(\"line-center\"===z){for(const e of t.geometry)if(e.length>1){const t=W_(e,S,i.vertical||y,r,v,T);t&&B(e,t,u);}}else if(\"Polygon\"===t.type)for(const e of Ff(t.geometry,0)){const t=pg(e,16);B(e[0],new j_(t.x,t.y,0,0,void 0),u);}else if(\"LineString\"===t.type)for(const e of t.geometry)B(e,new j_(e[0].x,e[0].y,0,0,void 0),u);else if(\"Point\"===t.type)for(const e of t.geometry)for(const t of e)B([t],new j_(t.x,t.y,0,0,void 0),u);}const Tg=255,Eg=Tg*d_;function Mg(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g){const x=function(e,t,i,r,n,o,s,a){const l=[];if(0===t.positionedLines.length)return l;const c=r.layout.get(\"text-rotate\").evaluate(o,{})*Math.PI/180,h=function(e){const t=e[0],i=e[1],r=t*i;return r>0?[t,-i]:r<0?[-t,i]:0===t?[i,t]:[i,-t]}(i);let u=Math.abs(t.top-t.bottom);for(const e of t.positionedLines)u-=e.lineOffset;const d=t.positionedLines.length,p=u/d;let f=t.top-i[1];for(let e=0;eEg&&H(`${e.layerIds[0]}: Value for \"text-size\" is >= ${Tg}. Reduce your \"text-size\".`)):\"composite\"===v.kind&&(b=[d_*f.compositeTextSizes[0].evaluate(a,{},_),d_*f.compositeTextSizes[1].evaluate(a,{},_)],(b[0]>Eg||b[1]>Eg)&&H(`${e.layerIds[0]}: Value for \"text-size\" is >= ${Tg}. Reduce your \"text-size\".`)),e.addSymbols(e.text,x,b,l,s,a,h,t,i,c.lineStartIndex,c.lineLength,p,m,_,g,!1);for(const t of u)d[t]=e.text.placedSymbolArray.length-1;return 4*x.length}function Ag(e){for(const t in e)return e[t];return null}function Sg(e,t,i,r,n,o,s,a,l,c){let h=s.top,u=s.bottom,d=s.left,p=s.right;const f=s.collisionPadding;if(f&&(d-=f[0],h-=f[1],p+=f[2],u+=f[3]),l){const e=new y(d,h),t=new y(p,h),i=new y(d,u),r=new y(p,u),n=w(l);let o=new y(0,0);c&&(o=new y(c[0],c[1])),e._rotateAround(n,o),t._rotateAround(n,o),i._rotateAround(n,o),r._rotateAround(n,o),d=Math.min(e.x,t.x,i.x,r.x),p=Math.max(e.x,t.x,i.x,r.x),h=Math.min(e.y,t.y,i.y,r.y),u=Math.max(e.y,t.y,i.y,r.y);}return e.emplaceBack(t.x,t.y,t.z,i.x,i.y,d,h,p,u,a,r,n,o),e.length-1}function Ig(e){e.collisionPadding&&(e.top-=e.collisionPadding[1],e.bottom+=e.collisionPadding[3]);const t=e.bottom-e.top;return t>0?Math.max(10,t):null}function Cg(e,t,i,r){const n=e.compareText;if(t in n){const e=n[t];for(let t=e.length-1;t>=0;t--)if(r.dist(e[t])x&&(v(e,c,r,n,a,l),v(c,i,a,l,o,s));}v(u,d,r,o,n,o),v(d,p,n,o,n,s),v(p,f,n,s,r,s),v(f,u,r,s,r,o),m-=x,_-=x,g+=x,y+=x;const b=1/Math.max(g-m,y-_);return {scale:b,x:m*b,y:_*b,x2:g*b,y2:y*b,projection:t}}function Dg(e,t,i,r,n,o,s,a,l){if(\"globe\"===l.name)return yd(e,t,new ju(i,r,n),!1);const c=Pg({z:i,x:r,y:n},l);return new ed([(o+c.x/c.scale)*t,t*(c.y/c.scale),s],[(o+c.x2/c.scale)*t,t*(c.y2/c.scale),a])}function Rg(e,{x:t,y:i},r=0){return new y(((t-r)*e.scale-e.x)*cr,(i*e.scale-e.y)*cr)}function Lg(e,t,i=0){return Du.fromValues(((t.x-i)*e.scale-e.x)*cr,(t.y*e.scale-e.y)*cr,ip(t.z,t.y))}const kg=Au.identity(new Float32Array(16));class Og{constructor(e){this.spec=e,this.name=e.name,this.wrap=!1,this.requiresDraping=!1,this.supportsWorldCopies=!1,this.supportsTerrain=!1,this.supportsFog=!1,this.supportsFreeCamera=!1,this.zAxisUnit=\"meters\",this.isReprojectedInTileSpace=!0,this.unsupportedLayers=[\"custom\"],this.center=[0,0],this.range=[3.5,7];}project(e,t){return {x:0,y:0,z:0}}unproject(e,t){return new Wd(0,0)}projectTilePoint(e,t,i){return {x:e,y:t,z:0}}locationPoint(e,t,i=!0){return e._coordinatePoint(e.locationCoordinate(t),i)}pixelsPerMeter(e,t){return Qd(1,e)*t}pixelSpaceConversion(e,t,i){return 1}farthestPixelDistance(e){return zg(e,e.pixelsPerMeter)}pointCoordinate(e,t,i,r){const n=e.horizonLineFromTop(!1),o=new y(t,Math.max(n,i));return e.rayIntersectionCoordinate(e.pointRayIntersection(o,r))}pointCoordinate3D(e,t,i){const r=new y(t,i);if(e.elevation)return e.elevation.pointCoordinate(r);{const t=this.pointCoordinate(e,r.x,r.y,0);return [t.x,t.y,t.z]}}isPointAboveHorizon(e,t){if(e.elevation)return !this.pointCoordinate3D(e,t.x,t.y);const i=e.horizonLineFromTop();return t.y0?t<-Zg+i&&(t=-Zg+i):t>Zg-i&&(t=Zg-i);const o=n/Math.pow($g(t),r);let s=o*Math.sin(r*e),a=n-o*Math.cos(r*e);return s=.5*(s/Math.PI+.5),a=.5*(a/Math.PI+.5),{x:s,y:this.southernCenter?a:1-a,z:0}}unproject(e,t){e=(2*e-.5)*Math.PI,this.southernCenter&&(t=1-t),t=(2*(1-t)-.5)*Math.PI;const{n:i,f:r}=this,n=r-t,o=Math.sign(n),s=Math.sign(i)*Math.sqrt(e*e+n*n);let a=Math.atan2(e,Math.abs(n))*o;n*i<0&&(a-=Math.PI*Math.sign(e)*o);const l=z(T(a/i)+this.center[0],-180,180),c=z(T(2*Math.atan(Math.pow(r/s,1/i))-Zg),-rp,rp);return new Wd(l,this.southernCenter?-c:c)}}class Hg extends Og{constructor(e){super(e),this.wrap=!0,this.supportsWorldCopies=!0,this.supportsTerrain=!0,this.supportsFog=!0,this.supportsFreeCamera=!0,this.isReprojectedInTileSpace=!1,this.unsupportedLayers=[],this.range=null;}project(e,t){return {x:Kd(e),y:Jd(t),z:0}}unproject(e,t){const i=ep(e),r=tp(t);return new Wd(i,r)}}const Xg=w(rp);class Yg extends Og{project(e,t){const i=(t=w(t))*t,r=i*i;return {x:.5*((e=w(e))*(.8707-.131979*i+r*(r*(.003971*i-.001529*r)-.013791))/Math.PI+.5),y:1-.5*(t*(1.007226+i*(.015085+r*(.028874*i-.044475-.005916*r)))/Math.PI+1),z:0}}unproject(e,t){e=(2*e-.5)*Math.PI;let i=t=(2*(1-t)-1)*Math.PI,r=25,n=0,o=i*i;do{o=i*i;const e=o*o;n=(i*(1.007226+o*(.015085+e*(.028874*o-.044475-.005916*e)))-t)/(1.007226+o*(.045255+e*(.259866*o-.311325-.005916*11*e))),i=z(i-n,-Xg,Xg);}while(Math.abs(n)>1e-6&&--r>0);o=i*i;const s=z(T(e/(.8707+o*(o*(o*o*o*(.003971-.001529*o)-.013791)-.131979))),-180,180),a=T(i);return new Wd(s,a)}}const Kg=w(rp);class Jg extends Og{project(e,t){t=w(t),e=w(e);const i=Math.cos(t),r=2/Math.PI,n=Math.acos(i*Math.cos(e/2)),o=Math.sin(n)/n,s=.5*(e*r+2*i*Math.sin(e/2)/o)||0,a=.5*(t+Math.sin(t)/o)||0;return {x:.5*(s/Math.PI+.5),y:1-.5*(a/Math.PI+1),z:0}}unproject(e,t){let i=e=(2*e-.5)*Math.PI,r=t=(2*(1-t)-1)*Math.PI,n=25;const o=1e-6;let s=0,a=0;do{const n=Math.cos(r),o=Math.sin(r),l=2*o*n,c=o*o,h=n*n,u=Math.cos(i/2),d=Math.sin(i/2),p=2*u*d,f=d*d,m=1-h*u*u,_=m?1/m:0,g=m?Math.acos(n*u)*Math.sqrt(1/m):0,y=.5*(2*g*n*d+2*i/Math.PI)-e,x=.5*(g*o+r)-t,v=.5*_*(h*f+g*n*u*c)+1/Math.PI,b=_*(p*l/4-g*o*d),w=.125*_*(l*d-g*o*h*p),T=.5*_*(c*u+g*f*n)+.5,E=b*w-T*v;s=(x*b-y*T)/E,a=(y*w-x*v)/E,i=z(i-s,-Math.PI,Math.PI),r=z(r-a,-Kg,Kg);}while((Math.abs(s)>o||Math.abs(a)>o)&&--n>0);return new Wd(T(i),T(r))}}class Qg extends Og{constructor(e){super(e),this.center=e.center||[0,0],this.parallels=e.parallels||[0,0],this.cosPhi=Math.max(.01,Math.cos(w(this.parallels[0]))),this.scale=1/(2*Math.max(Math.PI*this.cosPhi,1/this.cosPhi)),this.wrap=!0,this.supportsWorldCopies=!0;}project(e,t){const{scale:i,cosPhi:r}=this;return {x:w(e)*r*i+.5,y:-Math.sin(w(t))/r*i+.5,z:0}}unproject(e,t){const{scale:i,cosPhi:r}=this,n=-(t-.5)/i,o=z(T((e-.5)/i)/r,-180,180),s=Math.asin(z(n*r,-1,1)),a=z(T(s),-rp,rp);return new Wd(o,a)}}class ey extends Hg{constructor(e){super(e),this.requiresDraping=!0,this.supportsWorldCopies=!1,this.supportsFog=!0,this.zAxisUnit=\"pixels\",this.unsupportedLayers=[\"debug\"],this.range=[3,5];}projectTilePoint(e,t,i){const r=Td(e,t,i),n=Ad(fd(i));return Du.transformMat4(r,r,n),{x:r[0],y:r[1],z:r[2]}}locationPoint(e,t){const i=wd(t.lat,t.lng),r=Du.normalize([],i),n=e.elevation?e.elevation.getAtPointOrZero(e.locationCoordinate(t),e._centerAltitude):e._centerAltitude,o=Qd(1,0)*cr*n;Du.scaleAndAdd(i,i,r,o);const s=Au.identity(new Float64Array(16));return Au.multiply(s,e.pixelMatrix,e.globeMatrix),Du.transformMat4(i,i,s),new y(i[0],i[1])}pixelsPerMeter(e,t){return Qd(1,0)*t}pixelSpaceConversion(e,t,i){const r=Qd(1,e)*t,n=Kr(Qd(1,45)*t,r,i);return this.pixelsPerMeter(e,t)/n}createTileMatrix(e,t,i){const r=Sd(fd(i.canonical));return Au.multiply(new Float64Array(16),e.globeMatrix,r)}createInversionMatrix(e,t){const{center:i}=e,r=Ad(fd(t));return Au.rotateY(r,r,w(i.lng)),Au.rotateX(r,r,w(i.lat)),Au.scale(r,r,[e._pixelsPerMercatorPixel,e._pixelsPerMercatorPixel,1]),Float32Array.from(r)}pointCoordinate(e,t,i,r){return ud(e,t,i,!0)||new lp(0,0)}pointCoordinate3D(e,t,i){const r=this.pointCoordinate(e,t,i,0);return [r.x,r.y,r.z]}isPointAboveHorizon(e,t){return !ud(e,t.x,t.y,!1)}farthestPixelDistance(e){const t=function(e,t){const i=e.cameraToCenterDistance,r=e._centerAltitude*t,n=e._camera,o=e._camera.forward(),s=Du.add([],Du.scale([],o,-i),[0,0,r]),a=e.worldSize/(2*Math.PI),l=[0,0,-a],c=e.width/e.height,h=Math.tan(e.fovAboveCenter),u=Du.scale([],n.up(),h),d=Du.scale([],n.right(),h*c),p=Du.normalize([],Du.add([],Du.add([],o,u),d)),f=[];let m;if(new Wu(s,p).closestPointOnSphere(l,a,f)){const t=Du.add([],f,l),i=Du.sub([],t,s);m=Math.cos(e.fovAboveCenter)*Du.length(i);}else {const e=Du.sub([],s,l),t=Du.sub([],l,s);Du.normalize(t,t);const i=Du.length(e)-a;m=Math.sqrt(i*(i+2*a));const r=Math.acos(m/(a+i))-Math.acos(Du.dot(o,t));m*=Math.cos(r);}return 1.01*m}(e,this.pixelsPerMeter(e.center.lat,e.worldSize)),i=Dd(e.zoom);if(i>0){const r=zg(e,Qd(1,e.center.lat)*e.worldSize),n=e.worldSize/(2*Math.PI),o=Math.max(e.width,e.height)/e.worldSize*Math.PI;return Kr(t,r+n*(1-Math.cos(o)),Math.pow(i,10))}return t}upVector(e,t,i){return Td(t,i,e,1)}upVectorScale(e){return {metersToTile:hd(Ed(fd(e)))}}}function ty(e){const t=e.parallels,i=!!t&&Math.abs(t[0]+t[1])<.01;switch(e.name){case\"mercator\":return new Hg(e);case\"equirectangular\":return new qg(e);case\"naturalEarth\":return new Yg(e);case\"equalEarth\":return new Gg(e);case\"winkelTripel\":return new Jg(e);case\"albers\":return i?new Qg(e):new Bg(e);case\"lambertConformalConic\":return i?new Qg(e):new Wg(e);case\"globe\":return new ey(e)}throw new Error(`Invalid projection name: ${e.name}`)}const iy=new ga({\"symbol-placement\":new fa(Pt.layout_symbol[\"symbol-placement\"]),\"symbol-spacing\":new fa(Pt.layout_symbol[\"symbol-spacing\"]),\"symbol-avoid-edges\":new fa(Pt.layout_symbol[\"symbol-avoid-edges\"]),\"symbol-sort-key\":new ma(Pt.layout_symbol[\"symbol-sort-key\"]),\"symbol-z-order\":new fa(Pt.layout_symbol[\"symbol-z-order\"]),\"symbol-z-elevate\":new fa(Pt.layout_symbol[\"symbol-z-elevate\"]),\"icon-allow-overlap\":new fa(Pt.layout_symbol[\"icon-allow-overlap\"]),\"icon-ignore-placement\":new fa(Pt.layout_symbol[\"icon-ignore-placement\"]),\"icon-optional\":new fa(Pt.layout_symbol[\"icon-optional\"]),\"icon-rotation-alignment\":new fa(Pt.layout_symbol[\"icon-rotation-alignment\"]),\"icon-size\":new ma(Pt.layout_symbol[\"icon-size\"]),\"icon-text-fit\":new ma(Pt.layout_symbol[\"icon-text-fit\"]),\"icon-text-fit-padding\":new ma(Pt.layout_symbol[\"icon-text-fit-padding\"]),\"icon-image\":new ma(Pt.layout_symbol[\"icon-image\"]),\"icon-rotate\":new ma(Pt.layout_symbol[\"icon-rotate\"]),\"icon-padding\":new fa(Pt.layout_symbol[\"icon-padding\"]),\"icon-keep-upright\":new fa(Pt.layout_symbol[\"icon-keep-upright\"]),\"icon-offset\":new ma(Pt.layout_symbol[\"icon-offset\"]),\"icon-anchor\":new ma(Pt.layout_symbol[\"icon-anchor\"]),\"icon-pitch-alignment\":new fa(Pt.layout_symbol[\"icon-pitch-alignment\"]),\"text-pitch-alignment\":new fa(Pt.layout_symbol[\"text-pitch-alignment\"]),\"text-rotation-alignment\":new fa(Pt.layout_symbol[\"text-rotation-alignment\"]),\"text-field\":new ma(Pt.layout_symbol[\"text-field\"]),\"text-font\":new ma(Pt.layout_symbol[\"text-font\"]),\"text-size\":new ma(Pt.layout_symbol[\"text-size\"]),\"text-max-width\":new ma(Pt.layout_symbol[\"text-max-width\"]),\"text-line-height\":new ma(Pt.layout_symbol[\"text-line-height\"]),\"text-letter-spacing\":new ma(Pt.layout_symbol[\"text-letter-spacing\"]),\"text-justify\":new ma(Pt.layout_symbol[\"text-justify\"]),\"text-radial-offset\":new ma(Pt.layout_symbol[\"text-radial-offset\"]),\"text-variable-anchor\":new fa(Pt.layout_symbol[\"text-variable-anchor\"]),\"text-anchor\":new ma(Pt.layout_symbol[\"text-anchor\"]),\"text-max-angle\":new fa(Pt.layout_symbol[\"text-max-angle\"]),\"text-writing-mode\":new fa(Pt.layout_symbol[\"text-writing-mode\"]),\"text-rotate\":new ma(Pt.layout_symbol[\"text-rotate\"]),\"text-padding\":new fa(Pt.layout_symbol[\"text-padding\"]),\"text-keep-upright\":new fa(Pt.layout_symbol[\"text-keep-upright\"]),\"text-transform\":new ma(Pt.layout_symbol[\"text-transform\"]),\"text-offset\":new ma(Pt.layout_symbol[\"text-offset\"]),\"text-allow-overlap\":new fa(Pt.layout_symbol[\"text-allow-overlap\"]),\"text-ignore-placement\":new fa(Pt.layout_symbol[\"text-ignore-placement\"]),\"text-optional\":new fa(Pt.layout_symbol[\"text-optional\"]),visibility:new fa(Pt.layout_symbol.visibility)});var ry={paint:new ga({\"icon-opacity\":new ma(Pt.paint_symbol[\"icon-opacity\"]),\"icon-emissive-strength\":new ma(Pt.paint_symbol[\"icon-emissive-strength\"]),\"text-emissive-strength\":new ma(Pt.paint_symbol[\"text-emissive-strength\"]),\"icon-color\":new ma(Pt.paint_symbol[\"icon-color\"]),\"icon-halo-color\":new ma(Pt.paint_symbol[\"icon-halo-color\"]),\"icon-halo-width\":new ma(Pt.paint_symbol[\"icon-halo-width\"]),\"icon-halo-blur\":new ma(Pt.paint_symbol[\"icon-halo-blur\"]),\"icon-translate\":new fa(Pt.paint_symbol[\"icon-translate\"]),\"icon-translate-anchor\":new fa(Pt.paint_symbol[\"icon-translate-anchor\"]),\"icon-image-cross-fade\":new ma(Pt.paint_symbol[\"icon-image-cross-fade\"]),\"text-opacity\":new ma(Pt.paint_symbol[\"text-opacity\"]),\"text-color\":new ma(Pt.paint_symbol[\"text-color\"],{runtimeType:Zt,getOverride:e=>e.textColor,hasOverride:e=>!!e.textColor}),\"text-halo-color\":new ma(Pt.paint_symbol[\"text-halo-color\"]),\"text-halo-width\":new ma(Pt.paint_symbol[\"text-halo-width\"]),\"text-halo-blur\":new ma(Pt.paint_symbol[\"text-halo-blur\"]),\"text-translate\":new fa(Pt.paint_symbol[\"text-translate\"]),\"text-translate-anchor\":new fa(Pt.paint_symbol[\"text-translate-anchor\"]),\"icon-color-saturation\":new fa(Pt.paint_symbol[\"icon-color-saturation\"])}),layout:iy};class ny{constructor(e){this.type=e.property.overrides?e.property.overrides.runtimeType:Vt,this.defaultValue=e;}evaluate(e){if(e.formattedSection){const t=this.defaultValue.property.overrides;if(t&&t.hasOverride(e.formattedSection))return t.getOverride(e.formattedSection)}return e.feature&&e.featureState?this.defaultValue.evaluate(e.feature,e.featureState):this.defaultValue.property.specification.default}eachChild(e){this.defaultValue.isConstant()||e(this.defaultValue.value._styleExpression.expression);}outputDefined(){return !1}serialize(){return null}}Rs(ny,\"FormatSectionOverride\",{omit:[\"defaultValue\"]});class oy extends Ta{constructor(e,t){super(e,ry,t);}recalculate(e,t){super.recalculate(e,t),\"auto\"===this.layout.get(\"icon-rotation-alignment\")&&(this.layout._values[\"icon-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"viewport\"),\"auto\"===this.layout.get(\"text-rotation-alignment\")&&(this.layout._values[\"text-rotation-alignment\"]=\"point\"!==this.layout.get(\"symbol-placement\")?\"map\":\"viewport\"),\"auto\"===this.layout.get(\"text-pitch-alignment\")&&(this.layout._values[\"text-pitch-alignment\"]=this.layout.get(\"text-rotation-alignment\")),\"auto\"===this.layout.get(\"icon-pitch-alignment\")&&(this.layout._values[\"icon-pitch-alignment\"]=this.layout.get(\"icon-rotation-alignment\"));const i=this.layout.get(\"text-writing-mode\");if(i){const e=[];for(const t of i)e.indexOf(t)<0&&e.push(t);this.layout._values[\"text-writing-mode\"]=e;}else this.layout._values[\"text-writing-mode\"]=\"point\"===this.layout.get(\"symbol-placement\")?[\"horizontal\"]:[\"horizontal\",\"vertical\"];this._setPaintOverrides();}getValueAndResolveTokens(e,t,i,r){const n=this.layout.get(e).evaluate(t,{},i,r),o=this._unevaluatedLayout._values[e];return o.isDataDriven()||To(o.value)||!n?n:function(e,t){return t.replace(/{([^{}]+)}/g,((t,i)=>i in e?String(e[i]):\"\"))}(t.properties,n)}createBucket(e){return new gy(e)}queryRadius(){return 0}queryIntersectsFeature(){return !1}_setPaintOverrides(){for(const e of ry.paint.overridableProperties){if(!oy.hasPaintOverride(this.layout,e))continue;const t=this.paint.get(e),i=new ny(t),r=new wo(i,t.property.specification);let n=null;n=\"constant\"===t.value.kind||\"source\"===t.value.kind?new Mo(\"source\",r):new Ao(\"composite\",r,t.value.zoomStops,t.value._interpolationType),this.paint._values[e]=new da(t.property,n,t.parameters);}}_handleOverridablePaintPropertyUpdate(e,t,i){return !(!this.layout||t.isDataDriven()||i.isDataDriven())&&oy.hasPaintOverride(this.layout,e)}static hasPaintOverride(e,t){const i=e.get(\"text-field\"),r=ry.paint.properties[t];let n=!1;const o=e=>{for(const t of e)if(r.overrides&&r.overrides.hasOverride(t))return void(n=!0)};if(\"constant\"===i.value.kind&&i.value.value instanceof pi)o(i.value.value.sections);else if(\"source\"===i.value.kind){const e=t=>{n||(t instanceof vi&&gi(t.value)===Xt?o(t.value.sections):t instanceof Mi?o(t.sections):t.eachChild(e));},t=i.value;t._styleExpression&&e(t._styleExpression.expression);}return n}getProgramIds(){const e=0!==this.paint.get(\"icon-opacity\").constantOr(1),t=0!==this.paint.get(\"text-opacity\").constantOr(1),i=[];return e&&i.push(\"symbolIcon\"),t&&i.push(\"symbolSDF\"),i}getDefaultProgramParams(e,t){return {config:new Ql(this,t),overrideFog:!1}}}const sy=hm.types,ay=[{name:\"a_fade_opacity\",components:1,type:\"Uint8\",offset:0}];function ly(e,t,i,r,n,o,s,a,l,c,h,u,d){const p=a?Math.min(Eg,Math.round(a[0])):0,f=a?Math.min(Eg,Math.round(a[1])):0;e.emplaceBack(t,i,Math.round(32*r),Math.round(32*n),o,s,(p<<1)+(l?1:0),f,16*c,16*h,256*u,256*d);}function cy(e,t,i){e.emplaceBack(t,i);}function hy(e,t,i,r,n,o,s){e.emplaceBack(t,i,r,n,o,s);}function uy(e,t,i,r,n){const o=5*t+2;e.float32[o+0]=i,e.float32[o+1]=r,e.float32[o+2]=n;}function dy(e,t,i,r,n){e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n),e.emplaceBack(t,i,r,n);}function py(e){for(const t of e.sections)if($s(t.text))return !0;return !1}class fy{constructor(e){this.layoutVertexArray=new Na,this.indexArray=new Wa,this.programConfigurations=e,this.segments=new xl,this.dynamicLayoutVertexArray=new ka,this.opacityVertexArray=new Va,this.placedSymbolArray=new cl,this.iconTransitioningVertexArray=new ja,this.globeExtVertexArray=new Ua,this.zOffsetVertexArray=new Ya;}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.indexArray.length&&0===this.dynamicLayoutVertexArray.length&&0===this.opacityVertexArray.length&&0===this.iconTransitioningVertexArray.length}upload(e,t,i,r,n){this.isEmpty()||(i&&(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,i_.members),this.indexBuffer=e.createIndexBuffer(this.indexArray,t),this.dynamicLayoutVertexBuffer=e.createVertexBuffer(this.dynamicLayoutVertexArray,n_.members,!0),this.opacityVertexBuffer=e.createVertexBuffer(this.opacityVertexArray,ay,!0),this.iconTransitioningVertexArray.length>0&&(this.iconTransitioningVertexBuffer=e.createVertexBuffer(this.iconTransitioningVertexArray,s_.members,!0)),this.globeExtVertexArray.length>0&&(this.globeExtVertexBuffer=e.createVertexBuffer(this.globeExtVertexArray,r_.members,!0)),!this.zOffsetVertexBuffer&&(this.zOffsetVertexArray.length>0||n)&&(this.zOffsetVertexBuffer=e.createVertexBuffer(this.zOffsetVertexArray,o_.members,!0)),this.opacityVertexBuffer.itemSize=1),(i||r)&&this.programConfigurations.upload(e));}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy(),this.iconTransitioningVertexBuffer&&this.iconTransitioningVertexBuffer.destroy(),this.globeExtVertexBuffer&&this.globeExtVertexBuffer.destroy(),this.zOffsetVertexBuffer&&this.zOffsetVertexBuffer.destroy());}}Rs(fy,\"SymbolBuffers\");class my{constructor(e,t,i){this.layoutVertexArray=new e,this.layoutAttributes=t,this.indexArray=new i,this.segments=new xl,this.collisionVertexArray=new $a,this.collisionVertexArrayExt=new ka;}upload(e){this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=e.createVertexBuffer(this.collisionVertexArray,a_.members,!0),this.collisionVertexBufferExt=e.createVertexBuffer(this.collisionVertexArrayExt,l_.members,!0);}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy(),this.collisionVertexBufferExt.destroy());}}Rs(my,\"CollisionBuffers\");class _y{constructor(e){this.collisionBoxArray=e.collisionBoxArray,this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.fullyClipped=!1,this.hasAnyIconTextFit=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Au.identity([]),this.placementViewportMatrix=Au.identity([]);const t=this.layers[0]._unevaluatedLayout._values;this.textSizeData=p_(this.zoom,t[\"text-size\"]),this.iconSizeData=p_(this.zoom,t[\"icon-size\"]);const i=this.layers[0].layout,r=i.get(\"symbol-sort-key\"),n=i.get(\"symbol-z-order\");this.canOverlap=i.get(\"text-allow-overlap\")||i.get(\"icon-allow-overlap\")||i.get(\"text-ignore-placement\")||i.get(\"icon-ignore-placement\"),this.sortFeaturesByKey=\"viewport-y\"!==n&&void 0!==r.constantOr(1),this.sortFeaturesByY=(\"viewport-y\"===n||\"auto\"===n&&!this.sortFeaturesByKey)&&this.canOverlap,this.writingModes=i.get(\"text-writing-mode\").map((e=>A_[e])),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.sourceID=e.sourceID,this.projection=e.projection,this.hasAnyZOffset=!1,this.zOffsetSortDirty=!1,this.zOffsetBuffersNeedUpload=i.get(\"symbol-z-elevate\");}createArrays(){this.text=new fy(new ec(this.layers,this.zoom,(e=>/^text/.test(e)))),this.icon=new fy(new ec(this.layers,this.zoom,(e=>/^icon/.test(e)))),this.glyphOffsetArray=new dl,this.lineVertexArray=new pl,this.symbolInstances=new ul;}calculateGlyphDependencies(e,t,i,r,n){for(let i=0;i0)&&(\"constant\"!==a.value.kind||a.value.value.length>0),u=\"constant\"!==c.value.kind||!!c.value.value||Object.keys(c.parameters).length>0,d=o.get(\"symbol-sort-key\");if(this.features=[],!h&&!u)return;const p=t.iconDependencies,f=t.glyphDependencies,m=t.availableImages,_=new oa(this.zoom);for(const{feature:t,id:l,index:c,sourceLayerIndex:g}of e){const e=n._featureFilter.needGeometry,y=gp(t,e);if(!n._featureFilter.filter(_,y,i))continue;if(e||(y.geometry=_p(t,i,r)),s&&1!==t.type&&i.z<=5){const e=y.geometry,t=.98078528056,r=(e,r)=>{const n=Td(e.x,e.y,i,1),o=Td(r.x,r.y,i,1);return Du.dot(n,o)=0;for(const i of x.sections)if(i.image)p[i.image.namePrimary]=!0;else {const r=Ns(x.toString()),n=i.fontStack||e,o=f[n]=f[n]||{};this.calculateGlyphDependencies(i.text,o,t,this.allowVerticalPlacement,r);}}}\"line\"===o.get(\"symbol-placement\")&&(this.features=function(e){const t={},i={},r=[];let n=0;function o(t){r.push(e[t]),n++;}function s(e,t,n){const o=i[e];return delete i[e],i[t]=o,r[o].geometry[0].pop(),r[o].geometry[0]=r[o].geometry[0].concat(n[0]),o}function a(e,i,n){const o=t[i];return delete t[i],t[e]=o,r[o].geometry[0].shift(),r[o].geometry[0]=n[0].concat(r[o].geometry[0]),o}function l(e,t,i){const r=i?t[0][t[0].length-1]:t[0][0];return `${e}:${r.x}:${r.y}`}for(let c=0;ce.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((e,t)=>e.sortKey-t.sortKey));}update(e,t,i,r,n){const o=0!==Object.keys(e).length;if(o&&!this.stateDependentLayers.length)return;const s=o?this.stateDependentLayers:this.layers;this.text.programConfigurations.updatePaintArrays(e,t,s,i,r,n),this.icon.programConfigurations.updatePaintArrays(e,t,s,i,r,n);}updateZOffset(){const e=(e,t,r)=>{i+=t,i>e.length&&e.resize(i);for(let n=-t;n<0;n++)e.emplace(n+i,r);},t=(e,t,i)=>{r+=t,r>e.length&&e.resize(r);for(let n=-t;n<0;n++)e.emplace(n+r,i);};if(!this.zOffsetBuffersNeedUpload)return;this.zOffsetBuffersNeedUpload=!1;let i=0,r=0;for(let i=0;i0;if((n>0||o>0)&&(e(this.text.zOffsetVertexArray,n,a),e(this.text.zOffsetVertexArray,o,a)),l){const{placedIconSymbolIndex:e,verticalPlacedIconSymbolIndex:i}=r;e>=0&&t(this.icon.zOffsetVertexArray,s,a),i>=0&&t(this.icon.zOffsetVertexArray,r.numVerticalIconVertices,a);}}this.text.zOffsetVertexBuffer&&this.text.zOffsetVertexBuffer.updateData(this.text.zOffsetVertexArray),this.icon.zOffsetVertexBuffer&&this.icon.zOffsetVertexBuffer.updateData(this.icon.zOffsetVertexArray);}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return !this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(e){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(e),this.iconCollisionBox.upload(e)),this.text.upload(e,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload,this.zOffsetBuffersNeedUpload),this.icon.upload(e,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload,this.zOffsetBuffersNeedUpload),this.uploaded=!0;}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy();}getProjection(){return this.projectionInstance||(this.projectionInstance=ty(this.projection)),this.projectionInstance}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData();}addToLineVertexArray(e,t){const i=this.lineVertexArray.length;if(void 0!==e.segment)for(const{x:e,y:i}of t)this.lineVertexArray.emplaceBack(e,i);return {lineStartIndex:i,lineLength:this.lineVertexArray.length-i}}addSymbols(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){const _=e.indexArray,g=e.layoutVertexArray,y=e.globeExtVertexArray,x=e.segments.prepareSegment(4*t.length,g,_,this.canOverlap?o.sortKey:void 0),v=this.glyphOffsetArray.length,b=x.vertexLength,w=this.allowVerticalPlacement&&s===A_.vertical?Math.PI/2:0,T=o.text&&o.text.sections;for(let r=0;r=0?t.rightJustifiedTextSymbolIndex:t.centerJustifiedTextSymbolIndex>=0?t.centerJustifiedTextSymbolIndex:t.leftJustifiedTextSymbolIndex>=0?t.leftJustifiedTextSymbolIndex:t.verticalPlacedTextSymbolIndex>=0?t.verticalPlacedTextSymbolIndex:r),o=f_(this.textSizeData,e,n)/u_;return this.tilePixelRatio*o}getSymbolInstanceIconSize(e,t,i){const r=this.icon.placedSymbolArray.get(i),n=f_(this.iconSizeData,e,r);return this.tilePixelRatio*n}_commitDebugCollisionVertexUpdate(e,t,i,r){e.emplaceBack(t,-i,-i,r),e.emplaceBack(t,i,-i,r),e.emplaceBack(t,i,i,r),e.emplaceBack(t,-i,i,r);}_updateTextDebugCollisionBoxes(e,t,i,r,n,o){for(let s=r;s0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}hasIconTextFit(){return this.hasAnyIconTextFit}addIndicesForPlacedSymbol(e,t){const i=e.placedSymbolArray.get(t),r=i.vertexStartIndex+4*i.numGlyphs;for(let t=i.vertexStartIndex;tr[e]-r[t]||n[t]-n[e])),o}getSortedIndexesByZOffset(){if(!this.zOffsetSortDirty)return this.symbolInstanceIndexesSortedZOffset;if(!this.symbolInstanceIndexesSortedZOffset){this.symbolInstanceIndexesSortedZOffset=[];for(let e=0;ethis.symbolInstances.get(t).zOffset-this.symbolInstances.get(e).zOffset))}addToSortKeyRanges(e,t){const i=this.sortKeyRanges[this.sortKeyRanges.length-1];i&&i.sortKey===t?i.symbolInstanceEnd=e+1:this.sortKeyRanges.push({sortKey:t,symbolInstanceStart:e,symbolInstanceEnd:e+1});}sortFeatures(e){if(this.sortFeaturesByY&&this.sortedAngle!==e&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(e),this.sortedAngle=e,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const e of this.symbolInstanceIndexes){const t=this.symbolInstances.get(e);this.featureSortOrder.push(t.featureIndex);const{rightJustifiedTextSymbolIndex:i,centerJustifiedTextSymbolIndex:r,leftJustifiedTextSymbolIndex:n,verticalPlacedTextSymbolIndex:o,placedIconSymbolIndex:s,verticalPlacedIconSymbolIndex:a}=t;i>=0&&this.addIndicesForPlacedSymbol(this.text,i),r>=0&&r!==i&&this.addIndicesForPlacedSymbol(this.text,r),n>=0&&n!==r&&n!==i&&this.addIndicesForPlacedSymbol(this.text,n),o>=0&&this.addIndicesForPlacedSymbol(this.text,o),s>=0&&this.addIndicesForPlacedSymbol(this.icon,s),a>=0&&this.addIndicesForPlacedSymbol(this.icon,a);}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray);}}}Rs(_y,\"SymbolBucket\",{omit:[\"layers\",\"collisionBoxArray\",\"features\",\"compareText\"]}),_y.MAX_GLYPHS=65535,_y.addDynamicAttributes=dy;var gy=_y;const yy=Ia([{name:\"a_pos_normal\",components:2,type:\"Int16\"},{name:\"a_data\",components:4,type:\"Uint8\"},{name:\"a_linesofar\",components:1,type:\"Float32\"}],4),{members:xy}=yy,vy=Ia([{name:\"a_packed\",components:4,type:\"Float32\"}]),{members:by}=vy,wy=hm.types,Ty=Math.cos(Math.PI/180*37.5);class Ey{constructor(e){this.zoom=e.zoom,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.projection=e.projection,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((e=>{this.gradients[e.id]={};})),this.layoutVertexArray=new La,this.layoutVertexArray2=new ka,this.indexArray=new Wa,this.programConfigurations=new ec(e.layers,e.zoom),this.segments=new xl,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id));}populate(e,t,i,r){this.hasPattern=Uf(\"line\",this.layers,t);const n=this.layers[0].layout.get(\"line-sort-key\"),o=[];for(const{feature:t,id:s,index:a,sourceLayerIndex:l}of e){const e=this.layers[0]._featureFilter.needGeometry,c=gp(t,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),c,i))continue;const h=n?n.evaluate(c,{},i):void 0,u={id:s,properties:t.properties,type:t.type,sourceLayerIndex:l,index:a,geometry:e?c.geometry:_p(t,i,r),patterns:{},sortKey:h};o.push(u);}n&&o.sort(((e,t)=>e.sortKey-t.sortKey));const{lineAtlas:s,featureIndex:a}=t,l=this.addConstantDashes(s);for(const r of o){const{geometry:n,index:o,sourceLayerIndex:c}=r;if(l&&this.addFeatureDashes(r,s),this.hasPattern){const e=Vf(\"line\",this.layers,r,this.zoom,t);this.patternFeatures.push(e);}else this.addFeature(r,n,o,i,s.positions,t.availableImages,t.brightness);a.insert(e[o].feature,n,o,c,this.index);}}addConstantDashes(e){let t=!1;for(const i of this.layers){const r=i.paint.get(\"line-dasharray\").value,n=i.layout.get(\"line-cap\").value;if(\"constant\"!==r.kind||\"constant\"!==n.kind)t=!0;else {const t=n.value,i=r.value;if(!i)continue;e.addDash(i,t);}}return t}addFeatureDashes(e,t){const i=this.zoom;for(const r of this.layers){const n=r.paint.get(\"line-dasharray\").value,o=r.layout.get(\"line-cap\").value;if(\"constant\"===n.kind&&\"constant\"===o.kind)continue;let s,a;if(\"constant\"===n.kind){if(s=n.value,!s)continue}else s=n.evaluate({zoom:i},e);a=\"constant\"===o.kind?o.value:o.evaluate({zoom:i},e),t.addDash(s,a),e.patterns[r.id]=t.getKey(s,a);}}update(e,t,i,r,n){const o=0!==Object.keys(e).length;o&&!this.stateDependentLayers.length||this.programConfigurations.updatePaintArrays(e,t,o?this.stateDependentLayers:this.layers,i,r,n);}addFeatures(e,t,i,r,n,o){for(const e of this.patternFeatures)this.addFeature(e,e.geometry,e.index,t,i,r,o);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload}upload(e){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=e.createVertexBuffer(this.layoutVertexArray2,by)),this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,xy),this.indexBuffer=e.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(e),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy());}lineFeatureClips(e){if(e.properties&&e.properties.hasOwnProperty(\"mapbox_clip_start\")&&e.properties.hasOwnProperty(\"mapbox_clip_end\"))return {start:+e.properties.mapbox_clip_start,end:+e.properties.mapbox_clip_end}}addFeature(e,t,i,r,n,o,s){const a=this.layers[0].layout,l=a.get(\"line-join\").evaluate(e,{}),c=a.get(\"line-cap\").evaluate(e,{}),h=a.get(\"line-miter-limit\"),u=a.get(\"line-round-limit\");this.lineClips=this.lineFeatureClips(e);for(const i of t)this.addLine(i,e,l,c,h,u);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,e,i,n,o,r,s);}addLine(e,t,i,r,n,o){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineSoFar=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let t=0;t=2&&e[a-1].equals(e[a-2]);)a--;let l=0;for(;l0;if(b&&t>l){const e=u.dist(d);if(e>2*c){const t=u.sub(u.sub(d)._mult(c/e)._round());this.updateDistance(d,t),this.addCurrentVertex(t,f,0,0,h),d=t;}}const T=d&&p;let E=T?i:s?\"butt\":r;if(T&&\"round\"===E&&(xn&&(E=\"bevel\"),\"bevel\"===E&&(x>2&&(E=\"flipbevel\"),x100)_=m.mult(-1);else {const e=x*f.add(m).mag()/f.sub(m).mag();_._perp()._mult(e*(w?-1:1));}this.addCurrentVertex(u,_,0,0,h),this.addCurrentVertex(u,_.mult(-1),0,0,h);}else if(\"bevel\"===E||\"fakeround\"===E){const e=-Math.sqrt(x*x-1),t=w?e:0,i=w?0:e;if(d&&this.addCurrentVertex(u,f,t,i,h),\"fakeround\"===E){const e=Math.round(180*v/Math.PI/20);for(let t=1;t2*c){const t=u.add(p.sub(u)._mult(c/e)._round());this.updateDistance(u,t),this.addCurrentVertex(t,m,0,0,h),u=t;}}}}addCurrentVertex(e,t,i,r,n,o=!1){const s=t.y*r-t.x,a=-t.y-t.x*r;this.addHalfVertex(e,t.x+t.y*i,t.y-t.x*i,o,!1,i,n),this.addHalfVertex(e,s,a,o,!0,-r,n);}addHalfVertex({x:e,y:t},i,r,n,o,s,a){this.layoutVertexArray.emplaceBack((e<<1)+(n?1:0),(t<<1)+(o?1:0),Math.round(63*i)+128,Math.round(63*r)+128,1+(0===s?0:s<0?-1:1),0,this.lineSoFar),this.lineClips&&this.layoutVertexArray2.emplaceBack(this.scaledDistance,this.lineClipsArray.length,this.lineClips.start,this.lineClips.end);const l=a.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,l),a.primitiveLength++),o?this.e2=l:this.e1=l;}updateScaledDistance(){if(this.lineClips){const e=this.totalDistance/(this.lineClips.end-this.lineClips.start);this.scaledDistance=this.distance/this.totalDistance,this.lineSoFar=e*this.lineClips.start+this.distance;}else this.lineSoFar=this.distance;}updateDistance(e,t){this.distance+=e.dist(t),this.updateScaledDistance();}}Rs(Ey,\"LineBucket\",{omit:[\"layers\",\"patternFeatures\"]});class My{constructor(e,t,i,r){this.context=e,this.format=i,this.texture=e.gl.createTexture(),this.update(t,r);}update(e,i,r){const{width:n,height:o}=e,{context:s}=this,{gl:a}=s,{HTMLImageElement:l,HTMLCanvasElement:c,HTMLVideoElement:h,ImageData:u,ImageBitmap:d}=t;if(a.bindTexture(a.TEXTURE_2D,this.texture),s.pixelStoreUnpackFlipY.set(!1),s.pixelStoreUnpack.set(1),s.pixelStoreUnpackPremultiplyAlpha.set(this.format===a.RGBA&&(!i||!1!==i.premultiply)),r||this.size&&this.size[0]===n&&this.size[1]===o){const{x:t,y:i}=r||{x:0,y:0};if(e instanceof l||e instanceof c||e instanceof h||e instanceof u||d&&e instanceof d)a.texSubImage2D(a.TEXTURE_2D,0,t,i,a.RGBA,a.UNSIGNED_BYTE,e);else {let r=this.format,s=a.UNSIGNED_BYTE;this.format===a.R32F&&(r=a.RED,s=a.FLOAT),a.texSubImage2D(a.TEXTURE_2D,0,t,i,n,o,r,s,e.data);}}else if(this.size=[n,o],e instanceof l||e instanceof c||e instanceof h||e instanceof u||d&&e instanceof d){let t=this.format;this.format===a.R8&&(t=a.RED),a.texImage2D(a.TEXTURE_2D,0,this.format,t,a.UNSIGNED_BYTE,e);}else {let t=this.format,i=this.format,r=a.UNSIGNED_BYTE;this.format===a.DEPTH_COMPONENT&&(t=a.DEPTH_COMPONENT16,r=a.UNSIGNED_SHORT),this.format===a.R32F&&(r=a.FLOAT,i=a.RED),a.texImage2D(a.TEXTURE_2D,0,t,n,o,0,i,r,e.data);}this.useMipmap=Boolean(i&&i.useMipmap),this.useMipmap&&a.generateMipmap(a.TEXTURE_2D);}bind(e,t){const{context:i}=this,{gl:r}=i;r.bindTexture(r.TEXTURE_2D,this.texture),e!==this.minFilter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,this.useMipmap?e===r.NEAREST?r.NEAREST_MIPMAP_NEAREST:r.LINEAR_MIPMAP_NEAREST:e),this.minFilter=e),t!==this.wrapS&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,t),this.wrapS=t);}bindExtraParam(e,t,i,r){const{context:n}=this,{gl:o}=n;o.bindTexture(o.TEXTURE_2D,this.texture),t!==this.magFilter&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MAG_FILTER,t),this.magFilter=t),e!==this.minFilter&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_MIN_FILTER,this.useMipmap?e===o.NEAREST?o.NEAREST_MIPMAP_NEAREST:o.LINEAR_MIPMAP_NEAREST:e),this.minFilter=e),i!==this.wrapS&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,i),this.wrapS=i),r!==this.wrapT&&(o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,r),this.wrapT=r);}destroy(){const{gl:e}=this.context;e.deleteTexture(this.texture),this.texture=null;}}class Ay{constructor(e,t){this.context=e,this.texture=t;}bind(e,t){const{context:i}=this,{gl:r}=i;r.bindTexture(r.TEXTURE_2D,this.texture),e!==this.minFilter&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,e),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,e),this.minFilter=e),t!==this.wrapS&&(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,t),this.wrapS=t);}}const Sy=32,Iy=33,Cy=new Uint16Array(8184);for(let e=0;e<2046;e++){let t=e+2,i=0,r=0,n=0,o=0,s=0,a=0;for(1&t?n=o=s=Sy:i=r=a=Sy;(t>>=1)>1;){const e=i+n>>1,l=r+o>>1;1&t?(n=i,o=r,i=s,r=a):(i=n,r=o,n=s,o=a),s=e,a=l;}const l=4*e;Cy[l+0]=i,Cy[l+1]=r,Cy[l+2]=n,Cy[l+3]=o;}const zy=new Uint16Array(2178),Py=new Uint8Array(1089),Dy=new Uint16Array(1089);function Ry(e){return 0===e?-.03125:32===e?.03125:0}var Ly=Ia([{name:\"a_pos\",type:\"Int16\",components:2},{name:\"a_texture_pos\",type:\"Int16\",components:2}]);const ky={type:2,extent:cr,loadGeometry:()=>[[new y(0,0),new y(cr+1,0),new y(cr+1,cr+1),new y(0,cr+1),new y(0,0)]]};class Oy{constructor(e,t,i,r,n){this.tileID=e,this.uid=F(),this.uses=0,this.tileSize=t,this.tileZoom=i,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.isRaster=n,r&&r.style&&(this._lastUpdatedBrightness=r.style.getBrightness()),this.expiredRequestCount=0,this.state=\"loading\",r&&r.transform&&(this.projection=r.transform.projection);}registerFadeDuration(e){const t=e+this.timeAdded;tt.getLayer(e))).filter(Boolean);if(0!==e.length){r.layers=e,r.stateDependentLayerIds&&(r.stateDependentLayers=r.stateDependentLayerIds.map((t=>e.filter((e=>e.id===t))[0])));for(const t of e)i[t.fqid]=r;}}return i}(e.buckets,t.style),this.hasSymbolBuckets=!1;for(const e in this.buckets){const t=this.buckets[e];if(t instanceof gy){if(this.hasSymbolBuckets=!0,!i)break;t.justReloaded=!0;}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const e in this.buckets){const t=this.buckets[e];if(t instanceof gy&&t.hasRTLText){this.hasRTLText=!0,na.isLoading()||na.isLoaded()||\"deferred\"!==ia()||ra();break}}this.queryPadding=0;for(const e in this.buckets){const i=this.buckets[e],r=t.style.getOwnLayer(e);if(!r)continue;const n=r.queryRadius(i);this.queryPadding=Math.max(this.queryPadding,n);}e.imageAtlas&&(this.imageAtlas=e.imageAtlas),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage),e.lineAtlas&&(this.lineAtlas=e.lineAtlas),this._lastUpdatedBrightness=e.brightness;}else this.collisionBoxArray=new al;}unloadVectorData(){if(this.hasData()){for(const e in this.buckets)this.buckets[e].destroy();this.buckets={},this.imageAtlas&&(this.imageAtlas=null),this.lineAtlas&&(this.lineAtlas=null),this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.lineAtlasTexture&&this.lineAtlasTexture.destroy(),this._tileBoundsBuffer&&(this._tileBoundsBuffer.destroy(),this._tileBoundsIndexBuffer.destroy(),this._tileBoundsSegments.destroy(),this._tileBoundsBuffer=null),this._tileDebugBuffer&&(this._tileDebugBuffer.destroy(),this._tileDebugSegments.destroy(),this._tileDebugBuffer=null),this._tileDebugIndexBuffer&&(this._tileDebugIndexBuffer.destroy(),this._tileDebugIndexBuffer=null),this._globeTileDebugBorderBuffer&&(this._globeTileDebugBorderBuffer.destroy(),this._globeTileDebugBorderBuffer=null),this._tileDebugTextBuffer&&(this._tileDebugTextBuffer.destroy(),this._tileDebugTextSegments.destroy(),this._tileDebugTextIndexBuffer.destroy(),this._tileDebugTextBuffer=null),this._globeTileDebugTextBuffer&&(this._globeTileDebugTextBuffer.destroy(),this._globeTileDebugTextBuffer=null),this.latestFeatureIndex=null,this.state=\"unloaded\";}}getBucket(e){return this.buckets[e.fqid]}upload(e){for(const t in this.buckets){const i=this.buckets[t];i.uploadPending()&&i.upload(e);}const t=e.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new My(e,this.imageAtlas.image,t.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new My(e,this.glyphAtlasImage,t.ALPHA),this.glyphAtlasImage=null),this.lineAtlas&&!this.lineAtlas.uploaded&&(this.lineAtlasTexture=new My(e,this.lineAtlas.image,t.ALPHA),this.lineAtlas.uploaded=!0);}prepare(e,t,i){if(this.imageAtlas&&this.imageAtlasTexture&&this.imageAtlas.patchUpdatedImages(e,this.imageAtlasTexture,i),!t||!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData)return;const r=t.style.getBrightness();(this._lastUpdatedBrightness||r)&&(this._lastUpdatedBrightness&&r&&Math.abs(this._lastUpdatedBrightness-r)<.001||(this._lastUpdatedBrightness=r,this.updateBuckets(void 0,t)));}queryRenderedFeatures(e,t,i,r,n,o,s,a){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({tileResult:r,pixelPosMatrix:s,transform:o,params:n,tileTransform:this.tileTransform},e,t,i):{}}querySourceFeatures(e,t){const i=this.latestFeatureIndex;if(!i||!i.rawTileData)return;const r=i.loadVTLayers(),n=t?t.sourceLayer:\"\",o=r._geojsonTileLayer||r[n];if(!o)return;const s=Fo(t&&t.filter),{z:a,x:l,y:c}=this.tileID.canonical,h={z:a,x:l,y:c};for(let t=0;te)i=!1;else if(t)if(this.expirationTime=0;e--){const t=4*e,i=Cy[t+0],r=Cy[t+1],n=Cy[t+2],o=Cy[t+3],s=i+n>>1,a=r+o>>1,l=s+a-r,c=a+i-s,h=r*Iy+i,u=o*Iy+n,d=a*Iy+s,p=Math.hypot((zy[2*h+0]+zy[2*u+0])/2-zy[2*d+0],(zy[2*h+1]+zy[2*u+1])/2-zy[2*d+1])>=16;Py[d]=Py[d]||(p?1:0),e<1022&&(Py[d]=Py[d]||Py[(r+c>>1)*Iy+(i+l>>1)]||Py[(o+c>>1)*Iy+(n+l>>1)]);}const n=new Da,o=new Wa;let s=0;function a(e,t){const i=t*Iy+e;return 0===Dy[i]&&(n.emplaceBack(zy[2*i+0],zy[2*i+1],e*cr/Sy,t*cr/Sy),Dy[i]=++s),Dy[i]-1}function l(e,t,i,r,n,s){const c=e+i>>1,h=t+r>>1;if(Math.abs(e-n)+Math.abs(t-s)>1&&Py[h*Iy+c])l(n,s,e,t,c,h),l(i,r,n,s,c,h);else {const l=a(e,t),c=a(i,r),h=a(n,s);o.emplaceBack(l,c,h);}}return l(0,0,Sy,Sy,Sy,0),l(Sy,Sy,0,0,0,Sy),{vertices:n,indices:o}}(this.tileID.canonical,t);r=e.vertices,n=e.indices;}else {r=new Da,n=new Wa;for(const{x:e,y:t}of i)r.emplaceBack(e,t,0,0);const e=Bf(r.int16,void 0,4);for(let t=0;t0&&(s=Au.invert(new Float64Array(16),t.globeMatrix)),this._makeGlobeTileDebugBorderBuffer(e,r,t,n,s,o),this._makeGlobeTileDebugTextBuffer(e,r,t,n,s,o);}_globePoint(e,t,i,r,n,o,s){let a=Td(e,t,i);if(o){const n=1<.5?u=-1:h<-.5&&(u=1);let d=(e/cr+i.x)/n+u,p=(t/cr+i.y)/n;d=(d-l)*r._pixelsPerMercatorPixel+l,p=(p-c)*r._pixelsPerMercatorPixel+c;const f=[d*r.worldSize,p*r.worldSize,0];Du.transformMat4(f,f,o),a=md(a,f,s);}return Du.transformMat4(a,a,n)}_makeGlobeTileDebugBorderBuffer(e,t,i,r,n,o){const s=new za,a=new el,l=new Pa,c=(e,c,h,u,d)=>{const p=(h-e)/(d-1),f=(u-c)/(d-1),m=s.length;for(let h=0;hh*e+t;for(let e=0;e{this.remove(e,n);}),i)),this.data[r].push(n),this.order.push(r),this.order.length>this.max){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e);}return this}has(e){return e.wrapped().key in this.data}getAndRemove(e){return this.has(e)?this._getAndRemoveByKey(e.wrapped().key):null}_getAndRemoveByKey(e){const t=this.data[e].shift();return t.timeout&&clearTimeout(t.timeout),0===this.data[e].length&&delete this.data[e],this.order.splice(this.order.indexOf(e),1),t.value}getByKey(e){const t=this.data[e];return t?t[0].value:null}get(e){return this.has(e)?this.data[e.wrapped().key][0].value:null}remove(e,t){if(!this.has(e))return this;const i=e.wrapped().key,r=void 0===t?0:this.data[i].indexOf(t),n=this.data[i][r];return this.data[i].splice(r,1),n.timeout&&clearTimeout(n.timeout),0===this.data[i].length&&delete this.data[i],this.onRemove(n.value),this.order.splice(this.order.indexOf(i),1),this}setMaxSize(e){for(this.max=e;this.order.length>this.max;){const e=this._getAndRemoveByKey(this.order[0]);e&&this.onRemove(e);}return this}filter(e){const t=[];for(const i in this.data)for(const r of this.data[i])e(r.value)||t.push(r);for(const e of t)this.remove(e.value.tileID,e);}}class Fy{constructor(e,t,i,r){this.id=Fy.uniqueIdxCounter,Fy.uniqueIdxCounter++,this.context=e;const n=e.gl;this.buffer=n.createBuffer(),this.dynamicDraw=Boolean(i),this.context.unbindVAO(),e.bindElementBuffer.set(this.buffer),n.bufferData(n.ELEMENT_ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||r||t.destroy();}bind(){this.context.bindElementBuffer.set(this.buffer);}updateData(e){this.id=Fy.uniqueIdxCounter,Fy.uniqueIdxCounter++;const t=this.context.gl;this.context.unbindVAO(),this.bind(),t.bufferSubData(t.ELEMENT_ARRAY_BUFFER,0,e.arrayBuffer);}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer);}}Fy.uniqueIdxCounter=0;const Ny={Int8:\"BYTE\",Uint8:\"UNSIGNED_BYTE\",Int16:\"SHORT\",Uint16:\"UNSIGNED_SHORT\",Int32:\"INT\",Uint32:\"UNSIGNED_INT\",Float32:\"FLOAT\"};class Uy{constructor(e,t,i,r,n,o){this.length=t.length,this.attributes=i,this.itemSize=t.bytesPerElement,this.dynamicDraw=r,this.instanceCount=o,this.context=e;const s=e.gl;this.buffer=s.createBuffer(),e.bindVertexBuffer.set(this.buffer),s.bufferData(s.ARRAY_BUFFER,t.arrayBuffer,this.dynamicDraw?s.DYNAMIC_DRAW:s.STATIC_DRAW),this.dynamicDraw||n||t.destroy();}bind(){this.context.bindVertexBuffer.set(this.buffer);}updateData(e){const t=this.context.gl;this.bind(),t.bufferSubData(t.ARRAY_BUFFER,0,e.arrayBuffer);}enableAttributes(e,t){for(let i=0;i0&&e.vertexAttribDivisor(n,i);}}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer);}}class Vy{constructor(e){this.gl=e.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1;}get(){return this.current}set(e){}getDefault(){return this.default}setDefault(){this.set(this.default);}}class jy extends Vy{getDefault(){return hi.transparent}set(e){const t=this.current;(e.r!==t.r||e.g!==t.g||e.b!==t.b||e.a!==t.a||this.dirty)&&(this.gl.clearColor(e.r,e.g,e.b,e.a),this.current=e,this.dirty=!1);}}class Gy extends Vy{getDefault(){return 1}set(e){(e!==this.current||this.dirty)&&(this.gl.clearDepth(e),this.current=e,this.dirty=!1);}}class qy extends Vy{getDefault(){return 0}set(e){(e!==this.current||this.dirty)&&(this.gl.clearStencil(e),this.current=e,this.dirty=!1);}}class Zy extends Vy{getDefault(){return [!0,!0,!0,!0]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3]||this.dirty)&&(this.gl.colorMask(e[0],e[1],e[2],e[3]),this.current=e,this.dirty=!1);}}class $y extends Vy{getDefault(){return !0}set(e){(e!==this.current||this.dirty)&&(this.gl.depthMask(e),this.current=e,this.dirty=!1);}}class Wy extends Vy{getDefault(){return 255}set(e){(e!==this.current||this.dirty)&&(this.gl.stencilMask(e),this.current=e,this.dirty=!1);}}class Hy extends Vy{getDefault(){return {func:this.gl.ALWAYS,ref:0,mask:255}}set(e){const t=this.current;(e.func!==t.func||e.ref!==t.ref||e.mask!==t.mask||this.dirty)&&(this.gl.stencilFunc(e.func,e.ref,e.mask),this.current=e,this.dirty=!1);}}class Xy extends Vy{getDefault(){const e=this.gl;return [e.KEEP,e.KEEP,e.KEEP]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||this.dirty)&&(this.gl.stencilOp(e[0],e[1],e[2]),this.current=e,this.dirty=!1);}}class Yy extends Vy{getDefault(){return !1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.STENCIL_TEST):t.disable(t.STENCIL_TEST),this.current=e,this.dirty=!1;}}class Ky extends Vy{getDefault(){return [0,1]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||this.dirty)&&(this.gl.depthRange(e[0],e[1]),this.current=e,this.dirty=!1);}}class Jy extends Vy{getDefault(){return !1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.DEPTH_TEST):t.disable(t.DEPTH_TEST),this.current=e,this.dirty=!1;}}class Qy extends Vy{getDefault(){return this.gl.LESS}set(e){(e!==this.current||this.dirty)&&(this.gl.depthFunc(e),this.current=e,this.dirty=!1);}}class ex extends Vy{getDefault(){return !1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.BLEND):t.disable(t.BLEND),this.current=e,this.dirty=!1;}}class tx extends Vy{getDefault(){const e=this.gl;return [e.ONE,e.ZERO,e.ONE,e.ZERO]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3]||this.dirty)&&(this.gl.blendFuncSeparate(e[0],e[1],e[2],e[3]),this.current=e,this.dirty=!1);}}class ix extends Vy{getDefault(){return hi.transparent}set(e){const t=this.current;(e.r!==t.r||e.g!==t.g||e.b!==t.b||e.a!==t.a||this.dirty)&&(this.gl.blendColor(e.r,e.g,e.b,e.a),this.current=e,this.dirty=!1);}}class rx extends Vy{getDefault(){return this.gl.FUNC_ADD}set(e){(e!==this.current||this.dirty)&&(this.gl.blendEquationSeparate(e,e),this.current=e,this.dirty=!1);}}class nx extends Vy{getDefault(){return !1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;e?t.enable(t.CULL_FACE):t.disable(t.CULL_FACE),this.current=e,this.dirty=!1;}}class ox extends Vy{getDefault(){return this.gl.BACK}set(e){(e!==this.current||this.dirty)&&(this.gl.cullFace(e),this.current=e,this.dirty=!1);}}class sx extends Vy{getDefault(){return this.gl.CCW}set(e){(e!==this.current||this.dirty)&&(this.gl.frontFace(e),this.current=e,this.dirty=!1);}}let ax=class extends Vy{getDefault(){return null}set(e){(e!==this.current||this.dirty)&&(this.gl.useProgram(e),this.current=e,this.dirty=!1);}};class lx extends Vy{getDefault(){return this.gl.TEXTURE0}set(e){(e!==this.current||this.dirty)&&(this.gl.activeTexture(e),this.current=e,this.dirty=!1);}}class cx extends Vy{getDefault(){const e=this.gl;return [0,0,e.drawingBufferWidth,e.drawingBufferHeight]}set(e){const t=this.current;(e[0]!==t[0]||e[1]!==t[1]||e[2]!==t[2]||e[3]!==t[3]||this.dirty)&&(this.gl.viewport(e[0],e[1],e[2],e[3]),this.current=e,this.dirty=!1);}}class hx extends Vy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindFramebuffer(t.FRAMEBUFFER,e),this.current=e,this.dirty=!1;}}class ux extends Vy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindRenderbuffer(t.RENDERBUFFER,e),this.current=e,this.dirty=!1;}}class dx extends Vy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindTexture(t.TEXTURE_2D,e),this.current=e,this.dirty=!1;}}class px extends Vy{getDefault(){return null}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.bindBuffer(t.ARRAY_BUFFER,e),this.current=e,this.dirty=!1;}}class fx extends Vy{getDefault(){return null}set(e){const t=this.gl;t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,e),this.current=e,this.dirty=!1;}}class mx extends Vy{getDefault(){return null}set(e){this.gl&&(e!==this.current||this.dirty)&&(this.gl.bindVertexArray(e),this.current=e,this.dirty=!1);}}class _x extends Vy{getDefault(){return 4}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.pixelStorei(t.UNPACK_ALIGNMENT,e),this.current=e,this.dirty=!1;}}class gx extends Vy{getDefault(){return !1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL,e),this.current=e,this.dirty=!1;}}class yx extends Vy{getDefault(){return !1}set(e){if(e===this.current&&!this.dirty)return;const t=this.gl;t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,e),this.current=e,this.dirty=!1;}}class xx extends Vy{constructor(e,t){super(e),this.context=e,this.parent=t;}getDefault(){return null}}class vx extends xx{setDirty(){this.dirty=!0;}set(e){if(e===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const t=this.gl;t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,e,0),this.current=e,this.dirty=!1;}}class bx extends xx{attachment(){return this.gl.DEPTH_ATTACHMENT}set(e){if(e===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const t=this.gl;t.framebufferRenderbuffer(t.FRAMEBUFFER,this.attachment(),t.RENDERBUFFER,e),this.current=e,this.dirty=!1;}}class wx extends xx{attachment(){return this.gl.DEPTH_ATTACHMENT}set(e){if(e===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);const t=this.gl;t.framebufferTexture2D(t.FRAMEBUFFER,this.attachment(),t.TEXTURE_2D,e,0),this.current=e,this.dirty=!1;}}class Tx extends bx{attachment(){return this.gl.DEPTH_STENCIL_ATTACHMENT}}class Ex{constructor(e,t,i,r,n){this.context=e,this.width=t,this.height=i;const o=this.framebuffer=e.gl.createFramebuffer();r&&(this.colorAttachment=new vx(e,o)),n&&(this.depthAttachmentType=n,this.depthAttachment=\"renderbuffer\"===n?new bx(e,o):new wx(e,o));}destroy(){const e=this.context.gl;if(this.colorAttachment){const t=this.colorAttachment.get();t&&e.deleteTexture(t);}if(this.depthAttachment&&this.depthAttachmentType)if(\"renderbuffer\"===this.depthAttachmentType){const t=this.depthAttachment.get();t&&e.deleteRenderbuffer(t);}else {const t=this.depthAttachment.get();t&&e.deleteTexture(t);}e.deleteFramebuffer(this.framebuffer);}}class Mx{constructor(e,t,i){this.func=e,this.mask=t,this.range=i;}}Mx.ReadOnly=!1,Mx.ReadWrite=!0,Mx.disabled=new Mx(519,Mx.ReadOnly,[0,1]);const Ax=7680;class Sx{constructor(e,t,i,r,n,o){this.test=e,this.ref=t,this.mask=i,this.fail=r,this.depthFail=n,this.pass=o;}}Sx.disabled=new Sx({func:519,mask:0},0,0,Ax,Ax,Ax);const Ix=771;class Cx{constructor(e,t,i,r){this.blendFunction=e,this.blendColor=t,this.mask=i,this.blendEquation=r;}}Cx.Replace=[1,0,1,0],Cx.disabled=new Cx(Cx.Replace,hi.transparent,[!1,!1,!1,!1]),Cx.unblended=new Cx(Cx.Replace,hi.transparent,[!0,!0,!0,!0]),Cx.alphaBlended=new Cx([1,Ix,1,Ix],hi.transparent,[!0,!0,!0,!0]),Cx.multiply=new Cx([774,0,774,0],hi.transparent,[!0,!0,!0,!0]);const zx=1029,Px=2305;class Dx{constructor(e,t,i){this.enable=e,this.mode=t,this.frontFace=i;}}Dx.disabled=new Dx(!1,zx,Px),Dx.backCCW=new Dx(!0,zx,Px),Dx.backCW=new Dx(!0,zx,2304),Dx.frontCW=new Dx(!0,1028,2304),Dx.frontCCW=new Dx(!0,1028,Px);class Rx{constructor(e,t){this.gl=e,this.clearColor=new jy(this),this.clearDepth=new Gy(this),this.clearStencil=new qy(this),this.colorMask=new Zy(this),this.depthMask=new $y(this),this.stencilMask=new Wy(this),this.stencilFunc=new Hy(this),this.stencilOp=new Xy(this),this.stencilTest=new Yy(this),this.depthRange=new Ky(this),this.depthTest=new Jy(this),this.depthFunc=new Qy(this),this.blend=new ex(this),this.blendFunc=new tx(this),this.blendColor=new ix(this),this.blendEquation=new rx(this),this.cullFace=new nx(this),this.cullFaceSide=new ox(this),this.frontFace=new sx(this),this.program=new ax(this),this.activeTexture=new lx(this),this.viewport=new cx(this),this.bindFramebuffer=new hx(this),this.bindRenderbuffer=new ux(this),this.bindTexture=new dx(this),this.bindVertexBuffer=new px(this),this.bindElementBuffer=new fx(this),this.bindVertexArrayOES=new mx(this),this.pixelStoreUnpack=new _x(this),this.pixelStoreUnpackPremultiplyAlpha=new gx(this),this.pixelStoreUnpackFlipY=new yx(this),this.options=t?{...t}:{},this.options.extTextureFilterAnisotropicForceOff||(this.extTextureFilterAnisotropic=e.getExtension(\"EXT_texture_filter_anisotropic\")||e.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")||e.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=e.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT))),this.extDebugRendererInfo=e.getExtension(\"WEBGL_debug_renderer_info\"),this.extDebugRendererInfo&&(this.renderer=e.getParameter(this.extDebugRendererInfo.UNMASKED_RENDERER_WEBGL),this.vendor=e.getParameter(this.extDebugRendererInfo.UNMASKED_VENDOR_WEBGL)),this.options.extTextureFloatLinearForceOff||(this.extTextureFloatLinear=e.getExtension(\"OES_texture_float_linear\")),this.extRenderToTextureHalfFloat=e.getExtension(\"EXT_color_buffer_half_float\"),this.extTimerQuery=e.getExtension(\"EXT_disjoint_timer_query_webgl2\"),this.maxTextureSize=e.getParameter(e.MAX_TEXTURE_SIZE);}setDefault(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault();}setDirty(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.bindVertexArrayOES.dirty=!0,this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0;}createIndexBuffer(e,t,i){return new Fy(this,e,t,i)}createVertexBuffer(e,t,i,r,n){return new Uy(this,e,t,i,r,n)}createRenderbuffer(e,t,i){const r=this.gl,n=r.createRenderbuffer();return this.bindRenderbuffer.set(n),r.renderbufferStorage(r.RENDERBUFFER,e,t,i),this.bindRenderbuffer.set(null),n}createFramebuffer(e,t,i,r){return new Ex(this,e,t,i,r)}clear({color:e,depth:t,stencil:i,colorMask:r}){const n=this.gl;let o=0;e&&(o|=n.COLOR_BUFFER_BIT,this.clearColor.set(e),this.colorMask.set(r||[!0,!0,!0,!0])),void 0!==t&&(o|=n.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(t),this.depthMask.set(!0)),void 0!==i&&(o|=n.STENCIL_BUFFER_BIT,this.clearStencil.set(i),this.stencilMask.set(255)),n.clear(o);}setCullFace(e){!1===e.enable?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(e.mode),this.frontFace.set(e.frontFace));}setDepthMode(e){e.func!==this.gl.ALWAYS||e.mask?(this.depthTest.set(!0),this.depthFunc.set(e.func),this.depthMask.set(e.mask),this.depthRange.set(e.range)):this.depthTest.set(!1);}setStencilMode(e){e.test.func!==this.gl.ALWAYS||e.mask?(this.stencilTest.set(!0),this.stencilMask.set(e.mask),this.stencilOp.set([e.fail,e.depthFail,e.pass]),this.stencilFunc.set({func:e.test.func,ref:e.ref,mask:e.test.mask})):this.stencilTest.set(!1);}setColorMode(e){x(e.blendFunction,Cx.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(e.blendFunction),this.blendColor.set(e.blendColor),e.blendEquation?this.blendEquation.set(e.blendEquation):this.blendEquation.setDefault()),this.colorMask.set(e.mask);}unbindVAO(){this.bindVertexArrayOES.set(null);}}class Lx extends zt{constructor(e,t,i){super(),this.id=e,this._onlySymbols=i,t.on(\"data\",(e=>{\"source\"===e.dataType&&\"metadata\"===e.sourceDataType&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&\"source\"===e.dataType&&\"content\"===e.sourceDataType&&(this.reload(),this.transform&&this.update(this.transform));})),t.on(\"error\",(()=>{this._sourceErrored=!0;})),this._source=t,this._tiles={},this._cache=new By(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._minTileCacheSize=t.minTileCacheSize,this._maxTileCacheSize=t.maxTileCacheSize,this._loadedParentTiles={},this.castsShadows=!1,this._coveredTiles={},this._shadowCasterTiles={},this._state=new Fm,this._isRaster=\"raster\"===this._source.type||\"raster-dem\"===this._source.type||\"custom\"===this._source.type&&\"raster\"===this._source._dataType;}onAdd(e){this.map=e,this._minTileCacheSize=void 0===this._minTileCacheSize&&e?e._minTileCacheSize:this._minTileCacheSize,this._maxTileCacheSize=void 0===this._maxTileCacheSize&&e?e._maxTileCacheSize:this._maxTileCacheSize;}loaded(){if(this._sourceErrored)return !0;if(!this._sourceLoaded)return !1;if(!this._source.loaded())return !1;for(const e in this._tiles){const t=this._tiles[e];if(\"errored\"!==t.state&&(\"loaded\"!==t.state||!t.bucketsLoaded()))return !1}return !0}getSource(){return this._source}pause(){this._paused=!0;}resume(){if(!this._paused)return;const e=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,e&&this.reload(),this.transform&&this.update(this.transform);}_loadTile(e,t){return e.isSymbolTile=this._onlySymbols,e.isExtraShadowCaster=this._shadowCasterTiles[e.tileID.key],this._source.loadTile(e,t)}_unloadTile(e){if(this._source.unloadTile)return this._source.unloadTile(e,(()=>{}))}_abortTile(e){if(this._source.abortTile)return this._source.abortTile(e,(()=>{}))}serialize(){return this._source.serialize()}prepare(e){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const t in this._tiles){const i=this._tiles[t];i.upload(e),i.prepare(this.map.style.imageManager,this.map?this.map.painter:null,this._source.scope);}}getIds(){return L(this._tiles).map((e=>e.tileID)).sort(kx).map((e=>e.key))}getRenderableIds(e,t){const i=[];for(const r in this._tiles)this._isIdRenderable(+r,e,t)&&i.push(this._tiles[r]);return e?i.sort(((e,t)=>{const i=e.tileID,r=t.tileID,n=new y(i.canonical.x,i.canonical.y)._rotate(this.transform.angle),o=new y(r.canonical.x,r.canonical.y)._rotate(this.transform.angle);return i.overscaledZ-r.overscaledZ||o.y-n.y||o.x-n.x})).map((e=>e.tileID.key)):i.map((e=>e.tileID)).sort(kx).map((e=>e.key))}hasRenderableParent(e){const t=this.findLoadedParent(e,0);return !!t&&this._isIdRenderable(t.tileID.key)}_isIdRenderable(e,t,i){return this._tiles[e]&&this._tiles[e].hasData()&&!this._coveredTiles[e]&&(t||!this._tiles[e].holdingForFade())&&(i||!this._shadowCasterTiles[e])}reload(){if(this._paused)this._shouldReloadOnResume=!0;else {this._cache.reset();for(const e in this._tiles)\"errored\"!==this._tiles[e].state&&this._reloadTile(+e,\"reloading\");}}_reloadTile(e,t){const i=this._tiles[e];i&&(\"loading\"!==i.state&&(i.state=t),this._loadTile(i,this._tileLoaded.bind(this,i,e,t)));}_tileLoaded(e,t,i,r){if(r)if(e.state=\"errored\",404!==r.status)this._source.fire(new Ct(r,{tile:e}));else {if(!(e.tileID.key in this._loadedParentTiles))return void this._source.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"error\",sourceId:this._source.id}));if(\"raster-dem\"===this._source.type&&this.usedForTerrain&&this.map.painter.terrain){const e=this.map.painter.terrain;this.update(this.transform,e.getScaledDemTileSize(),!0),e.resetTileLookupCache(this.id);}else this.update(this.transform);}else e.timeAdded=dt.now(),\"expired\"===i&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(t,e),\"raster-dem\"===this._source.type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),this._source.fire(new It(\"data\",{dataType:\"source\",tile:e,coord:e.tileID,sourceCacheId:this.id}));}_backfillDEM(e){const t=this.getRenderableIds();for(let r=0;r1||(Math.abs(i)>1&&(1===Math.abs(i+n)?i+=n:1===Math.abs(i-n)&&(i-=n)),t.dem&&e.dem&&(e.dem.backfillBorder(t.dem,i,r),e.neighboringTiles&&e.neighboringTiles[o]&&(e.neighboringTiles[o].backfilled=!0)));}}getTile(e){return this.getTileByID(e.key)}getTileByID(e){return this._tiles[e]}_retainLoadedChildren(e,t,i,r){for(const n in this._tiles){let o=this._tiles[n];if(r[n]||!o.hasData()||o.tileID.overscaledZ<=t||o.tileID.overscaledZ>i)continue;let s=o.tileID;for(;o&&o.tileID.overscaledZ>t+1;){const e=o.tileID.scaledTo(o.tileID.overscaledZ-1);o=this._tiles[e.key],o&&o.hasData()&&(s=e);}let a=s;for(;a.overscaledZ>t;)if(a=a.scaledTo(a.overscaledZ-1),e[a.key]){r[s.key]=s;break}}}findLoadedParent(e,t){if(e.key in this._loadedParentTiles){const i=this._loadedParentTiles[e.key];return i&&i.tileID.overscaledZ>=t?i:null}for(let i=e.overscaledZ-1;i>=t;i--){const t=e.scaledTo(i),r=this._getLoadedTile(t);if(r)return r}}_getLoadedTile(e){const t=this._tiles[e.key];return t&&t.hasData()?t:this._cache.getByKey(this._source.reparseOverscaled?e.wrapped().key:e.canonical.key)}updateCacheSize(e,t){t=t||this._source.tileSize;const i=Math.ceil(e.width/t)+1,r=Math.ceil(e.height/t)+1,n=Math.floor(i*r*5),o=\"number\"==typeof this._minTileCacheSize?Math.max(this._minTileCacheSize,n):n,s=\"number\"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,o):o;this._cache.setMaxSize(s);}handleWrapJump(e){const t=Math.round((e-(void 0===this._prevLng?e:this._prevLng))/360);if(this._prevLng=e,t){const e={};for(const i in this._tiles){const r=this._tiles[i];r.tileID=r.tileID.unwrapTo(r.tileID.wrap+t),e[r.tileID.key]=r;}this._tiles=e;for(const e in this._timers)clearTimeout(this._timers[e]),delete this._timers[e];for(const e in this._tiles)this._setTileReloadTimer(+e,this._tiles[e]);}}update(e,t,i,r){if(this.transform=e,!this._sourceLoaded||this._paused||this.transform.freezeTileCoverage)return;if(this.usedForTerrain&&!i)return;let n;if(this.updateCacheSize(e,t),\"globe\"!==this.transform.projection.name&&this.handleWrapJump(this.transform.center.lng),this._shadowCasterTiles={},this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?n=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((e=>new qu(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y))):(n=e.coveringTiles({tileSize:t||this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!i,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain}),this._source.hasTile&&(n=n.filter((e=>this._source.hasTile(e))))):n=[],n.length>0&&this.castsShadows&&r&&\"globe\"!==this.transform.projection.name&&!this.usedForTerrain&&!Ox(this._source.type)){const o=e.coveringZoomLevel({tileSize:t||this._source.tileSize,roundZoom:this._source.roundZoom&&!i}),s=Math.min(o,this._source.maxzoom),a=e.extendTileCoverForShadows(n,r,s);for(const e of a)this._shadowCasterTiles[e.key]=!0,n.push(e);}const o=this._updateRetainedTiles(n);if(Ox(this._source.type)&&0!==n.length){const e={},t={},i=Object.keys(o);for(const r of i){const i=o[r],n=this._tiles[r];if(!n||n.fadeEndTime&&n.fadeEndTime<=dt.now())continue;const s=this.findLoadedParent(i,Math.max(i.overscaledZ-Lx.maxOverzooming,this._source.minzoom));s&&(this._addTile(s.tileID),e[s.tileID.key]=s.tileID),t[r]=i;}const r=n[n.length-1].overscaledZ;for(const e in this._tiles){const i=this._tiles[e];if(o[e]||!i.hasData())continue;let n=i.tileID;for(;n.overscaledZ>r;){n=n.scaledTo(n.overscaledZ-1);const r=this._tiles[n.key];if(r&&r.hasData()&&t[n.key]){o[e]=i.tileID;break}}}for(const t in e)o[t]||(this._coveredTiles[t]=!0,o[t]=e[t]);}for(const e in o)this._tiles[e].clearFadeHold();const s=function(e,t){const i=[];for(const r in e)r in t||i.push(r);return i}(this._tiles,o);for(const e of s){const t=this._tiles[e];t.hasSymbolBuckets&&!t.holdingForFade()?t.setHoldDuration(this.map._fadeDuration):t.hasSymbolBuckets&&!t.symbolFadeFinished()||this._removeTile(+e);}this._updateLoadedParentTileCache(),this._onlySymbols&&this._source.afterUpdate&&this._source.afterUpdate();}releaseSymbolFadeTiles(){for(const e in this._tiles)this._tiles[e].holdingForFade()&&this._removeTile(+e);}_updateRetainedTiles(e){const t={};if(0===e.length)return t;const i={},r=e.reduce(((e,t)=>Math.min(e,t.overscaledZ)),1/0),n=e[0].overscaledZ,o=Math.max(n-Lx.maxOverzooming,this._source.minzoom),s=Math.max(n+Lx.maxUnderzooming,this._source.minzoom),a={};for(const i of e){const e=this._addTile(i);t[i.key]=i,e.hasData()||r=this._source.maxzoom){const e=r.children(this._source.maxzoom)[0],i=this.getTile(e);if(i&&i.hasData()){t[e.key]=e;continue}}else {const e=r.children(this._source.maxzoom);if(t[e[0].key]&&t[e[1].key]&&t[e[2].key]&&t[e[3].key])continue}let n=e.wasRequested();for(let s=r.overscaledZ-1;s>=o;--s){const o=r.scaledTo(s);if(i[o.key])break;if(i[o.key]=!0,e=this.getTile(o),!e&&n&&(e=this._addTile(o)),e&&(t[o.key]=o,n=e.wasRequested(),e.hasData()))break}}return t}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const e in this._tiles){const t=[];let i,r=this._tiles[e].tileID;for(;r.overscaledZ>0;){if(r.key in this._loadedParentTiles){i=this._loadedParentTiles[r.key];break}t.push(r.key);const e=r.scaledTo(r.overscaledZ-1);if(i=this._getLoadedTile(e),i)break;r=e;}for(const e of t)this._loadedParentTiles[e]=i;}}_addTile(e){let t=this._tiles[e.key];if(t)return !0!==t.isExtraShadowCaster||!!this._shadowCasterTiles[e.key]||this._reloadTile(e.key,\"reloading\"),t;t=this._cache.getAndRemove(e),t&&(this._setTileReloadTimer(e.key,t),t.tileID=e,this._state.initializeTileState(t,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,t)));const i=Boolean(t);if(!i){const i=this.map?this.map.painter:null;t=new Oy(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,i,this._isRaster),this._loadTile(t,this._tileLoaded.bind(this,t,e.key,t.state));}return t?(t.uses++,this._tiles[e.key]=t,i||this._source.fire(new It(\"dataloading\",{tile:t,coord:t.tileID,dataType:\"source\"})),t):null}_setTileReloadTimer(e,t){e in this._timers&&(clearTimeout(this._timers[e]),delete this._timers[e]);const i=t.getExpiryTimeout();i&&(this._timers[e]=setTimeout((()=>{this._reloadTile(e,\"expired\"),delete this._timers[e];}),i));}_removeTile(e){const t=this._tiles[e];t&&(t.uses--,delete this._tiles[e],this._timers[e]&&(clearTimeout(this._timers[e]),delete this._timers[e]),t.uses>0||(t.hasData()&&\"reloading\"!==t.state?this._cache.add(t.tileID,t,t.getExpiryTimeout()):(t.aborted=!0,this._abortTile(t),this._unloadTile(t))));}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const e in this._tiles)this._removeTile(+e);this._source._clear&&this._source._clear(),this._cache.reset(),this.map&&this.usedForTerrain&&this.map.painter.terrain&&this.map.painter.terrain.resetTileLookupCache(this.id);}tilesIn(e,t,i){const r=[],n=this.transform;if(!n)return r;const o=\"globe\"===n.projection.name,s=Kd(n.center.lng);for(const a in this._tiles){const l=this._tiles[a];if(i&&l.clearQueryDebugViz(),l.holdingForFade())continue;let c;if(o){const e=l.tileID.canonical;if(0===e.z){const t=[Math.abs(z(s,...Bx(e,-1))-s),Math.abs(z(s,...Bx(e,1))-s)];c=[0,2*t.indexOf(Math.min(...t))-1];}else {const t=[Math.abs(z(s,...Bx(e,-1))-s),Math.abs(z(s,...Bx(e,0))-s),Math.abs(z(s,...Bx(e,1))-s)];c=[t.indexOf(Math.min(...t))-1];}}else c=[0];for(const i of c){const o=e.containsTile(l,n,t,i);o&&r.push(o);}}return r}getShadowCasterCoordinates(){return this._getRenderableCoordinates(!1,!0)}getVisibleCoordinates(e){return this._getRenderableCoordinates(e)}_getRenderableCoordinates(e,t){const i=this.getRenderableIds(e,t).map((e=>this._tiles[e].tileID)),r=\"globe\"===this.transform.projection.name;for(const e of i)e.projMatrix=this.transform.calculateProjMatrix(e.toUnwrapped()),e.expandedProjMatrix=r?this.transform.calculateProjMatrix(e.toUnwrapped(),!1,!0):e.projMatrix;return i}sortCoordinatesByDistance(e){const t=e.slice(),i=this.transform._camera.position,r=this.transform._camera.forward(),n={};for(const e of t){const t=1/(1<n[e.key]-n[t.key])),t}hasTransition(){if(this._source.hasTransition())return !0;if(Ox(this._source.type))for(const e in this._tiles){const t=this._tiles[e];if(void 0!==t.fadeEndTime&&t.fadeEndTime>=dt.now())return !0}return !1}setFeatureState(e,t,i){this._state.updateState(e=e||\"_geojsonTileLayer\",t,i);}removeFeatureState(e,t,i){this._state.removeFeatureState(e=e||\"_geojsonTileLayer\",t,i);}getFeatureState(e,t){return this._state.getState(e=e||\"_geojsonTileLayer\",t)}setDependencies(e,t,i){const r=this._tiles[e];r&&r.setDependencies(t,i);}reloadTilesForDependencies(e,t){for(const i in this._tiles)this._tiles[i].hasDependency(e,t)&&this._reloadTile(+i,\"reloading\");this._cache.filter((i=>!i.hasDependency(e,t)));}_preloadTiles(e,t){if(!this._sourceLoaded){const i=()=>{this._sourceLoaded&&(this._source.off(\"data\",i),this._preloadTiles(e,t));};return void this._source.on(\"data\",i)}const i=new Map,r=Array.isArray(e)?e:[e],n=this.map.painter.terrain,o=this.usedForTerrain&&n?n.getScaledDemTileSize():this._source.tileSize;for(const e of r){const t=e.coveringTiles({tileSize:o,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom&&!this.usedForTerrain,reparseOverscaled:this._source.reparseOverscaled,isTerrainDEM:this.usedForTerrain});for(const e of t)i.set(e.key,e);this.usedForTerrain&&e.updateElevation(!1);}R(Array.from(i.values()),((e,t)=>{const i=new Oy(e,this._source.tileSize*e.overscaleFactor(),this.transform.tileZoom,this.map.painter,this._isRaster);this._loadTile(i,(e=>{\"raster-dem\"===this._source.type&&i.dem&&this._backfillDEM(i),t(e,i);}));}),t);}}function kx(e,t){const i=Math.abs(2*e.wrap)-+(e.wrap<0),r=Math.abs(2*t.wrap)-+(t.wrap<0);return e.overscaledZ-t.overscaledZ||r-i||t.canonical.y-e.canonical.y||t.canonical.x-e.canonical.x}function Ox(e){return \"raster\"===e||\"image\"===e||\"video\"===e||\"custom\"===e}function Bx(e,t){const i=1<=1e-15){const e=Du.normalize([],i);Du.scale(r,e,Du.dot(r,e)),t[0]=r[0],t[1]=r[1];}const n=Du.cross([],t,e);if(Du.len(n)<1e-15)return null;const o=Math.atan2(-n[1],n[0]);return Wx(Math.atan2(Math.sqrt(e[0]*e[0]+e[1]*e[1]),-e[2]),o)}class Xx{constructor(e,t){this.position=e,this.orientation=t;}get position(){return this._position}set position(e){if(e){const t=e instanceof lp?e:new lp(e[0],e[1],e[2]);this._renderWorldCopies&&(t.x=D(t.x,0,1)),this._position=t;}else this._position=null;}lookAtPoint(e,t){if(this.orientation=null,!this.position)return;const i=this.position,r=this._elevation?this._elevation.getAtPointOrZero(lp.fromLngLat(e)):0,n=lp.fromLngLat(e,r),o=[n.x-i.x,n.y-i.y,n.z-i.z];t||(t=[0,0,1]),t[2]=Math.abs(t[2]),this.orientation=Hx(o,t);}setPitchBearing(e,t){this.orientation=Wx(w(e),w(-t));}}class Yx{constructor(e,t){this._transform=Au.identity([]),this.orientation=t,this.position=e;}get mercatorPosition(){const e=this.position;return new lp(e[0],e[1],e[2])}get position(){const e=ne(this._transform,3);return [e[0],e[1],e[2]]}set position(e){var t;e&&oe(this._transform,3,[(t=e)[0],t[1],t[2],1]);}get orientation(){return this._orientation}set orientation(e){this._orientation=e||Iu.identity([]),e&&$x(this._transform,this._orientation);}getPitchBearing(){const e=this.forward(),t=this.right();return {bearing:Math.atan2(-t[1],t[0]),pitch:Math.atan2(Math.sqrt(e[0]*e[0]+e[1]*e[1]),-e[2])}}setPitchBearing(e,t){this._orientation=Wx(e,t),$x(this._transform,this._orientation);}forward(){const e=ne(this._transform,2);return [-e[0],-e[1],-e[2]]}up(){const e=ne(this._transform,1);return [-e[0],-e[1],-e[2]]}right(){const e=ne(this._transform,0);return [e[0],e[1],e[2]]}getCameraToWorld(e,t){const i=new Float64Array(16);return Au.invert(i,this.getWorldToCamera(e,t)),i}getCameraToWorldMercator(){return this._transform}getWorldToCameraPosition(e,t,i){const r=this.position;Du.scale(r,r,-e);const n=new Float64Array(16);return Au.fromScaling(n,[i,i,i]),Au.translate(n,n,r),n[10]*=t,n}getWorldToCamera(e,t){const i=new Float64Array(16),r=new Float64Array(4),n=this.position;return Iu.conjugate(r,this._orientation),Du.scale(n,n,-e),Au.fromQuat(i,r),Au.translate(i,i,n),i[1]*=-1,i[5]*=-1,i[9]*=-1,i[13]*=-1,i[8]*=t,i[9]*=t,i[10]*=t,i[11]*=t,i}getCameraToClipPerspective(e,t,i,r){const n=new Float64Array(16);return Au.perspective(n,e,t,i,r),n}getCameraToClipOrthographic(e,t,i,r,n,o){const s=new Float64Array(16);return Au.ortho(s,e,t,i,r,n,o),s}getDistanceToElevation(e,t=!1){const i=0===e?0:Qd(e,t?tp(this.position[1]):this.position[1]),r=this.forward();return (i-this.position[2])/r[2]}clone(){return new Yx([...this.position],[...this.orientation])}}function Kx(e,t){const i=Qx(e.projection,e.zoom,e.width,e.height),r=function(e,t,i,r,n){const o=new Wd(i.lng-180*ev,i.lat),s=new Wd(i.lng+180*ev,i.lat),a=e.project(o.lng,o.lat),l=e.project(s.lng,s.lat),c=-Math.atan2(l.y-a.y,l.x-a.x),h=lp.fromLngLat(i);h.y=z(h.y,-1+ev,1-ev);const u=h.toLngLat(),d=e.project(u.lng,u.lat),p=lp.fromLngLat(u);p.x+=ev;const f=p.toLngLat(),m=e.project(f.lng,f.lat),_=iv(m.x-d.x,m.y-d.y,c),g=lp.fromLngLat(u);g.y+=ev;const y=g.toLngLat(),x=e.project(y.lng,y.lat),v=iv(x.x-d.x,x.y-d.y,c),b=Math.abs(_.x)/Math.abs(v.y),w=Au.identity([]);Au.rotateZ(w,w,-c*(1-(n?0:r)));const T=Au.identity([]);return Au.scale(T,T,[1,1-(1-b)*r,1]),T[4]=-v.x/v.y*r,Au.rotateZ(T,T,c),Au.multiply(T,w,T),T}(e.projection,0,e.center,i,t),n=Jx(e);return Au.scale(r,r,[n,n,1]),r}function Jx(e){const t=e.projection,i=Qx(e.projection,e.zoom,e.width,e.height),r=tv(t,e.center),n=tv(t,Wd.convert(t.center));return Math.pow(2,r*i+(1-i)*n)}function Qx(e,t,i,r,n=1/0){const o=e.range;if(!o)return 0;const s=Math.min(n,Math.max(i,r)),a=Math.log(s/1024)/Math.LN2;return P(o[0]+a,o[1]+a,t)}const ev=1/4e4;function tv(e,t){const i=z(t.lat,-rp,rp),r=new Wd(t.lng-180*ev,i),n=new Wd(t.lng+180*ev,i),o=e.project(r.lng,i),s=e.project(n.lng,i),a=lp.fromLngLat(r),l=lp.fromLngLat(n),c=s.x-o.x,h=s.y-o.y,u=l.x-a.x,d=l.y-a.y,p=Math.sqrt((u*u+d*d)/(c*c+h*h));return Math.log(p)/Math.LN2}function iv(e,t,i){const r=Math.cos(i),n=Math.sin(i);return {x:e*r-t*n,y:e*n+t*r}}function rv(e,t,i){return t*(cr/(e.tileSize*Math.pow(2,i-e.tileID.overscaledZ)))}const nv={unknown:0,flipRequired:1,flipNotRequired:2},ov=Math.tan(85*Math.PI/180);function sv(e,t,i,r,n,o,s){const a=Au.create();if(i)if(\"globe\"===o.name){const e=function(e,t){const{x:i,y:r}=e.point,n=zd(i,r,e.worldSize/e._pixelsPerMercatorPixel,0,0);return Au.multiply(n,n,Sd(fd(t)))}(n,t);Au.multiply(a,a,e);}else {const e=bu.invert([],s);a[0]=e[0],a[1]=e[1],a[4]=e[2],a[5]=e[3],r||Au.rotateZ(a,a,n.angle);}else Au.multiply(a,n.labelPlaneMatrix,e);return a}function av(e,t,i,r,n,o,s){const a=sv(e,t,i,r,n,o,s);return \"globe\"===o.name&&i||(a[2]=a[6]=a[10]=a[14]=0),a}function lv(e,t,i,r,n,o,s){if(i){if(\"globe\"===o.name){const a=sv(e,t,i,r,n,o,s);return Au.invert(a,a),Au.multiply(a,e,a),a}{const t=Au.clone(e),i=Au.identity([]);return i[0]=s[0],i[1]=s[1],i[4]=s[2],i[5]=s[3],Au.multiply(t,t,i),r||Au.rotateZ(t,t,-n.angle),t}}return n.glCoordMatrix}function cv(e,t,i,r){const n=[e,t,i,1];i?yu.transformMat4(n,n,r):vv(n,n,r);const o=n[3];return n[0]/=o,n[1]/=o,n[2]/=o,n}function hv(e,t){return Math.min(.5+e/t*.5,1.5)}function uv(e,t){const i=e[0]/e[3],r=e[1]/e[3];return i>=-t[0]&&i<=t[0]&&r>=-t[1]&&r<=t[1]}function dv(e,t,i,r,n,o,s,a,l,c){const h=i.transform,u=r?e.textSizeData:e.iconSizeData,d=m_(u,i.transform.zoom),p=\"globe\"===h.projection.name,f=[256/i.width*2+1,256/i.height*2+1],m=r?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;m.clear();let _=null;p&&(_=r?e.text.globeExtVertexArray:e.icon.globeExtVertexArray);const g=e.lineVertexArray,x=r?e.text.placedSymbolArray:e.icon.placedSymbolArray,v=i.transform.width/i.transform.height;let b,w=!1;for(let r=0;rMath.abs(i)?{useVertical:!0}:e===A_.vertical?r>0?{needsFlipping:!0}:null:t!==nv.unknown&&function(e,t){return 0===e||Math.abs(t/e)>ov}(i,r)?t===nv.flipRequired?{needsFlipping:!0}:null:i<0?{needsFlipping:!0}:null}function mv(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,x){const v=t/24,b=e.lineOffsetX*v,w=e.lineOffsetY*v,{lineStartIndex:T,glyphStartIndex:E,numGlyphs:M,segment:A,writingMode:S,flipState:I}=e,C=T+e.lineLength,z=e=>{if(h){const[t,i,r]=e.up,n=c.length;uy(h,n+0,t,i,r),uy(h,n+1,t,i,r),uy(h,n+2,t,i,r),uy(h,n+3,t,i,r);}const[t,i,r]=e.point;dy(c,t,i,r,e.angle);};if(M>1){const t=pv(v,a,b,w,i,u,d,e,l,o,p,m,!1,_,g,x);if(!t)return {notEnoughRoom:!0};if(r&&!i){let[i,r,n]=t.first.point,[o,a,l]=t.last.point;[i,r]=cv(i,r,n,s),[o,a]=cv(o,a,l,s);const c=fv(S,I,(o-i)*f,a-r);if(e.flipState=c&&c.needsFlipping?nv.flipRequired:nv.flipNotRequired,c)return c}z(t.first);for(let e=E+1;e0?o:gv(d,r,t,1,n,void 0,_,g.canonical),a=fv(S,I,(s[0]-t[0])*f,s[1]-t[1]);if(e.flipState=a&&a.needsFlipping?nv.flipRequired:nv.flipNotRequired,a)return a}const t=yv(v*a.getoffsetX(E),b,w,i,u,d,A,T,C,l,o,p,m,!1,!1,_,g,x);if(!t)return {notEnoughRoom:!0};z(t);}return {}}function _v(e,t,i,r,n){const{x:o,y:s,z:a}=r.projectTilePoint(e.x,e.y,t);if(!n)return cv(o,s,a,i);const[l,c,h]=n(e);return cv(o+l,s+c,a+h,i)}function gv(e,t,i,r,n,o,s,a){const l=_v(e.sub(t)._unit()._add(e),a,n,s,o);return Du.sub(l,i,l),Du.normalize(l,l),Du.scaleAndAdd(l,i,l,r)}function yv(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g){const x=r?e-t:e+t;let v=x>0?1:-1,b=0;r&&(v*=-1,b=Math.PI),v<0&&(b+=Math.PI);let w=a+s+(v>0?0:1)|0,T=n,E=n,M=0,A=0;const S=Math.abs(x),I=[],C=[];let z=o,P=z;const D=()=>gv(P,z,E,S-M+1,h,d,m,_.canonical);for(;M+A<=S;){if(w+=v,w=l)return null;if(E=T,P=z,I.push(E),p&&C.push(P),z=new y(c.getx(w),c.gety(w)),T=u[w],!T){const e=_v(z,_.canonical,h,m,d);T=e[3]>0?u[w]=e:D();}M+=A,A=Du.distance(E,T);}f&&d&&(u[w]&&(T=D(),A=Du.distance(E,T)),u[w]=T);const R=(S-M)/A,L=z.sub(P)._mult(R)._add(P),k=Du.sub([],T,E),O=Du.scaleAndAdd([],E,k,R);let B=[0,0,1],F=k[0],N=k[1];if(g&&(B=m.upVector(_.canonical,L.x,L.y),0!==B[0]||0!==B[1]||1!==B[2])){const e=[B[2],0,-B[0]],t=Du.cross([],B,e);Du.normalize(e,e),Du.normalize(t,t),F=Du.dot(k,e),N=Du.dot(k,t);}if(i){const e=Du.cross([],B,k);Du.normalize(e,e),Du.scaleAndAdd(O,O,e,i*v);}const U=b+Math.atan2(N,F);return I.push(O),p&&C.push(L),{point:O,angle:U,path:I,tilePath:C,up:B}}function xv(e,t){const i=t.length,r=i+4*e;t.resize(r),t.float32.fill(-1/0,4*i,4*r);}function vv(e,t,i){const r=t[0],n=t[1];return e[0]=i[0]*r+i[4]*n+i[12],e[1]=i[1]*r+i[5]*n+i[13],e[3]=i[3]*r+i[7]*n+i[15],e}const bv=(e,t,i)=>(1-i)*e+i*t,wv=e=>e*e*e*e*e;class Tv{constructor(e,t,i,r,n,o,s){this.tileSize=512,this._renderWorldCopies=void 0===n||n,this._minZoom=e||0,this._maxZoom=t||22,this._minPitch=null==i?0:i,this._maxPitch=null==r?60:r,this.setProjection(o),this.setMaxBounds(s),this.width=0,this.height=0,this._center=new Wd(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._nearZ=0,this._farZ=0,this._unmodified=!0,this._edgeInsets=new Zx,this._projMatrixCache={},this._alignedProjMatrixCache={},this._fogTileMatrixCache={},this._expandedProjMatrixCache={},this._distanceTileDataCache={},this._camera=new Yx,this._centerAltitude=0,this._averageElevation=0,this.cameraElevationReference=\"ground\",this._pixelsPerMercatorPixel=1,this.globeRadius=0,this.globeCenterInViewSpace=[0,0,0],this._horizonShift=.1,this._orthographicProjectionAtLowPitch=!1;}clone(){const e=new Tv(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies,this.getProjection());return e._elevation=this._elevation,e._centerAltitude=this._centerAltitude,e._centerAltitudeValidForExaggeration=this._centerAltitudeValidForExaggeration,e.tileSize=this.tileSize,e.mercatorFromTransition=this.mercatorFromTransition,e.width=this.width,e.height=this.height,e.cameraElevationReference=this.cameraElevationReference,e._center=this._center,e._setZoom(this.zoom),e._seaLevelZoom=this._seaLevelZoom,e.angle=this.angle,e._fov=this._fov,e._pitch=this._pitch,e._nearZ=this._nearZ,e._farZ=this._farZ,e._averageElevation=this._averageElevation,e._orthographicProjectionAtLowPitch=this._orthographicProjectionAtLowPitch,e._unmodified=this._unmodified,e._edgeInsets=this._edgeInsets.clone(),e._camera=this._camera.clone(),e._calcMatrices(),e.freezeTileCoverage=this.freezeTileCoverage,e.frustumCorners=this.frustumCorners,e}get isOrthographic(){return \"globe\"!==this.projection.name&&this._orthographicProjectionAtLowPitch&&this.pitch<15}get elevation(){return this._elevation}set elevation(e){this._elevation!==e&&(this._elevation=e,this._updateCameraOnTerrain(),this._calcMatrices());}get depthOcclusionForSymbolsAndCircles(){return \"globe\"!==this.projection.name&&!this.isOrthographic}updateElevation(e,t=!1){const i=this._elevation&&this._elevation.exaggeration()!==this._centerAltitudeValidForExaggeration;(null==this._seaLevelZoom||i)&&this._updateCameraOnTerrain(),(e||i)&&this._constrainCamera(t),this._calcMatrices();}getProjection(){return O(this.projection,[\"name\",\"center\",\"parallels\"])}setProjection(e){this.projectionOptions=e||{name:\"mercator\"};const t=this.projection?this.getProjection():void 0;this.projection=ty(this.projectionOptions);const i=!x(t,this.getProjection());return i&&this._calcMatrices(),this.mercatorFromTransition=!1,i}setOrthographicProjectionAtLowPitch(e){return this._orthographicProjectionAtLowPitch!==e&&(this._orthographicProjectionAtLowPitch=e,this._calcMatrices(),!0)}setMercatorFromTransition(){const e=this.projection.name;this.mercatorFromTransition=!0,this.projectionOptions={name:\"mercator\"},this.projection=ty({name:\"mercator\"});const t=e!==this.projection.name;return t&&this._calcMatrices(),t}get minZoom(){return this._minZoom}set minZoom(e){this._minZoom!==e&&(this._minZoom=e,this.zoom=Math.max(this.zoom,e));}get maxZoom(){return this._maxZoom}set maxZoom(e){this._maxZoom!==e&&(this._maxZoom=e,this.zoom=Math.min(this.zoom,e));}get minPitch(){return this._minPitch}set minPitch(e){this._minPitch!==e&&(this._minPitch=e,this.pitch=Math.max(this.pitch,e));}get maxPitch(){return this._maxPitch}set maxPitch(e){this._maxPitch!==e&&(this._maxPitch=e,this.pitch=Math.min(this.pitch,e));}get renderWorldCopies(){return this._renderWorldCopies&&!0===this.projection.supportsWorldCopies}set renderWorldCopies(e){void 0===e?e=!0:null===e&&(e=!1),this._renderWorldCopies=e;}get worldSize(){return this.tileSize*this.scale}get cameraWorldSizeForFog(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get cameraWorldSize(){const e=Math.max(this._camera.getDistanceToElevation(this._averageElevation,!0),Number.EPSILON);return this._worldSizeFromZoom(this._zoomFromMercatorZ(e))}get pixelsPerMeter(){return this.projection.pixelsPerMeter(this.center.lat,this.worldSize)}get cameraPixelsPerMeter(){return Qd(1,this.center.lat)*this.cameraWorldSizeForFog}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new y(this.width,this.height)}get bearing(){return D(this.rotation,-180,180)}set bearing(e){this.rotation=e;}get rotation(){return -this.angle/Math.PI*180}set rotation(e){const t=-e*Math.PI/180;this.angle!==t&&(this._unmodified=!1,this.angle=t,this._calcMatrices(),this.rotationMatrix=bu.create(),bu.rotate(this.rotationMatrix,this.rotationMatrix,this.angle));}get pitch(){return this._pitch/Math.PI*180}set pitch(e){const t=z(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==t&&(this._unmodified=!1,this._pitch=t,this._calcMatrices());}get aspect(){return this.width/this.height}get fov(){return this._fov/Math.PI*180}get fovX(){return this._fov}get fovY(){const e=1/Math.tan(.5*this.fovX);return 2*Math.atan(1/this.aspect/e)}set fov(e){e=Math.max(.01,Math.min(60,e)),this._fov!==e&&(this._unmodified=!1,this._fov=w(e),this._calcMatrices());}get averageElevation(){return this._averageElevation}set averageElevation(e){this._averageElevation=e,this._calcFogMatrices(),this._distanceTileDataCache={};}get zoom(){return this._zoom}set zoom(e){const t=Math.min(Math.max(e,this.minZoom),this.maxZoom);this._zoom!==t&&(this._unmodified=!1,this._setZoom(t),this._updateSeaLevelZoom(),this._constrain(),this._calcMatrices());}_setZoom(e){this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom;}_updateCameraOnTerrain(){const e=this.elevation?this.elevation.getAtPoint(this.locationCoordinate(this.center),Number.NEGATIVE_INFINITY):Number.NEGATIVE_INFINITY,t=this.elevation&&e===Number.NEGATIVE_INFINITY&&this.elevation.visibleDemTiles.length>0&&this.elevation.exaggeration()>0&&this._centerAltitudeValidForExaggeration;if(!this._elevation||e===Number.NEGATIVE_INFINITY&&(!t||!this._centerAltitude))return this._centerAltitude=0,this._seaLevelZoom=null,void(this._centerAltitudeValidForExaggeration=void 0);const i=this._elevation;t||this._centerAltitude&&this._centerAltitudeValidForExaggeration&&i.exaggeration()&&this._centerAltitudeValidForExaggeration!==i.exaggeration()?(this._centerAltitude=this._centerAltitude/this._centerAltitudeValidForExaggeration*i.exaggeration(),this._centerAltitudeValidForExaggeration=i.exaggeration()):(this._centerAltitude=e||0,this._centerAltitudeValidForExaggeration=i.exaggeration()),this._updateSeaLevelZoom();}_updateSeaLevelZoom(){void 0!==this._centerAltitudeValidForExaggeration&&(this._seaLevelZoom=this._zoomFromMercatorZ((this.pixelsPerMeter*this._centerAltitude+this.cameraToCenterDistance)/this.worldSize));}sampleAverageElevation(){if(!this._elevation)return 0;const e=this._elevation,t=[[.5,.2],[.3,.5],[.5,.5],[.7,.5],[.5,.8]],i=this.horizonLineFromTop();let r=0,n=0;for(let o=0;o0,c=e.y+10,u=i.wrap-(l?0:1),d=i.wrap+(a?0:1),p=l?e.x-1:s-1,f=a?e.x+1:0;t[0]<0?(r.push(new qu(n,d,e.z,f,e.y)),t[1]<0&&c&&(r.push(new qu(n,o,e.z,e.x,e.y+1)),r.push(new qu(n,d,e.z,f,e.y+1))),t[1]>0&&h&&(r.push(new qu(n,o,e.z,e.x,e.y-1)),r.push(new qu(n,d,e.z,f,e.y-1)))):t[0]>0?(r.push(new qu(n,u,e.z,p,e.y)),t[1]<0&&c&&(r.push(new qu(n,o,e.z,e.x,e.y+1)),r.push(new qu(n,u,e.z,p,e.y+1))),t[1]>0&&h&&(r.push(new qu(n,o,e.z,e.x,e.y-1)),r.push(new qu(n,u,e.z,p,e.y-1)))):t[1]<0&&c?r.push(new qu(n,o,e.z,e.x,e.y+1)):h&&r.push(new qu(n,o,e.z,e.x,e.y-1));}if(r.length>1){r.sort(((e,t)=>e.overscaledZ-t.overscaledZ||e.wrap-t.wrap||e.canonical.z-t.canonical.z||e.canonical.x-t.canonical.x||e.canonical.y-t.canonical.y));let e=0,t=0;for(;te.isChildOf(t)))||n.push(e);return r=n.filter((t=>!e.some((e=>!!(t.overscaledZe.maxzoom&&(t=e.maxzoom);const s=this.locationCoordinate(this.center),a=this.center.lat,l=1<{const t=1/4e4,i=new lp(e.x+t,e.y,e.z),r=new lp(e.x,e.y+t,e.z),n=e.toLngLat(),o=i.toLngLat(),s=r.toLngLat(),a=this.locationCoordinate(n),l=this.locationCoordinate(o),c=this.locationCoordinate(s),h=Math.hypot(l.x-a.x,l.y-a.y),u=Math.hypot(c.x-a.x,c.y-a.y);return Math.sqrt(h*u)*w/t},M=e=>{const t=v,i=b;return {aabb:Dg(this,l,0,0,0,e,i,t,this.projection),zoom:0,x:0,y:0,minZ:i,maxZ:t,wrap:e,fullyVisible:!1}},A=[];let S=[];const I=t,C=e.reparseOverscaled?i:t,z=e=>e*e,P=z((m-this._centerAltitude)*f),D=e=>{if(!this._elevation||!e.tileID||!o)return;const t=this._elevation.getMinMaxForTile(e.tileID),i=e.aabb;t?(i.min[2]=t.min,i.max[2]=t.max,i.center[2]=(i.min[2]+i.max[2])/2):(e.shouldSplit=R(e),e.shouldSplit||(i.min[2]=i.max[2]=i.center[2]=this._centerAltitude));},R=e=>{if(e.zoom=.9)return !0}else if(n&&(o=z(e.aabb.distanceZ(_)*f)),this.projection.isReprojectedInTileSpace&&i<=5){const t=Math.pow(2,e.zoom),i=T(new lp((e.x+.5)/t,(e.y+.5)/t));s=i>.85?1:i;}const l=t*t+r*r+o,c=z((1<{if(t*z(.707)0;){const i=A.pop(),r=i.x,s=i.y;let a=i.fullyVisible;const u=()=>\"globe\"===this.projection.name&&(0===i.y||i.y===(1<>1),u={aabb:o?i.aabb.quadrant(e):Dg(this,l,i.zoom+1,t,c,i.wrap,i.minZ,i.maxZ,this.projection),zoom:i.zoom+1,x:t,y:c,wrap:i.wrap,fullyVisible:a,tileID:void 0,shouldSplit:void 0,minZ:i.minZ,maxZ:i.maxZ};n&&!h&&(u.tileID=new qu(i.zoom+1===I?C:i.zoom+1,i.wrap,i.zoom+1,t,c),D(u)),A.push(u);}else {const n=i.zoom===I?C:i.zoom;if(e.minzoom&&e.minzoom>n)continue;if(!a){let e=g?i.aabb.intersectsPrecise(d):i.aabb.intersectsPreciseFlat(d);if(0===e&&u()){const t=new ju(i.zoom,r,s);e=yd(this,l,t,!0).intersectsPrecise(d);}if(0===e)continue}const o=c[0]-(.5+r+(i.wrap<{const n=[0,0,0,1],o=[cr,cr,0,1],s=this.calculateFogTileMatrix(r.tileID.toUnwrapped());yu.transformMat4(n,n,s),yu.transformMat4(o,o,s);const a=function(e,t,i){let r=0;for(let i=0;i<2;++i){const n=0;e[i]>n&&(r+=(e[i]-n)*(e[i]-n)),t[i]t&&0!==i){const t=this.calculateProjMatrix(r.tileID.toUnwrapped());let n;e.isTerrainDEM||(n=c.getMinMaxForTile(r.tileID)),n||(n={min:b,max:v});const o=function(e){const t=Math.round((e+45+360)%360/90)%4;return E[t]}(this.rotation),s=[o[0]*cr,o[1]*cr,n.max];Du.transformMat4(s,s,t),l=(1-s[1])*this.height*.5e.distanceSq-t.distanceSq)).map((e=>e.tileID))}resize(e,t){this.width=e,this.height=t,this.pixelsToGLUnits=[2/e,-2/t],this._constrain(),this._calcMatrices();}get unmodified(){return this._unmodified}zoomScale(e){return Math.pow(2,e)}scaleZoom(e){return Math.log(e)/Math.LN2}project(e){const t=z(e.lat,-rp,rp),i=this.projection.project(e.lng,t);return new y(i.x*this.worldSize,i.y*this.worldSize)}unproject(e){return this.projection.unproject(e.x/this.worldSize,e.y/this.worldSize)}get point(){return this.project(this.center)}get pointMerc(){return this.point._div(this.worldSize)}get pixelsPerMeterRatio(){return this.pixelsPerMeter/Qd(1,this.center.lat)/this.worldSize}setLocationAtPoint(e,t){let i,r;const n=this.centerPoint;if(\"globe\"===this.projection.name){const e=this.worldSize;i=(t.x-n.x)/e,r=(t.y-n.y)/e;}else {const e=this.pointCoordinate(t),o=this.pointCoordinate(n);i=e.x-o.x,r=e.y-o.y;}const o=this.locationCoordinate(e);this.setLocation(new lp(o.x-i,o.y-r));}setLocation(e){this.center=this.coordinateLocation(e),this.projection.wrap&&(this.center=this.center.wrap());}locationPoint(e){return this.projection.locationPoint(this,e)}locationPoint3D(e){return this.projection.locationPoint(this,e,!0)}pointLocation(e){return this.coordinateLocation(this.pointCoordinate(e))}pointLocation3D(e){return this.coordinateLocation(this.pointCoordinate3D(e))}locationCoordinate(e,t){const i=t?Qd(t,e.lat):void 0,r=this.projection.project(e.lng,e.lat);return new lp(r.x,r.y,i)}coordinateLocation(e){return this.projection.unproject(e.x,e.y)}pointRayIntersection(e,t){const i=null!=t?t:this._centerAltitude,r=[e.x,e.y,0,1],n=[e.x,e.y,1,1];yu.transformMat4(r,r,this.pixelMatrixInverse),yu.transformMat4(n,n,this.pixelMatrixInverse);const o=n[3];yu.scale(r,r,1/r[3]),yu.scale(n,n,1/o);const s=r[2],a=n[2];return {p0:r,p1:n,t:s===a?0:(i-s)/(a-s)}}screenPointToMercatorRay(e){const t=[e.x,e.y,0,1],i=[e.x,e.y,1,1];return yu.transformMat4(t,t,this.pixelMatrixInverse),yu.transformMat4(i,i,this.pixelMatrixInverse),yu.scale(t,t,1/t[3]),yu.scale(i,i,1/i[3]),t[2]=Qd(t[2],this._center.lat)*this.worldSize,i[2]=Qd(i[2],this._center.lat)*this.worldSize,yu.scale(t,t,1/this.worldSize),yu.scale(i,i,1/this.worldSize),new Wu([t[0],t[1],t[2]],Du.normalize([],Du.sub([],i,t)))}rayIntersectionCoordinate(e){const{p0:t,p1:i,t:r}=e,n=Qd(t[2],this._center.lat),o=Qd(i[2],this._center.lat);return new lp(Kr(t[0],i[0],r)/this.worldSize,Kr(t[1],i[1],r)/this.worldSize,Kr(n,o,r))}pointCoordinate(e,t=this._centerAltitude){return this.projection.pointCoordinate(this,e.x,e.y,t)}pointCoordinate3D(e){if(!this.elevation)return this.pointCoordinate(e);let t=this.projection.pointCoordinate3D(this,e.x,e.y);if(t)return new lp(t[0],t[1],t[2]);let i=0,r=this.horizonLineFromTop();if(e.y>r)return this.pointCoordinate(e);const n=.02*r,o=e.clone();for(let e=0;e<10&&r-i>n;e++){o.y=Kr(i,r,.66);const e=this.projection.pointCoordinate3D(this,o.x,o.y);e?(r=o.y,t=e):i=o.y;}return t?new lp(t[0],t[1],t[2]):this.pointCoordinate(e)}isPointAboveHorizon(e){return this.projection.isPointAboveHorizon(this,e)}isPointOnSurface(e){if(e.y<0||e.y>this.height||e.x<0||e.x>this.width)return !1;if(this.elevation||this.zoom>=id)return !this.isPointAboveHorizon(e);const t=this.pointCoordinate(e);return t.y>=0&&t.y<=1}_coordinatePoint(e,t){const i=t&&this.elevation?this.elevation.getAtPointOrZero(e,this._centerAltitude):this._centerAltitude,r=[e.x*this.worldSize,e.y*this.worldSize,i+e.toAltitude(),1];return yu.transformMat4(r,r,this.pixelMatrix),r[3]>0?new y(r[0]/r[3],r[1]/r[3]):new y(Number.MAX_VALUE,Number.MAX_VALUE)}_getBoundsNonRectangular(){const{top:e,left:t}=this._edgeInsets,i=this.height-this._edgeInsets.bottom,r=this.width-this._edgeInsets.right,n=this.pointLocation3D(new y(t,e)),o=this.pointLocation3D(new y(r,e)),s=this.pointLocation3D(new y(r,i)),a=this.pointLocation3D(new y(t,i));let l=Math.min(n.lng,o.lng,s.lng,a.lng),c=Math.max(n.lng,o.lng,s.lng,a.lng),h=Math.min(n.lat,o.lat,s.lat,a.lat),u=Math.max(n.lat,o.lat,s.lat,a.lat);const d=Math.pow(2,-this.zoom)/16*270,p=\"globe\"===this.projection.name?1:4,f=(e,t,i,r,n)=>{const o=(e+i)/2,s=(t+r)/2,a=new y(o,s),{lng:m,lat:_}=this.pointLocation3D(a),g=Math.max(0,l-m,h-_,m-c,_-u);l=Math.min(l,m),c=Math.max(c,m),h=Math.min(h,_),u=Math.max(u,_),(nd)&&(f(e,t,o,s,n+1),f(o,s,i,r,n+1));};if(f(t,e,r,e,1),f(r,e,r,i,1),f(r,i,t,i,1),f(t,i,t,e,1),\"globe\"===this.projection.name){const[e,t]=function(e){const t=Au.identity(new Float64Array(16));Au.multiply(t,e.pixelMatrix,e.globeMatrix);const i=[0,ad,0],r=[0,ld,0];return Du.transformMat4(i,i,t),Du.transformMat4(r,r,t),[i[0]>0&&i[0]<=e.width&&i[1]>0&&i[1]<=e.height&&!Nd(e,new Wd(e.center.lat,90)),r[0]>0&&r[0]<=e.width&&r[1]>0&&r[1]<=e.height&&!Nd(e,new Wd(e.center.lat,-90))]}(this);e?(u=90,c=180,l=-180):t&&(h=-90,c=180,l=-180);}return new sc(new Wd(l,h),new Wd(c,u))}_getBoundsRectangular(e,t){const{top:i,left:r}=this._edgeInsets,n=this.height-this._edgeInsets.bottom,o=this.width-this._edgeInsets.right,s=new y(r,i),a=new y(o,i),l=new y(o,n),c=new y(r,n);let h=this.pointCoordinate(s,e),u=this.pointCoordinate(a,e);const d=this.pointCoordinate(l,t),p=this.pointCoordinate(c,t),f=(e,t)=>(t.y-e.y)/(t.x-e.x);return h.y>1&&u.y>=0?h=new lp((1-p.y)/f(p,h)+p.x,1):h.y<0&&u.y<=1&&(h=new lp(-p.y/f(p,h)+p.x,0)),u.y>1&&h.y>=0?u=new lp((1-d.y)/f(d,u)+d.x,1):u.y<0&&h.y<=1&&(u=new lp(-d.y/f(d,u)+d.x,0)),(new sc).extend(this.coordinateLocation(h)).extend(this.coordinateLocation(u)).extend(this.coordinateLocation(p)).extend(this.coordinateLocation(d))}_getBoundsRectangularTerrain(){const e=this.elevation;if(!e.visibleDemTiles.length||e.isUsingMockSource())return this._getBoundsRectangular(0,0);const t=e.visibleDemTiles.reduce(((e,t)=>{if(t.dem){const i=t.dem.tree;e.min=Math.min(e.min,i.minimums[0]),e.max=Math.max(e.max,i.maximums[0]);}return e}),{min:Number.MAX_VALUE,max:0});return this._getBoundsRectangular(t.min*e.exaggeration(),t.max*e.exaggeration())}getBounds(){return \"mercator\"===this.projection.name||\"equirectangular\"===this.projection.name?this._terrainEnabled()?this._getBoundsRectangularTerrain():this._getBoundsRectangular(0,0):this._getBoundsNonRectangular()}horizonLineFromTop(e=!0){const t=this.height/2/Math.tan(this._fov/2)/Math.tan(Math.max(this._pitch,.1))-this.centerOffset.y,i=this.height/2-t*(1-this._horizonShift);return e?Math.max(0,i):i}getMaxBounds(){return this.maxBounds}setMaxBounds(e){this.maxBounds=e,this.minLat=-rp,this.maxLat=rp,this.minLng=-180,this.maxLng=180,e&&(this.minLat=e.getSouth(),this.maxLat=e.getNorth(),this.minLng=e.getWest(),this.maxLng=e.getEast(),this.maxLngh&&(s=h-l),h-ct&&(o=t-a),t-e{for(let n=0;n<16;n++)e[n]=bv(t[n],i[n],r);})(s,s,a,wv(this.pitch>=15?1:this.pitch/15));}else s=a;const l=Au.mul([],a,o);let c=Au.mul([],s,o);if(this.projection.isReprojectedInTileSpace){const e=this.locationCoordinate(this.center),t=Au.identity([]);Au.translate(t,t,[e.x*this.worldSize,e.y*this.worldSize,0]),Au.multiply(t,t,Kx(this)),Au.translate(t,t,[-e.x*this.worldSize,-e.y*this.worldSize,0]),Au.multiply(c,c,t),Au.multiply(l,l,t),this.inverseAdjustmentMatrix=function(e){const t=Kx(e,!0);return bu.invert([],[t[0],t[1],t[4],t[5]])}(this);}else this.inverseAdjustmentMatrix=[1,0,0,1];if(this.mercatorMatrix=Au.scale([],c,[this.worldSize,this.worldSize,this.worldSize/n,1]),this.projMatrix=c,this.invProjMatrix=Au.invert(new Float64Array(16),this.projMatrix),t){const t=this._camera.getCameraToClipPerspective(this._fov,this.width/this.height,this._nearZ,1/0);t[8]=2*-e.x/this.width,t[9]=2*e.y/this.height,this.expandedFarZProjMatrix=Au.mul([],t,o);}else this.expandedFarZProjMatrix=this.projMatrix;const h=Au.invert([],s);this.frustumCorners=Hu.fromInvProjectionMatrix(h,this.horizonLineFromTop(),this.height),this.cameraFrustum=Qu.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,0,!t);const u=new Float32Array(16);Au.identity(u),Au.scale(u,u,[1,-1,1]),Au.rotateX(u,u,this._pitch),Au.rotateZ(u,u,this.angle);const d=Au.perspective(new Float32Array(16),this._fov,this.width/this.height,this._nearZ,this._farZ);this.starsProjMatrix=Au.clone(d);const p=(Math.PI/2-this._pitch)*(this.height/this._fov)*this._horizonShift;d[8]=2*-e.x/this.width,d[9]=2*(e.y+p)/this.height,this.skyboxMatrix=Au.multiply(u,d,u);const f=this.point,m=f.x,_=f.y,g=this.width%2/2,y=this.height%2/2,x=Math.cos(this.angle),v=Math.sin(this.angle),b=m-Math.round(m)+x*g+v*y,w=_-Math.round(_)+x*y+v*g,T=new Float64Array(c);if(Au.translate(T,T,[b>.5?b-1:b,w>.5?w-1:w,0]),this.alignedProjMatrix=T,c=Au.create(),Au.scale(c,c,[this.width/2,-this.height/2,1]),Au.translate(c,c,[1,-1,0]),this.labelPlaneMatrix=c,c=Au.create(),Au.scale(c,c,[1,-1,1]),Au.translate(c,c,[-1,-1,0]),Au.scale(c,c,[2/this.width,2/this.height,1]),this.glCoordMatrix=c,this.pixelMatrix=Au.multiply(new Float64Array(16),this.labelPlaneMatrix,l),this._calcFogMatrices(),this._distanceTileDataCache={},c=Au.invert(new Float64Array(16),this.pixelMatrix),!c)throw new Error(\"failed to invert matrix\");if(this.pixelMatrixInverse=c,\"globe\"===this.projection.name||this.mercatorFromTransition){this.globeMatrix=function(e){const{x:t,y:i}=e.point,{lng:r,lat:n}=e._center;return zd(t,i,e.worldSize,r,n)}(this);const e=[this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]];this.globeCenterInViewSpace=Du.transformMat4(e,e,o),this.globeRadius=this.worldSize/2/Math.PI-1;}else this.globeMatrix=c;this._projMatrixCache={},this._alignedProjMatrixCache={},this._pixelsToTileUnitsCache={},this._expandedProjMatrixCache={};}_calcFogMatrices(){this._fogTileMatrixCache={};const e=this.cameraWorldSizeForFog,t=this.cameraPixelsPerMeter,i=this._camera.position,r=1/this.height/this._pixelsPerMercatorPixel,n=[e,e,t];Du.scale(n,n,r),Du.scale(i,i,-1),Du.multiply(i,i,n);const o=Au.create();Au.translate(o,o,i),Au.scale(o,o,n),this.mercatorFogMatrix=o,this.worldToFogMatrix=this._camera.getWorldToCameraPosition(e,t,r);}_computeCameraPosition(e){const t=(e=e||this.pixelsPerMeter)/this.pixelsPerMeter,i=this._camera.forward(),r=this.point,n=this._mercatorZfromZoom(this._seaLevelZoom?this._seaLevelZoom:this._zoom)*t-e/this.worldSize*this._centerAltitude;return [r.x/this.worldSize-i[0]*n,r.y/this.worldSize-i[1]*n,e/this.worldSize*this._centerAltitude-i[2]*n]}_updateCameraState(){this.height&&(this._camera.setPitchBearing(this._pitch,this.angle),this._camera.position=this._computeCameraPosition());}_translateCameraConstrained(e){const t=this._maxCameraBoundsDistance()*Math.cos(this._pitch),i=this._camera.position[2],r=e[2];let n=1;this.projection.wrap&&(this.center=this.center.wrap()),r>0&&(n=Math.min((t-i)/r,1)),this._camera.position=Du.scaleAndAdd([],this._camera.position,e,n),this._updateStateFromCamera();}_updateStateFromCamera(){const e=this._camera.position,t=this._camera.forward(),{pitch:i,bearing:r}=this._camera.getPitchBearing(),n=Qd(this._centerAltitude,this.center.lat)*this._pixelsPerMercatorPixel,o=this._mercatorZfromZoom(this._maxZoom)*Math.cos(w(this._maxPitch)),s=Math.max((e[2]-n)/Math.cos(i),o),a=this._zoomFromMercatorZ(s);Du.scaleAndAdd(e,e,t,s),this._pitch=z(i,w(this.minPitch),w(this.maxPitch)),this.angle=D(r,-Math.PI,Math.PI),this._setZoom(z(a,this._minZoom,this._maxZoom)),this._updateSeaLevelZoom(),this._center=this.coordinateLocation(new lp(e[0],e[1],e[2])),this._unmodified=!1,this._constrain(),this._calcMatrices();}_worldSizeFromZoom(e){return Math.pow(2,e)*this.tileSize}_mercatorZfromZoom(e){return this.cameraToCenterDistance/this._worldSizeFromZoom(e)}_minimumHeightOverTerrain(){const e=Math.min((null!=this._seaLevelZoom?this._seaLevelZoom:this._zoom)+4,this._maxZoom);return this._mercatorZfromZoom(e)}_zoomFromMercatorZ(e){return this.scaleZoom(this.cameraToCenterDistance/(e*this.tileSize))}zoomFromMercatorZAdjusted(e){let t=0,i=id,r=0,n=1/0;for(;i-t>1e-6&&i>t;){const o=t+.5*(i-t),s=this.tileSize*Math.pow(2,o),a=this.getCameraToCenterDistance(this.projection,o,s),l=this.scaleZoom(a/(e*this.tileSize)),c=Math.abs(o-l);cl||i.y>1)return !0}return !1}isHorizonVisible(){return this.pitch+T(this.fovAboveCenter)>88||this.anyCornerOffEdge(new y(0,0),new y(this.width,this.height))}zoomDeltaToMovement(e,t){const i=Du.length(Du.sub([],this._camera.position,e)),r=this._zoomFromMercatorZ(i)+t;return i-this._mercatorZfromZoom(r)}getCameraPoint(){if(\"globe\"===this.projection.name){const e=function([e,t,i],r){const n=[e,t,i,1];yu.transformMat4(n,n,r);const o=n[3]=Math.max(n[3],1e-6);return n[0]/=o,n[1]/=o,n[2]/=o,n}([this.globeMatrix[12],this.globeMatrix[13],this.globeMatrix[14]],this.pixelMatrix);return new y(e[0],e[1])}{const e=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new y(0,e))}}getCameraToCenterDistance(e,t=this.zoom,i=this.worldSize){const r=Qx(e,t,this.width,this.height,1024),n=e.pixelSpaceConversion(this.center.lat,i,r);let o=.5/Math.tan(.5*this._fov)*this.height*n;return this.isOrthographic&&(o=bv(1,o,wv(this.pitch>=15?1:this.pitch/15))),o}getWorldToCameraMatrix(){const e=this._camera.getWorldToCamera(this.worldSize,\"meters\"===this.projection.zAxisUnit?this.pixelsPerMeter:1);return \"globe\"===this.projection.name&&Au.multiply(e,e,this.globeMatrix),e}getFrustum(e){return Qu.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,e,\"meters\"===this.projection.zAxisUnit)}}function Ev(e,t,i){Au.identity(e),Au.rotateZ(e,e,w(t[2])),Au.rotateX(e,e,w(t[0])),Au.rotateY(e,e,w(t[1])),Au.scale(e,e,i),Au.multiply(e,e,[1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1]);}function Mv(e,t,i,r,n,o,s,a){const l=[i[0]-t[0],i[1]-t[1],0],c=[r[0]-t[0],r[1]-t[1],0];if(Du.length(l)<1e-12||Du.length(c)<1e-12)return Iu.identity(e);const h=Du.cross([],l,c);Du.normalize(h,h),Du.subtract(c,r,t),l[2]=(o-n)*a,c[2]=(s-n)*a;const u=l;return Du.cross(u,l,c),Du.normalize(u,u),Iu.rotationTo(e,h,u)}function Av(e,t,i=!1){const r=Dd(t.zoom),n=function(e,t,i){const r=t.worldSize,n=[e[12],e[13],e[14]],o=tp(n[1]/r),s=ep(n[0]/r),a=Au.identity([]),l=Qd(1,o)*r,c=Qd(1,0)*r*op(o,t.zoom),h=1/Id(r);let u=c*h;if(i){const e=Qx(t.projection,t.zoom,t.width,t.height,1024);u=h*t.projection.pixelSpaceConversion(t.center.lat,r,e);}const d=wd(o,s);Du.add(d,d,Du.scale([],Du.normalize([],d),l*u*n[2]));const p=function(e){const t=[e[0],e[1],e[2]];let i=[0,1,0];const r=Du.cross([],i,t);return Du.cross(i,t,r),0===Du.squaredLength(i)&&(i=[0,1,0],Du.cross(r,t,i)),Du.normalize(r,r),Du.normalize(i,i),Du.normalize(t,t),[r[0],r[1],r[2],0,i[0],i[1],i[2],0,t[0],t[1],t[2],0,e[0],e[1],e[2],1]}(d);Au.scale(a,a,[u,u,u*l]),Au.translate(a,a,[-n[0],-n[1],-n[2]]);const f=Au.multiply([],t.globeMatrix,p);return Au.multiply(f,f,a),Au.multiply(f,f,e),f}(e,t,i);if(r>0){const i=function(e,t){const i=t.worldSize,r=Qd(1,0)*i*op(t.center.lat,t.zoom)/Id(i),n=Qd(1,t.center.lat)*i,o=Au.identity([]);return Au.rotateY(o,o,w(t.center.lng)),Au.rotateX(o,o,w(t.center.lat)),Au.translate(o,o,[0,0,rd]),Au.scale(o,o,[r,r,r*n]),Au.translate(o,o,[t.point.x-.5*i,t.point.y-.5*i,0]),Au.multiply(o,o,e),Au.multiply(o,t.globeMatrix,o)}(e,t);return function(e,t,i){const r=(e,t,i)=>{const r=Du.length(e),n=Du.length(t),o=md(e,t,i);return Du.scale(o,o,1/Du.length(o)*Kr(r,n,i))},n=r([e[0],e[1],e[2]],[t[0],t[1],t[2]],i),o=r([e[4],e[5],e[6]],[t[4],t[5],t[6]],i),s=r([e[8],e[9],e[10]],[t[8],t[9],t[10]],i),a=md([e[12],e[13],e[14]],[t[12],t[13],t[14]],i);return [n[0],n[1],n[2],0,o[0],o[1],o[2],0,s[0],s[1],s[2],0,a[0],a[1],a[2],1]}(n,i,r)}return n}const Sv=64,Iv=[1,1,1];class Cv{constructor(e,t,i,r){this.id=e,this.position=null!=t?new Wd(t[0],t[1]):new Wd(0,0),this.orientation=null!=i?i:[0,0,0],this.nodes=r,this.uploaded=!1,this.aabb=new ed([1/0,1/0,1/0],[-1/0,-1/0,-1/0]),this.matrix=[];}_applyTransformations(e,t){if(Au.multiply(e.matrix,t,e.matrix),e.meshes)for(const t of e.meshes){const i=ed.applyTransform(t.aabb,e.matrix);this.aabb.encapsulate(i);}if(e.children)for(const t of e.children)this._applyTransformations(t,e.matrix);}computeBoundsAndApplyParent(){const e=Au.identity([]);for(const t of this.nodes)this._applyTransformations(t,e);}_positionModelOnTerrain(e,t){const i=e.elevation;if(!i)return 0;const r=ed.projectAabbCorners(this.aabb,this.matrix),n=Qd(1,this.position.lat)*e.worldSize,o=function(e,t){const i=[0,0,1],r=[{corners:[0,1,3,2],dotProductWithUp:0},{corners:[1,5,2,6],dotProductWithUp:0},{corners:[0,4,1,5],dotProductWithUp:0},{corners:[2,6,3,7],dotProductWithUp:0},{corners:[4,7,5,6],dotProductWithUp:0},{corners:[0,3,4,7],dotProductWithUp:0}];for(const n of r){const r=e[n.corners[0]],o=e[n.corners[1]],s=e[n.corners[2]],a=[o[0]-r[0],o[1]-r[1],t*(o[2]-r[2])],l=Du.cross(a,a,[s[0]-r[0],s[1]-r[1],t*(s[2]-r[2])]);Du.normalize(l,l),n.dotProductWithUp=Du.dot(l,i);}return r.sort(((e,t)=>e.dotProductWithUp-t.dotProductWithUp)),r[0].corners}(r,n),s=r[o[0]],a=r[o[1]],l=r[o[2]],c=r[o[3]],h=i.getAtPointOrZero(new lp(s[0]/e.worldSize,s[1]/e.worldSize),0),u=i.getAtPointOrZero(new lp(a[0]/e.worldSize,a[1]/e.worldSize),0),d=i.getAtPointOrZero(new lp(l[0]/e.worldSize,l[1]/e.worldSize),0),p=i.getAtPointOrZero(new lp(c[0]/e.worldSize,c[1]/e.worldSize),0),f=(h+p)/2,m=(u+d)/2;return f>m?u=t.gl.NEAREST_MIPMAP_NEAREST}),e.uploaded=!0,e.image=null);}function Pv(e,t,i){e.indexBuffer=t.createIndexBuffer(e.indexArray,!1,!0),e.vertexBuffer=t.createVertexBuffer(e.vertexArray,Fx.members,!1,!0),e.normalArray&&(e.normalBuffer=t.createVertexBuffer(e.normalArray,jx.members,!1,!0)),e.texcoordArray&&(e.texcoordBuffer=t.createVertexBuffer(e.texcoordArray,Vx.members,!1,!0)),e.colorArray&&(e.colorBuffer=t.createVertexBuffer(e.colorArray,(12===e.colorArray.bytesPerElement?Nx:Ux).members,!1,!0)),e.featureArray&&(e.pbrBuffer=t.createVertexBuffer(e.featureArray,qx.members,!0)),e.segments=xl.simpleSegment(0,0,e.vertexArray.length,e.indexArray.length);const r=e.material;r.pbrMetallicRoughness.baseColorTexture&&zv(r.pbrMetallicRoughness.baseColorTexture,t),r.pbrMetallicRoughness.metallicRoughnessTexture&&zv(r.pbrMetallicRoughness.metallicRoughnessTexture,t),r.normalTexture&&zv(r.normalTexture,t),r.occlusionTexture&&zv(r.occlusionTexture,t,i),r.emissionTexture&&zv(r.emissionTexture,t);}function Dv(e,t,i){if(e.meshes)for(const r of e.meshes)Pv(r,t,i);if(e.children)for(const r of e.children)Dv(r,t,i);}function Rv(e){if(e.meshes)for(const t of e.meshes)t.indexArray.destroy(),t.vertexArray.destroy(),t.colorArray&&t.colorArray.destroy(),t.normalArray&&t.normalArray.destroy(),t.texcoordArray&&t.texcoordArray.destroy(),t.featureArray&&t.featureArray.destroy();if(e.children)for(const t of e.children)Rv(t);}function Lv(e){if(e.meshes)for(const i of e.meshes)i.vertexBuffer&&(i.vertexBuffer.destroy(),i.indexBuffer.destroy(),i.normalBuffer&&i.normalBuffer.destroy(),i.texcoordBuffer&&i.texcoordBuffer.destroy(),i.colorBuffer&&i.colorBuffer.destroy(),i.pbrBuffer&&i.pbrBuffer.destroy(),i.segments.destroy(),i.material&&((t=i.material).pbrMetallicRoughness.baseColorTexture&&t.pbrMetallicRoughness.baseColorTexture.gfxTexture&&t.pbrMetallicRoughness.baseColorTexture.gfxTexture.destroy(),t.pbrMetallicRoughness.metallicRoughnessTexture&&t.pbrMetallicRoughness.metallicRoughnessTexture.gfxTexture&&t.pbrMetallicRoughness.metallicRoughnessTexture.gfxTexture.destroy(),t.normalTexture&&t.normalTexture.gfxTexture&&t.normalTexture.gfxTexture.destroy(),t.emissionTexture&&t.emissionTexture.gfxTexture&&t.emissionTexture.gfxTexture.destroy(),t.occlusionTexture&&t.occlusionTexture.gfxTexture&&t.occlusionTexture.gfxTexture.destroy()));var t;if(e.children)for(const t of e.children)Lv(t);}class kv{constructor(e,t){this.feature=e,this.instancedDataOffset=t,this.instancedDataCount=0,this.rotation=[0,0,0],this.scale=[1,1,1],this.translation=[0,0,0];}}class Ov{constructor(){this.instancedDataArray=new rl,this.instancesEvaluatedElevation=[],this.features=[],this.idToFeaturesIndex={};}}class Bv{constructor(e){this.zoom=e.zoom,this.canonical=e.canonical,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.projection=e.projection,this.index=e.index,this.hasZoomDependentProperties=this.layers[0].isZoomDependent(),this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.hasPattern=!1,this.instancesPerModel={},this.validForExaggeration=0,this.maxVerticalOffset=0,this.maxScale=0,this.maxHeight=0,this.lookupDim=this.zoom>this.canonical.z?256:this.zoom>15?75:100,this.instanceCount=0,this.terrainElevationMin=0,this.terrainElevationMax=0,this.validForDEMTile={id:null,timestamp:0};}populate(e,t,i,r){this.tileToMeter=ap(i);const n=this.layers[0]._featureFilter.needGeometry;this.lookup=new Uint8Array(this.lookupDim*this.lookupDim);for(const{feature:o,id:s,index:a,sourceLayerIndex:l}of e){const e=gp(o,n);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),e,i))continue;const c={id:s,sourceLayerIndex:l,index:a,geometry:n?e.geometry:_p(o,i,r),properties:o.properties,type:o.type,patterns:{}},h=this.addFeature(c,c.geometry,e);h&&t.featureIndex.insert(o,c.geometry,a,l,this.index,this.instancesPerModel[h].instancedDataArray.length);}this.lookup=null;}update(e,t,i,r){for(const t in this.instancesPerModel){const i=this.instancesPerModel[t];for(const t in e)i.idToFeaturesIndex.hasOwnProperty(t)&&this.evaluate(i.features[i.idToFeaturesIndex[t]],e[t],i,!0);}this.maxHeight=0;}updateZoomBasedPaintProperties(){if(!this.hasZoomDependentProperties)return !1;let e=!1;for(const t in this.instancesPerModel){const i=this.instancesPerModel[t];for(const t of i.features){const r=this.layers[0],n=t.feature,o=this.canonical,s=r.paint.get(\"model-rotation\").evaluate(n,{},o),a=r.paint.get(\"model-scale\").evaluate(n,{},o),l=r.paint.get(\"model-translation\").evaluate(n,{},o);Du.exactEquals(t.rotation,s)&&Du.exactEquals(t.scale,a)&&Du.exactEquals(t.translation,l)||(this.evaluate(t,t.featureStates,i,!0),e=!0);}}return e}isEmpty(){for(const e in this.instancesPerModel)if(0!==this.instancesPerModel[e].instancedDataArray.length)return !1;return !0}uploadPending(){return !this.uploaded}upload(e){if(!this.uploaded)for(const t in this.instancesPerModel){const i=this.instancesPerModel[t];i.instancedDataArray.length<0||0===i.instancedDataArray.length||(i.instancedDataBuffer?i.instancedDataBuffer.updateData(i.instancedDataArray):i.instancedDataBuffer=e.createVertexBuffer(i.instancedDataArray,Gx.members,!0,void 0,this.instanceCount));}this.uploaded=!0;}destroy(){for(const e in this.instancesPerModel){const t=this.instancesPerModel[e];0!==t.instancedDataArray.length&&t.instancedDataBuffer&&t.instancedDataBuffer.destroy();}}addFeature(e,t,i){const r=this.layers[0],n=r.layout.get(\"model-id\").evaluate(i,{},this.canonical);if(!n)return H(`modelId is not evaluated for layer ${r.id} and it is not going to get rendered.`),n;this.instancesPerModel[n]||(this.instancesPerModel[n]=new Ov);const o=this.instancesPerModel[n],s=o.instancedDataArray,a=new kv(i,s.length);for(const e of t)for(const t of e){if(t.x<0||t.x>=cr||t.y<0||t.y>=cr)continue;const e=(this.lookupDim-1)/cr,i=this.lookupDim*(t.y*e|0)+t.x*e|0;if(this.lookup){if(0!==this.lookup[i])continue;this.lookup[i]=1;}this.instanceCount++;const r=s.length;s.resize(r+1),o.instancesEvaluatedElevation.push(0),s.float32[16*r]=t.x,s.float32[16*r+1]=t.y;}return a.instancedDataCount=o.instancedDataArray.length-a.instancedDataOffset,a.instancedDataCount>0&&(e.id&&(o.idToFeaturesIndex[e.id]=o.features.length),o.features.push(a),this.evaluate(a,{},o,!1)),n}evaluate(e,t,i,r){const n=this.layers[0],o=e.feature,s=this.canonical,a=e.rotation=n.paint.get(\"model-rotation\").evaluate(o,t,s),l=e.scale=n.paint.get(\"model-scale\").evaluate(o,t,s),c=e.translation=n.paint.get(\"model-translation\").evaluate(o,t,s),h=n.paint.get(\"model-color\").evaluate(o,t,s);h.a=n.paint.get(\"model-color-mix-intensity\").evaluate(o,t,s);const u=[];this.maxVerticalOffset10?this.tileToMeter:ap(s,p)),a[o+4]=c[0],a[o+5]=c[1],a[o+6]=c[2]+l,a[o+7]=u[0],a[o+8]=u[1],a[o+9]=u[2],a[o+10]=u[4],a[o+11]=u[5],a[o+12]=u[6],a[o+13]=u[8],a[o+14]=u[9],a[o+15]=u[10],i.instancesEvaluatedElevation[n]=c[2];}}}Rs(Bv,\"ModelBucket\",{omit:[\"layers\"]}),Rs(Ov,\"PerModelAttributes\"),Rs(kv,\"ModelFeature\");const Fv=new ga({visibility:new fa(Pt.layout_model.visibility),\"model-id\":new ma(Pt.layout_model[\"model-id\"])});var Nv={paint:new ga({\"model-opacity\":new fa(Pt.paint_model[\"model-opacity\"]),\"model-rotation\":new ma(Pt.paint_model[\"model-rotation\"]),\"model-scale\":new ma(Pt.paint_model[\"model-scale\"]),\"model-translation\":new ma(Pt.paint_model[\"model-translation\"]),\"model-color\":new ma(Pt.paint_model[\"model-color\"]),\"model-color-mix-intensity\":new ma(Pt.paint_model[\"model-color-mix-intensity\"]),\"model-type\":new fa(Pt.paint_model[\"model-type\"]),\"model-cast-shadows\":new fa(Pt.paint_model[\"model-cast-shadows\"]),\"model-receive-shadows\":new fa(Pt.paint_model[\"model-receive-shadows\"]),\"model-ambient-occlusion-intensity\":new fa(Pt.paint_model[\"model-ambient-occlusion-intensity\"]),\"model-emissive-strength\":new ma(Pt.paint_model[\"model-emissive-strength\"]),\"model-roughness\":new ma(Pt.paint_model[\"model-roughness\"]),\"model-height-based-emissive-strength-multiplier\":new ma(Pt.paint_model[\"model-height-based-emissive-strength-multiplier\"]),\"model-cutoff-fade-range\":new fa(Pt.paint_model[\"model-cutoff-fade-range\"])}),layout:Fv};const Uv=new Float32Array(262144),Vv=new Uint8Array(262144);function jv(e){let t=0;if(e.meshes)for(const i of e.meshes)t=Math.max(t,i.aabb.max[2]);if(e.children)for(const i of e.children)t=Math.max(t,jv(i));return t}const Gv=[\"\",\"wall\",\"door\",\"roof\",\"window\",\"lamp\",\"logo\"];class qv{constructor(e){this.node=e,this.evaluatedRMEA=[[1,0,0,1],[1,0,0,1],[1,0,0,1],[1,0,0,1],[.4,1,0,1],[1,0,0,1],[1,0,0,1]],this.hiddenByReplacement=!1,this.evaluatedScale=[1,1,1],this.evaluatedColor=[],this.emissionHeightBasedParams=[],this.feature={type:\"Point\",id:e.id,geometry:[],properties:{height:jv(e)}};}}class Zv{constructor(e,t,i,r){this.nodes=e,this.id=t,this.modelTraits|=1,this.uploaded=!1,this.hasPattern=!1,i&&(this.modelTraits|=4),this.zoom=-1,this.terrainExaggeration=1,this.projection={name:\"mercator\"},this.replacementUpdateTime=0,this.elevationReadFromZ=255,this.brightness=r,this.dirty=!0,this.needsUpload=!1;}update(){console.log(\"Update 3D model bucket\");}populate(){console.log(\"populate 3D model bucket\");}uploadPending(){return !this.uploaded||this.needsUpload}upload(e){if(!this.needsUpload)return;const t=this.getNodesInfo();for(const i of t){const t=i.node;this.uploaded?this.updatePbrBuffer(t):Dv(t,e,!0);}for(const e of t)Rv(e.node);this.uploaded=!0,this.needsUpload=!1;}updatePbrBuffer(e){let t=!1;if(!e.meshes)return t;for(const i of e.meshes)i.pbrBuffer&&(i.pbrBuffer.updateData(i.featureArray),t=!0);return t}needsReEvaluation(e,t,i){const r=e.transform.projectionOptions,n=e.style.getBrightness(),o=this.brightness!==n;return !!(!this.uploaded||this.dirty||r.name!==this.projection.name||$v(i.paint.get(\"model-color\").value,o)||$v(i.paint.get(\"model-color-mix-intensity\").value,o)||$v(i.paint.get(\"model-roughness\").value,o)||$v(i.paint.get(\"model-emissive-strength\").value,o)||$v(i.paint.get(\"model-height-based-emissive-strength-multiplier\").value,o))&&(this.projection=r,this.brightness=n,!0)}evaluateScale(e,t){if(e.transform.zoom===this.zoom)return;this.zoom=e.transform.zoom;const i=this.getNodesInfo(),r=this.id.canonical;for(const e of i){const i=e.feature;e.evaluatedScale=t.paint.get(\"model-scale\").evaluate(i,{},r);}}evaluate(e){const t=this.getNodesInfo();for(const i of t){if(!i.node.meshes)continue;const t=i.feature,r=i.node.meshes&&i.node.meshes[0].featureData,n=i.evaluatedColor[2],o=i.evaluatedRMEA[2],s=this.id.canonical;if(i.hasTranslucentParts=!1,r){for(let r=0;r=e)continue;const u=Uv[c],d=Math.abs(u);d>a&&(s=u,a=d,l=n,h=t);}if(a>.1){const o=1-(e+.5*Math.abs(l*h))/c;let a=t._dem.get(r,i)+s*o;const u=t._dem.get(r+l,i+h),d=t._dem.get(r-l,i-h,!0);(a-u)*(a-d)>0&&(a=(u+d)/2),Uv[n]=t._dem.set(r,i,a),Vv[n]=e;}}}}}s&&(t._demTile.needsDEMTextureUpload=!0,t._dem._timestamp=dt.now());}getNodesInfo(){if(!this.nodesInfo){this.nodesInfo=[];for(const e of this.nodes)this.nodesInfo.push(new qv(e));this.freeNodes();}return this.nodesInfo}freeNodes(){if(this.nodes){for(const e of this.nodes)Lv(e);this.nodes.splice(0,this.nodes.length);}}destroy(){this.freeNodes();const e=this.getNodesInfo();for(const t of e)Rv(t.node),Lv(t.node);}isEmpty(){return !this.nodes.length}updateReplacement(e,t){if(t.updateTime===this.replacementUpdateTime)return;this.replacementUpdateTime=t.updateTime;const i=t.getReplacementRegionsForTile(e.toUnwrapped()),r=this.getNodesInfo();for(let e=0;ee.footprint===t.footprint));}}getHeightAtTileCoord(e,t){const i=this.getNodesInfo(),r=[];for(let n=0;ns.aabb.max[0]||t>s.aabb.max[1])continue;const a=(e-s.aabb.min[0])/(s.aabb.max[0]-s.aabb.min[0])*Sv|0,l=Math.min(63,(t-s.aabb.min[1])/(s.aabb.max[1]-s.aabb.min[1])*Sv|0)*Sv+Math.min(63,a);if(!(s.heightmap[l]<0&&o.node.footprint)){if(o.hiddenByReplacement)return;return {height:s.heightmap[l],maxHeight:o.feature.properties.height,hidden:!1,verticalScale:o.evaluatedScale[2]}}if(o.node.footprint.grid.query(new y(e,t),new y(e,t),r),r.length>0)return {height:void 0,maxHeight:o.feature.properties.height,hidden:o.hiddenByReplacement,verticalScale:o.evaluatedScale[2]}}}}function $v(e,t){return !e.isLightConstant&&t}function Wv(e,t,i,r,n,o,s,a){let l=(61440&t|(61440&t)>>4)>>8,c=(3840&t|(3840&t)>>4)>>4,h=240&t|(240&t)>>4;i[3]>0&&(l=Kr(l,255*i[0],i[3]),c=Kr(c,255*i[1],i[3]),h=Kr(h,255*i[2],i[3]));const u=l<<8|c,d=h<<8|Math.floor(255*r[3]),p=function(e){const t=z(e,0,2);return Math.min(Math.round(.5*t*255),255)}(r[2])<<8|15*r[0]<<4|15*r[1],f=z(n[0],0,1),m=z(n[1],0,1),_=z(n[2],0,1),g=z(n[3],0,1);let y,x,v,b;if(f!==m&&s!==o&&m!==f){const e=s-o;x=1/(e*(m-f)),v=-(o+e*f)/(e*(m-f));const t=z(n[4],-1,1);b=Math.pow(10,t),y=255*_<<8|255*g;}else y=65535,x=0,v=1,b=1;if(e.emplaceBack(u,d,p,y,x,v,b),a){const e=a.length;a.clear();for(let t=0;t>16&65535,c=e.evaluatedRMEA[a],h=e.evaluatedColor[a],u=e.emissionHeightBasedParams[a];if(o&&2===a&&i.lights&&(r=new nl,r.resize(10*i.lights.length)),Wv(n.featureArray,l,h,c,u,n.aabb.min[2],n.aabb.max[2],r),r&&o){o=!1;const e=i.meshes[i.lightMeshIndex];e.featureArray=r,e.featureArray._trim();}}n.featureArray._trim(),r++;}}Rs(Zv,\"Tiled3dModelBucket\",{omit:[\"layers\"]}),Rs(qv,\"Tiled3dModelFeature\");class Xv{constructor(){this._updateTime=0,this._sourceIds=[],this._activeRegions=[],this._prevRegions=[];}clear(){this._activeRegions.length>0&&++this._updateTime,this._activeRegions=[],this._prevRegions=[];}get updateTime(){return this._updateTime}getReplacementRegionsForTile(e){const t=Qv(new y(0,0),new y(cr,cr),e),i=[];for(const r of this._activeRegions){if(r.hiddenByOverlap)continue;if(!Jv(t,r))continue;const n=eb(r.min,r.max,e);i.push({min:n.min,max:n.max,sourceId:this._sourceIds[r.priority],footprint:r.footprint,footprintTileId:r.tileId});}return i}setSources(e){this._setSources(e.map((e=>({getSourceId:()=>e.cache.id,getFootprints:()=>{const t=[];for(const i of e.cache.getVisibleCoordinates()){const r=e.cache.getTile(i).buckets[e.layer];if(r)for(const e of r.getNodesInfo()){const r=e.node;r.footprint&&t.push({footprint:r.footprint,id:i.toUnwrapped()});}}return t}}))));}_addSource(e){const t=e.getFootprints();if(0!==t.length){for(const e of t){if(!e.footprint)continue;const t=Qv(e.footprint.min,e.footprint.max,e.id);this._activeRegions.push({min:t.min,max:t.max,hiddenByOverlap:!1,priority:this._sourceIds.length,tileId:e.id,footprint:e.footprint});}this._sourceIds.push(e.getSourceId());}}_computeReplacement(){this._activeRegions.sort(((e,t)=>e.priority-t.priority||Yv(e.min,t.min)||Yv(e.max,t.max)));let e=this._activeRegions.length!==this._prevRegions.length;if(!e){let t=0,i=0;for(;!e&&t!==this._activeRegions.length;){const r=this._activeRegions[t],n=this._prevRegions[i];e=r.priority!==n.priority||!Kv(r,n),++t,++i;}}if(e){++this._updateTime;const e=e=>{const t=this._activeRegions;if(e>=t.length)return e;const i=t[e].priority;for(;e1){let t=0,i=e(t);for(;t!==i;){let r=t;const n=t;for(;r!==i;){const e=this._activeRegions[r];e.hiddenByOverlap=!1;for(let t=0;t=0;t--)this._addSource(e[t]);this._computeReplacement();}}function Yv(e,t){return e.x-t.x||e.y-t.y}function Kv(e,t){return 0===Yv(e.min,t.min)&&0===Yv(e.max,t.max)}function Jv(e,t){return !(e.min.x>t.max.x||e.max.xt.max.y||e.max.ynew y(e.x*o.x*cr*a-s.x*cr,e.y*o.y*cr*a-s.y*cr)));}return tb(i,n,e.indices,0,e.indices.length,0,0)}const rb=hm.types,nb=[\"fill-extrusion-base\",\"fill-extrusion-height\",\"fill-extrusion-color\",\"fill-extrusion-pattern\",\"fill-extrusion-flood-light-wall-radius\"],ob=[\"fill-extrusion-flood-light-ground-radius\"],sb=Math.pow(2,13),ab=Math.pow(2,15)-1,lb=new y(0,1),cb=2147483648;function hb(e,t,i,r,n,o,s,a){e.emplaceBack((t<<1)+s,(i<<1)+o,(Math.floor(r*sb)<<1)+n,Math.round(a));}function ub(e,t,i,r,n,o){e.emplaceBack(t.x,t.y,(i.x<<1)+r,(i.y<<1)+n,o);}function db(e,t,i){const r=16384;e.emplaceBack(t.x,t.y,t.z,i[0]*r,i[1]*r,i[2]*r);}class pb{constructor(){this.vertexOffset=0,this.vertexCount=0,this.indexOffset=0,this.indexCount=0;}}class fb{constructor(){this.centroidXY=new y(0,0),this.vertexArrayOffset=0,this.vertexCount=0,this.groundVertexArrayOffset=0,this.groundVertexCount=0,this.flags=0,this.footprintSegIdx=-1,this.footprintSegLen=0,this.polygonSegIdx=-1,this.polygonSegLen=0,this.min=new y(Number.MAX_VALUE,Number.MAX_VALUE),this.max=new y(-Number.MAX_VALUE,-Number.MAX_VALUE),this.height=0;}span(){return new y(this.max.x-this.min.x,this.max.y-this.min.y)}}class mb{constructor(){this.acc=new y(0,0),this.accCount=0,this.centroidDataIndex=0;}startRing(e,t){e.min.x===Number.MAX_VALUE&&(e.min.x=e.max.x=t.x,e.min.y=e.max.y=t.y);}appendEdge(e,t,i){this.accCount++,this.acc._add(t);let r=!!this.borders;t.xe.max.x&&(e.max.x=t.x,r=!0),t.ye.max.y&&(e.max.y=t.y,r=!0),((0===t.x||t.x===cr)&&t.x===i.x)!=((0===t.y||t.y===cr)&&t.y===i.y)&&this.processBorderOverlap(t,i),r&&this.checkBorderIntersection(t,i);}checkBorderIntersection(e,t){t.x<0!=e.x<0&&this.addBorderIntersection(0,Kr(t.y,e.y,(0-t.x)/(e.x-t.x))),t.x>cr!=e.x>cr&&this.addBorderIntersection(1,Kr(t.y,e.y,(cr-t.x)/(e.x-t.x))),t.y<0!=e.y<0&&this.addBorderIntersection(2,Kr(t.x,e.x,(0-t.y)/(e.y-t.y))),t.y>cr!=e.y>cr&&this.addBorderIntersection(3,Kr(t.x,e.x,(cr-t.y)/(e.y-t.y)));}addBorderIntersection(e,t){this.borders||(this.borders=[[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE],[Number.MAX_VALUE,-Number.MAX_VALUE]]);const i=this.borders[e];ti[1]&&(i[1]=t);}processBorderOverlap(e,t){if(e.x===t.x){if(e.y===t.y)return;const i=0===e.x?0:1;this.addBorderIntersection(i,t.y),this.addBorderIntersection(i,e.y);}else {const i=0===e.y?2:3;this.addBorderIntersection(i,t.x),this.addBorderIntersection(i,e.x);}}centroid(){return 0===this.accCount?new y(0,0):new y(Math.floor(Math.max(0,this.acc.x)/this.accCount),Math.floor(Math.max(0,this.acc.y)/this.accCount))}intersectsCount(){return this.borders?this.borders.reduce(((e,t)=>e+ +(t[0]!==Number.MAX_VALUE)),0):0}}function _b(e,t){const i=e.add(t)._unit(),r=z(e.x*i.x+e.y*i.y,-1,1);var n,o,s;return n=Math.acos(r),Math.min(4,Math.max(-4,Math.tan(n)))/4*ab*((o=e).x*(s=t).y-o.y*s.x<0?-1:1)}const gb=[e=>e.x<0,e=>e.x>cr,e=>e.y<0,e=>e.y>cr];function yb(e,t,i,r){const n=[4];if(0===r)return n;i._mult(r);const o=e.sub(i),s=t.sub(i),a=[e,t,o,s];for(let e=0;e<4;e++)for(const t of a)if(gb[e](t)){n.push(e);break}return n}class xb{constructor(e){this.vertexArray=new Ra,this.indexArray=new Wa,this.programConfigurations=new ec(e.layers,e.zoom,(e=>ob.includes(e))),this._segments=new xl,this.hiddenByLandmarkVertexArray=new ol,this._segmentToGroundQuads={},this._segmentToGroundQuads[0]=[],this._segmentToRegionTriCounts={},this._segmentToRegionTriCounts[0]=[0,0,0,0,0],this.regionSegments={},this.regionSegments[4]=new xl;}getDefaultSegment(){return this.regionSegments[4]}hasData(){return 0!==this.vertexArray.length}addData(e,t,i,r=!1){const n=e.length;if(n>2){let o=Math.max(0,this._segments.get().length-1);const s=this._segments._prepareSegment(4*n,this.vertexArray.length,2*this._segmentToGroundQuads[o].length);let a;o!==this._segments.get().length-1&&(o++,this._segmentToGroundQuads[o]=[],this._segmentToRegionTriCounts[o]=[0,0,0,0,0]);{const t=e[0],i=e[1];a=_b(t.sub(e[n-1])._perp()._unit(),i.sub(t)._perp()._unit());}for(let l=0;le.region-t.region));for(let i=0;ie+t),0);let o=0;for(let e=0;e<=4;e++){const t=n[e];if(0!==t){let i=this.regionSegments[e];i||(i=this.regionSegments[e]=new xl);const n={vertexOffset:r.vertexOffset,primitiveOffset:r.primitiveOffset+o,vertexLength:r.vertexLength,primitiveLength:t};i.get().push(n);}o+=t;}for(let e=0;e0?this.hiddenByLandmarkVertexBuffer=e.createVertexBuffer(this.hiddenByLandmarkVertexArray,Hf.members,!0):this.hiddenByLandmarkVertexBuffer&&this.hiddenByLandmarkVertexBuffer.updateData(this.hiddenByLandmarkVertexArray),this._needsHiddenByLandmarkUpdate=!1);}destroy(){if(this.vertexBuffer){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.hiddenByLandmarkVertexBuffer&&this.hiddenByLandmarkVertexBuffer.destroy(),this._segments&&this._segments.destroy(),this.programConfigurations.destroy();for(let e=0;e<=4;e++){const t=this.regionSegments[e];t&&t.destroy();}}}}class vb{constructor(e){this.zoom=e.zoom,this.canonical=e.canonical,this.overscaling=e.overscaling,this.layers=e.layers,this.layerIds=this.layers.map((e=>e.fqid)),this.index=e.index,this.hasPattern=!1,this.edgeRadius=0,this.projection=e.projection,this.activeReplacements=[],this.replacementUpdateTime=0,this.centroidData=[],this.footprintIndices=new Wa,this.footprintVertices=new za,this.footprintSegments=[],this.layoutVertexArray=new Da,this.centroidVertexArray=new _l,this.indexArray=new Wa,this.programConfigurations=new ec(e.layers,e.zoom,(e=>nb.includes(e))),this.segments=new xl,this.stateDependentLayerIds=this.layers.filter((e=>e.isStateDependent())).map((e=>e.id)),this.groundEffect=new xb(e),this.maxHeight=0,this.partLookup={},this.triangleSubSegments=[],this.polygonSegments=[];}populate(e,t,i,r){this.features=[],this.hasPattern=Uf(\"fill-extrusion\",this.layers,t),this.featuresOnBorder=[],this.borderFeatureIndices=[[],[],[],[]],this.borderDoneWithNeighborZ=[-1,-1,-1,-1],this.tileToMeter=ap(i),this.edgeRadius=this.layers[0].layout.get(\"fill-extrusion-edge-radius\")/this.tileToMeter;for(const{feature:n,id:o,index:s,sourceLayerIndex:a}of e){const e=this.layers[0]._featureFilter.needGeometry,l=gp(n,e);if(!this.layers[0]._featureFilter.filter(new oa(this.zoom),l,i))continue;const c={id:o,sourceLayerIndex:a,index:s,geometry:e?l.geometry:_p(n,i,r),properties:n.properties,type:n.type,patterns:{}},h=this.layoutVertexArray.length;this.hasPattern?this.features.push(Vf(\"fill-extrusion\",this.layers,c,this.zoom,t)):this.addFeature(c,c.geometry,s,i,{},t.availableImages,r,t.brightness),t.featureIndex.insert(n,c.geometry,s,a,this.index,h);}this.sortBorders(),\"globe\"!==this.projection.name&&this.splitToSubtiles(),this.groundEffect.prepareBorderSegments(),this.polygonSegments.length=0;}addFeatures(e,t,i,r,n,o){for(const e of this.features){const{geometry:s}=e;this.addFeature(e,s,e.index,t,i,r,n,o);}this.sortBorders(),\"globe\"!==this.projection.name&&this.splitToSubtiles();}update(e,t,i,r,n){const o=0!==Object.keys(e).length;if(o&&!this.stateDependentLayers.length)return;const s=o?this.stateDependentLayers:this.layers;this.programConfigurations.updatePaintArrays(e,t,s,i,r,n),this.groundEffect.update(e,t,s,i,r,n);}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return !this.uploaded||this.programConfigurations.needsUpload||this.groundEffect.programConfigurations.needsUpload}upload(e){this.uploaded||(this.layoutVertexBuffer=e.createVertexBuffer(this.layoutVertexArray,Yf),this.indexBuffer=e.createIndexBuffer(this.indexArray),this.layoutVertexExtArray&&(this.layoutVertexExtBuffer=e.createVertexBuffer(this.layoutVertexExtArray,Xf.members,!0)),this.groundEffect.upload(e)),this.groundEffect.uploadPaintProperties(e),this.programConfigurations.upload(e),this.uploaded=!0;}uploadCentroid(e){this.groundEffect.uploadHiddenByLandmark(e),this.needsCentroidUpdate&&(!this.centroidVertexBuffer&&this.centroidVertexArray.length>0?this.centroidVertexBuffer=e.createVertexBuffer(this.centroidVertexArray,Wf.members,!0):this.centroidVertexBuffer&&this.centroidVertexBuffer.updateData(this.centroidVertexArray),this.needsCentroidUpdate=!1);}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.centroidVertexBuffer&&this.centroidVertexBuffer.destroy(),this.layoutVertexExtBuffer&&this.layoutVertexExtBuffer.destroy(),this.groundEffect.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy());}addFeature(e,t,i,r,n,o,s,a){const l=this.layers[0].paint.get(\"fill-extrusion-flood-light-ground-radius\").evaluate(e,{})/this.tileToMeter,c=[new y(0,0),new y(cr,cr)],h=s.projection,u=\"globe\"===h.name,d=\"Polygon\"===rb[e.type],p=new mb;p.centroidDataIndex=this.centroidData.length;const f=new fb,m=this.layers[0].paint.get(\"fill-extrusion-base\").evaluate(e,{},r)<=0,_=this.layers[0].paint.get(\"fill-extrusion-height\").evaluate(e,{},r);f.height=_,f.vertexArrayOffset=this.layoutVertexArray.length,f.groundVertexArrayOffset=this.groundEffect.vertexArray.length,u&&!this.layoutVertexExtArray&&(this.layoutVertexExtArray=new Fa);const g=Ff(t,500);for(let e=g.length-1;e>=0;e--){const t=g[e];(0===t.length||(x=t[0]).every((e=>e.x<=0))||x.every((e=>e.x>=cr))||x.every((e=>e.y<=0))||x.every((e=>e.y>=cr)))&&g.splice(e,1);}var x;let v;if(u)v=Cb(g,c,r);else {v=[];for(const e of g)v.push({polygon:e,bounds:c});}const b=d?this.edgeRadius:0,w=b>0&&this.zoom<17,T=(e,t)=>{if(0===e.length)return !1;const i=e[e.length-1];return t.x===i.x&&t.y===i.y};for(const{polygon:e,bounds:t}of v){let i=0,n=0;for(const t of e)d&&!t[0].equals(t[t.length-1])&&t.push(t[0]),n+=d?t.length-1:t.length;const o=this.segments.prepareSegment((d?5:4)*n,this.layoutVertexArray,this.indexArray);f.footprintSegIdx<0&&(f.footprintSegIdx=this.footprintSegments.length),f.polygonSegIdx<0&&(f.polygonSegIdx=this.polygonSegments.length);const s={triangleArrayOffset:this.indexArray.length,triangleCount:0,triangleSegIdx:this.segments.segments.length-1},a=new pb;if(a.vertexOffset=this.footprintVertices.length,a.indexOffset=3*this.footprintIndices.length,a.ringIndices=[],d){const n=[],s=[];i=o.vertexLength;for(let i=0;i4&&Ab(s[s.length-2],s[0],s[1]),c=b?wb(s[s.length-2],s[0],s[1],b):0;const _=[];let g,y,x;y=s[1].sub(s[0])._perp()._unit();let v=!0;for(let e=1,n=0;e0?1:0,S=l.dist(d);if(n+S>32768&&(n=0),b){x=w.sub(d)._perp()._unit();let e=Tb(l,d,w,bb(y,x),b);isNaN(e)&&(e=0);const t=d.sub(l)._unit();l=l.add(t.mult(c))._round(),d=d.add(t.mult(-e))._round(),c=e,y=x,m&&this.zoom>=17&&(T(_,l)||_.push(l),T(_,d)||_.push(d));}const I=o.vertexLength,C=s.length>4&&Ab(l,d,w);let z=Sb(n,a,v);if(hb(this.layoutVertexArray,l.x,l.y,M,A,0,0,z),hb(this.layoutVertexArray,l.x,l.y,M,A,0,1,z),n+=S,z=Sb(n,C,!v),a=C,hb(this.layoutVertexArray,d.x,d.y,M,A,0,0,z),hb(this.layoutVertexArray,d.x,d.y,M,A,0,1,z),o.vertexLength+=4,this.indexArray.emplaceBack(I+0,I+1,I+2),this.indexArray.emplaceBack(I+1,I+3,I+2),o.primitiveLength+=2,b){const r=i+(1===e?s.length-2:e-2),n=1===e?i:r+1;if(this.indexArray.emplaceBack(I+1,r,I+3),this.indexArray.emplaceBack(r,n,I+3),o.primitiveLength+=2,void 0===g&&(g=I),!Eb(w,s[e],t)){const t=e===s.length-1?g:o.vertexLength;this.indexArray.emplaceBack(I+2,I+3,t),this.indexArray.emplaceBack(I+3,t+1,t),this.indexArray.emplaceBack(I+3,n,t+1),o.primitiveLength+=3;}v=!v;}if(u){const e=this.layoutVertexExtArray,t=h.projectTilePoint(l.x,l.y,r),i=h.projectTilePoint(d.x,d.y,r),n=h.upVector(r,l.x,l.y),o=h.upVector(r,d.x,d.y);db(e,t,n),db(e,t,n),db(e,i,o),db(e,i,o);}}d&&(i+=s.length-1),m&&b&&this.zoom>=17&&(0!==_.length&&T(_,_[0])&&_.pop(),this.groundEffect.addData(_,t,l,b>0));}this.footprintSegments.push(a),s.triangleCount=this.indexArray.length-s.triangleArrayOffset,this.polygonSegments.push(s),++f.footprintSegLen,++f.polygonSegLen;}if(f.vertexCount=this.layoutVertexArray.length-f.vertexArrayOffset,f.groundVertexCount=this.groundEffect.vertexArray.length-f.groundVertexArrayOffset,0!==f.vertexCount){if(f.centroidXY=p.borders?lb:this.encodeCentroid(p,f),this.centroidData.push(f),p.borders){this.featuresOnBorder.push(p);const e=this.featuresOnBorder.length-1;for(let t=0;tthis.featuresOnBorder[t].borders[e][0]-this.featuresOnBorder[i].borders[e][0]));}splitToSubtiles(){const e=[];for(let t=0;tcr),n=2*r+(+(i.min.x+i.max.x>cr)^r);for(let r=0;re.triangleSegmentIdx===t.triangleSegmentIdx?e.subtile-t.subtile:e.triangleSegmentIdx-t.triangleSegmentIdx));let i=0,r=0,n=0;for(const t of e){if(t.triangleSegmentIdx!==i)break;n++;}const o=e.length;for(;r!==e.length;){i=e[r].triangleSegmentIdx;let s=0,a=r,l=r;for(let t=a;t0&&this.triangleSubSegments.push({segment:h,min:o,max:c}),a=l;for(let t=a;t[e[0]*(1-i[0])+t[0]*i[0],e[1]*(1-i[1])+t[1]*i[1]],d=[],p=[];for(const e of this.triangleSubSegments){d[0]=e.min.x/cr,d[1]=e.min.y/cr,p[0]=e.max.x/cr,p[1]=e.max.y/cr;const t=u(l,c,d),o=u(l,c,p);if(0===new ed([t[0],t[1],r],[o[0],o[1],n]).intersectsPrecise(i)){a&&(h.segments.push(a),a=void 0);continue}const s=e.segment;a&&a.vertexOffset!==s.vertexOffset&&(h.segments.push(a),a=void 0),a?(a.vertexLength+=s.vertexLength,a.primitiveLength+=s.primitiveLength):a={vertexOffset:s.vertexOffset,primitiveLength:s.primitiveLength,vertexLength:s.vertexLength,primitiveOffset:s.primitiveOffset,sortKey:void 0,vaos:{}};}return a&&h.segments.push(a),h}encodeCentroid(e,t){const i=e.centroid(),r=t.span(),n=Math.min(7,Math.round(r.x*this.tileToMeter/10)),o=Math.min(7,Math.round(r.y*this.tileToMeter/10));return new y(z(i.x,1,cr-1)<<3|n,z(i.y,1,cr-1)<<3|o)}showCentroid(e){const t=this.centroidData[e.centroidDataIndex];t.flags&=cb,t.centroidXY.x=0,t.centroidXY.y=0,this.writeCentroidToBuffer(t);}writeCentroidToBuffer(e){this.groundEffect.updateHiddenByLandmark(e);const t=e.vertexArrayOffset,i=e.vertexCount+e.vertexArrayOffset,r=e.flags&cb?lb:e.centroidXY,n=this.centroidVertexArray.geta_centroid_pos0(t);if(this.centroidVertexArray.geta_centroid_pos1(t)!==r.y||n!==r.x){for(let e=t;en.max.x||n.min.x>t.max.x||t.min.y>n.max.y||n.min.y>t.max.y))for(let o=0;ot!=l>t&&e<(this.footprintVertices.int16[2*(a+o.vertexOffset)+0]-i)*(t-s)/(l-s)+i&&(r=!r);}s=i;}}return r}getHeightAtTileCoord(e,t){let i=Number.NEGATIVE_INFINITY,r=!0;const n=4*(e+cr)*cr+(t+cr);if(this.partLookup.hasOwnProperty(n)){const e=this.partLookup[n];return e?{height:e.height,hidden:!!(e.flags&cb)}:void 0}for(const o of this.centroidData)e>o.max.x||o.min.x>e||t>o.max.y||o.min.y>t||this.footprintContainsPoint(e,t,o)&&o&&o.height>i&&(i=o.height,this.partLookup[n]=o,r=!!(o.flags&cb));if(i!==Number.NEGATIVE_INFINITY)return {height:i,hidden:r};this.partLookup[n]=void 0;}}function bb(e,t){const i=e.add(t)._unit();return e.x*i.x+e.y*i.y}function wb(e,t,i,r){const n=t.sub(e)._perp()._unit(),o=i.sub(t)._perp()._unit();return Tb(e,t,i,bb(n,o),r)}function Tb(e,t,i,r,n){const o=Math.sqrt(1-r*r);return Math.min(e.dist(t)/3,t.dist(i)/3,n*o/r)}function Eb(e,t,i){return e.xi[1].x&&t.x>i[1].x||e.yi[1].y&&t.y>i[1].y}function Mb(e,t){return e.xt[1].x||e.yt[1].y}function Ab(e,t,i){if(e.x<0||e.x>=cr||t.x<0||t.x>=cr||i.x<0||i.x>=cr)return !1;const r=i.sub(t),n=r.perp(),o=e.sub(t);return (r.x*o.x+r.y*o.y)/Math.sqrt((r.x*r.x+r.y*r.y)*(o.x*o.x+o.y*o.y))>-.866&&n.x*o.x+n.y*o.y<0}function Sb(e,t,i){const r=t?2|e:-3&e;return i?1|r:-2&r}function Ib(){const e=Math.PI/32,t=Math.tan(e),i=qd;return i*Math.sqrt(1+2*t*t)-i}function Cb(e,t,i){const r=1<{for(const i of e)s.push({polygon:i,bounds:t});},l=Math.ceil(Math.log2(i)),c=Math.ceil(Math.log2(r)),h=l-c,u=[];for(let e=0;e0?0:1);for(let e=0;et+1?p.push({polygons:d,bounds:e,depth:t+1}):a(d,e);}if(f.length){const e=[new y(0===i?h:r.x,1===i?h:r.y),s];u.length>t+1?p.push({polygons:f,bounds:e,depth:t+1}):a(f,e);}}return s}(e,t,Math.ceil((o-n)/11.25),Math.ceil((s-a)/11.25),1,((e,t,n)=>{if(0===e)return .5*(t+n);{const e=tp((i.y+t/cr)/r);return (Jd(.5*(tp((i.y+n/cr)/r)+e))*r-i.y)*cr}}))}function zb(e,t,i,r,n,o){const s=Math.pow(2,r.z-n.z);for(let a=0;a{const a=e.transform,l=a.calculatePixelsToTileUnitsMatrix(t);return {u_matrix:jb(e,t,i,r),u_pixels_to_tile_units:l,u_device_pixel_ratio:o,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]],u_dash_image:0,u_gradient_image:1,u_image_height:n,u_texsize:qb(i)&&t.lineAtlasTexture?t.lineAtlasTexture.size:[0,0],u_tile_units_to_pixels:Vb(t,e.transform),u_alpha_discard_threshold:0,u_trim_offset:s,u_emissive_strength:i.paint.get(\"line-emissive-strength\")}},Ub=(e,t,i,r,n)=>{const o=e.transform;return {u_matrix:jb(e,t,i,r),u_texsize:t.imageAtlasTexture?t.imageAtlasTexture.size:[0,0],u_pixels_to_tile_units:o.calculatePixelsToTileUnitsMatrix(t),u_device_pixel_ratio:n,u_image:0,u_tile_units_to_pixels:Vb(t,o),u_units_to_pixels:[1/o.pixelsToGLUnits[0],1/o.pixelsToGLUnits[1]],u_alpha_discard_threshold:0}};function Vb(e,t){return 1/rv(e,1,t.tileZoom)}function jb(e,t,i,r){return e.translatePosMatrix(r||t.tileID.projMatrix,t,i.paint.get(\"line-translate\"),i.paint.get(\"line-translate-anchor\"))}const Gb=e=>{const t=[];qb(e)&&t.push(\"RENDER_LINE_DASH\"),e.paint.get(\"line-gradient\")&&t.push(\"RENDER_LINE_GRADIENT\");const i=e.paint.get(\"line-trim-offset\");return 0===i[0]&&0===i[1]||t.push(\"RENDER_LINE_TRIM_OFFSET\"),0!==e.paint.get(\"line-border-width\").constantOr(1)&&t.push(\"RENDER_LINE_BORDER\"),t};function qb(e){const t=e.paint.get(\"line-dasharray\").value;return t.value||\"constant\"!==t.kind}const Zb=new class extends ma{possiblyEvaluate(e,t){return t=new oa(Math.floor(t.zoom),{now:t.now,fadeDuration:t.fadeDuration,transition:t.transition}),super.possiblyEvaluate(e,t)}evaluate(e,t,i,r){return t=k({},t,{zoom:Math.floor(t.zoom)}),super.evaluate(e,t,i,r)}}(Fb.paint.properties[\"line-width\"].specification);function $b(e,t){return t>0?t+2*e:e}Zb.useIntegerZoom=!0;const Wb=new ga({visibility:new fa(Pt.layout_background.visibility)});var Hb={paint:new ga({\"background-color\":new fa(Pt.paint_background[\"background-color\"]),\"background-pattern\":new fa(Pt.paint_background[\"background-pattern\"]),\"background-opacity\":new fa(Pt.paint_background[\"background-opacity\"]),\"background-emissive-strength\":new fa(Pt.paint_background[\"background-emissive-strength\"])}),layout:Wb};const Xb=new ga({visibility:new fa(Pt.layout_raster.visibility)});var Yb={paint:new ga({\"raster-opacity\":new fa(Pt.paint_raster[\"raster-opacity\"]),\"raster-color\":new _a(Pt.paint_raster[\"raster-color\"]),\"raster-color-mix\":new fa(Pt.paint_raster[\"raster-color-mix\"]),\"raster-color-range\":new fa(Pt.paint_raster[\"raster-color-range\"]),\"raster-hue-rotate\":new fa(Pt.paint_raster[\"raster-hue-rotate\"]),\"raster-brightness-min\":new fa(Pt.paint_raster[\"raster-brightness-min\"]),\"raster-brightness-max\":new fa(Pt.paint_raster[\"raster-brightness-max\"]),\"raster-saturation\":new fa(Pt.paint_raster[\"raster-saturation\"]),\"raster-contrast\":new fa(Pt.paint_raster[\"raster-contrast\"]),\"raster-resampling\":new fa(Pt.paint_raster[\"raster-resampling\"]),\"raster-fade-duration\":new fa(Pt.paint_raster[\"raster-fade-duration\"]),\"raster-emissive-strength\":new fa(Pt.paint_raster[\"raster-emissive-strength\"]),\"raster-array-band\":new fa(Pt.paint_raster[\"raster-array-band\"]),\"raster-elevation\":new fa(Pt.paint_raster[\"raster-elevation\"])}),layout:Xb};function Kb(e,t,i,r,n,o,s,a){const l=[e,i,n,t,r,o,1,1,1],c=[s,a,1],h=Eu.adjoint([],l),[u,d,p]=Du.transformMat3(c,c,Eu.transpose(h,h));return Eu.multiply(l,[u,0,0,0,d,0,0,0,p],l)}class Jb extends zt{constructor(e,t,i,r){super(),this.id=e,this.dispatcher=i,this.coordinates=t.coordinates,this.type=\"image\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.onNorthPole=!1,this.onSouthPole=!1,this.setEventedParent(r),this.options=t,this._dirty=!1;}load(e,i){if(this._loaded=i||!1,this.fire(new It(\"dataloading\",{dataType:\"source\"})),this.url=this.options.url,!this.url)return e&&(this.coordinates=e),this._loaded=!0,void this._finishLoading();this._imageRequest=Ie(this.map._requestManager.transformRequest(this.url,ye.Image),((i,r)=>{if(this._imageRequest=null,this._loaded=!0,i)this.fire(new Ct(i));else if(r){const{HTMLImageElement:i}=t;this.image=r instanceof i?dt.getImageData(r):r,this._dirty=!0,this.width=this.image.width,this.height=this.image.height,e&&(this.coordinates=e),this._finishLoading();}}));}loaded(){return this._loaded}updateImage(e){return e.url?(this._imageRequest&&e.url!==this.options.url&&(this._imageRequest.cancel(),this._imageRequest=null),this.options.url=e.url,this.load(e.coordinates,this._loaded),this):this}setTexture(e){if(!(e.handle instanceof WebGLTexture))throw new Error(\"The provided handle is not a WebGLTexture instance\");return this.texture=new Ay(this.map.painter.context,e.handle),this.width=e.dimensions[0],this.height=e.dimensions[1],this._dirty=!1,this._loaded=!0,this._finishLoading(),this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})));}onAdd(e){this.map=e,this.load();}onRemove(){this._imageRequest&&(this._imageRequest.cancel(),this._imageRequest=null),!this.texture||this.texture instanceof Ay||this.texture.destroy();}setCoordinates(e){if(this.coordinates=e,this._boundsArray=void 0,!e.length)return this;this.onNorthPole=!1,this.onSouthPole=!1;let t=e[0][1],i=e[0][1];for(const r of e)r[1]>i&&(i=r[1]),r[1]rp?this.onNorthPole=!0:r<-rp&&(this.onSouthPole=!0),!this.onNorthPole&&!this.onSouthPole){const t=e.map(lp.fromLngLat);this.tileID=function(e){let t=1/0,i=1/0,r=-1/0,n=-1/0;for(const o of e)t=Math.min(t,o.x),i=Math.min(i,o.y),r=Math.max(r,o.x),n=Math.max(n,o.y);const o=Math.max(r-t,n-i),s=Math.max(0,Math.floor(-Math.log(o)/Math.LN2)),a=Math.pow(2,s);return new ju(s,Math.floor((t+r)/2*a),Math.floor((i+n)/2*a))}(t),this.minzoom=this.maxzoom=this.tileID.z;}return this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"content\"})),this}_clear(){this._boundsArray=void 0;}_prepareData(e){for(const e in this.tiles){const t=this.tiles[e];\"loaded\"!==t.state&&(t.state=\"loaded\",t.texture=this.texture);}if(this._boundsArray)return;const t=Pg(this.tileID,this.map.transform.projection),[i,r,n,o]=this.coordinates.map((e=>{const i=t.projection.project(e[0],e[1]);return Rg(t,i)._round()}));this.perspectiveTransform=function(e,t,i,r,n,o,s,a,l,c){const h=Kb(0,0,e,0,0,t,e,t),u=Kb(i,r,n,o,s,a,l,c);return Eu.multiply(u,Eu.adjoint(h,h),u),[u[6]/u[8]*e/cr,u[7]/u[8]*t/cr]}(this.width,this.height,i.x,i.y,r.x,r.y,o.x,o.y,n.x,n.y);const s=this._boundsArray=new Da;s.emplaceBack(i.x,i.y,0,0),s.emplaceBack(r.x,r.y,cr,0),s.emplaceBack(o.x,o.y,0,cr),s.emplaceBack(n.x,n.y,cr,cr),this.boundsBuffer&&this.boundsBuffer.destroy(),this.boundsBuffer=e.createVertexBuffer(s,Ly.members),this.boundsSegments=xl.simpleSegment(0,0,4,2);}prepare(){const e=0!==Object.keys(this.tiles).length;if(this.tileID&&!e)return;const t=this.map.painter.context,i=t.gl;!this._dirty||this.texture instanceof Ay||(this.texture?this.texture.update(this.image):(this.texture=new My(t,this.image,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE)),this._dirty=!1),e&&this._prepareData(t);}loadTile(e,t){this.tileID&&this.tileID.equals(e.tileID.canonical)?(this.tiles[String(e.tileID.wrap)]=e,e.buckets={},t(null)):(e.state=\"errored\",t(null));}serialize(){return {type:\"image\",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return !1}}class Qb extends Ta{constructor(e){super(e,{}),this.implementation=e,e.slot&&(this.slot=e.slot);}is3D(){return \"3d\"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}isLayerDraped(e){return void 0!==this.implementation.renderToTile}shouldRedrape(){return !!this.implementation.shouldRerenderTiles&&this.implementation.shouldRerenderTiles()}recalculate(){}updateTransitions(){}hasTransition(){return !1}serialize(){}onAdd(e){this.implementation.onAdd&&this.implementation.onAdd(e,e.painter.context.gl);}onRemove(e){this.implementation.onRemove&&this.implementation.onRemove(e,e.painter.context.gl);}}const ew=new ga({visibility:new fa(Pt.layout_sky.visibility)});var tw={paint:new ga({\"sky-type\":new fa(Pt.paint_sky[\"sky-type\"]),\"sky-atmosphere-sun\":new fa(Pt.paint_sky[\"sky-atmosphere-sun\"]),\"sky-atmosphere-sun-intensity\":new fa(Pt.paint_sky[\"sky-atmosphere-sun-intensity\"]),\"sky-gradient-center\":new fa(Pt.paint_sky[\"sky-gradient-center\"]),\"sky-gradient-radius\":new fa(Pt.paint_sky[\"sky-gradient-radius\"]),\"sky-gradient\":new _a(Pt.paint_sky[\"sky-gradient\"]),\"sky-atmosphere-halo-color\":new fa(Pt.paint_sky[\"sky-atmosphere-halo-color\"]),\"sky-atmosphere-color\":new fa(Pt.paint_sky[\"sky-atmosphere-color\"]),\"sky-opacity\":new fa(Pt.paint_sky[\"sky-opacity\"])}),layout:ew};function iw(e,t,i){const r=[0,0,1],n=Iu.identity([]);return Iu.rotateY(n,n,i?-w(e)+Math.PI:w(e)),Iu.rotateX(n,n,-w(t)),Du.transformQuat(r,r,n),Du.normalize(r,r)}var rw={paint:new ga({})};const nw={circle:class extends Ta{constructor(e,t){super(e,Up,t);}createBucket(e){return new vp(e)}queryRadius(e){const t=e;return kp(\"circle-radius\",this,t)+kp(\"circle-stroke-width\",this,t)+Op(this.paint.get(\"circle-translate\"))}queryIntersectsFeature(e,t,i,r,n,o,s,a){const l=Fp(this.paint.get(\"circle-translate\"),this.paint.get(\"circle-translate-anchor\"),o.angle,e.pixelToTileUnitsFactor),c=this.paint.get(\"circle-radius\").evaluate(t,i)+this.paint.get(\"circle-stroke-width\").evaluate(t,i);return qp(e,r,o,s,a,\"map\"===this.paint.get(\"circle-pitch-alignment\"),\"map\"===this.paint.get(\"circle-pitch-scale\"),l,c)}getProgramIds(){return [\"circle\"]}getDefaultProgramParams(e,t){const i=Gp(this);return {config:new Ql(this,t),defines:i,overrideFog:!1}}},heatmap:class extends Ta{createBucket(e){return new Xp(e)}constructor(e,t){super(e,nf,t),this._updateColorRamp();}_handleSpecialPaintPropertyUpdate(e){\"heatmap-color\"===e&&this._updateColorRamp();}_updateColorRamp(){this.colorRamp=of({expression:this._transitionablePaint._values[\"heatmap-color\"].value.expression,evaluationKey:\"heatmapDensity\",image:this.colorRamp}),this.colorRampTexture=null;}resize(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null);}queryRadius(e){return kp(\"heatmap-radius\",this,e)}queryIntersectsFeature(e,t,i,r,n,o,s,a){const l=this.paint.get(\"heatmap-radius\").evaluate(t,i);return qp(e,r,o,s,a,!0,!0,new y(0,0),l)}hasOffscreenPass(){return 0!==this.paint.get(\"heatmap-opacity\")&&\"none\"!==this.visibility}getProgramIds(){return [\"heatmap\",\"heatmapTexture\"]}getDefaultProgramParams(e,t){return \"heatmap\"===e?{config:new Ql(this,t),overrideFog:!1}:{}}},hillshade:class extends Ta{constructor(e,t){super(e,af,t);}hasOffscreenPass(){return 0!==this.paint.get(\"hillshade-exaggeration\")&&\"none\"!==this.visibility}getProgramIds(){return [\"hillshade\",\"hillshadePrepare\"]}getDefaultProgramParams(e,t){return {overrideFog:!1}}},fill:class extends Ta{constructor(e,t){super(e,qf,t);}getProgramIds(){const e=this.paint.get(\"fill-pattern\"),t=e&&e.constantOr(1),i=[t?\"fillPattern\":\"fill\"];return this.paint.get(\"fill-antialias\")&&i.push(t&&!this.getPaintProperty(\"fill-outline-color\")?\"fillOutlinePattern\":\"fillOutline\"),i}getDefaultProgramParams(e,t){return {config:new Ql(this,t),overrideFog:!1}}recalculate(e,t){super.recalculate(e,t);const i=this.paint._values[\"fill-outline-color\"];\"constant\"===i.value.kind&&void 0===i.value.value&&(this.paint._values[\"fill-outline-color\"]=this.paint._values[\"fill-color\"]);}createBucket(e){return new jf(e)}queryRadius(){return Op(this.paint.get(\"fill-translate\"))}queryIntersectsFeature(e,t,i,r,n,o){return !e.queryGeometry.isAboveHorizon&&Tp(Bp(e.tilespaceGeometry,this.paint.get(\"fill-translate\"),this.paint.get(\"fill-translate-anchor\"),o.angle,e.pixelToTileUnitsFactor),r)}isTileClipped(){return !0}},\"fill-extrusion\":class extends Ta{constructor(e,t){super(e,Db,t),this._stats={numRenderedVerticesInShadowPass:0,numRenderedVerticesInTransparentPass:0};}createBucket(e){return new vb(e)}queryRadius(){return Op(this.paint.get(\"fill-extrusion-translate\"))}is3D(){return !0}hasShadowPass(){return !0}cutoffRange(){return this.paint.get(\"fill-extrusion-cutoff-fade-range\")}canCastShadows(){return !0}getProgramIds(){return [this.paint.get(\"fill-extrusion-pattern\").constantOr(1)?\"fillExtrusionPattern\":\"fillExtrusion\"]}queryIntersectsFeature(e,t,i,r,n,o,s,a,l){const c=Fp(this.paint.get(\"fill-extrusion-translate\"),this.paint.get(\"fill-extrusion-translate-anchor\"),o.angle,e.pixelToTileUnitsFactor),h=this.paint.get(\"fill-extrusion-height\").evaluate(t,i),u=this.paint.get(\"fill-extrusion-base\").evaluate(t,i),d=[0,0],p=a&&o.elevation,f=o.elevation?o.elevation.exaggeration():1,m=e.tile.getBucket(this);if(p&&m instanceof vb){const e=m.centroidVertexArray,t=l+1;te.polygon)).flat());const _=p?a:null,[g,x]=function(e,t,i,r,n,o,s,a,l,c,h){return \"globe\"===e.projection.name?function(e,t,i,r,n,o,s,a,l,c,h){const u=[],d=[],p=e.projection.upVectorScale(h,e.center.lat,e.worldSize).metersToTile,f=[0,0,0,1],m=[0,0,0,1],_=(e,t,i,r)=>{e[0]=t,e[1]=i,e[2]=r,e[3]=1;},g=Ib();i>0&&(i+=g),r+=g;for(const g of t){const t=[],y=[];for(const u of g){const d=u.x+n.x,g=u.y+n.y,x=e.projection.projectTilePoint(d,g,h),v=e.projection.upVector(h,u.x,u.y);let b=i,w=r;if(s){const e=Ob(d,g,i,r,s,a,l,c);b+=e.base,w+=e.top;}0!==i?_(f,x.x+v[0]*p*b,x.y+v[1]*p*b,x.z+v[2]*p*b):_(f,x.x,x.y,x.z),_(m,x.x+v[0]*p*w,x.y+v[1]*p*w,x.z+v[2]*p*w),Du.transformMat4(f,f,o),Du.transformMat4(m,m,o),t.push(new Rb(f[0],f[1],f[2])),y.push(new Rb(m[0],m[1],m[2]));}u.push(t),d.push(y);}return [u,d]}(e,t,i,r,n,o,s,a,l,c,h):s?function(e,t,i,r,n,o,s,a,l){const c=[],h=[],u=[0,0,0,1];for(const d of e){const e=[],p=[];for(const c of d){const h=c.x+r.x,d=c.y+r.y,f=Ob(h,d,t,i,o,s,a,l);u[0]=h,u[1]=d,u[2]=f.base,u[3]=1,yu.transformMat4(u,u,n),u[3]=Math.max(u[3],1e-5);const m=new Rb(u[0]/u[3],u[1]/u[3],u[2]/u[3]);u[0]=h,u[1]=d,u[2]=f.top,u[3]=1,yu.transformMat4(u,u,n),u[3]=Math.max(u[3],1e-5);const _=new Rb(u[0]/u[3],u[1]/u[3],u[2]/u[3]);e.push(m),p.push(_);}c.push(e),h.push(p);}return [c,h]}(t,i,r,n,o,s,a,l,c):function(e,t,i,r,n){const o=[],s=[],a=n[8]*t,l=n[9]*t,c=n[10]*t,h=n[11]*t,u=n[8]*i,d=n[9]*i,p=n[10]*i,f=n[11]*i;for(const t of e){const e=[],i=[];for(const o of t){const t=o.x+r.x,s=o.y+r.y,m=n[0]*t+n[4]*s+n[12],_=n[1]*t+n[5]*s+n[13],g=n[2]*t+n[6]*s+n[14],y=n[3]*t+n[7]*s+n[15],x=m+a,v=_+l,b=g+c,w=Math.max(y+h,1e-5),T=m+u,E=_+d,M=g+p,A=Math.max(y+f,1e-5);e.push(new Rb(x/w,v/w,b/w)),i.push(new Rb(T/A,E/A,M/A));}o.push(e),s.push(i);}return [o,s]}(t,i,r,n,o)}(o,r,u,h,c,s,_,d,f,o.center.lat,e.tileID.canonical),v=e.queryGeometry;return function(e,t,i){let r=1/0;Tp(i,t)&&(r=kb(i,t[0]));for(let n=0;n=3)for(let t=0;t=0)r=t;else {const n=e.points[i-4];r=Jr(n,t,n[2]/(n[2]-t[2]));}if(gw(this.state,r[0],r[1],0,this._transform)>=fw)return !0}return !1}updateTransitions(e){this._transitioning=this._transitionable.transitioned(e,this._transitioning);}hasTransition(){return this._transitioning.hasTransition()}recalculate(e){this.properties=this._transitioning.possiblyEvaluate(e);}_validate(e,t,i){return (!i||!1!==i.validate)&&Ss(this,e.call(ms,k({value:t,style:{glyphs:!0,sprite:!0},styleSpec:Pt})))}}class bw{constructor(e){this._callback=e,this._triggered=!1,\"undefined\"!=typeof MessageChannel&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._callback();});}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._callback();}),0));}remove(){this._channel=void 0,this._callback=()=>{};}}class ww{constructor(){this.tasks={},this.taskQueue=[],j([\"process\"],this),this.invoker=new bw(this.process),this.nextId=0;}add(e,t){const i=this.nextId++,r=function({type:e,isSymbolTile:t,zoom:i}){return i=i||0,\"message\"===e?0:\"maybePrepare\"!==e||t?\"parseTile\"!==e||t?\"parseTile\"===e&&t?300-i:\"maybePrepare\"===e&&t?400-i:500:200-i:100-i}(t);if(0===r){Q();try{e();}finally{}return {cancel:()=>{}}}return this.tasks[i]={fn:e,metadata:t,priority:r,id:i},this.taskQueue.push(i),this.invoker.trigger(),{cancel:()=>{delete this.tasks[i];}}}process(){Q();try{if(this.taskQueue=this.taskQueue.filter((e=>!!this.tasks[e])),!this.taskQueue.length)return;const e=this.pick();if(null===e)return;const t=this.tasks[e];if(delete this.tasks[e],this.taskQueue.length&&this.invoker.trigger(),!t)return;t.fn();}finally{}}pick(){let e=null,t=1/0;for(let i=0;i{i&&delete this.callbacks[s],this.target.postMessage({id:s,type:\"\",targetMapId:r,sourceMapId:this.mapId});}}}receive(e){const t=e.data,i=t.id;if(i&&(!t.targetMapId||this.mapId===t.targetMapId))if(\"\"===t.type){const e=this.cancelCallbacks[i];delete this.cancelCallbacks[i],e&&e.cancel();}else if(t.mustQueue||Q()){const e=this.callbacks[i];this.cancelCallbacks[i]=this.scheduler.add((()=>this.processTask(i,t)),e&&e.metadata||{type:\"message\"});}else this.processTask(i,t);}processTask(e,t){if(\"\"===t.type){const i=this.callbacks[e];delete this.callbacks[e],i&&(t.error?i(Bs(t.error)):i(null,Bs(t.data)));}else {const i=new Set,r=t.hasCallback?(t,r)=>{delete this.cancelCallbacks[e],this.target.postMessage({id:e,type:\"\",sourceMapId:this.mapId,error:t?Os(t):null,data:Os(r,i)},i);}:e=>{},n=Bs(t.data);if(this.parent[t.type])this.parent[t.type](t.sourceMapId,n,r);else if(this.parent.getWorkerSource){const e=t.type.split(\".\");this.parent.getWorkerSource(t.sourceMapId,e[0],n.source,n.scope)[e[1]](n,r);}else r(new Error(`Could not find function ${t.type}`));}}remove(){this.scheduler.remove(),this.target.removeEventListener(\"message\",this.receive,!1);}}class Ew{constructor(e,t){this.workerPool=e,this.actors=[],this.currentActor=0,this.id=F();const i=this.workerPool.acquire(this.id);for(let e=0;e{this.ready=!0;}));}broadcast(e,t,i){R(this.actors,((i,r)=>{i.send(e,t,r);}),i=i||function(){});}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(){this.actors.forEach((e=>{e.remove();})),this.actors=[],this.workerPool.release(this.id);}}Ew.Actor=Tw;class Mw extends zt{constructor(e,t,i,r){super(),this.scope=i,this._options=e,this.properties=new pa(t),this._transitionable=new la(t,new Map(r)),this._transitionable.setTransitionOrValue(e.properties),this._transitioning=this._transitionable.untransitioned();}updateConfig(e){this._transitionable.setTransitionOrValue(this._options.properties,new Map(e));}updateTransitions(e){this._transitioning=this._transitionable.transitioned(e,this._transitioning);}hasTransition(){return this._transitioning.hasTransition()}recalculate(e){this.properties=this._transitioning.possiblyEvaluate(e);}get(){return this._options.properties=this._transitionable.serialize(),this._options}set(e,t){this._options=e,this._transitionable.setTransitionOrValue(e.properties,t);}shadowsEnabled(){return !!this.properties&&!0===this.properties.get(\"cast-shadows\")}}const Aw=new ga({color:new fa(Pt.properties_light_ambient.color),intensity:new fa(Pt.properties_light_ambient.intensity)}),Sw=new ga({direction:new class{constructor(e){this.specification=e;}possiblyEvaluate(e,t){return function([e,t]){const i=K([1,e,t]);return {x:i.x,y:i.y,z:i.z}}(e.expression.evaluate(t))}interpolate(e,t,i){return {x:Kr(e.x,t.x,i),y:Kr(e.y,t.y,i),z:Kr(e.z,t.z,i)}}}(Pt.properties_light_directional.direction),color:new fa(Pt.properties_light_directional.color),intensity:new fa(Pt.properties_light_directional.intensity),\"cast-shadows\":new fa(Pt.properties_light_directional[\"cast-shadows\"]),\"shadow-intensity\":new fa(Pt.properties_light_directional[\"shadow-intensity\"])});class Iw{constructor(e,t,i,r){this.screenBounds=e,this.cameraPoint=t,this._screenRaycastCache={},this._cameraRaycastCache={},this.isAboveHorizon=i,this.screenGeometry=this.bufferedScreenGeometry(0),this.screenGeometryMercator=this._bufferedScreenMercator(0,r);}static createFromScreenPoints(e,t){let i,r;if(e instanceof y||\"number\"==typeof e[0]){const n=y.convert(e);i=[n],r=t.isPointAboveHorizon(n);}else {const n=y.convert(e[0]),o=y.convert(e[1]);i=[n,o],r=S(n,o).every((e=>t.isPointAboveHorizon(e)));}return new Iw(i,t.getCameraPoint(),r,t)}isPointQuery(){return 1===this.screenBounds.length}bufferedScreenGeometry(e){return S(this.screenBounds[0],1===this.screenBounds.length?this.screenBounds[0]:this.screenBounds[1],e)}bufferedCameraGeometry(e){const t=this.screenBounds[0],i=1===this.screenBounds.length?this.screenBounds[0].add(new y(1,1)):this.screenBounds[1],r=S(t,i,0,!1);return this.cameraPoint.y>i.y&&(this.cameraPoint.x>t.x&&this.cameraPoint.x=i.x?r[2]=this.cameraPoint:this.cameraPoint.x<=t.x&&(r[3]=this.cameraPoint)),function(e,t){const i=[];for(let r=0;rt.y)+(n.y>i.y))+((n.x>t.x)+(n.x>i.x))){case 0:r[0]=n,r[4]=n.clone();break;case 1:r.splice(1,0,n);break;case 2:r[1]=n;break;case 3:r.splice(4,0,n);break;case 5:r.splice(2,0,n);break;case 6:r[3]=n;break;case 7:r.splice(3,0,n);break;case 8:r[2]=n;}return r}containsTile(e,t,i,r=0){const n=e.queryPadding/t._pixelsPerMercatorPixel+1,o=i?this._bufferedCameraMercator(n,t):this._bufferedScreenMercator(n,t);let s=e.tileID.wrap+(o.unwrapped?r:0);const a=o.polygon.map((t=>Rg(e.tileTransform,t,s)));if(!Pp(a,0,0,cr,cr))return;s=e.tileID.wrap+(this.screenGeometryMercator.unwrapped?r:0);const l=this.screenGeometryMercator.polygon.map((t=>Lg(e.tileTransform,t,s))),c=l.map((e=>new y(e[0],e[1]))),h=t.getFreeCameraOptions().position||new lp(0,0,0),u=Lg(e.tileTransform,h,s),d=l.map((e=>{const t=Du.sub(e,e,u);return Du.normalize(t,t),new Wu(u,t)})),p=rv(e,1,t.zoom)*t._pixelsPerMercatorPixel;return {queryGeometry:this,tilespaceGeometry:c,tilespaceRays:d,bufferedTilespaceGeometry:a,bufferedTilespaceBounds:(f=A(a),f.min.x=z(f.min.x,0,cr),f.min.y=z(f.min.y,0,cr),f.max.x=z(f.max.x,0,cr),f.max.y=z(f.max.y,0,cr),f),tile:e,tileID:e.tileID,pixelToTileUnitsFactor:p};var f;}_bufferedScreenMercator(e,t){const i=Pw(e);if(this._screenRaycastCache[i])return this._screenRaycastCache[i];{let r;return r=\"globe\"===t.projection.name?this._projectAndResample(this.bufferedScreenGeometry(e),t):{polygon:this.bufferedScreenGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._screenRaycastCache[i]=r,r}}_bufferedCameraMercator(e,t){const i=Pw(e);if(this._cameraRaycastCache[i])return this._cameraRaycastCache[i];{let r;return r=\"globe\"===t.projection.name?this._projectAndResample(this.bufferedCameraGeometryGlobe(e),t):{polygon:this.bufferedCameraGeometry(e).map((e=>t.pointCoordinate3D(e))),unwrapped:!0},this._cameraRaycastCache[i]=r,r}}_projectAndResample(e,t){const i=function(e,t){const i=Au.multiply([],t.pixelMatrix,t.globeMatrix),r=[0,-rd,0,1],n=[0,rd,0,1],o=[0,0,0,1];yu.transformMat4(r,r,i),yu.transformMat4(n,n,i),yu.transformMat4(o,o,i);const s=new y(r[0]/r[3],r[1]/r[3]),a=new y(n[0]/n[3],n[1]/n[3]),l=zp(e,s)&&r[3]1?Cw(e.slice(0,u),t):[],f=unew y(zw(e.x),e.y))),f=f.map((e=>new y(zw(e.x),e.y)));const m=[...p];0===m.length&&m.push(f[f.length-1]);const _=Kr(m[m.length-1].y,(0===f.length?p[0]:f[0]).y,d);let g;return g=l?[new y(0,_),new y(0,0),new y(1,0),new y(1,_)]:[new y(1,_),new y(1,1),new y(0,1),new y(0,_)],m.push(...g),0===f.length?m.push(p[0]):m.push(...f),{polygon:m.map((e=>new lp(e.x,e.y))),unwrapped:!1}}(e,t);if(i)return i;const r=function(e,t){let i=!1,r=-1/0,n=0;for(let t=0;tr&&(r=e[t].x,n=t);for(let t=0;t.5&&(o.x{e.x-=1;})),{polygon:e,unwrapped:i}}(Cw(e,t).map((e=>new y(zw(e.x),e.y))),t);return {polygon:r.polygon.map((e=>new lp(e.x,e.y))),unwrapped:r.unwrapped}}}function Cw(e,t){return hp(e,(e=>{const i=t.pointCoordinate3D(e);e.x=i.x,e.y=i.y;}),1/256)}function zw(e){return e<0?1+e%1:e%1}function Pw(e){return 100*e|0}function Dw(e,t,i,r,n){const o=function(i,r){if(i)return n(i);if(r){e.url&&r.tiles&&e.tiles&&delete e.tiles;const i=O(k(r,e),[\"tiles\",\"minzoom\",\"maxzoom\",\"attribution\",\"mapbox_logo\",\"bounds\",\"scheme\",\"tileSize\",\"encoding\"]);r.vector_layers&&(i.vectorLayers=r.vector_layers,i.vectorLayerIds=i.vectorLayers.map((e=>e.id))),i.tiles=t.canonicalizeTileset(i,e.url),n(null,i);}};return e.url?we(t.transformRequest(t.normalizeSourceURL(e.url,null,i,r),ye.Source),o):dt.frame((()=>o(null,e)))}class Rw{constructor(e,t,i){this.bounds=sc.convert(this.validateBounds(e)),this.minzoom=t||0,this.maxzoom=i||24;}validateBounds(e){return Array.isArray(e)&&4===e.length?[Math.max(-180,e[0]),Math.max(-90,e[1]),Math.min(180,e[2]),Math.min(90,e[3])]:[-180,-90,180,90]}contains(e){const t=Math.pow(2,e.z),i=Math.floor(Kd(this.bounds.getWest())*t),r=Math.floor(Jd(this.bounds.getNorth())*t),n=Math.ceil(Kd(this.bounds.getEast())*t),o=Math.ceil(Jd(this.bounds.getSouth())*t);return e.x>=i&&e.x=r&&e.y1&&(s=e[++o]);const l=Math.abs(a-s.left),c=Math.abs(a-s.right),h=Math.min(l,c);let u;const d=t/i*(r+1);if(s.isDash){const e=r-Math.abs(d);u=Math.sqrt(h*h+e*e);}else u=r-Math.sqrt(h*h+d*d);this.image.data[n+a]=Math.max(0,Math.min(255,u+128));}}}addRegularDash(e,t){for(let t=e.length-1;t>=0;--t){const i=e[t],r=e[t+1];i.zeroLength?e.splice(t,1):r&&r.isDash===i.isDash&&(r.left=i.left,e.splice(t,1));}const i=e[0],r=e[e.length-1];i.isDash===r.isDash&&(i.left=r.left-this.width,r.right=i.right+this.width);const n=this.width*this.nextRow;let o=0,s=e[o];for(let i=0;i1&&(s=e[++o]);const r=Math.abs(i-s.left),a=Math.abs(i-s.right),l=Math.min(r,a);this.image.data[n+i]=Math.max(0,Math.min(255,(s.isDash?l:-l)+t+128));}}addDash(e,t){const i=this.getKey(e,t);if(this.positions[i])return this.positions[i];const r=\"round\"===t,n=r?7:0,o=2*n+1;if(this.nextRow+o>this.height)return H(\"LineAtlas out of space\"),null;0===e.length&&e.push(1);let s=0;for(let t=0;t=t.maxzoom||\"none\"!==t.visibility&&(Fw(e,this.zoom,c.brightness,i),(a[t.id]=t.createBucket({index:s.bucketLayerIDs.length,layers:e,zoom:this.zoom,canonical:this.canonical,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:d,sourceID:this.source,projection:this.projection.spec})).populate(p,c,this.tileID.canonical,this.tileTransform),s.bucketLayerIDs.push(e.map((e=>e.id)))));}}let u,d,p,f;l.trim();const m={type:\"maybePrepare\",isSymbolTile:this.isSymbolTile,zoom:this.zoom},_=()=>{if(u)return this.status=\"done\",n(u);if(this.extraShadowCaster)this.status=\"done\",n(null,{buckets:L(a).filter((e=>!e.isEmpty())),featureIndex:s,collisionBoxArray:null,glyphAtlasImage:null,lineAtlas:null,imageAtlas:null,brightness:c.brightness,glyphMap:null,iconMap:null,glyphPositions:null});else if(d&&p&&f){const e=new Ow(d),t=new eg(p,f);for(const r in a){const n=a[r];n instanceof gy?(Fw(n.layers,this.zoom,c.brightness,i),vg(n,d,e.positions,p,t.iconPositions,this.showCollisionBoxes,i,this.tileID.canonical,this.tileZoom,this.projection,this.brightness)):n.hasPattern&&(n instanceof Ey||n instanceof jf||n instanceof vb)&&(Fw(n.layers,this.zoom,c.brightness,i),n.addFeatures(c,this.tileID.canonical,t.patternPositions,i,this.tileTransform,this.brightness));}this.status=\"done\",n(null,{buckets:L(a).filter((e=>!e.isEmpty())),featureIndex:s,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,lineAtlas:l,imageAtlas:t,brightness:c.brightness});}};if(!this.extraShadowCaster){const e=q(c.glyphDependencies,(e=>Object.keys(e).map(Number)));Object.keys(e).length?r.send(\"getGlyphs\",{uid:this.uid,stacks:e,scope:this.scope},((e,t)=>{u||(u=e,d=t,_());}),void 0,!1,m):d={};const t=Object.keys(c.iconDependencies);t.length?r.send(\"getImages\",{icons:t,source:this.source,scope:this.scope,tileID:this.tileID,type:\"icons\"},((e,t)=>{u||(u=e,p=t,_());}),void 0,!1,m):p={};const i=Object.keys(c.patternDependencies);i.length?r.send(\"getImages\",{icons:i,source:this.source,scope:this.scope,tileID:this.tileID,type:\"patterns\"},((e,t)=>{u||(u=e,f=t,_());}),void 0,!1,m):f={};}_();}}function Fw(e,t,i,r){const n=new oa(t,{brightness:i});for(const t of e)t.recalculate(n,r);}class Nw{constructor(e){this.entries={},this.scheduler=e;}request(e,t,i,r){const n=this.entries[e]=this.entries[e]||{callbacks:[]};if(n.result){const[e,i]=n.result;return this.scheduler?this.scheduler.add((()=>{r(e,i);}),t):r(e,i),()=>{}}return n.callbacks.push(r),n.cancel||(n.cancel=i(((i,r)=>{n.result=[i,r];for(const e of n.callbacks)this.scheduler?this.scheduler.add((()=>{e(i,r);}),t):e(i,r);setTimeout((()=>delete this.entries[e]),3e3);}))),()=>{n.result||(n.callbacks=n.callbacks.filter((e=>e!==r)),n.callbacks.length||(n.cancel(),delete this.entries[e]));}}}function Uw(e,t,i){const r=JSON.stringify(e.request);return e.data&&(this.deduped.entries[r]={result:[null,e.data]}),this.deduped.request(r,{type:\"parseTile\",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom},(t=>{const r=Te(e.request,((e,r,n,o)=>{e?t(e):r&&t(null,{vectorTile:i?void 0:new cm(new km(r)),rawData:r,cacheControl:n,expires:o});}));return ()=>{r.cancel(),t();}}),t)}class Vw extends zt{constructor(e,t,i,r){if(super(),this.id=e,this.dispatcher=i,this.type=\"vector\",this.minzoom=0,this.maxzoom=22,this.scheme=\"xyz\",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,k(this,O(t,[\"url\",\"scheme\",\"tileSize\",\"promoteId\"])),this._options=k({type:\"vector\"},t),this._collectResourceTiming=!!t.collectResourceTiming,512!==this.tileSize)throw new Error(\"vector tile sources must have a tileSize of 512\");this.setEventedParent(r),this._tileWorkers={},this._deduped=new Nw;}load(e){this._loaded=!1,this.fire(new It(\"dataloading\",{dataType:\"source\"}));const t=Array.isArray(this.map._language)?this.map._language.join():this.map._language,i=this.map._worldview;this._tileJSONRequest=Dw(this._options,this.map._requestManager,t,i,((r,n)=>{this._tileJSONRequest=null,this._loaded=!0,r?(t&&console.warn(`Ensure that your requested language string is a valid BCP-47 code or list of codes. Found: ${t}`),i&&2!==i.length&&console.warn(`Requested worldview strings must be a valid ISO alpha-2 code. Found: ${i}`),this.fire(new Ct(r))):n&&(k(this,n),n.bounds&&(this.tileBounds=new Rw(n.bounds,this.minzoom,this.maxzoom)),Ge(n.tiles,this.map._requestManager._customAccessToken),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))),e&&e(r);}));}loaded(){return this._loaded}hasTile(e){return !this.tileBounds||this.tileBounds.contains(e.canonical)}onAdd(e){this.map=e,this.load();}reload(){this.cancelTileJSONRequest();const e=va(this.id,this.scope);this.load((()=>this.map.style.clearSource(e)));}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest();}serialize(){return k({},this._options)}loadTile(e,t){const i=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme)),r={request:this.map._requestManager.transformRequest(i,ye.Tile),data:void 0,uid:e.uid,tileID:e.tileID,tileZoom:e.tileZoom,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,scope:this.scope,pixelRatio:dt.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId,isSymbolTile:e.isSymbolTile,brightness:this.map.style&&this.map.style.getBrightness()||0,extraShadowCaster:e.isExtraShadowCaster};if(r.request.collectResourceTiming=this._collectResourceTiming,e.actor&&\"expired\"!==e.state)\"loading\"===e.state?e.reloadCallback=t:e.request=e.actor.send(\"reloadTile\",r,n.bind(this));else if(e.actor=this._tileWorkers[i]=this._tileWorkers[i]||this.dispatcher.getActor(),this.dispatcher.ready)e.request=e.actor.send(\"loadTile\",r,n.bind(this),void 0,!0);else {const t=Uw.call({deduped:this._deduped},r,((t,i)=>{t||!i?n.call(this,t):(r.data={cacheControl:i.cacheControl,expires:i.expires,rawData:i.rawData.slice(0)},e.actor&&e.actor.send(\"loadTile\",r,n.bind(this),void 0,!0));}),!0);e.request={cancel:t};}function n(i,r){return delete e.request,e.aborted?t(null):i&&404!==i.status?t(i):(r&&r.resourceTiming&&(e.resourceTiming=r.resourceTiming),this.map._refreshExpiredTiles&&r&&e.setExpiryData(r),e.loadVectorData(r,this.map.painter),ge(this.dispatcher),t(null),void(e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)))}}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.actor&&e.actor.send(\"abortTile\",{uid:e.uid,type:this.type,source:this.id,scope:this.scope});}unloadTile(e){e.actor&&e.actor.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id,scope:this.scope}),e.destroy();}hasTransition(){return !1}afterUpdate(){this._tileWorkers={};}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null);}}class jw extends zt{constructor(e,t,i,r){super(),this.id=e,this.dispatcher=i,this.setEventedParent(r),this.type=\"raster\",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme=\"xyz\",this.tileSize=512,this._loaded=!1,this._options=k({type:\"raster\"},t),k(this,O(t,[\"url\",\"scheme\",\"tileSize\"]));}load(e){this._loaded=!1,this.fire(new It(\"dataloading\",{dataType:\"source\"})),this._tileJSONRequest=Dw(this._options,this.map._requestManager,null,null,((t,i)=>{this._tileJSONRequest=null,this._loaded=!0,t?this.fire(new Ct(t)):i&&(k(this,i),i.bounds&&(this.tileBounds=new Rw(i.bounds,this.minzoom,this.maxzoom)),Ge(i.tiles),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))),e&&e(t);}));}loaded(){return this._loaded}onAdd(e){this.map=e,this.load();}reload(){this.cancelTileJSONRequest();const e=va(this.id,this.scope);this.load((()=>this.map.style.clearSource(e)));}setTiles(e){return this._options.tiles=e,this.reload(),this}setUrl(e){return this.url=e,this._options.url=e,this.reload(),this}onRemove(){this.cancelTileJSONRequest();}serialize(){return k({},this._options)}hasTile(e){return !this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(e,t){const i=dt.devicePixelRatio>=2,r=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),i,this.tileSize);e.request=Ie(this.map._requestManager.transformRequest(r,ye.Tile),((i,r,n,o)=>(delete e.request,e.aborted?(e.state=\"unloaded\",t(null)):i?(e.state=\"errored\",t(i)):r?(this.map._refreshExpiredTiles&&e.setExpiryData({cacheControl:n,expires:o}),e.setTexture(r,this.map.painter),e.state=\"loaded\",ge(this.dispatcher),void t(null)):t(null))));}abortTile(e,t){e.request&&(e.request.cancel(),delete e.request),t();}unloadTile(e,t){e.texture&&e.texture instanceof My?(e.destroy(!0),e.texture&&e.texture instanceof My&&this.map.painter.saveTileTexture(e.texture)):e.destroy(),t();}hasTransition(){return !1}cancelTileJSONRequest(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null);}}function Gw(){return null!=xI.workerClass?new xI.workerClass:new t.Worker(xI.workerUrl)}const qw=\"mapboxgl_preloaded_worker_pool\";class Zw{constructor(){this.active={};}acquire(e){if(!this.workers)for(this.workers=[];this.workers.length{e.terminate();})),this.workers=null);}isPreloaded(){return !!this.active[qw]}numActive(){return Object.keys(this.active).length}}let $w;function Ww(){return $w||($w=new Zw),$w}Zw.workerCount=2;let Hw,Xw,Yw,Kw=null;function Jw(){return Q()&&self.worker&&self.worker.dracoUrl?self.worker.dracoUrl:Xw||n.DRACO_URL}const Qw=5123,eT=5126,tT={5120:Int8Array,5121:Uint8Array,5122:Int16Array,[Qw]:Uint16Array,5125:Uint32Array,[eT]:Float32Array},iT={5120:\"DT_INT8\",5121:\"DT_UINT8\",5122:\"DT_INT16\",[Qw]:\"DT_UINT16\",5125:\"DT_UINT32\",[eT]:\"DT_FLOAT32\"},rT={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16};function nT(e,t,i){const r=i.json.bufferViews.length,n=i.buffers.length;t.bufferView=r,i.json.bufferViews[r]={buffer:n,byteLength:e.byteLength},i.buffers[n]=e;}const oT=\"KHR_draco_mesh_compression\";function sT(e,t){const i=e.extensions&&e.extensions[oT];if(!i)return;const r=new Yw.Decoder,n=uT(t,i.bufferView),o=new Yw.Mesh;if(!r.DecodeArrayToMesh(n,n.byteLength,o))throw new Error(\"Failed to decode Draco mesh\");const s=t.json.accessors[e.indices],a=tT[s.componentType],l=s.count*a.BYTES_PER_ELEMENT,c=Yw._malloc(l);a===Uint16Array?r.GetTrianglesUInt16Array(o,l,c):r.GetTrianglesUInt32Array(o,l,c),nT(Yw.memory.buffer.slice(c,c+l),s,t),Yw._free(c);for(const n of Object.keys(i.attributes)){const s=r.GetAttributeByUniqueId(o,i.attributes[n]),a=t.json.accessors[e.attributes[n]],l=iT[a.componentType],c=a.count*rT[a.type]*tT[a.componentType].BYTES_PER_ELEMENT,h=Yw._malloc(c);r.GetAttributeDataArrayForAllPoints(o,s,Yw[l],c,h),nT(Yw.memory.buffer.slice(h,h+c),a,t),Yw._free(h);}r.destroy(),o.destroy(),delete e.extensions[oT];}const aT=1179937895,lT=new TextDecoder(\"utf8\");function cT(e,t){return new URL(e,t).href}function hT(e,t,i,r){return fetch(cT(e.uri,r)).then((e=>e.arrayBuffer())).then((e=>{t.buffers[i]=e;}))}function uT(e,t){const i=e.json.bufferViews[t];return new Uint8Array(e.buffers[i.buffer],i.byteOffset||0,i.byteLength)}function dT(e,i,r,n){if(e.uri){const o=cT(e.uri,n);return fetch(o).then((e=>e.blob())).then((e=>t.createImageBitmap(e))).then((e=>{i.images[r]=e;}))}if(void 0!==e.bufferView){const n=uT(i,e.bufferView),o=new t.Blob([n],{type:e.mimeType});return t.createImageBitmap(o).then((e=>{i.images[r]=e;}))}}function pT(e,t=0,i){const r={json:null,images:[],buffers:[]};if(new Uint32Array(e,t,1)[0]===aT){const i=new Uint32Array(e,t);let n=2;const o=(i[n++]>>2)-3,s=i[n++]>>2;if(n++,r.json=JSON.parse(lT.decode(i.subarray(n,n+s))),n+=s,n{const e=[],t=a&&a.includes(oT);if(t&&e.push(function(){if(!Yw)return Hw||(Hw=function(e){let t,i=null;function r(){t=new Uint8Array(i.buffer);}function n(){throw new Error(\"Unexpected Draco error.\")}const o={a:{a:n,d:function(e,i,r){return t.copyWithin(e,i,i+r)},c:function(e){const n=t.length,o=Math.max(e>>>0,Math.ceil(1.2*n)),s=Math.ceil((o-n)/65536);try{return i.grow(s),r(),!0}catch(e){return !1}},b:n}};return (WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(e,o):e.then((e=>e.arrayBuffer())).then((e=>WebAssembly.instantiate(e,o)))).then((e=>{const{Rb:n,Qb:o,P:s,T:a,X:l,Ja:c,La:h,Qa:u,Va:d,Wa:p,eb:f,jb:m,f:_,e:g,yb:y,zb:x,Ab:v,Bb:b,Db:w,Gb:T}=e.instance.exports;i=g;const E=(()=>{let e=0,i=0,r=0,s=0;return a=>{r&&(n(s),n(e),i+=r,r=e=0),e||(i+=128,e=o(i));const l=a.length+7&-8;let c=e;l>=i&&(r=l,c=s=o(l));for(let e=0;e{Yw=e,Hw=void 0;})))}()),o)for(let t=0;t{if(t&&s)for(const{primitives:e}of s)for(const t of e)sT(t,r);return r}))}))}function fT(e){return fetch(e).then((e=>e.arrayBuffer())).then((t=>pT(t,0,e)))}class mT{constructor(e,t,i){if(this.triangleCount=t.length/3,this.min=new y(0,0),this.max=new y(0,0),this.xScale=0,this.yScale=0,this.cellsX=0,this.cellsY=0,this.cells=[],this.payload=[],0===this.triangleCount||0===e.length||0===i)return;const r=e.map((e=>e.x)),n=e.map((e=>e.y));this.min=new y(Math.min(...r),Math.min(...n)),this.max=new y(Math.max(...r),Math.max(...n));const o=this.max.sub(this.min);o.x=Math.max(o.x,1),o.y=Math.max(o.y,1);const s=Math.max(o.x,o.y)/i;this.cellsX=Math.max(1,Math.ceil(o.x/s)),this.cellsY=Math.max(1,Math.ceil(o.y/s)),this.xScale=1/s,this.yScale=1/s;const a=[];for(let i=0;ie.cellIdx-t.cellIdx||e.triIdx-t.triIdx));let l=0;for(;lthis.max.x||this.min.x>t.x)return;if(e.y>this.max.y||this.min.y>t.y)return;this.lookup||(this.lookup=new Uint8Array(Math.ceil(this.triangleCount/8)));for(let e=0;e0){for(let n=0;n0){o.texcoordArray=new il;const e=t.json.accessors[n.TEXCOORD_0];o.texcoordArray.reserve(e.count);const i=gT(t,e);for(let t=0;t1&&r[r.length-1].equals(r[0])&&r.pop();let n=0;for(let e=0;e0&&r.reverse();const o=Bf(r.flatMap((e=>[e.x,e.y])),[]);return 0===o.length?null:{vertices:r,indices:o}}function wT(e){const t=[],i=[];let r=0;for(const n of e){r=t.length;const e=n.vertexArray.float32,o=n.indexArray.uint16;for(let i=0;i0&&([i[e+1],i[e+2]]=[i[e+2],i[e+1]]);}return {vertices:t,indices:i}}function TT(e){const i=function(e,i){const r=[],n=t.WebGL2RenderingContext;if(e.json.textures)for(const t of e.json.textures){const o={magFilter:n.LINEAR,minFilter:n.NEAREST,wrapS:n.REPEAT,wrapT:n.REPEAT};void 0!==t.sampler&&Object.assign(o,e.json.samplers[t.sampler]),r.push({image:i[t.source],sampler:o,uploaded:!1});}return r}(e,e.images),r=function(e,t){const i=[];for(const r of e.json.meshes){const n=[];for(const i of r.primitives)n.push(yT(i,e,t));i.push(n);}return i}(e,i),{scenes:n,scene:o,nodes:s}=e.json,a=n?n[o||0].nodes:s,l=[];for(const t of a)l.push(xT(s[t],e,r));return function(e,t,i){const r={},n=new Set;for(let o=0;o0){const t=Array.from(n.values()).sort(((e,t)=>e-t));for(let i=t.length-1;i>=0;i--)e.splice(t[i],1);}}(l,a,e.json.nodes),l}function ET(e){e.heightmap=new Float32Array(4096),e.heightmap.fill(-1);const t=e.vertexArray.float32,i=e.aabb.min[0]-1,r=e.aabb.min[1]-1,n=Sv/(e.aabb.max[0]-i+2),o=Sv/(e.aabb.max[1]-r+2);for(let s=0;se.heightmap[c*Sv+l]&&(e.heightmap[c*Sv+l]=a);}}function MT(e,t){const i={};i.indexArray=new Wa,i.indexArray.reserve(4*e.length),i.vertexArray=new tl,i.vertexArray.reserve(10*e.length),i.colorArray=new ka,i.vertexArray.reserve(10*e.length);let r=0;for(const n of e){const e=Math.min(10,Math.max(4,1.3*n.height))*t,o=[-n.normal[1],n.normal[0],0],s=Math.min(.29,.1*n.width/n.depth),a=n.width-2*n.depth*t*(s+.01),l=Du.scaleAndAdd([],n.pos,o,a/2),c=Du.scaleAndAdd([],n.pos,o,-a/2),h=[l[0],l[1],l[2]+n.height],u=[c[0],c[1],c[2]+n.height],d=Du.scaleAndAdd([],n.normal,o,s);Du.scale(d,d,e);const p=Du.scaleAndAdd([],n.normal,o,-s);Du.scale(p,p,e),Du.add(d,l,d),Du.add(p,c,p),l[2]+=.1,c[2]+=.1,i.vertexArray.emplaceBack(d[0],d[1],d[2]),i.vertexArray.emplaceBack(p[0],p[1],p[2]),i.vertexArray.emplaceBack(l[0],l[1],l[2]),i.vertexArray.emplaceBack(c[0],c[1],c[2]),i.vertexArray.emplaceBack(h[0],h[1],h[2]),i.vertexArray.emplaceBack(u[0],u[1],u[2]),i.vertexArray.emplaceBack(l[0],l[1],l[2]),i.vertexArray.emplaceBack(c[0],c[1],c[2]),i.vertexArray.emplaceBack(d[0],d[1],d[2]),i.vertexArray.emplaceBack(p[0],p[1],p[2]);const f=a/e/2;i.colorArray.emplaceBack(-f-s,-1,f,.8),i.colorArray.emplaceBack(f+s,-1,f,.8),i.colorArray.emplaceBack(-f,0,f,1.3),i.colorArray.emplaceBack(f,0,f,1.3),i.colorArray.emplaceBack(f+s,-.8,f,.7),i.colorArray.emplaceBack(f+s,-.8,f,.7),i.colorArray.emplaceBack(0,0,f,1.3),i.colorArray.emplaceBack(0,0,f,1.3),i.colorArray.emplaceBack(f+s,-1.2,f,.8),i.colorArray.emplaceBack(f+s,-1.2,f,.8),i.indexArray.emplaceBack(6+r,4+r,8+r),i.indexArray.emplaceBack(7+r,9+r,5+r),i.indexArray.emplaceBack(0+r,1+r,2+r),i.indexArray.emplaceBack(1+r,3+r,2+r),r+=10;}const n={defined:!0,emissiveFactor:[0,0,0]},o={};return o.baseColorFactor=hi.white,n.pbrMetallicRoughness=o,i.material=n,i.aabb=new ed([1/0,1/0,1/0],[-1/0,-1/0,-1/0]),i}Rs(mT,\"TriangleGridIndex\");const AT={vector:Vw,raster:jw,\"raster-dem\":class extends jw{constructor(e,t,i,r){super(e,t,i,r),this.type=\"raster-dem\",this.maxzoom=22,this._options=k({type:\"raster-dem\"},t),this.encoding=t.encoding||\"mapbox\";}loadTile(e,i){const r=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme),!1,this.tileSize);function n(t,r){t&&(e.state=\"errored\",i(t)),r&&(e.dem=r,e.dem.onDeserialize(),e.needsHillshadePrepare=!0,e.needsDEMTextureUpload=!0,e.state=\"loaded\",i(null));}e.request=Ie(this.map._requestManager.transformRequest(r,ye.Tile),function(r,o,s,a){if(delete e.request,e.aborted)e.state=\"unloaded\",i(null);else if(r)e.state=\"errored\",i(r);else if(o){this.map._refreshExpiredTiles&&e.setExpiryData({cacheControl:s,expires:a});const i=t.ImageBitmap&&o instanceof t.ImageBitmap&&ut(),r=1-(o.width-((l=o.width)<=1?1:Math.pow(2,Math.floor(Math.log(l)/Math.LN2))))/2;r<1||e.neighboringTiles||(e.neighboringTiles=this._getNeighboringTiles(e.tileID));const c=i?o:dt.getImageData(o,r),h={uid:e.uid,coord:e.tileID,source:this.id,scope:this.scope,rawImageData:c,encoding:this.encoding,padding:r};e.actor&&\"expired\"!==e.state||(e.actor=this.dispatcher.getActor(),e.actor.send(\"loadDEMTile\",h,n.bind(this),void 0,!0));}var l;}.bind(this));}_getNeighboringTiles(e){const t=e.canonical,i=Math.pow(2,t.z),r=(t.x-1+i)%i,n=0===t.x?e.wrap-1:e.wrap,o=(t.x+1+i)%i,s=t.x+1===i?e.wrap+1:e.wrap,a={};return a[new qu(e.overscaledZ,n,t.z,r,t.y).key]={backfilled:!1},a[new qu(e.overscaledZ,s,t.z,o,t.y).key]={backfilled:!1},t.y>0&&(a[new qu(e.overscaledZ,n,t.z,r,t.y-1).key]={backfilled:!1},a[new qu(e.overscaledZ,e.wrap,t.z,t.x,t.y-1).key]={backfilled:!1},a[new qu(e.overscaledZ,s,t.z,o,t.y-1).key]={backfilled:!1}),t.y+1{if(this._loaded=!0,this._pendingLoad=null,e)this.fire(new Ct(e));else {const e={dataType:\"source\",sourceDataType:this._metadataFired?\"content\":\"metadata\"};this._collectResourceTiming&&t&&t.resourceTiming&&t.resourceTiming[this.id]&&(e.resourceTiming=t.resourceTiming[this.id]),this.fire(new It(\"data\",e)),this._metadataFired=!0;}this._coalesce&&(this._updateWorkerData(),this._coalesce=!1);}));}loaded(){return this._loaded}loadTile(e,t){const i=e.actor?\"reloadTile\":\"loadTile\";e.actor=this.actor;const r={type:this.type,uid:e.uid,tileID:e.tileID,tileZoom:e.tileZoom,zoom:e.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,scope:this.scope,pixelRatio:dt.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId,brightness:this.map.style&&this.map.style.getBrightness()||0};e.request=this.actor.send(i,r,((r,n)=>(delete e.request,e.destroy(),e.aborted?t(null):r?t(r):(e.loadVectorData(n,this.map.painter,\"reloadTile\"===i),t(null)))),void 0,\"loadTile\"===i);}abortTile(e){e.request&&(e.request.cancel(),delete e.request),e.aborted=!0;}unloadTile(e){this.actor.send(\"removeTile\",{uid:e.uid,type:this.type,source:this.id,scope:this.scope}),e.destroy();}onRemove(){this._pendingLoad&&this._pendingLoad.cancel();}serialize(){return k({},this._options,{type:this.type,data:this._data})}hasTransition(){return !1}},video:class extends Jb{constructor(e,t,i,r){super(e,t,i,r),this.roundZoom=!0,this.type=\"video\",this.options=t;}load(){this._loaded=!1;const e=this.options;this.urls=[];for(const t of e.urls)this.urls.push(this.map._requestManager.transformRequest(t,ye.Source).url);!function(e,i){const r=t.document.createElement(\"video\");r.muted=!0,r.onloadstart=function(){i(null,r);};for(let i=0;i{this._loaded=!0,e?this.fire(new Ct(e)):t&&(this.video=t,this.video.loop=!0,this.video.setAttribute(\"playsinline\",\"\"),this.video.addEventListener(\"playing\",(()=>{this.map.triggerRepaint();})),this.map&&this.video.play(),this._finishLoading());}));}pause(){this.video&&this.video.pause();}play(){this.video&&this.video.play();}seek(e){if(this.video){const t=this.video.seekable;et.end(0)?this.fire(new Ct(new Dt(`sources.${this.id}`,null,`Playback for this video can be set only between the ${t.start(0)} and ${t.end(0)}-second mark.`))):this.video.currentTime=e;}}getVideo(){return this.video}onAdd(e){this.map||(this.map=e,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)));}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const e=this.map.painter.context,t=e.gl;this.texture?this.video.paused||(this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE),t.texSubImage2D(t.TEXTURE_2D,0,0,0,t.RGBA,t.UNSIGNED_BYTE,this.video)):(this.texture=new My(e,this.video,t.RGBA),this.texture.bind(t.LINEAR,t.CLAMP_TO_EDGE),this.width=this.video.videoWidth,this.height=this.video.videoHeight),this._prepareData(e);}serialize(){return {type:\"video\",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}},image:Jb,model:class extends zt{constructor(e,t,i,r){super(),this.id=e,this.type=\"model\",this.models=[],this._loaded=!1,this._options=t;}load(){const e=[];for(const t in this._options.models){const i=this._options.models[t],r=fT(this.map._requestManager.transformRequest(i.uri,ye.Model).url).then((e=>{if(!e)return;const r=TT(e),n=new Cv(t,i.position,i.orientation,r);n.computeBoundsAndApplyParent(),this.models.push(n);})).catch((e=>{this.fire(new Ct(new Error(`Could not load model ${t} from ${i.uri}: ${e.message}`)));}));e.push(r);}return Promise.allSettled(e).then((()=>{this._loaded=!0,this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"}));})).catch((e=>{this.fire(new Ct(new Error(`Could not load models: ${e.message}`)));}))}onAdd(e){this.map=e,this.load();}hasTransition(){return !1}loaded(){return this._loaded}getModels(){return this.models}loadTile(e,t){}serialize(){return {type:\"model\"}}},\"batched-model\":class extends zt{constructor(e,t,i,r){super(),this.type=\"batched-model\",this.id=e,this.tileSize=512,this._options=t,this.tiles=this._options.tiles,this.maxzoom=t.maxzoom||19,this.minzoom=t.minzoom||0,this.roundZoom=!0,this.usedInConflation=!0,this.dispatcher=i,this.reparseOverscaled=!1,this.scheme=\"xyz\",this._loaded=!1,this.setEventedParent(r);}onAdd(e){this.map=e,this.load();}load(e){this._loaded=!1,this.fire(new It(\"dataloading\",{dataType:\"source\"}));const t=Array.isArray(this.map._language)?this.map._language.join():this.map._language,i=this.map._worldview;this._tileJSONRequest=Dw(this._options,this.map._requestManager,t,i,((r,n)=>{this._tileJSONRequest=null,this._loaded=!0,r?(t&&console.warn(`Ensure that your requested language string is a valid BCP-47 code or list of codes. Found: ${t}`),i&&2!==i.length&&console.warn(`Requested worldview strings must be a valid ISO alpha-2 code. Found: ${i}`),this.fire(new Ct(r))):n&&(k(this,n),n.bounds&&(this.tileBounds=new Rw(n.bounds,this.minzoom,this.maxzoom)),Ge(n.tiles,this.map._requestManager._customAccessToken),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"content\"}))),e&&e(r);}));}hasTransition(){return !1}hasTile(e){return !this.tileBounds||this.tileBounds.contains(e.canonical)}loaded(){return this._loaded}loadTile(e,t){const i=this.map._requestManager.normalizeTileURL(e.tileID.canonical.url(this.tiles,this.scheme)),r={request:this.map._requestManager.transformRequest(i,ye.Tile),data:void 0,uid:e.uid,tileID:e.tileID,tileZoom:e.tileZoom,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,scope:this.scope,showCollisionBoxes:this.map.showCollisionBoxes,isSymbolTile:e.isSymbolTile,brightness:this.map.style&&this.map.style.getBrightness()||0};if(e.actor&&\"expired\"!==e.state)if(\"loading\"===e.state)e.reloadCallback=t;else {if(e.buckets){const t=Object.values(e.buckets);for(const e of t)e.dirty=!0;return void(e.state=\"loaded\")}e.request=e.actor.send(\"reloadTile\",r,n.bind(this));}else e.actor=this.dispatcher.getActor(),e.request=e.actor.send(\"loadTile\",r,n.bind(this),void 0,!0);function n(i,r){return e.aborted?t(null):i&&404!==i.status?t(i):(r&&(r.resourceTiming&&(e.resourceTiming=r.resourceTiming),this.map._refreshExpiredTiles&&e.setExpiryData(r),e.buckets={...e.buckets,...r.buckets}),e.state=\"loaded\",void t(null))}}serialize(){return k({},this._options)}},canvas:class extends Jb{constructor(e,i,r,n){super(e,i,r,n),i.coordinates?Array.isArray(i.coordinates)&&4===i.coordinates.length&&!i.coordinates.some((e=>!Array.isArray(e)||2!==e.length||e.some((e=>\"number\"!=typeof e))))||this.fire(new Ct(new Dt(`sources.${e}`,null,'\"coordinates\" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new Ct(new Dt(`sources.${e}`,null,'missing required property \"coordinates\"'))),i.animate&&\"boolean\"!=typeof i.animate&&this.fire(new Ct(new Dt(`sources.${e}`,null,'optional \"animate\" property must be a boolean value'))),i.canvas?\"string\"==typeof i.canvas||i.canvas instanceof t.HTMLCanvasElement||this.fire(new Ct(new Dt(`sources.${e}`,null,'\"canvas\" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new Ct(new Dt(`sources.${e}`,null,'missing required property \"canvas\"'))),this.options=i,this.animate=void 0===i.animate||i.animate;}load(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof t.HTMLCanvasElement?this.options.canvas:t.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new Ct(new Error(\"Canvas dimensions cannot be less than or equal to zero.\"))):(this.play=function(){this._playing=!0,this.map.triggerRepaint();},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1);},this._finishLoading());}getCanvas(){return this.canvas}onAdd(e){this.map=e,this.load(),this.canvas&&this.animate&&this.play();}onRemove(){this.pause();}prepare(){let e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),this._hasInvalidDimensions())return;if(0===Object.keys(this.tiles).length)return;const t=this.map.painter.context;this.texture?!e&&!this._playing||this.texture instanceof Ay||this.texture.update(this.canvas,{premultiply:!0}):this.texture=new My(t,this.canvas,t.gl.RGBA,{premultiply:!0}),this._prepareData(t);}serialize(){return {type:\"canvas\",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const e of [this.canvas.width,this.canvas.height])if(isNaN(e)||e<=0)return !0;return !1}},custom:class extends zt{constructor(e,t,i,r){super(),this.id=e,this.type=\"custom\",this._dataType=\"raster\",this._dispatcher=i,this._implementation=t,this.setEventedParent(r),this.scheme=\"xyz\",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this._loaded=!1,this.roundZoom=!0,this._implementation||this.fire(new Ct(new Error(`Missing implementation for ${this.id} custom source`))),this._implementation.loadTile||this.fire(new Ct(new Error(`Missing loadTile implementation for ${this.id} custom source`))),this._implementation.bounds&&(this.tileBounds=new Rw(this._implementation.bounds,this.minzoom,this.maxzoom)),t.update=this._update.bind(this),t.clearTiles=this._clearTiles.bind(this),t.coveringTiles=this._coveringTiles.bind(this),k(this,O(t,[\"dataType\",\"scheme\",\"minzoom\",\"maxzoom\",\"tileSize\",\"attribution\",\"minTileCacheSize\",\"maxTileCacheSize\"]));}serialize(){return O(this,[\"type\",\"scheme\",\"minzoom\",\"maxzoom\",\"tileSize\",\"attribution\"])}load(){this._loaded=!0,this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"metadata\"})),this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"content\"}));}loaded(){return this._loaded}onAdd(e){this._map=e,this._loaded=!1,this.fire(new It(\"dataloading\",{dataType:\"source\"})),this._implementation.onAdd&&this._implementation.onAdd(e),this.load();}onRemove(e){this._implementation.onRemove&&this._implementation.onRemove(e);}hasTile(e){if(this._implementation.hasTile){const{x:t,y:i,z:r}=e.canonical;return this._implementation.hasTile({x:t,y:i,z:r})}return !this.tileBounds||this.tileBounds.contains(e.canonical)}loadTile(e,i){const{x:r,y:n,z:o}=e.tileID.canonical,s=new t.AbortController;e.request=Promise.resolve(this._implementation.loadTile({x:r,y:n,z:o},{signal:s.signal})).then(function(r){return delete e.request,e.aborted?(e.state=\"unloaded\",i(null)):void 0===r?(e.state=\"errored\",i(null)):null===r?(this.loadTileData(e,{width:this.tileSize,height:this.tileSize,data:null}),e.state=\"loaded\",i(null)):function(e){return e instanceof t.ImageData||e instanceof t.HTMLCanvasElement||e instanceof t.ImageBitmap||e instanceof t.HTMLImageElement}(r)?(this.loadTileData(e,r),e.state=\"loaded\",void i(null)):(e.state=\"errored\",i(new Error(`Can't infer data type for ${this.id}, only raster data supported at the moment`)))}.bind(this)).catch((t=>{20!==t.code&&(e.state=\"errored\",i(t));})),e.request.cancel=()=>s.abort();}loadTileData(e,t){e.setTexture(t,this._map.painter);}unloadTile(e,t){if(e.texture&&e.texture instanceof My?(e.destroy(!0),e.texture&&e.texture instanceof My&&this._map.painter.saveTileTexture(e.texture)):e.destroy(),this._implementation.unloadTile){const{x:t,y:i,z:r}=e.tileID.canonical;this._implementation.unloadTile({x:t,y:i,z:r});}t();}abortTile(e,t){e.request&&e.request.cancel&&(e.request.cancel(),delete e.request),t();}hasTransition(){return !1}_coveringTiles(){return this._map.transform.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,roundZoom:this.roundZoom}).map((e=>({x:e.canonical.x,y:e.canonical.y,z:e.canonical.z})))}_clearTiles(){const e=va(this.id,this.scope);this._map.style.clearSource(e);}_update(){this.fire(new It(\"data\",{dataType:\"source\",sourceDataType:\"content\"}));}}},ST=function(e,t,i,r){const n=new AT[t.type](e,t,i,r);if(n.id!==e)throw new Error(`Expected Source id to be ${e} instead of ${n.id}`);return j([\"load\",\"abort\",\"unload\",\"serialize\",\"prepare\"],n),n};function IT(e,t){const i=Au.identity([]);return Au.scale(i,i,[.5*e.width,.5*-e.height,1]),Au.translate(i,i,[1,-1,0]),Au.multiply(i,i,e.calculateProjMatrix(t.toUnwrapped())),Float32Array.from(i)}function CT(e,t,i,r,n,o,s,a=!1){const l=e.tilesIn(r,s,a);l.sort(PT);const c=[];for(const r of l)c.push({wrappedTileID:r.tile.tileID.wrapped().key,queryResults:r.tile.queryRenderedFeatures(t,i,e._state,r,n,o,IT(e.transform,r.tile.tileID),a)});const h=function(e){const t={},i={};for(const r of e){const e=r.queryResults,n=r.wrappedTileID,o=i[n]=i[n]||{};for(const i in e){const r=e[i],n=o[i]=o[i]||{},s=t[i]=t[i]||[];for(const e of r)n[e.featureIndex]||(n[e.featureIndex]=!0,s.push(e));}}return t}(c);for(const t in h)h[t].forEach((t=>{const i=t.feature,r=i.layer;r&&\"background\"!==r.type&&\"sky\"!==r.type&&\"slot\"!==r.type&&(i.source=r.source,r[\"source-layer\"]&&(i.sourceLayer=r[\"source-layer\"]),i.state=void 0!==i.id?e.getFeatureState(r[\"source-layer\"],i.id):{});}));return h}function zT(e,t){const i=e.getRenderableIds().map((t=>e.getTileByID(t))),r=[],n={};for(let e=0;e0?i.paint.get(\"fill-extrusion-vertical-scale\"):0);let o=r?r.getTile(t):null;if(!o&&r&&t.canonical.z>r.getSource().minzoom){let e=t.scaledTo(Math.min(r.getSource().maxzoom,t.overscaledZ-1));for(;e.overscaledZ>=r.getSource().minzoom&&(o=r.getTile(e),!o&&0!==e.overscaledZ);)e=e.scaledTo(e.overscaledZ-1);}this.currentBuildingBuckets.push({bucket:o?o.getBucket(i):null,tileID:o?o.tileID:t,verticalScale:n});}e.hasAnyZOffset=!1;let i=!1;for(let r=0;r{e in t&&(i[e]=t[e]);})),i}function kT(e){e=e.slice();const t=Object.create(null);for(let i=0;i0?(r-o)/s:0;return this.points[n].mult(1-a).add(this.points[t].mult(a))}}class ZT{constructor(e,t,i){const r=this.boxCells=[],n=this.circleCells=[];this.xCellCount=Math.ceil(e/i),this.yCellCount=Math.ceil(t/i);for(let e=0;ethis.width||r<0||t>this.height)return !n&&[];const s=[];if(e<=0&&t<=0&&this.width<=i&&this.height<=r){if(n)return !0;for(let e=0;e0:s}_queryCircle(e,t,i,r,n){const o=e-i,s=e+i,a=t-i,l=t+i;if(s<0||o>this.width||l<0||a>this.height)return !r&&[];const c=[];return this._forEachCell(o,a,s,l,this._queryCellCircle,c,{hitTest:r,circle:{x:e,y:t,radius:i},seenUids:{box:{},circle:{}}},n),r?c.length>0:c}query(e,t,i,r,n){return this._query(e,t,i,r,!1,n)}hitTest(e,t,i,r,n){return this._query(e,t,i,r,!0,n)}hitTestCircle(e,t,i,r){return this._queryCircle(e,t,i,!0,r)}_queryCell(e,t,i,r,n,o,s,a){const l=s.seenUids,c=this.boxCells[n];if(null!==c){const n=this.bboxes;for(const h of c)if(!l.box[h]){l.box[h]=!0;const c=4*h;if(e<=n[c+2]&&t<=n[c+3]&&i>=n[c+0]&&r>=n[c+1]&&(!a||a(this.boxKeys[h]))){if(s.hitTest)return o.push(!0),!0;o.push({key:this.boxKeys[h],x1:n[c],y1:n[c+1],x2:n[c+2],y2:n[c+3]});}}}const h=this.circleCells[n];if(null!==h){const n=this.circles;for(const c of h)if(!l.circle[c]){l.circle[c]=!0;const h=3*c;if(this._circleAndRectCollide(n[h],n[h+1],n[h+2],e,t,i,r)&&(!a||a(this.circleKeys[c]))){if(s.hitTest)return o.push(!0),!0;{const e=n[h],t=n[h+1],i=n[h+2];o.push({key:this.circleKeys[c],x1:e-i,y1:t-i,x2:e+i,y2:t+i});}}}}}_queryCellCircle(e,t,i,r,n,o,s,a){const l=s.circle,c=s.seenUids,h=this.boxCells[n];if(null!==h){const e=this.bboxes;for(const t of h)if(!c.box[t]){c.box[t]=!0;const i=4*t;if(this._circleAndRectCollide(l.x,l.y,l.radius,e[i+0],e[i+1],e[i+2],e[i+3])&&(!a||a(this.boxKeys[t])))return o.push(!0),!0}}const u=this.circleCells[n];if(null!==u){const e=this.circles;for(const t of u)if(!c.circle[t]){c.circle[t]=!0;const i=3*t;if(this._circlesCollide(e[i],e[i+1],e[i+2],l.x,l.y,l.radius)&&(!a||a(this.circleKeys[t])))return o.push(!0),!0}}}_forEachCell(e,t,i,r,n,o,s,a){const l=this._convertToXCellCoord(e),c=this._convertToYCellCoord(t),h=this._convertToXCellCoord(i),u=this._convertToYCellCoord(r);for(let d=l;d<=h;d++)for(let l=c;l<=u;l++)if(n.call(this,e,t,i,r,this.xCellCount*l+d,o,s,a))return}_convertToXCellCoord(e){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(e*this.xScale)))}_convertToYCellCoord(e){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(e*this.yScale)))}_circlesCollide(e,t,i,r,n,o){const s=r-e,a=n-t,l=i+o;return l*l>s*s+a*a}_circleAndRectCollide(e,t,i,r,n,o,s){const a=(o-r)/2,l=Math.abs(e-(r+a));if(l>a+i)return !1;const c=(s-n)/2,h=Math.abs(t-(n+c));if(h>c+i)return !1;if(l<=a||h<=c)return !0;const u=l-a,d=h-c;return u*u+d*d<=i*i}}const $T=100;class WT{constructor(e,t,i=new ZT(e.width+200,e.height+200,25),r=new ZT(e.width+200,e.height+200,25)){this.transform=e,this.grid=i,this.ignoredGrid=r,this.pitchfactor=Math.cos(e._pitch)*e.cameraToCenterDistance,this.screenRightBoundary=e.width+$T,this.screenBottomBoundary=e.height+$T,this.gridRightBoundary=e.width+200,this.gridBottomBoundary=e.height+200,this.fogState=t;}placeCollisionBox(e,t,i,r,n,o,s,a){let l=i.projectedAnchorX,c=i.projectedAnchorY,h=i.projectedAnchorZ;const u=i.elevation,d=i.tileID,p=e.getProjection();if(u&&d){const[e,t,r]=p.upVector(d.canonical,i.tileAnchorX,i.tileAnchorY),n=p.upVectorScale(d.canonical,this.transform.center.lat,this.transform.worldSize).metersToTile;l+=e*u*n,c+=t*u*n,h+=r*u*n;}const f=this.projectAndGetPerspectiveRatio(s,l,c,h,i.tileID,\"globe\"===p.name||!!u||this.transform.pitch>0,p),m=o*f.perspectiveRatio,_=(i.x1*t+r.x-i.padding)*m+f.point.x,g=(i.y1*t+r.y-i.padding)*m+f.point.y,y=(i.x2*t+r.x+i.padding)*m+f.point.x,x=(i.y2*t+r.y+i.padding)*m+f.point.y,v=f.perspectiveRatio<=.55||f.occluded;return !this.isInsideGrid(_,g,y,x)||!n&&this.grid.hitTest(_,g,y,x,a)||v?{box:[],offscreen:!1,occluded:f.occluded}:{box:[_,g,y,x],offscreen:this.isOffscreen(_,g,y,x),occluded:!1}}placeCollisionCircles(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f){const m=[],_=this.transform.elevation,g=e.getProjection(),x=_?_.getAtTileOffsetFunc(f,this.transform.center.lat,this.transform.worldSize,g):null,v=new y(i.tileAnchorX,i.tileAnchorY);let{x:b,y:w,z:T}=g.projectTilePoint(v.x,v.y,f.canonical);if(x){const[e,t,i]=x(v);b+=e,w+=t,T+=i;}const E=\"globe\"===g.name,M=this.projectAndGetPerspectiveRatio(s,b,w,T,f,E||!!_||this.transform.pitch>0,g),{perspectiveRatio:A}=M,S=(h?o/A:o*A)/u_,I=cv(b,w,T,a),C=M.signedDistanceFromCamera>0?pv(S,n,i.lineOffsetX*S,i.lineOffsetY*S,!1,I,v,i,r,a,{},_&&!h?x:null,h&&!!_,g,f,h):null;let z=!1,P=!1,D=!0;if(C&&!M.occluded){const e=.5*d*A+p,i=new y(-100,-100),r=new y(this.screenRightBoundary,this.screenBottomBoundary),n=new qT,{first:o,last:s}=C,a=o.path.length;let h=[];for(let e=a-1;e>=1;e--)h.push(o.path[e]);for(let e=1;e(x&&!E&&(i=x(re[3]<=0))&&(h=[]));let _=[];if(h.length>0){let e=1/0,t=-1/0,n=1/0,o=-1/0;for(const i of h)e=Math.min(e,i[0]),n=Math.min(n,i[1]),t=Math.max(t,i[0]),o=Math.max(o,i[1]);t>=i.x&&e<=r.x&&o>=i.y&&n<=r.y&&(_=[h.map((e=>new y(e[0],e[1])))],(er.x||nr.y)&&(_=Y_(_,i.x,i.y,r.x,r.y)));}for(const i of _){n.reset(i,.25*e);let r=0;r=n.length<=.5*e?1:Math.ceil(n.paddedLength/f)+1;for(let i=0;i0){if(yu.transformMat4(a,a,e),this.fogState&&n&&\"globe\"!==s.name){const e=function(e,t,i,r,n,o){const s=o.calculateFogTileMatrix(n),a=[t,i,r];return Du.transformMat4(a,a,s),mw(e,Du.length(a),o.pitch,o._fov)}(this.fogState,t,i,r,n.toUnwrapped(),this.transform);l=e>.9;}}else vv(a,a,e);const c=a[3];return {point:new y((a[0]/c+1)/2*this.transform.width+$T,(-a[1]/c+1)/2*this.transform.height+$T),perspectiveRatio:Math.min(.5+this.transform.getCameraToCenterDistance(s)/c*.5,1.5),signedDistanceFromCamera:c,occluded:o&&a[2]>c||l}}isOffscreen(e,t,i,r){return i<$T||e>=this.screenRightBoundary||r<$T||t>this.screenBottomBoundary}isInsideGrid(e,t,i,r){return i>=0&&e=0&&te.collisionGroupID===t};}return this.collisionGroups[e]}}function rE(e,t,i,r,n){const{horizontalAlign:o,verticalAlign:s}=F_(e),a=-(o-.5)*t,l=-(s-.5)*i,c=xg(e,r);return new y(a+c[0]*n,l+c[1]*n)}function nE(e,t,i,r,n){const o=new y(e,t);return i&&o._rotate(r?n:-n),o}class oE{constructor(e,t,i,r,n,o){this.transform=e.clone(),this.projection=e.projection.name,this.collisionIndex=new WT(this.transform,n),this.buildingIndex=o,this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=t,this.retainedQueryData={},this.collisionGroups=new iE(i),this.collisionCircleArrays={},this.prevPlacement=r,r&&(r.prevPlacement=void 0),this.placedOrientations={};}getBucketParts(e,t,i,r){const n=i.getBucket(t),o=i.latestFeatureIndex;if(!n||!o||t.fqid!==n.layerIds[0])return;const s=n.layers[0].layout,a=i.collisionBoxArray,l=Math.pow(2,this.transform.zoom-i.tileID.overscaledZ),c=i.tileSize/cr,h=i.tileID.toUnwrapped();this.transform.setProjection(n.projection);const u=(d=i.tileID,p=n.getProjection(),f=this.transform,p.name===this.projection?f.calculateProjMatrix(d.toUnwrapped()):HT(f,p,d));var d,p,f;const m=\"map\"===s.get(\"text-pitch-alignment\"),_=\"map\"===s.get(\"text-rotation-alignment\");t.compileFilter();const g=t.dynamicFilter(),y=t.dynamicFilterNeedsFeature(),x=this.transform.calculatePixelsToTileUnitsMatrix(i),v=av(u,i.tileID.canonical,m,_,this.transform,n.getProjection(),x);let b=null;if(m){const e=lv(u,i.tileID.canonical,m,_,this.transform,n.getProjection(),x);b=Au.multiply([],this.transform.labelPlaneMatrix,e);}let w=null;g&&i.latestFeatureIndex&&(w={unwrappedTileID:h,dynamicFilter:g,dynamicFilterNeedsFeature:y,featureIndex:i.latestFeatureIndex}),this.retainedQueryData[n.bucketInstanceId]=new tE(n.bucketInstanceId,o,n.sourceLayerIndex,n.index,i.tileID);const T={bucket:n,layout:s,posMatrix:u,textLabelPlaneMatrix:v,labelToScreenMatrix:b,clippingData:w,scale:l,textPixelRatio:c,holdingForFade:i.holdingForFade(),collisionBoxArray:a,partiallyEvaluatedTextSize:m_(n.textSizeData,this.transform.zoom),partiallyEvaluatedIconSize:m_(n.iconSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(n.sourceID)};if(r)for(const t of n.sortKeyRanges){const{sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n}=t;e.push({sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n,parameters:T});}else e.push({symbolInstanceStart:0,symbolInstanceEnd:n.symbolInstances.length,parameters:T});}attemptAnchorPlacement(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g){const{textOffset0:y,textOffset1:x,crossTileID:v}=u,b=[y,x],w=rE(e,i,r,b,n),T=this.collisionIndex.placeCollisionBox(p,n,t,nE(w.x,w.y,o,s,this.transform.angle),h,a,l,c.predicate);if(m){const e=p.getSymbolInstanceIconSize(g,this.transform.zoom,u.placedIconSymbolIndex);if(0===this.collisionIndex.placeCollisionBox(p,e,m,nE(w.x,w.y,o,s,this.transform.angle),h,a,l,c.predicate).box.length)return}if(T.box.length>0){let t;return this.prevPlacement&&this.prevPlacement.variableOffsets[v]&&this.prevPlacement.placements[v]&&this.prevPlacement.placements[v].text&&(t=this.prevPlacement.variableOffsets[v].anchor),this.variableOffsets[v]={textOffset:b,width:i,height:r,anchor:e,textScale:n,prevAnchor:t},this.markUsedJustification(p,e,u,f),p.allowVerticalPlacement&&(this.markUsedOrientation(p,f,u),this.placedOrientations[v]=f),{shift:w,placedGlyphBoxes:T}}}placeLayerBucketPart(e,t,i,r){const{bucket:n,layout:o,posMatrix:s,textLabelPlaneMatrix:a,labelToScreenMatrix:l,clippingData:c,textPixelRatio:h,holdingForFade:u,collisionBoxArray:d,partiallyEvaluatedTextSize:p,partiallyEvaluatedIconSize:f,collisionGroup:m}=e.parameters,_=o.get(\"text-optional\"),g=o.get(\"icon-optional\"),x=o.get(\"text-allow-overlap\"),v=o.get(\"icon-allow-overlap\"),b=\"map\"===o.get(\"text-rotation-alignment\"),w=\"map\"===o.get(\"text-pitch-alignment\"),T=\"viewport-y\"===o.get(\"symbol-z-order\"),E=o.get(\"symbol-z-elevate\");this.transform.setProjection(n.projection);let M=x&&(v||!n.hasIconData()||g),A=v&&(x||!n.hasTextData()||_);!n.collisionArrays&&d&&n.deserializeCollisionBoxes(d),i&&r&&n.updateCollisionDebugBuffers(this.transform.zoom,d);const S=(e,r,d)=>{const{crossTileID:T,numVerticalGlyphVertices:E}=e;if(c){const i={zoom:this.transform.zoom,pitch:this.transform.pitch};let r=null;if(c.dynamicFilterNeedsFeature){const t=this.retainedQueryData[n.bucketInstanceId];r=c.featureIndex.loadFeature({featureIndex:e.featureIndex,bucketIndex:t.bucketIndex,sourceLayerIndex:t.sourceLayerIndex,layoutVertexArrayOffset:0});}if(!(0,c.dynamicFilter)(i,r,this.retainedQueryData[n.bucketInstanceId].tileID.canonical,new y(e.tileAnchorX,e.tileAnchorY),this.transform.calculateDistanceTileData(c.unwrappedTileID)))return this.placements[T]=new QT(!1,!1,!1,!0),void t.add(T)}if(t.has(T))return;if(u)return void(this.placements[T]=new QT(!1,!1,!1));let S=!1,I=!1,C=!0,z=!1,P=!1,D=null,R={box:null,offscreen:null,occluded:null},L={box:null,offscreen:null,occluded:null},k=null,O=null,B=null,F=0,N=0,U=0;d.textFeatureIndex?F=d.textFeatureIndex:e.useRuntimeCollisionCircles&&(F=e.featureIndex),d.verticalTextFeatureIndex&&(N=d.verticalTextFeatureIndex);const V=t=>{t.tileID=this.retainedQueryData[n.bucketInstanceId].tileID;const i=this.transform.elevation;t.elevation=e.zOffset+(i?i.getAtTileOffset(t.tileID,t.tileAnchorX,t.tileAnchorY):0);},j=d.textBox;if(j){V(j);const t=t=>{let i=A_.horizontal;if(n.allowVerticalPlacement&&!t&&this.prevPlacement){const t=this.prevPlacement.placedOrientations[T];t&&(this.placedOrientations[T]=t,i=t,this.markUsedOrientation(n,i,e));}return i},i=(e,t)=>{if(n.allowVerticalPlacement&&E>0&&d.verticalTextBox){for(const i of n.writingModes)if(i===A_.vertical?(R=t(),L=R):R=e(),R&&R.box&&R.box.length)break}else R=e();};if(o.get(\"text-variable-anchor\")){let a=o.get(\"text-variable-anchor\");if(this.prevPlacement&&this.prevPlacement.variableOffsets[T]){const e=this.prevPlacement.variableOffsets[T];a.indexOf(e.anchor)>0&&(a=a.filter((t=>t!==e.anchor)),a.unshift(e.anchor));}const l=(t,i,o)=>{const l=n.getSymbolInstanceTextSize(p,e,this.transform.zoom,r),c=(t.x2-t.x1)*l+2*t.padding,u=(t.y2-t.y1)*l+2*t.padding,d=e.hasIconTextFit&&!v?i:null;d&&V(d);let _={box:[],offscreen:!1,occluded:!1};const g=x?2*a.length:a.length;for(let i=0;i=a.length,e,r,n,o,d,p,f);if(g&&(_=g.placedGlyphBoxes,_&&_.box&&_.box.length)){S=!0,D=g.shift;break}}return _};i((()=>l(j,d.iconBox,A_.horizontal)),(()=>{const e=d.verticalTextBox;return e&&V(e),n.allowVerticalPlacement&&!(R&&R.box&&R.box.length)&&E>0&&e?l(e,d.verticalIconBox,A_.vertical):{box:null,offscreen:null,occluded:null}})),R&&(S=R.box,C=R.offscreen,z=R.occluded);const c=t(!(!R||!R.box));if(!S&&this.prevPlacement){const t=this.prevPlacement.variableOffsets[T];t&&(this.variableOffsets[T]=t,this.markUsedJustification(n,t.anchor,e,c));}}else {const o=(t,i)=>{const o=n.getSymbolInstanceTextSize(p,e,this.transform.zoom,r),a=this.collisionIndex.placeCollisionBox(n,o,t,new y(0,0),x,h,s,m.predicate);return a&&a.box&&a.box.length&&(this.markUsedOrientation(n,i,e),this.placedOrientations[T]=i),a};i((()=>o(j,A_.horizontal)),(()=>{const e=d.verticalTextBox;return n.allowVerticalPlacement&&E>0&&e?(V(e),o(e,A_.vertical)):{box:null,offscreen:null,occluded:null}})),t(!!(R&&R.box&&R.box.length));}}if(k=R,S=k&&k.box&&k.box.length>0,C=k&&k.offscreen,z=k&&k.occluded,e.useRuntimeCollisionCircles){const t=n.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex>=0?e.centerJustifiedTextSymbolIndex:e.verticalPlacedTextSymbolIndex),r=f_(n.textSizeData,p,t),c=o.get(\"text-padding\");O=this.collisionIndex.placeCollisionCircles(n,x,t,n.lineVertexArray,n.glyphOffsetArray,r,s,a,l,i,w,m.predicate,e.collisionCircleDiameter*r/u_,c,this.retainedQueryData[n.bucketInstanceId].tileID),S=x||O.circles.length>0&&!O.collisionDetected,C=C&&O.offscreen,z=O.occluded;}if(d.iconFeatureIndex&&(U=d.iconFeatureIndex),d.iconBox){const t=t=>{V(t);const i=e.hasIconTextFit&&D?nE(D.x,D.y,b,w,this.transform.angle):new y(0,0),r=n.getSymbolInstanceIconSize(f,this.transform.zoom,e.placedIconSymbolIndex);return this.collisionIndex.placeCollisionBox(n,r,t,i,v,h,s,m.predicate)};L&&L.box&&L.box.length&&d.verticalIconBox?(B=t(d.verticalIconBox),I=B.box.length>0):(B=t(d.iconBox),I=B.box.length>0),C=C&&B.offscreen,P=B.occluded;}const G=_||0===e.numHorizontalGlyphVertices&&0===E,q=g||0===e.numIconVertices;if(G||q?q?G||(I=I&&S):S=I&&S:I=S=I&&S,S&&k&&k.box&&this.collisionIndex.insertCollisionBox(k.box,o.get(\"text-ignore-placement\"),n.bucketInstanceId,L&&L.box&&N?N:F,m.ID),I&&B&&this.collisionIndex.insertCollisionBox(B.box,o.get(\"icon-ignore-placement\"),n.bucketInstanceId,U,m.ID),O&&(S&&this.collisionIndex.insertCollisionCircles(O.circles,o.get(\"text-ignore-placement\"),n.bucketInstanceId,F,m.ID),i)){const e=n.bucketInstanceId;let t=this.collisionCircleArrays[e];void 0===t&&(t=this.collisionCircleArrays[e]=new eE);for(let e=0;e=0;--t){const i=e[t];S(n.symbolInstances.get(i),i,n.collisionArrays[i]);}n.hasAnyZOffset&&H(`${n.layerIds[0]} layer symbol-z-elevate: symbols are not sorted by elevation if symbol-z-order is evaluated to viewport-y`);}else if(n.hasAnyZOffset){const e=n.getSortedIndexesByZOffset();for(let t=0;t=0&&(e.text.placedSymbolArray.get(n).crossTileID=h>=0&&n!==h?0:l),o>=0&&(e.text.placedSymbolArray.get(o).crossTileID=h>=0&&o!==h?0:l),s>=0&&(e.text.placedSymbolArray.get(s).crossTileID=h>=0&&s!==h?0:l),a>=0&&(e.text.placedSymbolArray.get(a).crossTileID=h>=0&&a!==h?0:l);}markUsedOrientation(e,t,i){const r=t===A_.horizontal||t===A_.horizontalOnly?t:0,n=t===A_.vertical?t:0,{leftJustifiedTextSymbolIndex:o,centerJustifiedTextSymbolIndex:s,rightJustifiedTextSymbolIndex:a,verticalPlacedTextSymbolIndex:l}=i,c=e.text.placedSymbolArray;o>=0&&(c.get(o).placedOrientation=r),s>=0&&(c.get(s).placedOrientation=r),a>=0&&(c.get(a).placedOrientation=r),l>=0&&(c.get(l).placedOrientation=n);}commit(e){this.commitTime=e,this.zoomAtLastRecencyCheck=this.transform.zoom;const t=this.prevPlacement;let i=!1;this.prevZoomAdjustment=t?t.zoomAdjustment(this.transform.zoom):0;const r=t?t.symbolFadeChange(e):1,n=t?t.opacities:{},o=t?t.variableOffsets:{},s=t?t.placedOrientations:{};for(const e in this.placements){const t=this.placements[e],o=n[e];o?(this.opacities[e]=new JT(o,r,t.text,t.icon,null,t.clipped),i=i||t.text!==o.text.placed||t.icon!==o.icon.placed):(this.opacities[e]=new JT(null,r,t.text,t.icon,t.skipFade,t.clipped),i=i||t.text||t.icon);}for(const e in n){const t=n[e];if(!this.opacities[e]){const n=new JT(t,r,!1,!1);n.isHidden()||(this.opacities[e]=n,i=i||t.text.placed||t.icon.placed);}}for(const e in o)this.variableOffsets[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.variableOffsets[e]=o[e]);for(const e in s)this.placedOrientations[e]||!this.opacities[e]||this.opacities[e].isHidden()||(this.placedOrientations[e]=s[e]);i?this.lastPlacementChangeTime=e:\"number\"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=t?t.lastPlacementChangeTime:e);}updateLayerOpacities(e,t){const i=new Set;for(const r of t){const t=r.getBucket(e);t&&r.latestFeatureIndex&&e.fqid===t.layerIds[0]&&(this.updateBucketOpacities(t,i,r.collisionBoxArray),t.layers[0].layout.get(\"symbol-z-elevate\")&&this.buildingIndex&&(this.buildingIndex.updateZOffset(t,r.tileID),t.updateZOffset()));}}updateBucketOpacities(e,t,i){e.hasTextData()&&e.text.opacityVertexArray.clear(),e.hasIconData()&&e.icon.opacityVertexArray.clear(),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexArray.clear(),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexArray.clear();const r=e.layers[0].layout,n=!!e.layers[0].dynamicFilter(),o=new JT(null,0,!1,!1,!0),s=r.get(\"text-allow-overlap\"),a=r.get(\"icon-allow-overlap\"),l=r.get(\"text-variable-anchor\"),c=\"map\"===r.get(\"text-rotation-alignment\"),h=\"map\"===r.get(\"text-pitch-alignment\"),u=new JT(null,0,s&&(a||!e.hasIconData()||r.get(\"icon-optional\")),a&&(s||!e.hasTextData()||r.get(\"text-optional\")),!0);!e.collisionArrays&&i&&(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData())&&e.deserializeCollisionBoxes(i);const d=(e,t,i)=>{for(let r=0;r0||a>0,v=m>0,b=this.placedOrientations[f],w=b===A_.vertical,T=b===A_.horizontal||b===A_.horizontalOnly;if(!x&&!v||g.isHidden()||p++,x){const t=fE(g.text);d(e.text,s,w?mE:t),d(e.text,a,T?mE:t);const i=g.text.isHidden(),{leftJustifiedTextSymbolIndex:n,centerJustifiedTextSymbolIndex:o,rightJustifiedTextSymbolIndex:l,verticalPlacedTextSymbolIndex:c}=r,h=e.text.placedSymbolArray,u=i||w?1:0;n>=0&&(h.get(n).hidden=u),o>=0&&(h.get(o).hidden=u),l>=0&&(h.get(l).hidden=u),c>=0&&(h.get(c).hidden=i||T?1:0);const p=this.variableOffsets[f];p&&this.markUsedJustification(e,p.anchor,r,b);const m=this.placedOrientations[f];m&&(this.markUsedJustification(e,\"left\",r,m),this.markUsedOrientation(e,m,r));}if(v){const t=fE(g.icon),{placedIconSymbolIndex:i,verticalPlacedIconSymbolIndex:n}=r,o=e.icon.placedSymbolArray,s=g.icon.isHidden()?1:0;i>=0&&(d(e.icon,m,w?mE:t),o.get(i).hidden=s),n>=0&&(d(e.icon,r.numVerticalIconVertices,T?mE:t),o.get(n).hidden=s);}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){const t=e.collisionArrays[i];if(t){let i=new y(0,0),o=!0;if(t.textBox||t.verticalTextBox){if(l){const e=this.variableOffsets[f];e?(i=rE(e.anchor,e.width,e.height,e.textOffset,e.textScale),c&&i._rotate(h?this.transform.angle:-this.transform.angle)):o=!1;}n&&(o=!g.clipped),t.textBox&&sE(e.textCollisionBox.collisionVertexArray,g.text.placed,!o||w,i.x,i.y),t.verticalTextBox&&sE(e.textCollisionBox.collisionVertexArray,g.text.placed,!o||T,i.x,i.y);}const s=o&&Boolean(!T&&t.verticalIconBox);t.iconBox&&sE(e.iconCollisionBox.collisionVertexArray,g.icon.placed,s,r.hasIconTextFit?i.x:0,r.hasIconTextFit?i.y:0),t.verticalIconBox&&sE(e.iconCollisionBox.collisionVertexArray,g.icon.placed,!s,r.hasIconTextFit?i.x:0,r.hasIconTextFit?i.y:0);}}}if(e.fullyClipped=0===p,e.sortFeatures(this.transform.angle),this.retainedQueryData[e.bucketInstanceId]&&(this.retainedQueryData[e.bucketInstanceId].featureSortOrder=e.featureSortOrder),e.hasTextData()&&e.text.opacityVertexBuffer&&e.text.opacityVertexBuffer.updateData(e.text.opacityVertexArray),e.hasIconData()&&e.icon.opacityVertexBuffer&&e.icon.opacityVertexBuffer.updateData(e.icon.opacityVertexArray),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexBuffer&&e.iconCollisionBox.collisionVertexBuffer.updateData(e.iconCollisionBox.collisionVertexArray),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexBuffer&&e.textCollisionBox.collisionVertexBuffer.updateData(e.textCollisionBox.collisionVertexArray),e.bucketInstanceId in this.collisionCircleArrays){const t=this.collisionCircleArrays[e.bucketInstanceId];e.placementInvProjMatrix=t.invProjMatrix,e.placementViewportMatrix=t.viewportMatrix,e.collisionCircleArray=t.circles,delete this.collisionCircleArrays[e.bucketInstanceId];}}symbolFadeChange(e){return 0===this.fadeDuration?1:(e-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(e){return Math.max(0,(this.transform.zoom-e)/1.5)}hasTransitions(e){return this.stale||e-this.lastPlacementChangeTimee}setStale(){this.stale=!0;}}function sE(e,t,i,r,n){e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0),e.emplaceBack(t?1:0,i?1:0,r||0,n||0);}const aE=Math.pow(2,25),lE=Math.pow(2,24),cE=Math.pow(2,17),hE=Math.pow(2,16),uE=Math.pow(2,9),dE=Math.pow(2,8),pE=Math.pow(2,1);function fE(e){if(0===e.opacity&&!e.placed)return 0;if(1===e.opacity&&e.placed)return 4294967295;const t=e.placed?1:0,i=Math.floor(127*e.opacity);return i*aE+t*lE+i*cE+t*hE+i*uE+t*dE+i*pE+t}const mE=0;class _E{constructor(e){this._sortAcrossTiles=\"viewport-y\"!==e.layout.get(\"symbol-z-order\")&&void 0!==e.layout.get(\"symbol-sort-key\").constantOr(1),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs=new Set,this._bucketParts=[];}continuePlacement(e,t,i,r,n){const o=this._bucketParts;for(;this._currentTileIndexe.sortKey-t.sortKey)));this._currentPartIndex{const e=dt.now()-n;return !this._forceFullPlacement&&e>2};for(;this._currentPlacementIndex>=0;){const n=t[e[this._currentPlacementIndex]],s=this.placement.collisionIndex.transform.zoom;if(\"symbol\"===n.type&&(!n.minzoom||n.minzoom<=s)&&(!n.maxzoom||n.maxzoom>s)){const e=n,t=e.layout.get(\"symbol-z-elevate\"),s=this._inProgressLayer=this._inProgressLayer||new _E(e),a=va(n.source,n.scope);if(s.continuePlacement(t?r[a]:i[a],this.placement,this._showCollisionBoxes,n,o))return;delete this._inProgressLayer;}this._currentPlacementIndex--;}this._done=!0;}commit(e){return this.placement.commit(e),this.placement}}const yE=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class xE{static from(e){if(!(e instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");const[t,i]=new Uint8Array(e,0,2);if(219!==t)throw new Error(\"Data does not appear to be in a KDBush format.\");const r=i>>4;if(1!==r)throw new Error(`Got v${r} data when expected v1.`);const n=yE[15&i];if(!n)throw new Error(\"Unrecognized array type.\");const[o]=new Uint16Array(e,2,1),[s]=new Uint32Array(e,4,1);return new xE(s,o,n,e)}constructor(e,t=64,i=Float64Array,r){if(isNaN(e)||e<0)throw new Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+t,2),65535),this.ArrayType=i,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;const n=yE.indexOf(this.ArrayType),o=2*e*this.ArrayType.BYTES_PER_ELEMENT,s=e*this.IndexArrayType.BYTES_PER_ELEMENT,a=(8-s%8)%8;if(n<0)throw new Error(`Unexpected typed array class: ${i}.`);r&&r instanceof ArrayBuffer?(this.data=r,this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+s+a,2*e),this._pos=2*e,this._finished=!0):(this.data=new ArrayBuffer(8+o+s+a),this.ids=new this.IndexArrayType(this.data,8,e),this.coords=new this.ArrayType(this.data,8+s+a,2*e),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+n]),new Uint16Array(this.data,2,1)[0]=t,new Uint32Array(this.data,4,1)[0]=e);}add(e,t){const i=this._pos>>1;return this.ids[i]=i,this.coords[this._pos++]=e,this.coords[this._pos++]=t,i}finish(){const e=this._pos>>1;if(e!==this.numItems)throw new Error(`Added ${e} items when expected ${this.numItems}.`);return vE(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,t,i,r){if(!this._finished)throw new Error(\"Data not yet indexed - call index.finish().\");const{ids:n,coords:o,nodeSize:s}=this,a=[0,n.length-1,0],l=[];for(;a.length;){const c=a.pop()||0,h=a.pop()||0,u=a.pop()||0;if(h-u<=s){for(let s=u;s<=h;s++){const a=o[2*s],c=o[2*s+1];a>=e&&a<=i&&c>=t&&c<=r&&l.push(n[s]);}continue}const d=u+h>>1,p=o[2*d],f=o[2*d+1];p>=e&&p<=i&&f>=t&&f<=r&&l.push(n[d]),(0===c?e<=p:t<=f)&&(a.push(u),a.push(d-1),a.push(1-c)),(0===c?i>=p:r>=f)&&(a.push(d+1),a.push(h),a.push(1-c));}return l}within(e,t,i){if(!this._finished)throw new Error(\"Data not yet indexed - call index.finish().\");const{ids:r,coords:n,nodeSize:o}=this,s=[0,r.length-1,0],a=[],l=i*i;for(;s.length;){const c=s.pop()||0,h=s.pop()||0,u=s.pop()||0;if(h-u<=o){for(let i=u;i<=h;i++)EE(n[2*i],n[2*i+1],e,t)<=l&&a.push(r[i]);continue}const d=u+h>>1,p=n[2*d],f=n[2*d+1];EE(p,f,e,t)<=l&&a.push(r[d]),(0===c?e-i<=p:t-i<=f)&&(s.push(u),s.push(d-1),s.push(1-c)),(0===c?e+i>=p:t+i>=f)&&(s.push(d+1),s.push(h),s.push(1-c));}return a}}function vE(e,t,i,r,n,o){if(n-r<=i)return;const s=r+n>>1;bE(e,t,s,r,n,o),vE(e,t,i,r,s-1,1-o),vE(e,t,i,s+1,n,1-o);}function bE(e,t,i,r,n,o){for(;n>r;){if(n-r>600){const s=n-r+1,a=i-r+1,l=Math.log(s),c=.5*Math.exp(2*l/3),h=.5*Math.sqrt(l*c*(s-c)/s)*(a-s/2<0?-1:1);bE(e,t,i,Math.max(r,Math.floor(i-a*c/s+h)),Math.min(n,Math.floor(i+(s-a)*c/s+h)),o);}const s=t[2*i+o];let a=r,l=n;for(wE(e,t,r,i),t[2*n+o]>s&&wE(e,t,r,n);as;)l--;}t[2*r+o]===s?wE(e,t,r,l):(l++,wE(e,t,l,n)),l<=i&&(r=l+1),i<=l&&(n=l-1);}}function wE(e,t,i,r){TE(e,i,r),TE(t,2*i,2*r),TE(t,2*i+1,2*r+1);}function TE(e,t,i){const r=e[t];e[t]=e[i],e[i]=r;}function EE(e,t,i,r){const n=e-i,o=t-r;return n*n+o*o}const ME=512/cr/2;class AE{constructor(e,t,i){this.tileID=e,this.bucketInstanceId=i,this.index=new xE(t.length,16,Int32Array),this.keys=[],this.crossTileIDs=[];const r=e.canonical.x*cr,n=e.canonical.y*cr;for(let e=0;ee.overscaledZ)for(const i in n){const o=n[i];o.tileID.isChildOf(e)&&o.findMatches(t.symbolInstances,e,r);}else {const o=n[e.scaledTo(Number(i)).key];o&&o.findMatches(t.symbolInstances,e,r);}}for(let e=0;e{t[e]=!0;}));for(const e in this.layerIndexes)t[e]||delete this.layerIndexes[e];}}var zE=\"\\n#define EPSILON 0.0000001\\n#define PI 3.141592653589793\\n#ifdef RENDER_CUTOFF\\nfloat cutoff_opacity(vec4 cutoff_params,float depth) {float near=cutoff_params.x;float far=cutoff_params.y;float cutoffStart=cutoff_params.z;float cutoffEnd=cutoff_params.w-0.0001;float linearDepth=(depth-near)/(far-near);return clamp((linearDepth-cutoffStart)/(cutoffEnd-cutoffStart),0.0,1.0);}\\n#endif\",PE=\"in highp vec3 a_pos_3f;uniform lowp mat4 u_matrix;out highp vec3 v_uv;void main() {const mat3 half_neg_pi_around_x=mat3(1.0,0.0, 0.0,0.0,0.0,-1.0,0.0,1.0, 0.0);v_uv=half_neg_pi_around_x*a_pos_3f;vec4 pos=u_matrix*vec4(a_pos_3f,1.0);gl_Position=pos.xyww;}\",DE=\"\\n#define ELEVATION_SCALE 7.0\\n#define ELEVATION_OFFSET 450.0\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_tl_up;uniform vec3 u_tile_tr_up;uniform vec3 u_tile_br_up;uniform vec3 u_tile_bl_up;uniform float u_tile_up_scale;vec3 elevationVector(vec2 pos) {vec2 uv=pos/EXTENT;vec3 up=normalize(mix(\\nmix(u_tile_tl_up,u_tile_tr_up,uv.xxx),mix(u_tile_bl_up,u_tile_br_up,uv.xxx),uv.yyy));return up*u_tile_up_scale;}\\n#else\\nvec3 elevationVector(vec2 pos) { return vec3(0,0,1); }\\n#endif\\n#ifdef TERRAIN\\nuniform highp sampler2D u_dem;uniform highp sampler2D u_dem_prev;uniform vec2 u_dem_tl;uniform vec2 u_dem_tl_prev;uniform float u_dem_scale;uniform float u_dem_scale_prev;uniform float u_dem_size;uniform float u_dem_lerp;uniform float u_exaggeration;uniform float u_meter_to_dem;uniform mat4 u_label_plane_matrix_inv;uniform sampler2D u_depth;uniform vec2 u_depth_size_inv;vec4 tileUvToDemSample(vec2 uv,float dem_size,float dem_scale,vec2 dem_tl) {vec2 pos=dem_size*(uv*dem_scale+dem_tl)+1.0;vec2 f=fract(pos);return vec4((pos-f+0.5)/(dem_size+2.0),f);}float currentElevation(vec2 apos) {\\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale+u_dem_tl)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture(u_dem,pos).r;\\n#else\\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale,u_dem_tl);vec2 pos=r.xy;vec2 f=r.zw;float tl=texture(u_dem,pos).r;float tr=texture(u_dem,pos+vec2(dd,0)).r;float bl=texture(u_dem,pos+vec2(0,dd)).r;float br=texture(u_dem,pos+vec2(dd,dd)).r;return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\\n#endif\\n}float prevElevation(vec2 apos) {\\n#ifdef TERRAIN_DEM_FLOAT_FORMAT\\nvec2 pos=(u_dem_size*(apos/8192.0*u_dem_scale_prev+u_dem_tl_prev)+1.5)/(u_dem_size+2.0);return u_exaggeration*texture(u_dem_prev,pos).r;\\n#else\\nfloat dd=1.0/(u_dem_size+2.0);vec4 r=tileUvToDemSample(apos/8192.0,u_dem_size,u_dem_scale_prev,u_dem_tl_prev);vec2 pos=r.xy;vec2 f=r.zw;float tl=texture(u_dem_prev,pos).r;float tr=texture(u_dem_prev,pos+vec2(dd,0)).r;float bl=texture(u_dem_prev,pos+vec2(0,dd)).r;float br=texture(u_dem_prev,pos+vec2(dd,dd)).r;return u_exaggeration*mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);\\n#endif\\n}\\n#ifdef TERRAIN_VERTEX_MORPHING\\nfloat elevation(vec2 apos) {\\n#ifdef ZERO_EXAGGERATION\\nreturn 0.0;\\n#endif\\nfloat nextElevation=currentElevation(apos);float prevElevation=prevElevation(apos);return mix(prevElevation,nextElevation,u_dem_lerp);}\\n#else\\nfloat elevation(vec2 apos) {\\n#ifdef ZERO_EXAGGERATION\\nreturn 0.0;\\n#endif\\nreturn currentElevation(apos);}\\n#endif\\nhighp float unpack_depth(highp vec4 rgba_depth)\\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}bool isOccluded(vec4 frag) {vec3 coord=frag.xyz/frag.w;float depth=unpack_depth(texture(u_depth,(coord.xy+1.0)*0.5));return coord.z > depth+0.0005;}float occlusionFade(vec4 frag) {vec3 coord=frag.xyz/frag.w;vec3 df=vec3(5.0*u_depth_size_inv,0.0);vec2 uv=0.5*coord.xy+0.5;vec4 depth=vec4(\\nunpack_depth(texture(u_depth,uv-df.xz)),unpack_depth(texture(u_depth,uv+df.xz)),unpack_depth(texture(u_depth,uv-df.zy)),unpack_depth(texture(u_depth,uv+df.zy))\\n);return dot(vec4(0.25),vec4(1.0)-clamp(300.0*(vec4(coord.z-0.001)-depth),0.0,1.0));}vec4 fourSample(vec2 pos,vec2 off) {float tl=texture(u_dem,pos).r;float tr=texture(u_dem,pos+vec2(off.x,0.0)).r;float bl=texture(u_dem,pos+vec2(0.0,off.y)).r;float br=texture(u_dem,pos+off).r;return vec4(tl,tr,bl,br);}float flatElevation(vec2 pack) {vec2 apos=floor(pack/8.0);vec2 span=10.0*(pack-apos*8.0);vec2 uvTex=(apos-vec2(1.0,1.0))/8190.0;float size=u_dem_size+2.0;float dd=1.0/size;vec2 pos=u_dem_size*(uvTex*u_dem_scale+u_dem_tl)+1.0;vec2 f=fract(pos);pos=(pos-f+0.5)*dd;vec4 h=fourSample(pos,vec2(dd));float z=mix(mix(h.x,h.y,f.x),mix(h.z,h.w,f.x),f.y);vec2 w=floor(0.5*(span*u_meter_to_dem-1.0));vec2 d=dd*w;h=fourSample(pos-d,2.0*d+vec2(dd));vec4 diff=abs(h.xzxy-h.ywzw);vec2 slope=min(vec2(0.25),u_meter_to_dem*0.5*(diff.xz+diff.yw)/(2.0*w+vec2(1.0)));vec2 fix=slope*span;float base=z+max(fix.x,fix.y);return u_exaggeration*base;}float elevationFromUint16(float word) {return u_exaggeration*(word/ELEVATION_SCALE-ELEVATION_OFFSET);}\\n#else\\nfloat elevation(vec2 pos) { return 0.0; }bool isOccluded(vec4 frag) { return false; }float occlusionFade(vec4 frag) { return 1.0; }\\n#endif\",RE=\"#ifdef FOG\\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump mat4 u_fog_matrix;out vec3 v_fog_pos;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}vec3 fog_position(vec3 pos) {return (u_fog_matrix*vec4(pos,1.0)).xyz;}vec3 fog_position(vec2 pos) {return fog_position(vec3(pos,0.0));}float fog(vec3 pos) {float depth=length(pos);float opacity=fog_opacity(fog_range(depth));return opacity*fog_horizon_blending(pos/depth);}\\n#endif\",LE=\"highp vec3 hash(highp vec2 p) {highp vec3 p3=fract(p.xyx*vec3(443.8975,397.2973,491.1871));p3+=dot(p3,p3.yxz+19.19);return fract((p3.xxy+p3.yzz)*p3.zyx);}vec3 dither(vec3 color,highp vec2 seed) {vec3 rnd=hash(seed)+hash(seed+0.59374)-0.5;return color+rnd/255.0;}\\n#ifdef FOG\\nuniform mediump vec4 u_fog_color;uniform mediump vec2 u_fog_range;uniform mediump float u_fog_horizon_blend;uniform mediump vec2 u_fog_vertical_limit;uniform mediump float u_fog_temporal_offset;in vec3 v_fog_pos;uniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform highp vec2 u_viewport;uniform float u_globe_transition;uniform int u_is_globe;float fog_range(float depth) {return (depth-u_fog_range[0])/(u_fog_range[1]-u_fog_range[0]);}float fog_horizon_blending(vec3 camera_dir) {float t=max(0.0,camera_dir.z/u_fog_horizon_blend);return u_fog_color.a*exp(-3.0*t*t);}float fog_opacity(float t) {const float decay=6.0;float falloff=1.0-min(1.0,exp(-decay*t));falloff*=falloff*falloff;return u_fog_color.a*min(1.0,1.00747*falloff);}float globe_glow_progress() {highp vec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);highp vec3 dir=normalize(ray_dir);highp vec3 closest_point=dot(u_globe_pos,dir)*dir;highp float sdf=length(closest_point-u_globe_pos)/u_globe_radius;return sdf+PI*0.5;}float fog_opacity(vec3 pos) {float depth=length(pos);return fog_opacity(fog_range(depth));}vec3 fog_apply(vec3 color,vec3 pos,float opacity_limit) {float depth=length(pos);float opacity;if (u_is_globe==1) {float glow_progress=globe_glow_progress();float t=mix(glow_progress,depth,u_globe_transition);opacity=fog_opacity(fog_range(t));} else {opacity=fog_opacity(fog_range(depth));opacity*=fog_horizon_blending(pos/depth);}return mix(color,u_fog_color.rgb,min(opacity,opacity_limit));}vec3 fog_apply(vec3 color,vec3 pos) {return fog_apply(color,pos,1.0);}vec4 fog_apply_from_vert(vec4 color,float fog_opac) {float alpha=EPSILON+color.a;color.rgb=mix(color.rgb/alpha,u_fog_color.rgb,fog_opac)*alpha;return color;}vec3 fog_apply_sky_gradient(vec3 camera_ray,vec3 sky_color) {float horizon_blend=fog_horizon_blending(normalize(camera_ray));return mix(sky_color,u_fog_color.rgb,horizon_blend);}vec4 fog_apply_premultiplied(vec4 color,vec3 pos) {float alpha=EPSILON+color.a;color.rgb=fog_apply(color.rgb/alpha,pos)*alpha;return color;}vec4 fog_apply_premultiplied(vec4 color,vec3 pos,float heightMeters) {float verticalProgress=(u_fog_vertical_limit.x > 0.0 || u_fog_vertical_limit.y > 0.0) ? smoothstep(u_fog_vertical_limit.x,u_fog_vertical_limit.y,heightMeters) : 0.0;float opacityLimit=1.0-smoothstep(0.9,1.0,fog_opacity(pos));return mix(fog_apply_premultiplied(color,pos),color,min(verticalProgress,opacityLimit));}vec3 fog_dither(vec3 color) {\\n#ifdef FOG_DITHERING\\nvec2 dither_seed=gl_FragCoord.xy+u_fog_temporal_offset;return dither(color,dither_seed);\\n#else\\nreturn color;\\n#endif\\n}vec4 fog_dither(vec4 color) {return vec4(fog_dither(color.rgb),color.a);}\\n#endif\",kE=\"#ifdef RASTER_ARRAY\\nuniform sampler2D u_image0;uniform sampler2D u_image1;const vec4 NODATA=vec4(1);vec4 _raTexLinearCoord(vec2 texCoord,vec2 texResolution,out vec2 fxy) {texCoord=texCoord*texResolution-0.5;fxy=fract(texCoord);texCoord-=fxy;return (texCoord.xxyy+vec2(1.5,0.5).xyxy)/texResolution.xxyy;}vec2 _raTexLinearMix(vec2 fxy,vec4 colorMix,float colorOffset,vec4 t00,vec4 t10,vec4 t01,vec4 t11) {vec2 c00=t00==NODATA ? vec2(0) : vec2(colorOffset+dot(t00,colorMix),1);vec2 c10=t10==NODATA ? vec2(0) : vec2(colorOffset+dot(t10,colorMix),1);vec2 c01=t01==NODATA ? vec2(0) : vec2(colorOffset+dot(t01,colorMix),1);vec2 c11=t11==NODATA ? vec2(0) : vec2(colorOffset+dot(t11,colorMix),1);return mix(mix(c01,c11,fxy.x),mix(c00,c10,fxy.x),fxy.y);}vec2 raTexture2D_image0_linear(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec2 fxy;vec4 c=_raTexLinearCoord(texCoord,texResolution,fxy);return _raTexLinearMix(fxy,colorMix,colorOffset,texture(u_image0,c.yz),texture(u_image0,c.xz),texture(u_image0,c.yw),texture(u_image0,c.xw)\\n);}vec2 raTexture2D_image1_linear(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec2 fxy;vec4 c=_raTexLinearCoord(texCoord,texResolution,fxy);return _raTexLinearMix(fxy,colorMix,colorOffset,texture(u_image1,c.yz),texture(u_image1,c.xz),texture(u_image1,c.yw),texture(u_image1,c.xw)\\n);}vec2 raTexture2D_image0_nearest(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec4 t=texture(u_image0,texCoord);return t==NODATA ? vec2(0) : vec2(colorOffset+dot(t,colorMix),1);}vec2 raTexture2D_image1_nearest(vec2 texCoord,vec2 texResolution,vec4 colorMix,float colorOffset) {vec4 t=texture(u_image1,texCoord);return t==NODATA ? vec2(0) : vec2(colorOffset+dot(t,colorMix),1);}\\n#endif\",OE=\"#ifdef RENDER_SHADOWS\\nuniform mediump vec3 u_shadow_direction;uniform highp vec3 u_shadow_normal_offset;vec3 shadow_normal_offset(vec3 normal) {float tileInMeters=u_shadow_normal_offset[0];vec3 n=vec3(-normal.xy,tileInMeters*normal.z);float dotScale=min(1.0-dot(normal,u_shadow_direction),1.0)*0.5+0.5;return n*dotScale;}vec3 shadow_normal_offset_model(vec3 normal) {float dotScale=min(1.0-dot(normal,u_shadow_direction),1.0)*0.5+0.5;return normal*dotScale;}float shadow_normal_offset_multiplier0() {return u_shadow_normal_offset[1];}float shadow_normal_offset_multiplier1() {return u_shadow_normal_offset[2];}\\n#endif//RENDER_SHADOWS\",BE=\"#ifdef RENDER_SHADOWS\\n#ifdef DEPTH_TEXTURE\\nuniform highp sampler2D u_shadowmap_0;uniform highp sampler2D u_shadowmap_1;\\n#else\\nuniform sampler2D u_shadowmap_0;uniform sampler2D u_shadowmap_1;\\n#endif\\nuniform float u_shadow_intensity;uniform float u_shadow_map_resolution;uniform float u_shadow_texel_size;uniform highp vec3 u_shadow_normal_offset;uniform vec2 u_fade_range;uniform mediump vec3 u_shadow_direction;uniform highp vec3 u_shadow_bias;highp float shadow_sample_1(highp vec2 uv,highp float compare) {highp float shadow_depth;\\n#ifdef DEPTH_TEXTURE\\nshadow_depth=texture(u_shadowmap_1,uv).r;\\n#else\\nshadow_depth=unpack_depth(texture(u_shadowmap_1,uv))*0.5+0.5;\\n#endif\\nreturn step(shadow_depth,compare);}highp float shadow_sample_0(highp vec2 uv,highp float compare) {highp float shadow_depth;\\n#ifdef DEPTH_TEXTURE\\nshadow_depth=texture(u_shadowmap_0,uv).r;\\n#else\\nshadow_depth=unpack_depth(texture(u_shadowmap_0,uv))*0.5+0.5;\\n#endif\\nreturn step(shadow_depth,compare);}float shadow_occlusion_1(highp vec4 pos,highp float bias) {highp vec2 uv=pos.xy;return shadow_sample_1(uv,pos.z-bias);}float shadow_occlusion_0(highp vec4 pos,highp float bias) {highp float compare0=pos.z-bias;\\n#ifdef NATIVE\\nhighp vec2 uv=pos.xy;highp vec4 samples=textureGather(u_shadowmap_0,uv,0);lowp vec4 stepSamples=step(samples,vec4(compare0));\\n#else\\nhighp vec2 uv00=pos.xy-vec2(0.5*u_shadow_texel_size);highp vec2 uv10=uv00+vec2(u_shadow_texel_size,0.0);highp vec2 uv01=uv00+vec2(0.0,u_shadow_texel_size);highp vec2 uv11=uv01+vec2(u_shadow_texel_size,0.0);lowp vec4 stepSamples=vec4(\\nshadow_sample_0(uv01,compare0),shadow_sample_0(uv11,compare0),shadow_sample_0(uv10,compare0),shadow_sample_0(uv00,compare0)\\n);\\n#endif\\nvec2 f=fract(pos.xy*u_shadow_map_resolution-vec2(0.5));lowp vec2 lerpx=mix(stepSamples.wx,stepSamples.zy,f.xx);return mix(lerpx.x,lerpx.y,f.y);}float shadow_occlusion(highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth,highp float bias) {\\n#ifdef SHADOWS_SINGLE_CASCADE\\nlight_view_pos0.xyz=light_view_pos0.xyz/light_view_pos0.w*0.5+0.5;return shadow_occlusion_0(light_view_pos0,bias);\\n#else\\nlight_view_pos0.xyz/=light_view_pos0.w;light_view_pos1.xyz/=light_view_pos1.w;vec4 uv=vec4(light_view_pos0.xy,light_view_pos1.xy);vec4 abs_bounds=abs(uv);if (abs_bounds.x < 1.0 && abs_bounds.y < 1.0) {light_view_pos0.xyz=light_view_pos0.xyz*0.5+0.5;return shadow_occlusion_0(light_view_pos0,bias);}if (abs_bounds.z >=1.0 || abs_bounds.w >=1.0) {return 0.0;}light_view_pos1.xyz=light_view_pos1.xyz*0.5+0.5;float occlusion1=shadow_occlusion_1(light_view_pos1,bias);return mix(occlusion1,0.0,smoothstep(u_fade_range.x,u_fade_range.y,view_depth));\\n#endif\\n}highp float calculate_shadow_bias(float NDotL) {\\n#ifdef NORMAL_OFFSET\\nreturn 0.5*u_shadow_bias.x;\\n#else\\nreturn 0.5*(u_shadow_bias.x+clamp(u_shadow_bias.y*tan(acos(NDotL)),0.0,u_shadow_bias.z));\\n#endif\\n}float shadowed_light_factor_normal(vec3 N,highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float NDotL=dot(N,u_shadow_direction);float bias=calculate_shadow_bias(NDotL);float occlusion=shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);return mix(0.0,(1.0-(u_shadow_intensity*occlusion))*NDotL,step(0.0,NDotL));}float shadowed_light_factor_normal_unbiased(vec3 N,highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float NDotL=dot(N,u_shadow_direction);float bias=0.0;float occlusion=shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);return mix(0.0,(1.0-(u_shadow_intensity*occlusion))*NDotL,step(0.0,NDotL));}float shadowed_light_factor(highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float bias=0.0;float occlusion=shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);return 1.0-(u_shadow_intensity*occlusion);}float shadow_occlusion(float ndotl,highp vec4 light_view_pos0,highp vec4 light_view_pos1,float view_depth) {float bias=calculate_shadow_bias(ndotl);return shadow_occlusion(light_view_pos0,light_view_pos1,view_depth,bias);}\\n#endif\";const FE=[];qE(zE,FE);const NE={\"_prelude_fog.vertex.glsl\":RE,\"_prelude_terrain.vertex.glsl\":DE,\"_prelude_shadow.vertex.glsl\":OE,\"_prelude_fog.fragment.glsl\":LE,\"_prelude_shadow.fragment.glsl\":BE,\"_prelude_lighting.glsl\":\"\\n#ifdef LIGHTING_3D_MODE\\nuniform mediump vec3 u_lighting_ambient_color;uniform mediump vec3 u_lighting_directional_dir;uniform mediump vec3 u_lighting_directional_color;uniform mediump vec3 u_ground_radiance;float calculate_ambient_directional_factor(vec3 normal) {float NdotL=dot(normal,u_lighting_directional_dir);const float factor_reduction_max=0.3;float dir_luminance=dot(u_lighting_directional_color,vec3(0.2126,0.7152,0.0722));float directional_factor_min=1.0-factor_reduction_max*min(dir_luminance,1.0);float ambient_directional_factor=mix(directional_factor_min,1.0,min((NdotL+1.0),1.0));const float vertical_factor_min=0.92;float vertical_factor=mix(vertical_factor_min,1.0,normal.z*0.5+0.5);return vertical_factor*ambient_directional_factor;}vec3 linearProduct(vec3 srgbIn,vec3 k) {return srgbIn*pow(k,vec3(1./2.2));}vec3 apply_lighting(vec3 color,vec3 normal,float dir_factor) {float ambient_directional_factor=calculate_ambient_directional_factor(normal);vec3 ambient_contrib=ambient_directional_factor*u_lighting_ambient_color;vec3 directional_contrib=u_lighting_directional_color*dir_factor;return linearProduct(color,ambient_contrib+directional_contrib);}vec4 apply_lighting(vec4 color,vec3 normal,float dir_factor) {return vec4(apply_lighting(color.rgb,normal,dir_factor),color.a);}vec3 apply_lighting(vec3 color,vec3 normal) {float dir_factor=max(dot(normal,u_lighting_directional_dir),0.0);return apply_lighting(color.rgb,normal,dir_factor);}vec4 apply_lighting(vec4 color,vec3 normal) {float dir_factor=max(dot(normal,u_lighting_directional_dir),0.0);return vec4(apply_lighting(color.rgb,normal,dir_factor),color.a);}vec3 apply_lighting_ground(vec3 color) {return color*u_ground_radiance;}vec4 apply_lighting_ground(vec4 color) {return vec4(apply_lighting_ground(color.rgb),color.a);}float calculate_NdotL(vec3 normal) {const float ext=0.70710678118;return (clamp(dot(normal,u_lighting_directional_dir),-ext,1.0)+ext)/(1.0+ext);}vec4 apply_lighting_with_emission_ground(vec4 color,float emissive_strength) {return mix(apply_lighting_ground(color),color,emissive_strength);}vec3 compute_flood_lighting(vec3 flood_light_color,float fully_occluded_factor,float occlusion,vec3 ground_shadow_factor) {vec3 fully_occluded_color=flood_light_color*mix(ground_shadow_factor,vec3(1.0),fully_occluded_factor);float occlusion_ramp=smoothstep(0.0,0.2,1.0-occlusion);return mix(fully_occluded_color,flood_light_color,occlusion_ramp);}vec3 compute_emissive_draped(vec3 unlit_color,float fully_occluded_factor,float occlusion,vec3 ground_shadow_factor) {vec3 fully_occluded_color=unlit_color*mix(ground_shadow_factor,vec3(1.0),fully_occluded_factor);return mix(fully_occluded_color,unlit_color,1.0-occlusion);}\\n#endif//LIGHTING_3D_MODE\",\"_prelude_raster_array.glsl\":kE},UE={};ZE(\"\",DE),ZE(LE,RE),ZE(BE,OE),ZE(kE,\"\");const VE=ZE(\"\\nout vec4 glFragColor;highp float unpack_depth(highp vec4 rgba_depth)\\n{const highp vec4 bit_shift=vec4(1.0/(255.0*255.0*255.0),1.0/(255.0*255.0),1.0/255.0,1.0);return dot(rgba_depth,bit_shift)*2.0-1.0;}highp vec4 pack_depth(highp float ndc_z) {highp float depth=ndc_z*0.5+0.5;const highp vec4 bit_shift=vec4(255.0*255.0*255.0,255.0*255.0,255.0,1.0);const highp vec4 bit_mask =vec4(0.0,1.0/255.0,1.0/255.0,1.0/255.0);highp vec4 res=fract(depth*bit_shift);res-=res.xxyz*bit_mask;return res;}\\n#ifdef INDICATOR_CUTOUT\\nuniform vec2 u_indicator_cutout_centers;uniform vec4 u_indicator_cutout_params;\\n#endif\\nvec4 applyCutout(vec4 color) {\\n#ifdef INDICATOR_CUTOUT\\nfloat holeMinOpacity=u_indicator_cutout_params.x;float holeRadius=max(u_indicator_cutout_params.y,0.0);float holeAspectRatio=u_indicator_cutout_params.z;float fadeStart=u_indicator_cutout_params.w;float distA=distance(vec2(gl_FragCoord.x,gl_FragCoord.y*holeAspectRatio),vec2(u_indicator_cutout_centers[0],u_indicator_cutout_centers[1]*holeAspectRatio));return color*min(smoothstep(fadeStart,holeRadius,distA)+holeMinOpacity,1.0);\\n#else\\nreturn color;\\n#endif\\n}\\n#ifdef DEBUG_WIREFRAME\\n#define HANDLE_WIREFRAME_DEBUG \\\\\\nglFragColor=vec4(0.7,0.0,0.0,0.7); \\\\\\ngl_FragDepth=gl_FragCoord.z-0.0001;\\n#else\\n#define HANDLE_WIREFRAME_DEBUG\\n#endif\\n#ifdef RENDER_CUTOFF\\nuniform highp vec4 u_cutoff_params;in float v_cutoff_opacity;\\n#endif\",\"\\n#define EXTENT 8192.0\\n#define RAD_TO_DEG 180.0/PI\\n#define DEG_TO_RAD PI/180.0\\n#define GLOBE_RADIUS EXTENT/PI/2.0\\nfloat wrap(float n,float min,float max) {float d=max-min;float w=mod(mod(n-min,d)+d,d)+min;return (w==min) ? max : w;}\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 mercator_tile_position(mat4 matrix,vec2 tile_anchor,vec3 tile_id,vec2 mercator_center) {\\n#ifndef PROJECTED_POS_ON_VIEWPORT\\nfloat tiles=tile_id.z;vec2 mercator=(tile_anchor/EXTENT+tile_id.xy)/tiles;mercator-=mercator_center;mercator.x=wrap(mercator.x,-0.5,0.5);vec4 mercator_tile=vec4(mercator.xy*EXTENT,EXTENT/(2.0*PI),1.0);mercator_tile=matrix*mercator_tile;return mercator_tile.xyz;\\n#else\\nreturn vec3(0.0);\\n#endif\\n}vec3 mix_globe_mercator(vec3 globe,vec3 mercator,float t) {return mix(globe,mercator,t);}mat3 globe_mercator_surface_vectors(vec3 pos_normal,vec3 up_dir,float zoom_transition) {vec3 normal=zoom_transition==0.0 ? pos_normal : normalize(mix(pos_normal,up_dir,zoom_transition));vec3 xAxis=normalize(vec3(normal.z,0.0,-normal.x));vec3 yAxis=normalize(cross(normal,xAxis));return mat3(xAxis,yAxis,normal);}\\n#endif\\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(\\nunpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}float mercatorXfromLng(float lng) {return (180.0+lng)/360.0;}float mercatorYfromLat(float lat) {return (180.0-(RAD_TO_DEG*log(tan(PI/4.0+lat/2.0*DEG_TO_RAD))))/360.0;}vec3 latLngToECEF(vec2 latLng) {latLng=DEG_TO_RAD*latLng;float cosLat=cos(latLng[0]);float sinLat=sin(latLng[0]);float cosLng=cos(latLng[1]);float sinLng=sin(latLng[1]);float sx=cosLat*sinLng*GLOBE_RADIUS;float sy=-sinLat*GLOBE_RADIUS;float sz=cosLat*cosLng*GLOBE_RADIUS;return vec3(sx,sy,sz);}\\n#ifdef RENDER_CUTOFF\\nuniform vec4 u_cutoff_params;out float v_cutoff_opacity;\\n#endif\\nconst vec4 AWAY=vec4(-1000.0,-1000.0,-1000.0,1);const float skirtOffset=24575.0;vec3 decomposeToPosAndSkirt(vec2 posWithComposedSkirt)\\n{float skirt=float(posWithComposedSkirt.x >=skirtOffset);vec2 pos=posWithComposedSkirt-vec2(skirt*skirtOffset,0.0);return vec3(pos,skirt);}\"),jE=zE;var GE={background:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform vec4 u_color;uniform float u_opacity;\\n#ifdef LIGHTING_3D_MODE\\nin vec4 v_color;\\n#endif\\nvoid main() {vec4 out_color;\\n#ifdef LIGHTING_3D_MODE\\nout_color=v_color;\\n#else\\nout_color=u_color;\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\nglFragColor=out_color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nin vec2 a_pos;uniform mat4 u_matrix;\\n#ifdef LIGHTING_3D_MODE\\nuniform mediump vec4 u_color;out vec4 v_color;uniform float u_emissive_strength;\\n#endif\\nvoid main() {gl_Position=u_matrix*vec4(a_pos,0,1);\\n#ifdef LIGHTING_3D_MODE\\nv_color=apply_lighting_with_emission_ground(u_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}'),backgroundPattern:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform vec2 u_pattern_tl;uniform vec2 u_pattern_br;uniform vec2 u_texsize;uniform float u_opacity;uniform float u_emissive_strength;uniform sampler2D u_image;in vec2 v_pos;void main() {vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(u_pattern_tl/u_texsize,u_pattern_br/u_texsize,imagecoord);vec4 out_color=texture(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\nglFragColor=out_color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\nuniform mat4 u_matrix;uniform vec2 u_pattern_size;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;in vec2 a_pos;out vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_pattern_size,u_tile_units_to_pixels,a_pos);\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}'),circle:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nin vec3 v_data;in float v_visibility;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nuniform float u_emissive_strength;void main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(\\nantialiased_blur,0.0,extrude_length-radius/(radius+stroke_width)\\n);vec4 out_color=mix(color*opacity,stroke_color*stroke_opacity,color_t);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nout_color=fog_apply_premultiplied(out_color,v_fog_pos);\\n#endif\\nglFragColor=out_color*(v_visibility*opacity_t);\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\n}','#include \"_prelude_fog.vertex.glsl\"\\n#include \"_prelude_terrain.vertex.glsl\"\\n#define NUM_VISIBILITY_RINGS 2\\n#define INV_SQRT2 0.70710678\\n#define ELEVATION_BIAS 0.0001\\n#define NUM_SAMPLES_PER_RING 16\\nuniform mat4 u_matrix;uniform mat2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;in vec2 a_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\\n#endif\\nout vec3 v_data;out float v_visibility;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define mediump float radius\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define highp vec4 stroke_color\\n#pragma mapbox: define mediump float stroke_width\\n#pragma mapbox: define lowp float stroke_opacity\\nvec2 calc_offset(vec2 extrusion,float radius,float stroke_width, float view_scale) {return extrusion*(radius+stroke_width)*u_extrude_scale*view_scale;}float cantilevered_elevation(vec2 pos,float radius,float stroke_width,float view_scale) {vec2 c1=pos+calc_offset(vec2(-1,-1),radius,stroke_width,view_scale);vec2 c2=pos+calc_offset(vec2(1,-1),radius,stroke_width,view_scale);vec2 c3=pos+calc_offset(vec2(1,1),radius,stroke_width,view_scale);vec2 c4=pos+calc_offset(vec2(-1,1),radius,stroke_width,view_scale);float h1=elevation(c1)+ELEVATION_BIAS;float h2=elevation(c2)+ELEVATION_BIAS;float h3=elevation(c3)+ELEVATION_BIAS;float h4=elevation(c4)+ELEVATION_BIAS;return max(h4,max(h3,max(h1,h2)));}float circle_elevation(vec2 pos) {\\n#if defined(TERRAIN)\\nreturn elevation(pos)+ELEVATION_BIAS;\\n#else\\nreturn 0.0;\\n#endif\\n}vec4 project_vertex(vec2 extrusion,vec4 world_center,vec4 projected_center,float radius,float stroke_width, float view_scale,mat3 surface_vectors) {vec2 sample_offset=calc_offset(extrusion,radius,stroke_width,view_scale);\\n#ifdef PITCH_WITH_MAP\\n#ifdef PROJECTION_GLOBE_VIEW\\nreturn u_matrix*( world_center+vec4(sample_offset.x*surface_vectors[0]+sample_offset.y*surface_vectors[1],0) );\\n#else\\nreturn u_matrix*( world_center+vec4(sample_offset,0,0) );\\n#endif\\n#else\\nreturn projected_center+vec4(sample_offset,0,0);\\n#endif\\n}float get_sample_step() {\\n#ifdef PITCH_WITH_MAP\\nreturn 2.0*PI/float(NUM_SAMPLES_PER_RING);\\n#else\\nreturn PI/float(NUM_SAMPLES_PER_RING);\\n#endif\\n}void main(void) {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize mediump float radius\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize highp vec4 stroke_color\\n#pragma mapbox: initialize mediump float stroke_width\\n#pragma mapbox: initialize lowp float stroke_opacity\\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);vec4 world_center;mat3 surface_vectors;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 pos_normal_3=a_pos_normal_3/16384.0;surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(circle_center)*circle_elevation(circle_center);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*circle_elevation(circle_center);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,circle_center,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;vec3 pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);world_center=vec4(pos,1);\\n#else \\nsurface_vectors=mat3(1.0);float height=circle_elevation(circle_center);world_center=vec4(circle_center,height,1);\\n#endif\\nvec4 projected_center=u_matrix*world_center;float view_scale=0.0;\\n#ifdef PITCH_WITH_MAP\\n#ifdef SCALE_WITH_MAP\\nview_scale=1.0;\\n#else\\nview_scale=projected_center.w/u_camera_to_center_distance;\\n#endif\\n#else\\n#ifdef SCALE_WITH_MAP\\nview_scale=u_camera_to_center_distance;\\n#else\\nview_scale=projected_center.w;\\n#endif\\n#endif\\ngl_Position=project_vertex(extrude,world_center,projected_center,radius,stroke_width,view_scale,surface_vectors);float visibility=0.0;\\n#ifdef TERRAIN\\nfloat step=get_sample_step();vec4 occlusion_world_center;vec4 occlusion_projected_center;\\n#ifdef PITCH_WITH_MAP\\nfloat cantilevered_height=cantilevered_elevation(circle_center,radius,stroke_width,view_scale);occlusion_world_center=vec4(circle_center,cantilevered_height,1);occlusion_projected_center=u_matrix*occlusion_world_center;\\n#else\\nocclusion_world_center=world_center;occlusion_projected_center=projected_center;\\n#endif\\nfor(int ring=0; ring < NUM_VISIBILITY_RINGS; ring++) {float scale=(float(ring)+1.0)/float(NUM_VISIBILITY_RINGS);for(int i=0; i < NUM_SAMPLES_PER_RING; i++) {vec2 extrusion=vec2(cos(step*float(i)),-sin(step*float(i)))*scale;vec4 frag_pos=project_vertex(extrusion,occlusion_world_center,occlusion_projected_center,radius,stroke_width,view_scale,surface_vectors);visibility+=float(!isOccluded(frag_pos));}}visibility/=float(NUM_VISIBILITY_RINGS)*float(NUM_SAMPLES_PER_RING);\\n#else\\nvisibility=1.0;\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nvisibility=1.0;\\n#endif\\nv_visibility=visibility;lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);\\n#ifdef FOG\\nv_fog_pos=fog_position(world_center.xyz);\\n#endif\\n}'),clippingMask:ZE(\"void main() {glFragColor=vec4(1.0);}\",\"in vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}\"),heatmap:ZE('#include \"_prelude_fog.fragment.glsl\"\\nuniform highp float u_intensity;in vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main() {\\n#pragma mapbox: initialize highp float weight\\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);glFragColor=vec4(val,1.0,1.0,1.0);\\n#ifdef FOG\\nif (u_is_globe==0) {glFragColor.r*=pow(1.0-fog_opacity(v_fog_pos),2.0);}\\n#endif\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_terrain.vertex.glsl\"\\n#include \"_prelude_fog.vertex.glsl\"\\nuniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;in vec2 a_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;\\n#endif\\nout vec2 v_extrude;\\n#pragma mapbox: define highp float weight\\n#pragma mapbox: define mediump float radius\\nconst highp float ZERO=1.0/255.0/16.0;\\n#define GAUSS_COEF 0.3989422804014327\\nvoid main(void) {\\n#pragma mapbox: initialize highp float weight\\n#pragma mapbox: initialize mediump float radius\\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec2 tilePos=floor(a_pos*0.5);vec3 pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 pos_normal_3=a_pos_normal_3/16384.0;mat3 surface_vectors=globe_mercator_surface_vectors(pos_normal_3,u_up_dir,u_zoom_transition);vec3 surface_extrusion=extrude.x*surface_vectors[0]+extrude.y*surface_vectors[1];vec3 globe_elevation=elevationVector(tilePos)*elevation(tilePos);vec3 globe_pos=a_pos_3+surface_extrusion+globe_elevation;vec3 mercator_elevation=u_up_dir*u_tile_up_scale*elevation(tilePos);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,tilePos,u_tile_id,u_merc_center)+surface_extrusion+mercator_elevation;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\\n#else\\npos=vec3(tilePos+extrude,elevation(tilePos));\\n#endif\\ngl_Position=u_matrix*vec4(pos,1);\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n}'),heatmapTexture:ZE(\"uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;in vec2 v_pos;void main() {float t=texture(u_image,v_pos).r;vec4 color=texture(u_color_ramp,vec2(t,0.5));glFragColor=color*u_opacity;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(0.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}\",\"in vec2 a_pos;out vec2 v_pos;void main() {gl_Position=vec4(a_pos,0,1);v_pos=a_pos*0.5+0.5;}\"),collisionBox:ZE(\"in float v_placed;in float v_notUsed;void main() {vec4 red =vec4(1.0,0.0,0.0,1.0);vec4 blue=vec4(0.0,0.0,1.0,0.5);glFragColor =mix(red,blue,step(0.5,v_placed))*0.5;glFragColor*=mix(1.0,0.1,step(0.5,v_notUsed));}\",'#include \"_prelude_terrain.vertex.glsl\"\\nin vec3 a_pos;in vec2 a_anchor_pos;in vec2 a_extrude;in vec2 a_placed;in vec2 a_shift;in float a_size_scale;in vec2 a_padding;in float a_z_offset;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;out float v_placed;out float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_pos+elevationVector(a_anchor_pos)*(a_z_offset+elevation(a_anchor_pos)),1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(\\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,1.5);gl_Position=projectedPoint;gl_Position.xy+=(a_extrude*a_size_scale+a_shift+a_padding)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}'),collisionCircle:ZE(\"in float v_radius;in vec2 v_extrude;in float v_perspective_ratio;in float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);glFragColor=color*alpha*opacity_t;}\",\"in vec2 a_pos_2f;in float a_radius;in vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;out float v_radius;out vec2 v_extrude;out float v_perspective_ratio;out float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos_2f;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(\\nmix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(\\n0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}\"),debug:ZE(\"uniform highp vec4 u_color;uniform sampler2D u_overlay;in vec2 v_uv;void main() {vec4 overlay_color=texture(u_overlay,v_uv);glFragColor=mix(u_color,overlay_color,overlay_color.a);}\",'#include \"_prelude_terrain.vertex.glsl\"\\nin vec2 a_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_pos_3;\\n#endif\\nout vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {float h=elevation(a_pos);v_uv=a_pos/8192.0;\\n#ifdef PROJECTION_GLOBE_VIEW\\ngl_Position=u_matrix*vec4(a_pos_3+elevationVector(a_pos)*h,1);\\n#else\\ngl_Position=u_matrix*vec4(a_pos*u_overlay_scale,h,1);\\n#endif\\n}'),fill:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\nuniform float u_emissive_strength;void main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float opacity\\nvec4 out_color=color;\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\nglFragColor=out_color*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\nin vec2 a_pos;uniform mat4 u_matrix;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float opacity\\ngl_Position=u_matrix*vec4(a_pos,0,1);\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}'),fillOutline:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nin vec2 v_pos;uniform float u_emissive_strength;\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 outline_color\\n#pragma mapbox: initialize lowp float opacity\\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=outline_color;\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\nglFragColor=out_color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\nin vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;out vec2 v_pos;\\n#pragma mapbox: define highp vec4 outline_color\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 outline_color\\n#pragma mapbox: initialize lowp float opacity\\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}'),fillOutlinePattern:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_emissive_strength;in vec2 v_pos;in vec2 v_pos_world;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);float dist=length(v_pos_world-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);vec4 out_color=texture(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\nglFragColor=out_color*(alpha*opacity);\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\nuniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;in vec2 a_pos;out vec2 v_pos;out vec2 v_pos_world;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);v_pos_world=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}'),fillPattern:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform vec2 u_texsize;uniform sampler2D u_image;in vec2 v_pos;uniform float u_emissive_strength;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\nglFragColor=out_color*opacity;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\nuniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_tile_units_to_pixels;in vec2 a_pos;out vec2 v_pos;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,a_pos);\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}'),fillExtrusion:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_shadow.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nin vec4 v_color;in vec4 v_flat;\\n#ifdef RENDER_SHADOWS\\nin highp vec4 v_pos_light_view_0;in highp vec4 v_pos_light_view_1;in float v_depth;\\n#endif\\nuniform lowp float u_opacity;\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;in vec2 v_ao;\\n#endif\\n#if defined(ZERO_ROOF_RADIUS) && !defined(LIGHTING_3D_MODE)\\nin vec4 v_roof_color;\\n#endif\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\\nin highp vec3 v_normal;\\n#endif\\nuniform vec3 u_flood_light_color;uniform highp float u_vertical_scale;uniform float u_flood_light_intensity;uniform vec3 u_ground_shadow_factor;\\n#if defined(LIGHTING_3D_MODE) && defined(FLOOD_LIGHT)\\nin float v_flood_radius;in float v_has_floodlight;\\n#endif\\nuniform float u_emissive_strength;in float v_height;void main() {\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\\nvec3 normal=normalize(v_normal);\\n#endif\\nfloat z;vec4 color=v_color;\\n#ifdef ZERO_ROOF_RADIUS\\nz=float(normal.z > 0.00001);\\n#ifdef LIGHTING_3D_MODE\\nnormal=mix(normal,vec3(0.0,0.0,1.0),z);\\n#else\\ncolor=mix(v_color,v_roof_color,z);\\n#endif\\n#endif\\nfloat h=max(0.0,v_height);float ao_shade=1.0;\\n#ifdef FAUX_AO\\nfloat intensity=u_ao[0];float h_floors=h/(u_ao[1]*u_vertical_scale);float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);ao_shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;\\n#ifdef ZERO_ROOF_RADIUS\\nconcave*=(1.0-z);\\n#endif\\nfloat x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);ao_shade*=mix(1.0,x_shade*x_shade*x_shade,concave);\\n#ifdef LIGHTING_3D_MODE\\n#ifdef FLOOD_LIGHT\\ncolor.rgb*=mix(ao_shade,1.0,v_has_floodlight);\\n#else\\ncolor.rgb*=ao_shade;\\n#endif\\n#else\\ncolor.rgb*=ao_shade;\\n#endif\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nfloat flood_radiance=0.0;\\n#ifdef FLOOD_LIGHT\\nflood_radiance=(1.0-min(h/v_flood_radius,1.0))*u_flood_light_intensity*v_has_floodlight;\\n#endif\\n#ifdef RENDER_SHADOWS\\n#ifdef FLOOD_LIGHT\\nfloat ndotl_unclamped=dot(normal,u_shadow_direction);float ndotl=max(0.0,ndotl_unclamped);float occlusion=ndotl_unclamped < 0.0 ? 1.0 : shadow_occlusion(ndotl,v_pos_light_view_0,v_pos_light_view_1,v_depth);vec3 litColor=apply_lighting(color.rgb,normal,(1.0-u_shadow_intensity*occlusion)*ndotl);vec3 floodLitColor=compute_flood_lighting(u_flood_light_color*u_opacity,1.0-u_shadow_intensity,occlusion,u_ground_shadow_factor);color.rgb=mix(litColor,floodLitColor,flood_radiance);\\n#else\\nfloat shadowed_lighting_factor=shadowed_light_factor_normal(normal,v_pos_light_view_0,v_pos_light_view_1,v_depth);color.rgb=apply_lighting(color.rgb,normal,shadowed_lighting_factor);\\n#endif\\n#else\\ncolor.rgb=apply_lighting(color.rgb,normal);\\n#ifdef FLOOD_LIGHT\\ncolor.rgb=mix(color.rgb,u_flood_light_color*u_opacity,flood_radiance);\\n#endif\\n#endif\\ncolor.rgb=mix(color.rgb,v_flat.rgb,u_emissive_strength);color*=u_opacity;\\n#endif\\n#ifdef FOG\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos,h));\\n#endif\\n#ifdef RENDER_CUTOFF\\ncolor*=v_cutoff_opacity;\\n#endif\\n#ifdef INDICATOR_CUTOUT\\ncolor=applyCutout(color);\\n#endif\\nglFragColor=color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#include \"_prelude_terrain.vertex.glsl\"\\n#include \"_prelude_shadow.vertex.glsl\"\\n#include \"_prelude_lighting.glsl\"\\n#ifdef RENDER_CUTOFF\\ninvariant gl_Position;\\n#endif\\nuniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform float u_edge_radius;in vec4 a_pos_normal_ed;in vec2 a_centroid_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\\n#endif\\nuniform highp float u_vertical_scale;out vec4 v_color;out vec4 v_flat;\\n#ifdef RENDER_SHADOWS\\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;out highp vec4 v_pos_light_view_0;out highp vec4 v_pos_light_view_1;out float v_depth;\\n#endif\\n#if defined(ZERO_ROOF_RADIUS) && !defined(LIGHTING_3D_MODE)\\nout vec4 v_roof_color;\\n#endif\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\\nout highp vec3 v_normal;\\n#endif\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;out vec2 v_ao;\\n#endif\\n#if defined(LIGHTING_3D_MODE) && defined(FLOOD_LIGHT)\\nout float v_flood_radius;out float v_has_floodlight;\\n#endif\\nout float v_height;\\n#pragma mapbox: define highp float base\\n#pragma mapbox: define highp float height\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define highp float flood_light_wall_radius\\nvoid main() {\\n#pragma mapbox: initialize highp float base\\n#pragma mapbox: initialize highp float height\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize highp float flood_light_wall_radius\\nbase*=u_vertical_scale;height*=u_vertical_scale;vec4 pos_nx=floor(a_pos_normal_ed*0.5);vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));\\n#if defined(ZERO_ROOF_RADIUS) || defined(RENDER_SHADOWS) || defined(LIGHTING_3D_MODE)\\nv_normal=normal;\\n#endif\\nbase=max(0.0,base);height=max(0.0,top_up_ny.y==0.0 && top_up_ny.x==1.0 ? height-u_edge_radius : height);float t=top_up_ny.x;vec2 centroid_pos=vec2(0.0);\\n#if defined(HAS_CENTROID) || defined(TERRAIN)\\ncentroid_pos=a_centroid_pos;\\n#endif\\nfloat ele=0.0;float h=0.0;float c_ele;vec3 pos;\\n#ifdef TERRAIN\\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);pos=vec3(pos_nx.xy,h);\\n#else\\nh=t > 0.0 ? height : base;pos=vec3(pos_nx.xy,h);\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*h);vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,pos.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*pos.z;pos=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\\n#endif\\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(pos,1),AWAY,hidden);h=h-ele;v_height=h;\\n#ifdef RENDER_SHADOWS\\nvec3 shd_pos0=pos;vec3 shd_pos1=pos;\\n#ifdef NORMAL_OFFSET\\nvec3 offset=shadow_normal_offset(normal);shd_pos0+=offset*shadow_normal_offset_multiplier0();shd_pos1+=offset*shadow_normal_offset_multiplier1();\\n#endif\\nv_pos_light_view_0=u_light_matrix_0*vec4(shd_pos0,1);v_pos_light_view_1=u_light_matrix_1*vec4(shd_pos1,1);v_depth=gl_Position.w;\\n#endif\\nfloat NdotL=0.0;float colorvalue=0.0;\\n#ifndef LIGHTING_3D_MODE\\ncolorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;NdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),NdotL);if (normal.y !=0.0) {float r=0.84;r=mix(0.7,0.98,1.0-u_lightintensity);NdotL*=(\\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}\\n#endif\\n#ifdef FAUX_AO\\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\\n#ifdef TERRAIN\\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\\n#endif\\nv_ao=vec2(mix(concave,-concave,start),y_ground);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\\n#ifdef PROJECTION_GLOBE_VIEW\\ntop_height+=u_height_lift;\\n#endif\\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\n#ifdef FLOOD_LIGHT\\nfloat is_wall=1.0-float(t > 0.0 && top_up_ny.y > 0.0);v_has_floodlight=float(flood_light_wall_radius > 0.0 && is_wall > 0.0);v_flood_radius=flood_light_wall_radius*u_vertical_scale;\\n#endif\\nv_color=vec4(color.rgb,1.0);v_flat=vec4(linearProduct(color.rgb,vec3(calculate_NdotL(normal))),1.0);\\n#else\\nv_color=vec4(0.0,0.0,0.0,1.0);v_color.rgb+=clamp(color.rgb*NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_color*=u_opacity;\\n#endif\\n#if defined(ZERO_ROOF_RADIUS) && !defined(LIGHTING_3D_MODE)\\nfloat roofNdotL=clamp(u_lightpos.z,0.0,1.0);roofNdotL=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),roofNdotL);v_roof_color=vec4(0.0,0.0,0.0,1.0);v_roof_color.rgb+=clamp(color.rgb*roofNdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_roof_color*=u_opacity;\\n#endif\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n#ifdef RENDER_CUTOFF\\nv_cutoff_opacity=cutoff_opacity(u_cutoff_params,gl_Position.z);\\n#endif\\n}'),fillExtrusionDepth:ZE(\"in highp float v_depth;void main() {\\n#ifndef DEPTH_TEXTURE\\nglFragColor=pack_depth(v_depth);\\n#endif\\n}\",'#include \"_prelude_terrain.vertex.glsl\"\\nuniform mat4 u_matrix;uniform float u_edge_radius;uniform float u_vertical_scale;in vec4 a_pos_normal_ed;in vec2 a_centroid_pos;\\n#pragma mapbox: define highp float base\\n#pragma mapbox: define highp float height\\nout highp float v_depth;void main() {\\n#pragma mapbox: initialize highp float base\\n#pragma mapbox: initialize highp float height\\nbase*=u_vertical_scale;height*=u_vertical_scale;vec3 pos_nx=floor(a_pos_normal_ed.xyz*0.5);mediump vec3 top_up_ny=a_pos_normal_ed.xyz-2.0*pos_nx;base=max(0.0,base);height=max(0.0,top_up_ny.y==0.0 && top_up_ny.x==1.0 ? height-u_edge_radius : height);float t=top_up_ny.x;vec2 centroid_pos=vec2(0.0);\\n#if defined(HAS_CENTROID) || defined(TERRAIN)\\ncentroid_pos=a_centroid_pos;\\n#endif\\nvec3 pos;\\n#ifdef TERRAIN\\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;float ele=elevation(pos_nx.xy);float c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;float h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base);pos=vec3(pos_nx.xy,h);\\n#else\\npos=vec3(pos_nx.xy,t > 0.0 ? height : base);\\n#endif\\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(pos,1),AWAY,hidden);v_depth=gl_Position.z/gl_Position.w;}'),fillExtrusionPattern:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform vec2 u_texsize;uniform sampler2D u_image;\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;in vec3 v_ao;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nin vec3 v_normal;\\n#endif\\nin vec2 v_pos;in vec4 v_lighting;uniform lowp float u_opacity;\\n#pragma mapbox: define highp float base\\n#pragma mapbox: define highp float height\\n#pragma mapbox: define mediump vec4 pattern\\n#pragma mapbox: define highp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize highp float base\\n#pragma mapbox: initialize highp float height\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize highp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 imagecoord=mod(v_pos,1.0);vec2 pos=mix(pattern_tl/u_texsize,pattern_br/u_texsize,imagecoord);vec4 out_color=texture(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting(out_color,normalize(v_normal))*u_opacity;\\n#else\\nout_color=out_color*v_lighting;\\n#endif\\n#ifdef FAUX_AO\\nfloat intensity=u_ao[0];float h=max(0.0,v_ao.z);float h_floors=h/u_ao[1];float y_shade=1.0-0.9*intensity*min(v_ao.y,1.0);float shade=(1.0-0.08*intensity)*(y_shade+(1.0-y_shade)*(1.0-pow(1.0-min(h_floors/16.0,1.0),16.0)))+0.08*intensity*min(h_floors/160.0,1.0);float concave=v_ao.x*v_ao.x;float x_shade=mix(1.0,mix(0.6,0.75,min(h_floors/30.0,1.0)),intensity)+0.1*intensity*min(h,1.0);shade*=mix(1.0,x_shade*x_shade*x_shade,concave);out_color.rgb=out_color.rgb*shade;\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\n#ifdef INDICATOR_CUTOUT\\nout_color=applyCutout(out_color);\\n#endif\\nglFragColor=out_color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#include \"_prelude_terrain.vertex.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform float u_tile_units_to_pixels;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;in vec4 a_pos_normal_ed;in vec2 a_centroid_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_pos_3;in vec3 a_pos_normal_3;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_tile_id;uniform float u_zoom_transition;uniform vec3 u_up_dir;uniform float u_height_lift;\\n#endif\\nout vec2 v_pos;out vec4 v_lighting;\\n#ifdef FAUX_AO\\nuniform lowp vec2 u_ao;out vec3 v_ao;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nout vec3 v_normal;\\n#endif\\n#pragma mapbox: define highp float base\\n#pragma mapbox: define highp float height\\n#pragma mapbox: define mediump vec4 pattern\\n#pragma mapbox: define highp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize highp float base\\n#pragma mapbox: initialize highp float height\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize highp float pixel_ratio\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec4 pos_nx=floor(a_pos_normal_ed*0.5);mediump vec4 top_up_ny_start=a_pos_normal_ed-2.0*pos_nx;mediump vec3 top_up_ny=top_up_ny_start.xyz;float x_normal=pos_nx.z/8192.0;vec3 normal=top_up_ny.y==1.0 ? vec3(0.0,0.0,1.0) : normalize(vec3(x_normal,(2.0*top_up_ny.z-1.0)*(1.0-abs(x_normal)),0.0));float edgedistance=a_pos_normal_ed.w;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;base=max(0.0,base);height=max(0.0,height);float t=top_up_ny.x;float z=t > 0.0 ? height : base;vec2 centroid_pos=vec2(0.0);\\n#if defined(HAS_CENTROID) || defined(TERRAIN)\\ncentroid_pos=a_centroid_pos;\\n#endif\\nfloat ele=0.0;float h=z;vec3 p;float c_ele;\\n#ifdef TERRAIN\\nbool flat_roof=centroid_pos.x !=0.0 && t > 0.0;ele=elevation(pos_nx.xy);c_ele=flat_roof ? centroid_pos.y==0.0 ? elevationFromUint16(centroid_pos.x) : flatElevation(centroid_pos) : ele;h=flat_roof ? max(c_ele+height,ele+base+2.0) : ele+(t > 0.0 ? height : base==0.0 ?-5.0 : base);p=vec3(pos_nx.xy,h);\\n#else\\np=vec3(pos_nx.xy,z);\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nfloat lift=float((t+base) > 0.0)*u_height_lift;h+=lift;vec3 globe_normal=normalize(mix(a_pos_normal_3/16384.0,u_up_dir,u_zoom_transition));vec3 globe_pos=a_pos_3+globe_normal*(u_tile_up_scale*(p.z+lift));vec3 merc_pos=mercator_tile_position(u_inv_rot_matrix,p.xy,u_tile_id,u_merc_center)+u_up_dir*u_tile_up_scale*p.z;p=mix_globe_mercator(globe_pos,merc_pos,u_zoom_transition);\\n#endif\\nfloat hidden=float(centroid_pos.x==0.0 && centroid_pos.y==1.0);gl_Position=mix(u_matrix*vec4(p,1),AWAY,hidden);vec2 pos=normal.z==1.0\\n? pos_nx.xy\\n: vec2(edgedistance,z*u_height_factor);v_pos=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,display_size,u_tile_units_to_pixels,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float NdotL=0.0;\\n#ifdef LIGHTING_3D_MODE\\nNdotL=calculate_NdotL(normal);\\n#else\\nNdotL=clamp(dot(normal,u_lightpos),0.0,1.0);NdotL=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),NdotL);\\n#endif\\nif (normal.y !=0.0) {float r=0.84;\\n#ifndef LIGHTING_3D_MODE\\nr=mix(0.7,0.98,1.0-u_lightintensity);\\n#endif\\nNdotL*=(\\n(1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),r,1.0)));}\\n#ifdef FAUX_AO\\nfloat concave=pos_nx.w-floor(pos_nx.w*0.5)*2.0;float start=top_up_ny_start.w;float y_ground=1.0-clamp(t+base,0.0,1.0);float top_height=height;\\n#ifdef TERRAIN\\ntop_height=mix(max(c_ele+height,ele+base+2.0),ele+height,float(centroid_pos.x==0.0))-ele;y_ground+=y_ground*5.0/max(3.0,top_height);\\n#endif\\nv_ao=vec3(mix(concave,-concave,start),y_ground,h-ele);NdotL*=(1.0+0.05*(1.0-top_up_ny.y)*u_ao[0]);\\n#ifdef PROJECTION_GLOBE_VIEW\\ntop_height+=u_height_lift;\\n#endif\\ngl_Position.z-=(0.0000006*(min(top_height,500.)+2.0*min(base,500.0)+60.0*concave+3.0*start))*gl_Position.w;\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nv_normal=normal;\\n#else\\nv_lighting.rgb+=clamp(NdotL*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;\\n#endif \\n#ifdef FOG\\nv_fog_pos=fog_position(p);\\n#endif\\n}'),groundShadow:ZE('#include \"_prelude_shadow.fragment.glsl\"\\nprecision highp float;uniform vec3 u_ground_shadow_factor;in vec4 v_pos_light_view_0;in vec4 v_pos_light_view_1;in float v_depth;\\n#ifdef FOG\\nin float v_fog_opacity;\\n#endif\\nvoid main() {float light=shadowed_light_factor(v_pos_light_view_0,v_pos_light_view_1,v_depth);vec3 shadow=mix(u_ground_shadow_factor,vec3(1.0),light);\\n#ifdef RENDER_CUTOFF\\nshadow=mix(vec3(1.0),shadow,cutoff_opacity(u_cutoff_params,v_depth));\\n#endif\\n#ifdef FOG\\nshadow=mix(shadow,vec3(1.0),v_fog_opacity);\\n#endif\\n#ifdef INDICATOR_CUTOUT\\nshadow=mix(shadow,vec3(1.0),1.0-applyCutout(vec4(1.0)).r);\\n#endif\\nglFragColor=vec4(shadow,1.0);}','#include \"_prelude_fog.vertex.glsl\"\\nuniform mat4 u_matrix;uniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;in vec2 a_pos;out vec4 v_pos_light_view_0;out vec4 v_pos_light_view_1;out float v_depth;\\n#ifdef FOG\\nout float v_fog_opacity;\\n#endif\\nvoid main() {gl_Position=u_matrix*vec4(a_pos,0.0,1.0);v_pos_light_view_0=u_light_matrix_0*vec4(a_pos,0.0,1.0);v_pos_light_view_1=u_light_matrix_1*vec4(a_pos,0.0,1.0);v_depth=gl_Position.w;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);v_fog_opacity=fog(v_fog_pos);\\n#endif\\n}'),fillExtrusionGroundEffect:ZE(\"uniform highp float u_ao_pass;uniform highp float u_opacity;uniform highp float u_flood_light_intensity;uniform highp vec3 u_flood_light_color;uniform highp float u_attenuation;uniform sampler2D u_fb;uniform float u_fb_size;\\n#ifdef SDF_SUBPASS\\nin highp vec2 v_pos;in highp vec4 v_line_segment;in highp float v_flood_light_radius_tile;in highp vec2 v_ao;float line_df(highp vec2 a,highp vec2 b,highp vec2 p) {highp vec2 ba=b-a;highp vec2 pa=p-a;highp float r=clamp(dot(pa,ba)/dot(ba,ba),0.0,1.0);return length(pa-r*ba);}\\n#ifdef FOG\\nin highp float v_fog;\\n#endif\\n#endif\\nvoid main() {\\n#ifdef CLEAR_SUBPASS\\nvec4 color=vec4(1.0);\\n#ifdef CLEAR_FROM_TEXTURE\\ncolor=texture(u_fb,gl_FragCoord.xy/vec2(u_fb_size));\\n#endif\\nglFragColor=color;\\n#else\\n#ifdef SDF_SUBPASS\\nhighp float d=line_df(v_line_segment.xy,v_line_segment.zw,v_pos);highp float effect_radius=mix(v_flood_light_radius_tile,v_ao.y,u_ao_pass);d/=effect_radius;d=min(d,1.0);d=1.0-pow(1.0-d,u_attenuation);highp float effect_intensity=mix(u_flood_light_intensity,v_ao.x,u_ao_pass);highp float fog=1.0;\\n#ifdef FOG\\nfog=v_fog;\\n#endif\\n#ifdef RENDER_CUTOFF\\nfog*=v_cutoff_opacity;\\n#endif\\nglFragColor=vec4(vec3(0.0),mix(1.0,d,effect_intensity*u_opacity*fog));\\n#else\\nvec4 color=mix(vec4(u_flood_light_color,1.0),vec4(vec3(0.0),1.0),u_ao_pass);\\n#ifdef OVERDRAW_INSPECTOR\\ncolor=vec4(1.0);\\n#endif\\nglFragColor=color;HANDLE_WIREFRAME_DEBUG;\\n#endif\\n#endif\\n}\",'#include \"_prelude_fog.vertex.glsl\"\\nin highp vec4 a_pos_end;in highp float a_angular_offset_factor;in highp float a_hidden_by_landmark;\\n#ifdef SDF_SUBPASS\\nout highp vec2 v_pos;out highp vec4 v_line_segment;out highp float v_flood_light_radius_tile;out highp vec2 v_ao;\\n#ifdef FOG\\nout highp float v_fog;\\n#endif\\n#endif\\nuniform highp float u_flood_light_intensity;uniform highp mat4 u_matrix;uniform highp float u_ao_pass;uniform highp float u_meter_to_tile;uniform highp float u_edge_radius;uniform highp vec2 u_ao;\\n#pragma mapbox: define highp float flood_light_ground_radius\\nconst float TANGENT_CUTOFF=4.0;const float NORM=32767.0;void main() {\\n#pragma mapbox: initialize highp float flood_light_ground_radius\\nvec2 p=a_pos_end.xy;vec2 q=floor(a_pos_end.zw*0.5);vec2 start_bottom=a_pos_end.zw-q*2.0;float fl_ground_radius=flood_light_ground_radius;\\n#ifdef FORCE_ABS_FL_GROUND_RADIUS\\nfl_ground_radius=abs(flood_light_ground_radius);\\n#endif\\nfloat flood_radius_tile=fl_ground_radius*u_meter_to_tile;vec2 v=normalize(q-p);float ao_radius=u_ao.y/3.5;float effect_radius=mix(flood_radius_tile,ao_radius,u_ao_pass)+u_edge_radius;float angular_offset_factor=a_angular_offset_factor/NORM*TANGENT_CUTOFF;float angular_offset=angular_offset_factor*effect_radius;float top=1.0-start_bottom.y;float side=(0.5-start_bottom.x)*2.0;vec2 extrusion_parallel=v*side*mix(1.0,angular_offset,top);vec2 perp=vec2(v.y,-v.x);vec2 extrusion_perp=perp*effect_radius*top;vec3 pos=vec3(mix(q,p,start_bottom.x),0.0);pos.xy+=extrusion_parallel+extrusion_perp;\\n#ifdef SDF_SUBPASS\\nv_pos=pos.xy;v_line_segment=vec4(p,q)+perp.xyxy*u_edge_radius;v_flood_light_radius_tile=flood_radius_tile;v_ao=vec2(u_ao.x,ao_radius);\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);v_fog=1.0-fog(v_fog_pos);\\n#endif\\n#endif\\nfloat hidden_by_landmark=0.0;\\n#ifdef HAS_CENTROID\\nhidden_by_landmark=a_hidden_by_landmark;\\n#endif\\nfloat isFloodlit=float(fl_ground_radius > 0.0 && u_flood_light_intensity > 0.0);float hidden=mix(1.0-isFloodlit,isFloodlit,u_ao_pass);hidden+=hidden_by_landmark;gl_Position=mix(u_matrix*vec4(pos,1.0),AWAY,float(hidden > 0.0));\\n#ifdef RENDER_CUTOFF\\nv_cutoff_opacity=cutoff_opacity(u_cutoff_params,gl_Position.z);\\n#endif\\n}'),hillshadePrepare:ZE(\"precision highp float;uniform sampler2D u_image;in vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;float getElevation(vec2 coord) {return texture(u_image,coord).r/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y));float b=getElevation(v_pos+vec2(0,-epsilon.y));float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y));float d=getElevation(v_pos+vec2(-epsilon.x,0));float e=getElevation(v_pos+vec2(epsilon.x,0));float f=getElevation(v_pos+vec2(-epsilon.x,epsilon.y));float g=getElevation(v_pos+vec2(0,epsilon.y));float h=getElevation(v_pos+vec2(epsilon.x,epsilon.y));float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2(\\n(c+e+e+h)-(a+d+d+f),(f+g+g+h)-(a+b+b+c)\\n)/pow(2.0,exaggeration+(19.2562-u_zoom));glFragColor=clamp(vec4(\\nderiv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);}\",\"uniform mat4 u_matrix;uniform vec2 u_dimension;in vec2 a_pos;in vec2 a_texture_pos;out vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}\"),hillshade:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform sampler2D u_image;in vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;uniform float u_emissive_strength;void main() {vec4 pixel=texture(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);glFragColor=accent_color*(1.0-shade_color.a)+shade_color;\\n#ifdef LIGHTING_3D_MODE\\nglFragColor=apply_lighting_with_emission_ground(glFragColor,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nglFragColor=fog_dither(fog_apply_premultiplied(glFragColor,v_fog_pos));\\n#endif\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\nuniform mat4 u_matrix;in vec2 a_pos;in vec2 a_texture_pos;out vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\n}'),line:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform lowp float u_device_pixel_ratio;uniform float u_alpha_discard_threshold;uniform highp vec2 u_trim_offset;in vec2 v_width2;in vec2 v_normal;in float v_gamma_scale;in highp vec4 v_uv;\\n#ifdef RENDER_LINE_DASH\\nuniform sampler2D u_dash_image;in vec2 v_tex;\\n#endif\\n#ifdef RENDER_LINE_GRADIENT\\nuniform sampler2D u_gradient_image;\\n#endif\\nfloat luminance(vec3 c) {return (c.r+c.r+c.b+c.g+c.g+c.g)*0.1667;}uniform float u_emissive_strength;\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float floorwidth\\n#pragma mapbox: define lowp vec4 dash\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float border_width\\n#pragma mapbox: define lowp vec4 border_color\\nfloat linearstep(float edge0,float edge1,float x) {return clamp((x-edge0)/(edge1-edge0),0.0,1.0);}void main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float floorwidth\\n#pragma mapbox: initialize lowp vec4 dash\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float border_width\\n#pragma mapbox: initialize lowp vec4 border_color\\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);\\n#ifdef RENDER_LINE_DASH\\nfloat sdfdist=texture(u_dash_image,v_tex).a;float sdfgamma=1.0/(2.0*u_device_pixel_ratio)/dash.z;alpha*=linearstep(0.5-sdfgamma/floorwidth,0.5+sdfgamma/floorwidth,sdfdist);\\n#endif\\nhighp vec4 out_color;\\n#ifdef RENDER_LINE_GRADIENT\\nout_color=texture(u_gradient_image,v_uv.xy);\\n#else\\nout_color=color;\\n#endif\\nfloat trimmed=1.0;\\n#ifdef RENDER_LINE_TRIM_OFFSET\\nhighp float start=v_uv[2];highp float end=v_uv[3];highp float trim_start=u_trim_offset[0];highp float trim_end=u_trim_offset[1];highp float line_progress=(start+(v_uv.x)*(end-start));if (trim_end > trim_start) {if (line_progress <=trim_end && line_progress >=trim_start) {out_color=vec4(0,0,0,0);trimmed=0.0;}}\\n#endif\\nif (u_alpha_discard_threshold !=0.0) {if (alpha < u_alpha_discard_threshold) {discard;}}\\n#ifdef RENDER_LINE_BORDER\\nfloat edgeBlur=(border_width+1.0/u_device_pixel_ratio);float alpha2=clamp(min(dist-(v_width2.t-edgeBlur),v_width2.s-dist)/edgeBlur,0.0,1.0);if (alpha2 < 1.) {float smoothAlpha=smoothstep(0.6,1.0,alpha2);if (border_color.a==0.0) { \\nfloat Y=(out_color.a > 0.01) ? luminance(out_color.rgb/out_color.a) : 1.;float adjustment=(Y > 0.) ? 0.5/Y : 0.45;if (out_color.a > 0.25 && Y < 0.25) {vec3 borderColor=(Y > 0.) ? out_color.rgb : vec3(1,1,1)*out_color.a;out_color.rgb=out_color.rgb+borderColor*(adjustment*(1.0-smoothAlpha));} else {out_color.rgb*=(0.6 +0.4*smoothAlpha);}} else {out_color.rgb=mix(border_color.rgb*border_color.a*trimmed,out_color.rgb,smoothAlpha);}}\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,u_emissive_strength);\\n#endif\\n#ifdef FOG\\nout_color=fog_dither(fog_apply_premultiplied(out_color,v_fog_pos));\\n#endif\\nout_color*=(alpha*opacity);\\n#ifdef INDICATOR_CUTOUT\\nout_color=applyCutout(out_color);\\n#endif\\nglFragColor=out_color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#define EXTRUDE_SCALE 0.015873016\\nin vec2 a_pos_normal;in vec4 a_data;\\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\\nin highp vec4 a_packed;\\n#endif\\n#ifdef RENDER_LINE_DASH\\nin float a_linesofar;\\n#endif\\nuniform mat4 u_matrix;uniform mat2 u_pixels_to_tile_units;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;out vec2 v_normal;out vec2 v_width2;out float v_gamma_scale;out highp vec4 v_uv;\\n#ifdef RENDER_LINE_DASH\\nuniform vec2 u_texsize;uniform float u_tile_units_to_pixels;out vec2 v_tex;\\n#endif\\n#ifdef RENDER_LINE_GRADIENT\\nuniform float u_image_height;\\n#endif\\n#pragma mapbox: define highp vec4 color\\n#pragma mapbox: define lowp float floorwidth\\n#pragma mapbox: define lowp vec4 dash\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float border_width\\n#pragma mapbox: define lowp vec4 border_color\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 color\\n#pragma mapbox: initialize lowp float floorwidth\\n#pragma mapbox: initialize lowp vec4 dash\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float width\\n#pragma mapbox: initialize lowp float border_width\\n#pragma mapbox: initialize lowp vec4 border_color\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*EXTRUDE_SCALE;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*EXTRUDE_SCALE*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\\n#ifndef RENDER_TO_TEXTURE\\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\\n#else\\nv_gamma_scale=1.0;\\n#endif\\n#if defined(RENDER_LINE_GRADIENT) || defined(RENDER_LINE_TRIM_OFFSET)\\nfloat a_uv_x=a_packed[0];float a_split_index=a_packed[1];highp float a_clip_start=a_packed[2];highp float a_clip_end=a_packed[3];\\n#ifdef RENDER_LINE_GRADIENT\\nhighp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec4(a_uv_x,a_split_index*texel_height-half_texel_height,a_clip_start,a_clip_end);\\n#else\\nv_uv=vec4(a_uv_x,0.0,a_clip_start,a_clip_end);\\n#endif\\n#endif\\n#ifdef RENDER_LINE_DASH\\nfloat scale=dash.z==0.0 ? 0.0 : u_tile_units_to_pixels/dash.z;float height=dash.y;v_tex=vec2(a_linesofar*scale/floorwidth,(-normal.y*height+dash.x+0.5)/u_texsize.y);\\n#endif\\nv_width2=vec2(outset,inset);\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n}'),linePattern:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_tile_units_to_pixels;uniform sampler2D u_image;in vec2 v_normal;in vec2 v_width2;in float v_linesofar;in float v_gamma_scale;in float v_width;\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\nvoid main() {\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\nvec2 pattern_tl=pattern.xy;vec2 pattern_br=pattern.zw;vec2 display_size=(pattern_br-pattern_tl)/pixel_ratio;vec2 pattern_size=vec2(display_size.x/u_tile_units_to_pixels,display_size.y);float aspect=display_size.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x=mod(v_linesofar/pattern_size.x*aspect,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos=mix(pattern_tl*texel_size-texel_size,pattern_br*texel_size+texel_size,vec2(x,y));vec4 color=texture(u_image,pos);\\n#ifdef LIGHTING_3D_MODE\\ncolor=apply_lighting_ground(color);\\n#endif\\n#ifdef FOG\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\\n#endif\\ncolor*=(alpha*opacity);\\n#ifdef INDICATOR_CUTOUT\\ncolor=applyCutout(color);\\n#endif\\nglFragColor=color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#define scale 0.015873016\\nin vec2 a_pos_normal;in vec4 a_data;in float a_linesofar;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mat2 u_pixels_to_tile_units;uniform lowp float u_device_pixel_ratio;out vec2 v_normal;out vec2 v_width2;out float v_linesofar;out float v_gamma_scale;out float v_width;\\n#pragma mapbox: define lowp float blur\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float offset\\n#pragma mapbox: define mediump float gapwidth\\n#pragma mapbox: define mediump float width\\n#pragma mapbox: define lowp float floorwidth\\n#pragma mapbox: define lowp vec4 pattern\\n#pragma mapbox: define lowp float pixel_ratio\\nvoid main() {\\n#pragma mapbox: initialize lowp float blur\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float offset\\n#pragma mapbox: initialize mediump float gapwidth\\n#pragma mapbox: initialize mediump float width\\n#pragma mapbox: initialize lowp float floorwidth\\n#pragma mapbox: initialize mediump vec4 pattern\\n#pragma mapbox: initialize lowp float pixel_ratio\\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist*u_pixels_to_tile_units,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2*u_pixels_to_tile_units,0.0,1.0)+projected_extrude;\\n#ifndef RENDER_TO_TEXTURE\\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\\n#else\\nv_gamma_scale=1.0;\\n#endif\\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;\\n#ifdef FOG\\nv_fog_pos=fog_position(pos);\\n#endif\\n}'),raster:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\n#include \"_prelude_raster_array.glsl\"\\nuniform float u_fade_t;uniform float u_opacity;uniform highp float u_raster_elevation;in vec2 v_pos0;in vec2 v_pos1;in float v_depth;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;uniform float u_emissive_strength;\\n#ifndef RASTER_ARRAY\\nuniform sampler2D u_image0;uniform sampler2D u_image1;\\n#endif\\n#ifdef RASTER_COLOR\\nuniform sampler2D u_color_ramp;uniform highp vec4 u_colorization_mix;uniform highp float u_colorization_offset;uniform vec2 u_texture_res;\\n#endif\\nvoid main() {vec4 color0,color1,color;vec2 value;\\n#ifdef RASTER_COLOR\\n#ifdef RASTER_ARRAY\\n#ifdef RASTER_ARRAY_LINEAR\\nvalue=mix(\\nraTexture2D_image0_linear(v_pos0,u_texture_res,u_colorization_mix,u_colorization_offset),raTexture2D_image1_linear(v_pos1,u_texture_res,u_colorization_mix,u_colorization_offset),u_fade_t\\n);\\n#else\\nvalue=mix(\\nraTexture2D_image0_nearest(v_pos0,u_texture_res,u_colorization_mix,u_colorization_offset),raTexture2D_image1_nearest(v_pos1,u_texture_res,u_colorization_mix,u_colorization_offset),u_fade_t\\n);\\n#endif\\nif (value.y > 0.0) value.x/=value.y;\\n#else\\ncolor=mix(texture(u_image0,v_pos0),texture(u_image1,v_pos1),u_fade_t);value=vec2(u_colorization_offset+dot(color.rgb,u_colorization_mix.rgb),color.a);\\n#endif\\ncolor=texture(u_color_ramp,vec2(value.x,0.5));if (color.a > 0.0) color.rgb/=color.a;color.a*=value.y;\\n#else\\ncolor0=texture(u_image0,v_pos0);color1=texture(u_image1,v_pos1);if (color0.a > 0.0) color0.rgb/=color0.a;if (color1.a > 0.0) color1.rgb/=color1.a;color=mix(color0,color1,u_fade_t);\\n#endif\\ncolor.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(\\ndot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);vec3 out_color=mix(u_high_vec,u_low_vec,rgb);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(vec4(out_color,1.0),u_emissive_strength).rgb;\\n#endif\\n#ifdef FOG\\nhighp float fog_limit_high_meters=1000000.0;highp float fog_limit_low_meters=600000.0;float fog_limit=1.0-smoothstep(fog_limit_low_meters,fog_limit_high_meters,u_raster_elevation);out_color=fog_dither(fog_apply(out_color,v_fog_pos,fog_limit));\\n#endif\\nglFragColor=vec4(out_color*color.a,color.a);\\n#ifdef RENDER_CUTOFF\\nglFragColor=glFragColor*cutoff_opacity(u_cutoff_params,v_depth);\\n#endif\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\nuniform mat4 u_matrix;uniform mat4 u_normalize_matrix;uniform mat4 u_globe_matrix;uniform mat4 u_merc_matrix;uniform mat3 u_grid_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform vec2 u_perspective_transform;uniform vec2 u_texture_offset;uniform float u_raster_elevation;uniform vec4 u_tl_br;uniform float u_zoom_transition;uniform vec2 u_merc_center;\\n#define GLOBE_UPSCALE GLOBE_RADIUS/6371008.8;\\n#ifdef GLOBE_POLES\\nin vec3 a_globe_pos;in vec2 a_uv;\\n#elif defined(PROJECTION_GLOBE_VIEW)\\nin vec2 a_pos;\\n#else\\nin vec2 a_pos;in vec2 a_texture_pos;\\n#endif\\nout vec2 v_pos0;out vec2 v_pos1;out float v_depth;void main() {vec2 uv;\\n#ifdef GLOBE_POLES\\nvec3 globe_pos=a_globe_pos;globe_pos+=normalize(globe_pos)*u_raster_elevation*GLOBE_UPSCALE;gl_Position=u_matrix*u_globe_matrix*vec4(globe_pos ,1.0);uv=a_uv;\\n#ifdef FOG\\nv_fog_pos=fog_position((u_normalize_matrix*vec4(a_globe_pos,1.0)).xyz);\\n#endif\\n#else\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 decomposed_pos_and_skirt=decomposeToPosAndSkirt(a_pos);vec3 latLng=u_grid_matrix*vec3(decomposed_pos_and_skirt.xy,1.0);vec2 globe_tl=vec2(u_tl_br.x,u_tl_br.y);vec2 globe_br=vec2(u_tl_br.z,u_tl_br.w);float mercatorY=mercatorYfromLat(latLng[0]);float uvY=1.0-((mercatorY-globe_br.y)/(globe_tl.y-globe_br.y));float mercatorX=mercatorXfromLng(latLng[1]);float uvX=(mercatorX-globe_br.x)/(globe_tl.x-globe_br.x);vec3 globe_pos=latLngToECEF(latLng.xy);vec2 merc_pos=vec2(mercatorX,mercatorY);uv=vec2(uvX,uvY);globe_pos+=normalize(globe_pos)*u_raster_elevation*GLOBE_UPSCALE;vec4 globe_world_pos=u_globe_matrix*vec4(globe_pos,1.0);vec4 merc_world_pos=vec4(0.0);if (u_zoom_transition > 0.0) {merc_world_pos=vec4(merc_pos,u_raster_elevation,1.0);merc_world_pos.xy-=u_merc_center;merc_world_pos.x=wrap(merc_world_pos.x,-0.5,0.5);merc_world_pos=u_merc_matrix*merc_world_pos;}vec4 interpolated_pos=vec4(mix(globe_world_pos.xyz,merc_world_pos.xyz,u_zoom_transition),1.0);gl_Position=u_matrix*interpolated_pos;\\n#ifdef FOG\\nv_fog_pos=fog_position((u_normalize_matrix*vec4(globe_pos,1.0)).xyz);\\n#endif\\n#else\\nfloat w=1.0+dot(a_texture_pos,u_perspective_transform);gl_Position=u_matrix*vec4(a_pos*w,u_raster_elevation,w);\\n#ifdef FOG\\nv_fog_pos=fog_position(a_pos);\\n#endif\\nuv=a_texture_pos/8192.0;\\n#endif\\n#endif\\nv_pos0=uv;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;v_pos0=u_texture_offset.x+u_texture_offset.y*v_pos0;v_pos1=u_texture_offset.x+u_texture_offset.y*v_pos1;\\n#ifdef RENDER_CUTOFF\\nv_depth=gl_Position.z;\\n#endif\\n}'),symbolIcon:ZE('#include \"_prelude_lighting.glsl\"\\nuniform sampler2D u_texture;\\n#ifdef ICON_TRANSITION\\nuniform float u_icon_transition;\\n#endif\\nin float v_fade_opacity;in vec2 v_tex_a;\\n#ifdef ICON_TRANSITION\\nin vec2 v_tex_b;\\n#endif\\nuniform mediump float u_icon_saturation;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float emissive_strength\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float emissive_strength\\nlowp float alpha=opacity*v_fade_opacity;vec4 out_color;\\n#ifdef ICON_TRANSITION\\nvec4 a=texture(u_texture,v_tex_a)*(1.0-u_icon_transition);vec4 b=texture(u_texture,v_tex_b)*u_icon_transition;out_color=(a+b)*alpha;\\n#else\\nout_color=texture(u_texture,v_tex_a)*alpha;\\n#endif\\n#ifdef SATURATION\\nvec3 luma=vec3(dot(out_color.rgb,vec3(0.2126,0.7152,0.0722)));out_color.rgb=mix(luma,out_color.rgb,u_icon_saturation);\\n#endif\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,emissive_strength);\\n#endif\\nglFragColor=out_color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_terrain.vertex.glsl\"\\nin vec4 a_pos_offset;in vec4 a_tex_size;in vec4 a_pixeloffset;in vec4 a_projected_pos;in float a_fade_opacity;\\n#ifdef Z_OFFSET\\nin float a_z_offset;\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_globe_anchor;in vec3 a_globe_normal;\\n#endif\\n#ifdef ICON_TRANSITION\\nin vec2 a_texb;\\n#endif\\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;uniform vec3 u_up_vector;\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\\n#endif\\nout vec2 v_tex_a;\\n#ifdef ICON_TRANSITION\\nout vec2 v_tex_b;\\n#endif\\nout float v_fade_opacity;\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float emissive_strength\\nvoid main() {\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float emissive_strength\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_min_font_scale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;float e=elevation(tile_anchor);\\n#ifdef Z_OFFSET\\ne+=a_z_offset;\\n#endif\\nvec3 h=elevationVector(tile_anchor)*e;float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\\n#else\\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\\n#endif\\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjected_point;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetProjected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\\n#else\\noffsetProjected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\\n#endif\\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetProjected_point.xy/offsetProjected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\\n#else\\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\\n#endif\\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*max(a_min_font_scale,font_scale)+a_pxoffset/16.0);\\n#ifdef TERRAIN\\n#ifdef PITCH_WITH_MAP_TERRAIN\\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\\n#endif\\n#endif\\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;float projection_transition_fade=1.0;\\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\\n#endif\\nvec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float out_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change))*projection_transition_fade;float alpha=opacity*out_fade_opacity;float hidden=float(alpha==0.0 || projected_point.w <=0.0 || occlusion_fade==0.0);\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,hidden);\\n#else\\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,hidden);\\n#endif\\nv_tex_a=a_tex/u_texsize;\\n#ifdef ICON_TRANSITION\\nv_tex_b=a_texb/u_texsize;\\n#endif\\nv_fade_opacity=out_fade_opacity;}'),symbolSDF:ZE('#include \"_prelude_lighting.glsl\"\\n#define SDF_PX 8.0\\nuniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;uniform bool u_is_halo;flat in float v_draw_halo;in vec2 v_data0;in vec3 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\n#pragma mapbox: define lowp float emissive_strength\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\n#pragma mapbox: initialize lowp float emissive_strength\\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;bool draw_halo=v_draw_halo > 0.0;if (draw_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);vec4 out_color=color*(alpha*opacity*fade_opacity);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,emissive_strength);\\n#endif\\nglFragColor=out_color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_terrain.vertex.glsl\"\\nin vec4 a_pos_offset;in vec4 a_tex_size;in vec4 a_pixeloffset;in vec4 a_projected_pos;in float a_fade_opacity;\\n#ifdef Z_OFFSET\\nin float a_z_offset;\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_globe_anchor;in vec3 a_globe_normal;\\n#endif\\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;uniform bool u_is_halo;\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\\n#endif\\nflat out float v_draw_halo;out vec2 v_data0;out vec3 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\n#pragma mapbox: define lowp float emissive_strength\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\n#pragma mapbox: initialize lowp float emissive_strength\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;float e=elevation(tile_anchor);\\n#ifdef Z_OFFSET\\ne+=a_z_offset;\\n#endif\\nvec3 h=elevationVector(tile_anchor)*e;float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\\n#else\\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\\n#endif\\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetprojected_point;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 displacement=vec3(a_globe_normal.z,0,-a_globe_normal.x);offsetprojected_point=u_matrix*vec4(a_globe_anchor+displacement,1);\\n#else\\noffsetprojected_point=u_matrix*vec4(tile_anchor+vec2(1,0),0,1);\\n#endif\\nvec2 a=projected_point.xy/projected_point.w;vec2 b=offsetprojected_point.xy/offsetprojected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\\n#else\\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\\n#endif\\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset);\\n#ifdef TERRAIN\\n#ifdef PITCH_WITH_MAP_TERRAIN\\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\\n#endif\\n#endif\\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;float projection_transition_fade=1.0;\\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\\n#endif\\nvec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));float out_fade_opacity=interpolated_fade_opacity*projection_transition_fade;float alpha=opacity*out_fade_opacity;float hidden=float(alpha==0.0 || projected_point.w <=0.0 || occlusion_fade==0.0);\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,hidden);\\n#else\\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,hidden);\\n#endif\\nfloat gamma_scale=gl_Position.w;v_draw_halo=(u_is_halo && float(gl_InstanceID)==0.0) ? 1.0 : 0.0;v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,out_fade_opacity);}'),symbolTextAndIcon:ZE('#include \"_prelude_lighting.glsl\"\\n#define SDF_PX 8.0\\n#define SDF 1.0\\n#define ICON 0.0\\nuniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_halo;flat in float v_draw_halo;in vec4 v_data0;in vec4 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\n#pragma mapbox: define lowp float emissive_strength\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\n#pragma mapbox: initialize lowp float emissive_strength\\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;glFragColor=texture(u_texture_icon,tex_icon)*alpha;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;bool draw_halo=v_draw_halo > 0.0;if (draw_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);vec4 out_color=color*(alpha*opacity*fade_opacity);\\n#ifdef LIGHTING_3D_MODE\\nout_color=apply_lighting_with_emission_ground(out_color,emissive_strength);\\n#endif\\nglFragColor=out_color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_terrain.vertex.glsl\"\\nin vec4 a_pos_offset;in vec4 a_tex_size;in vec4 a_projected_pos;in float a_fade_opacity;\\n#ifdef Z_OFFSET\\nin float a_z_offset;\\n#endif\\n#ifdef PROJECTION_GLOBE_VIEW\\nin vec3 a_globe_anchor;in vec3 a_globe_normal;\\n#endif\\nuniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec3 u_up_vector;uniform vec2 u_texsize_icon;uniform bool u_is_halo;\\n#ifdef PROJECTION_GLOBE_VIEW\\nuniform vec3 u_tile_id;uniform mat4 u_inv_rot_matrix;uniform vec2 u_merc_center;uniform vec3 u_camera_forward;uniform float u_zoom_transition;uniform vec3 u_ecef_origin;uniform mat4 u_tile_matrix;\\n#endif\\nflat out float v_draw_halo;out vec4 v_data0;out vec4 v_data1;\\n#pragma mapbox: define highp vec4 fill_color\\n#pragma mapbox: define highp vec4 halo_color\\n#pragma mapbox: define lowp float opacity\\n#pragma mapbox: define lowp float halo_width\\n#pragma mapbox: define lowp float halo_blur\\n#pragma mapbox: define lowp float emissive_strength\\nvoid main() {\\n#pragma mapbox: initialize highp vec4 fill_color\\n#pragma mapbox: initialize highp vec4 halo_color\\n#pragma mapbox: initialize lowp float opacity\\n#pragma mapbox: initialize lowp float halo_width\\n#pragma mapbox: initialize lowp float halo_blur\\n#pragma mapbox: initialize lowp float emissive_strength\\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_tex_size.xy;vec2 a_size=a_tex_size.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[3];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec2 tile_anchor=a_pos;float e=elevation(tile_anchor);\\n#ifdef Z_OFFSET\\ne+=a_z_offset;\\n#endif\\nvec3 h=elevationVector(tile_anchor)*e;float globe_occlusion_fade;vec3 world_pos;vec3 mercator_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nmercator_pos=mercator_tile_position(u_inv_rot_matrix,tile_anchor,u_tile_id,u_merc_center);world_pos=mix_globe_mercator(a_globe_anchor+h,mercator_pos,u_zoom_transition);vec4 ecef_point=u_tile_matrix*vec4(world_pos,1.0);vec3 origin_to_point=ecef_point.xyz-u_ecef_origin;globe_occlusion_fade=dot(origin_to_point,u_camera_forward) >=0.0 ? 0.0 : 1.0;\\n#else\\nworld_pos=vec3(tile_anchor,0)+h;globe_occlusion_fade=1.0;\\n#endif\\nvec4 projected_point=u_matrix*vec4(world_pos,1);highp float camera_to_anchor_distance=projected_point.w;highp float distance_ratio=u_pitch_with_map ?\\ncamera_to_anchor_distance/u_camera_to_center_distance :\\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(\\n0.5+0.5*distance_ratio,0.0,1.5);size*=perspective_ratio;float font_scale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offset_projected_point=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projected_point.xy/projected_point.w;vec2 b=offset_projected_point.xy/offset_projected_point.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}vec4 projected_pos;\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 proj_pos=mix_globe_mercator(a_projected_pos.xyz+h,mercator_pos,u_zoom_transition);projected_pos=u_label_plane_matrix*vec4(proj_pos,1.0);\\n#else\\nprojected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,h.z,1.0);\\n#endif\\nhighp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);float z=0.0;vec2 offset=rotation_matrix*(a_offset/32.0*font_scale);\\n#ifdef TERRAIN\\n#ifdef PITCH_WITH_MAP_TERRAIN\\nvec4 tile_pos=u_label_plane_matrix_inv*vec4(a_projected_pos.xy+offset,0.0,1.0);z=elevation(tile_pos.xy);\\n#endif\\n#endif\\nfloat occlusion_fade=occlusionFade(projected_point)*globe_occlusion_fade;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(occlusion_fade,fade_opacity[0]+fade_change));float projection_transition_fade=1.0;\\n#if defined(PROJECTED_POS_ON_VIEWPORT) && defined(PROJECTION_GLOBE_VIEW)\\nprojection_transition_fade=1.0-step(EPSILON,u_zoom_transition);\\n#endif\\nfloat out_fade_opacity=interpolated_fade_opacity*projection_transition_fade;float alpha=opacity*out_fade_opacity;float hidden=float(alpha==0.0 || projected_point.w <=0.0 || occlusion_fade==0.0);\\n#ifdef PROJECTION_GLOBE_VIEW\\nvec3 xAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,u_up_vector)) : vec3(1,0,0);vec3 yAxis=u_pitch_with_map ? normalize(cross(a_globe_normal,xAxis)) : vec3(0,1,0);gl_Position=mix(u_coord_matrix*vec4(projected_pos.xyz/projected_pos.w+xAxis*offset.x+yAxis*offset.y,1.0),AWAY,hidden);\\n#else\\ngl_Position=mix(u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+offset,z,1.0),AWAY,hidden);\\n#endif\\nfloat gamma_scale=gl_Position.w;v_draw_halo=(u_is_halo && float(gl_InstanceID)==0.0) ? 1.0 : 0.0;v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,out_fade_opacity,is_sdf);}'),terrainRaster:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_shadow.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform sampler2D u_image0;in vec2 v_pos0;\\n#ifdef FOG\\nin float v_fog_opacity;\\n#endif\\n#ifdef RENDER_SHADOWS\\nin vec4 v_pos_light_view_0;in vec4 v_pos_light_view_1;in float v_depth;\\n#endif\\nuniform vec3 u_ground_shadow_factor;void main() {vec4 image_color=texture(u_image0,v_pos0);vec4 color;\\n#ifdef LIGHTING_3D_MODE\\nconst vec3 normal=vec3(0.0,0.0,1.0);\\n#ifdef RENDER_SHADOWS\\nfloat cutoffOpacity=1.0;\\n#ifdef RENDER_CUTOFF\\ncutoffOpacity=cutoff_opacity(u_cutoff_params,v_depth);\\n#endif\\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\\nvec3 unlit_base=image_color.rgb*(1.0-image_color.a);vec3 emissive_base=image_color.rgb*image_color.a;float ndotl=u_shadow_direction.z;float occlusion=ndotl < 0.0 ? 1.0 : shadow_occlusion(v_pos_light_view_0,v_pos_light_view_1,v_depth,0.0);ndotl=max(0.0,ndotl);vec3 lit=apply_lighting(unlit_base,normal,mix(1.0,(1.0-(u_shadow_intensity*occlusion))*ndotl,cutoffOpacity));vec3 emissive=compute_emissive_draped(emissive_base,1.0-u_shadow_intensity,occlusion,u_ground_shadow_factor);color.rgb=lit+emissive;color.a=1.0;\\n#else\\nfloat lighting_factor=shadowed_light_factor_normal_unbiased(normal,v_pos_light_view_0,v_pos_light_view_1,v_depth);color=apply_lighting(image_color,normal,mix(1.0,lighting_factor,cutoffOpacity));\\n#endif\\n#else\\nfloat lighting_factor=u_lighting_directional_dir.z;color=apply_lighting(image_color,normal,lighting_factor);\\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\\ncolor.rgb=mix(color.rgb,image_color.rgb,image_color.a);color.a=1.0;\\n#endif\\n#endif\\n#else\\ncolor=image_color;\\n#endif\\n#ifdef FOG\\n#ifdef ZERO_EXAGGERATION\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\\n#else\\ncolor=fog_dither(fog_apply_from_vert(color,v_fog_opacity));\\n#endif\\n#endif\\nglFragColor=color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#include \"_prelude_terrain.vertex.glsl\"\\nuniform mat4 u_matrix;uniform float u_skirt_height;in vec2 a_pos;out vec2 v_pos0;\\n#ifdef FOG\\nout float v_fog_opacity;\\n#endif\\n#ifdef RENDER_SHADOWS\\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;out vec4 v_pos_light_view_0;out vec4 v_pos_light_view_1;out float v_depth;\\n#endif\\nvoid main() {vec3 decomposedPosAndSkirt=decomposeToPosAndSkirt(a_pos);float skirt=decomposedPosAndSkirt.z;vec2 decodedPos=decomposedPosAndSkirt.xy;float elevation=elevation(decodedPos)-skirt*u_skirt_height;v_pos0=decodedPos/8192.0;gl_Position=u_matrix*vec4(decodedPos,elevation,1.0);\\n#ifdef FOG\\n#ifdef ZERO_EXAGGERATION\\nv_fog_pos=fog_position(decodedPos);\\n#else\\nv_fog_opacity=fog(fog_position(vec3(decodedPos,elevation)));\\n#endif\\n#endif\\n#ifdef RENDER_SHADOWS\\nvec3 pos=vec3(decodedPos,elevation);v_pos_light_view_0=u_light_matrix_0*vec4(pos,1.);v_pos_light_view_1=u_light_matrix_1*vec4(pos,1.);v_depth=gl_Position.w;\\n#endif\\n}'),terrainDepth:ZE(\"precision highp float;in float v_depth;void main() {glFragColor=pack_depth(v_depth);}\",'#include \"_prelude_terrain.vertex.glsl\"\\nuniform mat4 u_matrix;in vec2 a_pos;out float v_depth;void main() {float elevation=elevation(a_pos);gl_Position=u_matrix*vec4(a_pos,elevation,1.0);v_depth=gl_Position.z/gl_Position.w;}'),skybox:ZE('#include \"_prelude_fog.fragment.glsl\"\\nin lowp vec3 v_uv;uniform lowp samplerCube u_cubemap;uniform lowp float u_opacity;uniform highp float u_temporal_offset;uniform highp vec3 u_sun_direction;float sun_disk(highp vec3 ray_direction,highp vec3 sun_direction) {highp float cos_angle=dot(normalize(ray_direction),sun_direction);const highp float cos_sun_angular_diameter=0.99996192306;const highp float smoothstep_delta=1e-5;return smoothstep(\\ncos_sun_angular_diameter-smoothstep_delta,cos_sun_angular_diameter+smoothstep_delta,cos_angle);}float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec3 uv=v_uv;const float y_bias=0.015;uv.y+=y_bias;uv.y=pow(abs(uv.y),1.0/5.0);uv.y=map(uv.y,0.0,1.0,-1.0,1.0);vec3 sky_color=texture(u_cubemap,uv).rgb;\\n#ifdef FOG\\nsky_color=fog_apply_sky_gradient(v_uv.xzy,sky_color);\\n#endif\\nsky_color.rgb=dither(sky_color.rgb,gl_FragCoord.xy+u_temporal_offset);sky_color+=0.1*sun_disk(v_uv,u_sun_direction);glFragColor=vec4(sky_color*u_opacity,u_opacity);\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\n}',PE),skyboxGradient:ZE('#include \"_prelude_fog.fragment.glsl\"\\nin highp vec3 v_uv;uniform lowp sampler2D u_color_ramp;uniform highp vec3 u_center_direction;uniform lowp float u_radius;uniform lowp float u_opacity;uniform highp float u_temporal_offset;void main() {float progress=acos(dot(normalize(v_uv),u_center_direction))/u_radius;vec4 color=texture(u_color_ramp,vec2(progress,0.5));\\n#ifdef FOG\\ncolor.rgb=fog_apply_sky_gradient(v_uv.xzy,color.rgb/color.a)*color.a;\\n#endif\\ncolor*=u_opacity;color.rgb=dither(color.rgb,gl_FragCoord.xy+u_temporal_offset);glFragColor=color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\n}',PE),skyboxCapture:ZE(\"\\nin highp vec3 v_position;uniform highp float u_sun_intensity;uniform highp float u_luminance;uniform lowp vec3 u_sun_direction;uniform highp vec4 u_color_tint_r;uniform highp vec4 u_color_tint_m;precision highp float;\\n#define BETA_R vec3(5.5e-6,13.0e-6,22.4e-6)\\n#define BETA_M vec3(21e-6,21e-6,21e-6)\\n#define MIE_G 0.76\\n#define DENSITY_HEIGHT_SCALE_R 8000.0\\n#define DENSITY_HEIGHT_SCALE_M 1200.0\\n#define PLANET_RADIUS 6360e3\\n#define ATMOSPHERE_RADIUS 6420e3\\n#define SAMPLE_STEPS 10\\n#define DENSITY_STEPS 4\\nfloat ray_sphere_exit(vec3 orig,vec3 dir,float radius) {float a=dot(dir,dir);float b=2.0*dot(dir,orig);float c=dot(orig,orig)-radius*radius;float d=sqrt(b*b-4.0*a*c);return (-b+d)/(2.0*a);}vec3 extinction(vec2 density) {return exp(-vec3(BETA_R*u_color_tint_r.a*density.x+BETA_M*u_color_tint_m.a*density.y));}vec2 local_density(vec3 point) {float height=max(length(point)-PLANET_RADIUS,0.0);float exp_r=exp(-height/DENSITY_HEIGHT_SCALE_R);float exp_m=exp(-height/DENSITY_HEIGHT_SCALE_M);return vec2(exp_r,exp_m);}float phase_ray(float cos_angle) {return (3.0/(16.0*PI))*(1.0+cos_angle*cos_angle);}float phase_mie(float cos_angle) {return (3.0/(8.0*PI))*((1.0-MIE_G*MIE_G)*(1.0+cos_angle*cos_angle))/((2.0+MIE_G*MIE_G)*pow(1.0+MIE_G*MIE_G-2.0*MIE_G*cos_angle,1.5));}vec2 density_to_atmosphere(vec3 point,vec3 light_dir) {float ray_len=ray_sphere_exit(point,light_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(DENSITY_STEPS);vec2 density_point_to_atmosphere=vec2(0.0);for (int i=0; i < DENSITY_STEPS;++i) {vec3 point_on_ray=point+light_dir*((float(i)+0.5)*step_len);density_point_to_atmosphere+=local_density(point_on_ray)*step_len;;}return density_point_to_atmosphere;}vec3 atmosphere(vec3 ray_dir,vec3 sun_direction,float sun_intensity) {vec2 density_orig_to_point=vec2(0.0);vec3 scatter_r=vec3(0.0);vec3 scatter_m=vec3(0.0);vec3 origin=vec3(0.0,PLANET_RADIUS,0.0);float ray_len=ray_sphere_exit(origin,ray_dir,ATMOSPHERE_RADIUS);float step_len=ray_len/float(SAMPLE_STEPS);for (int i=0; i < SAMPLE_STEPS;++i) {vec3 point_on_ray=origin+ray_dir*((float(i)+0.5)*step_len);vec2 density=local_density(point_on_ray)*step_len;density_orig_to_point+=density;vec2 density_point_to_atmosphere=density_to_atmosphere(point_on_ray,sun_direction);vec2 density_orig_to_atmosphere=density_orig_to_point+density_point_to_atmosphere;vec3 extinction=extinction(density_orig_to_atmosphere);scatter_r+=density.x*extinction;scatter_m+=density.y*extinction;}float cos_angle=dot(ray_dir,sun_direction);float phase_r=phase_ray(cos_angle);float phase_m=phase_mie(cos_angle);vec3 beta_r=BETA_R*u_color_tint_r.rgb*u_color_tint_r.a;vec3 beta_m=BETA_M*u_color_tint_m.rgb*u_color_tint_m.a;return (scatter_r*phase_r*beta_r+scatter_m*phase_m*beta_m)*sun_intensity;}const float A=0.15;const float B=0.50;const float C=0.10;const float D=0.20;const float E=0.02;const float F=0.30;vec3 uncharted2_tonemap(vec3 x) {return ((x*(A*x+C*B)+D*E)/(x*(A*x+B)+D*F))-E/F;}void main() {vec3 ray_direction=v_position;ray_direction.y=pow(ray_direction.y,5.0);const float y_bias=0.015;ray_direction.y+=y_bias;vec3 color=atmosphere(normalize(ray_direction),u_sun_direction,u_sun_intensity);float white_scale=1.0748724675633854;color=uncharted2_tonemap((log2(2.0/pow(u_luminance,4.0)))*color)*white_scale;glFragColor=vec4(color,1.0);}\",\"in highp vec3 a_pos_3f;uniform mat3 u_matrix_3f;out highp vec3 v_position;float map(float value,float start,float end,float new_start,float new_end) {return ((value-start)*(new_end-new_start))/(end-start)+new_start;}void main() {vec4 pos=vec4(u_matrix_3f*a_pos_3f,1.0);v_position=pos.xyz;v_position.y*=-1.0;v_position.y=map(v_position.y,-1.0,1.0,0.0,1.0);gl_Position=vec4(a_pos_3f.xy,0.0,1.0);}\"),globeRaster:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform sampler2D u_image0;in vec2 v_pos0;\\n#ifndef FOG\\nuniform highp vec3 u_frustum_tl;uniform highp vec3 u_frustum_tr;uniform highp vec3 u_frustum_br;uniform highp vec3 u_frustum_bl;uniform highp vec3 u_globe_pos;uniform highp float u_globe_radius;uniform vec2 u_viewport;\\n#endif\\nvoid main() {vec4 color;\\n#ifdef CUSTOM_ANTIALIASING\\nvec2 uv=gl_FragCoord.xy/u_viewport;highp vec3 ray_dir=mix(\\nmix(u_frustum_tl,u_frustum_tr,uv.x),mix(u_frustum_bl,u_frustum_br,uv.x),1.0-uv.y);vec3 dir=normalize(ray_dir);vec3 closest_point=dot(u_globe_pos,dir)*dir;float norm_dist_from_center=1.0-length(closest_point-u_globe_pos)/u_globe_radius;const float antialias_pixel=2.0;float antialias_factor=antialias_pixel*fwidth(norm_dist_from_center);float antialias=smoothstep(0.0,antialias_factor,norm_dist_from_center);vec4 raster=texture(u_image0,v_pos0);\\n#ifdef LIGHTING_3D_MODE\\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\\nraster=apply_lighting_with_emission_ground(raster,raster.a);color=vec4(raster.rgb*antialias,antialias);\\n#else\\nraster=apply_lighting_ground(raster);color=vec4(raster.rgb*antialias,raster.a*antialias);\\n#endif\\n#else\\ncolor=vec4(raster.rgb*antialias,raster.a*antialias);\\n#endif\\n#else\\ncolor=texture(u_image0,v_pos0);\\n#ifdef LIGHTING_3D_MODE\\n#ifdef LIGHTING_3D_ALPHA_EMISSIVENESS\\ncolor=apply_lighting_with_emission_ground(color,color.a);color.a=1.0;\\n#else\\ncolor=apply_lighting_ground(color);\\n#endif\\n#endif\\n#endif\\n#ifdef FOG\\ncolor=fog_dither(fog_apply_premultiplied(color,v_fog_pos));\\n#endif\\nglFragColor=color;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#include \"_prelude_terrain.vertex.glsl\"\\nuniform mat4 u_proj_matrix;uniform mat4 u_normalize_matrix;uniform mat4 u_globe_matrix;uniform mat4 u_merc_matrix;uniform float u_zoom_transition;uniform vec2 u_merc_center;uniform mat3 u_grid_matrix;uniform float u_skirt_height;\\n#ifdef GLOBE_POLES\\nin vec3 a_globe_pos;in vec2 a_uv;\\n#else\\nin vec2 a_pos;\\n#endif\\nout vec2 v_pos0;void main() {\\n#ifdef GLOBE_POLES\\nvec3 globe_pos=a_globe_pos;vec2 uv=a_uv;\\n#else\\nfloat tiles=u_grid_matrix[0][2];float idx=u_grid_matrix[1][2];float idy=u_grid_matrix[2][2];vec3 decomposed_pos_and_skirt=decomposeToPosAndSkirt(a_pos);vec3 latLng=u_grid_matrix*vec3(decomposed_pos_and_skirt.xy,1.0);float mercatorY=mercatorYfromLat(latLng[0]);float uvY=mercatorY*tiles-idy;float mercatorX=mercatorXfromLng(latLng[1]);float uvX=mercatorX*tiles-idx;vec3 globe_pos=latLngToECEF(latLng.xy);vec2 merc_pos=vec2(mercatorX,mercatorY);vec2 uv=vec2(uvX,uvY);\\n#endif\\nv_pos0=uv;vec2 tile_pos=uv*EXTENT;vec3 globe_derived_up_vector=normalize(globe_pos)*u_tile_up_scale;\\n#ifdef GLOBE_POLES\\nvec3 up_vector=globe_derived_up_vector;\\n#else\\nvec3 up_vector=elevationVector(tile_pos);\\n#endif\\nfloat height=elevation(tile_pos);globe_pos+=up_vector*height;\\n#ifndef GLOBE_POLES\\nglobe_pos-=globe_derived_up_vector*u_skirt_height*decomposed_pos_and_skirt.z;\\n#endif\\n#ifdef GLOBE_POLES\\nvec4 interpolated_pos=u_globe_matrix*vec4(globe_pos,1.0);\\n#else\\nvec4 globe_world_pos=u_globe_matrix*vec4(globe_pos,1.0);vec4 merc_world_pos=vec4(0.0);if (u_zoom_transition > 0.0) {merc_world_pos=vec4(merc_pos,height-u_skirt_height*decomposed_pos_and_skirt.z,1.0);merc_world_pos.xy-=u_merc_center;merc_world_pos.x=wrap(merc_world_pos.x,-0.5,0.5);merc_world_pos=u_merc_matrix*merc_world_pos;}vec4 interpolated_pos=vec4(mix(globe_world_pos.xyz,merc_world_pos.xyz,u_zoom_transition),1.0);\\n#endif\\ngl_Position=u_proj_matrix*interpolated_pos;\\n#ifdef FOG\\nv_fog_pos=fog_position((u_normalize_matrix*vec4(globe_pos,1.0)).xyz);\\n#endif\\n}'),globeAtmosphere:ZE('#include \"_prelude_fog.fragment.glsl\"\\nuniform float u_transition;uniform highp float u_fadeout_range;uniform highp float u_temporal_offset;uniform vec4 u_color;uniform vec4 u_high_color;uniform vec4 u_space_color;uniform float u_horizon_angle;in highp vec3 v_ray_dir;in highp vec3 v_horizon_dir;void main() {highp vec3 dir=normalize(v_ray_dir);float globe_pos_dot_dir;\\n#ifdef PROJECTION_GLOBE_VIEW\\nglobe_pos_dot_dir=dot(u_globe_pos,dir);highp vec3 closest_point_forward=abs(globe_pos_dot_dir)*dir;float norm_dist_from_center=length(closest_point_forward-u_globe_pos)/u_globe_radius;if (norm_dist_from_center < 0.98) {\\n#ifdef ALPHA_PASS\\nglFragColor=vec4(0,0,0,0);return;\\n#else\\n#ifdef NATIVE\\nglFragColor=vec4(1,1,1,1);\\n#else\\nglFragColor=vec4(0,0,0,1);\\n#endif\\nreturn;\\n#endif\\n}\\n#endif\\nhighp vec3 horizon_dir=normalize(v_horizon_dir);float horizon_angle_mercator=dir.y < horizon_dir.y ?\\n0.0 : max(acos(clamp(dot(dir,horizon_dir),-1.0,1.0)),0.0);float horizon_angle;\\n#ifdef PROJECTION_GLOBE_VIEW\\nhighp vec3 closest_point=globe_pos_dot_dir*dir;highp float closest_point_to_center=length(closest_point-u_globe_pos);highp float theta=asin(clamp(closest_point_to_center/length(u_globe_pos),-1.0,1.0));horizon_angle=globe_pos_dot_dir < 0.0 ?\\nPI-theta-u_horizon_angle : theta-u_horizon_angle;float angle_t=pow(u_transition,10.0);horizon_angle=mix(horizon_angle,horizon_angle_mercator,angle_t);\\n#else\\nhorizon_angle=horizon_angle_mercator;\\n#endif\\nhorizon_angle/=PI;float t=exp(-horizon_angle/u_fadeout_range);float alpha_0=u_color.a;float alpha_1=u_high_color.a;float alpha_2=u_space_color.a;vec3 color_stop_0=u_color.rgb;vec3 color_stop_1=u_high_color.rgb;vec3 color_stop_2=u_space_color.rgb;\\n#ifdef ALPHA_PASS\\nfloat a0=mix(alpha_2,1.0,alpha_1);float a1=mix(a0,1.0,alpha_0);float a2=mix(a0,a1,t);float a =mix(alpha_2,a2,t);glFragColor=vec4(1.0,1.0,1.0,a);\\n#else\\nvec3 c0=mix(color_stop_2,color_stop_1,alpha_1);vec3 c1=mix(c0,color_stop_0,alpha_0);vec3 c2=mix(c0,c1,t);vec3 c=c2;\\n#ifndef NATIVE\\nc=dither(c,gl_FragCoord.xy+u_temporal_offset);\\n#endif\\nglFragColor=vec4(c*t,t);\\n#endif\\n}',\"in vec3 a_pos;in vec2 a_uv;uniform vec3 u_frustum_tl;uniform vec3 u_frustum_tr;uniform vec3 u_frustum_br;uniform vec3 u_frustum_bl;uniform float u_horizon;out highp vec3 v_ray_dir;out highp vec3 v_horizon_dir;void main() {v_ray_dir=mix(\\nmix(u_frustum_tl,u_frustum_tr,a_uv.x),mix(u_frustum_bl,u_frustum_br,a_uv.x),a_uv.y);v_horizon_dir=mix(\\nmix(u_frustum_tl,u_frustum_bl,u_horizon),mix(u_frustum_tr,u_frustum_br,u_horizon),a_uv.x);gl_Position=vec4(a_pos,1.0);}\"),model:ZE('#include \"_prelude_fog.fragment.glsl\"\\n#include \"_prelude_shadow.fragment.glsl\"\\n#include \"_prelude_lighting.glsl\"\\nuniform float u_opacity;uniform vec3 u_lightcolor;uniform vec3 u_lightpos;uniform float u_lightintensity;uniform vec4 u_baseColorFactor;uniform vec4 u_emissiveFactor;uniform float u_metallicFactor;uniform float u_roughnessFactor;uniform float u_emissive_strength;in highp vec4 v_position_height;in lowp vec4 v_color_mix;\\n#ifdef RENDER_SHADOWS\\nin vec4 v_pos_light_view_0;in vec4 v_pos_light_view_1;in float v_depth_shadows;\\n#endif\\n#pragma mapbox: define-attribute highp vec3 normal_3f\\n#pragma mapbox: define-attribute highp vec3 color_3f\\n#pragma mapbox: define-attribute highp vec4 color_4f\\n#pragma mapbox: define-attribute highp vec2 uv_2f\\n#pragma mapbox: initialize-attribute highp vec3 normal_3f\\n#pragma mapbox: initialize-attribute highp vec3 color_3f\\n#pragma mapbox: initialize-attribute highp vec4 color_4f\\n#pragma mapbox: initialize-attribute highp vec2 uv_2f\\n#ifdef HAS_ATTRIBUTE_a_pbr\\nin lowp vec4 v_roughness_metallic_emissive_alpha;in mediump vec4 v_height_based_emission_params;\\n#endif\\n#ifdef HAS_TEXTURE_u_baseColorTexture\\nuniform sampler2D u_baseColorTexture;uniform bool u_baseTextureIsAlpha;uniform bool u_alphaMask;uniform float u_alphaCutoff;\\n#endif\\n#ifdef HAS_TEXTURE_u_metallicRoughnessTexture\\nuniform sampler2D u_metallicRoughnessTexture;\\n#endif\\n#ifdef HAS_TEXTURE_u_occlusionTexture\\nuniform sampler2D u_occlusionTexture;uniform float u_aoIntensity;\\n#endif\\n#ifdef HAS_TEXTURE_u_normalTexture\\nuniform sampler2D u_normalTexture;\\n#endif\\n#ifdef HAS_TEXTURE_u_emissionTexture\\nuniform sampler2D u_emissionTexture;\\n#endif\\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\\nin highp float v_depth;uniform sampler2D u_depthTexture;uniform vec2 u_inv_depth_size;bool isOccluded() {vec2 coord=gl_FragCoord.xy*u_inv_depth_size;highp float depth=unpack_depth(texture(u_depthTexture,coord));return v_depth > depth+0.0005;}\\n#endif\\n#define saturate(_x) clamp(_x,0.,1.)\\nvec3 linearTosRGB(vec3 color) {return pow(color,vec3(1./2.2));}vec3 sRGBToLinear(vec3 srgbIn) {return pow(srgbIn,vec3(2.2));}float calculate_NdotL(vec3 normal,vec3 lightDir) {const float ext=0.70710678118;return (clamp(dot(normal,lightDir),-ext,1.0)+ext)/(1.0+ext);}vec3 getDiffuseShadedColor(vec3 albedo,vec3 normal,vec3 lightDir,vec3 lightColor)\\n{\\n#ifdef LIGHTING_3D_MODE\\nvec3 transformed_normal=vec3(-normal.xy,normal.z);float lighting_factor;\\n#ifdef RENDER_SHADOWS\\nlighting_factor=shadowed_light_factor_normal(transformed_normal,v_pos_light_view_0,v_pos_light_view_1,v_depth_shadows);\\n#else\\nlighting_factor=saturate(dot(transformed_normal,u_lighting_directional_dir));\\n#endif\\nreturn apply_lighting(albedo,transformed_normal,lighting_factor);\\n#else\\nvec3 n=normal;float colorvalue=((albedo.x*0.2126)+(albedo.y*0.7152))+(albedo.z*0.0722);vec3 c=vec3(0.03,0.03,0.03);float directional=clamp(dot(n,vec3(lightDir)),0.0,1.0);directional=mix(1.0-u_lightintensity,max((1.0-colorvalue)+u_lightintensity,1.0),directional);vec3 c3=c+clamp((albedo*directional)*lightColor,mix(vec3(0.0),vec3(0.3),vec3(1.0)-lightColor),vec3(1.0));return c3;\\n#endif\\n}vec4 getBaseColor() {vec4 albedo=u_baseColorFactor;\\n#ifdef HAS_ATTRIBUTE_a_color_3f\\nalbedo*=vec4(color_3f,1.0);\\n#endif\\n#ifdef HAS_ATTRIBUTE_a_pbr\\n#else\\n#ifdef HAS_ATTRIBUTE_a_color_4f\\nalbedo*=color_4f;\\n#endif\\n#endif\\n#if defined (HAS_TEXTURE_u_baseColorTexture) && defined (HAS_ATTRIBUTE_a_uv_2f)\\nvec4 texColor=texture(u_baseColorTexture,uv_2f);if(u_alphaMask) {if (texColor.w < u_alphaCutoff) {discard;}}\\n#ifdef UNPREMULT_TEXTURE_IN_SHADER\\nif(texColor.w > 0.0) {texColor.rgb/=texColor.w;}texColor.w=1.0;\\n#endif\\ntexColor.rgb=sRGBToLinear(texColor.rgb);if(u_baseTextureIsAlpha) {if (texColor.w < 0.5) {discard;}albedo*=mix(vec4(texColor.rgb,texColor.a),vec4(texColor.a),float(u_baseTextureIsAlpha));} else {albedo*=texColor;}\\n#endif\\nreturn vec4(mix(albedo.rgb,v_color_mix.rgb,v_color_mix.a),albedo.a);}highp mat3 cotangentFrame(highp vec3 N,highp vec3 p,highp vec2 uv ) {\\n#ifdef HAS_TEXTURE_u_normalTexture\\nhighp vec3 dp1=vec3(dFdx(p.x),dFdx(p.y),dFdx(p.z));highp vec3 dp2=vec3(dFdy(p.x),dFdy(p.y),dFdy(p.z));highp vec2 duv1=vec2(dFdx(uv.x),dFdx(uv.y));highp vec2 duv2=vec2(dFdy(uv.x),dFdy(uv.y));highp vec3 dp2perp=cross( dp2,N );highp vec3 dp1perp=cross( N,dp1 );highp vec3 T=dp2perp*duv1.x+dp1perp*duv2.x;highp vec3 B=dp2perp*duv1.y+dp1perp*duv2.y;highp float lengthT=dot(T,T);highp float lengthB=dot(B,B);highp float maxLength=max(lengthT,lengthB);highp float invmax=inversesqrt( maxLength );highp mat3 res=mat3( T*invmax,B*invmax,N );return res;\\n#else\\nreturn mat3(1.0);\\n#endif\\n}highp vec3 getNormal(){highp vec3 n;\\n#ifdef HAS_ATTRIBUTE_a_normal_3f\\nn=normalize(normal_3f);\\n#else\\nhighp vec3 fdx=vec3(dFdx(v_position_height.x),dFdx(v_position_height.y),dFdx(v_position_height.z));highp vec3 fdy=vec3(dFdy(v_position_height.x),dFdy(v_position_height.y),dFdy(v_position_height.z));n=normalize(cross(fdx,fdy))*-1.0;\\n#endif\\n#if defined(HAS_TEXTURE_u_normalTexture) && defined(HAS_ATTRIBUTE_a_uv_2f)\\nvec3 nMap=texture( u_normalTexture,uv_2f).xyz;nMap=normalize(2.0*nMap-vec3(1.0));highp vec3 v=normalize(-v_position_height.xyz);highp mat3 TBN=cotangentFrame(n,v,uv_2f);n=normalize(TBN*nMap);\\n#endif\\nreturn n;}struct Material {float perceptualRoughness;float alphaRoughness;float metallic;vec3 f90;vec4 baseColor;vec3 diffuseColor;vec3 specularColor;highp vec3 normal;};Material getPBRMaterial() {Material mat;mat.baseColor=getBaseColor();mat.perceptualRoughness=u_roughnessFactor;mat.metallic=u_metallicFactor;\\n#ifdef HAS_ATTRIBUTE_a_pbr\\nmat.perceptualRoughness=v_roughness_metallic_emissive_alpha.x;mat.metallic=v_roughness_metallic_emissive_alpha.y;mat.baseColor.w*=v_roughness_metallic_emissive_alpha.w;\\n#endif\\n#if defined(HAS_TEXTURE_u_metallicRoughnessTexture) && defined(HAS_ATTRIBUTE_a_uv_2f) \\nvec4 mrSample=texture(u_metallicRoughnessTexture,uv_2f);mat.perceptualRoughness*=mrSample.g;mat.metallic*=mrSample.b;\\n#endif\\nconst float c_minRoughness=0.04;mat.perceptualRoughness=clamp(mat.perceptualRoughness,c_minRoughness,1.0);mat.metallic=saturate(mat.metallic);mat.alphaRoughness=mat.perceptualRoughness*mat.perceptualRoughness;const vec3 f0=vec3(0.04);mat.diffuseColor=mat.baseColor.rgb*(vec3(1.0)-f0);mat.diffuseColor*=1.0-mat.metallic;mat.specularColor=mix(f0,mat.baseColor.rgb,mat.metallic);highp float reflectance=max(max(mat.specularColor.r,mat.specularColor.g),mat.specularColor.b);highp float reflectance90=saturate(reflectance*25.0);mat.f90=vec3(reflectance90);mat.normal=getNormal();return mat;}float V_GGX(float NdotL,float NdotV,float roughness)\\n{float a2=roughness*roughness;float GGXV=NdotL*sqrt(NdotV*NdotV*(1.0-a2)+a2);float GGXL=NdotV*sqrt(NdotL*NdotL*(1.0-a2)+a2);return 0.5/(GGXV+GGXL);}float V_GGXFast(float NdotL,float NdotV,float roughness) {float a=roughness;float GGXV=NdotL*(NdotV*(1.0-a)+a);float GGXL=NdotV*(NdotL*(1.0-a)+a);return 0.5/(GGXV+GGXL);}vec3 F_Schlick(vec3 specularColor,vec3 f90,float VdotH)\\n{return specularColor+(f90-specularColor)*pow(clamp(1.0-VdotH,0.0,1.0),5.0);}vec3 F_SchlickFast(vec3 specularColor,float VdotH)\\n{float x=1.0-VdotH;float x4=x*x*x*x;return specularColor+(1.0-specularColor)*x4*x;}float D_GGX(highp float NdotH,float alphaRoughness)\\n{highp float a4=alphaRoughness*alphaRoughness;highp float f=(NdotH*a4-NdotH)*NdotH+1.0;return a4/(PI*f*f);}vec3 diffuseBurley(Material mat,float LdotH,float NdotL,float NdotV)\\n{float f90=2.0*LdotH*LdotH*mat.alphaRoughness-0.5;return (mat.diffuseColor/PI)*(1.0+f90*pow((1.0-NdotL),5.0))*(1.0+f90*pow((1.0-NdotV),5.0));}vec3 diffuseLambertian(Material mat)\\n{\\n#ifdef LIGHTING_3D_MODE\\nreturn mat.diffuseColor;\\n#else\\nreturn mat.diffuseColor/PI;\\n#endif\\n}vec3 EnvBRDFApprox(vec3 specularColor,float roughness,highp float NdotV)\\n{vec4 c0=vec4(-1,-0.0275,-0.572,0.022);vec4 c1=vec4(1,0.0425,1.04,-0.04);highp vec4 r=roughness*c0+c1;highp float a004=min(r.x*r.x,exp2(-9.28*NdotV))*r.x+r.y;vec2 AB=vec2(-1.04,1.04)*a004+r.zw;return specularColor*AB.x+AB.y;}vec3 computeIndirectLightContribution(Material mat,float NdotV,vec3 normal)\\n{vec3 env_light=vec3(0.65,0.65,0.65);\\n#ifdef LIGHTING_3D_MODE\\nfloat ambient_factor=calculate_ambient_directional_factor(normal);env_light=u_lighting_ambient_color*ambient_factor;\\n#endif\\nvec3 envBRDF=EnvBRDFApprox(mat.specularColor,mat.perceptualRoughness,NdotV);vec3 indirectSpecular= envBRDF*env_light;vec3 indirectDiffuse=mat.diffuseColor*env_light;return indirectSpecular+indirectDiffuse;}vec3 computeLightContribution(Material mat,vec3 lightPosition,vec3 lightColor)\\n{highp vec3 n=mat.normal;highp vec3 v=normalize(-v_position_height.xyz);highp vec3 l=normalize(lightPosition);highp vec3 h=normalize(v+l);float NdotV=clamp(abs(dot(n,v)),0.001,1.0);float NdotL=saturate(dot(n,l));highp float NdotH=saturate(dot(n,h));float VdotH=saturate(dot(v,h));vec3 f=F_SchlickFast(mat.specularColor,VdotH);float g=V_GGXFast(NdotL,NdotV,mat.alphaRoughness);float d=D_GGX(NdotH,mat.alphaRoughness);vec3 diffuseTerm=(1.0-f)*diffuseLambertian(mat);vec3 specularTerm=f*g*d;vec3 transformed_normal=vec3(-n.xy,n.z);float lighting_factor;\\n#ifdef RENDER_SHADOWS\\nlighting_factor=shadowed_light_factor_normal(transformed_normal,v_pos_light_view_0,v_pos_light_view_1,v_depth_shadows);\\n#else\\nlighting_factor=NdotL;\\n#endif\\nvec3 directLightColor=(specularTerm+diffuseTerm)*lighting_factor*lightColor;vec3 indirectLightColor=computeIndirectLightContribution(mat,NdotV,transformed_normal);vec3 color=(saturate(directLightColor)+indirectLightColor);float intensityFactor=1.0;\\n#if !defined(LIGHTING_3D_MODE)\\nconst vec3 luminosityFactor=vec3(0.2126,0.7152,0.0722);float luminance=dot(diffuseTerm,luminosityFactor);intensityFactor=mix((1.0-u_lightintensity),max((1.0-luminance+u_lightintensity),1.0),NdotL);\\n#endif\\ncolor*=intensityFactor;return color;}void main() {\\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\\nif (isOccluded()) {discard;}\\n#endif\\nvec3 lightDir=u_lightpos;vec3 lightColor=u_lightcolor;\\n#ifdef LIGHTING_3D_MODE\\nlightDir=u_lighting_directional_dir;lightDir.xy=-lightDir.xy;lightColor=u_lighting_directional_color;\\n#endif\\nvec4 finalColor;\\n#ifdef DIFFUSE_SHADED\\nvec3 N=getNormal();vec3 diffuse=getDiffuseShadedColor(getBaseColor().rgb,N,lightDir,lightColor);\\n#ifdef HAS_TEXTURE_u_occlusionTexture\\nfloat ao=(texture(u_occlusionTexture,uv_2f).r-1.0)*u_aoIntensity+1.0;diffuse*=ao;\\n#endif\\nfinalColor=vec4(diffuse,1.0)*u_opacity;\\n#else\\nMaterial mat=getPBRMaterial();vec3 color=computeLightContribution(mat,lightDir,lightColor);float ao=1.0;\\n#if defined (HAS_TEXTURE_u_occlusionTexture) && defined(HAS_ATTRIBUTE_a_uv_2f)\\nao=(texture(u_occlusionTexture,uv_2f).x-1.0)*u_aoIntensity+1.0;color*=ao;\\n#endif\\nvec4 emissive=u_emissiveFactor;\\n#if defined(HAS_TEXTURE_u_emissionTexture) && defined(HAS_ATTRIBUTE_a_uv_2f)\\nemissive.rgb*=sRGBToLinear(texture(u_emissionTexture,uv_2f).rgb);\\n#endif\\ncolor+=emissive.rgb;float opacity=mat.baseColor.w*u_opacity;\\n#ifdef HAS_ATTRIBUTE_a_pbr\\nfloat resEmission=v_roughness_metallic_emissive_alpha.z;resEmission*=v_height_based_emission_params.z+v_height_based_emission_params.w*pow(clamp(v_height_based_emission_params.x,0.0,1.0),v_height_based_emission_params.y);color=mix(color,v_color_mix.rgb,min(1.0,resEmission));\\n#ifdef HAS_ATTRIBUTE_a_color_4f\\nfloat distance=length(vec2(1.3*max(0.0,abs(color_4f.x)-color_4f.z),color_4f.y));distance+= mix(0.5,0.0,clamp(resEmission-1.0,0.0,1.0));opacity*=v_roughness_metallic_emissive_alpha.w*saturate(1.0-distance*distance);\\n#endif\\n#endif\\nvec3 unlitColor=mat.baseColor.rgb*ao+emissive.rgb;color=mix(color,unlitColor,u_emissive_strength);color=linearTosRGB(color);color*=opacity;finalColor=vec4(color,opacity);\\n#endif\\n#ifdef FOG\\nfinalColor=fog_dither(fog_apply_premultiplied(finalColor,v_fog_pos,v_position_height.w));\\n#endif\\n#ifdef RENDER_CUTOFF\\nfinalColor*=v_cutoff_opacity;\\n#endif\\n#ifdef INDICATOR_CUTOUT\\nfinalColor=applyCutout(finalColor);\\n#endif\\nglFragColor=finalColor;\\n#ifdef OVERDRAW_INSPECTOR\\nglFragColor=vec4(1.0);\\n#endif\\nHANDLE_WIREFRAME_DEBUG;}','#include \"_prelude_fog.vertex.glsl\"\\n#include \"_prelude_shadow.vertex.glsl\"\\nin vec3 a_pos_3f;\\n#pragma mapbox: define-attribute highp vec3 normal_3f\\n#pragma mapbox: define-attribute highp vec2 uv_2f\\n#pragma mapbox: define-attribute highp vec3 color_3f\\n#pragma mapbox: define-attribute highp vec4 color_4f\\n#pragma mapbox: define-attribute-vertex-shader-only highp vec4 pbr\\n#pragma mapbox: define-attribute-vertex-shader-only highp vec3 heightBasedEmissiveStrength\\nuniform mat4 u_matrix;uniform mat4 u_lighting_matrix;uniform vec3 u_camera_pos;uniform vec4 u_color_mix;\\n#ifdef INSTANCED_ARRAYS\\nin vec4 a_normal_matrix0;in vec4 a_normal_matrix1;in vec4 a_normal_matrix2;in vec4 a_normal_matrix3;\\n#else\\nuniform highp mat4 u_normal_matrix;\\n#endif\\n#ifdef RENDER_SHADOWS\\nuniform mat4 u_light_matrix_0;uniform mat4 u_light_matrix_1;out vec4 v_pos_light_view_0;out vec4 v_pos_light_view_1;out float v_depth_shadows;\\n#endif\\nout vec4 v_position_height;out lowp vec4 v_color_mix;\\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\\nout highp float v_depth;\\n#endif\\n#ifdef HAS_ATTRIBUTE_a_pbr\\nout lowp vec4 v_roughness_metallic_emissive_alpha;out mediump vec4 v_height_based_emission_params;\\n#endif\\nvec3 sRGBToLinear(vec3 srgbIn) {return pow(srgbIn,vec3(2.2));}void main() {\\n#pragma mapbox: initialize-attribute highp vec3 normal_3f\\n#pragma mapbox: initialize-attribute highp vec2 uv_2f\\n#pragma mapbox: initialize-attribute highp vec3 color_3f\\n#pragma mapbox: initialize-attribute highp vec4 color_4f\\n#pragma mapbox: initialize-attribute-custom highp vec4 pbr\\n#pragma mapbox: initialize-attribute-custom highp vec3 heightBasedEmissiveStrength\\nhighp mat4 normal_matrix;\\n#ifdef INSTANCED_ARRAYS\\nnormal_matrix=mat4(a_normal_matrix0,a_normal_matrix1,a_normal_matrix2,a_normal_matrix3);\\n#else\\nnormal_matrix=u_normal_matrix;\\n#endif\\nvec3 local_pos;mat3 rs;\\n#ifdef MODEL_POSITION_ON_GPU\\nvec3 pos_color=normal_matrix[0].xyz;vec4 translate=normal_matrix[1];vec3 pos_a=floor(pos_color);vec3 rgb=1.05*(pos_color-pos_a);float color_mix=pos_a.z/100.0;v_color_mix=vec4(sRGBToLinear(rgb),color_mix);float meter_to_tile=normal_matrix[0].w;vec4 pos=vec4(pos_a.xy,translate.z,1.0);rs[0].x=normal_matrix[1].w;rs[0].yz=normal_matrix[2].xy;rs[1].xy=normal_matrix[2].zw;rs[1].z=normal_matrix[3].x;rs[2].xyz=normal_matrix[3].yzw;vec4 pos_node=u_lighting_matrix*vec4(a_pos_3f,1.0);vec3 rotated_pos_node=rs*pos_node.xyz;vec3 pos_model_tile=(rotated_pos_node+vec3(translate.xy,0.0))*vec3(meter_to_tile,meter_to_tile,1.0);pos.xyz+=pos_model_tile;local_pos=pos.xyz;gl_Position=u_matrix*pos;pos.z*=meter_to_tile;v_position_height.xyz=pos.xyz-u_camera_pos;\\n#else\\nlocal_pos=a_pos_3f;gl_Position=u_matrix*vec4(a_pos_3f,1);v_position_height.xyz=vec3(u_lighting_matrix*vec4(a_pos_3f,1));v_color_mix=vec4(sRGBToLinear(u_color_mix.rgb),u_color_mix.a);\\n#endif\\nv_position_height.w=a_pos_3f.z;\\n#ifdef HAS_ATTRIBUTE_a_pbr\\nvec4 albedo_c=decode_color(pbr.xy);vec2 e_r_m=unpack_float(pbr.z);vec2 r_m= unpack_float(e_r_m.y*16.0);r_m.r=r_m.r*16.0;v_color_mix=vec4(albedo_c.rgb,1.0);v_roughness_metallic_emissive_alpha=vec4(vec3(r_m,e_r_m.x)/255.0,albedo_c.a);v_roughness_metallic_emissive_alpha.z*=2.0;float heightBasedRelativeIntepolation=a_pos_3f.z*heightBasedEmissiveStrength.x+heightBasedEmissiveStrength.y;v_height_based_emission_params.x=heightBasedRelativeIntepolation;v_height_based_emission_params.y=heightBasedEmissiveStrength.z;vec2 emissionMultiplierValues=unpack_float(pbr.w)/256.0;v_height_based_emission_params.z=emissionMultiplierValues.x;v_height_based_emission_params.w=emissionMultiplierValues.y-emissionMultiplierValues.x;\\n#endif\\n#ifdef FOG\\nv_fog_pos=fog_position(local_pos);\\n#endif\\n#ifdef RENDER_CUTOFF\\nv_cutoff_opacity=cutoff_opacity(u_cutoff_params,gl_Position.z);\\n#endif\\n#ifdef TERRAIN_FRAGMENT_OCCLUSION\\nv_depth=gl_Position.z/gl_Position.w;\\n#endif\\n#ifdef HAS_ATTRIBUTE_a_normal_3f\\n#ifdef MODEL_POSITION_ON_GPU\\nfloat x_squared_scale=dot(rs[0],rs[0]);float y_squared_scale=dot(rs[1],rs[1]);float z_squared_scale=dot(rs[2],rs[2]);vec3 squared_scale=vec3(x_squared_scale,y_squared_scale,z_squared_scale);normal_3f=rs*((u_lighting_matrix*vec4(normal_3f,0.0)).xyz/squared_scale);normal_3f=normalize(normal_3f);\\n#else\\nnormal_3f=vec3(normal_matrix*vec4(normal_3f,0));\\n#endif\\n#endif\\n#ifdef HAS_ATTRIBUTE_a_pbr\\n#ifdef HAS_ATTRIBUTE_a_color_4f\\nv_roughness_metallic_emissive_alpha.w=clamp(color_4f.a*v_roughness_metallic_emissive_alpha.w*(v_roughness_metallic_emissive_alpha.z-1.0),0.0,1.0);\\n#endif\\n#endif\\n#ifdef RENDER_SHADOWS\\nvec3 shadow_pos=local_pos;\\n#ifdef NORMAL_OFFSET\\n#ifdef HAS_ATTRIBUTE_a_normal_3f\\n#ifdef MODEL_POSITION_ON_GPU\\nvec3 offset=shadow_normal_offset(vec3(-normal_3f.xy,normal_3f.z));shadow_pos+=offset*shadow_normal_offset_multiplier0();\\n#else\\nvec3 offset=shadow_normal_offset_model(normalize(normal_3f));shadow_pos+=offset*shadow_normal_offset_multiplier0();\\n#endif\\n#endif\\n#endif\\nv_pos_light_view_0=u_light_matrix_0*vec4(shadow_pos,1);v_pos_light_view_1=u_light_matrix_1*vec4(shadow_pos,1);v_depth_shadows=gl_Position.w;\\n#endif\\n}'),modelDepth:ZE(\"in highp float v_depth;void main() {\\n#ifndef DEPTH_TEXTURE\\nglFragColor=pack_depth(v_depth);\\n#endif\\n}\",\"in vec3 a_pos_3f;uniform mat4 u_matrix;out highp float v_depth;\\n#ifdef MODEL_POSITION_ON_GPU\\n#ifdef INSTANCED_ARRAYS\\nin vec4 a_normal_matrix0;in vec4 a_normal_matrix1;in vec4 a_normal_matrix2;in vec4 a_normal_matrix3;\\n#else\\nuniform highp mat4 u_instance;\\n#endif\\nuniform highp mat4 u_node_matrix;\\n#endif\\nvoid main() {\\n#ifdef MODEL_POSITION_ON_GPU\\nhighp mat4 instance;\\n#ifdef INSTANCED_ARRAYS\\ninstance=mat4(a_normal_matrix0,a_normal_matrix1,a_normal_matrix2,a_normal_matrix3);\\n#else\\ninstance=u_instance;\\n#endif\\nvec3 pos_color=instance[0].xyz;vec4 translate=instance[1];vec3 pos_a=floor(pos_color);float meter_to_tile=instance[0].w;vec4 pos=vec4(pos_a.xy,translate.z,1.0);mat3 rs;rs[0].x=instance[1].w;rs[0].yz=instance[2].xy;rs[1].xy=instance[2].zw;rs[1].z=instance[3].x;rs[2].xyz=instance[3].yzw;vec4 pos_node=u_node_matrix*vec4(a_pos_3f,1.0);vec3 rotated_pos_node=rs*pos_node.xyz;vec3 pos_model_tile=(rotated_pos_node+vec3(translate.xy,0.0))*vec3(meter_to_tile,meter_to_tile,1.0);pos.xyz+=pos_model_tile;gl_Position=u_matrix*pos;\\n#else\\ngl_Position=u_matrix*vec4(a_pos_3f,1);\\n#endif\\nv_depth=gl_Position.z/gl_Position.w;}\"),stars:ZE(\"in highp vec2 v_uv;in mediump float v_intensity;float shapeCircle(in vec2 uv)\\n{float beginFade=0.6;float lengthFromCenter=length(v_uv);return 1.0-clamp((lengthFromCenter-beginFade)/(1.0-beginFade),0.0,1.0);}void main() {float alpha=shapeCircle(v_uv);vec3 color=vec3(1.0,1.0,1.0);alpha*=v_intensity;glFragColor=vec4(color*alpha,alpha);HANDLE_WIREFRAME_DEBUG;}\",\"\\nin vec3 a_pos_3f;in vec2 a_uv;in float a_size_scale;in float a_fade_opacity;uniform mat4 u_matrix;uniform vec3 u_up;uniform vec3 u_right;uniform float u_intensity_multiplier;out highp vec2 v_uv;out mediump float v_intensity;void main() {v_uv=a_uv;v_intensity=a_fade_opacity*u_intensity_multiplier;vec3 pos=a_pos_3f;pos+=a_uv.x*u_right*a_size_scale;pos+=a_uv.y*u_up*a_size_scale;gl_Position=u_matrix*vec4(pos,1.0);}\")};function qE(e,t){const i=e.replace(/\\s*\\/\\/[^\\n]*\\n/g,\"\\n\").split(\"\\n\");for(let e of i)if(e=e.trim(),\"#\"===e[0]&&e.includes(\"if\")&&!e.includes(\"endif\")){e=e.replace(\"#\",\"\").replace(/ifdef|ifndef|elif|if/g,\"\").replace(/!|defined|\\(|\\)|\\|\\||&&/g,\"\").replace(/\\s+/g,\" \").trim();const i=e.split(\" \");for(const e of i)t.includes(e)||t.push(e);}}function ZE(e,t){const i=/#include\\s+\"([^\"]+)\"/g,r=/#pragma mapbox: ([\\w\\-]+) ([\\w]+) ([\\w]+) ([\\w]+)/g;let n=t.match(/(attribute(\\S*)|(^\\s*|;)in) (highp |mediump |lowp )?([\\w]+) ([\\w]+)/gm);n&&(n=n.map((e=>{const t=e.split(\" \");return t[t.length-1]})),n=[...new Set(n)]);const o={},s=[],a=[];e=e.replace(i,((e,t)=>(a.push(t),\"\"))),t=t.replace(i,((e,t)=>(s.push(t),\"\")));let l=[...FE];qE(e,l),qE(t,l);for(const e of [...s,...a])NE[e]||console.error(`Undefined include: ${e}`),UE[e]||(UE[e]=[],qE(NE[e],UE[e])),l=[...l,...UE[e]];return {fragmentSource:e=e.replace(r,((e,t,i,r,n)=>(o[n]=!0,\"define\"===t?`\\n#ifndef HAS_UNIFORM_u_${n}\\nin ${i} ${r} ${n};\\n#else\\nuniform ${i} ${r} u_${n};\\n#endif\\n`:\"initialize\"===t?`\\n#ifdef HAS_UNIFORM_u_${n}\\n ${i} ${r} ${n} = u_${n};\\n#endif\\n`:\"define-attribute\"===t?`\\n#ifdef HAS_ATTRIBUTE_a_${n}\\n in ${i} ${r} ${n};\\n#endif\\n`:\"initialize-attribute\"===t?\"\":void 0))),vertexSource:t=t.replace(r,((e,t,i,r,n)=>{const s=\"float\"===r?\"vec2\":r,a=n.match(/color/)?\"color\":s;return \"define-attribute-vertex-shader-only\"===t?`\\n#ifdef HAS_ATTRIBUTE_a_${n}\\nin ${i} ${r} a_${n};\\n#endif\\n`:o[n]?\"define\"===t?`\\n#ifndef HAS_UNIFORM_u_${n}\\nuniform lowp float u_${n}_t;\\nin ${i} ${s} a_${n};\\nout ${i} ${r} ${n};\\n#else\\nuniform ${i} ${r} u_${n};\\n#endif\\n`:\"initialize\"===t?\"vec4\"===a?`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${n} = a_${n};\\n#else\\n ${i} ${r} ${n} = u_${n};\\n#endif\\n`:`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\\n#else\\n ${i} ${r} ${n} = u_${n};\\n#endif\\n`:\"define-attribute\"===t?`\\n#ifdef HAS_ATTRIBUTE_a_${n}\\n in ${i} ${r} a_${n};\\n out ${i} ${r} ${n};\\n#endif\\n`:\"initialize-attribute\"===t?`\\n#ifdef HAS_ATTRIBUTE_a_${n}\\n ${n} = a_${n};\\n#endif\\n`:void 0:\"define\"===t?`\\n#ifndef HAS_UNIFORM_u_${n}\\nuniform lowp float u_${n}_t;\\nin ${i} ${s} a_${n};\\n#else\\nuniform ${i} ${r} u_${n};\\n#endif\\n`:\"define-instanced\"===t?\"mat4\"===a?`\\n#ifdef INSTANCED_ARRAYS\\nin vec4 a_${n}0;\\nin vec4 a_${n}1;\\nin vec4 a_${n}2;\\nin vec4 a_${n}3;\\n#else\\nuniform ${i} ${r} u_${n};\\n#endif\\n`:`\\n#ifdef INSTANCED_ARRAYS\\nin ${i} ${s} a_${n};\\n#else\\nuniform ${i} ${r} u_${n};\\n#endif\\n`:\"initialize-attribute-custom\"===t?`\\n#ifdef HAS_ATTRIBUTE_a_${n}\\n ${i} ${r} ${n} = a_${n};\\n#endif\\n`:\"vec4\"===a?`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${i} ${r} ${n} = a_${n};\\n#else\\n ${i} ${r} ${n} = u_${n};\\n#endif\\n`:`\\n#ifndef HAS_UNIFORM_u_${n}\\n ${i} ${r} ${n} = unpack_mix_${a}(a_${n}, u_${n}_t);\\n#else\\n ${i} ${r} ${n} = u_${n};\\n#endif\\n`})),staticAttributes:n,usedDefines:l,vertexIncludes:s,fragmentIncludes:a}}class $E{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffers=[],this.vao=null;}bind(e,t,i,r,n,o,s,a){this.context=e;let l=this.boundPaintVertexBuffers.length!==r.length;for(let e=0;!l&&e{const n=i.paint.get(\"hillshade-shadow-color\"),o=i.paint.get(\"hillshade-highlight-color\"),s=i.paint.get(\"hillshade-accent-color\"),a=i.paint.get(\"hillshade-emissive-strength\");let l=w(i.paint.get(\"hillshade-illumination-direction\"));if(\"viewport\"===i.paint.get(\"hillshade-illumination-anchor\"))l-=e.transform.angle;else if(e.style&&e.style.enable3dLights()&&e.style.directionalLight){const t=e.style.directionalLight.properties.get(\"direction\");l=w(J(t.x,t.y,t.z)[1]);}const c=!e.options.moving;return {u_matrix:r||e.transform.calculateProjMatrix(t.tileID.toUnwrapped(),c),u_image:0,u_latrange:WE(0,t.tileID),u_light:[i.paint.get(\"hillshade-exaggeration\"),l],u_shadow:n,u_highlight:o,u_emissive_strength:a,u_accent:s}})(e,i,r,e.terrain?t.projMatrix:null);e.uploadCommonUniforms(a,u,t.toUnwrapped());const{tileBoundsBuffer:p,tileBoundsIndexBuffer:f,tileBoundsSegments:m}=e.getTileBoundsBuffers(i);u.draw(e,l.TRIANGLES,n,o,s,Dx.disabled,d,r.id,p,f,m);}function XE(e,t,i){if(!t.needsDEMTextureUpload)return;const r=e.context,n=r.gl;r.pixelStoreUnpackPremultiplyAlpha.set(!1),t.demTexture=t.demTexture||e.getTileTexture(i.stride);const o=i.getPixels();t.demTexture?t.demTexture.update(o,{premultiply:!1}):t.demTexture=new My(r,o,n.R32F,{premultiply:!1}),t.needsDEMTextureUpload=!1;}function YE(e,t,i){const r=e.context,n=r.gl;if(!t.dem)return;const o=t.dem;if(r.activeTexture.set(n.TEXTURE1),XE(e,t,o),!t.demTexture)return;t.demTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE);const s=o.dim;r.activeTexture.set(n.TEXTURE0);let a=t.hillshadeFBO;if(!a){const e=new My(r,{width:s,height:s,data:null},n.RGBA);e.bind(n.LINEAR,n.CLAMP_TO_EDGE),a=t.hillshadeFBO=r.createFramebuffer(s,s,!0,\"renderbuffer\"),a.colorAttachment.set(e.texture);}r.bindFramebuffer.set(a.framebuffer),r.viewport.set([0,0,s,s]);const{tileBoundsBuffer:l,tileBoundsIndexBuffer:c,tileBoundsSegments:h}=e.getMercatorTileBoundsBuffers(),u=[];e.linearFloatFilteringSupported()&&u.push(\"TERRAIN_DEM_FLOAT_FORMAT\"),e.getOrCreateProgram(\"hillshadePrepare\",{defines:u}).draw(e,n.TRIANGLES,Mx.disabled,Sx.disabled,Cx.unblended,Dx.disabled,((e,t)=>{const i=t.stride,r=Au.create();return Au.ortho(r,0,cr,-cr,0,0,1),Au.translate(r,r,[0,-cr,0]),{u_matrix:r,u_image:1,u_dimension:[i,i],u_zoom:e.overscaledZ}})(t.tileID,o),i.id,l,c,h),t.needsHillshadePrepare=!1;}const KE=e=>({u_matrix:new jl(e),u_image0:new kl(e),u_skirt_height:new Ol(e),u_ground_shadow_factor:new Fl(e)}),JE=(e,t,i)=>({u_matrix:e,u_image0:0,u_skirt_height:t,u_ground_shadow_factor:i}),QE=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f)=>({u_proj_matrix:Float32Array.from(e),u_globe_matrix:t,u_normalize_matrix:Float32Array.from(r),u_merc_matrix:i,u_zoom_transition:n,u_merc_center:o,u_image0:0,u_frustum_tl:s,u_frustum_tr:a,u_frustum_br:l,u_frustum_bl:c,u_globe_pos:h,u_globe_radius:u,u_viewport:d,u_grid_matrix:f?Float32Array.from(f):new Float32Array(9),u_skirt_height:p}),eM=(e,t)=>{if(t>0&&e.terrain&&H(\"Cutoff is currently disabled on terrain\"),t<=0||e.terrain)return {shouldRenderCutoff:!1,uniformValues:{u_cutoff_params:[0,0,0,0]}};const i=e.transform,r=Math.max(Math.abs(i._zoom-(e.minCutoffZoom-1)),1),n=i.isLODDisabled(!1)?P(60,45,i.pitch):P(30,15,i.pitch),o=i._farZ-i._nearZ,s=t*i.height,a=((1-(l=n))*(.75*i.cameraToCenterDistance)+l*(i._farZ+s))*r;var l;return {shouldRenderCutoff:n<1,uniformValues:{u_cutoff_params:[i._nearZ,i._farZ,(a-i._nearZ)/o,(a-s-i._nearZ)/o]}}};function tM(e,t){return null!=e&&null!=t&&!(!e.hasData()||!t.hasData())&&null!=e.demTexture&&null!=t.demTexture&&e.tileID.key!==t.tileID.key}const iM=new class{constructor(){this.operations={};}newMorphing(e,t,i,r,n){if(e in this.operations){const t=this.operations[e];t.to.tileID.key!==i.tileID.key&&(t.queued=i);}else this.operations[e]={startTime:r,phase:0,duration:n,from:t,to:i,queued:null};}getMorphValuesForProxy(e){if(!(e in this.operations))return null;const t=this.operations[e];return {from:t.from,to:t.to,phase:t.phase}}update(e){for(const t in this.operations){const i=this.operations[t];for(i.phase=(e-i.startTime)/i.duration;i.phase>=1||!this._validOp(i);)if(!this._nextOp(i,e)){delete this.operations[t];break}}}_nextOp(e,t){return !!e.queued&&(e.from=e.to,e.to=e.queued,e.queued=null,e.phase=0,e.startTime=t,!0)}_validOp(e){return e.from.hasData()&&e.to.hasData()}},rM={0:null,1:\"TERRAIN_VERTEX_MORPHING\"};function nM(e,t,i){if(0===t)return 0;const r=t<1&&514===i?.25/t:1;return 6*Math.pow(1.5,22-e)*Math.max(t,1)*r}function oM(e,t){const i=1<({u_matrix:e});function aM(e,t,i,r,n){if(n>0){const o=dt.now(),s=(o-e.timeAdded)/n,a=t?(o-t.timeAdded)/n:-1,l=i.getSource(),c=r.coveringZoomLevel({tileSize:l.tileSize,roundZoom:l.roundZoom}),h=!t||Math.abs(t.tileID.overscaledZ-c)>Math.abs(e.tileID.overscaledZ-c),u=h&&e.refreshedUponExpiration?1:z(h?s:1-a,0,1);return e.refreshedUponExpiration&&s>=1&&(e.refreshedUponExpiration=!1),t?{opacity:1,mix:1-u}:{opacity:u,mix:0}}return {opacity:1,mix:0}}class lM extends Lx{constructor(e){const t={type:\"raster-dem\",maxzoom:e.transform.maxZoom},i=new Ew(Ww(),null),r=ST(\"mock-dem\",t,i,e.style);super(\"mock-dem\",r,!1),r.setEventedParent(this),this._sourceLoaded=!0;}_loadTile(e,t){e.state=\"loaded\",t(null);}}class cM extends Lx{constructor(e){const t=ST(\"proxy\",{type:\"geojson\",maxzoom:e.transform.maxZoom},new Ew(Ww(),null),e.style);super(\"proxy\",t,!1),t.setEventedParent(this),this.map=this.getSource().map=e,this.used=this._sourceLoaded=!0,this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={};}update(e,t,i){if(e.freezeTileCoverage)return;this.transform=e;const r=e.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}).reduce(((t,i)=>{if(t[i.key]=\"\",!this._tiles[i.key]){const t=new Oy(i,this._source.tileSize*i.overscaleFactor(),e.tileZoom);t.state=\"loaded\",this._tiles[i.key]=t;}return t}),{});for(const e in this._tiles)e in r||(this.freeFBO(e),this._tiles[e].unloadVectorData(),delete this._tiles[e]);}freeFBO(e){const t=this.proxyCachedFBO[e];if(void 0!==t){const i=Object.values(t);this.renderCachePool.push(...i),delete this.proxyCachedFBO[e];}}deallocRenderCache(){this.renderCache.forEach((e=>e.fb.destroy())),this.renderCache=[],this.renderCachePool=[],this.proxyCachedFBO={};}}class hM extends qu{constructor(e,t,i){super(e.overscaledZ,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y),this.proxyTileKey=t,this.projMatrix=i;}}class uM extends Km{constructor(e,t){super(),this.painter=e,this.terrainTileForTile={},this.prevTerrainTileForTile={};const[i,r,n]=function(e){const t=new za,i=new Wa,r=131;t.reserve(17161),i.reserve(33800);const n=cr/128,o=cr+n/2,s=o+n;for(let e=-n;eo||e<0||e>o?24575:0,n=z(Math.round(i),0,cr),s=z(Math.round(e),0,cr);t.emplaceBack(n+r,s);}const a=(e,t)=>{const n=t*r+e;i.emplaceBack(n+1,n,n+r),i.emplaceBack(n+r,n+r+1,n+1);};for(let e=1;e<129;e++)for(let t=1;t<129;t++)a(t,e);return [0,129].forEach((e=>{for(let t=0;t<130;t++)a(t,e),a(e,t);})),[t,i,32768]}(),o=e.context;this.gridBuffer=o.createVertexBuffer(i,Nu.members),this.gridIndexBuffer=o.createIndexBuffer(r),this.gridSegments=xl.simpleSegment(0,0,i.length,r.length),this.gridNoSkirtSegments=xl.simpleSegment(0,0,i.length,n),this.proxyCoords=[],this.proxiedCoords={},this._visibleDemTiles=[],this._drapedRenderBatches=[],this._sourceTilesOverlap={},this.proxySourceCache=new cM(t.map),this.orthoMatrix=Au.create(),Au.ortho(this.orthoMatrix,\"globe\"===this.painter.transform.projection.name?.015:0,cr,0,cr,0,1);const s=o.gl;this._overlapStencilMode=new Sx({func:s.GEQUAL,mask:255},0,255,s.KEEP,s.KEEP,s.REPLACE),this._previousZoom=e.transform.zoom,this.pool=[],this._findCoveringTileCache={},this._tilesDirty={},this.style=t,this._useVertexMorphing=!0,this._exaggeration=1,this._mockSourceCache=new lM(t.map),this._pendingGroundEffectLayers=[];}set style(e){e.on(\"data\",this._onStyleDataEvent.bind(this)),this._style=e,this._style.map.on(\"moveend\",(()=>{this._clearLineLayersFromRenderCache();}));}update(e,t,i){if(e&&e.terrain){this._style!==e&&(this.style=e,this._evaluationZoom=void 0);const r=e.terrain.properties,n=0===e.terrain.drapeRenderMode,o=e.terrain.isZoomDependent();this._previousUpdateTimestamp=this.enabled?this._updateTimestamp:void 0,this._updateTimestamp=dt.now();const s=e.terrain&&e.terrain.scope,a=r.get(\"source\"),l=n?this._mockSourceCache:e.getSourceCache(a,s);if(!l)return void H(`Couldn't find terrain source \"${a}\".`);if(this.sourceCache=l,this._exaggeration=o?this.calculateExaggeration(t):r.get(\"exaggeration\"),!t.projection.requiresDraping&&o&&0===this._exaggeration)return void this._disable();this.enabled=!0;const c=()=>{this.sourceCache.used&&H(`Raster DEM source '${this.sourceCache.id}' is used both for terrain and as layer source.\\nThis leads to lower resolution of hillshade. For full hillshade resolution but higher memory consumption, define another raster DEM source.`);const e=this.getScaledDemTileSize();this.sourceCache.update(t,e,!0),this.resetTileLookupCache(this.sourceCache.id);};this.sourceCache.usedForTerrain||(this.resetTileLookupCache(this.sourceCache.id),this.sourceCache.usedForTerrain=!0,c(),this._initializing=!0),c(),t.updateElevation(!0,i),this.resetTileLookupCache(this.proxySourceCache.id),this.proxySourceCache.update(t),this._emptyDEMTextureDirty=!0,this._previousZoom=t.zoom;}else this._disable();}calculateExaggeration(e){const t=this._previousCameraAltitude,i=e.getFreeCameraOptions().position.z/e.pixelsPerMeter*e.worldSize;this._previousCameraAltitude=i;const r=null!=t?i-t:Number.MAX_VALUE;if(Math.abs(r)<2)return this._exaggeration;const n=e.zoom,o=this._style.terrain;if(!this._previousUpdateTimestamp)return o.getExaggeration(n);let s=n-this._previousZoom;const a=this._previousUpdateTimestamp;let l=n;null!=this._evaluationZoom&&(l=this._evaluationZoom,Math.abs(n-l)>.5&&(s=.5*(n-l+s)),s*r<0&&(l+=s)),this._evaluationZoom=l;const c=o.getExaggeration(l),h=c===o.getExaggeration(Math.max(0,l-.1));if(h&&Math.abs(c-this._exaggeration)<.01)return c;let u=Math.min(.1,.00375*(this._updateTimestamp-a));return (h||c<.1||Math.abs(s)<1e-4)&&(u=Math.min(.2,4*u)),Kr(this._exaggeration,c,u)}resetTileLookupCache(e){this._findCoveringTileCache[e]={};}getScaledDemTileSize(){return this.sourceCache.getSource().tileSize/128*this.proxySourceCache.getSource().tileSize}_onStyleDataEvent(e){e.coord&&\"source\"===e.dataType?this._clearRenderCacheForTile(e.sourceCacheId,e.coord):\"style\"===e.dataType&&(this.invalidateRenderCache=!0,this._evaluationZoom=void 0,this._previousUpdateTimestamp=void 0,this._previousCameraAltitude=void 0);}_disable(){if(this.enabled&&(this.enabled=!1,this._sharedDepthStencil=void 0,this._evaluationZoom=void 0,this._previousUpdateTimestamp=void 0,this.proxySourceCache.deallocRenderCache(),this._style))for(const e in this._style._mergedSourceCaches)this._style._mergedSourceCaches[e].usedForTerrain=!1;}destroy(){this._disable(),this._emptyDEMTexture&&this._emptyDEMTexture.destroy(),this._emptyDepthBufferTexture&&this._emptyDepthBufferTexture.destroy(),this.pool.forEach((e=>e.fb.destroy())),this.pool=[],this._depthFBO&&(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0),this.framebufferCopyTexture&&this.framebufferCopyTexture.destroy();}_source(){return this.enabled?this.sourceCache:null}isUsingMockSource(){return this.sourceCache===this._mockSourceCache}exaggeration(){return this._exaggeration}get visibleDemTiles(){return this._visibleDemTiles}get drapeBufferSize(){const e=2*this.proxySourceCache.getSource().tileSize;return [e,e]}set useVertexMorphing(e){this._useVertexMorphing=e;}updateTileBinding(e){if(!this.enabled)return;this.prevTerrainTileForTile=this.terrainTileForTile;const t=this.proxySourceCache,i=this.painter.transform;this._initializing&&(this._initializing=0===i._centerAltitude&&-1===this.getAtPointOrZero(lp.fromLngLat(i.center),-1),this._emptyDEMTextureDirty=!this._initializing);const r=this.proxyCoords=t.getIds().map((e=>{const r=t.getTileByID(e).tileID;return r.projMatrix=i.calculateProjMatrix(r.toUnwrapped()),r}));!function(e,t){const i=t.transform.pointCoordinate(t.transform.getCameraPoint()),r=new y(i.x,i.y);e.sort(((e,t)=>{if(t.overscaledZ-e.overscaledZ)return t.overscaledZ-e.overscaledZ;const i=new y(e.canonical.x+(1<{this.proxyToSource[e.key]={};})),this.terrainTileForTile={};const o=this._style._mergedSourceCaches;for(const t in o){const i=o[t];if(!i.used)continue;if(i!==this.sourceCache&&this.resetTileLookupCache(i.id),this._setupProxiedCoordsForOrtho(i,e[t],n),i.usedForTerrain)continue;const r=e[t];i.getSource().reparseOverscaled&&this._assignTerrainTiles(r);}this.proxiedCoords[t.id]=r.map((e=>new hM(e,e.key,this.orthoMatrix))),this._assignTerrainTiles(r),this._prepareDEMTextures(),this._setupDrapedRenderBatches(),this._initFBOPool(),this._setupRenderCache(n),this.renderingToTexture=!1;const s={};this._visibleDemTiles=[];for(const e of this.proxyCoords){const t=this.terrainTileForTile[e.key];if(!t)continue;const i=t.tileID.key;i in s||(this._visibleDemTiles.push(t),s[i]=i);}}_assignTerrainTiles(e){this._initializing||e.forEach((e=>{if(this.terrainTileForTile[e.key])return;const t=this._findTileCoveringTileID(e,this.sourceCache);t&&(this.terrainTileForTile[e.key]=t);}));}_prepareDEMTextures(){const e=this.painter.context,t=e.gl;for(const i in this.terrainTileForTile){const r=this.terrainTileForTile[i],n=r.dem;!n||r.demTexture&&!r.needsDEMTextureUpload||(e.activeTexture.set(t.TEXTURE1),XE(this.painter,r,n));}}_prepareDemTileUniforms(e,t,i,r){if(!t||null==t.demTexture)return !1;const n=e.tileID.canonical,o=Math.pow(2,t.tileID.canonical.z-n.z),s=r||\"\";return i[`u_dem_tl${s}`]=[n.x*o%1,n.y*o%1],i[`u_dem_scale${s}`]=o,!0}get emptyDEMTexture(){return !this._emptyDEMTextureDirty&&this._emptyDEMTexture?this._emptyDEMTexture:this._updateEmptyDEMTexture()}get emptyDepthBufferTexture(){const e=this.painter.context,t=e.gl;if(!this._emptyDepthBufferTexture){const i=new ef({width:1,height:1},Uint8Array.of(255,255,255,255));this._emptyDepthBufferTexture=new My(e,i,t.RGBA,{premultiply:!1});}return this._emptyDepthBufferTexture}_getLoadedAreaMinimum(){let e=0;const t=this._visibleDemTiles.reduce(((t,i)=>{if(!i.dem)return t;const r=i.dem.tree.minimums[0];return r>0&&e++,t+r}),0);return e?t/e:0}_updateEmptyDEMTexture(){const e=this.painter.context,t=e.gl;e.activeTexture.set(t.TEXTURE2);const i=this._getLoadedAreaMinimum(),[r,n]=(()=>{const e=new tf({width:1,height:1},new Float32Array([i]));return [t.R32F,e]})();this._emptyDEMTextureDirty=!1;let o=this._emptyDEMTexture;return o?o.update(n,{premultiply:!1}):o=this._emptyDEMTexture=new My(e,n,r,{premultiply:!1}),o}setupElevationDraw(e,t,i){const r=this.painter.context,n=r.gl,o={u_dem:2,u_dem_prev:4,u_dem_tl:[0,0],u_dem_tl_prev:[0,0],u_dem_scale:0,u_dem_scale_prev:0,u_dem_size:0,u_dem_lerp:1,u_depth:3,u_depth_size_inv:[0,0],u_exaggeration:0};o.u_exaggeration=this.exaggeration();let s=null,a=null,l=1;if(i&&i.morphing&&this._useVertexMorphing){const t=i.morphing.srcDemTile,r=i.morphing.dstDemTile;l=i.morphing.phase,t&&r&&(this._prepareDemTileUniforms(e,t,o,\"_prev\")&&(a=t),this._prepareDemTileUniforms(e,r,o)&&(s=r));}const c=e=>e&&e.demTexture&&this.painter.linearFloatFilteringSupported()?n.LINEAR:n.NEAREST,h=e=>{o.u_dem_size=1===e.size[0]?1:e.size[0]-2;};if(a&&s)r.activeTexture.set(n.TEXTURE2),s.demTexture.bind(c(s),n.CLAMP_TO_EDGE),r.activeTexture.set(n.TEXTURE4),a.demTexture.bind(c(a),n.CLAMP_TO_EDGE),s.demTexture&&h(s.demTexture),o.u_dem_lerp=l;else {s=this.terrainTileForTile[e.tileID.key],r.activeTexture.set(n.TEXTURE2);const t=this._prepareDemTileUniforms(e,s,o)?s.demTexture:this.emptyDEMTexture;t.bind(c(s),n.CLAMP_TO_EDGE),h(t);}if(r.activeTexture.set(n.TEXTURE3),i&&i.useDepthForOcclusion?(this._depthTexture&&this._depthTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE),this._depthFBO&&(o.u_depth_size_inv=[1/this._depthFBO.width,1/this._depthFBO.height])):(this.emptyDepthBufferTexture.bind(n.NEAREST,n.CLAMP_TO_EDGE),o.u_depth_size_inv=[1,1]),i&&i.useMeterToDem&&s){const e=(1<{if(l===i)return;const r=[rM[i],\"PROJECTION_GLOBE_VIEW\"];h&&r.push(\"CUSTOM_ANTIALIASING\");const n=e.isTileAffectedByFog(t);a=e.getOrCreateProgram(\"globeRaster\",{defines:r,overrideFog:n}),l=i;},d=e.colorModeForRenderPass(),p=new Mx(s.LEQUAL,Mx.ReadWrite,e.depthRangeFor3D);iM.update(n);const f=Pd(c),m=[Kd(c.center.lng),Jd(c.center.lat)],_=e.globeSharedBuffers,g=[c.width*dt.devicePixelRatio,c.height*dt.devicePixelRatio],y=Float32Array.from(c.globeMatrix),x={useDenormalizedUpVectorScale:!0};{const c=e.transform,h=nM(c.zoom,t.exaggeration(),t.sourceCache._source.tileSize);l=-1;const v=s.TRIANGLES;for(const l of r){const r=i.getTile(l),b=Sx.disabled,w=t.prevTerrainTileForTile[l.key],T=t.terrainTileForTile[l.key];tM(w,T)&&iM.newMorphing(l.key,w,T,n,250),o.activeTexture.set(s.TEXTURE0),r.texture&&r.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE);const E=iM.getMorphValuesForProxy(l.key),A=E?1:0;E&&Lt(x,{morphing:{srcDemTile:E.from,dstDemTile:E.to,phase:M(E.phase)}});const S=xd(l.canonical),I=Od(S.getCenter().lat),C=kd(l.canonical,S,I,c.worldSize/c._pixelsPerMercatorPixel),z=Ad(fd(l.canonical)),P=QE(c.expandedFarZProjMatrix,y,f,z,Dd(c.zoom),m,c.frustumCorners.TL,c.frustumCorners.TR,c.frustumCorners.BR,c.frustumCorners.BL,c.globeCenterInViewSpace,c.globeRadius,g,h,C);if(u(l,A),a&&(t.setupElevationDraw(r,a,x),e.uploadCommonUniforms(o,a,l.toUnwrapped()),_)){const[t,i,r]=_.getGridBuffers(I,0!==h);a.draw(e,v,p,b,d,Dx.backCCW,P,\"globe_raster\",t,i,r);}}}if(_&&(e.renderDefaultNorthPole||e.renderDefaultSouthPole)){const n=[\"GLOBE_POLES\",\"PROJECTION_GLOBE_VIEW\"];h&&n.push(\"CUSTOM_ANTIALIASING\"),a=e.getOrCreateProgram(\"globeRaster\",{defines:n});for(const n of r){const{x:r,y:l,z:h}=n.canonical,u=0===l,f=l===(1<t.draw(e,s.TRIANGLES,p,Sx.disabled,d,Dx.disabled,QE(c.expandedFarZProjMatrix,_,_,T,0,m,c.frustumCorners.TL,c.frustumCorners.TR,c.frustumCorners.BR,c.frustumCorners.BL,c.globeCenterInViewSpace,c.globeRadius,g,0),\"globe_pole_raster\",i,b,w);t.setupElevationDraw(l,a,x),e.uploadCommonUniforms(o,a,n.toUnwrapped()),u&&e.renderDefaultNorthPole&&E(a,y),f&&e.renderDefaultSouthPole&&(_=Au.scale(Au.create(),_,[1,-1,1]),E(a,v));}}}}(e,t,i,r,n);else {const o=e.context,s=o.gl;let a,l;const c=e.shadowRenderer,h=eM(e,e.longestCutoffRange),u=t=>{if(l===t)return;const i=[];i.push(rM[t]),h.shouldRenderCutoff&&i.push(\"RENDER_CUTOFF\"),a=e.getOrCreateProgram(\"terrainRaster\",{defines:i}),l=t;},d=e.colorModeForRenderPass(),p=new Mx(s.LEQUAL,Mx.ReadWrite,e.depthRangeFor3D);iM.update(n);const f=e.transform,m=nM(f.zoom,t.exaggeration(),t.sourceCache._source.tileSize);let _=[0,0,0];if(c){const t=e.style.directionalLight,i=e.style.ambientLight;t&&i&&(_=WA(t,i));}{l=-1;const g=s.TRIANGLES,[y,x]=[t.gridIndexBuffer,t.gridSegments];for(const l of r){const r=i.getTile(l),v=Sx.disabled,b=t.prevTerrainTileForTile[l.key],w=t.terrainTileForTile[l.key];tM(b,w)&&iM.newMorphing(l.key,b,w,n,250),o.activeTexture.set(s.TEXTURE0),r.texture&&r.texture.bind(s.LINEAR,s.CLAMP_TO_EDGE);const T=iM.getMorphValuesForProxy(l.key),E=T?1:0;let A;T&&(A={morphing:{srcDemTile:T.from,dstDemTile:T.to,phase:M(T.phase)}});const S=JE(l.projMatrix,oM(l.canonical,f.renderWorldCopies)?m/10:m,_);if(u(E),!a)continue;t.setupElevationDraw(r,a,A);const I=l.toUnwrapped();c&&c.setupShadows(I,a),e.uploadCommonUniforms(o,a,I,null,h),a.draw(e,g,p,v,d,Dx.backCCW,S,\"terrain_raster\",t.gridBuffer,y,x);}}}}(t,this,this.proxySourceCache,e,this._updateTimestamp),this.renderingToTexture=!0,t.gpuTimingDeferredRenderEnd(),e.splice(0,e.length));}renderBatch(e){if(0===this._drapedRenderBatches.length)return e+1;this.renderingToTexture=!0;const t=this.painter,i=this.painter.context,r=this.proxySourceCache,n=this.proxiedCoords[r.id],o=this._drapedRenderBatches.shift(),s=t.style.order,a=[];let l=0;for(const c of n){const n=r.getTileByID(c.proxyTileKey),h=r.proxyCachedFBO[c.key]?r.proxyCachedFBO[c.key][e]:void 0,u=void 0!==h?r.renderCache[h]:this.pool[l++],d=void 0!==h;if(n.texture=u.tex,d&&!u.dirty){a.push(n.tileID);continue}let p;i.bindFramebuffer.set(u.fb.framebuffer),this.renderedToTile=!1,u.dirty&&(i.clear({color:hi.transparent,stencil:0}),u.dirty=!1);for(let e=o.start;e<=o.end;++e){const r=t.style._mergedLayers[s[e]];if(r.isHidden(t.transform.zoom))continue;const n=t.style.getLayerSourceCache(r),o=n?this.proxyToSource[c.key][n.id]:[c];if(!o)continue;const a=o;i.viewport.set([0,0,u.fb.width,u.fb.height]),p!==(n?n.id:null)&&(this._setupStencil(u,o,r,n),p=n?n.id:null),t.renderLayer(t,n,r,a);}if(0===this._drapedRenderBatches.length)for(const e of this._pendingGroundEffectLayers){const r=t.style._mergedLayers[s[e]];if(r.isHidden(t.transform.zoom))continue;const n=t.style.getLayerSourceCache(r),o=n?this.proxyToSource[c.key][n.id]:[c];if(!o)continue;const a=o;i.viewport.set([0,0,u.fb.width,u.fb.height]),p!==(n?n.id:null)&&(this._setupStencil(u,o,r,n),p=n?n.id:null),t.renderLayer(t,n,r,a);}this.renderedToTile?(u.dirty=!0,a.push(n.tileID)):d||--l,5===l&&(l=0,this.renderToBackBuffer(a));}return this.renderToBackBuffer(a),this.renderingToTexture=!1,i.bindFramebuffer.set(null),i.viewport.set([0,0,t.width,t.height]),o.end+1}postRender(){}isLayerOrderingCorrect(e){const t=e.order.length;let i=-1,r=t;for(let n=0;ni}getMinElevationBelowMSL(){let e=0;return this._visibleDemTiles.filter((e=>e.dem)).forEach((t=>{e=Math.min(e,t.dem.tree.minimums[0]);})),0===e?e:(e-30)*this._exaggeration}raycast(e,t,i){if(!this._visibleDemTiles)return null;const r=this._visibleDemTiles.filter((e=>e.dem)).map((r=>{const n=r.tileID,o=1<(null!==e.t?e.t:Number.MAX_VALUE)-(null!==t.t?t.t:Number.MAX_VALUE)));for(const n of r){if(null==n.t)return null;const r=n.tile.dem.tree.raycast(n.minx,n.miny,n.maxx,n.maxy,e,t,i);if(null!=r)return r}return null}_createFBO(){const e=this.painter.context,t=e.gl,i=this.drapeBufferSize;e.activeTexture.set(t.TEXTURE0);const r=new My(e,{width:i[0],height:i[1],data:null},t.RGBA);r.bind(t.LINEAR,t.CLAMP_TO_EDGE);const n=e.createFramebuffer(i[0],i[1],!0,null);return n.colorAttachment.set(r.texture),n.depthAttachment=new Tx(e,n.framebuffer),void 0===this._sharedDepthStencil?(this._sharedDepthStencil=e.createRenderbuffer(e.gl.DEPTH_STENCIL,i[0],i[1]),this._stencilRef=0,n.depthAttachment.set(this._sharedDepthStencil),e.clear({stencil:0})):n.depthAttachment.set(this._sharedDepthStencil),e.extTextureFilterAnisotropic&&t.texParameterf(t.TEXTURE_2D,e.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,e.extTextureFilterAnisotropicMax),{fb:n,tex:r,dirty:!1}}_initFBOPool(){for(;this.pool.length{const t=this._style._mergedLayers[e],i=t.isHidden(this.painter.transform.zoom);return \"custom\"===t.type?!i&&t.shouldRedrape():!i&&t.hasTransition()}))}_clearLineLayersFromRenderCache(){let e=!1;for(const t of this._style.getSources())if(t instanceof Vw){e=!0;break}if(!e)return;const t={};for(let e=0;et>e.end));t||H(\"fill-extrusion with flood lighting and/or ground ambient occlusion should be moved to be on top of all draped layers.\");}this._drapedRenderBatches=i;}_setupRenderCache(e){const t=this.proxySourceCache;if(this._shouldDisableRenderCache()||this.invalidateRenderCache){if(this.invalidateRenderCache=!1,t.renderCache.length>t.renderCachePool.length){const e=Object.values(t.proxyCachedFBO);t.proxyCachedFBO={};for(let i=0;i=0;n--){const o=i[n];if(t.getTileByID(o.key),void 0!==t.proxyCachedFBO[o.key]){const i=e[o.key],n=this.proxyToSource[o.key];let s=0;for(const e in n){const t=n[e],o=i[e];if(!o||o.length!==t.length||t.some(((t,i)=>t!==o[i]||r[e]&&r[e].hasOwnProperty(t.key)))){s=-1;break}++s;}for(const e in t.proxyCachedFBO[o.key])t.renderCache[t.proxyCachedFBO[o.key][e]].dirty=s<0||s!==Object.values(i).length;}}const n=[...this._drapedRenderBatches];n.sort(((e,t)=>t.end-t.start-(e.end-e.start)));for(const e of n)for(const r of i){if(t.proxyCachedFBO[r.key])continue;let i=t.renderCachePool.pop();void 0===i&&t.renderCache.length<50&&(i=t.renderCache.length,t.renderCache.push(this._createFBO())),void 0!==i&&(t.proxyCachedFBO[r.key]={},t.proxyCachedFBO[r.key][e.start]=i,t.renderCache[i].dirty=!0);}this._tilesDirty={};}_setupStencil(e,t,i,r){if(!r||!this._sourceTilesOverlap[r.id])return void(this._overlapStencilType&&(this._overlapStencilType=!1));const n=this.painter.context,o=n.gl;if(t.length<=1)return void(this._overlapStencilType=!1);let s;if(i.isTileClipped())s=t.length,this._overlapStencilMode.test={func:o.EQUAL,mask:255},this._overlapStencilType=\"Clip\";else {if(!(t[0].overscaledZ>t[t.length-1].overscaledZ))return void(this._overlapStencilType=!1);s=1,this._overlapStencilMode.test={func:o.GREATER,mask:255},this._overlapStencilType=\"Mask\";}this._stencilRef+s>255&&(n.clear({stencil:0}),this._stencilRef=0),this._stencilRef+=s,this._overlapStencilMode.ref=this._stencilRef,i.isTileClipped()&&this._renderTileClippingMasks(t,this._overlapStencilMode.ref);}clipOrMaskOverlapStencilType(){return \"Clip\"===this._overlapStencilType||\"Mask\"===this._overlapStencilType}stencilModeForRTTOverlap(e){return this.renderingToTexture&&this._overlapStencilType?(\"Clip\"===this._overlapStencilType&&(this._overlapStencilMode.ref=this.painter._tileClippingMaskIDs[e.key]),this._overlapStencilMode):Sx.disabled}_renderTileClippingMasks(e,t){const i=this.painter,r=this.painter.context,n=r.gl;i._tileClippingMaskIDs={},r.setColorMode(Cx.disabled),r.setDepthMode(Mx.disabled);const o=i.getOrCreateProgram(\"clippingMask\");for(const r of e){const e=i._tileClippingMaskIDs[r.key]=--t;o.draw(i,n.TRIANGLES,Mx.disabled,new Sx({func:n.ALWAYS,mask:0},e,255,n.KEEP,n.KEEP,n.REPLACE),Cx.disabled,Dx.disabled,sM(r.projMatrix),\"$clipping\",i.tileExtentBuffer,i.quadTriangleIndexBuffer,i.tileExtentSegments);}}pointCoordinate(e){const t=this.painter.transform;if(e.x<0||e.x>t.width||e.y<0||e.y>t.height)return null;const i=[e.x,e.y,1,1];yu.transformMat4(i,i,t.pixelMatrixInverse),yu.scale(i,i,1/i[3]),i[0]/=t.worldSize,i[1]/=t.worldSize;const r=t._camera.position,n=Qd(1,t.center.lat),o=[r[0],r[1],r[2]/n,0],s=Du.subtract([],i.slice(0,3),o);Du.normalize(s,s);const a=this.raycast(o,s,this._exaggeration);return null!==a&&a?(Du.scaleAndAdd(o,o,s,a),o[3]=o[2],o[2]*=n,o):null}drawDepth(){const e=this.painter,t=e.context,i=this.proxySourceCache,r=Math.ceil(e.width),n=Math.ceil(e.height);if(!this._depthFBO||this._depthFBO.width===r&&this._depthFBO.height===n||(this._depthFBO.destroy(),this._depthFBO=void 0,this._depthTexture=void 0),!this._depthFBO){const e=t.gl,i=t.createFramebuffer(r,n,!0,\"renderbuffer\");t.activeTexture.set(e.TEXTURE0);const o=new My(t,{width:r,height:n,data:null},e.RGBA);o.bind(e.NEAREST,e.CLAMP_TO_EDGE),i.colorAttachment.set(o.texture);const s=t.createRenderbuffer(t.gl.DEPTH_COMPONENT16,r,n);i.depthAttachment.set(s),this._depthFBO=i,this._depthTexture=o;}t.bindFramebuffer.set(this._depthFBO.framebuffer),t.viewport.set([0,0,r,n]),function(e,t,i,r){if(\"globe\"===e.transform.projection.name)return;const n=e.context,o=n.gl;n.clear({depth:1});const s=e.getOrCreateProgram(\"terrainDepth\"),a=new Mx(o.LESS,Mx.ReadWrite,e.depthRangeFor3D);for(const n of r){const r=i.getTile(n),l=JE(n.projMatrix,0,[0,0,0]);t.setupElevationDraw(r,s),s.draw(e,o.TRIANGLES,a,Sx.disabled,Cx.unblended,Dx.backCCW,l,\"terrain_depth\",t.gridBuffer,t.gridIndexBuffer,t.gridNoSkirtSegments);}}(e,this,i,this.proxyCoords);}_setupProxiedCoordsForOrtho(e,t,i){if(e.getSource()instanceof Jb)return this._setupProxiedCoordsForImageSource(e,t,i);this._findCoveringTileCache[e.id]=this._findCoveringTileCache[e.id]||{};const r=this.proxiedCoords[e.id]=[],n=this.proxyCoords;for(let t=0;t(e.min.x=Math.min(e.min.x,t.x-a.x),e.min.y=Math.min(e.min.y,t.y-a.y),e.max.x=Math.max(e.max.x,t.x-a.x),e.max.y=Math.max(e.max.y,t.y-a.y),e)),{min:new y(Number.MAX_VALUE,Number.MAX_VALUE),max:new y(-Number.MAX_VALUE,-Number.MAX_VALUE)}),c=(e,t)=>{const i=e.wrap+e.canonical.x/(1<o+l.max.x||r+ns+l.max.y};for(let o=0;oe.key===t.tileID.key));if(e)return e}if(t.tileID.key!==e.key){const i=e.canonical.z-t.tileID.canonical.z;let n,o,s;r=Au.create();const a=t.tileID.wrap-e.wrap<0?(n=cr>>i,o=n*((t.tileID.canonical.x<=r){const i=e.canonical.z-r;t.getSource().reparseOverscaled?(s=Math.max(e.canonical.z+2,t.transform.tileZoom),o=new qu(s,e.wrap,r,e.canonical.x>>i,e.canonical.y>>i)):0!==i&&(s=r,o=new qu(s,e.wrap,r,e.canonical.x>>i,e.canonical.y>>i));}o.key!==e.key&&(l.push(o.key),i=t.getTile(o));}const c=e=>{l.forEach((t=>{r[t]=e;})),l.length=0;};for(s-=1;s>=a&&(!i||!i.hasData());s--){i&&c(i.tileID.key);const e=o.calculateScaledKey(s);if(i=t.getTileByID(e),i&&i.hasData())break;const n=r[e];if(null===n)break;void 0===n?l.push(e):i=t.getTileByID(n);}return c(i?i.tileID.key:null),i&&i.hasData()?i:null}findDEMTileFor(e){return this.enabled?this._findTileCoveringTileID(e,this.sourceCache):null}prepareDrawTile(){this.renderedToTile=!0;}_clearRenderCacheForTile(e,t){let i=this._tilesDirty[e];i||(i=this._tilesDirty[e]={}),i[t.key]=!0;}}function dM(e,t,i){const r=function(e,t,i){const r=Du.dot(t,e),n=Du.dot(i,[.2126,.7152,.0722]),o=(e,t,i)=>(1-i)*e+i*t,s=o(1-.3*Math.min(n,1),1,Math.min(r+1,1));return o(.92,1,Math.asin(z(t[2],-1,1))/Math.PI+.5)*s}(e,[0,0,1],t),n=[0,0,0];Du.scale(n,i.slice(0,3),r);const o=[0,0,0];Du.scale(o,t.slice(0,3),e[2]);const s=[0,0,0];return Du.add(s,n,o),ae(s)}const pM=[\"fill\",\"fillOutline\",\"fillPattern\",\"line\",\"linePattern\",\"background\",\"backgroundPattern\",\"hillshade\",\"raster\"],fM=[\"stars\",\"fillExtrusion\",\"fillExtrusionGroundEffect\",\"model\",\"symbolSDF\",\"symbolIcon\",\"symbolTextAndIcon\"];class mM{static cacheKey(e,t,i,r){let n=`${t}${r?r.cacheKey:\"\"}`;for(const t of i)e.usedDefines.includes(t)&&(n+=`/${t}`);return n}constructor(e,t,i,r,n,o){const s=e.gl;this.program=s.createProgram(),this.configuration=r,this.name=t,this.fixedDefines=[...o];const a=r?r.getBinderAttributes():[],l=(i.staticAttributes||[]).concat(a);let c=r?r.defines():[];c=c.concat(o.map((e=>`#define ${e}`)));const h=\"#version 300 es\\n\";let u=h+c.concat(\"precision mediump float;\",jE,VE.fragmentSource).join(\"\\n\");for(const e of i.fragmentIncludes)u+=`\\n${NE[e]}`;u+=`\\n${i.fragmentSource}`;let d=h+c.concat(\"precision highp float;\",jE,VE.vertexSource).join(\"\\n\");for(const e of i.vertexIncludes)d+=`\\n${NE[e]}`;d+=`\\n${i.vertexSource}`;const p=s.createShader(s.FRAGMENT_SHADER);if(s.isContextLost())return void(this.failedToCreate=!0);s.shaderSource(p,u),s.compileShader(p),s.attachShader(this.program,p);const f=s.createShader(s.VERTEX_SHADER);if(s.isContextLost())this.failedToCreate=!0;else {s.shaderSource(f,d),s.compileShader(f),s.attachShader(this.program,f),this.attributes={},this.numAttributes=l.length;for(let e=0;e({u_dem:new kl(e),u_dem_prev:new kl(e),u_dem_tl:new Bl(e),u_dem_scale:new Ol(e),u_dem_tl_prev:new Bl(e),u_dem_scale_prev:new Ol(e),u_dem_size:new Ol(e),u_dem_lerp:new Ol(e),u_exaggeration:new Ol(e),u_depth:new kl(e),u_depth_size_inv:new Bl(e),u_meter_to_dem:new Ol(e),u_label_plane_matrix_inv:new jl(e)}))(e)),o.includes(\"GLOBE\")&&(this.globeUniforms=(e=>({u_tile_tl_up:new Fl(e),u_tile_tr_up:new Fl(e),u_tile_br_up:new Fl(e),u_tile_bl_up:new Fl(e),u_tile_up_scale:new Ol(e)}))(e)),o.includes(\"FOG\")&&(this.fogUniforms=(e=>({u_fog_matrix:new jl(e),u_fog_range:new Bl(e),u_fog_color:new Nl(e),u_fog_horizon_blend:new Ol(e),u_fog_vertical_limit:new Bl(e),u_fog_temporal_offset:new Ol(e),u_frustum_tl:new Fl(e),u_frustum_tr:new Fl(e),u_frustum_br:new Fl(e),u_frustum_bl:new Fl(e),u_globe_pos:new Fl(e),u_globe_radius:new Ol(e),u_globe_transition:new Ol(e),u_is_globe:new kl(e),u_viewport:new Bl(e)}))(e)),o.includes(\"RENDER_CUTOFF\")&&(this.cutoffUniforms=(e=>({u_cutoff_params:new Nl(e)}))(e)),o.includes(\"LIGHTING_3D_MODE\")&&(this.lightsUniforms=(e=>({u_lighting_ambient_color:new Fl(e),u_lighting_directional_dir:new Fl(e),u_lighting_directional_color:new Fl(e),u_ground_radiance:new Fl(e)}))(e)),o.includes(\"RENDER_SHADOWS\")&&(this.shadowUniforms=(e=>({u_light_matrix_0:new jl(e),u_light_matrix_1:new jl(e),u_fade_range:new Bl(e),u_shadow_normal_offset:new Fl(e),u_shadow_intensity:new Ol(e),u_shadow_texel_size:new Ol(e),u_shadow_map_resolution:new Ol(e),u_shadow_direction:new Fl(e),u_shadow_bias:new Fl(e),u_shadowmap_0:new kl(e),u_shadowmap_1:new kl(e)}))(e));}}setTerrainUniformValues(e,t){if(!this.terrainUniforms)return;const i=this.terrainUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e]);}}setGlobeUniformValues(e,t){if(!this.globeUniforms)return;const i=this.globeUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e]&&i[e].set(this.program,e,t[e]);}}setFogUniformValues(e,t){if(!this.fogUniforms)return;const i=this.fogUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e]);}}setCutoffUniformValues(e,t){if(!this.cutoffUniforms)return;const i=this.cutoffUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e]);}}setLightsUniformValues(e,t){if(!this.lightsUniforms)return;const i=this.lightsUniforms;if(!this.failedToCreate){e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e]);}}setShadowUniformValues(e,t){if(this.failedToCreate||!this.shadowUniforms)return;const i=this.shadowUniforms;e.program.set(this.program);for(const e in t)i[e].set(this.program,e,t[e]);}_drawDebugWireframe(e,t,i,r,n,o,s,a,l,c){const h=e.options.wireframe;if(!1===h.terrain&&!1===h.layers2D&&!1===h.layers3D)return;const u=e.context;if(!(()=>!(!h.terrain||\"terrainRaster\"!==this.name&&\"globeRaster\"!==this.name)||!(!h.layers2D||e._terrain&&e._terrain.renderingToTexture||!pM.includes(this.name))||!(!h.layers3D||!fM.includes(this.name)))())return;const d=u.gl,p=e.wireframeDebugCache.getLinesFromTrianglesBuffer(e.frameCounter,n,u);if(!p)return;const f=[...this.fixedDefines];f.push(\"DEBUG_WIREFRAME\");const m=e.getOrCreateProgram(this.name,{config:this.configuration,defines:f});u.program.set(m.program);const _=(e,t,i)=>{if(t[e]&&i[e])for(const r in t[e])i[e][r]&&i[e][r].set(i.program,r,t[e][r].current);};l&&l.setUniforms(m.program,u,m.binderUniforms,s,{zoom:a}),_(\"fixedUniforms\",this,m),_(\"terrainUniforms\",this,m),_(\"globeUniforms\",this,m),_(\"fogUniforms\",this,m),_(\"lightsUniforms\",this,m),_(\"shadowUniforms\",this,m),p.bind(),u.setColorMode(new Cx([d.ONE,d.ONE_MINUS_SRC_ALPHA,d.ZERO,d.ONE],hi.transparent,[!0,!0,!0,!1])),u.setDepthMode(new Mx(t.func===d.LESS?d.LEQUAL:t.func,Mx.ReadOnly,t.range)),u.setStencilMode(Sx.disabled);const g=3*o.primitiveLength*2,y=3*o.primitiveOffset*2*2;c&&c>1?d.drawElementsInstanced(d.LINES,g,d.UNSIGNED_SHORT,y,c):d.drawElements(d.LINES,g,d.UNSIGNED_SHORT,y),n.bind(),u.program.set(this.program),u.setDepthMode(t),u.setStencilMode(i),u.setColorMode(r);}draw(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m){const _=e.context,g=_.gl;if(this.failedToCreate)return;_.program.set(this.program),_.setDepthMode(i),_.setStencilMode(r),_.setColorMode(n),_.setCullFace(o);for(const e of Object.keys(this.fixedUniforms))this.fixedUniforms[e].set(this.program,e,s[e]);p&&p.setUniforms(this.program,_,this.binderUniforms,u,{zoom:d});const y={[g.LINES]:2,[g.TRIANGLES]:3,[g.LINE_STRIP]:1}[t],x=m&&m>0?1:void 0;for(const o of h.get()){const s=o.vaos||(o.vaos={});(s[a]||(s[a]=new $E)).bind(_,this,l,p?p.getPaintVertexBuffers():[],c,o.vertexOffset,f||[],x),m&&m>1?g.drawElementsInstanced(t,o.primitiveLength*y,g.UNSIGNED_SHORT,o.primitiveOffset*y*2,m):g.drawElements(t,o.primitiveLength*y,g.UNSIGNED_SHORT,o.primitiveOffset*y*2),t===g.TRIANGLES&&this._drawDebugWireframe(e,i,r,n,c,o,u,d,p,m);}}}function _M(e,t){const i=Math.pow(2,t.tileID.overscaledZ),r=t.tileSize*Math.pow(2,e.transform.tileZoom)/i,n=r*(t.tileID.canonical.x+t.tileID.wrap*i),o=r*t.tileID.canonical.y;return {u_image:0,u_texsize:t.imageAtlasTexture?t.imageAtlasTexture.size:[0,0],u_tile_units_to_pixels:1/rv(t,1,e.transform.tileZoom),u_pixel_coord_upper:[n>>16,o>>16],u_pixel_coord_lower:[65535&n,65535&o]}}const gM=Au.create(),yM=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m)=>{const _=t.style.light,g=_.properties.get(\"position\"),y=[g.x,g.y,g.z],x=Eu.create();\"viewport\"===_.properties.get(\"anchor\")&&(Eu.fromRotation(x,-t.transform.angle),Du.transformMat3(y,y,x));const v=_.properties.get(\"color\"),b=t.transform,w={u_matrix:e,u_lightpos:y,u_lightintensity:_.properties.get(\"intensity\"),u_lightcolor:[v.r,v.g,v.b],u_vertical_gradient:+i,u_opacity:r,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:gM,u_merc_center:[0,0],u_up_dir:[0,0,0],u_height_lift:0,u_ao:n,u_edge_radius:o,u_flood_light_color:u,u_vertical_scale:d,u_flood_light_intensity:p,u_ground_shadow_factor:f,u_emissive_strength:m};return \"globe\"===b.projection.name&&(w.u_tile_id=[s.canonical.x,s.canonical.y,1<({u_matrix:e,u_edge_radius:t,u_vertical_scale:i}),vM=(e,t,i,r,n,o,s,a,l,c,h,u,d,p)=>{const f=yM(e,t,i,r,n,o,s,l,c,h,u,d,p,1,[0,0,0],0),m={u_height_factor:-Math.pow(2,s.overscaledZ)/a.tileSize/8};return k(f,_M(t,a),m)},bM=(e,t)=>({u_matrix:e,u_emissive_strength:t}),wM=(e,t,i,r)=>k(bM(e,t),_M(i,r)),TM=(e,t,i)=>({u_matrix:e,u_world:i,u_emissive_strength:t}),EM=(e,t,i,r,n)=>k(wM(e,t,i,r),{u_world:n}),MM=(e,t,i,r)=>{const n=cr/i.tileSize;return {u_matrix:e,u_camera_to_center_distance:t.getCameraToCenterDistance(r),u_extrude_scale:[t.pixelsToGLUnits[0]/n,t.pixelsToGLUnits[1]/n]}},AM=(e,t,i=1)=>({u_matrix:e,u_color:t,u_overlay:0,u_overlay_scale:i}),SM=Au.create(),IM=(e,t,i,r,n,o,s)=>{const a=e.transform,l=\"globe\"===a.projection.name,c=l?Cd(a.zoom,t.canonical)*a._pixelsPerMercatorPixel:rv(i,1,o),h={u_matrix:t.projMatrix,u_extrude_scale:c,u_intensity:s,u_inv_rot_matrix:SM,u_merc_center:[0,0],u_tile_id:[0,0,0],u_zoom_transition:0,u_up_dir:[0,0,0]};if(l){h.u_inv_rot_matrix=r,h.u_merc_center=n,h.u_tile_id=[t.canonical.x,t.canonical.y,1<{return {u_matrix:e,u_normalize_matrix:t,u_globe_matrix:i,u_merc_matrix:r,u_grid_matrix:n,u_tl_parent:o,u_scale_parent:h,u_fade_t:u.mix,u_opacity:u.opacity*d.paint.get(\"raster-opacity\"),u_image0:0,u_image1:1,u_brightness_low:d.paint.get(\"raster-brightness-min\"),u_brightness_high:d.paint.get(\"raster-brightness-max\"),u_saturation_factor:(T=d.paint.get(\"raster-saturation\"),T>0?1-1/(1.001-T):-T),u_contrast_factor:(w=d.paint.get(\"raster-contrast\"),w>0?1/(1-w):1+w),u_spin_weights:zM(d.paint.get(\"raster-hue-rotate\")),u_perspective_transform:p,u_raster_elevation:f,u_tl_br:s,u_zoom_transition:a,u_merc_center:l,u_cutoff_params:c,u_colorization_mix:PM(_,y),u_colorization_offset:DM(g,y),u_color_ramp:m,u_texture_offset:[v/(x+2*v),x/(x+2*v)],u_texture_res:[x+2*v,x+2*v],u_emissive_strength:b};var w,T;};function zM(e){e*=Math.PI/180;const t=Math.sin(e),i=Math.cos(e);return [(2*i+1)/3,(-Math.sqrt(3)*t-i+1)/3,(Math.sqrt(3)*t-i+1)/3]}function PM([e,t,i,r],[n,o]){if(n===o)return [0,0,0,0];const s=259/257/(o-n);return [e*s,t*s,i*s,r*s]}function DM(e,[t,i]){return t===i?0:((e-t)/(i-t)*259-1)/257}const RM=Au.create(),LM=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g)=>{const y=n.transform,x={u_is_size_zoom_constant:+(\"constant\"===e||\"source\"===e),u_is_size_feature_constant:+(\"constant\"===e||\"camera\"===e),u_size_t:t?t.uSizeT:0,u_size:t?t.uSize:0,u_camera_to_center_distance:y.getCameraToCenterDistance(m),u_rotate_symbol:+i,u_aspect_ratio:y.width/y.height,u_fade_change:n.options.fadeDuration?n.symbolFadeChange:1,u_matrix:o,u_label_plane_matrix:s,u_coord_matrix:a,u_is_text:+l,u_pitch_with_map:+r,u_texsize:c,u_texture:0,u_tile_id:[0,0,0],u_zoom_transition:0,u_inv_rot_matrix:RM,u_merc_center:[0,0],u_camera_forward:[0,0,0],u_ecef_origin:[0,0,0],u_tile_matrix:RM,u_up_vector:[0,-1,0],u_icon_transition:g||0,u_icon_saturation:_};return \"globe\"===m.name&&(x.u_tile_id=[h.canonical.x,h.canonical.y,1<k(LM(e,t,i,r,n,o,s,a,l,c,u,d,p,f,m,_,1),{u_gamma_scale:r?n.transform.getCameraToCenterDistance(_)*Math.cos(n.terrain?0:n.transform._pitch):1,u_device_pixel_ratio:dt.devicePixelRatio,u_is_halo:+h,undefined:void 0}),OM=(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m)=>k(kM(e,t,i,r,n,o,s,a,!0,l,!0,h,u,d,p,f,m),{u_texsize_icon:c,u_texture_icon:1}),BM=(e,t,i,r)=>({u_matrix:e,u_emissive_strength:t,u_opacity:i,u_color:r}),FM=(e,t,i,r,n,o,s)=>k(function(e,t,i,r){const n=i.imageManager.getPattern(e.toString(),t),{width:o,height:s}=i.imageManager.getPixelSize(t),a=Math.pow(2,r.tileID.overscaledZ),l=r.tileSize*Math.pow(2,i.transform.tileZoom)/a,c=l*(r.tileID.canonical.x+r.tileID.wrap*a),h=l*r.tileID.canonical.y;return {u_image:0,u_pattern_tl:n.tl,u_pattern_br:n.br,u_texsize:[o,s],u_pattern_size:n.displaySize,u_tile_units_to_pixels:1/rv(r,1,i.transform.tileZoom),u_pixel_coord_upper:[c>>16,h>>16],u_pixel_coord_lower:[65535&c,65535&h]}}(n,o,r,s),{u_matrix:e,u_emissive_strength:t,u_opacity:i}),NM={BaseColor:5,MetallicRoughness:6,Normal:7,Occlusion:8,Emission:9,ShadowMap0:10},UM=(e,t,i,r,n,o,s,a,l,c,h,u,d=[0,0,0])=>{const p=r.style.light,f=p.properties.get(\"position\"),m=[-f.x,-f.y,f.z],_=Eu.create();\"viewport\"===p.properties.get(\"anchor\")&&(Eu.fromRotation(_,-r.transform.angle),Du.transformMat3(m,m,_));const g=\"MASK\"===c.alphaMode,y=p.properties.get(\"color\"),x=u.paint.get(\"model-ambient-occlusion-intensity\"),v=u.paint.get(\"model-color\").constantOr(hi.white),b=u.paint.get(\"model-color-mix-intensity\").constantOr(0);return {u_matrix:e,u_lighting_matrix:t,u_normal_matrix:i,u_lightpos:m,u_lightintensity:p.properties.get(\"intensity\"),u_lightcolor:[y.r,y.g,y.b],u_camera_pos:d,u_opacity:n,u_baseTextureIsAlpha:0,u_alphaMask:+g,u_alphaCutoff:c.alphaCutoff,u_baseColorFactor:[o.r,o.g,o.b,o.a],u_emissiveFactor:[s[0],s[1],s[2],1],u_metallicFactor:a,u_roughnessFactor:l,u_baseColorTexture:NM.BaseColor,u_metallicRoughnessTexture:NM.MetallicRoughness,u_normalTexture:NM.Normal,u_occlusionTexture:NM.Occlusion,u_emissionTexture:NM.Emission,u_color_mix:[v.r,v.g,v.b,b],u_aoIntensity:x,u_emissive_strength:h}},VM=new Float32Array(16),jM=(e,t=VM,i=VM)=>({u_matrix:e,u_instance:t,u_node_matrix:i}),GM={fillExtrusion:e=>({u_matrix:new jl(e),u_lightpos:new Fl(e),u_lightintensity:new Ol(e),u_lightcolor:new Fl(e),u_vertical_gradient:new Ol(e),u_opacity:new Ol(e),u_edge_radius:new Ol(e),u_ao:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new jl(e),u_merc_center:new Bl(e),u_up_dir:new Fl(e),u_height_lift:new Ol(e),u_flood_light_color:new Fl(e),u_vertical_scale:new Ol(e),u_flood_light_intensity:new Ol(e),u_ground_shadow_factor:new Fl(e),u_emissive_strength:new Ol(e)}),fillExtrusionDepth:e=>({u_matrix:new jl(e),u_edge_radius:new Ol(e),u_vertical_scale:new Ol(e)}),fillExtrusionPattern:e=>({u_matrix:new jl(e),u_lightpos:new Fl(e),u_lightintensity:new Ol(e),u_lightcolor:new Fl(e),u_vertical_gradient:new Ol(e),u_height_factor:new Ol(e),u_edge_radius:new Ol(e),u_ao:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new jl(e),u_merc_center:new Bl(e),u_up_dir:new Fl(e),u_height_lift:new Ol(e),u_image:new kl(e),u_texsize:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e),u_opacity:new Ol(e)}),fillExtrusionGroundEffect:e=>({u_matrix:new jl(e),u_opacity:new Ol(e),u_ao_pass:new Ol(e),u_meter_to_tile:new Ol(e),u_ao:new Bl(e),u_flood_light_intensity:new Ol(e),u_flood_light_color:new Fl(e),u_attenuation:new Ol(e),u_edge_radius:new Ol(e),u_fb:new kl(e),u_fb_size:new Ol(e)}),fill:e=>({u_matrix:new jl(e),u_emissive_strength:new Ol(e)}),fillPattern:e=>({u_matrix:new jl(e),u_emissive_strength:new Ol(e),u_image:new kl(e),u_texsize:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e)}),fillOutline:e=>({u_matrix:new jl(e),u_emissive_strength:new Ol(e),u_world:new Bl(e)}),fillOutlinePattern:e=>({u_matrix:new jl(e),u_emissive_strength:new Ol(e),u_world:new Bl(e),u_image:new kl(e),u_texsize:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e)}),circle:e=>({u_camera_to_center_distance:new Ol(e),u_extrude_scale:new $l(e),u_device_pixel_ratio:new Ol(e),u_matrix:new jl(e),u_inv_rot_matrix:new jl(e),u_merc_center:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_up_dir:new Fl(e),u_emissive_strength:new Ol(e)}),collisionBox:e=>({u_matrix:new jl(e),u_camera_to_center_distance:new Ol(e),u_extrude_scale:new Bl(e)}),collisionCircle:e=>({u_matrix:new jl(e),u_inv_matrix:new jl(e),u_camera_to_center_distance:new Ol(e),u_viewport_size:new Bl(e)}),debug:e=>({u_color:new Ul(e),u_matrix:new jl(e),u_overlay:new kl(e),u_overlay_scale:new Ol(e)}),clippingMask:e=>({u_matrix:new jl(e)}),heatmap:e=>({u_extrude_scale:new Ol(e),u_intensity:new Ol(e),u_matrix:new jl(e),u_inv_rot_matrix:new jl(e),u_merc_center:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_up_dir:new Fl(e)}),heatmapTexture:e=>({u_image:new kl(e),u_color_ramp:new kl(e),u_opacity:new Ol(e)}),hillshade:e=>({u_matrix:new jl(e),u_image:new kl(e),u_latrange:new Bl(e),u_light:new Bl(e),u_shadow:new Ul(e),u_highlight:new Ul(e),u_emissive_strength:new Ol(e),u_accent:new Ul(e)}),hillshadePrepare:e=>({u_matrix:new jl(e),u_image:new kl(e),u_dimension:new Bl(e),u_zoom:new Ol(e)}),line:e=>({u_matrix:new jl(e),u_pixels_to_tile_units:new $l(e),u_device_pixel_ratio:new Ol(e),u_units_to_pixels:new Bl(e),u_dash_image:new kl(e),u_gradient_image:new kl(e),u_image_height:new Ol(e),u_texsize:new Bl(e),u_tile_units_to_pixels:new Ol(e),u_alpha_discard_threshold:new Ol(e),u_trim_offset:new Bl(e),u_emissive_strength:new Ol(e)}),linePattern:e=>({u_matrix:new jl(e),u_texsize:new Bl(e),u_pixels_to_tile_units:new $l(e),u_device_pixel_ratio:new Ol(e),u_image:new kl(e),u_units_to_pixels:new Bl(e),u_tile_units_to_pixels:new Ol(e),u_alpha_discard_threshold:new Ol(e)}),raster:e=>({u_matrix:new jl(e),u_normalize_matrix:new jl(e),u_globe_matrix:new jl(e),u_merc_matrix:new jl(e),u_grid_matrix:new ql(e),u_tl_parent:new Bl(e),u_scale_parent:new Ol(e),u_fade_t:new Ol(e),u_opacity:new Ol(e),u_image0:new kl(e),u_image1:new kl(e),u_brightness_low:new Ol(e),u_brightness_high:new Ol(e),u_saturation_factor:new Ol(e),u_contrast_factor:new Ol(e),u_spin_weights:new Fl(e),u_perspective_transform:new Bl(e),u_raster_elevation:new Ol(e),u_tl_br:new Nl(e),u_zoom_transition:new Ol(e),u_merc_center:new Bl(e),u_cutoff_params:new Nl(e),u_colorization_mix:new Nl(e),u_colorization_offset:new Ol(e),u_color_ramp:new kl(e),u_texture_offset:new Bl(e),u_texture_res:new Bl(e),u_emissive_strength:new Ol(e)}),symbolIcon:e=>({u_is_size_zoom_constant:new kl(e),u_is_size_feature_constant:new kl(e),u_size_t:new Ol(e),u_size:new Ol(e),u_camera_to_center_distance:new Ol(e),u_rotate_symbol:new kl(e),u_aspect_ratio:new Ol(e),u_fade_change:new Ol(e),u_matrix:new jl(e),u_label_plane_matrix:new jl(e),u_coord_matrix:new jl(e),u_is_text:new kl(e),u_pitch_with_map:new kl(e),u_texsize:new Bl(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new jl(e),u_merc_center:new Bl(e),u_camera_forward:new Fl(e),u_tile_matrix:new jl(e),u_up_vector:new Fl(e),u_ecef_origin:new Fl(e),u_texture:new kl(e),u_icon_transition:new Ol(e),u_icon_saturation:new Ol(e)}),symbolSDF:e=>({u_is_size_zoom_constant:new kl(e),u_is_size_feature_constant:new kl(e),u_size_t:new Ol(e),u_size:new Ol(e),u_camera_to_center_distance:new Ol(e),u_rotate_symbol:new kl(e),u_aspect_ratio:new Ol(e),u_fade_change:new Ol(e),u_matrix:new jl(e),u_label_plane_matrix:new jl(e),u_coord_matrix:new jl(e),u_is_text:new kl(e),u_pitch_with_map:new kl(e),u_texsize:new Bl(e),u_texture:new kl(e),u_gamma_scale:new Ol(e),u_device_pixel_ratio:new Ol(e),u_tile_id:new Fl(e),u_zoom_transition:new Ol(e),u_inv_rot_matrix:new jl(e),u_merc_center:new Bl(e),u_camera_forward:new Fl(e),u_tile_matrix:new jl(e),u_up_vector:new Fl(e),u_ecef_origin:new Fl(e),u_is_halo:new kl(e)}),symbolTextAndIcon:e=>({u_is_size_zoom_constant:new kl(e),u_is_size_feature_constant:new kl(e),u_size_t:new Ol(e),u_size:new Ol(e),u_camera_to_center_distance:new Ol(e),u_rotate_symbol:new kl(e),u_aspect_ratio:new Ol(e),u_fade_change:new Ol(e),u_matrix:new jl(e),u_label_plane_matrix:new jl(e),u_coord_matrix:new jl(e),u_is_text:new kl(e),u_pitch_with_map:new kl(e),u_texsize:new Bl(e),u_texsize_icon:new Bl(e),u_texture:new kl(e),u_texture_icon:new kl(e),u_gamma_scale:new Ol(e),u_device_pixel_ratio:new Ol(e),u_is_halo:new kl(e)}),background:e=>({u_matrix:new jl(e),u_emissive_strength:new Ol(e),u_opacity:new Ol(e),u_color:new Ul(e)}),backgroundPattern:e=>({u_matrix:new jl(e),u_emissive_strength:new Ol(e),u_opacity:new Ol(e),u_image:new kl(e),u_pattern_tl:new Bl(e),u_pattern_br:new Bl(e),u_texsize:new Bl(e),u_pattern_size:new Bl(e),u_pixel_coord_upper:new Bl(e),u_pixel_coord_lower:new Bl(e),u_tile_units_to_pixels:new Ol(e)}),terrainRaster:KE,terrainDepth:KE,skybox:e=>({u_matrix:new jl(e),u_sun_direction:new Fl(e),u_cubemap:new kl(e),u_opacity:new Ol(e),u_temporal_offset:new Ol(e)}),skyboxGradient:e=>({u_matrix:new jl(e),u_color_ramp:new kl(e),u_center_direction:new Fl(e),u_radius:new Ol(e),u_opacity:new Ol(e),u_temporal_offset:new Ol(e)}),skyboxCapture:e=>({u_matrix_3f:new ql(e),u_sun_direction:new Fl(e),u_sun_intensity:new Ol(e),u_color_tint_r:new Nl(e),u_color_tint_m:new Nl(e),u_luminance:new Ol(e)}),globeRaster:e=>({u_proj_matrix:new jl(e),u_globe_matrix:new jl(e),u_normalize_matrix:new jl(e),u_merc_matrix:new jl(e),u_zoom_transition:new Ol(e),u_merc_center:new Bl(e),u_image0:new kl(e),u_grid_matrix:new ql(e),u_skirt_height:new Ol(e),u_frustum_tl:new Fl(e),u_frustum_tr:new Fl(e),u_frustum_br:new Fl(e),u_frustum_bl:new Fl(e),u_globe_pos:new Fl(e),u_globe_radius:new Ol(e),u_viewport:new Bl(e)}),globeAtmosphere:e=>({u_frustum_tl:new Fl(e),u_frustum_tr:new Fl(e),u_frustum_br:new Fl(e),u_frustum_bl:new Fl(e),u_horizon:new Ol(e),u_transition:new Ol(e),u_fadeout_range:new Ol(e),u_color:new Nl(e),u_high_color:new Nl(e),u_space_color:new Nl(e),u_temporal_offset:new Ol(e),u_horizon_angle:new Ol(e)}),model:e=>({u_matrix:new jl(e),u_lighting_matrix:new jl(e),u_normal_matrix:new jl(e),u_lightpos:new Fl(e),u_lightintensity:new Ol(e),u_lightcolor:new Fl(e),u_camera_pos:new Fl(e),u_opacity:new Ol(e),u_baseColorFactor:new Nl(e),u_emissiveFactor:new Nl(e),u_metallicFactor:new Ol(e),u_roughnessFactor:new Ol(e),u_baseTextureIsAlpha:new kl(e),u_alphaMask:new kl(e),u_alphaCutoff:new Ol(e),u_baseColorTexture:new kl(e),u_metallicRoughnessTexture:new kl(e),u_normalTexture:new kl(e),u_occlusionTexture:new kl(e),u_emissionTexture:new kl(e),u_color_mix:new Nl(e),u_aoIntensity:new Ol(e),u_emissive_strength:new Ol(e)}),modelDepth:e=>({u_matrix:new jl(e),u_instance:new jl(e),u_node_matrix:new jl(e)}),groundShadow:e=>({u_matrix:new jl(e),u_ground_shadow_factor:new Fl(e)}),stars:e=>({u_matrix:new jl(e),u_up:new Fl(e),u_right:new Fl(e),u_intensity_multiplier:new Ol(e)})};let qM;function ZM(e,t,i,r,n,o,s){const a=e.context,l=a.gl,c=e.transform,h=e.getOrCreateProgram(\"collisionBox\"),u=[];let d=0,p=0;for(let a=0;a0){const e=Au.create(),t=y;Au.mul(e,_.placementInvProjMatrix,c.glCoordMatrix),Au.mul(e,e,_.placementViewportMatrix),u.push({circleArray:v,circleOffset:p,transform:t,invTransform:e,projection:_.getProjection()}),d+=v.length/4,p=d;}x&&(e.terrain&&e.terrain.setupElevationDraw(m,h),h.draw(e,l.LINES,Mx.disabled,Sx.disabled,e.colorModeForRenderPass(),Dx.disabled,MM(y,c,m,_.getProjection()),i.id,x.layoutVertexBuffer,x.indexBuffer,x.segments,null,c.zoom,null,[x.collisionVertexBuffer,x.collisionVertexBufferExt]));}if(!s||!u.length)return;const f=e.getOrCreateProgram(\"collisionCircle\"),m=new Za;m.resize(4*d),m._trim();let _=0;for(const e of u)for(let t=0;t=0&&(f[x.associatedIconIndex]={x:E,y:M,z:A,angle:P});}else xv(w,d);}if(h){p.clear();const t=e.icon.placedSymbolArray;for(let e=0;e0&&Q.push(\"ICON_TRANSITION\"),u.zOffsetVertexBuffer&&Q.push(\"Z_OFFSET\");const ee=p&&0!==i.paint.get(n?\"text-halo-width\":\"icon-halo-width\").constantOr(1);let te;p?te=l.iconsInText?OM(w.kind,z,x,g,e,H,X,Y,P,k,a,N,T,K,F,l.getProjection()):kM(w.kind,z,x,g,e,H,X,Y,n,P,!0,a,N,T,K,F,l.getProjection()):(h<1&&Q.push(\"SATURATION\"),te=LM(w.kind,z,x,g,e,H,X,Y,n,P,a,N,T,K,F,l.getProjection(),h,J));const ie={program:e.getOrCreateProgram(XM(p,n,l),{config:d,defines:Q}),buffers:u,uniformValues:te,atlasTexture:D,atlasTextureIcon:O,atlasInterpolation:R,atlasInterpolationIcon:L,isSDF:p,hasHalo:ee,tile:r,labelPlaneMatrixInv:G};if(v&&l.canOverlap){b=!0;const e=u.segments.get();for(const t of e)A.push({segments:new xl([t]),sortKey:t.sortKey,state:ie});}else A.push({segments:u.segments,sortKey:0,state:ie});}b&&A.sort(((e,t)=>e.sortKey-t.sortKey));for(const t of A){const r=t.state;if(e.terrain&&e.terrain.setupElevationDraw(r.tile,r.program,{useDepthForOcclusion:m.depthOcclusionForSymbolsAndCircles,labelPlaneMatrixInv:r.labelPlaneMatrixInv}),p.activeTexture.set(f.TEXTURE0),r.atlasTexture&&r.atlasTexture.bind(r.atlasInterpolation,f.CLAMP_TO_EDGE),r.atlasTextureIcon&&(p.activeTexture.set(f.TEXTURE1),r.atlasTextureIcon&&r.atlasTextureIcon.bind(r.atlasInterpolationIcon,f.CLAMP_TO_EDGE)),e.uploadCommonLightUniforms(e.context,r.program),r.hasHalo){const n=r.uniformValues;n.u_is_halo=1,KM(r.buffers,t.segments,i,e,r.program,w,u,d,n,2),n.u_is_halo=0;}else {if(r.isSDF){const n=r.uniformValues;r.hasHalo&&(n.u_is_halo=1,KM(r.buffers,t.segments,i,e,r.program,w,u,d,n,1)),n.u_is_halo=0;}KM(r.buffers,t.segments,i,e,r.program,w,u,d,r.uniformValues,1);}}}function KM(e,t,i,r,n,o,s,a,l,c){const h=[e.dynamicLayoutVertexBuffer,e.opacityVertexBuffer,e.iconTransitioningVertexBuffer,e.globeExtVertexBuffer,e.zOffsetVertexBuffer];n.draw(r,r.context.gl.TRIANGLES,o,s,a,Dx.disabled,l,i.id,e.layoutVertexBuffer,e.indexBuffer,t,i.paint,r.transform.zoom,e.programConfigurations.get(i.id),h,c);}function JM(e,t,i,r,n,o,s){const a=e.context.gl,l=i.paint.get(\"fill-pattern\"),c=l&&l.constantOr(1);let h,u,d,p,f;s?(u=c&&!i.getPaintProperty(\"fill-outline-color\")?\"fillOutlinePattern\":\"fillOutline\",h=a.LINES):(u=c?\"fillPattern\":\"fill\",h=a.TRIANGLES);for(const m of r){const r=t.getTile(m);if(c&&!r.patternsLoaded())continue;const _=r.getBucket(i);if(!_)continue;e.prepareDrawTile();const g=_.programConfigurations.get(i.id),y=e.isTileAffectedByFog(m),x=e.getOrCreateProgram(u,{config:g,overrideFog:y});c&&(e.context.activeTexture.set(a.TEXTURE0),r.imageAtlasTexture&&r.imageAtlasTexture.bind(a.LINEAR,a.CLAMP_TO_EDGE),g.updatePaintBuffers());const v=l.constantOr(null);if(v&&r.imageAtlas){const e=r.imageAtlas.patternPositions[v.toString()];e&&g.setConstantPatternPositions(e);}const b=e.translatePosMatrix(m.projMatrix,r,i.paint.get(\"fill-translate\"),i.paint.get(\"fill-translate-anchor\")),w=i.paint.get(\"fill-emissive-strength\");if(s){p=_.indexBuffer2,f=_.segments2;const t=e.terrain&&e.terrain.renderingToTexture?e.terrain.drapeBufferSize:[a.drawingBufferWidth,a.drawingBufferHeight];d=\"fillOutlinePattern\"===u&&c?EM(b,w,e,r,t):TM(b,w,t);}else p=_.indexBuffer,f=_.segments,d=c?wM(b,w,e,r):bM(b,w);e.uploadCommonUniforms(e.context,x,m.toUnwrapped()),x.draw(e,h,n,e.stencilModeForClipping(m),o,Dx.disabled,d,i.id,_.layoutVertexBuffer,p,f,i.paint,e.transform.zoom,g,void 0);}}function QM(e,t,i,r,n,o,s,a){i.resetLayerRenderingStats();const l=e.context,c=l.gl,h=e.transform,u=i.paint.get(\"fill-extrusion-pattern\"),d=u.constantOr(1),p=i.paint.get(\"fill-extrusion-opacity\"),f=e.style.enable3dLights(),m=i.paint.get(f&&!d?\"fill-extrusion-ambient-occlusion-wall-radius\":\"fill-extrusion-ambient-occlusion-radius\"),_=[i.paint.get(\"fill-extrusion-ambient-occlusion-intensity\"),m],g=i.layout.get(\"fill-extrusion-edge-radius\"),y=g>0&&!i.paint.get(\"fill-extrusion-rounded-roof\"),x=y?0:g,v=\"globe\"===h.projection.name?Ib():0,b=\"globe\"===h.projection.name,w=b?Dd(h.zoom):0,T=[Kd(h.center.lng),Jd(h.center.lat)],E=i.paint.get(\"fill-extrusion-flood-light-color\").toArray01().slice(0,3),M=i.paint.get(\"fill-extrusion-flood-light-intensity\"),A=i.paint.get(\"fill-extrusion-vertical-scale\"),S=eM(e,i.paint.get(\"fill-extrusion-cutoff-fade-range\")),I=i.paint.get(\"fill-extrusion-emissive-strength\"),C=[];let z;b&&C.push(\"PROJECTION_GLOBE_VIEW\"),_[0]>0&&C.push(\"FAUX_AO\"),y&&C.push(\"ZERO_ROOF_RADIUS\"),a&&C.push(\"HAS_CENTROID\"),M>0&&C.push(\"FLOOD_LIGHT\"),S.shouldRenderCutoff&&C.push(\"RENDER_CUTOFF\");const P=\"shadow\"===e.renderPass,D=e.shadowRenderer,R=P&&!!D;e.shadowRenderer&&(e.shadowRenderer.useNormalOffset=!0);let L=[0,0,0];if(D){const t=e.style.directionalLight,i=e.style.ambientLight;t&&i&&(L=WA(t,i)),z=C.concat([\"SHADOWS_SINGLE_CASCADE\"]);}const k=R?\"fillExtrusionDepth\":d?\"fillExtrusionPattern\":\"fillExtrusion\",O=i.getLayerRenderingStats();for(const f of r){const r=t.getTile(f),m=r.getBucket(i);if(!m||m.projection.name!==h.projection.name)continue;let g=!1;D&&(g=0===D.getMaxCascadeForTile(f.toUnwrapped()));const y=e.isTileAffectedByFog(f),R=m.programConfigurations.get(i.id),B=e.getOrCreateProgram(k,{config:R,defines:g?z:C,overrideFog:y});if(e.terrain&&e.terrain.setupElevationDraw(r,B,{useMeterToDem:!0}),!m.centroidVertexBuffer){const e=B.attributes.a_centroid_pos;void 0!==e&&c.vertexAttrib2f(e,0,0);}!P&&D&&D.setupShadows(r.tileID.toUnwrapped(),B,\"vector-tile\",r.tileID.overscaledZ),d&&(e.context.activeTexture.set(c.TEXTURE0),r.imageAtlasTexture&&r.imageAtlasTexture.bind(c.LINEAR,c.CLAMP_TO_EDGE),R.updatePaintBuffers());const F=u.constantOr(null);if(F&&r.imageAtlas){const e=r.imageAtlas.patternPositions[F.toString()];e&&R.setConstantPatternPositions(e);}const N=i.paint.get(\"fill-extrusion-vertical-gradient\");let U;if(P&&D){if(oA(r.tileID,m,e))continue;const t=D.calculateShadowPassMatrixFromTile(r.tileID.toUnwrapped());U=xM(t,x,A);}else {const t=e.translatePosMatrix(f.expandedProjMatrix,r,i.paint.get(\"fill-extrusion-translate\"),i.paint.get(\"fill-extrusion-translate-anchor\")),n=h.projection.createInversionMatrix(h,f.canonical);U=d?vM(t,e,N,p,_,x,f,r,v,w,T,n,E,A):yM(t,e,N,p,_,x,f,v,w,T,n,E,A,M,L,I);}e.uploadCommonUniforms(l,B,f.toUnwrapped(),null,S);let V=m.segments;if(!b&&!P&&(V=m.getVisibleSegments(r.tileID,e.terrain,e.transform.getFrustum(0)),!V.get().length))continue;if(O)if(P)for(const e of V.get())O.numRenderedVerticesInShadowPass+=e.primitiveLength;else for(const e of V.get())O.numRenderedVerticesInTransparentPass+=e.primitiveLength;const j=[];(e.terrain||a)&&j.push(m.centroidVertexBuffer),b&&j.push(m.layoutVertexExtBuffer),B.draw(e,l.gl.TRIANGLES,n,o,s,Dx.backCCW,U,i.id,m.layoutVertexBuffer,m.indexBuffer,V,i.paint,e.transform.zoom,R,j);}e.shadowRenderer&&(e.shadowRenderer.useNormalOffset=!1);}function eA(e,t,i,r,n,o,s,a,l,c,h,u,d,p,f,m,_,g,y){const x=e.context,v=x.gl,b=e.transform,w=e.transform.zoom,T=[],E=eM(e,i.paint.get(\"fill-extrusion-cutoff-fade-range\"));\"clear\"===c?(T.push(\"CLEAR_SUBPASS\"),y&&(T.push(\"CLEAR_FROM_TEXTURE\"),x.activeTexture.set(v.TEXTURE0),y.bind(v.LINEAR,v.CLAMP_TO_EDGE))):\"sdf\"===c&&T.push(\"SDF_SUBPASS\"),_&&T.push(\"HAS_CENTROID\"),E.shouldRenderCutoff&&T.push(\"RENDER_CUTOFF\");const M=i.layout.get(\"fill-extrusion-edge-radius\"),A=(t,r,c,g,v)=>{const b=r.programConfigurations.get(i.id),A=e.isTileAffectedByFog(t),S=e.getOrCreateProgram(\"fillExtrusionGroundEffect\",{config:b,defines:T,overrideFog:A}),I=((e,t,i,r,n,o,s,a,l,c,h)=>({u_matrix:t,u_opacity:i,u_ao_pass:r?1:0,u_meter_to_tile:n,u_ao:o,u_flood_light_intensity:s,u_flood_light_color:a,u_attenuation:l,u_edge_radius:c,u_fb:0,u_fb_size:h}))(0,g,h,l,v,[u,d*v],p,f,m,w>=17?0:M*v,y?y.size[0]:0),C=[];_&&C.push(r.hiddenByLandmarkVertexBuffer),e.uploadCommonUniforms(x,S,t.toUnwrapped(),null,E),S.draw(e,x.gl.TRIANGLES,n,o,s,a,I,i.id,r.vertexBuffer,r.indexBuffer,c,i.paint,w,b,C);};for(const n of r){const r=t.getTile(n),o=r.getBucket(i);if(!o||o.projection.name!==b.projection.name||!o.groundEffect||o.groundEffect&&!o.groundEffect.hasData())continue;const s=o.groundEffect,a=1/o.tileToMeter;{const t=e.translatePosMatrix(n.projMatrix,r,i.paint.get(\"fill-extrusion-translate\"),i.paint.get(\"fill-extrusion-translate-anchor\")),o=s.getDefaultSegment();A(n,s,o,t,a);}if(g)for(let o=0;o<4;o++){const s=$u[o](n),l=t.getTile(s);if(!l)continue;const c=l.getBucket(i);if(!c||c.projection.name!==b.projection.name||!c.groundEffect||c.groundEffect&&!c.groundEffect.hasData())continue;const h=c.groundEffect;let u,d;0===o?(u=[-cr,0,0],d=1):1===o?(u=[cr,0,0],d=0):2===o?(u=[0,-cr,0],d=3):(u=[0,cr,0],d=2);const p=h.regionSegments[d];if(!p)continue;const f=new Float32Array(16);Au.translate(f,n.projMatrix,u),A(n,h,p,e.translatePosMatrix(f,r,i.paint.get(\"fill-extrusion-translate\"),i.paint.get(\"fill-extrusion-translate-anchor\")),a);}}}function tA(e,t,i,r,n,o,s){0===r.centroidVertexArray.length&&r.createCentroidsBuffer();const a=o?o.findDEMTileFor(i):null;if(!(a&&a.dem||s))return;const l=e=>{const i=t.getSource().minzoom,r=e=>{const i=t.getTileByID(e);if(i&&i.hasData())return i.getBucket(n)},o=[0,-1,1];for(const t of o){if(e.overscaledZ+t(c[0]=Math.min(e.min.y,t.min.y),c[1]=Math.max(e.max.y,t.max.y),c[2]=cr-t.min.x>e.max.x?t.min.x-cr:e.max.x,c),u=(e,t)=>(c[0]=Math.min(e.min.x,t.min.x),c[1]=Math.max(e.max.x,t.max.x),c[2]=cr-t.min.y>e.max.y?t.min.y-cr:e.max.y,c),d=[(e,t)=>h(e,t),(e,t)=>h(t,e),(e,t)=>u(e,t),(e,t)=>u(t,e)],p=(e,t,r,n,s,l,c)=>{if(!o)return 0;const h=[[l?r:e,l?e:r,0],[l?r:t,l?t:r,0]],u=c<0?cr+c:c,d=[l?u:(e+t)/2,l?(e+t)/2:u,0];return 0===r&&c<0||0!==r&&c>0?o.getForTilePoints(s,[d],!0,n):h.push(d),o.getForTilePoints(i,h,!0,a),Math.max(h[0][2],h[1][2],d[2])/o.exaggeration()};for(let e=0;e<4;e++){const t=r.borderFeatureIndices[e];if(0===t.length)continue;const n=$u[e](i),a=l(n);if(!(a&&a instanceof vb))continue;if(r.borderDoneWithNeighborZ[e]===a.canonical.z)continue;0===a.centroidVertexArray.length&&a.createCentroidsBuffer();const c=o?o.findDEMTileFor(n):null;if(!(c&&c.dem||s))continue;const h=(e<2?1:5)-e,u=a.borderDoneWithNeighborZ[h]!==r.canonical.z,g=a.borderFeatureIndices[h];let x=0;if(r.canonical.z!==a.canonical.z){for(const e of t)r.showCentroid(r.featuresOnBorder[e]);if(u)for(const e of g)a.showCentroid(a.featuresOnBorder[e]);r.borderDoneWithNeighborZ[e]=a.canonical.z,a.borderDoneWithNeighborZ[h]=r.canonical.z;}for(const i of t){const t=r.featuresOnBorder[i],o=r.centroidData[t.centroidDataIndex],l=t.borders[e];let u;for(;xl[0]+3||e[0]>l[0]-3)break;a.showCentroid(u),x++;}if(u&&xl[1]-3)&&(v++,++x!==g.length);)u=a.featuresOnBorder[g[x]];if(u=a.featuresOnBorder[g[i]],v>1){const e=u.borders[h];Math.abs(l[0]-e[0])<3&&Math.abs(l[1]-e[1])<3&&(v=1,x=i+1);}else if(0===v){r.showCentroid(t);continue}const b=a.centroidData[u.centroidDataIndex];s&&1===v&&(((m=o).flags|(_=b).flags)&cb?(m.flags|=cb,_.flags|=cb):(m.flags&=2147483647,_.flags&=2147483647));let w=new y(0,0);if(v>1)x=i;else if(c&&c.dem&&!(t.intersectsCount()>1||u.intersectsCount()>1)){const t=d[e](o,b),i=e%2?cr-1:0;f=p(t[0],Math.min(cr-1,t[1]),i,c,n,e<2,t[2]),w=new y(Math.ceil(7*(f+450)),0);}o.centroidXY=b.centroidXY=w,r.writeCentroidToBuffer(o),a.writeCentroidToBuffer(b);}else r.showCentroid(t);}r.borderDoneWithNeighborZ[e]=a.canonical.z,a.borderDoneWithNeighborZ[h]=r.canonical.z;}var f,m,_;(r.needsCentroidUpdate||!r.centroidVertexBuffer&&0!==r.centroidVertexArray.length)&&r.uploadCentroid(e);}const iA=[1,0,0],rA=[0,1,0],nA=[0,0,1];function oA(e,t,i){const r=i.transform,n=i.shadowRenderer;if(!n)return !0;const o=e.toUnwrapped(),s=r.tileSize*n._cascades[i.currentShadowCascade].scale;let a=t.maxHeight;if(r.elevation){const t=r.elevation.getMinMaxForTile(e);t&&(a+=t.max);}const l=[...n.shadowDirection];l[2]=-l[2];const c=n.computeSimplifiedTileShadowVolume(o,a,s,l);if(!c)return !1;const h=[iA,rA,nA,l,[l[0],0,l[2]],[0,l[1],l[2]]],u=\"globe\"===r.projection.name,d=r.scaleZoom(s),p=Qu.fromInvProjectionMatrix(r.invProjMatrix,r.worldSize,d,!u),f=n.getCurrentCascadeFrustum();return 0===p.intersectsPrecise(c.vertices,c.planes,h)||0===f.intersectsPrecise(c.vertices,c.planes,h)}function sA(e){const t=e._nearZ,i=e.projection.farthestPixelDistance(e),r=i-t,n=.2*e.height,o=t+n;return [t,i,(o-n-t)/r,(o-t)/r]}const aA=new hi(1,0,0,1),lA=new hi(0,1,0,1),cA=new hi(0,0,1,1),hA=new hi(1,0,1,1),uA=new hi(0,1,1,1);function dA(e,t,i){const r=e.context,n=e.transform,o=r.gl,s=\"globe\"===n.projection.name,a=s?[\"PROJECTION_GLOBE_VIEW\"]:[];let l=i.projMatrix;if(s&&Dd(n.zoom)>0){const e=Sd(_d(i.canonical,n));l=Au.multiply(new Float32Array(16),n.globeMatrix,e),Au.multiply(l,n.projMatrix,l);}const c=e.getOrCreateProgram(\"debug\",{defines:a}),h=t.getTileByID(i.key);e.terrain&&e.terrain.setupElevationDraw(h,c);const u=Mx.disabled,d=Sx.disabled,p=e.colorModeForRenderPass(),f=\"$debug\";r.activeTexture.set(o.TEXTURE0),e.emptyTexture.bind(o.LINEAR,o.CLAMP_TO_EDGE),s?h._makeGlobeTileDebugBuffers(e.context,n):h._makeDebugTileBoundsBuffers(e.context,n.projection);const m=h._tileDebugBuffer||e.debugBuffer,_=h._tileDebugIndexBuffer||e.debugIndexBuffer,g=h._tileDebugSegments||e.debugSegments;c.draw(e,o.LINE_STRIP,u,d,p,Dx.disabled,AM(l,hi.red),f,m,_,g,null,null,null,[h._globeTileDebugBorderBuffer]);const y=h.latestRawTileData,x=Math.floor((y&&y.byteLength||0)/1024),v=t.getTile(i).tileSize,b=512/Math.min(v,512)*(i.overscaledZ/n.zoom)*.5;let w=i.canonical.toString();i.overscaledZ!==i.canonical.z&&(w+=` => ${i.overscaledZ}`),w+=` ${x}kb`,function(e,t){e.initDebugOverlayCanvas();const i=e.debugOverlayCanvas,r=e.context.gl,n=e.debugOverlayCanvas.getContext(\"2d\");n.clearRect(0,0,i.width,i.height),n.shadowColor=\"white\",n.shadowBlur=2,n.lineWidth=1.5,n.strokeStyle=\"white\",n.textBaseline=\"top\",n.font=\"bold 36px Open Sans, sans-serif\",n.fillText(t,5,5),n.strokeText(t,5,5),e.debugOverlayTexture.update(i),e.debugOverlayTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE);}(e,w);const T=h._tileDebugTextBuffer||e.debugBuffer,E=h._tileDebugTextIndexBuffer||e.quadTriangleIndexBuffer,M=h._tileDebugTextSegments||e.debugSegments;c.draw(e,o.TRIANGLES,u,d,Cx.alphaBlended,Dx.disabled,AM(l,hi.transparent,b),f,T,E,M,null,null,null,[h._globeTileDebugTextBuffer]);}function pA(e,t,i,r){mA(e,0,t+i/2,e.transform.width,i,r);}function fA(e,t,i,r){mA(e,t-i/2,0,i,e.transform.height,r);}function mA(e,t,i,r,n,o){const s=e.context,a=s.gl;a.enable(a.SCISSOR_TEST),a.scissor(t*dt.devicePixelRatio,i*dt.devicePixelRatio,r*dt.devicePixelRatio,n*dt.devicePixelRatio),s.clear({color:o}),a.disable(a.SCISSOR_TEST);}const _A=Ia([{name:\"a_pos_3f\",components:3,type:\"Float32\"}]),{members:gA}=_A;function yA(e,t,i,r){e.emplaceBack(t,i,r);}class xA{constructor(e){this.vertexArray=new tl,this.indices=new Wa,yA(this.vertexArray,-1,-1,1),yA(this.vertexArray,1,-1,1),yA(this.vertexArray,-1,1,1),yA(this.vertexArray,1,1,1),yA(this.vertexArray,-1,-1,-1),yA(this.vertexArray,1,-1,-1),yA(this.vertexArray,-1,1,-1),yA(this.vertexArray,1,1,-1),this.indices.emplaceBack(5,1,3),this.indices.emplaceBack(3,7,5),this.indices.emplaceBack(6,2,0),this.indices.emplaceBack(0,4,6),this.indices.emplaceBack(2,6,7),this.indices.emplaceBack(7,3,2),this.indices.emplaceBack(5,4,0),this.indices.emplaceBack(0,1,5),this.indices.emplaceBack(0,2,3),this.indices.emplaceBack(3,1,0),this.indices.emplaceBack(7,6,4),this.indices.emplaceBack(4,5,7),this.vertexBuffer=e.createVertexBuffer(this.vertexArray,gA),this.indexBuffer=e.createIndexBuffer(this.indices),this.segment=xl.simpleSegment(0,0,36,12);}}function vA(e,t,i,r,n,o){const s=e.context.gl,a=t.paint.get(\"sky-atmosphere-color\"),l=t.paint.get(\"sky-atmosphere-halo-color\"),c=t.paint.get(\"sky-atmosphere-sun-intensity\"),h=((e,t,i,r,n)=>({u_matrix_3f:e,u_sun_direction:t,u_sun_intensity:i,u_color_tint_r:[r.r,r.g,r.b,r.a],u_color_tint_m:[n.r,n.g,n.b,n.a],u_luminance:5e-5}))(Eu.fromMat4(Eu.create(),r),n,c,a,l);s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0,s.TEXTURE_CUBE_MAP_POSITIVE_X+o,t.skyboxTexture,0),i.draw(e,s.TRIANGLES,Mx.disabled,Sx.disabled,Cx.unblended,Dx.frontCW,h,\"skyboxCapture\",t.skyboxGeometry.vertexBuffer,t.skyboxGeometry.indexBuffer,t.skyboxGeometry.segment);}const bA=Ia([{type:\"Float32\",name:\"a_pos\",components:3},{type:\"Float32\",name:\"a_uv\",components:2}]);class wA{constructor(e){const t=new Ka;t.emplaceBack(-1,1,1,0,0),t.emplaceBack(1,1,1,1,0),t.emplaceBack(1,-1,1,1,1),t.emplaceBack(-1,-1,1,0,1);const i=new Wa;i.emplaceBack(0,1,2),i.emplaceBack(2,3,0),this.vertexBuffer=e.createVertexBuffer(t,bA.members),this.indexBuffer=e.createIndexBuffer(i),this.segments=xl.simpleSegment(0,0,4,2);}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy();}}const TA=Ia([{type:\"Float32\",name:\"a_pos_3f\",components:3},{type:\"Float32\",name:\"a_uv\",components:2},{type:\"Float32\",name:\"a_size_scale\",components:1},{type:\"Float32\",name:\"a_fade_opacity\",components:1}]);class EA{constructor(){this.colorModeAlphaBlendedWriteRGB=new Cx([1,Ix,1,Ix],hi.transparent,[!0,!0,!0,!1]),this.colorModeWriteAlpha=new Cx([1,0,1,0],hi.transparent,[!1,!1,!1,!0]);}update(e){const t=e.context;if(!this.atmosphereBuffer){this.atmosphereBuffer=new wA(t);const e=100,i=200,r=function(e){const t=Xn(30),i=[];for(let e=0;e<16e3;++e){const e=2*Math.PI*t(),r=Math.acos(1-2*t())-.5*Math.PI;i.push(Du.fromValues(Math.cos(r)*Math.cos(e),Math.cos(r)*Math.sin(e),Math.sin(r)));}return i}(),n=Xn(300),o=new Ja,s=new Wa;let a=0;for(let t=0;t{const h=\"globe\"===n.projection.name?[\"PROJECTION_GLOBE_VIEW\",\"FOG\"]:[\"FOG\"];t&&h.push(\"ALPHA_PASS\");const d=e.getOrCreateProgram(\"globeAtmosphere\",{defines:h}),f=((e,t,i,r,n,o,s,a,l,c,h,u)=>({u_frustum_tl:e,u_frustum_tr:t,u_frustum_br:i,u_frustum_bl:r,u_horizon:n,u_transition:o,u_fadeout_range:s,u_color:a,u_high_color:l,u_space_color:c,u_temporal_offset:h,u_horizon_angle:u}))(n.frustumCorners.TL,n.frustumCorners.TR,n.frustumCorners.BR,n.frustumCorners.BL,n.frustumCorners.horizon,s,u,a,l,c,p,_);e.uploadCommonUniforms(i,d);const m=this.atmosphereBuffer;m&&d.draw(e,r.TRIANGLES,o,Sx.disabled,t?this.colorModeWriteAlpha:this.colorModeAlphaBlendedWriteRGB,Dx.backCW,f,t?\"atmosphere_glow_alpha\":\"atmosphere_glow\",m.vertexBuffer,m.indexBuffer,m.segments);};g(!1),g(!0);}drawStars(e,t){const i=z(t.properties.get(\"star-intensity\"),0,1);if(0===i)return;const r=e.context,n=r.gl,o=e.transform,s=e.getOrCreateProgram(\"stars\"),a=Iu.identity([]);Iu.rotateX(a,a,-o._pitch),Iu.rotateZ(a,a,-o.angle),Iu.rotateX(a,a,w(o._center.lat)),Iu.rotateY(a,a,-w(o._center.lng));const l=Au.fromQuat(new Float32Array(16),a),c=Au.multiply([],o.starsProjMatrix,l),h=Eu.fromMat4([],l),u=Eu.invert([],h),d=[0,1,0];Du.transformMat3(d,d,u),Du.scale(d,d,.15);const p=[1,0,0];Du.transformMat3(p,p,u),Du.scale(p,p,.15);const f=((e,t,i,r)=>({u_matrix:Float32Array.from(e),u_up:t,u_right:i,u_intensity_multiplier:r}))(c,d,p,i);e.uploadCommonUniforms(r,s),this.starsVx&&this.starsIdx&&s.draw(e,n.TRIANGLES,Mx.disabled,Sx.disabled,this.colorModeAlphaBlendedWriteRGB,Dx.disabled,f,\"atmosphere_stars\",this.starsVx,this.starsIdx,this.starsSegments);}}function MA(e,t){const i=[...e],r=t.cameraWorldSizeForFog/t.worldSize,n=Au.identity([]);return Au.scale(n,n,[r,r,1]),Au.multiply(i,n,i),Au.multiply(i,t.worldToFogMatrix,i),i}function AA(e,t,i,r){const n=i.material,o=r.context,{baseColorTexture:s,metallicRoughnessTexture:a}=n.pbrMetallicRoughness,{normalTexture:l,occlusionTexture:c,emissionTexture:h}=n;function u(t,i,r){if(t&&(e.push(i),o.activeTexture.set(o.gl.TEXTURE0+r),t.gfxTexture)){const{minFilter:e,magFilter:i,wrapS:r,wrapT:n}=t.sampler;t.gfxTexture.bindExtraParam(e,i,r,n);}}u(s,\"HAS_TEXTURE_u_baseColorTexture\",NM.BaseColor),u(a,\"HAS_TEXTURE_u_metallicRoughnessTexture\",NM.MetallicRoughness),u(l,\"HAS_TEXTURE_u_normalTexture\",NM.Normal),u(c,\"HAS_TEXTURE_u_occlusionTexture\",NM.Occlusion),u(h,\"HAS_TEXTURE_u_emissionTexture\",NM.Emission),i.texcoordBuffer&&(e.push(\"HAS_ATTRIBUTE_a_uv_2f\"),t.push(i.texcoordBuffer)),i.colorBuffer&&(e.push(12===i.colorBuffer.itemSize?\"HAS_ATTRIBUTE_a_color_3f\":\"HAS_ATTRIBUTE_a_color_4f\"),t.push(i.colorBuffer)),i.normalBuffer&&(e.push(\"HAS_ATTRIBUTE_a_normal_3f\"),t.push(i.normalBuffer)),i.pbrBuffer&&(e.push(\"HAS_ATTRIBUTE_a_pbr\"),e.push(\"HAS_ATTRIBUTE_a_heightBasedEmissiveStrength\"),t.push(i.pbrBuffer)),\"OPAQUE\"!==n.alphaMode&&\"MASK\"!==n.alphaMode||e.push(\"UNPREMULT_TEXTURE_IN_SHADER\"),n.defined||e.push(\"DIFFUSE_SHADED\"),e.push(\"USE_STANDARD_DERIVATIVES\");}function SA(e,t,i,r,n,o){const s=i.paint.get(\"model-opacity\"),a=t.context,l=new Mx(t.context.gl.LEQUAL,Mx.ReadWrite,t.depthRangeFor3D),c=t.transform,h=e.mesh,u=h.material,d=u.pbrMetallicRoughness,p=t.style.fog;let f;f=\"pixels\"===t.transform.projection.zAxisUnit?[...e.nodeModelMatrix]:Au.multiply([],r.zScaleMatrix,e.nodeModelMatrix),Au.multiply(f,r.negCameraPosMatrix,f);const m=Au.invert([],f);Au.transpose(m,m);const _=i.paint.get(\"model-emissive-strength\").constantOr(0),g=UM(new Float32Array(e.worldViewProjection),new Float32Array(f),new Float32Array(m),t,s,d.baseColorFactor,u.emissiveFactor,d.metallicFactor,d.roughnessFactor,u,_,i),y={defines:[]},x=[];AA(y.defines,x,h,t);const v=t.shadowRenderer;v&&(v.useNormalOffset=!1);let b=null;if(p){const i=MA(e.nodeModelMatrix,t.transform);if(b=new Float32Array(i),\"globe\"!==c.projection.name){const e=h.aabb.min,t=h.aabb.max,[r,n]=p.getOpacityForBounds(i,e[0],e[1],t[0],t[1]);y.overrideFog=r>=fw||n>=fw;}}const w=eM(t,i.paint.get(\"model-cutoff-fade-range\"));w.shouldRenderCutoff&&y.defines.push(\"RENDER_CUTOFF\");const T=t.getOrCreateProgram(\"model\",y);t.uploadCommonUniforms(a,T,null,b,w),\"shadow\"!==t.renderPass&&v&&v.setupShadowsFromMatrix(e.nodeModelMatrix,T),T.draw(t,a.gl.TRIANGLES,l,n,o,h.material.doubleSided?Dx.disabled:Dx.backCCW,g,i.id,h.vertexBuffer,h.indexBuffer,h.segments,i.paint,t.transform.zoom,void 0,x);}function IA(e,t,i,r,n,o,s){let a;a=\"globe\"===e.projection.name?Av(i,e):[...i],Au.multiply(a,a,t.matrix);const l=Au.multiply([],r,a);if(t.meshes)for(const e of t.meshes){if(\"BLEND\"!==e.material.alphaMode){s.push({mesh:e,depth:0,modelIndex:n,worldViewProjection:l,nodeModelMatrix:a});continue}const t=Du.transformMat4([],e.centroid,l);t[2]>0&&o.push({mesh:e,depth:t[2],modelIndex:n,worldViewProjection:l,nodeModelMatrix:a});}if(t.children)for(const a of t.children)IA(e,a,i,r,n,o,s);}function CA(e,t,i,r){const n=i.shadowRenderer;if(!n)return;const o=n.getShadowPassDepthMode(),s=n.getShadowPassColorMode(),a=n.calculateShadowPassMatrixFromMatrix(t),l=jM(a);i.getOrCreateProgram(\"modelDepth\",{defines:[\"DEPTH_TEXTURE\"]}).draw(i,i.context.gl.TRIANGLES,o,Sx.disabled,s,Dx.backCCW,l,r.id,e.vertexBuffer,e.indexBuffer,e.segments,r.paint,i.transform.zoom,void 0,void 0);}function zA(e,t,i){const r=t.updateZoomBasedPaintProperties(),n=function(e,t,i){let r,n,o,s=e.terrain?e.terrain.exaggeration():0;if(e.terrain&&s>0){const t=e.terrain,n=t.findDEMTileFor(i);n&&n.dem?r=Jm.create(t,i,n):s=0;}if(0===s&&(t.terrainElevationMin=0,t.terrainElevationMax=0),s===t.validForExaggeration&&(0===s||r&&r._demTile&&r._demTile.tileID===t.validForDEMTile.id&&r._dem._timestamp===t.validForDEMTile.timestamp))return !1;for(const e in t.instancesPerModel){const i=t.instancesPerModel[e];for(let e=0;ec&&(c=t.max);}const h=z(r.x,o,s)-r.x,u=z(r.y,a,l)-r.y,d=Qd(c,t.center.lat)-r.z;return t._zoomFromMercatorZ(Math.sqrt(h*h+u*u+d*d))}function RA(e,t,i,r,n,o,s){const a=e.context,l=\"shadow\"===e.renderPass,c=e.shadowRenderer,h=l&&c?c.getShadowPassDepthMode():new Mx(a.gl.LEQUAL,Mx.ReadWrite,e.depthRangeFor3D),u=e.isTileAffectedByFog(o);if(i.meshes)for(const d of i.meshes){const p=[\"MODEL_POSITION_ON_GPU\"],f=[];let m,_,g;r.instancedDataArray.length>20&&p.push(\"INSTANCED_ARRAYS\");const y=eM(e,t.paint.get(\"model-cutoff-fade-range\"));if(y.shouldRenderCutoff&&p.push(\"RENDER_CUTOFF\"),l&&c)m=e.getOrCreateProgram(\"modelDepth\",{defines:p}),_=jM(s.shadowTileMatrix,s.shadowTileMatrix,Float32Array.from(i.matrix)),g=c.getShadowPassColorMode();else {AA(p,f,d,e),m=e.getOrCreateProgram(\"model\",{defines:p,overrideFog:u});const r=d.material,l=r.pbrMetallicRoughness,h=t.paint.get(\"model-opacity\"),x=t.paint.get(\"model-emissive-strength\").constantOr(0);_=UM(o.expandedProjMatrix,Float32Array.from(i.matrix),new Float32Array(16),e,h,l.baseColorFactor,r.emissiveFactor,l.metallicFactor,l.roughnessFactor,r,x,t,n),c&&(s.shadowUniformsInitialized?m.setShadowUniformValues(a,c.getShadowUniformValues()):(c.setupShadows(o.toUnwrapped(),m,\"model-tile\",o.overscaledZ),s.shadowUniformsInitialized=!0)),g=y.shouldRenderCutoff||h<1||\"OPAQUE\"!==r.alphaMode?Cx.alphaBlended:Cx.unblended;}e.uploadCommonUniforms(a,m,o.toUnwrapped(),null,y);const x=d.material.doubleSided?Dx.disabled:Dx.backCCW;if(r.instancedDataArray.length>20)f.push(r.instancedDataBuffer),m.draw(e,a.gl.TRIANGLES,h,Sx.disabled,g,x,_,t.id,d.vertexBuffer,d.indexBuffer,d.segments,t.paint,e.transform.zoom,void 0,f,r.instancedDataArray.length);else {const i=l?\"u_instance\":\"u_normal_matrix\";for(let n=0;n30&&(i.buf.destroy(),this._storage.delete(t));}destroy(){for(const[e,t]of this._storage)t.buf.destroy(),this._storage.delete(e);}}const FA={symbol:function(e,t,i,r,n){if(\"translucent\"!==e.renderPass)return;const o=Sx.disabled,s=e.colorModeForRenderPass();i.layout.get(\"text-variable-anchor\")&&function(e,t,i,r,n,o,s){const a=t.transform,l=\"map\"===n,c=\"map\"===o;for(const t of e){const e=r.getTile(t),n=e.getBucket(i);if(!n||!n.text||!n.text.segments.get().length)continue;const o=m_(n.textSizeData,a.zoom),h=YT(t,n.getProjection(),a),u=a.calculatePixelsToTileUnitsMatrix(e),d=sv(h,e.tileID.canonical,c,l,a,n.getProjection(),u),p=n.hasIconTextFit()&&n.hasIconData();if(o){const i=Math.pow(2,a.zoom-e.tileID.overscaledZ);HM(n,l,c,s,__,a,d,t,i,o,p);}}}(r,e,i,t,i.layout.get(\"text-rotation-alignment\"),i.layout.get(\"text-pitch-alignment\"),n),0!==i.paint.get(\"icon-opacity\").constantOr(1)&&YM(e,t,i,r,!1,i.paint.get(\"icon-translate\"),i.paint.get(\"icon-translate-anchor\"),i.layout.get(\"icon-rotation-alignment\"),i.layout.get(\"icon-pitch-alignment\"),i.layout.get(\"icon-keep-upright\"),i.paint.get(\"icon-color-saturation\"),o,s),0!==i.paint.get(\"text-opacity\").constantOr(1)&&YM(e,t,i,r,!0,i.paint.get(\"text-translate\"),i.paint.get(\"text-translate-anchor\"),i.layout.get(\"text-rotation-alignment\"),i.layout.get(\"text-pitch-alignment\"),i.layout.get(\"text-keep-upright\"),i.paint.get(\"icon-color-saturation\"),o,s),t.map.showCollisionBoxes&&(ZM(e,t,i,r,i.paint.get(\"text-translate\"),i.paint.get(\"text-translate-anchor\"),!0),ZM(e,t,i,r,i.paint.get(\"icon-translate\"),i.paint.get(\"icon-translate-anchor\"),!1));},circle:function(e,t,i,r){if(\"translucent\"!==e.renderPass)return;const n=i.paint.get(\"circle-opacity\"),o=i.paint.get(\"circle-stroke-width\"),s=i.paint.get(\"circle-stroke-opacity\"),a=void 0!==i.layout.get(\"circle-sort-key\").constantOr(1),l=i.paint.get(\"circle-emissive-strength\");if(0===n.constantOr(1)&&(0===o.constantOr(1)||0===s.constantOr(1)))return;const c=e.context,h=c.gl,u=e.transform,d=e.depthModeForSublayer(0,Mx.ReadOnly),p=Sx.disabled,f=e.colorModeForDrapableLayerRenderPass(l),m=\"globe\"===u.projection.name,_=[Kd(u.center.lng),Jd(u.center.lat)],g=[];for(let n=0;ne.sortKey-t.sortKey));const y={useDepthForOcclusion:u.depthOcclusionForSymbolsAndCircles};for(const t of g){const{programConfiguration:r,program:n,layoutVertexBuffer:o,globeExtVertexBuffer:s,indexBuffer:a,uniformValues:l,tile:m}=t.state,_=t.segments;e.terrain&&e.terrain.setupElevationDraw(m,n,y),e.uploadCommonUniforms(c,n,m.tileID.toUnwrapped()),n.draw(e,h.TRIANGLES,d,p,f,Dx.disabled,l,i.id,o,a,_,i.paint,u.zoom,r,[s]);}},heatmap:function(e,t,i,r){if(0!==i.paint.get(\"heatmap-opacity\"))if(\"offscreen\"===e.renderPass){const n=e.context,o=n.gl,s=Sx.disabled,a=new Cx([o.ONE,o.ONE,o.ONE,o.ONE],hi.transparent,[!0,!0,!0,!0]);!function(e,t,i,r){const n=e.gl,o=t.width*r,s=t.height*r;e.activeTexture.set(n.TEXTURE1),e.viewport.set([0,0,o,s]);let a=i.heatmapFbo;if(!a||a&&(a.width!==o||a.height!==s)){a&&a.destroy();const t=n.createTexture();n.bindTexture(n.TEXTURE_2D,t),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,n.LINEAR),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,n.LINEAR),a=i.heatmapFbo=e.createFramebuffer(o,s,!0,null),function(e,t,i,r,n,o){const s=e.gl;s.texImage2D(s.TEXTURE_2D,0,e.extRenderToTextureHalfFloat?s.RGBA16F:s.RGBA,n,o,0,s.RGBA,e.extRenderToTextureHalfFloat?s.HALF_FLOAT:s.UNSIGNED_BYTE,null),r.colorAttachment.set(i);}(e,0,t,a,o,s);}else n.bindTexture(n.TEXTURE_2D,a.colorAttachment.get()),e.bindFramebuffer.set(a.framebuffer);}(n,e,i,\"globe\"===e.transform.projection.name?.5:.25),n.clear({color:hi.transparent});const l=e.transform,c=\"globe\"===l.projection.name,h=c?[\"PROJECTION_GLOBE_VIEW\"]:[],u=c?Dx.frontCCW:Dx.disabled,d=[Kd(l.center.lng),Jd(l.center.lat)];for(let p=0;p({u_image:0,u_color_ramp:1,u_opacity:t.paint.get(\"heatmap-opacity\")}))(0,t),t.id,e.viewportBuffer,e.quadTriangleIndexBuffer,e.viewportSegments,t.paint,e.transform.zoom);}(e,i));},line:function(e,t,i,r){if(\"translucent\"!==e.renderPass)return;const n=i.paint.get(\"line-opacity\"),o=i.paint.get(\"line-width\");if(0===n.constantOr(1)||0===o.constantOr(1))return;const s=i.paint.get(\"line-emissive-strength\"),a=e.depthModeForSublayer(0,Mx.ReadOnly),l=e.colorModeForDrapableLayerRenderPass(s),c=e.terrain&&e.terrain.renderingToTexture?1:dt.devicePixelRatio,h=i.paint.get(\"line-dasharray\"),u=h.constantOr(1),d=i.layout.get(\"line-cap\"),p=i.paint.get(\"line-pattern\"),f=p.constantOr(1),m=i.paint.get(\"line-pattern\").constantOr(1),_=1!==i.paint.get(\"line-opacity\").constantOr(1);let g=!m&&_;const y=i.paint.get(\"line-gradient\"),x=f?\"linePattern\":\"line\",v=e.context,b=v.gl,w=Gb(i);e.terrain&&e.terrain.clipOrMaskOverlapStencilType()&&(g=!1);for(const n of r){const r=t.getTile(n);if(f&&!r.patternsLoaded())continue;const o=r.getBucket(i);if(!o)continue;e.prepareDrawTile();const s=o.programConfigurations.get(i.id),m=e.isTileAffectedByFog(n),_=e.getOrCreateProgram(x,{config:s,defines:w,overrideFog:m}),T=p.constantOr(null);if(T&&r.imageAtlas){const e=r.imageAtlas.patternPositions[T.toString()];e&&s.setConstantPatternPositions(e);}const E=h.constantOr(null),M=d.constantOr(null);if(!f&&E&&M&&r.lineAtlas){const e=r.lineAtlas.getDash(E,M);e&&s.setConstantPatternPositions(e);}let[A,S]=i.paint.get(\"line-trim-offset\");if(\"round\"===M||\"square\"===M){const e=1;A!==S&&(0===A&&(A-=e),1===S&&(S+=e));}const I=e.terrain?n.projMatrix:null,C=f?Ub(e,r,i,I,c):Nb(e,r,i,I,o.lineClipsArray.length,c,[A,S]);if(y){const r=o.gradients[i.id];let s=r.texture;if(i.gradientVersion!==r.version){let a=256;if(i.stepInterpolant){const i=t.getSource().maxzoom,r=n.canonical.z===i?Math.ceil(1<{_.draw(e,b.TRIANGLES,a,t,l,Dx.disabled,C,i.id,o.layoutVertexBuffer,o.indexBuffer,o.segments,i.paint,e.transform.zoom,s,[o.layoutVertexBuffer2]);};if(g){const t=e.stencilModeForClipping(n).ref;0===t&&e.terrain&&v.clear({stencil:0});const i={func:b.EQUAL,mask:255};C.u_alpha_discard_threshold=.8,P(new Sx(i,t,255,b.KEEP,b.KEEP,b.INVERT)),C.u_alpha_discard_threshold=0,P(new Sx(i,t,255,b.KEEP,b.KEEP,b.KEEP));}else P(e.stencilModeForClipping(n));}g&&(e.resetStencilClippingMasks(),e.terrain&&v.clear({stencil:0}));},fill:function(e,t,i,r){const n=i.paint.get(\"fill-color\"),o=i.paint.get(\"fill-opacity\");if(0===o.constantOr(1))return;const s=i.paint.get(\"fill-emissive-strength\"),a=e.colorModeForDrapableLayerRenderPass(s),l=i.paint.get(\"fill-pattern\"),c=e.opaquePassEnabledForLayer()&&!l.constantOr(1)&&1===n.constantOr(hi.transparent).a&&1===o.constantOr(0)?\"opaque\":\"translucent\";if(e.renderPass===c){const n=e.depthModeForSublayer(1,\"opaque\"===e.renderPass?Mx.ReadWrite:Mx.ReadOnly);JM(e,t,i,r,n,a,!1);}if(\"translucent\"===e.renderPass&&i.paint.get(\"fill-antialias\")){const n=e.depthModeForSublayer(i.getPaintProperty(\"fill-outline-color\")?2:0,Mx.ReadOnly);JM(e,t,i,r,n,a,!0);}},\"fill-extrusion\":function(e,t,i,r){const n=i.paint.get(\"fill-extrusion-opacity\"),o=e.context,s=o.gl,a=e.terrain,l=a&&a.renderingToTexture,c=i.paint.get(\"fill-extrusion-cutoff-fade-range\");if(0===n)return;const h=e.conflationActive&&e.layerUsedInConflation(i,t.getSource());if(h&&function(e,t,i,r){for(const n of r){const r=t.getTile(n).getBucket(i);r&&(r.updateReplacement(n,e.replacementSource),r.uploadCentroid(e.context));}}(e,t,i,r),a||h)for(const n of r){const r=t.getTile(n).getBucket(i);r&&tA(e.context,t,n,r,i,a,h);}if(\"shadow\"===e.renderPass&&e.shadowRenderer){const o=e.shadowRenderer;if(a&&n<.65&&i._transitionablePaint._values[\"fill-extrusion-opacity\"].value.expression instanceof Ao)return;const s=o.getShadowPassDepthMode(),l=o.getShadowPassColorMode();QM(e,t,i,r,s,Sx.disabled,l,h);}else if(\"translucent\"===e.renderPass){const u=!i.paint.get(\"fill-extrusion-pattern\").constantOr(1);if(!l){const o=new Mx(e.context.gl.LEQUAL,Mx.ReadWrite,e.depthRangeFor3D);0===c&&1===n&&u?QM(e,t,i,r,o,Sx.disabled,Cx.unblended,h):(QM(e,t,i,r,o,Sx.disabled,Cx.disabled,h),QM(e,t,i,r,o,e.stencilModeFor3D(),e.colorModeForRenderPass(),h),e.resetStencilClippingMasks());}if(e.style.enable3dLights()&&u&&(!a&&\"globe\"!==e.transform.projection.name||l)){const n=i.paint.get(\"fill-extrusion-opacity\"),c=i.paint.get(\"fill-extrusion-ambient-occlusion-intensity\"),u=i.paint.get(\"fill-extrusion-ambient-occlusion-ground-radius\"),d=i.paint.get(\"fill-extrusion-flood-light-intensity\"),p=i.paint.get(\"fill-extrusion-flood-light-color\").toArray01().slice(0,3),f=c>0&&u>0,m=d>0,_=(e,t,i)=>(1-i)*e+i*t,g=o=>{const a=e.depthModeForSublayer(1,Mx.ReadOnly,s.LEQUAL,!0),l=i.paint.get(o?\"fill-extrusion-ambient-occlusion-ground-attenuation\":\"fill-extrusion-flood-light-ground-attenuation\"),f=_(.1,3,l),m=e._showOverdrawInspector;if(!m){const l=new Sx({func:s.ALWAYS,mask:255},255,255,s.KEEP,s.KEEP,s.REPLACE),m=new Cx([s.ONE,s.ONE,s.ONE,s.ONE],hi.transparent,[!1,!1,!1,!0],s.MIN);eA(e,t,i,r,a,l,m,Dx.disabled,o,\"sdf\",n,c,u,d,p,f,h,!1);}{const l=m?Sx.disabled:new Sx({func:s.EQUAL,mask:255},255,255,s.KEEP,s.DECR,s.DECR),_=m?e.colorModeForRenderPass():new Cx([s.ONE_MINUS_DST_ALPHA,s.DST_ALPHA,s.ONE,s.ONE],hi.transparent,[!0,!0,!0,!0]);eA(e,t,i,r,a,l,_,Dx.disabled,o,\"color\",n,c,u,d,p,f,h,!1);}};if(l){const l=(o,a,l)=>{const f=e.depthModeForSublayer(1,Mx.ReadOnly,s.LEQUAL,!1),m=i.paint.get(o?\"fill-extrusion-ambient-occlusion-ground-attenuation\":\"fill-extrusion-flood-light-ground-attenuation\"),g=_(.1,3,m);{const l=new Cx([s.ONE,s.ONE,s.ONE,s.ONE],hi.transparent,[!1,!1,!1,!0]);eA(e,t,i,r,f,Sx.disabled,l,Dx.disabled,o,\"clear\",n,c,u,d,p,g,h,a);}{const l=new Sx({func:s.ALWAYS,mask:255},255,255,s.KEEP,s.KEEP,s.REPLACE),m=new Cx([s.ONE,s.ONE,s.ONE,s.ONE],hi.transparent,[!1,!1,!1,!0],s.MIN);eA(e,t,i,r,f,l,m,Dx.disabled,o,\"sdf\",n,c,u,d,p,g,h,a);}{const l=o?s.ZERO:s.ONE_MINUS_DST_ALPHA,m=new Sx({func:s.EQUAL,mask:255},255,255,s.KEEP,s.DECR,s.DECR),_=new Cx([l,s.DST_ALPHA,s.ONE_MINUS_DST_ALPHA,s.ZERO],hi.transparent,[!0,!0,!0,!0]);eA(e,t,i,r,f,m,_,Dx.disabled,o,\"color\",n,c,u,d,p,g,h,a);}{const m=new Cx([s.ONE,s.ONE,s.ONE,o?s.ZERO:s.ONE],hi.transparent,[!1,!1,!1,!0],o?s.FUNC_ADD:s.MAX);eA(e,t,i,r,f,Sx.disabled,m,Dx.disabled,o,\"clear\",n,c,u,d,p,g,h,a,l);}};if(f||m){let t;if(e.prepareDrawTile(),a){const e=a.drapeBufferSize[0],i=a.drapeBufferSize[1];t=a.framebufferCopyTexture,t&&(!t||t.size[0]===e&&t.size[1]===i)||(t&&t.destroy(),t=a.framebufferCopyTexture=new My(o,new ef({width:e,height:i}),s.RGBA)),t.bind(s.LINEAR,s.CLAMP_TO_EDGE),s.copyTexImage2D(s.TEXTURE_2D,0,s.RGBA,0,0,e,i,0);}f&&l(!0,!1,t),m&&l(!1,!0,t);}}else f&&g(!0),m&&g(!1);}}},hillshade:function(e,t,i,r){if(\"offscreen\"!==e.renderPass&&\"translucent\"!==e.renderPass)return;if(e.style.disableElevatedTerrain)return;const n=e.context,o=e.terrain&&e.terrain.renderingToTexture,[s,a]=\"translucent\"!==e.renderPass||o?[{},r]:e.stencilConfigForOverlap(r);for(const r of a){const n=t.getTile(r);if(n.needsHillshadePrepare&&\"offscreen\"===e.renderPass)YE(e,n,i);else if(\"translucent\"===e.renderPass){const t=e.depthModeForSublayer(0,Mx.ReadOnly),a=i.paint.get(\"hillshade-emissive-strength\"),l=e.colorModeForDrapableLayerRenderPass(a),c=o&&e.terrain?e.terrain.stencilModeForRTTOverlap(r):s[r.overscaledZ];HE(e,r,n,i,t,c,l);}}n.viewport.set([0,0,e.width,e.height]),e.resetStencilClippingMasks();},raster:function(e,t,i,r,n,o){if(\"translucent\"!==e.renderPass)return;if(0===i.paint.get(\"raster-opacity\"))return;const s=e.context,a=s.gl,l=t.getSource(),c=function(e,t,i){const r=e.paint.get(\"raster-color\"),n=[],o=e.paint.get(\"raster-resampling\"),s=e.paint.get(\"raster-color-mix\"),a=e.paint.get(\"raster-color-range\"),l=[s[0],s[1],s[2],0],c=s[3],h=\"nearest\"===o?i.NEAREST:i.LINEAR;if(r&&n.push(\"RASTER_COLOR\"),r){t.activeTexture.set(i.TEXTURE2);let r=e.colorRampTexture;r||(r=e.colorRampTexture=new My(t,e.colorRamp,i.RGBA)),r.bind(i.LINEAR,i.CLAMP_TO_EDGE);}return {mix:l,range:a,offset:c,defines:n,resampling:h}}(i,s,a),h=c.defines,u=\"globe\"===e.transform.projection.name;let d=!1;if(l instanceof Jb&&!r.length){if(!u)return;if(l.onNorthPole)d=!0,h.push(\"GLOBE_POLES\");else {if(!l.onSouthPole)return;d=!0,h.push(\"GLOBE_POLES\");}}const p=i.paint.get(\"raster-emissive-strength\"),f=e.colorModeForDrapableLayerRenderPass(p),m=e.terrain&&e.terrain.renderingToTexture,_=l instanceof Jb&&0!==i.paint.get(\"raster-elevation\"),g=!e.options.moving,y=\"nearest\"===i.paint.get(\"raster-resampling\")?a.NEAREST:a.LINEAR;if(d){const r=t.getSource();if(!(r instanceof Jb))return;const n=r.texture;if(!n)return;const o=e.globeSharedBuffers;if(!o)return;const l=new Mx(a.LEQUAL,Mx.ReadWrite,e.depthRangeFor3D),h=Float32Array.from(e.transform.expandedFarZProjMatrix);let u=Rd(0,0,e.transform);const d=Float32Array.from(Ad(fd(new ju(0,0,0)))),m={opacity:1,mix:0};e.terrain&&e.terrain.prepareDrawTile(),s.activeTexture.set(a.TEXTURE0),n.bind(y,a.CLAMP_TO_EDGE),s.activeTexture.set(a.TEXTURE1),n.bind(y,a.CLAMP_TO_EDGE),n.useMipmap&&s.extTextureFilterAnisotropic&&e.transform.pitch>20&&a.texParameterf(a.TEXTURE_2D,s.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,s.extTextureFilterAnisotropicMax);const[_,g,x,v]=o.getPoleBuffers(0,!0);let b;r.onNorthPole?(b=_,e.renderDefaultNorthPole=!1):(u=Au.scale(Au.create(),u,[1,-1,1]),b=g,e.renderDefaultSouthPole=!1);const w=((e,t,i,r,n,o,s,a,l,c,h,u)=>CM(e,t,i,new Float32Array(16),new Float32Array(9),[0,0],[0,0,0,0],0,[0,0],[0,0,0,0],1,r,n,o||[0,0],s,2,l,c,h,1,0,u))(h,d,u,m,i,r.perspectiveTransform||[0,0],i.paint.get(\"raster-elevation\"),0,c.mix,c.offset,c.range,p),T=e.getOrCreateProgram(\"raster\",{defines:c.defines});return e.uploadCommonUniforms(s,T,null),void T.draw(e,a.TRIANGLES,l,Sx.disabled,f,Dx.disabled,w,i.id,b,x,v)}if(!r.length)return;const[x,v]=l instanceof Jb||m?[{},r]:e.stencilConfigForOverlap(r),b=v[v.length-1].overscaledZ,w=_&&u;w&&c.defines.push(\"PROJECTION_GLOBE_VIEW\"),_&&c.defines.push(\"RENDER_CUTOFF\");for(const r of v){const n=r.toUnwrapped(),h=t.getTile(r);if(m&&(!h||!h.hasData()))continue;if(!h.texture)continue;let d,v;m?(d=Mx.disabled,v=r.projMatrix):_?(d=new Mx(a.LEQUAL,Mx.ReadWrite,e.depthRangeFor3D),v=u?Float32Array.from(e.transform.expandedFarZProjMatrix):e.transform.calculateProjMatrix(n,g)):(d=e.depthModeForSublayer(r.overscaledZ-b,1===i.paint.get(\"raster-opacity\")?Mx.ReadWrite:Mx.ReadOnly,a.LESS),v=e.transform.calculateProjMatrix(n,g));const T=e.terrain&&m?e.terrain.stencilModeForRTTOverlap(r):x[r.overscaledZ],E=o?0:i.paint.get(\"raster-fade-duration\");h.registerFadeDuration(E);const M=t.findLoadedParent(r,0),A=aM(h,M,t,e.transform,E);let S,I;e.terrain&&e.terrain.prepareDrawTile(),s.activeTexture.set(a.TEXTURE0),h.texture&&h.texture.bind(y,a.CLAMP_TO_EDGE),s.activeTexture.set(a.TEXTURE1),M?(M.texture&&M.texture.bind(y,a.CLAMP_TO_EDGE),S=Math.pow(2,M.tileID.overscaledZ-h.tileID.overscaledZ),I=[h.tileID.canonical.x*S%1,h.tileID.canonical.y*S%1]):h.texture&&h.texture.bind(y,a.CLAMP_TO_EDGE),h.texture&&h.texture.useMipmap&&s.extTextureFilterAnisotropic&&e.transform.pitch>20&&a.texParameterf(a.TEXTURE_2D,s.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,s.extTextureFilterAnisotropicMax);const C=e.transform,z=l instanceof Jb?l.perspectiveTransform:[0,0],P=_?sA(C):[0,0,0,0];let D,R,L,k,O,B;if(w&&l instanceof Jb&&l.coordinates.length>3){D=Float32Array.from(Ad(fd(new ju(0,0,0)))),R=Float32Array.from(C.globeMatrix),L=Float32Array.from(Pd(C)),k=[Kd(C.center.lng),Jd(C.center.lat)],B=[Kd(l.coordinates[1][0]),Jd(l.coordinates[1][1]),Kd(l.coordinates[3][0]),Jd(l.coordinates[3][1])];const t=new sc(l.coordinates[1],l.coordinates[3]);O=Float32Array.from(kd(new ju(0,0,0),t,0,C.worldSize/e.transform._pixelsPerMercatorPixel));}else D=new Float32Array(16),R=new Float32Array(9),L=new Float32Array(16),k=[0,0],O=new Float32Array(16),B=[0,0,0,0];const F=CM(v,D,R,L,O,I||[0,0],B,Dd(e.transform.zoom),k,P,S||1,A,i,z,_?i.paint.get(\"raster-elevation\"):0,2,c.mix,c.offset,c.range,1,0,p),N=e.isTileAffectedByFog(r),U=e.getOrCreateProgram(\"raster\",{defines:c.defines,overrideFog:N});if(e.uploadCommonUniforms(s,U,n),l instanceof Jb){if(m||!u)l.boundsBuffer&&l.boundsSegments&&U.draw(e,a.TRIANGLES,d,Sx.disabled,f,Dx.disabled,F,i.id,l.boundsBuffer,e.quadTriangleIndexBuffer,l.boundsSegments);else if(e.globeSharedBuffers){const[t,r,n]=e.globeSharedBuffers.getGridBuffers(0,!1);U.draw(e,a.TRIANGLES,d,Sx.disabled,f,Dx.frontCCW,F,i.id,t,r,n),U.draw(e,a.TRIANGLES,d,Sx.disabled,f,Dx.backCCW,F,i.id,t,r,n);}}else {const{tileBoundsBuffer:t,tileBoundsIndexBuffer:r,tileBoundsSegments:n}=e.getTileBoundsBuffers(h);U.draw(e,a.TRIANGLES,d,T,f,Dx.disabled,F,i.id,t,r,n);}}e.resetStencilClippingMasks();},background:function(e,t,i,r){const n=i.paint.get(\"background-color\"),o=i.paint.get(\"background-opacity\"),s=i.paint.get(\"background-emissive-strength\");if(0===o)return;const a=e.context,l=a.gl,c=e.transform,h=c.tileSize,u=i.paint.get(\"background-pattern\");if(e.isPatternMissing(u,i.scope))return;const d=!u&&1===n.a&&1===o&&e.opaquePassEnabledForLayer()?\"opaque\":\"translucent\";if(e.renderPass!==d)return;const p=Sx.disabled,f=e.depthModeForSublayer(0,\"opaque\"===d?Mx.ReadWrite:Mx.ReadOnly),m=e.colorModeForDrapableLayerRenderPass(s),_=u?\"backgroundPattern\":\"background\";let g,y=r;y||(g=e.getBackgroundTiles(),y=Object.values(g).map((e=>e.tileID))),u&&(a.activeTexture.set(l.TEXTURE0),e.imageManager.bind(e.context,i.scope));for(const d of y){const y=e.isTileAffectedByFog(d),x=e.getOrCreateProgram(_,{overrideFog:y}),v=d.toUnwrapped(),b=r?d.projMatrix:e.transform.calculateProjMatrix(v);e.prepareDrawTile();const w=t?t.getTile(d):g?g[d.key]:new Oy(d,h,c.zoom,e),T=u?FM(b,s,o,e,u,i.scope,{tileID:d,tileSize:h}):BM(b,s,o,n);e.uploadCommonUniforms(a,x,v);const{tileBoundsBuffer:E,tileBoundsIndexBuffer:M,tileBoundsSegments:A}=e.getTileBoundsBuffers(w);x.draw(e,l.TRIANGLES,f,p,m,Dx.disabled,T,i.id,E,M,A);}},sky:function(e,t,i){const r=e._atmosphere?Dd(e.transform.zoom):1,n=i.paint.get(\"sky-opacity\")*r;if(0===n)return;const o=e.context,s=i.paint.get(\"sky-type\"),a=new Mx(o.gl.LEQUAL,Mx.ReadOnly,[0,1]),l=e.frameCounter/1e3%1;\"atmosphere\"===s?\"offscreen\"===e.renderPass?i.needsSkyboxCapture(e)&&(function(e,t,i,r){const n=e.context,o=n.gl;let s=t.skyboxFbo;if(!s){s=t.skyboxFbo=n.createFramebuffer(32,32,!0,null),t.skyboxGeometry=new xA(n),t.skyboxTexture=n.gl.createTexture(),o.bindTexture(o.TEXTURE_CUBE_MAP,t.skyboxTexture),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_MIN_FILTER,o.LINEAR),o.texParameteri(o.TEXTURE_CUBE_MAP,o.TEXTURE_MAG_FILTER,o.LINEAR);for(let e=0;e<6;++e)o.texImage2D(o.TEXTURE_CUBE_MAP_POSITIVE_X+e,0,o.RGBA,32,32,0,o.RGBA,o.UNSIGNED_BYTE,null);}n.bindFramebuffer.set(s.framebuffer),n.viewport.set([0,0,32,32]);const a=t.getCenter(e,!0),l=e.getOrCreateProgram(\"skyboxCapture\"),c=new Float64Array(16);Au.identity(c),Au.rotateY(c,c,.5*-Math.PI),vA(e,t,l,c,a,0),Au.identity(c),Au.rotateY(c,c,.5*Math.PI),vA(e,t,l,c,a,1),Au.identity(c),Au.rotateX(c,c,.5*-Math.PI),vA(e,t,l,c,a,2),Au.identity(c),Au.rotateX(c,c,.5*Math.PI),vA(e,t,l,c,a,3),Au.identity(c),vA(e,t,l,c,a,4),Au.identity(c),Au.rotateY(c,c,Math.PI),vA(e,t,l,c,a,5),n.viewport.set([0,0,e.width,e.height]);}(e,i),i.markSkyboxValid(e)):\"sky\"===e.renderPass&&function(e,t,i,r,n){const o=e.context,s=o.gl,a=e.transform,l=e.getOrCreateProgram(\"skybox\");o.activeTexture.set(s.TEXTURE0),s.bindTexture(s.TEXTURE_CUBE_MAP,t.skyboxTexture);const c=((e,t,i,r,n)=>({u_matrix:e,u_sun_direction:t,u_cubemap:0,u_opacity:r,u_temporal_offset:n}))(a.skyboxMatrix,t.getCenter(e,!1),0,r,n);e.uploadCommonUniforms(o,l),l.draw(e,s.TRIANGLES,i,Sx.disabled,e.colorModeForRenderPass(),Dx.backCW,c,\"skybox\",t.skyboxGeometry.vertexBuffer,t.skyboxGeometry.indexBuffer,t.skyboxGeometry.segment);}(e,i,a,n,l):\"gradient\"===s&&\"sky\"===e.renderPass&&function(e,t,i,r,n){const o=e.context,s=o.gl,a=e.transform,l=e.getOrCreateProgram(\"skyboxGradient\");t.skyboxGeometry||(t.skyboxGeometry=new xA(o)),o.activeTexture.set(s.TEXTURE0);let c=t.colorRampTexture;c||(c=t.colorRampTexture=new My(o,t.colorRamp,s.RGBA)),c.bind(s.LINEAR,s.CLAMP_TO_EDGE);const h=((e,t,i,r,n)=>({u_matrix:e,u_color_ramp:0,u_center_direction:t,u_radius:w(i),u_opacity:r,u_temporal_offset:n}))(a.skyboxMatrix,t.getCenter(e,!1),t.paint.get(\"sky-gradient-radius\"),r,n);e.uploadCommonUniforms(o,l),l.draw(e,s.TRIANGLES,i,Sx.disabled,e.colorModeForRenderPass(),Dx.backCW,h,\"skyboxGradient\",t.skyboxGeometry.vertexBuffer,t.skyboxGeometry.indexBuffer,t.skyboxGeometry.segment);}(e,i,a,n,l);},debug:function(e,t,i){for(let r=0;r{s&&(s.useNormalOffset=!0,a||(s.enabled=!0));},c=t.getSource();if(\"light-beam\"===e.renderPass&&\"batched-model\"!==c.type)return;if(\"vector\"===c.type||\"geojson\"===c.type)return function(e,t,i,r){const n=e.transform;if(\"mercator\"!==n.projection.name)return void H(`Drawing 3D models for ${n.projection.name} projection is not yet implemented`);const o=n.getFreeCameraOptions().position;if(!e.modelManager)return;const s=e.modelManager,a=e.shadowRenderer;if(!i._unevaluatedLayout._values.hasOwnProperty(\"model-id\"))return;const l=i._unevaluatedLayout._values[\"model-id\"],c={...i.layout.get(\"model-id\").parameters};for(const h of r){const r=t.getTile(h).getBucket(i);if(!r||r.projection.name!==n.projection.name)continue;const u=DA(h,n);c.zoom=u;const d=l.possiblyEvaluate(c);if(zA(e,r,h),PA.shadowUniformsInitialized=!1,PA.useSingleShadowCascade=!!a&&0===a.getMaxCascadeForTile(h.toUnwrapped()),\"shadow\"===e.renderPass&&a){if(1===e.currentShadowCascade&&r.isInsideFirstShadowMapFrustum)continue;const t=n.calculatePosMatrix(h.toUnwrapped(),n.worldSize);if(PA.tileMatrix.set(t),PA.shadowTileMatrix=Float32Array.from(a.calculateShadowPassMatrixFromMatrix(t)),PA.aabb.min.fill(0),PA.aabb.max[0]=PA.aabb.max[1]=cr,PA.aabb.max[2]=0,kA(r,PA,e,i.scope))continue}const p=1<0&&(t=d.evaluate(n.features[0].feature,{}));const o=s.getModel(t,i.scope);if(o&&o.uploaded)for(const t of o.nodes)RA(e,i,t,n,f,h,PA);}}}(e,t,i,r),void l();if(!c.loaded())return;if(\"batched-model\"===c.type)return function(e,t,i,r){const n=e.context,o=e.transform,s=e.style.fog,a=e.shadowRenderer;if(\"mercator\"!==o.projection.name)return void H(`Drawing 3D landmark models for ${o.projection.name} projection is not yet implemented`);const l=e.transform.getFreeCameraOptions().position,c=Du.scale([],[l.x,l.y,l.z],e.transform.worldSize);Du.negate(c,c);const h=Au.identity([]),u=op(o.center.lat,o.zoom),d=Au.fromScaling([],[1,1,1/u]);Au.translate(h,h,c);const p=i.paint.get(\"model-opacity\"),f=new Mx(n.gl.LEQUAL,Mx.ReadWrite,e.depthRangeFor3D),m=new Mx(n.gl.LEQUAL,Mx.ReadOnly,e.depthRangeFor3D),_=function(l,c){for(const u of r){const r=t.getTile(u).getBucket(i);if(!r||!r.uploaded)continue;let _=!1;a&&(_=0===a.getMaxCascadeForTile(u.toUnwrapped()));const g=o.calculatePosMatrix(u.toUnwrapped(),o.worldSize),y=r.modelTraits;for(const t of r.getNodesInfo()){if(t.hiddenByReplacement)continue;if(!t.node.meshes)continue;const r=t.node,x=\"light-beam\"===e.renderPass,v=[...g],b=t.evaluatedScale;let w=0;e.terrain&&r.elevation&&(w=r.elevation*e.terrain.exaggeration()),Au.translate(v,v,[(r.anchor?r.anchor[0]:0)*(b[0]-1),(r.anchor?r.anchor[1]:0)*(b[1]-1),w]),b!==Iv&&Au.scale(v,v,b),Au.multiply(v,v,r.matrix);const T=Au.multiply([],d,v);Au.multiply(T,h,T);const E=Au.invert([],T);Au.transpose(E,E),Au.scale(E,E,LA);const M=Au.multiply([],o.expandedFarZProjMatrix,v);for(let h=0;h=fw||n>=fw;}}const I=e.getOrCreateProgram(\"model\",b);!A&&a&&(a.useNormalOffset=!!d.normalBuffer,a.setupShadowsFromMatrix(v,I,a.useNormalOffset)),e.uploadCommonUniforms(n,I,u.toUnwrapped(),S);const C=d.material,z=C.pbrMetallicRoughness;z.metallicFactor=.9,z.roughnessFactor=.5;const P=0,D=UM(new Float32Array(M),new Float32Array(T),new Float32Array(E),e,p,z.baseColorFactor,C.emissiveFactor,z.metallicFactor,z.roughnessFactor,C,P,i);I.draw(e,n.gl.TRIANGLES,c&&!g?f:m,Sx.disabled,l?g||p<1||t.hasTranslucentParts?Cx.alphaBlended:Cx.unblended:Cx.disabled,Dx.backCCW,D,i.id,d.vertexBuffer,d.indexBuffer,d.segments,i.paint,e.transform.zoom,void 0,w);}}}};((function(e,t,i,r){const n=e.terrain?e.terrain.exaggeration():0,o=e.transform.zoom;for(const s of r){const r=t.getTile(s).getBucket(i);r&&(e.conflationActive&&r.updateReplacement(s,e.replacementSource),r.evaluateScale(e,i),e.terrain&&n>0&&r.elevationUpdate(e.terrain,n,s,i.source),r.needsReEvaluation(e,o,i)&&r.evaluate(i));}}))(e,t,i,r),1===p?_(!0,!0):(_(!1,!0),_(!0,!1));}(e,t,i,r),void l();const h=c.getModels(),u=[],d=e.transform.getFreeCameraOptions().position,p=Du.scale([],[d.x,d.y,d.z],e.transform.worldSize);Du.negate(p,p);const f=[],m=[];let _=0;for(const t of h){const r=i.paint.get(\"model-rotation\").constantOr(null),n=i.paint.get(\"model-scale\").constantOr(null),o=i.paint.get(\"model-translation\").constantOr(null);t.computeModelMatrix(e,r,n,o,!0,!0,!1);const s=Au.identity([]),a=op(t.position.lat,e.transform.zoom),l=Au.fromScaling([],[1,1,1/a]);Au.translate(s,s,p),u.push({zScaleMatrix:l,negCameraPosMatrix:s});for(const i of t.nodes)IA(e.transform,i,t.matrix,e.transform.expandedFarZProjMatrix,_,f,m);_++;}if(f.sort(((e,t)=>t.depth-e.depth)),\"shadow\"!==e.renderPass){if(1===n)for(const t of m)SA(t,e,i,u[t.modelIndex],Sx.disabled,e.colorModeForRenderPass());else {for(const t of m)SA(t,e,i,u[t.modelIndex],Sx.disabled,Cx.disabled);for(const t of m)SA(t,e,i,u[t.modelIndex],e.stencilModeFor3D(),e.colorModeForRenderPass());e.resetStencilClippingMasks();}for(const t of f)SA(t,e,i,u[t.modelIndex],Sx.disabled,e.colorModeForRenderPass());l();}else {for(const t of m)CA(t.mesh,t.nodeModelMatrix,e,i);for(const t of f)CA(t.mesh,t.nodeModelMatrix,e,i);l();}}},NA={modelUpload:function(e,t,i){const r=t.getSource();if(!r.loaded())return;if(\"vector\"===r.type||\"geojson\"===r.type)return void(e.modelManager&&e.modelManager.upload(e,i));if(\"batched-model\"===r.type)return;const n=r.getModels();for(const t of n)t.upload(e.context);}};class UA{constructor(e,t,i){this.context=new Rx(e,t),this.transform=i,this._tileTextures={},this.frameCopies=[],this.loadTimeStamps=[],this.setup(),this.numSublayers=Lx.maxUnderzooming+Lx.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.deferredRenderGpuTimeQueries=[],this.gpuTimers={},this.frameCounter=0,this._backgroundTiles={},this.conflationActive=!1,this.replacementSource=new Xv,this.longestCutoffRange=0,this.minCutoffZoom=0,this._fogVisible=!1,this._cachedTileFogOpacities={},this._shadowRenderer=new qA(this),this._wireframeDebugCache=new BA,this.renderDefaultNorthPole=!0,this.renderDefaultSouthPole=!0;}updateTerrain(e,t){const i=!!e&&!!e.terrain&&this.transform.projection.supportsTerrain;if(!(i||this._terrain&&this._terrain.enabled))return;this._terrain||(this._terrain=new uM(this,e));const r=this._terrain;this.transform.elevation=i?r:null,r.update(e,this.transform,t),this.transform.elevation&&!r.enabled&&(this.transform.elevation=null);}_updateFog(e){const t=e.fog;if(!t||\"globe\"===this.transform.projection.name||t.getOpacity(this.transform.pitch)<1||t.properties.get(\"horizon-blend\")<.03)return void(this.transform.fogCullDistSq=null);const[i,r]=t.getFovAdjustedRange(this.transform._fov);if(i>r)return void(this.transform.fogCullDistSq=null);const n=i+.78*(r-i);this.transform.fogCullDistSq=n*n;}get terrain(){return this.transform._terrainEnabled()&&this._terrain&&this._terrain.enabled?this._terrain:null}get shadowRenderer(){return this._shadowRenderer&&this._shadowRenderer.enabled?this._shadowRenderer:null}get wireframeDebugCache(){return this._wireframeDebugCache}resize(e,t){if(this.width=e*dt.devicePixelRatio,this.height=t*dt.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(const e of this.style.order)this.style._mergedLayers[e].resize();}setup(){const e=this.context,i=new za;i.emplaceBack(0,0),i.emplaceBack(cr,0),i.emplaceBack(0,cr),i.emplaceBack(cr,cr),this.tileExtentBuffer=e.createVertexBuffer(i,Nu.members),this.tileExtentSegments=xl.simpleSegment(0,0,4,2);const r=new za;r.emplaceBack(0,0),r.emplaceBack(cr,0),r.emplaceBack(0,cr),r.emplaceBack(cr,cr),this.debugBuffer=e.createVertexBuffer(r,Nu.members),this.debugSegments=xl.simpleSegment(0,0,4,5);const n=new za;n.emplaceBack(-1,-1),n.emplaceBack(1,-1),n.emplaceBack(-1,1),n.emplaceBack(1,1),this.viewportBuffer=e.createVertexBuffer(n,Nu.members),this.viewportSegments=xl.simpleSegment(0,0,4,2);const o=new Da;o.emplaceBack(0,0,0,0),o.emplaceBack(cr,0,cr,0),o.emplaceBack(0,cr,0,cr),o.emplaceBack(cr,cr,cr,cr),this.mercatorBoundsBuffer=e.createVertexBuffer(o,Ly.members),this.mercatorBoundsSegments=xl.simpleSegment(0,0,4,2);const s=new Wa;s.emplaceBack(0,1,2),s.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=e.createIndexBuffer(s);const a=new el;for(const e of [0,1,3,2,0])a.emplaceBack(e);this.debugIndexBuffer=e.createIndexBuffer(a),this.emptyTexture=new My(e,new ef({width:1,height:1},Uint8Array.of(0,0,0,0)),e.gl.RGBA),this.identityMat=Au.create();const l=this.context.gl;this.stencilClearMode=new Sx({func:l.ALWAYS,mask:0},0,255,l.ZERO,l.ZERO,l.ZERO),this.loadTimeStamps.push(t.performance.now());}getMercatorTileBoundsBuffers(){return {tileBoundsBuffer:this.mercatorBoundsBuffer,tileBoundsIndexBuffer:this.quadTriangleIndexBuffer,tileBoundsSegments:this.mercatorBoundsSegments}}getTileBoundsBuffers(e){return e._makeTileBoundsBuffers(this.context,this.transform.projection),e._tileBoundsBuffer?{tileBoundsBuffer:e._tileBoundsBuffer,tileBoundsIndexBuffer:e._tileBoundsIndexBuffer,tileBoundsSegments:e._tileBoundsSegments}:this.getMercatorTileBoundsBuffers()}clearStencil(){const e=this.context.gl;this.nextStencilID=1,this.currentStencilSource=void 0,this._tileClippingMaskIDs={},this.getOrCreateProgram(\"clippingMask\").draw(this,e.TRIANGLES,Mx.disabled,this.stencilClearMode,Cx.disabled,Dx.disabled,sM(this.identityMat),\"$clipping\",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments);}resetStencilClippingMasks(){this.terrain||(this.currentStencilSource=void 0,this._tileClippingMaskIDs={});}_renderTileClippingMasks(e,t,i){if(!t||this.currentStencilSource===t.id||!e.isTileClipped()||!i||0===i.length)return;if(this._tileClippingMaskIDs&&!this.terrain){let e=!1;for(const t of i)if(void 0===this._tileClippingMaskIDs[t.key]){e=!0;break}if(!e)return}this.currentStencilSource=t.id;const r=this.context,n=r.gl;this.nextStencilID+i.length>256&&this.clearStencil(),r.setColorMode(Cx.disabled),r.setDepthMode(Mx.disabled);const o=this.getOrCreateProgram(\"clippingMask\");this._tileClippingMaskIDs={};for(const e of i){const i=t.getTile(e),r=this._tileClippingMaskIDs[e.key]=this.nextStencilID++,{tileBoundsBuffer:s,tileBoundsIndexBuffer:a,tileBoundsSegments:l}=this.getTileBoundsBuffers(i);o.draw(this,n.TRIANGLES,Mx.disabled,new Sx({func:n.ALWAYS,mask:0},r,255,n.KEEP,n.KEEP,n.REPLACE),Cx.disabled,Dx.disabled,sM(e.projMatrix),\"$clipping\",s,a,l);}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const e=this.nextStencilID++,t=this.context.gl;return new Sx({func:t.NOTEQUAL,mask:255},e,255,t.KEEP,t.KEEP,t.REPLACE)}stencilModeForClipping(e){if(this.terrain)return this.terrain.stencilModeForRTTOverlap(e);const t=this.context.gl;return new Sx({func:t.EQUAL,mask:255},this._tileClippingMaskIDs[e.key],0,t.KEEP,t.KEEP,t.REPLACE)}stencilConfigForOverlap(e){const t=this.context.gl,i=e.sort(((e,t)=>t.overscaledZ-e.overscaledZ)),r=i[i.length-1].overscaledZ,n=i[0].overscaledZ-r+1;if(n>1){this.currentStencilSource=void 0,this.nextStencilID+n>256&&this.clearStencil();const e={};for(let i=0;ithis.style&&this.style.enable3dLights()&&this.terrain&&this.terrain.renderingToTexture)()&&\"translucent\"===this.renderPass?new Cx([t.ONE,t.ONE_MINUS_SRC_ALPHA,t.CONSTANT_ALPHA,t.ONE_MINUS_SRC_ALPHA],new hi(0,0,0,void 0===e?0:e),[!0,!0,!0,!0]):this.colorModeForRenderPass()}depthModeForSublayer(e,t,i,r=!1){if(!this.opaquePassEnabledForLayer()&&!r)return Mx.disabled;const n=1-((1+this.currentLayer)*this.numSublayers+e)*this.depthEpsilon;return new Mx(i||this.context.gl.LEQUAL,t,[n,n])}opaquePassEnabledForLayer(){return this.currentLayerr[e])),s=this.style._mergedSourceCaches;this.imageManager=e.imageManager,this.modelManager=e.modelManager,this.symbolFadeChange=e.placement.symbolFadeChange(dt.now()),this.imageManager.beginFrame();let a=0,l=!1;for(const e in s){const t=s[e];t.used&&(t.prepare(this.context),t.getSource().usedInConflation&&++a);}const c={},h={},u={},d={},p={};for(const e in s){const t=s[e];c[e]=t.getVisibleCoordinates(),h[e]=c[e].slice().reverse(),u[e]=t.getVisibleCoordinates(!0).reverse(),d[e]=t.getShadowCasterCoordinates(),p[e]=t.sortCoordinatesByDistance(c[e]);}const f=e=>{const t=this.style.getLayerSourceCache(e);return t&&t.used?t.getSource():null};if(a){const e=[];for(const t of o)this.layerUsedInConflation(t,f(t))&&e.push(t);if(e&&e.length>1){const t=[];for(const i of e){const e=this.style.getLayerSourceCache(i);e&&e.used&&e.getSource().usedInConflation&&t.push({layer:i.fqid,cache:e});}this.replacementSource.setSources(t),l=!0;}}l||this.replacementSource.clear(),this.conflationActive=l,this.minCutoffZoom=0,this.longestCutoffRange=0;for(const e of o){const t=e.cutoffRange();if(this.longestCutoffRange=Math.max(t,this.longestCutoffRange),t>0){const t=f(e);t&&(this.minCutoffZoom=Math.max(t.minzoom,this.minCutoffZoom)),e.minzoom&&(this.minCutoffZoom=Math.max(e.minzoom,this.minCutoffZoom));}}this.opaquePassCutoff=1/0;for(let e=0;e{if(i.showOverdrawInspector)return hi.black;if(this.style.fog&&this.transform.projection.supportsFog&&!y){const e=this.style.fog.properties.get(\"color\").toArray01();return new hi(...e)}if(this.style.fog&&this.transform.projection.supportsFog&&y){const e=this.style.fog.properties.get(\"space-color\").toArray01();return new hi(...e)}return hi.transparent})();if(this.context.clear({color:x,depth:1}),this.clearStencil(),this._showOverdrawInspector=i.showOverdrawInspector,this.renderPass=\"opaque\",this.style.fog&&this.transform.projection.supportsFog&&this._atmosphere&&!this._showOverdrawInspector&&y&&this._atmosphere.drawStars(this,this.style.fog),!this.terrain)for(this.currentLayer=n.length-1;this.currentLayer>=0;this.currentLayer--){const t=o[this.currentLayer],i=e.getLayerSourceCache(t);if(t.isSky())continue;const r=i?(t.is3D()?p:h)[i.id]:void 0;this._renderTileClippingMasks(t,i,r),this.renderLayer(this,i,t,r);}if(this.style.fog&&this.transform.projection.supportsFog&&this._atmosphere&&!this._showOverdrawInspector&&y&&this._atmosphere.drawAtmosphereGlow(this,this.style.fog),this.renderPass=\"sky\",(!this._atmosphere||Dd(this.transform.zoom)>0)&&(\"globe\"===this.transform.projection.name||this.transform.isHorizonVisible()))for(this.currentLayer=0;this.currentLayer0&&t.hasShadowPass()&&0==--v&&(_.drawGroundShadows(),this.firstLightBeamLayer<=this.currentLayer)){const t=this.currentLayer;for(this.renderPass=\"light-beam\",this.currentLayer=this.firstLightBeamLayer;this.currentLayer<=t;this.currentLayer++){const t=o[this.currentLayer];if(!t.hasLightBeamPass())continue;const i=e.getLayerSourceCache(t);this.renderLayer(this,i,t,i?h[i.id]:void 0);}this.currentLayer=t,this.renderPass=\"translucent\";}++this.currentLayer;}if(this.terrain&&this.terrain.postRender(),this.options.showTileBoundaries||this.options.showQueryGeometry||this.options.showTileAABBs){let t=null;o.forEach((i=>{const r=e.getLayerSourceCache(i);r&&!i.isHidden(this.transform.zoom)&&r.getVisibleCoordinates().length&&(!t||t.getSource().maxzoom0?t.pop():null}isPatternMissing(e,t){return null===e||void 0!==e&&!this.imageManager.getPattern(e.toString(),t)}terrainRenderModeElevated(){return this.style&&!!this.style.getTerrain()&&!!this.terrain&&!this.terrain.renderingToTexture}linearFloatFilteringSupported(){return null!=this.context.extTextureFloatLinear}currentGlobalDefines(e,t,i){const r=void 0===i?this.terrain&&this.terrain.renderingToTexture:i,n=this.terrain&&0===this.terrain.exaggeration(),o=[];return this.style&&this.style.enable3dLights()&&(\"globeRaster\"===e||\"terrainRaster\"===e?(o.push(\"LIGHTING_3D_MODE\"),o.push(\"LIGHTING_3D_ALPHA_EMISSIVENESS\")):r||o.push(\"LIGHTING_3D_MODE\")),\"shadow\"===this.renderPass?this._shadowMapDebug||o.push(\"DEPTH_TEXTURE\"):this.shadowRenderer&&(this.shadowRenderer.useNormalOffset?o.push(\"RENDER_SHADOWS\",\"DEPTH_TEXTURE\",\"NORMAL_OFFSET\"):o.push(\"RENDER_SHADOWS\",\"DEPTH_TEXTURE\")),this.terrainRenderModeElevated()&&(o.push(\"TERRAIN\"),this.linearFloatFilteringSupported()&&o.push(\"TERRAIN_DEM_FLOAT_FORMAT\"),n&&o.push(\"ZERO_EXAGGERATION\")),\"globe\"===this.transform.projection.name&&o.push(\"GLOBE\"),!this._fogVisible||r||void 0!==t&&!t||o.push(\"FOG\",\"FOG_DITHERING\"),r&&o.push(\"RENDER_TO_TEXTURE\"),this._showOverdrawInspector&&o.push(\"OVERDRAW_INSPECTOR\"),o}getOrCreateProgram(e,t){this.cache=this.cache||{};const i=t&&t.defines||[],r=t&&t.config,n=this.currentGlobalDefines(e,t&&t.overrideFog,t&&t.overrideRtt).concat(i),o=mM.cacheKey(GE[e],e,n,r);return this.cache[o]||(this.cache[o]=new mM(this.context,e,GE[e],r,GM[e],n)),this.cache[o]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.frontFace.setDefault(),this.context.cullFaceSide.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault();}setBaseState(){const e=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(e.FUNC_ADD);}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=t.document.createElement(\"canvas\"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new My(this.context,this.debugOverlayCanvas,this.context.gl.RGBA));}destroy(){this._terrain&&this._terrain.destroy(),this._atmosphere&&(this._atmosphere.destroy(),this._atmosphere=void 0),this.globeSharedBuffers&&this.globeSharedBuffers.destroy(),this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy(),this._wireframeDebugCache.destroy();}prepareDrawTile(){this.terrain&&this.terrain.prepareDrawTile();}uploadCommonLightUniforms(e,t){if(this.style.enable3dLights()){const i=this.style.directionalLight,r=this.style.ambientLight;if(i&&r){const n=((e,t)=>{const i=e.properties.get(\"direction\"),r=e.properties.get(\"color\").toArray01(),n=e.properties.get(\"intensity\"),o=t.properties.get(\"color\").toArray01(),s=t.properties.get(\"intensity\"),a=[i.x,i.y,i.z],l=se(o,s),c=se(r,n);return {u_lighting_ambient_color:l,u_lighting_directional_dir:a,u_lighting_directional_color:c,u_ground_radiance:dM(a,c,l)}})(i,r);t.setLightsUniformValues(e,n);}}}uploadCommonUniforms(e,t,i,r,n){if(this.uploadCommonLightUniforms(e,t),this.terrain&&this.terrain.renderingToTexture)return;const o=this.style.fog;if(o){const n=o.getOpacity(this.transform.pitch),s=((e,t,i,r,n,o,s,a,l,c,h,u)=>{const d=e.transform,p=t.properties.get(\"color\").toArray01();p[3]=r;const f=e.frameCounter/1e3%1,[m,_]=t.properties.get(\"vertical-range\");return {u_fog_matrix:i?d.calculateFogTileMatrix(i):u||e.identityMat,u_fog_range:t.getFovAdjustedRange(d._fov),u_fog_color:p,u_fog_horizon_blend:t.properties.get(\"horizon-blend\"),u_fog_vertical_limit:[Math.min(m,_),_],u_fog_temporal_offset:f,u_frustum_tl:n,u_frustum_tr:o,u_frustum_br:s,u_frustum_bl:a,u_globe_pos:l,u_globe_radius:c,u_viewport:h,u_globe_transition:Dd(d.zoom),u_is_globe:+(\"globe\"===d.projection.name)}})(this,o,i,n,this.transform.frustumCorners.TL,this.transform.frustumCorners.TR,this.transform.frustumCorners.BR,this.transform.frustumCorners.BL,this.transform.globeCenterInViewSpace,this.transform.globeRadius,[this.transform.width*dt.devicePixelRatio,this.transform.height*dt.devicePixelRatio],r);t.setFogUniformValues(e,s);}n&&t.setCutoffUniformValues(e,n.uniformValues);}setTileLoadedFlag(e){this.tileLoaded=e;}saveCanvasCopy(){const e=this.canvasCopy();e&&(this.frameCopies.push(e),this.tileLoaded=!1);}canvasCopy(){const e=this.context.gl,t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.copyTexImage2D(e.TEXTURE_2D,0,e.RGBA,0,0,e.drawingBufferWidth,e.drawingBufferHeight,0),t}getCanvasCopiesAndTimestamps(){return {canvasCopies:this.frameCopies,timeStamps:this.loadTimeStamps}}averageElevationNeedsEasing(){if(!this.transform._elevation)return !1;const e=this.style&&this.style.fog;return !!e&&0!==e.getOpacity(this.transform.pitch)}getBackgroundTiles(){const e=this._backgroundTiles,t=this._backgroundTiles={},i=this.transform.coveringTiles({tileSize:512});for(const r of i)t[r.key]=e[r.key]||new Oy(r,512,this.transform.tileZoom,this);return t}clearBackgroundTiles(){this._backgroundTiles={};}layerUsedInConflation(e,t){return !(!e.is3D()||e.minzoom&&e.minzoom>this.transform.zoom||\"building\"!==e.sourceLayer&&(!t||\"batched-model\"!==t.type))}isTileAffectedByFog(e){if(!this.style||!this.style.fog)return !1;if(\"globe\"===this.transform.projection.name)return !0;let t=this._cachedTileFogOpacities[e.key];return t||(this._cachedTileFogOpacities[e.key]=t=this.style.fog.getOpacityForTile(e)),t[0]>=fw||t[1]>=fw}}const VA=2048;class jA{constructor(e,t){this.aabb=e,this.lastCascade=t;}}class GA{add(e,t){const i=this.receivers[e.key];void 0!==i?(i.aabb.min[0]=Math.min(i.aabb.min[0],t.min[0]),i.aabb.min[1]=Math.min(i.aabb.min[1],t.min[1]),i.aabb.min[2]=Math.min(i.aabb.min[2],t.min[2]),i.aabb.max[0]=Math.max(i.aabb.max[0],t.max[0]),i.aabb.max[1]=Math.max(i.aabb.max[1],t.max[1]),i.aabb.max[2]=Math.max(i.aabb.max[2],t.max[2])):this.receivers[e.key]=new jA(t,null);}clear(){this.receivers={};}get(e){return this.receivers[e.key]}computeRequiredCascades(e,t,i){const r=ed.fromPoints(e.points);let n=0;for(const e in this.receivers){const o=this.receivers[e];if(!o)continue;if(!r.intersectsAabb(o.aabb))continue;o.aabb.min=r.closestPoint(o.aabb.min),o.aabb.max=r.closestPoint(o.aabb.max);const s=o.aabb.getCorners();for(let e=0;e1||o[1]<-1||o[1]>1){r=!1;break}}if(o.lastCascade=e,n=Math.max(n,e),r)break}}return n+1}}class qA{constructor(e){this.painter=e,this._enabled=!1,this._shadowLayerCount=0,this._numCascadesToRender=0,this._cascades=[],this._groundShadowTiles=[],this._receivers=new GA,this._depthMode=new Mx(e.context.gl.LEQUAL,Mx.ReadWrite,[0,1]),this._uniformValues={u_light_matrix_0:new Float32Array(16),u_light_matrix_1:new Float32Array(16),u_shadow_intensity:0,u_fade_range:[0,0],u_shadow_normal_offset:[1,1,1],u_shadow_texel_size:1,u_shadow_map_resolution:1,u_shadow_direction:[0,0,1],u_shadow_bias:[36e-5,.0012,.012],u_shadowmap_0:0,u_shadowmap_1:0},this.useNormalOffset=!1;}destroy(){for(const e of this._cascades)e.texture.destroy(),e.framebuffer.destroy();this._cascades=[];}updateShadowParameters(e,t){const i=this.painter;if(this._enabled=!1,this._shadowLayerCount=0,this._receivers.clear(),!t||!t.properties)return;const r=t.properties.get(\"shadow-intensity\");if(!t.shadowsEnabled()||r<=0)return;if(this._shadowLayerCount=i.style.order.reduce(((t,r)=>{const n=i.style._mergedLayers[r];return t+(n.hasShadowPass()&&!n.isHidden(e.zoom)?1:0)}),0),this._enabled=this._shadowLayerCount>0,!this._enabled)return;const n=i.context,o=VA,s=VA;if(0===this._cascades.length)for(let e=0;e<2;++e){const e=i._shadowMapDebug,t=n.gl,r=n.createFramebuffer(o,s,e,\"texture\"),a=new My(n,{width:o,height:s,data:null},t.DEPTH_COMPONENT);if(r.depthAttachment.set(a.texture),e){const e=new My(n,{width:o,height:s,data:null},t.RGBA);r.colorAttachment.set(e.texture);}this._cascades.push({framebuffer:r,texture:a,matrix:[],far:0,boundingSphereRadius:0,frustum:new Qu,scale:0});}this.shadowDirection=$A(t);let a=0;if(e.elevation){const t=e.elevation,i=[1e4,-1e4];t.visibleDemTiles.filter((e=>e.dem)).forEach((e=>{const t=e.dem.tree;i[0]=Math.min(i[0],t.minimums[0]),i[1]=Math.max(i[1],t.maximums[0]);})),1e4!==i[0]&&(a=(i[1]-i[0])*t.exaggeration());}const l=1.5*e.cameraToCenterDistance,c=3*l,h=new Float64Array(16);for(let t=0;t<2;++t){const i=this._cascades[t];let r=e.height/50,n=1;0===t?n=l:(r=l,n=c);const[o,s]=HA(e,this.shadowDirection,r,n,VA,a);i.scale=e.scale,i.matrix=o,i.boundingSphereRadius=s,Au.invert(h,i.matrix),i.frustum=Qu.fromInvProjectionMatrix(h,1,0,!0),i.far=n;}this._uniformValues.u_fade_range=[.75*this._cascades[1].far,this._cascades[1].far],this._uniformValues.u_shadow_intensity=r,this._uniformValues.u_shadow_direction=[this.shadowDirection[0],this.shadowDirection[1],this.shadowDirection[2]],this._uniformValues.u_shadow_texel_size=.00048828125,this._uniformValues.u_shadow_map_resolution=VA,this._uniformValues.u_shadowmap_0=NM.ShadowMap0,this._uniformValues.u_shadowmap_1=NM.ShadowMap0+1,this._groundShadowTiles=i.transform.coveringTiles({tileSize:512,renderWorldCopies:!0});const u=i.transform.elevation;for(const e of this._groundShadowTiles){let t={min:0,max:0};if(u){const i=u.getMinMaxForTile(e);i&&(t=i);}this.addShadowReceiver(e.toUnwrapped(),t.min,t.max);}}get enabled(){return this._enabled}set enabled(e){this._enabled=e;}drawShadowPass(e,t){if(!this._enabled)return;const i=this.painter,r=i.context;this._numCascadesToRender=this._receivers.computeRequiredCascades(i.transform.getFrustum(0),i.transform.worldSize,this._cascades),r.viewport.set([0,0,VA,VA]);for(let n=0;n=0)return {};const n=function(e,t,i){const r=i/(1<0&&(Du.add(n[1],n[1],[r[0]*o,0,0]),Du.add(n[2],n[2],[r[0]*o,0,0])),r[1]<0?(Du.add(n[0],n[0],[0,r[1]*o,0]),Du.add(n[1],n[1],[0,r[1]*o,0])):r[1]>0&&(Du.add(n[2],n[2],[0,r[1]*o,0]),Du.add(n[3],n[3],[0,r[1]*o,0]));const s={};return s.vertices=n,s.planes=[ZA(n[1],n[0],n[4]),ZA(n[2],n[1],n[5]),ZA(n[3],n[2],n[6]),ZA(n[0],n[3],n[7])],s}addShadowReceiver(e,t,i){this._receivers.add(e,ed.fromTileIdAndHeight(e,t,i));}getMaxCascadeForTile(e){const t=this._receivers.get(e);return t&&t.lastCascade?t.lastCascade:0}}function ZA(e,t,i){const r=Du.sub([],i,t),n=Du.sub([],e,t),o=Du.cross([],r,n),s=Du.length(o);return 0===s?[0,0,1,0]:(Du.scale(o,o,1/s),[o[0],o[1],o[2],-Du.dot(o,t)])}function $A(e){const t=e.properties.get(\"direction\"),i=J(t.x,t.y,t.z);i[2]=z(i[2],0,75);const r=K([i[0],i[1],i[2]]);return Du.fromValues(r.x,r.y,r.z)}function WA(e,t){const i=e.properties.get(\"color\"),r=e.properties.get(\"intensity\"),n=e.properties.get(\"direction\"),o=[n.x,n.y,n.z],s=t.properties.get(\"color\"),a=t.properties.get(\"intensity\"),l=Math.max(Du.dot([0,0,1],o),0),c=[0,0,0];Du.scale(c,s.toArray01Linear().slice(0,3),a);const h=[0,0,0];return Du.scale(h,i.toArray01Linear().slice(0,3),l*r),ae([c[0]>0?c[0]/(c[0]+h[0]):0,c[1]>0?c[1]/(c[1]+h[1]):0,c[2]>0?c[2]/(c[2]+h[2]):0])}function HA(e,t,i,r,n,o){const s=e.zoom,a=e.scale,l=e.worldSize,c=1/l,h=e.aspect,u=Math.sqrt(1+h*h)*Math.tan(.5*e.fovX),d=u*u,p=r-i,f=r+i;let m,_;d>p/f?(m=r,_=r*u):(m=.5*f*(1+d),_=.5*Math.sqrt(p*p+2*(r*r+i*i)*d+f*f*d*d));const g=e.projection.pixelsPerMeter(e.center.lat,l),y=e._camera.getCameraToWorldMercator(),x=[0,0,-m*c];Du.transformMat4(x,x,y);let v=_*c;const b=e._edgeInsets;if(!(0===b.left&&0===b.top&&0===b.right&&0===b.bottom||b.left===b.right&&b.top===b.bottom)){const t=e._camera.getWorldToCamera(e.worldSize,\"meters\"===e.projection.zAxisUnit?g:1),n=e._camera.getCameraToClipPerspective(e._fov,e.width/e.height,i,r);n[8]=2*-e.centerOffset.x/e.width,n[9]=2*e.centerOffset.y/e.height;const o=new Float64Array(16);Au.mul(o,n,t);const c=new Float64Array(16);Au.invert(c,o);const h=Qu.fromInvProjectionMatrix(c,l,s,!0);for(const t of h.points){const i=((w=t)[0]/=a,w[1]/=a,w[2]=Qd(w[2],e._center.lat),w);v=Math.max(v,Du.len(Du.subtract([],x,i)));}}var w;v*=n/(n-1);const T=Math.acos(t[2]),E=Math.atan2(-t[0],-t[1]),M=new Yx;M.position=x,M.setPitchBearing(T,E);const A=M.getWorldToCamera(l,g),S=v*l,I=Math.min(e._mercatorZfromZoom(17)*l*-2,-2*S),C=M.getCameraToClipOrthographic(-S,S,-S,S,I,(S+o*g)/t[2]),z=new Float64Array(16);Au.multiply(z,C,A);const P=Du.fromValues(Math.floor(1e6*x[0])/1e6*l,Math.floor(1e6*x[1])/1e6*l,0),D=.5*n,R=[0,0,0];Du.transformMat4(R,P,z),Du.scale(R,R,D);const L=[Math.floor(R[0]),Math.floor(R[1]),Math.floor(R[2])],k=[0,0,0];Du.sub(k,R,L),Du.scale(k,k,-1/D);const O=new Float64Array(16);return Au.identity(O),Au.translate(O,O,k),Au.multiply(z,O,z),[z,S]}class XA extends zt{constructor(e){super(),this.requestManager=e,this.models={\"\":{}},this.numModelsLoading={};}loadModel(e,t){return fT(this.requestManager.transformRequest(t,ye.Model).url).then((t=>{if(!t)return;const i=TT(t),r=new Cv(e,void 0,void 0,i);return r.computeBoundsAndApplyParent(),r})).catch((i=>{this.fire(new Ct(new Error(`Could not load model ${e} from ${t}: ${i.message}`)));}))}load(e,t){this.models[t]||(this.models[t]={});const i=Object.keys(e);this.numModelsLoading[t]=(this.numModelsLoading[t]||0)+i.length;const r=[];for(const t of i)r.push(this.loadModel(t,e[t]));Promise.allSettled(r).then((e=>{for(let r=0;r{this.fire(new Ct(new Error(`Could not load models: ${e.message}`)));}));}isLoaded(){for(const e in this.numModelsLoading)if(this.numModelsLoading[e]>0)return !1;return !0}hasModel(e,t){return !!this.getModel(e,t)}getModel(e,t){return this.models[t]||(this.models[t]={}),this.models[t][e]}addModel(e,t,i){this.models[i]||(this.models[i]={}),this.hasModel(e,i)&&this.removeModel(e,i),this.load({[e]:this.requestManager.normalizeModelURL(t)},i);}addModels(e,t){const i={};for(const t in e)i[t]=this.requestManager.normalizeModelURL(e[t]);this.load(i,t);}removeModel(e,t){this.models[t]||(this.models[t]={});const i=this.models[t][e];delete this.models[t][e],i.destroy();}listModels(e){return this.models[e]||(this.models[e]={}),Object.keys(this.models[e])}upload(e,t){this.models[t]||(this.models[t]={});for(const i in this.models[t])this.models[t][i].upload(e.context);}}const YA=(e,t)=>Ss(e,t&&t.filter((e=>\"source.canvas\"!==e.identifier))),KA=O(OT,[\"addLayer\",\"removeLayer\",\"setLights\",\"setPaintProperty\",\"setLayoutProperty\",\"setSlot\",\"setFilter\",\"addSource\",\"removeSource\",\"setLayerZoomRange\",\"setLight\",\"setTransition\",\"setGeoJSONSourceData\",\"setTerrain\",\"setFog\",\"setProjection\",\"setCamera\",\"addImport\",\"removeImport\",\"setImportUrl\",\"setImportData\",\"setImportConfig\"]),JA=O(OT,[\"setCenter\",\"setZoom\",\"setBearing\",\"setPitch\"]),QA={version:8,layers:[],sources:{}},eS={duration:300,delay:0},tS=new Set([\"fill\",\"line\",\"background\",\"hillshade\",\"raster\"]);class iS extends zt{constructor(e,t={}){super(),this.map=e,this.scope=t.scope||\"\",this.fragments=[],this.importDepth=t.importDepth||0,this.importsCache=t.importsCache||new Map,this.resolvedImports=t.resolvedImports||new Set,this.transition=k({},eS),this._buildingIndex=new DT(this),this.crossTileSymbolIndex=new CE,this._mergedOrder=[],this._drapedFirstOrder=[],this._mergedLayers={},this._mergedSourceCaches={},this._mergedOtherSourceCaches={},this._mergedSymbolSourceCaches={},this._has3DLayers=!1,this._hasCircleLayers=!1,this._hasSymbolLayers=!1,this._changes=t.styleChanges||new Ea,this.dispatcher=t.dispatcher?t.dispatcher:new Ew(Ww(),this),t.imageManager?this.imageManager=t.imageManager:(this.imageManager=new aw,this.imageManager.setEventedParent(this)),this.imageManager.createScope(this.scope),this.glyphManager=t.glyphManager?t.glyphManager:new og(e._requestManager,t.localFontFamily?2:t.localIdeographFontFamily?1:0,t.localFontFamily||t.localIdeographFontFamily),t.modelManager?this.modelManager=t.modelManager:(this.modelManager=new XA(e._requestManager),this.modelManager.setEventedParent(this)),this._layers={},this._serializedLayers={},this._sourceCaches={},this._otherSourceCaches={},this._symbolSourceCaches={},this._loaded=!1,this._precompileDone=!1,this._shouldPrecompile=!1,this._availableImages=[],this._order=[],this._markersNeedUpdate=!1,this.options=new Map,this._configDependentLayers=new Set,this._config=t.config,this.dispatcher.broadcast(\"setReferrer\",ve());const i=this;this._rtlTextPluginCallback=iS.registerForPluginStateChange((e=>{i.dispatcher.broadcast(\"syncRTLPluginState\",{pluginStatus:e.pluginStatus,pluginURL:e.pluginURL},((e,t)=>{if(Qs(e),t&&t.every((e=>e)))for(const e in i._sourceCaches){const t=i._sourceCaches[e],r=t.getSource().type;\"vector\"!==r&&\"geojson\"!==r||t.reload();}}));})),this.on(\"data\",(e=>{if(\"source\"!==e.dataType||\"metadata\"!==e.sourceDataType)return;const t=this.getOwnSource(e.sourceId);if(t&&t.vectorLayerIds)for(const e in this._layers){const i=this._layers[e];i.source===t.id&&this._validateLayer(i);}}));}loadURL(e,t={}){this.fire(new It(\"dataloading\",{dataType:\"style\"}));const i=\"boolean\"==typeof t.validate?t.validate:!Pe(e);e=this.map._requestManager.normalizeStyleURL(e,t.accessToken),this.resolvedImports.add(e);const r=this.importsCache.get(e);if(r)return this._load(r,i);const n=this.map._requestManager.transformRequest(e,ye.Style);this._request=we(n,((t,r)=>{if(this._request=null,t)this.fire(new Ct(t));else if(r)return this.importsCache.set(e,r),this._load(r,i)}));}loadJSON(e,t={}){this.fire(new It(\"dataloading\",{dataType:\"style\"})),this._request=dt.frame((()=>{this._request=null,this._load(e,!1!==t.validate);}));}loadEmpty(){this.fire(new It(\"dataloading\",{dataType:\"style\"})),this._load(QA,!1);}_loadImports(e,t){if(this.importDepth>=4)return H(\"Style doesn't support nesting deeper than 5\"),Promise.resolve();const i=[];for(const r of e){const e=this._createFragmentStyle(r),n=new Promise((t=>{e.once(\"style.import.load\",t),e.once(\"error\",t);})).then((()=>this.mergeAll()));if(i.push(n),this.resolvedImports.has(r.url)){e.loadEmpty();continue}const o=r.data||this.importsCache.get(r.url);o?e.loadJSON(o,{validate:t}):r.url?e.loadURL(r.url,{validate:t}):e.loadEmpty(),this.fragments.push({style:e,id:r.id,config:r.config});}return Promise.allSettled(i)}_createFragmentStyle(e){const t=this.scope?va(e.id,this.scope):e.id,i=new iS(this.map,{scope:t,styleChanges:this._changes,importDepth:this.importDepth+1,importsCache:this.importsCache,resolvedImports:new Set(this.resolvedImports),dispatcher:this.dispatcher,imageManager:this.imageManager,glyphManager:this.glyphManager,modelManager:this.modelManager,config:e.config});return i.setEventedParent(this.map,{style:i}),i}_reloadImports(){this.mergeAll(),this._updateMapProjection(),this.map._triggerCameraUpdate(this.camera),this.dispatcher.broadcast(\"setLayers\",{layers:this._serializeLayers(this._order),scope:this.scope,options:this.options});const e=this.isRootStyle();this._shouldPrecompile=e,this.fire(new It(e?\"style.load\":\"style.import.load\"));}_load(e,t){const i=e.schema;if(this.isRootStyle()&&(e.fragment||i&&!1!==e.fragment)){const i=k({},QA,{imports:[{id:\"basemap\",data:e,url:\"\"}]});return void this._load(i,t)}if(this.setConfig(this._config,i),t&&YA(this,ms(e)))return;this._loaded=!0,this.stylesheet=$(e);for(const t in e.sources)this.addSource(t,e.sources[t],{validate:!1,isInitialLoad:!0});e.sprite?this._loadSprite(e.sprite):(this.imageManager.setLoaded(!0,this.scope),this.dispatcher.broadcast(\"spriteLoaded\",{scope:this.scope,isLoaded:!0})),this.glyphManager.setURL(e.glyphs,this.scope);const r=kT(this.stylesheet.layers);if(this._order=r.map((e=>e.id)),this.stylesheet.light&&H(\"The `light` root property is deprecated, prefer using `lights` with `flat` light type instead.\"),this.stylesheet.lights)if(1===this.stylesheet.lights.length&&\"flat\"===this.stylesheet.lights[0].type){const e=this.stylesheet.lights[0];this.light=new cw(e.properties,e.id);}else this.setLights(this.stylesheet.lights);this.light||(this.light=new cw(this.stylesheet.light)),this._layers={},this._serializedLayers={};for(const e of r){const t=ow(e,this.options);t.setScope(this.scope),t.isConfigDependent&&this._configDependentLayers.add(t.fqid),t.setEventedParent(this,{layer:{id:t.id}}),this._layers[t.id]=t,this._serializedLayers[t.id]=t.serialize();const i=this.getOwnLayerSourceCache(t),r=!!this.directionalLight&&this.directionalLight.shadowsEnabled();i&&t.canCastShadows()&&r&&(i.castsShadows=!0);}this.stylesheet.models&&this.modelManager.addModels(this.stylesheet.models,this.scope);const n=this.stylesheet.terrain;n&&(void 0===this.disableElevatedTerrain&&(this.disableElevatedTerrain=dt.hasCanvasFingerprintNoise()),this.disableElevatedTerrain?H(\"Terrain and hillshade are disabled because of Canvas2D limitations when fingerprinting protection is enabled (e.g. in private browsing mode).\"):this.terrainSetForDrapingOnly()||this._createTerrain(n,1)),this.stylesheet.fog&&this._createFog(this.stylesheet.fog),this.stylesheet.transition&&this.setTransition(this.stylesheet.transition),this.fire(new It(\"data\",{dataType:\"style\"})),e.imports?this._loadImports(e.imports,t).then((()=>this._reloadImports())):this._reloadImports();}isRootStyle(){return 0===this.importDepth}mergeAll(){let e,t,i,r,n,o,s,a;this.terrain&&this.terrain.scope!==this.scope&&delete this.terrain,this.forEachFragmentStyle((l=>{if(l.stylesheet){if(null!=l.light&&(e=l.light),l.stylesheet.lights)for(const e of l.stylesheet.lights)\"ambient\"===e.type&&null!=l.ambientLight&&(t=l.ambientLight),\"directional\"===e.type&&null!=l.directionalLight&&(i=l.directionalLight);r=this._prioritizeTerrain(r,l.terrain,l.stylesheet.terrain),l.stylesheet.fog&&null!=l.fog&&(n=l.fog),null!=l.stylesheet.camera&&(a=l.stylesheet.camera),null!=l.stylesheet.projection&&(o=l.stylesheet.projection),null!=l.stylesheet.transition&&(s=l.stylesheet.transition);}})),this.light=e,this.ambientLight=t,this.directionalLight=i,this.fog=n,null===r?delete this.terrain:this.terrain=r,this.camera=a||{\"camera-projection\":\"perspective\"},this.projection=o||{name:\"mercator\"},this.transition=k({},eS,s),this.mergeSources(),this.mergeLayers();}forEachFragmentStyle(e){const t=i=>{for(const e of i.fragments)t(e.style);e(i);};t(this);}_prioritizeTerrain(e,t,i){const r=e&&0===e.drapeRenderMode;return null===i?t&&0===t.drapeRenderMode?t:r?e:null:null!=t&&(!e||r||t&&1===t.drapeRenderMode)?t:e}mergeTerrain(){let e;this.terrain&&this.terrain.scope!==this.scope&&delete this.terrain,this.forEachFragmentStyle((t=>{e=this._prioritizeTerrain(e,t.terrain,t.stylesheet.terrain);})),null===e?delete this.terrain:this.terrain=e;}mergeProjection(){let e;this.forEachFragmentStyle((t=>{null!=t.stylesheet.projection&&(e=t.stylesheet.projection);})),this.projection=e||{name:\"mercator\"};}mergeSources(){const e={},t={},i={};this.forEachFragmentStyle((r=>{for(const t in r._sourceCaches){const i=va(t,r.scope);e[i]=r._sourceCaches[t];}for(const e in r._otherSourceCaches){const i=va(e,r.scope);t[i]=r._otherSourceCaches[e];}for(const e in r._symbolSourceCaches){const t=va(e,r.scope);i[t]=r._symbolSourceCaches[e];}})),this._mergedSourceCaches=e,this._mergedOtherSourceCaches=t,this._mergedSymbolSourceCaches=i;}mergeLayers(){const e={},t=[],i={};this._has3DLayers=!1,this._hasCircleLayers=!1,this._hasSymbolLayers=!1,this.forEachFragmentStyle((i=>{for(const r of i._order){const n=i._layers[r];if(\"slot\"===n.type){const t=ba(r);if(e[t])continue;e[t]=[];}n.slot&&e[n.slot]?e[n.slot].push(n):t.push(n);}})),this._mergedOrder=[];const r=(t=[])=>{for(const n of t)if(\"slot\"===n.type){const t=ba(n.id);e[t]&&r(e[t]);}else {const e=va(n.id,n.scope);this._mergedOrder.push(e),i[e]=n,n.is3D()&&(this._has3DLayers=!0),\"circle\"===n.type&&(this._hasCircleLayers=!0),\"symbol\"===n.type&&(this._hasSymbolLayers=!0);}};r(t),this._mergedLayers=i,this.updateDrapeFirstLayers(),this._buildingIndex.processLayersChanged();}terrainSetForDrapingOnly(){return !!this.terrain&&0===this.terrain.drapeRenderMode}getCamera(){return this.stylesheet.camera}setCamera(e){return this.stylesheet.camera=k({},this.stylesheet.camera,e),this.camera=this.stylesheet.camera,this}setProjection(e){e?this.stylesheet.projection=e:delete this.stylesheet.projection,this.mergeProjection(),this._updateMapProjection();}applyProjectionUpdate(){this._loaded&&(this.dispatcher.broadcast(\"setProjection\",this.map.transform.projectionOptions),this.map.transform.projection.requiresDraping?this.getTerrain()||this.stylesheet.terrain||this.setTerrainForDraping():this.terrainSetForDrapingOnly()&&this.setTerrain(null));}_updateMapProjection(){this.isRootStyle()&&(this.map._useExplicitProjection?this.applyProjectionUpdate():this.map._prioritizeAndUpdateProjection(null,this.projection));}_loadSprite(e){this._spriteRequest=function(e,t,i){let r,n,o;const s=dt.devicePixelRatio>1?\"@2x\":\"\";let a=we(t.transformRequest(t.normalizeSpriteURL(e,s,\".json\"),ye.SpriteJSON),((e,t)=>{a=null,o||(o=e,r=t,c());})),l=Ie(t.transformRequest(t.normalizeSpriteURL(e,s,\".png\"),ye.SpriteImage),((e,t)=>{l=null,o||(o=e,n=t,c());}));function c(){if(o)i(o);else if(r&&n){const e=dt.getImageData(n),t={};for(const i in r){const{width:n,height:o,x:s,y:a,sdf:l,pixelRatio:c,stretchX:h,stretchY:u,content:d}=r[i],p=new ef({width:n,height:o});ef.copy(e,p,{x:s,y:a},{x:0,y:0},{width:n,height:o}),t[i]={data:p,pixelRatio:c,sdf:l,stretchX:h,stretchY:u,content:d};}i(null,t);}}return {cancel(){a&&(a.cancel(),a=null),l&&(l.cancel(),l=null);}}}(e,this.map._requestManager,((e,t)=>{if(this._spriteRequest=null,e)this.fire(new Ct(e));else if(t)for(const e in t)this.imageManager.addImage(e,this.scope,t[e]);this.imageManager.setLoaded(!0,this.scope),this._availableImages=this.imageManager.listImages(this.scope),this.dispatcher.broadcast(\"setImages\",{scope:this.scope,images:this._availableImages}),this.dispatcher.broadcast(\"spriteLoaded\",{scope:this.scope,isLoaded:!0}),this.fire(new It(\"data\",{dataType:\"style\"}));}));}_validateLayer(e){const t=this.getOwnSource(e.source);if(!t)return;const i=e.sourceLayer;i&&(\"geojson\"===t.type||t.vectorLayerIds&&-1===t.vectorLayerIds.indexOf(i))&&this.fire(new Ct(new Error(`Source layer \"${i}\" does not exist on source \"${t.id}\" as specified by style layer \"${e.id}\"`)));}loaded(){if(!this._loaded)return !1;if(Object.keys(this._changes.getUpdatedSourceCaches()).length)return !1;for(const e in this._sourceCaches)if(!this._sourceCaches[e].loaded())return !1;if(!this.imageManager.isLoaded())return !1;if(!this.modelManager.isLoaded())return !1;for(const{style:e}of this.fragments)if(!e.loaded())return !1;return !0}_serializeImports(){if(this.stylesheet.imports)return this.stylesheet.imports.map(((e,t)=>{const i=this.fragments[t];return i&&i.style&&(e.data=i.style.serialize()),e}))}_serializeSources(){const e={};for(const t in this._sourceCaches){const i=this._sourceCaches[t].getSource();e[i.id]||(e[i.id]=i.serialize());}return e}_serializeLayers(e){const t=[];for(const i of e){const e=this._layers[i];e&&\"custom\"!==e.type&&t.push(e.serialize());}return t}hasLightTransitions(){return !(!this.light||!this.light.hasTransition())||!(!this.ambientLight||!this.ambientLight.hasTransition())||!(!this.directionalLight||!this.directionalLight.hasTransition())}hasFogTransition(){return !!this.fog&&this.fog.hasTransition()}hasTransitions(){if(this.hasLightTransitions())return !0;if(this.hasFogTransition())return !0;for(const e in this._sourceCaches)if(this._sourceCaches[e].hasTransition())return !0;for(const e in this._layers)if(this._layers[e].hasTransition())return !0;return !1}get order(){return this.terrain?this._drapedFirstOrder:this._mergedOrder}isLayerDraped(e){return !!this.terrain&&(\"function\"==typeof e.isLayerDraped?e.isLayerDraped(this.getLayerSourceCache(e)):tS.has(e.type))}_checkLoaded(){if(!this._loaded)throw new Error(\"Style is not done loading\")}_checkLayer(e){const t=this.getOwnLayer(e);if(t)return t;this.fire(new Ct(new Error(`The layer '${e}' does not exist in the map's style.`)));}_checkSource(e){const t=this.getOwnSource(e);if(t)return t;this.fire(new Ct(new Error(`The source '${e}' does not exist in the map's style.`)));}update(e){if(!this._loaded)return;this.ambientLight&&this.ambientLight.recalculate(e),this.directionalLight&&this.directionalLight.recalculate(e);const t=this.calculateLightsBrightness();e.brightness=t||0,t!==this._brightness&&(this._brightness=t,this.dispatcher.broadcast(\"setBrightness\",t));const i=this._changes.isDirty();if(this._changes.isDirty()){const t=this._changes.getLayerUpdatesByScope();for(const e in t){const{updatedIds:i,removedIds:r}=t[e];(i||r)&&this._updateWorkerLayers(e,i,r);}this.updateSourceCaches(),this._updateTilesForChangedImages(),this.updateLayers(e),this.light&&this.light.updateTransitions(e),this.ambientLight&&this.ambientLight.updateTransitions(e),this.directionalLight&&this.directionalLight.updateTransitions(e),this.fog&&this.fog.updateTransitions(e),this._changes.reset();}const r={};for(const e in this._mergedSourceCaches){const t=this._mergedSourceCaches[e];r[e]=t.used,t.used=!1;}for(const t of this._mergedOrder){const i=this._mergedLayers[t];if(i.recalculate(e,this._availableImages),!i.isHidden(e.zoom)){const e=this.getLayerSourceCache(i);e&&(e.used=!0);}if(!this._precompileDone&&this._shouldPrecompile)for(let t=i.minzoom||0;t<(i.maxzoom||25.5);t++){const t=this.map.painter;if(t){const r=i.getProgramIds();if(!r)continue;for(const n of r){const r=i.getDefaultProgramParams(n,e.zoom);r&&(t.style=this,this.fog&&(t._fogVisible=!0,r.overrideFog=!0,t.getOrCreateProgram(n,r)),t._fogVisible=!1,r.overrideFog=!1,t.getOrCreateProgram(n,r),(this.stylesheet.terrain||this.stylesheet.projection&&\"globe\"===this.stylesheet.projection.name)&&(r.overrideRtt=!0,t.getOrCreateProgram(n,r)));}}}}this._shouldPrecompile&&(this._precompileDone=!0);for(const e in r){const t=this._mergedSourceCaches[e];r[e]!==t.used&&t.getSource().fire(new It(\"data\",{sourceDataType:\"visibility\",dataType:\"source\",sourceId:t.getSource().id}));}this.light&&this.light.recalculate(e),this.terrain&&this.terrain.recalculate(e),this.fog&&this.fog.recalculate(e),this.z=e.zoom,this._markersNeedUpdate&&(this._updateMarkersOpacity(),this._markersNeedUpdate=!1),i&&this.fire(new It(\"data\",{dataType:\"style\"}));}_updateTilesForChangedImages(){const e=this._changes.getUpdatedImages();if(e.length){for(const t in this._sourceCaches)this._sourceCaches[t].reloadTilesForDependencies([\"icons\",\"patterns\"],e);this._changes.resetUpdatedImages();}}_updateWorkerLayers(e,t,i){const r=this.getFragmentStyle(e);r&&this.dispatcher.broadcast(\"updateLayers\",{layers:t?r._serializeLayers(t):[],scope:e,removedIds:i||[],options:r.options});}setState(e){if(this._checkLoaded(),YA(this,ms(e)))return !1;(e=$(e)).layers=kT(e.layers);const t=function(e,t){if(!e)return [{command:OT.setStyle,args:[t]}];let i=[];try{if(!x(e.version,t.version))return [{command:OT.setStyle,args:[t]}];x(e.center,t.center)||i.push({command:OT.setCenter,args:[t.center]}),x(e.zoom,t.zoom)||i.push({command:OT.setZoom,args:[t.zoom]}),x(e.bearing,t.bearing)||i.push({command:OT.setBearing,args:[t.bearing]}),x(e.pitch,t.pitch)||i.push({command:OT.setPitch,args:[t.pitch]}),x(e.sprite,t.sprite)||i.push({command:OT.setSprite,args:[t.sprite]}),x(e.glyphs,t.glyphs)||i.push({command:OT.setGlyphs,args:[t.glyphs]}),x(e.imports,t.imports)||function(e=[],t=[],i){t=t||[];const r=(e=e||[]).map(jT),n=t.map(jT),o=e.reduce(GT,{}),s=t.reduce(GT,{}),a=r.slice();let l,c,h,u;for(l=0,c=0;l{e.source&&r[e.source]?i.push({command:OT.removeLayer,args:[e.id]}):o.push(e);}));let s=e.terrain;s&&r[s.source]&&(i.push({command:OT.setTerrain,args:[void 0]}),s=void 0),i=i.concat(n),x(s,t.terrain)||i.push({command:OT.setTerrain,args:[t.terrain]}),function(e,t,i){t=t||[];const r=(e=e||[]).map(jT),n=t.map(jT),o=e.reduce(GT,{}),s=t.reduce(GT,{}),a=r.slice(),l=Object.create(null);let c,h,u,d,p,f,m;for(c=0,h=0;c!(e.command in JA)));if(0===t.length)return !1;const i=t.filter((e=>!(e.command in KA)));if(i.length>0)throw new Error(`Unimplemented: ${i.map((e=>e.command)).join(\", \")}.`);return t.forEach((e=>{this[e.command].apply(this,e.args);})),this.stylesheet=e,this.mergeAll(),this.dispatcher.broadcast(\"setLayers\",{layers:this._serializeLayers(this._order),scope:this.scope,options:this.options}),!0}addImage(e,t){return this.getImage(e)?this.fire(new Ct(new Error(\"An image with this name already exists.\"))):(this.imageManager.addImage(e,this.scope,t),this._afterImageUpdated(e),this)}updateImage(e,t){this.imageManager.updateImage(e,this.scope,t);}getImage(e){return this.imageManager.getImage(e,this.scope)}removeImage(e){return this.getImage(e)?(this.imageManager.removeImage(e,this.scope),this._afterImageUpdated(e),this):this.fire(new Ct(new Error(\"No image with this name exists.\")))}_afterImageUpdated(e){this._availableImages=this.imageManager.listImages(this.scope),this._changes.updateImage(e),this.dispatcher.broadcast(\"setImages\",{scope:this.scope,images:this._availableImages}),this.fire(new It(\"data\",{dataType:\"style\"}));}listImages(){return this._checkLoaded(),this._availableImages.slice()}addModel(e,t,i={}){return this._checkLoaded(),this._validate(Ms,`models.${e}`,t,null,i)||(this.modelManager.addModel(e,t,this.scope),this._changes.setDirty()),this}hasModel(e){return this.modelManager.hasModel(e,this.scope)}removeModel(e){return this.hasModel(e)?(this.modelManager.removeModel(e,this.scope),this):this.fire(new Ct(new Error(\"No model with this ID exists.\")))}listModels(){return this._checkLoaded(),this.modelManager.listModels(this.scope)}addSource(e,t,i={}){if(this._checkLoaded(),void 0!==this.getOwnSource(e))throw new Error(`There is already a source with ID \"${e}\".`);if(!t.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(t).join(\", \")}.`);if([\"vector\",\"raster\",\"geojson\",\"video\",\"image\"].indexOf(t.type)>=0&&this._validate(_s,`sources.${e}`,t,null,i))return;this.map&&this.map._collectResourceTiming&&(t.collectResourceTiming=!0);const r=ST(e,t,this.dispatcher,this);r.scope=this.scope,r.setEventedParent(this,(()=>({isSourceLoaded:this._isSourceCacheLoaded(r.id),source:r.serialize(),sourceId:r.id})));const n=e=>{const t=(e?\"symbol:\":\"other:\")+r.id,i=va(t,this.scope),n=this._sourceCaches[t]=new Lx(i,r,e);(e?this._symbolSourceCaches:this._otherSourceCaches)[r.id]=n,n.onAdd(this.map);};n(!1),\"vector\"!==t.type&&\"geojson\"!==t.type||n(!0),r.onAdd&&r.onAdd(this.map),i.isInitialLoad||(this.mergeSources(),this._changes.setDirty());}removeSource(e){this._checkLoaded();const t=this.getOwnSource(e);if(!t)throw new Error(\"There is no source with this ID\");for(const t in this._layers)if(this._layers[t].source===e)return this.fire(new Ct(new Error(`Source \"${e}\" cannot be removed while layer \"${t}\" is using it.`)));if(this.terrain&&this.terrain.scope===this.scope&&this.terrain.get().source===e)return this.fire(new Ct(new Error(`Source \"${e}\" cannot be removed while terrain is using it.`)));const i=this.getOwnSourceCaches(e);for(const e of i){const t=ba(e.id);delete this._sourceCaches[t],this._changes.discardSourceCacheUpdate(e.id),e.fire(new It(\"data\",{sourceDataType:\"metadata\",dataType:\"source\",sourceId:e.getSource().id})),e.setEventedParent(null),e.clearTiles();}return delete this._otherSourceCaches[e],delete this._symbolSourceCaches[e],this.mergeSources(),t.setEventedParent(null),t.onRemove&&t.onRemove(this.map),this._changes.setDirty(),this}setGeoJSONSourceData(e,t){this._checkLoaded(),this.getOwnSource(e).setData(t),this._changes.setDirty();}getOwnSource(e){const t=this.getOwnSourceCache(e);return t&&t.getSource()}getOwnSources(){const e=[];for(const t in this._otherSourceCaches){const i=this.getOwnSourceCache(t);i&&e.push(i.getSource());}return e}setLights(e){if(this._checkLoaded(),!e)return delete this.ambientLight,void delete this.directionalLight;const t=this._getTransitionParameters();for(const i of e){if(this._validate(ys,\"lights\",i))return;switch(i.type){case\"ambient\":if(this.ambientLight){const e=this.ambientLight;e.set(i),e.updateTransitions(t);}else this.ambientLight=new Mw(i,Aw,this.scope,this.options);break;case\"directional\":if(this.directionalLight){const e=this.directionalLight;e.set(i),e.updateTransitions(t);}else this.directionalLight=new Mw(i,Sw,this.scope,this.options);}}const i=new oa(this.z||0,t);this.ambientLight&&this.ambientLight.recalculate(i),this.directionalLight&&this.directionalLight.recalculate(i),this._brightness=this.calculateLightsBrightness(),this.dispatcher.broadcast(\"setBrightness\",this._brightness);}calculateLightsBrightness(){const e=this.directionalLight,t=this.ambientLight;if(!e||!t)return;const i=e=>.2126*(e[0]<=.03928?e[0]/12.92:Math.pow((e[0]+.055)/1.055,2.4))+.7152*(e[1]<=.03928?e[1]/12.92:Math.pow((e[1]+.055)/1.055,2.4))+.0722*(e[2]<=.03928?e[2]/12.92:Math.pow((e[2]+.055)/1.055,2.4)),r=e.properties.get(\"color\").toArray01(),n=e.properties.get(\"intensity\"),o=e.properties.get(\"direction\"),s=1-J(o.x,o.y,o.z)[2]/90,a=i(r)*n*s,l=t.properties.get(\"color\").toArray01(),c=t.properties.get(\"intensity\");return (a+i(l)*c)/2}getBrightness(){return this._brightness}getLights(){if(!this.enable3dLights())return null;const e=[];return this.directionalLight&&e.push(this.directionalLight.get()),this.ambientLight&&e.push(this.ambientLight.get()),e}enable3dLights(){return !!this.ambientLight&&!!this.directionalLight}getFragmentStyle(e){if(!e)return this;if(xa(e)){const t=function(e){const t=e.indexOf(ya);return t>=0?e.slice(t+1):\"\"}(e),i=this.fragments.find((({id:e})=>e===t));if(!i)throw new Error(`Style import not found: ${e}`);const r=ba(e);return i.style.getFragmentStyle(r)}{const t=this.fragments.find((({id:t})=>t===e));if(!t)throw new Error(`Style import not found: ${e}`);return t.style}}getConfigProperty(e,t){const i=this.getFragmentStyle(e);if(!i)return null;const r=i.options.get(t),n=r?r.value||r.default:null;return n?n.serialize():null}setConfigProperty(e,t,i){const r=Eo(i);if(\"success\"!==r.result)return void YA(this,r.value);const n=r.value.expression,o=this.getFragmentStyle(e);if(!o)return;const s=o.options.get(t);s&&(o.options.set(t,{...s,value:n}),o.updateConfigDependencies());}setConfig(e,t){if(this._config=e,e||t)if(t){this.options.clear();for(const i in t){let r,n;const o=Eo(t[i].default);if(\"success\"===o.result&&(r=o.value.expression),e&&void 0!==e[i]){const t=Eo(e[i]);\"success\"===t.result&&(n=t.value.expression);}const{minValue:s,maxValue:a,stepValue:l,type:c,values:h}=t[i];r?this.options.set(i,{default:r,value:n,minValue:s,maxValue:a,stepValue:l,type:c,values:h}):this.fire(new Ct(new Error(`No schema defined for config option \"${i}\".`)));}}else this.fire(new Ct(new Error(\"Attempting to set config for a style without schema.\")));}updateConfigDependencies(){for(const e of this._configDependentLayers){const t=this.getLayer(e);t&&(t.possiblyEvaluateVisibility(),this._updateLayer(t));}this.ambientLight&&this.ambientLight.scope===this.scope&&this.ambientLight.updateConfig(this.options),this.directionalLight&&this.directionalLight.scope===this.scope&&this.directionalLight.updateConfig(this.options),this._changes.setDirty();}addLayer(e,t,i={}){this._checkLoaded();const r=e.id;if(this._layers[r])return void this.fire(new Ct(new Error(`Layer with id \"${r}\" already exists on this map`)));let n;if(\"custom\"===e.type){if(YA(this,function(e){const t=[],i=e.id;return void 0===i&&t.push({message:`layers.${i}: missing required property \"id\"`}),void 0===e.render&&t.push({message:`layers.${i}: missing required method \"render\"`}),e.renderingMode&&\"2d\"!==e.renderingMode&&\"3d\"!==e.renderingMode&&t.push({message:`layers.${i}: property \"renderingMode\" must be either \"2d\" or \"3d\"`}),t}(e)))return;n=ow(e,this.options);}else {if(\"object\"==typeof e.source&&(this.addSource(r,e.source),e=k(e=$(e),{source:r})),this._validate(bs,`layers.${r}`,e,{arrayIndex:-1},i))return;n=ow(e,this.options),this._validateLayer(n),n.setEventedParent(this,{layer:{id:r}}),this._serializedLayers[n.id]=n.serialize();}n.isConfigDependent&&this._configDependentLayers.add(n.fqid),n.setScope(this.scope);let o=this._order.length;if(t){const e=this._order.indexOf(t);if(-1===e)return void this.fire(new Ct(new Error(`Layer with id \"${t}\" does not exist on this map.`)));n.slot===this._layers[t].slot?o=e:H(`Layer with id \"${t}\" has a different slot. Layers can only be rearranged within the same slot.`);}this._order.splice(o,0,r),this._layerOrderChanged=!0,this._layers[r]=n;const s=this.getOwnLayerSourceCache(n),a=!!this.directionalLight&&this.directionalLight.shadowsEnabled();s&&n.canCastShadows()&&a&&(s.castsShadows=!0);const l=this._changes.getRemovedLayer(n);if(l&&n.source&&s&&\"custom\"!==n.type){this._changes.discardLayerRemoval(n);const e=va(n.source,n.scope);l.type!==n.type?this._changes.updateSourceCache(e,\"clear\"):(this._changes.updateSourceCache(e,\"reload\"),s.pause());}this._updateLayer(n),n.onAdd&&n.onAdd(this.map),n.scope=this.scope,this.mergeLayers();}moveLayer(e,t){this._checkLoaded();const i=this._checkLayer(e);if(!i)return;if(e===t)return;const r=this._order.indexOf(e);this._order.splice(r,1);let n=this._order.length;if(t){const e=this._order.indexOf(t);if(-1===e)return void this.fire(new Ct(new Error(`Layer with id \"${t}\" does not exist on this map.`)));i.slot===this._layers[t].slot?n=e:H(`Layer with id \"${t}\" has a different slot. Layers can only be rearranged within the same slot.`);}this._order.splice(n,0,e),this._changes.setDirty(),this._layerOrderChanged=!0,this.mergeLayers();}removeLayer(e){this._checkLoaded();const t=this._checkLayer(e);if(!t)return;t.setEventedParent(null);const i=this._order.indexOf(e);this._order.splice(i,1),delete this._layers[e],delete this._serializedLayers[e],this._changes.setDirty(),this._layerOrderChanged=!0,this._configDependentLayers.delete(t.fqid),this._changes.removeLayer(t);const r=this.getOwnLayerSourceCache(t);if(r&&r.castsShadows){let e=!1;for(const i in this._layers)if(this._layers[i].source===t.source&&this._layers[i].canCastShadows()){e=!0;break}r.castsShadows=e;}t.onRemove&&t.onRemove(this.map),this.mergeLayers();}getOwnLayer(e){return this._layers[e]}hasLayer(e){return e in this._mergedLayers}hasLayerType(e){for(const t in this._layers)if(this._layers[t].type===e)return !0;return !1}setLayerZoomRange(e,t,i){this._checkLoaded();const r=this._checkLayer(e);r&&(r.minzoom===t&&r.maxzoom===i||(null!=t&&(r.minzoom=t),null!=i&&(r.maxzoom=i),this._updateLayer(r)));}setSlot(e,t){this._checkLoaded();const i=this._checkLayer(e);i&&i.slot!==t&&(i.slot=t,this._updateLayer(i));}setFilter(e,t,i={}){this._checkLoaded();const r=this._checkLayer(e);if(r&&!x(r.filter,t))return null==t?(r.filter=void 0,void this._updateLayer(r)):void(this._validate(ws,`layers.${r.id}.filter`,t,{layerType:r.type},i)||(r.filter=$(t),this._updateLayer(r)))}getFilter(e){const t=this._checkLayer(e);if(t)return $(t.filter)}setLayoutProperty(e,t,i,r={}){this._checkLoaded();const n=this._checkLayer(e);n&&(x(n.getLayoutProperty(t),i)||(n.setLayoutProperty(t,i,r),n.isConfigDependent&&this._configDependentLayers.add(n.fqid),this._updateLayer(n)));}getLayoutProperty(e,t){const i=this._checkLayer(e);if(i)return i.getLayoutProperty(t)}setPaintProperty(e,t,i,r={}){this._checkLoaded();const n=this._checkLayer(e);if(!n)return;if(x(n.getPaintProperty(t),i))return;const o=n.setPaintProperty(t,i,r);n.isConfigDependent&&this._configDependentLayers.add(n.fqid),o&&this._updateLayer(n),this._changes.updatePaintProperties(n);}getPaintProperty(e,t){const i=this._checkLayer(e);if(i)return i.getPaintProperty(t)}setFeatureState(e,t){this._checkLoaded();const i=e.source,r=e.sourceLayer,n=this._checkSource(i);if(!n)return;const o=n.type;if(\"geojson\"===o&&r)return void this.fire(new Ct(new Error(\"GeoJSON sources cannot have a sourceLayer parameter.\")));if(\"vector\"===o&&!r)return void this.fire(new Ct(new Error(\"The sourceLayer parameter must be provided for vector source types.\")));void 0===e.id&&this.fire(new Ct(new Error(\"The feature id parameter must be provided.\")));const s=this.getOwnSourceCaches(i);for(const i of s)i.setFeatureState(r,e.id,t);}removeFeatureState(e,t){this._checkLoaded();const i=e.source,r=this._checkSource(i);if(!r)return;const n=r.type,o=\"vector\"===n?e.sourceLayer:void 0;if(\"vector\"===n&&!o)return void this.fire(new Ct(new Error(\"The sourceLayer parameter must be provided for vector source types.\")));if(t&&\"string\"!=typeof e.id&&\"number\"!=typeof e.id)return void this.fire(new Ct(new Error(\"A feature id is required to remove its specific state property.\")));const s=this.getOwnSourceCaches(i);for(const i of s)i.removeFeatureState(o,e.id,t);}getFeatureState(e){this._checkLoaded();const t=e.source,i=e.sourceLayer,r=this._checkSource(t);if(r){if(\"vector\"!==r.type||i)return void 0===e.id&&this.fire(new Ct(new Error(\"The feature id parameter must be provided.\"))),this.getOwnSourceCaches(t)[0].getFeatureState(i,e.id);this.fire(new Ct(new Error(\"The sourceLayer parameter must be provided for vector source types.\")));}}setTransition(e){return this.stylesheet.transition=k({},this.stylesheet.transition,e),this.transition=this.stylesheet.transition,this}getTransition(){return k({},this.stylesheet.transition)}serialize(){this._checkLoaded();const e=this.getTerrain(),t=e&&this.terrain&&this.terrain.scope===this.scope?e:this.stylesheet.terrain;return Z({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,imports:this._serializeImports(),schema:this.stylesheet.schema,camera:this.stylesheet.camera,light:this.stylesheet.light,lights:this.stylesheet.lights,terrain:t,fog:this.stylesheet.fog,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,projection:this.stylesheet.projection,sources:this._serializeSources(),layers:this._serializeLayers(this._order)},(e=>void 0!==e))}_updateLayer(e){this._changes.updateLayer(e);const t=this.getLayerSourceCache(e),i=va(e.source,e.scope),r=this._changes.getUpdatedSourceCaches();e.source&&!r[i]&&t&&\"raster\"!==t.getSource().type&&(this._changes.updateSourceCache(i,\"reload\"),t.pause()),e.invalidateCompiledFilter();}_flattenAndSortRenderedFeatures(e){const t=e=>\"fill-extrusion\"===this._mergedLayers[e].type,i=this.order,r={},n=[];for(let o=i.length-1;o>=0;o--){const s=i[o];if(t(s)){r[s]=o;for(const t of e){const e=t[s];if(e)for(const t of e)n.push(t);}}}n.sort(((e,t)=>t.intersectionZ-e.intersectionZ));const o=[];for(let s=i.length-1;s>=0;s--){const a=i[s];if(t(a))for(let e=n.length-1;e>=0;e--){const t=n[e].feature;if(r[t.layer.id]{const t=this.getLayer(e);return t&&t.is3D()})):this.has3DLayers(),a=Iw.createFromScreenPoints(e,i);for(const e in this._mergedSourceCaches){const l=this._mergedSourceCaches[e].getSource();if(!l||l.scope!==t.scope)continue;const c=this._mergedSourceCaches[e].getSource().id;t.layers&&!r[c]||n.push(CT(this._mergedSourceCaches[e],this._mergedLayers,o,a,t,i,s,!!this.map._showQueryGeometry));}return this.placement&&n.push(function(e,t,i,r,n,o,s){const a={},l=o.queryRenderedSymbols(r),c=[];for(const e of Object.keys(l).map(Number))c.push(s[e]);c.sort(PT);for(const i of c){const r=i.featureIndex.lookupSymbolFeatures(l[i.bucketInstanceId],t,i.bucketIndex,i.sourceLayerIndex,n.filter,n.layers,n.availableImages,e);for(const e in r){const t=a[e]=a[e]||[],n=r[e];n.sort(((e,t)=>{const r=i.featureSortOrder;if(r){const i=r.indexOf(e.featureIndex);return r.indexOf(t.featureIndex)-i}return t.featureIndex-e.featureIndex}));for(const e of n)t.push(e);}}for(const t in a)a[t].forEach((r=>{const n=r.feature,o=i(e[t]);if(!o)return;const s=o.getFeatureState(n.layer[\"source-layer\"],n.id);n.source=n.layer.source,n.layer[\"source-layer\"]&&(n.sourceLayer=n.layer[\"source-layer\"]),n.state=s;}));return a}(this._mergedLayers,o,this.getLayerSourceCache.bind(this),a.screenGeometry,t,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(n)}querySourceFeatures(e,t){t&&t.filter&&this._validate(ws,\"querySourceFeatures.filter\",t.filter,null,t);const i=this.getOwnSourceCaches(e);let r=[];for(const e of i)r=r.concat(zT(e,t));return r}addSourceType(e,t,i){return iS.getSourceType(e)?i(new Error(`A source type called \"${e}\" already exists.`)):(iS.setSourceType(e,t),t.workerSourceURL?void this.dispatcher.broadcast(\"loadWorkerSource\",{name:e,url:t.workerSourceURL},i):i(null,null))}getFlatLight(){return this.light.getLight()}setFlatLight(e,t,i={}){this._checkLoaded();const r=this.light.getLight();let n=!1;for(const t in e)if(!x(e[t],r[t])){n=!0;break}if(!n)return;const o=this._getTransitionParameters();this.light.setLight(e,t,i),this.light.updateTransitions(o);}getTerrain(){return this.terrain&&1===this.terrain.drapeRenderMode?this.terrain.get():null}setTerrainForDraping(){this.setTerrain({source:\"\",exaggeration:0},0);}setTerrain(e,t=1){if(this._checkLoaded(),!e)return delete this.terrain,null===e?this.stylesheet.terrain=null:delete this.stylesheet.terrain,this._force3DLayerUpdate(),void(this._markersNeedUpdate=!0);let i=e;const r=null==e.source;if(1===t){if(\"object\"==typeof i.source){const e=\"terrain-dem-src\";this.addSource(e,i.source),i=$(i),i=k(i,{source:e});}const e=k({},i),t={};if(this.terrain&&r){e.source=this.terrain.get().source;const i=this.terrain?this.getFragmentStyle(this.terrain.scope):null;i&&(t.style=i.serialize());}if(this._validate(xs,\"terrain\",e,t))return}if(!this.terrain||this.terrain.scope!==this.scope&&!r||this.terrain&&t!==this.terrain.drapeRenderMode){if(!i)return;this._createTerrain(i,t),this.fire(new It(\"data\",{dataType:\"style\"}));}else {const t=this.terrain,r=t.get();for(const e of Object.keys(Pt.terrain))!i.hasOwnProperty(e)&&Pt.terrain[e].default&&(i[e]=Pt.terrain[e].default);for(const i in e)if(!x(e[i],r[i])){t.set(e,this.options),this.stylesheet.terrain=e;const i=this._getTransitionParameters({duration:0});t.updateTransitions(i),this.fire(new It(\"data\",{dataType:\"style\"}));break}}this.mergeTerrain(),this.updateDrapeFirstLayers(),this._markersNeedUpdate=!0;}_createFog(e){const t=this.fog=new vw(e,this.map.transform);this.stylesheet.fog=t.get();const i=this._getTransitionParameters({duration:0});t.updateTransitions(i);}_updateMarkersOpacity(){0!==this.map._markers.length&&this.map._requestDomTask((()=>{for(const e of this.map._markers)e._evaluateOpacity();}));}getFog(){return this.fog?this.fog.get():null}setFog(e){if(this._checkLoaded(),!e)return delete this.fog,delete this.stylesheet.fog,void(this._markersNeedUpdate=!0);if(this.fog){const t=this.fog;if(!x(t.get(),e)){t.set(e),this.stylesheet.fog=t.get();const i=this._getTransitionParameters({duration:0});t.updateTransitions(i);}}else this._createFog(e);this._markersNeedUpdate=!0;}_getTransitionParameters(e){return {now:dt.now(),transition:k(this.transition,e)}}updateDrapeFirstLayers(){if(!this.terrain)return;const e=[],t=[];for(const i in this._mergedLayers)this.isLayerDraped(this._mergedLayers[i])?e.push(i):t.push(i);this._drapedFirstOrder=[],this._drapedFirstOrder.push(...e),this._drapedFirstOrder.push(...t);}_createTerrain(e,t){const i=this.terrain=new uw(e,t,this.scope,this.options);1===t&&(this.stylesheet.terrain=e),this.mergeTerrain(),this.updateDrapeFirstLayers(),this._force3DLayerUpdate();const r=this._getTransitionParameters({duration:0});i.updateTransitions(r);}_force3DLayerUpdate(){for(const e in this._layers){const t=this._layers[e];\"fill-extrusion\"===t.type&&this._updateLayer(t);}}_forceSymbolLayerUpdate(){for(const e in this._layers){const t=this._layers[e];\"symbol\"===t.type&&this._updateLayer(t);}}_validate(e,t,i,r,n={}){if(n&&!1===n.validate)return !1;const o=k({},this.serialize());return YA(this,e.call(ms,k({key:t,style:o,value:i,styleSpec:Pt},r)))}_remove(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),ta.off(\"pluginStateChange\",this._rtlTextPluginCallback);for(const e in this._mergedLayers)this._mergedLayers[e].setEventedParent(null);for(const e in this._mergedSourceCaches)this._mergedSourceCaches[e].clearTiles(),this._mergedSourceCaches[e].setEventedParent(null);this.setEventedParent(null),delete this.fog,delete this.terrain,delete this.ambientLight,delete this.directionalLight,this.isRootStyle()&&(this.imageManager.setEventedParent(null),this.modelManager.setEventedParent(null),this.dispatcher.remove());}clearSource(e){const t=this.getSourceCaches(e);for(const e of t)e.clearTiles();}clearSources(){for(const e in this._mergedSourceCaches)this._mergedSourceCaches[e].clearTiles();}reloadSource(e){const t=this.getSourceCaches(e);for(const e of t)e.resume(),e.reload();}reloadSources(){for(const e of this.getSources())e.reload&&e.reload();}updateSources(e){let t;this.directionalLight&&(t=$A(this.directionalLight));for(const i in this._mergedSourceCaches)this._mergedSourceCaches[i].update(e,void 0,void 0,t);}_generateCollisionBoxes(){for(const e in this._sourceCaches){const t=this._sourceCaches[e];t.resume(),t.reload();}}_updatePlacement(e,t,i,r,n=!1){let o=!1,s=!1;const a={},l={};for(const t of this._mergedOrder){const i=this._mergedLayers[t];if(\"symbol\"!==i.type)continue;const r=va(i.source,i.scope);let n=a[r];if(!n){const e=this.getLayerSourceCache(i);if(!e)continue;const t=e.getRenderableIds(!0).map((t=>e.getTileByID(t)));l[r]=t.slice(),n=a[r]=t.sort(((e,t)=>t.tileID.overscaledZ-e.tileID.overscaledZ||(e.tileID.isLessThan(t.tileID)?-1:1)));}const s=this.crossTileSymbolIndex.addLayer(i,n,e.center.lng,e.projection);o=o||s;}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._mergedOrder),n=n||this._layerOrderChanged||0===i,this._layerOrderChanged&&this.fire(new It(\"neworder\")),(n||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(dt.now(),e.zoom))&&(this.pauseablePlacement=new gE(e,this._mergedOrder,n,t,i,r,this.placement,this.fog&&e.projection.supportsFog?this.fog.state:null,this._buildingIndex),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._mergedOrder,this._mergedLayers,a,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(dt.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(const e of this._mergedOrder){const t=this._mergedLayers[e];\"symbol\"===t.type&&this.placement.updateLayerOpacities(t,a[va(t.source,t.scope)]);}return !this.pauseablePlacement.isDone()||this.placement.hasTransitions(dt.now())}_releaseSymbolFadeTiles(){for(const e in this._sourceCaches)this._sourceCaches[e].releaseSymbolFadeTiles();}addImport(e){this._checkLoaded();const t=this.stylesheet.imports=this.stylesheet.imports||[],i=t.findIndex((({id:t})=>t===e.id));return -1!==i?this.fire(new Ct(new Error(`Import with id '${e.id}' already exists in the map's style.`))):(t.push(e),this._loadImports([e],!0),this)}setImportUrl(e,t){this._checkLoaded();const i=this.stylesheet.imports||[],r=this.getImportIndex(e);if(-1===r)return this;i[r].url=t;const n=this.fragments[r];return n.style=this._createFragmentStyle(i[r]),n.style.on(\"style.import.load\",(()=>this.mergeAll())),n.style.loadURL(t),this}setImportData(e,t){this._checkLoaded();const i=this.getImportIndex(e),r=this.stylesheet.imports||[];return -1===i?this:t?(this.fragments[i].style.setState(t),this._reloadImports(),this):(delete r[i].data,this.setImportUrl(e,r[i].url))}setImportConfig(e,t){this._checkLoaded();const i=this.getImportIndex(e),r=this.stylesheet.imports||[];if(-1===i)return this;t?r[i].config=t:delete r[i].config;const n=this.fragments[i],o=n.style.stylesheet&&n.style.stylesheet.schema;return n.config=t,n.style.setConfig(t,o),n.style.updateConfigDependencies(),this}removeImport(e){this._checkLoaded();const t=this.stylesheet.imports||[],i=this.getImportIndex(e);return -1===i||(t.splice(i,1),this.fragments[i].style._remove(),this.fragments.splice(i,1),this._reloadImports()),this}getImportIndex(e){const t=(this.stylesheet.imports||[]).findIndex((t=>t.id===e));return -1===t&&this.fire(new Ct(new Error(`Import '${e}' does not exist in the map's style and cannot be updated.`))),t}getLayer(e){return this._mergedLayers[e]}getSources(){const e=[];for(const t in this._mergedOtherSourceCaches){const i=this._mergedOtherSourceCaches[t];i&&e.push(i.getSource());}return e}getSource(e,t){const i=this.getSourceCache(e,t);return i&&i.getSource()}getLayerSource(e){const t=this.getLayerSourceCache(e);return t&&t.getSource()}getSourceCache(e,t){const i=va(e,t);return this._mergedOtherSourceCaches[i]}getLayerSourceCache(e){const t=va(e.source,e.scope);return \"symbol\"===e.type?this._mergedSymbolSourceCaches[t]:this._mergedOtherSourceCaches[t]}getSourceCaches(e){const t=[];return this._mergedOtherSourceCaches[e]&&t.push(this._mergedOtherSourceCaches[e]),this._mergedSymbolSourceCaches[e]&&t.push(this._mergedSymbolSourceCaches[e]),t}updateSourceCaches(){const e=this._changes.getUpdatedSourceCaches();for(const t in e){const i=e[t];\"reload\"===i?this.reloadSource(t):\"clear\"===i&&this.clearSource(t);}}updateLayers(e){const t=this._changes.getUpdatedPaintProperties();for(const i of t){const t=this.getLayer(i);t&&t.updateTransitions(e);}}getImages(e,t,i){this.imageManager.getImages(t.icons,t.scope,i),this._updateTilesForChangedImages();const r=e=>{e&&e.setDependencies(t.tileID.key,t.type,t.icons);};r(this._otherSourceCaches[t.source]),r(this._symbolSourceCaches[t.source]);}getGlyphs(e,t,i){this.glyphManager.getGlyphs(t.stacks,t.scope,i);}getResource(e,t,i){return be(t,i)}getOwnSourceCache(e){return this._otherSourceCaches[e]}getOwnLayerSourceCache(e){return \"symbol\"===e.type?this._symbolSourceCaches[e.source]:this._otherSourceCaches[e.source]}getOwnSourceCaches(e){const t=[];return this._otherSourceCaches[e]&&t.push(this._otherSourceCaches[e]),this._symbolSourceCaches[e]&&t.push(this._symbolSourceCaches[e]),t}_isSourceCacheLoaded(e){const t=this.getOwnSourceCaches(e);return 0===t.length?(this.fire(new Ct(new Error(`There is no source with ID '${e}'`))),!1):t.every((e=>e.loaded()))}has3DLayers(){return this._has3DLayers}hasSymbolLayers(){return this._hasSymbolLayers}hasCircleLayers(){return this._hasCircleLayers}_clearWorkerCaches(){this.dispatcher.broadcast(\"clearCaches\");}destroy(){this._clearWorkerCaches(),this.terrainSetForDrapingOnly()&&(delete this.terrain,delete this.stylesheet.terrain);}}function rS(e,t){let i=!1,r=null;const n=()=>{r=null,i&&(e(),r=setTimeout(n,t),i=!1);};return ()=>(i=!0,r||n(),r)}iS.getSourceType=function(e){return AT[e]},iS.setSourceType=function(e,t){AT[e]=t;},iS.registerForPluginStateChange=function(e){return e({pluginStatus:Ks,pluginURL:Js}),ta.on(\"pluginStateChange\",e),e};class nS{constructor(e){this._hashName=e&&encodeURIComponent(e),j([\"_getCurrentHash\",\"_onHashChange\",\"_updateHash\"],this),this._updateHash=rS(this._updateHashUnthrottled.bind(this),300);}addTo(e){return this._map=e,t.addEventListener(\"hashchange\",this._onHashChange,!1),e.on(\"moveend\",this._updateHash),this}remove(){return this._map?(this._map.off(\"moveend\",this._updateHash),t.removeEventListener(\"hashchange\",this._onHashChange,!1),clearTimeout(this._updateHash()),this._map=void 0,this):this}getHashString(){const e=this._map;if(!e)return \"\";const i=oS(e);if(this._hashName){const e=this._hashName;let r=!1;const n=t.location.hash.slice(1).split(\"&\").map((t=>{const n=t.split(\"=\")[0];return n===e?(r=!0,`${n}=${i}`):t})).filter((e=>e));return r||n.push(`${e}=${i}`),`#${n.join(\"&\")}`}return `#${i}`}_getCurrentHash(){const e=t.location.hash.replace(\"#\",\"\");if(this._hashName){let t;return e.split(\"&\").map((e=>e.split(\"=\"))).forEach((e=>{e[0]===this._hashName&&(t=e);})),(t&&t[1]||\"\").split(\"/\")}return e.split(\"/\")}_onHashChange(){const e=this._map;if(!e)return !1;const t=this._getCurrentHash();if(t.length>=3&&!t.some((e=>isNaN(e)))){const i=e.dragRotate.isEnabled()&&e.touchZoomRotate.isEnabled()?+(t[3]||0):e.getBearing();return e.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:i,pitch:+(t[4]||0)}),!0}return !1}_updateHashUnthrottled(){const e=t.location.href.replace(/(#.+)?$/,this.getHashString());t.history.replaceState(t.history.state,null,e);}}function oS(e,t){const i=e.getCenter(),r=Math.round(100*e.getZoom())/100,n=Math.ceil((r*Math.LN2+Math.log(512/360/.5))/Math.LN10),o=Math.pow(10,n),s=Math.round(i.lng*o)/o,a=Math.round(i.lat*o)/o,l=e.getBearing(),c=e.getPitch();let h=t?`/${s}/${a}/${r}`:`${r}/${a}/${s}`;return (l||c)&&(h+=\"/\"+Math.round(10*l)/10),c&&(h+=`/${Math.round(c)}`),h}const sS={linearity:.3,easing:I(0,0,.3,1)},aS=k({deceleration:2500,maxSpeed:1400},sS),lS=k({deceleration:20,maxSpeed:1400},sS),cS=k({deceleration:1e3,maxSpeed:360},sS),hS=k({deceleration:1e3,maxSpeed:90},sS);class uS{constructor(e){this._map=e,this.clear();}clear(){this._inertiaBuffer=[];}record(e){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:dt.now(),settings:e});}_drainInertiaBuffer(){const e=this._inertiaBuffer,t=dt.now();for(;e.length>0&&t-e[0].time>160;)e.shift();}_onMoveEnd(e){if(this._map._prefersReducedMotion())return;if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const t={zoom:0,bearing:0,pitch:0,pan:new y(0,0),pinchAround:void 0,around:void 0};for(const{settings:e}of this._inertiaBuffer)t.zoom+=e.zoomDelta||0,t.bearing+=e.bearingDelta||0,t.pitch+=e.pitchDelta||0,e.panDelta&&t.pan._add(e.panDelta),e.around&&(t.around=e.around),e.pinchAround&&(t.pinchAround=e.pinchAround);const i=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,r={};if(t.pan.mag()){const n=pS(t.pan.mag(),i,k({},aS,e||{}));r.offset=t.pan.mult(n.amount/t.pan.mag()),r.center=this._map.transform.center,dS(r,n);}if(t.zoom){const e=pS(t.zoom,i,lS);r.zoom=this._map.transform.zoom+e.amount,dS(r,e);}if(t.bearing){const e=pS(t.bearing,i,cS);r.bearing=this._map.transform.bearing+z(e.amount,-179,179),dS(r,e);}if(t.pitch){const e=pS(t.pitch,i,hS);r.pitch=this._map.transform.pitch+e.amount,dS(r,e);}if(r.zoom||r.bearing){const e=void 0===t.pinchAround?t.around:t.pinchAround;r.around=e?this._map.unproject(e):this._map.getCenter();}return this.clear(),r.noMoveStart=!0,r}}function dS(e,t){(!e.duration||e.durationt.unproject(e))),s=n.reduce(((e,t,i,r)=>e.add(t.div(r.length))),new y(0,0));super(e,{points:n,point:s,lngLats:o,lngLat:t.unproject(s),originalEvent:i}),this._defaultPrevented=!1;}}class _S extends It{preventDefault(){this._defaultPrevented=!0;}get defaultPrevented(){return this._defaultPrevented}constructor(e,t,i){super(e,{originalEvent:i}),this._defaultPrevented=!1;}}class gS{constructor(e,t){this._map=e,this._clickTolerance=t.clickTolerance;}reset(){this._mousedownPos=void 0;}wheel(e){return this._firePreventable(new _S(e.type,this._map,e))}mousedown(e,t){return this._mousedownPos=t,this._firePreventable(new fS(e.type,this._map,e))}mouseup(e){this._map.fire(new fS(e.type,this._map,e));}preclick(e){const t=k({},e);t.type=\"preclick\",this._map.fire(new fS(t.type,this._map,t));}click(e,t){this._mousedownPos&&this._mousedownPos.dist(t)>=this._clickTolerance||(this.preclick(e),this._map.fire(new fS(e.type,this._map,e)));}dblclick(e){return this._firePreventable(new fS(e.type,this._map,e))}mouseover(e){this._map.fire(new fS(e.type,this._map,e));}mouseout(e){this._map.fire(new fS(e.type,this._map,e));}touchstart(e){return this._firePreventable(new mS(e.type,this._map,e))}touchmove(e){this._map.fire(new mS(e.type,this._map,e));}touchend(e){this._map.fire(new mS(e.type,this._map,e));}touchcancel(e){this._map.fire(new mS(e.type,this._map,e));}_firePreventable(e){if(this._map.fire(e),e.defaultPrevented)return {}}isEnabled(){return !0}isActive(){return !1}enable(){}disable(){}}class yS{constructor(e){this._map=e;}reset(){this._delayContextMenu=!1,this._contextMenuEvent=void 0;}mousemove(e){this._map.fire(new fS(e.type,this._map,e));}mousedown(){this._delayContextMenu=!0;}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new fS(\"contextmenu\",this._map,this._contextMenuEvent)),delete this._contextMenuEvent);}contextmenu(e){this._delayContextMenu?this._contextMenuEvent=e:this._map.fire(new fS(e.type,this._map,e)),this._map.listens(\"contextmenu\")&&e.preventDefault();}isEnabled(){return !0}isActive(){return !1}enable(){}disable(){}}class xS{constructor(e,t){this._map=e,this._el=e.getCanvasContainer(),this._container=e.getContainer(),this._clickTolerance=t.clickTolerance||1;}isEnabled(){return !!this._enabled}isActive(){return !!this._active}enable(){this.isEnabled()||(this._enabled=!0);}disable(){this.isEnabled()&&(this._enabled=!1);}mousedown(e,t){this.isEnabled()&&e.shiftKey&&0===e.button&&(yt(),this._startPos=this._lastPos=t,this._active=!0);}mousemoveWindow(e,t){if(!this._active)return;const i=t,r=this._startPos,n=this._lastPos;if(!r||!n||n.equals(i)||!this._box&&i.dist(r){this._box&&(this._box.style.transform=`translate(${o}px,${a}px)`,this._box.style.width=s-o+\"px\",this._box.style.height=l-a+\"px\");}));}mouseupWindow(e,t){if(!this._active)return;const i=this._startPos,r=t;if(i&&0===e.button){if(this.reset(),bt(),i.x!==r.x||i.y!==r.y)return this._map.fire(new It(\"boxzoomend\",{originalEvent:e})),{cameraAnimation:e=>e.fitScreenCoordinates(i,r,this._map.getBearing(),{linear:!1})};this._fireEvent(\"boxzoomcancel\",e);}}keydown(e){this._active&&27===e.keyCode&&(this.reset(),this._fireEvent(\"boxzoomcancel\",e));}blur(){this.reset();}reset(){this._active=!1,this._container.classList.remove(\"mapboxgl-crosshair\"),this._box&&(this._box.remove(),this._box=null),xt(),delete this._startPos,delete this._lastPos;}_fireEvent(e,t){return this._map.fire(new It(e,{originalEvent:t}))}}function vS(e,t){const i={};for(let r=0;rthis.numTouches)&&(this.aborted=!0),this.aborted||(0===this.startTime&&(this.startTime=e.timeStamp),i.length===this.numTouches&&(this.centroid=function(e){const t=new y(0,0);for(const i of e)t._add(i);return t.div(e.length)}(t),this.touches=vS(i,t)));}touchmove(e,t,i){if(this.aborted||!this.centroid)return;const r=vS(i,t);for(const e in this.touches){const t=r[e];(!t||t.dist(this.touches[e])>30)&&(this.aborted=!0);}}touchend(e,t,i){if((!this.centroid||e.timeStamp-this.startTime>500)&&(this.aborted=!0),0===i.length){const e=!this.aborted&&this.centroid;if(this.reset(),e)return e}}}class wS{constructor(e){this.singleTap=new bS(e),this.numTaps=e.numTaps,this.reset();}reset(){this.lastTime=1/0,this.lastTap=void 0,this.count=0,this.singleTap.reset();}touchstart(e,t,i){this.singleTap.touchstart(e,t,i);}touchmove(e,t,i){this.singleTap.touchmove(e,t,i);}touchend(e,t,i){const r=this.singleTap.touchend(e,t,i);if(r){const t=e.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(r)<30;if(t&&i||this.reset(),this.count++,this.lastTime=e.timeStamp,this.lastTap=r,this.count===this.numTaps)return this.reset(),r}}}class TS{constructor(){this._zoomIn=new wS({numTouches:1,numTaps:2}),this._zoomOut=new wS({numTouches:2,numTaps:1}),this.reset();}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset();}touchstart(e,t,i){this._zoomIn.touchstart(e,t,i),this._zoomOut.touchstart(e,t,i);}touchmove(e,t,i){this._zoomIn.touchmove(e,t,i),this._zoomOut.touchmove(e,t,i);}touchend(e,t,i){const r=this._zoomIn.touchend(e,t,i),n=this._zoomOut.touchend(e,t,i);return r?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()+1,around:t.unproject(r)},{originalEvent:e})}):n?(this._active=!0,e.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:t=>t.easeTo({duration:300,zoom:t.getZoom()-1,around:t.unproject(n)},{originalEvent:e})}):void 0}touchcancel(){this.reset();}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}const ES={0:1,2:2};class MS{constructor(e){this.reset(),this._clickTolerance=e.clickTolerance||1;}blur(){this.reset();}reset(){this._active=!1,this._moved=!1,this._lastPoint=void 0,this._eventButton=void 0;}_correctButton(e,t){return !1}_move(e,t){return {}}mousedown(e,t){if(this._lastPoint)return;const i=Et(e);this._correctButton(e,i)&&(this._lastPoint=t,this._eventButton=i);}mousemoveWindow(e,t){const i=this._lastPoint;if(i)if(e.preventDefault(),null!=this._eventButton&&function(e,t){const i=ES[t];return void 0===e.buttons||(e.buttons&i)!==i}(e,this._eventButton))this.reset();else if(this._moved||!(t.dist(i)0&&(this._active=!0);const r=vS(i,t),n=new y(0,0),o=new y(0,0);let s=0;for(const e in r){const t=r[e],i=this._touches[e];i&&(n._add(t),o._add(t.sub(i)),s++,r[e]=t);}if(this._touches=r,s{this._alertContainer.classList.remove(\"mapboxgl-touch-pan-blocker-show\"),this._alertContainer.setAttribute(\"role\",\"null\");}),500);}}class zS{constructor(){this.reset();}reset(){this._active=!1,this._firstTwoTouches=void 0;}_start(e){}_move(e,t,i){return {}}touchstart(e,t,i){this._firstTwoTouches||i.length<2||(this._firstTwoTouches=[i[0].identifier,i[1].identifier],this._start([t[0],t[1]]));}touchmove(e,t,i){const r=this._firstTwoTouches;if(!r)return;e.preventDefault();const[n,o]=r,s=PS(i,t,n),a=PS(i,t,o);if(!s||!a)return;const l=this._aroundCenter?null:s.add(a).div(2);return this._move([s,a],l,e)}touchend(e,t,i){if(!this._firstTwoTouches)return;const[r,n]=this._firstTwoTouches,o=PS(i,t,r),s=PS(i,t,n);o&&s||(this._active&&bt(),this.reset());}touchcancel(){this.reset();}enable(e){this._enabled=!0,this._aroundCenter=!!e&&\"center\"===e.around;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}function PS(e,t,i){for(let r=0;rMath.abs(e.x)}class BS extends zS{constructor(e){super(),this._map=e;}reset(){super.reset(),this._valid=void 0,this._firstMove=void 0,this._lastPoints=void 0;}_start(e){this._lastPoints=e,OS(e[0].sub(e[1]))&&(this._valid=!1);}_move(e,t,i){const r=this._lastPoints;if(!r)return;const n=e[0].sub(r[0]),o=e[1].sub(r[1]);return this._map._cooperativeGestures&&!ie()&&i.touches.length<3||(this._valid=this.gestureBeginsVertically(n,o,i.timeStamp),!this._valid)?void 0:(this._lastPoints=e,this._active=!0,{pitchDelta:(n.y+o.y)/2*-.5})}gestureBeginsVertically(e,t,i){if(void 0!==this._valid)return this._valid;const r=e.mag()>=2,n=t.mag()>=2;if(!r&&!n)return;if(!r||!n)return null==this._firstMove&&(this._firstMove=i),i-this._firstMove<100&&void 0;const o=e.y>0==t.y>0;return OS(e)&&OS(t)&&o}}const FS={panStep:100,bearingStep:15,pitchStep:10};class NS{constructor(){const e=FS;this._panStep=e.panStep,this._bearingStep=e.bearingStep,this._pitchStep=e.pitchStep,this._rotationDisabled=!1;}blur(){this.reset();}reset(){this._active=!1;}keydown(e){if(e.altKey||e.ctrlKey||e.metaKey)return;let t=0,i=0,r=0,n=0,o=0;switch(e.keyCode){case 61:case 107:case 171:case 187:t=1;break;case 189:case 109:case 173:t=-1;break;case 37:e.shiftKey?i=-1:(e.preventDefault(),n=-1);break;case 39:e.shiftKey?i=1:(e.preventDefault(),n=1);break;case 38:e.shiftKey?r=1:(e.preventDefault(),o=-1);break;case 40:e.shiftKey?r=-1:(e.preventDefault(),o=1);break;default:return}return this._rotationDisabled&&(i=0,r=0),{cameraAnimation:s=>{const a=s.getZoom();s.easeTo({duration:300,easeId:\"keyboardHandler\",easing:US,zoom:t?Math.round(a)+t*(e.shiftKey?2:1):a,bearing:s.getBearing()+i*this._bearingStep,pitch:s.getPitch()+r*this._pitchStep,offset:[-n*this._panStep,-o*this._panStep],center:s.getCenter()},{originalEvent:e});}}}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0;}enableRotation(){this._rotationDisabled=!1;}}function US(e){return e*(2-e)}const VS=4.000244140625;class jS{constructor(e,t){this._map=e,this._el=e.getCanvasContainer(),this._handler=t,this._delta=0,this._lastDelta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,j([\"_onTimeout\",\"_addScrollZoomBlocker\",\"_showBlockerAlert\"],this);}setZoomRate(e){this._defaultZoomRate=e;}setWheelZoomRate(e){this._wheelZoomRate=e;}isEnabled(){return !!this._enabled}isActive(){return this._active||void 0!==this._finishTimeout}isZooming(){return !!this._zooming}enable(e){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!e&&\"center\"===e.around,this._map._cooperativeGestures&&this._addScrollZoomBlocker());}disable(){this.isEnabled()&&(this._enabled=!1,this._map._cooperativeGestures&&(clearTimeout(this._alertTimer),this._alertContainer.remove()));}wheel(e){if(!this.isEnabled())return;if(this._map._cooperativeGestures){if(!(e.ctrlKey||e.metaKey||this.isZooming()||ie()))return void this._showBlockerAlert();\"hidden\"!==this._alertContainer.style.visibility&&(this._alertContainer.style.visibility=\"hidden\",clearTimeout(this._alertTimer));}let i=e.deltaMode===t.WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY;const r=dt.now(),n=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==i&&i%VS==0?this._type=\"wheel\":0!==i&&Math.abs(i)<4?this._type=\"trackpad\":n>400?(this._type=null,this._lastValue=i,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(n*i)<200?\"trackpad\":\"wheel\",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,i+=this._lastValue)),e.shiftKey&&i&&(i/=4),this._type&&(this._lastWheelEvent=e,this._delta-=i,this._active||this._start(e)),e.preventDefault();}_onTimeout(e){this._type=\"wheel\",this._delta-=this._lastValue,this._active||this._start(e);}_start(e){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const t=wt(this._el,e);this._aroundPoint=this._aroundCenter?this._map.transform.centerPoint:t,this._aroundCoord=this._map.transform.pointCoordinate3D(this._aroundPoint),this._targetZoom=void 0,this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame());}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const e=this._map.transform;\"wheel\"===this._type&&e.projection.wrap&&(e._center.lng>=180||e._center.lng<=-180)&&(this._prevEase=null,this._easing=null,this._lastWheelEvent=null,this._lastWheelEventTime=0);const t=()=>e._terrainEnabled()&&this._aroundCoord?e.computeZoomRelativeTo(this._aroundCoord):e.zoom;if(0!==this._delta){const i=\"wheel\"===this._type&&Math.abs(this._delta)>VS?this._wheelZoomRate:this._defaultZoomRate;let r=2/(1+Math.exp(-Math.abs(this._delta*i)));this._delta<0&&0!==r&&(r=1/r);const n=t(),o=Math.pow(2,n),s=\"number\"==typeof this._targetZoom?e.zoomScale(this._targetZoom):o;this._targetZoom=Math.min(e.maxZoom,Math.max(e.minZoom,e.scaleZoom(s*r))),\"wheel\"===this._type&&(this._startZoom=n,this._easing=this._smoothOutEasing(200)),this._lastDelta=this._delta,this._delta=0;}const i=\"number\"==typeof this._targetZoom?this._targetZoom:t(),r=this._startZoom,n=this._easing;let o,s=!1;if(\"wheel\"===this._type&&r&&n){const e=Math.min((dt.now()-this._lastWheelEventTime)/200,1);o=Kr(r,i,n(e)),e<1?this._frameId||(this._frameId=!0):s=!0;}else o=i,s=!0;this._active=!0,s&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._handler._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout;}),200));let a=o-t();return a*this._lastDelta<0&&(a=0),{noInertia:!0,needsRenderFrame:!s,zoomDelta:a,around:this._aroundPoint,aroundCoord:this._aroundCoord,originalEvent:this._lastWheelEvent}}_smoothOutEasing(e){let t=C;if(this._prevEase){const e=this._prevEase,i=(dt.now()-e.start)/e.duration,r=e.easing(i+.01)-e.easing(i),n=.27/Math.sqrt(r*r+1e-4)*.01;t=I(n,Math.sqrt(.0729-n*n),.25,1);}return this._prevEase={start:dt.now(),duration:e,easing:t},t}blur(){this.reset();}reset(){this._active=!1;}_addScrollZoomBlocker(){this._map&&!this._alertContainer&&(this._alertContainer=pt(\"div\",\"mapboxgl-scroll-zoom-blocker\",this._map._container),this._alertContainer.textContent=/(Mac|iPad)/i.test(t.navigator.userAgent)?this._map._getUIString(\"ScrollZoomBlocker.CmdMessage\"):this._map._getUIString(\"ScrollZoomBlocker.CtrlMessage\"),this._alertContainer.style.fontSize=`${Math.max(10,Math.min(24,Math.floor(.05*this._el.clientWidth)))}px`);}_showBlockerAlert(){this._alertContainer.style.visibility=\"visible\",this._alertContainer.classList.add(\"mapboxgl-scroll-zoom-blocker-show\"),this._alertContainer.setAttribute(\"role\",\"alert\"),clearTimeout(this._alertTimer),this._alertTimer=setTimeout((()=>{this._alertContainer.classList.remove(\"mapboxgl-scroll-zoom-blocker-show\"),this._alertContainer.setAttribute(\"role\",\"null\");}),200);}}class GS{constructor(e,t){this._clickZoom=e,this._tapZoom=t;}enable(){this._clickZoom.enable(),this._tapZoom.enable();}disable(){this._clickZoom.disable(),this._tapZoom.disable();}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class qS{constructor(){this.reset();}reset(){this._active=!1;}blur(){this.reset();}dblclick(e,t){return e.preventDefault(),{cameraAnimation:i=>{i.easeTo({duration:300,zoom:i.getZoom()+(e.shiftKey?-1:1),around:i.unproject(t)},{originalEvent:e});}}}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}class ZS{constructor(){this._tap=new wS({numTouches:1,numTaps:1}),this.reset();}reset(){this._active=!1,this._swipePoint=void 0,this._swipeTouch=0,this._tapTime=0,this._tap.reset();}touchstart(e,t,i){this._swipePoint||(this._tapTime&&e.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?i.length>0&&(this._swipePoint=t[0],this._swipeTouch=i[0].identifier):this._tap.touchstart(e,t,i));}touchmove(e,t,i){if(this._tapTime){if(this._swipePoint){if(i[0].identifier!==this._swipeTouch)return;const r=t[0],n=r.y-this._swipePoint.y;return this._swipePoint=r,e.preventDefault(),this._active=!0,{zoomDelta:n/128}}}else this._tap.touchmove(e,t,i);}touchend(e,t,i){this._tapTime?this._swipePoint&&0===i.length&&this.reset():this._tap.touchend(e,t,i)&&(this._tapTime=e.timeStamp);}touchcancel(){this.reset();}enable(){this._enabled=!0;}disable(){this._enabled=!1,this.reset();}isEnabled(){return this._enabled}isActive(){return this._active}}class $S{constructor(e,t,i){this._el=e,this._mousePan=t,this._touchPan=i;}enable(e){this._inertiaOptions=e||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add(\"mapboxgl-touch-drag-pan\");}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove(\"mapboxgl-touch-drag-pan\");}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class WS{constructor(e,t,i){this._pitchWithRotate=e.pitchWithRotate,this._mouseRotate=t,this._mousePitch=i;}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable();}disable(){this._mouseRotate.disable(),this._mousePitch.disable();}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class HS{constructor(e,t,i,r){this._el=e,this._touchZoom=t,this._touchRotate=i,this._tapDragZoom=r,this._rotationDisabled=!1,this._enabled=!0;}enable(e){this._touchZoom.enable(e),this._rotationDisabled||this._touchRotate.enable(e),this._tapDragZoom.enable(),this._el.classList.add(\"mapboxgl-touch-zoom-rotate\");}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove(\"mapboxgl-touch-zoom-rotate\");}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable();}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable();}}const XS=e=>e.zoom||e.drag||e.pitch||e.rotate;class YS extends It{}class KS{constructor(){this.constants=[1,1,.01],this.radius=0;}setup(e,t){const i=Du.sub([],t,e);this.radius=Du.length(i[2]<0?Du.div([],i,this.constants):[i[0],i[1],0]);}projectRay(e){Du.div(e,e,this.constants),Du.normalize(e,e),Du.mul(e,e,this.constants);const t=Du.scale([],e,this.radius);if(t[2]>0){const e=Du.scale([],[0,0,1],Du.dot(t,[0,0,1])),i=Du.scale([],Du.normalize([],[t[0],t[1],0]),this.radius),r=Du.add([],t,Du.scale([],Du.sub([],Du.add([],i,e),t),2));t[0]=r[0],t[1]=r[1];}return t}}function JS(e){return e.panDelta&&e.panDelta.mag()||e.zoomDelta||e.bearingDelta||e.pitchDelta}class QS{constructor(e,i){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new uS(e),this._bearingSnap=i.bearingSnap,this._previousActiveHandlers={},this._trackingEllipsoid=new KS,this._dragOrigin=null,this._eventsInProgress={},this._addDefaultHandlers(i),j([\"handleEvent\",\"handleWindowEvent\"],this);const r=this._el;this._listeners=[[r,\"touchstart\",{passive:!0}],[r,\"touchmove\",{passive:!1}],[r,\"touchend\",void 0],[r,\"touchcancel\",void 0],[r,\"mousedown\",void 0],[r,\"mousemove\",void 0],[r,\"mouseup\",void 0],[t.document,\"mousemove\",{capture:!0}],[t.document,\"mouseup\",void 0],[r,\"mouseover\",void 0],[r,\"mouseout\",void 0],[r,\"dblclick\",void 0],[r,\"click\",void 0],[r,\"keydown\",{capture:!1}],[r,\"keyup\",void 0],[r,\"wheel\",{passive:!1}],[r,\"contextmenu\",void 0],[t,\"blur\",void 0]];for(const[e,i,r]of this._listeners)e.addEventListener(i,e===t.document?this.handleWindowEvent:this.handleEvent,r);}destroy(){for(const[e,i,r]of this._listeners)e.removeEventListener(i,e===t.document?this.handleWindowEvent:this.handleEvent,r);}_addDefaultHandlers(e){const t=this._map,i=t.getCanvasContainer();this._add(\"mapEvent\",new gS(t,e));const r=t.boxZoom=new xS(t,e);this._add(\"boxZoom\",r);const n=new TS,o=new qS;t.doubleClickZoom=new GS(o,n),this._add(\"tapZoom\",n),this._add(\"clickZoom\",o);const s=new ZS;this._add(\"tapDragZoom\",s);const a=t.touchPitch=new BS(t);this._add(\"touchPitch\",a);const l=new SS(e),c=new IS(e);t.dragRotate=new WS(e,l,c),this._add(\"mouseRotate\",l,[\"mousePitch\"]),this._add(\"mousePitch\",c,[\"mouseRotate\"]);const h=new AS(e),u=new CS(t,e);t.dragPan=new $S(i,h,u),this._add(\"mousePan\",h),this._add(\"touchPan\",u,[\"touchZoom\",\"touchRotate\"]);const d=new kS,p=new RS;t.touchZoomRotate=new HS(i,p,d,s),this._add(\"touchRotate\",d,[\"touchPan\",\"touchZoom\"]),this._add(\"touchZoom\",p,[\"touchPan\",\"touchRotate\"]),this._add(\"blockableMapEvent\",new yS(t));const f=t.scrollZoom=new jS(t,this);this._add(\"scrollZoom\",f,[\"mousePan\"]);const m=t.keyboard=new NS;this._add(\"keyboard\",m);for(const i of [\"boxZoom\",\"doubleClickZoom\",\"tapDragZoom\",\"touchPitch\",\"dragRotate\",\"dragPan\",\"touchZoomRotate\",\"scrollZoom\",\"keyboard\"])e.interactive&&e[i]&&t[i].enable(e[i]);}_add(e,t,i){this._handlers.push({handlerName:e,handler:t,allowed:i}),this._handlersById[e]=t;}stop(e){if(!this._updatingCamera){for(const{handler:e}of this._handlers)e.reset();this._inertia.clear(),this._fireEvents({},{},e),this._changes=[],this._originalZoom=void 0;}}isActive(){for(const{handler:e}of this._handlers)if(e.isActive())return !0;return !1}isZooming(){return !!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return !!this._eventsInProgress.rotate}isMoving(){return !!XS(this._eventsInProgress)||this.isZooming()}_isDragging(){return !!this._eventsInProgress.drag}_blockedByActive(e,t,i){for(const r in e)if(r!==i&&(!t||t.indexOf(r)<0))return !0;return !1}handleWindowEvent(e){this.handleEvent(e,`${e.type}Window`);}_getMapTouches(e){const t=[];for(const i of e)this._el.contains(i.target)&&t.push(i);return t}handleEvent(e,t){this._updatingCamera=!0;const i=\"renderFrame\"===e.type,r=i?void 0:e,n={needsRenderFrame:!1},o={},s={},a=e.touches?this._getMapTouches(e.touches):void 0,l=a?Tt(this._el,a):i?void 0:wt(this._el,e);for(const{handlerName:i,handler:c,allowed:h}of this._handlers){if(!c.isEnabled())continue;let u;this._blockedByActive(s,h,i)?c.reset():c[t||e.type]&&(u=c[t||e.type](e,l,a),this.mergeHandlerResult(n,o,u,i,r),u&&u.needsRenderFrame&&this._triggerRenderFrame()),(u||c.isActive())&&(s[i]=c);}const c={};for(const e in this._previousActiveHandlers)s[e]||(c[e]=r);this._previousActiveHandlers=s,(Object.keys(c).length||JS(n))&&(this._changes.push([n,o,c]),this._triggerRenderFrame()),(Object.keys(s).length||JS(n))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:h}=n;h&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],h(this._map));}mergeHandlerResult(e,t,i,r,n){if(!i)return;k(e,i);const o={handlerName:r,originalEvent:i.originalEvent||n};void 0!==i.zoomDelta&&(t.zoom=o),void 0!==i.panDelta&&(t.drag=o),void 0!==i.pitchDelta&&(t.pitch=o),void 0!==i.bearingDelta&&(t.rotate=o);}_applyChanges(){const e={},t={},i={};for(const[r,n,o]of this._changes)r.panDelta&&(e.panDelta=(e.panDelta||new y(0,0))._add(r.panDelta)),r.zoomDelta&&(e.zoomDelta=(e.zoomDelta||0)+r.zoomDelta),r.bearingDelta&&(e.bearingDelta=(e.bearingDelta||0)+r.bearingDelta),r.pitchDelta&&(e.pitchDelta=(e.pitchDelta||0)+r.pitchDelta),void 0!==r.around&&(e.around=r.around),void 0!==r.aroundCoord&&(e.aroundCoord=r.aroundCoord),void 0!==r.pinchAround&&(e.pinchAround=r.pinchAround),r.noInertia&&(e.noInertia=r.noInertia),k(t,n),k(i,o);this._updateMapTransform(e,t,i),this._changes=[];}_updateMapTransform(e,t,i){const r=this._map,n=r.transform,o=e=>[e.x,e.y,e.z];if((e=>{const t=this._eventsInProgress.drag;return t&&!this._handlersById[t.handlerName].isActive()})()&&!JS(e)){const e=n.zoom;n.cameraElevationReference=\"sea\",null!=this._originalZoom&&n._orthographicProjectionAtLowPitch&&\"globe\"!==n.projection.name&&0===n.pitch?(n.cameraElevationReference=\"ground\",n.zoom=this._originalZoom):(n.recenterOnTerrain(),n.cameraElevationReference=\"ground\"),e!==n.zoom&&this._map._update(!0);}if(n._isCameraConstrained&&r._stop(!0),!JS(e))return void this._fireEvents(t,i,!0);let{panDelta:s,zoomDelta:a,bearingDelta:l,pitchDelta:c,around:h,aroundCoord:u,pinchAround:d}=e;n._isCameraConstrained&&(a>0&&(a=0),n._isCameraConstrained=!1),void 0!==d&&(h=d),(a||(e=>t[e]&&!this._eventsInProgress[e])(\"drag\"))&&h&&(this._dragOrigin=o(n.pointCoordinate3D(h)),this._originalZoom=n.zoom,this._trackingEllipsoid.setup(n._camera.position,this._dragOrigin)),n.cameraElevationReference=\"sea\",r._stop(!0),h=h||r.transform.centerPoint,l&&(n.bearing+=l),c&&(n.pitch+=c),n._updateCameraState();const p=[0,0,0];if(s)if(\"mercator\"===n.projection.name){const e=this._trackingEllipsoid.projectRay(n.screenPointToMercatorRay(h).dir),t=this._trackingEllipsoid.projectRay(n.screenPointToMercatorRay(h.sub(s)).dir);p[0]=t[0]-e[0],p[1]=t[1]-e[1];}else {const e=n.pointCoordinate(h);if(\"globe\"===n.projection.name){s=s.rotate(-n.angle);const t=n._pixelsPerMercatorPixel/n.worldSize;p[0]=-s.x*sp(tp(e.y))*t,p[1]=-s.y*sp(n.center.lat)*t;}else {const t=n.pointCoordinate(h.sub(s));e&&t&&(p[0]=t.x-e.x,p[1]=t.y-e.y);}}const f=n.zoom,m=[0,0,0];if(a){const e=o(u||n.pointCoordinate3D(h)),t={dir:Du.normalize([],Du.sub([],e,n._camera.position))};if(t.dir[2]<0){const i=n.zoomDeltaToMovement(e,a);Du.scale(m,t.dir,i);}}const _=Du.add(p,p,m);n._translateCameraConstrained(_),a&&Math.abs(n.zoom-f)>1e-4&&n.recenterOnTerrain(),n.cameraElevationReference=\"ground\",this._map._update(),e.noInertia||this._inertia.record(e),this._fireEvents(t,i,!0);}_fireEvents(e,t,i){const r=XS(this._eventsInProgress),n=XS(e),o={};for(const t in e){const{originalEvent:i}=e[t];this._eventsInProgress[t]||(o[`${t}start`]=i),this._eventsInProgress[t]=e[t];}!r&&n&&this._fireEvent(\"movestart\",n.originalEvent);for(const e in o)this._fireEvent(e,o[e]);n&&this._fireEvent(\"move\",n.originalEvent);for(const t in e){const{originalEvent:i}=e[t];this._fireEvent(t,i);}const s={};let a;for(const e in this._eventsInProgress){const{handlerName:i,originalEvent:r}=this._eventsInProgress[e];this._handlersById[i].isActive()||(delete this._eventsInProgress[e],a=t[i]||r,s[`${e}end`]=a);}for(const e in s)this._fireEvent(e,s[e]);const l=XS(this._eventsInProgress);if(i&&(r||n)&&!l){this._updatingCamera=!0;const e=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),t=e=>0!==e&&-this._bearingSnap{this._frameId=void 0,this.handleEvent(new YS(\"renderFrame\",{timeStamp:e})),this._applyChanges();}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame());}}const eI=\"map.setFreeCameraOptions(...) and map.getFreeCameraOptions() are not yet supported for non-mercator projections.\";class tI extends zt{constructor(e,t){super(),this._moving=!1,this._zooming=!1,this.transform=e,this._bearingSnap=t.bearingSnap,this._respectPrefersReducedMotion=!1!==t.respectPrefersReducedMotion,j([\"_renderFrameCallback\"],this);}getCenter(){return new Wd(this.transform.center.lng,this.transform.center.lat)}setCenter(e,t){return this.jumpTo({center:e},t)}panBy(e,t,i){return e=y.convert(e).mult(-1),this.panTo(this.transform.center,k({offset:e},t),i)}panTo(e,t,i){return this.easeTo(k({center:e},t),i)}getZoom(){return this.transform.zoom}setZoom(e,t){return this.jumpTo({zoom:e},t),this}zoomTo(e,t,i){return this.easeTo(k({zoom:e},t),i)}zoomIn(e,t){return this.zoomTo(this.getZoom()+1,e,t),this}zoomOut(e,t){return this.zoomTo(this.getZoom()-1,e,t),this}getBearing(){return this.transform.bearing}setBearing(e,t){return this.jumpTo({bearing:e},t),this}getPadding(){return this.transform.padding}setPadding(e,t){return this.jumpTo({padding:e},t),this}rotateTo(e,t,i){return this.easeTo(k({bearing:e},t),i)}resetNorth(e,t){return this.rotateTo(0,k({duration:1e3},e),t),this}resetNorthPitch(e,t){return this.easeTo(k({bearing:0,pitch:0,duration:1e3},e),t),this}snapToNorth(e,t){return Math.abs(this.getBearing())e.aspect?i/(2*Math.tan(.5*e.fovX)*e.aspect):r/(2*Math.tan(.5*e.fovY)*e.aspect)}_cameraForBoundsOnGlobe(e,t,i,r,n,o){const s=e.clone(),a=this._extendCameraOptions(o);s.bearing=r,s.pitch=n;const l=Wd.convert(t),c=Wd.convert(i),h=.5*(l.lat+c.lat),u=.5*(l.lng+c.lng),d=wd(h,u),p=Du.normalize([],d),f=Du.normalize([],Du.cross([],p,[0,1,0])),m=Du.cross([],f,p),_=[f[0],f[1],f[2],0,m[0],m[1],m[2],0,p[0],p[1],p[2],0,0,0,0,1],g=[d,wd(l.lat,l.lng),wd(c.lat,l.lng),wd(c.lat,c.lng),wd(l.lat,c.lng),wd(h,l.lng),wd(h,c.lng),wd(l.lat,u),wd(c.lat,u)];let y=ed.fromPoints(g.map((e=>[Du.dot(f,e),Du.dot(m,e),Du.dot(p,e)])));const x=Du.transformMat4([],y.center,_);0===Du.squaredLength(x)&&Du.set(x,0,0,1),Du.normalize(x,x),Du.scale(x,x,rd),s.center=function([e,t,i]){const r=Math.hypot(e,t,i),n=Math.atan2(e,i),o=.5*Math.PI-Math.acos(-t/r);return new Wd(T(n),T(o))}(x);const v=s.getWorldToCameraMatrix(),b=Au.invert(new Float64Array(16),v);y=ed.applyTransform(y,Au.multiply([],v,_)),Du.transformMat4(x,x,v);const w=.5*(y.max[2]-y.min[2]),E=this._minimumAABBFrustumDistance(s,y),M=Du.scale([],[0,0,1],w),A=Du.add(M,x,M),S=E+(0===s.pitch?0:Du.distance(x,A)),I=s.globeCenterInViewSpace,C=Du.sub([],x,[I[0],I[1],I[2]]);Du.normalize(C,C),Du.scale(C,C,S);const z=Du.add([],x,C);Du.transformMat4(z,z,b);const P=qd/rd,D=Du.length(z),R=Qd(Math.max(D*P-qd,Number.EPSILON),0),L=Math.min(s.zoomFromMercatorZAdjusted(R),a.maxZoom);return L>.5*(td+id)?(s.setProjection({name:\"mercator\"}),s.zoom=L,this._cameraForBounds(s,t,i,r,n,o)):{center:s.center,zoom:L,bearing:r,pitch:n}}queryTerrainElevation(e,t){const i=this.transform.elevation;return i?(t=k({},{exaggerated:!0},t),i.getAtPoint(lp.fromLngLat(e),null,t.exaggerated)):null}_cameraForBounds(e,t,i,r,n,o){if(\"globe\"===e.projection.name)return this._cameraForBoundsOnGlobe(e,t,i,r,n,o);const s=e.clone(),a=this._extendCameraOptions(o),l=s.padding;s.bearing=r,s.pitch=n;const c=Wd.convert(t),h=Wd.convert(i),u=new Wd(c.lng,h.lat),d=new Wd(h.lng,c.lat),p=s.project(c),f=s.project(h),m=this.queryTerrainElevation(c),_=this.queryTerrainElevation(h),g=this.queryTerrainElevation(u),x=this.queryTerrainElevation(d),v=[[p.x,p.y,Math.min(m||0,_||0,g||0,x||0)],[f.x,f.y,Math.max(m||0,_||0,g||0,x||0)]];let b=ed.fromPoints(v);const T=s.getWorldToCameraMatrix(),E=Au.invert(new Float64Array(16),T);b=ed.applyTransform(b,T);const M=Du.sub([],b.max,b.min),A=l.left||0,S=l.right||0,I=l.bottom||0,C=l.top||0,{left:z,right:P,top:D,bottom:R}=a.padding,L=.5*(A+S),k=.5*(C+I),O=Math.min(s.scaleZoom(s.scale*Math.min((s.width-(A+S+z+P))/M[0],(s.height-(I+C+R+D))/M[1])),a.maxZoom),B=s.scale/s.zoomScale(O);b=new ed([b.min[0]-(z+L)*B,b.min[1]-(R+k)*B,b.min[2]],[b.max[0]+(P+L)*B,b.max[1]+(D+k)*B,b.max[2]]);const F=.5*M[2],N=this._minimumAABBFrustumDistance(s,b),U=[0,0,1,0];yu.transformMat4(U,U,T),yu.normalize(U,U);const V=Du.scale([],U,N+F),j=Du.add([],b.center,V),G=(\"number\"==typeof a.offset.x&&\"number\"==typeof a.offset.y?new y(a.offset.x,a.offset.y):y.convert(a.offset)).rotate(-w(r));b.center[0]-=G.x*B,b.center[1]+=G.y*B,Du.transformMat4(b.center,b.center,E),Du.transformMat4(j,j,E);const q=[b.center[0],b.center[1],j[2]*s.pixelsPerMeter];Du.scale(q,q,1/s.worldSize);const Z=ep(q[0]),$=tp(q[1]),W=Math.min(s._zoomFromMercatorZ(q[2]),a.maxZoom),H=new Wd(Z,$);return s.mercatorFromTransition&&W<.5*(td+id)?(s.setProjection({name:\"globe\"}),s.zoom=W,this._cameraForBounds(s,t,i,r,n,o)):{center:H,zoom:W,bearing:r,pitch:n}}fitBounds(e,t,i){const r=this.cameraForBounds(e,t);return this._fitInternal(r,t,i)}fitScreenCoordinates(e,t,i,r,n){const o=y.convert(e),s=y.convert(t),a=new y(Math.min(o.x,s.x),Math.min(o.y,s.y)),l=new y(Math.max(o.x,s.x),Math.max(o.y,s.y));if(\"mercator\"===this.transform.projection.name&&this.transform.anyCornerOffEdge(o,s))return this;const c=this.transform.pointLocation3D(a),h=this.transform.pointLocation3D(l),u=this.transform.pointLocation3D(new y(a.x,l.y)),d=this.transform.pointLocation3D(new y(l.x,a.y)),p=[Math.min(c.lng,h.lng,u.lng,d.lng),Math.min(c.lat,h.lat,u.lat,d.lat)],f=[Math.max(c.lng,h.lng,u.lng,d.lng),Math.max(c.lat,h.lat,u.lat,d.lat)],m=r&&r.pitch?r.pitch:this.getPitch(),_=this._cameraForBounds(this.transform,p,f,i,m,r);return this._fitInternal(_,r,n)}_fitInternal(e,t,i){return e?(delete(t=k(e,t)).padding,t.linear?this.easeTo(t,i):this.flyTo(t,i)):this}jumpTo(e,t){this.stop();const i=e.preloadOnly?this.transform.clone():this.transform;let r=!1,n=!1,o=!1;return \"zoom\"in e&&i.zoom!==+e.zoom&&(r=!0,i.zoom=+e.zoom),void 0!==e.center&&(i.center=Wd.convert(e.center)),\"bearing\"in e&&i.bearing!==+e.bearing&&(n=!0,i.bearing=+e.bearing),\"pitch\"in e&&i.pitch!==+e.pitch&&(o=!0,i.pitch=+e.pitch),null==e.padding||i.isPaddingEqual(e.padding)||(i.padding=e.padding),e.preloadOnly?(this._preloadTiles(i),this):(this.fire(new It(\"movestart\",t)).fire(new It(\"move\",t)),r&&this.fire(new It(\"zoomstart\",t)).fire(new It(\"zoom\",t)).fire(new It(\"zoomend\",t)),n&&this.fire(new It(\"rotatestart\",t)).fire(new It(\"rotate\",t)).fire(new It(\"rotateend\",t)),o&&this.fire(new It(\"pitchstart\",t)).fire(new It(\"pitch\",t)).fire(new It(\"pitchend\",t)),this.fire(new It(\"moveend\",t)))}getFreeCameraOptions(){return this.transform.projection.supportsFreeCamera||H(eI),this.transform.getFreeCameraOptions()}setFreeCameraOptions(e,t){const i=this.transform;if(!i.projection.supportsFreeCamera)return H(eI),this;this.stop();const r=i.zoom,n=i.pitch,o=i.bearing;i.setFreeCameraOptions(e);const s=r!==i.zoom,a=n!==i.pitch,l=o!==i.bearing;return this.fire(new It(\"movestart\",t)).fire(new It(\"move\",t)),s&&this.fire(new It(\"zoomstart\",t)).fire(new It(\"zoom\",t)).fire(new It(\"zoomend\",t)),l&&this.fire(new It(\"rotatestart\",t)).fire(new It(\"rotate\",t)).fire(new It(\"rotateend\",t)),a&&this.fire(new It(\"pitchstart\",t)).fire(new It(\"pitch\",t)).fire(new It(\"pitchend\",t)),this.fire(new It(\"moveend\",t)),this}easeTo(e,t){this._stop(!1,e.easeId),(!1===(e=k({offset:[0,0],duration:500,easing:C},e)).animate||this._prefersReducedMotion(e))&&(e.duration=0);const i=this.transform,r=this.getZoom(),n=this.getBearing(),o=this.getPitch(),s=this.getPadding(),a=\"zoom\"in e?+e.zoom:r,l=\"bearing\"in e?this._normalizeBearing(e.bearing,n):n,c=\"pitch\"in e?+e.pitch:o,h=\"padding\"in e?e.padding:i.padding,u=y.convert(e.offset);let d,p,f;if(\"globe\"===i.projection.name){const t=lp.fromLngLat(i.center),r=u.rotate(-i.angle);t.x+=r.x/i.worldSize,t.y+=r.y/i.worldSize;const n=t.toLngLat(),o=Wd.convert(e.center||n);this._normalizeCenter(o),d=i.centerPoint.add(r),p=new y(t.x,t.y).mult(i.worldSize),f=new y(Kd(o.lng),Jd(o.lat)).mult(i.worldSize).sub(p);}else {d=i.centerPoint.add(u);const t=i.pointLocation(d),r=Wd.convert(e.center||t);this._normalizeCenter(r),p=i.project(t),f=i.project(r).sub(p);}const m=i.zoomScale(a-r);let _,g;e.around&&(_=Wd.convert(e.around),g=i.locationPoint(_));const x=this._zooming||a!==r,v=this._rotating||n!==l,b=this._pitching||c!==o,w=!i.isPaddingEqual(h),T=i=>y=>{if(x&&(i.zoom=Kr(r,a,y)),v&&(i.bearing=Kr(n,l,y)),b&&(i.pitch=Kr(o,c,y)),w&&(i.interpolatePadding(s,h,y),d=i.centerPoint.add(u)),_)i.setLocationAtPoint(_,g);else {const e=i.zoomScale(i.zoom-r),t=a>r?Math.min(2,m):Math.max(.5,m),n=Math.pow(t,1-y),o=i.unproject(p.add(f.mult(y*n)).mult(e));i.setLocationAtPoint(i.renderWorldCopies?o.wrap():o,d);}return e.preloadOnly||this._fireMoveEvents(t),i};if(e.preloadOnly){const t=this._emulate(T,e.duration,i);return this._preloadTiles(t),this}const E={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=x,this._rotating=v,this._pitching=b,this._padding=w,this._easeId=e.easeId,this._prepareEase(t,e.noMoveStart,E),this._ease(T(i),(e=>{\"sea\"===i.cameraElevationReference&&i.recenterOnTerrain(),this._afterEase(t,e);}),e),this}_prepareEase(e,t,i={}){this._moving=!0,this.transform.cameraElevationReference=\"sea\",this.transform._orthographicProjectionAtLowPitch&&0===this.transform.pitch&&\"globe\"!==this.transform.projection.name&&(this.transform.cameraElevationReference=\"ground\"),t||i.moving||this.fire(new It(\"movestart\",e)),this._zooming&&!i.zooming&&this.fire(new It(\"zoomstart\",e)),this._rotating&&!i.rotating&&this.fire(new It(\"rotatestart\",e)),this._pitching&&!i.pitching&&this.fire(new It(\"pitchstart\",e));}_fireMoveEvents(e){this.fire(new It(\"move\",e)),this._zooming&&this.fire(new It(\"zoom\",e)),this._rotating&&this.fire(new It(\"rotate\",e)),this._pitching&&this.fire(new It(\"pitch\",e));}_afterEase(e,t){if(this._easeId&&t&&this._easeId===t)return;this._easeId=void 0,this.transform.cameraElevationReference=\"ground\";const i=this._zooming,r=this._rotating,n=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,i&&this.fire(new It(\"zoomend\",e)),r&&this.fire(new It(\"rotateend\",e)),n&&this.fire(new It(\"pitchend\",e)),this.fire(new It(\"moveend\",e));}flyTo(e,t){if(this._prefersReducedMotion(e)){const i=O(e,[\"center\",\"zoom\",\"bearing\",\"pitch\",\"around\"]);return this.jumpTo(i,t)}this.stop(),e=k({offset:[0,0],speed:1.2,curve:1.42,easing:C},e);const i=this.transform,r=this.getZoom(),n=this.getBearing(),o=this.getPitch(),s=this.getPadding(),a=\"zoom\"in e?z(+e.zoom,i.minZoom,i.maxZoom):r,l=\"bearing\"in e?this._normalizeBearing(e.bearing,n):n,c=\"pitch\"in e?+e.pitch:o,h=\"padding\"in e?e.padding:i.padding,u=i.zoomScale(a-r),d=y.convert(e.offset);let p=i.centerPoint.add(d);const f=i.pointLocation(p),m=Wd.convert(e.center||f);this._normalizeCenter(m);const _=i.project(f),g=i.project(m).sub(_);let x=e.curve;const v=Math.max(i.width,i.height),b=v/u,w=g.mag();if(\"minZoom\"in e){const t=z(Math.min(e.minZoom,r,a),i.minZoom,i.maxZoom),n=v/i.zoomScale(t-r);x=Math.sqrt(n/w*2);}const T=x*x;function E(e){const t=(b*b-v*v+(e?-1:1)*T*T*w*w)/(2*(e?b:v)*T*w);return Math.log(Math.sqrt(t*t+1)-t)}function M(e){return (Math.exp(e)-Math.exp(-e))/2}function A(e){return (Math.exp(e)+Math.exp(-e))/2}const S=E(0);let I=function(e){return A(S)/A(S+x*e)},P=function(e){return v*((A(S)*(M(t=S+x*e)/A(t))-M(S))/T)/w;var t;},D=(E(1)-S)/x;if(Math.abs(w)<1e-6||!isFinite(D)){if(Math.abs(v-b)<1e-6)return this.easeTo(e,t);const i=be.maxDuration&&(e.duration=0);const R=n!==l,L=c!==o,B=!i.isPaddingEqual(h),F=i=>u=>{const f=u*D,y=1/I(f);i.zoom=1===u?a:r+i.scaleZoom(y),R&&(i.bearing=Kr(n,l,u)),L&&(i.pitch=Kr(o,c,u)),B&&(i.interpolatePadding(s,h,u),p=i.centerPoint.add(d));const x=1===u?m:i.unproject(_.add(g.mult(P(f))).mult(y));return i.setLocationAtPoint(i.renderWorldCopies?x.wrap():x,p),i._updateCameraOnTerrain(),e.preloadOnly||this._fireMoveEvents(t),i};if(e.preloadOnly){const t=this._emulate(F,e.duration,i);return this._preloadTiles(t),this}return this._zooming=!0,this._rotating=R,this._pitching=L,this._padding=B,this._prepareEase(t,!1),this._ease(F(i),(()=>this._afterEase(t)),e),this}isEasing(){return !!this._easeFrameId}stop(){return this._stop()}_stop(e,t){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),this._easeFrameId=void 0,this._onEaseFrame=void 0),this._onEaseEnd){const e=this._onEaseEnd;this._onEaseEnd=void 0,e.call(this,t);}if(!e){const e=this.handlers;e&&e.stop(!1);}return this}_ease(e,t,i){!1===i.animate||0===i.duration?(e(1),t()):(this._easeStart=dt.now(),this._easeOptions=i,this._onEaseFrame=e,this._onEaseEnd=t,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback));}_renderFrameCallback(){const e=Math.min((dt.now()-this._easeStart)/this._easeOptions.duration,1),t=this._onEaseFrame;t&&t(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop();}_normalizeBearing(e,t){e=D(e,-180,180);const i=Math.abs(e-t);return Math.abs(e-360-t)180?-360:i<-180?360:0;}_prefersReducedMotion(e){return this._respectPrefersReducedMotion&&dt.prefersReducedMotion&&!(e&&e.essential)}_emulate(e,t,i){const r=Math.ceil(15*t/1e3),n=[],o=e(i.clone());for(let e=0;e<=r;e++){const t=o(e/r);n.push(t.clone());}return n}}class iI{constructor(e={}){this.options=e,j([\"_toggleAttribution\",\"_updateEditLink\",\"_updateData\",\"_updateCompact\"],this);}getDefaultPosition(){return \"bottom-right\"}onAdd(e){const t=this.options&&this.options.compact;return this._map=e,this._container=pt(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-attrib\"),this._compactButton=pt(\"button\",\"mapboxgl-ctrl-attrib-button\",this._container),pt(\"span\",\"mapboxgl-ctrl-icon\",this._compactButton).setAttribute(\"aria-hidden\",\"true\"),this._compactButton.type=\"button\",this._compactButton.addEventListener(\"click\",this._toggleAttribution),this._setElementTitle(this._compactButton,\"ToggleAttribution\"),this._innerContainer=pt(\"div\",\"mapboxgl-ctrl-attrib-inner\",this._container),t&&this._container.classList.add(\"mapboxgl-compact\"),this._updateAttributions(),this._updateEditLink(),this._map.on(\"styledata\",this._updateData),this._map.on(\"sourcedata\",this._updateData),this._map.on(\"moveend\",this._updateEditLink),void 0===t&&(this._map.on(\"resize\",this._updateCompact),this._updateCompact()),this._container}onRemove(){this._container.remove(),this._map.off(\"styledata\",this._updateData),this._map.off(\"sourcedata\",this._updateData),this._map.off(\"moveend\",this._updateEditLink),this._map.off(\"resize\",this._updateCompact),this._map=void 0,this._attribHTML=void 0;}_setElementTitle(e,t){const i=this._map._getUIString(`AttributionControl.${t}`);e.removeAttribute(\"title\"),e.firstElementChild&&e.firstElementChild.setAttribute(\"title\",i);}_toggleAttribution(){this._container.classList.contains(\"mapboxgl-compact-show\")?(this._container.classList.remove(\"mapboxgl-compact-show\"),this._compactButton.setAttribute(\"aria-expanded\",\"false\")):(this._container.classList.add(\"mapboxgl-compact-show\"),this._compactButton.setAttribute(\"aria-expanded\",\"true\"));}_updateEditLink(){let e=this._editLink;e||(e=this._editLink=this._container.querySelector(\".mapbox-improve-map\"));const t=[{key:\"owner\",value:this.styleOwner},{key:\"id\",value:this.styleId},{key:\"access_token\",value:this._map._requestManager._customAccessToken||n.ACCESS_TOKEN}];if(e){const i=t.reduce(((e,i,r)=>(i.value&&(e+=`${i.key}=${i.value}${re.length-t.length)),e=e.filter(((t,i)=>{for(let r=i+1;r=0)return !1;return !0})),this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?e=[...this.options.customAttribution,...e]:e.unshift(this.options.customAttribution));const i=e.join(\" | \");i!==this._attribHTML&&(this._attribHTML=i,e.length?(this._innerContainer.innerHTML=i,this._container.classList.remove(\"mapboxgl-attrib-empty\")):this._container.classList.add(\"mapboxgl-attrib-empty\"),this._editLink=null);}_updateCompact(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add(\"mapboxgl-compact\"):this._container.classList.remove(\"mapboxgl-compact\",\"mapboxgl-compact-show\");}}class rI{constructor(){j([\"_updateLogo\",\"_updateCompact\"],this);}onAdd(e){this._map=e,this._container=pt(\"div\",\"mapboxgl-ctrl\");const t=pt(\"a\",\"mapboxgl-ctrl-logo\");return t.target=\"_blank\",t.rel=\"noopener nofollow\",t.href=\"https://www.mapbox.com/\",t.setAttribute(\"aria-label\",this._map._getUIString(\"LogoControl.Title\")),t.setAttribute(\"rel\",\"noopener nofollow\"),this._container.appendChild(t),this._container.style.display=\"none\",this._map.on(\"sourcedata\",this._updateLogo),this._updateLogo(),this._map.on(\"resize\",this._updateCompact),this._updateCompact(),this._container}onRemove(){this._container.remove(),this._map.off(\"sourcedata\",this._updateLogo),this._map.off(\"resize\",this._updateCompact);}getDefaultPosition(){return \"bottom-left\"}_updateLogo(e){e&&\"metadata\"!==e.sourceDataType||(this._container.style.display=this._logoRequired()?\"block\":\"none\");}_logoRequired(){if(!this._map.style)return !0;const e=this._map.style._sourceCaches;if(0===Object.entries(e).length)return !0;for(const t in e){const i=e[t].getSource();if(i.hasOwnProperty(\"mapbox_logo\")&&!i.mapbox_logo)return !1}return !0}_updateCompact(){const e=this._container.children;if(e.length){const t=e[0];this._map.getCanvasContainer().offsetWidth<250?t.classList.add(\"mapboxgl-compact\"):t.classList.remove(\"mapboxgl-compact\");}}}class nI{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1;}add(e){const t=++this._id;return this._queue.push({callback:e,id:t,cancelled:!1}),t}remove(e){const t=this._currentlyRunning,i=t?this._queue.concat(t):this._queue;for(const t of i)if(t.id===e)return void(t.cancelled=!0)}run(e=0){const t=this._currentlyRunning=this._queue;this._queue=[];for(const i of t)if(!i.cancelled&&(i.callback(e),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1;}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[];}}function oI(e,t,i){if(e=new Wd(e.lng,e.lat),t){const r=new Wd(e.lng-360,e.lat),n=new Wd(e.lng+360,e.lat),o=360*Math.ceil(Math.abs(e.lng-i.center.lng)/360),s=i.locationPoint(e).distSqr(t),a=t.x<0||t.y<0||t.x>i.width||t.y>i.height;i.locationPoint(r).distSqr(t)180;){const t=i.locationPoint(e);if(t.x>=0&&t.y>=0&&t.x<=i.width&&t.y<=i.height)break;e.lng>i.center.lng?e.lng-=360:e.lng+=360;}return e}const sI={center:\"translate(-50%,-50%)\",top:\"translate(-50%,0)\",\"top-left\":\"translate(0,0)\",\"top-right\":\"translate(-100%,0)\",bottom:\"translate(-50%,-100%)\",\"bottom-left\":\"translate(0,-100%)\",\"bottom-right\":\"translate(-100%,-100%)\",left:\"translate(0,-50%)\",right:\"translate(-100%,-50%)\"};class aI extends zt{constructor(e,i){if(super(),(e instanceof t.HTMLElement||i)&&(e=k({element:e},i)),j([\"_update\",\"_onMove\",\"_onUp\",\"_addDragHandler\",\"_onMapClick\",\"_onKeyPress\",\"_clearFadeTimer\"],this),this._anchor=e&&e.anchor||\"center\",this._color=e&&e.color||\"#3FB1CE\",this._scale=e&&e.scale||1,this._draggable=e&&e.draggable||!1,this._clickTolerance=e&&e.clickTolerance||0,this._isDragging=!1,this._state=\"inactive\",this._rotation=e&&e.rotation||0,this._rotationAlignment=e&&e.rotationAlignment||\"auto\",this._pitchAlignment=e&&e.pitchAlignment&&e.pitchAlignment||\"auto\",this._updateMoving=()=>this._update(!0),this._occludedOpacity=e&&e.occludedOpacity||.2,e&&e.element)this._element=e.element,this._offset=y.convert(e&&e.offset||[0,0]);else {this._defaultMarker=!0,this._element=pt(\"div\");const t=41,i=27,r=ft(\"svg\",{display:\"block\",height:t*this._scale+\"px\",width:i*this._scale+\"px\",viewBox:`0 0 ${i} ${t}`},this._element),n=ft(\"radialGradient\",{id:\"shadowGradient\"},ft(\"defs\",{},r));ft(\"stop\",{offset:\"10%\",\"stop-opacity\":.4},n),ft(\"stop\",{offset:\"100%\",\"stop-opacity\":.05},n),ft(\"ellipse\",{cx:13.5,cy:34.8,rx:10.5,ry:5.25,fill:\"url(#shadowGradient)\"},r),ft(\"path\",{fill:this._color,d:\"M27,13.5C27,19.07 20.25,27 14.75,34.5C14.02,35.5 12.98,35.5 12.25,34.5C6.75,27 0,19.22 0,13.5C0,6.04 6.04,0 13.5,0C20.96,0 27,6.04 27,13.5Z\"},r),ft(\"path\",{opacity:.25,d:\"M13.5,0C6.04,0 0,6.04 0,13.5C0,19.22 6.75,27 12.25,34.5C13,35.52 14.02,35.5 14.75,34.5C20.25,27 27,19.07 27,13.5C27,6.04 20.96,0 13.5,0ZM13.5,1C20.42,1 26,6.58 26,13.5C26,15.9 24.5,19.18 22.22,22.74C19.95,26.3 16.71,30.14 13.94,33.91C13.74,34.18 13.61,34.32 13.5,34.44C13.39,34.32 13.26,34.18 13.06,33.91C10.28,30.13 7.41,26.31 5.02,22.77C2.62,19.23 1,15.95 1,13.5C1,6.58 6.58,1 13.5,1Z\"},r),ft(\"circle\",{fill:\"white\",cx:13.5,cy:13.5,r:5.5},r),this._offset=y.convert(e&&e.offset||[0,-14]);}this._element.hasAttribute(\"aria-label\")||this._element.setAttribute(\"aria-label\",\"Map marker\"),this._element.hasAttribute(\"role\")||this._element.setAttribute(\"role\",\"img\"),this._element.classList.add(\"mapboxgl-marker\"),this._element.addEventListener(\"dragstart\",(e=>{e.preventDefault();})),this._element.addEventListener(\"mousedown\",(e=>{e.preventDefault();}));const r=this._element.classList;for(const e in sI)r.remove(`mapboxgl-marker-anchor-${e}`);r.add(`mapboxgl-marker-anchor-${this._anchor}`);const n=e&&e.className?e.className.trim().split(/\\s+/):[];r.add(...n),this._popup=null;}addTo(e){return e===this._map||(this.remove(),this._map=e,e.getCanvasContainer().appendChild(this._element),e.on(\"move\",this._updateMoving),e.on(\"moveend\",this._update),e.on(\"remove\",this._clearFadeTimer),e._addMarker(this),this.setDraggable(this._draggable),this._update(),e.on(\"click\",this._onMapClick)),this}remove(){const e=this._map;return e&&(e.off(\"click\",this._onMapClick),e.off(\"move\",this._updateMoving),e.off(\"moveend\",this._update),e.off(\"mousedown\",this._addDragHandler),e.off(\"touchstart\",this._addDragHandler),e.off(\"mouseup\",this._onUp),e.off(\"touchend\",this._onUp),e.off(\"mousemove\",this._onMove),e.off(\"touchmove\",this._onMove),e.off(\"remove\",this._clearFadeTimer),e._removeMarker(this),this._map=void 0),this._clearFadeTimer(),this._element.remove(),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(e){return this._lngLat=Wd.convert(e),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(!0),this}getElement(){return this._element}setPopup(e){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeAttribute(\"role\"),this._element.removeEventListener(\"keypress\",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute(\"tabindex\")),e){if(!(\"offset\"in e.options)){const t=38.1,i=13.5,r=Math.sqrt(Math.pow(i,2)/2);e.options.offset=this._defaultMarker?{top:[0,0],\"top-left\":[0,0],\"top-right\":[0,0],bottom:[0,-t],\"bottom-left\":[r,-1*(t-i+r)],\"bottom-right\":[-r,-1*(t-i+r)],left:[i,-1*(t-i)],right:[-i,-1*(t-i)]}:this._offset;}this._popup=e,e._marker=this,this._lngLat&&this._popup.setLngLat(this._lngLat),this._element.setAttribute(\"role\",\"button\"),this._originalTabIndex=this._element.getAttribute(\"tabindex\"),this._originalTabIndex||this._element.setAttribute(\"tabindex\",\"0\"),this._element.addEventListener(\"keypress\",this._onKeyPress),this._element.setAttribute(\"aria-expanded\",\"false\");}return this}_onKeyPress(e){const t=e.code,i=e.charCode||e.keyCode;\"Space\"!==t&&\"Enter\"!==t&&32!==i&&13!==i||this.togglePopup();}_onMapClick(e){const t=e.originalEvent.target,i=this._element;this._popup&&(t===i||i.contains(t))&&this.togglePopup();}getPopup(){return this._popup}togglePopup(){const e=this._popup;return e?(e.isOpen()?(e.remove(),this._element.setAttribute(\"aria-expanded\",\"false\")):this._map&&(e.addTo(this._map),this._element.setAttribute(\"aria-expanded\",\"true\")),this):this}_behindTerrain(){const e=this._map,t=this._pos;if(!e||!t)return !1;const i=e.unproject(t),r=e.getFreeCameraOptions();if(!r.position)return !1;const n=r.position.toLngLat();return n.distanceTo(i)<.9*n.distanceTo(this._lngLat)}_evaluateOpacity(){const e=this._map;if(!e)return;const t=this._pos;if(!t||t.x<0||t.x>e.transform.width||t.y<0||t.y>e.transform.height)return void this._clearFadeTimer();const i=e.unproject(t);let r;e._showingGlobe()&&Nd(e.transform,this._lngLat)?r=0:(r=1-e._queryFogOpacity(i),e.transform._terrainEnabled()&&e.getTerrain()&&this._behindTerrain()&&(r*=this._occludedOpacity)),this._element.style.opacity=`${r}`,this._element.style.pointerEvents=r>0?\"auto\":\"none\",this._popup&&this._popup._setOpacity(r),this._fadeTimer=null;}_clearFadeTimer(){this._fadeTimer&&(clearTimeout(this._fadeTimer),this._fadeTimer=null);}_updateDOM(){const e=this._pos;if(!e||!this._map)return;const t=this._offset.mult(this._scale);this._element.style.transform=`\\n translate(${e.x}px,${e.y}px)\\n ${sI[this._anchor]}\\n ${this._calculateXYTransform()} ${this._calculateZTransform()}\\n translate(${t.x}px,${t.y}px)\\n `;}_calculateXYTransform(){const e=this._pos,t=this._map,i=this.getPitchAlignment();if(!t||!e||\"map\"!==i)return \"\";if(!t._showingGlobe()){const e=t.getPitch();return e?`rotateX(${e}deg)`:\"\"}const r=T(Fd(t.transform,this._lngLat)),n=e.sub(Bd(t.transform)),o=Math.abs(n.x)+Math.abs(n.y);if(0===o)return \"\";const s=r/o;return `rotateX(${-n.y*s}deg) rotateY(${n.x*s}deg)`}_calculateZTransform(){const e=this._pos,t=this._map;if(!t||!e)return \"\";let i=0;const r=this.getRotationAlignment();if(\"map\"===r)if(t._showingGlobe()){const e=t.project(new Wd(this._lngLat.lng,this._lngLat.lat+.001)),r=t.project(new Wd(this._lngLat.lng,this._lngLat.lat-.001)).sub(e);i=T(Math.atan2(r.y,r.x))-90;}else i=-t.getBearing();else if(\"horizon\"===r){const r=P(4,6,t.getZoom()),n=Bd(t.transform);n.y+=r*t.transform.height;const o=e.sub(n),s=T(Math.atan2(o.y,o.x));i=(s>90?s-270:s+90)*(1-r);}return i+=this._rotation,i?`rotateZ(${i}deg)`:\"\"}_update(e){t.cancelAnimationFrame(this._updateFrameId);const i=this._map;i&&(i.transform.renderWorldCopies&&(this._lngLat=oI(this._lngLat,this._pos,i.transform)),this._pos=i.project(this._lngLat),!0===e?this._updateFrameId=t.requestAnimationFrame((()=>{this._element&&this._pos&&this._anchor&&(this._pos=this._pos.round(),this._updateDOM());})):this._pos=this._pos.round(),i._requestDomTask((()=>{this._map&&(this._element&&this._pos&&this._anchor&&this._updateDOM(),(i._showingGlobe()||i.getTerrain()||i.getFog())&&!this._fadeTimer&&(this._fadeTimer=setTimeout(this._evaluateOpacity.bind(this),60)));})));}getOffset(){return this._offset}setOffset(e){return this._offset=y.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 t=this._map;if(!t)return;const i=this._pointerdownPos,r=this._positionDelta;if(i&&r){if(!this._isDragging){const r=this._clickTolerance||t._clickTolerance;if(e.point.dist(i)=this._endTime)return this._end;const t=M((e-this._startTime)/(this._endTime-this._startTime));return this._start*(1-t)+this._end*t}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,t,i){this._start=this.getValue(t),this._end=e,this._startTime=t,this._endTime=t+i;}}const dI={\"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\"},pI={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},fI={showCompass:!0,showZoom:!0,visualizePitch:!1};class mI{constructor(e,t,i=!1){this._clickTolerance=10,this.element=t,this.mouseRotate=new SS({clickTolerance:e.dragRotate._mouseRotate._clickTolerance}),this.map=e,i&&(this.mousePitch=new IS({clickTolerance:e.dragRotate._mousePitch._clickTolerance})),j([\"mousedown\",\"mousemove\",\"mouseup\",\"touchstart\",\"touchmove\",\"touchend\",\"reset\"],this),t.addEventListener(\"mousedown\",this.mousedown),t.addEventListener(\"touchstart\",this.touchstart,{passive:!1}),t.addEventListener(\"touchmove\",this.touchmove),t.addEventListener(\"touchend\",this.touchend),t.addEventListener(\"touchcancel\",this.reset);}down(e,t){this.mouseRotate.mousedown(e,t),this.mousePitch&&this.mousePitch.mousedown(e,t),yt();}move(e,t){const i=this.map,r=this.mouseRotate.mousemoveWindow(e,t),n=r&&r.bearingDelta;if(n&&i.setBearing(i.getBearing()+n),this.mousePitch){const r=this.mousePitch.mousemoveWindow(e,t),n=r&&r.pitchDelta;n&&i.setPitch(i.getPitch()+n);}}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(){xt(),t.removeEventListener(\"mousemove\",this.mousemove),t.removeEventListener(\"mouseup\",this.mouseup);}mousedown(e){this.down(k({},e,{ctrlKey:!0,preventDefault:()=>e.preventDefault()}),wt(this.element,e)),t.addEventListener(\"mousemove\",this.mousemove),t.addEventListener(\"mouseup\",this.mouseup);}mousemove(e){this.move(e,wt(this.element,e));}mouseup(e){this.mouseRotate.mouseupWindow(e),this.mousePitch&&this.mousePitch.mouseupWindow(e),this.offTemp();}touchstart(e){1!==e.targetTouches.length?this.reset():(this._startPos=this._lastPos=Tt(this.element,e.targetTouches)[0],this.down({type:\"mousedown\",button:0,ctrlKey:!0,preventDefault:()=>e.preventDefault()},this._startPos));}touchmove(e){1!==e.targetTouches.length?this.reset():(this._lastPos=Tt(this.element,e.targetTouches)[0],this.move({preventDefault:()=>e.preventDefault()},this._lastPos));}touchend(e){0===e.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)e.maxZoom)throw new Error(\"maxZoom must be greater than or equal to minZoom\");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error(\"maxPitch must be greater than or equal to minPitch\");if(null!=e.minPitch&&e.minPitch<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(null!=e.maxPitch&&e.maxPitch>85)throw new Error(\"maxPitch must be less than or equal to 85\");if(e.antialias&&function(e){const t=e.navigator?e.navigator.userAgent:null;return !!function(e){if(null==te){const t=e.navigator?e.navigator.userAgent:null;te=!!e.safari||!(!t||!(/\\b(iPad|iPhone|iPod)\\b/.test(t)||t.match(\"Safari\")&&!t.match(\"Chrome\")));}return te}(e)&&t&&(t.match(\"Version/15.4\")||t.match(\"Version/15.5\")||t.match(/CPU (OS|iPhone OS) (15_4|15_5) like Mac OS X/))}(t)&&(e.antialias=!1,H(\"Antialiasing is disabled for this WebGL context to avoid browser bug: https://github.com/mapbox/mapbox-gl-js/issues/11609\")),super(new Tv(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies),e),this._interactive=e.interactive,this._minTileCacheSize=e.minTileCacheSize,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._isInitialLoad=!0,this._crossSourceCollisions=e.crossSourceCollisions,this._collectResourceTiming=e.collectResourceTiming,this._language=this._parseLanguage(e.language),this._worldview=e.worldview,this._renderTaskQueue=new nI,this._domRenderTaskQueue=new nI,this._controls=[],this._markers=[],this._popups=[],this._mapId=F(),this._locale=k({},dI,e.locale),this._clickTolerance=e.clickTolerance,this._cooperativeGestures=e.cooperativeGestures,this._performanceMetricsCollection=e.performanceMetricsCollection,this._containerWidth=0,this._containerHeight=0,this._averageElevationLastSampledAt=-1/0,this._averageElevationExaggeration=0,this._averageElevation=new uI(0),this._interactionRange=[1/0,-1/0],this._visibilityHidden=0,this._useExplicitProjection=!1,this._requestManager=new ze(e.transformRequest,e.accessToken,e.testMode),this._silenceAuthErrors=!!e.testMode,this._contextCreateOptions=e.contextCreateOptions?{...e.contextCreateOptions}:{},\"string\"==typeof e.container){if(this._container=t.document.getElementById(e.container),!this._container)throw new Error(`Container '${e.container.toString()}' not found.`)}else {if(!(e.container instanceof t.HTMLElement))throw new Error(\"Invalid type: 'container' must be a String or HTMLElement.\");this._container=e.container;}if(this._container.childNodes.length>0&&H(\"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.\"),e.maxBounds&&this.setMaxBounds(e.maxBounds),j([\"_onWindowOnline\",\"_onWindowResize\",\"_onVisibilityChange\",\"_onMapScroll\",\"_contextLost\",\"_contextRestored\"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)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))),void 0!==t&&(this._fullscreenchangeEvent=\"onfullscreenchange\"in t.document?\"fullscreenchange\":\"webkitfullscreenchange\",t.addEventListener(\"online\",this._onWindowOnline,!1),t.addEventListener(\"resize\",this._onWindowResize,!1),t.addEventListener(\"orientationchange\",this._onWindowResize,!1),t.addEventListener(this._fullscreenchangeEvent,this._onWindowResize,!1),t.addEventListener(\"visibilitychange\",this._onVisibilityChange,!1)),this.handlers=new QS(this,e),this._localFontFamily=e.localFontFamily,this._localIdeographFontFamily=e.localIdeographFontFamily,(e.style||!e.testMode)&&this.setStyle(e.style||n.DEFAULT_STYLE,{localFontFamily:this._localFontFamily,localIdeographFontFamily:this._localIdeographFontFamily}),e.projection&&this.setProjection(e.projection),e.hash&&(this._hash=new nS(\"string\"==typeof e.hash&&e.hash||void 0).addTo(this)),!this._hash||!this._hash._onHashChange()){null==i.center&&null==i.zoom||(this.transform._unmodified=!1),this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch});const t=e.bounds;t&&(this.resize(),this.fitBounds(t,k({},e.fitBoundsOptions,{duration:0})));}this.resize(),e.attributionControl&&this.addControl(new iI({customAttribution:e.customAttribution})),this._logoControl=new rI,this.addControl(this._logoControl,e.logoPosition),this.on(\"style.load\",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet);})),this.on(\"data\",(e=>{this._update(\"style\"===e.dataType),this.fire(new It(`${e.dataType}data`,e));})),this.on(\"dataloading\",(e=>{this.fire(new It(`${e.dataType}dataloading`,e));}));}_getMapId(){return this._mapId}addControl(e,t){if(void 0===t&&(t=e.getDefaultPosition?e.getDefaultPosition():\"top-right\"),!e||!e.onAdd)return this.fire(new Ct(new Error(\"Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.\")));const i=e.onAdd(this);this._controls.push(e);const r=this._controlPositions[t];return -1!==t.indexOf(\"bottom\")?r.insertBefore(i,r.firstChild):r.appendChild(i),this}removeControl(e){if(!e||!e.onRemove)return this.fire(new Ct(new Error(\"Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.\")));const t=this._controls.indexOf(e);return t>-1&&this._controls.splice(t,1),e.onRemove(this),this}hasControl(e){return this._controls.indexOf(e)>-1}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}resize(e){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 t=!this._moving;return t&&this.fire(new It(\"movestart\",e)).fire(new It(\"move\",e)),this.fire(new It(\"resize\",e)),t&&this.fire(new It(\"moveend\",e)),this}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()||null}setMaxBounds(e){return this.transform.setMaxBounds(sc.convert(e)),this._update()}setMinZoom(e){if((e=null==e?-2:e)>=-2&&e<=this.transform.maxZoom)return this.transform.minZoom=e,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=e,this._update(),this.getZoom()>e?this.setZoom(e):this.fire(new It(\"zoomstart\")).fire(new It(\"zoom\")).fire(new It(\"zoomend\")),this;throw new Error(\"maxZoom must be greater than the current minZoom\")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(e){if((e=null==e?0:e)<0)throw new Error(\"minPitch must be greater than or equal to 0\");if(e>=0&&e<=this.transform.maxPitch)return this.transform.minPitch=e,this._update(),this.getPitch()85)throw new Error(\"maxPitch must be less than or equal to 85\");if(e>=this.transform.minPitch)return this.transform.maxPitch=e,this._update(),this.getPitch()>e?this.setPitch(e):this.fire(new It(\"pitchstart\")).fire(new It(\"pitch\")).fire(new It(\"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(e){return this.transform.renderWorldCopies=e,this.transform.renderWorldCopies||this._forceMarkerAndPopupUpdate(!0),this._update()}getLanguage(){return this._language}_parseLanguage(e){return \"auto\"===e?t.navigator.language:Array.isArray(e)?0===e.length?void 0:e.map((e=>\"auto\"===e?t.navigator.language:e)):e}setLanguage(e){const t=this._parseLanguage(e);if(!this.style||t===this._language)return this;this._language=t,this.style.reloadSources();for(const e of this._controls)e._setLanguage&&e._setLanguage(this._language);return this}getWorldview(){return this._worldview}setWorldview(e){return this.style&&e!==this._worldview?(this._worldview=e,this.style.reloadSources(),this):this}getProjection(){return this.transform.mercatorFromTransition?{name:\"globe\",center:[0,0]}:this.transform.getProjection()}_showingGlobe(){return \"globe\"===this.transform.projection.name}setProjection(e){return this._lazyInitEmptyStyle(),e?\"string\"==typeof e&&(e={name:e}):e=null,this._useExplicitProjection=!!e,this._prioritizeAndUpdateProjection(e,this.style.projection)}_updateProjectionTransition(){if(\"globe\"!==this.getProjection().name)return;const e=this.transform,t=e.projection.name;let i;\"globe\"===t&&e.zoom>=id?(e.setMercatorFromTransition(),i=!0):\"mercator\"===t&&e.zoom=id?this.transform.setMercatorFromTransition():this.transform.setProjection(e),this.style.applyProjectionUpdate(),t&&(this.painter.clearBackgroundTiles(),this.style.clearSources(),this._update(!0),this._forceMarkerAndPopupUpdate(!0)),this}project(e){return this.transform.locationPoint3D(Wd.convert(e))}unproject(e){return this.transform.pointLocation3D(y.convert(e))}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(e,t,i){if(\"mouseenter\"===e||\"mouseover\"===e){let r=!1;const n=n=>{const o=t.filter((e=>this.getLayer(e))),s=o.length?this.queryRenderedFeatures(n.point,{layers:o}):[];s.length?r||(r=!0,i.call(this,new fS(e,this,n.originalEvent,{features:s}))):r=!1;},o=()=>{r=!1;};return {layers:new Set(t),listener:i,delegates:{mousemove:n,mouseout:o}}}if(\"mouseleave\"===e||\"mouseout\"===e){let r=!1;const n=n=>{const o=t.filter((e=>this.getLayer(e)));(o.length?this.queryRenderedFeatures(n.point,{layers:o}):[]).length?r=!0:r&&(r=!1,i.call(this,new fS(e,this,n.originalEvent)));},o=t=>{r&&(r=!1,i.call(this,new fS(e,this,t.originalEvent)));};return {layers:new Set(t),listener:i,delegates:{mousemove:n,mouseout:o}}}{const r=e=>{const r=t.filter((e=>this.getLayer(e))),n=r.length?this.queryRenderedFeatures(e.point,{layers:r}):[];n.length&&(e.features=n,i.call(this,e),delete e.features);};return {layers:new Set(t),listener:i,delegates:{[e]:r}}}}on(e,t,i){if(void 0===i)return super.on(e,t);if(Array.isArray(t)||(t=[t]),t)for(const e of t)if(!this._isValidId(e))return this;const r=this._createDelegatedListener(e,t,i);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[e]=this._delegatedListeners[e]||[],this._delegatedListeners[e].push(r);for(const e in r.delegates)this.on(e,r.delegates[e]);return this}once(e,t,i){if(void 0===i)return super.once(e,t);if(Array.isArray(t)||(t=[t]),t)for(const e of t)if(!this._isValidId(e))return this;const r=this._createDelegatedListener(e,t,i);for(const e in r.delegates)this.once(e,r.delegates[e]);return this}off(e,t,i){if(void 0===i)return super.off(e,t);t=new Set(Array.isArray(t)?t:[t]);for(const e of t)if(!this._isValidId(e))return this;const r=(e,t)=>{if(e.size!==t.size)return !1;for(const i of e)if(!t.has(i))return !1;return !0},n=this._delegatedListeners?this._delegatedListeners[e]:void 0;return n&&(e=>{for(let n=0;n{e?this.fire(new Ct(e)):i&&this._updateDiff(i,t);}));}else \"object\"==typeof e&&this._updateDiff(e,t);}_updateDiff(e,t){try{this.style.setState(e)&&this._update(!0);}catch(i){H(`Unable to perform style diff: ${i.message||i.error||i}. Rebuilding the style from scratch.`),this._updateStyle(e,t);}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():(H(\"There is no style added to the map.\"),!1)}_isValidId(e){return null==e?(this.fire(new Ct(new Error(\"IDs can't be empty.\"))),!1):!xa(e)||(this.fire(new Ct(new Error(`IDs can't contain special symbols: \"${e}\".`))),!1)}addSource(e,t){return this._isValidId(e)?(this._lazyInitEmptyStyle(),this.style.addSource(e,t),this._update(!0)):this}isSourceLoaded(e){return !!this._isValidId(e)&&!!this.style&&this.style._isSourceCacheLoaded(e)}areTilesLoaded(){const e=this.style&&this.style._sourceCaches;for(const t in e){const i=e[t]._tiles;for(const e in i){const t=i[e];if(\"loaded\"!==t.state&&\"errored\"!==t.state)return !1}}return !0}addSourceType(e,t,i){this._lazyInitEmptyStyle(),this.style.addSourceType(e,t,i);}removeSource(e){return this._isValidId(e)?(this.style.removeSource(e),this._updateTerrain(),this._update(!0)):this}getSource(e){return this._isValidId(e)?this.style.getOwnSource(e):null}addImage(e,i,{pixelRatio:r=1,sdf:n=!1,stretchX:o,stretchY:s,content:a}={}){if(this._lazyInitEmptyStyle(),i instanceof t.HTMLImageElement||t.ImageBitmap&&i instanceof t.ImageBitmap){const{width:t,height:l,data:c}=dt.getImageData(i);this.style.addImage(e,{data:new ef({width:t,height:l},c),pixelRatio:r,stretchX:o,stretchY:s,content:a,sdf:n,version:0});}else if(void 0===i.width||void 0===i.height)this.fire(new Ct(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:t,height:l}=i,c=i;this.style.addImage(e,{data:new ef({width:t,height:l},new Uint8Array(c.data)),pixelRatio:r,stretchX:o,stretchY:s,content:a,sdf:n,version:0,userImage:c}),c.onAdd&&c.onAdd(this,e);}}updateImage(e,i){this._lazyInitEmptyStyle();const r=this.style.getImage(e);if(!r)return void this.fire(new Ct(new Error(\"The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.\")));const n=i instanceof t.HTMLImageElement||t.ImageBitmap&&i instanceof t.ImageBitmap?dt.getImageData(i):i,{width:o,height:s}=n;void 0!==o&&void 0!==s?o===r.data.width&&s===r.data.height?(r.data.replace(n.data,!(i instanceof t.HTMLImageElement||t.ImageBitmap&&i instanceof t.ImageBitmap)),this.style.updateImage(e,r)):this.fire(new Ct(new Error(`The width and height of the updated image (${o}, ${s})\\n must be that same as the previous version of the image\\n (${r.data.width}, ${r.data.height})`))):this.fire(new Ct(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(e){return e?!!this.style&&!!this.style.getImage(e):(this.fire(new Ct(new Error(\"Missing required image id\"))),!1)}removeImage(e){this.style.removeImage(e);}loadImage(e,i){Ie(this._requestManager.transformRequest(e,ye.Image),((e,r)=>{i(e,r instanceof t.HTMLImageElement?dt.getImageData(r):r);}));}listImages(){return this.style.listImages()}addModel(e,t){this._lazyInitEmptyStyle(),this.style.addModel(e,t);}hasModel(e){return e?this.style.hasModel(e):(this.fire(new Ct(new Error(\"Missing required model id\"))),!1)}removeModel(e){this.style.removeModel(e);}listModels(){return this.style.listModels()}addLayer(e,t){return this._isValidId(e.id)?(this._lazyInitEmptyStyle(),this.style.addLayer(e,t),this._update(!0)):this}moveLayer(e,t){return this._isValidId(e)?(this.style.moveLayer(e,t),this._update(!0)):this}removeLayer(e){return this._isValidId(e)?(this.style.removeLayer(e),this._update(!0)):this}getLayer(e){return this._isValidId(e)?this.style.getOwnLayer(e):null}setLayerZoomRange(e,t,i){return this._isValidId(e)?(this.style.setLayerZoomRange(e,t,i),this._update(!0)):this}setFilter(e,t,i={}){return this._isValidId(e)?(this.style.setFilter(e,t,i),this._update(!0)):this}getFilter(e){return this._isValidId(e)?this.style.getFilter(e):null}setPaintProperty(e,t,i,r={}){return this._isValidId(e)?(this.style.setPaintProperty(e,t,i,r),this._update(!0)):this}getPaintProperty(e,t){return this._isValidId(e)?this.style.getPaintProperty(e,t):null}setLayoutProperty(e,t,i,r={}){return this._isValidId(e)?(this.style.setLayoutProperty(e,t,i,r),this._update(!0)):this}getLayoutProperty(e,t){return this._isValidId(e)?this.style.getLayoutProperty(e,t):null}getConfigProperty(e,t){return this.style.getConfigProperty(e,t)}setConfigProperty(e,t,i){return this.style.setConfigProperty(e,t,i),this._update(!0)}setLights(e){if(this._lazyInitEmptyStyle(),e&&1===e.length&&\"flat\"===e[0].type){const t=e[0];t.properties?this.style.setFlatLight(t.properties,t.id,{}):this.style.setFlatLight({},\"flat\");}else this.style.setLights(e),this.painter.terrain&&(this.painter.terrain.invalidateRenderCache=!0);return this._update(!0)}getLights(){const e=this.style.getLights()||[];return 0===e.length&&e.push({id:this.style.light.id,type:\"flat\",properties:this.style.getFlatLight()}),e}setLight(e,t={}){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:e}])}getLight(){return console.log(\"The `map.getLight` function is deprecated, prefer using `map.getLights` instead.\"),this.style.getFlatLight()}setTerrain(e){return this._lazyInitEmptyStyle(),!e&&this.transform.projection.requiresDraping?this.style.setTerrainForDraping():this.style.setTerrain(e),this._averageElevationLastSampledAt=-1/0,this._update(!0)}getTerrain(){return this.style?this.style.getTerrain():null}setFog(e){return this._lazyInitEmptyStyle(),this.style.setFog(e),this._update(!0)}getFog(){return this.style?this.style.getFog():null}setCamera(e){return this.style.setCamera(e),this._triggerCameraUpdate(e)}_triggerCameraUpdate(e){return this._update(this.transform.setOrthographicProjectionAtLowPitch(\"orthographic\"===e[\"camera-projection\"]))}getCamera(){return this.style.camera}_queryFogOpacity(e){return this.style&&this.style.fog?this.style.fog.getOpacityAtLatLng(Wd.convert(e),this.transform):0}setFeatureState(e,t){return this._isValidId(e.source)?(this.style.setFeatureState(e,t),this._update()):this}removeFeatureState(e,t){return this._isValidId(e.source)?(this.style.removeFeatureState(e,t),this._update()):this}getFeatureState(e){return this._isValidId(e.source)?this.style.getFeatureState(e):null}_updateContainerDimensions(){if(!this._container)return;const e=this._container.getBoundingClientRect().width||400,i=this._container.getBoundingClientRect().height||300;let r,n,o,s=this._container;for(;s&&(!n||!o);){const e=t.getComputedStyle(s).transform;e&&\"none\"!==e&&(r=e.match(/matrix.*\\((.+)\\)/)[1].split(\", \"),r[0]&&\"0\"!==r[0]&&\"1\"!==r[0]&&(n=r[0]),r[3]&&\"0\"!==r[3]&&\"1\"!==r[3]&&(o=r[3])),s=s.parentElement;}this._containerWidth=n?Math.abs(e/n):e,this._containerHeight=o?Math.abs(i/o):i;}_detectMissingCSS(){\"rgb(250, 128, 114)\"!==t.getComputedStyle(this._missingCSSCanary).getPropertyValue(\"background-color\")&&H(\"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 e=this._container;e.classList.add(\"mapboxgl-map\"),(this._missingCSSCanary=pt(\"div\",\"mapboxgl-canary\",e)).style.visibility=\"hidden\",this._detectMissingCSS();const t=this._canvasContainer=pt(\"div\",\"mapboxgl-canvas-container\",e);this._canvas=pt(\"canvas\",\"mapboxgl-canvas\",t),this._interactive&&(t.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 i=this._controlContainer=pt(\"div\",\"mapboxgl-control-container\",e),r=this._controlPositions={};[\"top-left\",\"top-right\",\"bottom-left\",\"bottom-right\"].forEach((e=>{r[e]=pt(\"div\",`mapboxgl-ctrl-${e}`,i);})),this._container.addEventListener(\"scroll\",this._onMapScroll,!1);}_resizeCanvas(e,t){const i=dt.devicePixelRatio||1;this._canvas.width=i*Math.ceil(e),this._canvas.height=i*Math.ceil(t),this._canvas.style.width=`${e}px`,this._canvas.style.height=`${t}px`;}_addMarker(e){this._markers.push(e);}_removeMarker(e){const t=this._markers.indexOf(e);-1!==t&&this._markers.splice(t,1);}_addPopup(e){this._popups.push(e);}_removePopup(e){const t=this._popups.indexOf(e);-1!==t&&this._popups.splice(t,1);}_setupPainter(){const e=k({},rt.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),t=this._canvas.getContext(\"webgl2\",e);t?(Ke(t,!0),this.painter=new UA(t,this._contextCreateOptions,this.transform),this.on(\"data\",(e=>{\"source\"===e.dataType&&this.painter.setTileLoadedFlag(!0);})),o.testSupport(t)):this.fire(new Ct(new Error(\"Failed to initialize WebGL\")));}_contextLost(e){e.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new It(\"webglcontextlost\",{originalEvent:e}));}_contextRestored(e){this._setupPainter(),this.resize(),this._update(),this.fire(new It(\"webglcontextrestored\",{originalEvent:e}));}_onMapScroll(e){if(e.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(e){return this.style?(this._styleDirty=this._styleDirty||e,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(e){return this._update(),this._renderTaskQueue.add(e)}_cancelRenderFrame(e){this._renderTaskQueue.remove(e);}_requestDomTask(e){!this.loaded()||this.loaded()&&!this.isMoving()?e():this._domRenderTaskQueue.add(e);}_render(e){let i;this.fire(new It(\"renderstart\"));const r=this.painter.context.extTimerQuery,n=dt.now(),o=this.painter.context.gl;if(this.listens(\"gpu-timing-frame\")&&(i=o.createQuery(),o.beginQuery(r.TIME_ELAPSED_EXT,i)),this.painter.context.setDirty(),this.painter.setBaseState(),(this.isMoving()||this.isRotating()||this.isZooming())&&(this._interactionRange[0]=Math.min(this._interactionRange[0],t.performance.now()),this._interactionRange[1]=Math.max(this._interactionRange[1],t.performance.now())),this._renderTaskQueue.run(e),this._domRenderTaskQueue.run(e),this._removed)return;this._updateProjectionTransition();const s=this._isInitialLoad?0:this._fadeDuration;if(this.style&&this._styleDirty){this._styleDirty=!1;const e=this.transform.zoom,t=this.transform.pitch,i=dt.now(),r=new oa(e,{now:i,fadeDuration:s,pitch:t,transition:this.style.transition});this.style.update(r);}this.style&&this.style.hasFogTransition()&&(this.style._markersNeedUpdate=!0,this._sourcesDirty=!0);let a=!1;if(this.style&&this._sourcesDirty?(this._sourcesDirty=!1,this.painter._updateFog(this.style),this._updateTerrain(),a=this._updateAverageElevation(n),this.style.updateSources(this.transform),this._forceMarkerAndPopupUpdate()):a=this._updateAverageElevation(n),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 It(\"render\")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new It(\"load\"))),this.style&&this.style.hasTransitions()&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),i){const e=dt.now()-n;o.endQuery(r.TIME_ELAPSED_EXT),setTimeout((()=>{const r=o.getQueryParameter(i,o.QUERY_RESULT)/1e6;o.deleteQuery(i),this.fire(new It(\"gpu-timing-frame\",{cpuTime:e,gpuTime:r})),t.performance.mark(\"frame-gpu\",{startTime:n,detail:{gpuTime:r}});}),50);}if(this.listens(\"gpu-timing-layer\")){const e=this.painter.collectGpuTimers();setTimeout((()=>{const t=this.painter.queryGpuTimers(e);this.fire(new It(\"gpu-timing-layer\",{layerTimes:t}));}),50);}if(this.listens(\"gpu-timing-deferred-render\")){const e=this.painter.collectDeferredRenderGpuQueries();setTimeout((()=>{const t=this.painter.queryGpuTimeDeferredRender(e);this.fire(new It(\"gpu-timing-deferred-render\",{gpuTime:t}));}),50);}const l=this._sourcesDirty||this._styleDirty||this._placementDirty||a;if(l||this._repaint)this.triggerRepaint();else {const e=!this.isMoving()&&this.loaded();if(e&&(a=this._updateAverageElevation(n,!0)),a)this.triggerRepaint();else if(this._triggerFrame(!1),e&&(this.fire(new It(\"idle\")),this._isInitialLoad=!1,this.speedIndexTiming)){const e=this._calculateSpeedIndex();this.fire(new It(\"speedindexcompleted\",{speedIndex:e})),this.speedIndexTiming=!1;}}!this._loaded||this._fullyLoaded||l||(this._fullyLoaded=!0,Qe.mark(Je.fullLoad),this._performanceMetricsCollection&&We(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(e){for(const t of this._markers)e&&!this.getRenderWorldCopies()&&(t._lngLat=t._lngLat.wrap()),t._update();for(const t of this._popups)!e||this.getRenderWorldCopies()||t._trackPointer||(t._lngLat=t._lngLat.wrap()),t._update();}_updateAverageElevation(e,t=!1){const i=e=>(this.transform.averageElevation=e,this._update(!1),!0);if(!this.painter.averageElevationNeedsEasing())return 0!==this.transform.averageElevation&&i(0);const r=this.transform.elevation&&this.transform.elevation.exaggeration()!==this._averageElevationExaggeration;if(r||(t||e-this._averageElevationLastSampledAt>500)&&!this._averageElevation.isEasing(e)){const t=this.transform.averageElevation;let n=this.transform.sampleAverageElevation();this.transform.elevation&&(this._averageElevationExaggeration=this.transform.elevation.exaggeration()),isNaN(n)?n=0:this._averageElevationLastSampledAt=e;const o=Math.abs(t-n);if(o>1){if(this._isInitialLoad||r)return this._averageElevation.jumpTo(n),i(n);this._averageElevation.easeTo(n,e,300);}else if(o>1e-4)return this._averageElevation.jumpTo(n),i(n)}return !!this._averageElevation.isEasing(e)&&i(this._averageElevation.getValue(e))}_authenticate(){Xe(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(e=>{if(e&&(e.message===Ce||401===e.status)){const e=this.painter.context.gl;Ke(e,!1),this._logoControl instanceof rI&&this._logoControl._updateLogo(),e&&e.clear(e.DEPTH_BUFFER_BIT|e.COLOR_BUFFER_BIT|e.STENCIL_BUFFER_BIT),this._silenceAuthErrors||this.fire(new Ct(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/\")));}})),Ze(this._getMapId(),this._requestManager._skuToken,this._requestManager._customAccessToken,(()=>{}));}_updateTerrain(){const e=this._isDragging();this.painter.updateTerrain(this.style,e);}_calculateSpeedIndex(){const e=this.painter.canvasCopy(),t=this.painter.getCanvasCopiesAndTimestamps();t.timeStamps.push(performance.now());const i=this.painter.context.gl,r=i.createFramebuffer();function n(e){i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,e,0);const t=new Uint8Array(i.drawingBufferWidth*i.drawingBufferHeight*4);return i.readPixels(0,0,i.drawingBufferWidth,i.drawingBufferHeight,i.RGBA,i.UNSIGNED_BYTE,t),t}return i.bindFramebuffer(i.FRAMEBUFFER,r),this._canvasPixelComparison(n(e),t.canvasCopies.map(n),t.timeStamps)}_canvasPixelComparison(e,t,i){let r=i[1]-i[0];const n=e.length/4;for(let o=0;o{const t=!!this._renderNextFrame;this._frame=null,this._renderNextFrame=null,t&&this._render(e);})));}_preloadTiles(e){return R(this.style?Object.values(this.style._sourceCaches):[],((t,i)=>t._preloadTiles(e,i)),(()=>{this.triggerRepaint();})),this}_onWindowOnline(){this._update();}_onWindowResize(e){this._trackResize&&this.resize({originalEvent:e})._update();}_onVisibilityChange(){\"hidden\"===t.document.visibilityState&&this._visibilityHidden++;}get showTileBoundaries(){return !!this._showTileBoundaries}set showTileBoundaries(e){this._showTileBoundaries!==e&&(this._showTileBoundaries=e,this._update());}get showTerrainWireframe(){return !!this._showTerrainWireframe}set showTerrainWireframe(e){this._showTerrainWireframe!==e&&(this._showTerrainWireframe=e,this._update());}get showLayers2DWireframe(){return !!this._showLayers2DWireframe}set showLayers2DWireframe(e){this._showLayers2DWireframe!==e&&(this._showLayers2DWireframe=e,this._update());}get showLayers3DWireframe(){return !!this._showLayers3DWireframe}set showLayers3DWireframe(e){this._showLayers3DWireframe!==e&&(this._showLayers3DWireframe=e,this._update());}get speedIndexTiming(){return !!this._speedIndexTiming}set speedIndexTiming(e){this._speedIndexTiming!==e&&(this._speedIndexTiming=e,this._update());}get showPadding(){return !!this._showPadding}set showPadding(e){this._showPadding!==e&&(this._showPadding=e,this._update());}get showCollisionBoxes(){return !!this._showCollisionBoxes}set showCollisionBoxes(e){this._showCollisionBoxes!==e&&(this._showCollisionBoxes=e,e?this.style._generateCollisionBoxes():this._update());}get showOverdrawInspector(){return !!this._showOverdrawInspector}set showOverdrawInspector(e){this._showOverdrawInspector!==e&&(this._showOverdrawInspector=e,this._update());}get repaint(){return !!this._repaint}set repaint(e){this._repaint!==e&&(this._repaint=e,this.triggerRepaint());}get vertices(){return !!this._vertices}set vertices(e){this._vertices=e,this._update();}get showTileAABBs(){return !!this._showTileAABBs}set showTileAABBs(e){this._showTileAABBs!==e&&(this._showTileAABBs=e,e&&this._update());}_setCacheLimits(e,t){!function(e,t){ce=e,he=t;}(e,t);}get version(){return i}},NavigationControl:class{constructor(e){this.options=k({},fI,e),this._container=pt(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._container.addEventListener(\"contextmenu\",(e=>e.preventDefault())),this.options.showZoom&&(j([\"_setButtonTitle\",\"_updateZoomButtons\"],this),this._zoomInButton=this._createButton(\"mapboxgl-ctrl-zoom-in\",(e=>{this._map&&this._map.zoomIn({},{originalEvent:e});})),pt(\"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});})),pt(\"span\",\"mapboxgl-ctrl-icon\",this._zoomOutButton).setAttribute(\"aria-hidden\",\"true\")),this.options.showCompass&&(j([\"_rotateCompassArrow\"],this),this._compass=this._createButton(\"mapboxgl-ctrl-compass\",(e=>{const t=this._map;t&&(this.options.visualizePitch?t.resetNorthPitch({},{originalEvent:e}):t.resetNorth({},{originalEvent:e}));})),this._compassIcon=pt(\"span\",\"mapboxgl-ctrl-icon\",this._compass),this._compassIcon.setAttribute(\"aria-hidden\",\"true\"));}_updateZoomButtons(){const e=this._map;if(!e)return;const t=e.getZoom(),i=t===e.getMaxZoom(),r=t===e.getMinZoom();this._zoomInButton.disabled=i,this._zoomOutButton.disabled=r,this._zoomInButton.setAttribute(\"aria-disabled\",i.toString()),this._zoomOutButton.setAttribute(\"aria-disabled\",r.toString());}_rotateCompassArrow(){const e=this._map;if(!e)return;const t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(e.transform.pitch*(Math.PI/180)),.5)}) rotateX(${e.transform.pitch}deg) rotateZ(${e.transform.angle*(180/Math.PI)}deg)`:`rotate(${e.transform.angle*(180/Math.PI)}deg)`;e._requestDomTask((()=>{this._compassIcon&&(this._compassIcon.style.transform=t);}));}onAdd(e){return this._map=e,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,\"ZoomIn\"),this._setButtonTitle(this._zoomOutButton,\"ZoomOut\"),e.on(\"zoom\",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,\"ResetBearing\"),this.options.visualizePitch&&e.on(\"pitch\",this._rotateCompassArrow),e.on(\"rotate\",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new mI(e,this._compass,this.options.visualizePitch)),this._container}onRemove(){const e=this._map;e&&(this._container.remove(),this.options.showZoom&&e.off(\"zoom\",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&e.off(\"pitch\",this._rotateCompassArrow),e.off(\"rotate\",this._rotateCompassArrow),this._handler&&this._handler.off(),this._handler=void 0),this._map=void 0);}_createButton(e,t){const i=pt(\"button\",e,this._container);return i.type=\"button\",i.addEventListener(\"click\",t),i}_setButtonTitle(e,t){if(!this._map)return;const i=this._map._getUIString(`NavigationControl.${t}`);e.setAttribute(\"aria-label\",i),e.firstElementChild&&e.firstElementChild.setAttribute(\"title\",i);}},GeolocateControl:class extends zt{constructor(e){super(),this.options=k({geolocation:t.navigator.geolocation},_I,e),j([\"_onSuccess\",\"_onError\",\"_onZoom\",\"_finish\",\"_setupUI\",\"_updateCamera\",\"_updateMarker\",\"_updateMarkerRotation\",\"_onDeviceOrientation\"],this),this._updateMarkerRotationThrottled=rS(this._updateMarkerRotation,20),this._numberOfWatches=0;}onAdd(e){return this._map=e,this._container=pt(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._checkGeolocationSupport(this._setupUI),this._container}onRemove(){void 0!==this._geolocationWatchID&&(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(e){const i=(t=!!this.options.geolocation)=>{this._supportsGeolocation=t,e(t);};void 0!==this._supportsGeolocation?e(this._supportsGeolocation):void 0!==t.navigator.permissions?t.navigator.permissions.query({name:\"geolocation\"}).then((e=>i(\"denied\"!==e.state))).catch((()=>i())):i();}_isOutOfMapMaxBounds(e){const t=this._map.getMaxBounds(),i=e.coords;return !!t&&(i.longitudet.getEast()||i.latitudet.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(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new It(\"outofmaxbounds\",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,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&&\"OFF\"!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&\"ACTIVE_LOCK\"!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._userLocationDotMarker.removeClassName(\"mapboxgl-user-location-dot-stale\"),this.fire(new It(\"geolocate\",e)),this._finish();}}_updateCamera(e){const t=new Wd(e.coords.longitude,e.coords.latitude),i=e.coords.accuracy,r=k({bearing:this._map.getBearing()},this.options.fitBoundsOptions);this._map.fitBounds(t.toBounds(i),r,{geolocateSource:!0});}_updateMarker(e){if(e){const t=new Wd(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(t).addTo(this._map),this._userLocationDotMarker.setLngLat(t).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius();}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove();}_updateCircleRadius(){const e=this._map.transform,t=Qd(1,e._center.lat)*e.worldSize,i=Math.ceil(2*this._accuracy*t);this._circleElement.style.width=`${i}px`,this._circleElement.style.height=`${i}px`;}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius();}_updateMarkerRotation(){this._userLocationDotMarker&&\"number\"==typeof this._heading?(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(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){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),void 0!==this._geolocationWatchID&&this._clearWatch();}else {if(3===e.code&&this._noTimeout)return;this._setErrorState();}\"OFF\"!==this._watchState&&this.options.showUserLocation&&this._userLocationDotMarker.addClassName(\"mapboxgl-user-location-dot-stale\"),this.fire(new It(\"error\",e)),this._finish();}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0;}_setupUI(e){if(void 0!==this._map){if(this._container.addEventListener(\"contextmenu\",(e=>e.preventDefault())),this._geolocateButton=pt(\"button\",\"mapboxgl-ctrl-geolocate\",this._container),pt(\"span\",\"mapboxgl-ctrl-icon\",this._geolocateButton).setAttribute(\"aria-hidden\",\"true\"),this._geolocateButton.type=\"button\",!1===e){H(\"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=pt(\"div\",\"mapboxgl-user-location\"),this._dotElement.appendChild(pt(\"div\",\"mapboxgl-user-location-dot\")),this._dotElement.appendChild(pt(\"div\",\"mapboxgl-user-location-heading\")),this._userLocationDotMarker=new aI({element:this._dotElement,rotationAlignment:\"map\",pitchAlignment:\"map\"}),this._circleElement=pt(\"div\",\"mapboxgl-user-location-accuracy-circle\"),this._accuracyCircleMarker=new aI({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||\"ACTIVE_LOCK\"!==this._watchState||e.originalEvent&&\"resize\"===e.originalEvent.type||(this._watchState=\"BACKGROUND\",this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-background\"),this._geolocateButton.classList.remove(\"mapboxgl-ctrl-geolocate-active\"),this.fire(new It(\"trackuserlocationend\")));}));}}_onDeviceOrientation(e){this._userLocationDotMarker&&(e.webkitCompassHeading?this._heading=e.webkitCompassHeading:!0===e.absolute&&(this._heading=-1*e.alpha),this._updateMarkerRotationThrottled());}trigger(){if(!this._setup)return H(\"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 It(\"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 It(\"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 It(\"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(\"OFF\"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let e;this._geolocateButton.classList.add(\"mapboxgl-ctrl-geolocate-waiting\"),this._geolocateButton.setAttribute(\"aria-pressed\",\"true\"),this._numberOfWatches++,this._numberOfWatches>1?(e={maximumAge:6e5,timeout:0},this._noTimeout=!0):(e=this.options.positionOptions,this._noTimeout=!1),this._geolocationWatchID=this.options.geolocation.watchPosition(this._onSuccess,this._onError,e),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 e=()=>{t.addEventListener(\"ondeviceorientationabsolute\"in t?\"deviceorientationabsolute\":\"deviceorientation\",this._onDeviceOrientation);};void 0!==t.DeviceMotionEvent&&\"function\"==typeof t.DeviceMotionEvent.requestPermission?DeviceOrientationEvent.requestPermission().then((t=>{\"granted\"===t&&e();})).catch(console.error):e();}_clearWatch(){this.options.geolocation.clearWatch(this._geolocationWatchID),t.removeEventListener(\"deviceorientation\",this._onDeviceOrientation),t.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:iI,ScaleControl:class{constructor(e){this.options=k({},gI,e),this._isNumberFormatSupported=function(){try{return new Intl.NumberFormat(\"en\",{style:\"unit\",unitDisplay:\"short\",unit:\"meter\"}),!0}catch(e){return !1}}(),j([\"_update\",\"_setScale\",\"setUnit\"],this);}getDefaultPosition(){return \"bottom-left\"}_update(){const e=this.options.maxWidth||100,t=this._map,i=t._containerHeight/2,r=t._containerWidth/2-e/2,n=t.unproject([r,i]),o=t.unproject([r+e,i]),s=n.distanceTo(o);if(\"imperial\"===this.options.unit){const t=3.2808*s;t>5280?this._setScale(e,t/5280,\"mile\"):this._setScale(e,t,\"foot\");}else \"nautical\"===this.options.unit?this._setScale(e,s/1852,\"nautical-mile\"):s>=1e3?this._setScale(e,s/1e3,\"kilometer\"):this._setScale(e,s,\"meter\");}_setScale(e,t,i){this._map._requestDomTask((()=>{const r=function(e){const t=Math.pow(10,`${Math.floor(e)}`.length-1);let i=e/t;return i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:i>=1?1:function(e){const t=Math.pow(10,Math.ceil(-Math.log(e)/Math.LN10));return Math.round(e*t)/t}(i),t*i}(t),n=r/t;this._container.innerHTML=this._isNumberFormatSupported&&\"nautical-mile\"!==i?new Intl.NumberFormat(this._language,{style:\"unit\",unitDisplay:\"short\",unit:i}).format(r):`${r} ${yI[i]}`,this._container.style.width=e*n+\"px\";}));}onAdd(e){return this._map=e,this._language=e.getLanguage(),this._container=pt(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-scale\",e.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(e){this._language=e,this._update();}setUnit(e){this.options.unit=e,this._update();}},FullscreenControl:class{constructor(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof t.HTMLElement?this._container=e.container:H(\"Full screen control 'container' must be a DOM element.\")),j([\"_onClickFullscreen\",\"_changeIcon\"],this),\"onfullscreenchange\"in t.document?this._fullscreenchange=\"fullscreenchange\":\"onwebkitfullscreenchange\"in t.document&&(this._fullscreenchange=\"webkitfullscreenchange\");}onAdd(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=pt(\"div\",\"mapboxgl-ctrl mapboxgl-ctrl-group\"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display=\"none\",H(\"This device does not support fullscreen mode.\")),this._controlContainer}onRemove(){this._controlContainer.remove(),this._map=null,t.document.removeEventListener(this._fullscreenchange,this._changeIcon);}_checkFullscreenSupport(){return !(!t.document.fullscreenEnabled&&!t.document.webkitFullscreenEnabled)}_setupUI(){const e=this._fullscreenButton=pt(\"button\",\"mapboxgl-ctrl-fullscreen\",this._controlContainer);pt(\"span\",\"mapboxgl-ctrl-icon\",e).setAttribute(\"aria-hidden\",\"true\"),e.type=\"button\",this._updateTitle(),this._fullscreenButton.addEventListener(\"click\",this._onClickFullscreen),t.document.addEventListener(this._fullscreenchange,this._changeIcon);}_updateTitle(){const e=this._getTitle();this._fullscreenButton.setAttribute(\"aria-label\",e),this._fullscreenButton.firstElementChild&&this._fullscreenButton.firstElementChild.setAttribute(\"title\",e);}_getTitle(){return this._map._getUIString(this._isFullscreen()?\"FullscreenControl.Exit\":\"FullscreenControl.Enter\")}_isFullscreen(){return this._fullscreen}_changeIcon(){(t.document.fullscreenElement||t.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()?t.document.exitFullscreen?t.document.exitFullscreen():t.document.webkitCancelFullScreen&&t.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen();}},Popup:class extends zt{constructor(e){super(),this.options=k(Object.create(lI),e),j([\"_update\",\"_onClose\",\"remove\",\"_onMouseEvent\"],this),this._classList=new Set(e&&e.className?e.className.trim().split(/\\s+/):[]);}addTo(e){return this._map&&this.remove(),this._map=e,this.options.closeOnClick&&e.on(\"preclick\",this._onClose),this.options.closeOnMove&&e.on(\"move\",this._onClose),e.on(\"remove\",this.remove),this._update(),e._addPopup(this),this._focusFirstElement(),this._trackPointer?(e.on(\"mousemove\",this._onMouseEvent),e.on(\"mouseup\",this._onMouseEvent),e._canvasContainer.classList.add(\"mapboxgl-track-pointer\")):e.on(\"move\",this._update),this.fire(new It(\"open\")),this}isOpen(){return !!this._map}remove(){this._content&&this._content.remove(),this._container&&(this._container.remove(),this._container=void 0);const e=this._map;return e&&(e.off(\"move\",this._update),e.off(\"move\",this._onClose),e.off(\"preclick\",this._onClose),e.off(\"click\",this._onClose),e.off(\"remove\",this.remove),e.off(\"mousemove\",this._onMouseEvent),e.off(\"mouseup\",this._onMouseEvent),e.off(\"drag\",this._onMouseEvent),e._canvasContainer&&e._canvasContainer.classList.remove(\"mapboxgl-track-pointer\"),e._removePopup(this),this._map=void 0),this.fire(new It(\"close\")),this}getLngLat(){return this._lngLat}setLngLat(e){this._lngLat=Wd.convert(e),this._pos=null,this._trackPointer=!1,this._update();const t=this._map;return t&&(t.on(\"move\",this._update),t.off(\"mousemove\",this._onMouseEvent),t._canvasContainer.classList.remove(\"mapboxgl-track-pointer\")),this}trackPointer(){this._trackPointer=!0,this._pos=null,this._update();const e=this._map;return e&&(e.off(\"move\",this._update),e.on(\"mousemove\",this._onMouseEvent),e.on(\"drag\",this._onMouseEvent),e._canvasContainer.classList.add(\"mapboxgl-track-pointer\")),this}getElement(){return this._container}setText(e){return this.setDOMContent(t.document.createTextNode(e))}setHTML(e){const i=t.document.createDocumentFragment(),r=t.document.createElement(\"body\");let n;for(r.innerHTML=e;n=r.firstChild,n;)i.appendChild(n);return this.setDOMContent(i)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(e){return this.options.maxWidth=e,this._update(),this}setDOMContent(e){let t=this._content;if(t)for(;t.hasChildNodes();)t.firstChild&&t.removeChild(t.firstChild);else t=this._content=pt(\"div\",\"mapboxgl-popup-content\",this._container||void 0);if(t.appendChild(e),this.options.closeButton){const e=this._closeButton=pt(\"button\",\"mapboxgl-popup-close-button\",t);e.type=\"button\",e.setAttribute(\"aria-label\",\"Close popup\"),e.setAttribute(\"aria-hidden\",\"true\"),e.innerHTML=\"×\",e.addEventListener(\"click\",this._onClose);}return this._update(),this._focusFirstElement(),this}addClassName(e){return this._classList.add(e),this._updateClassList(),this}removeClassName(e){return this._classList.delete(e),this._updateClassList(),this}setOffset(e){return this.options.offset=e,this._update(),this}toggleClassName(e){let t;return this._classList.delete(e)?t=!1:(this._classList.add(e),t=!0),this._updateClassList(),t}_onMouseEvent(e){this._update(e.point);}_getAnchor(e){if(this.options.anchor)return this.options.anchor;const t=this._map,i=this._container,r=this._pos;if(!t||!i||!r)return \"bottom\";const n=i.offsetWidth,o=i.offsetHeight,s=r.xt.transform.width-n/2;if(r.y+et.transform.height-o){if(s)return \"bottom-left\";if(a)return \"bottom-right\"}return s?\"left\":a?\"right\":\"bottom\"}_updateClassList(){const e=this._container;if(!e)return;const t=[...this._classList];t.push(\"mapboxgl-popup\"),this._anchor&&t.push(`mapboxgl-popup-anchor-${this._anchor}`),this._trackPointer&&t.push(\"mapboxgl-popup-track-pointer\"),e.className=t.join(\" \");}_update(e){const t=this._map,i=this._content;if(!t||!this._lngLat&&!this._trackPointer||!i)return;let r=this._container;if(r||(r=this._container=pt(\"div\",\"mapboxgl-popup\",t.getContainer()),this._tip=pt(\"div\",\"mapboxgl-popup-tip\",r),r.appendChild(i)),this.options.maxWidth&&r.style.maxWidth!==this.options.maxWidth&&(r.style.maxWidth=this.options.maxWidth),t.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=oI(this._lngLat,this._pos,t.transform)),!this._trackPointer||e){const i=this._pos=this._trackPointer&&e?e:t.project(this._lngLat),r=hI(this.options.offset),n=this._anchor=this._getAnchor(r.y),o=hI(this.options.offset,n),s=i.add(o).round();t._requestDomTask((()=>{this._container&&n&&(this._container.style.transform=`${sI[n]} translate(${s.x}px,${s.y}px)`);}));}if(!this._marker&&t._showingGlobe()){const e=Nd(t.transform,this._lngLat)?0:1;this._setOpacity(e);}this._updateClassList();}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const e=this._container.querySelector(cI);e&&e.focus();}_onClose(){this.remove();}_setOpacity(e){this._container&&(this._container.style.opacity=`${e}`),this._content&&(this._content.style.pointerEvents=e?\"auto\":\"none\");}},Marker:aI,Style:iS,LngLat:Wd,LngLatBounds:sc,Point:y,MercatorCoordinate:lp,FreeCameraOptions:Xx,Evented:zt,config:n,prewarm:function(){Ww().acquire(qw);},clearPrewarmedResources:function(){const e=$w;e&&(e.isPreloaded()&&1===e.numActive()?(e.release(qw),$w=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 n.ACCESS_TOKEN},set accessToken(e){n.ACCESS_TOKEN=e;},get baseApiUrl(){return n.API_URL},set baseApiUrl(e){n.API_URL=e;},get workerCount(){return Zw.workerCount},set workerCount(e){Zw.workerCount=e;},get maxParallelImageRequests(){return n.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){n.MAX_PARALLEL_IMAGE_REQUESTS=e;},clearStorage(e){!function(e){if(!pe())return;const i=t.caches.delete(le);e&&i.catch(e).then((()=>e()));}(e);},workerUrl:\"\",workerClass:null,get dracoUrl(){return Jw()},set dracoUrl(e){!function(e){Xw=dt.resolveURL(e),Kw||(Kw=new Ew(Ww(),new zt)),Kw.broadcast(\"setDracoUrl\",Xw);}(e);},setNow:dt.setNow,restoreNow:dt.restoreNow};e.A=Tw,e.D=Ym,e.E=cr,e.F=Qm,e.K=xE,e.O=qu,e.P=y,e.T=Zv,e.V=hm,e.a=Kf,e.b=fm,e.c=ow,e.d=class extends zt{constructor(e,t,i,r,n,o){super(),this.actor=e,this.layerIndex=t,this.availableImages=i,this.loadVectorData=n||Uw,this.loading={},this.loaded={},this.deduped=new Nw(e.scheduler),this.isSpriteLoaded=r,this.scheduler=e.scheduler,this.brightness=o;}loadTile(e,t){const i=e.uid,r=e&&e.request,n=r&&r.collectResourceTiming,o=this.loading[i]=new Bw(e);o.abort=this.loadVectorData(e,((s,a)=>{const l=!this.loading[i];if(delete this.loading[i],l||s||!a)return o.status=\"done\",l||(this.loaded[i]=o),t(s);const c=a.rawData,h={};a.expires&&(h.expires=a.expires),a.cacheControl&&(h.cacheControl=a.cacheControl),o.vectorTile=a.vectorTile||new cm(new km(c));const u=()=>{o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,((e,i)=>{if(e||!i)return t(e);const o={};if(n){const e=it(r);e.length>0&&(o.resourceTiming=JSON.parse(JSON.stringify(e)));}t(null,k({rawTileData:c.slice(0)},i,h,o));}));};this.isSpriteLoaded?u():this.once(\"isSpriteLoaded\",(()=>{this.scheduler?this.scheduler.add(u,{type:\"parseTile\",isSymbolTile:e.isSymbolTile,zoom:e.tileZoom}):u();})),this.loaded=this.loaded||{},this.loaded[i]=o;}));}reloadTile(e,t){const i=this.loaded,r=e.uid,n=this;if(i&&i[r]){const o=i[r];o.showCollisionBoxes=e.showCollisionBoxes,o.projection=e.projection,o.brightness=e.brightness,o.tileTransform=Pg(e.tileID.canonical,e.projection),o.extraShadowCaster=e.extraShadowCaster;const s=(e,i)=>{const r=o.reloadCallback;r&&(delete o.reloadCallback,o.parse(o.vectorTile,n.layerIndex,this.availableImages,n.actor,r)),t(e,i);};\"parsing\"===o.status?o.reloadCallback=s:\"done\"===o.status&&(o.vectorTile?o.parse(o.vectorTile,this.layerIndex,this.availableImages,this.actor,s):s());}else t(null,void 0);}abortTile(e,t){const i=e.uid,r=this.loading[i];r&&(r.abort&&r.abort(),delete this.loading[i]),t();}removeTile(e,t){const i=this.loaded,r=e.uid;i&&i[r]&&delete i[r],t();}},e.e=Eo,e.f=it,e.g=d,e.h=we,e.i=Te,e.j=function(e,t){const i=TT(e);for(const e of i){for(const t of e.meshes)ET(t);e.lights&&(e.lightMeshIndex=e.meshes.length,e.meshes.push(MT(e.lights,t)));}return i},e.k=oa,e.l=function(e){let t=0;if(new Uint32Array(e,0,1)[0]!==aT){const i=new Uint32Array(e,0,7),[,,r,n,o,s]=i;t=i.byteLength+n+o+s+o,(r!==e.byteLength||t>=e.byteLength)&&H(\"Invalid b3dm header information.\");}return pT(e,t)},e.m=ty,e.n=na,e.o=It,e.p=_,e.q=function(e){fe(),ue&&ue.then((t=>{t.keys().then((i=>{for(let r=0;rthis._layers[e.id])),r=t[0];if(\"none\"===r.visibility)continue;const o=r.source||\"\";let i=this.familiesBySource[o];i||(i=this.familiesBySource[o]={});const s=r.sourceLayer||\"_geojsonTileLayer\";let n=i[s];n||(n=i[s]=[]),n.push(t);}}}class i{loadTile(t,r){const{uid:o,encoding:i,rawImageData:s,padding:n}=t,a=e.w.ImageBitmap&&s instanceof e.w.ImageBitmap?this.getImageData(s,n):s;r(null,new e.D(o,a,i,n<1));}getImageData(e,t){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext(\"2d\",{willReadFrequently:!0})),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);const r=this.offscreenCanvasContext.getImageData(-t,-t,e.width+2*t,e.height+2*t);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),r}}function s(e,t){if(0!==e.length){n(e[0],t);for(var r=1;r=Math.abs(a)?r-l+a:a-l+r,r=l;}r+o>=0!=!!t&&e.reverse();}var a=e.g((function e(t,r){var o,i=t&&t.type;if(\"FeatureCollection\"===i)for(o=0;o>31}function b(e,t){for(var r=e.loadGeometry(),o=e.type,i=0,s=0,n=r.length,a=0;ae},_=Math.fround||(L=new Float32Array(1),e=>(L[0]=+e,L[0]));var L;const T=3,C=5,O=6;class j{constructor(e){this.options=Object.assign(Object.create(P),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[];}load(e){const{log:t,minZoom:r,maxZoom:o}=this.options;t&&console.time(\"total time\");const i=`prepare ${e.length} points`;t&&console.time(i),this.points=e;const s=[];for(let t=0;t=r;e--){const r=+Date.now();n=this.trees[e]=this._createTree(this._cluster(n,e)),t&&console.log(\"z%d: %d clusters in %dms\",e,n.numItems,+Date.now()-r);}return t&&console.timeEnd(\"total time\"),this}getClusters(e,t){let r=((e[0]+180)%360+360)%360-180;const o=Math.max(-90,Math.min(90,e[1]));let i=180===e[2]?180:((e[2]+180)%360+360)%360-180;const s=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)r=-180,i=180;else if(r>i){const e=this.getClusters([r,o,180,s],t),n=this.getClusters([-180,o,i,s],t);return e.concat(n)}const n=this.trees[this._limitZoom(t)],a=n.range(z(r),D(s),z(i),D(o)),l=n.data,h=[];for(const e of a){const t=this.stride*e;h.push(l[t+C]>1?F(l,t,this.clusterProps):this.points[l[t+T]]);}return h}getChildren(e){const t=this._getOriginId(e),r=this._getOriginZoom(e),o=\"No cluster with the specified id.\",i=this.trees[r];if(!i)throw new Error(o);const s=i.data;if(t*this.stride>=s.length)throw new Error(o);const n=this.options.radius/(this.options.extent*Math.pow(2,r-1)),a=i.within(s[t*this.stride],s[t*this.stride+1],n),l=[];for(const t of a){const r=t*this.stride;s[r+4]===e&&l.push(s[r+C]>1?F(s,r,this.clusterProps):this.points[s[r+T]]);}if(0===l.length)throw new Error(o);return l}getLeaves(e,t,r){const o=[];return this._appendLeaves(o,e,t=t||10,r=r||0,0),o}getTile(e,t,r){const o=this.trees[this._limitZoom(e)],i=Math.pow(2,e),{extent:s,radius:n}=this.options,a=n/s,l=(r-a)/i,h=(r+1+a)/i,u={features:[]};return this._addTileFeatures(o.range((t-a)/i,l,(t+1+a)/i,h),o.data,t,r,i,u),0===t&&this._addTileFeatures(o.range(1-a/i,l,1,h),o.data,i,r,i,u),t===i-1&&this._addTileFeatures(o.range(0,l,a/i,h),o.data,-1,r,i,u),u.features.length?u:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){const r=this.getChildren(e);if(t++,1!==r.length)break;e=r[0].properties.cluster_id;}return t}_appendLeaves(e,t,r,o,i){const s=this.getChildren(t);for(const t of s){const s=t.properties;if(s&&s.cluster?i+s.point_count<=o?i+=s.point_count:i=this._appendLeaves(e,s.cluster_id,r,o,i):i1;let l,h,u;if(a)l=Z(t,e,this.clusterProps),h=t[e],u=t[e+1];else {const r=this.points[t[e+T]];l=r.properties;const[o,i]=r.geometry.coordinates;h=z(o),u=D(i);}const c={type:1,geometry:[[Math.round(this.options.extent*(h*i-r)),Math.round(this.options.extent*(u*i-o))]],tags:l};let f;f=a||this.options.generateId?t[e+T]:this.points[t[e+T]].id,void 0!==f&&(c.id=f),s.features.push(c);}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){const{radius:r,extent:o,reduce:i,minPoints:s}=this.options,n=r/(o*Math.pow(2,t)),a=e.data,l=[],h=this.stride;for(let r=0;rt&&(d+=a[r+C]);}if(d>f&&d>=s){let e,s=o*f,n=u*f,p=-1;const g=((r/h|0)<<5)+(t+1)+this.points.length;for(const o of c){const l=o*h;if(a[l+2]<=t)continue;a[l+2]=t;const u=a[l+C];s+=a[l]*u,n+=a[l+1]*u,a[l+4]=g,i&&(e||(e=this._map(a,r,!0),p=this.clusterProps.length,this.clusterProps.push(e)),i(e,this._map(a,l)));}a[r+4]=g,l.push(s/d,n/d,1/0,g,-1,d),i&&l.push(p);}else {for(let e=0;e1)for(const e of c){const r=e*h;if(!(a[r+2]<=t)){a[r+2]=t;for(let e=0;e>5}_getOriginZoom(e){return (e-this.points.length)%32}_map(e,t,r){if(e[t+C]>1){const o=this.clusterProps[e[t+O]];return r?Object.assign({},o):o}const o=this.points[e[t+T]].properties,i=this.options.map(o);return r&&i===o?Object.assign({},i):i}}function F(e,t,r){return {type:\"Feature\",id:e[t+T],properties:Z(e,t,r),geometry:{type:\"Point\",coordinates:[(o=e[t],360*(o-.5)),E(e[t+1])]}};var o;}function Z(e,t,r){const o=e[t+C],i=o>=1e4?`${Math.round(o/1e3)}k`:o>=1e3?Math.round(o/100)/10+\"k\":o,s=e[t+O],n=-1===s?{}:Object.assign({},r[s]);return Object.assign(n,{cluster:!0,cluster_id:e[t+T],point_count:o,point_count_abbreviated:i})}function z(e){return e/360+.5}function D(e){const t=Math.sin(e*Math.PI/180),r=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return r<0?0:r>1?1:r}function E(e){const t=(180-360*e)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}var N={exports:{}};N.exports=function(){function e(r,o,i,s){for(var n,a=s,l=i-o>>1,h=i-o,u=r[o],c=r[o+1],f=r[i],d=r[i+1],p=o+3;pa)n=p,a=g;else if(g===a){var m=Math.abs(p-l);ms&&(n-o>3&&e(r,o,n,s),r[n+2]=a,i-n>3&&e(r,n,i,s));}function t(e,t,r,o,i,s){var n=i-r,a=s-o;if(0!==n||0!==a){var l=((e-r)*n+(t-o)*a)/(n*n+a*a);l>1?(r=i,o=s):l>0&&(r+=n*l,o+=a*l);}return (n=e-r)*n+(a=t-o)*a}function r(e,t,r,i){var s={id:void 0===e?null:e,type:t,geometry:r,tags:i,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(e){var t=e.geometry,r=e.type;if(\"Point\"===r||\"MultiPoint\"===r||\"LineString\"===r)o(e,t);else if(\"Polygon\"===r||\"MultiLineString\"===r)for(var i=0;i0&&(a+=i?(s*f-c*n)/2:Math.sqrt(Math.pow(c-s,2)+Math.pow(f-n,2))),s=c,n=f;}var d=r.length-3;r[2]=1,e(r,0,d,o),r[d+2]=1,r.size=Math.abs(a),r.start=0,r.end=r.size;}function a(e,t,r,o){for(var i=0;i1?1:r}function u(e,t,o,i,s,n,a,l){if(i/=t,n>=(o/=t)&&a=i)return null;for(var h=[],u=0;u=o&&v=i)){var w=[];if(\"Point\"===m||\"MultiPoint\"===m)c(g,w,o,i,s);else if(\"LineString\"===m)f(g,w,o,i,s,!1,l.lineMetrics);else if(\"MultiLineString\"===m)p(g,w,o,i,s,!1);else if(\"Polygon\"===m)p(g,w,o,i,s,!0);else if(\"MultiPolygon\"===m)for(var x=0;x=r&&n<=o&&(t.push(e[s]),t.push(e[s+1]),t.push(e[s+2]));}}function f(e,t,r,o,i,s,n){for(var a,l,h=d(e),u=0===i?m:y,c=e.start,f=0;fr&&(l=u(h,p,v,x,S,r),n&&(h.start=c+a*l)):M>o?b=r&&(l=u(h,p,v,x,S,r),I=!0),b>o&&M<=o&&(l=u(h,p,v,x,S,o),I=!0),!s&&I&&(n&&(h.end=c+a*l),t.push(h),h=d(e)),n&&(c+=a);}var k=e.length-3;p=e[k],v=e[k+1],w=e[k+2],(M=0===i?p:v)>=r&&M<=o&&g(h,p,v,w),k=h.length-3,s&&k>=3&&(h[k]!==h[0]||h[k+1]!==h[1])&&g(h,h[0],h[1],h[2]),h.length&&t.push(h);}function d(e){var t=[];return t.size=e.size,t.start=e.start,t.end=e.end,t}function p(e,t,r,o,i,s){for(var n=0;nn.maxX&&(n.maxX=u),c>n.maxY&&(n.maxY=c);}return n}function b(e,t,r,o){var i=t.geometry,s=t.type,n=[];if(\"Point\"===s||\"MultiPoint\"===s)for(var a=0;a0&&t.size<(i?n:o))r.numPoints+=t.length/3;else {for(var a=[],l=0;ln)&&(r.numSimplified++,a.push(t[l]),a.push(t[l+1])),r.numPoints++;i&&function(e,t){for(var r=0,o=0,i=e.length,s=i-2;o0===t)for(o=0,i=e.length;o24)throw new Error(\"maxZoom should be in the 0-24 range\");if(t.promoteId&&t.generateId)throw new Error(\"promoteId and generateId cannot be used together.\");var o=function(e,t){var r=[];if(\"FeatureCollection\"===e.type)for(var o=0;o1&&console.time(\"creation\"),d=this.tiles[f]=M(e,t,r,o,l),this.tileCoords.push({z:t,x:r,y:o}),h)){h>1&&(console.log(\"tile z%d-%d-%d (features: %d, points: %d, simplified: %d)\",t,r,o,d.numFeatures,d.numPoints,d.numSimplified),console.timeEnd(\"creation\"));var p=\"z\"+t;this.stats[p]=(this.stats[p]||0)+1,this.total++;}if(d.source=e,i){if(t===l.maxZoom||t===i)continue;var g=1<1&&console.time(\"clipping\");var m,y,v,w,x,S,b=.5*l.buffer/l.extent,I=.5-b,k=.5+b,_=1+b;m=y=v=w=null,x=u(e,c,r-b,r+k,0,d.minX,d.maxX,l),S=u(e,c,r+I,r+_,0,d.minX,d.maxX,l),e=null,x&&(m=u(x,c,o-b,o+k,1,d.minY,d.maxY,l),y=u(x,c,o+I,o+_,1,d.minY,d.maxY,l),x=null),S&&(v=u(S,c,o-b,o+k,1,d.minY,d.maxY,l),w=u(S,c,o+I,o+_,1,d.minY,d.maxY,l),S=null),h>1&&console.timeEnd(\"clipping\"),a.push(m||[],t+1,2*r,2*o),a.push(y||[],t+1,2*r,2*o+1),a.push(v||[],t+1,2*r+1,2*o),a.push(w||[],t+1,2*r+1,2*o+1);}}},k.prototype.getTile=function(e,t,r){var o=this.options,i=o.extent,s=o.debug;if(e<0||e>24)return null;var n=1<1&&console.log(\"drilling down to z%d-%d-%d\",e,t,r);for(var l,h=e,u=t,c=r;!l&&h>0;)h--,u=Math.floor(u/2),c=Math.floor(c/2),l=this.tiles[P(h,u,c)];return l&&l.source?(s>1&&console.log(\"found parent tile z%d-%d-%d\",h,u,c),s>1&&console.time(\"drilling down\"),this.splitTile(l.source,h,u,c,e,t,r),s>1&&console.timeEnd(\"drilling down\"),this.tiles[a]?x(this.tiles[a],i):null):null},function(e,t){return new k(e,t)}}();var J=e.g(N.exports);function Y(t,r){const o=t.tileID.canonical;if(!this._geoJSONIndex)return r(null,null);const i=this._geoJSONIndex.getTile(o.z,o.x,o.y);if(!i)return r(null,null);const s=new class{constructor(t){this.layers={_geojsonTileLayer:this},this.name=\"_geojsonTileLayer\",this.extent=e.E,this.length=t.length,this._features=t;}feature(t){return new class{constructor(t){this._feature=t,this.extent=e.E,this.type=t.type,this.properties=t.tags,\"id\"in t&&!isNaN(t.id)&&(this.id=parseInt(t.id,10));}loadGeometry(){if(1===this._feature.type){const t=[];for(const r of this._feature.geometry)t.push([new e.P(r[0],r[1])]);return t}{const t=[];for(const r of this._feature.geometry){const o=[];for(const t of r)o.push(new e.P(t[0],t[1]));t.push(o);}return t}}toGeoJSON(e,t,r){return l.call(this,e,t,r)}}(this._features[t])}}(i.features);let n=k(s);0===n.byteOffset&&n.byteLength===n.buffer.byteLength||(n=new Uint8Array(n)),r(null,{vectorTile:s,rawData:n.buffer});}class G extends e.d{constructor(e,t,r,o,i,s){super(e,t,r,o,Y,s),i&&(this.loadGeoJSON=i);}loadData(t,r){const o=t&&t.request,i=o&&o.collectResourceTiming;this.loadGeoJSON(t,((s,n)=>{if(s||!n)return r(s);if(\"object\"!=typeof n)return r(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));{a(n,!0);try{if(t.filter){const r=e.e(t.filter,{type:\"boolean\",\"property-type\":\"data-driven\",overridable:!1,transition:!1});if(\"error\"===r.result)throw new Error(r.value.map((e=>`${e.key}: ${e.message}`)).join(\", \"));const o=n.features.filter((e=>r.value.evaluate({zoom:0},e)));n={type:\"FeatureCollection\",features:o};}this._geoJSONIndex=t.cluster?new j(function({superclusterOptions:t,clusterProperties:r}){if(!r||!t)return t;const o={},i={},s={accumulated:null,zoom:0},n={properties:null},a=Object.keys(r);for(const t of a){const[s,n]=r[t],a=e.e(n),l=e.e(\"string\"==typeof s?[s,[\"accumulated\"],[\"get\",t]]:s);o[t]=a.value,i[t]=l.value;}return t.map=e=>{n.properties=e;const t={};for(const e of a)t[e]=o[e].evaluate(s,n);return t},t.reduce=(e,t)=>{n.properties=t;for(const t of a)s.accumulated=e[t],e[t]=i[t].evaluate(s,n);},t}(t)).load(n.features):J(n,t.geojsonVtOptions);}catch(s){return r(s)}this.loaded={};const l={};if(i){const r=e.f(o);r&&(l.resourceTiming={},l.resourceTiming[t.source]=JSON.parse(JSON.stringify(r)));}r(null,l);}}));}reloadTile(e,t){const r=this.loaded;return r&&r[e.uid]?super.reloadTile(e,t):this.loadTile(e,t)}loadGeoJSON(t,r){if(t.request)e.h(t.request,r);else {if(\"string\"!=typeof t.data)return r(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`));try{return r(null,JSON.parse(t.data))}catch(e){return r(new Error(`Input data given to '${t.source}' is not a valid GeoJSON object.`))}}}getClusterExpansionZoom(e,t){try{t(null,this._geoJSONIndex.getClusterExpansionZoom(e.clusterId));}catch(e){t(e);}}getClusterChildren(e,t){try{t(null,this._geoJSONIndex.getChildren(e.clusterId));}catch(e){t(e);}}getClusterLeaves(e,t){try{t(null,this._geoJSONIndex.getLeaves(e.clusterId,e.limit,e.offset));}catch(e){t(e);}}}class W{constructor(t,r){this.tileID=new e.O(t.tileID.overscaledZ,t.tileID.wrap,t.tileID.canonical.z,t.tileID.canonical.x,t.tileID.canonical.y),this.tileZoom=t.tileZoom,this.uid=t.uid,this.zoom=t.zoom,this.canonical=t.tileID.canonical,this.pixelRatio=t.pixelRatio,this.tileSize=t.tileSize,this.source=t.source,this.overscaling=this.tileID.overscaleFactor(),this.projection=t.projection,this.brightness=r;}parse(t,r,o,i){this.status=\"parsing\";const s=new e.O(o.tileID.overscaledZ,o.tileID.wrap,o.tileID.canonical.z,o.tileID.canonical.x,o.tileID.canonical.y),n={},a=r.familiesBySource[o.source],l=new e.F(s,o.promoteId);return l.bucketLayerIDs=[],e.l(t).then((t=>{if(!t)return i(new Error(\"Could not parse tile\"));const r=e.j(t,1/e.t(o.tileID.canonical)),h=t.json.extensionsUsed&&t.json.extensionsUsed.includes(\"MAPBOX_mesh_features\"),u=new e.k(this.zoom,{brightness:this.brightness});for(const o in a)for(const i of a[o]){const o=i[0],a=t.json.extensionsUsed;o.recalculate(u,[]);const l=new e.T(r,s,a&&a.includes(\"MAPBOX_mesh_features\"),this.brightness);h||(l.needsUpload=!0),n[o.fqid]=l,l.evaluate(o);}this.status=\"done\",i(null,{buckets:n,featureIndex:l});})).catch((e=>i(new Error(e.message))))}}class X{constructor(e,t,r,o,i,s){this.actor=e,this.layerIndex=t,this.brightness=s,this.loading={},this.loaded={};}loadTile(t,r){const o=t.uid,i=this.loading[o]=new W(t,this.brightness);e.i(t.request,((e,s)=>{const n=!this.loading[o];return delete this.loading[o],n||e?(i.status=\"done\",n||(this.loaded[o]=i),r(e)):s&&0!==s.byteLength?void i.parse(s,this.layerIndex,t,((e,t)=>{i.status=\"done\",this.loaded=this.loaded||{},this.loaded[o]=i,e||!t?r(e):r(null,t);})):(i.status=\"done\",this.loaded[o]=i,r())}));}reloadTile(e,t){const r=this.loaded,o=e.uid;if(r&&r[o]){const i=r[o];i.projection=e.projection,i.brightness=e.brightness;const s=(r,o)=>{i.reloadCallback&&(delete i.reloadCallback,this.loadTile(e,t)),t(r,o);};\"parsing\"===i.status?i.reloadCallback=s:\"done\"===i.status&&this.loadTile(e,t);}}abortTile(e,t){const r=e.uid;this.loading[r]&&delete this.loading[r],t();}removeTile(e,t){const r=this.loaded,o=e.uid;r&&r[o]&&delete r[o],t();}}class V{constructor(t){this.self=t,this.actor=new e.A(t,this),this.layerIndexes={},this.availableImages={},this.isSpriteLoaded={},this.projections={},this.defaultProjection=e.m({name:\"mercator\"}),this.workerSourceTypes={vector:e.d,geojson:G,\"batched-model\":X},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(e,t)=>{if(this.workerSourceTypes[e])throw new Error(`Worker source with name \"${e}\" already registered.`);this.workerSourceTypes[e]=t;},this.self.registerRTLTextPlugin=t=>{if(e.n.isParsed())throw new Error(\"RTL text plugin already registered.\");e.n.applyArabicShaping=t.applyArabicShaping,e.n.processBidirectionalText=t.processBidirectionalText,e.n.processStyledBidirectionalText=t.processStyledBidirectionalText;};}clearCaches(e,t,r){delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e],r();}checkIfReady(e,t,r){r();}setReferrer(e,t){this.referrer=t;}spriteLoaded(t,{scope:r,isLoaded:o}){if(this.isSpriteLoaded[t]||(this.isSpriteLoaded[t]={}),this.isSpriteLoaded[t][r]=o,this.workerSources[t]&&this.workerSources[t][r])for(const i in this.workerSources[t][r]){const s=this.workerSources[t][r][i];for(const t in s)s[t]instanceof e.d&&(s[t].isSpriteLoaded=o,s[t].fire(new e.o(\"isSpriteLoaded\")));}}setImages(e,{scope:t,images:r},o){if(this.availableImages[e]||(this.availableImages[e]={}),this.availableImages[e][t]=r,this.workerSources[e]&&this.workerSources[e][t]){for(const o in this.workerSources[e][t]){const i=this.workerSources[e][t][o];for(const e in i)i[e].availableImages=r;}o();}else o();}setProjection(t,r){this.projections[t]=e.m(r);}setBrightness(e,t,r){this.brightness=t,r();}setLayers(e,t,r){this.getLayerIndex(e,t.scope).replace(t.layers,t.options),r();}updateLayers(e,t,r){this.getLayerIndex(e,t.scope).update(t.layers,t.removedIds,t.options),r();}loadTile(e,t,r){t.projection=this.projections[e]||this.defaultProjection,this.getWorkerSource(e,t.type,t.source,t.scope).loadTile(t,r);}loadDEMTile(e,t,r){this.getDEMWorkerSource(e,t.source,t.scope).loadTile(t,r);}reloadTile(e,t,r){t.projection=this.projections[e]||this.defaultProjection,this.getWorkerSource(e,t.type,t.source,t.scope).reloadTile(t,r);}abortTile(e,t,r){this.getWorkerSource(e,t.type,t.source,t.scope).abortTile(t,r);}removeTile(e,t,r){this.getWorkerSource(e,t.type,t.source,t.scope).removeTile(t,r);}removeSource(e,t,r){if(!(this.workerSources[e]&&this.workerSources[e][t.scope]&&this.workerSources[e][t.scope][t.type]&&this.workerSources[e][t.scope][t.type][t.source]))return;const o=this.workerSources[e][t.scope][t.type][t.source];delete this.workerSources[e][t.scope][t.type][t.source],void 0!==o.removeSource?o.removeSource(t,r):r();}loadWorkerSource(e,t,r){try{this.self.importScripts(t.url),r();}catch(e){r(e.toString());}}syncRTLPluginState(t,r,o){try{e.n.setState(r);const t=e.n.getPluginURL();if(e.n.isLoaded()&&!e.n.isParsed()&&null!=t){this.self.importScripts(t);const r=e.n.isParsed();o(r?void 0:new Error(`RTL Text Plugin failed to import scripts from ${t}`),r);}}catch(e){o(e.toString());}}setDracoUrl(e,t){this.dracoUrl=t;}getAvailableImages(e,t){this.availableImages[e]||(this.availableImages[e]={});let r=this.availableImages[e][t];return r||(r=[]),r}getLayerIndex(e,t){this.layerIndexes[e]||(this.layerIndexes[e]={});let r=this.layerIndexes[e][t];return r||(r=this.layerIndexes[e][t]=new o,r.scope=t),r}getWorkerSource(e,t,r,o){if(this.workerSources[e]||(this.workerSources[e]={}),this.workerSources[e][o]||(this.workerSources[e][o]={}),this.workerSources[e][o][t]||(this.workerSources[e][o][t]={}),this.isSpriteLoaded[e]||(this.isSpriteLoaded[e]={}),!this.workerSources[e][o][t][r]){const i={send:(t,r,o,i,s,n)=>{this.actor.send(t,r,o,e,s,n);},scheduler:this.actor.scheduler};this.workerSources[e][o][t][r]=new this.workerSourceTypes[t](i,this.getLayerIndex(e,o),this.getAvailableImages(e,o),this.isSpriteLoaded[e][o],void 0,this.brightness);}return this.workerSources[e][o][t][r]}getDEMWorkerSource(e,t,r){return this.demWorkerSources[e]||(this.demWorkerSources[e]={}),this.demWorkerSources[e][r]||(this.demWorkerSources[e][r]={}),this.demWorkerSources[e][r][t]||(this.demWorkerSources[e][r][t]=new i),this.demWorkerSources[e][r][t]}enforceCacheSizeLimit(t,r){e.q(r);}getWorkerPerformanceMetrics(e,t,r){r(void 0,void 0);}}return \"undefined\"!=typeof WorkerGlobalScope&&\"undefined\"!=typeof self&&self instanceof WorkerGlobalScope&&(self.worker=new V(self)),V}));\n\ndefine([\"./shared\"],(function(e){\"use strict\";return e.s}));\n\n//\n// Our custom intro provides a specialized \"define()\" function, called by the\n// AMD modules below, that sets up the worker blob URL and then executes the\n// main module, storing its exported value as 'mapboxgl'\n\n\nvar mapboxgl$1 = mapboxgl;\n\nreturn mapboxgl$1;\n\n}));\n//# sourceMappingURL=mapbox-gl.js.map\n","/**\n * Create mapbox control container\n * @param {string} className\n */\nexport function controlContainer(className) {\n\tconst container = document.createElement('div');\n\tcontainer.classList.add('mapboxgl-ctrl', 'mapboxgl-ctrl-group', className);\n\treturn container;\n}\n\n/**\n * Create mapbox control button\n * @param {Object} options\n * @param {string=} options.title\n * @param {Node=} options.icon\n * @param {string=} options.textContent\n * @param {boolean=} options.disabled\n * @param {boolean=} options.hidden\n * @param {string=} options.className\n * @param {() => void=} options.onClick\n */\nexport function controlButton(options = {}) {\n\tconst button = document.createElement('button');\n\tbutton.type = 'button';\n\tif (options.title) {\n\t\tbutton.title = options.title;\n\t}\n\tif (options.icon) {\n\t\tbutton.appendChild(options.icon);\n\t}\n\tif (options.textContent) {\n\t\tbutton.textContent = options.textContent;\n\t}\n\tif (options.disabled) {\n\t\tbutton.disabled = true;\n\t}\n\tif (options.hidden) {\n\t\tbutton.hidden = true;\n\t}\n\tif (options.className) {\n\t\tbutton.classList.add(options.className);\n\t}\n\tif (options.onClick) {\n\t\tbutton.addEventListener('click', () => {\n\t\t\tif (!options.onClick) return;\n\t\t\toptions.onClick();\n\t\t});\n\t}\n\treturn button;\n}\n\n/**\n * Create SVG element from string code\n * @param {string} string\n */\nexport function parseSVG(string) {\n\treturn /** @type SVGElement */ ((new DOMParser().parseFromString(string, 'image/svg+xml')).firstChild);\n}\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst compass = parseSVG(`\n\n \n \n \n \n \n\n`);\n\nexport const icons = {\n\tcompass,\n};\n","import { controlContainer, controlButton } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\n\n/**\n * @typedef {{\n * \tinstant?: boolean;\n * }} CompassControlOptions\n */\n\nclass CompassControl {\n\t/**\n\t * @param {CompassControlOptions} options\n\t */\n\tconstructor(options = {}) {\n\t\tthis.options = { ...options };\n\t\tthis.container = controlContainer('mapbox-ctrl-compass');\n\t\tthis.icon = icons.compass;\n\t\tthis.button = controlButton({\n\t\t\ttitle: 'Compass',\n\t\t\ticon: icons.compass,\n\t\t\tonClick: () => this.onControlButtonClick(),\n\t\t});\n\t}\n\n\tonControlButtonClick() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.map.easeTo({ bearing: 0, pitch: 0 });\n\t}\n\n\tonRotate() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tconst angle = this.map.getBearing() * (-1);\n\t\tif (!this.options.instant) {\n\t\t\tthis.container.hidden = angle === 0;\n\t\t}\n\t\tthis.icon.style.transform = `rotate(${angle}deg)`;\n\t}\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tif (!this.options.instant) {\n\t\t\tthis.container.hidden = true;\n\t\t}\n\t\tthis.container.appendChild(this.button);\n\t\tthis.onRotate();\n\t\tthis.map.on('rotate', () => this.onRotate());\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n\nexport default CompassControl;\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst inspect = parseSVG(`\n\n \n \n\n`);\n\nexport const icons = {\n\tinspect,\n};\n","/**\n * @typedef {import('mapbox-gl').MapboxGeoJSONFeature} GeoJSONFeature\n */\n\n/**\n * @param {GeoJSONFeature[]} features\n * @param {number} current\n * @returns {string}\n */\nfunction html(features, current) {\n\tconst feature = features[current];\n\tconst withProperties = feature.properties && Object.keys(feature.properties).length;\n\tconst properties = feature.properties || {};\n\n\treturn (`\n
\n ${features.length > 1 ? '' : ''}\n \n ${features.length > 1 ? '' : ''}\n
\n \n ${feature.id ? (`\n \n \n \n \n `) : ''}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ${withProperties ? (`\n \n \n \n `) : ''}\n ${withProperties ? Object.entries(properties).map(([key, value]) => (`\n \n \n \n \n `)).join('') : ''}\n
$id${feature.id}
layer
id${feature.layer.id}
type${feature.layer.type}
source${feature.layer.source}
source-layer${feature.layer['source-layer'] ?? '-'}
properties
${key}${value}
\n `);\n}\n\n/**\n * @param {GeoJSONFeature[]} features\n * @returns {HTMLDivElement}\n */\nexport function popup(features) {\n\tconst node = document.createElement('div');\n\tlet current = 0;\n\tnode.classList.add('mapbox-ctrl-inspect-popup');\n\n\tif (!features.length) {\n\t\tnode.textContent = 'No features';\n\t\treturn node;\n\t}\n\n\tnode.innerHTML = html(features, current);\n\n\tnode.addEventListener('click', (event) => {\n\t\tconst target = /** @type {HTMLElement} */(event.target);\n\t\tif (target.matches('[data-prev]')) {\n\t\t\tconst isFirst = current === 0;\n\t\t\tcurrent = isFirst ? features.length - 1 : current - 1;\n\t\t} else if (target.matches('[data-next]')) {\n\t\t\tconst isLast = current === features.length - 1;\n\t\t\tcurrent = isLast ? 0 : current + 1;\n\t\t}\n\t\tnode.innerHTML = '';\n\t\tnode.innerHTML = html(features, current);\n\t});\n\n\treturn node;\n}\n","import { controlButton, controlContainer } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\nimport { popup } from './popup.js';\n\n/**\n * @typedef {{\n * \tconsole?: boolean\n * }} InspectControlOptions\n */\n\nexport default class InspectControl {\n\t/** @param {InspectControlOptions} options */\n\tconstructor(options = {}) {\n\t\tthis.options = { ...options };\n\t\tthis.container = controlContainer('mapbox-ctrl-inspect');\n\t\tthis.button = controlButton({\n\t\t\ttitle: 'Inspect',\n\t\t\ticon: icons.inspect,\n\t\t\tonClick: () => this.onControlButtonClick(),\n\t\t});\n\t\tthis.isActive = false;\n\t}\n\n\tonControlButtonClick() {\n\t\tif (this.isActive) {\n\t\t\tthis.deactivate();\n\t\t} else {\n\t\t\tthis.activate();\n\t\t}\n\t}\n\n\tactivate() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.isActive = true;\n\t\tthis.button.classList.add('-active');\n\t\tthis.map.on('click', this.mapClickListener);\n\t\tthis.map.on('move', this.updatePosition);\n\t\tthis.map.getCanvas().style.cursor = 'pointer';\n\t}\n\n\tdeactivate() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.isActive = false;\n\t\tthis.button.classList.remove('-active');\n\t\tthis.map.off('click', this.mapClickListener);\n\t\tthis.map.off('move', this.updatePosition);\n\t\tthis.map.getCanvas().style.cursor = '';\n\t\tthis.hideDetails();\n\t}\n\n\t/** @param {import('mapbox-gl').Point} point */\n\tgetPointFeatures(point) {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tconst selectThreshold = 3;\n\n\t\t/** @type {[[number, number], [number, number]]} */\n\t\tconst queryBox = [\n\t\t\t[point.x - selectThreshold, point.y + selectThreshold], // bottom left (SW)\n\t\t\t[point.x + selectThreshold, point.y - selectThreshold], // top right (NE)\n\t\t];\n\n\t\treturn this.map.queryRenderedFeatures(queryBox);\n\t}\n\n\t/** @param {import('mapbox-gl').MapboxGeoJSONFeature[]} features */\n\tshowDetails(features) {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.detailsNode = popup(features);\n\t\tthis.map.getContainer().appendChild(this.detailsNode);\n\t\tthis.updatePosition();\n\t\tif (this.options.console) {\n\t\t\tconsole.log(features);\n\t\t}\n\t}\n\n\thideDetails() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tif (!this.detailsNode) return;\n\t\tthis.map.getContainer().removeChild(this.detailsNode);\n\t\tthis.detailsNode = undefined;\n\t}\n\n\tupdatePosition = () => {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tif (!this.lngLat) return;\n\t\tif (!this.detailsNode) return;\n\t\tconst canvasRect = this.map.getCanvas().getBoundingClientRect();\n\t\tconst pos = this.map.project(this.lngLat);\n\t\tthis.detailsNode.style.left = `${pos.x - canvasRect.left}px`;\n\t\tthis.detailsNode.style.top = `${pos.y - canvasRect.top}px`;\n\t};\n\n\t/** @param {import('mapbox-gl').MapMouseEvent} event */\n\tmapClickListener = (event) => {\n\t\tthis.lngLat = event.lngLat;\n\t\tconst features = this.getPointFeatures(event.point);\n\t\tthis.hideDetails();\n\t\tthis.showDetails(features);\n\t};\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tthis.container.appendChild(this.button);\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.deactivate();\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst layers = parseSVG(`\n\n \n\n`);\n\nexport const icons = {\n\tlayers,\n};\n","import { controlButton, controlContainer } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\n\n/**\n * @typedef {{\n * \tlabel: string\n * \tstyleName: string\n * \tstyleUrl: string\n * }} Style\n *\n * @typedef {{\n * \tstyles?: Style[]\n * \tonChange?: (style: Style) => void\n * \tcompact?: boolean\n * }} StylesControlOptions\n */\n\nconst defaults = [\n\t{\n\t\tlabel: 'Streets',\n\t\tstyleName: 'Mapbox Streets',\n\t\tstyleUrl: 'mapbox://styles/mapbox/streets-v12',\n\t}, {\n\t\tlabel: 'Satellite',\n\t\tstyleName: 'Mapbox Satellite Streets',\n\t\tstyleUrl: 'mapbox://sprites/mapbox/satellite-streets-v12',\n\t},\n];\n\nexport default class StylesControl {\n\t/** @param {StylesControlOptions} options */\n\tconstructor(options = {}) {\n\t\tthis.options = { styles: defaults, ...options };\n\t\tthis.container = controlContainer('mapbox-ctrl-styles');\n\t\tthis.container.classList.add(options.compact ? 'mapbox-ctrl-styles-compact' : 'mapbox-ctrl-styles-expanded');\n\t}\n\n\t/** @param {string} name */\n\tfindStyleByName(name) {\n\t\tconst style = this.options.styles.find((s) => s.styleName === name);\n\t\tif (!style) throw Error(`can't find style with name ${name}`);\n\t\treturn style;\n\t}\n\n\texpanded() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\t/** @type HTMLButtonElement[] */\n\t\tconst buttons = [];\n\t\tthis.options.styles.forEach((style) => {\n\t\t\tconst button = controlButton({\n\t\t\t\ttitle: style.label,\n\t\t\t\ttextContent: style.label,\n\t\t\t\tonClick: () => {\n\t\t\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\t\t\tif (button.classList.contains('-active')) return;\n\t\t\t\t\tthis.map.setStyle(style.styleUrl);\n\t\t\t\t\tif (this.options.onChange) this.options.onChange(style);\n\t\t\t\t},\n\t\t\t});\n\t\t\tbuttons.push(button);\n\t\t\tthis.container.appendChild(button);\n\t\t});\n\n\t\tthis.map.on('styledata', () => {\n\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\tbuttons.forEach((button) => {\n\t\t\t\tbutton.classList.remove('-active');\n\t\t\t});\n\t\t\tconst styleNames = this.options.styles.map((style) => style.styleName);\n\t\t\tconst styleName = this.map.getStyle().name;\n\t\t\tif (!styleName) throw Error('style must have name');\n\t\t\tconst currentStyleIndex = styleNames.indexOf(styleName);\n\t\t\tif (currentStyleIndex !== -1) {\n\t\t\t\tconst currentButton = buttons[currentStyleIndex];\n\t\t\t\tcurrentButton.classList.add('-active');\n\t\t\t}\n\t\t});\n\t}\n\n\tcompact() {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tconst button = controlButton({ title: 'Styles', icon: icons.layers });\n\t\tconst select = document.createElement('select');\n\t\tthis.container.appendChild(button);\n\t\tbutton.appendChild(select);\n\n\t\tthis.options.styles.forEach((style) => {\n\t\t\tconst option = document.createElement('option');\n\t\t\tselect.appendChild(option);\n\t\t\toption.textContent = style.label;\n\t\t\toption.value = style.styleName;\n\t\t});\n\n\t\tselect.addEventListener('change', () => {\n\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\tconst style = this.findStyleByName(select.value);\n\t\t\tthis.map.setStyle(style.styleUrl);\n\t\t\tif (this.options.onChange) this.options.onChange(style);\n\t\t});\n\n\t\tthis.map.on('styledata', () => {\n\t\t\tif (!this.map) throw Error('map is undefined');\n\t\t\tconst styleName = this.map.getStyle().name;\n\t\t\tif (!styleName) throw Error('style must have name');\n\t\t\tselect.value = styleName;\n\t\t});\n\t}\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tif (this.options.compact) {\n\t\t\tthis.compact();\n\t\t} else {\n\t\t\tthis.expanded();\n\t\t}\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n","import { parseSVG } from '@mapbox-controls/helpers';\n\nconst plus = parseSVG(`\n\n \n \n\n`);\n\nconst minus = parseSVG(`\n\n \n \n\n`);\n\nexport const icons = {\n\tplus,\n\tminus,\n};\n","import { controlButton, controlContainer } from '@mapbox-controls/helpers';\nimport { icons } from './icons.js';\n\nclass ZoomControl {\n\tconstructor() {\n\t\tthis.container = controlContainer('mapbox-ctrl-zoom');\n\t\tthis.buttonIn = controlButton({\n\t\t\ttitle: 'Zoom In',\n\t\t\ticon: icons.plus,\n\t\t\tonClick: () => this.map?.zoomIn(),\n\t\t});\n\t\tthis.buttonOut = controlButton({\n\t\t\ttitle: 'Zoom Out',\n\t\t\ticon: icons.minus,\n\t\t\tonClick: () => this.map?.zoomOut(),\n\t\t});\n\t}\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tthis.container.appendChild(this.buttonIn);\n\t\tthis.container.appendChild(this.buttonOut);\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n\nexport default ZoomControl;\n","/** @typedef {import('mapbox-gl').StyleFunction} StyleFunction */\n/** @typedef {import('mapbox-gl').Expression} Expression */\n/** @typedef {string | StyleFunction | Expression} TextField */\n\n/**\n * @typedef {{\n * \tsupportedLanguages?: string[]\n * \tlanguage?: string\n * \tgetLanguageKey?: (language: string) => string\n * \texcludedLayerIds?: string[]\n * }} LanguageControlOptions\n */\n\nconst defaults = {\n\tsupportedLanguages: ['ar', 'de', 'en', 'es', 'fr', 'it', 'ja', 'ko', 'mul', 'pt', 'ru', 'vi', 'zh-Hans', 'zh-Hant'],\n\tgetLanguageKey: (/** @type {string} */ language) => (language === 'mul' ? 'name' : `name_${language}`),\n\texcludedLayerIds: [],\n};\n\nexport default class LanguageControl {\n\t/** @param {LanguageControlOptions} options */\n\tconstructor(options = {}) {\n\t\tthis.options = { ...defaults, ...options };\n\t\tthis.container = document.createElement('div');\n\t}\n\n\tstyleChangeListener = () => {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tthis.map.off('styledata', this.styleChangeListener);\n\t\tthis.setLanguage(this.options.language);\n\t};\n\n\t/** @param {string=} lang */\n\tsetLanguage(lang) {\n\t\tif (!this.map) throw Error('map is undefined');\n\t\tlet language = lang || this.browserLanguage();\n\t\tif (this.options.supportedLanguages.indexOf(language) < 0) {\n\t\t\tlanguage = 'mul';\n\t\t}\n\t\tconst style = this.map.getStyle();\n\t\tif (!style.layers) return;\n\t\tconst languageKey = this.options.getLanguageKey(language);\n\t\tconst layers = style.layers.map((layer) => {\n\t\t\tif (layer.type !== 'symbol') return layer;\n\t\t\tif (!layer.layout || !layer.layout['text-field']) return layer;\n\t\t\tif (this.options.excludedLayerIds.indexOf(layer.id) !== -1) return layer;\n\n\t\t\tconst textField = layer.layout['text-field'];\n\t\t\tconst textFieldLocalized = this.localizeTextField(textField, languageKey);\n\n\t\t\treturn {\n\t\t\t\t...layer,\n\t\t\t\tlayout: {\n\t\t\t\t\t...layer.layout,\n\t\t\t\t\t'text-field': textFieldLocalized,\n\t\t\t\t},\n\t\t\t};\n\t\t});\n\n\t\tthis.map.setStyle({ ...style, layers });\n\t}\n\n\tbrowserLanguage() {\n\t\tconst language = navigator?.languages[0] ?? navigator.language;\n\t\tconst parts = language.split('-');\n\t\tconst languageCode = parts.length > 1 ? parts[0] : language;\n\t\tif (this.options.supportedLanguages.indexOf(languageCode) > -1) return languageCode;\n\n\t\treturn 'mul';\n\t}\n\n\t/**\n * @param {TextField} field\n * @param {string} languageKey\n * @returns {TextField}\n */\n\tlocalizeTextField(field, languageKey) {\n\t\t// string\n\t\tif (typeof field === 'string') {\n\t\t\treturn field.replace(/{name.*?}/, `{${languageKey}}`);\n\t\t}\n\n\t\tconst str = JSON.stringify(field);\n\n\t\t// expression\n\t\tif (Array.isArray(field)) {\n\t\t\treturn JSON.parse(str.replace(\n\t\t\t\t/\"coalesce\",\\[\"get\",\"name.*?\"]/g,\n\t\t\t\t`\"coalesce\",[\"get\",\"${languageKey}\"]`,\n\t\t\t));\n\t\t}\n\n\t\t// style function\n\t\treturn JSON.parse(str.replace(/{name.*?}/g, `{${languageKey}}`));\n\t}\n\n\t/**\n\t * @param {import('mapbox-gl').Map} map\n\t * @returns {HTMLElement}\n\t */\n\tonAdd(map) {\n\t\tthis.map = map;\n\t\tthis.map.on('styledata', this.styleChangeListener);\n\t\treturn this.container;\n\t}\n\n\tonRemove() {\n\t\tthis.map?.off('styledata', this.styleChangeListener);\n\t\tthis.container.parentNode?.removeChild(this.container);\n\t}\n}\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","export default function getUAString() {\n var uaData = navigator.userAgentData;\n\n if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n\n return navigator.userAgent;\n}","import getUAString from \"../utils/userAgent.js\";\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}","import { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nimport getWindow from \"./getWindow.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n\n var _ref = isElement(element) ? getWindow(element) : window,\n visualViewport = _ref.visualViewport;\n\n var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getUAString from \"../utils/userAgent.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test(getUAString());\n var isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref, win) {\n var x = _ref.x,\n y = _ref.y;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }, getWindow(popper)) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = getBoundingClientRect(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getViewportRect(element, strategy) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = isLayoutViewport();\n\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n });\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref) {\n var name = _ref.name,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n effect = _ref.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/*!\n * Bootstrap v5.3.2 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\nimport * as Popper from '@popperjs/core';\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * Constants\n */\n\nconst elementMap = new Map();\nconst Data = {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map());\n }\n const instanceMap = elementMap.get(element);\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);\n return;\n }\n instanceMap.set(key, instance);\n },\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null;\n }\n return null;\n },\n remove(element, key) {\n if (!elementMap.has(element)) {\n return;\n }\n const instanceMap = elementMap.get(element);\n instanceMap.delete(key);\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element);\n }\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000;\nconst MILLISECONDS_MULTIPLIER = 1000;\nconst TRANSITION_END = 'transitionend';\n\n/**\n * Properly escape IDs selectors to handle weird IDs\n * @param {string} selector\n * @returns {string}\n */\nconst parseSelector = selector => {\n if (selector && window.CSS && window.CSS.escape) {\n // document.querySelector needs escaping to handle IDs (html5+) containing for instance /\n selector = selector.replace(/#([^\\s\"#']+)/g, (match, id) => `#${CSS.escape(id)}`);\n }\n return selector;\n};\n\n// Shout-out Angus Croll (https://goo.gl/pxwQGp)\nconst toType = object => {\n if (object === null || object === undefined) {\n return `${object}`;\n }\n return Object.prototype.toString.call(object).match(/\\s([a-z]+)/i)[1].toLowerCase();\n};\n\n/**\n * Public Util API\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID);\n } while (document.getElementById(prefix));\n return prefix;\n};\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0;\n }\n\n // Get transition-duration of the element\n let {\n transitionDuration,\n transitionDelay\n } = window.getComputedStyle(element);\n const floatTransitionDuration = Number.parseFloat(transitionDuration);\n const floatTransitionDelay = Number.parseFloat(transitionDelay);\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0;\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0];\n transitionDelay = transitionDelay.split(',')[0];\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;\n};\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END));\n};\nconst isElement = object => {\n if (!object || typeof object !== 'object') {\n return false;\n }\n if (typeof object.jquery !== 'undefined') {\n object = object[0];\n }\n return typeof object.nodeType !== 'undefined';\n};\nconst getElement = object => {\n // it's a jQuery object or a node element\n if (isElement(object)) {\n return object.jquery ? object[0] : object;\n }\n if (typeof object === 'string' && object.length > 0) {\n return document.querySelector(parseSelector(object));\n }\n return null;\n};\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false;\n }\n const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible';\n // Handle `details` element as its content may falsie appear visible when it is closed\n const closedDetails = element.closest('details:not([open])');\n if (!closedDetails) {\n return elementIsVisible;\n }\n if (closedDetails !== element) {\n const summary = element.closest('summary');\n if (summary && summary.parentNode !== closedDetails) {\n return false;\n }\n if (summary === null) {\n return false;\n }\n }\n return elementIsVisible;\n};\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true;\n }\n if (element.classList.contains('disabled')) {\n return true;\n }\n if (typeof element.disabled !== 'undefined') {\n return element.disabled;\n }\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false';\n};\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null;\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode();\n return root instanceof ShadowRoot ? root : null;\n }\n if (element instanceof ShadowRoot) {\n return element;\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null;\n }\n return findShadowRoot(element.parentNode);\n};\nconst noop = () => {};\n\n/**\n * Trick to restart an element's animation\n *\n * @param {HTMLElement} element\n * @return void\n *\n * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation\n */\nconst reflow = element => {\n element.offsetHeight; // eslint-disable-line no-unused-expressions\n};\n\nconst getjQuery = () => {\n if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return window.jQuery;\n }\n return null;\n};\nconst DOMContentLoadedCallbacks = [];\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n for (const callback of DOMContentLoadedCallbacks) {\n callback();\n }\n });\n }\n DOMContentLoadedCallbacks.push(callback);\n } else {\n callback();\n }\n};\nconst isRTL = () => document.documentElement.dir === 'rtl';\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery();\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME;\n const JQUERY_NO_CONFLICT = $.fn[name];\n $.fn[name] = plugin.jQueryInterface;\n $.fn[name].Constructor = plugin;\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT;\n return plugin.jQueryInterface;\n };\n }\n });\n};\nconst execute = (possibleCallback, args = [], defaultValue = possibleCallback) => {\n return typeof possibleCallback === 'function' ? possibleCallback(...args) : defaultValue;\n};\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback);\n return;\n }\n const durationPadding = 5;\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding;\n let called = false;\n const handler = ({\n target\n }) => {\n if (target !== transitionElement) {\n return;\n }\n called = true;\n transitionElement.removeEventListener(TRANSITION_END, handler);\n execute(callback);\n };\n transitionElement.addEventListener(TRANSITION_END, handler);\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement);\n }\n }, emulatedDuration);\n};\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n const listLength = list.length;\n let index = list.indexOf(activeElement);\n\n // if the element does not exist in the list return an element\n // depending on the direction and if cycle is allowed\n if (index === -1) {\n return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0];\n }\n index += shouldGetNext ? 1 : -1;\n if (isCycleAllowed) {\n index = (index + listLength) % listLength;\n }\n return list[Math.max(0, Math.min(index, listLength - 1))];\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/;\nconst stripNameRegex = /\\..*/;\nconst stripUidRegex = /::\\d+$/;\nconst eventRegistry = {}; // Events storage\nlet uidEvent = 1;\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n};\nconst nativeEvents = new Set(['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll']);\n\n/**\n * Private methods\n */\n\nfunction makeEventUid(element, uid) {\n return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++;\n}\nfunction getElementEvents(element) {\n const uid = makeEventUid(element);\n element.uidEvent = uid;\n eventRegistry[uid] = eventRegistry[uid] || {};\n return eventRegistry[uid];\n}\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n hydrateObj(event, {\n delegateTarget: element\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn);\n }\n return fn.apply(element, [event]);\n };\n}\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector);\n for (let {\n target\n } = event; target && target !== this; target = target.parentNode) {\n for (const domElement of domElements) {\n if (domElement !== target) {\n continue;\n }\n hydrateObj(event, {\n delegateTarget: target\n });\n if (handler.oneOff) {\n EventHandler.off(element, event.type, selector, fn);\n }\n return fn.apply(target, [event]);\n }\n }\n };\n}\nfunction findHandler(events, callable, delegationSelector = null) {\n return Object.values(events).find(event => event.callable === callable && event.delegationSelector === delegationSelector);\n}\nfunction normalizeParameters(originalTypeEvent, handler, delegationFunction) {\n const isDelegated = typeof handler === 'string';\n // TODO: tooltip passes `false` instead of selector, so we need to check\n const callable = isDelegated ? delegationFunction : handler || delegationFunction;\n let typeEvent = getTypeEvent(originalTypeEvent);\n if (!nativeEvents.has(typeEvent)) {\n typeEvent = originalTypeEvent;\n }\n return [isDelegated, callable, typeEvent];\n}\nfunction addHandler(element, originalTypeEvent, handler, delegationFunction, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n let [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (originalTypeEvent in customEvents) {\n const wrapFunction = fn => {\n return function (event) {\n if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) {\n return fn.call(this, event);\n }\n };\n };\n callable = wrapFunction(callable);\n }\n const events = getElementEvents(element);\n const handlers = events[typeEvent] || (events[typeEvent] = {});\n const previousFunction = findHandler(handlers, callable, isDelegated ? handler : null);\n if (previousFunction) {\n previousFunction.oneOff = previousFunction.oneOff && oneOff;\n return;\n }\n const uid = makeEventUid(callable, originalTypeEvent.replace(namespaceRegex, ''));\n const fn = isDelegated ? bootstrapDelegationHandler(element, handler, callable) : bootstrapHandler(element, callable);\n fn.delegationSelector = isDelegated ? handler : null;\n fn.callable = callable;\n fn.oneOff = oneOff;\n fn.uidEvent = uid;\n handlers[uid] = fn;\n element.addEventListener(typeEvent, fn, isDelegated);\n}\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector);\n if (!fn) {\n return;\n }\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector));\n delete events[typeEvent][fn.uidEvent];\n}\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {};\n for (const [handlerKey, event] of Object.entries(storeElementEvent)) {\n if (handlerKey.includes(namespace)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n}\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '');\n return customEvents[event] || event;\n}\nconst EventHandler = {\n on(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, false);\n },\n one(element, event, handler, delegationFunction) {\n addHandler(element, event, handler, delegationFunction, true);\n },\n off(element, originalTypeEvent, handler, delegationFunction) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return;\n }\n const [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);\n const inNamespace = typeEvent !== originalTypeEvent;\n const events = getElementEvents(element);\n const storeElementEvent = events[typeEvent] || {};\n const isNamespace = originalTypeEvent.startsWith('.');\n if (typeof callable !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!Object.keys(storeElementEvent).length) {\n return;\n }\n removeHandler(element, events, typeEvent, callable, isDelegated ? handler : null);\n return;\n }\n if (isNamespace) {\n for (const elementEvent of Object.keys(events)) {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1));\n }\n }\n for (const [keyHandlers, event] of Object.entries(storeElementEvent)) {\n const handlerKey = keyHandlers.replace(stripUidRegex, '');\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);\n }\n }\n },\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null;\n }\n const $ = getjQuery();\n const typeEvent = getTypeEvent(event);\n const inNamespace = event !== typeEvent;\n let jQueryEvent = null;\n let bubbles = true;\n let nativeDispatch = true;\n let defaultPrevented = false;\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args);\n $(element).trigger(jQueryEvent);\n bubbles = !jQueryEvent.isPropagationStopped();\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();\n defaultPrevented = jQueryEvent.isDefaultPrevented();\n }\n const evt = hydrateObj(new Event(event, {\n bubbles,\n cancelable: true\n }), args);\n if (defaultPrevented) {\n evt.preventDefault();\n }\n if (nativeDispatch) {\n element.dispatchEvent(evt);\n }\n if (evt.defaultPrevented && jQueryEvent) {\n jQueryEvent.preventDefault();\n }\n return evt;\n }\n};\nfunction hydrateObj(obj, meta = {}) {\n for (const [key, value] of Object.entries(meta)) {\n try {\n obj[key] = value;\n } catch (_unused) {\n Object.defineProperty(obj, key, {\n configurable: true,\n get() {\n return value;\n }\n });\n }\n }\n return obj;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(value) {\n if (value === 'true') {\n return true;\n }\n if (value === 'false') {\n return false;\n }\n if (value === Number(value).toString()) {\n return Number(value);\n }\n if (value === '' || value === 'null') {\n return null;\n }\n if (typeof value !== 'string') {\n return value;\n }\n try {\n return JSON.parse(decodeURIComponent(value));\n } catch (_unused) {\n return value;\n }\n}\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`);\n}\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value);\n },\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`);\n },\n getDataAttributes(element) {\n if (!element) {\n return {};\n }\n const attributes = {};\n const bsKeys = Object.keys(element.dataset).filter(key => key.startsWith('bs') && !key.startsWith('bsConfig'));\n for (const key of bsKeys) {\n let pureKey = key.replace(/^bs/, '');\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length);\n attributes[pureKey] = normalizeData(element.dataset[key]);\n }\n return attributes;\n },\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`));\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/config.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Class definition\n */\n\nclass Config {\n // Getters\n static get Default() {\n return {};\n }\n static get DefaultType() {\n return {};\n }\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!');\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n return config;\n }\n _mergeConfigObj(config, element) {\n const jsonConfig = isElement(element) ? Manipulator.getDataAttribute(element, 'config') : {}; // try to parse\n\n return {\n ...this.constructor.Default,\n ...(typeof jsonConfig === 'object' ? jsonConfig : {}),\n ...(isElement(element) ? Manipulator.getDataAttributes(element) : {}),\n ...(typeof config === 'object' ? config : {})\n };\n }\n _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {\n for (const [property, expectedTypes] of Object.entries(configTypes)) {\n const value = config[property];\n const valueType = isElement(value) ? 'element' : toType(value);\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`);\n }\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst VERSION = '5.3.2';\n\n/**\n * Class definition\n */\n\nclass BaseComponent extends Config {\n constructor(element, config) {\n super();\n element = getElement(element);\n if (!element) {\n return;\n }\n this._element = element;\n this._config = this._getConfig(config);\n Data.set(this._element, this.constructor.DATA_KEY, this);\n }\n\n // Public\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY);\n EventHandler.off(this._element, this.constructor.EVENT_KEY);\n for (const propertyName of Object.getOwnPropertyNames(this)) {\n this[propertyName] = null;\n }\n }\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated);\n }\n _getConfig(config) {\n config = this._mergeConfigObj(config, this._element);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n\n // Static\n static getInstance(element) {\n return Data.get(getElement(element), this.DATA_KEY);\n }\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null);\n }\n static get VERSION() {\n return VERSION;\n }\n static get DATA_KEY() {\n return `bs.${this.NAME}`;\n }\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`;\n }\n static eventName(name) {\n return `${name}${this.EVENT_KEY}`;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target');\n if (!selector || selector === '#') {\n let hrefAttribute = element.getAttribute('href');\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttribute || !hrefAttribute.includes('#') && !hrefAttribute.startsWith('.')) {\n return null;\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {\n hrefAttribute = `#${hrefAttribute.split('#')[1]}`;\n }\n selector = hrefAttribute && hrefAttribute !== '#' ? parseSelector(hrefAttribute.trim()) : null;\n }\n return selector;\n};\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector));\n },\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector);\n },\n children(element, selector) {\n return [].concat(...element.children).filter(child => child.matches(selector));\n },\n parents(element, selector) {\n const parents = [];\n let ancestor = element.parentNode.closest(selector);\n while (ancestor) {\n parents.push(ancestor);\n ancestor = ancestor.parentNode.closest(selector);\n }\n return parents;\n },\n prev(element, selector) {\n let previous = element.previousElementSibling;\n while (previous) {\n if (previous.matches(selector)) {\n return [previous];\n }\n previous = previous.previousElementSibling;\n }\n return [];\n },\n // TODO: this is now unused; remove later along with prev()\n next(element, selector) {\n let next = element.nextElementSibling;\n while (next) {\n if (next.matches(selector)) {\n return [next];\n }\n next = next.nextElementSibling;\n }\n return [];\n },\n focusableChildren(element) {\n const focusables = ['a', 'button', 'input', 'textarea', 'select', 'details', '[tabindex]', '[contenteditable=\"true\"]'].map(selector => `${selector}:not([tabindex^=\"-\"])`).join(',');\n return this.find(focusables, element).filter(el => !isDisabled(el) && isVisible(el));\n },\n getSelectorFromElement(element) {\n const selector = getSelector(element);\n if (selector) {\n return SelectorEngine.findOne(selector) ? selector : null;\n }\n return null;\n },\n getElementFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.findOne(selector) : null;\n },\n getMultipleElementsFromSelector(element) {\n const selector = getSelector(element);\n return selector ? SelectorEngine.find(selector) : [];\n }\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/component-functions.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst enableDismissTrigger = (component, method = 'hide') => {\n const clickEvent = `click.dismiss${component.EVENT_KEY}`;\n const name = component.NAME;\n EventHandler.on(document, clickEvent, `[data-bs-dismiss=\"${name}\"]`, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n const target = SelectorEngine.getElementFromSelector(this) || this.closest(`.${name}`);\n const instance = component.getOrCreateInstance(target);\n\n // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method\n instance[method]();\n });\n};\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$f = 'alert';\nconst DATA_KEY$a = 'bs.alert';\nconst EVENT_KEY$b = `.${DATA_KEY$a}`;\nconst EVENT_CLOSE = `close${EVENT_KEY$b}`;\nconst EVENT_CLOSED = `closed${EVENT_KEY$b}`;\nconst CLASS_NAME_FADE$5 = 'fade';\nconst CLASS_NAME_SHOW$8 = 'show';\n\n/**\n * Class definition\n */\n\nclass Alert extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$f;\n }\n\n // Public\n close() {\n const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE);\n if (closeEvent.defaultPrevented) {\n return;\n }\n this._element.classList.remove(CLASS_NAME_SHOW$8);\n const isAnimated = this._element.classList.contains(CLASS_NAME_FADE$5);\n this._queueCallback(() => this._destroyElement(), this._element, isAnimated);\n }\n\n // Private\n _destroyElement() {\n this._element.remove();\n EventHandler.trigger(this._element, EVENT_CLOSED);\n this.dispose();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nenableDismissTrigger(Alert, 'close');\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Alert);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$e = 'button';\nconst DATA_KEY$9 = 'bs.button';\nconst EVENT_KEY$a = `.${DATA_KEY$9}`;\nconst DATA_API_KEY$6 = '.data-api';\nconst CLASS_NAME_ACTIVE$3 = 'active';\nconst SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle=\"button\"]';\nconst EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$6}`;\n\n/**\n * Class definition\n */\n\nclass Button extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME$e;\n }\n\n // Public\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3));\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this);\n if (config === 'toggle') {\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => {\n event.preventDefault();\n const button = event.target.closest(SELECTOR_DATA_TOGGLE$5);\n const data = Button.getOrCreateInstance(button);\n data.toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Button);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/swipe.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$d = 'swipe';\nconst EVENT_KEY$9 = '.bs.swipe';\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`;\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`;\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`;\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`;\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`;\nconst POINTER_TYPE_TOUCH = 'touch';\nconst POINTER_TYPE_PEN = 'pen';\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event';\nconst SWIPE_THRESHOLD = 40;\nconst Default$c = {\n endCallback: null,\n leftCallback: null,\n rightCallback: null\n};\nconst DefaultType$c = {\n endCallback: '(function|null)',\n leftCallback: '(function|null)',\n rightCallback: '(function|null)'\n};\n\n/**\n * Class definition\n */\n\nclass Swipe extends Config {\n constructor(element, config) {\n super();\n this._element = element;\n if (!element || !Swipe.isSupported()) {\n return;\n }\n this._config = this._getConfig(config);\n this._deltaX = 0;\n this._supportPointerEvents = Boolean(window.PointerEvent);\n this._initEvents();\n }\n\n // Getters\n static get Default() {\n return Default$c;\n }\n static get DefaultType() {\n return DefaultType$c;\n }\n static get NAME() {\n return NAME$d;\n }\n\n // Public\n dispose() {\n EventHandler.off(this._element, EVENT_KEY$9);\n }\n\n // Private\n _start(event) {\n if (!this._supportPointerEvents) {\n this._deltaX = event.touches[0].clientX;\n return;\n }\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX;\n }\n }\n _end(event) {\n if (this._eventIsPointerPenTouch(event)) {\n this._deltaX = event.clientX - this._deltaX;\n }\n this._handleSwipe();\n execute(this._config.endCallback);\n }\n _move(event) {\n this._deltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this._deltaX;\n }\n _handleSwipe() {\n const absDeltaX = Math.abs(this._deltaX);\n if (absDeltaX <= SWIPE_THRESHOLD) {\n return;\n }\n const direction = absDeltaX / this._deltaX;\n this._deltaX = 0;\n if (!direction) {\n return;\n }\n execute(direction > 0 ? this._config.rightCallback : this._config.leftCallback);\n }\n _initEvents() {\n if (this._supportPointerEvents) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => this._start(event));\n EventHandler.on(this._element, EVENT_POINTERUP, event => this._end(event));\n this._element.classList.add(CLASS_NAME_POINTER_EVENT);\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => this._start(event));\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => this._move(event));\n EventHandler.on(this._element, EVENT_TOUCHEND, event => this._end(event));\n }\n }\n _eventIsPointerPenTouch(event) {\n return this._supportPointerEvents && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH);\n }\n\n // Static\n static isSupported() {\n return 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$c = 'carousel';\nconst DATA_KEY$8 = 'bs.carousel';\nconst EVENT_KEY$8 = `.${DATA_KEY$8}`;\nconst DATA_API_KEY$5 = '.data-api';\nconst ARROW_LEFT_KEY$1 = 'ArrowLeft';\nconst ARROW_RIGHT_KEY$1 = 'ArrowRight';\nconst TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch\n\nconst ORDER_NEXT = 'next';\nconst ORDER_PREV = 'prev';\nconst DIRECTION_LEFT = 'left';\nconst DIRECTION_RIGHT = 'right';\nconst EVENT_SLIDE = `slide${EVENT_KEY$8}`;\nconst EVENT_SLID = `slid${EVENT_KEY$8}`;\nconst EVENT_KEYDOWN$1 = `keydown${EVENT_KEY$8}`;\nconst EVENT_MOUSEENTER$1 = `mouseenter${EVENT_KEY$8}`;\nconst EVENT_MOUSELEAVE$1 = `mouseleave${EVENT_KEY$8}`;\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY$8}`;\nconst EVENT_LOAD_DATA_API$3 = `load${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`;\nconst CLASS_NAME_CAROUSEL = 'carousel';\nconst CLASS_NAME_ACTIVE$2 = 'active';\nconst CLASS_NAME_SLIDE = 'slide';\nconst CLASS_NAME_END = 'carousel-item-end';\nconst CLASS_NAME_START = 'carousel-item-start';\nconst CLASS_NAME_NEXT = 'carousel-item-next';\nconst CLASS_NAME_PREV = 'carousel-item-prev';\nconst SELECTOR_ACTIVE = '.active';\nconst SELECTOR_ITEM = '.carousel-item';\nconst SELECTOR_ACTIVE_ITEM = SELECTOR_ACTIVE + SELECTOR_ITEM;\nconst SELECTOR_ITEM_IMG = '.carousel-item img';\nconst SELECTOR_INDICATORS = '.carousel-indicators';\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]';\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]';\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY$1]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY$1]: DIRECTION_LEFT\n};\nconst Default$b = {\n interval: 5000,\n keyboard: true,\n pause: 'hover',\n ride: false,\n touch: true,\n wrap: true\n};\nconst DefaultType$b = {\n interval: '(number|boolean)',\n // TODO:v6 remove boolean support\n keyboard: 'boolean',\n pause: '(string|boolean)',\n ride: '(boolean|string)',\n touch: 'boolean',\n wrap: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._interval = null;\n this._activeElement = null;\n this._isSliding = false;\n this.touchTimeout = null;\n this._swipeHelper = null;\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element);\n this._addEventListeners();\n if (this._config.ride === CLASS_NAME_CAROUSEL) {\n this.cycle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$b;\n }\n static get DefaultType() {\n return DefaultType$b;\n }\n static get NAME() {\n return NAME$c;\n }\n\n // Public\n next() {\n this._slide(ORDER_NEXT);\n }\n nextWhenVisible() {\n // FIXME TODO use `document.visibilityState`\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next();\n }\n }\n prev() {\n this._slide(ORDER_PREV);\n }\n pause() {\n if (this._isSliding) {\n triggerTransitionEnd(this._element);\n }\n this._clearInterval();\n }\n cycle() {\n this._clearInterval();\n this._updateInterval();\n this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval);\n }\n _maybeEnableCycle() {\n if (!this._config.ride) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.cycle());\n return;\n }\n this.cycle();\n }\n to(index) {\n const items = this._getItems();\n if (index > items.length - 1 || index < 0) {\n return;\n }\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index));\n return;\n }\n const activeIndex = this._getItemIndex(this._getActive());\n if (activeIndex === index) {\n return;\n }\n const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV;\n this._slide(order, items[index]);\n }\n dispose() {\n if (this._swipeHelper) {\n this._swipeHelper.dispose();\n }\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n config.defaultInterval = config.interval;\n return config;\n }\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN$1, event => this._keydown(event));\n }\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER$1, () => this.pause());\n EventHandler.on(this._element, EVENT_MOUSELEAVE$1, () => this._maybeEnableCycle());\n }\n if (this._config.touch && Swipe.isSupported()) {\n this._addTouchEventListeners();\n }\n }\n _addTouchEventListeners() {\n for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {\n EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault());\n }\n const endCallBack = () => {\n if (this._config.pause !== 'hover') {\n return;\n }\n\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause();\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout);\n }\n this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval);\n };\n const swipeConfig = {\n leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),\n rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),\n endCallback: endCallBack\n };\n this._swipeHelper = new Swipe(this._element, swipeConfig);\n }\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return;\n }\n const direction = KEY_TO_DIRECTION[event.key];\n if (direction) {\n event.preventDefault();\n this._slide(this._directionToOrder(direction));\n }\n }\n _getItemIndex(element) {\n return this._getItems().indexOf(element);\n }\n _setActiveIndicatorElement(index) {\n if (!this._indicatorsElement) {\n return;\n }\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement);\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2);\n activeIndicator.removeAttribute('aria-current');\n const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to=\"${index}\"]`, this._indicatorsElement);\n if (newActiveIndicator) {\n newActiveIndicator.classList.add(CLASS_NAME_ACTIVE$2);\n newActiveIndicator.setAttribute('aria-current', 'true');\n }\n }\n _updateInterval() {\n const element = this._activeElement || this._getActive();\n if (!element) {\n return;\n }\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10);\n this._config.interval = elementInterval || this._config.defaultInterval;\n }\n _slide(order, element = null) {\n if (this._isSliding) {\n return;\n }\n const activeElement = this._getActive();\n const isNext = order === ORDER_NEXT;\n const nextElement = element || getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap);\n if (nextElement === activeElement) {\n return;\n }\n const nextElementIndex = this._getItemIndex(nextElement);\n const triggerEvent = eventName => {\n return EventHandler.trigger(this._element, eventName, {\n relatedTarget: nextElement,\n direction: this._orderToDirection(order),\n from: this._getItemIndex(activeElement),\n to: nextElementIndex\n });\n };\n const slideEvent = triggerEvent(EVENT_SLIDE);\n if (slideEvent.defaultPrevented) {\n return;\n }\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n // TODO: change tests that use empty divs to avoid this check\n return;\n }\n const isCycling = Boolean(this._interval);\n this.pause();\n this._isSliding = true;\n this._setActiveIndicatorElement(nextElementIndex);\n this._activeElement = nextElement;\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END;\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV;\n nextElement.classList.add(orderClassName);\n reflow(nextElement);\n activeElement.classList.add(directionalClassName);\n nextElement.classList.add(directionalClassName);\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName);\n nextElement.classList.add(CLASS_NAME_ACTIVE$2);\n activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName);\n this._isSliding = false;\n triggerEvent(EVENT_SLID);\n };\n this._queueCallback(completeCallBack, activeElement, this._isAnimated());\n if (isCycling) {\n this.cycle();\n }\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_SLIDE);\n }\n _getActive() {\n return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element);\n }\n _getItems() {\n return SelectorEngine.find(SELECTOR_ITEM, this._element);\n }\n _clearInterval() {\n if (this._interval) {\n clearInterval(this._interval);\n this._interval = null;\n }\n }\n _directionToOrder(direction) {\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT;\n }\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV;\n }\n _orderToDirection(order) {\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT;\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Carousel.getOrCreateInstance(this, config);\n if (typeof config === 'number') {\n data.to(config);\n return;\n }\n if (typeof config === 'string') {\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return;\n }\n event.preventDefault();\n const carousel = Carousel.getOrCreateInstance(target);\n const slideIndex = this.getAttribute('data-bs-slide-to');\n if (slideIndex) {\n carousel.to(slideIndex);\n carousel._maybeEnableCycle();\n return;\n }\n if (Manipulator.getDataAttribute(this, 'slide') === 'next') {\n carousel.next();\n carousel._maybeEnableCycle();\n return;\n }\n carousel.prev();\n carousel._maybeEnableCycle();\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$3, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE);\n for (const carousel of carousels) {\n Carousel.getOrCreateInstance(carousel);\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Carousel);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$b = 'collapse';\nconst DATA_KEY$7 = 'bs.collapse';\nconst EVENT_KEY$7 = `.${DATA_KEY$7}`;\nconst DATA_API_KEY$4 = '.data-api';\nconst EVENT_SHOW$6 = `show${EVENT_KEY$7}`;\nconst EVENT_SHOWN$6 = `shown${EVENT_KEY$7}`;\nconst EVENT_HIDE$6 = `hide${EVENT_KEY$7}`;\nconst EVENT_HIDDEN$6 = `hidden${EVENT_KEY$7}`;\nconst EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`;\nconst CLASS_NAME_SHOW$7 = 'show';\nconst CLASS_NAME_COLLAPSE = 'collapse';\nconst CLASS_NAME_COLLAPSING = 'collapsing';\nconst CLASS_NAME_COLLAPSED = 'collapsed';\nconst CLASS_NAME_DEEPER_CHILDREN = `:scope .${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`;\nconst CLASS_NAME_HORIZONTAL = 'collapse-horizontal';\nconst WIDTH = 'width';\nconst HEIGHT = 'height';\nconst SELECTOR_ACTIVES = '.collapse.show, .collapse.collapsing';\nconst SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle=\"collapse\"]';\nconst Default$a = {\n parent: null,\n toggle: true\n};\nconst DefaultType$a = {\n parent: '(null|element)',\n toggle: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isTransitioning = false;\n this._triggerArray = [];\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4);\n for (const elem of toggleList) {\n const selector = SelectorEngine.getSelectorFromElement(elem);\n const filterElement = SelectorEngine.find(selector).filter(foundElement => foundElement === this._element);\n if (selector !== null && filterElement.length) {\n this._triggerArray.push(elem);\n }\n }\n this._initializeChildren();\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._triggerArray, this._isShown());\n }\n if (this._config.toggle) {\n this.toggle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$a;\n }\n static get DefaultType() {\n return DefaultType$a;\n }\n static get NAME() {\n return NAME$b;\n }\n\n // Public\n toggle() {\n if (this._isShown()) {\n this.hide();\n } else {\n this.show();\n }\n }\n show() {\n if (this._isTransitioning || this._isShown()) {\n return;\n }\n let activeChildren = [];\n\n // find active children\n if (this._config.parent) {\n activeChildren = this._getFirstLevelChildren(SELECTOR_ACTIVES).filter(element => element !== this._element).map(element => Collapse.getOrCreateInstance(element, {\n toggle: false\n }));\n }\n if (activeChildren.length && activeChildren[0]._isTransitioning) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n for (const activeInstance of activeChildren) {\n activeInstance.hide();\n }\n const dimension = this._getDimension();\n this._element.classList.remove(CLASS_NAME_COLLAPSE);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.style[dimension] = 0;\n this._addAriaAndCollapsedClass(this._triggerArray, true);\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n this._element.style[dimension] = '';\n EventHandler.trigger(this._element, EVENT_SHOWN$6);\n };\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);\n const scrollSize = `scroll${capitalizedDimension}`;\n this._queueCallback(complete, this._element, true);\n this._element.style[dimension] = `${this._element[scrollSize]}px`;\n }\n hide() {\n if (this._isTransitioning || !this._isShown()) {\n return;\n }\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$6);\n if (startEvent.defaultPrevented) {\n return;\n }\n const dimension = this._getDimension();\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`;\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_COLLAPSING);\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);\n for (const trigger of this._triggerArray) {\n const element = SelectorEngine.getElementFromSelector(trigger);\n if (element && !this._isShown(element)) {\n this._addAriaAndCollapsedClass([trigger], false);\n }\n }\n this._isTransitioning = true;\n const complete = () => {\n this._isTransitioning = false;\n this._element.classList.remove(CLASS_NAME_COLLAPSING);\n this._element.classList.add(CLASS_NAME_COLLAPSE);\n EventHandler.trigger(this._element, EVENT_HIDDEN$6);\n };\n this._element.style[dimension] = '';\n this._queueCallback(complete, this._element, true);\n }\n _isShown(element = this._element) {\n return element.classList.contains(CLASS_NAME_SHOW$7);\n }\n\n // Private\n _configAfterMerge(config) {\n config.toggle = Boolean(config.toggle); // Coerce string values\n config.parent = getElement(config.parent);\n return config;\n }\n _getDimension() {\n return this._element.classList.contains(CLASS_NAME_HORIZONTAL) ? WIDTH : HEIGHT;\n }\n _initializeChildren() {\n if (!this._config.parent) {\n return;\n }\n const children = this._getFirstLevelChildren(SELECTOR_DATA_TOGGLE$4);\n for (const element of children) {\n const selected = SelectorEngine.getElementFromSelector(element);\n if (selected) {\n this._addAriaAndCollapsedClass([element], this._isShown(selected));\n }\n }\n }\n _getFirstLevelChildren(selector) {\n const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent);\n // remove children if greater depth\n return SelectorEngine.find(selector, this._config.parent).filter(element => !children.includes(element));\n }\n _addAriaAndCollapsedClass(triggerArray, isOpen) {\n if (!triggerArray.length) {\n return;\n }\n for (const element of triggerArray) {\n element.classList.toggle(CLASS_NAME_COLLAPSED, !isOpen);\n element.setAttribute('aria-expanded', isOpen);\n }\n }\n\n // Static\n static jQueryInterface(config) {\n const _config = {};\n if (typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false;\n }\n return this.each(function () {\n const data = Collapse.getOrCreateInstance(this, _config);\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n }\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) {\n // preventDefault only for elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') {\n event.preventDefault();\n }\n for (const element of SelectorEngine.getMultipleElementsFromSelector(this)) {\n Collapse.getOrCreateInstance(element, {\n toggle: false\n }).toggle();\n }\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Collapse);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$a = 'dropdown';\nconst DATA_KEY$6 = 'bs.dropdown';\nconst EVENT_KEY$6 = `.${DATA_KEY$6}`;\nconst DATA_API_KEY$3 = '.data-api';\nconst ESCAPE_KEY$2 = 'Escape';\nconst TAB_KEY$1 = 'Tab';\nconst ARROW_UP_KEY$1 = 'ArrowUp';\nconst ARROW_DOWN_KEY$1 = 'ArrowDown';\nconst RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button\n\nconst EVENT_HIDE$5 = `hide${EVENT_KEY$6}`;\nconst EVENT_HIDDEN$5 = `hidden${EVENT_KEY$6}`;\nconst EVENT_SHOW$5 = `show${EVENT_KEY$6}`;\nconst EVENT_SHOWN$5 = `shown${EVENT_KEY$6}`;\nconst EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$6}${DATA_API_KEY$3}`;\nconst CLASS_NAME_SHOW$6 = 'show';\nconst CLASS_NAME_DROPUP = 'dropup';\nconst CLASS_NAME_DROPEND = 'dropend';\nconst CLASS_NAME_DROPSTART = 'dropstart';\nconst CLASS_NAME_DROPUP_CENTER = 'dropup-center';\nconst CLASS_NAME_DROPDOWN_CENTER = 'dropdown-center';\nconst SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle=\"dropdown\"]:not(.disabled):not(:disabled)';\nconst SELECTOR_DATA_TOGGLE_SHOWN = `${SELECTOR_DATA_TOGGLE$3}.${CLASS_NAME_SHOW$6}`;\nconst SELECTOR_MENU = '.dropdown-menu';\nconst SELECTOR_NAVBAR = '.navbar';\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav';\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)';\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start';\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end';\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start';\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end';\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start';\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start';\nconst PLACEMENT_TOPCENTER = 'top';\nconst PLACEMENT_BOTTOMCENTER = 'bottom';\nconst Default$9 = {\n autoClose: true,\n boundary: 'clippingParents',\n display: 'dynamic',\n offset: [0, 2],\n popperConfig: null,\n reference: 'toggle'\n};\nconst DefaultType$9 = {\n autoClose: '(boolean|string)',\n boundary: '(string|element)',\n display: 'string',\n offset: '(array|string|function)',\n popperConfig: '(null|object|function)',\n reference: '(string|element|object)'\n};\n\n/**\n * Class definition\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._popper = null;\n this._parent = this._element.parentNode; // dropdown wrapper\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);\n this._inNavbar = this._detectNavbar();\n }\n\n // Getters\n static get Default() {\n return Default$9;\n }\n static get DefaultType() {\n return DefaultType$9;\n }\n static get NAME() {\n return NAME$a;\n }\n\n // Public\n toggle() {\n return this._isShown() ? this.hide() : this.show();\n }\n show() {\n if (isDisabled(this._element) || this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$5, relatedTarget);\n if (showEvent.defaultPrevented) {\n return;\n }\n this._createPopper();\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement && !this._parent.closest(SELECTOR_NAVBAR_NAV)) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n this._element.focus();\n this._element.setAttribute('aria-expanded', true);\n this._menu.classList.add(CLASS_NAME_SHOW$6);\n this._element.classList.add(CLASS_NAME_SHOW$6);\n EventHandler.trigger(this._element, EVENT_SHOWN$5, relatedTarget);\n }\n hide() {\n if (isDisabled(this._element) || !this._isShown()) {\n return;\n }\n const relatedTarget = {\n relatedTarget: this._element\n };\n this._completeHide(relatedTarget);\n }\n dispose() {\n if (this._popper) {\n this._popper.destroy();\n }\n super.dispose();\n }\n update() {\n this._inNavbar = this._detectNavbar();\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Private\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$5, relatedTarget);\n if (hideEvent.defaultPrevented) {\n return;\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n if (this._popper) {\n this._popper.destroy();\n }\n this._menu.classList.remove(CLASS_NAME_SHOW$6);\n this._element.classList.remove(CLASS_NAME_SHOW$6);\n this._element.setAttribute('aria-expanded', 'false');\n Manipulator.removeDataAttribute(this._menu, 'popper');\n EventHandler.trigger(this._element, EVENT_HIDDEN$5, relatedTarget);\n }\n _getConfig(config) {\n config = super._getConfig(config);\n if (typeof config.reference === 'object' && !isElement(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME$a.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`);\n }\n return config;\n }\n _createPopper() {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)');\n }\n let referenceElement = this._element;\n if (this._config.reference === 'parent') {\n referenceElement = this._parent;\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference);\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference;\n }\n const popperConfig = this._getPopperConfig();\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig);\n }\n _isShown() {\n return this._menu.classList.contains(CLASS_NAME_SHOW$6);\n }\n _getPlacement() {\n const parentDropdown = this._parent;\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP_CENTER)) {\n return PLACEMENT_TOPCENTER;\n }\n if (parentDropdown.classList.contains(CLASS_NAME_DROPDOWN_CENTER)) {\n return PLACEMENT_BOTTOMCENTER;\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end';\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP;\n }\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM;\n }\n _detectNavbar() {\n return this._element.closest(SELECTOR_NAVBAR) !== null;\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n };\n\n // Disable Popper if we have a static display or Dropdown is in Navbar\n if (this._inNavbar || this._config.display === 'static') {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // TODO: v6 remove\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }];\n }\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _selectMenuItem({\n key,\n target\n }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(element => isVisible(element));\n if (!items.length) {\n return;\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY$1, !items.includes(target)).focus();\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Dropdown.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n static clearMenus(event) {\n if (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY$1) {\n return;\n }\n const openToggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE_SHOWN);\n for (const toggle of openToggles) {\n const context = Dropdown.getInstance(toggle);\n if (!context || context._config.autoClose === false) {\n continue;\n }\n const composedPath = event.composedPath();\n const isMenuTarget = composedPath.includes(context._menu);\n if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) {\n continue;\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY$1 || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue;\n }\n const relatedTarget = {\n relatedTarget: context._element\n };\n if (event.type === 'click') {\n relatedTarget.clickEvent = event;\n }\n context._completeHide(relatedTarget);\n }\n }\n static dataApiKeydownHandler(event) {\n // If not an UP | DOWN | ESCAPE key => not a dropdown command\n // If input/textarea && if key is other than ESCAPE => not a dropdown command\n\n const isInput = /input|textarea/i.test(event.target.tagName);\n const isEscapeEvent = event.key === ESCAPE_KEY$2;\n const isUpOrDownEvent = [ARROW_UP_KEY$1, ARROW_DOWN_KEY$1].includes(event.key);\n if (!isUpOrDownEvent && !isEscapeEvent) {\n return;\n }\n if (isInput && !isEscapeEvent) {\n return;\n }\n event.preventDefault();\n\n // TODO: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.3/forms/input-group/\n const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);\n const instance = Dropdown.getOrCreateInstance(getToggleButton);\n if (isUpOrDownEvent) {\n event.stopPropagation();\n instance.show();\n instance._selectMenuItem(event);\n return;\n }\n if (instance._isShown()) {\n // else is escape and we check if it is shown\n event.stopPropagation();\n instance.hide();\n getToggleButton.focus();\n }\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus);\nEventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) {\n event.preventDefault();\n Dropdown.getOrCreateInstance(this).toggle();\n});\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Dropdown);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$9 = 'backdrop';\nconst CLASS_NAME_FADE$4 = 'fade';\nconst CLASS_NAME_SHOW$5 = 'show';\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME$9}`;\nconst Default$8 = {\n className: 'modal-backdrop',\n clickCallback: null,\n isAnimated: false,\n isVisible: true,\n // if false, we use the backdrop helper without adding any element to the dom\n rootElement: 'body' // give the choice to place backdrop under different elements\n};\n\nconst DefaultType$8 = {\n className: 'string',\n clickCallback: '(function|null)',\n isAnimated: 'boolean',\n isVisible: 'boolean',\n rootElement: '(element|string)'\n};\n\n/**\n * Class definition\n */\n\nclass Backdrop extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isAppended = false;\n this._element = null;\n }\n\n // Getters\n static get Default() {\n return Default$8;\n }\n static get DefaultType() {\n return DefaultType$8;\n }\n static get NAME() {\n return NAME$9;\n }\n\n // Public\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._append();\n const element = this._getElement();\n if (this._config.isAnimated) {\n reflow(element);\n }\n element.classList.add(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n execute(callback);\n });\n }\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback);\n return;\n }\n this._getElement().classList.remove(CLASS_NAME_SHOW$5);\n this._emulateAnimation(() => {\n this.dispose();\n execute(callback);\n });\n }\n dispose() {\n if (!this._isAppended) {\n return;\n }\n EventHandler.off(this._element, EVENT_MOUSEDOWN);\n this._element.remove();\n this._isAppended = false;\n }\n\n // Private\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div');\n backdrop.className = this._config.className;\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE$4);\n }\n this._element = backdrop;\n }\n return this._element;\n }\n _configAfterMerge(config) {\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement);\n return config;\n }\n _append() {\n if (this._isAppended) {\n return;\n }\n const element = this._getElement();\n this._config.rootElement.append(element);\n EventHandler.on(element, EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback);\n });\n this._isAppended = true;\n }\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated);\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/focustrap.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$8 = 'focustrap';\nconst DATA_KEY$5 = 'bs.focustrap';\nconst EVENT_KEY$5 = `.${DATA_KEY$5}`;\nconst EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$5}`;\nconst EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY$5}`;\nconst TAB_KEY = 'Tab';\nconst TAB_NAV_FORWARD = 'forward';\nconst TAB_NAV_BACKWARD = 'backward';\nconst Default$7 = {\n autofocus: true,\n trapElement: null // The element to trap focus inside of\n};\n\nconst DefaultType$7 = {\n autofocus: 'boolean',\n trapElement: 'element'\n};\n\n/**\n * Class definition\n */\n\nclass FocusTrap extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n this._isActive = false;\n this._lastTabNavDirection = null;\n }\n\n // Getters\n static get Default() {\n return Default$7;\n }\n static get DefaultType() {\n return DefaultType$7;\n }\n static get NAME() {\n return NAME$8;\n }\n\n // Public\n activate() {\n if (this._isActive) {\n return;\n }\n if (this._config.autofocus) {\n this._config.trapElement.focus();\n }\n EventHandler.off(document, EVENT_KEY$5); // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN$2, event => this._handleFocusin(event));\n EventHandler.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event));\n this._isActive = true;\n }\n deactivate() {\n if (!this._isActive) {\n return;\n }\n this._isActive = false;\n EventHandler.off(document, EVENT_KEY$5);\n }\n\n // Private\n _handleFocusin(event) {\n const {\n trapElement\n } = this._config;\n if (event.target === document || event.target === trapElement || trapElement.contains(event.target)) {\n return;\n }\n const elements = SelectorEngine.focusableChildren(trapElement);\n if (elements.length === 0) {\n trapElement.focus();\n } else if (this._lastTabNavDirection === TAB_NAV_BACKWARD) {\n elements[elements.length - 1].focus();\n } else {\n elements[0].focus();\n }\n }\n _handleKeydown(event) {\n if (event.key !== TAB_KEY) {\n return;\n }\n this._lastTabNavDirection = event.shiftKey ? TAB_NAV_BACKWARD : TAB_NAV_FORWARD;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';\nconst SELECTOR_STICKY_CONTENT = '.sticky-top';\nconst PROPERTY_PADDING = 'padding-right';\nconst PROPERTY_MARGIN = 'margin-right';\n\n/**\n * Class definition\n */\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body;\n }\n\n // Public\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth;\n return Math.abs(window.innerWidth - documentWidth);\n }\n hide() {\n const width = this.getWidth();\n this._disableOverFlow();\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);\n }\n reset() {\n this._resetElementAttributes(this._element, 'overflow');\n this._resetElementAttributes(this._element, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);\n }\n isOverflowing() {\n return this.getWidth() > 0;\n }\n\n // Private\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow');\n this._element.style.overflow = 'hidden';\n }\n _setElementAttributes(selector, styleProperty, callback) {\n const scrollbarWidth = this.getWidth();\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return;\n }\n this._saveInitialAttribute(element, styleProperty);\n const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);\n element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _saveInitialAttribute(element, styleProperty) {\n const actualValue = element.style.getPropertyValue(styleProperty);\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProperty, actualValue);\n }\n }\n _resetElementAttributes(selector, styleProperty) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProperty);\n // We only want to remove the property if the value is `null`; the value can also be zero\n if (value === null) {\n element.style.removeProperty(styleProperty);\n return;\n }\n Manipulator.removeDataAttribute(element, styleProperty);\n element.style.setProperty(styleProperty, value);\n };\n this._applyManipulationCallback(selector, manipulationCallBack);\n }\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector);\n return;\n }\n for (const sel of SelectorEngine.find(selector, this._element)) {\n callBack(sel);\n }\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$7 = 'modal';\nconst DATA_KEY$4 = 'bs.modal';\nconst EVENT_KEY$4 = `.${DATA_KEY$4}`;\nconst DATA_API_KEY$2 = '.data-api';\nconst ESCAPE_KEY$1 = 'Escape';\nconst EVENT_HIDE$4 = `hide${EVENT_KEY$4}`;\nconst EVENT_HIDE_PREVENTED$1 = `hidePrevented${EVENT_KEY$4}`;\nconst EVENT_HIDDEN$4 = `hidden${EVENT_KEY$4}`;\nconst EVENT_SHOW$4 = `show${EVENT_KEY$4}`;\nconst EVENT_SHOWN$4 = `shown${EVENT_KEY$4}`;\nconst EVENT_RESIZE$1 = `resize${EVENT_KEY$4}`;\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY$4}`;\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$4}`;\nconst EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$4}`;\nconst EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$4}${DATA_API_KEY$2}`;\nconst CLASS_NAME_OPEN = 'modal-open';\nconst CLASS_NAME_FADE$3 = 'fade';\nconst CLASS_NAME_SHOW$4 = 'show';\nconst CLASS_NAME_STATIC = 'modal-static';\nconst OPEN_SELECTOR$1 = '.modal.show';\nconst SELECTOR_DIALOG = '.modal-dialog';\nconst SELECTOR_MODAL_BODY = '.modal-body';\nconst SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle=\"modal\"]';\nconst Default$6 = {\n backdrop: true,\n focus: true,\n keyboard: true\n};\nconst DefaultType$6 = {\n backdrop: '(boolean|string)',\n focus: 'boolean',\n keyboard: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element);\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._isShown = false;\n this._isTransitioning = false;\n this._scrollBar = new ScrollBarHelper();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$6;\n }\n static get DefaultType() {\n return DefaultType$6;\n }\n static get NAME() {\n return NAME$7;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._isTransitioning = true;\n this._scrollBar.hide();\n document.body.classList.add(CLASS_NAME_OPEN);\n this._adjustDialog();\n this._backdrop.show(() => this._showElement(relatedTarget));\n }\n hide() {\n if (!this._isShown || this._isTransitioning) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._isShown = false;\n this._isTransitioning = true;\n this._focustrap.deactivate();\n this._element.classList.remove(CLASS_NAME_SHOW$4);\n this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());\n }\n dispose() {\n EventHandler.off(window, EVENT_KEY$4);\n EventHandler.off(this._dialog, EVENT_KEY$4);\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n handleUpdate() {\n this._adjustDialog();\n }\n\n // Private\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop),\n // 'static' option will be translated to true, and booleans will keep their value,\n isAnimated: this._isAnimated()\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _showElement(relatedTarget) {\n // try to append dynamic modal\n if (!document.body.contains(this._element)) {\n document.body.append(this._element);\n }\n this._element.style.display = 'block';\n this._element.removeAttribute('aria-hidden');\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.scrollTop = 0;\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog);\n if (modalBody) {\n modalBody.scrollTop = 0;\n }\n reflow(this._element);\n this._element.classList.add(CLASS_NAME_SHOW$4);\n const transitionComplete = () => {\n if (this._config.focus) {\n this._focustrap.activate();\n }\n this._isTransitioning = false;\n EventHandler.trigger(this._element, EVENT_SHOWN$4, {\n relatedTarget\n });\n };\n this._queueCallback(transitionComplete, this._dialog, this._isAnimated());\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => {\n if (event.key !== ESCAPE_KEY$1) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n this._triggerBackdropTransition();\n });\n EventHandler.on(window, EVENT_RESIZE$1, () => {\n if (this._isShown && !this._isTransitioning) {\n this._adjustDialog();\n }\n });\n EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {\n // a bad trick to segregate clicks that may start inside dialog but end outside, and avoid listen to scrollbar clicks\n EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {\n if (this._element !== event.target || this._element !== event2.target) {\n return;\n }\n if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition();\n return;\n }\n if (this._config.backdrop) {\n this.hide();\n }\n });\n });\n }\n _hideModal() {\n this._element.style.display = 'none';\n this._element.setAttribute('aria-hidden', true);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n this._isTransitioning = false;\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN);\n this._resetAdjustments();\n this._scrollBar.reset();\n EventHandler.trigger(this._element, EVENT_HIDDEN$4);\n });\n }\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE$3);\n }\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED$1);\n if (hideEvent.defaultPrevented) {\n return;\n }\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const initialOverflowY = this._element.style.overflowY;\n // return if the following background transition hasn't yet completed\n if (initialOverflowY === 'hidden' || this._element.classList.contains(CLASS_NAME_STATIC)) {\n return;\n }\n if (!isModalOverflowing) {\n this._element.style.overflowY = 'hidden';\n }\n this._element.classList.add(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.classList.remove(CLASS_NAME_STATIC);\n this._queueCallback(() => {\n this._element.style.overflowY = initialOverflowY;\n }, this._dialog);\n }, this._dialog);\n this._element.focus();\n }\n\n /**\n * The following methods are used to handle overflowing modals\n */\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;\n const scrollbarWidth = this._scrollBar.getWidth();\n const isBodyOverflowing = scrollbarWidth > 0;\n if (isBodyOverflowing && !isModalOverflowing) {\n const property = isRTL() ? 'paddingLeft' : 'paddingRight';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n if (!isBodyOverflowing && isModalOverflowing) {\n const property = isRTL() ? 'paddingRight' : 'paddingLeft';\n this._element.style[property] = `${scrollbarWidth}px`;\n }\n }\n _resetAdjustments() {\n this._element.style.paddingLeft = '';\n this._element.style.paddingRight = '';\n }\n\n // Static\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](relatedTarget);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n EventHandler.one(target, EVENT_SHOW$4, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$4, () => {\n if (isVisible(this)) {\n this.focus();\n }\n });\n });\n\n // avoid conflict when clicking modal toggler while another one is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR$1);\n if (alreadyOpen) {\n Modal.getInstance(alreadyOpen).hide();\n }\n const data = Modal.getOrCreateInstance(target);\n data.toggle(this);\n});\nenableDismissTrigger(Modal);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Modal);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$6 = 'offcanvas';\nconst DATA_KEY$3 = 'bs.offcanvas';\nconst EVENT_KEY$3 = `.${DATA_KEY$3}`;\nconst DATA_API_KEY$1 = '.data-api';\nconst EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst ESCAPE_KEY = 'Escape';\nconst CLASS_NAME_SHOW$3 = 'show';\nconst CLASS_NAME_SHOWING$1 = 'showing';\nconst CLASS_NAME_HIDING = 'hiding';\nconst CLASS_NAME_BACKDROP = 'offcanvas-backdrop';\nconst OPEN_SELECTOR = '.offcanvas.show';\nconst EVENT_SHOW$3 = `show${EVENT_KEY$3}`;\nconst EVENT_SHOWN$3 = `shown${EVENT_KEY$3}`;\nconst EVENT_HIDE$3 = `hide${EVENT_KEY$3}`;\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$3}`;\nconst EVENT_HIDDEN$3 = `hidden${EVENT_KEY$3}`;\nconst EVENT_RESIZE = `resize${EVENT_KEY$3}`;\nconst EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$3}${DATA_API_KEY$1}`;\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$3}`;\nconst SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle=\"offcanvas\"]';\nconst Default$5 = {\n backdrop: true,\n keyboard: true,\n scroll: false\n};\nconst DefaultType$5 = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n scroll: 'boolean'\n};\n\n/**\n * Class definition\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n this._isShown = false;\n this._backdrop = this._initializeBackDrop();\n this._focustrap = this._initializeFocusTrap();\n this._addEventListeners();\n }\n\n // Getters\n static get Default() {\n return Default$5;\n }\n static get DefaultType() {\n return DefaultType$5;\n }\n static get NAME() {\n return NAME$6;\n }\n\n // Public\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget);\n }\n show(relatedTarget) {\n if (this._isShown) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, {\n relatedTarget\n });\n if (showEvent.defaultPrevented) {\n return;\n }\n this._isShown = true;\n this._backdrop.show();\n if (!this._config.scroll) {\n new ScrollBarHelper().hide();\n }\n this._element.setAttribute('aria-modal', true);\n this._element.setAttribute('role', 'dialog');\n this._element.classList.add(CLASS_NAME_SHOWING$1);\n const completeCallBack = () => {\n if (!this._config.scroll || this._config.backdrop) {\n this._focustrap.activate();\n }\n this._element.classList.add(CLASS_NAME_SHOW$3);\n this._element.classList.remove(CLASS_NAME_SHOWING$1);\n EventHandler.trigger(this._element, EVENT_SHOWN$3, {\n relatedTarget\n });\n };\n this._queueCallback(completeCallBack, this._element, true);\n }\n hide() {\n if (!this._isShown) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3);\n if (hideEvent.defaultPrevented) {\n return;\n }\n this._focustrap.deactivate();\n this._element.blur();\n this._isShown = false;\n this._element.classList.add(CLASS_NAME_HIDING);\n this._backdrop.hide();\n const completeCallback = () => {\n this._element.classList.remove(CLASS_NAME_SHOW$3, CLASS_NAME_HIDING);\n this._element.removeAttribute('aria-modal');\n this._element.removeAttribute('role');\n if (!this._config.scroll) {\n new ScrollBarHelper().reset();\n }\n EventHandler.trigger(this._element, EVENT_HIDDEN$3);\n };\n this._queueCallback(completeCallback, this._element, true);\n }\n dispose() {\n this._backdrop.dispose();\n this._focustrap.deactivate();\n super.dispose();\n }\n\n // Private\n _initializeBackDrop() {\n const clickCallback = () => {\n if (this._config.backdrop === 'static') {\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n return;\n }\n this.hide();\n };\n\n // 'static' option will be translated to true, and booleans will keep their value\n const isVisible = Boolean(this._config.backdrop);\n return new Backdrop({\n className: CLASS_NAME_BACKDROP,\n isVisible,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: isVisible ? clickCallback : null\n });\n }\n _initializeFocusTrap() {\n return new FocusTrap({\n trapElement: this._element\n });\n }\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (event.key !== ESCAPE_KEY) {\n return;\n }\n if (this._config.keyboard) {\n this.hide();\n return;\n }\n EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);\n });\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config](this);\n });\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) {\n const target = SelectorEngine.getElementFromSelector(this);\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault();\n }\n if (isDisabled(this)) {\n return;\n }\n EventHandler.one(target, EVENT_HIDDEN$3, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus();\n }\n });\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);\n if (alreadyOpen && alreadyOpen !== target) {\n Offcanvas.getInstance(alreadyOpen).hide();\n }\n const data = Offcanvas.getOrCreateInstance(target);\n data.toggle(this);\n});\nEventHandler.on(window, EVENT_LOAD_DATA_API$2, () => {\n for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {\n Offcanvas.getOrCreateInstance(selector).show();\n }\n});\nEventHandler.on(window, EVENT_RESIZE, () => {\n for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {\n if (getComputedStyle(element).position !== 'fixed') {\n Offcanvas.getOrCreateInstance(element).hide();\n }\n }\n});\nenableDismissTrigger(Offcanvas);\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Offcanvas);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n// js-docs-start allow-list\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i;\nconst DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n};\n// js-docs-end allow-list\n\nconst uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);\n\n/**\n * A pattern that recognizes URLs that are safe wrt. XSS in URL navigation\n * contexts.\n *\n * Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38\n */\n// eslint-disable-next-line unicorn/better-regex\nconst SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;\nconst allowedAttribute = (attribute, allowedAttributeList) => {\n const attributeName = attribute.nodeName.toLowerCase();\n if (allowedAttributeList.includes(attributeName)) {\n if (uriAttributes.has(attributeName)) {\n return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue));\n }\n return true;\n }\n\n // Check if a regular expression validates the attribute.\n return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));\n};\nfunction sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {\n if (!unsafeHtml.length) {\n return unsafeHtml;\n }\n if (sanitizeFunction && typeof sanitizeFunction === 'function') {\n return sanitizeFunction(unsafeHtml);\n }\n const domParser = new window.DOMParser();\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'));\n for (const element of elements) {\n const elementName = element.nodeName.toLowerCase();\n if (!Object.keys(allowList).includes(elementName)) {\n element.remove();\n continue;\n }\n const attributeList = [].concat(...element.attributes);\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || []);\n for (const attribute of attributeList) {\n if (!allowedAttribute(attribute, allowedAttributes)) {\n element.removeAttribute(attribute.nodeName);\n }\n }\n }\n return createdDocument.body.innerHTML;\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap util/template-factory.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$5 = 'TemplateFactory';\nconst Default$4 = {\n allowList: DefaultAllowlist,\n content: {},\n // { selector : text , selector2 : text2 , }\n extraClass: '',\n html: false,\n sanitize: true,\n sanitizeFn: null,\n template: '
'\n};\nconst DefaultType$4 = {\n allowList: 'object',\n content: 'object',\n extraClass: '(string|function)',\n html: 'boolean',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n template: 'string'\n};\nconst DefaultContentType = {\n entry: '(string|element|function|null)',\n selector: '(string|element)'\n};\n\n/**\n * Class definition\n */\n\nclass TemplateFactory extends Config {\n constructor(config) {\n super();\n this._config = this._getConfig(config);\n }\n\n // Getters\n static get Default() {\n return Default$4;\n }\n static get DefaultType() {\n return DefaultType$4;\n }\n static get NAME() {\n return NAME$5;\n }\n\n // Public\n getContent() {\n return Object.values(this._config.content).map(config => this._resolvePossibleFunction(config)).filter(Boolean);\n }\n hasContent() {\n return this.getContent().length > 0;\n }\n changeContent(content) {\n this._checkContent(content);\n this._config.content = {\n ...this._config.content,\n ...content\n };\n return this;\n }\n toHtml() {\n const templateWrapper = document.createElement('div');\n templateWrapper.innerHTML = this._maybeSanitize(this._config.template);\n for (const [selector, text] of Object.entries(this._config.content)) {\n this._setContent(templateWrapper, text, selector);\n }\n const template = templateWrapper.children[0];\n const extraClass = this._resolvePossibleFunction(this._config.extraClass);\n if (extraClass) {\n template.classList.add(...extraClass.split(' '));\n }\n return template;\n }\n\n // Private\n _typeCheckConfig(config) {\n super._typeCheckConfig(config);\n this._checkContent(config.content);\n }\n _checkContent(arg) {\n for (const [selector, content] of Object.entries(arg)) {\n super._typeCheckConfig({\n selector,\n entry: content\n }, DefaultContentType);\n }\n }\n _setContent(template, content, selector) {\n const templateElement = SelectorEngine.findOne(selector, template);\n if (!templateElement) {\n return;\n }\n content = this._resolvePossibleFunction(content);\n if (!content) {\n templateElement.remove();\n return;\n }\n if (isElement(content)) {\n this._putElementInTemplate(getElement(content), templateElement);\n return;\n }\n if (this._config.html) {\n templateElement.innerHTML = this._maybeSanitize(content);\n return;\n }\n templateElement.textContent = content;\n }\n _maybeSanitize(arg) {\n return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this]);\n }\n _putElementInTemplate(element, templateElement) {\n if (this._config.html) {\n templateElement.innerHTML = '';\n templateElement.append(element);\n return;\n }\n templateElement.textContent = element.textContent;\n }\n}\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$4 = 'tooltip';\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']);\nconst CLASS_NAME_FADE$2 = 'fade';\nconst CLASS_NAME_MODAL = 'modal';\nconst CLASS_NAME_SHOW$2 = 'show';\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner';\nconst SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`;\nconst EVENT_MODAL_HIDE = 'hide.bs.modal';\nconst TRIGGER_HOVER = 'hover';\nconst TRIGGER_FOCUS = 'focus';\nconst TRIGGER_CLICK = 'click';\nconst TRIGGER_MANUAL = 'manual';\nconst EVENT_HIDE$2 = 'hide';\nconst EVENT_HIDDEN$2 = 'hidden';\nconst EVENT_SHOW$2 = 'show';\nconst EVENT_SHOWN$2 = 'shown';\nconst EVENT_INSERTED = 'inserted';\nconst EVENT_CLICK$1 = 'click';\nconst EVENT_FOCUSIN$1 = 'focusin';\nconst EVENT_FOCUSOUT$1 = 'focusout';\nconst EVENT_MOUSEENTER = 'mouseenter';\nconst EVENT_MOUSELEAVE = 'mouseleave';\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n};\nconst Default$3 = {\n allowList: DefaultAllowlist,\n animation: true,\n boundary: 'clippingParents',\n container: false,\n customClass: '',\n delay: 0,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n html: false,\n offset: [0, 6],\n placement: 'top',\n popperConfig: null,\n sanitize: true,\n sanitizeFn: null,\n selector: false,\n template: '
' + '
' + '
' + '
',\n title: '',\n trigger: 'hover focus'\n};\nconst DefaultType$3 = {\n allowList: 'object',\n animation: 'boolean',\n boundary: '(string|element)',\n container: '(string|element|boolean)',\n customClass: '(string|function)',\n delay: '(number|object)',\n fallbackPlacements: 'array',\n html: 'boolean',\n offset: '(array|string|function)',\n placement: '(string|function)',\n popperConfig: '(null|object|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n selector: '(string|boolean)',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string'\n};\n\n/**\n * Class definition\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)');\n }\n super(element, config);\n\n // Private\n this._isEnabled = true;\n this._timeout = 0;\n this._isHovered = null;\n this._activeTrigger = {};\n this._popper = null;\n this._templateFactory = null;\n this._newContent = null;\n\n // Protected\n this.tip = null;\n this._setListeners();\n if (!this._config.selector) {\n this._fixTitle();\n }\n }\n\n // Getters\n static get Default() {\n return Default$3;\n }\n static get DefaultType() {\n return DefaultType$3;\n }\n static get NAME() {\n return NAME$4;\n }\n\n // Public\n enable() {\n this._isEnabled = true;\n }\n disable() {\n this._isEnabled = false;\n }\n toggleEnabled() {\n this._isEnabled = !this._isEnabled;\n }\n toggle() {\n if (!this._isEnabled) {\n return;\n }\n this._activeTrigger.click = !this._activeTrigger.click;\n if (this._isShown()) {\n this._leave();\n return;\n }\n this._enter();\n }\n dispose() {\n clearTimeout(this._timeout);\n EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n if (this._element.getAttribute('data-bs-original-title')) {\n this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));\n }\n this._disposePopper();\n super.dispose();\n }\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements');\n }\n if (!(this._isWithContent() && this._isEnabled)) {\n return;\n }\n const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW$2));\n const shadowRoot = findShadowRoot(this._element);\n const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element);\n if (showEvent.defaultPrevented || !isInTheDom) {\n return;\n }\n\n // TODO: v6 remove this or make it optional\n this._disposePopper();\n const tip = this._getTipElement();\n this._element.setAttribute('aria-describedby', tip.getAttribute('id'));\n const {\n container\n } = this._config;\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.append(tip);\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED));\n }\n this._popper = this._createPopper(tip);\n tip.classList.add(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.on(element, 'mouseover', noop);\n }\n }\n const complete = () => {\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN$2));\n if (this._isHovered === false) {\n this._leave();\n }\n this._isHovered = false;\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n hide() {\n if (!this._isShown()) {\n return;\n }\n const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE$2));\n if (hideEvent.defaultPrevented) {\n return;\n }\n const tip = this._getTipElement();\n tip.classList.remove(CLASS_NAME_SHOW$2);\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n for (const element of [].concat(...document.body.children)) {\n EventHandler.off(element, 'mouseover', noop);\n }\n }\n this._activeTrigger[TRIGGER_CLICK] = false;\n this._activeTrigger[TRIGGER_FOCUS] = false;\n this._activeTrigger[TRIGGER_HOVER] = false;\n this._isHovered = null; // it is a trick to support manual triggering\n\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return;\n }\n if (!this._isHovered) {\n this._disposePopper();\n }\n this._element.removeAttribute('aria-describedby');\n EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN$2));\n };\n this._queueCallback(complete, this.tip, this._isAnimated());\n }\n update() {\n if (this._popper) {\n this._popper.update();\n }\n }\n\n // Protected\n _isWithContent() {\n return Boolean(this._getTitle());\n }\n _getTipElement() {\n if (!this.tip) {\n this.tip = this._createTipElement(this._newContent || this._getContentForTemplate());\n }\n return this.tip;\n }\n _createTipElement(content) {\n const tip = this._getTemplateFactory(content).toHtml();\n\n // TODO: remove this check in v6\n if (!tip) {\n return null;\n }\n tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2);\n // TODO: v6 the following can be achieved with CSS only\n tip.classList.add(`bs-${this.constructor.NAME}-auto`);\n const tipId = getUID(this.constructor.NAME).toString();\n tip.setAttribute('id', tipId);\n if (this._isAnimated()) {\n tip.classList.add(CLASS_NAME_FADE$2);\n }\n return tip;\n }\n setContent(content) {\n this._newContent = content;\n if (this._isShown()) {\n this._disposePopper();\n this.show();\n }\n }\n _getTemplateFactory(content) {\n if (this._templateFactory) {\n this._templateFactory.changeContent(content);\n } else {\n this._templateFactory = new TemplateFactory({\n ...this._config,\n // the `content` var has to be after `this._config`\n // to override config.content in case of popover\n content,\n extraClass: this._resolvePossibleFunction(this._config.customClass)\n });\n }\n return this._templateFactory;\n }\n _getContentForTemplate() {\n return {\n [SELECTOR_TOOLTIP_INNER]: this._getTitle()\n };\n }\n _getTitle() {\n return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');\n }\n\n // Private\n _initializeOnDelegatedTarget(event) {\n return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());\n }\n _isAnimated() {\n return this._config.animation || this.tip && this.tip.classList.contains(CLASS_NAME_FADE$2);\n }\n _isShown() {\n return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW$2);\n }\n _createPopper(tip) {\n const placement = execute(this._config.placement, [this, tip, this._element]);\n const attachment = AttachmentMap[placement.toUpperCase()];\n return Popper.createPopper(this._element, tip, this._getPopperConfig(attachment));\n }\n _getOffset() {\n const {\n offset\n } = this._config;\n if (typeof offset === 'string') {\n return offset.split(',').map(value => Number.parseInt(value, 10));\n }\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element);\n }\n return offset;\n }\n _resolvePossibleFunction(arg) {\n return execute(arg, [this._element]);\n }\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [{\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n }, {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }, {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n }, {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n }, {\n name: 'preSetPlacement',\n enabled: true,\n phase: 'beforeMain',\n fn: data => {\n // Pre-set Popper's placement attribute in order to read the arrow sizes properly.\n // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement\n this._getTipElement().setAttribute('data-popper-placement', data.state.placement);\n }\n }]\n };\n return {\n ...defaultBsPopperConfig,\n ...execute(this._config.popperConfig, [defaultBsPopperConfig])\n };\n }\n _setListeners() {\n const triggers = this._config.trigger.split(' ');\n for (const trigger of triggers) {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context.toggle();\n });\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN$1);\n const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT$1);\n EventHandler.on(this._element, eventIn, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true;\n context._enter();\n });\n EventHandler.on(this._element, eventOut, this._config.selector, event => {\n const context = this._initializeOnDelegatedTarget(event);\n context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget);\n context._leave();\n });\n }\n }\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide();\n }\n };\n EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);\n }\n _fixTitle() {\n const title = this._element.getAttribute('title');\n if (!title) {\n return;\n }\n if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {\n this._element.setAttribute('aria-label', title);\n }\n this._element.setAttribute('data-bs-original-title', title); // DO NOT USE IT. Is only for backwards compatibility\n this._element.removeAttribute('title');\n }\n _enter() {\n if (this._isShown() || this._isHovered) {\n this._isHovered = true;\n return;\n }\n this._isHovered = true;\n this._setTimeout(() => {\n if (this._isHovered) {\n this.show();\n }\n }, this._config.delay.show);\n }\n _leave() {\n if (this._isWithActiveTrigger()) {\n return;\n }\n this._isHovered = false;\n this._setTimeout(() => {\n if (!this._isHovered) {\n this.hide();\n }\n }, this._config.delay.hide);\n }\n _setTimeout(handler, timeout) {\n clearTimeout(this._timeout);\n this._timeout = setTimeout(handler, timeout);\n }\n _isWithActiveTrigger() {\n return Object.values(this._activeTrigger).includes(true);\n }\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element);\n for (const dataAttribute of Object.keys(dataAttributes)) {\n if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {\n delete dataAttributes[dataAttribute];\n }\n }\n config = {\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n };\n config = this._mergeConfigObj(config);\n config = this._configAfterMerge(config);\n this._typeCheckConfig(config);\n return config;\n }\n _configAfterMerge(config) {\n config.container = config.container === false ? document.body : getElement(config.container);\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n };\n }\n if (typeof config.title === 'number') {\n config.title = config.title.toString();\n }\n if (typeof config.content === 'number') {\n config.content = config.content.toString();\n }\n return config;\n }\n _getDelegateConfig() {\n const config = {};\n for (const [key, value] of Object.entries(this._config)) {\n if (this.constructor.Default[key] !== value) {\n config[key] = value;\n }\n }\n config.selector = false;\n config.trigger = 'manual';\n\n // In the future can be replaced with:\n // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])\n // `Object.fromEntries(keysWithDifferentValues)`\n return config;\n }\n _disposePopper() {\n if (this._popper) {\n this._popper.destroy();\n this._popper = null;\n }\n if (this.tip) {\n this.tip.remove();\n this.tip = null;\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Tooltip);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$3 = 'popover';\nconst SELECTOR_TITLE = '.popover-header';\nconst SELECTOR_CONTENT = '.popover-body';\nconst Default$2 = {\n ...Tooltip.Default,\n content: '',\n offset: [0, 8],\n placement: 'right',\n template: '
' + '
' + '

' + '
' + '
',\n trigger: 'click'\n};\nconst DefaultType$2 = {\n ...Tooltip.DefaultType,\n content: '(null|string|element|function)'\n};\n\n/**\n * Class definition\n */\n\nclass Popover extends Tooltip {\n // Getters\n static get Default() {\n return Default$2;\n }\n static get DefaultType() {\n return DefaultType$2;\n }\n static get NAME() {\n return NAME$3;\n }\n\n // Overrides\n _isWithContent() {\n return this._getTitle() || this._getContent();\n }\n\n // Private\n _getContentForTemplate() {\n return {\n [SELECTOR_TITLE]: this._getTitle(),\n [SELECTOR_CONTENT]: this._getContent()\n };\n }\n _getContent() {\n return this._resolvePossibleFunction(this._config.content);\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config);\n if (typeof config !== 'string') {\n return;\n }\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`);\n }\n data[config]();\n });\n }\n}\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Popover);\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * Constants\n */\n\nconst NAME$2 = 'scrollspy';\nconst DATA_KEY$2 = 'bs.scrollspy';\nconst EVENT_KEY$2 = `.${DATA_KEY$2}`;\nconst DATA_API_KEY = '.data-api';\nconst EVENT_ACTIVATE = `activate${EVENT_KEY$2}`;\nconst EVENT_CLICK = `click${EVENT_KEY$2}`;\nconst EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$2}${DATA_API_KEY}`;\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';\nconst CLASS_NAME_ACTIVE$1 = 'active';\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]';\nconst SELECTOR_TARGET_LINKS = '[href]';\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';\nconst SELECTOR_NAV_LINKS = '.nav-link';\nconst SELECTOR_NAV_ITEMS = '.nav-item';\nconst SELECTOR_LIST_ITEMS = '.list-group-item';\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`;\nconst SELECTOR_DROPDOWN = '.dropdown';\nconst SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle';\nconst Default$1 = {\n offset: null,\n // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null,\n threshold: [0.1, 0.5, 1]\n};\nconst DefaultType$1 = {\n offset: '(number|null)',\n // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element',\n threshold: 'array'\n};\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config);\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map();\n this._observableSections = new Map();\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element;\n this._activeTarget = null;\n this._observer = null;\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n };\n this.refresh(); // initialize\n }\n\n // Getters\n static get Default() {\n return Default$1;\n }\n static get DefaultType() {\n return DefaultType$1;\n }\n static get NAME() {\n return NAME$2;\n }\n\n // Public\n refresh() {\n this._initializeTargetsAndObservables();\n this._maybeEnableSmoothScroll();\n if (this._observer) {\n this._observer.disconnect();\n } else {\n this._observer = this._getNewObserver();\n }\n for (const section of this._observableSections.values()) {\n this._observer.observe(section);\n }\n }\n dispose() {\n this._observer.disconnect();\n super.dispose();\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body;\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin;\n if (typeof config.threshold === 'string') {\n config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value));\n }\n return config;\n }\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return;\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK);\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash);\n if (observableSection) {\n event.preventDefault();\n const root = this._rootElement || window;\n const height = observableSection.offsetTop - this._element.offsetTop;\n if (root.scrollTo) {\n root.scrollTo({\n top: height,\n behavior: 'smooth'\n });\n return;\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height;\n }\n });\n }\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: this._config.threshold,\n rootMargin: this._config.rootMargin\n };\n return new IntersectionObserver(entries => this._observerCallback(entries), options);\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`);\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop;\n this._process(targetElement(entry));\n };\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop;\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop;\n this._previousScrollData.parentScrollTop = parentScrollTop;\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null;\n this._clearActiveClass(targetElement(entry));\n continue;\n }\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop;\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry);\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return;\n }\n continue;\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry);\n }\n }\n }\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map();\n this._observableSections = new Map();\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target);\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue;\n }\n const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element);\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(decodeURI(anchor.hash), anchor);\n this._observableSections.set(anchor.hash, observableSection);\n }\n }\n }\n _process(target) {\n if (this._activeTarget === target) {\n return;\n }\n this._clearActiveClass(this._config.target);\n this._activeTarget = target;\n target.classList.add(CLASS_NAME_ACTIVE$1);\n this._activateParents(target);\n EventHandler.trigger(this._element, EVENT_ACTIVATE, {\n relatedTarget: target\n });\n }\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, target.closest(SELECTOR_DROPDOWN)).classList.add(CLASS_NAME_ACTIVE$1);\n return;\n }\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both
\n // instead of:\n //
  • - - a
\n // So, to prevent it, we will put a marker (¨A)in the beginning of the line\n // Kind of hackish/monkey patching, but seems more effective than overcomplicating the list parser\n item = item.replace(/^([-*+]|\\d\\.)[ \\t]+[\\S\\n ]*/g, function (wm2) {\n return '¨A' + wm2;\n });\n\n // m1 - Leading line or\n // Has a double return (multi paragraph) or\n // Has sublist\n if (m1 || (item.search(/\\n{2,}/) > -1)) {\n item = showdown.subParser('githubCodeBlocks')(item, options, globals);\n item = showdown.subParser('blockGamut')(item, options, globals);\n } else {\n // Recursion for sub-lists:\n item = showdown.subParser('lists')(item, options, globals);\n item = item.replace(/\\n$/, ''); // chomp(item)\n item = showdown.subParser('hashHTMLBlocks')(item, options, globals);\n\n // Colapse double linebreaks\n item = item.replace(/\\n\\n+/g, '\\n\\n');\n if (isParagraphed) {\n item = showdown.subParser('paragraphs')(item, options, globals);\n } else {\n item = showdown.subParser('spanGamut')(item, options, globals);\n }\n }\n\n // now we need to remove the marker (¨A)\n item = item.replace('¨A', '');\n // we can finally wrap the line in list item tags\n item = '' + item + '\\n';\n\n return item;\n });\n\n // attacklab: strip sentinel\n listStr = listStr.replace(/¨0/g, '');\n\n globals.gListLevel--;\n\n if (trimTrailing) {\n listStr = listStr.replace(/\\s+$/, '');\n }\n\n return listStr;\n }\n\n function styleStartNumber (list, listType) {\n // check if ol and starts by a number different than 1\n if (listType === 'ol') {\n var res = list.match(/^ *(\\d+)\\./);\n if (res && res[1] !== '1') {\n return ' start=\"' + res[1] + '\"';\n }\n }\n return '';\n }\n\n /**\n * Check and parse consecutive lists (better fix for issue #142)\n * @param {string} list\n * @param {string} listType\n * @param {boolean} trimTrailing\n * @returns {string}\n */\n function parseConsecutiveLists (list, listType, trimTrailing) {\n // check if we caught 2 or more consecutive lists by mistake\n // we use the counterRgx, meaning if listType is UL we look for OL and vice versa\n var olRgx = (options.disableForced4SpacesIndentedSublists) ? /^ ?\\d+\\.[ \\t]/gm : /^ {0,3}\\d+\\.[ \\t]/gm,\n ulRgx = (options.disableForced4SpacesIndentedSublists) ? /^ ?[*+-][ \\t]/gm : /^ {0,3}[*+-][ \\t]/gm,\n counterRxg = (listType === 'ul') ? olRgx : ulRgx,\n result = '';\n\n if (list.search(counterRxg) !== -1) {\n (function parseCL (txt) {\n var pos = txt.search(counterRxg),\n style = styleStartNumber(list, listType);\n if (pos !== -1) {\n // slice\n result += '\\n\\n<' + listType + style + '>\\n' + processListItems(txt.slice(0, pos), !!trimTrailing) + '\\n';\n\n // invert counterType and listType\n listType = (listType === 'ul') ? 'ol' : 'ul';\n counterRxg = (listType === 'ul') ? olRgx : ulRgx;\n\n //recurse\n parseCL(txt.slice(pos));\n } else {\n result += '\\n\\n<' + listType + style + '>\\n' + processListItems(txt, !!trimTrailing) + '\\n';\n }\n })(list);\n } else {\n var style = styleStartNumber(list, listType);\n result = '\\n\\n<' + listType + style + '>\\n' + processListItems(list, !!trimTrailing) + '\\n';\n }\n\n return result;\n }\n\n /** Start of list parsing **/\n text = globals.converter._dispatch('lists.before', text, options, globals);\n // add sentinel to hack around khtml/safari bug:\n // http://bugs.webkit.org/show_bug.cgi?id=11231\n text += '¨0';\n\n if (globals.gListLevel) {\n text = text.replace(/^(( {0,3}([*+-]|\\d+[.])[ \\t]+)[^\\r]+?(¨0|\\n{2,}(?=\\S)(?![ \\t]*(?:[*+-]|\\d+[.])[ \\t]+)))/gm,\n function (wholeMatch, list, m2) {\n var listType = (m2.search(/[*+-]/g) > -1) ? 'ul' : 'ol';\n return parseConsecutiveLists(list, listType, true);\n }\n );\n } else {\n text = text.replace(/(\\n\\n|^\\n?)(( {0,3}([*+-]|\\d+[.])[ \\t]+)[^\\r]+?(¨0|\\n{2,}(?=\\S)(?![ \\t]*(?:[*+-]|\\d+[.])[ \\t]+)))/gm,\n function (wholeMatch, m1, list, m3) {\n var listType = (m3.search(/[*+-]/g) > -1) ? 'ul' : 'ol';\n return parseConsecutiveLists(list, listType, false);\n }\n );\n }\n\n // strip sentinel\n text = text.replace(/¨0/, '');\n text = globals.converter._dispatch('lists.after', text, options, globals);\n return text;\n});\n\r\n/**\n * Parse metadata at the top of the document\n */\nshowdown.subParser('metadata', function (text, options, globals) {\n 'use strict';\n\n if (!options.metadata) {\n return text;\n }\n\n text = globals.converter._dispatch('metadata.before', text, options, globals);\n\n function parseMetadataContents (content) {\n // raw is raw so it's not changed in any way\n globals.metadata.raw = content;\n\n // escape chars forbidden in html attributes\n // double quotes\n content = content\n // ampersand first\n .replace(/&/g, '&')\n // double quotes\n .replace(/\"/g, '"');\n\n content = content.replace(/\\n {4}/g, ' ');\n content.replace(/^([\\S ]+): +([\\s\\S]+?)$/gm, function (wm, key, value) {\n globals.metadata.parsed[key] = value;\n return '';\n });\n }\n\n text = text.replace(/^\\s*«««+(\\S*?)\\n([\\s\\S]+?)\\n»»»+\\n/, function (wholematch, format, content) {\n parseMetadataContents(content);\n return '¨M';\n });\n\n text = text.replace(/^\\s*---+(\\S*?)\\n([\\s\\S]+?)\\n---+\\n/, function (wholematch, format, content) {\n if (format) {\n globals.metadata.format = format;\n }\n parseMetadataContents(content);\n return '¨M';\n });\n\n text = text.replace(/¨M/g, '');\n\n text = globals.converter._dispatch('metadata.after', text, options, globals);\n return text;\n});\n\r\n/**\n * Remove one level of line-leading tabs or spaces\n */\nshowdown.subParser('outdent', function (text, options, globals) {\n 'use strict';\n text = globals.converter._dispatch('outdent.before', text, options, globals);\n\n // attacklab: hack around Konqueror 3.5.4 bug:\n // \"----------bug\".replace(/^-/g,\"\") == \"bug\"\n text = text.replace(/^(\\t|[ ]{1,4})/gm, '¨0'); // attacklab: g_tab_width\n\n // attacklab: clean up hack\n text = text.replace(/¨0/g, '');\n\n text = globals.converter._dispatch('outdent.after', text, options, globals);\n return text;\n});\n\r\n/**\n *\n */\nshowdown.subParser('paragraphs', function (text, options, globals) {\n 'use strict';\n\n text = globals.converter._dispatch('paragraphs.before', text, options, globals);\n // Strip leading and trailing lines:\n text = text.replace(/^\\n+/g, '');\n text = text.replace(/\\n+$/g, '');\n\n var grafs = text.split(/\\n{2,}/g),\n grafsOut = [],\n end = grafs.length; // Wrap

tags\n\n for (var i = 0; i < end; i++) {\n var str = grafs[i];\n // if this is an HTML marker, copy it\n if (str.search(/¨(K|G)(\\d+)\\1/g) >= 0) {\n grafsOut.push(str);\n\n // test for presence of characters to prevent empty lines being parsed\n // as paragraphs (resulting in undesired extra empty paragraphs)\n } else if (str.search(/\\S/) >= 0) {\n str = showdown.subParser('spanGamut')(str, options, globals);\n str = str.replace(/^([ \\t]*)/g, '

');\n str += '

';\n grafsOut.push(str);\n }\n }\n\n /** Unhashify HTML blocks */\n end = grafsOut.length;\n for (i = 0; i < end; i++) {\n var blockText = '',\n grafsOutIt = grafsOut[i],\n codeFlag = false;\n // if this is a marker for an html block...\n // use RegExp.test instead of string.search because of QML bug\n while (/¨(K|G)(\\d+)\\1/.test(grafsOutIt)) {\n var delim = RegExp.$1,\n num = RegExp.$2;\n\n if (delim === 'K') {\n blockText = globals.gHtmlBlocks[num];\n } else {\n // we need to check if ghBlock is a false positive\n if (codeFlag) {\n // use encoded version of all text\n blockText = showdown.subParser('encodeCode')(globals.ghCodeBlocks[num].text, options, globals);\n } else {\n blockText = globals.ghCodeBlocks[num].codeblock;\n }\n }\n blockText = blockText.replace(/\\$/g, '$$$$'); // Escape any dollar signs\n\n grafsOutIt = grafsOutIt.replace(/(\\n\\n)?¨(K|G)\\d+\\2(\\n\\n)?/, blockText);\n // Check if grafsOutIt is a pre->code\n if (/^]*>\\s*]*>/.test(grafsOutIt)) {\n codeFlag = true;\n }\n }\n grafsOut[i] = grafsOutIt;\n }\n text = grafsOut.join('\\n');\n // Strip leading and trailing lines:\n text = text.replace(/^\\n+/g, '');\n text = text.replace(/\\n+$/g, '');\n return globals.converter._dispatch('paragraphs.after', text, options, globals);\n});\n\r\n/**\n * Run extension\n */\nshowdown.subParser('runExtension', function (ext, text, options, globals) {\n 'use strict';\n\n if (ext.filter) {\n text = ext.filter(text, globals.converter, options);\n\n } else if (ext.regex) {\n // TODO remove this when old extension loading mechanism is deprecated\n var re = ext.regex;\n if (!(re instanceof RegExp)) {\n re = new RegExp(re, 'g');\n }\n text = text.replace(re, ext.replace);\n }\n\n return text;\n});\n\r\n/**\n * These are all the transformations that occur *within* block-level\n * tags like paragraphs, headers, and list items.\n */\nshowdown.subParser('spanGamut', function (text, options, globals) {\n 'use strict';\n\n text = globals.converter._dispatch('spanGamut.before', text, options, globals);\n text = showdown.subParser('codeSpans')(text, options, globals);\n text = showdown.subParser('escapeSpecialCharsWithinTagAttributes')(text, options, globals);\n text = showdown.subParser('encodeBackslashEscapes')(text, options, globals);\n\n // Process anchor and image tags. Images must come first,\n // because ![foo][f] looks like an anchor.\n text = showdown.subParser('images')(text, options, globals);\n text = showdown.subParser('anchors')(text, options, globals);\n\n // Make links out of things like ``\n // Must come after anchors, because you can use < and >\n // delimiters in inline links like [this]().\n text = showdown.subParser('autoLinks')(text, options, globals);\n text = showdown.subParser('simplifiedAutoLinks')(text, options, globals);\n text = showdown.subParser('emoji')(text, options, globals);\n text = showdown.subParser('underline')(text, options, globals);\n text = showdown.subParser('italicsAndBold')(text, options, globals);\n text = showdown.subParser('strikethrough')(text, options, globals);\n text = showdown.subParser('ellipsis')(text, options, globals);\n\n // we need to hash HTML tags inside spans\n text = showdown.subParser('hashHTMLSpans')(text, options, globals);\n\n // now we encode amps and angles\n text = showdown.subParser('encodeAmpsAndAngles')(text, options, globals);\n\n // Do hard breaks\n if (options.simpleLineBreaks) {\n // GFM style hard breaks\n // only add line breaks if the text does not contain a block (special case for lists)\n if (!/\\n\\n¨K/.test(text)) {\n text = text.replace(/\\n+/g, '
\\n');\n }\n } else {\n // Vanilla hard breaks\n text = text.replace(/ +\\n/g, '
\\n');\n }\n\n text = globals.converter._dispatch('spanGamut.after', text, options, globals);\n return text;\n});\n\r\nshowdown.subParser('strikethrough', function (text, options, globals) {\n 'use strict';\n\n function parseInside (txt) {\n if (options.simplifiedAutoLink) {\n txt = showdown.subParser('simplifiedAutoLinks')(txt, options, globals);\n }\n return '' + txt + '';\n }\n\n if (options.strikethrough) {\n text = globals.converter._dispatch('strikethrough.before', text, options, globals);\n text = text.replace(/(?:~){2}([\\s\\S]+?)(?:~){2}/g, function (wm, txt) { return parseInside(txt); });\n text = globals.converter._dispatch('strikethrough.after', text, options, globals);\n }\n\n return text;\n});\n\r\n/**\n * Strips link definitions from text, stores the URLs and titles in\n * hash references.\n * Link defs are in the form: ^[id]: url \"optional title\"\n */\nshowdown.subParser('stripLinkDefinitions', function (text, options, globals) {\n 'use strict';\n\n var regex = /^ {0,3}\\[([^\\]]+)]:[ \\t]*\\n?[ \\t]*\\s]+)>?(?: =([*\\d]+[A-Za-z%]{0,4})x([*\\d]+[A-Za-z%]{0,4}))?[ \\t]*\\n?[ \\t]*(?:(\\n*)[\"|'(](.+?)[\"|')][ \\t]*)?(?:\\n+|(?=¨0))/gm,\n base64Regex = /^ {0,3}\\[([^\\]]+)]:[ \\t]*\\n?[ \\t]*?(?: =([*\\d]+[A-Za-z%]{0,4})x([*\\d]+[A-Za-z%]{0,4}))?[ \\t]*\\n?[ \\t]*(?:(\\n*)[\"|'(](.+?)[\"|')][ \\t]*)?(?:\\n\\n|(?=¨0)|(?=\\n\\[))/gm;\n\n // attacklab: sentinel workarounds for lack of \\A and \\Z, safari\\khtml bug\n text += '¨0';\n\n var replaceFunc = function (wholeMatch, linkId, url, width, height, blankLines, title) {\n\n // if there aren't two instances of linkId it must not be a reference link so back out\n linkId = linkId.toLowerCase();\n if (text.toLowerCase().split(linkId).length - 1 < 2) {\n return wholeMatch;\n }\n if (url.match(/^data:.+?\\/.+?;base64,/)) {\n // remove newlines\n globals.gUrls[linkId] = url.replace(/\\s/g, '');\n } else {\n globals.gUrls[linkId] = showdown.subParser('encodeAmpsAndAngles')(url, options, globals); // Link IDs are case-insensitive\n }\n\n if (blankLines) {\n // Oops, found blank lines, so it's not a title.\n // Put back the parenthetical statement we stole.\n return blankLines + title;\n\n } else {\n if (title) {\n globals.gTitles[linkId] = title.replace(/\"|'/g, '"');\n }\n if (options.parseImgDimensions && width && height) {\n globals.gDimensions[linkId] = {\n width: width,\n height: height\n };\n }\n }\n // Completely remove the definition from the text\n return '';\n };\n\n // first we try to find base64 link references\n text = text.replace(base64Regex, replaceFunc);\n\n text = text.replace(regex, replaceFunc);\n\n // attacklab: strip sentinel\n text = text.replace(/¨0/, '');\n\n return text;\n});\n\r\nshowdown.subParser('tables', function (text, options, globals) {\n 'use strict';\n\n if (!options.tables) {\n return text;\n }\n\n var tableRgx = /^ {0,3}\\|?.+\\|.+\\n {0,3}\\|?[ \\t]*:?[ \\t]*(?:[-=]){2,}[ \\t]*:?[ \\t]*\\|[ \\t]*:?[ \\t]*(?:[-=]){2,}[\\s\\S]+?(?:\\n\\n|¨0)/gm,\n //singeColTblRgx = /^ {0,3}\\|.+\\|\\n {0,3}\\|[ \\t]*:?[ \\t]*(?:[-=]){2,}[ \\t]*:?[ \\t]*\\|[ \\t]*\\n(?: {0,3}\\|.+\\|\\n)+(?:\\n\\n|¨0)/gm;\n singeColTblRgx = /^ {0,3}\\|.+\\|[ \\t]*\\n {0,3}\\|[ \\t]*:?[ \\t]*(?:[-=]){2,}[ \\t]*:?[ \\t]*\\|[ \\t]*\\n( {0,3}\\|.+\\|[ \\t]*\\n)*(?:\\n|¨0)/gm;\n\n function parseStyles (sLine) {\n if (/^:[ \\t]*--*$/.test(sLine)) {\n return ' style=\"text-align:left;\"';\n } else if (/^--*[ \\t]*:[ \\t]*$/.test(sLine)) {\n return ' style=\"text-align:right;\"';\n } else if (/^:[ \\t]*--*[ \\t]*:$/.test(sLine)) {\n return ' style=\"text-align:center;\"';\n } else {\n return '';\n }\n }\n\n function parseHeaders (header, style) {\n var id = '';\n header = header.trim();\n // support both tablesHeaderId and tableHeaderId due to error in documentation so we don't break backwards compatibility\n if (options.tablesHeaderId || options.tableHeaderId) {\n id = ' id=\"' + header.replace(/ /g, '_').toLowerCase() + '\"';\n }\n header = showdown.subParser('spanGamut')(header, options, globals);\n\n return '' + header + '\\n';\n }\n\n function parseCells (cell, style) {\n var subText = showdown.subParser('spanGamut')(cell, options, globals);\n return '' + subText + '\\n';\n }\n\n function buildTable (headers, cells) {\n var tb = '\\n\\n\\n',\n tblLgn = headers.length;\n\n for (var i = 0; i < tblLgn; ++i) {\n tb += headers[i];\n }\n tb += '\\n\\n\\n';\n\n for (i = 0; i < cells.length; ++i) {\n tb += '\\n';\n for (var ii = 0; ii < tblLgn; ++ii) {\n tb += cells[i][ii];\n }\n tb += '\\n';\n }\n tb += '\\n
\\n';\n return tb;\n }\n\n function parseTable (rawTable) {\n var i, tableLines = rawTable.split('\\n');\n\n for (i = 0; i < tableLines.length; ++i) {\n // strip wrong first and last column if wrapped tables are used\n if (/^ {0,3}\\|/.test(tableLines[i])) {\n tableLines[i] = tableLines[i].replace(/^ {0,3}\\|/, '');\n }\n if (/\\|[ \\t]*$/.test(tableLines[i])) {\n tableLines[i] = tableLines[i].replace(/\\|[ \\t]*$/, '');\n }\n // parse code spans first, but we only support one line code spans\n tableLines[i] = showdown.subParser('codeSpans')(tableLines[i], options, globals);\n }\n\n var rawHeaders = tableLines[0].split('|').map(function (s) { return s.trim();}),\n rawStyles = tableLines[1].split('|').map(function (s) { return s.trim();}),\n rawCells = [],\n headers = [],\n styles = [],\n cells = [];\n\n tableLines.shift();\n tableLines.shift();\n\n for (i = 0; i < tableLines.length; ++i) {\n if (tableLines[i].trim() === '') {\n continue;\n }\n rawCells.push(\n tableLines[i]\n .split('|')\n .map(function (s) {\n return s.trim();\n })\n );\n }\n\n if (rawHeaders.length < rawStyles.length) {\n return rawTable;\n }\n\n for (i = 0; i < rawStyles.length; ++i) {\n styles.push(parseStyles(rawStyles[i]));\n }\n\n for (i = 0; i < rawHeaders.length; ++i) {\n if (showdown.helper.isUndefined(styles[i])) {\n styles[i] = '';\n }\n headers.push(parseHeaders(rawHeaders[i], styles[i]));\n }\n\n for (i = 0; i < rawCells.length; ++i) {\n var row = [];\n for (var ii = 0; ii < headers.length; ++ii) {\n if (showdown.helper.isUndefined(rawCells[i][ii])) {\n\n }\n row.push(parseCells(rawCells[i][ii], styles[ii]));\n }\n cells.push(row);\n }\n\n return buildTable(headers, cells);\n }\n\n text = globals.converter._dispatch('tables.before', text, options, globals);\n\n // find escaped pipe characters\n text = text.replace(/\\\\(\\|)/g, showdown.helper.escapeCharactersCallback);\n\n // parse multi column tables\n text = text.replace(tableRgx, parseTable);\n\n // parse one column tables\n text = text.replace(singeColTblRgx, parseTable);\n\n text = globals.converter._dispatch('tables.after', text, options, globals);\n\n return text;\n});\n\r\nshowdown.subParser('underline', function (text, options, globals) {\n 'use strict';\n\n if (!options.underline) {\n return text;\n }\n\n text = globals.converter._dispatch('underline.before', text, options, globals);\n\n if (options.literalMidWordUnderscores) {\n text = text.replace(/\\b___(\\S[\\s\\S]*?)___\\b/g, function (wm, txt) {\n return '' + txt + '';\n });\n text = text.replace(/\\b__(\\S[\\s\\S]*?)__\\b/g, function (wm, txt) {\n return '' + txt + '';\n });\n } else {\n text = text.replace(/___(\\S[\\s\\S]*?)___/g, function (wm, m) {\n return (/\\S$/.test(m)) ? '' + m + '' : wm;\n });\n text = text.replace(/__(\\S[\\s\\S]*?)__/g, function (wm, m) {\n return (/\\S$/.test(m)) ? '' + m + '' : wm;\n });\n }\n\n // escape remaining underscores to prevent them being parsed by italic and bold\n text = text.replace(/(_)/g, showdown.helper.escapeCharactersCallback);\n\n text = globals.converter._dispatch('underline.after', text, options, globals);\n\n return text;\n});\n\r\n/**\n * Swap back in all the special characters we've hidden.\n */\nshowdown.subParser('unescapeSpecialChars', function (text, options, globals) {\n 'use strict';\n text = globals.converter._dispatch('unescapeSpecialChars.before', text, options, globals);\n\n text = text.replace(/¨E(\\d+)E/g, function (wholeMatch, m1) {\n var charCodeToReplace = parseInt(m1);\n return String.fromCharCode(charCodeToReplace);\n });\n\n text = globals.converter._dispatch('unescapeSpecialChars.after', text, options, globals);\n return text;\n});\n\r\nshowdown.subParser('makeMarkdown.blockquote', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n var children = node.childNodes,\n childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; ++i) {\n var innerTxt = showdown.subParser('makeMarkdown.node')(children[i], globals);\n\n if (innerTxt === '') {\n continue;\n }\n txt += innerTxt;\n }\n }\n // cleanup\n txt = txt.trim();\n txt = '> ' + txt.split('\\n').join('\\n> ');\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.codeBlock', function (node, globals) {\n 'use strict';\n\n var lang = node.getAttribute('language'),\n num = node.getAttribute('precodenum');\n return '```' + lang + '\\n' + globals.preList[num] + '\\n```';\n});\n\r\nshowdown.subParser('makeMarkdown.codeSpan', function (node) {\n 'use strict';\n\n return '`' + node.innerHTML + '`';\n});\n\r\nshowdown.subParser('makeMarkdown.emphasis', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n txt += '*';\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '*';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.header', function (node, globals, headerLevel) {\n 'use strict';\n\n var headerMark = new Array(headerLevel + 1).join('#'),\n txt = '';\n\n if (node.hasChildNodes()) {\n txt = headerMark + ' ';\n var children = node.childNodes,\n childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.hr', function () {\n 'use strict';\n\n return '---';\n});\n\r\nshowdown.subParser('makeMarkdown.image', function (node) {\n 'use strict';\n\n var txt = '';\n if (node.hasAttribute('src')) {\n txt += '![' + node.getAttribute('alt') + '](';\n txt += '<' + node.getAttribute('src') + '>';\n if (node.hasAttribute('width') && node.hasAttribute('height')) {\n txt += ' =' + node.getAttribute('width') + 'x' + node.getAttribute('height');\n }\n\n if (node.hasAttribute('title')) {\n txt += ' \"' + node.getAttribute('title') + '\"';\n }\n txt += ')';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.links', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes() && node.hasAttribute('href')) {\n var children = node.childNodes,\n childrenLength = children.length;\n txt = '[';\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '](';\n txt += '<' + node.getAttribute('href') + '>';\n if (node.hasAttribute('title')) {\n txt += ' \"' + node.getAttribute('title') + '\"';\n }\n txt += ')';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.list', function (node, globals, type) {\n 'use strict';\n\n var txt = '';\n if (!node.hasChildNodes()) {\n return '';\n }\n var listItems = node.childNodes,\n listItemsLenght = listItems.length,\n listNum = node.getAttribute('start') || 1;\n\n for (var i = 0; i < listItemsLenght; ++i) {\n if (typeof listItems[i].tagName === 'undefined' || listItems[i].tagName.toLowerCase() !== 'li') {\n continue;\n }\n\n // define the bullet to use in list\n var bullet = '';\n if (type === 'ol') {\n bullet = listNum.toString() + '. ';\n } else {\n bullet = '- ';\n }\n\n // parse list item\n txt += bullet + showdown.subParser('makeMarkdown.listItem')(listItems[i], globals);\n ++listNum;\n }\n\n // add comment at the end to prevent consecutive lists to be parsed as one\n txt += '\\n\\n';\n return txt.trim();\n});\n\r\nshowdown.subParser('makeMarkdown.listItem', function (node, globals) {\n 'use strict';\n\n var listItemTxt = '';\n\n var children = node.childNodes,\n childrenLenght = children.length;\n\n for (var i = 0; i < childrenLenght; ++i) {\n listItemTxt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n // if it's only one liner, we need to add a newline at the end\n if (!/\\n$/.test(listItemTxt)) {\n listItemTxt += '\\n';\n } else {\n // it's multiparagraph, so we need to indent\n listItemTxt = listItemTxt\n .split('\\n')\n .join('\\n ')\n .replace(/^ {4}$/gm, '')\n .replace(/\\n\\n+/g, '\\n\\n');\n }\n\n return listItemTxt;\n});\n\r\n\n\nshowdown.subParser('makeMarkdown.node', function (node, globals, spansOnly) {\n 'use strict';\n\n spansOnly = spansOnly || false;\n\n var txt = '';\n\n // edge case of text without wrapper paragraph\n if (node.nodeType === 3) {\n return showdown.subParser('makeMarkdown.txt')(node, globals);\n }\n\n // HTML comment\n if (node.nodeType === 8) {\n return '\\n\\n';\n }\n\n // process only node elements\n if (node.nodeType !== 1) {\n return '';\n }\n\n var tagName = node.tagName.toLowerCase();\n\n switch (tagName) {\n\n //\n // BLOCKS\n //\n case 'h1':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 1) + '\\n\\n'; }\n break;\n case 'h2':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 2) + '\\n\\n'; }\n break;\n case 'h3':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 3) + '\\n\\n'; }\n break;\n case 'h4':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 4) + '\\n\\n'; }\n break;\n case 'h5':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 5) + '\\n\\n'; }\n break;\n case 'h6':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.header')(node, globals, 6) + '\\n\\n'; }\n break;\n\n case 'p':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.paragraph')(node, globals) + '\\n\\n'; }\n break;\n\n case 'blockquote':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.blockquote')(node, globals) + '\\n\\n'; }\n break;\n\n case 'hr':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.hr')(node, globals) + '\\n\\n'; }\n break;\n\n case 'ol':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.list')(node, globals, 'ol') + '\\n\\n'; }\n break;\n\n case 'ul':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.list')(node, globals, 'ul') + '\\n\\n'; }\n break;\n\n case 'precode':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.codeBlock')(node, globals) + '\\n\\n'; }\n break;\n\n case 'pre':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.pre')(node, globals) + '\\n\\n'; }\n break;\n\n case 'table':\n if (!spansOnly) { txt = showdown.subParser('makeMarkdown.table')(node, globals) + '\\n\\n'; }\n break;\n\n //\n // SPANS\n //\n case 'code':\n txt = showdown.subParser('makeMarkdown.codeSpan')(node, globals);\n break;\n\n case 'em':\n case 'i':\n txt = showdown.subParser('makeMarkdown.emphasis')(node, globals);\n break;\n\n case 'strong':\n case 'b':\n txt = showdown.subParser('makeMarkdown.strong')(node, globals);\n break;\n\n case 'del':\n txt = showdown.subParser('makeMarkdown.strikethrough')(node, globals);\n break;\n\n case 'a':\n txt = showdown.subParser('makeMarkdown.links')(node, globals);\n break;\n\n case 'img':\n txt = showdown.subParser('makeMarkdown.image')(node, globals);\n break;\n\n default:\n txt = node.outerHTML + '\\n\\n';\n }\n\n // common normalization\n // TODO eventually\n\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.paragraph', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n }\n\n // some text normalization\n txt = txt.trim();\n\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.pre', function (node, globals) {\n 'use strict';\n\n var num = node.getAttribute('prenum');\n return '
' + globals.preList[num] + '
';\n});\n\r\nshowdown.subParser('makeMarkdown.strikethrough', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n txt += '~~';\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '~~';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.strong', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (node.hasChildNodes()) {\n txt += '**';\n var children = node.childNodes,\n childrenLength = children.length;\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals);\n }\n txt += '**';\n }\n return txt;\n});\n\r\nshowdown.subParser('makeMarkdown.table', function (node, globals) {\n 'use strict';\n\n var txt = '',\n tableArray = [[], []],\n headings = node.querySelectorAll('thead>tr>th'),\n rows = node.querySelectorAll('tbody>tr'),\n i, ii;\n for (i = 0; i < headings.length; ++i) {\n var headContent = showdown.subParser('makeMarkdown.tableCell')(headings[i], globals),\n allign = '---';\n\n if (headings[i].hasAttribute('style')) {\n var style = headings[i].getAttribute('style').toLowerCase().replace(/\\s/g, '');\n switch (style) {\n case 'text-align:left;':\n allign = ':---';\n break;\n case 'text-align:right;':\n allign = '---:';\n break;\n case 'text-align:center;':\n allign = ':---:';\n break;\n }\n }\n tableArray[0][i] = headContent.trim();\n tableArray[1][i] = allign;\n }\n\n for (i = 0; i < rows.length; ++i) {\n var r = tableArray.push([]) - 1,\n cols = rows[i].getElementsByTagName('td');\n\n for (ii = 0; ii < headings.length; ++ii) {\n var cellContent = ' ';\n if (typeof cols[ii] !== 'undefined') {\n cellContent = showdown.subParser('makeMarkdown.tableCell')(cols[ii], globals);\n }\n tableArray[r].push(cellContent);\n }\n }\n\n var cellSpacesCount = 3;\n for (i = 0; i < tableArray.length; ++i) {\n for (ii = 0; ii < tableArray[i].length; ++ii) {\n var strLen = tableArray[i][ii].length;\n if (strLen > cellSpacesCount) {\n cellSpacesCount = strLen;\n }\n }\n }\n\n for (i = 0; i < tableArray.length; ++i) {\n for (ii = 0; ii < tableArray[i].length; ++ii) {\n if (i === 1) {\n if (tableArray[i][ii].slice(-1) === ':') {\n tableArray[i][ii] = showdown.helper.padEnd(tableArray[i][ii].slice(-1), cellSpacesCount - 1, '-') + ':';\n } else {\n tableArray[i][ii] = showdown.helper.padEnd(tableArray[i][ii], cellSpacesCount, '-');\n }\n } else {\n tableArray[i][ii] = showdown.helper.padEnd(tableArray[i][ii], cellSpacesCount);\n }\n }\n txt += '| ' + tableArray[i].join(' | ') + ' |\\n';\n }\n\n return txt.trim();\n});\n\r\nshowdown.subParser('makeMarkdown.tableCell', function (node, globals) {\n 'use strict';\n\n var txt = '';\n if (!node.hasChildNodes()) {\n return '';\n }\n var children = node.childNodes,\n childrenLength = children.length;\n\n for (var i = 0; i < childrenLength; ++i) {\n txt += showdown.subParser('makeMarkdown.node')(children[i], globals, true);\n }\n return txt.trim();\n});\n\r\nshowdown.subParser('makeMarkdown.txt', function (node) {\n 'use strict';\n\n var txt = node.nodeValue;\n\n // multiple spaces are collapsed\n txt = txt.replace(/ +/g, ' ');\n\n // replace the custom ¨NBSP; with a space\n txt = txt.replace(/¨NBSP;/g, ' ');\n\n // \", <, > and & should replace escaped html entities\n txt = showdown.helper.unescapeHTMLEntities(txt);\n\n // escape markdown magic characters\n // emphasis, strong and strikethrough - can appear everywhere\n // we also escape pipe (|) because of tables\n // and escape ` because of code blocks and spans\n txt = txt.replace(/([*_~|`])/g, '\\\\$1');\n\n // escape > because of blockquotes\n txt = txt.replace(/^(\\s*)>/g, '\\\\$1>');\n\n // hash character, only troublesome at the beginning of a line because of headers\n txt = txt.replace(/^#/gm, '\\\\#');\n\n // horizontal rules\n txt = txt.replace(/^(\\s*)([-=]{3,})(\\s*)$/, '$1\\\\$2$3');\n\n // dot, because of ordered lists, only troublesome at the beginning of a line when preceded by an integer\n txt = txt.replace(/^( {0,3}\\d+)\\./gm, '$1\\\\.');\n\n // +, * and -, at the beginning of a line becomes a list, so we need to escape them also (asterisk was already escaped)\n txt = txt.replace(/^( {0,3})([+-])/gm, '$1\\\\$2');\n\n // images and links, ] followed by ( is problematic, so we escape it\n txt = txt.replace(/]([\\s]*)\\(/g, '\\\\]$1\\\\(');\n\n // reference URIs must also be escaped\n txt = txt.replace(/^ {0,3}\\[([\\S \\t]*?)]:/gm, '\\\\[$1]:');\n\n return txt;\n});\n\r\nvar root = this;\n\n// AMD Loader\nif (typeof define === 'function' && define.amd) {\n define(function () {\n 'use strict';\n return showdown;\n });\n\n// CommonJS/nodeJS Loader\n} else if (typeof module !== 'undefined' && module.exports) {\n module.exports = showdown;\n\n// Regular Browser loader\n} else {\n root.showdown = showdown;\n}\n}).call(this);\r\n\n//# sourceMappingURL=showdown.js.map\r\n","let locales = {\n en: {\n population: \"Population\",\n people: \"people\",\n area: \"Area\",\n km: \"km\",\n about: \"About\",\n founded: \"Founded\",\n },\n ru: {\n population: \"Население\",\n people: \"человек\",\n area: \"Площадь\",\n km: \"км\",\n about: \"Больше\",\n founded: \"Основано\",\n },\n};\n\nlet lang = (navigator.language || navigator.userLanguage).split(\"-\")[0];\n\nexport default function l(n) {\n return locales[lang][n] || locales.en[n] || n;\n}\n","import \"./index.css\";\n\nimport mapboxgl from \"mapbox-gl\";\nimport \"mapbox-gl/dist/mapbox-gl.css\";\n\nimport CompassControl from \"@mapbox-controls/compass\";\nimport InspectControl from \"@mapbox-controls/inspect\";\nimport StylesControl from \"@mapbox-controls/styles\";\nimport ZoomControl from \"@mapbox-controls/zoom\";\nimport LanguageControl from \"@mapbox-controls/language\";\n\nimport \"@mapbox-controls/compass/src/index.css\";\nimport \"@mapbox-controls/inspect/src/index.css\";\nimport \"@mapbox-controls/styles/src/index.css\";\nimport \"@mapbox-controls/zoom/src/index.css\";\n\nimport \"bootstrap\";\nimport \"bootstrap/dist/css/bootstrap.min.css\";\n\nimport showdown from \"showdown\";\n\nimport l from \"./locales\";\n\nfunction loginfo(...str) {\n let info = str.shift();\n console.log(\n `%c ${info} `,\n \"color:white; background-color: #78d6fa; border-radius:10px;\",\n ...str\n );\n}\nwindow.onload = async () => {\n const params = new Proxy(new URLSearchParams(window.location.search), {\n get: (searchParams, prop) => searchParams.get(prop),\n });\n\n const projection = params.projection || \"globe\";\n const mapId = params.id || \"worldMap\";\n\n let mIdData = (\n await (\n await fetch(\n `https://raw.githubusercontent.com/CIMEngine/MapList/main/index.json`\n )\n ).json()\n )[mapId];\n\n if (!mIdData) {\n alert(`Map \"${mapId}\" not found`);\n }\n\n let mData = {};\n\n mData.external = params.external || mIdData.external;\n\n if (mData.external) {\n mData = await (await fetch(mData.external)).json();\n }\n\n mData.geoURL = params.geoURL || mIdData.geoURL;\n mData.countryInfoUrl = params.countryInfoURL || mIdData.countryInfoURL;\n mData.debug = params.debug || false;\n mData.icon = params.icon || mIdData.icon;\n mData.name = params.name || mIdData.name;\n\n if (mData.icon) {\n document.getElementById(\"icon\").setAttribute(\"href\", mData.icon);\n }\n\n if (mData.name) {\n document.title = mData.name;\n }\n\n mapboxgl.accessToken =\n \"pk.eyJ1IjoiYXJ0ZWdvc2VyIiwiYSI6ImNrcDViN3BhcDAwbW0ydnBnOXZ0ZzFreXUifQ.FIVtaBNr9dr_TIw672Zqdw\";\n\n let map = new mapboxgl.Map({\n container: \"map\",\n style: \"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true\",\n center: [53.19, 41.28],\n zoom: 3,\n projection: projection,\n });\n\n map.addControl(new ZoomControl(), \"top-right\");\n map.addControl(new CompassControl({ instant: true }), \"top-right\");\n map.addControl(new LanguageControl());\n map.addControl(\n new StylesControl({\n styles: [\n {\n label: \"Streets\",\n styleName: \"Mapbox Streets\",\n styleUrl:\n \"mapbox://styles/artegoser/clfm612fg002601nlcika2018?optimize=true\",\n },\n {\n label: \"Satellite\",\n styleName: \"Satellite\",\n styleUrl:\n \"mapbox://styles/artegoser/cliskjlhw00ug01pgfs9lesog?optimize=true\",\n },\n ],\n }),\n \"top-left\"\n );\n\n if (mData.debug) {\n map.addControl(new InspectControl({ console: true }), \"bottom-right\");\n }\n\n let converter = new showdown.Converter();\n\n map.on(\"style.load\", async () => {\n map.loadImage(\n \"https://cimengine.github.io/map/icons/city.png\",\n (error, image) => {\n if (error) throw error;\n map.addImage(\"city\", image);\n }\n );\n\n map.loadImage(\n \"https://cimengine.github.io/map/icons/capital.png\",\n (error, image) => {\n if (error) throw error;\n map.addImage(\"capital-city\", image);\n map.addImage(\"capital\", image);\n }\n );\n\n map.loadImage(\n \"https://cimengine.github.io/map/icons/landmark.png\",\n (error, image) => {\n if (error) throw error;\n map.addImage(\"landmark-0\", image);\n }\n );\n\n let lasticocords;\n\n loginfo(\"Getting country data\");\n let coarray = await fetch(mData.countryInfoUrl);\n coarray = await coarray.json();\n let countries = {};\n for (let i = 0; i < coarray.length; i++)\n countries[coarray[i].idc] = coarray[i];\n\n map.addSource(\"map-data\", {\n type: \"geojson\",\n data: mData.geoURL,\n });\n\n map.addLayer({\n id: \"map-data-fill-outline\",\n type: \"line\",\n source: \"map-data\",\n paint: {\n \"line-color\": [\"coalesce\", [\"get\", \"stroke\"], \"#0c7700\"],\n \"line-width\": 2,\n \"line-opacity\": 0.8,\n },\n });\n\n map.addLayer({\n id: \"map-data-fill\",\n type: \"fill\",\n source: \"map-data\",\n paint: {\n \"fill-color\": [\"get\", \"fill\"],\n \"fill-opacity\": [\"coalesce\", [\"get\", \"fill-opacity\"], 0.3],\n },\n });\n\n map.addLayer({\n id: \"map-data-symbol\",\n type: \"symbol\",\n source: \"map-data\",\n layout: {\n \"icon-image\": [\"get\", \"type\"],\n \"icon-size\": 0.15,\n },\n minzoom: 3,\n });\n\n map.on(\"click\", \"map-data-fill\", (e) => {\n const coordinates = e.lngLat;\n while (Math.abs(e.lngLat.lng - coordinates[0]) > 180) {\n coordinates[0] += e.lngLat.lng > coordinates[0] ? 360 : -360;\n }\n\n onEachFeature(e.features[0], coordinates);\n });\n\n map.on(\"click\", \"map-data-symbol\", (e) => {\n const coordinates = e.lngLat;\n while (Math.abs(e.lngLat.lng - coordinates[0]) > 180) {\n coordinates[0] += e.lngLat.lng > coordinates[0] ? 360 : -360;\n }\n\n onEachFeature(e.features[0], coordinates);\n });\n\n function onEachFeature(feature, coordinates) {\n if (feature.geometry.type === \"Point\") {\n lasticocords = coordinates;\n return new mapboxgl.Popup()\n .setLngLat(coordinates)\n .setHTML(\n `\n ${\n feature?.properties?.amount\n ? `
${l(\n \"population\"\n )} - ${feature.properties.amount} ${l(\n \"people\"\n )}.
`\n : \"\"\n }\n
\n ${\n feature?.properties?.img\n ? `
\"${feature.properties.name}
`\n : \"\"\n }\n
\n
${feature.properties.name}\n ${\n feature.properties.translated_name\n ? ` - ${feature.properties.translated_name}`\n : \"\"\n }\n
\n
\n ${\n feature.properties.description\n ? `
${converter.makeHtml(\n feature.properties.description\n )}
`\n : \"\"\n }\n
\n `\n )\n .addTo(map);\n } else if (\n feature.geometry.type === \"Polygon\" ||\n feature.geometry.type === \"MultiPolygon\"\n ) {\n let country = countries[feature.properties.name] || {\n name: \"gl js mapbox is awesome\",\n };\n setTimeout(() => {\n if (country.name !== \"gl js mapbox is awesome\")\n if (lasticocords !== coordinates)\n return new mapboxgl.Popup()\n .setLngLat(coordinates)\n .setHTML(\n `\n
`\n )\n .addTo(map);\n }, 1);\n }\n }\n });\n};\n"],"names":["exports","shared","worker","mapboxgl","define","_","chunk","workerBundleString","sharedChunk","window","URL","createObjectURL","workerUrl","Blob","type","e","t","self","i","r","n","API_URL","API_URL_REGEX","process","env","RegExp","API_TILEJSON_REGEX","API_SPRITE_REGEX","API_FONTS_REGEX","API_STYLE_REGEX","API_CDN_URL_REGEX","EVENTS_URL","hostname","SESSION_PATH","FEEDBACK_URL","TILE_URL_VERSION","RASTER_URL_PREFIX","REQUIRE_ACCESS_TOKEN","ACCESS_TOKEN","DEFAULT_STYLE","MAX_PARALLEL_IMAGE_REQUESTS","DRACO_URL","GLYPHS_URL","o","supported","testSupport","l","a","c","h","s","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","isContextLost","deleteTexture","document","createElement","onload","onerror","src","u","d","__esModule","Object","prototype","hasOwnProperty","call","default","p","f","this","cx","bx","ax","cy","by","ay","p1x","p1y","p2x","p2y","sampleCurveX","sampleCurveY","sampleCurveDerivativeX","solveCurveX","Math","abs","solve","m","g","x","y","clone","add","_add","sub","_sub","multByPoint","_multByPoint","divByPoint","_divByPoint","mult","_mult","div","_div","rotate","_rotate","rotateAround","_rotateAround","matMult","_matMult","unit","_unit","perp","_perp","round","_round","mag","sqrt","equals","dist","distSqr","angle","atan2","angleTo","angleWith","angleWithSep","cos","sin","convert","Array","isArray","length","keys","v","PI","b","w","T","E","M","A","min","max","S","push","I","C","z","P","D","R","forEach","L","k","O","B","F","N","random","toString","replace","U","pow","ceil","log","LN2","V","test","j","bind","G","indexOf","q","Z","$","map","W","H","console","warn","X","Y","K","azimuthal","polar","J","acos","Q","WorkerGlobalScope","ee","toLowerCase","parseInt","isNaN","te","ie","fullscreenElement","webkitFullscreenElement","re","setItem","removeItem","ne","oe","se","ae","le","ue","de","ce","he","pe","caches","fe","open","me","slice","split","filter","join","_e","ge","getActor","send","ye","Unknown","Style","Source","Tile","Glyphs","SpriteImage","SpriteJSON","Image","Model","freeze","xe","Error","constructor","De","super","status","url","name","message","ve","referrer","location","protocol","parent","href","be","fetch","Request","AbortController","method","body","credentials","headers","referrerPolicy","signal","set","Date","now","then","ok","statusText","catch","arrayBuffer","json","text","Headers","get","toUTCString","getTime","Response","ReadableStream","blob","put","match","delete","cancel","abort","actor","XMLHttpRequest","responseType","setRequestHeader","withCredentials","response","JSON","parse","getResponseHeader","we","Te","Ee","host","Me","Ae","Se","Ie","accept","requestParameters","callback","cancelled","shift","createImageBitmap","Uint8Array","revokeObjectURL","requestAnimationFrame","byteLength","Ce","ze","_transformRequestFn","_customAccessToken","_silenceAuthErrors","_createSkuToken","floor","token","tokenExpiresAt","_skuToken","_skuTokenExpiresAt","_isSkuTokenExpired","transformRequest","normalizeStyleURL","Pe","Be","params","path","_makeAPIURL","normalizeGlyphsURL","normalizeModelURL","normalizeSourceURL","authority","normalizeSpriteURL","Fe","normalizeTileURL","canonicalizeTileURL","canonicalizeTileset","tiles","splice","Re","Le","ke","Oe","Ne","Ue","decodeURIComponent","atob","charCodeAt","Ve","anonId","eventData","queue","pendingRequest","getStorageKey","btoa","encodeURIComponent","String","fromCharCode","Number","fetchEventData","localStorage","getItem","saveEventData","stringify","processRequests","postEvent","event","created","toISOString","queueRequest","je","postTurnstileEvent","some","lastSuccess","tokenU","getDate","sdkIdentifier","sdkVersion","skuId","userId","Ge","qe","success","skuToken","postMapLoadEvent","errorCb","id","timestamp","Ze","$e","postPerformanceEvent","performanceData","performance","getEntriesByType","startTime","responseEnd","transferSize","et","devicePixelRatio","navigator","connection","mozConnection","webkitConnection","counters","metadata","attributes","value","interactionRange","Je","find","visibilityHidden","terrainEnabled","fogEnabled","projection","zoom","effectiveType","userAgent","screen","width","height","innerWidth","innerHeight","renderer","vendor","We","He","getSession","getSessionAPI","Xe","Ye","Set","Ke","create","load","fullLoad","Qe","mark","measure","includes","tt","it","getEntriesByName","rt","nt","every","lastIndexOf","reduce","reduceRight","Function","getPrototypeOf","getOwnPropertyNames","isSealed","isFrozen","isExtensible","getOwnPropertyDescriptor","defineProperty","defineProperties","seal","preventExtensions","Worker","terminate","ArrayBuffer","isView","getContext","getImageData","ot","failIfMajorPerformanceCaveat","webGLContextAttributes","createShader","VERTEX_SHADER","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","documentMode","st","at","lt","ct","ht","ut","OffscreenCanvas","antialias","alpha","stencil","depth","dt","setNow","restoreNow","frame","cancelAnimationFrame","willReadFrequently","clearRect","drawImage","resolveURL","prefersReducedMotion","matchMedia","matches","hasCanvasFingerprintNoise","fillStyle","fillRect","data","pt","className","appendChild","ft","createElementNS","setAttributeNS","mt","documentElement","style","_t","userSelect","gt","yt","xt","vt","preventDefault","stopPropagation","removeEventListener","bt","addEventListener","setTimeout","wt","getBoundingClientRect","Mt","Tt","Et","InstallTrigger","button","ctrlKey","platform","toUpperCase","offsetWidth","clientX","left","clientY","top","At","St","It","Ct","error","zt","on","_listeners","off","_oneTimeListeners","once","Promise","fire","listens","target","_eventedParent","_eventedParentData","setEventedParent","Pt","Dt","identifier","__line__","line","Rt","Lt","kt","Boolean","valueOf","Ot","Bt","key","Ft","Nt","bindings","concat","has","Ut","Vt","kind","jt","Gt","qt","Zt","$t","Wt","Ht","Xt","Yt","Kt","itemType","Jt","Qt","ei","ti","ii","ri","ni","transparent","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","oi","si","parseFloat","ai","li","parseCSSColor","substr","pop","ci","toArray","toArray01","toArray01Scaled","toArray01PremultipliedAlpha","toArray01Linear","hi","ui","sensitivity","locale","collator","Intl","Collator","usage","compare","resolvedLocale","resolvedOptions","di","normalize","image","scale","fontStack","textColor","pi","sections","fromString","isEmpty","namePrimary","factory","serialize","fi","nameSecondary","available","mi","_i","gi","yi","xi","expectedType","evaluate","eachChild","outputDefined","vi","bi","toJSON","wi","string","number","boolean","object","Ti","args","Ei","Mi","font","content","Ai","inputPrimary","inputSecondary","availableImages","Si","Ii","Ci","registry","literal","parseColor","zi","Pi","Di","globals","feature","featureState","formattedSection","_parseColorCache","canonical","featureTileCoord","featureDistanceData","options","geometryType","geometry","canonicalID","properties","measureLight","brightness","distanceFromCenter","center","bearing","getConfig","Ri","_evaluate","_overloadIndex","definitions","overloads","$r","scope","checkSubtype","errors","Li","register","ki","Oi","caseSensitive","diacriticSensitive","Bi","exp","Fi","Ni","Ui","Vi","ji","Gi","qi","Zi","$i","Wi","Hi","Xi","Yi","Ki","Ji","Qi","er","tr","ir","rr","geojson","geometries","features","coordinates","nr","or","kilometers","miles","nauticalmiles","meters","metres","yards","feet","inches","kx","ky","units","configurable","fromTile","atan","distance","destination","offset","lineDistance","area","along","pointToSegmentDistance","pointOnLine","point","index","lineSlice","lineSliceAlong","bufferPoint","bufferBBox","insideBBox","sr","ar","_down","_up","peek","lr","cr","hr","ur","dr","pr","fr","mr","_r","gr","yr","xr","NaN","vr","br","wr","Tr","Er","Mr","Ar","Sr","Ir","Cr","zr","Pr","range1","range2","Dr","Rr","Lr","kr","Or","Br","Fr","Nr","Ur","Vr","jr","Gr","boundExpression","qr","Zr","_parse","typeAnnotation","Wr","Hr","Xr","input","labels","outputs","Yr","Kr","Jr","Qr","__proto__","array","color","en","tn","rn","nn","sn","an","ln","cn","hn","un","dn","pn","fn","mn","_n","forward","reverse","interpolate","gn","yn","hcl","lab","xn","operator","interpolation","interpolationFactor","vn","base","controlPoints","bn","wn","Tn","En","result","Mn","An","Sn","In","needle","haystack","Cn","zn","fromIndex","Pn","Dn","inputType","cases","otherwise","MAX_SAFE_INTEGER","sort","Rn","Ln","branches","kn","On","beginIndex","endIndex","Bn","Fn","Nn","Un","lhs","rhs","hasUntypedArgument","Vn","jn","Gn","qn","Zn","$n","Wn","currency","minFractionDigits","maxFractionDigits","NumberFormat","minimumFractionDigits","maximumFractionDigits","format","Hn","Xn","imul","Yn","case","coalesce","in","let","step","var","within","Kn","Jn","Qn","eo","to","io","ro","values","minValue","maxValue","stepValue","no","typeof","rgb","rgba","hsl","hsla","config","pitch","heatmapDensity","lineProgress","rasterValue","skyRadialProgress","accumulated","ln2","log10","LN10","log2","asin","all","any","isSupportedScript","upcase","downcase","oo","so","ao","lo","parameters","co","ho","expression","uo","po","interpolated","fo","mo","_o","stops","property","colorSpace","vo","xo","yo","bo","interpolationType","zoomStops","go","apply","wo","_warningHistory","_evaluator","_defaultValue","_enumValues","evaluateWithoutErrorHandling","To","Eo","enum","formatted","resolvedImage","Mo","_styleExpression","isLightConstant","isStateDependent","isConfigDependent","Ao","So","relaxZoomRestriction","Co","Io","_parameters","_specification","deserialize","zo","valueSpec","objectElementValidators","styleSpec","ds","objectKey","required","Po","arrayElementValidator","minimum","maximum","function","$version","arrayIndex","Do","Ro","isFinite","Lo","expressionContext","propertyKey","propertyType","ko","size","Oo","Bo","Fo","needGeometry","needFeature","Zo","Vo","Uo","No","dynamicFilter","qo","jo","Go","$o","Xo","Wo","Ho","Yo","layerType","Ko","filter_operator","geometry_type","Jo","layer","transition","tokens","exec","glyphs","imports","layout","Qo","es","ts","ref","layers","source","sources","paint","lineMetrics","is","rs","promoteId","ns","source_geojson","cluster","clusterProperties","source_video","source_image","os","ss","as","light","ls","lights","cs","terrain","hs","fog","us","model","import","enumerable","fs","ps","$root","ms","As","_s","gs","ys","xs","vs","bs","ws","Ts","Es","Ms","Ss","Is","zs","Cs","cells","Int32Array","subarray","bboxes","insert","_insertReadonly","extent","padding","uid","_forEachCell","_insertCell","query","_queryCell","_convertToCellCoord","_convertFromCellCoord","toArrayBuffer","buffer","Ps","Ds","Rs","writeable","klass","omit","_classRegistryKey","Ls","ks","ImageBitmap","Os","ImageData","Map","$name","entries","Bs","Fs","Arabic","Khmer","Hiragana","Katakana","Bopomofo","Kanbun","Ns","js","Us","Vs","Gs","qs","Zs","$s","Ws","Hs","Xs","Ys","Ks","Js","Qs","ea","ta","pluginStatus","pluginURL","ia","ra","na","applyArabicShaping","processBidirectionalText","processStyledBidirectionalText","isLoaded","isLoading","setState","isParsed","getPluginURL","oa","fadeDuration","sa","specification","isDataDriven","possiblyEvaluate","aa","transitioned","ca","untransitioned","la","_properties","_values","defaultTransitionablePropertyValues","_options","getValue","setValue","setTransitionOrValue","setTransition","getTransition","ha","delay","duration","begin","end","prior","defaultTransitioningPropertyValues","pa","hasTransition","ua","defaultPropertyValues","da","isConstant","constantOr","defaultPossiblyEvaluatedValues","fa","ma","overrides","_a","ga","overridableProperties","overridable","ya","xa","va","ba","wa","Ta","_featureFilter","_filterCompiled","minzoom","maxzoom","sourceLayer","slot","_unevaluatedLayout","_transitionablePaint","setPaintProperty","validate","setLayoutProperty","_transitioningPaint","setScope","fqid","getLayoutProperty","visibility","_validate","possiblyEvaluateVisibility","getPaintProperty","_handleSpecialPaintPropertyUpdate","_handleOverridablePaintPropertyUpdate","getProgramIds","getDefaultProgramParams","isHidden","updateTransitions","recalculate","sprite","is3D","isSky","isTileClipped","hasOffscreenPass","hasShadowPass","canCastShadows","hasLightBeamPass","cutoffRange","resize","compileFilter","invalidateCompiledFilter","dynamicFilterNeedsFeature","getLayerRenderingStats","_stats","resetLayerRenderingStats","numRenderedVerticesInShadowPass","numRenderedVerticesInTransparentPass","Ea","_changed","_updatedLayers","_removedLayers","_updatedSourceCaches","_updatedPaintProps","_updatedImages","isDirty","setDirty","getUpdatedSourceCaches","updateSourceCache","discardSourceCacheUpdate","updateLayer","removeLayer","getRemovedLayer","discardLayerRemoval","getLayerUpdatesByScope","updatedIds","from","removedIds","getUpdatedPaintProperties","updatePaintProperties","getUpdatedImages","updateImage","resetUpdatedImages","clear","reset","Ma","Int8","Int8Array","Uint8","Int16","Int16Array","Uint16","Uint16Array","Int32","Uint32","Uint32Array","Float32","Float32Array","Aa","_structArray","_pos1","_pos2","_pos4","_pos8","Sa","isTransferred","capacity","_trim","bytesPerElement","_refreshViews","reserve","uint8","destroy","int8","int16","uint16","int32","uint32","float32","Ia","members","BYTES_PER_ELEMENT","Ca","components","alignment","za","emplaceBack","emplace","Pa","Da","Ra","La","ka","Oa","Ba","Fa","Na","Ua","Va","ja","Ga","qa","Za","$a","Wa","Ha","Xa","Ya","Ka","Ja","Qa","el","tl","il","rl","nl","ol","sl","projectedAnchorX","projectedAnchorY","projectedAnchorZ","tileAnchorX","tileAnchorY","x1","y1","x2","y2","featureIndex","sourceLayerIndex","bucketIndex","al","ll","glyphStartIndex","numGlyphs","vertexStartIndex","lineStartIndex","lineLength","segment","lowerSize","upperSize","lineOffsetX","lineOffsetY","writingMode","placedOrientation","hidden","crossTileID","associatedIconIndex","flipState","cl","hl","rightJustifiedTextSymbolIndex","centerJustifiedTextSymbolIndex","leftJustifiedTextSymbolIndex","verticalPlacedTextSymbolIndex","placedIconSymbolIndex","verticalPlacedIconSymbolIndex","textBoxStartIndex","textBoxEndIndex","verticalTextBoxStartIndex","verticalTextBoxEndIndex","iconBoxStartIndex","iconBoxEndIndex","verticalIconBoxStartIndex","verticalIconBoxEndIndex","numHorizontalGlyphVertices","numVerticalGlyphVertices","numIconVertices","numVerticalIconVertices","useRuntimeCollisionCircles","textOffset0","textOffset1","collisionCircleDiameter","zOffset","hasIconTextFit","ul","dl","getoffsetX","pl","getx","gety","fl","layoutVertexArrayOffset","ml","_l","geta_centroid_pos0","geta_centroid_pos1","gl","yl","xl","segments","_prepareSegment","MAX_VERTEX_ARRAY_LENGTH","vertexLength","sortKey","vertexOffset","primitiveOffset","primitiveLength","prepareSegment","vaos","simpleSegment","vl","bl","wl","Tl","El","Ml","Al","Sl","Il","murmur3","murmur2","Cl","zl","ids","uniqueIds","positions","indexed","Pl","eachPosition","Float64Array","Dl","MIN_SAFE_INTEGER","Rl","Ll","initialized","fetchUniformLocation","getUniformLocation","kl","current","uniform1i","Ol","uniform1f","Bl","uniform2f","Fl","uniform3f","Nl","uniform4f","Ul","Vl","jl","uniformMatrix4fv","Gl","ql","uniformMatrix3fv","Zl","$l","uniformMatrix2fv","Wl","Hl","uniformNames","setUniform","getBinding","Xl","pattern","pixelRatio","setConstantPatternPositions","Yl","paintVertexAttributes","paintVertexArray","populatePaintArray","_setPaintValue","updatePaintArray","upload","paintVertexBuffer","updateData","createVertexBuffer","Kl","useIntegerZoom","Jl","layerId","_setPaintValues","patterns","Ql","binders","_buffers","ic","endsWith","oc","cacheKey","getMaxValue","populatePaintArrays","updatePaintArrays","defines","getBinderAttributes","getBinderUniforms","getPaintVertexBuffers","getUniforms","binding","setUniforms","updatePaintBuffers","ec","programConfigurations","needsUpload","_featureMap","_featureMapWithoutIds","_bufferOffset","_idlessCounter","tc","rc","composite","nc","sc","setSouthWest","setNorthEast","_ne","Wd","lng","lat","_sw","extend","getCenter","getSouthWest","getNorthEast","getNorthWest","getWest","getNorth","getSouthEast","getEast","getSouth","contains","ac","lc","setMatrixArrayType","ARRAY_TYPE","hc","toRadian","dc","cc","RANDOM","EPSILON","uc","hypot","arguments","pc","fc","Symbol","iterator","mc","copy","identity","fromValues","transpose","invert","adjoint","determinant","multiply","gc","fromRotation","fromScaling","str","frob","LDU","subtract","yc","exactEquals","multiplyScalar","multiplyScalarAndAdd","mul","_c","WeakMap","xc","vc","bc","Tc","translate","fromTranslation","Ec","wc","Mc","Ac","Sc","fromMat4","Cc","fromMat2d","fromQuat","normalFromMat4","zc","Ic","Pc","Dc","Rc","kc","Oc","rotateX","rotateY","rotateZ","fromXRotation","fromYRotation","fromZRotation","fromRotationTranslation","Bc","fromQuat2","getTranslation","getScaling","Fc","getRotation","fromRotationTranslationScale","fromRotationTranslationScaleOrigin","frustum","perspectiveNO","Nc","perspectiveZO","perspectiveFromFieldOfView","upDegrees","downDegrees","leftDegrees","rightDegrees","orthoNO","Uc","orthoZO","lookAt","targetTo","Vc","ortho","perspective","Lc","jc","Gc","qc","Wc","Zc","Hc","Xc","Yc","divide","Kc","scaleAndAdd","Jc","squaredDistance","Qc","squaredLength","eh","negate","inverse","dot","th","cross","lerp","hermite","bezier","transformMat4","transformMat3","transformQuat","zero","sqrLen","len","sqrDist","$c","ih","rh","nh","oh","lh","sh","ch","hh","uh","dh","ph","fh","mh","ah","_h","gh","Eh","setAxisAngle","Mh","getAxisAngle","yh","getAngle","Dh","Ah","calculateW","Sh","Ih","Ph","slerp","Ch","conjugate","fromMat3","zh","fromEuler","setAxes","sqlerp","rotationTo","Th","xh","vh","bh","wh","Rh","Lh","kh","Oh","Bh","Fh","Nh","Uh","Vh","jh","Gh","qh","Zh","$h","Wh","fromRotationTranslationValues","Jh","Hh","Xh","Qh","getDual","setDual","rotateByQuatAppend","rotateByQuatPrepend","rotateAroundAxis","eu","tu","ru","setReal","getReal","Kh","Yh","iu","nu","ou","lu","su","cu","hu","uu","du","pu","fu","mu","transformMat2","transformMat2d","au","_u","gu","yu","vec4","Du","vec3","vec2","quat2","Iu","quat","Au","mat4","Eu","mat3","mat2d","bu","mat2","glMatrix","xu","ku","vu","wu","Tu","Mu","Su","Cu","zu","Pu","Ru","Lu","Ou","Bu","Fu","Nu","Uu","getURL","service","version","request","srs","getTileBBox","getMercCoords","Vu","ju","Zu","Gu","wrap","qu","overscaledZ","scaledTo","calculateScaledKey","isChildOf","children","isLessThan","wrapped","unwrapTo","overscaleFactor","toUnwrapped","$u","Wu","pos","dir","intersectsPlane","closestPointOnSphere","Hu","TL","TR","BR","BL","horizon","fromInvProjectionMatrix","Xu","Yu","planes","Ku","projections","points","axis","Ju","Qu","fill","bounds","ed","fromPoints","frustumEdges","intersectsPrecise","fromTileIdAndHeight","applyTransform","getCorners","projectAabbCorners","quadrant","distanceX","distanceY","distanceZ","intersects","intersectsAabb","intersectsFlat","intersectsPreciseFlat","intersectsAabbXY","encapsulate","encapsulatePoint","closestPoint","td","rd","nd","od","sd","ad","ld","cd","hd","qd","ud","_camera","position","worldSize","pixelMatrixInverse","globeMatrix","Kd","Jd","lp","dd","pd","fd","vd","xd","md","_d","Dd","gd","yd","MAX_VALUE","rp","_pixelsPerMercatorPixel","ep","tp","bd","wd","Td","Ed","Md","Ad","Sd","Id","Cd","zd","Pd","pixelsPerMeter","Qd","Rd","Ld","_antialias","extStandardDerivativesForceOff","exaggeration","kd","Od","Bd","pixelMatrix","Fd","_center","_pitch","cameraToCenterDistance","Nd","Ud","Vd","jd","Gd","_createGrid","_createPoles","_poleIndexBuffer","_gridBuffer","_gridIndexBuffer","_poleNorthVertexBuffer","_poleSouthVertexBuffer","_poleSegments","_gridSegments","withSkirts","withoutSkirts","_fillGridMeshWithLods","vertices","indices","createIndexBuffer","_texturedPoleNorthVertexBuffer","_texturedPoleSouthVertexBuffer","getGridBuffers","getPoleBuffers","Zd","$d","distanceTo","toBounds","toEcef","lon","Hd","Xd","Yd","ip","np","op","sp","ap","fromLngLat","toLngLat","toAltitude","meterInMercatorCoordinateUnits","cp","hp","up","dp","pp","fp","mp","_p","loadGeometry","isReprojectedInTileSpace","project","gp","yp","xp","vp","overscaling","layerIds","hasPattern","layoutVertexArray","indexArray","stateDependentLayerIds","populate","globeExtVertexArray","addFeature","update","stateDependentLayers","uploadPending","uploaded","layoutVertexBuffer","indexBuffer","globeExtVertexBuffer","projectTilePoint","upVector","bp","zp","Mp","wp","Sp","Tp","Cp","Ep","Ap","Ip","Pp","Dp","Rp","Lp","kp","Op","Bp","Fp","Np","layout_circle","Up","paint_circle","Vp","jp","transform","calculatePixelsToTileUnitsMatrix","pixelsToGLUnits","u_camera_to_center_distance","getCameraToCenterDistance","u_matrix","translatePosMatrix","projMatrix","u_device_pixel_ratio","u_extrude_scale","u_inv_rot_matrix","u_merc_center","u_tile_id","u_zoom_transition","u_up_dir","u_emissive_strength","Gp","qp","queryGeometry","isAboveHorizon","pixelToTileUnitsFactor","tileID","upVectorScale","metersToTile","elevation","getElevationAt","Zp","tilespaceRays","Hp","screenGeometry","$p","Wp","Xp","Yp","Uint8ClampedArray","RangeError","Kp","Jp","Qp","ef","tf","rf","layout_heatmap","nf","paint_heatmap","of","resolution","clips","evaluationKey","start","sf","layout_hillshade","af","paint_hillshade","lf","cf","hf","uf","df","next","prev","steiner","Tf","xf","vf","ff","Of","Rf","Sf","Lf","pf","Af","wf","prevZ","nextZ","_f","mf","gf","yf","Ef","If","Pf","Mf","Df","bf","zf","Cf","kf","deviation","flatten","holes","dimensions","Bf","Ff","Nf","Uf","patternDependencies","Vf","jf","patternFeatures","indexArray2","segments2","addFeatures","indexBuffer2","Gf","layout_fill","qf","paint_fill","Zf","$f","Wf","Hf","Xf","Yf","Kf","Jf","Qf","em","_pbf","_geometry","_keys","readFields","tm","readVarint","im","types","readSVarint","bbox","toGeoJSON","rm","nm","om","_features","sm","readString","readFloat","readDouble","readVarint64","readBoolean","am","lm","cm","VectorTile","hm","VectorTileFeature","um","VectorTileLayer","dm","_stringToNumber","_numberToString","encode","decode","pm","read","write","fm","_m","mm","buf","Varint","Fixed64","Bytes","Fixed32","gm","ym","xm","TextDecoder","vm","bm","wm","realloc","Tm","writeVarint","Em","writeSVarint","Mm","writeFloat","Am","writeDouble","Sm","writeBoolean","Im","writeFixed32","Cm","writeSFixed32","zm","writeFixed64","Pm","writeSFixed64","Dm","Rm","Lm","skip","readMessage","readFixed32","readSFixed32","readFixed64","readSFixed64","readBytes","readPackedVarint","readPackedSVarint","readPackedBoolean","readPackedFloat","readPackedDouble","readPackedFixed32","readPackedSFixed32","readPackedFixed64","readPackedSFixed64","writeTag","finish","writeString","writeBytes","writeRawMessage","writeMessage","writePackedVarint","writePackedSVarint","writePackedBoolean","writePackedFloat","writePackedDouble","writePackedFixed32","writePackedSFixed32","writePackedFixed64","writePackedSFixed64","writeBytesField","writeFixed32Field","writeSFixed32Field","writeFixed64Field","writeSFixed64Field","writeVarintField","writeSVarintField","writeStringField","writeFloatField","writeDoubleField","writeBooleanField","km","Om","Bm","_vectorTileFeature","_z","_x","_y","state","Fm","stateChanges","deletedStates","updateState","removeFeatureState","getState","initializeTileState","setFeatureState","coalesceChanges","Nm","minimums","maximums","leaves","getElevation","toIdx","isLeaf","Um","Vm","jm","Gm","qm","childOffsets","nodeCount","dem","_siblingOffset","dim","$m","_addNode","_construct","raycastRoot","raycast","idx","nodex","nodey","Zm","Wm","mapbox","terrarium","Hm","Xm","Ym","tree","_tree","_buildQuadTree","stride","pixels","floatView","borderReady","_modifiedForSources","_idx","_timestamp","getUnpackVector","pack","getPixels","backfillBorder","onDeserialize","Km","isDataAvailableAtPoint","_source","isUsingMockSource","getSource","findDEMTileFor","getAtPointOrZero","getAtPoint","getAtTileOffset","getAtTileOffsetFunc","getForTilePoints","Jm","getMinMaxForTile","getMinElevationBelowMSL","pointCoordinate","visibleDemTiles","getMinMaxForVisibleTiles","MIN_VALUE","_demTile","_dem","_scale","_offset","tileCoordToPixel","getElevationAtPixel","getMeterToDEM","Qm","grid","featureIndexArray","loadVTLayers","vtLayers","rawTileData","sourceLayerCoder","vtFeatures","tileResult","bufferedTilespaceBounds","bufferedTilespaceGeometry","t_","loadMatchingFeature","tileTransform","queryIntersectsFeature","pixelPosMatrix","bucketLayerIDs","getId","e_","intersectionZ","lookupSymbolFeatures","loadFeature","hasLayer","i_","r_","n_","o_","s_","a_","l_","c_","h_","u_","d_","p_","layoutSize","minZoom","maxZoom","minSize","maxSize","f_","uSize","uSizeT","m_","__","SIZE_PACK_FACTOR","evaluateSizeForFeature","evaluateSizeForZoom","getSizeData","g_","toLocaleUpperCase","toLocaleLowerCase","y_","x_","v_","b_","w_","T_","bitmap","advance","E_","metrics","ascender","descender","M_","A_","horizontal","vertical","horizontalOnly","S_","I_","imageName","forText","forImage","C_","sectionIndex","imageSectionID","fromFeature","addImageSection","addTextSection","getSection","getSections","getSectionIndex","getCodePoint","codePointAt","verticalizePunctuation","trim","P_","substring","getMaxScale","getNextImageSectionCharCode","fromCodePoint","z_","R_","D_","O_","k_","B_","positionedLines","bottom","right","iconsInText","verticalizable","hasBaseline","positionedGlyphs","lineOffset","paddedRect","displaySize","localGlyph","glyph","rect","N_","horizontalAlign","verticalAlign","F_","L_","badness","priorBreak","U_","imagePrimary","imageSecondary","V_","collisionPadding","j_","G_","angleDelta","q_","Z_","$_","W_","H_","X_","Y_","K_","J_","Q_","stretchX","stretchY","eg","haveRenderCallbacks","addImages","iconPositions","patternPositions","hasRenderCallback","patchUpdatedImages","hasImage","dispatchRenderCallbacks","patchUpdatedImage","getImage","tg","ig","rg","ng","og","requestManager","localGlyphMode","localFontFamily","urls","localGlyphs","setURL","getGlyphs","stack","requests","ranges","_tinySDF","loadGlyphRange","_doesCharSupportLocalGlyph","tinySDF","TinySDF","fontFamily","fontWeight","fontSize","radius","glyphWidth","glyphHeight","glyphLeft","glyphTop","glyphAdvance","draw","cutoff","fontStyle","_createCanvas","ctx","textBaseline","textAlign","gridOuter","gridInner","actualBoundingBoxAscent","actualBoundingBoxDescent","actualBoundingBoxLeft","actualBoundingBoxRight","measureText","fillText","sg","ag","lg","hg","stretch","ug","fixed","texPrimary","texSecondary","glyphOffset","pixelOffsetTL","pixelOffsetBR","minFontScaleX","minFontScaleY","isSDF","cg","dg","pg","fg","mg","SQRT2","_g","gg","POSITIVE_INFINITY","yg","xg","vg","createArrays","tilePixelRatio","compareText","iconsNeedLinear","textSizeData","compositeTextSizes","iconSizeData","compositeIconSizes","layoutTextSize","layoutIconSize","textMaxSize","icon","allowVerticalPlacement","bg","sdf","sdfIcons","Ag","wg","generateCollisionDebugBuffers","collisionBoxArray","hasAnyIconTextFit","anchor","addToLineVertexArray","Ig","Sg","Eg","Tg","addSymbols","placedSymbolArray","Mg","glyphOffsetArray","gy","MAX_GLYPHS","addToSortKeyRanges","symbolInstances","Cg","zg","fovAboveCenter","_horizonShift","Pg","Dg","Rg","Lg","kg","Og","spec","requiresDraping","supportsWorldCopies","supportsTerrain","supportsFog","supportsFreeCamera","zAxisUnit","unsupportedLayers","range","unproject","locationPoint","_coordinatePoint","locationCoordinate","pixelSpaceConversion","farthestPixelDistance","horizonLineFromTop","rayIntersectionCoordinate","pointRayIntersection","pointCoordinate3D","isPointAboveHorizon","createInversionMatrix","createTileMatrix","zoomScale","Bg","parallels","r0","sign","Fg","Ng","Ug","Vg","jg","Gg","qg","Zg","$g","Wg","southernCenter","Hg","Xg","Yg","Kg","Jg","Qg","cosPhi","ey","_centerAltitude","ty","iy","layout_symbol","ry","paint_symbol","runtimeType","getOverride","hasOverride","ny","defaultValue","oy","_setPaintOverrides","getValueAndResolveTokens","createBucket","queryRadius","hasPaintOverride","_interpolationType","overrideFog","sy","ly","hy","uy","dy","py","fy","dynamicLayoutVertexArray","opacityVertexArray","iconTransitioningVertexArray","zOffsetVertexArray","dynamicLayoutVertexBuffer","opacityVertexBuffer","iconTransitioningVertexBuffer","zOffsetVertexBuffer","itemSize","my","layoutAttributes","collisionVertexArray","collisionVertexArrayExt","collisionVertexBuffer","collisionVertexBufferExt","hasRTLText","fullyClipped","sortKeyRanges","collisionCircleArray","placementInvProjMatrix","placementViewportMatrix","canOverlap","sortFeaturesByKey","sortFeaturesByY","writingModes","sourceID","hasAnyZOffset","zOffsetSortDirty","zOffsetBuffersNeedUpload","lineVertexArray","calculateGlyphDependencies","charAt","iconDependencies","glyphDependencies","updateZOffset","hasDebugData","textCollisionBox","iconCollisionBox","destroyDebugData","getProjection","projectionInstance","_commitLayoutVertex","_addCollisionDebugVertices","_commitDebugCollisionVertexUpdate","_addTextDebugCollisionBoxes","getSymbolInstanceTextSize","_addIconDebugCollisionBoxes","getSymbolInstanceIconSize","_updateTextDebugCollisionBoxes","_updateIconDebugCollisionBoxes","updateCollisionDebugBuffers","hasTextCollisionBoxData","hasIconCollisionBoxData","_deserializeCollisionBoxesForSymbol","textBox","textFeatureIndex","verticalTextBox","verticalTextFeatureIndex","iconBox","iconFeatureIndex","verticalIconBox","verticalIconFeatureIndex","deserializeCollisionBoxes","collisionArrays","hasTextData","hasIconData","addIndicesForPlacedSymbol","getSortedSymbolIndexes","sortedAngle","symbolInstanceIndexes","getSortedIndexesByZOffset","symbolInstanceIndexesSortedZOffset","symbolInstanceEnd","symbolInstanceStart","sortFeatures","featureSortOrder","addDynamicAttributes","yy","xy","vy","wy","Ty","Ey","lineClipsArray","gradients","layoutVertexArray2","maxLineLength","lineAtlas","addConstantDashes","addFeatureDashes","addDash","getKey","layoutVertexBuffer2","lineFeatureClips","mapbox_clip_start","mapbox_clip_end","lineClips","addLine","scaledDistance","totalDistance","lineSoFar","updateScaledDistance","e1","e2","updateDistance","addCurrentVertex","addHalfVertex","My","context","texture","HTMLImageElement","HTMLCanvasElement","HTMLVideoElement","pixelStoreUnpackFlipY","pixelStoreUnpack","pixelStoreUnpackPremultiplyAlpha","premultiply","texSubImage2D","R32F","RED","FLOAT","R8","DEPTH_COMPONENT","DEPTH_COMPONENT16","UNSIGNED_SHORT","useMipmap","generateMipmap","minFilter","texParameteri","TEXTURE_MAG_FILTER","TEXTURE_MIN_FILTER","NEAREST","NEAREST_MIPMAP_NEAREST","LINEAR_MIPMAP_NEAREST","wrapS","TEXTURE_WRAP_S","TEXTURE_WRAP_T","bindExtraParam","magFilter","wrapT","Ay","Sy","Iy","Cy","zy","Py","Dy","Ry","Ly","Oy","uses","tileSize","tileZoom","buckets","expirationTime","queryPadding","hasSymbolBuckets","dependencies","isRaster","_lastUpdatedBrightness","getBrightness","expiredRequestCount","registerFadeDuration","timeAdded","fadeEndTime","wasRequested","_tileTransform","loadVectorData","unloadVectorData","latestFeatureIndex","latestRawTileData","getLayer","justReloaded","getOwnLayer","imageAtlas","glyphAtlasImage","hasData","imageAtlasTexture","glyphAtlasTexture","lineAtlasTexture","_tileBoundsBuffer","_tileBoundsIndexBuffer","_tileBoundsSegments","_tileDebugBuffer","_tileDebugSegments","_tileDebugIndexBuffer","_globeTileDebugBorderBuffer","_tileDebugTextBuffer","_tileDebugTextSegments","_tileDebugTextIndexBuffer","_globeTileDebugTextBuffer","getBucket","ALPHA","prepare","updateBuckets","queryRenderedFeatures","querySourceFeatures","_geojsonTileLayer","tile","bucketsLoaded","patternsLoaded","setExpiryData","cacheControl","expires","getExpiryTimeout","listImages","getOwnSourceCache","_terrain","enabled","_clearRenderCacheForTile","holdingForFade","symbolFadeHoldUntil","symbolFadeFinished","clearFadeHold","setHoldDuration","setTexture","getTileTexture","LINEAR","CLAMP_TO_EDGE","setDependencies","hasDependency","clearQueryDebugViz","_makeDebugTileBoundsBuffers","_makeTileBoundsBuffers","_makeGlobeTileDebugBuffers","freezeTileCoverage","_makeGlobeTileDebugBorderBuffer","_makeGlobeTileDebugTextBuffer","_globePoint","hillshadeFBO","neighboringTiles","demTexture","By","onRemove","timeout","clearTimeout","order","remove","_getAndRemoveByKey","getAndRemove","getByKey","setMaxSize","Fy","uniqueIdxCounter","createBuffer","dynamicDraw","unbindVAO","bindElementBuffer","bufferData","ELEMENT_ARRAY_BUFFER","DYNAMIC_DRAW","STATIC_DRAW","bufferSubData","deleteBuffer","Ny","Uy","instanceCount","bindVertexBuffer","ARRAY_BUFFER","enableAttributes","enableVertexAttribArray","setVertexAttribPointers","vertexAttribPointer","setVertexAttribDivisor","vertexAttribDivisor","Vy","getDefault","dirty","setDefault","jy","clearColor","Gy","clearDepth","qy","clearStencil","Zy","colorMask","$y","depthMask","Wy","stencilMask","Hy","func","ALWAYS","mask","stencilFunc","Xy","KEEP","stencilOp","Yy","enable","STENCIL_TEST","disable","Ky","depthRange","Jy","DEPTH_TEST","Qy","LESS","depthFunc","ex","BLEND","tx","ONE","ZERO","blendFuncSeparate","ix","blendColor","rx","FUNC_ADD","blendEquationSeparate","nx","CULL_FACE","ox","BACK","cullFace","sx","CCW","frontFace","useProgram","lx","TEXTURE0","activeTexture","drawingBufferWidth","drawingBufferHeight","viewport","hx","bindFramebuffer","FRAMEBUFFER","ux","bindRenderbuffer","RENDERBUFFER","dx","px","bindBuffer","fx","mx","bindVertexArray","pixelStorei","UNPACK_ALIGNMENT","gx","UNPACK_PREMULTIPLY_ALPHA_WEBGL","yx","UNPACK_FLIP_Y_WEBGL","xx","vx","framebufferTexture2D","COLOR_ATTACHMENT0","attachment","DEPTH_ATTACHMENT","framebufferRenderbuffer","wx","Tx","DEPTH_STENCIL_ATTACHMENT","Ex","framebuffer","createFramebuffer","colorAttachment","depthAttachmentType","depthAttachment","deleteRenderbuffer","deleteFramebuffer","Mx","ReadOnly","ReadWrite","disabled","Ax","Sx","fail","depthFail","pass","Ix","Cx","blendFunction","blendEquation","Replace","unblended","alphaBlended","zx","Px","Dx","mode","backCCW","backCW","frontCW","frontCCW","Rx","stencilTest","depthTest","blend","blendFunc","cullFaceSide","program","bindVertexArrayOES","extTextureFilterAnisotropicForceOff","extTextureFilterAnisotropic","getExtension","extTextureFilterAnisotropicMax","getParameter","MAX_TEXTURE_MAX_ANISOTROPY_EXT","extDebugRendererInfo","UNMASKED_RENDERER_WEBGL","UNMASKED_VENDOR_WEBGL","extTextureFloatLinearForceOff","extTextureFloatLinear","extRenderToTextureHalfFloat","extTimerQuery","maxTextureSize","MAX_TEXTURE_SIZE","createRenderbuffer","renderbufferStorage","COLOR_BUFFER_BIT","DEPTH_BUFFER_BIT","STENCIL_BUFFER_BIT","setCullFace","setDepthMode","setStencilMode","setColorMode","Lx","_onlySymbols","dataType","sourceDataType","_sourceLoaded","_paused","reload","_sourceErrored","_tiles","_cache","_unloadTile","_timers","_cacheTimers","_minTileCacheSize","minTileCacheSize","_maxTileCacheSize","maxTileCacheSize","_loadedParentTiles","castsShadows","_coveredTiles","_shadowCasterTiles","_state","_isRaster","_dataType","onAdd","loaded","pause","resume","_shouldReloadOnResume","_loadTile","isSymbolTile","isExtraShadowCaster","loadTile","unloadTile","_abortTile","abortTile","painter","imageManager","getIds","getRenderableIds","_isIdRenderable","hasRenderableParent","findLoadedParent","_reloadTile","_tileLoaded","sourceId","usedForTerrain","getScaledDemTileSize","resetTileLookupCache","refreshedUponExpiration","_setTileReloadTimer","_backfillDEM","coord","sourceCacheId","getTileByID","needsHillshadePrepare","needsDEMTextureUpload","backfilled","getTile","_retainLoadedChildren","_getLoadedTile","reparseOverscaled","updateCacheSize","handleWrapJump","_prevLng","used","getVisibleUnwrappedCoordinates","coveringTiles","roundZoom","isTerrainDEM","hasTile","Ox","coveringZoomLevel","extendTileCoverForShadows","_updateRetainedTiles","maxOverzooming","_addTile","_fadeDuration","_removeTile","_updateLoadedParentTileCache","afterUpdate","releaseSymbolFadeTiles","maxUnderzooming","aborted","clearTiles","_clear","tilesIn","Bx","containsTile","getShadowCasterCoordinates","_getRenderableCoordinates","getVisibleCoordinates","calculateProjMatrix","expandedProjMatrix","sortCoordinatesByDistance","getFeatureState","reloadTilesForDependencies","_preloadTiles","updateElevation","Fx","Nx","Ux","Vx","jx","Gx","qx","Zx","$x","Wx","Hx","Xx","orientation","_position","_renderWorldCopies","lookAtPoint","_elevation","setPitchBearing","Yx","_transform","mercatorPosition","_orientation","getPitchBearing","getCameraToWorld","getWorldToCamera","getCameraToWorldMercator","getWorldToCameraPosition","getCameraToClipPerspective","getCameraToClipOrthographic","getDistanceToElevation","Kx","Qx","ev","iv","Jx","tv","rv","nv","unknown","flipRequired","flipNotRequired","ov","sv","labelPlaneMatrix","av","lv","glCoordMatrix","cv","vv","hv","uv","dv","xv","mv","useVertical","needsFlipping","notEnoughRoom","pv","yv","first","last","fv","gv","_v","tilePath","bv","wv","Tv","_minZoom","_maxZoom","_minPitch","_maxPitch","setProjection","setMaxBounds","_fov","_nearZ","_farZ","_unmodified","_edgeInsets","_projMatrixCache","_alignedProjMatrixCache","_fogTileMatrixCache","_expandedProjMatrixCache","_distanceTileDataCache","_averageElevation","cameraElevationReference","globeRadius","globeCenterInViewSpace","_orthographicProjectionAtLowPitch","maxPitch","_centerAltitudeValidForExaggeration","mercatorFromTransition","_setZoom","_seaLevelZoom","_calcMatrices","frustumCorners","isOrthographic","_updateCameraOnTerrain","depthOcclusionForSymbolsAndCircles","_constrainCamera","projectionOptions","setOrthographicProjectionAtLowPitch","setMercatorFromTransition","minPitch","renderWorldCopies","cameraWorldSizeForFog","_worldSizeFromZoom","_zoomFromMercatorZ","cameraWorldSize","cameraPixelsPerMeter","centerOffset","centerPoint","rotation","rotationMatrix","aspect","fov","fovX","fovY","averageElevation","_calcFogMatrices","_zoom","_updateSeaLevelZoom","_constrain","zoomFraction","NEGATIVE_INFINITY","sampleAverageElevation","_terrainEnabled","_updateZoomFromElevation","_mercatorZfromZoom","computeZoomRelativeTo","setFreeCameraOptions","_updateCameraState","_setCameraOrientation","_setCameraPosition","_updateStateFromCamera","recenterOnTerrain","getFreeCameraOptions","isPaddingEqual","interpolatePadding","scaleZoom","isLODDisabled","invProjMatrix","getCameraPoint","aabb","minZ","maxZ","fullyVisible","shouldSplit","_mercatorScaleRatio","distanceSq","fogCullDistSq","calculateFogTileMatrix","unmodified","pointMerc","pixelsPerMeterRatio","setLocationAtPoint","setLocation","coordinateLocation","locationPoint3D","pointLocation","pointLocation3D","p0","p1","screenPointToMercatorRay","isPointOnSurface","_getBoundsNonRectangular","_getBoundsRectangular","_getBoundsRectangularTerrain","getBounds","getMaxBounds","maxBounds","minLat","maxLat","minLng","maxLng","worldMinX","worldMaxX","worldMinY","worldMaxY","calculatePosMatrix","calculateDistanceTileData","worldToFogMatrix","mercatorMatrix","expandedFarZProjMatrix","alignedProjMatrix","_pixelsToTileUnitsCache","inverseAdjustmentMatrix","customLayerMatrix","globeToMercatorMatrix","_computeCameraPosition","_minimumHeightOverTerrain","_isCameraConstrained","_constraining","_minZoomForBounds","_maxCameraBoundsDistance","cameraFrustum","starsProjMatrix","skyboxMatrix","mercatorFogMatrix","_translateCameraConstrained","zoomFromMercatorZAdjusted","anyCornerOffEdge","isHorizonVisible","zoomDeltaToMovement","getWorldToCameraMatrix","getFrustum","Ev","Mv","Av","Sv","Iv","Cv","nodes","matrix","_applyTransformations","meshes","computeBoundsAndApplyParent","_positionModelOnTerrain","corners","dotProductWithUp","computeModelMatrix","Dv","Rv","Lv","zv","gfxTexture","sampler","Pv","vertexBuffer","vertexArray","normalArray","normalBuffer","texcoordArray","texcoordBuffer","colorArray","colorBuffer","featureArray","pbrBuffer","material","pbrMetallicRoughness","baseColorTexture","metallicRoughnessTexture","normalTexture","occlusionTexture","emissionTexture","kv","instancedDataOffset","instancedDataCount","translation","Ov","instancedDataArray","instancesEvaluatedElevation","idToFeaturesIndex","Bv","hasZoomDependentProperties","isZoomDependent","instancesPerModel","validForExaggeration","maxVerticalOffset","maxScale","maxHeight","lookupDim","terrainElevationMin","terrainElevationMax","validForDEMTile","tileToMeter","lookup","updateZoomBasedPaintProperties","featureStates","instancedDataBuffer","Fv","layout_model","Nv","paint_model","Uv","Vv","jv","Gv","qv","node","evaluatedRMEA","hiddenByReplacement","evaluatedScale","evaluatedColor","emissionHeightBasedParams","Zv","modelTraits","terrainExaggeration","replacementUpdateTime","elevationReadFromZ","getNodesInfo","updatePbrBuffer","needsReEvaluation","$v","evaluateScale","featureData","hasTranslucentParts","part","Hv","elevationUpdate","terrainTile","updateDEM","footprint","cellsY","cellsX","xScale","yScale","nodesInfo","freeNodes","updateReplacement","updateTime","getReplacementRegionsForTile","getHeightAtTileCoord","heightmap","verticalScale","Wv","lightMeshIndex","Xv","_updateTime","_sourceIds","_activeRegions","_prevRegions","Qv","hiddenByOverlap","Jv","eb","priority","footprintTileId","tileId","setSources","_setSources","getSourceId","cache","getFootprints","_addSource","_computeReplacement","Yv","Kv","ib","tb","rb","nb","ob","sb","ab","lb","cb","hb","ub","db","pb","vertexCount","indexOffset","indexCount","fb","centroidXY","vertexArrayOffset","groundVertexArrayOffset","groundVertexCount","flags","footprintSegIdx","footprintSegLen","polygonSegIdx","polygonSegLen","span","mb","acc","accCount","centroidDataIndex","startRing","appendEdge","borders","processBorderOverlap","checkBorderIntersection","addBorderIntersection","centroid","intersectsCount","_b","gb","yb","xb","_segments","hiddenByLandmarkVertexArray","_segmentToGroundQuads","_segmentToRegionTriCounts","regionSegments","getDefaultSegment","addData","Eb","Mb","region","prepareBorderSegments","addPaintPropertiesData","uploadPaintProperties","updateHiddenByLandmark","_needsHiddenByLandmarkUpdate","uploadHiddenByLandmark","hiddenByLandmarkVertexBuffer","vb","edgeRadius","activeReplacements","centroidData","footprintIndices","footprintVertices","footprintSegments","centroidVertexArray","groundEffect","partLookup","triangleSubSegments","polygonSegments","featuresOnBorder","borderFeatureIndices","borderDoneWithNeighborZ","sortBorders","splitToSubtiles","layoutVertexExtArray","layoutVertexExtBuffer","uploadCentroid","needsCentroidUpdate","centroidVertexBuffer","Cb","polygon","triangleArrayOffset","triangleCount","triangleSegIdx","ringIndices","Ab","wb","Tb","bb","Sb","encodeCentroid","centroidIdx","subtile","polygonSegmentIdx","triangleSegmentIdx","getVisibleSegments","showCentroid","writeCentroidToBuffer","createCentroidsBuffer","zb","footprintContainsPoint","Ib","polygons","Pb","Db","Rb","Lb","kb","Ob","Bb","layout_line","Fb","paint_line","Nb","jb","u_pixels_to_tile_units","u_units_to_pixels","u_dash_image","u_gradient_image","u_image_height","u_texsize","qb","u_tile_units_to_pixels","Vb","u_alpha_discard_threshold","u_trim_offset","Ub","u_image","Gb","Zb","$b","Wb","layout_background","Hb","paint_background","Xb","layout_raster","Yb","paint_raster","Kb","Jb","dispatcher","_loaded","onNorthPole","onSouthPole","_dirty","_finishLoading","_imageRequest","_requestManager","handle","WebGLTexture","setCoordinates","_boundsArray","_prepareData","perspectiveTransform","boundsBuffer","boundsSegments","Qb","implementation","renderingMode","prerender","isLayerDraped","renderToTile","shouldRedrape","shouldRerenderTiles","ew","layout_sky","tw","paint_sky","iw","rw","nw","circle","heatmap","_updateColorRamp","colorRamp","colorRampTexture","heatmapFbo","hillshade","tilespaceGeometry","flat","isPointQuery","screenBounds","gradientVersion","stepInterpolant","gradientExpression","widthExpression","symbol","background","raster","hasColorMap","sky","_skyboxInvalidated","needsSkyboxCapture","skyboxTexture","skyboxGeometry","_lightPosition","markSkyboxValid","_isPropertyZoomDependent","ow","sw","userImage","render","aw","images","updatedImages","callbackDispatchedThisFrame","requestors","atlasImage","atlasTexture","createScope","setLoaded","_notify","addImage","_validateStretch","_validateContent","removeImage","getImages","getPixelSize","getPattern","bin","_updatePatternAtlas","beginFrame","lw","intensity","cw","_transitionable","setLight","_transitioning","getLight","hw","uw","drapeRenderMode","getExaggeration","dw","pw","fw","mw","_w","gw","yw","xw","vw","horizonBlend","getOpacity","getOpacityAtLatLng","getOpacityForTile","getOpacityForBounds","getFovAdjustedRange","isVisibleOnFrustum","bw","_callback","_triggered","MessageChannel","_channel","port2","onmessage","trigger","port1","postMessage","ww","tasks","taskQueue","invoker","nextId","pick","Tw","mapId","callbacks","cancelCallbacks","receive","scheduler","hasCallback","targetMapId","mustQueue","sourceMapId","processTask","getWorkerSource","Ew","workerPool","actors","currentActor","acquire","Actor","ready","broadcast","release","Mw","updateConfig","shadowsEnabled","Aw","properties_light_ambient","Sw","direction","properties_light_directional","Iw","cameraPoint","_screenRaycastCache","_cameraRaycastCache","bufferedScreenGeometry","screenGeometryMercator","_bufferedScreenMercator","createFromScreenPoints","bufferedCameraGeometry","bufferedCameraGeometryGlobe","_bufferedCameraMercator","unwrapped","Pw","_projectAndResample","zw","Cw","Dw","vector_layers","vectorLayers","vectorLayerIds","Rw","validateBounds","Lw","nextRow","getDash","getDashRanges","isDash","zeroLength","addRoundDash","addRegularDash","kw","Ow","Bw","showCollisionBoxes","collectResourceTiming","extraShadowCaster","familiesBySource","Fw","glyphMap","iconMap","glyphPositions","stacks","icons","Nw","Uw","deduped","vectorTile","rawData","Vw","scheme","_collectResourceTiming","_tileWorkers","_deduped","_language","_worldview","_tileJSONRequest","tileBounds","cancelTileJSONRequest","clearSource","setTiles","setUrl","reloadCallback","resourceTiming","_refreshExpiredTiles","jw","saveTileTexture","Gw","xI","workerClass","qw","Zw","active","workers","workerCount","numActive","isPreloaded","$w","Ww","Hw","Xw","Yw","Kw","Jw","dracoUrl","Qw","eT","tT","iT","rT","SCALAR","VEC2","VEC3","VEC4","MAT2","MAT3","MAT4","nT","bufferViews","buffers","bufferView","oT","sT","extensions","Decoder","uT","Mesh","DecodeArrayToMesh","accessors","componentType","count","_malloc","GetTrianglesUInt16Array","GetTrianglesUInt32Array","memory","_free","GetAttributeByUniqueId","GetAttributeDataArrayForAllPoints","aT","lT","cT","hT","uri","byteOffset","dT","mimeType","pT","extensionsUsed","resolve","copyWithin","grow","WebAssembly","instantiateStreaming","instantiate","instance","ptr","DT_INT8","DT_UINT8","DT_INT16","DT_UINT16","DT_UINT32","DT_FLOAT32","primitives","fT","mT","payload","_T","cellIdx","triIdx","gT","yT","POSITION","COLOR_0","NORMAL","TEXCOORD_0","emissiveFactor","alphaMode","alphaCutoff","emissiveTexture","doubleSided","baseColorFactor","metallicFactor","roughnessFactor","defined","materials","_FEATURE_RGBA4444","xT","mesh","extras","normal","vT","bT","ground","flatMap","wT","TT","WebGL2RenderingContext","textures","REPEAT","assign","samplers","scenes","scene","ET","MT","AT","vector","encoding","_getNeighboringTiles","rawImageData","_data","attribution","workerOptions","geojsonVtOptions","tolerance","generateId","superclusterOptions","clusterMaxZoom","minPoints","clusterMinPoints","clusterRadius","setData","_updateWorkerData","getClusterExpansionZoom","clusterId","getClusterChildren","getClusterLeaves","limit","_pendingLoad","_coalesce","_metadataFired","video","muted","onloadstart","crossOrigin","loop","setAttribute","triggerRepaint","play","seek","seekable","currentTime","getVideo","readyState","paused","videoWidth","videoHeight","models","allSettled","getModels","usedInConflation","canvas","animate","getElementById","_hasInvalidDimensions","_playing","getCanvas","custom","_dispatcher","_implementation","_update","_clearTiles","_coveringTiles","_map","loadTileData","code","ST","IT","CT","PT","wrappedTileID","queryResults","zT","DT","processLayersChanged","_mergedLayers","getLayerSource","currentBuildingBuckets","getLayerSourceCache","bucket","_getHeightAtTileOffset","_mapCoordToOverlappingTile","tileX","tileY","RT","LT","kT","OT","setStyle","addLayer","setSlot","setFilter","addSource","removeSource","setGeoJSONSourceData","setLayerZoomRange","setLayerProperty","setCenter","setZoom","setBearing","setPitch","setSprite","setGlyphs","setTerrain","setFog","setCamera","setLights","addImport","removeImport","setImportUrl","setImportData","setImportConfig","BT","command","FT","NT","UT","VT","jT","GT","qT","_distances","paddedLength","ZT","boxCells","circleCells","xCellCount","yCellCount","circleKeys","boxKeys","circles","boxUid","circleUid","keysLength","_insertBoxCell","insertCircle","_insertCircleCell","_query","hitTest","seenUids","box","_queryCircle","_queryCellCircle","hitTestCircle","_circleAndRectCollide","_circlesCollide","_convertToXCellCoord","_convertToYCellCoord","$T","WT","ignoredGrid","pitchfactor","screenRightBoundary","screenBottomBoundary","gridRightBoundary","gridBottomBoundary","fogState","placeCollisionBox","projectAndGetPerspectiveRatio","perspectiveRatio","occluded","isInsideGrid","offscreen","isOffscreen","placeCollisionCircles","signedDistanceFromCamera","collisionDetected","queryRenderedSymbols","bucketInstanceId","insertCollisionBox","collisionGroupID","insertCollisionCircles","getViewportMatrix","HT","XT","YT","KT","opacity","placed","JT","clipped","QT","skipFade","eE","viewportMatrix","tE","iE","crossSourceCollisions","maxGroupID","collisionGroups","ID","predicate","rE","nE","oE","collisionIndex","buildingIndex","placements","opacities","variableOffsets","stale","commitTime","retainedQueryData","collisionCircleArrays","prevPlacement","placedOrientations","getBucketParts","unwrappedTileID","posMatrix","textLabelPlaneMatrix","labelToScreenMatrix","clippingData","textPixelRatio","partiallyEvaluatedTextSize","partiallyEvaluatedIconSize","collisionGroup","attemptAnchorPlacement","textOffset","textScale","prevAnchor","markUsedJustification","markUsedOrientation","placedGlyphBoxes","placeLayerBucketPart","unshift","commit","zoomAtLastRecencyCheck","prevZoomAdjustment","zoomAdjustment","symbolFadeChange","lastPlacementChangeTime","updateLayerOpacities","updateBucketOpacities","fE","mE","sE","hasTransitions","stillRecent","setStale","aE","lE","cE","hE","uE","dE","pE","_E","_sortAcrossTiles","_currentTileIndex","_currentPartIndex","_seenCrossTileIDs","_bucketParts","continuePlacement","gE","placement","_currentPlacementIndex","_forceFullPlacement","_showCollisionBoxes","_done","isDone","_inProgressLayer","yE","xE","numItems","nodeSize","ArrayType","IndexArrayType","coords","_pos","_finished","vE","EE","bE","wE","TE","ME","AE","crossTileIDs","findMatches","SE","maxCrossTileID","generate","IE","indexes","usedCrossTileIDs","addBucket","removeBucketCrossTileIDs","removeStaleBuckets","CE","layerIndexes","maxBucketInstanceId","bucketsInCurrentPlacement","pruneUnusedLayers","zE","PE","DE","RE","LE","kE","OE","BE","FE","qE","NE","UE","ZE","VE","jE","GE","backgroundPattern","clippingMask","heatmapTexture","collisionBox","collisionCircle","debug","fillOutline","fillOutlinePattern","fillPattern","fillExtrusion","fillExtrusionDepth","fillExtrusionPattern","groundShadow","fillExtrusionGroundEffect","hillshadePrepare","linePattern","symbolIcon","symbolSDF","symbolTextAndIcon","terrainRaster","terrainDepth","skybox","skyboxGradient","skyboxCapture","globeRaster","globeAtmosphere","modelDepth","stars","fragmentSource","vertexSource","staticAttributes","usedDefines","vertexIncludes","fragmentIncludes","$E","boundProgram","boundLayoutVertexBuffer","boundPaintVertexBuffers","boundIndexBuffer","boundVertexOffset","boundDynamicVertexBuffers","vao","freshBind","numAttributes","createVertexArray","currentNumAttributes","deleteVertexArray","WE","HE","prepareDrawTile","isTileAffectedByFog","getOrCreateProgram","enable3dLights","directionalLight","moving","u_latrange","u_light","u_shadow","u_highlight","u_accent","uploadCommonUniforms","tileBoundsBuffer","tileBoundsIndexBuffer","tileBoundsSegments","getTileBoundsBuffers","TRIANGLES","XE","YE","TEXTURE1","getMercatorTileBoundsBuffers","linearFloatFilteringSupported","u_dimension","u_zoom","KE","u_image0","u_skirt_height","u_ground_shadow_factor","JE","QE","u_proj_matrix","u_globe_matrix","u_normalize_matrix","u_merc_matrix","u_frustum_tl","u_frustum_tr","u_frustum_br","u_frustum_bl","u_globe_pos","u_globe_radius","u_viewport","u_grid_matrix","eM","shouldRenderCutoff","uniformValues","u_cutoff_params","minCutoffZoom","tM","iM","operations","newMorphing","queued","phase","getMorphValuesForProxy","_validOp","_nextOp","rM","nM","oM","sM","aM","mix","lM","cM","renderCache","renderCachePool","proxyCachedFBO","freeFBO","deallocRenderCache","hM","proxyTileKey","uM","terrainTileForTile","prevTerrainTileForTile","gridBuffer","gridIndexBuffer","gridSegments","gridNoSkirtSegments","proxyCoords","proxiedCoords","_visibleDemTiles","_drapedRenderBatches","_sourceTilesOverlap","proxySourceCache","orthoMatrix","_overlapStencilMode","GEQUAL","REPLACE","_previousZoom","pool","_findCoveringTileCache","_tilesDirty","_useVertexMorphing","_exaggeration","_mockSourceCache","_pendingGroundEffectLayers","_onStyleDataEvent","_style","_clearLineLayersFromRenderCache","_evaluationZoom","_previousUpdateTimestamp","_updateTimestamp","getSourceCache","sourceCache","calculateExaggeration","_disable","_initializing","_emptyDEMTextureDirty","_previousCameraAltitude","invalidateRenderCache","_sharedDepthStencil","_mergedSourceCaches","_emptyDEMTexture","_emptyDepthBufferTexture","_depthFBO","_depthTexture","framebufferCopyTexture","drapeBufferSize","useVertexMorphing","updateTileBinding","proxyToSource","_setupProxiedCoordsForOrtho","_assignTerrainTiles","_prepareDEMTextures","_setupDrapedRenderBatches","_initFBOPool","_setupRenderCache","renderingToTexture","_findTileCoveringTileID","_prepareDemTileUniforms","emptyDEMTexture","_updateEmptyDEMTexture","emptyDepthBufferTexture","_getLoadedAreaMinimum","TEXTURE2","setupElevationDraw","u_dem","u_dem_prev","u_dem_tl","u_dem_tl_prev","u_dem_scale","u_dem_scale_prev","u_dem_size","u_dem_lerp","u_depth","u_depth_size_inv","u_exaggeration","morphing","srcDemTile","dstDemTile","TEXTURE4","TEXTURE3","useDepthForOcclusion","useMeterToDem","u_meter_to_dem","labelPlaneMatrixInv","u_label_plane_matrix_inv","setTerrainUniformValues","globeUniformValues","useDenormalizedUpVectorScale","setGlobeUniformValues","u_tile_tl_up","u_tile_tr_up","u_tile_br_up","u_tile_bl_up","u_tile_up_scale","renderToBackBuffer","gpuTimingDeferredRenderStart","colorModeForRenderPass","LEQUAL","depthRangeFor3D","globeSharedBuffers","renderDefaultNorthPole","renderDefaultSouthPole","shadowRenderer","longestCutoffRange","ambientLight","WA","setupShadows","gpuTimingDeferredRenderEnd","renderBatch","tex","renderedToTile","_setupStencil","renderLayer","postRender","isLayerOrderingCorrect","minx","miny","maxx","maxy","_createFBO","DEPTH_STENCIL","_stencilRef","texParameterf","TEXTURE_MAX_ANISOTROPY_EXT","_shouldDisableRenderCache","hasLightTransitions","getSources","_clearRasterLayersFromRenderCache","_overlapStencilType","EQUAL","GREATER","_renderTileClippingMasks","clipOrMaskOverlapStencilType","stencilModeForRTTOverlap","_tileClippingMaskIDs","tileExtentBuffer","quadTriangleIndexBuffer","tileExtentSegments","drawDepth","_setupProxiedCoordsForImageSource","_createProxiedId","dM","pM","fM","mM","createProgram","configuration","fixedDefines","FRAGMENT_SHADER","failedToCreate","attachShader","startsWith","bindAttribLocation","linkProgram","deleteShader","fixedUniforms","binderUniforms","terrainUniforms","globeUniforms","fogUniforms","u_fog_matrix","u_fog_range","u_fog_color","u_fog_horizon_blend","u_fog_vertical_limit","u_fog_temporal_offset","u_globe_transition","u_is_globe","cutoffUniforms","lightsUniforms","u_lighting_ambient_color","u_lighting_directional_dir","u_lighting_directional_color","u_ground_radiance","shadowUniforms","u_light_matrix_0","u_light_matrix_1","u_fade_range","u_shadow_normal_offset","u_shadow_intensity","u_shadow_texel_size","u_shadow_map_resolution","u_shadow_direction","u_shadow_bias","u_shadowmap_0","u_shadowmap_1","setFogUniformValues","setCutoffUniformValues","setLightsUniformValues","setShadowUniformValues","_drawDebugWireframe","wireframe","layers2D","layers3D","wireframeDebugCache","getLinesFromTrianglesBuffer","frameCounter","ONE_MINUS_SRC_ALPHA","drawElementsInstanced","LINES","drawElements","LINE_STRIP","_M","u_pixel_coord_upper","u_pixel_coord_lower","gM","yM","u_lightpos","u_lightintensity","u_lightcolor","u_vertical_gradient","u_opacity","u_height_lift","u_ao","u_edge_radius","u_flood_light_color","u_vertical_scale","u_flood_light_intensity","xM","vM","u_height_factor","bM","wM","TM","u_world","EM","MM","AM","u_color","u_overlay","u_overlay_scale","SM","IM","u_intensity","CM","u_tl_parent","u_scale_parent","u_fade_t","u_image1","u_brightness_low","u_brightness_high","u_saturation_factor","u_contrast_factor","u_spin_weights","zM","u_perspective_transform","u_raster_elevation","u_tl_br","u_colorization_mix","PM","u_colorization_offset","DM","u_color_ramp","u_texture_offset","u_texture_res","RM","LM","u_is_size_zoom_constant","u_is_size_feature_constant","u_size_t","u_size","u_rotate_symbol","u_aspect_ratio","u_fade_change","u_label_plane_matrix","u_coord_matrix","u_is_text","u_pitch_with_map","u_texture","u_camera_forward","u_ecef_origin","u_tile_matrix","u_up_vector","u_icon_transition","u_icon_saturation","kM","u_gamma_scale","u_is_halo","undefined","OM","u_texsize_icon","u_texture_icon","BM","FM","u_pattern_tl","u_pattern_br","u_pattern_size","NM","BaseColor","MetallicRoughness","Normal","Occlusion","Emission","ShadowMap0","UM","u_lighting_matrix","u_normal_matrix","u_camera_pos","u_baseTextureIsAlpha","u_alphaMask","u_alphaCutoff","u_baseColorFactor","u_emissiveFactor","u_metallicFactor","u_roughnessFactor","u_baseColorTexture","u_metallicRoughnessTexture","u_normalTexture","u_occlusionTexture","u_emissionTexture","u_color_mix","u_aoIntensity","VM","jM","u_instance","u_node_matrix","GM","u_ao_pass","u_meter_to_tile","u_attenuation","u_fb","u_fb_size","u_inv_matrix","u_viewport_size","u_sun_direction","u_cubemap","u_temporal_offset","u_center_direction","u_radius","u_matrix_3f","u_sun_intensity","u_color_tint_r","u_color_tint_m","u_luminance","u_horizon","u_transition","u_fadeout_range","u_high_color","u_space_color","u_horizon_angle","u_up","u_right","u_intensity_multiplier","qM","ZM","circleArray","circleOffset","invTransform","$M","WM","HM","XM","YM","depthModeForSublayer","rotating","zooming","terrainRenderModeElevated","atlasTextureIcon","atlasInterpolation","atlasInterpolationIcon","hasHalo","uploadCommonLightUniforms","KM","JM","stencilModeForClipping","QM","renderPass","useNormalOffset","getMaxCascadeForTile","a_centroid_pos","vertexAttrib2f","oA","calculateShadowPassMatrixFromTile","eA","tA","iA","rA","nA","_cascades","currentShadowCascade","shadowDirection","computeSimplifiedTileShadowVolume","getCurrentCascadeFrustum","sA","aA","lA","cA","hA","uA","dA","emptyTexture","debugBuffer","debugIndexBuffer","debugSegments","initDebugOverlayCanvas","debugOverlayCanvas","shadowColor","shadowBlur","lineWidth","strokeStyle","strokeText","debugOverlayTexture","pA","mA","fA","SCISSOR_TEST","scissor","_A","gA","yA","xA","vA","TEXTURE_CUBE_MAP_POSITIVE_X","bA","wA","TA","EA","colorModeAlphaBlendedWriteRGB","colorModeWriteAlpha","atmosphereBuffer","starsVx","starsIdx","starsSegments","drawAtmosphereGlow","drawStars","MA","AA","SA","nodeModelMatrix","zScaleMatrix","negCameraPosMatrix","worldViewProjection","setupShadowsFromMatrix","IA","modelIndex","CA","getShadowPassDepthMode","getShadowPassColorMode","calculateShadowPassMatrixFromMatrix","zA","PA","shadowUniformsInitialized","useSingleShadowCascade","tileMatrix","shadowTileMatrix","DA","RA","getShadowUniformValues","LA","kA","modelManager","getModel","isInsideFirstShadowMapFrustum","OA","BA","_storage","lastUsedFrameIdx","getBufferParameter","BUFFER_SIZE","getBufferSubData","FA","colorModeForDrapableLayerRenderPass","programConfiguration","RGBA16F","HALF_FLOAT","viewportBuffer","viewportSegments","gradient","INVERT","resetStencilClippingMasks","opaquePassEnabledForLayer","conflationActive","layerUsedInConflation","replacementSource","stencilModeFor3D","_showOverdrawInspector","MIN","DECR","ONE_MINUS_DST_ALPHA","DST_ALPHA","MAX","copyTexImage2D","disableElevatedTerrain","stencilConfigForOverlap","resampling","isPatternMissing","getBackgroundTiles","_atmosphere","skyboxFbo","TEXTURE_CUBE_MAP","setCustomLayerDefaults","setBaseState","currentLayer","firstLightBeamLayer","NA","modelUpload","UA","_tileTextures","frameCopies","loadTimeStamps","setup","numSublayers","depthEpsilon","deferredRenderGpuTimeQueries","gpuTimers","_backgroundTiles","_fogVisible","_cachedTileFogOpacities","_shadowRenderer","qA","_wireframeDebugCache","updateTerrain","_updateFog","mercatorBoundsBuffer","mercatorBoundsSegments","identityMat","stencilClearMode","nextStencilID","currentStencilSource","NOTEQUAL","CONSTANT_COLOR","CONSTANT_ALPHA","opaquePassCutoff","updateShadowParameters","addShadowReceiver","uploadLayer","hasSymbolLayers","hasCircleLayers","drawShadowPass","showOverdrawInspector","getShadowCastingLayerCount","drawGroundShadows","showTileBoundaries","showQueryGeometry","showTileAABBs","showPadding","tileLoaded","speedIndexTiming","saveCanvasCopy","gpuTimingStart","gpuTimingEnd","isInitialLoad","gpuTiming","calls","cpuTime","createQuery","beginQuery","TIME_ELAPSED_EXT","gpuTimingDeferredRender","endQuery","collectGpuTimers","collectDeferredRenderGpuQueries","queryGpuTimers","getQueryParameter","QUERY_RESULT","deleteQueryEXT","queryGpuTimeDeferredRender","getTerrain","currentGlobalDefines","_shadowMapDebug","overrideRtt","setTileLoadedFlag","canvasCopy","getCanvasCopiesAndTimestamps","canvasCopies","timeStamps","averageElevationNeedsEasing","clearBackgroundTiles","VA","jA","lastCascade","GA","receivers","computeRequiredCascades","_enabled","_shadowLayerCount","_numCascadesToRender","_groundShadowTiles","_receivers","_depthMode","_uniformValues","far","boundingSphereRadius","$A","HA","ZA","XA","numModelsLoading","loadModel","hasModel","addModel","removeModel","addModels","listModels","YA","KA","JA","QA","eS","tS","iS","fragments","importDepth","importsCache","resolvedImports","_buildingIndex","crossTileSymbolIndex","_mergedOrder","_drapedFirstOrder","_mergedOtherSourceCaches","_mergedSymbolSourceCaches","_has3DLayers","_hasCircleLayers","_hasSymbolLayers","_changes","styleChanges","glyphManager","localIdeographFontFamily","_layers","_serializedLayers","_sourceCaches","_otherSourceCaches","_symbolSourceCaches","_precompileDone","_shouldPrecompile","_availableImages","_order","_markersNeedUpdate","_configDependentLayers","_config","_rtlTextPluginCallback","registerForPluginStateChange","getOwnSource","_validateLayer","loadURL","accessToken","_load","_request","loadJSON","loadEmpty","_loadImports","_createFragmentStyle","mergeAll","_reloadImports","_updateMapProjection","_triggerCameraUpdate","camera","_serializeLayers","isRootStyle","schema","fragment","setConfig","stylesheet","_loadSprite","getOwnLayerSourceCache","terrainSetForDrapingOnly","_createTerrain","_createFog","forEachFragmentStyle","_prioritizeTerrain","mergeSources","mergeLayers","mergeTerrain","mergeProjection","updateDrapeFirstLayers","getCamera","applyProjectionUpdate","setTerrainForDraping","_useExplicitProjection","_prioritizeAndUpdateProjection","_spriteRequest","_serializeImports","_serializeSources","hasFogTransition","_checkLoaded","_checkLayer","_checkSource","calculateLightsBrightness","_brightness","_updateWorkerLayers","updateSourceCaches","_updateTilesForChangedImages","updateLayers","_updateMarkersOpacity","getFragmentStyle","_afterImageUpdated","isSourceLoaded","_isSourceCacheLoaded","getOwnSourceCaches","getOwnSources","_getTransitionParameters","getLights","getConfigProperty","setConfigProperty","updateConfigDependencies","_updateLayer","_layerOrderChanged","moveLayer","hasLayerType","getFilter","_flattenAndSortRenderedFeatures","serializedLayers","has3DLayers","_showQueryGeometry","addSourceType","getSourceType","setSourceType","workerSourceURL","getFlatLight","setFlatLight","_force3DLayerUpdate","_markers","_requestDomTask","_evaluateOpacity","getFog","_forceSymbolLayerUpdate","_remove","getSourceCaches","clearSources","reloadSource","reloadSources","updateSources","_generateCollisionBoxes","_updatePlacement","pauseablePlacement","_releaseSymbolFadeTiles","findIndex","getImportIndex","getResource","_clearWorkerCaches","rS","nS","_hashName","_updateHash","_updateHashUnthrottled","addTo","_onHashChange","getHashString","oS","hash","_getCurrentHash","dragRotate","isEnabled","touchZoomRotate","getBearing","jumpTo","history","replaceState","getZoom","getPitch","sS","linearity","easing","aS","deceleration","maxSpeed","lS","cS","hS","uS","_inertiaBuffer","record","_drainInertiaBuffer","time","settings","_onMoveEnd","_prefersReducedMotion","pan","pinchAround","around","zoomDelta","bearingDelta","pitchDelta","panDelta","pS","amount","dS","noMoveStart","fS","_defaultPrevented","defaultPrevented","getCanvasContainer","lngLat","originalEvent","mS","changedTouches","touches","lngLats","_S","gS","_clickTolerance","clickTolerance","_mousedownPos","wheel","_firePreventable","mousedown","mouseup","preclick","click","dblclick","mouseover","mouseout","touchstart","touchmove","touchend","touchcancel","isActive","yS","_delayContextMenu","_contextMenuEvent","mousemove","contextmenu","xS","_el","_container","getContainer","_active","shiftKey","_startPos","_lastPos","mousemoveWindow","_box","classList","_fireEvent","mouseupWindow","cameraAnimation","fitScreenCoordinates","linear","keydown","keyCode","blur","vS","bS","numTouches","timeStamp","wS","singleTap","numTaps","lastTime","lastTap","TS","_zoomIn","_zoomOut","easeTo","ES","MS","_moved","_lastPoint","_eventButton","_correctButton","_move","buttons","AS","SS","IS","CS","_minTouches","_touches","_sum","_calculateTransform","_cooperativeGestures","isMoving","_showTouchPanBlockerAlert","_alertContainer","_alertTimer","cancelable","_addTouchPanBlocker","textContent","_getUIString","clientWidth","zS","_firstTwoTouches","_start","PS","_aroundCenter","DS","RS","_distance","_startDistance","LS","kS","_minDiameter","_startVector","_vector","_isBelowThreshold","OS","BS","_valid","_firstMove","_lastPoints","gestureBeginsVertically","FS","panStep","bearingStep","pitchStep","NS","_panStep","_bearingStep","_pitchStep","_rotationDisabled","altKey","metaKey","easeId","US","disableRotation","enableRotation","VS","jS","_handler","_delta","_lastDelta","_defaultZoomRate","_wheelZoomRate","setZoomRate","setWheelZoomRate","_finishTimeout","isZooming","_zooming","_addScrollZoomBlocker","_showBlockerAlert","deltaMode","WheelEvent","DOM_DELTA_LINE","deltaY","_lastWheelEventTime","_type","_lastValue","_timeout","_onTimeout","_lastWheelEvent","_frameId","_aroundPoint","_aroundCoord","_targetZoom","_triggerRenderFrame","renderFrame","_prevEase","_easing","_startZoom","_smoothOutEasing","noInertia","needsRenderFrame","aroundCoord","GS","_clickZoom","_tapZoom","qS","ZS","_tap","_swipePoint","_swipeTouch","_tapTime","$S","_mousePan","_touchPan","_inertiaOptions","WS","_pitchWithRotate","pitchWithRotate","_mouseRotate","_mousePitch","HS","_touchZoom","_touchRotate","_tapDragZoom","XS","drag","YS","KS","constants","projectRay","JS","QS","_handlers","_handlersById","_inertia","_bearingSnap","bearingSnap","_previousActiveHandlers","_trackingEllipsoid","_dragOrigin","_eventsInProgress","_addDefaultHandlers","passive","capture","handleWindowEvent","handleEvent","boxZoom","doubleClickZoom","touchPitch","dragPan","scrollZoom","keyboard","interactive","handlerName","handler","allowed","stop","_updatingCamera","_fireEvents","_originalZoom","isRotating","_isDragging","_blockedByActive","_getMapTouches","mergeHandlerResult","_stop","_applyChanges","_updateMapTransform","resetNorth","_requestFrame","_renderTaskQueue","eI","tI","_moving","_respectPrefersReducedMotion","respectPrefersReducedMotion","panBy","panTo","zoomTo","zoomIn","zoomOut","getPadding","setPadding","rotateTo","resetNorthPitch","snapToNorth","cameraForBounds","_cameraForBounds","_extendCameraOptions","_minimumAABBFrustumDistance","_cameraForBoundsOnGlobe","queryTerrainElevation","exaggerated","fitBounds","_fitInternal","flyTo","preloadOnly","_normalizeBearing","_normalizeCenter","_rotating","_pitching","_fireMoveEvents","_emulate","pitching","_padding","_easeId","_prepareEase","_ease","_afterEase","speed","curve","screenSpeed","maxDuration","isEasing","_easeFrameId","_cancelRenderFrame","_onEaseFrame","_onEaseEnd","handlers","_easeStart","_easeOptions","_requestRenderFrame","_renderFrameCallback","essential","iI","getDefaultPosition","compact","_compactButton","_toggleAttribution","_setElementTitle","_innerContainer","_updateAttributions","_updateEditLink","_updateData","_updateCompact","_attribHTML","removeAttribute","firstElementChild","_editLink","querySelector","styleOwner","styleId","rel","owner","customAttribution","innerHTML","rI","display","_updateLogo","_logoRequired","mapbox_logo","nI","_queue","_id","_cleared","_currentlyRunning","run","oI","sI","aI","HTMLElement","element","_anchor","_color","_draggable","draggable","_rotation","_rotationAlignment","rotationAlignment","_pitchAlignment","pitchAlignment","_updateMoving","_occludedOpacity","occludedOpacity","_element","_defaultMarker","viewBox","hasAttribute","_popup","_clearFadeTimer","_addMarker","setDraggable","_onMapClick","_addDragHandler","_onUp","_onMove","_removeMarker","getLngLat","_lngLat","setLngLat","getElement","setPopup","_onKeyPress","_originalTabIndex","_marker","getAttribute","charCode","togglePopup","getPopup","isOpen","_behindTerrain","_showingGlobe","_queryFogOpacity","pointerEvents","_setOpacity","_fadeTimer","_updateDOM","_calculateXYTransform","_calculateZTransform","getPitchAlignment","getRotationAlignment","_updateFrameId","getOffset","setOffset","addClassName","removeClassName","toggleClassName","toggle","_pointerdownPos","_positionDelta","isDraggable","setRotation","setRotationAlignment","setPitchAlignment","setOccludedOpacity","getOccludedOpacity","lI","closeButton","closeOnClick","focusAfterOpen","maxWidth","cI","hI","uI","_startTime","_endTime","_end","dI","pI","cooperativeGestures","performanceMetricsCollection","attributionControl","preserveDrawingBuffer","trackResize","refreshExpiredTiles","testMode","fI","showCompass","showZoom","visualizePitch","mI","mouseRotate","mousePitch","down","move","offTemp","targetTouches","_I","positionOptions","enableHighAccuracy","maximumAge","fitBoundsOptions","trackUserLocation","showAccuracyCircle","showUserLocation","showUserHeading","gI","yI","kilometer","meter","mile","foot","setRTLTextPlugin","getRTLTextPluginStatus","safari","_interactive","_failIfMajorPerformanceCaveat","_preserveDrawingBuffer","_trackResize","_isInitialLoad","_crossSourceCollisions","_parseLanguage","language","worldview","_domRenderTaskQueue","_controls","_popups","_mapId","_locale","_performanceMetricsCollection","_containerWidth","_containerHeight","_averageElevationLastSampledAt","_averageElevationExaggeration","_interactionRange","_visibilityHidden","_contextCreateOptions","contextCreateOptions","container","childNodes","_setupContainer","_setupPainter","_fullscreenchangeEvent","_onWindowOnline","_onWindowResize","_onVisibilityChange","_localFontFamily","_localIdeographFontFamily","_hash","addControl","_logoControl","logoPosition","_getMapId","_controlPositions","insertBefore","firstChild","removeControl","hasControl","_canvasContainer","_canvas","_updateContainerDimensions","_resizeCanvas","setMinZoom","getMinZoom","setMaxZoom","getMaxZoom","setMinPitch","getMinPitch","setMaxPitch","getMaxPitch","getRenderWorldCopies","setRenderWorldCopies","_forceMarkerAndPopupUpdate","getLanguage","setLanguage","_setLanguage","getWorldview","setWorldview","_lazyInitEmptyStyle","_updateProjectionTransition","_updateProjection","_createDelegatedListener","listener","delegates","_isValidId","_delegatedListeners","diff","_diffStyle","_updateStyle","_updateTerrain","_updateDiff","getStyle","isStyleLoaded","areTilesLoaded","loadImage","getComputedStyle","parentElement","_detectMissingCSS","_missingCSSCanary","getPropertyValue","_contextLost","_contextRestored","_controlContainer","_onMapScroll","_addPopup","_removePopup","_frame","scrollTop","scrollLeft","_styleDirty","_sourcesDirty","_render","_removed","_updateAverageElevation","_placementDirty","showTerrainWireframe","showLayers2DWireframe","showLayers3DWireframe","deleteQuery","gpuTime","detail","layerTimes","_repaint","_triggerFrame","_calculateSpeedIndex","speedIndex","_fullyLoaded","_authenticate","_trackPointer","readPixels","_canvasPixelComparison","loseContext","_renderNextFrame","visibilityState","_showTileBoundaries","_showTerrainWireframe","_showLayers2DWireframe","_showLayers3DWireframe","_speedIndexTiming","_showPadding","repaint","_vertices","_showTileAABBs","_setCacheLimits","NavigationControl","_zoomInButton","_createButton","_zoomOutButton","_compass","_compassIcon","_updateZoomButtons","_rotateCompassArrow","_setButtonTitle","GeolocateControl","geolocation","_updateMarkerRotationThrottled","_updateMarkerRotation","_numberOfWatches","_checkGeolocationSupport","_setupUI","_geolocationWatchID","clearWatch","_userLocationDotMarker","_accuracyCircleMarker","_onZoom","_noTimeout","_supportsGeolocation","permissions","_isOutOfMapMaxBounds","longitude","latitude","_setErrorState","_watchState","_geolocateButton","_onSuccess","_updateMarker","_finish","_lastKnownPosition","_updateCamera","accuracy","geolocateSource","_accuracy","_updateCircleRadius","_circleElement","_heading","_onError","_clearWatch","_timeoutId","_dotElement","_setup","_onDeviceOrientation","webkitCompassHeading","absolute","watchPosition","_addDeviceOrientationListener","getCurrentPosition","DeviceMotionEvent","requestPermission","DeviceOrientationEvent","AttributionControl","ScaleControl","_isNumberFormatSupported","unitDisplay","_setScale","setUnit","FullscreenControl","_fullscreen","_fullscreenchange","_checkFullscreenSupport","_changeIcon","fullscreenEnabled","webkitFullscreenEnabled","_fullscreenButton","_updateTitle","_onClickFullscreen","_getTitle","_isFullscreen","exitFullscreen","webkitCancelFullScreen","requestFullscreen","webkitRequestFullscreen","Popup","_classList","_onClose","closeOnMove","_focusFirstElement","_onMouseEvent","_content","trackPointer","setText","setDOMContent","createTextNode","setHTML","createDocumentFragment","getMaxWidth","setMaxWidth","hasChildNodes","removeChild","_closeButton","_updateClassList","_getAnchor","offsetHeight","_tip","focus","Marker","LngLat","LngLatBounds","Point","MercatorCoordinate","FreeCameraOptions","Evented","prewarm","clearPrewarmedResources","baseApiUrl","maxParallelImageRequests","clearStorage","layerIndex","loading","isSpriteLoaded","reloadTile","removeTile","keyCache","_layerConfigs","offscreenCanvas","offscreenCanvasContext","rawGeometry","tags","keycache","valuecache","fromVectorTileJs","fromGeojsonVt","GeoJSONWrapper","fround","trees","clusterProps","_createTree","timeEnd","_cluster","getClusters","_limitZoom","getChildren","_getOriginId","_getOriginZoom","getLeaves","_appendLeaves","_addTileFeatures","cluster_id","point_count","point_count_abbreviated","minX","minY","maxX","maxY","transformed","numPoints","numSimplified","numFeatures","tileCoords","indexMaxZoom","indexMaxPoints","stats","total","splitTile","_geoJSONIndex","_feature","loadGeoJSON","loadData","defaultProjection","workerSourceTypes","workerSources","demWorkerSources","registerWorkerSource","registerRTLTextPlugin","clearCaches","checkIfReady","setReferrer","spriteLoaded","setImages","setBrightness","setLayers","getLayerIndex","loadDEMTile","getDEMWorkerSource","loadWorkerSource","importScripts","syncRTLPluginState","setDracoUrl","getAvailableImages","enforceCacheSizeLimit","getWorkerPerformanceMetrics","mapboxgl$1","controlContainer","controlButton","title","onClick","parseSVG","DOMParser","parseFromString","compass","CompassControl","onControlButtonClick","onRotate","instant","parentNode","inspect","html","withProperties","InspectControl","deactivate","activate","mapClickListener","updatePosition","cursor","hideDetails","getPointFeatures","queryBox","showDetails","detailsNode","isLast","popup","canvasRect","defaults","label","styleName","styleUrl","StylesControl","styles","findStyleByName","expanded","onChange","styleNames","currentStyleIndex","select","option","plus","minus","ZoomControl","buttonIn","buttonOut","supportedLanguages","getLanguageKey","excludedLayerIds","LanguageControl","styleChangeListener","lang","browserLanguage","languageKey","textField","textFieldLocalized","localizeTextField","languages","parts","languageCode","field","auto","basePlacements","clippingParents","popper","reference","variationPlacements","beforeRead","afterRead","beforeMain","main","afterMain","beforeWrite","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","ownerDocument","defaultView","isElement","Element","isHTMLElement","isShadowRoot","ShadowRoot","applyStyles$1","_ref","elements","effect","_ref2","initialStyles","strategy","margin","arrow","attribute","requires","getBasePlacement","getUAString","uaData","userAgentData","brands","item","brand","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","visualViewport","addVisualOffsets","offsetLeft","offsetTop","getLayoutRect","child","rootNode","getRootNode","isSameNode","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","currentNode","css","contain","willChange","getContainingBlock","getMainAxisFromPlacement","mathMax","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","arrow$1","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","centerToReference","axisProp","_options$element","requiresIfExists","getVariation","unsetSides","mapToStyles","_Object$assign2","popperRect","variation","offsets","gpuAcceleration","adaptive","roundOffsets","isFixed","_offsets$x","_offsets$y","_ref3","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","dpr","roundOffsetsByDPR","computeStyles$1","_ref5","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","eventListeners","_options$scroll","scroll","_options$resize","scrollParents","scrollParent","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","list","_element$ownerDocumen","isBody","updatedList","rectToClientRect","getClientRectFromMixedType","clippingParent","layoutViewport","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","computeOffsets","commonX","commonY","mainAxis","detectOverflow","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","flip$1","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","check","_loop","fittingPlacement","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","hide$1","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","offset$1","_options$offset","invertDistance","skidding","distanceAndSkiddingToXY","_data$state$placement","popperOffsets$1","preventOverflow$1","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_len","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","withinMaxClamp","getCompositeRect","elementOrVirtualElement","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","modifiers","visited","modifier","dep","depModifier","DEFAULT_OPTIONS","areValidElements","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","pending","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","merged","orderModifiers","existing","_ref$options","cleanupFn","noopFn","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","onFirstUpdate","createPopper","computeStyles","applyStyles","flip","hide","elementMap","Data","instanceMap","TRANSITION_END","parseSelector","selector","CSS","escape","triggerTransitionEnd","dispatchEvent","Event","jquery","nodeType","isVisible","getClientRects","elementIsVisible","closedDetails","closest","summary","isDisabled","Node","ELEMENT_NODE","findShadowRoot","attachShadow","root","noop","reflow","getjQuery","jQuery","DOMContentLoadedCallbacks","isRTL","defineJQueryPlugin","plugin","NAME","JQUERY_NO_CONFLICT","jQueryInterface","Constructor","noConflict","execute","possibleCallback","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","floatTransitionDelay","getTransitionDurationFromElement","called","getNextActiveElement","activeElement","shouldGetNext","isCycleAllowed","listLength","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","nativeEvents","makeEventUid","getElementEvents","findHandler","events","callable","delegationSelector","normalizeParameters","originalTypeEvent","delegationFunction","isDelegated","typeEvent","getTypeEvent","addHandler","oneOff","wrapFunction","relatedTarget","delegateTarget","previousFunction","domElements","querySelectorAll","domElement","hydrateObj","EventHandler","bootstrapDelegationHandler","bootstrapHandler","removeHandler","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","one","inNamespace","isNamespace","elementEvent","keyHandlers","jQueryEvent","bubbles","nativeDispatch","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","evt","obj","meta","_unused","normalizeData","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","getDataAttributes","bsKeys","dataset","pureKey","getDataAttribute","Config","Default","DefaultType","_getConfig","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","jsonConfig","configTypes","expectedTypes","valueType","TypeError","BaseComponent","DATA_KEY","dispose","EVENT_KEY","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","VERSION","eventName","getSelector","hrefAttribute","SelectorEngine","findOne","parents","ancestor","previous","previousElementSibling","nextElementSibling","focusableChildren","focusables","getSelectorFromElement","getElementFromSelector","getMultipleElementsFromSelector","enableDismissTrigger","component","clickEvent","tagName","EVENT_KEY$b","EVENT_CLOSE","EVENT_CLOSED","Alert","close","_destroyElement","each","SELECTOR_DATA_TOGGLE$5","Button","EVENT_KEY$9","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","Default$c","endCallback","leftCallback","rightCallback","DefaultType$c","Swipe","isSupported","_deltaX","_supportPointerEvents","PointerEvent","_initEvents","_eventIsPointerPenTouch","_handleSwipe","absDeltaX","pointerType","maxTouchPoints","EVENT_KEY$8","DATA_API_KEY$5","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN$1","EVENT_MOUSEENTER$1","EVENT_MOUSELEAVE$1","EVENT_DRAG_START","EVENT_LOAD_DATA_API$3","EVENT_CLICK_DATA_API$5","CLASS_NAME_CAROUSEL","CLASS_NAME_ACTIVE$2","SELECTOR_ACTIVE","SELECTOR_ITEM","SELECTOR_ACTIVE_ITEM","KEY_TO_DIRECTION","ArrowLeft","ArrowRight","Default$b","interval","ride","touch","DefaultType$b","Carousel","_interval","_activeElement","_isSliding","touchTimeout","_swipeHelper","_indicatorsElement","_addEventListeners","cycle","_slide","nextWhenVisible","_clearInterval","_updateInterval","setInterval","_maybeEnableCycle","items","_getItems","activeIndex","_getItemIndex","_getActive","defaultInterval","_keydown","_addTouchEventListeners","img","swipeConfig","_directionToOrder","_setActiveIndicatorElement","activeIndicator","newActiveIndicator","elementInterval","isNext","nextElement","nextElementIndex","triggerEvent","_orderToDirection","isCycling","directionalClassName","orderClassName","_isAnimated","clearInterval","carousel","slideIndex","carousels","EVENT_KEY$7","EVENT_SHOW$6","EVENT_SHOWN$6","EVENT_HIDE$6","EVENT_HIDDEN$6","EVENT_CLICK_DATA_API$4","CLASS_NAME_SHOW$7","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_DEEPER_CHILDREN","SELECTOR_DATA_TOGGLE$4","Default$a","DefaultType$a","Collapse","_isTransitioning","_triggerArray","toggleList","elem","filterElement","foundElement","_initializeChildren","_addAriaAndCollapsedClass","_isShown","show","activeChildren","_getFirstLevelChildren","activeInstance","dimension","_getDimension","scrollSize","selected","triggerArray","NAME$a","EVENT_KEY$6","DATA_API_KEY$3","ARROW_UP_KEY$1","ARROW_DOWN_KEY$1","EVENT_HIDE$5","EVENT_HIDDEN$5","EVENT_SHOW$5","EVENT_SHOWN$5","EVENT_CLICK_DATA_API$3","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_SHOW$6","SELECTOR_DATA_TOGGLE$3","SELECTOR_DATA_TOGGLE_SHOWN","SELECTOR_MENU","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","Default$9","autoClose","popperConfig","DefaultType$9","Dropdown","_popper","_parent","_menu","_inNavbar","_detectNavbar","_createPopper","_completeHide","Popper","referenceElement","_getPopperConfig","Popper.createPopper","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","clearMenus","openToggles","composedPath","isMenuTarget","dataApiKeydownHandler","isInput","isEscapeEvent","isUpOrDownEvent","getToggleButton","NAME$9","CLASS_NAME_SHOW$5","EVENT_MOUSEDOWN","Default$8","clickCallback","rootElement","DefaultType$8","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","append","EVENT_KEY$5","EVENT_FOCUSIN$2","EVENT_KEYDOWN_TAB","TAB_NAV_BACKWARD","Default$7","autofocus","trapElement","DefaultType$7","FocusTrap","_isActive","_lastTabNavDirection","_handleFocusin","_handleKeydown","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","PROPERTY_PADDING","PROPERTY_MARGIN","ScrollBarHelper","getWidth","documentWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_resetElementAttributes","isOverflowing","_saveInitialAttribute","styleProperty","scrollbarWidth","_applyManipulationCallback","setProperty","actualValue","removeProperty","callBack","sel","EVENT_KEY$4","EVENT_HIDE$4","EVENT_HIDE_PREVENTED$1","EVENT_HIDDEN$4","EVENT_SHOW$4","EVENT_SHOWN$4","EVENT_RESIZE$1","EVENT_CLICK_DISMISS","EVENT_MOUSEDOWN_DISMISS","EVENT_KEYDOWN_DISMISS$1","EVENT_CLICK_DATA_API$2","CLASS_NAME_OPEN","CLASS_NAME_SHOW$4","CLASS_NAME_STATIC","Default$6","DefaultType$6","Modal","_dialog","_backdrop","_initializeBackDrop","_focustrap","_initializeFocusTrap","_scrollBar","_adjustDialog","_showElement","_hideModal","handleUpdate","modalBody","_triggerBackdropTransition","event2","_resetAdjustments","isModalOverflowing","initialOverflowY","isBodyOverflowing","paddingLeft","paddingRight","showEvent","alreadyOpen","EVENT_KEY$3","DATA_API_KEY$1","EVENT_LOAD_DATA_API$2","CLASS_NAME_SHOW$3","CLASS_NAME_SHOWING$1","CLASS_NAME_HIDING","OPEN_SELECTOR","EVENT_SHOW$3","EVENT_SHOWN$3","EVENT_HIDE$3","EVENT_HIDE_PREVENTED","EVENT_HIDDEN$3","EVENT_RESIZE","EVENT_CLICK_DATA_API$1","EVENT_KEYDOWN_DISMISS","Default$5","DefaultType$5","Offcanvas","DefaultAllowlist","col","h1","h2","h3","h4","h5","h6","pre","small","sup","strong","uriAttributes","SAFE_URL_PATTERN","allowedAttribute","allowedAttributeList","attributeName","nodeValue","attributeRegex","regex","Default$4","allowList","extraClass","sanitize","sanitizeFn","template","DefaultType$4","DefaultContentType","entry","TemplateFactory","getContent","_resolvePossibleFunction","hasContent","changeContent","_checkContent","toHtml","templateWrapper","_maybeSanitize","_setContent","arg","templateElement","_putElementInTemplate","unsafeHtml","sanitizeFunction","createdDocument","elementName","attributeList","allowedAttributes","sanitizeHtml","DISALLOWED_ATTRIBUTES","CLASS_NAME_FADE$2","CLASS_NAME_SHOW$2","SELECTOR_MODAL","EVENT_MODAL_HIDE","TRIGGER_HOVER","TRIGGER_FOCUS","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","Default$3","animation","customClass","DefaultType$3","Tooltip","_isEnabled","_isHovered","_activeTrigger","_templateFactory","_newContent","tip","_setListeners","_fixTitle","toggleEnabled","_leave","_enter","_hideModalHandler","_disposePopper","_isWithContent","isInTheDom","_getTipElement","_isWithActiveTrigger","_createTipElement","_getContentForTemplate","_getTemplateFactory","tipId","prefix","getUID","setContent","_initializeOnDelegatedTarget","_getDelegateConfig","triggers","eventIn","eventOut","_setTimeout","dataAttributes","dataAttribute","Default$2","DefaultType$2","Popover","_getContent","EVENT_KEY$2","EVENT_ACTIVATE","EVENT_CLICK","EVENT_LOAD_DATA_API$1","CLASS_NAME_ACTIVE$1","SELECTOR_TARGET_LINKS","SELECTOR_NAV_LINKS","SELECTOR_LINK_ITEMS","Default$1","rootMargin","smoothScroll","threshold","DefaultType$1","ScrollSpy","_targetLinks","_observableSections","_rootElement","_activeTarget","_observer","_previousScrollData","visibleEntryTop","parentScrollTop","refresh","_initializeTargetsAndObservables","_maybeEnableSmoothScroll","disconnect","_getNewObserver","section","observe","observableSection","scrollTo","behavior","IntersectionObserver","_observerCallback","targetElement","_process","userScrollsDown","isIntersecting","_clearActiveClass","entryIsLowerThanPrevious","targetLinks","decodeURI","_activateParents","listGroup","activeNodes","spy","EVENT_KEY$1","EVENT_HIDE$1","EVENT_HIDDEN$1","EVENT_SHOW$1","EVENT_SHOWN$1","EVENT_CLICK_DATA_API","EVENT_KEYDOWN","EVENT_LOAD_DATA_API","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","HOME_KEY","END_KEY","CLASS_NAME_ACTIVE","CLASS_NAME_FADE$1","CLASS_NAME_SHOW$1","SELECTOR_DROPDOWN_TOGGLE","NOT_SELECTOR_DROPDOWN_TOGGLE","SELECTOR_DATA_TOGGLE","SELECTOR_INNER_ELEM","SELECTOR_DATA_TOGGLE_ACTIVE","Tab","_setInitialAttributes","_getChildren","innerElem","_elemIsActive","_getActiveElem","hideEvent","_deactivate","_activate","relatedElem","_toggleDropDown","nextActiveElement","preventScroll","_setAttributeIfNotExists","_setInitialAttributesOnChild","_getInnerElement","outerElem","_getOuterElement","_setInitialAttributesOnTargetPanel","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSIN","EVENT_FOCUSOUT","EVENT_HIDE","EVENT_HIDDEN","EVENT_SHOW","EVENT_SHOWN","CLASS_NAME_HIDE","CLASS_NAME_SHOW","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","isShown","_onInteraction","isInteracting","getDefaultOpts","simple","omitExtraWLInCodeBlocks","describe","noHeaderId","prefixHeaderId","rawPrefixHeaderId","ghCompatibleHeaderId","rawHeaderId","headerLevelStart","parseImgDimensions","simplifiedAutoLink","excludeTrailingPunctuationFromURLs","literalMidWordUnderscores","literalMidWordAsterisks","strikethrough","tables","tablesHeaderId","ghCodeBlocks","tasklists","smoothLivePreview","smartIndentationFix","disableForced4SpacesIndentedSublists","simpleLineBreaks","requireSpaceBeforeHeadingText","ghMentions","ghMentionsLink","encodeEmails","openLinksInNewWindow","backslashEscapesHTMLTags","emoji","underline","ellipsis","completeHTMLDocument","splitAdjacentBlockquotes","ret","opt","showdown","parsers","globalOptions","setFlavor","flavor","github","original","ghost","vanilla","allOn","allOptionsOn","extension","errMsg","valid","helper","baseMsg","ext","isString","isUndefined","listeners","escapeCharactersCallback","wholeMatch","m1","setOption","getOption","getOptions","resetOptions","preset","getFlavor","getFlavorOptions","getDefaultOptions","subParser","stdExtName","validExtension","getAllExtensions","removeExtension","resetExtensions","validateExtension","isFunction","prop","escapeCharacters","charsToEscape","afterBackslash","regexString","unescapeHTMLEntities","txt","rgxFindMatchPos","lastIndex","matchRecursiveRegExp","matchPos","results","replaceRecursiveRegExp","replacement","repStr","finalStr","bits","regexIndexOf","search","splitAtIndex","encodeEmailAddress","mail","padEnd","targetLength","padString","repeat","msg","alert","regexes","asteriskDashAndColon","emojis","abc","abcd","aerial_tramway","airplane","alarm_clock","alembic","alien","ambulance","amphora","angel","anger","angry","anguished","ant","apple","aquarius","aries","arrow_backward","arrow_double_down","arrow_double_up","arrow_down","arrow_down_small","arrow_forward","arrow_heading_down","arrow_heading_up","arrow_left","arrow_lower_left","arrow_lower_right","arrow_right","arrow_right_hook","arrow_up","arrow_up_down","arrow_up_small","arrow_upper_left","arrow_upper_right","arrows_clockwise","arrows_counterclockwise","art","articulated_lorry","artificial_satellite","astonished","athletic_shoe","atm","atom_symbol","avocado","baby","baby_bottle","baby_chick","baby_symbol","back","bacon","badminton","baggage_claim","baguette_bread","balance_scale","balloon","ballot_box","ballot_box_with_check","bamboo","banana","bangbang","bank","bar_chart","barber","baseball","basketball","basketball_man","basketball_woman","bat","bath","bathtub","battery","beach_umbrella","bear","bed","bee","beer","beers","beetle","beginner","bell","bellhop_bell","bento","biking_man","bike","biking_woman","bikini","biohazard","bird","birthday","black_circle","black_flag","black_heart","black_joker","black_large_square","black_medium_small_square","black_medium_square","black_nib","black_small_square","black_square_button","blonde_man","blonde_woman","blossom","blowfish","blue_book","blue_car","blue_heart","blush","boar","boat","bomb","book","bookmark","bookmark_tabs","books","boom","boot","bouquet","bowing_man","bow_and_arrow","bowing_woman","bowling","boxing_glove","boy","bread","bride_with_veil","bridge_at_night","briefcase","broken_heart","bug","building_construction","bulb","bullettrain_front","bullettrain_side","burrito","bus","business_suit_levitating","busstop","bust_in_silhouette","busts_in_silhouette","butterfly","cactus","cake","calendar","call_me_hand","calling","camel","camera_flash","camping","cancer","candle","candy","canoe","capital_abcd","capricorn","car","card_file_box","card_index","card_index_dividers","carousel_horse","carrot","cat","cat2","chains","champagne","chart","chart_with_downwards_trend","chart_with_upwards_trend","checkered_flag","cheese","cherries","cherry_blossom","chestnut","chicken","children_crossing","chipmunk","chocolate_bar","christmas_tree","church","cinema","circus_tent","city_sunrise","city_sunset","cityscape","clamp","clap","clapper","classical_building","clinking_glasses","clipboard","clock1","clock10","clock1030","clock11","clock1130","clock12","clock1230","clock130","clock2","clock230","clock3","clock330","clock4","clock430","clock5","clock530","clock6","clock630","clock7","clock730","clock8","clock830","clock9","clock930","closed_book","closed_lock_with_key","closed_umbrella","cloud","cloud_with_lightning","cloud_with_lightning_and_rain","cloud_with_rain","cloud_with_snow","clown_face","clubs","cocktail","coffee","coffin","cold_sweat","comet","computer","computer_mouse","confetti_ball","confounded","confused","congratulations","construction","construction_worker_man","construction_worker_woman","control_knobs","convenience_store","cookie","cool","policeman","copyright","corn","couch_and_lamp","couple","couple_with_heart_woman_man","couple_with_heart_man_man","couple_with_heart_woman_woman","couplekiss_man_man","couplekiss_man_woman","couplekiss_woman_woman","cow","cow2","cowboy_hat_face","crab","crayon","credit_card","crescent_moon","cricket","crocodile","croissant","crossed_fingers","crossed_flags","crossed_swords","crown","cry","crying_cat_face","crystal_ball","cucumber","cupid","curly_loop","currency_exchange","curry","custard","customs","cyclone","dagger","dancer","dancing_women","dancing_men","dango","dark_sunglasses","dart","dash","date","deciduous_tree","deer","department_store","derelict_house","desert","desert_island","desktop_computer","male_detective","diamond_shape_with_a_dot_inside","diamonds","disappointed","disappointed_relieved","dizzy","dizzy_face","do_not_litter","dog","dog2","dollar","dolls","dolphin","door","doughnut","dove","dragon","dragon_face","dress","dromedary_camel","drooling_face","droplet","drum","duck","dvd","eagle","ear","ear_of_rice","earth_africa","earth_americas","earth_asia","egg","eggplant","eight_pointed_black_star","eight_spoked_asterisk","electric_plug","elephant","email","envelope_with_arrow","euro","european_castle","european_post_office","evergreen_tree","exclamation","expressionless","eye","eye_speech_bubble","eyeglasses","eyes","face_with_head_bandage","face_with_thermometer","fist_oncoming","fallen_leaf","family_man_woman_boy","family_man_boy","family_man_boy_boy","family_man_girl","family_man_girl_boy","family_man_girl_girl","family_man_man_boy","family_man_man_boy_boy","family_man_man_girl","family_man_man_girl_boy","family_man_man_girl_girl","family_man_woman_boy_boy","family_man_woman_girl","family_man_woman_girl_boy","family_man_woman_girl_girl","family_woman_boy","family_woman_boy_boy","family_woman_girl","family_woman_girl_boy","family_woman_girl_girl","family_woman_woman_boy","family_woman_woman_boy_boy","family_woman_woman_girl","family_woman_woman_girl_boy","family_woman_woman_girl_girl","fast_forward","fax","fearful","female_detective","ferris_wheel","ferry","field_hockey","file_cabinet","file_folder","film_projector","film_strip","fire_engine","fireworks","first_quarter_moon","first_quarter_moon_with_face","fish","fish_cake","fishing_pole_and_fish","fist_raised","fist_left","fist_right","flashlight","fleur_de_lis","flight_arrival","flight_departure","floppy_disk","flower_playing_cards","flushed","foggy","football","footprints","fork_and_knife","fountain","fountain_pen","four_leaf_clover","fox_face","framed_picture","free","fried_egg","fried_shrimp","fries","frog","frowning","frowning_face","frowning_man","frowning_woman","middle_finger","fuelpump","full_moon","full_moon_with_face","funeral_urn","game_die","gear","gem","gemini","gift","gift_heart","girl","globe_with_meridians","goal_net","goat","golf","golfing_man","golfing_woman","gorilla","grapes","green_apple","green_book","green_heart","green_salad","grey_exclamation","grey_question","grimacing","grin","grinning","guardsman","guardswoman","guitar","gun","haircut_woman","haircut_man","hamburger","hammer","hammer_and_pick","hammer_and_wrench","hamster","hand","handbag","handshake","hankey","hatched_chick","hatching_chick","headphones","hear_no_evil","heart","heart_decoration","heart_eyes","heart_eyes_cat","heartbeat","heartpulse","hearts","heavy_check_mark","heavy_division_sign","heavy_dollar_sign","heavy_heart_exclamation","heavy_minus_sign","heavy_multiplication_x","heavy_plus_sign","helicopter","herb","hibiscus","high_brightness","high_heel","hocho","hole","honey_pot","horse","horse_racing","hospital","hot_pepper","hotdog","hotel","hotsprings","hourglass","hourglass_flowing_sand","house","house_with_garden","houses","hugs","hushed","ice_cream","ice_hockey","ice_skate","icecream","ideograph_advantage","imp","inbox_tray","incoming_envelope","tipping_hand_woman","information_source","innocent","interrobang","iphone","izakaya_lantern","jack_o_lantern","japan","japanese_castle","japanese_goblin","japanese_ogre","jeans","joy","joy_cat","joystick","kaaba","keycap_ten","kick_scooter","kimono","kiss","kissing","kissing_cat","kissing_closed_eyes","kissing_heart","kissing_smiling_eyes","kiwi_fruit","koala","koko","large_blue_circle","large_blue_diamond","large_orange_diamond","last_quarter_moon","last_quarter_moon_with_face","latin_cross","laughing","ledger","left_luggage","left_right_arrow","leftwards_arrow_with_hook","lemon","leo","leopard","level_slider","libra","light_rail","link","lion","lips","lipstick","lizard","lock","lock_with_ink_pen","lollipop","loud_sound","loudspeaker","love_hotel","love_letter","low_brightness","lying_face","mag_right","mahjong","mailbox","mailbox_closed","mailbox_with_mail","mailbox_with_no_mail","man","man_artist","man_astronaut","man_cartwheeling","man_cook","man_dancing","man_facepalming","man_factory_worker","man_farmer","man_firefighter","man_health_worker","man_in_tuxedo","man_judge","man_juggling","man_mechanic","man_office_worker","man_pilot","man_playing_handball","man_playing_water_polo","man_scientist","man_shrugging","man_singer","man_student","man_teacher","man_technologist","man_with_gua_pi_mao","man_with_turban","tangerine","mans_shoe","mantelpiece_clock","maple_leaf","martial_arts_uniform","massage_woman","massage_man","meat_on_bone","medal_military","medal_sports","mega","melon","memo","men_wrestling","menorah","mens","metal","metro","microphone","microscope","milk_glass","milky_way","minibus","minidisc","mobile_phone_off","money_mouth_face","money_with_wings","moneybag","monkey","monkey_face","monorail","moon","mortar_board","mosque","motor_boat","motor_scooter","motorcycle","motorway","mount_fuji","mountain","mountain_biking_man","mountain_biking_woman","mountain_cableway","mountain_railway","mountain_snow","mouse","mouse2","movie_camera","moyai","mrs_claus","muscle","mushroom","musical_keyboard","musical_note","musical_score","mute","nail_care","name_badge","national_park","nauseated_face","necktie","negative_squared_cross_mark","nerd_face","neutral_face","new","new_moon","new_moon_with_face","newspaper","newspaper_roll","next_track_button","no_good_man","no_good_woman","night_with_stars","no_bell","no_bicycles","no_entry","no_entry_sign","no_mobile_phones","no_mouth","no_pedestrians","no_smoking","nose","notebook","notebook_with_decorative_cover","notes","nut_and_bolt","o2","ocean","octopus","oden","office","oil_drum","ok_hand","ok_man","ok_woman","old_key","older_man","older_woman","oncoming_automobile","oncoming_bus","oncoming_police_car","oncoming_taxi","open_file_folder","open_hands","open_mouth","open_umbrella","ophiuchus","orange_book","orthodox_cross","outbox_tray","owl","package","page_facing_up","page_with_curl","pager","paintbrush","palm_tree","pancakes","panda_face","paperclip","paperclips","parasol_on_ground","parking","part_alternation_mark","partly_sunny","passenger_ship","passport_control","pause_button","peace_symbol","peach","peanuts","pear","pen","pencil2","penguin","pensive","performing_arts","persevere","person_fencing","pouting_woman","phone","pig","pig2","pig_nose","pill","pineapple","ping_pong","pisces","pizza","place_of_worship","plate_with_cutlery","play_or_pause_button","point_down","point_left","point_right","point_up","point_up_2","police_car","policewoman","poodle","popcorn","post_office","postal_horn","postbox","potable_water","potato","pouch","poultry_leg","pound","rage","pouting_cat","pouting_man","pray","prayer_beads","pregnant_woman","previous_track_button","prince","princess","printer","purple_heart","purse","pushpin","put_litter_in_its_place","question","rabbit","rabbit2","racehorse","racing_car","radio","radio_button","radioactive","railway_car","railway_track","rainbow","rainbow_flag","raised_back_of_hand","raised_hand_with_fingers_splayed","raised_hands","raising_hand_woman","raising_hand_man","ram","ramen","rat","record_button","recycle","red_circle","registered","relaxed","relieved","reminder_ribbon","repeat_one","rescue_worker_helmet","restroom","revolving_hearts","rewind","rhinoceros","ribbon","rice","rice_ball","rice_cracker","rice_scene","right_anger_bubble","ring","robot","rocket","rofl","roll_eyes","roller_coaster","rooster","rose","rosette","rotating_light","round_pushpin","rowing_man","rowing_woman","rugby_football","running_man","running_shirt_with_sash","running_woman","sagittarius","sake","sandal","santa","satellite","saxophone","school","school_satchel","scissors","scorpion","scorpius","scream","scream_cat","seat","secret","see_no_evil","seedling","selfie","shallow_pan_of_food","shamrock","shark","shaved_ice","sheep","shell","shield","shinto_shrine","ship","shirt","shopping","shopping_cart","shower","shrimp","signal_strength","six_pointed_star","ski","skier","skull","skull_and_crossbones","sleeping","sleeping_bed","sleepy","slightly_frowning_face","slightly_smiling_face","slot_machine","small_airplane","small_blue_diamond","small_orange_diamond","small_red_triangle","small_red_triangle_down","smile","smile_cat","smiley","smiley_cat","smiling_imp","smirk","smirk_cat","smoking","snail","snake","sneezing_face","snowboarder","snowflake","snowman","snowman_with_snow","sob","soccer","soon","sos","sound","space_invader","spades","spaghetti","sparkle","sparkler","sparkles","sparkling_heart","speak_no_evil","speaker","speaking_head","speech_balloon","speedboat","spider","spider_web","spiral_calendar","spiral_notepad","spoon","squid","stadium","star","star2","star_and_crescent","star_of_david","station","statue_of_liberty","steam_locomotive","stew","stop_button","stop_sign","stopwatch","straight_ruler","strawberry","stuck_out_tongue","stuck_out_tongue_closed_eyes","stuck_out_tongue_winking_eye","studio_microphone","stuffed_flatbread","sun_behind_large_cloud","sun_behind_rain_cloud","sun_behind_small_cloud","sun_with_face","sunflower","sunglasses","sunny","sunrise","sunrise_over_mountains","surfing_man","surfing_woman","sushi","suspension_railway","sweat","sweat_drops","sweat_smile","sweet_potato","swimming_man","swimming_woman","symbols","synagogue","syringe","taco","tada","tanabata_tree","taurus","taxi","tea","telephone_receiver","telescope","tennis","tent","thermometer","thinking","thought_balloon","ticket","tickets","tiger","tiger2","timer_clock","tipping_hand_man","tired_face","toilet","tokyo_tower","tongue","tophat","tornado","trackball","tractor","traffic_light","train","train2","tram","triangular_flag_on_post","triangular_ruler","trident","triumph","trolleybus","trophy","tropical_drink","tropical_fish","truck","trumpet","tulip","tumbler_glass","turkey","turtle","twisted_rightwards_arrows","two_hearts","two_men_holding_hands","two_women_holding_hands","u5272","u5408","u55b6","u6307","u6708","u6709","u6e80","u7121","u7533","u7981","u7a7a","umbrella","unamused","underage","unicorn","unlock","upside_down_face","vertical_traffic_light","vhs","vibration_mode","video_camera","video_game","violin","virgo","volcano","volleyball","vulcan_salute","walking_man","walking_woman","waning_crescent_moon","waning_gibbous_moon","warning","wastebasket","watch","water_buffalo","watermelon","wave","wavy_dash","waxing_crescent_moon","weary","wedding","weight_lifting_man","weight_lifting_woman","whale","whale2","wheel_of_dharma","wheelchair","white_check_mark","white_circle","white_flag","white_flower","white_large_square","white_medium_small_square","white_medium_square","white_small_square","white_square_button","wilted_flower","wind_chime","wind_face","wine_glass","wink","wolf","woman","woman_artist","woman_astronaut","woman_cartwheeling","woman_cook","woman_facepalming","woman_factory_worker","woman_farmer","woman_firefighter","woman_health_worker","woman_judge","woman_juggling","woman_mechanic","woman_office_worker","woman_pilot","woman_playing_handball","woman_playing_water_polo","woman_scientist","woman_shrugging","woman_singer","woman_student","woman_teacher","woman_technologist","woman_with_turban","womans_clothes","womans_hat","women_wrestling","womens","world_map","worried","wrench","writing_hand","yellow_heart","yen","yin_yang","yum","zap","zipper_mouth_face","zzz","octocat","Converter","converterOptions","langExtensions","outputModifiers","setConvFlavor","parsed","raw","_parseExtension","legacyExtensionLoading","validExt","listen","gOpt","_constructor","_dispatch","evtName","nText","makeHtml","gHtmlBlocks","gHtmlMdBlocks","gHtmlSpans","gUrls","gTitles","gDimensions","gListLevel","hashLinkCounts","converter","rsp","rgx","rTrimInputText","makeMarkdown","makeMd","HTMLParser","doc","preList","pres","presPH","childElementCount","classes","outerHTML","substitutePreCodeTags","clean","mdDoc","addExtension","useExtension","extensionName","output","getMetadata","getMetadataFormat","_setMetadataPair","_setMetadataFormat","_setMetadataRaw","writeAnchorTag","linkText","linkId","m5","m6","mentions","username","lnk","simpleURLRegex","simpleURLRegex2","delimUrlRegex","simpleMailRegex","delimMailRegex","replaceLink","leadingMagicChars","m2","m3","trailingPunctuation","trailingMagicChars","lnkTxt","lmc","tmc","replaceMail","bq","codeblock","nextChar","doctype","doctypeParsed","charset","leadingText","numSpaces","emojiCode","delim","blockText","blockTags","repFunc","inside","opTagPos","rgx1","patLeft","patRight","subTexts","newSubText1","hashHTMLSpan","repText","num","$1","setextRegexH1","setextRegexH2","spanGamut","hID","headerId","hashBlock","matchFound","hLevel","atxStyle","customizedHeaderId","hText","header","writeImageTag","altText","gDims","parseInside","lead","processListItems","listStr","trimTrailing","isParagraphed","m4","taskbtn","checked","bulletStyle","otp","wm2","styleStartNumber","listType","res","parseConsecutiveLists","olRgx","ulRgx","counterRxg","parseCL","parseMetadataContents","wholematch","grafs","grafsOut","grafsOutIt","codeFlag","$2","replaceFunc","blankLines","parseCells","cell","parseTable","rawTable","tableLines","sLine","rawHeaders","rawStyles","rawCells","tableHeaderId","row","tblLgn","buildTable","charCodeToReplace","childrenLength","innerTxt","headerLevel","headerMark","listItems","listItemsLenght","listNum","listItemTxt","childrenLenght","spansOnly","tableArray","headings","rows","headContent","allign","cols","getElementsByTagName","cellContent","cellSpacesCount","strLen","module","locales","population","people","about","founded","userLanguage","async","Proxy","URLSearchParams","searchParams","mIdData","mData","external","geoURL","countryInfoUrl","countryInfoURL","lasticocords","info","loginfo","coarray","countries","idc","onEachFeature","translated_name","description","country","toLocaleDateString"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68]} \ No newline at end of file diff --git a/index.css b/index.css index 61b6f2c..0badb80 100644 --- a/index.css +++ b/index.css @@ -1,5 +1,5 @@ .mapboxgl-popup-tip{display:none;}.mapboxgl-popup-close-button{display:none;}.mapboxgl-popup-content{background:#fff0!important;padding:0!important;box-shadow:none!important;}.about{text-decoration:none;padding:5px;transition:0.25s;margin-top:5px;}.glass,.about,.menu{background:rgba(120,120,120,0.411)!important;box-shadow:0 8px 32px 0 rgba(31,38,135,0.37)!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border-radius:20px!important;border:1px solid rgba(255,255,255,0.18)!important;color:white!important;}.about:hover{transition:0.25s;background:rgba(48,48,48,0.3)!important;}.about-img{border-radius:20px;margin-bottom:5px;}.menu{position:absolute;z-index:1000;top:25px;left:50%;transform:translate(-50%);padding:10px 15px;text-align:center;border-radius:10px;} -.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.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 rgba(0,0,0,.1)}@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:rgb(0 0 0/5%)}.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(0deg)}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:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;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:hsla(0,0%,100%,.5);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:rgb(0 0 0/5%)}.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:rgba(0,0,0,.75);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:hsla(0,0%,100%,.75);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:rgb(0 0 0/5%)}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);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 rgba(0,0,0,.35);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:rgba(0,0,0,.7);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} +.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 rgba(0,0,0,.1)}@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:rgb(0 0 0/5%)}.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(0deg)}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:hsla(0,0%,100%,.5);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:hsla(0,0%,100%,.5);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:rgb(0 0 0/5%)}.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:rgba(0,0,0,.75);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:hsla(0,0%,100%,.75);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:rgb(0 0 0/5%)}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);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 rgba(0,0,0,.35);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:rgba(0,0,0,.7);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} .mapbox-ctrl-compass button {display:flex;align-items:center;justify-content:center;} .mapbox-ctrl-inspect button {display:flex;align-items:center;justify-content:center;color:#333;}.mapbox-ctrl-inspect button.-active {color:#4264fb;}.mapbox-ctrl-inspect-popup {position:absolute;padding:8px;border-radius:4px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,0.2);font-family:sans-serif;white-space:nowrap;transform:translate(-50%,5px);}.mapbox-ctrl-inspect-popup::before {content:'';width:0;height:0;position:absolute;bottom:100%;left:50%;transform:translate(-50%,0);border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #fff;}.mapbox-ctrl-inspect-popup header {display:flex;justify-content:space-between;align-items:center;font-size:12px;}.mapbox-ctrl-inspect-popup nav {margin:0 auto;}.mapbox-ctrl-inspect-popup button {flex:none;padding:4px 12px;border-radius:4px;border:none;background:none;font-family:sans-serif;font-size:16px;color:#4264fb;cursor:pointer;}.mapbox-ctrl-inspect-popup table {width:100%;min-width:200px;max-width:400px;border-collapse:collapse;}.mapbox-ctrl-inspect-popup tr:not(:last-child) td,.mapbox-ctrl-inspect-popup tr:not(:last-child) th {border-bottom:1px solid rgba(0,0,0,0.05);}.mapbox-ctrl-inspect-popup th,.mapbox-ctrl-inspect-popup td {width:50%;padding:5px;white-space:break-spaces;}.mapbox-ctrl-inspect-popup th {text-align:right;font-weight:600;}.mapbox-ctrl-inspect-popup td[colspan="2"] {text-align:center;color:#4264fb;font-weight:600;} .mapbox-ctrl-styles-expanded {display:flex;}.mapbox-ctrl-styles-expanded button {width:auto;padding:0 8px;}.mapboxgl-ctrl-group.mapbox-ctrl-styles-expanded button {border-radius:0;}.mapboxgl-ctrl-group.mapbox-ctrl-styles-expanded button:first-child {border-radius:4px 0 0 4px;}.mapboxgl-ctrl-group.mapbox-ctrl-styles-expanded button:last-child {border-radius:0 4px 4px 0;}.mapbox-ctrl-styles-expanded button+button {border:none;}.mapbox-ctrl-styles-expanded button.-active {background:rgba(0,0,0,0.05);}.mapbox-ctrl-styles-compact button {position:relative;display:flex;align-items:center;justify-content:center;color:#333;}.mapbox-ctrl-styles-compact select {position:absolute;left:0;top:0;right:0;bottom:0;opacity:0;cursor:pointer;} diff --git a/index.html b/index.html index 667ac52..5de5c89 100644 --- a/index.html +++ b/index.html @@ -14,7 +14,7 @@ - +