@idmwx/idmui-gl4 3.4.5 → 3.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-3VYIPD3A-ff5dbb3b.js → chunk-3VYIPD3A-5a35f4a7.js} +1 -1
- package/dist/{chunk-ANSXOGKI-b62f68b6.js → chunk-ANSXOGKI-a848e246.js} +1 -1
- package/dist/{chunk-T4JIPPZO-4fe71780.js → chunk-T4JIPPZO-3753f6da.js} +1 -1
- package/dist/{download-57c82bd0.js → download-5503daf9.js} +3 -3
- package/dist/{index-b20e9d8e.js → index-5e504caa.js} +17 -17
- package/dist/index.js +1 -1
- package/dist/index.umd.cjs +1 -1
- package/dist/{rasterize-JS5G2XHH-bd948ca0.js → rasterize-JS5G2XHH-b9624b6a.js} +3 -3
- package/dist/style.css +1 -1
- package/dist/{toBlob-82322b49.js → toBlob-2fc44b92.js} +3 -3
- package/dist/{toCanvas-16477ad9.js → toCanvas-0f3fd458.js} +2 -2
- package/dist/{toImg-c40c584e.js → toImg-72a6011c.js} +3 -3
- package/package.json +1 -1
package/dist/index.umd.cjs
CHANGED
|
@@ -229,6 +229,6 @@ ${h}
|
|
|
229
229
|
`):d+=u[0]}return d+=c.slice(g),d}let n=ya(o,e||location.href);return n=await l(n,e||location.href,0),n}var ba=/url\((["']?)([^"')]+)\1\)/g,vu=/@font-face[^{}]*\{[^}]*\}/g;function wa(o){if(!o)return[];let e=[],a=o.split(",").map(r=>r.trim()).filter(Boolean);for(let r of a){let i=r.match(/^U\+([0-9A-Fa-f?]+)(?:-([0-9A-Fa-f?]+))?$/);if(!i)continue;let l=i[1],n=i[2],c=s=>{if(!s.includes("?"))return parseInt(s,16);let m=parseInt(s.replace(/\?/g,"0"),16),d=parseInt(s.replace(/\?/g,"F"),16);return[m,d]};if(n){let s=c(l),m=c(n),d=Array.isArray(s)?s[0]:s,g=Array.isArray(m)?m[1]:m;e.push([Math.min(d,g),Math.max(d,g)])}else{let s=c(l);Array.isArray(s)?e.push([s[0],s[1]]):e.push([s,s])}}return e}function xa(o,e){if(!e.length||!o||o.size===0)return!0;for(let a of o)for(let[r,i]of e)if(a>=r&&a<=i)return!0;return!1}function Qo(o,e){let a=[];if(!o)return a;for(let r of o.matchAll(ba)){let i=(r[2]||"").trim();if(!(!i||i.startsWith("data:"))){if(!/^https?:/i.test(i))try{i=new URL(i,e||location.href).href}catch{}a.push(i)}}return a}async function ka(o,e,a=""){var i,l,n,c,s;let r=o;for(let m of o.matchAll(ba)){let d=Ho(m[0]);if(!d)continue;let g=d;if(!g.startsWith("http")&&!g.startsWith("data:"))try{g=new URL(g,e||location.href).href}catch{}if(!Yt(g)){if((i=D.resource)!=null&&i.has(g)){(l=D.font)==null||l.add(g),r=r.replace(m[0],`url(${D.resource.get(g)})`);continue}if(!((n=D.font)!=null&&n.has(g)))try{let u=await Ht(g,{as:"dataURL",useProxy:a,silent:!0});if(u.ok&&typeof u.data=="string"){let y=u.data;(c=D.resource)==null||c.set(g,y),(s=D.font)==null||s.add(g),r=r.replace(m[0],`url(${y})`)}}catch{console.warn("[snapDOM] Failed to fetch font resource:",g)}}}return r}function zu(o){if(!o.length)return null;let e=(n,c)=>o.some(([s,m])=>!(m<n||s>c)),a=e(0,255)||e(305,305),r=e(256,591)||e(7680,7935),i=e(880,1023),l=e(1024,1279);return e(7840,7929)||e(258,259)||e(416,417)||e(431,432)?"vietnamese":l?"cyrillic":i?"greek":r?"latin-ext":a?"latin":null}function Aa(o={}){let e=new Set((o.families||[]).map(i=>String(i).toLowerCase())),a=new Set((o.domains||[]).map(i=>String(i).toLowerCase())),r=new Set((o.subsets||[]).map(i=>String(i).toLowerCase()));return(i,l)=>{if(e.size&&e.has(i.family.toLowerCase()))return!0;if(a.size)for(let n of i.srcUrls)try{if(a.has(new URL(n).host.toLowerCase()))return!0}catch{}if(r.size){let n=zu(l);if(n&&r.has(n))return!0}return!1}}function _u(o){var l,n,c,s,m,d;if(!o)return o;let e=/@font-face[^{}]*\{[^}]*\}/gi,a=new Set,r=[];for(let g of o.match(e)||[]){let u=((l=g.match(/font-family:\s*([^;]+);/i))==null?void 0:l[1])||"",y=Do(u),p=(((n=g.match(/font-weight:\s*([^;]+);/i))==null?void 0:n[1])||"400").trim(),h=(((c=g.match(/font-style:\s*([^;]+);/i))==null?void 0:c[1])||"normal").trim(),f=(((s=g.match(/font-stretch:\s*([^;]+);/i))==null?void 0:s[1])||"100%").trim(),w=(((m=g.match(/unicode-range:\s*([^;]+);/i))==null?void 0:m[1])||"").trim(),b=(((d=g.match(/src\s*:\s*([^;}]+)[;}]/i))==null?void 0:d[1])||"").trim(),A=Qo(b,location.href),x=A.length?A.map(k=>String(k).toLowerCase()).sort().join("|"):b.toLowerCase(),C=[String(y||"").toLowerCase(),p,h,f,w.toLowerCase(),x].join("|");a.has(C)||(a.add(C),r.push(g))}if(r.length===0)return o;let i=0;return o.replace(e,()=>r[i++]||"")}function Su(o,e,a,r){let i=Array.from(o||[]).sort().join("|"),l=e?JSON.stringify({families:(e.families||[]).map(c=>String(c).toLowerCase()).sort(),domains:(e.domains||[]).map(c=>String(c).toLowerCase()).sort(),subsets:(e.subsets||[]).map(c=>String(c).toLowerCase()).sort()}):"",n=(a||[]).map(c=>`${(c.family||"").toLowerCase()}::${c.weight||"normal"}::${c.style||"normal"}::${c.src||""}`).sort().join("|");return`fonts-embed-css::req=${i}::ex=${l}::lf=${n}::px=${r||""}`}async function La(o,e,a,r){let i;try{i=o.cssRules||[]}catch{return}let l=(n,c)=>{try{return new URL(n,c||location.href).href}catch{return n}};for(let n of i){if(n.type===CSSRule.IMPORT_RULE&&n.styleSheet){let c=n.href?l(n.href,e):e;if(r.depth>=Io){console.warn(`[snapDOM] CSSOM import depth exceeded (${Io}) at ${c}`);continue}if(c&&r.visitedSheets.has(c)){console.warn(`[snapDOM] Skipping circular CSSOM import: ${c}`);continue}c&&r.visitedSheets.add(c);let s={...r,depth:(r.depth||0)+1};await La(n.styleSheet,c,a,s);continue}if(n.type===CSSRule.FONT_FACE_RULE){let c=(n.style.getPropertyValue("font-family")||"").trim(),s=Do(c);if(!s||Yt(s))continue;let m=(n.style.getPropertyValue("font-weight")||"400").trim(),d=(n.style.getPropertyValue("font-style")||"normal").trim(),g=(n.style.getPropertyValue("font-stretch")||"100%").trim(),u=(n.style.getPropertyValue("src")||"").trim(),y=(n.style.getPropertyValue("unicode-range")||"").trim();if(!r.faceMatchesRequired(s,d,m,g))continue;let p=wa(y);if(!xa(r.usedCodepoints,p))continue;let h={family:s,weightSpec:m,styleSpec:d,stretchSpec:g,unicodeRange:y,srcRaw:u,srcUrls:Qo(u,e||location.href),href:e||location.href};if(r.simpleExcluder&&r.simpleExcluder(h,p))continue;if(/url\(/i.test(u)){let f=await ka(u,e||location.href,r.useProxy);await a(`@font-face{font-family:${s};src:${f};font-style:${d};font-weight:${m};font-stretch:${g};${y?`unicode-range:${y};`:""}}`)}else await a(`@font-face{font-family:${s};src:${u};font-style:${d};font-weight:${m};font-stretch:${g};${y?`unicode-range:${y};`:""}}`)}}}async function Nu({required:o,usedCodepoints:e,exclude:a=void 0,localFonts:r=[],useProxy:i=""}={}){var h,f,w,b,A,x,C,k,_,z,P,T,V,H,O,J,se,ne;o instanceof Set||(o=new Set),e instanceof Set||(e=new Set);let l=new Map;for(let N of o){let[j,W,Q,G]=String(N).split("__");if(!j)continue;let B=l.get(j)||[];B.push({w:parseInt(W,10),s:Q,st:parseInt(G,10)}),l.set(j,B)}function n(N,j,W,Q){if(!l.has(N))return!1;let G=l.get(N),B=wu(W),U=xu(j),S=ku(Q),ee=B.min!==B.max,ce=B.min,ge=oe=>U.kind==="normal"&&oe==="normal"||U.kind!=="normal"&&(oe==="italic"||oe==="oblique"),ue=!1;for(let oe of G){let he=ee?oe.w>=B.min&&oe.w<=B.max:oe.w===ce,fe=ge(Bo(oe.s)),_e=oe.st>=S.min&&oe.st<=S.max;if(he&&fe&&_e){ue=!0;break}}if(ue)return!0;if(!ee)for(let oe of G){let he=ge(Bo(oe.s)),fe=oe.st>=S.min&&oe.st<=S.max;if(Math.abs(ce-oe.w)<=300&&he&&fe)return!0}if(!ee&&U.kind==="normal"&&G.some(oe=>Bo(oe.s)!=="normal"))for(let oe of G){let he=Math.abs(ce-oe.w)<=300,fe=oe.st>=S.min&&oe.st<=S.max;if(he&&fe)return!0}return!1}let c=Aa(a),s=Su(o,a,r,i);if((h=D.resource)!=null&&h.has(s))return D.resource.get(s);let m=Lu(o),d=[],g=Ko;for(let N of document.querySelectorAll("style")){let j=N.textContent||"";for(let W of j.matchAll(g)){let Q=(W[2]||W[4]||"").trim();!Q||Yt(Q)||document.querySelector(`link[rel="stylesheet"][href="${Q}"]`)||d.push(Q)}}d.length&&await Promise.all(d.map(N=>new Promise(j=>{if(document.querySelector(`link[rel="stylesheet"][href="${N}"]`))return j(null);let W=document.createElement("link");W.rel="stylesheet",W.href=N,W.setAttribute("data-snapdom","injected-import"),W.onload=()=>j(W),W.onerror=()=>j(null),document.head.appendChild(W)})));let u="",y=Array.from(document.querySelectorAll('link[rel="stylesheet"]')).filter(N=>!!N.href);for(let N of y)try{if(Yt(N.href))continue;let j="",W=!1;try{W=new URL(N.href,location.href).origin===location.origin}catch{}if(!W&&!Au(N.href,m))continue;if(W){let G=Array.from(document.styleSheets).find(B=>B.href===N.href);if(G)try{let B=G.cssRules||[];j=Array.from(B).map(U=>U.cssText).join("")}catch{}}if(!j&&(j=(await Ht(N.href,{as:"text",useProxy:i})).data,Yt(N.href)))continue;j=await Cu(j,N.href,i);let Q="";for(let G of j.match(vu)||[]){let B=(((f=G.match(/font-family:\s*([^;]+);/i))==null?void 0:f[1])||"").trim(),U=Do(B);if(!U||Yt(U))continue;let S=(((w=G.match(/font-weight:\s*([^;]+);/i))==null?void 0:w[1])||"400").trim(),ee=(((b=G.match(/font-style:\s*([^;]+);/i))==null?void 0:b[1])||"normal").trim(),ce=(((A=G.match(/font-stretch:\s*([^;]+);/i))==null?void 0:A[1])||"100%").trim(),ge=(((x=G.match(/unicode-range:\s*([^;]+);/i))==null?void 0:x[1])||"").trim(),ue=(((C=G.match(/src\s*:\s*([^;}]+)[;}]/i))==null?void 0:C[1])||"").trim(),oe=Qo(ue,N.href);if(!n(U,ee,S,ce))continue;let he=wa(ge);if(!xa(e,he))continue;let fe={family:U,weightSpec:S,styleSpec:ee,stretchSpec:ce,unicodeRange:ge,srcRaw:ue,srcUrls:oe,href:N.href};if(a&&c(fe,he))continue;let _e=/url\(/i.test(ue)?await ka(G,N.href,i):G;Q+=_e}Q.trim()&&(u+=Q)}catch{console.warn("[snapDOM] Failed to process stylesheet:",N.href)}let p={requiredIndex:l,usedCodepoints:e,faceMatchesRequired:n,simpleExcluder:a?Aa(a):null,useProxy:i,visitedSheets:new Set,depth:0};for(let N of document.styleSheets)if(!(N.href&&y.some(j=>j.href===N.href)))try{let j=N.href||location.href;j&&p.visitedSheets.add(j),await La(N,j,async W=>{u+=W},p)}catch{}try{for(let N of document.fonts||[]){if(!N||!N.family||N.status!=="loaded"||!N._snapdomSrc)continue;let j=String(N.family).replace(/^['"]+|['"]+$/g,"");if(Yt(j)||!l.has(j)||a!=null&&a.families&&a.families.some(Q=>String(Q).toLowerCase()===j.toLowerCase()))continue;let W=N._snapdomSrc;if(!String(W).startsWith("data:")){if((k=D.resource)!=null&&k.has(N._snapdomSrc))W=D.resource.get(N._snapdomSrc),(_=D.font)==null||_.add(N._snapdomSrc);else if(!((z=D.font)!=null&&z.has(N._snapdomSrc)))try{let Q=await Ht(N._snapdomSrc,{as:"dataURL",useProxy:i,silent:!0});if(Q.ok&&typeof Q.data=="string")W=Q.data,(P=D.resource)==null||P.set(N._snapdomSrc,W),(T=D.font)==null||T.add(N._snapdomSrc);else continue}catch{console.warn("[snapDOM] Failed to fetch dynamic font src:",N._snapdomSrc);continue}}u+=`@font-face{font-family:'${j}';src:url(${W});font-style:${N.style||"normal"};font-weight:${N.weight||"normal"};}`}}catch{}for(let N of r){if(!N||typeof N!="object")continue;let j=String(N.family||"").replace(/^['"]+|['"]+$/g,"");if(!j||Yt(j)||!l.has(j)||a!=null&&a.families&&a.families.some(S=>String(S).toLowerCase()===j.toLowerCase()))continue;let W=N.weight!=null?String(N.weight):"normal",Q=N.style!=null?String(N.style):"normal",G=N.stretchPct!=null?`${N.stretchPct}%`:"100%",B=String(N.src||""),U=B;if(!U.startsWith("data:")){if((V=D.resource)!=null&&V.has(B))U=D.resource.get(B),(H=D.font)==null||H.add(B);else if(!((O=D.font)!=null&&O.has(B)))try{let S=await Ht(B,{as:"dataURL",useProxy:i,silent:!0});if(S.ok&&typeof S.data=="string")U=S.data,(J=D.resource)==null||J.set(B,U),(se=D.font)==null||se.add(B);else continue}catch{console.warn("[snapDOM] Failed to fetch localFonts src:",B);continue}}u+=`@font-face{font-family:'${j}';src:url(${U});font-style:${Q};font-weight:${W};font-stretch:${G};}`}return u&&(u=_u(u),(ne=D.resource)==null||ne.set(s,u)),u}function Mu(o){let e=new Set;if(!o)return e;let a=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT,null),r=n=>{let c=Do(n.fontFamily);if(!c)return;let s=(m,d,g)=>`${c}__${Ro(m)}__${Bo(d)}__${bu(g)}`;e.add(s(n.fontWeight,n.fontStyle,n.fontStretch))};r(getComputedStyle(o));let i=getComputedStyle(o,"::before");i&&i.content&&i.content!=="none"&&r(i);let l=getComputedStyle(o,"::after");for(l&&l.content&&l.content!=="none"&&r(l);a.nextNode();){let n=a.currentNode,c=getComputedStyle(n);r(c);let s=getComputedStyle(n,"::before");s&&s.content&&s.content!=="none"&&r(s);let m=getComputedStyle(n,"::after");m&&m.content&&m.content!=="none"&&r(m)}return e}function Pu(o){var i;let e=new Set,a=l=>{if(l)for(let n of l)e.add(n.codePointAt(0))},r=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT,null);for(;r.nextNode();){let l=r.currentNode;if(l.nodeType===Node.TEXT_NODE)a(l.nodeValue||"");else if(l.nodeType===Node.ELEMENT_NODE){let n=l;for(let c of["::before","::after"]){let s=(i=getComputedStyle(n,c))==null?void 0:i.getPropertyValue("content");if(!(!s||s==="none"))if(/^"/.test(s)||/^'/.test(s))a(s.slice(1,-1));else{let m=s.match(/\\[0-9A-Fa-f]{1,6}/g);if(m)for(let d of m)try{e.add(parseInt(d.slice(1),16))}catch{}}}}}return e}async function Vu(o,e=2){try{await document.fonts.ready}catch{}let a=Array.from(o||[]).filter(Boolean);if(a.length===0)return;let r=()=>{let i=document.createElement("div");i.style.cssText="position:absolute!important;left:-9999px!important;top:0!important;opacity:0!important;pointer-events:none!important;contain:layout size style;";for(let l of a){let n=document.createElement("span");n.textContent="AaBbGg1234ÁÉÍÓÚçñ—∞",n.style.fontFamily=`"${l}"`,n.style.fontWeight="700",n.style.fontStyle="italic",n.style.fontSize="32px",n.style.lineHeight="1",n.style.whiteSpace="nowrap",n.style.margin="0",n.style.padding="0",i.appendChild(n)}document.body.appendChild(i),i.offsetWidth,document.body.removeChild(i)};for(let i=0;i<Math.max(1,e);i++)r(),await new Promise(l=>requestAnimationFrame(()=>requestAnimationFrame(l)))}async function Tu(o,e,a,r={}){let i=[[o,e]],l=["background-image","mask","mask-image","-webkit-mask","-webkit-mask-image","mask-source","mask-box-image-source","mask-border-source","-webkit-mask-box-image-source","border-image","border-image-source"],n=["mask-position","mask-size","mask-repeat","-webkit-mask-position","-webkit-mask-size","-webkit-mask-repeat","mask-origin","mask-clip","-webkit-mask-origin","-webkit-mask-clip","-webkit-mask-position-x","-webkit-mask-position-y"],c=["background-position","background-position-x","background-position-y","background-size","background-repeat","background-origin","background-clip","background-attachment","background-blend-mode"],s=["border-image-slice","border-image-width","border-image-outset","border-image-repeat"];for(;i.length;){let[m,d]=i.shift(),g=a.get(m)||pa(m);a.has(m)||a.set(m,g);let u=(()=>{let h=g.getPropertyValue("border-image"),f=g.getPropertyValue("border-image-source");return h&&h!=="none"||f&&f!=="none"})();for(let h of c){let f=g.getPropertyValue(h);f&&d.style.setProperty(h,f)}for(let h of l){let f=g.getPropertyValue(h);if(!f||f==="none")continue;let w=ua(f),b=await Promise.all(w.map(A=>da(A,r)));b.some(A=>A&&A!=="none"&&!/^url\(undefined/.test(A))&&d.style.setProperty(h,b.join(", "))}for(let h of n){let f=g.getPropertyValue(h);!f||f==="initial"||d.style.setProperty(h,f)}if(u)for(let h of s){let f=g.getPropertyValue(h);!f||f==="initial"||d.style.setProperty(h,f)}let y=Array.from(m.children),p=Array.from(d.children).filter(h=>!(h.dataset&&h.dataset.snapdomPseudo));for(let h=0;h<Math.min(y.length,p.length);h++)i.push([y[h],p[h]])}}function ao(o,{fast:e=!1}={}){if(e)return o();"requestIdleCallback"in window?requestIdleCallback(o,{timeout:50}):setTimeout(o,1)}function Qt(){if(typeof navigator>"u")return!1;let o=navigator.userAgent||"",e=o.toLowerCase(),a=e.includes("safari")&&!e.includes("chrome")&&!e.includes("crios")&&!e.includes("fxios")&&!e.includes("android"),r=/applewebkit/i.test(o),i=/mobile/i.test(o),l=!/safari/i.test(o),n=r&&i&&l,c=/(micromessenger|wxwork|wecom|windowswechat|macwechat)/i.test(o),s=/(baiduboxapp|baidubrowser|baidusearch|baiduboxlite)/i.test(e),m=/ipad|iphone|ipod/.test(e)&&r;return a||n||c||s||m}var co=[];function Ca(o){if(!o)return null;if(Array.isArray(o)){let[e,a]=o;return typeof e=="function"?e(a):e}if(typeof o=="object"&&"plugin"in o){let{plugin:e,options:a}=o;return typeof e=="function"?e(a):e}return typeof o=="function"?o():o}function Eu(...o){let e=o.flat();for(let a of e){let r=Ca(a);r&&(co.some(i=>i&&i.name&&r.name&&i.name===r.name)||co.push(r))}}function va(o){return(o&&Array.isArray(o.plugins)?o.plugins:co)||co}async function Ut(o,e,a){let r=a,i=va(e);for(let l of i){let n=l&&typeof l[o]=="function"?l[o]:null;if(!n)continue;let c=await n(e,r);typeof c<"u"&&(r=c)}return r}async function Du(o,e,a){let r=[],i=va(e);for(let l of i){let n=l&&typeof l[o]=="function"?l[o]:null;if(!n)continue;let c=await n(e,a);typeof c<"u"&&r.push(c)}return r}function Ru(o){let e=[];if(Array.isArray(o))for(let a of o){let r=Ca(a);if(!r||!r.name)continue;let i=e.findIndex(l=>l&&l.name===r.name);i>=0&&e.splice(i,1),e.push(r)}for(let a of co)a&&a.name&&!e.some(r=>r.name===a.name)&&e.push(a);return Object.freeze(e)}function Bu(o,e,a=!1){return!o||o.plugins&&!a||(o.plugins=Ru(e)),o}var za=new WeakMap,qo=new Map,$o=0;function mo(){$o++}var _a=!1;function Iu(o=document.documentElement){var e,a;if(!_a){_a=!0;try{new MutationObserver(()=>mo()).observe(o,{subtree:!0,childList:!0,characterData:!0,attributes:!0})}catch{}try{new MutationObserver(()=>mo()).observe(document.head,{subtree:!0,childList:!0,characterData:!0,attributes:!0})}catch{}try{let r=document.fonts;r&&((e=r.addEventListener)==null||e.call(r,"loadingdone",mo),(a=r.ready)==null||a.then(()=>mo()).catch(()=>{}))}catch{}}}function Fu(o,e={}){let a={},r=o.getPropertyValue("visibility");for(let l=0;l<o.length;l++){let n=o[l],c=o.getPropertyValue(n);(n==="background-image"||n==="content")&&c.includes("url(")&&!c.includes("data:")&&(c="none"),a[n]=c}let i=["text-decoration-line","text-decoration-color","text-decoration-style","text-decoration-thickness","text-underline-offset","text-decoration-skip-ink"];for(let l of i)if(!a[l])try{let n=o.getPropertyValue(l);n&&(a[l]=n)}catch{}if(e.embedFonts){let l=["font-feature-settings","font-variation-settings","font-kerning","font-variant","font-variant-ligatures","font-optical-sizing"];for(let n of l)if(!a[n])try{let c=o.getPropertyValue(n);c&&(a[n]=c)}catch{}}return r==="hidden"&&(a.opacity="0"),a}var Sa=new WeakMap;function Gu(o){let e=Sa.get(o);return e||(e=Object.entries(o).sort((a,r)=>a[0]<r[0]?-1:a[0]>r[0]?1:0).map(([a,r])=>`${a}:${r}`).join(";"),Sa.set(o,e),e)}function ju(o,e=null,a={}){let r=za.get(o);if(r&&r.epoch===$o)return r.snapshot;let i=e||getComputedStyle(o),l=Fu(i,a);return Yu(o,i,l),za.set(o,{epoch:$o,snapshot:l}),l}function Wu(o,e){return o&&o.session&&o.persist?o:o&&(o.styleMap||o.styleCache||o.nodeMap)?{session:o,persist:{snapshotKeyCache:qo,defaultStyle:D.defaultStyle,baseStyle:D.baseStyle,image:D.image,resource:D.resource,background:D.background,font:D.font},options:e||{}}:{session:D.session,persist:{snapshotKeyCache:qo,defaultStyle:D.defaultStyle,baseStyle:D.baseStyle,image:D.image,resource:D.resource,background:D.background,font:D.font},options:o||e||{}}}async function io(o,e,a,r){var u,y,p;if(o.tagName==="STYLE")return;let i=Wu(a,r),l=i.options&&i.options.cache||"auto";if(l!=="disabled"&&Iu(document.documentElement),l==="disabled"&&!i.session.__bumpedForDisabled&&(mo(),qo.clear(),i.session.__bumpedForDisabled=!0),Yo.has((u=o.tagName)==null?void 0:u.toLowerCase())){let h=(y=o.getAttribute)==null?void 0:y.call(o,"style");h&&e.setAttribute("style",h)}let{session:n,persist:c}=i;n.styleCache.has(o)||n.styleCache.set(o,getComputedStyle(o));let s=n.styleCache.get(o),m=ju(o,s,i.options),d=Gu(m),g=c.snapshotKeyCache.get(d);if(!g){let h=((p=o.tagName)==null?void 0:p.toLowerCase())||"div";g=Uo(m,h),c.snapshotKeyCache.set(d,g)}n.styleMap.set(e,g)}function Zu(o){return o instanceof HTMLImageElement||o instanceof HTMLCanvasElement||o instanceof HTMLVideoElement||o instanceof HTMLIFrameElement||o instanceof SVGElement||o instanceof HTMLObjectElement||o instanceof HTMLEmbedElement}function Xu(o){return o.backgroundImage&&o.backgroundImage!=="none"||o.backgroundColor&&o.backgroundColor!=="rgba(0, 0, 0, 0)"&&o.backgroundColor!=="transparent"||(parseFloat(o.borderTopWidth)||0)>0||(parseFloat(o.borderBottomWidth)||0)>0||(parseFloat(o.paddingTop)||0)>0||(parseFloat(o.paddingBottom)||0)>0?!0:(o.overflowBlock||o.overflowY||"visible")!=="visible"}function Hu(o){let e=o.parentElement;if(!e)return!1;let a=getComputedStyle(e).display||"";return a.includes("flex")||a.includes("grid")}function Ou(o,e){if(o.textContent&&/\S/.test(o.textContent))return!0;let a=o.firstElementChild,r=o.lastElementChild;if(a&&a.tagName==="BR"||r&&r.tagName==="BR")return!0;let i=o.scrollHeight;if(i===0)return!1;let l=parseFloat(e.paddingTop)||0,n=parseFloat(e.paddingBottom)||0;return i>l+n}function Yu(o,e,a){if(o instanceof HTMLElement&&o.style&&o.style.height)return;let r=o.tagName&&o.tagName.toLowerCase();if(!r||r!=="div"&&r!=="section"&&r!=="article"&&r!=="main"&&r!=="aside"&&r!=="header"&&r!=="footer"&&r!=="nav"&&r!=="ol"&&r!=="ul"&&r!=="li")return;let i=e.display||"";if(i.includes("flex")||i.includes("grid")||Zu(o))return;let l=e.position;if(l==="absolute"||l==="fixed"||l==="sticky"||e.transform!=="none"||Xu(e)||Hu(o))return;let n=e.overflowX||e.overflow||"visible",c=e.overflowY||e.overflow||"visible";if(n!=="visible"||c!=="visible")return;let s=e.clip;s&&s!=="auto"&&s!=="rect(auto, auto, auto, auto)"||e.visibility==="hidden"||e.opacity==="0"||Ou(o,e)&&(delete a.height,delete a["block-size"])}var Na=["fill","stroke","color","background-color","stop-color"],Ma=new Map;function Uu(o,e){let a=e+"::"+o.toLowerCase(),r=Ma.get(a);if(r)return r;let i=document,l=e==="http://www.w3.org/2000/svg"?i.createElementNS(e,o):i.createElement(o),n=i.createElement("div");n.style.cssText="position:absolute;left:-99999px;top:-99999px;contain:strict;display:block;",n.appendChild(l),i.documentElement.appendChild(n);let c=getComputedStyle(l),s={};for(let m of Na)s[m]=c.getPropertyValue(m)||"";return n.remove(),Ma.set(a,s),s}function Ju(o,e){var l,n,c;if(!(o instanceof Element)||!(e instanceof Element))return;let a=(l=o.getAttribute)==null?void 0:l.call(o,"style"),r=!!(a&&a.includes("var("));if(!r&&((n=o.attributes)!=null&&n.length)){let s=o.attributes;for(let m=0;m<s.length;m++){let d=s[m];if(d&&typeof d.value=="string"&&d.value.includes("var(")){r=!0;break}}}let i=null;if(r)try{i=getComputedStyle(o)}catch{}if(r){let s=o.style;if(s&&s.length)for(let m=0;m<s.length;m++){let d=s[m],g=s.getPropertyValue(d);if(!g||!g.includes("var("))continue;let u=i&&i.getPropertyValue(d);if(u)try{e.style.setProperty(d,u.trim(),s.getPropertyPriority(d))}catch{}}}if(r&&((c=o.attributes)!=null&&c.length)){let s=o.attributes;for(let m=0;m<s.length;m++){let d=s[m];if(!d||typeof d.value!="string"||!d.value.includes("var("))continue;let g=d.name,u=i&&i.getPropertyValue(g);if(u)try{e.style.setProperty(g,u.trim())}catch{}}}if(!r){if(!i)try{i=getComputedStyle(o)}catch{i=null}if(!i)return;let s=o.namespaceURI||"html",m=Uu(o.tagName,s);for(let d of Na){let g=i.getPropertyValue(d)||"",u=m[d]||"";if(g&&g!==u)try{e.style.setProperty(d,g.trim())}catch{}}}}function ea(o,e,a){return Promise.all(o.map(r=>new Promise(i=>{function l(){ao(n=>{!(n&&typeof n.timeRemaining=="function")||n.timeRemaining()>0?e(r,i):l()},{fast:a})}l()})))}function Ku(o){return o=o.trim(),!o||/:not\(\s*\[data-sd-slotted\]\s*\)\s*$/.test(o)?o:`${o}:not([data-sd-slotted])`}function Qu(o,e,a=!0){return o.split(",").map(r=>r.trim()).filter(Boolean).map(r=>{if(r.startsWith(":where(")||r.startsWith("@"))return r;let i=a?Ku(r):r;return`:where(${e} ${i})`}).join(", ")}function qu(o,e){return o?(o=o.replace(/:host\(([^)]+)\)/g,(a,r)=>`:where(${e}:is(${r.trim()}))`),o=o.replace(/:host\b/g,`:where(${e})`),o=o.replace(/:host-context\(([^)]+)\)/g,(a,r)=>`:where(:where(${r.trim()}) ${e})`),o=o.replace(/::slotted\(([^)]+)\)/g,(a,r)=>`:where(${e} ${r.trim()})`),o=o.replace(/(^|})(\s*)([^@}{]+){/g,(a,r,i,l)=>{let n=Qu(l,e,!0);return`${r}${i}${n}{`}),o):""}function $u(o){return o.shadowScopeSeq=(o.shadowScopeSeq||0)+1,`s${o.shadowScopeSeq}`}function e0(o){let e="";try{o.querySelectorAll("style").forEach(r=>{e+=(r.textContent||"")+`
|
|
230
230
|
`});let a=o.adoptedStyleSheets||[];for(let r of a)try{if(r&&r.cssRules)for(let i of r.cssRules)e+=i.cssText+`
|
|
231
231
|
`}catch{}}catch{}return e}function t0(o,e,a){if(!e)return;let r=document.createElement("style");r.setAttribute("data-sd",a),r.textContent=e,o.insertBefore(r,o.firstChild||null)}function o0(o,e){try{let a=o.currentSrc||o.src||"";if(!a)return;e.setAttribute("src",a),e.removeAttribute("srcset"),e.removeAttribute("sizes"),e.loading="eager",e.decoding="sync"}catch{}}function a0(o){let e=new Set;if(!o)return e;let a=/var\(\s*(--[A-Za-z0-9_-]+)\b/g,r;for(;r=a.exec(o);)e.add(r[1]);return e}function i0(o,e){try{let a=getComputedStyle(o).getPropertyValue(e).trim();if(a)return a}catch{}try{let a=getComputedStyle(document.documentElement).getPropertyValue(e).trim();if(a)return a}catch{}return""}function r0(o,e,a){let r=[];for(let i of e){let l=i0(o,i);l&&r.push(`${i}: ${l};`)}return r.length?`${a}{${r.join("")}}
|
|
232
|
-
`:""}function l0(o){o&&(o.nodeType===Node.ELEMENT_NODE&&o.setAttribute("data-sd-slotted",""),o.querySelectorAll&&o.querySelectorAll("*").forEach(e=>e.setAttribute("data-sd-slotted","")))}async function n0(o,e=3){let a=()=>{var l;try{return o.contentDocument||((l=o.contentWindow)==null?void 0:l.document)||null}catch{return null}},r=a(),i=0;for(;i<e&&(!r||!r.body&&!r.documentElement);)await new Promise(l=>setTimeout(l,0)),r=a(),i++;return r&&(r.body||r.documentElement)?r:null}function s0(o){let e=o.getBoundingClientRect(),a=0,r=0,i=0,l=0;try{let s=getComputedStyle(o);a=parseFloat(s.borderLeftWidth)||0,r=parseFloat(s.borderRightWidth)||0,i=parseFloat(s.borderTopWidth)||0,l=parseFloat(s.borderBottomWidth)||0}catch{}let n=Math.max(0,Math.round(e.width-(a+r))),c=Math.max(0,Math.round(e.height-(i+l)));return{contentWidth:n,contentHeight:c,rect:e}}function c0(o,e,a){let r=o.createElement("style");return r.setAttribute("data-sd-iframe-pin",""),r.textContent=`html, body {margin: 0 !important;padding: 0 !important;width: ${e}px !important;height: ${a}px !important;min-width: ${e}px !important;min-height: ${a}px !important;box-sizing: border-box !important;overflow: hidden !important;background-clip: border-box !important;}`,(o.head||o.documentElement).appendChild(r),()=>{try{r.remove()}catch{}}}async function m0(o,e,a){let r=await n0(o,3);if(!r)throw new Error("iframe document not accessible/ready");let{contentWidth:i,contentHeight:l,rect:n}=s0(o),c=a==null?void 0:a.snap;if(!c||typeof c.toPng!="function")throw new Error("snapdom.toPng not available in iframe or window");let s={...a,scale:1},m=c0(r,i,l),d;try{d=await c.toPng(r.documentElement,s)}finally{m()}d.style.display="block",d.style.width=`${i}px`,d.style.height=`${l}px`;let g=document.createElement("div");return e.nodeMap.set(g,o),io(o,g,e,a),g.style.overflow="hidden",g.style.display="block",g.style.width||(g.style.width=`${Math.round(n.width)}px`),g.style.height||(g.style.height=`${Math.round(n.height)}px`),g.appendChild(d),g}var ho=new Map;async function po(o){var a;if((a=D.resource)!=null&&a.has(o))return D.resource.get(o);if(ho.has(o))return ho.get(o);let e=(async()=>{var i;let r=await Ht(o,{as:"dataURL",silent:!0});if(!r.ok||typeof r.data!="string")throw new Error(`[snapDOM] Failed to read blob URL: ${o}`);return(i=D.resource)==null||i.set(o,r.data),r.data})();ho.set(o,e);try{let r=await e;return ho.set(o,r),r}catch(r){throw ho.delete(o),r}}var d0=/\bblob:[^)"'\s]+/g;async function Pa(o){if(!o||o.indexOf("blob:")===-1)return o;let e=Array.from(new Set(o.match(d0)||[]));if(e.length===0)return o;let a=o;for(let r of e)try{let i=await po(r);a=a.split(r).join(i)}catch{}return a}function Fo(o){return typeof o=="string"&&o.startsWith("blob:")}function h0(o){return(o||"").split(",").map(e=>e.trim()).filter(Boolean).map(e=>{let a=e.match(/^(\S+)(\s+.+)?$/);return a?{url:a[1],desc:a[2]||""}:null}).filter(Boolean)}function p0(o){return o.map(e=>e.desc?`${e.url} ${e.desc.trim()}`:e.url).join(", ")}async function g0(o){var n,c;if(!o)return;let e=o.querySelectorAll?o.querySelectorAll("img"):[];for(let s of e)try{let m=s.getAttribute("src")||s.currentSrc||"";if(Fo(m)){let g=await po(m);s.setAttribute("src",g)}let d=s.getAttribute("srcset");if(d&&d.includes("blob:")){let g=h0(d),u=!1;for(let y of g)if(Fo(y.url))try{y.url=await po(y.url),u=!0}catch{}u&&s.setAttribute("srcset",p0(g))}}catch{}let a=o.querySelectorAll?o.querySelectorAll("image"):[];for(let s of a)try{let m="http://www.w3.org/1999/xlink",d=s.getAttribute("href")||((n=s.getAttributeNS)==null?void 0:n.call(s,m,"href"));if(Fo(d)){let g=await po(d);s.setAttribute("href",g),(c=s.removeAttributeNS)==null||c.call(s,m,"href")}}catch{}let r=o.querySelectorAll?o.querySelectorAll("[style*='blob:']"):[];for(let s of r)try{let m=s.getAttribute("style");if(m&&m.includes("blob:")){let d=await Pa(m);s.setAttribute("style",d)}}catch{}let i=o.querySelectorAll?o.querySelectorAll("style"):[];for(let s of i)try{let m=s.textContent||"";m.includes("blob:")&&(s.textContent=await Pa(m))}catch{}let l=["poster"];for(let s of l){let m=o.querySelectorAll?o.querySelectorAll(`[${s}^='blob:']`):[];for(let d of m)try{let g=d.getAttribute(s);Fo(g)&&d.setAttribute(s,await po(g))}catch{}}}async function Go(o,e,a){var m,d,g,u,y,p;if(!o)throw new Error("Invalid node");let r=new Set,i=null,l=null;if(o.nodeType===Node.ELEMENT_NODE){let h=(o.localName||o.tagName||"").toLowerCase();if(o.id==="snapdom-sandbox"||o.hasAttribute("data-snapdom-sandbox")||$g.has(h))return null}if(o.nodeType===Node.TEXT_NODE||o.nodeType!==Node.ELEMENT_NODE)return o.cloneNode(!0);if(o.getAttribute("data-capture")==="exclude"){if(a.excludeMode==="hide"){let h=document.createElement("div"),f=o.getBoundingClientRect();return h.style.cssText=`display:inline-block;width:${f.width}px;height:${f.height}px;visibility:hidden;`,h}else if(a.excludeMode==="remove")return null}if(a.exclude&&Array.isArray(a.exclude))for(let h of a.exclude)try{if((m=o.matches)!=null&&m.call(o,h)){if(a.excludeMode==="hide"){let f=document.createElement("div"),w=o.getBoundingClientRect();return f.style.cssText=`display:inline-block;width:${w.width}px;height:${w.height}px;visibility:hidden;`,f}else if(a.excludeMode==="remove")return null}}catch(f){console.warn(`Invalid selector in exclude option: ${h}`,f)}if(typeof a.filter=="function")try{if(!a.filter(o)){if(a.filterMode==="hide"){let h=document.createElement("div"),f=o.getBoundingClientRect();return h.style.cssText=`display:inline-block;width:${f.width}px;height:${f.height}px;visibility:hidden;`,h}else if(a.filterMode==="remove")return null}}catch(h){console.warn("Error in filter function:",h)}if(o.tagName==="IFRAME"){let h=!1;try{h=!!(o.contentDocument||(d=o.contentWindow)!=null&&d.document)}catch{h=!1}if(h)try{return await m0(o,e,a)}catch(f){console.warn("[SnapDOM] iframe rasterization failed, fallback:",f)}if(a.placeholders){let f=document.createElement("div");return f.style.cssText=`width:${o.offsetWidth}px;height:${o.offsetHeight}px;background-image:repeating-linear-gradient(45deg,#ddd,#ddd 5px,#f9f9f9 5px,#f9f9f9 10px);display:flex;align-items:center;justify-content:center;font-size:12px;color:#555;border:1px solid #aaa;`,io(o,f,e,a),f}else{let f=o.getBoundingClientRect(),w=document.createElement("div");return w.style.cssText=`display:inline-block;width:${f.width}px;height:${f.height}px;visibility:hidden;`,io(o,w,e,a),w}}if(o.getAttribute("data-capture")==="placeholder"){let h=o.cloneNode(!1);e.nodeMap.set(h,o),io(o,h,e,a);let f=document.createElement("div");return f.textContent=o.getAttribute("data-placeholder-text")||"",f.style.cssText="color:#666;font-size:12px;text-align:center;line-height:1.4;padding:0.5em;box-sizing:border-box;",h.appendChild(f),h}if(o.tagName==="CANVAS"){let h="";try{let w=o.getContext("2d",{willReadFrequently:!0});try{w&&w.getImageData(0,0,1,1)}catch{}if(await new Promise(b=>requestAnimationFrame(b)),h=o.toDataURL("image/png"),!h||h==="data:,"){try{w&&w.getImageData(0,0,1,1)}catch{}if(await new Promise(b=>requestAnimationFrame(b)),h=o.toDataURL("image/png"),!h||h==="data:,"){let b=document.createElement("canvas");b.width=o.width,b.height=o.height;let A=b.getContext("2d");A&&(A.drawImage(o,0,0),h=b.toDataURL("image/png"))}}}catch{}let f=document.createElement("img");try{f.decoding="sync",f.loading="eager"}catch{}h&&(f.src=h),f.width=o.width,f.height=o.height;try{let w=getComputedStyle(o);w.width&&(f.style.width=w.width),w.height&&(f.style.height=w.height)}catch{}return e.nodeMap.set(f,o),io(o,f,e,a),f}let n;try{if(n=o.cloneNode(!1),Ju(o,n),e.nodeMap.set(n,o),o.tagName==="IMG"){o0(o,n);try{let h=o.getBoundingClientRect(),f=Math.round(h.width||0),w=Math.round(h.height||0);if(!f||!w){let b=window.getComputedStyle(o),A=parseFloat(b.width)||0,x=parseFloat(b.height)||0,C=parseInt(o.getAttribute("width")||"",10)||0,k=parseInt(o.getAttribute("height")||"",10)||0,_=o.width||o.naturalWidth||0,z=o.height||o.naturalHeight||0;f=Math.round(f||A||C||_||0),w=Math.round(w||x||k||z||0)}f&&(n.dataset.snapdomWidth=String(f)),w&&(n.dataset.snapdomHeight=String(w))}catch{}try{let h=o.getAttribute("style")||"",f=window.getComputedStyle(o),w=k=>{let _=h.match(new RegExp(`${k}\\s*:\\s*([^;]+)`,"i")),z=_?_[1].trim():f.getPropertyValue(k);return/%|auto/i.test(String(z||""))},b=parseInt(n.dataset.snapdomWidth||"0",10),A=parseInt(n.dataset.snapdomHeight||"0",10),x=w("width")||!b,C=w("height")||!A;x&&b&&(n.style.width=`${b}px`),C&&A&&(n.style.height=`${A}px`),b&&(n.style.minWidth=`${b}px`),A&&(n.style.minHeight=`${A}px`)}catch{}}}catch(h){throw console.error("[Snapdom] Failed to clone node:",o,h),h}if(o instanceof HTMLTextAreaElement){let h=o.getBoundingClientRect();n.style.width=`${h.width}px`,n.style.height=`${h.height}px`}if(o instanceof HTMLInputElement&&(n.value=o.value,n.setAttribute("value",o.value),o.checked!==void 0&&(n.checked=o.checked,o.checked&&n.setAttribute("checked",""),o.indeterminate&&(n.indeterminate=o.indeterminate))),o instanceof HTMLSelectElement&&(i=o.value),o instanceof HTMLTextAreaElement&&(l=o.value),io(o,n,e,a),o.shadowRoot){let h=function(z,P){if(z.nodeType===Node.ELEMENT_NODE&&z.tagName==="STYLE")return P(null);Go(z,e,a).then(T=>{P(T||null)}).catch(()=>{P(null)})};try{let z=o.shadowRoot.querySelectorAll("slot");for(let P of z){let T=[];try{T=((g=P.assignedNodes)==null?void 0:g.call(P,{flatten:!0}))||((u=P.assignedNodes)==null?void 0:u.call(P))||[]}catch{T=((y=P.assignedNodes)==null?void 0:y.call(P))||[]}for(let V of T)r.add(V)}}catch{}let f=$u(e),w=`[data-sd="${f}"]`;try{n.setAttribute("data-sd",f)}catch{}let b=e0(o.shadowRoot),A=qu(b,w),x=a0(b),C=r0(o,x,w);t0(n,C+A,f);let k=document.createDocumentFragment(),_=await ea(Array.from(o.shadowRoot.childNodes),h,a.fast);k.append(..._.filter(z=>!!z)),n.appendChild(k)}if(o.tagName==="SLOT"){let h=function(x,C){Go(x,e,a).then(k=>{k&&l0(k),C(k||null)}).catch(()=>{C(null)})},f=((p=o.assignedNodes)==null?void 0:p.call(o,{flatten:!0}))||[],w=f.length>0?f:Array.from(o.childNodes),b=document.createDocumentFragment(),A=await ea(Array.from(w),h,a.fast);return b.append(...A.filter(x=>!!x)),b}function c(h,f){if(r.has(h))return f(null);Go(h,e,a).then(w=>{f(w||null)}).catch(()=>{f(null)})}let s=await ea(Array.from(o.childNodes),c,a.fast);if(n.append(...s.filter(h=>!!h)),i!==null&&n instanceof HTMLSelectElement){n.value=i;for(let h of n.options)h.value===i?h.setAttribute("selected",""):h.removeAttribute("selected")}return l!==null&&n instanceof HTMLTextAreaElement&&(n.textContent=l),n}function u0(o){return/\bcounter\s*\(|\bcounters\s*\(/.test(o||"")}function f0(o){return(o||"").replace(/"([^"]*)"/g,"$1")}function Va(o,e=!1){let a="",r=Math.max(1,o);for(;r>0;)r--,a=String.fromCharCode(97+r%26)+a,r=Math.floor(r/26);return e?a.toUpperCase():a}function Ta(o,e=!0){let a=[[1e3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]],r=Math.max(1,Math.min(3999,o)),i="";for(let[l,n]of a)for(;r>=l;)i+=n,r-=l;return e?i:i.toLowerCase()}function Ea(o,e){switch((e||"decimal").toLowerCase()){case"decimal":return String(Math.max(0,o));case"decimal-leading-zero":return(o<10?"0":"")+String(Math.max(0,o));case"lower-alpha":return Va(o,!1);case"upper-alpha":return Va(o,!0);case"lower-roman":return Ta(o,!1);case"upper-roman":return Ta(o,!0);default:return String(Math.max(0,o))}}function y0(o){let e=()=>{var u;return((u=D==null?void 0:D.session)==null?void 0:u.__counterEpoch)??0},a=e(),r=new WeakMap,i=o instanceof Document?o.documentElement:o,l=u=>u&&u.tagName==="LI",n=u=>{let y=0,p=u==null?void 0:u.parentElement;if(!p)return 0;for(let h of p.children){if(h===u)break;h.tagName==="LI"&&y++}return y},c=u=>{let y=new Map;for(let[p,h]of u)y.set(p,h.slice());return y},s=(u,y,p)=>{var b,A;let h=c(u),f;try{f=((b=p.style)==null?void 0:b.counterReset)||getComputedStyle(p).counterReset}catch{}if(f&&f!=="none")for(let x of f.split(",")){let C=x.trim().split(/\s+/),k=C[0],_=Number.isFinite(Number(C[1]))?Number(C[1]):0;if(!k)continue;let z=y.get(k);if(z&&z.length){let P=z.slice();P.push(_),h.set(k,P)}else h.set(k,[_])}let w;try{w=((A=p.style)==null?void 0:A.counterIncrement)||getComputedStyle(p).counterIncrement}catch{}if(w&&w!=="none")for(let x of w.split(",")){let C=x.trim().split(/\s+/),k=C[0],_=Number.isFinite(Number(C[1]))?Number(C[1]):1;if(!k)continue;let z=h.get(k)||[];z.length===0&&z.push(0),z[z.length-1]+=_,h.set(k,z)}try{if(getComputedStyle(p).display==="list-item"&&l(p)){let x=p.parentElement,C=1;if(x&&x.tagName==="OL"){let _=x.getAttribute("start"),z=Number.isFinite(Number(_))?Number(_):1,P=n(p),T=p.getAttribute("value");C=Number.isFinite(Number(T))?Number(T):z+P}else C=1+n(p);let k=h.get("list-item")||[];k.length===0&&k.push(0),k[k.length-1]=C,h.set("list-item",k)}}catch{}return h},m=(u,y,p)=>{let h=s(p,y,u);r.set(u,h);let f=h;for(let w of u.children)f=m(w,h,f);return h},d=new Map;m(i,d,d);function g(){let u=e();if(u!==a){a=u;let y=new Map;m(i,y,y)}}return{get(u,y){var h;g();let p=(h=r.get(u))==null?void 0:h.get(y);return p&&p.length?p[p.length-1]:0},getStack(u,y){var h;g();let p=(h=r.get(u))==null?void 0:h.get(y);return p?p.slice():[]}}}function b0(o,e,a){if(!o||o==="none")return o;try{let r=/\b(counter|counters)\s*\(([^)]+)\)/g,i=o.replace(r,(l,n,c)=>{var m,d,g;let s=String(c).split(",").map(u=>u.trim());if(n==="counter"){let u=(m=s[0])==null?void 0:m.replace(/^["']|["']$/g,""),y=(s[1]||"decimal").toLowerCase(),p=a.get(e,u);return Ea(p,y)}else{let u=(d=s[0])==null?void 0:d.replace(/^["']|["']$/g,""),y=((g=s[1])==null?void 0:g.replace(/^["']|["']$/g,""))??"",p=(s[2]||"decimal").toLowerCase(),h=a.getStack(e,u);return h.length?h.map(f=>Ea(f,p)).join(y):""}});return f0(i)}catch{return"- "}}var ro=new WeakMap,Da=300;function w0(o,e){let a=Ra(o);return e?(e.__pseudoPreflightFp!==a&&(e.__pseudoPreflight=Ia(o),e.__pseudoPreflightFp=a),!!e.__pseudoPreflight):Ia(o)}function ta(o){try{return o&&o.cssRules?o.cssRules:null}catch{return null}}function Ra(o){let e=o.querySelectorAll('style,link[rel~="stylesheet"]'),a=`n:${e.length}|`,r=0;for(let l=0;l<e.length;l++){let n=e[l];if(n.tagName==="STYLE"){let c=n.textContent?n.textContent.length:0;a+=`S${c}|`;let s=n.sheet,m=s?ta(s):null;m&&(r+=m.length)}else{let c=n.getAttribute("href")||"",s=n.getAttribute("media")||"all";a+=`L${c}|m:${s}|`;let m=n.sheet,d=m?ta(m):null;d&&(r+=d.length)}}let i=o.adoptedStyleSheets;return a+=`ass:${Array.isArray(i)?i.length:0}|tr:${r}`,a}function Ba(o,e,a){let r=ta(o);if(!r)return!1;for(let i=0;i<r.length;i++){if(a.budget<=0)return!1;let l=r[i],n=l&&l.cssText?l.cssText:"";a.budget--;for(let c of e)if(n.includes(c))return!0;if(l&&l.cssRules&&l.cssRules.length)for(let c=0;c<l.cssRules.length&&a.budget>0;c++){let s=l.cssRules[c],m=s&&s.cssText?s.cssText:"";a.budget--;for(let d of e)if(m.includes(d))return!0}if(a.budget<=0)return!1}return!1}function Ia(o=document){let e=Ra(o),a=ro.get(o);if(a&&a.fingerprint===e)return a.result;let r=["::before","::after","::first-letter",":before",":after",":first-letter","counter(","counters(","counter-increment","counter-reset"],i=o.querySelectorAll("style");for(let n=0;n<i.length;n++){let c=i[n].textContent||"";for(let s of r)if(c.includes(s))return ro.set(o,{fingerprint:e,result:!0}),!0}let l=o.adoptedStyleSheets;if(Array.isArray(l)&&l.length){let n={budget:Da};try{for(let c of l)if(Ba(c,r,n))return ro.set(o,{fingerprint:e,result:!0}),!0}catch{}}{let n=o.querySelectorAll('style,link[rel~="stylesheet"]'),c={budget:Da};for(let s=0;s<n.length&&c.budget>0;s++){let m=n[s],d=null;if(m.tagName,d=m.sheet||null,d&&Ba(d,r,c))return ro.set(o,{fingerprint:e,result:!0}),!0}}return o.querySelector('[style*="counter("], [style*="counters("]')?(ro.set(o,{fingerprint:e,result:!0}),!0):(ro.set(o,{fingerprint:e,result:!1}),!1)}var lo=new WeakMap,Fa=-1;function x0(o){return(o||"").replace(/"([^"]*)"/g,"$1")}function k0(o){if(!o)return"";let e=[],a=/"([^"]*)"/g,r;for(;r=a.exec(o);)e.push(r[1]);return e.length?e.join(""):x0(o)}function oa(o,e){let a=o.parentElement,r=a?lo.get(a):null;return r?{get(i,l){let n=e.get(i,l),c=r.get(l);return typeof c=="number"?Math.max(n,c):n},getStack(i,l){let n=e.getStack(i,l);if(!n.length)return n;let c=r.get(l);if(typeof c=="number"){let s=n.slice();return s[s.length-1]=Math.max(s[s.length-1],c),s}return n}}:e}function aa(o,e,a){let r=new Map;function i(s){let m=[];if(!s||s==="none")return m;for(let d of String(s).split(",")){let g=d.trim().split(/\s+/),u=g[0],y=Number.isFinite(Number(g[1]))?Number(g[1]):void 0;u&&m.push({name:u,num:y})}return m}let l=i(e==null?void 0:e.counterReset),n=i(e==null?void 0:e.counterIncrement);function c(s){if(r.has(s))return r.get(s).slice();let m=a.getStack(o,s);m=m.length?m.slice():[];let d=l.find(u=>u.name===s);if(d){let u=Number.isFinite(d.num)?d.num:0;m=m.length?[...m,u]:[u]}let g=n.find(u=>u.name===s);if(g){let u=Number.isFinite(g.num)?g.num:1;m.length===0&&(m=[0]),m[m.length-1]+=u}return r.set(s,m.slice()),m}return{get(s,m){let d=c(m);return d.length?d[d.length-1]:0},getStack(s,m){return c(m)},__incs:n}}function A0(o,e,a){let r;try{r=getComputedStyle(o,e)}catch{}let i=r==null?void 0:r.content;if(!i||i==="none"||i==="normal")return{text:"",incs:[]};let l=oa(o,a),n=aa(o,r,l),c=u0(i)?b0(i,o,n):i;return{text:k0(c),incs:n.__incs||[]}}async function Ga(o,e,a,r){var m,d,g;if(!(o instanceof Element)||!(e instanceof Element))return;let i=o.ownerDocument||document;if(!w0(i,a))return;let l=((m=D==null?void 0:D.session)==null?void 0:m.__counterEpoch)??0;if(Fa!==l&&(lo=new WeakMap,a&&(a.__counterCtx=null),Fa=l),!a.__counterCtx)try{a.__counterCtx=y0(o.ownerDocument||document)}catch{}let n=a.__counterCtx;for(let u of["::before","::after","::first-letter"])try{let y=pa(o,u);if(!y||y.content==="none"&&y.backgroundImage==="none"&&y.backgroundColor==="transparent"&&(y.borderStyle==="none"||parseFloat(y.borderWidth)===0)&&(!y.transform||y.transform==="none")&&y.display==="inline")continue;if(u==="::first-letter"){let G=getComputedStyle(o);if(!(y.color!==G.color||y.fontSize!==G.fontSize||y.fontWeight!==G.fontWeight))continue;let B=Array.from(e.childNodes).find(he=>{var fe;return he.nodeType===Node.TEXT_NODE&&((fe=he.textContent)==null?void 0:fe.trim().length)>0});if(!B)continue;let U=B.textContent,S=(d=U.match(/^([^\p{L}\p{N}\s]*[\p{L}\p{N}](?:['’])?)/u))==null?void 0:d[0],ee=U.slice((S==null?void 0:S.length)||0);if(!S||/[\uD800-\uDFFF]/.test(S))continue;let ce=document.createElement("span");ce.textContent=S,ce.dataset.snapdomPseudo="::first-letter";let ge=ga(y),ue=Uo(ge,"span");a.styleMap.set(ce,ue);let oe=document.createTextNode(ee);e.replaceChild(oe,B),e.insertBefore(ce,oe);continue}let p=y.content??"",h=p===""||p==="none"||p==="normal",{text:f,incs:w}=A0(o,u,n),b=y.backgroundImage,A=y.backgroundColor,x=y.fontFamily,C=parseInt(y.fontSize)||32,k=parseInt(y.fontWeight)||!1,_=y.color||"#000",z=y.borderStyle,P=parseFloat(y.borderWidth),T=y.transform,V=Yt(x),H=!h&&f!=="",O=b&&b!=="none",J=A&&A!=="transparent"&&A!=="rgba(0, 0, 0, 0)",se=z&&z!=="none"&&P>0,ne=T&&T!=="none";if(!(H||O||J||se||ne)){if(w&&w.length&&o.parentElement){let G=lo.get(o.parentElement)||new Map;for(let{name:B}of w){if(!B)continue;let U=oa(o,n),S=aa(o,getComputedStyle(o,u),U).get(o,B);G.set(B,S)}lo.set(o.parentElement,G)}continue}let N=document.createElement("span");N.dataset.snapdomPseudo=u,N.style.pointerEvents="none";let j=ga(y),W=Uo(j,"span");if(a.styleMap.set(N,W),V&&f&&f.length===1){let{dataUrl:G,width:B,height:U}=await fu(f,x,k,C,_),S=document.createElement("img");S.src=G,S.style=`height:${C}px;width:${B/U*C}px;object-fit:contain;`,N.appendChild(S),e.dataset.snapdomHasIcon="true"}else if(f&&f.startsWith("url(")){let G=Ho(f);if(G!=null&&G.trim())try{let B=document.createElement("img"),U=await Ht(To(G),{as:"dataURL",useProxy:r.useProxy});B.src=U.data,B.style=`width:${C}px;height:auto;object-fit:contain;`,N.appendChild(B)}catch(B){console.error(`[snapdom] Error in pseudo ${u} for`,o,B)}}else!V&&H&&(N.textContent=f);N.style.backgroundImage="none","maskImage"in N.style&&(N.style.maskImage="none"),"webkitMaskImage"in N.style&&(N.style.webkitMaskImage="none");try{N.style.backgroundRepeat=y.backgroundRepeat,N.style.backgroundSize=y.backgroundSize,y.backgroundPositionX&&y.backgroundPositionY?(N.style.backgroundPositionX=y.backgroundPositionX,N.style.backgroundPositionY=y.backgroundPositionY):N.style.backgroundPosition=y.backgroundPosition,N.style.backgroundOrigin=y.backgroundOrigin,N.style.backgroundClip=y.backgroundClip,N.style.backgroundAttachment=y.backgroundAttachment,N.style.backgroundBlendMode=y.backgroundBlendMode}catch{}if(O)try{let G=ua(b),B=await Promise.all(G.map(da));N.style.backgroundImage=B.join(", ")}catch(G){console.warn(`[snapdom] Failed to inline background-image for ${u}`,G)}J&&(N.style.backgroundColor=A);let Q=N.childNodes.length>0||((g=N.textContent)==null?void 0:g.trim())!==""||O||J||se||ne;if(w&&w.length&&o.parentElement){let G=lo.get(o.parentElement)||new Map,B=oa(o,n),U=aa(o,getComputedStyle(o,u),B);for(let{name:S}of w){if(!S)continue;let ee=U.get(o,S);G.set(S,ee)}lo.set(o.parentElement,G)}if(!Q)continue;u==="::before"?e.insertBefore(N,e.firstChild):e.appendChild(N)}catch(y){console.warn(`[snapdom] Failed to capture ${u} for`,o,y)}let c=Array.from(o.children),s=Array.from(e.children).filter(u=>!u.dataset.snapdomPseudo);for(let u=0;u<Math.min(c.length,s.length);u++)await Ga(c[u],s[u],a,r)}function L0(o,e){var x,C;if(!o||!(o instanceof Element))return;let a=o.ownerDocument||document,r=e||a,i=o instanceof SVGSVGElement?[o]:Array.from(o.querySelectorAll("svg"));if(i.length===0)return;let l=/url\(\s*#([^)]+)\)/g,n=["fill","stroke","filter","clip-path","mask","marker","marker-start","marker-mid","marker-end"],c=k=>window.CSS&&CSS.escape?CSS.escape(k):k.replace(/[^a-zA-Z0-9_-]/g,"\\$&"),s="http://www.w3.org/1999/xlink",m=k=>{if(!k||!k.getAttribute)return null;let _=k.getAttribute("href")||k.getAttribute("xlink:href")||(typeof k.getAttributeNS=="function"?k.getAttributeNS(s,"href"):null);if(_)return _;let z=k.attributes;if(!z)return null;for(let P=0;P<z.length;P++){let T=z[P];if(!T||!T.name)continue;if(T.name==="href")return T.value;let V=T.name.indexOf(":");if(V!==-1&&T.name.slice(V+1)==="href")return T.value}return null},d=new Set(Array.from(o.querySelectorAll("[id]")).map(k=>k.id)),g=new Set,u=!1,y=(k,_=null)=>{if(!k)return;l.lastIndex=0;let z;for(;z=l.exec(k);){u=!0;let P=(z[1]||"").trim();P&&(d.has(P)||(g.add(P),_&&!_.has(P)&&_.add(P)))}},p=k=>{let _=k.querySelectorAll("use");for(let P of _){let T=m(P);if(!T||!T.startsWith("#"))continue;u=!0;let V=T.slice(1).trim();V&&!d.has(V)&&g.add(V)}let z=k.querySelectorAll('*[style*="url("],*[fill^="url("], *[stroke^="url("],*[filter^="url("],*[clip-path^="url("],*[mask^="url("],*[marker^="url("],*[marker-start^="url("],*[marker-mid^="url("],*[marker-end^="url("]');for(let P of z){y(P.getAttribute("style")||"");for(let T of n)y(P.getAttribute(T))}};for(let k of i)p(k);if(!u)return;let h=o.querySelector("svg.inline-defs-container");h||(h=a.createElementNS("http://www.w3.org/2000/svg","svg"),h.classList.add("inline-defs-container"),h.setAttribute("aria-hidden","true"),h.setAttribute("style","position:absolute;width:0;height:0;overflow:hidden"),o.insertBefore(h,o.firstChild||null));let f=h.querySelector("defs")||null,w=k=>{if(!k||d.has(k))return null;let _=c(k),z=P=>{let T=r.querySelector(P);return T&&!o.contains(T)?T:null};return z(`svg defs > *#${_}`)||z(`svg > symbol#${_}`)||z(`*#${_}`)};if(!g.size)return;let b=new Set(g),A=new Set;for(;b.size;){let k=b.values().next().value;if(b.delete(k),!k||d.has(k)||A.has(k))continue;let _=w(k);if(!_){A.add(k);continue}f||(f=a.createElementNS("http://www.w3.org/2000/svg","defs"),h.appendChild(f));let z=_.cloneNode(!0);z.id||z.setAttribute("id",k),f.appendChild(z),A.add(k),d.add(k);let P=[z,...z.querySelectorAll("*")];for(let T of P){let V=m(T);if(V&&V.startsWith("#")){let O=V.slice(1).trim();O&&!d.has(O)&&!A.has(O)&&b.add(O)}let H=((x=T.getAttribute)==null?void 0:x.call(T,"style"))||"";H&&y(H,b);for(let O of n){let J=(C=T.getAttribute)==null?void 0:C.call(T,O);J&&y(J,b)}}}}function C0(o,e){var c;if(!o||!e)return;let a=o.scrollTop||0;if(!a)return;getComputedStyle(e).position==="static"&&(e.style.position="relative");let r=o.getBoundingClientRect(),i=o.clientHeight,l="data-snap-ph",n=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);for(;n.nextNode();){let s=n.currentNode,m=getComputedStyle(s),d=m.position;if(d!=="sticky"&&d!=="-webkit-sticky")continue;let g=ja(m.top),u=ja(m.bottom);if(g==null&&u==null)continue;let y=v0(s,o),p=z0(e,y,l);if(!p)continue;let h=s.getBoundingClientRect(),f=h.width,w=h.height,b=h.left-r.left;if(!(f>0&&w>0)||!Number.isFinite(b))continue;let A=g!=null?g+a:a+(i-w-u);if(!Number.isFinite(A))continue;let x=Number.parseInt(m.zIndex,10),C=Number.isFinite(x),k=C?Math.max(x,1)+1:2,_=C?x-1:0,z=p.cloneNode(!1);z.setAttribute(l,"1"),z.style.position="sticky",z.style.left=`${b}px`,z.style.top=`${A}px`,z.style.width=`${f}px`,z.style.height=`${w}px`,z.style.visibility="hidden",z.style.zIndex=String(_),z.style.overflow="hidden",z.style.background="transparent",z.style.boxShadow="none",z.style.filter="none",(c=p.parentElement)==null||c.insertBefore(z,p),p.style.position="absolute",p.style.left=`${b}px`,p.style.top=`${A}px`,p.style.bottom="auto",p.style.zIndex=String(k),p.style.pointerEvents="none"}}function ja(o){if(!o||o==="auto")return null;let e=Number.parseFloat(o);return Number.isFinite(e)?e:null}function v0(o,e){let a=[];for(let r=o;r&&r!==e;){let i=r.parentElement;if(!i)break;a.push(Array.prototype.indexOf.call(i.children,r)),r=i}return a.reverse()}function z0(o,e,a){let r=o;for(let i=0;i<e.length;i++)if(r=_0(r,a)[e[i]],!r)return null;return r instanceof HTMLElement?r:null}function _0(o,e){let a=[],r=o.children;for(let i=0;i<r.length;i++){let l=r[i];l.hasAttribute(e)||a.push(l)}return a}function S0(o){let e=getComputedStyle(o),a=e.outlineStyle,r=e.outlineWidth,i=e.borderStyle,l=e.borderWidth,n=a!=="none"&&parseFloat(r)>0,c=i==="none"||parseFloat(l)===0;n&&c&&(o.style.border=`${r} solid transparent`)}async function N0(o,e={}){var s,m;let a={styleMap:D.session.styleMap,styleCache:D.session.styleCache,nodeMap:D.session.nodeMap},r,i="",l="";S0(o);try{L0(o)}catch(d){console.warn("inlineExternal defs or symbol failed:",d)}try{r=await Go(o,a,e,o)}catch(d){throw console.warn("deepClone failed:",d),d}try{await Ga(o,r,a,e)}catch(d){console.warn("inlinePseudoElements failed:",d)}await g0(r);try{let d=r.querySelectorAll("style[data-sd]");for(let g of d)l+=g.textContent||"",g.remove()}catch{}let n=lu(a.styleMap);i=Array.from(n.entries()).map(([d,g])=>`.${g}{${d}}`).join(""),i=l+i;for(let[d,g]of a.styleMap.entries()){if(d.tagName==="STYLE")continue;if(d.getRootNode&&d.getRootNode()instanceof ShadowRoot){d.setAttribute("style",g.replace(/;/g,"; "));continue}let u=n.get(g);u&&d.classList.add(u);let y=(s=d.style)==null?void 0:s.backgroundImage,p=(m=d.dataset)==null?void 0:m.snapdomHasIcon;y&&y!=="none"&&(d.style.backgroundImage=y),p&&(d.style.verticalAlign="middle",d.style.display="inline")}for(let[d,g]of a.nodeMap.entries()){let u=g.scrollLeft,y=g.scrollTop;if((u||y)&&d instanceof HTMLElement){d.style.overflow="hidden",d.style.scrollbarWidth="none",d.style.msOverflowStyle="none";let p=document.createElement("div");for(p.style.transform=`translate(${-u}px, ${-y}px)`,p.style.willChange="transform",p.style.display="inline-block",p.style.width="100%";d.firstChild;)p.appendChild(d.firstChild);d.appendChild(p)}}let c=r instanceof HTMLElement&&r.firstElementChild instanceof HTMLElement?r.firstElementChild:r;if(C0(o,c),o===a.nodeMap.get(r)){let d=a.styleCache.get(o)||window.getComputedStyle(o);a.styleCache.set(o,d);let g=Og(d.transform);r.style.margin="0",r.style.top="auto",r.style.left="auto",r.style.right="auto",r.style.bottom="auto",r.style.animation="none",r.style.transition="none",r.style.willChange="auto",r.style.float="none",r.style.clear="none",r.style.transform=g||""}for(let[d,g]of a.nodeMap.entries())g.tagName==="PRE"&&(d.style.marginTop="0",d.style.marginBlockStart="0");return{clone:r,classCSS:i,styleCache:a.styleCache}}function M0(o){var m,d,g,u;let e=parseInt(((m=o.dataset)==null?void 0:m.snapdomWidth)||"",10)||0,a=parseInt(((d=o.dataset)==null?void 0:d.snapdomHeight)||"",10)||0,r=parseInt(o.getAttribute("width")||"",10)||0,i=parseInt(o.getAttribute("height")||"",10)||0,l=parseFloat(((g=o.style)==null?void 0:g.width)||"")||0,n=parseFloat(((u=o.style)==null?void 0:u.height)||"")||0,c=e||l||r||o.width||o.naturalWidth||100,s=a||n||i||o.height||o.naturalHeight||100;return{width:c,height:s}}async function P0(o,e={}){let a=Array.from(o.querySelectorAll("img")),r=async i=>{if(!i.getAttribute("src")){let d=i.currentSrc||i.src||"";d&&i.setAttribute("src",d)}i.removeAttribute("srcset"),i.removeAttribute("sizes");let l=i.src||"";if(!l)return;let n=await Ht(l,{as:"dataURL",useProxy:e.useProxy});if(n.ok&&typeof n.data=="string"&&n.data.startsWith("data:")){i.src=n.data,i.width||(i.width=i.naturalWidth||100),i.height||(i.height=i.naturalHeight||100);return}let{width:c,height:s}=M0(i),{fallbackURL:m}=e||{};if(m)try{let d=typeof m=="function"?await m({width:c,height:s,src:l,element:i}):m;if(d){let g=await Ht(d,{as:"dataURL",useProxy:e.useProxy});i.src=g.data,i.width||(i.width=c),i.height||(i.height=s);return}}catch{}if(e.placeholders!==!1){let d=document.createElement("div");d.style.cssText=[`width:${c}px`,`height:${s}px`,"background:#ccc","display:inline-block","text-align:center",`line-height:${s}px`,"color:#666","font-size:12px","overflow:hidden"].join(";"),d.textContent="img",i.replaceWith(d)}else{let d=document.createElement("div");d.style.cssText=`display:inline-block;width:${c}px;height:${s}px;visibility:hidden;`,i.replaceWith(d)}};for(let i=0;i<a.length;i+=4){let l=a.slice(i,i+4).map(r);await Promise.allSettled(l)}}function V0(o){if(!o)return()=>{};let e=T0(o);if(e<=0)return()=>{};if(!R0(o))return()=>{};let a=getComputedStyle(o),r=Math.round(E0(a)*e+D0(a)),i=o.textContent??"",l=i;if(o.scrollHeight<=r+.5)return()=>{};let n=0,c=i.length,s=-1;for(;n<=c;){let m=n+c>>1;o.textContent=i.slice(0,m)+"…",o.scrollHeight<=r+.5?(s=m,n=m+1):c=m-1}return o.textContent=(s>=0?i.slice(0,s):"")+"…",()=>{o.textContent=l}}function T0(o){let e=getComputedStyle(o),a=e.getPropertyValue("-webkit-line-clamp")||e.getPropertyValue("line-clamp");a=(a||"").trim();let r=parseInt(a,10);return Number.isFinite(r)&&r>0?r:0}function E0(o){let e=(o.lineHeight||"").trim(),a=parseFloat(o.fontSize)||16;return!e||e==="normal"?Math.round(a*1.2):e.endsWith("px")?parseFloat(e):/^\d+(\.\d+)?$/.test(e)?Math.round(parseFloat(e)*a):e.endsWith("%")?Math.round(parseFloat(e)/100*a):Math.round(a*1.2)}function D0(o){return(parseFloat(o.paddingTop)||0)+(parseFloat(o.paddingBottom)||0)}function R0(o){return o.childElementCount>0?!1:Array.from(o.childNodes).some(e=>e.nodeType===Node.TEXT_NODE)}function B0(o,e){if(!o||!e||!e.style)return;let a=getComputedStyle(o);try{e.style.boxShadow="none"}catch{}try{e.style.textShadow="none"}catch{}try{e.style.outline="none"}catch{}let r=(a.filter||"").replace(/\bblur\([^()]*\)\s*/gi,"").replace(/\bdrop-shadow\([^()]*\)\s*/gi,"").trim().replace(/\s+/g," ");try{e.style.filter=r.length?r:"none"}catch{}}function I0(o){let e=document.createTreeWalker(o,NodeFilter.SHOW_COMMENT),a=[];for(;e.nextNode();)a.push(e.currentNode);for(let r of a)r.remove()}function F0(o,e={}){let{stripFrameworkDirectives:a=!0}=e,r=new Set(["xml","xlink"]),i=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);for(;i.nextNode();){let l=i.currentNode;for(let n of Array.from(l.attributes)){let c=n.name;if(c.includes("@")){l.removeAttribute(c);continue}if(c.includes(":")){let s=c.split(":",1)[0];if(!r.has(s)){l.removeAttribute(c);continue}}if(a&&(c.startsWith("x-")||c.startsWith("v-")||c.startsWith(":")||c.startsWith("on:")||c.startsWith("bind:")||c.startsWith("let:")||c.startsWith("class:"))){l.removeAttribute(c);continue}}}}function G0(o,e={}){o&&(F0(o,e),I0(o))}function j0(o){var e;try{let a=((e=o.getAttribute)==null?void 0:e.call(o,"style"))||"";return/\b(height|width|block-size|inline-size)\s*:/.test(a)}catch{return!1}}function W0(o){return o instanceof HTMLImageElement||o instanceof HTMLCanvasElement||o instanceof HTMLVideoElement||o instanceof HTMLIFrameElement||o instanceof SVGElement||o instanceof HTMLObjectElement||o instanceof HTMLEmbedElement}function Z0(o,e){if(!(o instanceof Element)||j0(o)||W0(o))return!1;let a=e.position;if(a==="absolute"||a==="fixed"||a==="sticky")return!1;let r=e.display||"";return!(r.includes("flex")||r.includes("grid")||r.startsWith("table")||e.transform&&e.transform!=="none")}function X0(o,e,a=new Map){function r(i,l){if(!(i instanceof Element)||!(l instanceof Element))return;let n=i.childElementCount>l.childElementCount,c=a.get(i)||getComputedStyle(i);if(a.has(i)||a.set(i,c),n&&Z0(i,c)){l.style.height||(l.style.height="auto"),l.style.width||(l.style.width="auto"),l.style.removeProperty("block-size"),l.style.removeProperty("inline-size"),l.style.minHeight||(l.style.minHeight="0"),l.style.minWidth||(l.style.minWidth="0"),l.style.maxHeight||(l.style.maxHeight="none"),l.style.maxWidth||(l.style.maxWidth="none");let d=c.overflowY||c.overflowBlock||"visible",g=c.overflowX||c.overflowInline||"visible";(d!=="visible"||g!=="visible")&&(l.style.overflow="visible")}let s=Array.from(i.children),m=Array.from(l.children);for(let d=0;d<Math.min(s.length,m.length);d++)r(s[d],m[d])}r(o,e)}function H0(o){let e=getComputedStyle(o);return!(e.display==="none"||e.position==="absolute"||e.position==="fixed"||e.position==="sticky"||(e.cssFloat||e.float||"none")!=="none"||e.transform&&e.transform!=="none")}function O0(o,e){if(!(o instanceof Element))return!1;if(o.getAttribute("data-capture")==="exclude"&&(e==null?void 0:e.excludeMode)==="remove")return!0;if(Array.isArray(e==null?void 0:e.exclude))for(let a of e.exclude)try{if(o.matches(a))return e.excludeMode==="remove"}catch{}return!1}function Y0(o,e){let a=getComputedStyle(o),r=o.getBoundingClientRect(),i=1/0,l=-1/0,n=!1,c=Array.from(o.children);for(let y of c){if(O0(y,e)||!H0(y))continue;let p=y.getBoundingClientRect(),h=p.top-r.top,f=p.bottom-r.top;f<=h||(h<i&&(i=h),f>l&&(l=f),n=!0)}let s=n?Math.max(0,l-i):0,m=parseFloat(a.borderTopWidth)||0,d=parseFloat(a.borderBottomWidth)||0,g=parseFloat(a.paddingTop)||0,u=parseFloat(a.paddingBottom)||0;return m+d+g+u+s}var $=(o,e=3)=>Number.isFinite(o)?Math.round(o*10**e)/10**e:o;function U0(o){var c;let e=o.boxShadow||"";if(!e||e==="none")return{top:0,right:0,bottom:0,left:0};let a=e.split(/\),(?=(?:[^()]*\([^()]*\))*[^()]*$)/).map(s=>s.trim()),r=0,i=0,l=0,n=0;for(let s of a){let m=((c=s.match(/-?\d+(\.\d+)?px/g))==null?void 0:c.map(f=>parseFloat(f)))||[];if(m.length<2)continue;let[d,g,u=0,y=0]=m,p=Math.abs(d)+u+y,h=Math.abs(g)+u+y;i=Math.max(i,p+Math.max(d,0)),n=Math.max(n,p+Math.max(-d,0)),l=Math.max(l,h+Math.max(g,0)),r=Math.max(r,h+Math.max(-g,0))}return{top:Math.ceil(r),right:Math.ceil(i),bottom:Math.ceil(l),left:Math.ceil(n)}}function J0(o){let e=(o.filter||"").match(/blur\(\s*([0-9.]+)px\s*\)/),a=e?Math.ceil(parseFloat(e[1])||0):0;return{top:a,right:a,bottom:a,left:a}}function K0(o){if((o.outlineStyle||"none")==="none")return{top:0,right:0,bottom:0,left:0};let e=Math.ceil(parseFloat(o.outlineWidth||"0")||0);return{top:e,right:e,bottom:e,left:e}}function Q0(o){var s;let e=`${o.filter||""} ${o.webkitFilter||""}`.trim();if(!e||e==="none")return{bleed:{top:0,right:0,bottom:0,left:0},has:!1};let a=e.match(/drop-shadow\((?:[^()]|\([^()]*\))*\)/gi)||[],r=0,i=0,l=0,n=0,c=!1;for(let m of a){c=!0;let d=((s=m.match(/-?\d+(?:\.\d+)?px/gi))==null?void 0:s.map(f=>parseFloat(f)))||[],[g=0,u=0,y=0]=d,p=Math.abs(g)+y,h=Math.abs(u)+y;i=Math.max(i,p+Math.max(g,0)),n=Math.max(n,p+Math.max(-g,0)),l=Math.max(l,h+Math.max(u,0)),r=Math.max(r,h+Math.max(-u,0))}return{bleed:{top:$(r),right:$(i),bottom:$(l),left:$(n)},has:c}}function q0(o,e){if(!o||!e||!e.style)return null;let a=getComputedStyle(o);try{e.style.transformOrigin="0 0"}catch{}try{"translate"in e.style&&(e.style.translate="none"),"rotate"in e.style&&(e.style.rotate="none")}catch{}let r=a.transform||"none";if(!r||r==="none")try{let l=Za(o);if(l.a===1&&l.b===0&&l.c===0&&l.d===1)return e.style.transform="none",{a:1,b:0,c:0,d:1}}catch{}let i=r.match(/^matrix\(\s*([^)]+)\)$/i);if(i){let l=i[1].split(",").map(n=>parseFloat(n.trim()));if(l.length===6&&l.every(Number.isFinite)){let[n,c,s,m]=l,d=Math.sqrt(n*n+c*c)||0,g=0,u=0,y=0,p=0,h=0,f=0;d>0&&(g=n/d,u=c/d,y=g*s+u*m,p=s-g*y,h=m-u*y,f=Math.sqrt(p*p+h*h)||0,f>0?y=y/f:y=0);let w=d,b=0,A=y*f,x=f;try{e.style.transform=`matrix(${w}, ${b}, ${A}, ${x}, 0, 0)`}catch{}return{a:w,b,c:A,d:x}}}try{let l=String(r).trim();return e.style.transform=l+" translate(0px, 0px) rotate(0deg)",null}catch{return null}}function Wa(o,e,a,r,i){let l=a.a,n=a.b,c=a.c,s=a.d,m=a.e||0,d=a.f||0;function g(w,b){let A=w-r,x=b-i,C=l*A+c*x,k=n*A+s*x;return C+=r+m,k+=i+d,[C,k]}let u=[g(0,0),g(o,0),g(0,e),g(o,e)],y=1/0,p=1/0,h=-1/0,f=-1/0;for(let[w,b]of u)w<y&&(y=w),b<p&&(p=b),w>h&&(h=w),b>f&&(f=b);return{minX:y,minY:p,maxX:h,maxY:f,width:h-y,height:f-p}}function $0(o,e,a){let r=(o.transformOrigin||"0 0").trim().split(/\s+/),[i,l]=[r[0]||"0",r[1]||"0"],n=(c,s)=>{let m=c.toLowerCase();return m==="left"||m==="top"?0:m==="center"?s/2:m==="right"||m==="bottom"?s:m.endsWith("px")?parseFloat(m)||0:m.endsWith("%")?(parseFloat(m)||0)*s/100:/^-?\d+(\.\d+)?$/.test(m)&&parseFloat(m)||0};return{ox:n(i,e),oy:n(l,a)}}function ef(o){var i,l,n,c,s,m,d,g;let e={rotate:"0deg",scale:null,translate:null},a=typeof o.computedStyleMap=="function"?o.computedStyleMap():null;if(a){let u=f=>{try{return typeof a.has=="function"&&!a.has(f)||typeof a.get!="function"?null:a.get(f)}catch{return null}},y=u("rotate");if(y)if(y.angle){let f=y.angle;e.rotate=f.unit==="rad"?f.value*180/Math.PI+"deg":f.value+f.unit}else y.unit?e.rotate=y.unit==="rad"?y.value*180/Math.PI+"deg":y.value+y.unit:e.rotate=String(y);else{let f=getComputedStyle(o);e.rotate=f.rotate&&f.rotate!=="none"?f.rotate:"0deg"}let p=u("scale");if(p){let f="x"in p&&((i=p.x)==null?void 0:i.value)!=null?p.x.value:Array.isArray(p)?(l=p[0])==null?void 0:l.value:Number(p)||1,w="y"in p&&((n=p.y)==null?void 0:n.value)!=null?p.y.value:Array.isArray(p)?(c=p[1])==null?void 0:c.value:f;e.scale=`${f} ${w}`}else{let f=getComputedStyle(o);e.scale=f.scale&&f.scale!=="none"?f.scale:null}let h=u("translate");if(h){let f="x"in h&&"value"in h.x?h.x.value:Array.isArray(h)?(s=h[0])==null?void 0:s.value:0,w="y"in h&&"value"in h.y?h.y.value:Array.isArray(h)?(m=h[1])==null?void 0:m.value:0,b="x"in h&&((d=h.x)!=null&&d.unit)?h.x.unit:"px",A="y"in h&&((g=h.y)!=null&&g.unit)?h.y.unit:"px";e.translate=`${f}${b} ${w}${A}`}else{let f=getComputedStyle(o);e.translate=f.translate&&f.translate!=="none"?f.translate:null}return e}let r=getComputedStyle(o);return e.rotate=r.rotate&&r.rotate!=="none"?r.rotate:"0deg",e.scale=r.scale&&r.scale!=="none"?r.scale:null,e.translate=r.translate&&r.translate!=="none"?r.translate:null,e}var ia=null;function tf(){if(ia)return ia;let o=document.createElement("div");return o.id="snapdom-measure-slot",o.setAttribute("aria-hidden","true"),Object.assign(o.style,{position:"absolute",left:"-99999px",top:"0px",width:"0px",height:"0px",overflow:"hidden",opacity:"0",pointerEvents:"none",contain:"size layout style"}),document.documentElement.appendChild(o),ia=o,o}function of(o){let e=tf(),a=document.createElement("div");a.style.transformOrigin="0 0",o.baseTransform&&(a.style.transform=o.baseTransform),o.rotate&&(a.style.rotate=o.rotate),o.scale&&(a.style.scale=o.scale),o.translate&&(a.style.translate=o.translate),e.appendChild(a);let r=Za(a);return e.removeChild(a),r}function af(o){let e=getComputedStyle(o),a=e.transform||"none";if(a!=="none"&&!/^matrix\(\s*1\s*,\s*0\s*,\s*0\s*,\s*1\s*,\s*0\s*,\s*0\s*\)$/i.test(a))return!0;let r=e.rotate&&e.rotate!=="none"&&e.rotate!=="0deg",i=e.scale&&e.scale!=="none"&&e.scale!=="1",l=e.translate&&e.translate!=="none"&&e.translate!=="0px 0px";return!!(r||i||l)}function Za(o){let e=getComputedStyle(o).transform;if(!e||e==="none")return new DOMMatrix;try{return new DOMMatrix(e)}catch{return new WebKitCSSMatrix(e)}}async function Xa(o,e){var b;if(!o)throw new Error("Element cannot be null or undefined");Hg(e.cache);let a=e.fast,r=e.outerTransforms!==!1,i=!!e.outerShadows,l={element:o,options:e,plugins:e.plugins},n,c,s,m="",d="",g,u,y=null;await Ut("beforeSnap",l),await Ut("beforeClone",l);let p=V0(l.element);try{({clone:n,classCSS:c,styleCache:s}=await N0(l.element,l.options)),!r&&n&&(y=q0(l.element,n)),!i&&n&&B0(l.element,n)}finally{p()}if(l={clone:n,classCSS:c,styleCache:s,...l},await Ut("afterClone",l),G0(l.clone),((b=l.options)==null?void 0:b.excludeMode)==="remove")try{X0(l.element,l.clone,l.styleCache)}catch(A){console.warn("[snapdom] shrink pass failed:",A)}try{await uu(l.clone,l.element)}catch{}await new Promise(A=>{ao(async()=>{await P0(l.clone,l.options),A()},{fast:a})}),await new Promise(A=>{ao(async()=>{await Tu(l.element,l.clone,l.styleCache,l.options),A()},{fast:a})}),e.embedFonts&&await new Promise(A=>{ao(async()=>{let x=Mu(l.element),C=Pu(l.element);if(Qt()){let k=new Set(Array.from(x).map(_=>String(_).split("__")[0]).filter(Boolean));await Vu(k,1)}m=await Nu({required:x,usedCodepoints:C,preCached:!1,exclude:l.options.excludeFonts,useProxy:l.options.useProxy}),A()},{fast:a})});let h=iu(l.clone).sort(),f=h.join(",");D.baseStyle.has(f)?d=D.baseStyle.get(f):await new Promise(A=>{ao(()=>{d=ru(h),D.baseStyle.set(f,d),A()},{fast:a})}),l={fontsCSS:m,baseCSS:d,...l},await Ut("beforeRender",l),await new Promise(A=>{ao(()=>{var Be;let x=getComputedStyle(l.element),C=l.element.getBoundingClientRect(),k=Math.max(1,$(l.element.offsetWidth||parseFloat(x.width)||C.width||1)),_=Math.max(1,$(l.element.offsetHeight||parseFloat(x.height)||C.height||1));if(((Be=l.options)==null?void 0:Be.excludeMode)==="remove"){let xe=Y0(l.element,l.options);Number.isFinite(xe)&&xe>0&&(_=Math.max(1,Math.min(_,$(xe+1))))}let z=(xe,ke=NaN)=>{let ze=typeof xe=="string"?parseFloat(xe):xe;return Number.isFinite(ze)?ze:ke},P=z(l.options.width),T=z(l.options.height),V=k,H=_,O=Number.isFinite(P),J=Number.isFinite(T),se=_>0?k/_:1;O&&J?(V=Math.max(1,$(P)),H=Math.max(1,$(T))):O?(V=Math.max(1,$(P)),H=Math.max(1,$(V/(se||1)))):J?(H=Math.max(1,$(T)),V=Math.max(1,$(H*(se||1)))):(V=k,H=_);let ne=0,N=0,j=k,W=_;if(!r&&y&&Number.isFinite(y.a)){let xe={a:y.a,b:y.b||0,c:y.c||0,d:y.d||1,e:0,f:0},ke=Wa(k,_,xe,0,0);ne=$(ke.minX),N=$(ke.minY),j=$(ke.maxX),W=$(ke.maxY)}else if(r&&rf(l.element)){let xe=x.transform&&x.transform!=="none"?x.transform:"",ke=ef(l.element),ze=of({baseTransform:xe,rotate:ke.rotate||"0deg",scale:ke.scale,translate:ke.translate}),{ox:Xe,oy:He}=$0(x,k,_),Oe=ze.is2D?ze:new DOMMatrix(ze.toString()),Me=Wa(k,_,Oe,Xe,He);ne=$(Me.minX),N=$(Me.minY),j=$(Me.maxX),W=$(Me.maxY)}let Q=U0(x),G=J0(x),B=K0(x),U=Q0(x),S=i?{top:$(Q.top+G.top+B.top+U.bleed.top),right:$(Q.right+G.right+B.right+U.bleed.right),bottom:$(Q.bottom+G.bottom+B.bottom+U.bleed.bottom),left:$(Q.left+G.left+B.left+U.bleed.left)}:{top:0,right:0,bottom:0,left:0};ne=$(ne-S.left),N=$(N-S.top),j=$(j+S.right),W=$(W+S.bottom);let ee=Math.max(1,$(j-ne)),ce=Math.max(1,$(W-N)),ge=O||J?$(V/k):1,ue=J||O?$(H/_):1,oe=Math.max(1,$(ee*ge)),he=Math.max(1,$(ce*ue)),fe="http://www.w3.org/2000/svg",_e=Qt()?1:0,Y=$(_e+(r?0:1)),ie=document.createElementNS(fe,"foreignObject"),Fe=$(ne),Ge=$(N);ie.setAttribute("x",String($(-(Fe-Y)))),ie.setAttribute("y",String($(-(Ge-Y)))),ie.setAttribute("width",String($(k+Y*2))),ie.setAttribute("height",String($(_+Y*2))),ie.style.overflow="visible";let De=document.createElement("style");De.textContent=l.baseCSS+l.fontsCSS+"svg{overflow:visible;} foreignObject{overflow:visible;}"+l.classCSS,ie.appendChild(De);let ve=document.createElement("div");ve.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),ve.style.width=`${$(k)}px`,ve.style.height=`${$(_)}px`,ve.style.overflow="visible",l.clone.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),ve.appendChild(l.clone),ie.appendChild(ve);let je=new XMLSerializer().serializeToString(ie),Ve=$(ee+Y*2),Te=$(ce+Y*2),Re=O||J;e.meta={w0:k,h0:_,vbW:Ve,vbH:Te,targetW:V,targetH:H};let We=Qt()&&Re?Ve:$(oe+Y*2),Ze=Qt()&&Re?Te:$(he+Y*2);u=`<svg xmlns="${fe}" width="${We}" height="${Ze}" viewBox="0 0 ${Ve} ${Te}">`+je+"</svg>",g=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(u)}`,l={svgString:u,dataURL:g,...l},A()},{fast:a})}),await Ut("afterRender",l);let w=document.getElementById("snapdom-sandbox");return w&&w.style.position==="absolute"&&w.remove(),l.dataURL}function rf(o){return af(o)}function lf(o){if(typeof o=="string"){let e=o.toLowerCase().trim();if(e==="disabled"||e==="full"||e==="auto"||e==="soft")return e}return"soft"}function nf(o={}){let e=o.format??"png";e==="jpg"&&(e="jpeg");let a=lf(o.cache);return{debug:o.debug??!1,fast:o.fast??!0,scale:o.scale??1,exclude:o.exclude??[],excludeMode:o.excludeMode??"hide",filter:o.filter??null,filterMode:o.filterMode??"hide",placeholders:o.placeholders!==!1,embedFonts:o.embedFonts??!1,iconFonts:Array.isArray(o.iconFonts)?o.iconFonts:o.iconFonts?[o.iconFonts]:[],localFonts:Array.isArray(o.localFonts)?o.localFonts:[],excludeFonts:o.excludeFonts??void 0,fallbackURL:o.fallbackURL??void 0,cache:a,useProxy:typeof o.useProxy=="string"?o.useProxy:"",width:o.width??null,height:o.height??null,format:e,type:o.type??"svg",quality:o.quality??.92,dpr:o.dpr??(window.devicePixelRatio||1),backgroundColor:o.backgroundColor??(["jpeg","webp"].includes(e)?"#ffffff":null),filename:o.filename??"snapDOM",outerTransforms:o.outerTransforms??!0,outerShadows:o.outerShadows??!1}}function sf(...o){return Eu(...o),we}var we=Object.assign(cf,{plugins:sf}),Ha=Symbol("snapdom.internal"),Jt=Symbol("snapdom.internal.silent"),ra=!1;async function cf(o,e){if(!o)throw new Error("Element cannot be null or undefined");let a=nf(e);if(Bu(a,e&&e.plugins),Qt()&&(a.embedFonts===!0||df(o)))for(let r=0;r<3;r++)try{await mf(o,e),ra=!1}catch{}return a.iconFonts&&a.iconFonts.length>0&&su(a.iconFonts),a.snap||(a.snap={toPng:(r,i)=>we.toPng(r,i),toSvg:(r,i)=>we.toSvg(r,i)}),we.capture(o,a,Ha)}we.capture=async(o,e,a)=>{if(a!==Ha)throw new Error("[snapdom.capture] is internal. Use snapdom(...) instead.");let r=await Xa(o,e),i={img:async(p,h)=>{let{toImg:f}=await Promise.resolve().then(()=>Wo);return f(r,{...p,...h||{}})},svg:async(p,h)=>{let{toSvg:f}=await Promise.resolve().then(()=>Wo);return f(r,{...p,...h||{}})},canvas:async(p,h)=>{let{toCanvas:f}=await Promise.resolve().then(()=>ei);return f(r,{...p,...h||{}})},blob:async(p,h)=>{let{toBlob:f}=await Promise.resolve().then(()=>oi);return f(r,{...p,...h||{}})},png:async(p,h)=>{let{rasterize:f}=await Promise.resolve().then(()=>qt);return f(r,{...p,...h||{},format:"png"})},jpeg:async(p,h)=>{let{rasterize:f}=await Promise.resolve().then(()=>qt);return f(r,{...p,...h||{},format:"jpeg"})},webp:async(p,h)=>{let{rasterize:f}=await Promise.resolve().then(()=>qt);return f(r,{...p,...h||{},format:"webp"})},download:async(p,h)=>{let{download:f}=await Promise.resolve().then(()=>My);return f(r,{...p,...h||{}})}},l={...e,export:{url:r},exports:{svg:async p=>{let{toSvg:h}=await Promise.resolve().then(()=>Wo);return h(r,{...e,...p||{},[Jt]:!0})},canvas:async p=>{let{toCanvas:h}=await Promise.resolve().then(()=>ei);return h(r,{...e,...p||{},[Jt]:!0})},png:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"png",[Jt]:!0})},jpeg:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"jpeg",[Jt]:!0})},jpg:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"jpeg",[Jt]:!0})},webp:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"webp",[Jt]:!0})},blob:async p=>{let{toBlob:h}=await Promise.resolve().then(()=>oi);return h(r,{...e,...p||{},[Jt]:!0})},img:async p=>{let{toImg:h}=await Promise.resolve().then(()=>Wo);return h(r,{...e,...p||{},[Jt]:!0})}}},n=await Du("defineExports",l),c=Object.assign({},...n.filter(p=>p&&typeof p=="object")),s={...i,...c};s.jpeg&&!s.jpg&&(s.jpg=(p,h)=>s.jpeg(p,h));function m(p,h){let f={...e,...h||{}};return(p==="jpeg"||p==="jpg")&&(f.backgroundColor==null||f.backgroundColor==="transparent")&&(f.backgroundColor="#ffffff"),f}let d=!1,g=Promise.resolve();async function u(p,h){let f=async()=>{let w=s[p];if(!w)throw new Error(`[snapdom] Unknown export type: ${p}`);let b=m(p,h),A={...e,export:{type:p,options:b,url:r}};await Ut("beforeExport",A);let x=await w(A,b);return await Ut("afterExport",A,x),d||(d=!0,await Ut("afterSnap",e)),x};return g=g.then(f)}let y={url:r,toRaw:()=>r,to:(p,h)=>u(p,h),toImg:p=>u("img",p),toSvg:p=>u("svg",p),toCanvas:p=>u("canvas",p),toBlob:p=>u("blob",p),toPng:p=>u("png",p),toJpg:p=>u("jpg",p),toWebp:p=>u("webp",p),download:p=>u("download",p)};for(let p of Object.keys(s)){let h="to"+p.charAt(0).toUpperCase()+p.slice(1);y[h]||(y[h]=f=>u(p,f))}return y},we.toRaw=(o,e)=>we(o,e).then(a=>a.toRaw()),we.toImg=(o,e)=>we(o,e).then(a=>a.toImg()),we.toSvg=(o,e)=>we(o,e).then(a=>a.toSvg()),we.toCanvas=(o,e)=>we(o,e).then(a=>a.toCanvas()),we.toBlob=(o,e)=>we(o,e).then(a=>a.toBlob()),we.toPng=(o,e)=>we(o,{...e,format:"png"}).then(a=>a.toPng()),we.toJpg=(o,e)=>we(o,{...e,format:"jpeg"}).then(a=>a.toJpg()),we.toWebp=(o,e)=>we(o,{...e,format:"webp"}).then(a=>a.toWebp()),we.download=(o,e)=>we(o,e).then(a=>a.download());async function mf(o,e){if(ra)return;let a={...e,fast:!0,embedFonts:!0,scale:.2},r;try{r=await Xa(o,a)}catch{}await new Promise(i=>requestAnimationFrame(()=>requestAnimationFrame(i))),r&&await new Promise(i=>{let l=new Image;try{l.decoding="sync",l.loading="eager"}catch{}l.style.cssText="position:fixed;left:0px;top:0px;width:10px;height:10px;opacity:0.01;pointer-events:none;",l.src=r,document.body.appendChild(l),(async()=>{try{typeof l.decode=="function"&&await l.decode()}catch{}let n=performance.now();for(;!(l.complete&&l.naturalWidth>0)&&performance.now()-n<900;)await new Promise(c=>setTimeout(c,200));await new Promise(c=>requestAnimationFrame(c));try{l.remove()}catch{}i()})()}),o.querySelectorAll("canvas").forEach(i=>{try{let l=i.getContext("2d",{willReadFrequently:!0});l&&l.getImageData(0,0,1,1)}catch{}}),ra=!0}function df(o){let e=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);for(;e.nextNode();){let a=e.currentNode,r=getComputedStyle(a),i=r.backgroundImage&&r.backgroundImage!=="none",l=r.maskImage&&r.maskImage!=="none"||r.webkitMaskImage&&r.webkitMaskImage!=="none";if(i||l||a.tagName==="CANVAS")return!0}return!1}class hf{constructor(){pe(this,"frames",[]);pe(this,"captureRect",null);pe(this,"_isRecording",!1);pe(this,"_frameDelay",1e3);pe(this,"canvas",null);pe(this,"ctx",null);pe(this,"logoImage",null);pe(this,"logoLoaded",!1)}setArea(e){this.captureRect=e;const a=window.devicePixelRatio||1;this.canvas=document.createElement("canvas"),this.canvas.width=e.width*a,this.canvas.height=e.height*a,this.ctx=this.canvas.getContext("2d"),this.ctx.scale(a,a),this.loadLogo()}loadLogo(){this.logoImage&&this.logoLoaded||(this.logoImage=new Image,this.logoImage.onload=()=>{this.logoLoaded=!0,console.log("[GifRecorder] Logo 加载完成")},this.logoImage.onerror=e=>{console.error("[GifRecorder] Logo 加载失败:",e)},this.logoImage.src="data:image/png;base64,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")}setFrameDelay(e){this._frameDelay=e}getArea(){return this.captureRect}startRecording(){this._isRecording=!0,this.frames=[]}stopRecording(){this._isRecording=!1}async captureFrame(e,a){var i;if(!this._isRecording||!this.captureRect||!this.canvas||!this.ctx){console.log("[GifRecorder] captureFrame 跳过:",{isRecording:this._isRecording,hasRect:!!this.captureRect,hasCanvas:!!this.canvas});return}const r=e||document.body;try{console.log("[GifRecorder] 开始 snapdom 截图(全屏模式)...");const n=await(await we(r,{filter:c=>!(c instanceof HTMLElement&&c.classList.contains("capture-exclude"))})).toPng();if(console.log("[GifRecorder] snapdom 截图完成, img:",(i=n==null?void 0:n.src)==null?void 0:i.length),!n||!n.src){console.error("[GifRecorder] snapdom 返回空图片");return}await new Promise((c,s)=>{n.complete&&n.naturalWidth>0?(console.log("[GifRecorder] 图片已加载, 开始裁剪区域"),this.processImage(n,a),c()):(n.onload=()=>{console.log("[GifRecorder] 图片加载完成, 开始裁剪区域"),this.processImage(n,a),c()},n.onerror=m=>{console.error("[GifRecorder] 图片加载失败:",m),s(m)})})}catch(l){console.error("[GifRecorder] 截图失败:",l)}}processImage(e,a){const r=window.devicePixelRatio||1,i=this.captureRect.x*r,l=this.captureRect.y*r,n=this.captureRect.width*r,c=this.captureRect.height*r;this.ctx.drawImage(e,i,l,n,c,0,0,this.captureRect.width,this.captureRect.height);const s=a,m=Math.max(this.captureRect.width/48,this.captureRect.height/48),d=8,g=12;this.ctx.font=`bold ${m}px Arial, sans-serif`,this.ctx.textAlign="center",this.ctx.textBaseline="top";const y=this.ctx.measureText(s).width,p=m,h=(this.captureRect.width-y)/2-d*2,f=g,w=y+d*4,b=p+d*2;if(this.ctx.fillStyle="rgba(0, 0, 0, 0.6)",this.ctx.beginPath(),this.ctx.roundRect(h,f,w,b,16),this.ctx.fill(),this.ctx.fillStyle="#ffffff",this.ctx.fillText(s,this.captureRect.width/2,g+d),this.logoImage&&this.logoLoaded){const C=Math.max(this.captureRect.height/8,40),k=this.logoImage.naturalWidth/this.logoImage.naturalHeight;let _=C,z=_*k;const P=this.captureRect.width/4;z>P&&(z=P,_=z/k);const T=this.captureRect.width-z-12,V=g,H=this.ctx.imageSmoothingEnabled,O=this.ctx.imageSmoothingQuality;this.ctx.imageSmoothingEnabled=!0,this.ctx.imageSmoothingQuality="high",this.ctx.drawImage(this.logoImage,T,V,z,_),this.ctx.imageSmoothingEnabled=H,this.ctx.imageSmoothingQuality=O}const A=this.ctx.getImageData(0,0,this.captureRect.width*r,this.captureRect.height*r);this.frames.push(A),console.log("[GifRecorder] 帧添加成功, 当前帧数:",this.frames.length)}getFrameCount(){return this.frames.length}async generateGif(){return this.frames.length===0?(console.warn("[GifRecorder] 没有可用的帧"),null):new Promise((e,a)=>{const r=window.devicePixelRatio||1,i=new lr({workers:4,quality:1,width:this.captureRect.width*r,height:this.captureRect.height*r,workerScript:new URL("data:application/javascript;base64,Ly8gZ2lmLndvcmtlci5qcyAwLjIuMCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9qbm9yZGJlcmcvZ2lmLmpzCihmdW5jdGlvbiBlKHQsbixyKXtmdW5jdGlvbiBzKG8sdSl7aWYoIW5bb10pe2lmKCF0W29dKXt2YXIgYT10eXBlb2YgcmVxdWlyZT09ImZ1bmN0aW9uIiYmcmVxdWlyZTtpZighdSYmYSlyZXR1cm4gYShvLCEwKTtpZihpKXJldHVybiBpKG8sITApO3ZhciBmPW5ldyBFcnJvcigiQ2Fubm90IGZpbmQgbW9kdWxlICciK28rIiciKTt0aHJvdyBmLmNvZGU9Ik1PRFVMRV9OT1RfRk9VTkQiLGZ9dmFyIGw9bltvXT17ZXhwb3J0czp7fX07dFtvXVswXS5jYWxsKGwuZXhwb3J0cyxmdW5jdGlvbihlKXt2YXIgbj10W29dWzFdW2VdO3JldHVybiBzKG4/bjplKX0sbCxsLmV4cG9ydHMsZSx0LG4scil9cmV0dXJuIG5bb10uZXhwb3J0c312YXIgaT10eXBlb2YgcmVxdWlyZT09ImZ1bmN0aW9uIiYmcmVxdWlyZTtmb3IodmFyIG89MDtvPHIubGVuZ3RoO28rKylzKHJbb10pO3JldHVybiBzfSkoezE6W2Z1bmN0aW9uKHJlcXVpcmUsbW9kdWxlLGV4cG9ydHMpe3ZhciBOZXVRdWFudD1yZXF1aXJlKCIuL1R5cGVkTmV1UXVhbnQuanMiKTt2YXIgTFpXRW5jb2Rlcj1yZXF1aXJlKCIuL0xaV0VuY29kZXIuanMiKTtmdW5jdGlvbiBCeXRlQXJyYXkoKXt0aGlzLnBhZ2U9LTE7dGhpcy5wYWdlcz1bXTt0aGlzLm5ld1BhZ2UoKX1CeXRlQXJyYXkucGFnZVNpemU9NDA5NjtCeXRlQXJyYXkuY2hhck1hcD17fTtmb3IodmFyIGk9MDtpPDI1NjtpKyspQnl0ZUFycmF5LmNoYXJNYXBbaV09U3RyaW5nLmZyb21DaGFyQ29kZShpKTtCeXRlQXJyYXkucHJvdG90eXBlLm5ld1BhZ2U9ZnVuY3Rpb24oKXt0aGlzLnBhZ2VzWysrdGhpcy5wYWdlXT1uZXcgVWludDhBcnJheShCeXRlQXJyYXkucGFnZVNpemUpO3RoaXMuY3Vyc29yPTB9O0J5dGVBcnJheS5wcm90b3R5cGUuZ2V0RGF0YT1mdW5jdGlvbigpe3ZhciBydj0iIjtmb3IodmFyIHA9MDtwPHRoaXMucGFnZXMubGVuZ3RoO3ArKyl7Zm9yKHZhciBpPTA7aTxCeXRlQXJyYXkucGFnZVNpemU7aSsrKXtydis9Qnl0ZUFycmF5LmNoYXJNYXBbdGhpcy5wYWdlc1twXVtpXV19fXJldHVybiBydn07Qnl0ZUFycmF5LnByb3RvdHlwZS53cml0ZUJ5dGU9ZnVuY3Rpb24odmFsKXtpZih0aGlzLmN1cnNvcj49Qnl0ZUFycmF5LnBhZ2VTaXplKXRoaXMubmV3UGFnZSgpO3RoaXMucGFnZXNbdGhpcy5wYWdlXVt0aGlzLmN1cnNvcisrXT12YWx9O0J5dGVBcnJheS5wcm90b3R5cGUud3JpdGVVVEZCeXRlcz1mdW5jdGlvbihzdHJpbmcpe2Zvcih2YXIgbD1zdHJpbmcubGVuZ3RoLGk9MDtpPGw7aSsrKXRoaXMud3JpdGVCeXRlKHN0cmluZy5jaGFyQ29kZUF0KGkpKX07Qnl0ZUFycmF5LnByb3RvdHlwZS53cml0ZUJ5dGVzPWZ1bmN0aW9uKGFycmF5LG9mZnNldCxsZW5ndGgpe2Zvcih2YXIgbD1sZW5ndGh8fGFycmF5Lmxlbmd0aCxpPW9mZnNldHx8MDtpPGw7aSsrKXRoaXMud3JpdGVCeXRlKGFycmF5W2ldKX07ZnVuY3Rpb24gR0lGRW5jb2Rlcih3aWR0aCxoZWlnaHQpe3RoaXMud2lkdGg9fn53aWR0aDt0aGlzLmhlaWdodD1+fmhlaWdodDt0aGlzLnRyYW5zcGFyZW50PW51bGw7dGhpcy50cmFuc0luZGV4PTA7dGhpcy5yZXBlYXQ9LTE7dGhpcy5kZWxheT0wO3RoaXMuaW1hZ2U9bnVsbDt0aGlzLnBpeGVscz1udWxsO3RoaXMuaW5kZXhlZFBpeGVscz1udWxsO3RoaXMuY29sb3JEZXB0aD1udWxsO3RoaXMuY29sb3JUYWI9bnVsbDt0aGlzLm5ldVF1YW50PW51bGw7dGhpcy51c2VkRW50cnk9bmV3IEFycmF5O3RoaXMucGFsU2l6ZT03O3RoaXMuZGlzcG9zZT0tMTt0aGlzLmZpcnN0RnJhbWU9dHJ1ZTt0aGlzLnNhbXBsZT0xMDt0aGlzLmRpdGhlcj1mYWxzZTt0aGlzLmdsb2JhbFBhbGV0dGU9ZmFsc2U7dGhpcy5vdXQ9bmV3IEJ5dGVBcnJheX1HSUZFbmNvZGVyLnByb3RvdHlwZS5zZXREZWxheT1mdW5jdGlvbihtaWxsaXNlY29uZHMpe3RoaXMuZGVsYXk9TWF0aC5yb3VuZChtaWxsaXNlY29uZHMvMTApfTtHSUZFbmNvZGVyLnByb3RvdHlwZS5zZXRGcmFtZVJhdGU9ZnVuY3Rpb24oZnBzKXt0aGlzLmRlbGF5PU1hdGgucm91bmQoMTAwL2Zwcyl9O0dJRkVuY29kZXIucHJvdG90eXBlLnNldERpc3Bvc2U9ZnVuY3Rpb24oZGlzcG9zYWxDb2RlKXtpZihkaXNwb3NhbENvZGU+PTApdGhpcy5kaXNwb3NlPWRpc3Bvc2FsQ29kZX07R0lGRW5jb2Rlci5wcm90b3R5cGUuc2V0UmVwZWF0PWZ1bmN0aW9uKHJlcGVhdCl7dGhpcy5yZXBlYXQ9cmVwZWF0fTtHSUZFbmNvZGVyLnByb3RvdHlwZS5zZXRUcmFuc3BhcmVudD1mdW5jdGlvbihjb2xvcil7dGhpcy50cmFuc3BhcmVudD1jb2xvcn07R0lGRW5jb2Rlci5wcm90b3R5cGUuYWRkRnJhbWU9ZnVuY3Rpb24oaW1hZ2VEYXRhKXt0aGlzLmltYWdlPWltYWdlRGF0YTt0aGlzLmNvbG9yVGFiPXRoaXMuZ2xvYmFsUGFsZXR0ZSYmdGhpcy5nbG9iYWxQYWxldHRlLnNsaWNlP3RoaXMuZ2xvYmFsUGFsZXR0ZTpudWxsO3RoaXMuZ2V0SW1hZ2VQaXhlbHMoKTt0aGlzLmFuYWx5emVQaXhlbHMoKTtpZih0aGlzLmdsb2JhbFBhbGV0dGU9PT10cnVlKXRoaXMuZ2xvYmFsUGFsZXR0ZT10aGlzLmNvbG9yVGFiO2lmKHRoaXMuZmlyc3RGcmFtZSl7dGhpcy53cml0ZUxTRCgpO3RoaXMud3JpdGVQYWxldHRlKCk7aWYodGhpcy5yZXBlYXQ+PTApe3RoaXMud3JpdGVOZXRzY2FwZUV4dCgpfX10aGlzLndyaXRlR3JhcGhpY0N0cmxFeHQoKTt0aGlzLndyaXRlSW1hZ2VEZXNjKCk7aWYoIXRoaXMuZmlyc3RGcmFtZSYmIXRoaXMuZ2xvYmFsUGFsZXR0ZSl0aGlzLndyaXRlUGFsZXR0ZSgpO3RoaXMud3JpdGVQaXhlbHMoKTt0aGlzLmZpcnN0RnJhbWU9ZmFsc2V9O0dJRkVuY29kZXIucHJvdG90eXBlLmZpbmlzaD1mdW5jdGlvbigpe3RoaXMub3V0LndyaXRlQnl0ZSg1OSl9O0dJRkVuY29kZXIucHJvdG90eXBlLnNldFF1YWxpdHk9ZnVuY3Rpb24ocXVhbGl0eSl7aWYocXVhbGl0eTwxKXF1YWxpdHk9MTt0aGlzLnNhbXBsZT1xdWFsaXR5fTtHSUZFbmNvZGVyLnByb3RvdHlwZS5zZXREaXRoZXI9ZnVuY3Rpb24oZGl0aGVyKXtpZihkaXRoZXI9PT10cnVlKWRpdGhlcj0iRmxveWRTdGVpbmJlcmciO3RoaXMuZGl0aGVyPWRpdGhlcn07R0lGRW5jb2Rlci5wcm90b3R5cGUuc2V0R2xvYmFsUGFsZXR0ZT1mdW5jdGlvbihwYWxldHRlKXt0aGlzLmdsb2JhbFBhbGV0dGU9cGFsZXR0ZX07R0lGRW5jb2Rlci5wcm90b3R5cGUuZ2V0R2xvYmFsUGFsZXR0ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdsb2JhbFBhbGV0dGUmJnRoaXMuZ2xvYmFsUGFsZXR0ZS5zbGljZSYmdGhpcy5nbG9iYWxQYWxldHRlLnNsaWNlKDApfHx0aGlzLmdsb2JhbFBhbGV0dGV9O0dJRkVuY29kZXIucHJvdG90eXBlLndyaXRlSGVhZGVyPWZ1bmN0aW9uKCl7dGhpcy5vdXQud3JpdGVVVEZCeXRlcygiR0lGODlhIil9O0dJRkVuY29kZXIucHJvdG90eXBlLmFuYWx5emVQaXhlbHM9ZnVuY3Rpb24oKXtpZighdGhpcy5jb2xvclRhYil7dGhpcy5uZXVRdWFudD1uZXcgTmV1UXVhbnQodGhpcy5waXhlbHMsdGhpcy5zYW1wbGUpO3RoaXMubmV1UXVhbnQuYnVpbGRDb2xvcm1hcCgpO3RoaXMuY29sb3JUYWI9dGhpcy5uZXVRdWFudC5nZXRDb2xvcm1hcCgpfWlmKHRoaXMuZGl0aGVyKXt0aGlzLmRpdGhlclBpeGVscyh0aGlzLmRpdGhlci5yZXBsYWNlKCItc2VycGVudGluZSIsIiIpLHRoaXMuZGl0aGVyLm1hdGNoKC8tc2VycGVudGluZS8pIT09bnVsbCl9ZWxzZXt0aGlzLmluZGV4UGl4ZWxzKCl9dGhpcy5waXhlbHM9bnVsbDt0aGlzLmNvbG9yRGVwdGg9ODt0aGlzLnBhbFNpemU9NztpZih0aGlzLnRyYW5zcGFyZW50IT09bnVsbCl7dGhpcy50cmFuc0luZGV4PXRoaXMuZmluZENsb3Nlc3QodGhpcy50cmFuc3BhcmVudCx0cnVlKX19O0dJRkVuY29kZXIucHJvdG90eXBlLmluZGV4UGl4ZWxzPWZ1bmN0aW9uKGltZ3Epe3ZhciBuUGl4PXRoaXMucGl4ZWxzLmxlbmd0aC8zO3RoaXMuaW5kZXhlZFBpeGVscz1uZXcgVWludDhBcnJheShuUGl4KTt2YXIgaz0wO2Zvcih2YXIgaj0wO2o8blBpeDtqKyspe3ZhciBpbmRleD10aGlzLmZpbmRDbG9zZXN0UkdCKHRoaXMucGl4ZWxzW2srK10mMjU1LHRoaXMucGl4ZWxzW2srK10mMjU1LHRoaXMucGl4ZWxzW2srK10mMjU1KTt0aGlzLnVzZWRFbnRyeVtpbmRleF09dHJ1ZTt0aGlzLmluZGV4ZWRQaXhlbHNbal09aW5kZXh9fTtHSUZFbmNvZGVyLnByb3RvdHlwZS5kaXRoZXJQaXhlbHM9ZnVuY3Rpb24oa2VybmVsLHNlcnBlbnRpbmUpe3ZhciBrZXJuZWxzPXtGYWxzZUZsb3lkU3RlaW5iZXJnOltbMy84LDEsMF0sWzMvOCwwLDFdLFsyLzgsMSwxXV0sRmxveWRTdGVpbmJlcmc6W1s3LzE2LDEsMF0sWzMvMTYsLTEsMV0sWzUvMTYsMCwxXSxbMS8xNiwxLDFdXSxTdHVja2k6W1s4LzQyLDEsMF0sWzQvNDIsMiwwXSxbMi80MiwtMiwxXSxbNC80MiwtMSwxXSxbOC80MiwwLDFdLFs0LzQyLDEsMV0sWzIvNDIsMiwxXSxbMS80MiwtMiwyXSxbMi80MiwtMSwyXSxbNC80MiwwLDJdLFsyLzQyLDEsMl0sWzEvNDIsMiwyXV0sQXRraW5zb246W1sxLzgsMSwwXSxbMS84LDIsMF0sWzEvOCwtMSwxXSxbMS84LDAsMV0sWzEvOCwxLDFdLFsxLzgsMCwyXV19O2lmKCFrZXJuZWx8fCFrZXJuZWxzW2tlcm5lbF0pe3Rocm93IlVua25vd24gZGl0aGVyaW5nIGtlcm5lbDogIitrZXJuZWx9dmFyIGRzPWtlcm5lbHNba2VybmVsXTt2YXIgaW5kZXg9MCxoZWlnaHQ9dGhpcy5oZWlnaHQsd2lkdGg9dGhpcy53aWR0aCxkYXRhPXRoaXMucGl4ZWxzO3ZhciBkaXJlY3Rpb249c2VycGVudGluZT8tMToxO3RoaXMuaW5kZXhlZFBpeGVscz1uZXcgVWludDhBcnJheSh0aGlzLnBpeGVscy5sZW5ndGgvMyk7Zm9yKHZhciB5PTA7eTxoZWlnaHQ7eSsrKXtpZihzZXJwZW50aW5lKWRpcmVjdGlvbj1kaXJlY3Rpb24qLTE7Zm9yKHZhciB4PWRpcmVjdGlvbj09MT8wOndpZHRoLTEseGVuZD1kaXJlY3Rpb249PTE/d2lkdGg6MDt4IT09eGVuZDt4Kz1kaXJlY3Rpb24pe2luZGV4PXkqd2lkdGgreDt2YXIgaWR4PWluZGV4KjM7dmFyIHIxPWRhdGFbaWR4XTt2YXIgZzE9ZGF0YVtpZHgrMV07dmFyIGIxPWRhdGFbaWR4KzJdO2lkeD10aGlzLmZpbmRDbG9zZXN0UkdCKHIxLGcxLGIxKTt0aGlzLnVzZWRFbnRyeVtpZHhdPXRydWU7dGhpcy5pbmRleGVkUGl4ZWxzW2luZGV4XT1pZHg7aWR4Kj0zO3ZhciByMj10aGlzLmNvbG9yVGFiW2lkeF07dmFyIGcyPXRoaXMuY29sb3JUYWJbaWR4KzFdO3ZhciBiMj10aGlzLmNvbG9yVGFiW2lkeCsyXTt2YXIgZXI9cjEtcjI7dmFyIGVnPWcxLWcyO3ZhciBlYj1iMS1iMjtmb3IodmFyIGk9ZGlyZWN0aW9uPT0xPzA6ZHMubGVuZ3RoLTEsZW5kPWRpcmVjdGlvbj09MT9kcy5sZW5ndGg6MDtpIT09ZW5kO2krPWRpcmVjdGlvbil7dmFyIHgxPWRzW2ldWzFdO3ZhciB5MT1kc1tpXVsyXTtpZih4MSt4Pj0wJiZ4MSt4PHdpZHRoJiZ5MSt5Pj0wJiZ5MSt5PGhlaWdodCl7dmFyIGQ9ZHNbaV1bMF07aWR4PWluZGV4K3gxK3kxKndpZHRoO2lkeCo9MztkYXRhW2lkeF09TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsZGF0YVtpZHhdK2VyKmQpKTtkYXRhW2lkeCsxXT1NYXRoLm1heCgwLE1hdGgubWluKDI1NSxkYXRhW2lkeCsxXStlZypkKSk7ZGF0YVtpZHgrMl09TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsZGF0YVtpZHgrMl0rZWIqZCkpfX19fX07R0lGRW5jb2Rlci5wcm90b3R5cGUuZmluZENsb3Nlc3Q9ZnVuY3Rpb24oYyx1c2VkKXtyZXR1cm4gdGhpcy5maW5kQ2xvc2VzdFJHQigoYyYxNjcxMTY4MCk+PjE2LChjJjY1MjgwKT4+OCxjJjI1NSx1c2VkKX07R0lGRW5jb2Rlci5wcm90b3R5cGUuZmluZENsb3Nlc3RSR0I9ZnVuY3Rpb24ocixnLGIsdXNlZCl7aWYodGhpcy5jb2xvclRhYj09PW51bGwpcmV0dXJuLTE7aWYodGhpcy5uZXVRdWFudCYmIXVzZWQpe3JldHVybiB0aGlzLm5ldVF1YW50Lmxvb2t1cFJHQihyLGcsYil9dmFyIGM9YnxnPDw4fHI8PDE2O3ZhciBtaW5wb3M9MDt2YXIgZG1pbj0yNTYqMjU2KjI1Njt2YXIgbGVuPXRoaXMuY29sb3JUYWIubGVuZ3RoO2Zvcih2YXIgaT0wLGluZGV4PTA7aTxsZW47aW5kZXgrKyl7dmFyIGRyPXItKHRoaXMuY29sb3JUYWJbaSsrXSYyNTUpO3ZhciBkZz1nLSh0aGlzLmNvbG9yVGFiW2krK10mMjU1KTt2YXIgZGI9Yi0odGhpcy5jb2xvclRhYltpKytdJjI1NSk7dmFyIGQ9ZHIqZHIrZGcqZGcrZGIqZGI7aWYoKCF1c2VkfHx0aGlzLnVzZWRFbnRyeVtpbmRleF0pJiZkPGRtaW4pe2RtaW49ZDttaW5wb3M9aW5kZXh9fXJldHVybiBtaW5wb3N9O0dJRkVuY29kZXIucHJvdG90eXBlLmdldEltYWdlUGl4ZWxzPWZ1bmN0aW9uKCl7dmFyIHc9dGhpcy53aWR0aDt2YXIgaD10aGlzLmhlaWdodDt0aGlzLnBpeGVscz1uZXcgVWludDhBcnJheSh3KmgqMyk7dmFyIGRhdGE9dGhpcy5pbWFnZTt2YXIgc3JjUG9zPTA7dmFyIGNvdW50PTA7Zm9yKHZhciBpPTA7aTxoO2krKyl7Zm9yKHZhciBqPTA7ajx3O2orKyl7dGhpcy5waXhlbHNbY291bnQrK109ZGF0YVtzcmNQb3MrK107dGhpcy5waXhlbHNbY291bnQrK109ZGF0YVtzcmNQb3MrK107dGhpcy5waXhlbHNbY291bnQrK109ZGF0YVtzcmNQb3MrK107c3JjUG9zKyt9fX07R0lGRW5jb2Rlci5wcm90b3R5cGUud3JpdGVHcmFwaGljQ3RybEV4dD1mdW5jdGlvbigpe3RoaXMub3V0LndyaXRlQnl0ZSgzMyk7dGhpcy5vdXQud3JpdGVCeXRlKDI0OSk7dGhpcy5vdXQud3JpdGVCeXRlKDQpO3ZhciB0cmFuc3AsZGlzcDtpZih0aGlzLnRyYW5zcGFyZW50PT09bnVsbCl7dHJhbnNwPTA7ZGlzcD0wfWVsc2V7dHJhbnNwPTE7ZGlzcD0yfWlmKHRoaXMuZGlzcG9zZT49MCl7ZGlzcD1kaXNwb3NlJjd9ZGlzcDw8PTI7dGhpcy5vdXQud3JpdGVCeXRlKDB8ZGlzcHwwfHRyYW5zcCk7dGhpcy53cml0ZVNob3J0KHRoaXMuZGVsYXkpO3RoaXMub3V0LndyaXRlQnl0ZSh0aGlzLnRyYW5zSW5kZXgpO3RoaXMub3V0LndyaXRlQnl0ZSgwKX07R0lGRW5jb2Rlci5wcm90b3R5cGUud3JpdGVJbWFnZURlc2M9ZnVuY3Rpb24oKXt0aGlzLm91dC53cml0ZUJ5dGUoNDQpO3RoaXMud3JpdGVTaG9ydCgwKTt0aGlzLndyaXRlU2hvcnQoMCk7dGhpcy53cml0ZVNob3J0KHRoaXMud2lkdGgpO3RoaXMud3JpdGVTaG9ydCh0aGlzLmhlaWdodCk7aWYodGhpcy5maXJzdEZyYW1lfHx0aGlzLmdsb2JhbFBhbGV0dGUpe3RoaXMub3V0LndyaXRlQnl0ZSgwKX1lbHNle3RoaXMub3V0LndyaXRlQnl0ZSgxMjh8MHwwfDB8dGhpcy5wYWxTaXplKX19O0dJRkVuY29kZXIucHJvdG90eXBlLndyaXRlTFNEPWZ1bmN0aW9uKCl7dGhpcy53cml0ZVNob3J0KHRoaXMud2lkdGgpO3RoaXMud3JpdGVTaG9ydCh0aGlzLmhlaWdodCk7dGhpcy5vdXQud3JpdGVCeXRlKDEyOHwxMTJ8MHx0aGlzLnBhbFNpemUpO3RoaXMub3V0LndyaXRlQnl0ZSgwKTt0aGlzLm91dC53cml0ZUJ5dGUoMCl9O0dJRkVuY29kZXIucHJvdG90eXBlLndyaXRlTmV0c2NhcGVFeHQ9ZnVuY3Rpb24oKXt0aGlzLm91dC53cml0ZUJ5dGUoMzMpO3RoaXMub3V0LndyaXRlQnl0ZSgyNTUpO3RoaXMub3V0LndyaXRlQnl0ZSgxMSk7dGhpcy5vdXQud3JpdGVVVEZCeXRlcygiTkVUU0NBUEUyLjAiKTt0aGlzLm91dC53cml0ZUJ5dGUoMyk7dGhpcy5vdXQud3JpdGVCeXRlKDEpO3RoaXMud3JpdGVTaG9ydCh0aGlzLnJlcGVhdCk7dGhpcy5vdXQud3JpdGVCeXRlKDApfTtHSUZFbmNvZGVyLnByb3RvdHlwZS53cml0ZVBhbGV0dGU9ZnVuY3Rpb24oKXt0aGlzLm91dC53cml0ZUJ5dGVzKHRoaXMuY29sb3JUYWIpO3ZhciBuPTMqMjU2LXRoaXMuY29sb3JUYWIubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bjtpKyspdGhpcy5vdXQud3JpdGVCeXRlKDApfTtHSUZFbmNvZGVyLnByb3RvdHlwZS53cml0ZVNob3J0PWZ1bmN0aW9uKHBWYWx1ZSl7dGhpcy5vdXQud3JpdGVCeXRlKHBWYWx1ZSYyNTUpO3RoaXMub3V0LndyaXRlQnl0ZShwVmFsdWU+PjgmMjU1KX07R0lGRW5jb2Rlci5wcm90b3R5cGUud3JpdGVQaXhlbHM9ZnVuY3Rpb24oKXt2YXIgZW5jPW5ldyBMWldFbmNvZGVyKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQsdGhpcy5pbmRleGVkUGl4ZWxzLHRoaXMuY29sb3JEZXB0aCk7ZW5jLmVuY29kZSh0aGlzLm91dCl9O0dJRkVuY29kZXIucHJvdG90eXBlLnN0cmVhbT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm91dH07bW9kdWxlLmV4cG9ydHM9R0lGRW5jb2Rlcn0seyIuL0xaV0VuY29kZXIuanMiOjIsIi4vVHlwZWROZXVRdWFudC5qcyI6M31dLDI6W2Z1bmN0aW9uKHJlcXVpcmUsbW9kdWxlLGV4cG9ydHMpe3ZhciBFT0Y9LTE7dmFyIEJJVFM9MTI7dmFyIEhTSVpFPTUwMDM7dmFyIG1hc2tzPVswLDEsMyw3LDE1LDMxLDYzLDEyNywyNTUsNTExLDEwMjMsMjA0Nyw0MDk1LDgxOTEsMTYzODMsMzI3NjcsNjU1MzVdO2Z1bmN0aW9uIExaV0VuY29kZXIod2lkdGgsaGVpZ2h0LHBpeGVscyxjb2xvckRlcHRoKXt2YXIgaW5pdENvZGVTaXplPU1hdGgubWF4KDIsY29sb3JEZXB0aCk7dmFyIGFjY3VtPW5ldyBVaW50OEFycmF5KDI1Nik7dmFyIGh0YWI9bmV3IEludDMyQXJyYXkoSFNJWkUpO3ZhciBjb2RldGFiPW5ldyBJbnQzMkFycmF5KEhTSVpFKTt2YXIgY3VyX2FjY3VtLGN1cl9iaXRzPTA7dmFyIGFfY291bnQ7dmFyIGZyZWVfZW50PTA7dmFyIG1heGNvZGU7dmFyIGNsZWFyX2ZsZz1mYWxzZTt2YXIgZ19pbml0X2JpdHMsQ2xlYXJDb2RlLEVPRkNvZGU7ZnVuY3Rpb24gY2hhcl9vdXQoYyxvdXRzKXthY2N1bVthX2NvdW50KytdPWM7aWYoYV9jb3VudD49MjU0KWZsdXNoX2NoYXIob3V0cyl9ZnVuY3Rpb24gY2xfYmxvY2sob3V0cyl7Y2xfaGFzaChIU0laRSk7ZnJlZV9lbnQ9Q2xlYXJDb2RlKzI7Y2xlYXJfZmxnPXRydWU7b3V0cHV0KENsZWFyQ29kZSxvdXRzKX1mdW5jdGlvbiBjbF9oYXNoKGhzaXplKXtmb3IodmFyIGk9MDtpPGhzaXplOysraSlodGFiW2ldPS0xfWZ1bmN0aW9uIGNvbXByZXNzKGluaXRfYml0cyxvdXRzKXt2YXIgZmNvZGUsYyxpLGVudCxkaXNwLGhzaXplX3JlZyxoc2hpZnQ7Z19pbml0X2JpdHM9aW5pdF9iaXRzO2NsZWFyX2ZsZz1mYWxzZTtuX2JpdHM9Z19pbml0X2JpdHM7bWF4Y29kZT1NQVhDT0RFKG5fYml0cyk7Q2xlYXJDb2RlPTE8PGluaXRfYml0cy0xO0VPRkNvZGU9Q2xlYXJDb2RlKzE7ZnJlZV9lbnQ9Q2xlYXJDb2RlKzI7YV9jb3VudD0wO2VudD1uZXh0UGl4ZWwoKTtoc2hpZnQ9MDtmb3IoZmNvZGU9SFNJWkU7ZmNvZGU8NjU1MzY7ZmNvZGUqPTIpKytoc2hpZnQ7aHNoaWZ0PTgtaHNoaWZ0O2hzaXplX3JlZz1IU0laRTtjbF9oYXNoKGhzaXplX3JlZyk7b3V0cHV0KENsZWFyQ29kZSxvdXRzKTtvdXRlcl9sb29wOndoaWxlKChjPW5leHRQaXhlbCgpKSE9RU9GKXtmY29kZT0oYzw8QklUUykrZW50O2k9Yzw8aHNoaWZ0XmVudDtpZihodGFiW2ldPT09ZmNvZGUpe2VudD1jb2RldGFiW2ldO2NvbnRpbnVlfWVsc2UgaWYoaHRhYltpXT49MCl7ZGlzcD1oc2l6ZV9yZWctaTtpZihpPT09MClkaXNwPTE7ZG97aWYoKGktPWRpc3ApPDApaSs9aHNpemVfcmVnO2lmKGh0YWJbaV09PT1mY29kZSl7ZW50PWNvZGV0YWJbaV07Y29udGludWUgb3V0ZXJfbG9vcH19d2hpbGUoaHRhYltpXT49MCl9b3V0cHV0KGVudCxvdXRzKTtlbnQ9YztpZihmcmVlX2VudDwxPDxCSVRTKXtjb2RldGFiW2ldPWZyZWVfZW50Kys7aHRhYltpXT1mY29kZX1lbHNle2NsX2Jsb2NrKG91dHMpfX1vdXRwdXQoZW50LG91dHMpO291dHB1dChFT0ZDb2RlLG91dHMpfWZ1bmN0aW9uIGVuY29kZShvdXRzKXtvdXRzLndyaXRlQnl0ZShpbml0Q29kZVNpemUpO3JlbWFpbmluZz13aWR0aCpoZWlnaHQ7Y3VyUGl4ZWw9MDtjb21wcmVzcyhpbml0Q29kZVNpemUrMSxvdXRzKTtvdXRzLndyaXRlQnl0ZSgwKX1mdW5jdGlvbiBmbHVzaF9jaGFyKG91dHMpe2lmKGFfY291bnQ+MCl7b3V0cy53cml0ZUJ5dGUoYV9jb3VudCk7b3V0cy53cml0ZUJ5dGVzKGFjY3VtLDAsYV9jb3VudCk7YV9jb3VudD0wfX1mdW5jdGlvbiBNQVhDT0RFKG5fYml0cyl7cmV0dXJuKDE8PG5fYml0cyktMX1mdW5jdGlvbiBuZXh0UGl4ZWwoKXtpZihyZW1haW5pbmc9PT0wKXJldHVybiBFT0Y7LS1yZW1haW5pbmc7dmFyIHBpeD1waXhlbHNbY3VyUGl4ZWwrK107cmV0dXJuIHBpeCYyNTV9ZnVuY3Rpb24gb3V0cHV0KGNvZGUsb3V0cyl7Y3VyX2FjY3VtJj1tYXNrc1tjdXJfYml0c107aWYoY3VyX2JpdHM+MCljdXJfYWNjdW18PWNvZGU8PGN1cl9iaXRzO2Vsc2UgY3VyX2FjY3VtPWNvZGU7Y3VyX2JpdHMrPW5fYml0czt3aGlsZShjdXJfYml0cz49OCl7Y2hhcl9vdXQoY3VyX2FjY3VtJjI1NSxvdXRzKTtjdXJfYWNjdW0+Pj04O2N1cl9iaXRzLT04fWlmKGZyZWVfZW50Pm1heGNvZGV8fGNsZWFyX2ZsZyl7aWYoY2xlYXJfZmxnKXttYXhjb2RlPU1BWENPREUobl9iaXRzPWdfaW5pdF9iaXRzKTtjbGVhcl9mbGc9ZmFsc2V9ZWxzZXsrK25fYml0cztpZihuX2JpdHM9PUJJVFMpbWF4Y29kZT0xPDxCSVRTO2Vsc2UgbWF4Y29kZT1NQVhDT0RFKG5fYml0cyl9fWlmKGNvZGU9PUVPRkNvZGUpe3doaWxlKGN1cl9iaXRzPjApe2NoYXJfb3V0KGN1cl9hY2N1bSYyNTUsb3V0cyk7Y3VyX2FjY3VtPj49ODtjdXJfYml0cy09OH1mbHVzaF9jaGFyKG91dHMpfX10aGlzLmVuY29kZT1lbmNvZGV9bW9kdWxlLmV4cG9ydHM9TFpXRW5jb2Rlcn0se31dLDM6W2Z1bmN0aW9uKHJlcXVpcmUsbW9kdWxlLGV4cG9ydHMpe3ZhciBuY3ljbGVzPTEwMDt2YXIgbmV0c2l6ZT0yNTY7dmFyIG1heG5ldHBvcz1uZXRzaXplLTE7dmFyIG5ldGJpYXNzaGlmdD00O3ZhciBpbnRiaWFzc2hpZnQ9MTY7dmFyIGludGJpYXM9MTw8aW50Ymlhc3NoaWZ0O3ZhciBnYW1tYXNoaWZ0PTEwO3ZhciBnYW1tYT0xPDxnYW1tYXNoaWZ0O3ZhciBiZXRhc2hpZnQ9MTA7dmFyIGJldGE9aW50Ymlhcz4+YmV0YXNoaWZ0O3ZhciBiZXRhZ2FtbWE9aW50Ymlhczw8Z2FtbWFzaGlmdC1iZXRhc2hpZnQ7dmFyIGluaXRyYWQ9bmV0c2l6ZT4+Mzt2YXIgcmFkaXVzYmlhc3NoaWZ0PTY7dmFyIHJhZGl1c2JpYXM9MTw8cmFkaXVzYmlhc3NoaWZ0O3ZhciBpbml0cmFkaXVzPWluaXRyYWQqcmFkaXVzYmlhczt2YXIgcmFkaXVzZGVjPTMwO3ZhciBhbHBoYWJpYXNzaGlmdD0xMDt2YXIgaW5pdGFscGhhPTE8PGFscGhhYmlhc3NoaWZ0O3ZhciBhbHBoYWRlYzt2YXIgcmFkYmlhc3NoaWZ0PTg7dmFyIHJhZGJpYXM9MTw8cmFkYmlhc3NoaWZ0O3ZhciBhbHBoYXJhZGJzaGlmdD1hbHBoYWJpYXNzaGlmdCtyYWRiaWFzc2hpZnQ7dmFyIGFscGhhcmFkYmlhcz0xPDxhbHBoYXJhZGJzaGlmdDt2YXIgcHJpbWUxPTQ5OTt2YXIgcHJpbWUyPTQ5MTt2YXIgcHJpbWUzPTQ4Nzt2YXIgcHJpbWU0PTUwMzt2YXIgbWlucGljdHVyZWJ5dGVzPTMqcHJpbWU0O2Z1bmN0aW9uIE5ldVF1YW50KHBpeGVscyxzYW1wbGVmYWMpe3ZhciBuZXR3b3JrO3ZhciBuZXRpbmRleDt2YXIgYmlhczt2YXIgZnJlcTt2YXIgcmFkcG93ZXI7ZnVuY3Rpb24gaW5pdCgpe25ldHdvcms9W107bmV0aW5kZXg9bmV3IEludDMyQXJyYXkoMjU2KTtiaWFzPW5ldyBJbnQzMkFycmF5KG5ldHNpemUpO2ZyZXE9bmV3IEludDMyQXJyYXkobmV0c2l6ZSk7cmFkcG93ZXI9bmV3IEludDMyQXJyYXkobmV0c2l6ZT4+Myk7dmFyIGksdjtmb3IoaT0wO2k8bmV0c2l6ZTtpKyspe3Y9KGk8PG5ldGJpYXNzaGlmdCs4KS9uZXRzaXplO25ldHdvcmtbaV09bmV3IEZsb2F0NjRBcnJheShbdix2LHYsMF0pO2ZyZXFbaV09aW50Ymlhcy9uZXRzaXplO2JpYXNbaV09MH19ZnVuY3Rpb24gdW5iaWFzbmV0KCl7Zm9yKHZhciBpPTA7aTxuZXRzaXplO2krKyl7bmV0d29ya1tpXVswXT4+PW5ldGJpYXNzaGlmdDtuZXR3b3JrW2ldWzFdPj49bmV0Ymlhc3NoaWZ0O25ldHdvcmtbaV1bMl0+Pj1uZXRiaWFzc2hpZnQ7bmV0d29ya1tpXVszXT1pfX1mdW5jdGlvbiBhbHRlcnNpbmdsZShhbHBoYSxpLGIsZyxyKXtuZXR3b3JrW2ldWzBdLT1hbHBoYSoobmV0d29ya1tpXVswXS1iKS9pbml0YWxwaGE7bmV0d29ya1tpXVsxXS09YWxwaGEqKG5ldHdvcmtbaV1bMV0tZykvaW5pdGFscGhhO25ldHdvcmtbaV1bMl0tPWFscGhhKihuZXR3b3JrW2ldWzJdLXIpL2luaXRhbHBoYX1mdW5jdGlvbiBhbHRlcm5laWdoKHJhZGl1cyxpLGIsZyxyKXt2YXIgbG89TWF0aC5hYnMoaS1yYWRpdXMpO3ZhciBoaT1NYXRoLm1pbihpK3JhZGl1cyxuZXRzaXplKTt2YXIgaj1pKzE7dmFyIGs9aS0xO3ZhciBtPTE7dmFyIHAsYTt3aGlsZShqPGhpfHxrPmxvKXthPXJhZHBvd2VyW20rK107aWYoajxoaSl7cD1uZXR3b3JrW2orK107cFswXS09YSoocFswXS1iKS9hbHBoYXJhZGJpYXM7cFsxXS09YSoocFsxXS1nKS9hbHBoYXJhZGJpYXM7cFsyXS09YSoocFsyXS1yKS9hbHBoYXJhZGJpYXN9aWYoaz5sbyl7cD1uZXR3b3JrW2stLV07cFswXS09YSoocFswXS1iKS9hbHBoYXJhZGJpYXM7cFsxXS09YSoocFsxXS1nKS9hbHBoYXJhZGJpYXM7cFsyXS09YSoocFsyXS1yKS9hbHBoYXJhZGJpYXN9fX1mdW5jdGlvbiBjb250ZXN0KGIsZyxyKXt2YXIgYmVzdGQ9figxPDwzMSk7dmFyIGJlc3RiaWFzZD1iZXN0ZDt2YXIgYmVzdHBvcz0tMTt2YXIgYmVzdGJpYXNwb3M9YmVzdHBvczt2YXIgaSxuLGRpc3QsYmlhc2Rpc3QsYmV0YWZyZXE7Zm9yKGk9MDtpPG5ldHNpemU7aSsrKXtuPW5ldHdvcmtbaV07ZGlzdD1NYXRoLmFicyhuWzBdLWIpK01hdGguYWJzKG5bMV0tZykrTWF0aC5hYnMoblsyXS1yKTtpZihkaXN0PGJlc3RkKXtiZXN0ZD1kaXN0O2Jlc3Rwb3M9aX1iaWFzZGlzdD1kaXN0LShiaWFzW2ldPj5pbnRiaWFzc2hpZnQtbmV0Ymlhc3NoaWZ0KTtpZihiaWFzZGlzdDxiZXN0Ymlhc2Qpe2Jlc3RiaWFzZD1iaWFzZGlzdDtiZXN0Ymlhc3Bvcz1pfWJldGFmcmVxPWZyZXFbaV0+PmJldGFzaGlmdDtmcmVxW2ldLT1iZXRhZnJlcTtiaWFzW2ldKz1iZXRhZnJlcTw8Z2FtbWFzaGlmdH1mcmVxW2Jlc3Rwb3NdKz1iZXRhO2JpYXNbYmVzdHBvc10tPWJldGFnYW1tYTtyZXR1cm4gYmVzdGJpYXNwb3N9ZnVuY3Rpb24gaW54YnVpbGQoKXt2YXIgaSxqLHAscSxzbWFsbHBvcyxzbWFsbHZhbCxwcmV2aW91c2NvbD0wLHN0YXJ0cG9zPTA7Zm9yKGk9MDtpPG5ldHNpemU7aSsrKXtwPW5ldHdvcmtbaV07c21hbGxwb3M9aTtzbWFsbHZhbD1wWzFdO2ZvcihqPWkrMTtqPG5ldHNpemU7aisrKXtxPW5ldHdvcmtbal07aWYocVsxXTxzbWFsbHZhbCl7c21hbGxwb3M9ajtzbWFsbHZhbD1xWzFdfX1xPW5ldHdvcmtbc21hbGxwb3NdO2lmKGkhPXNtYWxscG9zKXtqPXFbMF07cVswXT1wWzBdO3BbMF09ajtqPXFbMV07cVsxXT1wWzFdO3BbMV09ajtqPXFbMl07cVsyXT1wWzJdO3BbMl09ajtqPXFbM107cVszXT1wWzNdO3BbM109an1pZihzbWFsbHZhbCE9cHJldmlvdXNjb2wpe25ldGluZGV4W3ByZXZpb3VzY29sXT1zdGFydHBvcytpPj4xO2ZvcihqPXByZXZpb3VzY29sKzE7ajxzbWFsbHZhbDtqKyspbmV0aW5kZXhbal09aTtwcmV2aW91c2NvbD1zbWFsbHZhbDtzdGFydHBvcz1pfX1uZXRpbmRleFtwcmV2aW91c2NvbF09c3RhcnRwb3MrbWF4bmV0cG9zPj4xO2ZvcihqPXByZXZpb3VzY29sKzE7ajwyNTY7aisrKW5ldGluZGV4W2pdPW1heG5ldHBvc31mdW5jdGlvbiBpbnhzZWFyY2goYixnLHIpe3ZhciBhLHAsZGlzdDt2YXIgYmVzdGQ9MWUzO3ZhciBiZXN0PS0xO3ZhciBpPW5ldGluZGV4W2ddO3ZhciBqPWktMTt3aGlsZShpPG5ldHNpemV8fGo+PTApe2lmKGk8bmV0c2l6ZSl7cD1uZXR3b3JrW2ldO2Rpc3Q9cFsxXS1nO2lmKGRpc3Q+PWJlc3RkKWk9bmV0c2l6ZTtlbHNle2krKztpZihkaXN0PDApZGlzdD0tZGlzdDthPXBbMF0tYjtpZihhPDApYT0tYTtkaXN0Kz1hO2lmKGRpc3Q8YmVzdGQpe2E9cFsyXS1yO2lmKGE8MClhPS1hO2Rpc3QrPWE7aWYoZGlzdDxiZXN0ZCl7YmVzdGQ9ZGlzdDtiZXN0PXBbM119fX19aWYoaj49MCl7cD1uZXR3b3JrW2pdO2Rpc3Q9Zy1wWzFdO2lmKGRpc3Q+PWJlc3RkKWo9LTE7ZWxzZXtqLS07aWYoZGlzdDwwKWRpc3Q9LWRpc3Q7YT1wWzBdLWI7aWYoYTwwKWE9LWE7ZGlzdCs9YTtpZihkaXN0PGJlc3RkKXthPXBbMl0tcjtpZihhPDApYT0tYTtkaXN0Kz1hO2lmKGRpc3Q8YmVzdGQpe2Jlc3RkPWRpc3Q7YmVzdD1wWzNdfX19fX1yZXR1cm4gYmVzdH1mdW5jdGlvbiBsZWFybigpe3ZhciBpO3ZhciBsZW5ndGhjb3VudD1waXhlbHMubGVuZ3RoO3ZhciBhbHBoYWRlYz0zMCsoc2FtcGxlZmFjLTEpLzM7dmFyIHNhbXBsZXBpeGVscz1sZW5ndGhjb3VudC8oMypzYW1wbGVmYWMpO3ZhciBkZWx0YT1+fihzYW1wbGVwaXhlbHMvbmN5Y2xlcyk7dmFyIGFscGhhPWluaXRhbHBoYTt2YXIgcmFkaXVzPWluaXRyYWRpdXM7dmFyIHJhZD1yYWRpdXM+PnJhZGl1c2JpYXNzaGlmdDtpZihyYWQ8PTEpcmFkPTA7Zm9yKGk9MDtpPHJhZDtpKyspcmFkcG93ZXJbaV09YWxwaGEqKChyYWQqcmFkLWkqaSkqcmFkYmlhcy8ocmFkKnJhZCkpO3ZhciBzdGVwO2lmKGxlbmd0aGNvdW50PG1pbnBpY3R1cmVieXRlcyl7c2FtcGxlZmFjPTE7c3RlcD0zfWVsc2UgaWYobGVuZ3RoY291bnQlcHJpbWUxIT09MCl7c3RlcD0zKnByaW1lMX1lbHNlIGlmKGxlbmd0aGNvdW50JXByaW1lMiE9PTApe3N0ZXA9MypwcmltZTJ9ZWxzZSBpZihsZW5ndGhjb3VudCVwcmltZTMhPT0wKXtzdGVwPTMqcHJpbWUzfWVsc2V7c3RlcD0zKnByaW1lNH12YXIgYixnLHIsajt2YXIgcGl4PTA7aT0wO3doaWxlKGk8c2FtcGxlcGl4ZWxzKXtiPShwaXhlbHNbcGl4XSYyNTUpPDxuZXRiaWFzc2hpZnQ7Zz0ocGl4ZWxzW3BpeCsxXSYyNTUpPDxuZXRiaWFzc2hpZnQ7cj0ocGl4ZWxzW3BpeCsyXSYyNTUpPDxuZXRiaWFzc2hpZnQ7aj1jb250ZXN0KGIsZyxyKTthbHRlcnNpbmdsZShhbHBoYSxqLGIsZyxyKTtpZihyYWQhPT0wKWFsdGVybmVpZ2gocmFkLGosYixnLHIpO3BpeCs9c3RlcDtpZihwaXg+PWxlbmd0aGNvdW50KXBpeC09bGVuZ3RoY291bnQ7aSsrO2lmKGRlbHRhPT09MClkZWx0YT0xO2lmKGklZGVsdGE9PT0wKXthbHBoYS09YWxwaGEvYWxwaGFkZWM7cmFkaXVzLT1yYWRpdXMvcmFkaXVzZGVjO3JhZD1yYWRpdXM+PnJhZGl1c2JpYXNzaGlmdDtpZihyYWQ8PTEpcmFkPTA7Zm9yKGo9MDtqPHJhZDtqKyspcmFkcG93ZXJbal09YWxwaGEqKChyYWQqcmFkLWoqaikqcmFkYmlhcy8ocmFkKnJhZCkpfX19ZnVuY3Rpb24gYnVpbGRDb2xvcm1hcCgpe2luaXQoKTtsZWFybigpO3VuYmlhc25ldCgpO2lueGJ1aWxkKCl9dGhpcy5idWlsZENvbG9ybWFwPWJ1aWxkQ29sb3JtYXA7ZnVuY3Rpb24gZ2V0Q29sb3JtYXAoKXt2YXIgbWFwPVtdO3ZhciBpbmRleD1bXTtmb3IodmFyIGk9MDtpPG5ldHNpemU7aSsrKWluZGV4W25ldHdvcmtbaV1bM11dPWk7dmFyIGs9MDtmb3IodmFyIGw9MDtsPG5ldHNpemU7bCsrKXt2YXIgaj1pbmRleFtsXTttYXBbaysrXT1uZXR3b3JrW2pdWzBdO21hcFtrKytdPW5ldHdvcmtbal1bMV07bWFwW2srK109bmV0d29ya1tqXVsyXX1yZXR1cm4gbWFwfXRoaXMuZ2V0Q29sb3JtYXA9Z2V0Q29sb3JtYXA7dGhpcy5sb29rdXBSR0I9aW54c2VhcmNofW1vZHVsZS5leHBvcnRzPU5ldVF1YW50fSx7fV0sNDpbZnVuY3Rpb24ocmVxdWlyZSxtb2R1bGUsZXhwb3J0cyl7dmFyIEdJRkVuY29kZXIscmVuZGVyRnJhbWU7R0lGRW5jb2Rlcj1yZXF1aXJlKCIuL0dJRkVuY29kZXIuanMiKTtyZW5kZXJGcmFtZT1mdW5jdGlvbihmcmFtZSl7dmFyIGVuY29kZXIscGFnZSxzdHJlYW0sdHJhbnNmZXI7ZW5jb2Rlcj1uZXcgR0lGRW5jb2RlcihmcmFtZS53aWR0aCxmcmFtZS5oZWlnaHQpO2lmKGZyYW1lLmluZGV4PT09MCl7ZW5jb2Rlci53cml0ZUhlYWRlcigpfWVsc2V7ZW5jb2Rlci5maXJzdEZyYW1lPWZhbHNlfWVuY29kZXIuc2V0VHJhbnNwYXJlbnQoZnJhbWUudHJhbnNwYXJlbnQpO2VuY29kZXIuc2V0UmVwZWF0KGZyYW1lLnJlcGVhdCk7ZW5jb2Rlci5zZXREZWxheShmcmFtZS5kZWxheSk7ZW5jb2Rlci5zZXRRdWFsaXR5KGZyYW1lLnF1YWxpdHkpO2VuY29kZXIuc2V0RGl0aGVyKGZyYW1lLmRpdGhlcik7ZW5jb2Rlci5zZXRHbG9iYWxQYWxldHRlKGZyYW1lLmdsb2JhbFBhbGV0dGUpO2VuY29kZXIuYWRkRnJhbWUoZnJhbWUuZGF0YSk7aWYoZnJhbWUubGFzdCl7ZW5jb2Rlci5maW5pc2goKX1pZihmcmFtZS5nbG9iYWxQYWxldHRlPT09dHJ1ZSl7ZnJhbWUuZ2xvYmFsUGFsZXR0ZT1lbmNvZGVyLmdldEdsb2JhbFBhbGV0dGUoKX1zdHJlYW09ZW5jb2Rlci5zdHJlYW0oKTtmcmFtZS5kYXRhPXN0cmVhbS5wYWdlcztmcmFtZS5jdXJzb3I9c3RyZWFtLmN1cnNvcjtmcmFtZS5wYWdlU2l6ZT1zdHJlYW0uY29uc3RydWN0b3IucGFnZVNpemU7aWYoZnJhbWUuY2FuVHJhbnNmZXIpe3RyYW5zZmVyPWZ1bmN0aW9uKCl7dmFyIGksbGVuLHJlZixyZXN1bHRzO3JlZj1mcmFtZS5kYXRhO3Jlc3VsdHM9W107Zm9yKGk9MCxsZW49cmVmLmxlbmd0aDtpPGxlbjtpKyspe3BhZ2U9cmVmW2ldO3Jlc3VsdHMucHVzaChwYWdlLmJ1ZmZlcil9cmV0dXJuIHJlc3VsdHN9KCk7cmV0dXJuIHNlbGYucG9zdE1lc3NhZ2UoZnJhbWUsdHJhbnNmZXIpfWVsc2V7cmV0dXJuIHNlbGYucG9zdE1lc3NhZ2UoZnJhbWUpfX07c2VsZi5vbm1lc3NhZ2U9ZnVuY3Rpb24oZXZlbnQpe3JldHVybiByZW5kZXJGcmFtZShldmVudC5kYXRhKX19LHsiLi9HSUZFbmNvZGVyLmpzIjoxfV19LHt9LFs0XSk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPWdpZi53b3JrZXIuanMubWFwCg==",self.location).href});for(const l of this.frames)i.addFrame(l,{delay:this._frameDelay});i.on("finished",l=>{e(l)}),i.on("error",l=>{console.error("[GifRecorder] GIF 合成失败:",l),a(l)}),i.render()})}async generateMp4(){return this.frames.length===0?(console.warn("[GifRecorder] 没有可用的帧"),null):new Promise((e,a)=>{try{const r=window.devicePixelRatio||1,i=document.createElement("canvas");i.width=this.captureRect.width*r,i.height=this.captureRect.height*r;const l=i.getContext("2d"),n=i.captureStream(0),c=n.getVideoTracks()[0];let s="video/webm;codecs=vp9",m="webm";MediaRecorder.isTypeSupported("video/mp4;codecs=h264")?(s="video/mp4;codecs=h264",m="mp4"):MediaRecorder.isTypeSupported("video/mp4")?(s="video/mp4",m="mp4"):MediaRecorder.isTypeSupported("video/webm;codecs=vp9")&&(s="video/webm;codecs=vp9",m="webm");const d=new MediaRecorder(n,{mimeType:s,videoBitsPerSecond:8e6}),g=[];d.ondataavailable=p=>{p.data.size>0&&g.push(p.data)},d.onstop=()=>{const p=new Blob(g,{type:s});e(p)},d.onerror=p=>{console.error("[GifRecorder] MP4 合成失败:",p),a(p)},d.start();let u=0;const y=()=>{if(u>=this.frames.length){setTimeout(()=>{d.stop()},100);return}const p=this.frames[u];l.putImageData(p,0,0),u++,typeof c.requestFrame=="function"&&c.requestFrame(),setTimeout(y,this._frameDelay)};y()}catch(r){console.error("[GifRecorder] MP4 合成失败:",r),a(r)}})}downloadGif(e,a="ORM-Record"){const r=`${a}.gif`,i=URL.createObjectURL(e),l=document.createElement("a");l.href=i,l.download=r,l.style.display="none",document.body.appendChild(l),l.click(),setTimeout(()=>{document.body.removeChild(l),URL.revokeObjectURL(i)},100)}downloadMp4(e,a="ORM-Record"){const r=`${a}.mp4`,i=URL.createObjectURL(e),l=document.createElement("a");l.href=i,l.download=r,l.style.display="none",document.body.appendChild(l),l.click(),setTimeout(()=>{document.body.removeChild(l),URL.revokeObjectURL(i)},100)}async saveAsFile(e){const r=`weather-animation-${new Date().toISOString().replace(/[:.]/g,"-").slice(0,19)}.gif`;if(window.showSaveFilePicker)try{const l=await(await window.showSaveFilePicker({suggestedName:r,types:[{description:"GIF Images",accept:{"image/gif":[".gif"]}}]})).createWritable();await l.write(e),await l.close(),console.log("文件保存成功");return}catch(i){console.log("用户取消了文件保存或发生错误:",i)}}reset(){this.frames=[],this.captureRect=null,this._isRecording=!1,this.canvas=null,this.ctx=null}get isRecording(){return this._isRecording}get frameDelay(){return this._frameDelay}}const g1="",pf={name:"IdmCapture",props:{isPlaying:{type:Boolean,default:!1},enabled:{type:Boolean,default:!1},frequency:{type:Number,default:1e3},currentTimestamp:{type:Number,default:void 0},token:{type:String,default:""}},emits:["closeRecord","preview","frameCount"],data(){return{recorder:null,actionStatus:0,startX:0,startY:0,selection:{x:0,y:0,width:0,height:0},frameCount:0,gifBlob:null,mp4Blob:null,gifUrl:"",mp4Url:""}},computed:{selectionStyle(){return{left:`${this.selection.x}px`,top:`${this.selection.y}px`,width:`${this.selection.width}px`,height:`${this.selection.height}px`}},computedUTCTime(){return o=>v(o).utc().format("yyyy-MM-DD HH:mm[Z]")}},watch:{frameCount:{handler(o){o&&this.$emit("frameCount",this.frameCount)}},enabled:{handler(o){o?this.actionStatus=1:this.actionStatus=5}},actionStatus:{handler(o){this.actionStatus===4&&this.startRecord(),this.actionStatus===5&&this.recorder&&this.createGifAndMp4(),this.actionStatus===6&&this.handleUpload(this.gifBlob),this.actionStatus===7&&this.$emit("preview",this.gifUrl,this.mp4Url)}}},methods:{handleMouseDown(o){this.actionStatus>=2&&o.clientX>=this.selection.x&&o.clientX<=this.selection.x+this.selection.width&&o.clientY>=this.selection.y&&o.clientY<=this.selection.y+this.selection.height||(this.actionStatus=2,this.startX=o.clientX,this.startY=o.clientY,this.selection={x:o.clientX,y:o.clientY,width:0,height:0})},handleMouseMove(o){if(this.actionStatus===3)return;const e=o.clientX,a=o.clientY;this.selection={x:Math.min(this.startX,e),y:Math.min(this.startY,a),width:Math.abs(e-this.startX),height:Math.abs(a-this.startY)}},handleMouseUp(){var o,e;((o=this.selection)==null?void 0:o.width)>20&&((e=this.selection)==null?void 0:e.height)>20?this.actionStatus=3:this.actionStatus=1},handleConfirm(){this.actionStatus=4},handleCancel(){this.actionStatus=1,this.recorder=null,this.selection={x:0,y:0,width:0,height:0}},startRecord(){var o,e,a;this.frameCount=0,this.recorder=new hf,(o=this.recorder)==null||o.setArea(this.selection),(e=this.recorder)==null||e.setFrameDelay(this.frequency),(a=this.recorder)==null||a.startRecording(),console.log("[BottomBar] 录制准备就绪")},async captureCurrentFrame(){var o,e,a;if(!(!this.recorder||this.actionStatus!==4)){console.log("[BottomBar] 开始截第"+(this.frameCount+1)+"帧截图");try{const r=(o=document.getElementsByClassName("gif-container"))==null?void 0:o[0];r&&(await((e=this.recorder)==null?void 0:e.captureFrame(r,this.computedUTCTime(this.currentTimestamp))),this.frameCount=(a=this.recorder)==null?void 0:a.getFrameCount(),console.log("[BottomBar] 截图总帧数:",this.frameCount))}catch(r){console.error("[BottomBar] 截图失败:",r)}}},async createGifAndMp4(){console.log("[BottomBar] 等待最后一帧截图完成..."),setTimeout(async()=>{var o,e,a;if(this.recorder){(o=this.recorder)==null||o.stopRecording(),console.log("[BottomBar] 停止录制,总帧数:",this.frameCount);try{this.gifBlob=await((e=this.recorder)==null?void 0:e.generateGif()),console.log("[BottomBar] GIF 生成完成:",this.gifBlob),this.mp4Blob=await((a=this.recorder)==null?void 0:a.generateMp4()),console.log("[BottomBar] MP4 生成完成:",this.mp4Blob),(this.gifBlob||this.mp4Blob)&&(this.actionStatus=6)}catch(r){console.error("[BottomBar] 生成失败:",r),this.clear()}}},2e3)},clear(){var o;this.actionStatus=0,this.frameCount=0,this.gifBlob=null,this.mp4Blob=null,this.gifUrl="",this.mp4Url="",this.recorder&&((o=this.recorder)==null||o.reset(),this.recorder=null),this.$emit("closeRecord"),console.log("[BottomBar] 关闭录制功能,清空数据")},async handleUpload(){console.log("[BottomBar] 开始上传");const o=[];if(this.gifBlob&&o.push({stream:this.gifBlob,ext:"gif"}),this.mp4Blob&&o.push({stream:this.mp4Blob,ext:"mp4"}),o.length===0){console.warn("[BottomBar] 没有可上传的文件");return}try{const e=await nr.AliOssSTSClient.create(this.token),a=await(e==null?void 0:e.put2HZ("/share",o));if(a&&a.length>0)for(const r of a)r.url&&(r.url.endsWith(".gif")?this.gifUrl=r.url:r.url.endsWith(".mp4")&&(this.mp4Url=r.url));console.log("[BottomBar] 上传成功",this.mp4Url,this.gifUrl),this.actionStatus=7}catch(e){console.error("[BottomBar] 上传失败:",e)}},handleDownloadGif(){const e=`ORM-Record-${v().format("yyyyMMDD-HHmm")}.gif`;this.recorder.downloadGif(this.gifBlob,e)},handleDownloadMp4(){const e=`ORM-Record-${v().format("yyyyMMDD-HHmm")}.mp4`;this.recorder.downloadMp4(this.mp4Blob,e)}}},gf={class:"capture-container"},uf={key:0,class:"drag-tips text-h4"},ff={class:"size-hint mt-2 ml-2 text-body-2 px-2 py-1 rounded font-weight-bold bg-background"},yf={class:"size-hint mt-2 ml-2 text-body-2 px-2 py-1 rounded font-weight-bold bg-background"},bf={class:"text-body-2"},wf={key:0,class:"py-1 px-2 d-flex align-center justify-center ga-2"},xf={class:"text-body-2"},kf={key:1,class:"py-1 px-2 d-flex align-center justify-center ga-2"},Af={class:"text-body-2"};function Lf(o,e,a,r,i,l){const n=t.resolveComponent("VBtn");return t.openBlock(),t.createElementBlock("div",gf,[i.actionStatus>0&&i.actionStatus<4?(t.openBlock(),t.createElementBlock("div",{key:0,class:"capture-selector",onMousedown:e[2]||(e[2]=(...c)=>l.handleMouseDown&&l.handleMouseDown(...c)),onMousemove:e[3]||(e[3]=(...c)=>l.handleMouseMove&&l.handleMouseMove(...c)),onMouseup:e[4]||(e[4]=(...c)=>l.handleMouseUp&&l.handleMouseUp(...c))},[i.actionStatus===1?(t.openBlock(),t.createElementBlock("div",uf,t.toDisplayString(o.$t("tips.crossHairText")),1)):t.createCommentVNode("",!0),i.actionStatus>=2?(t.openBlock(),t.createElementBlock("div",{key:1,class:"selection-box",style:t.normalizeStyle(l.selectionStyle)},[t.createElementVNode("div",ff,t.toDisplayString(Math.round(i.selection.width))+" × "+t.toDisplayString(Math.round(i.selection.height)),1),i.actionStatus===3?(t.openBlock(),t.createElementBlock("div",{key:0,class:"action-buttons px-2 rounded font-weight-bold bg-background d-flex justify-end ga-4",onMousedown:e[0]||(e[0]=t.withModifiers(()=>{},["stop"])),onMouseup:e[1]||(e[1]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(n,{icon:"mdi-check",density:"compact",variant:"plain",class:"text-none text-body-1",onClick:t.withModifiers(l.handleConfirm,["stop"])},null,8,["onClick"]),t.createVNode(n,{icon:"mdi-close",density:"compact",variant:"plain",class:"text-none text-body-1",onClick:t.withModifiers(l.handleCancel,["stop"])},null,8,["onClick"])],32)):t.createCommentVNode("",!0)],4)):t.createCommentVNode("",!0)],32)):t.createCommentVNode("",!0),i.actionStatus>=4&&i.actionStatus<=6?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["capture-frame",{recording:i.actionStatus===5}]),style:t.normalizeStyle(l.selectionStyle)},[t.createElementVNode("div",yf,[t.createElementVNode("div",bf,t.toDisplayString(i.selection.width)+" × "+t.toDisplayString(i.selection.height),1)]),t.createElementVNode("div",{class:"action-status mt-2 px-2 rounded font-weight-bold bg-background d-flex align-center justify-end ga-4",onMousedown:e[5]||(e[5]=t.withModifiers(()=>{},["stop"])),onMouseup:e[6]||(e[6]=t.withModifiers(()=>{},["stop"]))},[i.actionStatus===4?(t.openBlock(),t.createElementBlock("div",wf,[e[7]||(e[7]=t.createElementVNode("div",{class:"dot bg-danger"},null,-1)),t.createElementVNode("div",xf,t.toDisplayString(o.$t("tips.recordingText")),1)])):t.createCommentVNode("",!0),i.actionStatus===5||i.actionStatus===6?(t.openBlock(),t.createElementBlock("div",kf,[e[8]||(e[8]=t.createElementVNode("div",{class:"dot bg-success"},null,-1)),t.createElementVNode("div",Af,t.toDisplayString(o.$t("tips.savingText")),1)])):t.createCommentVNode("",!0)],32)],6)):t.createCommentVNode("",!0)])}const Oa=K(pf,[["render",Lf],["__scopeId","data-v-a81bf0b3"]]),u1="",Cf={name:"IdmBottomBar",components:{DateTimePicker:to,IdmCapture:Oa},props:{menuToggle:{type:Object,default:{}},weatherCheckList:{type:Array}},emits:["forecastModel","realTime","timeZone"],data(){return{right:10,show:{weather:!1,spot:!1,tropical:!1,ship:!1},dayAbout:{h:-7,f:14},currentDateTimeZ:void 0,currentTimestamp:void 0,currentDateTime:void 0,currentRealTime:void 0,minTimestamp:void 0,maxTimestamp:void 0,animation:void 0,startAnimate:0,step:0,frequency:1e3,paused:!0,intervalHour:3,intervalOptions:[3,6,12,24],showTimezone:!1,timeZone:localStorage.getItem("idm-timeZone-gl4")?Number(localStorage.getItem("idm-timeZone-gl4")):v().utcOffset()/60,offsets:[-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12],source:localStorage.getItem("forecastModelCacheGL4")==="undefined"?"ECMWF":localStorage.getItem("forecastModelCacheGL4"),gifEnabled:!1,frameCount:0}},watch:{"menuToggle.v":{handler(){this.$nextTick(()=>{var o;this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10})},immediate:!0},source:{handler(o,e){o&&o!==e&&(this.$emit("forecastModel",o),localStorage.setItem("forecastModelCacheGL4",o))},immediate:!0},step:{handler(o,e){if(!isNaN(o)&&!isNaN(e)&&o!==e){const a=o-e;let r=this.currentTimestamp;r=r+a*this.intervalHour*3600*1e3,r<=this.minTimestamp||r>=this.maxTimestamp?this.paused?this.currentTimestamp=a<0?this.minTimestamp:this.maxTimestamp:this.handleReset():this.currentTimestamp=r}}},currentTimestamp:{handler(){this.currentDateTimeZ=v(this.currentTimestamp).utc().format("yyyy-MM-DD HH:00[Z]"),this.$emit("realTime",this.currentDateTimeZ),this.currentDateTime=`${v.tz(this.currentTimestamp,this.timeZoneName).clone().format("yyyy-MM-DD : HH:00")}`},immediate:!0},timeZone:{handler(o,e){o!==e&&(this.$emit("timeZone",this.timeZone),localStorage.setItem("idm-timeZone-gl4",this.timeZone),this.showTimezone=!1)},immediate:!0},show:{handler(){var o;Object.values(this.show).includes(!0)||(o=this.$refs.dateTimePicker)==null||o.handleCancelDate()},deep:!0},gifEnabled:{handler(o,e){o||this.handlePause()},immediate:!0}},mounted(){this.handleReset()},methods:{handleReset(){var o;this.handlePause(),this.startAnimate=0,(o=this.$refs.dateTimePicker)==null||o.handleReset()},changeDayAbout(o,e){this.dayAbout={h:o??-7,f:e??14},this.$nextTick(()=>{var a;(a=this.$refs.dateTimePicker)==null||a.handleResetMinMax()})},handleToggle(o,e){this.show[o]=e},handleBackward(){this.handlePause(),this.step-=1},handleForward(){this.handlePause(),this.step+=1},handlePlay(){this.paused=!1,this.step=0,this.animateSpeeds()},async handlePause(){this.animation&&cancelAnimationFrame(this.animation),this.paused=!0},animateSpeeds(o){const e=o-this.startAnimate;this.step=Math.floor(e/this.frequency),this.animation=requestAnimationFrame(this.animateSpeeds)},handleClickFastWeather(o){this.$parent.$refs.idmWeatherLayers.handleFastWeatherToggle(o)},handleClickFastMore(){this.$parent.$refs.idmWeatherLayers.handleMenuToggle()}}},vf={class:"idm-bottom-bar-gl4"},zf={class:"date-box d-flex ga-2 mr-2"},_f={class:"play-btns-box d-flex justify-center align-center cursor-pointer ga-1"},Sf={class:"fast-weathers-box d-flex justify-center align-center ga-2 cursor-pointer"},Nf={class:"model-box d-flex justify-center align-center ga-2 my-2"},Mf={key:0,class:"list d-flex flex-wrap pa-2 rounded ga-2"},Pf=["onClick"],Vf={class:"btn-box d-flex justify-start align-center rounded ga-2 py-1 px-3"},Tf={class:"text-body-1"};function Ef(o,e,a,r,i,l){const n=t.resolveComponent("IdmCapture"),c=t.resolveComponent("DateTimePicker"),s=t.resolveComponent("VListItemTitle"),m=t.resolveComponent("VListItem"),d=t.resolveComponent("VList"),g=t.resolveComponent("VMenu"),u=t.resolveComponent("VBtn"),y=t.resolveComponent("VDivider"),p=t.resolveComponent("VTooltip");return t.openBlock(),t.createElementBlock("div",vf,[t.createVNode(n,t.mergeProps({ref:"capture","is-playing":!i.paused,enabled:i.gifEnabled,frequency:i.frequency,"current-timestamp":i.currentTimestamp},o.$attrs,{onCloseRecord:e[0]||(e[0]=h=>{i.gifEnabled=!1,i.paused=!0}),onFrameCount:e[1]||(e[1]=h=>i.frameCount=h)}),null,16,["is-playing","enabled","frequency","current-timestamp"]),t.createElementVNode("div",{class:"time-box px-2 d-flex justify-start align-center rounded",style:t.normalizeStyle({right:i.right+146+"px",bottom:Object.values(i.show).includes(!0)?"10px":"-100px"})},[t.createElementVNode("div",zf,[t.createVNode(c,t.mergeProps({ref:"dateTimePicker","date-time":i.currentDateTimeZ,"time-zone":i.timeZone,"day-about":i.dayAbout,"interval-hour":i.intervalHour,width:230},o.$attrs,{onCurrentTimestamp:e[2]||(e[2]=h=>i.currentTimestamp=h),onCurrentRealTime:e[3]||(e[3]=h=>i.currentRealTime=h),onMinTimestamp:e[4]||(e[4]=h=>i.minTimestamp=h),onMaxTimestamp:e[5]||(e[5]=h=>i.maxTimestamp=h)}),null,16,["date-time","time-zone","day-about","interval-hour"]),t.createVNode(u,{text:"",height:"30",class:"text-none elevation-0 btn-border-1 btn-bg-1 text-body-1","min-width":"30"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.intervalHour)+" h ",1),t.createVNode(g,{activator:"parent"},{default:t.withCtx(()=>[t.createVNode(d,{class:"pa-1"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.intervalOptions,(h,f)=>(t.openBlock(),t.createBlock(m,{key:f,value:h,variant:i.intervalHour===h?"tonal":"text",color:"primary",rounded:"",active:i.intervalHour===h,height:"30","min-height":"30","min-width":"30",class:"pa-0 text-center text-body-1"},{default:t.withCtx(()=>[t.createVNode(s,{onClick:w=>i.intervalHour=h},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h)+"h",1)]),_:2},1032,["onClick"])]),_:2},1032,["value","variant","active"]))),128))]),_:1})]),_:1})]),_:1})]),t.createVNode(y,{vertical:"",class:"mx-2 my-3",style:{height:"16px"}}),t.createElementVNode("div",_f,[t.createVNode(p,{text:i.gifEnabled?o.$t("actions.stop"):o.$t("actions.record"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[i.gifEnabled?(t.openBlock(),t.createBlock(u,t.mergeProps({key:1,disabled:i.frameCount<1},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[7]||(e[7]=f=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[15]||(e[15]=[t.createElementVNode("i",{class:"iconfont icon-stop-record text-danger"},null,-1)])),_:2,__:[15]},1040,["disabled"])):(t.openBlock(),t.createBlock(u,t.mergeProps({key:0},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[6]||(e[6]=f=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[14]||(e[14]=[t.createElementVNode("i",{class:"iconfont icon-record"},null,-1)])),_:2,__:[14]},1040))]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.reset"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleReset}),{default:t.withCtx(()=>e[16]||(e[16]=[t.createElementVNode("i",{class:"iconfont icon-Reset"},null,-1)])),_:2,__:[16]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.backward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleBackward}),{default:t.withCtx(()=>e[17]||(e[17]=[t.createElementVNode("i",{class:"iconfont icon-Backward"},null,-1)])),_:2,__:[17]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.play"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[i.paused?(t.openBlock(),t.createBlock(u,t.mergeProps({key:0},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePlay}),{default:t.withCtx(()=>e[18]||(e[18]=[t.createElementVNode("i",{class:"iconfont icon-Play"},null,-1)])),_:2,__:[18]},1040,["onClick"])):t.createCommentVNode("",!0)]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.pause"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[i.paused?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,t.mergeProps({key:0},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePause}),{default:t.withCtx(()=>e[19]||(e[19]=[t.createElementVNode("i",{class:"iconfont icon-Pause"},null,-1)])),_:2,__:[19]},1040,["onClick"]))]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.forward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleForward}),{default:t.withCtx(()=>e[20]||(e[20]=[t.createElementVNode("i",{class:"iconfont icon-Forward"},null,-1)])),_:2,__:[20]},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(y,{vertical:"",class:"mx-2 my-3",style:{height:"16px"}}),t.createElementVNode("div",Sf,[t.createVNode(p,{text:o.$t("weather.windBarbs"),location:"top"},{activator:t.withCtx(({props:h})=>{var f,w;return[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",color:(f=a.weatherCheckList)!=null&&f.includes("wind")?"primary":"",variant:(w=a.weatherCheckList)!=null&&w.includes("wind")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[8]||(e[8]=b=>l.handleClickFastWeather("wind"))}),{default:t.withCtx(()=>e[21]||(e[21]=[t.createElementVNode("i",{class:"iconfont icon-a-WindLevel"},null,-1)])),_:2,__:[21]},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(p,{text:o.$t("weather.sigWaveHeight"),location:"top"},{activator:t.withCtx(({props:h})=>{var f,w;return[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",color:(f=a.weatherCheckList)!=null&&f.includes("sig-wave-height")?"primary":"",variant:(w=a.weatherCheckList)!=null&&w.includes("sig-wave-height")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[9]||(e[9]=b=>l.handleClickFastWeather("sig-wave-height"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(h,{class:"iconfont icon-a-WaveHeight"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(p,{text:o.$t("weather.currentDirection"),location:"top"},{activator:t.withCtx(({props:h})=>{var f,w;return[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",color:(f=a.weatherCheckList)!=null&&f.includes("current-direction")?"primary":"",variant:(w=a.weatherCheckList)!=null&&w.includes("current-direction")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[10]||(e[10]=b=>l.handleClickFastWeather("current-direction"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(h,{class:"iconfont icon-Current"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(p,{text:o.$t("weather.weatherLayers"),location:"top"},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",variant:"text",height:"24",width:"24","min-width":"24",onClick:l.handleClickFastMore}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(h,{class:"iconfont icon-dots-align"}),null,16)]),_:2},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(y,{vertical:"",class:"mx-2 mr-3 my-3",style:{height:"16px"}}),t.createElementVNode("div",Nf,[t.createVNode(u,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="GFS"?"bg-primary":"btn-bg-2"]),color:i.source==="GFS"?"primary":"",onClick:e[11]||(e[11]=h=>i.source="GFS")},{default:t.withCtx(()=>e[22]||(e[22]=[t.createTextVNode(" NOAA ",-1)])),_:1,__:[22]},8,["color","class"]),t.createVNode(u,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="ECMWF"?"bg-primary":"btn-bg-2"]),color:i.source==="ECMWF"?"primary":"",onClick:e[12]||(e[12]=h=>i.source="ECMWF")},{default:t.withCtx(()=>e[23]||(e[23]=[t.createTextVNode(" ECMWF ",-1)])),_:1,__:[23]},8,["class","color"])])],4),t.createElementVNode("div",{class:"timezone-box d-flex flex-column justify-space-between align-end",style:t.normalizeStyle({right:i.right+"px"})},[i.showTimezone?(t.openBlock(),t.createElementBlock("div",Mf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.offsets,h=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"item rounded text-body-2 hover-active",onClick:f=>i.timeZone=h},t.toDisplayString(h<0?h:"+"+h),9,Pf))),128))])):t.createCommentVNode("",!0),t.createElementVNode("div",Vf,[t.createVNode(u,{text:"",variant:"flat",height:"28",class:"pa-1 text-body-1",color:"primary",onClick:e[13]||(e[13]=h=>i.showTimezone=!i.showTimezone)},{default:t.withCtx(()=>[t.createTextVNode(" UTC "+t.toDisplayString(i.timeZone<0?i.timeZone:"+"+i.timeZone),1)]),_:1}),t.createElementVNode("span",Tf,t.toDisplayString(i.currentRealTime),1)])],4)])}const Df=K(Cf,[["render",Ef]]),f1="",Rf={name:"IdmTimePlayer",components:{DateTimePicker:to},props:{menuToggle:{type:Object,default:{}},weatherCheckList:{type:Array},playerBottom:{type:Number,default:30}},emits:["realTime","timeZone"],data(){return{right:10,show:{weather:!1,spot:!1,tropical:!1,ship:!1},dayAbout:{h:-7,f:14},currentDateTimeZ:void 0,currentTimestamp:void 0,currentDateTime:void 0,currentRealTime:void 0,minTimestamp:void 0,maxTimestamp:void 0,animation:void 0,startAnimate:0,step:0,frequency:1e3,paused:!0,intervalHour:3,intervalOptions:[3,6,12,24],showTimezone:!1,timeZone:v().utcOffset()/60,offsets:[-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12]}},watch:{step:{handler(o,e){if(!isNaN(o)&&!isNaN(e)&&o!==e){const a=o-e;let r=this.currentTimestamp;r=r+a*this.intervalHour*3600*1e3,r<=this.minTimestamp||r>=this.maxTimestamp?this.paused?this.currentTimestamp=a<0?this.minTimestamp:this.maxTimestamp:this.handleReset():this.currentTimestamp=r}}},currentTimestamp:{handler(){this.currentDateTimeZ=v(this.currentTimestamp).utc().format("yyyy-MM-DD HH:00[Z]"),this.$emit("realTime",this.currentDateTimeZ),this.currentDateTime=`${v.tz(this.currentTimestamp,this.timeZoneName).clone().format("yyyy-MM-DD : HH:00")}`},immediate:!0},timeZone:{handler(o,e){o!==e&&(this.$emit("timeZone",this.timeZone),this.showTimezone=!1)},immediate:!0},show:{handler(){var o;Object.values(this.show).includes(!0)||(o=this.$refs.dateTimePicker)==null||o.handleCancelDate()},deep:!0}},mounted(){this.handleReset()},methods:{handleReset(){var o;this.handlePause(),this.startAnimate=0,(o=this.$refs.dateTimePicker)==null||o.handleReset()},changeDayAbout(o,e){this.dayAbout={h:o??-7,f:e??14}},handleToggle(o,e){this.show[o]=e},handleBackward(){this.handlePause(),this.step-=1},handleForward(){this.handlePause(),this.step+=1},handlePlay(){this.paused=!1,this.step=0,this.animateSpeeds()},handlePause(){this.animation&&cancelAnimationFrame(this.animation),this.paused=!0},animateSpeeds(o){const e=o-this.startAnimate;this.step=Math.floor(e/this.frequency),this.animation=requestAnimationFrame(this.animateSpeeds)}}},Bf={class:"w-100 timeline-box d-flex justify-space-around align-center rounded px-2"};function If(o,e,a,r,i,l){const n=t.resolveComponent("VBtn"),c=t.resolveComponent("DateTimePicker");return t.openBlock(),t.createElementBlock("div",{class:"idm-time-player-gl4 d-flex justify-center align-center",style:t.normalizeStyle({bottom:Object.values(i.show).includes(!0)?a.playerBottom+"px":"-100px"})},[t.createElementVNode("div",Bf,[t.createVNode(n,{size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handleReset},{default:t.withCtx(()=>e[4]||(e[4]=[t.createElementVNode("i",{class:"iconfont icon-Reset"},null,-1)])),_:1,__:[4]},8,["onClick"]),t.createVNode(n,{size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handleBackward},{default:t.withCtx(()=>e[5]||(e[5]=[t.createElementVNode("i",{class:"iconfont icon-Backward"},null,-1)])),_:1,__:[5]},8,["onClick"]),t.createVNode(c,t.mergeProps({ref:"dateTimePicker","date-time":i.currentDateTimeZ,"time-zone":i.timeZone,"day-about":i.dayAbout,"interval-hour":i.intervalHour,height:32},o.$attrs,{onCurrentTimestamp:e[0]||(e[0]=s=>i.currentTimestamp=s),onCurrentRealTime:e[1]||(e[1]=s=>i.currentRealTime=s),onMinTimestamp:e[2]||(e[2]=s=>i.minTimestamp=s),onMaxTimestamp:e[3]||(e[3]=s=>i.maxTimestamp=s)}),null,16,["date-time","time-zone","day-about","interval-hour"]),t.createVNode(n,{size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handleForward},{default:t.withCtx(()=>e[6]||(e[6]=[t.createElementVNode("i",{class:"iconfont icon-Forward"},null,-1)])),_:1,__:[6]},8,["onClick"]),i.paused?(t.openBlock(),t.createBlock(n,{key:0,size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handlePlay},{default:t.withCtx(()=>e[7]||(e[7]=[t.createElementVNode("i",{class:"iconfont icon-Play"},null,-1)])),_:1,__:[7]},8,["onClick"])):(t.openBlock(),t.createBlock(n,{key:1,size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handlePause},{default:t.withCtx(()=>e[8]||(e[8]=[t.createElementVNode("i",{class:"iconfont icon-Pause"},null,-1)])),_:1,__:[8]},8,["onClick"]))])],4)}const la=K(Rf,[["render",If]]),y1="",Ff={name:"IdmBottomTimeLine",components:{DateTimePicker:to,IdmCapture:Oa},props:{menuToggle:{type:Object,default:{}},weatherCheckList:{type:Array}},emits:["forecastModel","realTime","timeZone"],data(){return{right:10,show:{weather:!1,spot:!1,tropical:!1,ship:!1},dayAbout:{h:0,f:14},currentDateTimeZ:void 0,currentTimestamp:void 0,currentDateTime:void 0,currentRealTime:void 0,animation:void 0,startAnimate:0,step:0,frequency:1e3,paused:!0,intervalHour:3,intervalOptions:[3,6,12,24],timer:void 0,showTimezone:!1,timeZone:localStorage.getItem("idm-timeZone-gl4")?Number(localStorage.getItem("idm-timeZone-gl4")):v().utcOffset()/60,offsets:[-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12],source:localStorage.getItem("forecastModelCacheGL4")==="undefined"?"ECMWF":localStorage.getItem("forecastModelCacheGL4"),gifEnabled:!1,frameCount:0,isDragging:!1,dragStartX:0,dragScrollLeft:0,hasDragged:!1}},computed:{minTimestamp(){return v.tz(v().add(this.dayAbout.h,"days"),this.timeZoneName).startOf("day").valueOf()},maxTimestamp(){return v.tz(v().add(this.dayAbout.f,"days"),this.timeZoneName).endOf("day").valueOf()},timelineStartDate(){return v.tz(this.minTimestamp,this.timeZoneName).startOf("day")},timelineEndDate(){return v.tz(this.maxTimestamp,this.timeZoneName).startOf("day")},timelineTotalHours(){return this.timelineEndDate.diff(this.timelineStartDate,"hours")+24},hourWidth(){const o=Math.ceil(24/this.intervalHour),e=this.timelineTotalHours/24*o;return Math.max(32,Math.ceil(600/Math.min(e,7*o)))},timeZoneName(){var o;return(o=v.tz.names().filter(e=>v.tz(v(),e).utcOffset()===this.timeZone*60))==null?void 0:o[0]},playBubbleText(){return this.currentTimestamp?v.tz(this.currentTimestamp,this.timeZoneName).format("MM-DD HH:00")+" ( UTC "+(this.timeZone>=0?"+":"-")+this.timeZone+" )":""},timelineDays(){const o=[],e=this.timeZoneName,a=(this.timeZone%this.intervalHour+this.intervalHour)%this.intervalHour;let r=v.tz(this.minTimestamp,e).startOf("day");const i=v.tz(this.maxTimestamp,e).startOf("day");for(;r.isSameOrBefore(i);){const l=[];for(let n=a;n<24;n+=this.intervalHour){const c=r.clone().add(n,"hours").valueOf();c<this.minTimestamp||c>this.maxTimestamp||l.push({key:`${r.format("YYYY-MM-DD")}-${n}`,timestamp:c,isActive:c<=(this.currentTimestamp||Date.now()),isCurrent:this.currentTimestamp>=c&&this.currentTimestamp<c+this.intervalHour*36e5,label:String(n).padStart(2,"0")})}l.length&&o.push({key:r.format("YYYY-MM-DD"),label:r.format("MMM-DD")+" "+r.format("ddd"),hours:l}),r.add(1,"day")}return o}},watch:{"menuToggle.v":{handler(){this.$nextTick(()=>{var o;this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10})},immediate:!0},source:{handler(o,e){o&&o!==e&&(this.$emit("forecastModel",o),localStorage.setItem("forecastModelCacheGL4",o))},immediate:!0},step:{handler(o,e){if(!isNaN(o)&&!isNaN(e)&&o!==e){const a=o-e;let r=this.currentTimestamp;r=r+a*this.intervalHour*3600*1e3,r<=this.minTimestamp||r>=this.maxTimestamp?this.paused?this.currentTimestamp=a<0?this.minTimestamp:this.maxTimestamp:this.handleReset():this.currentTimestamp=r}}},dayAbout:{handler(){this.initCurrentTimestamp()},deep:!0},currentTimestamp:{handler(){this.currentDateTimeZ=v(this.currentTimestamp).utc().format("yyyy-MM-DD HH:00[Z]"),this.$emit("realTime",this.currentDateTimeZ),this.currentDateTime=`${v.tz(this.currentTimestamp,this.timeZoneName).clone().format("yyyy-MM-DD : HH:00")}`,this.paused||this.$nextTick(()=>{const o=this.$refs.timelineScroll;if(!o||!this.currentTimestamp)return;const e=this.timeZoneName,a=v.tz(this.currentTimestamp,e),l=(a.clone().startOf("day").diff(this.timelineStartDate,"hours")+a.hour())/this.intervalHour*this.hourWidth,n=l+this.hourWidth,c=o.scrollLeft,s=c+o.clientWidth;n>s?o.scrollLeft=n-o.clientWidth:l<c&&(o.scrollLeft=l)})},immediate:!0},timeZone:{handler(o,e){o!==e&&(this.$emit("timeZone",this.timeZone),localStorage.setItem("idm-timeZone-gl4",this.timeZone),this.showTimezone=!1)},immediate:!0},show:{handler(){var o;Object.values(this.show).includes(!0)||(o=this.$refs.dateTimePicker)==null||o.handleCancelDate()},deep:!0},gifEnabled:{handler(o,e){o||this.handlePause()},immediate:!0}},mounted(){this.initCurrentTimestamp(),this.timer=setInterval(()=>{this.currentRealTime=`${v.tz(v().unix()*1e3,this.timeZoneName).clone().format("HH:mm")}`},100)},methods:{initCurrentTimestamp(){const o=Date.now(),e=this.timeZoneName,a=v.tz(o,e),r=(this.timeZone%this.intervalHour+this.intervalHour)%this.intervalHour,i=a.hour(),l=i-((i-r)%this.intervalHour+this.intervalHour)%this.intervalHour,n=a.clone().set({minute:0,second:0,millisecond:0,hour:l}).valueOf();this.currentTimestamp=Math.max(this.minTimestamp,Math.min(n,this.maxTimestamp)),this.step=0,this.startAnimate=0,this.$nextTick(()=>{const c=this.$refs.timelineScroll;if(!c)return;const s=v.tz(this.currentTimestamp,e),m=s.clone().startOf("day").diff(this.timelineStartDate,"hours")+s.hour(),d=Math.max(0,m*this.hourWidth-c.clientWidth/2);c.scrollLeft=d})},handleTimelineClick(o){this.hasDragged||(this.handlePause(),this.currentTimestamp=Math.max(this.minTimestamp,Math.min(o,this.maxTimestamp)))},handleDateClick(o,e){if(this.hasDragged)return;const a=e.currentTarget.getBoundingClientRect(),r=e.clientX-a.left-2,i=Math.min(Math.floor(r/this.hourWidth),o.hours.length-1);i>=0&&i<o.hours.length&&this.handleTimelineClick(o.hours[i].timestamp)},handleDragStart(o){var e;this.isDragging=!0,this.hasDragged=!1,this.dragStartX=o.clientX,this.dragScrollLeft=((e=this.$refs.timelineScroll)==null?void 0:e.scrollLeft)||0},handleDragMove(o){if(!this.isDragging)return;const e=o.clientX-this.dragStartX;Math.abs(e)>3&&(this.hasDragged=!0),this.$refs.timelineScroll&&(this.$refs.timelineScroll.scrollLeft=this.dragScrollLeft-e)},handleDragEnd(){this.isDragging=!1},handleReset(){this.handlePause(),this.startAnimate=0,this.step=0,this.initCurrentTimestamp()},changeDayAbout(o,e){this.dayAbout={h:o??0,f:e??14},this.$nextTick(()=>{this.initCurrentTimestamp()})},handleToggle(o,e){this.show[o]=e},handleBackward(){this.handlePause(),this.step-=1},handleForward(){this.handlePause(),this.step+=1},handlePlay(){this.paused=!1,this.step=0,this.animateSpeeds()},async handlePause(){this.animation&&cancelAnimationFrame(this.animation),this.paused=!0},animateSpeeds(o){const e=o-this.startAnimate;this.step=Math.floor(e/this.frequency),this.animation=requestAnimationFrame(this.animateSpeeds)},handleClickFastWeather(o){this.$parent.$refs.idmWeatherLayers.handleFastWeatherToggle(o)},handleClickFastMore(){this.$parent.$refs.idmWeatherLayers.handleMenuToggle()}}},Gf={class:"idm-bottom-bar-gl4"},jf={class:"play-btns-box d-flex justify-center align-center cursor-pointer ga-1"},Wf={class:"date-box d-flex ga-2"},Zf={class:"hour-box d-flex ga-2 flex-1-1-0 h-100 overflow-hidden"},Xf={class:"timeline-track"},Hf=["onClick"],Of={class:"timeline-hours"},Yf=["onClick"],Uf={key:0,class:"play-bubble"},Jf={class:"bubble-text"},Kf={key:1,class:"hour-label"},Qf={class:"fast-weathers-box d-flex justify-center align-center ga-2 cursor-pointer"},qf={class:"model-box d-flex justify-center align-center ga-2 my-2"},$f={key:0,class:"list d-flex flex-wrap pa-2 rounded ga-2"},ey=["onClick"],ty={class:"btn-box d-flex justify-start align-center rounded ga-2 py-1 px-3"},oy={class:"text-body-1"};function ay(o,e,a,r,i,l){const n=t.resolveComponent("IdmCapture"),c=t.resolveComponent("VBtn"),s=t.resolveComponent("VTooltip"),m=t.resolveComponent("VDivider"),d=t.resolveComponent("VListItemTitle"),g=t.resolveComponent("VListItem"),u=t.resolveComponent("VList"),y=t.resolveComponent("VMenu");return t.openBlock(),t.createElementBlock("div",Gf,[t.createVNode(n,t.mergeProps({ref:"capture","is-playing":!i.paused,enabled:i.gifEnabled,frequency:i.frequency,"current-timestamp":i.currentTimestamp},o.$attrs,{onCloseRecord:e[0]||(e[0]=p=>{i.gifEnabled=!1,i.paused=!0}),onFrameCount:e[1]||(e[1]=p=>i.frameCount=p)}),null,16,["is-playing","enabled","frequency","current-timestamp"]),t.createElementVNode("div",{class:"timeline-box px-2 d-flex justify-start align-center rounded",style:t.normalizeStyle({right:i.right+146+"px",bottom:Object.values(i.show).includes(!0)?"10px":"-100px"})},[t.createElementVNode("div",jf,[t.createVNode(s,{text:i.gifEnabled?o.$t("actions.stop"):o.$t("actions.record"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[i.gifEnabled?(t.openBlock(),t.createBlock(c,t.mergeProps({key:1,disabled:i.frameCount<1},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[3]||(e[3]=h=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[15]||(e[15]=[t.createElementVNode("i",{class:"iconfont icon-stop-record text-danger"},null,-1)])),_:2,__:[15]},1040,["disabled"])):(t.openBlock(),t.createBlock(c,t.mergeProps({key:0},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[2]||(e[2]=h=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[14]||(e[14]=[t.createElementVNode("i",{class:"iconfont icon-record"},null,-1)])),_:2,__:[14]},1040))]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.reset"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleReset}),{default:t.withCtx(()=>e[16]||(e[16]=[t.createElementVNode("i",{class:"iconfont icon-Reset"},null,-1)])),_:2,__:[16]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.backward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleBackward}),{default:t.withCtx(()=>e[17]||(e[17]=[t.createElementVNode("i",{class:"iconfont icon-Backward"},null,-1)])),_:2,__:[17]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.play"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[i.paused?(t.openBlock(),t.createBlock(c,t.mergeProps({key:0},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePlay}),{default:t.withCtx(()=>e[18]||(e[18]=[t.createElementVNode("i",{class:"iconfont icon-Play"},null,-1)])),_:2,__:[18]},1040,["onClick"])):t.createCommentVNode("",!0)]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.pause"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[i.paused?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(c,t.mergeProps({key:0},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePause}),{default:t.withCtx(()=>e[19]||(e[19]=[t.createElementVNode("i",{class:"iconfont icon-Pause"},null,-1)])),_:2,__:[19]},1040,["onClick"]))]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.forward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleForward}),{default:t.withCtx(()=>e[20]||(e[20]=[t.createElementVNode("i",{class:"iconfont icon-Forward"},null,-1)])),_:2,__:[20]},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(m,{vertical:"",class:"mx-2 my-4"}),t.createElementVNode("div",Wf,[t.createVNode(c,{text:"",height:"30",class:"text-none elevation-0 btn-border-1 btn-bg-1 text-body-1","min-width":"30"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.intervalHour)+" h ",1),t.createVNode(y,{activator:"parent"},{default:t.withCtx(()=>[t.createVNode(u,{class:"pa-1"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.intervalOptions,(p,h)=>(t.openBlock(),t.createBlock(g,{key:h,value:p,variant:i.intervalHour===p?"tonal":"text",color:"primary",rounded:"",active:i.intervalHour===p,height:"30","min-height":"30","min-width":"30",class:"pa-0 text-center text-body-1"},{default:t.withCtx(()=>[t.createVNode(d,{onClick:f=>i.intervalHour=p},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(p)+"h",1)]),_:2},1032,["onClick"])]),_:2},1032,["value","variant","active"]))),128))]),_:1})]),_:1})]),_:1})]),t.createVNode(m,{vertical:"",class:"mx-2 my-4"}),t.createElementVNode("div",Zf,[t.createElementVNode("div",{ref:"timelineScroll",class:t.normalizeClass(["timeline-scroll w-100 h-100",{dragging:i.isDragging}]),onMousedown:e[4]||(e[4]=(...p)=>l.handleDragStart&&l.handleDragStart(...p)),onMousemove:e[5]||(e[5]=(...p)=>l.handleDragMove&&l.handleDragMove(...p)),onMouseup:e[6]||(e[6]=(...p)=>l.handleDragEnd&&l.handleDragEnd(...p)),onMouseleave:e[7]||(e[7]=(...p)=>l.handleDragEnd&&l.handleDragEnd(...p))},[t.createElementVNode("div",Xf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.timelineDays,p=>(t.openBlock(),t.createElementBlock("div",{key:p.key,class:"timeline-day"},[t.createElementVNode("div",{class:"timeline-date",onClick:h=>l.handleDateClick(p,h)},t.toDisplayString(p.label),9,Hf),t.createElementVNode("div",Of,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.hours,h=>(t.openBlock(),t.createElementBlock("div",{key:h.key,class:t.normalizeClass(["timeline-hour",{active:h.isActive}]),style:t.normalizeStyle({width:l.hourWidth+"px"}),onClick:f=>l.handleTimelineClick(h.timestamp)},[h.isCurrent?(t.openBlock(),t.createElementBlock("div",Uf,[t.createElementVNode("span",Jf,t.toDisplayString(l.playBubbleText),1),e[21]||(e[21]=t.createElementVNode("span",{class:"bubble-arrow"},null,-1))])):t.createCommentVNode("",!0),i.intervalHour<24?(t.openBlock(),t.createElementBlock("span",Kf,t.toDisplayString(h.label),1)):t.createCommentVNode("",!0)],14,Yf))),128))])]))),128))])],34)]),t.createVNode(m,{vertical:"",class:"mx-2 my-4"}),t.createElementVNode("div",Qf,[t.createVNode(s,{text:o.$t("weather.windBarbs"),location:"top"},{activator:t.withCtx(({props:p})=>{var h,f;return[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",color:(h=a.weatherCheckList)!=null&&h.includes("wind")?"primary":"",variant:(f=a.weatherCheckList)!=null&&f.includes("wind")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[8]||(e[8]=w=>l.handleClickFastWeather("wind"))}),{default:t.withCtx(()=>e[22]||(e[22]=[t.createElementVNode("i",{class:"iconfont icon-a-WindLevel"},null,-1)])),_:2,__:[22]},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(s,{text:o.$t("weather.sigWaveHeight"),location:"top"},{activator:t.withCtx(({props:p})=>{var h,f;return[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",color:(h=a.weatherCheckList)!=null&&h.includes("sig-wave-height")?"primary":"",variant:(f=a.weatherCheckList)!=null&&f.includes("sig-wave-height")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[9]||(e[9]=w=>l.handleClickFastWeather("sig-wave-height"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(p,{class:"iconfont icon-a-WaveHeight"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(s,{text:o.$t("weather.currentDirection"),location:"top"},{activator:t.withCtx(({props:p})=>{var h,f;return[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",color:(h=a.weatherCheckList)!=null&&h.includes("current-direction")?"primary":"",variant:(f=a.weatherCheckList)!=null&&f.includes("current-direction")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[10]||(e[10]=w=>l.handleClickFastWeather("current-direction"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(p,{class:"iconfont icon-Current"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(s,{text:o.$t("weather.weatherLayers"),location:"top"},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",variant:"text",height:"24",width:"24","min-width":"24",onClick:l.handleClickFastMore}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(p,{class:"iconfont icon-dots-align"}),null,16)]),_:2},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(m,{vertical:"",class:"mx-2 mr-3 my-4"}),t.createElementVNode("div",qf,[t.createVNode(c,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="GFS"?"bg-primary":"btn-bg-2"]),color:i.source==="GFS"?"primary":"",onClick:e[11]||(e[11]=p=>i.source="GFS")},{default:t.withCtx(()=>e[23]||(e[23]=[t.createTextVNode(" NOAA ",-1)])),_:1,__:[23]},8,["color","class"]),t.createVNode(c,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="ECMWF"?"bg-primary":"btn-bg-2"]),color:i.source==="ECMWF"?"primary":"",onClick:e[12]||(e[12]=p=>i.source="ECMWF")},{default:t.withCtx(()=>e[24]||(e[24]=[t.createTextVNode(" ECMWF ",-1)])),_:1,__:[24]},8,["class","color"])])],4),t.createElementVNode("div",{class:"timezone-box d-flex flex-column justify-space-between align-end",style:t.normalizeStyle({right:i.right+"px"})},[i.showTimezone?(t.openBlock(),t.createElementBlock("div",$f,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.offsets,p=>(t.openBlock(),t.createElementBlock("div",{key:p,class:"item rounded text-body-2 hover-active",onClick:h=>i.timeZone=p},t.toDisplayString(p<0?p:"+"+p),9,ey))),128))])):t.createCommentVNode("",!0),t.createElementVNode("div",ty,[t.createVNode(c,{text:"",variant:"flat",height:"28",class:"pa-1 text-body-1",color:"primary",onClick:e[13]||(e[13]=p=>i.showTimezone=!i.showTimezone)},{default:t.withCtx(()=>[t.createTextVNode(" UTC "+t.toDisplayString(i.timeZone<0?i.timeZone:"+"+i.timeZone),1)]),_:1}),t.createElementVNode("span",oy,t.toDisplayString(i.currentRealTime),1)])],4)])}const iy={name:"IdmGL4",components:{IdmOtherLayer:ys,IdmWeatherLayer:nm,IdmTropicals:Xo,IdmMeasure:wp,IdmSpot:up,IdmMarker:Xg,IdmBottomBar:Df,IdmBottomTimeLine:K(Ff,[["render",ay]]),IdmBottomTimePlayer:la},props:{map:{type:Object},token:{type:String},beforeLayer:{type:String,default:""},forecastModel:{type:String},mapFeather:{type:String},simple:{type:Boolean,default:!1},showTimeline:{type:Boolean,default:!1}},emits:["mapFeather"],data(){return{weatherCheckList:[],otherCheckList:[],layerVersion:0,autoActive:!0,tempFeather:"",tempFeatherCount:0,tropicals:void 0,playerBottom:30,gateway:"https://cbe.ormwx.com",assistGateway:["https://assist0.ormwx.com","https://assist1.ormwx.com"],defaultMeteoToken:"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNtZWliMDg2dTAwMDdmdnV4ZHRhcmFoODIiLCJyb2xlIjoyLCJuYW1lIjoiY2hlbmhlbmdAb3Jtd3guY29tIiwicGxhdElkIjoiZ2QwbXQxZCIsImNvbXBhbnkiOnsiaWQiOm51bGwsImNoaWxkcmVuIjpbXX0sImlhdCI6MTc1NTg1NzQ0NiwiZXhwIjozOTYzMzc3NDQ2fQ.nll8PA8tZEFONV2ydX4Rx_Xya7nMzJQ6vPSL_Sg2dVU"}},watch:{layerVersion:{handler(){var o,e,a,r,i,l,n;if(this.map){const c=this.autoActive&&this.weatherCheckList.some(g=>["wind-particle","sig-wave","swell","current-particle","water-temp","temp"].some(u=>u===g)),s=this.autoActive&&this.weatherCheckList.some(g=>["wind-particle","sig-wave","swell","current-particle","water-temp","temp","sig-wave-height"].some(u=>u===g)),m=this.otherCheckList.some(g=>["navareas","eca-zones","load-lines","voluntary-reporting-area","war-zones","special-area","ice-areas"].some(u=>u===g)),d=s||m;this.mapFeather==="nautical"?(this.tempFeatherCount=1,c&&(this.tempFeather="nautical",this.$emit("mapFeather","light"))):this.mapFeather==="satellite"?(this.tempFeatherCount=1,c&&(this.tempFeather="satellite",this.$emit("mapFeather","dark"))):(!c&&this.tempFeather==="nautical"&&(this.tempFeather="",this.$emit("mapFeather","nautical")),!c&&this.tempFeather==="satellite"&&(this.tempFeather="",this.$emit("mapFeather","satellite")),d?((o=this.map)!=null&&o.getLayer("country-boundaries")&&this.map.setLayoutProperty("country-boundaries","visibility","visible"),(e=this.map)!=null&&e.getLayer("water-outline2")&&this.map.setLayoutProperty("water-outline2","visibility","visible")):((a=this.map)!=null&&a.getLayer("country-boundaries")&&this.map.setLayoutProperty("country-boundaries","visibility","none"),(r=this.map)!=null&&r.getLayer("water-outline2")&&this.map.setLayoutProperty("water-outline2","visibility","none"))),s?((i=this.map)!=null&&i.getLayer("ramp-color-layer")&&this.map.moveLayer("ramp-color-layer","empty-layer-0"),(l=this.map)!=null&&l.getLayer("particle-layer")&&this.map.moveLayer("particle-layer","empty-layer-0"),setTimeout(()=>{var g,u;(g=this.map)!=null&&g.getLayer("sig-wave-height-layer")&&this.map.moveLayer("sig-wave-height-layer","empty-layer-0"),(u=this.map)!=null&&u.getLayer("sig-wave-height-label-layer")&&this.map.moveLayer("sig-wave-height-label-layer","empty-layer-0")},1e3)):(n=this.map)!=null&&n.getLayer("ramp-color-layer")&&this.map.moveLayer("ramp-color-layer","empty-layer-2")}}},tempFeatherCount:{handler(){this.tempFeatherCount>=2&&(this.tempFeather="")}}},methods:{handleChangeOtherChecklist(o){this.otherCheckList=o,this.layerVersion=this.layerVersion+1},handleChangeAutoActive(o){this.autoActive=o,this.layerVersion=this.layerVersion+1},handleChangeWeatherChecklist(o){this.weatherCheckList=o,this.layerVersion=this.layerVersion+1}}},ry={id:"map-gl4-home",ref:"mapHomeGl4",class:"map-gl4-home"};function ly(o,e,a,r,i,l){const n=t.resolveComponent("IdmOtherLayer"),c=t.resolveComponent("IdmWeatherLayer"),s=t.resolveComponent("IdmTropicals"),m=t.resolveComponent("IdmSpot"),d=t.resolveComponent("IdmMeasure"),g=t.resolveComponent("IdmMarker"),u=t.resolveComponent("IdmBottomBar"),y=t.resolveComponent("IdmBottomTimeLine"),p=t.resolveComponent("IdmBottomTimePlayer");return t.openBlock(),t.createElementBlock("div",ry,[t.createVNode(n,t.mergeProps({ref:"idmOtherLayers",simple:a.simple,token:a.token,"default-meteo-token":i.defaultMeteoToken,map:a.map,"before-layer":"empty-layer-1",gateway:i.gateway,"assist-gateway":i.assistGateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs,{onOtherCheckList:l.handleChangeOtherChecklist,onMapFeather:e[0]||(e[0]=h=>o.$emit("mapFeather",h)),onTempFeatherCount:e[1]||(e[1]=h=>i.tempFeatherCount=i.tempFeatherCount+1)}),null,16,["simple","token","default-meteo-token","map","gateway","assist-gateway","forecast-model","map-feather","onOtherCheckList"]),t.createVNode(c,t.mergeProps({ref:"idmWeatherLayers",simple:a.simple,map:a.map,"before-layer":"empty-layer-2",token:a.token,"default-meteo-token":i.defaultMeteoToken,gateway:i.gateway,"assist-gateway":i.assistGateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs,{onAutoActive:l.handleChangeAutoActive,onWeatherCheckList:l.handleChangeWeatherChecklist}),null,16,["simple","map","token","default-meteo-token","gateway","assist-gateway","forecast-model","map-feather","onAutoActive","onWeatherCheckList"]),t.createVNode(s,t.mergeProps({ref:"idmTropicals",simple:a.simple,map:a.map,token:a.token,"default-meteo-token":i.defaultMeteoToken,tropicals:i.tropicals,"before-layer":"empty-layer-4",gateway:i.gateway,"assist-gateway":i.assistGateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs),null,16,["simple","map","token","default-meteo-token","tropicals","gateway","assist-gateway","forecast-model","map-feather"]),t.createVNode(m,t.mergeProps({ref:"idmSpot",simple:a.simple,map:a.map,token:a.token,"default-meteo-token":i.defaultMeteoToken,gateway:i.gateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs),null,16,["simple","map","token","default-meteo-token","gateway","forecast-model","map-feather"]),t.createVNode(d,t.mergeProps({simple:a.simple,map:a.map,"map-feather":a.mapFeather},o.$attrs),null,16,["simple","map","map-feather"]),a.simple?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(g,t.mergeProps({key:0,simple:a.simple,map:a.map,"map-feather":a.mapFeather,gateway:i.gateway,"default-meteo-token":i.defaultMeteoToken,token:a.token},o.$attrs),null,16,["simple","map","map-feather","gateway","default-meteo-token","token"])),!a.simple&&!a.showTimeline?(t.openBlock(),t.createBlock(u,t.mergeProps({key:1,ref:"idmBottomBar","forecast-model":a.forecastModel,"weather-check-list":i.weatherCheckList,"map-feather":a.mapFeather,gateway:i.gateway,"default-meteo-token":i.defaultMeteoToken,token:a.token},o.$attrs),null,16,["forecast-model","weather-check-list","map-feather","gateway","default-meteo-token","token"])):t.createCommentVNode("",!0),!a.simple&&a.showTimeline?(t.openBlock(),t.createBlock(y,t.mergeProps({key:2,ref:"idmBottomBar","forecast-model":a.forecastModel,"weather-check-list":i.weatherCheckList,"map-feather":a.mapFeather,gateway:i.gateway,"default-meteo-token":i.defaultMeteoToken,token:a.token},o.$attrs),null,16,["forecast-model","weather-check-list","map-feather","gateway","default-meteo-token","token"])):t.createCommentVNode("",!0),a.simple?(t.openBlock(),t.createBlock(p,t.mergeProps({key:3,ref:"idmBottomBar","player-bottom":i.playerBottom,"bg-class":a.simple?"bg-background":"","weather-check-list":i.weatherCheckList,"map-feather":a.mapFeather,disabled:!0},o.$attrs),null,16,["player-bottom","bg-class","weather-check-list","map-feather"])):t.createCommentVNode("",!0)],512)}const Ya=K(iy,[["render",ly]]),w1="";class Ua{constructor(e="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNsYmY5M3I0YTAwMDE4Ymx0NWJ4emFwNWMiLCJyb2xlIjoyMDQ3LCJpYXQiOjE2NzA1NTM0NzAsImV4cCI6Mzg3ODA3MzQ3MH0.MxTv0yLGarZCtOSCZfJHMqrXNMNN0-OL4gBGKGcYcc8",{hifleet:a=!1}){pe(this,"originStyle");pe(this,"mapboxStyle");pe(this,"i4");pe(this,"hi");pe(this,"td");pe(this,"windy");var r,i,l,n,c,s,m,d,g,u,y,p,h,f,w,b,A,x,C,k,_,z,P,T,V,H,O,J,se,ne,N,j,W,Q,G,B,U,S,ee,ce,ge,ue,oe,he,fe,_e,Y,ie,Fe,Ge,De,ve,je,Ve,Te,Re,We,Ze,Be,xe,ke,ze,Xe,He,Oe,Me,at,it,rt,lt,nt,st,ct,mt,dt,ht,pt,gt,ut,ft,yt,bt,wt,xt,kt,At,Lt,Ct,vt,zt,_t,St,Nt,Mt,Pt,Vt,Tt,Et,Dt,Rt,Bt,It,Ft,Gt,jt,Pe,Ee,Wt,Ye,Zt,et,Ae,Ue,te,Le,X,Z,Je,Ie,Se,I,Xt,q,Ce,Ke,tt,ot,R,Qe,F,qe,Ot,ae,$t,re,go,uo,fo,yo,bo,wo,xo,ko,Ao,Lo,Co,vo,zo,_o,So,No,ai,ii,ri,li,ni,si,ci,mi,di,hi,pi,gi,ui,fi,yi,bi,wi,xi,ki,Ai,Li,Ci,vi,zi,_i,Si,Ni,Mi,Pi,Vi,Ti,Ei,Di,Ri,Bi,Ii,Fi,Gi,ji,Wi,Zi,Xi,Hi,Oi,Yi,Ui,Ji,Ki,Qi,qi,$i,er,tr;this.i4={source:{type:"raster",tiles:["https://ossimg.ormwx.com/nautical/{z}/{x}/{y}.png"],tileSize:256},layer:{id:"i4",type:"raster",source:"i4",minzoom:1,maxzoom:18,layout:{visibility:"visible"}}},this.hi={source:{type:"raster",tiles:[`https://assist0.ormwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${e}`,`https://assist1.ormwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${e}`],tileSize:256},layer:{id:"hi",type:"raster",source:"hi",minZoom:1,maxZoom:18,layout:{visibility:"visible"}}},this.originStyle={light:{version:8,name:"light",metadata:{"mapbox:print":{width:8.5,height:11,units:"in",format:"png",resolution:300},"mapbox:type":"default","mapbox:trackposition":!0,"mapbox:autocomposite":!0,"mapbox:sdk-support":{android:"11.0.0",ios:"11.0.0",js:"3.0.0"},"mapbox:origin":"outdoors-v12","mapbox:groups":{"Terrain, terrain-labels":{name:"Terrain, terrain-labels",collapsed:!0},"Administrative boundaries, admin":{name:"Administrative boundaries, admin",collapsed:!0},"Land & water, built":{name:"Land & water, built",collapsed:!0},"Terrain, surface":{name:"Terrain, surface",collapsed:!0},"Land & water, land":{name:"Land & water, land",collapsed:!1},"Natural features, natural-labels":{name:"Natural features, natural-labels",collapsed:!0},e9bb8e77353431519f7918998e9079d9:{name:"Group",collapsed:!1},"Walking, cycling, etc., barriers-bridges":{name:"Walking, cycling, etc., barriers-bridges",collapsed:!0},"Place labels, place-labels":{name:"Place labels, place-labels",collapsed:!1},"Transit, ferries":{name:"Transit, ferries",collapsed:!0},"Transit, elevated":{name:"Transit, elevated",collapsed:!0},"Walking, cycling, etc., tunnels":{name:"Walking, cycling, etc., tunnels",collapsed:!0},"Terrain, land":{name:"Terrain, land",collapsed:!0},"Road network, tunnels-case":{name:"Road network, tunnels-case",collapsed:!0},"Walking, cycling, etc., walking-cycling-labels":{name:"Walking, cycling, etc., walking-cycling-labels",collapsed:!0},"Walking, cycling, etc., surface":{name:"Walking, cycling, etc., surface",collapsed:!0},"Road network, surface-icons":{name:"Road network, surface-icons",collapsed:!0},"Land & water, water":{name:"Land & water, water",collapsed:!1}}},center:[104.01743114258029,17.078999978347557],zoom:1.9133216316430233,bearing:0,pitch:0,lights:[],fog:{range:[.5,10]},sources:{composite:{url:"mapbox://mapbox.mapbox-streets-v8,mapbox.mapbox-terrain-v2,mapbox.mapbox-bathymetry-v2,mapbox.country-boundaries-v1,neatchenheng.d44z21eg,neatchenheng.82kqbc1q,neatchenheng.a4ifbysm,neatchenheng.27issko0,neatchenheng.9uwc9x7l,neatchenheng.7y3kpvvv,neatchenheng.dlkkohie",type:"vector"},i4:this.i4.source,hi:this.hi.source},sprite:"mapbox://sprites/neatchenheng/cmd894dwn036m01rf7anc0k0d/bph0p8ithotzwly53az7lwdmv",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"equirectangular"},layers:[{id:"land",type:"background",layout:{},paint:{"background-color":"#e9ebed"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},maxzoom:12,type:"fill",source:"composite",id:"landcover",paint:{"fill-color":["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","crop","hsla(68, 55%, 70%, 0.6)","grass","hsla(98, 50%, 74%, 0.6)","snow","hsl(205, 45%, 95%)","hsl(98, 48%, 67%)"],"fill-opacity":["interpolate",["exponential",1.5],["zoom"],8,.8,12,0],"fill-antialias":!1},"source-layer":"landcover"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"fill",source:"composite",id:"national-park",paint:{"fill-color":"hsl(98, 38%, 68%)","fill-opacity":["interpolate",["linear"],["zoom"],5,0,6,.6,12,.2]},"source-layer":"landuse_overlay"},{minzoom:9,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"line",source:"composite",id:"national-park_tint-band",paint:{"line-color":"hsl(98, 38%, 68%)","line-width":["interpolate",["exponential",1.5],["zoom"],9,1,14,8],"line-blur":["interpolate",["exponential",1.5],["zoom"],9,1,14,8]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["all",[">=",["to-number",["get","sizerank"]],0],["match",["get","class"],["agriculture","wood","grass","scrub","glacier","pitch","sand"],["step",["zoom"],!1,11,!0],"residential",["step",["zoom"],!0,10,!1],["park","airport"],["step",["zoom"],!1,8,["case",["==",["get","sizerank"],1],!0,!1],10,!0],["facility","industrial"],["step",["zoom"],!1,12,!0],"rock",["step",["zoom"],!1,11,!0],"cemetery",["step",["zoom"],!1,11,!0],"school",["step",["zoom"],!1,11,!0],"hospital",["step",["zoom"],!1,11,!0],"commercial_area",["step",["zoom"],!1,11,!0],!1],["<=",["-",["to-number",["get","sizerank"]],["interpolate",["exponential",1.5],["zoom"],12,0,18,14]],14]],type:"fill",source:"composite",id:"landuse",paint:{"fill-color":["interpolate",["linear"],["zoom"],15,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsl(60, 0%, 85%)","school","hsl(40, 45%, 78%)","commercial_area","hsl(55, 45%, 85%)","residential","hsl(60, 7%, 87%)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"],16,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsla(60, 0%, 85%, 0.5)","school","hsl(40, 45%, 78%)","commercial_area","hsla(55, 45%, 85%, 0.5)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"]],"fill-opacity":["interpolate",["linear"],["zoom"],8,["match",["get","class"],"residential",.8,.2],10,["match",["get","class"],"residential",0,1]],"fill-antialias":!1},"source-layer":"landuse"},{minzoom:15,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"pitch"],type:"line",source:"composite",id:"pitch-outline",paint:{"line-color":"hsl(0, 0%, 69%)"},"source-layer":"landuse"},{id:"waterway-shadow",type:"line",source:"composite","source-layer":"waterway",minzoom:10,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"],visibility:"none"},paint:{"line-color":"hsl(224, 79%, 69%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"line-translate-anchor":"viewport","line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water-shadow",type:"fill",source:"composite","source-layer":"water",minzoom:10,layout:{visibility:"none"},paint:{"fill-color":"hsl(224, 79%, 69%)","fill-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"fill-translate-anchor":"viewport"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"waterway",type:"line",source:"composite","source-layer":"waterway",minzoom:8,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"]},paint:{"line-color":"hsl(198, 100%, 37%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water",type:"fill",source:"composite","source-layer":"water",layout:{},paint:{"fill-color":"hsl(215, 92%, 81%)"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},maxzoom:8,type:"fill",source:"composite",id:"water-depth",paint:{"fill-antialias":!1,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0.35)",200,"hsla(205, 75%, 63%, 0.35)",7e3,"hsla(205, 75%, 56%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0)",200,"hsla(205, 75%, 63%, 0)",7e3,"hsla(205, 75%, 53%, 0)"]]},"source-layer":"depth"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,.25,10.5,.15]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland-pattern",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,0,10.5,1],"fill-pattern":"wetland","fill-translate-anchor":"viewport"},"source-layer":"landuse_overlay"},{minzoom:13,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"Polygon"]],type:"fill",source:"composite",id:"land-structure-polygon",paint:{"fill-color":"hsl(0, 0%, 69%)"},"source-layer":"structure"},{minzoom:13,layout:{"line-cap":"square",visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"LineString"]],type:"line",source:"composite",id:"land-structure-line",paint:{"line-width":["interpolate",["exponential",1.99],["zoom"],14,.75,20,40],"line-color":"hsl(60, 20%, 85%)"},"source-layer":"structure"},{id:"empty-layer-0",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-1",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"country-boundaries",type:"fill",source:"composite","source-layer":"country_boundaries",paint:{"fill-color":"rgb(200, 200, 200)"},layout:{visibility:"none"}},{id:"empty-layer-2",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-3",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-4",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"water-outline2",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgb(150, 150, 150)"},layout:{visibility:"none"},source:"composite","source-layer":"water"},{id:"water-outline",type:"line",paint:{"line-color":"hsl(0, 0%, 70%)","line-width":["interpolate",["linear"],["zoom"],0,1.5,4,1]},source:"composite","source-layer":"water"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-bg",paint:{"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"rgb(173, 169, 170)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary",paint:{"line-color":"rgb(143, 143, 143)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-disputed",paint:{"line-color":"rgb(95, 93, 94)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]},"source-layer":"admin"},{minzoom:13,layout:{"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"waterway-label",paint:{"text-color":"hsl(205, 43%, 90%)","text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport"},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"natural-line-label",paint:{"text-halo-width":.5,"text-halo-color":"hsl(60, 17%, 84%)","text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["get","maki_beta"]],["image",["get","maki"]]],["image",["get","maki"]]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.8]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.8]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"natural-point-label",paint:{"icon-opacity":["step",["zoom"],["step",["get","sizerank"],0,5,1],17,["step",["get","sizerank"],0,13,1]],"text-halo-color":"hsl(60, 20%, 98%)","text-halo-width":.5,"text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"water-line-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(205, 71%, 90%)","hsl(205, 43%, 90%)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"water-point-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(205, 71%, 90%)","hsl(205, 43%, 90%)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:10,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",11,10.5],15,["match",["get","type"],"suburb",15,14]],visibility:"none"},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["match",["get","class"],["settlement_subdivision","disputed_settlement_subdivision"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],3],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-subdivision-label",paint:{"text-halo-color":"hsla(60, 25%, 100%, 0.75)","text-halo-width":1,"text-color":"hsl(230, 29%, 36%)","text-halo-blur":.5},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],11,9,10],6,["step",["get","symbolrank"],14,9,12,12,10],8,["step",["get","symbolrank"],16,9,14,12,12,15,10],13,["step",["get","symbolrank"],22,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-justify":"auto",visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-minor-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],13,6,11],6,["step",["get","symbolrank"],18,6,16,7,14],8,["step",["get","symbolrank"],20,9,16,10,14],15,["step",["get","symbolrank"],24,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-major-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:3,layout:{"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9,6,8,7,7],9,["step",["get","symbolrank"],21,6,16,7,14]],"text-transform":"uppercase","text-font":["DIN Pro Bold","Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"state-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-opacity":.5},"source-layer":"place_label"},{minzoom:1,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-radial-offset":["step",["zoom"],.6,8,0],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],12.100000000000001,4,9.9,5,8.8],9,["step",["get","symbolrank"],24.200000000000003,4,20.900000000000002,5,18.700000000000003]]},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"country-label",paint:{"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":"hsl(0, 0.00%, 13.70%)","text-halo-color":["interpolate",["linear"],["zoom"],2,"hsla(60, 25%, 100%, 0.75)",3,"hsl(60, 25%, 100%)"],"text-halo-width":1.25},"source-layer":"place_label"},{minzoom:.75,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-size":["interpolate",["exponential",.5],["zoom"],0,10,2.5,15],"text-transform":"uppercase","text-letter-spacing":.05},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:3,filter:["==",["get","class"],"continent"],type:"symbol",source:"composite",id:"continent-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":["interpolate",["linear"],["zoom"],0,"hsla(60, 25%, 100%, 0.75)",3,"hsl(60, 25%, 100%)"],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,.8,1.5,.5,2.5,0]},"source-layer":"natural_label"},{id:"world-12nm-v4-20231025",minzoom:3,type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2],"line-translate":[0,0]},source:"composite","source-layer":"eez_12nm_new1-6jzkww",layout:{"line-join":"round",visibility:"none"}},{id:"china-taiwan",type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2]},layout:{"line-join":"round",visibility:"none"},source:"composite","source-layer":"eez-d4udtm"},{id:"ne-10m-outline",type:"line",paint:{"line-color":"hsl(172, 0%, 33%)"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv",layout:{visibility:"none"}},{id:"ne-10m-label",type:"symbol",paint:{"text-halo-color":"hsl(0, 0%, 100%)","text-halo-width":1,"text-halo-blur":1},layout:{"text-field":["to-string",["get","name"]],"text-size":12,visibility:"none"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"china-route-line",type:"line",paint:{"line-color":"rgba(119, 239, 157, 1)","line-width":2},source:"composite","source-layer":"china_route-bdtx5d",layout:{visibility:"none"}},{id:"china-route-fill",type:"fill",paint:{"fill-color":"rgba(119, 239, 157, 1)","fill-opacity":.2},source:"composite","source-layer":"china_route-bdtx5d",filter:["match",["geometry-type"],["Polygon"],!0,!1],layout:{visibility:"none"}},{id:"china-route-label",type:"symbol",paint:{"text-color":"rgba(0, 0, 0, 1)"},source:"composite","source-layer":"china_route-bdtx5d",layout:{"text-field":["to-string",["get","route_name"]],"text-size":10,"text-offset":[0,1.6],visibility:"none"}},{id:"ice-area-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(199, 239, 236, 0.7)"},source:"composite","source-layer":"ICE_AREA-6oqazd",layout:{visibility:"none"}},{id:"ice-area-line",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgba(167, 211, 208, 0.7)"},layout:{visibility:"none"},source:"composite","source-layer":"ICE_AREA-6oqazd"},{id:"tide-stations",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(0, 0, 0)","text-opacity":["step",["zoom"],0,4,1]},layout:{visibility:"none","text-field":["to-string",["get","Location_EN"]],"text-size":10,"icon-image":"tide","icon-size":1,"icon-offset":[0,-13],"text-offset":[0,1.6],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},source:"composite","source-layer":"tide_station_cn-8xvt91"},{id:"loadlines-label",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(0, 0, 0)"},layout:{"text-field":["to-string",["get","name"]],"text-size":10,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],visibility:"none","text-offset":[0,1]},source:"composite","source-layer":"loadlines-b6mgr8"},{id:"loadlines-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":["match",["get","val"],["LLGreen"],"rgba(164, 214, 217, 0.6)",["LLBlue"],"rgba(53, 121, 194, 0.6)",["LLRed"],"rgba(217, 150, 151, 0.6)",["LLSUMMER"],"rgba(111, 110, 212, 0.6)","rgba(255, 255, 255, 0.6)"],"fill-outline-color":"rgba(255, 255, 255, 0.3)"},layout:{visibility:"none"},source:"composite","source-layer":"loadlines-b6mgr8"}],created:"2025-07-18T03:20:31.079Z",modified:"2025-07-31T03:57:21.238Z",id:"cmd894dwn036m01rf7anc0k0d",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1},dark:{version:8,name:"dark",metadata:{"mapbox:print":{width:8.5,height:11,units:"in",format:"png",resolution:300},"mapbox:type":"default","mapbox:trackposition":!0,"mapbox:autocomposite":!0,"mapbox:sdk-support":{android:"11.0.0",ios:"11.0.0",js:"3.0.0"},"mapbox:origin":"outdoors-v12","mapbox:groups":{"Terrain, terrain-labels":{name:"Terrain, terrain-labels",collapsed:!0},"Administrative boundaries, admin":{name:"Administrative boundaries, admin",collapsed:!1},"Land & water, built":{name:"Land & water, built",collapsed:!0},"Terrain, surface":{name:"Terrain, surface",collapsed:!0},"Land & water, land":{name:"Land & water, land",collapsed:!1},"Natural features, natural-labels":{name:"Natural features, natural-labels",collapsed:!0},e9bb8e77353431519f7918998e9079d9:{name:"Group",collapsed:!1},"Walking, cycling, etc., barriers-bridges":{name:"Walking, cycling, etc., barriers-bridges",collapsed:!0},"Place labels, place-labels":{name:"Place labels, place-labels",collapsed:!1},"Transit, ferries":{name:"Transit, ferries",collapsed:!0},"Transit, elevated":{name:"Transit, elevated",collapsed:!0},"Walking, cycling, etc., tunnels":{name:"Walking, cycling, etc., tunnels",collapsed:!0},"Terrain, land":{name:"Terrain, land",collapsed:!0},"Road network, tunnels-case":{name:"Road network, tunnels-case",collapsed:!0},"Walking, cycling, etc., walking-cycling-labels":{name:"Walking, cycling, etc., walking-cycling-labels",collapsed:!0},"Walking, cycling, etc., surface":{name:"Walking, cycling, etc., surface",collapsed:!0},"Road network, surface-icons":{name:"Road network, surface-icons",collapsed:!0},"Land & water, water":{name:"Land & water, water",collapsed:!1}}},center:[90.22129259388525,-3.2084663486364606],zoom:1.2556266457717493,bearing:0,pitch:0,lights:[],fog:{range:[.5,10]},sources:{composite:{url:"mapbox://mapbox.mapbox-streets-v8,mapbox.mapbox-terrain-v2,mapbox.mapbox-bathymetry-v2,mapbox.country-boundaries-v1,neatchenheng.d44z21eg,neatchenheng.82kqbc1q,neatchenheng.a4ifbysm,neatchenheng.27issko0,neatchenheng.9uwc9x7l,neatchenheng.7y3kpvvv,neatchenheng.dlkkohie",type:"vector"}},sprite:"mapbox://sprites/neatchenheng/cmdqwez32005b01re2w0k3zk4/3w0qcixxrxxonxutm2qkollqi",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"equirectangular"},layers:[{id:"land",type:"background",layout:{},paint:{"background-color":["interpolate",["linear"],["zoom"],9,"rgb(2, 43, 59)",11,"rgb(36, 36, 36)"]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},maxzoom:12,type:"fill",source:"composite",id:"landcover",paint:{"fill-color":["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","crop","hsla(68, 55%, 70%, 0.6)","grass","hsla(98, 50%, 74%, 0.6)","snow","hsl(205, 45%, 95%)","hsl(98, 48%, 67%)"],"fill-opacity":["interpolate",["exponential",1.5],["zoom"],8,.8,12,0],"fill-antialias":!1},"source-layer":"landcover"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"fill",source:"composite",id:"national-park",paint:{"fill-color":"hsl(98, 38%, 68%)","fill-opacity":["interpolate",["linear"],["zoom"],5,0,6,.6,12,.2]},"source-layer":"landuse_overlay"},{minzoom:9,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"line",source:"composite",id:"national-park_tint-band",paint:{"line-color":"hsl(98, 38%, 68%)","line-width":["interpolate",["exponential",1.5],["zoom"],9,1,14,8],"line-blur":["interpolate",["exponential",1.5],["zoom"],9,1,14,8]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["all",[">=",["to-number",["get","sizerank"]],0],["match",["get","class"],["agriculture","wood","grass","scrub","glacier","pitch","sand"],["step",["zoom"],!1,11,!0],"residential",["step",["zoom"],!0,10,!1],["park","airport"],["step",["zoom"],!1,8,["case",["==",["get","sizerank"],1],!0,!1],10,!0],["facility","industrial"],["step",["zoom"],!1,12,!0],"rock",["step",["zoom"],!1,11,!0],"cemetery",["step",["zoom"],!1,11,!0],"school",["step",["zoom"],!1,11,!0],"hospital",["step",["zoom"],!1,11,!0],"commercial_area",["step",["zoom"],!1,11,!0],!1],["<=",["-",["to-number",["get","sizerank"]],["interpolate",["exponential",1.5],["zoom"],12,0,18,14]],14]],type:"fill",source:"composite",id:"landuse",paint:{"fill-color":["interpolate",["linear"],["zoom"],15,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsl(60, 0%, 85%)","school","hsl(40, 45%, 78%)","commercial_area","hsl(55, 45%, 85%)","residential","hsl(60, 7%, 87%)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"],16,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsla(60, 0%, 85%, 0.5)","school","hsl(40, 45%, 78%)","commercial_area","hsla(55, 45%, 85%, 0.5)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"]],"fill-opacity":["interpolate",["linear"],["zoom"],8,["match",["get","class"],"residential",.8,.2],10,["match",["get","class"],"residential",0,1]],"fill-antialias":!1},"source-layer":"landuse"},{minzoom:15,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"pitch"],type:"line",source:"composite",id:"pitch-outline",paint:{"line-color":"hsl(0, 0%, 69%)"},"source-layer":"landuse"},{id:"waterway-shadow",type:"line",source:"composite","source-layer":"waterway",minzoom:10,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"],visibility:"none"},paint:{"line-color":"hsl(224, 79%, 69%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"line-translate-anchor":"viewport","line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water-shadow",type:"fill",source:"composite","source-layer":"water",minzoom:10,layout:{visibility:"none"},paint:{"fill-color":"hsl(224, 79%, 69%)","fill-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"fill-translate-anchor":"viewport"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"waterway",type:"line",source:"composite","source-layer":"waterway",minzoom:8,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"],visibility:"none"},paint:{"line-color":"rgb(20, 66, 92)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water",type:"fill",source:"composite","source-layer":"water",layout:{},paint:{"fill-color":"rgb(20, 66, 92)"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},maxzoom:8,type:"fill",source:"composite",id:"water-depth",paint:{"fill-antialias":!1,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0.35)",200,"hsla(205, 75%, 63%, 0.35)",7e3,"hsla(205, 75%, 56%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0)",200,"hsla(205, 75%, 63%, 0)",7e3,"hsla(205, 75%, 53%, 0)"]]},"source-layer":"depth"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,.25,10.5,.15]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland-pattern",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,0,10.5,1],"fill-pattern":"wetland","fill-translate-anchor":"viewport"},"source-layer":"landuse_overlay"},{minzoom:13,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"Polygon"]],type:"fill",source:"composite",id:"land-structure-polygon",paint:{"fill-color":"hsl(0, 0%, 69%)"},"source-layer":"structure"},{minzoom:13,layout:{"line-cap":"square",visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"LineString"]],type:"line",source:"composite",id:"land-structure-line",paint:{"line-width":["interpolate",["exponential",1.99],["zoom"],14,.75,20,40],"line-color":"hsl(60, 20%, 85%)"},"source-layer":"structure"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-bg",paint:{"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"rgb(0, 96, 107)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary",paint:{"line-color":"rgb(0, 96, 107)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-disputed",paint:{"line-color":"rgb(0, 96, 107)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]},"source-layer":"admin"},{id:"empty-layer-0",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-1",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"country-boundaries",type:"fill",source:"composite","source-layer":"country_boundaries",paint:{"fill-color":["interpolate",["linear"],["zoom"],0,"rgb(2, 45, 62)",22,"rgb(2, 45, 62)"]},layout:{visibility:"none"}},{id:"empty-layer-2",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-3",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-4",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"water-outline",type:"line",paint:{"line-color":"rgb(0, 96, 107)","line-width":["interpolate",["linear"],["zoom"],0,1.5,4,1]},source:"composite","source-layer":"water"},{minzoom:13,layout:{"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"waterway-label",paint:{"text-color":"hsl(205, 43%, 90%)","text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport"},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"natural-line-label",paint:{"text-halo-width":.5,"text-halo-color":"hsl(60, 17%, 84%)","text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["get","maki_beta"]],["image",["get","maki"]]],["image",["get","maki"]]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.8]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.8]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"natural-point-label",paint:{"icon-opacity":["step",["zoom"],["step",["get","sizerank"],0,5,1],17,["step",["get","sizerank"],0,13,1]],"text-halo-color":"hsl(60, 20%, 98%)","text-halo-width":.5,"text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"water-line-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"rgb(1, 121, 137)","rgb(1, 121, 137)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"water-point-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"rgb(3, 117, 129)","rgb(3, 117, 129)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:10,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",11,10.5],15,["match",["get","type"],"suburb",15,14]],visibility:"none"},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["match",["get","class"],["settlement_subdivision","disputed_settlement_subdivision"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],3],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-subdivision-label",paint:{"text-halo-color":"hsla(60, 25%, 100%, 0.75)","text-halo-width":1,"text-color":"hsl(230, 29%, 36%)","text-halo-blur":.5},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],11,9,10],6,["step",["get","symbolrank"],14,9,12,12,10],8,["step",["get","symbolrank"],16,9,14,12,12,15,10],13,["step",["get","symbolrank"],22,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-justify":"auto",visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-minor-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],13,6,11],6,["step",["get","symbolrank"],18,6,16,7,14],8,["step",["get","symbolrank"],20,9,16,10,14],15,["step",["get","symbolrank"],24,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-major-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:3,layout:{"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9,6,8,7,7],9,["step",["get","symbolrank"],21,6,16,7,14]],"text-transform":"uppercase","text-font":["DIN Pro Bold","Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"state-label",paint:{"text-color":"rgb(0, 170, 189)","text-halo-color":"rgb(3, 3, 3)","text-halo-width":1,"text-opacity":.5},"source-layer":"place_label"},{minzoom:1,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-radial-offset":["step",["zoom"],.6,8,0],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],12.100000000000001,4,9.9,5,8.8],9,["step",["get","symbolrank"],24.200000000000003,4,20.900000000000002,5,18.700000000000003]]},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"country-label",paint:{"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":"rgb(2, 141, 156)","text-halo-color":["interpolate",["linear"],["zoom"],2,"rgb(252, 252, 252)",3,"rgb(250, 250, 250)"]},"source-layer":"place_label"},{minzoom:.75,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-size":["interpolate",["exponential",.5],["zoom"],0,10,2.5,15],"text-transform":"uppercase","text-letter-spacing":.05},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:3,filter:["==",["get","class"],"continent"],type:"symbol",source:"composite",id:"continent-label",paint:{"text-color":"rgb(0, 170, 189)","text-halo-color":["interpolate",["linear"],["zoom"],0,"rgba(0, 0, 0, 0.75)",3,"rgb(5, 5, 5)"],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,.8,1.5,.5,2.5,0]},"source-layer":"natural_label"},{id:"world-12nm-v4-20231025",minzoom:3,type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2],"line-translate":[0,0]},source:"composite","source-layer":"eez_12nm_new1-6jzkww",layout:{"line-join":"round",visibility:"none"}},{id:"china-taiwan",type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2]},layout:{"line-join":"round",visibility:"none"},source:"composite","source-layer":"eez-d4udtm"},{id:"ne-10m-outline",type:"line",paint:{"line-color":"rgb(1, 119, 132)"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv",layout:{visibility:"none"}},{id:"ne-10m-label",type:"symbol",paint:{"text-halo-color":"hsl(0, 0%, 100%)","text-halo-width":0,"text-halo-blur":0,"text-color":"rgb(1, 119, 132)"},layout:{"text-field":["to-string",["get","name"]],"text-size":12,visibility:"none"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"china-route-line",type:"line",paint:{"line-color":"rgba(119, 239, 157, 1)","line-width":2},source:"composite","source-layer":"china_route-bdtx5d",layout:{visibility:"none"}},{id:"china-route-fill",type:"fill",paint:{"fill-color":"rgba(119, 239, 157, 1)","fill-opacity":.2},source:"composite","source-layer":"china_route-bdtx5d",filter:["match",["geometry-type"],["Polygon"],!0,!1],layout:{visibility:"none"}},{id:"china-route-label",type:"symbol",paint:{"text-color":"rgb(255, 255, 255)"},source:"composite","source-layer":"china_route-bdtx5d",layout:{"text-field":["to-string",["get","route_name"]],"text-size":10,"text-offset":[0,1.6],visibility:"none"}},{id:"ice-area-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(199, 239, 236, 0.7)"},source:"composite","source-layer":"ICE_AREA-6oqazd",layout:{visibility:"none"}},{id:"ice-area-line",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgba(167, 211, 208, 0.7)"},layout:{visibility:"none"},source:"composite","source-layer":"ICE_AREA-6oqazd"},{id:"tide-stations",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(255, 255, 255)","text-opacity":["step",["zoom"],0,4,1]},layout:{visibility:"none","text-field":["to-string",["get","Location_EN"]],"text-size":10,"icon-image":"tide","icon-size":1,"icon-offset":[0,-13],"text-offset":[0,1.6],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},source:"composite","source-layer":"tide_station_cn-8xvt91"},{id:"loadlines-label",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(255, 255, 255)"},layout:{"text-field":["to-string",["get","name"]],"text-size":10,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],visibility:"none","text-offset":[0,1]},source:"composite","source-layer":"loadlines-b6mgr8"},{id:"loadlines-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":["match",["get","val"],["LLGreen"],"rgba(164, 214, 217, 0.6)",["LLBlue"],"rgba(53, 121, 194, 0.6)",["LLRed"],"rgba(217, 150, 151, 0.6)",["LLSUMMER"],"rgba(111, 110, 212, 0.6)","rgba(255, 255, 255, 0.6)"],"fill-outline-color":"rgba(255, 255, 255, 0.3)"},layout:{visibility:"none"},source:"composite","source-layer":"loadlines-b6mgr8"}],created:"2025-07-31T04:32:27.422Z",modified:"2025-07-31T04:43:38.610Z",id:"cmdqwez32005b01re2w0k3zk4",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1},satellite:{version:8,name:"satellite",metadata:{"mapbox:type":"default","mapbox:autocomposite":!0,"mapbox:sdk-support":{js:"3.14.0",android:"11.14.0",ios:"11.14.0"},"mapbox:origin":"satellite-streets-v12","mapbox:uiExpandedImports":["basemap"],"mapbox:groups":{"Satellite imagery, land":{name:"Satellite imagery, land",collapsed:!1},"Administrative boundaries, admin":{name:"Administrative boundaries, admin",collapsed:!0},"Place labels, place-labels":{name:"Place labels, place-labels",collapsed:!1}}},center:[55.13,25.12],zoom:12,fog:{range:[1,10],color:["interpolate",["exponential",1.2],["zoom"],5.5,"hsl(240, 12%, 70%)",6,"hsl(0, 0%, 100%)"],"high-color":["interpolate",["exponential",1.2],["zoom"],5.5,"hsl(240, 12%, 7%)",6,"hsl(38, 63%, 84%)"],"space-color":["interpolate",["exponential",1.2],["zoom"],5.5,"hsl(240, 12%, 9%)",6,"hsl(199, 61%, 80%)"],"horizon-blend":["interpolate",["exponential",1.2],["zoom"],5.5,.008,6,.15],"star-intensity":["interpolate",["exponential",1.2],["zoom"],5.5,.1,6,0]},imports:[{id:"basemap",url:"mapbox://styles/mapbox/standard-satellite",config:{lightPreset:"day"},data:{version:8,name:"Mapbox Standard Satellite",metadata:{"mapbox:compatibility":{android:"11.9.0",ios:"11.9.0",js:"3.9.0"},"mapbox:autocomposite":!0,"mapbox:groups":{"road & transit labels":{name:"Road & Transit labels",collapsed:!0},"land & water":{name:"Land & water",collapsed:!0},"road shields":{name:"Road shields",collapsed:!0},"building labels":{name:"Building labels",collapsed:!0},"transit labels":{name:"Transit labels",collapsed:!0},"poi labels":{name:"Poi labels",collapsed:!0},"natural labels":{name:"Natural labels",collapsed:!0},"place labels":{name:"Place labels",collapsed:!0},"administrative boudaries":{name:"Administrative boudaries",collapsed:!0},"roads & transit network":{name:"Roads & transit network",collapsed:!0}}},center:[15.07,48.72],zoom:3.3,bearing:0,pitch:0,lights:[{id:"ambient",type:"ambient",properties:{color:["match",["config","lightPreset"],"dawn","hsl(28, 98%, 93%)","day","hsl(0, 0%, 100%)","dusk","hsl(228, 27%, 29%)","night","hsl(217, 100%, 11%)","hsl(0, 0%, 100%)"],intensity:["match",["config","lightPreset"],"dawn",.75,"day",.8,"dusk",.8,"night",.5,.8]}},{id:"directional",type:"directional",properties:{direction:["match",["config","lightPreset"],"dawn",["literal",[120,50]],"day",["literal",[180,20]],"dusk",["literal",[240,80]],"night",["literal",[270,20]],["literal",[180,20]]],color:["match",["config","lightPreset"],"dawn","hsl(33, 98%, 77%)","day","hsl(0, 0%, 100%)","dusk","hsl(30, 98%, 76%)","night","hsl(0, 0%, 29%)","hsl(0, 0%, 100%)"],intensity:["interpolate",["linear"],["zoom"],12,["match",["config","lightPreset"],"dawn",.5,"day",.2,"dusk",0,"night",0,.2],14,["match",["config","lightPreset"],"dawn",.5,"day",.2,"dusk",.2,"night",.5,.2]],"cast-shadows":!0,"shadow-intensity":["match",["config","lightPreset"],"night",.5,1]}}],terrain:{source:"mapbox-dem",exaggeration:["interpolate",["linear"],["zoom"],6,0,7,1,12,1,13.7,0]},fog:{"vertical-range":[30,120],range:["interpolate",["linear"],["zoom"],13,["literal",[1,20]],15,["literal",[1,4]]],color:["interpolate",["exponential",1.2],["zoom"],5,["interpolate",["linear"],["measure-light","brightness"],.1,"hsla(240, 9%, 55%, 0.2)",.4,"hsla(0, 0%, 100%, 0.2)"],7,["interpolate",["linear"],["measure-light","brightness"],.02,"hsla(213, 63%, 20%, 0.9)",.03,"hsla(30, 65%, 60%, 0.5)",.4,"hsla(10, 79%, 88%, 0.8)",.45,"hsla(200, 60%, 98%, 0.9)"]],"high-color":["interpolate",["exponential",1.2],["zoom"],5,["interpolate",["linear"],["measure-light","brightness"],.1,"hsla(215, 60%, 20%, 1)",.4,"hsla(215, 100%, 80%, 1)"],7,["interpolate",["linear"],["measure-light","brightness"],0,"hsla(228, 38%, 20%, 1)",.05,"hsla(360, 100%, 85%, 1)",.2,"hsla(205, 88%, 86%, 1)",.4,"hsla(270, 65%, 85%, 1)",.45,"hsla(0, 0%, 100%, 1)"]],"space-color":["interpolate",["exponential",1.2],["zoom"],5,"hsl(211, 84%, 0%)",7,["interpolate",["linear"],["measure-light","brightness"],0,"hsl(210, 84%, 5%)",.2,"hsl(210, 40%, 30%)",.4,"hsl(210, 45%, 30%)",.45,"hsl(210, 100%, 80%)"]],"horizon-blend":["interpolate",["exponential",1.2],["zoom"],5,.004,7,["interpolate",["exponential",1.2],["measure-light","brightness"],.35,.03,.4,.07,.45,.03]],"star-intensity":["interpolate",["exponential",1.2],["zoom"],5,.4,7,["interpolate",["exponential",1.2],["measure-light","brightness"],.1,.2,.3,0]]},camera:{"camera-projection":"orthographic"},schema:{roadsBrightness:{default:.7,type:"number",metadata:{"mapbox:title":"Roads brightness","mapbox:description":"Control how bright road network appear in dark styles","mapbox:group":!1}},colorPlaceLabelHighlight:{default:"hsl(5, 80%, 75%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Place label color used when setting highlight state.","mapbox:group":!1}},colorPlaceLabelSelect:{default:"hsl(5, 95%, 70%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Place label color used when setting select state.","mapbox:group":!1}},colorMotorways:{default:"hsl(214, 23%, 80%)",type:"color",metadata:{"mapbox:title":"Motorways","mapbox:description":"Set a custom color for motorway roads.","mapbox:group":"Color"}},colorTrunks:{default:"hsl(235, 20%, 80%)",type:"color",metadata:{"mapbox:title":"Trunk roads","mapbox:description":"Set a custom color for trunk roads.","mapbox:group":"Color"}},colorRoads:{default:"hsl(224, 25%, 75%)",type:"color",metadata:{"mapbox:title":"Roads","mapbox:description":"Set a custom color for roads.","mapbox:group":"Color"}},showPlaceLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Place labels","mapbox:description":"Shows and hides place label layers.","mapbox:group":"Visibility"}},showRoadsAndTransit:{default:!0,type:"boolean",metadata:{"mapbox:title":"Roads and transit network","mapbox:description":"Shows and hides all roads and transit networks.","mapbox:group":"Visibility"}},showPedestrianRoads:{default:!1,type:"boolean",metadata:{"mapbox:title":"Pedestrian roads, paths, trails","mapbox:description":"Shows and hides all pedestrian roads, paths, trails.","mapbox:group":"Visibility"}},showRoadLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Road labels","mapbox:description":"Shows and hides all road labels, including road shields.","mapbox:group":"Visibility"}},showPointOfInterestLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"POI labels","mapbox:description":"Shows or hides all POI icons and text.","mapbox:group":"Visibility"}},showTransitLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Transit labels","mapbox:description":"Shows or hides all transit icons and text.","mapbox:group":"Visibility"}},lightPreset:{default:"day",type:"string",values:["dawn","day","dusk","night"],metadata:{"mapbox:title":"Light preset","mapbox:description":"Switch between 4 time-of-day states: dusk, dawn, day and night.","mapbox:group":"Basemap"}},font:{default:"DIN Pro",type:"string",values:["Alegreya","Alegreya SC","Asap","Barlow","DIN Pro","EB Garamond","Faustina","Frank Ruhl Libre","Heebo","Inter","Lato","League Mono","Montserrat","Manrope","Noto Sans CJK JP","Open Sans","Poppins","Raleway","Roboto","Roboto Mono","Rubik","Source Code Pro","Source Sans Pro","Spectral","Ubuntu"],metadata:{"mapbox:title":"Font","mapbox:description":"Defines font family for the style from predefined options.","mapbox:group":"Typography"}}},sources:{"mapbox-dem":{url:"mapbox://mapbox.mapbox-terrain-dem-v1",type:"raster-dem",tileSize:512},"mapbox://mapbox.satellite":{url:"mapbox://mapbox.satellite",type:"raster",tileSize:256},composite:{url:"mapbox://mapbox.mapbox-bathymetry-v2,mapbox.mapbox-streets-v8-lite,mapbox.mapbox-poi-v2",type:"vector"}},sprite:"mapbox://sprites/mapbox/standard-satellite/46l64mrox16m5svqgseryp8fm",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"globe"},layers:[{id:"mapbox-satellite",type:"raster",source:"mapbox://mapbox.satellite",layout:{},paint:{"raster-emissive-strength":.5}},{id:"water",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"water",layout:{},paint:{"fill-color":"hsl(200, 35%, 28%)","fill-emissive-strength":.4,"fill-opacity":["interpolate",["linear"],["zoom"],10,.8,16,0]}},{id:"water-depth",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"depth",maxzoom:8,layout:{},paint:{"fill-emissive-strength":.4,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(200, 35%, 23%, 0.35)",200,"hsla(200, 35%, 20%, 0.35)",7e3,"hsla(200, 35%, 15%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(200, 35%, 30%, 0)",200,"hsla(200, 35%, 25%, 0)",7e3,"hsla(200, 35%, 20%, 0)"]]}},{id:"bottom",type:"slot",metadata:{"mapbox:description":"Above polygons (land, landuse, water, etc.)"}},{id:"tunnel-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)","line-dasharray":[10,0]}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"path"],["!=",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":"round","line-join":"round"},paint:{"line-emissive-strength":.6,"line-opacity":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)"}},{id:"tunnel-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)","line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"tunnel-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","type"],"pedestrian"],["==",["get","class"],"pedestrian"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":"round","line-join":"round"},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)"}},{id:"tunnel-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"tunnel-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"tunnel-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"tunnel-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-color":"hsl(125, 50%, 60%)","line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,.5],"line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"ferry",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:8,filter:["==",["get","type"],"ferry"],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.8,"line-color":"hsl(210, 40%, 55%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,20,1],"line-dasharray":["step",["zoom"],["literal",[1,0]],13,["literal",[12,4]]]}},{id:"ferry-auto",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:8,filter:["==",["get","type"],"ferry_auto"],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.8,"line-color":"hsl(210, 40%, 55%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,20,1]}},{id:"road-primary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["==",["get","class"],"primary"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["-",["config","roadsBrightness"],.3],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,1],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-opacity":["step",["zoom"],1,14,1,14.5,0]}},{id:"road-major-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["-",["config","roadsBrightness"],.3],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,1],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-opacity":["step",["zoom"],0,11,1,14,1,14.5,0]}},{id:"road-motorway-trunk-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:3,filter:["all",["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],5,["all",["match",["get","class"],["motorway","trunk"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["-",["config","roadsBrightness"],.3],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,1],"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-opacity":["interpolate",["linear"],["zoom"],3,0,3.5,1,14,1,14.5,0]}},{id:"road-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":[10,0]}},{id:"road-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"path"],["step",["zoom"],["!",["match",["get","type"],["steps","sidewalk","crossing"],!0,!1]],16,["!=",["get","type"],"steps"]],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-emissive-strength":.6,"line-opacity":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"road-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-join":"round"},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"road-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"pedestrian"],["match",["get","structure"],["none","ford"],!0,!1],["case",["has","layer"],[">=",["get","layer"],0],!0],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"golf-hole-line",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["==",["get","class"],"golf"],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-color":"hsl(110, 29%, 70%)"}},{id:"road-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"road-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["==",["get","class"],"primary"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"road-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:3,filter:["all",["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],5,["all",["match",["get","class"],["motorway","trunk"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],3,0,3.5,1,14,1,15,0]}},{id:"road-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-color":"hsl(125, 50%, 60%)","line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,1],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"road-rail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["major_rail","minor_rail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-gap-width":["interpolate",["linear"],["zoom"],15,0,16,1,18,2,22,20],"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,2]}},{id:"road-rail-tracks",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["major_rail","minor_rail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],16,2,18,6,20,16,22,32],"line-dasharray":["step",["zoom"],["literal",[.1,15]],16,["literal",[.1,1]],18,["literal",[.05,.5]]],"line-opacity":["interpolate",["linear"],["zoom"],13.75,0,14,1]}},{id:"bridge-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":[10,0]}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"path"],["!=",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-emissive-strength":.6,"line-opacity":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"bridge-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["==",["get","structure"],"bridge"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"bridge-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"pedestrian"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"bridge-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":"round"},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway","trunk"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":"round"},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-major-link-2",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":"round"},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-motorway-trunk-2",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-color":"hsl(125, 50%, 60%)","line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,1],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"bridge-rail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["major_rail","minor_rail"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-gap-width":["interpolate",["linear"],["zoom"],15,0,16,1,18,2,22,20],"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,2]}},{id:"bridge-rail-tracks",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["major_rail","minor_rail"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],16,2,18,6,20,16,22,32],"line-dasharray":["step",["zoom"],["literal",[.1,15]],16,["literal",[.1,1]],18,["literal",[.05,.5]]],"line-opacity":["interpolate",["linear"],["zoom"],13.75,0,14,1]}},{id:"aerialway",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"aerialway"],["match",["get","type"],["aerialway:zip_line"],["step",["zoom"],!1,15,!0],!0]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":1,"line-color":"hsl(225, 60%, 58%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,1,20,2],"line-dasharray":[4,1]}},{id:"admin-1-boundary-bg",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:7,filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":1,"line-width":["interpolate",["linear"],["zoom"],3,3,12,6],"line-color":"hsl(345, 100%, 0%)","line-opacity":["interpolate",["linear"],["zoom"],5,0,6,.1],"line-dasharray":[1,0],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,3]}},{id:"admin-0-boundary-bg",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":1,"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"hsl(345, 100%, 0%)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.1],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]}},{id:"admin-1-boundary",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:2,filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],layout:{},paint:{"line-emissive-strength":1,"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]],"line-width":["interpolate",["linear"],["zoom"],3,.5,12,1.5],"line-opacity":["interpolate",["linear"],["zoom"],2,0,3,1],"line-color":"hsl(345, 100%, 75%)"}},{id:"admin-0-boundary",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],layout:{},paint:{"line-emissive-strength":1,"line-color":"hsl(345, 100%, 70%)","line-width":["interpolate",["linear"],["zoom"],3,.8,12,2],"line-dasharray":[10,0]}},{id:"admin-0-boundary-disputed",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":1,"line-color":"hsl(345, 100%, 70%)","line-width":["interpolate",["linear"],["zoom"],3,.8,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]}},{id:"middle",type:"slot",metadata:{"mapbox:description":"Above lines (roads, etc.) and behind 3D buildings"}},{id:"road-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:10,filter:["all",["has","name"],["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],12,["match",["get","class"],["motorway","trunk","primary","secondary"],!0,!1],13,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary","street","street_limited"],!0,!1],15,["match",["get","class"],["path","pedestrian","golf","ferry","aerialway"],!1,!0]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.2]]]],layout:{"text-size":["interpolate",["linear"],["zoom"],10,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary"],9,["motorway_link","trunk_link","primary_link","secondary_link","tertiary_link","street","street_limited"],8,6.5],18,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary"],16,["motorway_link","trunk_link","primary_link","secondary_link","tertiary_link","street","street_limited"],14,13]],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,visibility:["case",["config","showRoadLabels"],"visible","none"],"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15},paint:{"text-color":"hsl(0, 0%, 100%)","text-halo-color":"hsl(0, 0%, 20%)","text-halo-width":1.5,"text-halo-blur":1}},{id:"path-pedestrian-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["case",["has","layer"],[">=",["get","layer"],0],!0],["step",["zoom"],["match",["get","class"],["pedestrian"],!0,!1],15,["match",["get","class"],["path","pedestrian"],!0,!1]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.2]]]],layout:{"text-size":["interpolate",["linear"],["zoom"],10,["match",["get","class"],"pedestrian",9,6.5],18,["match",["get","class"],"pedestrian",14,13]],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,visibility:["case",["config","showRoadLabels"],"visible","none"],"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.01},paint:{"text-color":"hsl(0, 0%, 100%)","text-halo-color":"hsl(0, 0%, 20%)","text-halo-width":1.5,"text-halo-blur":1}},{id:"golf-hole-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","class"],"golf"],["case",["<=",["pitch"],40],!0,["<=",["distance-from-center"],0]]],layout:{visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-size":12},paint:{"text-emissive-strength":.8,"text-halo-color":"hsl(110, 70%, 28%)","text-halo-width":.5,"text-halo-blur":.5,"text-color":"hsl(110, 40%, 65%)"}},{id:"ferry-aerialway-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],"aerialway",!0,"ferry",!0,!1],["case",["<=",["pitch"],40],!0,["<=",["distance-from-center"],0]]],layout:{"text-size":["interpolate",["linear"],["zoom"],10,6.5,18,13],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,visibility:["case",["config","showTransitLabels"],"visible","none"],"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.01},paint:{"text-emissive-strength":.8,"text-color":"hsl(200, 40%, 60%)","text-halo-color":"hsl(225, 60%, 20%)","text-halo-width":1.5,"text-halo-blur":1}},{id:"waterway-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:13,filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"text-emissive-strength":.8,"text-color":"hsl(210, 96%, 75%)"}},{id:"natural-line-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:4,filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["get","filterrank"],2],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line-center","text-pitch-alignment":"viewport"},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-halo-width":1,"text-halo-color":"hsl(210, 20%,20%)","text-halo-blur":.5,"text-color":"hsl(0, 0%, 95%)"}},{id:"natural-point-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:4,filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["get","filterrank"],2],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"Point"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["image",["string",["get","maki"]]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.75]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.75]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-color":"hsl(210, 20%,20%)","text-color":"hsl(0, 0%, 95%)","text-halo-width":1}},{id:"water-line-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"text-emissive-strength":.8,"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(210, 96%, 65%)","hsl(210, 96%, 75%)"]}},{id:"water-point-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"Point"],["!=",["id"],1]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10]},paint:{"text-emissive-strength":.8,"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(210, 96%, 65%)","hsl(210, 96%, 75%)"]}},{id:"road-intersection",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","class"],"intersection"],["has","name"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"icon-image":"intersection","icon-text-fit":"both","icon-text-fit-padding":[1,2,1,2],"text-size":["interpolate",["exponential",1.2],["zoom"],15,9,18,12],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-color":"hsl(230, 57%, 64%)"}},{id:"road-number-shield",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["has","reflen"],["<=",["get","reflen"],6],["match",["get","class"],["pedestrian","service"],!1,!0],["step",["zoom"],["==",["geometry-type"],"Point"],11,[">",["coalesce",["get","len"],0],5e3],12,[">",["coalesce",["get","len"],0],2500],13,[">",["coalesce",["get","len"],0],1e3],14,!0],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{"text-size":9,"icon-image":["case",["has","shield_beta"],["coalesce",["image",["concat",["get","shield_beta"],"-",["to-string",["get","reflen"]]]],["image",["concat",["get","shield"],"-",["to-string",["get","reflen"]]]],["image",["concat","default-",["to-string",["get","reflen"]]]]],["concat",["get","shield"],"-",["to-string",["get","reflen"]]]],"icon-rotation-alignment":"viewport","text-max-angle":38,"symbol-spacing":["interpolate",["linear"],["zoom"],11,400,14,600],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"],"symbol-placement":["step",["zoom"],"point",11,"line"],visibility:["case",["config","showRoadLabels"],"visible","none"],"text-rotation-alignment":"viewport","text-field":["get","ref"],"text-letter-spacing":.05},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-color":["case",["has","shield_beta"],["case",["all",["has","shield_text_color_beta"],["to-boolean",["coalesce",["image",["concat",["get","shield_beta"],"-",["to-string",["get","reflen"]]]],""]]],["match",["get","shield_text_color_beta"],"white","hsl(0, 0%, 100%)","yellow","hsl(50, 100%, 70%)","orange","hsl(25, 100%, 75%)","blue","hsl(230, 57%, 44%)","red","hsl(0, 87%, 59%)","green","hsl(140, 74%, 37%)","hsl(230, 18%, 13%)"],"hsl(230, 18%, 13%)"],["match",["get","shield_text_color"],"white","hsl(0, 0%, 100%)","yellow","hsl(50, 100%, 70%)","orange","hsl(25, 100%, 75%)","blue","hsl(230, 57%, 44%)","red","hsl(0, 87%, 59%)","green","hsl(140, 74%, 37%)","hsl(230, 18%, 13%)"]]}},{id:"road-exit-shield",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"motorway_junction",minzoom:14,filter:["all",["has","reflen"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-field":["get","ref"],"text-size":9,"icon-image":["concat","motorway-exit-",["to-string",["get","reflen"]]],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-color":"hsl(0, 0%, 100%)","text-translate":[0,0]}},{id:"gate-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"structure",minzoom:17,filter:["all",["==",["get","class"],"gate"],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<=",["distance-from-center"],.4],50,["<",["distance-from-center"],.2],55,["<",["distance-from-center"],0],60,["<",["distance-from-center"],-.05]]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"icon-image":["match",["get","type"],"gate","gate","lift_gate","lift-gate",""]},paint:{"icon-emissive-strength":.8}},{id:"building-entrance",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"structure",minzoom:18,filter:["all",["==",["get","class"],"entrance"],["case",["<=",["pitch"],40],!0,!1]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"icon-image":"marker","text-field":["get","ref"],"text-size":10,"text-offset":[0,-.5],"text-font":[["concat",["config","font"]," Regular"],"Arial Unicode MS Regular"]},paint:{"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)","icon-opacity":.4}},{id:"building-number-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"housenum_label",minzoom:17,filter:["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],.4],50,["<",["distance-from-center"],.2],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.4]]],layout:{"symbol-z-elevate":!0,visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["get","house_num"],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-max-width":10,"text-size":10,"text-padding":20},paint:{"text-emissive-strength":1.4,"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)"}},{id:"block-number-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"place_label",minzoom:16,filter:["all",["==",["get","class"],"settlement_subdivision"],["==",["get","type"],"block"],["case",["<=",["pitch"],60],!0,["<=",["distance-from-center"],.5]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["get","name"],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-max-width":7,"text-size":11},paint:{"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)"}},{id:"poi-label",type:"symbol",metadata:{"mapbox:group":"poi labels"},source:"composite","source-layer":"poi",minzoom:6,filter:["all",["has","sub_category"],["case",["<=",["pitch"],15],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","category"],"park_like",4,"visitor_amenities",2,"store_like",3,"lodging",1,2]]],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","category"],"park_like",4,["food_and_drink","visitor_amenities","lodging"],1,"religion",0,2]]]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1.2],50,["<",["distance-from-center"],1],55,["<",["distance-from-center"],.8],60,["<=",["distance-from-center"],.6]]],["match",["get","category"],["sport_and_leisure","visitor_amenities","commercial_services","general"],[">",["get","reality_score"],.95],["building","lodging","medical","store_like","food_and_drink","food_and_drink_stores","motorist","industrial","education"],[">",["get","reality_score"],.85],!0]],layout:{"text-size":13,"icon-image":["image",["string",["get","icon"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","icon"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","category"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","icon"],["literal",["communications-tower","museum","zoo"]]],["in",["get","category"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","icon"],"car-repair"],["in",["get","category"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","icon"],"picnic-site"],["==",["get","category"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","icon"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-padding":["interpolate",["linear"],["zoom"],16,6,17,4],visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"symbol-z-elevate":!0,"text-offset":["case",["match",["get","category"],["building","general","place_like"],!0,!1],["literal",[0,-.6]],["literal",[0,.8]]],"text-anchor":["case",["match",["get","category"],["building","general","place_like"],!0,!1],"bottom","top"],"text-field":["format",["get","name"],{}]},paint:{"text-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"icon-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"text-opacity":1,"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-width":1,"text-halo-color":"hsl(0, 0%, 15%)","text-color":["match",["get","category"],"food_and_drink","hsl(40, 100%, 75%)","park_like","hsl(110, 65%, 65%)","education","hsl(30, 100%, 70%)","medical","hsl(0, 100%, 85%)","sport_and_leisure","hsl(190, 60%, 75%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 80%)",["commercial_services","motorist","lodging"],"hsl(260, 100%, 85%)",["arts_and_entertainment","historic","landmark"],"hsl(320, 90%, 85%)",["match",["get","maki_beta"],"terminal","hsl(220, 100%, 80%)","hsl(0, 0%, 90%)"]]}},{id:"poi-label-osm",type:"symbol",metadata:{"mapbox:group":"poi labels"},source:"composite","source-layer":"poi",minzoom:6,filter:["all",["!",["has","sub_category"]],["case",["<=",["pitch"],15],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","class"],"park_like",4,"visitor_amenities",2,"store_like",3,"lodging",1,2]]],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","class"],"park_like",4,["food_and_drink","visitor_amenities","lodging"],1,"religion",0,2]]]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1.2],50,["<",["distance-from-center"],1],55,["<",["distance-from-center"],.8],60,["<=",["distance-from-center"],.6]]],["all",["match",["get","type"],"Toilets",[">=",["zoom"],17],!0]]],layout:{"text-size":["step",["zoom"],["step",["number",["get","sizerank"]],18,5,13],17,["step",["number",["get","sizerank"]],18,13,13]],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["string",["get","maki_beta"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","maki_beta"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","class"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","maki_beta"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}],["image",["string",["get","maki"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","maki"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","class"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","maki"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}]],["image",["string",["get","maki"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","maki"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","class"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","maki"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-padding":["interpolate",["linear"],["zoom"],16,6,17,4],visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"symbol-z-elevate":!0,"text-offset":["step",["zoom"],["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],["literal",[0,-.6]],["step",["number",["get","sizerank"]],["literal",[0,0]],5,["literal",[0,.8]]]],17,["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],["literal",[0,-.6]],["step",["number",["get","sizerank"]],["literal",[0,0]],13,["literal",[0,.8]]]]],"text-anchor":["step",["zoom"],["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],"bottom",["step",["number",["get","sizerank"]],"center",5,"top"]],17,["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],"bottom",["step",["number",["get","sizerank"]],"center",13,"top"]]],"text-field":["format",["coalesce",["get","name_en"],["get","name"]],{}]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-width":1.2,"text-halo-color":"hsl(0, 0%, 15%)","text-color":["match",["get","class"],"food_and_drink","hsl(40, 100%, 75%)","park_like","hsl(110, 65%, 65%)","education","hsl(30, 100%, 70%)","medical","hsl(0, 100%, 85%)","sport_and_leisure","hsl(190, 60%, 75%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 80%)",["commercial_services","motorist","lodging"],"hsl(260, 100%, 85%)",["arts_and_entertainment","historic","landmark"],"hsl(320, 90%, 85%)",["match",["get","maki_beta"],"terminal","hsl(220, 100%, 80%)","hsl(0, 0%, 90%)"]]}},{id:"top",type:"slot",metadata:{"mapbox:description":"Above POI labels and behind Place and Transit labels"}},{id:"transit-label",type:"symbol",metadata:{"mapbox:group":"transit labels"},source:"composite","source-layer":"transit_stop_label",minzoom:12,filter:["all",["step",["zoom"],["all",["!=",["get","mode"],"bus"],["!=",["get","stop_type"],"entrance"]],17,["!=",["get","stop_type"],"entrance"],19,!0],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],50,["<",["distance-from-center"],.8],55,["<",["distance-from-center"],.4],60,["<=",["distance-from-center"],-.1]]]],layout:{"text-size":13,"icon-image":["image",["string",["get","network"]],{params:{background:"hsl(220, 100%, 70%)","background-stroke":"hsl(0, 0%, 0%)",icon:"hsl(0, 0%, 0%)"}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-justify":["match",["get","stop_type"],"entrance","left","center"],visibility:["case",["config","showTransitLabels"],"visible","none"],"text-offset":["match",["get","stop_type"],"entrance",["literal",[1,0]],["literal",[0,.6]]],"text-anchor":["match",["get","stop_type"],"entrance","left","top"],"text-field":["step",["zoom"],["format","",{}],13,["match",["get","mode"],["metro_rail","rail"],["format",["coalesce",["get","name_en"],["get","name"]],{}],["format","",{}]],14,["match",["get","mode"],["bicycle","bus"],["format","",{}],["format",["coalesce",["get","name_en"],["get","name"]],{}]],18,["format",["coalesce",["get","name_en"],["get","name"]],{}]],"text-letter-spacing":.01,"text-max-width":["match",["get","stop_type"],"entrance",15,9]},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-halo-width":1.2,"text-halo-color":"hsl(0, 0%, 10%)","text-color":["match",["get","network"],"tokyo-metro","hsl(180, 50%, 30%)","mexico-city-metro","hsl(25, 100%, 63%)",["barcelona-metro","delhi-metro","hong-kong-mtr","milan-metro","osaka-subway"],"hsl(0, 90%, 47%)",["boston-t","washington-metro"],"hsl(230, 18%, 20%)",["chongqing-rail-transit","kiev-metro","singapore-mrt","taipei-metro"],"hsl(140, 90%, 25%)","hsl(225, 100%, 82%)"]}},{id:"airport-label",type:"symbol",metadata:{"mapbox:group":"transit labels"},source:"composite","source-layer":"airport_label",minzoom:8,filter:["all",["match",["get","class"],["military","civil","disputed_military","disputed_civil"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{"text-line-height":1.1,"text-size":["step",["get","sizerank"],18,9,13],"icon-image":["image",["string",["get","maki"]],{params:{background:"hsl(220, 100%, 70%)","background-stroke":"hsl(0, 0%, 0%)",icon:"hsl(0, 0%, 0%)"}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],visibility:["case",["config","showTransitLabels"],"visible","none"],"text-offset":[0,.8],"text-rotation-alignment":"viewport","text-anchor":"top","text-field":["step",["get","sizerank"],["case",["has","ref"],["concat",["get","ref"],` -
|
|
232
|
+
`:""}function l0(o){o&&(o.nodeType===Node.ELEMENT_NODE&&o.setAttribute("data-sd-slotted",""),o.querySelectorAll&&o.querySelectorAll("*").forEach(e=>e.setAttribute("data-sd-slotted","")))}async function n0(o,e=3){let a=()=>{var l;try{return o.contentDocument||((l=o.contentWindow)==null?void 0:l.document)||null}catch{return null}},r=a(),i=0;for(;i<e&&(!r||!r.body&&!r.documentElement);)await new Promise(l=>setTimeout(l,0)),r=a(),i++;return r&&(r.body||r.documentElement)?r:null}function s0(o){let e=o.getBoundingClientRect(),a=0,r=0,i=0,l=0;try{let s=getComputedStyle(o);a=parseFloat(s.borderLeftWidth)||0,r=parseFloat(s.borderRightWidth)||0,i=parseFloat(s.borderTopWidth)||0,l=parseFloat(s.borderBottomWidth)||0}catch{}let n=Math.max(0,Math.round(e.width-(a+r))),c=Math.max(0,Math.round(e.height-(i+l)));return{contentWidth:n,contentHeight:c,rect:e}}function c0(o,e,a){let r=o.createElement("style");return r.setAttribute("data-sd-iframe-pin",""),r.textContent=`html, body {margin: 0 !important;padding: 0 !important;width: ${e}px !important;height: ${a}px !important;min-width: ${e}px !important;min-height: ${a}px !important;box-sizing: border-box !important;overflow: hidden !important;background-clip: border-box !important;}`,(o.head||o.documentElement).appendChild(r),()=>{try{r.remove()}catch{}}}async function m0(o,e,a){let r=await n0(o,3);if(!r)throw new Error("iframe document not accessible/ready");let{contentWidth:i,contentHeight:l,rect:n}=s0(o),c=a==null?void 0:a.snap;if(!c||typeof c.toPng!="function")throw new Error("snapdom.toPng not available in iframe or window");let s={...a,scale:1},m=c0(r,i,l),d;try{d=await c.toPng(r.documentElement,s)}finally{m()}d.style.display="block",d.style.width=`${i}px`,d.style.height=`${l}px`;let g=document.createElement("div");return e.nodeMap.set(g,o),io(o,g,e,a),g.style.overflow="hidden",g.style.display="block",g.style.width||(g.style.width=`${Math.round(n.width)}px`),g.style.height||(g.style.height=`${Math.round(n.height)}px`),g.appendChild(d),g}var ho=new Map;async function po(o){var a;if((a=D.resource)!=null&&a.has(o))return D.resource.get(o);if(ho.has(o))return ho.get(o);let e=(async()=>{var i;let r=await Ht(o,{as:"dataURL",silent:!0});if(!r.ok||typeof r.data!="string")throw new Error(`[snapDOM] Failed to read blob URL: ${o}`);return(i=D.resource)==null||i.set(o,r.data),r.data})();ho.set(o,e);try{let r=await e;return ho.set(o,r),r}catch(r){throw ho.delete(o),r}}var d0=/\bblob:[^)"'\s]+/g;async function Pa(o){if(!o||o.indexOf("blob:")===-1)return o;let e=Array.from(new Set(o.match(d0)||[]));if(e.length===0)return o;let a=o;for(let r of e)try{let i=await po(r);a=a.split(r).join(i)}catch{}return a}function Fo(o){return typeof o=="string"&&o.startsWith("blob:")}function h0(o){return(o||"").split(",").map(e=>e.trim()).filter(Boolean).map(e=>{let a=e.match(/^(\S+)(\s+.+)?$/);return a?{url:a[1],desc:a[2]||""}:null}).filter(Boolean)}function p0(o){return o.map(e=>e.desc?`${e.url} ${e.desc.trim()}`:e.url).join(", ")}async function g0(o){var n,c;if(!o)return;let e=o.querySelectorAll?o.querySelectorAll("img"):[];for(let s of e)try{let m=s.getAttribute("src")||s.currentSrc||"";if(Fo(m)){let g=await po(m);s.setAttribute("src",g)}let d=s.getAttribute("srcset");if(d&&d.includes("blob:")){let g=h0(d),u=!1;for(let y of g)if(Fo(y.url))try{y.url=await po(y.url),u=!0}catch{}u&&s.setAttribute("srcset",p0(g))}}catch{}let a=o.querySelectorAll?o.querySelectorAll("image"):[];for(let s of a)try{let m="http://www.w3.org/1999/xlink",d=s.getAttribute("href")||((n=s.getAttributeNS)==null?void 0:n.call(s,m,"href"));if(Fo(d)){let g=await po(d);s.setAttribute("href",g),(c=s.removeAttributeNS)==null||c.call(s,m,"href")}}catch{}let r=o.querySelectorAll?o.querySelectorAll("[style*='blob:']"):[];for(let s of r)try{let m=s.getAttribute("style");if(m&&m.includes("blob:")){let d=await Pa(m);s.setAttribute("style",d)}}catch{}let i=o.querySelectorAll?o.querySelectorAll("style"):[];for(let s of i)try{let m=s.textContent||"";m.includes("blob:")&&(s.textContent=await Pa(m))}catch{}let l=["poster"];for(let s of l){let m=o.querySelectorAll?o.querySelectorAll(`[${s}^='blob:']`):[];for(let d of m)try{let g=d.getAttribute(s);Fo(g)&&d.setAttribute(s,await po(g))}catch{}}}async function Go(o,e,a){var m,d,g,u,y,p;if(!o)throw new Error("Invalid node");let r=new Set,i=null,l=null;if(o.nodeType===Node.ELEMENT_NODE){let h=(o.localName||o.tagName||"").toLowerCase();if(o.id==="snapdom-sandbox"||o.hasAttribute("data-snapdom-sandbox")||$g.has(h))return null}if(o.nodeType===Node.TEXT_NODE||o.nodeType!==Node.ELEMENT_NODE)return o.cloneNode(!0);if(o.getAttribute("data-capture")==="exclude"){if(a.excludeMode==="hide"){let h=document.createElement("div"),f=o.getBoundingClientRect();return h.style.cssText=`display:inline-block;width:${f.width}px;height:${f.height}px;visibility:hidden;`,h}else if(a.excludeMode==="remove")return null}if(a.exclude&&Array.isArray(a.exclude))for(let h of a.exclude)try{if((m=o.matches)!=null&&m.call(o,h)){if(a.excludeMode==="hide"){let f=document.createElement("div"),w=o.getBoundingClientRect();return f.style.cssText=`display:inline-block;width:${w.width}px;height:${w.height}px;visibility:hidden;`,f}else if(a.excludeMode==="remove")return null}}catch(f){console.warn(`Invalid selector in exclude option: ${h}`,f)}if(typeof a.filter=="function")try{if(!a.filter(o)){if(a.filterMode==="hide"){let h=document.createElement("div"),f=o.getBoundingClientRect();return h.style.cssText=`display:inline-block;width:${f.width}px;height:${f.height}px;visibility:hidden;`,h}else if(a.filterMode==="remove")return null}}catch(h){console.warn("Error in filter function:",h)}if(o.tagName==="IFRAME"){let h=!1;try{h=!!(o.contentDocument||(d=o.contentWindow)!=null&&d.document)}catch{h=!1}if(h)try{return await m0(o,e,a)}catch(f){console.warn("[SnapDOM] iframe rasterization failed, fallback:",f)}if(a.placeholders){let f=document.createElement("div");return f.style.cssText=`width:${o.offsetWidth}px;height:${o.offsetHeight}px;background-image:repeating-linear-gradient(45deg,#ddd,#ddd 5px,#f9f9f9 5px,#f9f9f9 10px);display:flex;align-items:center;justify-content:center;font-size:12px;color:#555;border:1px solid #aaa;`,io(o,f,e,a),f}else{let f=o.getBoundingClientRect(),w=document.createElement("div");return w.style.cssText=`display:inline-block;width:${f.width}px;height:${f.height}px;visibility:hidden;`,io(o,w,e,a),w}}if(o.getAttribute("data-capture")==="placeholder"){let h=o.cloneNode(!1);e.nodeMap.set(h,o),io(o,h,e,a);let f=document.createElement("div");return f.textContent=o.getAttribute("data-placeholder-text")||"",f.style.cssText="color:#666;font-size:12px;text-align:center;line-height:1.4;padding:0.5em;box-sizing:border-box;",h.appendChild(f),h}if(o.tagName==="CANVAS"){let h="";try{let w=o.getContext("2d",{willReadFrequently:!0});try{w&&w.getImageData(0,0,1,1)}catch{}if(await new Promise(b=>requestAnimationFrame(b)),h=o.toDataURL("image/png"),!h||h==="data:,"){try{w&&w.getImageData(0,0,1,1)}catch{}if(await new Promise(b=>requestAnimationFrame(b)),h=o.toDataURL("image/png"),!h||h==="data:,"){let b=document.createElement("canvas");b.width=o.width,b.height=o.height;let A=b.getContext("2d");A&&(A.drawImage(o,0,0),h=b.toDataURL("image/png"))}}}catch{}let f=document.createElement("img");try{f.decoding="sync",f.loading="eager"}catch{}h&&(f.src=h),f.width=o.width,f.height=o.height;try{let w=getComputedStyle(o);w.width&&(f.style.width=w.width),w.height&&(f.style.height=w.height)}catch{}return e.nodeMap.set(f,o),io(o,f,e,a),f}let n;try{if(n=o.cloneNode(!1),Ju(o,n),e.nodeMap.set(n,o),o.tagName==="IMG"){o0(o,n);try{let h=o.getBoundingClientRect(),f=Math.round(h.width||0),w=Math.round(h.height||0);if(!f||!w){let b=window.getComputedStyle(o),A=parseFloat(b.width)||0,x=parseFloat(b.height)||0,C=parseInt(o.getAttribute("width")||"",10)||0,k=parseInt(o.getAttribute("height")||"",10)||0,_=o.width||o.naturalWidth||0,z=o.height||o.naturalHeight||0;f=Math.round(f||A||C||_||0),w=Math.round(w||x||k||z||0)}f&&(n.dataset.snapdomWidth=String(f)),w&&(n.dataset.snapdomHeight=String(w))}catch{}try{let h=o.getAttribute("style")||"",f=window.getComputedStyle(o),w=k=>{let _=h.match(new RegExp(`${k}\\s*:\\s*([^;]+)`,"i")),z=_?_[1].trim():f.getPropertyValue(k);return/%|auto/i.test(String(z||""))},b=parseInt(n.dataset.snapdomWidth||"0",10),A=parseInt(n.dataset.snapdomHeight||"0",10),x=w("width")||!b,C=w("height")||!A;x&&b&&(n.style.width=`${b}px`),C&&A&&(n.style.height=`${A}px`),b&&(n.style.minWidth=`${b}px`),A&&(n.style.minHeight=`${A}px`)}catch{}}}catch(h){throw console.error("[Snapdom] Failed to clone node:",o,h),h}if(o instanceof HTMLTextAreaElement){let h=o.getBoundingClientRect();n.style.width=`${h.width}px`,n.style.height=`${h.height}px`}if(o instanceof HTMLInputElement&&(n.value=o.value,n.setAttribute("value",o.value),o.checked!==void 0&&(n.checked=o.checked,o.checked&&n.setAttribute("checked",""),o.indeterminate&&(n.indeterminate=o.indeterminate))),o instanceof HTMLSelectElement&&(i=o.value),o instanceof HTMLTextAreaElement&&(l=o.value),io(o,n,e,a),o.shadowRoot){let h=function(z,P){if(z.nodeType===Node.ELEMENT_NODE&&z.tagName==="STYLE")return P(null);Go(z,e,a).then(T=>{P(T||null)}).catch(()=>{P(null)})};try{let z=o.shadowRoot.querySelectorAll("slot");for(let P of z){let T=[];try{T=((g=P.assignedNodes)==null?void 0:g.call(P,{flatten:!0}))||((u=P.assignedNodes)==null?void 0:u.call(P))||[]}catch{T=((y=P.assignedNodes)==null?void 0:y.call(P))||[]}for(let V of T)r.add(V)}}catch{}let f=$u(e),w=`[data-sd="${f}"]`;try{n.setAttribute("data-sd",f)}catch{}let b=e0(o.shadowRoot),A=qu(b,w),x=a0(b),C=r0(o,x,w);t0(n,C+A,f);let k=document.createDocumentFragment(),_=await ea(Array.from(o.shadowRoot.childNodes),h,a.fast);k.append(..._.filter(z=>!!z)),n.appendChild(k)}if(o.tagName==="SLOT"){let h=function(x,C){Go(x,e,a).then(k=>{k&&l0(k),C(k||null)}).catch(()=>{C(null)})},f=((p=o.assignedNodes)==null?void 0:p.call(o,{flatten:!0}))||[],w=f.length>0?f:Array.from(o.childNodes),b=document.createDocumentFragment(),A=await ea(Array.from(w),h,a.fast);return b.append(...A.filter(x=>!!x)),b}function c(h,f){if(r.has(h))return f(null);Go(h,e,a).then(w=>{f(w||null)}).catch(()=>{f(null)})}let s=await ea(Array.from(o.childNodes),c,a.fast);if(n.append(...s.filter(h=>!!h)),i!==null&&n instanceof HTMLSelectElement){n.value=i;for(let h of n.options)h.value===i?h.setAttribute("selected",""):h.removeAttribute("selected")}return l!==null&&n instanceof HTMLTextAreaElement&&(n.textContent=l),n}function u0(o){return/\bcounter\s*\(|\bcounters\s*\(/.test(o||"")}function f0(o){return(o||"").replace(/"([^"]*)"/g,"$1")}function Va(o,e=!1){let a="",r=Math.max(1,o);for(;r>0;)r--,a=String.fromCharCode(97+r%26)+a,r=Math.floor(r/26);return e?a.toUpperCase():a}function Ta(o,e=!0){let a=[[1e3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]],r=Math.max(1,Math.min(3999,o)),i="";for(let[l,n]of a)for(;r>=l;)i+=n,r-=l;return e?i:i.toLowerCase()}function Ea(o,e){switch((e||"decimal").toLowerCase()){case"decimal":return String(Math.max(0,o));case"decimal-leading-zero":return(o<10?"0":"")+String(Math.max(0,o));case"lower-alpha":return Va(o,!1);case"upper-alpha":return Va(o,!0);case"lower-roman":return Ta(o,!1);case"upper-roman":return Ta(o,!0);default:return String(Math.max(0,o))}}function y0(o){let e=()=>{var u;return((u=D==null?void 0:D.session)==null?void 0:u.__counterEpoch)??0},a=e(),r=new WeakMap,i=o instanceof Document?o.documentElement:o,l=u=>u&&u.tagName==="LI",n=u=>{let y=0,p=u==null?void 0:u.parentElement;if(!p)return 0;for(let h of p.children){if(h===u)break;h.tagName==="LI"&&y++}return y},c=u=>{let y=new Map;for(let[p,h]of u)y.set(p,h.slice());return y},s=(u,y,p)=>{var b,A;let h=c(u),f;try{f=((b=p.style)==null?void 0:b.counterReset)||getComputedStyle(p).counterReset}catch{}if(f&&f!=="none")for(let x of f.split(",")){let C=x.trim().split(/\s+/),k=C[0],_=Number.isFinite(Number(C[1]))?Number(C[1]):0;if(!k)continue;let z=y.get(k);if(z&&z.length){let P=z.slice();P.push(_),h.set(k,P)}else h.set(k,[_])}let w;try{w=((A=p.style)==null?void 0:A.counterIncrement)||getComputedStyle(p).counterIncrement}catch{}if(w&&w!=="none")for(let x of w.split(",")){let C=x.trim().split(/\s+/),k=C[0],_=Number.isFinite(Number(C[1]))?Number(C[1]):1;if(!k)continue;let z=h.get(k)||[];z.length===0&&z.push(0),z[z.length-1]+=_,h.set(k,z)}try{if(getComputedStyle(p).display==="list-item"&&l(p)){let x=p.parentElement,C=1;if(x&&x.tagName==="OL"){let _=x.getAttribute("start"),z=Number.isFinite(Number(_))?Number(_):1,P=n(p),T=p.getAttribute("value");C=Number.isFinite(Number(T))?Number(T):z+P}else C=1+n(p);let k=h.get("list-item")||[];k.length===0&&k.push(0),k[k.length-1]=C,h.set("list-item",k)}}catch{}return h},m=(u,y,p)=>{let h=s(p,y,u);r.set(u,h);let f=h;for(let w of u.children)f=m(w,h,f);return h},d=new Map;m(i,d,d);function g(){let u=e();if(u!==a){a=u;let y=new Map;m(i,y,y)}}return{get(u,y){var h;g();let p=(h=r.get(u))==null?void 0:h.get(y);return p&&p.length?p[p.length-1]:0},getStack(u,y){var h;g();let p=(h=r.get(u))==null?void 0:h.get(y);return p?p.slice():[]}}}function b0(o,e,a){if(!o||o==="none")return o;try{let r=/\b(counter|counters)\s*\(([^)]+)\)/g,i=o.replace(r,(l,n,c)=>{var m,d,g;let s=String(c).split(",").map(u=>u.trim());if(n==="counter"){let u=(m=s[0])==null?void 0:m.replace(/^["']|["']$/g,""),y=(s[1]||"decimal").toLowerCase(),p=a.get(e,u);return Ea(p,y)}else{let u=(d=s[0])==null?void 0:d.replace(/^["']|["']$/g,""),y=((g=s[1])==null?void 0:g.replace(/^["']|["']$/g,""))??"",p=(s[2]||"decimal").toLowerCase(),h=a.getStack(e,u);return h.length?h.map(f=>Ea(f,p)).join(y):""}});return f0(i)}catch{return"- "}}var ro=new WeakMap,Da=300;function w0(o,e){let a=Ra(o);return e?(e.__pseudoPreflightFp!==a&&(e.__pseudoPreflight=Ia(o),e.__pseudoPreflightFp=a),!!e.__pseudoPreflight):Ia(o)}function ta(o){try{return o&&o.cssRules?o.cssRules:null}catch{return null}}function Ra(o){let e=o.querySelectorAll('style,link[rel~="stylesheet"]'),a=`n:${e.length}|`,r=0;for(let l=0;l<e.length;l++){let n=e[l];if(n.tagName==="STYLE"){let c=n.textContent?n.textContent.length:0;a+=`S${c}|`;let s=n.sheet,m=s?ta(s):null;m&&(r+=m.length)}else{let c=n.getAttribute("href")||"",s=n.getAttribute("media")||"all";a+=`L${c}|m:${s}|`;let m=n.sheet,d=m?ta(m):null;d&&(r+=d.length)}}let i=o.adoptedStyleSheets;return a+=`ass:${Array.isArray(i)?i.length:0}|tr:${r}`,a}function Ba(o,e,a){let r=ta(o);if(!r)return!1;for(let i=0;i<r.length;i++){if(a.budget<=0)return!1;let l=r[i],n=l&&l.cssText?l.cssText:"";a.budget--;for(let c of e)if(n.includes(c))return!0;if(l&&l.cssRules&&l.cssRules.length)for(let c=0;c<l.cssRules.length&&a.budget>0;c++){let s=l.cssRules[c],m=s&&s.cssText?s.cssText:"";a.budget--;for(let d of e)if(m.includes(d))return!0}if(a.budget<=0)return!1}return!1}function Ia(o=document){let e=Ra(o),a=ro.get(o);if(a&&a.fingerprint===e)return a.result;let r=["::before","::after","::first-letter",":before",":after",":first-letter","counter(","counters(","counter-increment","counter-reset"],i=o.querySelectorAll("style");for(let n=0;n<i.length;n++){let c=i[n].textContent||"";for(let s of r)if(c.includes(s))return ro.set(o,{fingerprint:e,result:!0}),!0}let l=o.adoptedStyleSheets;if(Array.isArray(l)&&l.length){let n={budget:Da};try{for(let c of l)if(Ba(c,r,n))return ro.set(o,{fingerprint:e,result:!0}),!0}catch{}}{let n=o.querySelectorAll('style,link[rel~="stylesheet"]'),c={budget:Da};for(let s=0;s<n.length&&c.budget>0;s++){let m=n[s],d=null;if(m.tagName,d=m.sheet||null,d&&Ba(d,r,c))return ro.set(o,{fingerprint:e,result:!0}),!0}}return o.querySelector('[style*="counter("], [style*="counters("]')?(ro.set(o,{fingerprint:e,result:!0}),!0):(ro.set(o,{fingerprint:e,result:!1}),!1)}var lo=new WeakMap,Fa=-1;function x0(o){return(o||"").replace(/"([^"]*)"/g,"$1")}function k0(o){if(!o)return"";let e=[],a=/"([^"]*)"/g,r;for(;r=a.exec(o);)e.push(r[1]);return e.length?e.join(""):x0(o)}function oa(o,e){let a=o.parentElement,r=a?lo.get(a):null;return r?{get(i,l){let n=e.get(i,l),c=r.get(l);return typeof c=="number"?Math.max(n,c):n},getStack(i,l){let n=e.getStack(i,l);if(!n.length)return n;let c=r.get(l);if(typeof c=="number"){let s=n.slice();return s[s.length-1]=Math.max(s[s.length-1],c),s}return n}}:e}function aa(o,e,a){let r=new Map;function i(s){let m=[];if(!s||s==="none")return m;for(let d of String(s).split(",")){let g=d.trim().split(/\s+/),u=g[0],y=Number.isFinite(Number(g[1]))?Number(g[1]):void 0;u&&m.push({name:u,num:y})}return m}let l=i(e==null?void 0:e.counterReset),n=i(e==null?void 0:e.counterIncrement);function c(s){if(r.has(s))return r.get(s).slice();let m=a.getStack(o,s);m=m.length?m.slice():[];let d=l.find(u=>u.name===s);if(d){let u=Number.isFinite(d.num)?d.num:0;m=m.length?[...m,u]:[u]}let g=n.find(u=>u.name===s);if(g){let u=Number.isFinite(g.num)?g.num:1;m.length===0&&(m=[0]),m[m.length-1]+=u}return r.set(s,m.slice()),m}return{get(s,m){let d=c(m);return d.length?d[d.length-1]:0},getStack(s,m){return c(m)},__incs:n}}function A0(o,e,a){let r;try{r=getComputedStyle(o,e)}catch{}let i=r==null?void 0:r.content;if(!i||i==="none"||i==="normal")return{text:"",incs:[]};let l=oa(o,a),n=aa(o,r,l),c=u0(i)?b0(i,o,n):i;return{text:k0(c),incs:n.__incs||[]}}async function Ga(o,e,a,r){var m,d,g;if(!(o instanceof Element)||!(e instanceof Element))return;let i=o.ownerDocument||document;if(!w0(i,a))return;let l=((m=D==null?void 0:D.session)==null?void 0:m.__counterEpoch)??0;if(Fa!==l&&(lo=new WeakMap,a&&(a.__counterCtx=null),Fa=l),!a.__counterCtx)try{a.__counterCtx=y0(o.ownerDocument||document)}catch{}let n=a.__counterCtx;for(let u of["::before","::after","::first-letter"])try{let y=pa(o,u);if(!y||y.content==="none"&&y.backgroundImage==="none"&&y.backgroundColor==="transparent"&&(y.borderStyle==="none"||parseFloat(y.borderWidth)===0)&&(!y.transform||y.transform==="none")&&y.display==="inline")continue;if(u==="::first-letter"){let G=getComputedStyle(o);if(!(y.color!==G.color||y.fontSize!==G.fontSize||y.fontWeight!==G.fontWeight))continue;let B=Array.from(e.childNodes).find(he=>{var fe;return he.nodeType===Node.TEXT_NODE&&((fe=he.textContent)==null?void 0:fe.trim().length)>0});if(!B)continue;let U=B.textContent,S=(d=U.match(/^([^\p{L}\p{N}\s]*[\p{L}\p{N}](?:['’])?)/u))==null?void 0:d[0],ee=U.slice((S==null?void 0:S.length)||0);if(!S||/[\uD800-\uDFFF]/.test(S))continue;let ce=document.createElement("span");ce.textContent=S,ce.dataset.snapdomPseudo="::first-letter";let ge=ga(y),ue=Uo(ge,"span");a.styleMap.set(ce,ue);let oe=document.createTextNode(ee);e.replaceChild(oe,B),e.insertBefore(ce,oe);continue}let p=y.content??"",h=p===""||p==="none"||p==="normal",{text:f,incs:w}=A0(o,u,n),b=y.backgroundImage,A=y.backgroundColor,x=y.fontFamily,C=parseInt(y.fontSize)||32,k=parseInt(y.fontWeight)||!1,_=y.color||"#000",z=y.borderStyle,P=parseFloat(y.borderWidth),T=y.transform,V=Yt(x),H=!h&&f!=="",O=b&&b!=="none",J=A&&A!=="transparent"&&A!=="rgba(0, 0, 0, 0)",se=z&&z!=="none"&&P>0,ne=T&&T!=="none";if(!(H||O||J||se||ne)){if(w&&w.length&&o.parentElement){let G=lo.get(o.parentElement)||new Map;for(let{name:B}of w){if(!B)continue;let U=oa(o,n),S=aa(o,getComputedStyle(o,u),U).get(o,B);G.set(B,S)}lo.set(o.parentElement,G)}continue}let N=document.createElement("span");N.dataset.snapdomPseudo=u,N.style.pointerEvents="none";let j=ga(y),W=Uo(j,"span");if(a.styleMap.set(N,W),V&&f&&f.length===1){let{dataUrl:G,width:B,height:U}=await fu(f,x,k,C,_),S=document.createElement("img");S.src=G,S.style=`height:${C}px;width:${B/U*C}px;object-fit:contain;`,N.appendChild(S),e.dataset.snapdomHasIcon="true"}else if(f&&f.startsWith("url(")){let G=Ho(f);if(G!=null&&G.trim())try{let B=document.createElement("img"),U=await Ht(To(G),{as:"dataURL",useProxy:r.useProxy});B.src=U.data,B.style=`width:${C}px;height:auto;object-fit:contain;`,N.appendChild(B)}catch(B){console.error(`[snapdom] Error in pseudo ${u} for`,o,B)}}else!V&&H&&(N.textContent=f);N.style.backgroundImage="none","maskImage"in N.style&&(N.style.maskImage="none"),"webkitMaskImage"in N.style&&(N.style.webkitMaskImage="none");try{N.style.backgroundRepeat=y.backgroundRepeat,N.style.backgroundSize=y.backgroundSize,y.backgroundPositionX&&y.backgroundPositionY?(N.style.backgroundPositionX=y.backgroundPositionX,N.style.backgroundPositionY=y.backgroundPositionY):N.style.backgroundPosition=y.backgroundPosition,N.style.backgroundOrigin=y.backgroundOrigin,N.style.backgroundClip=y.backgroundClip,N.style.backgroundAttachment=y.backgroundAttachment,N.style.backgroundBlendMode=y.backgroundBlendMode}catch{}if(O)try{let G=ua(b),B=await Promise.all(G.map(da));N.style.backgroundImage=B.join(", ")}catch(G){console.warn(`[snapdom] Failed to inline background-image for ${u}`,G)}J&&(N.style.backgroundColor=A);let Q=N.childNodes.length>0||((g=N.textContent)==null?void 0:g.trim())!==""||O||J||se||ne;if(w&&w.length&&o.parentElement){let G=lo.get(o.parentElement)||new Map,B=oa(o,n),U=aa(o,getComputedStyle(o,u),B);for(let{name:S}of w){if(!S)continue;let ee=U.get(o,S);G.set(S,ee)}lo.set(o.parentElement,G)}if(!Q)continue;u==="::before"?e.insertBefore(N,e.firstChild):e.appendChild(N)}catch(y){console.warn(`[snapdom] Failed to capture ${u} for`,o,y)}let c=Array.from(o.children),s=Array.from(e.children).filter(u=>!u.dataset.snapdomPseudo);for(let u=0;u<Math.min(c.length,s.length);u++)await Ga(c[u],s[u],a,r)}function L0(o,e){var x,C;if(!o||!(o instanceof Element))return;let a=o.ownerDocument||document,r=e||a,i=o instanceof SVGSVGElement?[o]:Array.from(o.querySelectorAll("svg"));if(i.length===0)return;let l=/url\(\s*#([^)]+)\)/g,n=["fill","stroke","filter","clip-path","mask","marker","marker-start","marker-mid","marker-end"],c=k=>window.CSS&&CSS.escape?CSS.escape(k):k.replace(/[^a-zA-Z0-9_-]/g,"\\$&"),s="http://www.w3.org/1999/xlink",m=k=>{if(!k||!k.getAttribute)return null;let _=k.getAttribute("href")||k.getAttribute("xlink:href")||(typeof k.getAttributeNS=="function"?k.getAttributeNS(s,"href"):null);if(_)return _;let z=k.attributes;if(!z)return null;for(let P=0;P<z.length;P++){let T=z[P];if(!T||!T.name)continue;if(T.name==="href")return T.value;let V=T.name.indexOf(":");if(V!==-1&&T.name.slice(V+1)==="href")return T.value}return null},d=new Set(Array.from(o.querySelectorAll("[id]")).map(k=>k.id)),g=new Set,u=!1,y=(k,_=null)=>{if(!k)return;l.lastIndex=0;let z;for(;z=l.exec(k);){u=!0;let P=(z[1]||"").trim();P&&(d.has(P)||(g.add(P),_&&!_.has(P)&&_.add(P)))}},p=k=>{let _=k.querySelectorAll("use");for(let P of _){let T=m(P);if(!T||!T.startsWith("#"))continue;u=!0;let V=T.slice(1).trim();V&&!d.has(V)&&g.add(V)}let z=k.querySelectorAll('*[style*="url("],*[fill^="url("], *[stroke^="url("],*[filter^="url("],*[clip-path^="url("],*[mask^="url("],*[marker^="url("],*[marker-start^="url("],*[marker-mid^="url("],*[marker-end^="url("]');for(let P of z){y(P.getAttribute("style")||"");for(let T of n)y(P.getAttribute(T))}};for(let k of i)p(k);if(!u)return;let h=o.querySelector("svg.inline-defs-container");h||(h=a.createElementNS("http://www.w3.org/2000/svg","svg"),h.classList.add("inline-defs-container"),h.setAttribute("aria-hidden","true"),h.setAttribute("style","position:absolute;width:0;height:0;overflow:hidden"),o.insertBefore(h,o.firstChild||null));let f=h.querySelector("defs")||null,w=k=>{if(!k||d.has(k))return null;let _=c(k),z=P=>{let T=r.querySelector(P);return T&&!o.contains(T)?T:null};return z(`svg defs > *#${_}`)||z(`svg > symbol#${_}`)||z(`*#${_}`)};if(!g.size)return;let b=new Set(g),A=new Set;for(;b.size;){let k=b.values().next().value;if(b.delete(k),!k||d.has(k)||A.has(k))continue;let _=w(k);if(!_){A.add(k);continue}f||(f=a.createElementNS("http://www.w3.org/2000/svg","defs"),h.appendChild(f));let z=_.cloneNode(!0);z.id||z.setAttribute("id",k),f.appendChild(z),A.add(k),d.add(k);let P=[z,...z.querySelectorAll("*")];for(let T of P){let V=m(T);if(V&&V.startsWith("#")){let O=V.slice(1).trim();O&&!d.has(O)&&!A.has(O)&&b.add(O)}let H=((x=T.getAttribute)==null?void 0:x.call(T,"style"))||"";H&&y(H,b);for(let O of n){let J=(C=T.getAttribute)==null?void 0:C.call(T,O);J&&y(J,b)}}}}function C0(o,e){var c;if(!o||!e)return;let a=o.scrollTop||0;if(!a)return;getComputedStyle(e).position==="static"&&(e.style.position="relative");let r=o.getBoundingClientRect(),i=o.clientHeight,l="data-snap-ph",n=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);for(;n.nextNode();){let s=n.currentNode,m=getComputedStyle(s),d=m.position;if(d!=="sticky"&&d!=="-webkit-sticky")continue;let g=ja(m.top),u=ja(m.bottom);if(g==null&&u==null)continue;let y=v0(s,o),p=z0(e,y,l);if(!p)continue;let h=s.getBoundingClientRect(),f=h.width,w=h.height,b=h.left-r.left;if(!(f>0&&w>0)||!Number.isFinite(b))continue;let A=g!=null?g+a:a+(i-w-u);if(!Number.isFinite(A))continue;let x=Number.parseInt(m.zIndex,10),C=Number.isFinite(x),k=C?Math.max(x,1)+1:2,_=C?x-1:0,z=p.cloneNode(!1);z.setAttribute(l,"1"),z.style.position="sticky",z.style.left=`${b}px`,z.style.top=`${A}px`,z.style.width=`${f}px`,z.style.height=`${w}px`,z.style.visibility="hidden",z.style.zIndex=String(_),z.style.overflow="hidden",z.style.background="transparent",z.style.boxShadow="none",z.style.filter="none",(c=p.parentElement)==null||c.insertBefore(z,p),p.style.position="absolute",p.style.left=`${b}px`,p.style.top=`${A}px`,p.style.bottom="auto",p.style.zIndex=String(k),p.style.pointerEvents="none"}}function ja(o){if(!o||o==="auto")return null;let e=Number.parseFloat(o);return Number.isFinite(e)?e:null}function v0(o,e){let a=[];for(let r=o;r&&r!==e;){let i=r.parentElement;if(!i)break;a.push(Array.prototype.indexOf.call(i.children,r)),r=i}return a.reverse()}function z0(o,e,a){let r=o;for(let i=0;i<e.length;i++)if(r=_0(r,a)[e[i]],!r)return null;return r instanceof HTMLElement?r:null}function _0(o,e){let a=[],r=o.children;for(let i=0;i<r.length;i++){let l=r[i];l.hasAttribute(e)||a.push(l)}return a}function S0(o){let e=getComputedStyle(o),a=e.outlineStyle,r=e.outlineWidth,i=e.borderStyle,l=e.borderWidth,n=a!=="none"&&parseFloat(r)>0,c=i==="none"||parseFloat(l)===0;n&&c&&(o.style.border=`${r} solid transparent`)}async function N0(o,e={}){var s,m;let a={styleMap:D.session.styleMap,styleCache:D.session.styleCache,nodeMap:D.session.nodeMap},r,i="",l="";S0(o);try{L0(o)}catch(d){console.warn("inlineExternal defs or symbol failed:",d)}try{r=await Go(o,a,e,o)}catch(d){throw console.warn("deepClone failed:",d),d}try{await Ga(o,r,a,e)}catch(d){console.warn("inlinePseudoElements failed:",d)}await g0(r);try{let d=r.querySelectorAll("style[data-sd]");for(let g of d)l+=g.textContent||"",g.remove()}catch{}let n=lu(a.styleMap);i=Array.from(n.entries()).map(([d,g])=>`.${g}{${d}}`).join(""),i=l+i;for(let[d,g]of a.styleMap.entries()){if(d.tagName==="STYLE")continue;if(d.getRootNode&&d.getRootNode()instanceof ShadowRoot){d.setAttribute("style",g.replace(/;/g,"; "));continue}let u=n.get(g);u&&d.classList.add(u);let y=(s=d.style)==null?void 0:s.backgroundImage,p=(m=d.dataset)==null?void 0:m.snapdomHasIcon;y&&y!=="none"&&(d.style.backgroundImage=y),p&&(d.style.verticalAlign="middle",d.style.display="inline")}for(let[d,g]of a.nodeMap.entries()){let u=g.scrollLeft,y=g.scrollTop;if((u||y)&&d instanceof HTMLElement){d.style.overflow="hidden",d.style.scrollbarWidth="none",d.style.msOverflowStyle="none";let p=document.createElement("div");for(p.style.transform=`translate(${-u}px, ${-y}px)`,p.style.willChange="transform",p.style.display="inline-block",p.style.width="100%";d.firstChild;)p.appendChild(d.firstChild);d.appendChild(p)}}let c=r instanceof HTMLElement&&r.firstElementChild instanceof HTMLElement?r.firstElementChild:r;if(C0(o,c),o===a.nodeMap.get(r)){let d=a.styleCache.get(o)||window.getComputedStyle(o);a.styleCache.set(o,d);let g=Og(d.transform);r.style.margin="0",r.style.top="auto",r.style.left="auto",r.style.right="auto",r.style.bottom="auto",r.style.animation="none",r.style.transition="none",r.style.willChange="auto",r.style.float="none",r.style.clear="none",r.style.transform=g||""}for(let[d,g]of a.nodeMap.entries())g.tagName==="PRE"&&(d.style.marginTop="0",d.style.marginBlockStart="0");return{clone:r,classCSS:i,styleCache:a.styleCache}}function M0(o){var m,d,g,u;let e=parseInt(((m=o.dataset)==null?void 0:m.snapdomWidth)||"",10)||0,a=parseInt(((d=o.dataset)==null?void 0:d.snapdomHeight)||"",10)||0,r=parseInt(o.getAttribute("width")||"",10)||0,i=parseInt(o.getAttribute("height")||"",10)||0,l=parseFloat(((g=o.style)==null?void 0:g.width)||"")||0,n=parseFloat(((u=o.style)==null?void 0:u.height)||"")||0,c=e||l||r||o.width||o.naturalWidth||100,s=a||n||i||o.height||o.naturalHeight||100;return{width:c,height:s}}async function P0(o,e={}){let a=Array.from(o.querySelectorAll("img")),r=async i=>{if(!i.getAttribute("src")){let d=i.currentSrc||i.src||"";d&&i.setAttribute("src",d)}i.removeAttribute("srcset"),i.removeAttribute("sizes");let l=i.src||"";if(!l)return;let n=await Ht(l,{as:"dataURL",useProxy:e.useProxy});if(n.ok&&typeof n.data=="string"&&n.data.startsWith("data:")){i.src=n.data,i.width||(i.width=i.naturalWidth||100),i.height||(i.height=i.naturalHeight||100);return}let{width:c,height:s}=M0(i),{fallbackURL:m}=e||{};if(m)try{let d=typeof m=="function"?await m({width:c,height:s,src:l,element:i}):m;if(d){let g=await Ht(d,{as:"dataURL",useProxy:e.useProxy});i.src=g.data,i.width||(i.width=c),i.height||(i.height=s);return}}catch{}if(e.placeholders!==!1){let d=document.createElement("div");d.style.cssText=[`width:${c}px`,`height:${s}px`,"background:#ccc","display:inline-block","text-align:center",`line-height:${s}px`,"color:#666","font-size:12px","overflow:hidden"].join(";"),d.textContent="img",i.replaceWith(d)}else{let d=document.createElement("div");d.style.cssText=`display:inline-block;width:${c}px;height:${s}px;visibility:hidden;`,i.replaceWith(d)}};for(let i=0;i<a.length;i+=4){let l=a.slice(i,i+4).map(r);await Promise.allSettled(l)}}function V0(o){if(!o)return()=>{};let e=T0(o);if(e<=0)return()=>{};if(!R0(o))return()=>{};let a=getComputedStyle(o),r=Math.round(E0(a)*e+D0(a)),i=o.textContent??"",l=i;if(o.scrollHeight<=r+.5)return()=>{};let n=0,c=i.length,s=-1;for(;n<=c;){let m=n+c>>1;o.textContent=i.slice(0,m)+"…",o.scrollHeight<=r+.5?(s=m,n=m+1):c=m-1}return o.textContent=(s>=0?i.slice(0,s):"")+"…",()=>{o.textContent=l}}function T0(o){let e=getComputedStyle(o),a=e.getPropertyValue("-webkit-line-clamp")||e.getPropertyValue("line-clamp");a=(a||"").trim();let r=parseInt(a,10);return Number.isFinite(r)&&r>0?r:0}function E0(o){let e=(o.lineHeight||"").trim(),a=parseFloat(o.fontSize)||16;return!e||e==="normal"?Math.round(a*1.2):e.endsWith("px")?parseFloat(e):/^\d+(\.\d+)?$/.test(e)?Math.round(parseFloat(e)*a):e.endsWith("%")?Math.round(parseFloat(e)/100*a):Math.round(a*1.2)}function D0(o){return(parseFloat(o.paddingTop)||0)+(parseFloat(o.paddingBottom)||0)}function R0(o){return o.childElementCount>0?!1:Array.from(o.childNodes).some(e=>e.nodeType===Node.TEXT_NODE)}function B0(o,e){if(!o||!e||!e.style)return;let a=getComputedStyle(o);try{e.style.boxShadow="none"}catch{}try{e.style.textShadow="none"}catch{}try{e.style.outline="none"}catch{}let r=(a.filter||"").replace(/\bblur\([^()]*\)\s*/gi,"").replace(/\bdrop-shadow\([^()]*\)\s*/gi,"").trim().replace(/\s+/g," ");try{e.style.filter=r.length?r:"none"}catch{}}function I0(o){let e=document.createTreeWalker(o,NodeFilter.SHOW_COMMENT),a=[];for(;e.nextNode();)a.push(e.currentNode);for(let r of a)r.remove()}function F0(o,e={}){let{stripFrameworkDirectives:a=!0}=e,r=new Set(["xml","xlink"]),i=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);for(;i.nextNode();){let l=i.currentNode;for(let n of Array.from(l.attributes)){let c=n.name;if(c.includes("@")){l.removeAttribute(c);continue}if(c.includes(":")){let s=c.split(":",1)[0];if(!r.has(s)){l.removeAttribute(c);continue}}if(a&&(c.startsWith("x-")||c.startsWith("v-")||c.startsWith(":")||c.startsWith("on:")||c.startsWith("bind:")||c.startsWith("let:")||c.startsWith("class:"))){l.removeAttribute(c);continue}}}}function G0(o,e={}){o&&(F0(o,e),I0(o))}function j0(o){var e;try{let a=((e=o.getAttribute)==null?void 0:e.call(o,"style"))||"";return/\b(height|width|block-size|inline-size)\s*:/.test(a)}catch{return!1}}function W0(o){return o instanceof HTMLImageElement||o instanceof HTMLCanvasElement||o instanceof HTMLVideoElement||o instanceof HTMLIFrameElement||o instanceof SVGElement||o instanceof HTMLObjectElement||o instanceof HTMLEmbedElement}function Z0(o,e){if(!(o instanceof Element)||j0(o)||W0(o))return!1;let a=e.position;if(a==="absolute"||a==="fixed"||a==="sticky")return!1;let r=e.display||"";return!(r.includes("flex")||r.includes("grid")||r.startsWith("table")||e.transform&&e.transform!=="none")}function X0(o,e,a=new Map){function r(i,l){if(!(i instanceof Element)||!(l instanceof Element))return;let n=i.childElementCount>l.childElementCount,c=a.get(i)||getComputedStyle(i);if(a.has(i)||a.set(i,c),n&&Z0(i,c)){l.style.height||(l.style.height="auto"),l.style.width||(l.style.width="auto"),l.style.removeProperty("block-size"),l.style.removeProperty("inline-size"),l.style.minHeight||(l.style.minHeight="0"),l.style.minWidth||(l.style.minWidth="0"),l.style.maxHeight||(l.style.maxHeight="none"),l.style.maxWidth||(l.style.maxWidth="none");let d=c.overflowY||c.overflowBlock||"visible",g=c.overflowX||c.overflowInline||"visible";(d!=="visible"||g!=="visible")&&(l.style.overflow="visible")}let s=Array.from(i.children),m=Array.from(l.children);for(let d=0;d<Math.min(s.length,m.length);d++)r(s[d],m[d])}r(o,e)}function H0(o){let e=getComputedStyle(o);return!(e.display==="none"||e.position==="absolute"||e.position==="fixed"||e.position==="sticky"||(e.cssFloat||e.float||"none")!=="none"||e.transform&&e.transform!=="none")}function O0(o,e){if(!(o instanceof Element))return!1;if(o.getAttribute("data-capture")==="exclude"&&(e==null?void 0:e.excludeMode)==="remove")return!0;if(Array.isArray(e==null?void 0:e.exclude))for(let a of e.exclude)try{if(o.matches(a))return e.excludeMode==="remove"}catch{}return!1}function Y0(o,e){let a=getComputedStyle(o),r=o.getBoundingClientRect(),i=1/0,l=-1/0,n=!1,c=Array.from(o.children);for(let y of c){if(O0(y,e)||!H0(y))continue;let p=y.getBoundingClientRect(),h=p.top-r.top,f=p.bottom-r.top;f<=h||(h<i&&(i=h),f>l&&(l=f),n=!0)}let s=n?Math.max(0,l-i):0,m=parseFloat(a.borderTopWidth)||0,d=parseFloat(a.borderBottomWidth)||0,g=parseFloat(a.paddingTop)||0,u=parseFloat(a.paddingBottom)||0;return m+d+g+u+s}var $=(o,e=3)=>Number.isFinite(o)?Math.round(o*10**e)/10**e:o;function U0(o){var c;let e=o.boxShadow||"";if(!e||e==="none")return{top:0,right:0,bottom:0,left:0};let a=e.split(/\),(?=(?:[^()]*\([^()]*\))*[^()]*$)/).map(s=>s.trim()),r=0,i=0,l=0,n=0;for(let s of a){let m=((c=s.match(/-?\d+(\.\d+)?px/g))==null?void 0:c.map(f=>parseFloat(f)))||[];if(m.length<2)continue;let[d,g,u=0,y=0]=m,p=Math.abs(d)+u+y,h=Math.abs(g)+u+y;i=Math.max(i,p+Math.max(d,0)),n=Math.max(n,p+Math.max(-d,0)),l=Math.max(l,h+Math.max(g,0)),r=Math.max(r,h+Math.max(-g,0))}return{top:Math.ceil(r),right:Math.ceil(i),bottom:Math.ceil(l),left:Math.ceil(n)}}function J0(o){let e=(o.filter||"").match(/blur\(\s*([0-9.]+)px\s*\)/),a=e?Math.ceil(parseFloat(e[1])||0):0;return{top:a,right:a,bottom:a,left:a}}function K0(o){if((o.outlineStyle||"none")==="none")return{top:0,right:0,bottom:0,left:0};let e=Math.ceil(parseFloat(o.outlineWidth||"0")||0);return{top:e,right:e,bottom:e,left:e}}function Q0(o){var s;let e=`${o.filter||""} ${o.webkitFilter||""}`.trim();if(!e||e==="none")return{bleed:{top:0,right:0,bottom:0,left:0},has:!1};let a=e.match(/drop-shadow\((?:[^()]|\([^()]*\))*\)/gi)||[],r=0,i=0,l=0,n=0,c=!1;for(let m of a){c=!0;let d=((s=m.match(/-?\d+(?:\.\d+)?px/gi))==null?void 0:s.map(f=>parseFloat(f)))||[],[g=0,u=0,y=0]=d,p=Math.abs(g)+y,h=Math.abs(u)+y;i=Math.max(i,p+Math.max(g,0)),n=Math.max(n,p+Math.max(-g,0)),l=Math.max(l,h+Math.max(u,0)),r=Math.max(r,h+Math.max(-u,0))}return{bleed:{top:$(r),right:$(i),bottom:$(l),left:$(n)},has:c}}function q0(o,e){if(!o||!e||!e.style)return null;let a=getComputedStyle(o);try{e.style.transformOrigin="0 0"}catch{}try{"translate"in e.style&&(e.style.translate="none"),"rotate"in e.style&&(e.style.rotate="none")}catch{}let r=a.transform||"none";if(!r||r==="none")try{let l=Za(o);if(l.a===1&&l.b===0&&l.c===0&&l.d===1)return e.style.transform="none",{a:1,b:0,c:0,d:1}}catch{}let i=r.match(/^matrix\(\s*([^)]+)\)$/i);if(i){let l=i[1].split(",").map(n=>parseFloat(n.trim()));if(l.length===6&&l.every(Number.isFinite)){let[n,c,s,m]=l,d=Math.sqrt(n*n+c*c)||0,g=0,u=0,y=0,p=0,h=0,f=0;d>0&&(g=n/d,u=c/d,y=g*s+u*m,p=s-g*y,h=m-u*y,f=Math.sqrt(p*p+h*h)||0,f>0?y=y/f:y=0);let w=d,b=0,A=y*f,x=f;try{e.style.transform=`matrix(${w}, ${b}, ${A}, ${x}, 0, 0)`}catch{}return{a:w,b,c:A,d:x}}}try{let l=String(r).trim();return e.style.transform=l+" translate(0px, 0px) rotate(0deg)",null}catch{return null}}function Wa(o,e,a,r,i){let l=a.a,n=a.b,c=a.c,s=a.d,m=a.e||0,d=a.f||0;function g(w,b){let A=w-r,x=b-i,C=l*A+c*x,k=n*A+s*x;return C+=r+m,k+=i+d,[C,k]}let u=[g(0,0),g(o,0),g(0,e),g(o,e)],y=1/0,p=1/0,h=-1/0,f=-1/0;for(let[w,b]of u)w<y&&(y=w),b<p&&(p=b),w>h&&(h=w),b>f&&(f=b);return{minX:y,minY:p,maxX:h,maxY:f,width:h-y,height:f-p}}function $0(o,e,a){let r=(o.transformOrigin||"0 0").trim().split(/\s+/),[i,l]=[r[0]||"0",r[1]||"0"],n=(c,s)=>{let m=c.toLowerCase();return m==="left"||m==="top"?0:m==="center"?s/2:m==="right"||m==="bottom"?s:m.endsWith("px")?parseFloat(m)||0:m.endsWith("%")?(parseFloat(m)||0)*s/100:/^-?\d+(\.\d+)?$/.test(m)&&parseFloat(m)||0};return{ox:n(i,e),oy:n(l,a)}}function ef(o){var i,l,n,c,s,m,d,g;let e={rotate:"0deg",scale:null,translate:null},a=typeof o.computedStyleMap=="function"?o.computedStyleMap():null;if(a){let u=f=>{try{return typeof a.has=="function"&&!a.has(f)||typeof a.get!="function"?null:a.get(f)}catch{return null}},y=u("rotate");if(y)if(y.angle){let f=y.angle;e.rotate=f.unit==="rad"?f.value*180/Math.PI+"deg":f.value+f.unit}else y.unit?e.rotate=y.unit==="rad"?y.value*180/Math.PI+"deg":y.value+y.unit:e.rotate=String(y);else{let f=getComputedStyle(o);e.rotate=f.rotate&&f.rotate!=="none"?f.rotate:"0deg"}let p=u("scale");if(p){let f="x"in p&&((i=p.x)==null?void 0:i.value)!=null?p.x.value:Array.isArray(p)?(l=p[0])==null?void 0:l.value:Number(p)||1,w="y"in p&&((n=p.y)==null?void 0:n.value)!=null?p.y.value:Array.isArray(p)?(c=p[1])==null?void 0:c.value:f;e.scale=`${f} ${w}`}else{let f=getComputedStyle(o);e.scale=f.scale&&f.scale!=="none"?f.scale:null}let h=u("translate");if(h){let f="x"in h&&"value"in h.x?h.x.value:Array.isArray(h)?(s=h[0])==null?void 0:s.value:0,w="y"in h&&"value"in h.y?h.y.value:Array.isArray(h)?(m=h[1])==null?void 0:m.value:0,b="x"in h&&((d=h.x)!=null&&d.unit)?h.x.unit:"px",A="y"in h&&((g=h.y)!=null&&g.unit)?h.y.unit:"px";e.translate=`${f}${b} ${w}${A}`}else{let f=getComputedStyle(o);e.translate=f.translate&&f.translate!=="none"?f.translate:null}return e}let r=getComputedStyle(o);return e.rotate=r.rotate&&r.rotate!=="none"?r.rotate:"0deg",e.scale=r.scale&&r.scale!=="none"?r.scale:null,e.translate=r.translate&&r.translate!=="none"?r.translate:null,e}var ia=null;function tf(){if(ia)return ia;let o=document.createElement("div");return o.id="snapdom-measure-slot",o.setAttribute("aria-hidden","true"),Object.assign(o.style,{position:"absolute",left:"-99999px",top:"0px",width:"0px",height:"0px",overflow:"hidden",opacity:"0",pointerEvents:"none",contain:"size layout style"}),document.documentElement.appendChild(o),ia=o,o}function of(o){let e=tf(),a=document.createElement("div");a.style.transformOrigin="0 0",o.baseTransform&&(a.style.transform=o.baseTransform),o.rotate&&(a.style.rotate=o.rotate),o.scale&&(a.style.scale=o.scale),o.translate&&(a.style.translate=o.translate),e.appendChild(a);let r=Za(a);return e.removeChild(a),r}function af(o){let e=getComputedStyle(o),a=e.transform||"none";if(a!=="none"&&!/^matrix\(\s*1\s*,\s*0\s*,\s*0\s*,\s*1\s*,\s*0\s*,\s*0\s*\)$/i.test(a))return!0;let r=e.rotate&&e.rotate!=="none"&&e.rotate!=="0deg",i=e.scale&&e.scale!=="none"&&e.scale!=="1",l=e.translate&&e.translate!=="none"&&e.translate!=="0px 0px";return!!(r||i||l)}function Za(o){let e=getComputedStyle(o).transform;if(!e||e==="none")return new DOMMatrix;try{return new DOMMatrix(e)}catch{return new WebKitCSSMatrix(e)}}async function Xa(o,e){var b;if(!o)throw new Error("Element cannot be null or undefined");Hg(e.cache);let a=e.fast,r=e.outerTransforms!==!1,i=!!e.outerShadows,l={element:o,options:e,plugins:e.plugins},n,c,s,m="",d="",g,u,y=null;await Ut("beforeSnap",l),await Ut("beforeClone",l);let p=V0(l.element);try{({clone:n,classCSS:c,styleCache:s}=await N0(l.element,l.options)),!r&&n&&(y=q0(l.element,n)),!i&&n&&B0(l.element,n)}finally{p()}if(l={clone:n,classCSS:c,styleCache:s,...l},await Ut("afterClone",l),G0(l.clone),((b=l.options)==null?void 0:b.excludeMode)==="remove")try{X0(l.element,l.clone,l.styleCache)}catch(A){console.warn("[snapdom] shrink pass failed:",A)}try{await uu(l.clone,l.element)}catch{}await new Promise(A=>{ao(async()=>{await P0(l.clone,l.options),A()},{fast:a})}),await new Promise(A=>{ao(async()=>{await Tu(l.element,l.clone,l.styleCache,l.options),A()},{fast:a})}),e.embedFonts&&await new Promise(A=>{ao(async()=>{let x=Mu(l.element),C=Pu(l.element);if(Qt()){let k=new Set(Array.from(x).map(_=>String(_).split("__")[0]).filter(Boolean));await Vu(k,1)}m=await Nu({required:x,usedCodepoints:C,preCached:!1,exclude:l.options.excludeFonts,useProxy:l.options.useProxy}),A()},{fast:a})});let h=iu(l.clone).sort(),f=h.join(",");D.baseStyle.has(f)?d=D.baseStyle.get(f):await new Promise(A=>{ao(()=>{d=ru(h),D.baseStyle.set(f,d),A()},{fast:a})}),l={fontsCSS:m,baseCSS:d,...l},await Ut("beforeRender",l),await new Promise(A=>{ao(()=>{var Be;let x=getComputedStyle(l.element),C=l.element.getBoundingClientRect(),k=Math.max(1,$(l.element.offsetWidth||parseFloat(x.width)||C.width||1)),_=Math.max(1,$(l.element.offsetHeight||parseFloat(x.height)||C.height||1));if(((Be=l.options)==null?void 0:Be.excludeMode)==="remove"){let xe=Y0(l.element,l.options);Number.isFinite(xe)&&xe>0&&(_=Math.max(1,Math.min(_,$(xe+1))))}let z=(xe,ke=NaN)=>{let ze=typeof xe=="string"?parseFloat(xe):xe;return Number.isFinite(ze)?ze:ke},P=z(l.options.width),T=z(l.options.height),V=k,H=_,O=Number.isFinite(P),J=Number.isFinite(T),se=_>0?k/_:1;O&&J?(V=Math.max(1,$(P)),H=Math.max(1,$(T))):O?(V=Math.max(1,$(P)),H=Math.max(1,$(V/(se||1)))):J?(H=Math.max(1,$(T)),V=Math.max(1,$(H*(se||1)))):(V=k,H=_);let ne=0,N=0,j=k,W=_;if(!r&&y&&Number.isFinite(y.a)){let xe={a:y.a,b:y.b||0,c:y.c||0,d:y.d||1,e:0,f:0},ke=Wa(k,_,xe,0,0);ne=$(ke.minX),N=$(ke.minY),j=$(ke.maxX),W=$(ke.maxY)}else if(r&&rf(l.element)){let xe=x.transform&&x.transform!=="none"?x.transform:"",ke=ef(l.element),ze=of({baseTransform:xe,rotate:ke.rotate||"0deg",scale:ke.scale,translate:ke.translate}),{ox:Xe,oy:He}=$0(x,k,_),Oe=ze.is2D?ze:new DOMMatrix(ze.toString()),Me=Wa(k,_,Oe,Xe,He);ne=$(Me.minX),N=$(Me.minY),j=$(Me.maxX),W=$(Me.maxY)}let Q=U0(x),G=J0(x),B=K0(x),U=Q0(x),S=i?{top:$(Q.top+G.top+B.top+U.bleed.top),right:$(Q.right+G.right+B.right+U.bleed.right),bottom:$(Q.bottom+G.bottom+B.bottom+U.bleed.bottom),left:$(Q.left+G.left+B.left+U.bleed.left)}:{top:0,right:0,bottom:0,left:0};ne=$(ne-S.left),N=$(N-S.top),j=$(j+S.right),W=$(W+S.bottom);let ee=Math.max(1,$(j-ne)),ce=Math.max(1,$(W-N)),ge=O||J?$(V/k):1,ue=J||O?$(H/_):1,oe=Math.max(1,$(ee*ge)),he=Math.max(1,$(ce*ue)),fe="http://www.w3.org/2000/svg",_e=Qt()?1:0,Y=$(_e+(r?0:1)),ie=document.createElementNS(fe,"foreignObject"),Fe=$(ne),Ge=$(N);ie.setAttribute("x",String($(-(Fe-Y)))),ie.setAttribute("y",String($(-(Ge-Y)))),ie.setAttribute("width",String($(k+Y*2))),ie.setAttribute("height",String($(_+Y*2))),ie.style.overflow="visible";let De=document.createElement("style");De.textContent=l.baseCSS+l.fontsCSS+"svg{overflow:visible;} foreignObject{overflow:visible;}"+l.classCSS,ie.appendChild(De);let ve=document.createElement("div");ve.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),ve.style.width=`${$(k)}px`,ve.style.height=`${$(_)}px`,ve.style.overflow="visible",l.clone.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),ve.appendChild(l.clone),ie.appendChild(ve);let je=new XMLSerializer().serializeToString(ie),Ve=$(ee+Y*2),Te=$(ce+Y*2),Re=O||J;e.meta={w0:k,h0:_,vbW:Ve,vbH:Te,targetW:V,targetH:H};let We=Qt()&&Re?Ve:$(oe+Y*2),Ze=Qt()&&Re?Te:$(he+Y*2);u=`<svg xmlns="${fe}" width="${We}" height="${Ze}" viewBox="0 0 ${Ve} ${Te}">`+je+"</svg>",g=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(u)}`,l={svgString:u,dataURL:g,...l},A()},{fast:a})}),await Ut("afterRender",l);let w=document.getElementById("snapdom-sandbox");return w&&w.style.position==="absolute"&&w.remove(),l.dataURL}function rf(o){return af(o)}function lf(o){if(typeof o=="string"){let e=o.toLowerCase().trim();if(e==="disabled"||e==="full"||e==="auto"||e==="soft")return e}return"soft"}function nf(o={}){let e=o.format??"png";e==="jpg"&&(e="jpeg");let a=lf(o.cache);return{debug:o.debug??!1,fast:o.fast??!0,scale:o.scale??1,exclude:o.exclude??[],excludeMode:o.excludeMode??"hide",filter:o.filter??null,filterMode:o.filterMode??"hide",placeholders:o.placeholders!==!1,embedFonts:o.embedFonts??!1,iconFonts:Array.isArray(o.iconFonts)?o.iconFonts:o.iconFonts?[o.iconFonts]:[],localFonts:Array.isArray(o.localFonts)?o.localFonts:[],excludeFonts:o.excludeFonts??void 0,fallbackURL:o.fallbackURL??void 0,cache:a,useProxy:typeof o.useProxy=="string"?o.useProxy:"",width:o.width??null,height:o.height??null,format:e,type:o.type??"svg",quality:o.quality??.92,dpr:o.dpr??(window.devicePixelRatio||1),backgroundColor:o.backgroundColor??(["jpeg","webp"].includes(e)?"#ffffff":null),filename:o.filename??"snapDOM",outerTransforms:o.outerTransforms??!0,outerShadows:o.outerShadows??!1}}function sf(...o){return Eu(...o),we}var we=Object.assign(cf,{plugins:sf}),Ha=Symbol("snapdom.internal"),Jt=Symbol("snapdom.internal.silent"),ra=!1;async function cf(o,e){if(!o)throw new Error("Element cannot be null or undefined");let a=nf(e);if(Bu(a,e&&e.plugins),Qt()&&(a.embedFonts===!0||df(o)))for(let r=0;r<3;r++)try{await mf(o,e),ra=!1}catch{}return a.iconFonts&&a.iconFonts.length>0&&su(a.iconFonts),a.snap||(a.snap={toPng:(r,i)=>we.toPng(r,i),toSvg:(r,i)=>we.toSvg(r,i)}),we.capture(o,a,Ha)}we.capture=async(o,e,a)=>{if(a!==Ha)throw new Error("[snapdom.capture] is internal. Use snapdom(...) instead.");let r=await Xa(o,e),i={img:async(p,h)=>{let{toImg:f}=await Promise.resolve().then(()=>Wo);return f(r,{...p,...h||{}})},svg:async(p,h)=>{let{toSvg:f}=await Promise.resolve().then(()=>Wo);return f(r,{...p,...h||{}})},canvas:async(p,h)=>{let{toCanvas:f}=await Promise.resolve().then(()=>ei);return f(r,{...p,...h||{}})},blob:async(p,h)=>{let{toBlob:f}=await Promise.resolve().then(()=>oi);return f(r,{...p,...h||{}})},png:async(p,h)=>{let{rasterize:f}=await Promise.resolve().then(()=>qt);return f(r,{...p,...h||{},format:"png"})},jpeg:async(p,h)=>{let{rasterize:f}=await Promise.resolve().then(()=>qt);return f(r,{...p,...h||{},format:"jpeg"})},webp:async(p,h)=>{let{rasterize:f}=await Promise.resolve().then(()=>qt);return f(r,{...p,...h||{},format:"webp"})},download:async(p,h)=>{let{download:f}=await Promise.resolve().then(()=>My);return f(r,{...p,...h||{}})}},l={...e,export:{url:r},exports:{svg:async p=>{let{toSvg:h}=await Promise.resolve().then(()=>Wo);return h(r,{...e,...p||{},[Jt]:!0})},canvas:async p=>{let{toCanvas:h}=await Promise.resolve().then(()=>ei);return h(r,{...e,...p||{},[Jt]:!0})},png:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"png",[Jt]:!0})},jpeg:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"jpeg",[Jt]:!0})},jpg:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"jpeg",[Jt]:!0})},webp:async p=>{let{rasterize:h}=await Promise.resolve().then(()=>qt);return h(r,{...e,...p||{},format:"webp",[Jt]:!0})},blob:async p=>{let{toBlob:h}=await Promise.resolve().then(()=>oi);return h(r,{...e,...p||{},[Jt]:!0})},img:async p=>{let{toImg:h}=await Promise.resolve().then(()=>Wo);return h(r,{...e,...p||{},[Jt]:!0})}}},n=await Du("defineExports",l),c=Object.assign({},...n.filter(p=>p&&typeof p=="object")),s={...i,...c};s.jpeg&&!s.jpg&&(s.jpg=(p,h)=>s.jpeg(p,h));function m(p,h){let f={...e,...h||{}};return(p==="jpeg"||p==="jpg")&&(f.backgroundColor==null||f.backgroundColor==="transparent")&&(f.backgroundColor="#ffffff"),f}let d=!1,g=Promise.resolve();async function u(p,h){let f=async()=>{let w=s[p];if(!w)throw new Error(`[snapdom] Unknown export type: ${p}`);let b=m(p,h),A={...e,export:{type:p,options:b,url:r}};await Ut("beforeExport",A);let x=await w(A,b);return await Ut("afterExport",A,x),d||(d=!0,await Ut("afterSnap",e)),x};return g=g.then(f)}let y={url:r,toRaw:()=>r,to:(p,h)=>u(p,h),toImg:p=>u("img",p),toSvg:p=>u("svg",p),toCanvas:p=>u("canvas",p),toBlob:p=>u("blob",p),toPng:p=>u("png",p),toJpg:p=>u("jpg",p),toWebp:p=>u("webp",p),download:p=>u("download",p)};for(let p of Object.keys(s)){let h="to"+p.charAt(0).toUpperCase()+p.slice(1);y[h]||(y[h]=f=>u(p,f))}return y},we.toRaw=(o,e)=>we(o,e).then(a=>a.toRaw()),we.toImg=(o,e)=>we(o,e).then(a=>a.toImg()),we.toSvg=(o,e)=>we(o,e).then(a=>a.toSvg()),we.toCanvas=(o,e)=>we(o,e).then(a=>a.toCanvas()),we.toBlob=(o,e)=>we(o,e).then(a=>a.toBlob()),we.toPng=(o,e)=>we(o,{...e,format:"png"}).then(a=>a.toPng()),we.toJpg=(o,e)=>we(o,{...e,format:"jpeg"}).then(a=>a.toJpg()),we.toWebp=(o,e)=>we(o,{...e,format:"webp"}).then(a=>a.toWebp()),we.download=(o,e)=>we(o,e).then(a=>a.download());async function mf(o,e){if(ra)return;let a={...e,fast:!0,embedFonts:!0,scale:.2},r;try{r=await Xa(o,a)}catch{}await new Promise(i=>requestAnimationFrame(()=>requestAnimationFrame(i))),r&&await new Promise(i=>{let l=new Image;try{l.decoding="sync",l.loading="eager"}catch{}l.style.cssText="position:fixed;left:0px;top:0px;width:10px;height:10px;opacity:0.01;pointer-events:none;",l.src=r,document.body.appendChild(l),(async()=>{try{typeof l.decode=="function"&&await l.decode()}catch{}let n=performance.now();for(;!(l.complete&&l.naturalWidth>0)&&performance.now()-n<900;)await new Promise(c=>setTimeout(c,200));await new Promise(c=>requestAnimationFrame(c));try{l.remove()}catch{}i()})()}),o.querySelectorAll("canvas").forEach(i=>{try{let l=i.getContext("2d",{willReadFrequently:!0});l&&l.getImageData(0,0,1,1)}catch{}}),ra=!0}function df(o){let e=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);for(;e.nextNode();){let a=e.currentNode,r=getComputedStyle(a),i=r.backgroundImage&&r.backgroundImage!=="none",l=r.maskImage&&r.maskImage!=="none"||r.webkitMaskImage&&r.webkitMaskImage!=="none";if(i||l||a.tagName==="CANVAS")return!0}return!1}class hf{constructor(){pe(this,"frames",[]);pe(this,"captureRect",null);pe(this,"_isRecording",!1);pe(this,"_frameDelay",1e3);pe(this,"canvas",null);pe(this,"ctx",null);pe(this,"logoImage",null);pe(this,"logoLoaded",!1)}setArea(e){this.captureRect=e;const a=window.devicePixelRatio||1;this.canvas=document.createElement("canvas"),this.canvas.width=e.width*a,this.canvas.height=e.height*a,this.ctx=this.canvas.getContext("2d"),this.ctx.scale(a,a),this.loadLogo()}loadLogo(){this.logoImage&&this.logoLoaded||(this.logoImage=new Image,this.logoImage.onload=()=>{this.logoLoaded=!0,console.log("[GifRecorder] Logo 加载完成")},this.logoImage.onerror=e=>{console.error("[GifRecorder] Logo 加载失败:",e)},this.logoImage.src="data:image/png;base64,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")}setFrameDelay(e){this._frameDelay=e}getArea(){return this.captureRect}startRecording(){this._isRecording=!0,this.frames=[]}stopRecording(){this._isRecording=!1}async captureFrame(e,a){var i;if(!this._isRecording||!this.captureRect||!this.canvas||!this.ctx){console.log("[GifRecorder] captureFrame 跳过:",{isRecording:this._isRecording,hasRect:!!this.captureRect,hasCanvas:!!this.canvas});return}const r=e||document.body;try{console.log("[GifRecorder] 开始 snapdom 截图(全屏模式)...");const n=await(await we(r,{filter:c=>!(c instanceof HTMLElement&&c.classList.contains("capture-exclude"))})).toPng();if(console.log("[GifRecorder] snapdom 截图完成, img:",(i=n==null?void 0:n.src)==null?void 0:i.length),!n||!n.src){console.error("[GifRecorder] snapdom 返回空图片");return}await new Promise((c,s)=>{n.complete&&n.naturalWidth>0?(console.log("[GifRecorder] 图片已加载, 开始裁剪区域"),this.processImage(n,a),c()):(n.onload=()=>{console.log("[GifRecorder] 图片加载完成, 开始裁剪区域"),this.processImage(n,a),c()},n.onerror=m=>{console.error("[GifRecorder] 图片加载失败:",m),s(m)})})}catch(l){console.error("[GifRecorder] 截图失败:",l)}}processImage(e,a){const r=window.devicePixelRatio||1,i=this.captureRect.x*r,l=this.captureRect.y*r,n=this.captureRect.width*r,c=this.captureRect.height*r;this.ctx.drawImage(e,i,l,n,c,0,0,this.captureRect.width,this.captureRect.height);const s=a,m=Math.max(this.captureRect.width/48,this.captureRect.height/48),d=8,g=12;this.ctx.font=`bold ${m}px Arial, sans-serif`,this.ctx.textAlign="center",this.ctx.textBaseline="top";const y=this.ctx.measureText(s).width,p=m,h=(this.captureRect.width-y)/2-d*2,f=g,w=y+d*4,b=p+d*2;if(this.ctx.fillStyle="rgba(0, 0, 0, 0.6)",this.ctx.beginPath(),this.ctx.roundRect(h,f,w,b,16),this.ctx.fill(),this.ctx.fillStyle="#ffffff",this.ctx.fillText(s,this.captureRect.width/2,g+d),this.logoImage&&this.logoLoaded){const C=Math.max(this.captureRect.height/8,40),k=this.logoImage.naturalWidth/this.logoImage.naturalHeight;let _=C,z=_*k;const P=this.captureRect.width/4;z>P&&(z=P,_=z/k);const T=this.captureRect.width-z-12,V=g,H=this.ctx.imageSmoothingEnabled,O=this.ctx.imageSmoothingQuality;this.ctx.imageSmoothingEnabled=!0,this.ctx.imageSmoothingQuality="high",this.ctx.drawImage(this.logoImage,T,V,z,_),this.ctx.imageSmoothingEnabled=H,this.ctx.imageSmoothingQuality=O}const A=this.ctx.getImageData(0,0,this.captureRect.width*r,this.captureRect.height*r);this.frames.push(A),console.log("[GifRecorder] 帧添加成功, 当前帧数:",this.frames.length)}getFrameCount(){return this.frames.length}async generateGif(){return this.frames.length===0?(console.warn("[GifRecorder] 没有可用的帧"),null):new Promise((e,a)=>{const r=window.devicePixelRatio||1,i=new lr({workers:4,quality:1,width:this.captureRect.width*r,height:this.captureRect.height*r,workerScript:new URL("data:application/javascript;base64,Ly8gZ2lmLndvcmtlci5qcyAwLjIuMCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9qbm9yZGJlcmcvZ2lmLmpzCihmdW5jdGlvbiBlKHQsbixyKXtmdW5jdGlvbiBzKG8sdSl7aWYoIW5bb10pe2lmKCF0W29dKXt2YXIgYT10eXBlb2YgcmVxdWlyZT09ImZ1bmN0aW9uIiYmcmVxdWlyZTtpZighdSYmYSlyZXR1cm4gYShvLCEwKTtpZihpKXJldHVybiBpKG8sITApO3ZhciBmPW5ldyBFcnJvcigiQ2Fubm90IGZpbmQgbW9kdWxlICciK28rIiciKTt0aHJvdyBmLmNvZGU9Ik1PRFVMRV9OT1RfRk9VTkQiLGZ9dmFyIGw9bltvXT17ZXhwb3J0czp7fX07dFtvXVswXS5jYWxsKGwuZXhwb3J0cyxmdW5jdGlvbihlKXt2YXIgbj10W29dWzFdW2VdO3JldHVybiBzKG4/bjplKX0sbCxsLmV4cG9ydHMsZSx0LG4scil9cmV0dXJuIG5bb10uZXhwb3J0c312YXIgaT10eXBlb2YgcmVxdWlyZT09ImZ1bmN0aW9uIiYmcmVxdWlyZTtmb3IodmFyIG89MDtvPHIubGVuZ3RoO28rKylzKHJbb10pO3JldHVybiBzfSkoezE6W2Z1bmN0aW9uKHJlcXVpcmUsbW9kdWxlLGV4cG9ydHMpe3ZhciBOZXVRdWFudD1yZXF1aXJlKCIuL1R5cGVkTmV1UXVhbnQuanMiKTt2YXIgTFpXRW5jb2Rlcj1yZXF1aXJlKCIuL0xaV0VuY29kZXIuanMiKTtmdW5jdGlvbiBCeXRlQXJyYXkoKXt0aGlzLnBhZ2U9LTE7dGhpcy5wYWdlcz1bXTt0aGlzLm5ld1BhZ2UoKX1CeXRlQXJyYXkucGFnZVNpemU9NDA5NjtCeXRlQXJyYXkuY2hhck1hcD17fTtmb3IodmFyIGk9MDtpPDI1NjtpKyspQnl0ZUFycmF5LmNoYXJNYXBbaV09U3RyaW5nLmZyb21DaGFyQ29kZShpKTtCeXRlQXJyYXkucHJvdG90eXBlLm5ld1BhZ2U9ZnVuY3Rpb24oKXt0aGlzLnBhZ2VzWysrdGhpcy5wYWdlXT1uZXcgVWludDhBcnJheShCeXRlQXJyYXkucGFnZVNpemUpO3RoaXMuY3Vyc29yPTB9O0J5dGVBcnJheS5wcm90b3R5cGUuZ2V0RGF0YT1mdW5jdGlvbigpe3ZhciBydj0iIjtmb3IodmFyIHA9MDtwPHRoaXMucGFnZXMubGVuZ3RoO3ArKyl7Zm9yKHZhciBpPTA7aTxCeXRlQXJyYXkucGFnZVNpemU7aSsrKXtydis9Qnl0ZUFycmF5LmNoYXJNYXBbdGhpcy5wYWdlc1twXVtpXV19fXJldHVybiBydn07Qnl0ZUFycmF5LnByb3RvdHlwZS53cml0ZUJ5dGU9ZnVuY3Rpb24odmFsKXtpZih0aGlzLmN1cnNvcj49Qnl0ZUFycmF5LnBhZ2VTaXplKXRoaXMubmV3UGFnZSgpO3RoaXMucGFnZXNbdGhpcy5wYWdlXVt0aGlzLmN1cnNvcisrXT12YWx9O0J5dGVBcnJheS5wcm90b3R5cGUud3JpdGVVVEZCeXRlcz1mdW5jdGlvbihzdHJpbmcpe2Zvcih2YXIgbD1zdHJpbmcubGVuZ3RoLGk9MDtpPGw7aSsrKXRoaXMud3JpdGVCeXRlKHN0cmluZy5jaGFyQ29kZUF0KGkpKX07Qnl0ZUFycmF5LnByb3RvdHlwZS53cml0ZUJ5dGVzPWZ1bmN0aW9uKGFycmF5LG9mZnNldCxsZW5ndGgpe2Zvcih2YXIgbD1sZW5ndGh8fGFycmF5Lmxlbmd0aCxpPW9mZnNldHx8MDtpPGw7aSsrKXRoaXMud3JpdGVCeXRlKGFycmF5W2ldKX07ZnVuY3Rpb24gR0lGRW5jb2Rlcih3aWR0aCxoZWlnaHQpe3RoaXMud2lkdGg9fn53aWR0aDt0aGlzLmhlaWdodD1+fmhlaWdodDt0aGlzLnRyYW5zcGFyZW50PW51bGw7dGhpcy50cmFuc0luZGV4PTA7dGhpcy5yZXBlYXQ9LTE7dGhpcy5kZWxheT0wO3RoaXMuaW1hZ2U9bnVsbDt0aGlzLnBpeGVscz1udWxsO3RoaXMuaW5kZXhlZFBpeGVscz1udWxsO3RoaXMuY29sb3JEZXB0aD1udWxsO3RoaXMuY29sb3JUYWI9bnVsbDt0aGlzLm5ldVF1YW50PW51bGw7dGhpcy51c2VkRW50cnk9bmV3IEFycmF5O3RoaXMucGFsU2l6ZT03O3RoaXMuZGlzcG9zZT0tMTt0aGlzLmZpcnN0RnJhbWU9dHJ1ZTt0aGlzLnNhbXBsZT0xMDt0aGlzLmRpdGhlcj1mYWxzZTt0aGlzLmdsb2JhbFBhbGV0dGU9ZmFsc2U7dGhpcy5vdXQ9bmV3IEJ5dGVBcnJheX1HSUZFbmNvZGVyLnByb3RvdHlwZS5zZXREZWxheT1mdW5jdGlvbihtaWxsaXNlY29uZHMpe3RoaXMuZGVsYXk9TWF0aC5yb3VuZChtaWxsaXNlY29uZHMvMTApfTtHSUZFbmNvZGVyLnByb3RvdHlwZS5zZXRGcmFtZVJhdGU9ZnVuY3Rpb24oZnBzKXt0aGlzLmRlbGF5PU1hdGgucm91bmQoMTAwL2Zwcyl9O0dJRkVuY29kZXIucHJvdG90eXBlLnNldERpc3Bvc2U9ZnVuY3Rpb24oZGlzcG9zYWxDb2RlKXtpZihkaXNwb3NhbENvZGU+PTApdGhpcy5kaXNwb3NlPWRpc3Bvc2FsQ29kZX07R0lGRW5jb2Rlci5wcm90b3R5cGUuc2V0UmVwZWF0PWZ1bmN0aW9uKHJlcGVhdCl7dGhpcy5yZXBlYXQ9cmVwZWF0fTtHSUZFbmNvZGVyLnByb3RvdHlwZS5zZXRUcmFuc3BhcmVudD1mdW5jdGlvbihjb2xvcil7dGhpcy50cmFuc3BhcmVudD1jb2xvcn07R0lGRW5jb2Rlci5wcm90b3R5cGUuYWRkRnJhbWU9ZnVuY3Rpb24oaW1hZ2VEYXRhKXt0aGlzLmltYWdlPWltYWdlRGF0YTt0aGlzLmNvbG9yVGFiPXRoaXMuZ2xvYmFsUGFsZXR0ZSYmdGhpcy5nbG9iYWxQYWxldHRlLnNsaWNlP3RoaXMuZ2xvYmFsUGFsZXR0ZTpudWxsO3RoaXMuZ2V0SW1hZ2VQaXhlbHMoKTt0aGlzLmFuYWx5emVQaXhlbHMoKTtpZih0aGlzLmdsb2JhbFBhbGV0dGU9PT10cnVlKXRoaXMuZ2xvYmFsUGFsZXR0ZT10aGlzLmNvbG9yVGFiO2lmKHRoaXMuZmlyc3RGcmFtZSl7dGhpcy53cml0ZUxTRCgpO3RoaXMud3JpdGVQYWxldHRlKCk7aWYodGhpcy5yZXBlYXQ+PTApe3RoaXMud3JpdGVOZXRzY2FwZUV4dCgpfX10aGlzLndyaXRlR3JhcGhpY0N0cmxFeHQoKTt0aGlzLndyaXRlSW1hZ2VEZXNjKCk7aWYoIXRoaXMuZmlyc3RGcmFtZSYmIXRoaXMuZ2xvYmFsUGFsZXR0ZSl0aGlzLndyaXRlUGFsZXR0ZSgpO3RoaXMud3JpdGVQaXhlbHMoKTt0aGlzLmZpcnN0RnJhbWU9ZmFsc2V9O0dJRkVuY29kZXIucHJvdG90eXBlLmZpbmlzaD1mdW5jdGlvbigpe3RoaXMub3V0LndyaXRlQnl0ZSg1OSl9O0dJRkVuY29kZXIucHJvdG90eXBlLnNldFF1YWxpdHk9ZnVuY3Rpb24ocXVhbGl0eSl7aWYocXVhbGl0eTwxKXF1YWxpdHk9MTt0aGlzLnNhbXBsZT1xdWFsaXR5fTtHSUZFbmNvZGVyLnByb3RvdHlwZS5zZXREaXRoZXI9ZnVuY3Rpb24oZGl0aGVyKXtpZihkaXRoZXI9PT10cnVlKWRpdGhlcj0iRmxveWRTdGVpbmJlcmciO3RoaXMuZGl0aGVyPWRpdGhlcn07R0lGRW5jb2Rlci5wcm90b3R5cGUuc2V0R2xvYmFsUGFsZXR0ZT1mdW5jdGlvbihwYWxldHRlKXt0aGlzLmdsb2JhbFBhbGV0dGU9cGFsZXR0ZX07R0lGRW5jb2Rlci5wcm90b3R5cGUuZ2V0R2xvYmFsUGFsZXR0ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdsb2JhbFBhbGV0dGUmJnRoaXMuZ2xvYmFsUGFsZXR0ZS5zbGljZSYmdGhpcy5nbG9iYWxQYWxldHRlLnNsaWNlKDApfHx0aGlzLmdsb2JhbFBhbGV0dGV9O0dJRkVuY29kZXIucHJvdG90eXBlLndyaXRlSGVhZGVyPWZ1bmN0aW9uKCl7dGhpcy5vdXQud3JpdGVVVEZCeXRlcygiR0lGODlhIil9O0dJRkVuY29kZXIucHJvdG90eXBlLmFuYWx5emVQaXhlbHM9ZnVuY3Rpb24oKXtpZighdGhpcy5jb2xvclRhYil7dGhpcy5uZXVRdWFudD1uZXcgTmV1UXVhbnQodGhpcy5waXhlbHMsdGhpcy5zYW1wbGUpO3RoaXMubmV1UXVhbnQuYnVpbGRDb2xvcm1hcCgpO3RoaXMuY29sb3JUYWI9dGhpcy5uZXVRdWFudC5nZXRDb2xvcm1hcCgpfWlmKHRoaXMuZGl0aGVyKXt0aGlzLmRpdGhlclBpeGVscyh0aGlzLmRpdGhlci5yZXBsYWNlKCItc2VycGVudGluZSIsIiIpLHRoaXMuZGl0aGVyLm1hdGNoKC8tc2VycGVudGluZS8pIT09bnVsbCl9ZWxzZXt0aGlzLmluZGV4UGl4ZWxzKCl9dGhpcy5waXhlbHM9bnVsbDt0aGlzLmNvbG9yRGVwdGg9ODt0aGlzLnBhbFNpemU9NztpZih0aGlzLnRyYW5zcGFyZW50IT09bnVsbCl7dGhpcy50cmFuc0luZGV4PXRoaXMuZmluZENsb3Nlc3QodGhpcy50cmFuc3BhcmVudCx0cnVlKX19O0dJRkVuY29kZXIucHJvdG90eXBlLmluZGV4UGl4ZWxzPWZ1bmN0aW9uKGltZ3Epe3ZhciBuUGl4PXRoaXMucGl4ZWxzLmxlbmd0aC8zO3RoaXMuaW5kZXhlZFBpeGVscz1uZXcgVWludDhBcnJheShuUGl4KTt2YXIgaz0wO2Zvcih2YXIgaj0wO2o8blBpeDtqKyspe3ZhciBpbmRleD10aGlzLmZpbmRDbG9zZXN0UkdCKHRoaXMucGl4ZWxzW2srK10mMjU1LHRoaXMucGl4ZWxzW2srK10mMjU1LHRoaXMucGl4ZWxzW2srK10mMjU1KTt0aGlzLnVzZWRFbnRyeVtpbmRleF09dHJ1ZTt0aGlzLmluZGV4ZWRQaXhlbHNbal09aW5kZXh9fTtHSUZFbmNvZGVyLnByb3RvdHlwZS5kaXRoZXJQaXhlbHM9ZnVuY3Rpb24oa2VybmVsLHNlcnBlbnRpbmUpe3ZhciBrZXJuZWxzPXtGYWxzZUZsb3lkU3RlaW5iZXJnOltbMy84LDEsMF0sWzMvOCwwLDFdLFsyLzgsMSwxXV0sRmxveWRTdGVpbmJlcmc6W1s3LzE2LDEsMF0sWzMvMTYsLTEsMV0sWzUvMTYsMCwxXSxbMS8xNiwxLDFdXSxTdHVja2k6W1s4LzQyLDEsMF0sWzQvNDIsMiwwXSxbMi80MiwtMiwxXSxbNC80MiwtMSwxXSxbOC80MiwwLDFdLFs0LzQyLDEsMV0sWzIvNDIsMiwxXSxbMS80MiwtMiwyXSxbMi80MiwtMSwyXSxbNC80MiwwLDJdLFsyLzQyLDEsMl0sWzEvNDIsMiwyXV0sQXRraW5zb246W1sxLzgsMSwwXSxbMS84LDIsMF0sWzEvOCwtMSwxXSxbMS84LDAsMV0sWzEvOCwxLDFdLFsxLzgsMCwyXV19O2lmKCFrZXJuZWx8fCFrZXJuZWxzW2tlcm5lbF0pe3Rocm93IlVua25vd24gZGl0aGVyaW5nIGtlcm5lbDogIitrZXJuZWx9dmFyIGRzPWtlcm5lbHNba2VybmVsXTt2YXIgaW5kZXg9MCxoZWlnaHQ9dGhpcy5oZWlnaHQsd2lkdGg9dGhpcy53aWR0aCxkYXRhPXRoaXMucGl4ZWxzO3ZhciBkaXJlY3Rpb249c2VycGVudGluZT8tMToxO3RoaXMuaW5kZXhlZFBpeGVscz1uZXcgVWludDhBcnJheSh0aGlzLnBpeGVscy5sZW5ndGgvMyk7Zm9yKHZhciB5PTA7eTxoZWlnaHQ7eSsrKXtpZihzZXJwZW50aW5lKWRpcmVjdGlvbj1kaXJlY3Rpb24qLTE7Zm9yKHZhciB4PWRpcmVjdGlvbj09MT8wOndpZHRoLTEseGVuZD1kaXJlY3Rpb249PTE/d2lkdGg6MDt4IT09eGVuZDt4Kz1kaXJlY3Rpb24pe2luZGV4PXkqd2lkdGgreDt2YXIgaWR4PWluZGV4KjM7dmFyIHIxPWRhdGFbaWR4XTt2YXIgZzE9ZGF0YVtpZHgrMV07dmFyIGIxPWRhdGFbaWR4KzJdO2lkeD10aGlzLmZpbmRDbG9zZXN0UkdCKHIxLGcxLGIxKTt0aGlzLnVzZWRFbnRyeVtpZHhdPXRydWU7dGhpcy5pbmRleGVkUGl4ZWxzW2luZGV4XT1pZHg7aWR4Kj0zO3ZhciByMj10aGlzLmNvbG9yVGFiW2lkeF07dmFyIGcyPXRoaXMuY29sb3JUYWJbaWR4KzFdO3ZhciBiMj10aGlzLmNvbG9yVGFiW2lkeCsyXTt2YXIgZXI9cjEtcjI7dmFyIGVnPWcxLWcyO3ZhciBlYj1iMS1iMjtmb3IodmFyIGk9ZGlyZWN0aW9uPT0xPzA6ZHMubGVuZ3RoLTEsZW5kPWRpcmVjdGlvbj09MT9kcy5sZW5ndGg6MDtpIT09ZW5kO2krPWRpcmVjdGlvbil7dmFyIHgxPWRzW2ldWzFdO3ZhciB5MT1kc1tpXVsyXTtpZih4MSt4Pj0wJiZ4MSt4PHdpZHRoJiZ5MSt5Pj0wJiZ5MSt5PGhlaWdodCl7dmFyIGQ9ZHNbaV1bMF07aWR4PWluZGV4K3gxK3kxKndpZHRoO2lkeCo9MztkYXRhW2lkeF09TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsZGF0YVtpZHhdK2VyKmQpKTtkYXRhW2lkeCsxXT1NYXRoLm1heCgwLE1hdGgubWluKDI1NSxkYXRhW2lkeCsxXStlZypkKSk7ZGF0YVtpZHgrMl09TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsZGF0YVtpZHgrMl0rZWIqZCkpfX19fX07R0lGRW5jb2Rlci5wcm90b3R5cGUuZmluZENsb3Nlc3Q9ZnVuY3Rpb24oYyx1c2VkKXtyZXR1cm4gdGhpcy5maW5kQ2xvc2VzdFJHQigoYyYxNjcxMTY4MCk+PjE2LChjJjY1MjgwKT4+OCxjJjI1NSx1c2VkKX07R0lGRW5jb2Rlci5wcm90b3R5cGUuZmluZENsb3Nlc3RSR0I9ZnVuY3Rpb24ocixnLGIsdXNlZCl7aWYodGhpcy5jb2xvclRhYj09PW51bGwpcmV0dXJuLTE7aWYodGhpcy5uZXVRdWFudCYmIXVzZWQpe3JldHVybiB0aGlzLm5ldVF1YW50Lmxvb2t1cFJHQihyLGcsYil9dmFyIGM9YnxnPDw4fHI8PDE2O3ZhciBtaW5wb3M9MDt2YXIgZG1pbj0yNTYqMjU2KjI1Njt2YXIgbGVuPXRoaXMuY29sb3JUYWIubGVuZ3RoO2Zvcih2YXIgaT0wLGluZGV4PTA7aTxsZW47aW5kZXgrKyl7dmFyIGRyPXItKHRoaXMuY29sb3JUYWJbaSsrXSYyNTUpO3ZhciBkZz1nLSh0aGlzLmNvbG9yVGFiW2krK10mMjU1KTt2YXIgZGI9Yi0odGhpcy5jb2xvclRhYltpKytdJjI1NSk7dmFyIGQ9ZHIqZHIrZGcqZGcrZGIqZGI7aWYoKCF1c2VkfHx0aGlzLnVzZWRFbnRyeVtpbmRleF0pJiZkPGRtaW4pe2RtaW49ZDttaW5wb3M9aW5kZXh9fXJldHVybiBtaW5wb3N9O0dJRkVuY29kZXIucHJvdG90eXBlLmdldEltYWdlUGl4ZWxzPWZ1bmN0aW9uKCl7dmFyIHc9dGhpcy53aWR0aDt2YXIgaD10aGlzLmhlaWdodDt0aGlzLnBpeGVscz1uZXcgVWludDhBcnJheSh3KmgqMyk7dmFyIGRhdGE9dGhpcy5pbWFnZTt2YXIgc3JjUG9zPTA7dmFyIGNvdW50PTA7Zm9yKHZhciBpPTA7aTxoO2krKyl7Zm9yKHZhciBqPTA7ajx3O2orKyl7dGhpcy5waXhlbHNbY291bnQrK109ZGF0YVtzcmNQb3MrK107dGhpcy5waXhlbHNbY291bnQrK109ZGF0YVtzcmNQb3MrK107dGhpcy5waXhlbHNbY291bnQrK109ZGF0YVtzcmNQb3MrK107c3JjUG9zKyt9fX07R0lGRW5jb2Rlci5wcm90b3R5cGUud3JpdGVHcmFwaGljQ3RybEV4dD1mdW5jdGlvbigpe3RoaXMub3V0LndyaXRlQnl0ZSgzMyk7dGhpcy5vdXQud3JpdGVCeXRlKDI0OSk7dGhpcy5vdXQud3JpdGVCeXRlKDQpO3ZhciB0cmFuc3AsZGlzcDtpZih0aGlzLnRyYW5zcGFyZW50PT09bnVsbCl7dHJhbnNwPTA7ZGlzcD0wfWVsc2V7dHJhbnNwPTE7ZGlzcD0yfWlmKHRoaXMuZGlzcG9zZT49MCl7ZGlzcD1kaXNwb3NlJjd9ZGlzcDw8PTI7dGhpcy5vdXQud3JpdGVCeXRlKDB8ZGlzcHwwfHRyYW5zcCk7dGhpcy53cml0ZVNob3J0KHRoaXMuZGVsYXkpO3RoaXMub3V0LndyaXRlQnl0ZSh0aGlzLnRyYW5zSW5kZXgpO3RoaXMub3V0LndyaXRlQnl0ZSgwKX07R0lGRW5jb2Rlci5wcm90b3R5cGUud3JpdGVJbWFnZURlc2M9ZnVuY3Rpb24oKXt0aGlzLm91dC53cml0ZUJ5dGUoNDQpO3RoaXMud3JpdGVTaG9ydCgwKTt0aGlzLndyaXRlU2hvcnQoMCk7dGhpcy53cml0ZVNob3J0KHRoaXMud2lkdGgpO3RoaXMud3JpdGVTaG9ydCh0aGlzLmhlaWdodCk7aWYodGhpcy5maXJzdEZyYW1lfHx0aGlzLmdsb2JhbFBhbGV0dGUpe3RoaXMub3V0LndyaXRlQnl0ZSgwKX1lbHNle3RoaXMub3V0LndyaXRlQnl0ZSgxMjh8MHwwfDB8dGhpcy5wYWxTaXplKX19O0dJRkVuY29kZXIucHJvdG90eXBlLndyaXRlTFNEPWZ1bmN0aW9uKCl7dGhpcy53cml0ZVNob3J0KHRoaXMud2lkdGgpO3RoaXMud3JpdGVTaG9ydCh0aGlzLmhlaWdodCk7dGhpcy5vdXQud3JpdGVCeXRlKDEyOHwxMTJ8MHx0aGlzLnBhbFNpemUpO3RoaXMub3V0LndyaXRlQnl0ZSgwKTt0aGlzLm91dC53cml0ZUJ5dGUoMCl9O0dJRkVuY29kZXIucHJvdG90eXBlLndyaXRlTmV0c2NhcGVFeHQ9ZnVuY3Rpb24oKXt0aGlzLm91dC53cml0ZUJ5dGUoMzMpO3RoaXMub3V0LndyaXRlQnl0ZSgyNTUpO3RoaXMub3V0LndyaXRlQnl0ZSgxMSk7dGhpcy5vdXQud3JpdGVVVEZCeXRlcygiTkVUU0NBUEUyLjAiKTt0aGlzLm91dC53cml0ZUJ5dGUoMyk7dGhpcy5vdXQud3JpdGVCeXRlKDEpO3RoaXMud3JpdGVTaG9ydCh0aGlzLnJlcGVhdCk7dGhpcy5vdXQud3JpdGVCeXRlKDApfTtHSUZFbmNvZGVyLnByb3RvdHlwZS53cml0ZVBhbGV0dGU9ZnVuY3Rpb24oKXt0aGlzLm91dC53cml0ZUJ5dGVzKHRoaXMuY29sb3JUYWIpO3ZhciBuPTMqMjU2LXRoaXMuY29sb3JUYWIubGVuZ3RoO2Zvcih2YXIgaT0wO2k8bjtpKyspdGhpcy5vdXQud3JpdGVCeXRlKDApfTtHSUZFbmNvZGVyLnByb3RvdHlwZS53cml0ZVNob3J0PWZ1bmN0aW9uKHBWYWx1ZSl7dGhpcy5vdXQud3JpdGVCeXRlKHBWYWx1ZSYyNTUpO3RoaXMub3V0LndyaXRlQnl0ZShwVmFsdWU+PjgmMjU1KX07R0lGRW5jb2Rlci5wcm90b3R5cGUud3JpdGVQaXhlbHM9ZnVuY3Rpb24oKXt2YXIgZW5jPW5ldyBMWldFbmNvZGVyKHRoaXMud2lkdGgsdGhpcy5oZWlnaHQsdGhpcy5pbmRleGVkUGl4ZWxzLHRoaXMuY29sb3JEZXB0aCk7ZW5jLmVuY29kZSh0aGlzLm91dCl9O0dJRkVuY29kZXIucHJvdG90eXBlLnN0cmVhbT1mdW5jdGlvbigpe3JldHVybiB0aGlzLm91dH07bW9kdWxlLmV4cG9ydHM9R0lGRW5jb2Rlcn0seyIuL0xaV0VuY29kZXIuanMiOjIsIi4vVHlwZWROZXVRdWFudC5qcyI6M31dLDI6W2Z1bmN0aW9uKHJlcXVpcmUsbW9kdWxlLGV4cG9ydHMpe3ZhciBFT0Y9LTE7dmFyIEJJVFM9MTI7dmFyIEhTSVpFPTUwMDM7dmFyIG1hc2tzPVswLDEsMyw3LDE1LDMxLDYzLDEyNywyNTUsNTExLDEwMjMsMjA0Nyw0MDk1LDgxOTEsMTYzODMsMzI3NjcsNjU1MzVdO2Z1bmN0aW9uIExaV0VuY29kZXIod2lkdGgsaGVpZ2h0LHBpeGVscyxjb2xvckRlcHRoKXt2YXIgaW5pdENvZGVTaXplPU1hdGgubWF4KDIsY29sb3JEZXB0aCk7dmFyIGFjY3VtPW5ldyBVaW50OEFycmF5KDI1Nik7dmFyIGh0YWI9bmV3IEludDMyQXJyYXkoSFNJWkUpO3ZhciBjb2RldGFiPW5ldyBJbnQzMkFycmF5KEhTSVpFKTt2YXIgY3VyX2FjY3VtLGN1cl9iaXRzPTA7dmFyIGFfY291bnQ7dmFyIGZyZWVfZW50PTA7dmFyIG1heGNvZGU7dmFyIGNsZWFyX2ZsZz1mYWxzZTt2YXIgZ19pbml0X2JpdHMsQ2xlYXJDb2RlLEVPRkNvZGU7ZnVuY3Rpb24gY2hhcl9vdXQoYyxvdXRzKXthY2N1bVthX2NvdW50KytdPWM7aWYoYV9jb3VudD49MjU0KWZsdXNoX2NoYXIob3V0cyl9ZnVuY3Rpb24gY2xfYmxvY2sob3V0cyl7Y2xfaGFzaChIU0laRSk7ZnJlZV9lbnQ9Q2xlYXJDb2RlKzI7Y2xlYXJfZmxnPXRydWU7b3V0cHV0KENsZWFyQ29kZSxvdXRzKX1mdW5jdGlvbiBjbF9oYXNoKGhzaXplKXtmb3IodmFyIGk9MDtpPGhzaXplOysraSlodGFiW2ldPS0xfWZ1bmN0aW9uIGNvbXByZXNzKGluaXRfYml0cyxvdXRzKXt2YXIgZmNvZGUsYyxpLGVudCxkaXNwLGhzaXplX3JlZyxoc2hpZnQ7Z19pbml0X2JpdHM9aW5pdF9iaXRzO2NsZWFyX2ZsZz1mYWxzZTtuX2JpdHM9Z19pbml0X2JpdHM7bWF4Y29kZT1NQVhDT0RFKG5fYml0cyk7Q2xlYXJDb2RlPTE8PGluaXRfYml0cy0xO0VPRkNvZGU9Q2xlYXJDb2RlKzE7ZnJlZV9lbnQ9Q2xlYXJDb2RlKzI7YV9jb3VudD0wO2VudD1uZXh0UGl4ZWwoKTtoc2hpZnQ9MDtmb3IoZmNvZGU9SFNJWkU7ZmNvZGU8NjU1MzY7ZmNvZGUqPTIpKytoc2hpZnQ7aHNoaWZ0PTgtaHNoaWZ0O2hzaXplX3JlZz1IU0laRTtjbF9oYXNoKGhzaXplX3JlZyk7b3V0cHV0KENsZWFyQ29kZSxvdXRzKTtvdXRlcl9sb29wOndoaWxlKChjPW5leHRQaXhlbCgpKSE9RU9GKXtmY29kZT0oYzw8QklUUykrZW50O2k9Yzw8aHNoaWZ0XmVudDtpZihodGFiW2ldPT09ZmNvZGUpe2VudD1jb2RldGFiW2ldO2NvbnRpbnVlfWVsc2UgaWYoaHRhYltpXT49MCl7ZGlzcD1oc2l6ZV9yZWctaTtpZihpPT09MClkaXNwPTE7ZG97aWYoKGktPWRpc3ApPDApaSs9aHNpemVfcmVnO2lmKGh0YWJbaV09PT1mY29kZSl7ZW50PWNvZGV0YWJbaV07Y29udGludWUgb3V0ZXJfbG9vcH19d2hpbGUoaHRhYltpXT49MCl9b3V0cHV0KGVudCxvdXRzKTtlbnQ9YztpZihmcmVlX2VudDwxPDxCSVRTKXtjb2RldGFiW2ldPWZyZWVfZW50Kys7aHRhYltpXT1mY29kZX1lbHNle2NsX2Jsb2NrKG91dHMpfX1vdXRwdXQoZW50LG91dHMpO291dHB1dChFT0ZDb2RlLG91dHMpfWZ1bmN0aW9uIGVuY29kZShvdXRzKXtvdXRzLndyaXRlQnl0ZShpbml0Q29kZVNpemUpO3JlbWFpbmluZz13aWR0aCpoZWlnaHQ7Y3VyUGl4ZWw9MDtjb21wcmVzcyhpbml0Q29kZVNpemUrMSxvdXRzKTtvdXRzLndyaXRlQnl0ZSgwKX1mdW5jdGlvbiBmbHVzaF9jaGFyKG91dHMpe2lmKGFfY291bnQ+MCl7b3V0cy53cml0ZUJ5dGUoYV9jb3VudCk7b3V0cy53cml0ZUJ5dGVzKGFjY3VtLDAsYV9jb3VudCk7YV9jb3VudD0wfX1mdW5jdGlvbiBNQVhDT0RFKG5fYml0cyl7cmV0dXJuKDE8PG5fYml0cyktMX1mdW5jdGlvbiBuZXh0UGl4ZWwoKXtpZihyZW1haW5pbmc9PT0wKXJldHVybiBFT0Y7LS1yZW1haW5pbmc7dmFyIHBpeD1waXhlbHNbY3VyUGl4ZWwrK107cmV0dXJuIHBpeCYyNTV9ZnVuY3Rpb24gb3V0cHV0KGNvZGUsb3V0cyl7Y3VyX2FjY3VtJj1tYXNrc1tjdXJfYml0c107aWYoY3VyX2JpdHM+MCljdXJfYWNjdW18PWNvZGU8PGN1cl9iaXRzO2Vsc2UgY3VyX2FjY3VtPWNvZGU7Y3VyX2JpdHMrPW5fYml0czt3aGlsZShjdXJfYml0cz49OCl7Y2hhcl9vdXQoY3VyX2FjY3VtJjI1NSxvdXRzKTtjdXJfYWNjdW0+Pj04O2N1cl9iaXRzLT04fWlmKGZyZWVfZW50Pm1heGNvZGV8fGNsZWFyX2ZsZyl7aWYoY2xlYXJfZmxnKXttYXhjb2RlPU1BWENPREUobl9iaXRzPWdfaW5pdF9iaXRzKTtjbGVhcl9mbGc9ZmFsc2V9ZWxzZXsrK25fYml0cztpZihuX2JpdHM9PUJJVFMpbWF4Y29kZT0xPDxCSVRTO2Vsc2UgbWF4Y29kZT1NQVhDT0RFKG5fYml0cyl9fWlmKGNvZGU9PUVPRkNvZGUpe3doaWxlKGN1cl9iaXRzPjApe2NoYXJfb3V0KGN1cl9hY2N1bSYyNTUsb3V0cyk7Y3VyX2FjY3VtPj49ODtjdXJfYml0cy09OH1mbHVzaF9jaGFyKG91dHMpfX10aGlzLmVuY29kZT1lbmNvZGV9bW9kdWxlLmV4cG9ydHM9TFpXRW5jb2Rlcn0se31dLDM6W2Z1bmN0aW9uKHJlcXVpcmUsbW9kdWxlLGV4cG9ydHMpe3ZhciBuY3ljbGVzPTEwMDt2YXIgbmV0c2l6ZT0yNTY7dmFyIG1heG5ldHBvcz1uZXRzaXplLTE7dmFyIG5ldGJpYXNzaGlmdD00O3ZhciBpbnRiaWFzc2hpZnQ9MTY7dmFyIGludGJpYXM9MTw8aW50Ymlhc3NoaWZ0O3ZhciBnYW1tYXNoaWZ0PTEwO3ZhciBnYW1tYT0xPDxnYW1tYXNoaWZ0O3ZhciBiZXRhc2hpZnQ9MTA7dmFyIGJldGE9aW50Ymlhcz4+YmV0YXNoaWZ0O3ZhciBiZXRhZ2FtbWE9aW50Ymlhczw8Z2FtbWFzaGlmdC1iZXRhc2hpZnQ7dmFyIGluaXRyYWQ9bmV0c2l6ZT4+Mzt2YXIgcmFkaXVzYmlhc3NoaWZ0PTY7dmFyIHJhZGl1c2JpYXM9MTw8cmFkaXVzYmlhc3NoaWZ0O3ZhciBpbml0cmFkaXVzPWluaXRyYWQqcmFkaXVzYmlhczt2YXIgcmFkaXVzZGVjPTMwO3ZhciBhbHBoYWJpYXNzaGlmdD0xMDt2YXIgaW5pdGFscGhhPTE8PGFscGhhYmlhc3NoaWZ0O3ZhciBhbHBoYWRlYzt2YXIgcmFkYmlhc3NoaWZ0PTg7dmFyIHJhZGJpYXM9MTw8cmFkYmlhc3NoaWZ0O3ZhciBhbHBoYXJhZGJzaGlmdD1hbHBoYWJpYXNzaGlmdCtyYWRiaWFzc2hpZnQ7dmFyIGFscGhhcmFkYmlhcz0xPDxhbHBoYXJhZGJzaGlmdDt2YXIgcHJpbWUxPTQ5OTt2YXIgcHJpbWUyPTQ5MTt2YXIgcHJpbWUzPTQ4Nzt2YXIgcHJpbWU0PTUwMzt2YXIgbWlucGljdHVyZWJ5dGVzPTMqcHJpbWU0O2Z1bmN0aW9uIE5ldVF1YW50KHBpeGVscyxzYW1wbGVmYWMpe3ZhciBuZXR3b3JrO3ZhciBuZXRpbmRleDt2YXIgYmlhczt2YXIgZnJlcTt2YXIgcmFkcG93ZXI7ZnVuY3Rpb24gaW5pdCgpe25ldHdvcms9W107bmV0aW5kZXg9bmV3IEludDMyQXJyYXkoMjU2KTtiaWFzPW5ldyBJbnQzMkFycmF5KG5ldHNpemUpO2ZyZXE9bmV3IEludDMyQXJyYXkobmV0c2l6ZSk7cmFkcG93ZXI9bmV3IEludDMyQXJyYXkobmV0c2l6ZT4+Myk7dmFyIGksdjtmb3IoaT0wO2k8bmV0c2l6ZTtpKyspe3Y9KGk8PG5ldGJpYXNzaGlmdCs4KS9uZXRzaXplO25ldHdvcmtbaV09bmV3IEZsb2F0NjRBcnJheShbdix2LHYsMF0pO2ZyZXFbaV09aW50Ymlhcy9uZXRzaXplO2JpYXNbaV09MH19ZnVuY3Rpb24gdW5iaWFzbmV0KCl7Zm9yKHZhciBpPTA7aTxuZXRzaXplO2krKyl7bmV0d29ya1tpXVswXT4+PW5ldGJpYXNzaGlmdDtuZXR3b3JrW2ldWzFdPj49bmV0Ymlhc3NoaWZ0O25ldHdvcmtbaV1bMl0+Pj1uZXRiaWFzc2hpZnQ7bmV0d29ya1tpXVszXT1pfX1mdW5jdGlvbiBhbHRlcnNpbmdsZShhbHBoYSxpLGIsZyxyKXtuZXR3b3JrW2ldWzBdLT1hbHBoYSoobmV0d29ya1tpXVswXS1iKS9pbml0YWxwaGE7bmV0d29ya1tpXVsxXS09YWxwaGEqKG5ldHdvcmtbaV1bMV0tZykvaW5pdGFscGhhO25ldHdvcmtbaV1bMl0tPWFscGhhKihuZXR3b3JrW2ldWzJdLXIpL2luaXRhbHBoYX1mdW5jdGlvbiBhbHRlcm5laWdoKHJhZGl1cyxpLGIsZyxyKXt2YXIgbG89TWF0aC5hYnMoaS1yYWRpdXMpO3ZhciBoaT1NYXRoLm1pbihpK3JhZGl1cyxuZXRzaXplKTt2YXIgaj1pKzE7dmFyIGs9aS0xO3ZhciBtPTE7dmFyIHAsYTt3aGlsZShqPGhpfHxrPmxvKXthPXJhZHBvd2VyW20rK107aWYoajxoaSl7cD1uZXR3b3JrW2orK107cFswXS09YSoocFswXS1iKS9hbHBoYXJhZGJpYXM7cFsxXS09YSoocFsxXS1nKS9hbHBoYXJhZGJpYXM7cFsyXS09YSoocFsyXS1yKS9hbHBoYXJhZGJpYXN9aWYoaz5sbyl7cD1uZXR3b3JrW2stLV07cFswXS09YSoocFswXS1iKS9hbHBoYXJhZGJpYXM7cFsxXS09YSoocFsxXS1nKS9hbHBoYXJhZGJpYXM7cFsyXS09YSoocFsyXS1yKS9hbHBoYXJhZGJpYXN9fX1mdW5jdGlvbiBjb250ZXN0KGIsZyxyKXt2YXIgYmVzdGQ9figxPDwzMSk7dmFyIGJlc3RiaWFzZD1iZXN0ZDt2YXIgYmVzdHBvcz0tMTt2YXIgYmVzdGJpYXNwb3M9YmVzdHBvczt2YXIgaSxuLGRpc3QsYmlhc2Rpc3QsYmV0YWZyZXE7Zm9yKGk9MDtpPG5ldHNpemU7aSsrKXtuPW5ldHdvcmtbaV07ZGlzdD1NYXRoLmFicyhuWzBdLWIpK01hdGguYWJzKG5bMV0tZykrTWF0aC5hYnMoblsyXS1yKTtpZihkaXN0PGJlc3RkKXtiZXN0ZD1kaXN0O2Jlc3Rwb3M9aX1iaWFzZGlzdD1kaXN0LShiaWFzW2ldPj5pbnRiaWFzc2hpZnQtbmV0Ymlhc3NoaWZ0KTtpZihiaWFzZGlzdDxiZXN0Ymlhc2Qpe2Jlc3RiaWFzZD1iaWFzZGlzdDtiZXN0Ymlhc3Bvcz1pfWJldGFmcmVxPWZyZXFbaV0+PmJldGFzaGlmdDtmcmVxW2ldLT1iZXRhZnJlcTtiaWFzW2ldKz1iZXRhZnJlcTw8Z2FtbWFzaGlmdH1mcmVxW2Jlc3Rwb3NdKz1iZXRhO2JpYXNbYmVzdHBvc10tPWJldGFnYW1tYTtyZXR1cm4gYmVzdGJpYXNwb3N9ZnVuY3Rpb24gaW54YnVpbGQoKXt2YXIgaSxqLHAscSxzbWFsbHBvcyxzbWFsbHZhbCxwcmV2aW91c2NvbD0wLHN0YXJ0cG9zPTA7Zm9yKGk9MDtpPG5ldHNpemU7aSsrKXtwPW5ldHdvcmtbaV07c21hbGxwb3M9aTtzbWFsbHZhbD1wWzFdO2ZvcihqPWkrMTtqPG5ldHNpemU7aisrKXtxPW5ldHdvcmtbal07aWYocVsxXTxzbWFsbHZhbCl7c21hbGxwb3M9ajtzbWFsbHZhbD1xWzFdfX1xPW5ldHdvcmtbc21hbGxwb3NdO2lmKGkhPXNtYWxscG9zKXtqPXFbMF07cVswXT1wWzBdO3BbMF09ajtqPXFbMV07cVsxXT1wWzFdO3BbMV09ajtqPXFbMl07cVsyXT1wWzJdO3BbMl09ajtqPXFbM107cVszXT1wWzNdO3BbM109an1pZihzbWFsbHZhbCE9cHJldmlvdXNjb2wpe25ldGluZGV4W3ByZXZpb3VzY29sXT1zdGFydHBvcytpPj4xO2ZvcihqPXByZXZpb3VzY29sKzE7ajxzbWFsbHZhbDtqKyspbmV0aW5kZXhbal09aTtwcmV2aW91c2NvbD1zbWFsbHZhbDtzdGFydHBvcz1pfX1uZXRpbmRleFtwcmV2aW91c2NvbF09c3RhcnRwb3MrbWF4bmV0cG9zPj4xO2ZvcihqPXByZXZpb3VzY29sKzE7ajwyNTY7aisrKW5ldGluZGV4W2pdPW1heG5ldHBvc31mdW5jdGlvbiBpbnhzZWFyY2goYixnLHIpe3ZhciBhLHAsZGlzdDt2YXIgYmVzdGQ9MWUzO3ZhciBiZXN0PS0xO3ZhciBpPW5ldGluZGV4W2ddO3ZhciBqPWktMTt3aGlsZShpPG5ldHNpemV8fGo+PTApe2lmKGk8bmV0c2l6ZSl7cD1uZXR3b3JrW2ldO2Rpc3Q9cFsxXS1nO2lmKGRpc3Q+PWJlc3RkKWk9bmV0c2l6ZTtlbHNle2krKztpZihkaXN0PDApZGlzdD0tZGlzdDthPXBbMF0tYjtpZihhPDApYT0tYTtkaXN0Kz1hO2lmKGRpc3Q8YmVzdGQpe2E9cFsyXS1yO2lmKGE8MClhPS1hO2Rpc3QrPWE7aWYoZGlzdDxiZXN0ZCl7YmVzdGQ9ZGlzdDtiZXN0PXBbM119fX19aWYoaj49MCl7cD1uZXR3b3JrW2pdO2Rpc3Q9Zy1wWzFdO2lmKGRpc3Q+PWJlc3RkKWo9LTE7ZWxzZXtqLS07aWYoZGlzdDwwKWRpc3Q9LWRpc3Q7YT1wWzBdLWI7aWYoYTwwKWE9LWE7ZGlzdCs9YTtpZihkaXN0PGJlc3RkKXthPXBbMl0tcjtpZihhPDApYT0tYTtkaXN0Kz1hO2lmKGRpc3Q8YmVzdGQpe2Jlc3RkPWRpc3Q7YmVzdD1wWzNdfX19fX1yZXR1cm4gYmVzdH1mdW5jdGlvbiBsZWFybigpe3ZhciBpO3ZhciBsZW5ndGhjb3VudD1waXhlbHMubGVuZ3RoO3ZhciBhbHBoYWRlYz0zMCsoc2FtcGxlZmFjLTEpLzM7dmFyIHNhbXBsZXBpeGVscz1sZW5ndGhjb3VudC8oMypzYW1wbGVmYWMpO3ZhciBkZWx0YT1+fihzYW1wbGVwaXhlbHMvbmN5Y2xlcyk7dmFyIGFscGhhPWluaXRhbHBoYTt2YXIgcmFkaXVzPWluaXRyYWRpdXM7dmFyIHJhZD1yYWRpdXM+PnJhZGl1c2JpYXNzaGlmdDtpZihyYWQ8PTEpcmFkPTA7Zm9yKGk9MDtpPHJhZDtpKyspcmFkcG93ZXJbaV09YWxwaGEqKChyYWQqcmFkLWkqaSkqcmFkYmlhcy8ocmFkKnJhZCkpO3ZhciBzdGVwO2lmKGxlbmd0aGNvdW50PG1pbnBpY3R1cmVieXRlcyl7c2FtcGxlZmFjPTE7c3RlcD0zfWVsc2UgaWYobGVuZ3RoY291bnQlcHJpbWUxIT09MCl7c3RlcD0zKnByaW1lMX1lbHNlIGlmKGxlbmd0aGNvdW50JXByaW1lMiE9PTApe3N0ZXA9MypwcmltZTJ9ZWxzZSBpZihsZW5ndGhjb3VudCVwcmltZTMhPT0wKXtzdGVwPTMqcHJpbWUzfWVsc2V7c3RlcD0zKnByaW1lNH12YXIgYixnLHIsajt2YXIgcGl4PTA7aT0wO3doaWxlKGk8c2FtcGxlcGl4ZWxzKXtiPShwaXhlbHNbcGl4XSYyNTUpPDxuZXRiaWFzc2hpZnQ7Zz0ocGl4ZWxzW3BpeCsxXSYyNTUpPDxuZXRiaWFzc2hpZnQ7cj0ocGl4ZWxzW3BpeCsyXSYyNTUpPDxuZXRiaWFzc2hpZnQ7aj1jb250ZXN0KGIsZyxyKTthbHRlcnNpbmdsZShhbHBoYSxqLGIsZyxyKTtpZihyYWQhPT0wKWFsdGVybmVpZ2gocmFkLGosYixnLHIpO3BpeCs9c3RlcDtpZihwaXg+PWxlbmd0aGNvdW50KXBpeC09bGVuZ3RoY291bnQ7aSsrO2lmKGRlbHRhPT09MClkZWx0YT0xO2lmKGklZGVsdGE9PT0wKXthbHBoYS09YWxwaGEvYWxwaGFkZWM7cmFkaXVzLT1yYWRpdXMvcmFkaXVzZGVjO3JhZD1yYWRpdXM+PnJhZGl1c2JpYXNzaGlmdDtpZihyYWQ8PTEpcmFkPTA7Zm9yKGo9MDtqPHJhZDtqKyspcmFkcG93ZXJbal09YWxwaGEqKChyYWQqcmFkLWoqaikqcmFkYmlhcy8ocmFkKnJhZCkpfX19ZnVuY3Rpb24gYnVpbGRDb2xvcm1hcCgpe2luaXQoKTtsZWFybigpO3VuYmlhc25ldCgpO2lueGJ1aWxkKCl9dGhpcy5idWlsZENvbG9ybWFwPWJ1aWxkQ29sb3JtYXA7ZnVuY3Rpb24gZ2V0Q29sb3JtYXAoKXt2YXIgbWFwPVtdO3ZhciBpbmRleD1bXTtmb3IodmFyIGk9MDtpPG5ldHNpemU7aSsrKWluZGV4W25ldHdvcmtbaV1bM11dPWk7dmFyIGs9MDtmb3IodmFyIGw9MDtsPG5ldHNpemU7bCsrKXt2YXIgaj1pbmRleFtsXTttYXBbaysrXT1uZXR3b3JrW2pdWzBdO21hcFtrKytdPW5ldHdvcmtbal1bMV07bWFwW2srK109bmV0d29ya1tqXVsyXX1yZXR1cm4gbWFwfXRoaXMuZ2V0Q29sb3JtYXA9Z2V0Q29sb3JtYXA7dGhpcy5sb29rdXBSR0I9aW54c2VhcmNofW1vZHVsZS5leHBvcnRzPU5ldVF1YW50fSx7fV0sNDpbZnVuY3Rpb24ocmVxdWlyZSxtb2R1bGUsZXhwb3J0cyl7dmFyIEdJRkVuY29kZXIscmVuZGVyRnJhbWU7R0lGRW5jb2Rlcj1yZXF1aXJlKCIuL0dJRkVuY29kZXIuanMiKTtyZW5kZXJGcmFtZT1mdW5jdGlvbihmcmFtZSl7dmFyIGVuY29kZXIscGFnZSxzdHJlYW0sdHJhbnNmZXI7ZW5jb2Rlcj1uZXcgR0lGRW5jb2RlcihmcmFtZS53aWR0aCxmcmFtZS5oZWlnaHQpO2lmKGZyYW1lLmluZGV4PT09MCl7ZW5jb2Rlci53cml0ZUhlYWRlcigpfWVsc2V7ZW5jb2Rlci5maXJzdEZyYW1lPWZhbHNlfWVuY29kZXIuc2V0VHJhbnNwYXJlbnQoZnJhbWUudHJhbnNwYXJlbnQpO2VuY29kZXIuc2V0UmVwZWF0KGZyYW1lLnJlcGVhdCk7ZW5jb2Rlci5zZXREZWxheShmcmFtZS5kZWxheSk7ZW5jb2Rlci5zZXRRdWFsaXR5KGZyYW1lLnF1YWxpdHkpO2VuY29kZXIuc2V0RGl0aGVyKGZyYW1lLmRpdGhlcik7ZW5jb2Rlci5zZXRHbG9iYWxQYWxldHRlKGZyYW1lLmdsb2JhbFBhbGV0dGUpO2VuY29kZXIuYWRkRnJhbWUoZnJhbWUuZGF0YSk7aWYoZnJhbWUubGFzdCl7ZW5jb2Rlci5maW5pc2goKX1pZihmcmFtZS5nbG9iYWxQYWxldHRlPT09dHJ1ZSl7ZnJhbWUuZ2xvYmFsUGFsZXR0ZT1lbmNvZGVyLmdldEdsb2JhbFBhbGV0dGUoKX1zdHJlYW09ZW5jb2Rlci5zdHJlYW0oKTtmcmFtZS5kYXRhPXN0cmVhbS5wYWdlcztmcmFtZS5jdXJzb3I9c3RyZWFtLmN1cnNvcjtmcmFtZS5wYWdlU2l6ZT1zdHJlYW0uY29uc3RydWN0b3IucGFnZVNpemU7aWYoZnJhbWUuY2FuVHJhbnNmZXIpe3RyYW5zZmVyPWZ1bmN0aW9uKCl7dmFyIGksbGVuLHJlZixyZXN1bHRzO3JlZj1mcmFtZS5kYXRhO3Jlc3VsdHM9W107Zm9yKGk9MCxsZW49cmVmLmxlbmd0aDtpPGxlbjtpKyspe3BhZ2U9cmVmW2ldO3Jlc3VsdHMucHVzaChwYWdlLmJ1ZmZlcil9cmV0dXJuIHJlc3VsdHN9KCk7cmV0dXJuIHNlbGYucG9zdE1lc3NhZ2UoZnJhbWUsdHJhbnNmZXIpfWVsc2V7cmV0dXJuIHNlbGYucG9zdE1lc3NhZ2UoZnJhbWUpfX07c2VsZi5vbm1lc3NhZ2U9ZnVuY3Rpb24oZXZlbnQpe3JldHVybiByZW5kZXJGcmFtZShldmVudC5kYXRhKX19LHsiLi9HSUZFbmNvZGVyLmpzIjoxfV19LHt9LFs0XSk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPWdpZi53b3JrZXIuanMubWFwCg==",self.location).href});for(const l of this.frames)i.addFrame(l,{delay:this._frameDelay});i.on("finished",l=>{e(l)}),i.on("error",l=>{console.error("[GifRecorder] GIF 合成失败:",l),a(l)}),i.render()})}async generateMp4(){return this.frames.length===0?(console.warn("[GifRecorder] 没有可用的帧"),null):new Promise((e,a)=>{try{const r=window.devicePixelRatio||1,i=document.createElement("canvas");i.width=this.captureRect.width*r,i.height=this.captureRect.height*r;const l=i.getContext("2d"),n=i.captureStream(0),c=n.getVideoTracks()[0];let s="video/webm;codecs=vp9",m="webm";MediaRecorder.isTypeSupported("video/mp4;codecs=h264")?(s="video/mp4;codecs=h264",m="mp4"):MediaRecorder.isTypeSupported("video/mp4")?(s="video/mp4",m="mp4"):MediaRecorder.isTypeSupported("video/webm;codecs=vp9")&&(s="video/webm;codecs=vp9",m="webm");const d=new MediaRecorder(n,{mimeType:s,videoBitsPerSecond:8e6}),g=[];d.ondataavailable=p=>{p.data.size>0&&g.push(p.data)},d.onstop=()=>{const p=new Blob(g,{type:s});e(p)},d.onerror=p=>{console.error("[GifRecorder] MP4 合成失败:",p),a(p)},d.start();let u=0;const y=()=>{if(u>=this.frames.length){setTimeout(()=>{d.stop()},100);return}const p=this.frames[u];l.putImageData(p,0,0),u++,typeof c.requestFrame=="function"&&c.requestFrame(),setTimeout(y,this._frameDelay)};y()}catch(r){console.error("[GifRecorder] MP4 合成失败:",r),a(r)}})}downloadGif(e,a="ORM-Record"){const r=`${a}.gif`,i=URL.createObjectURL(e),l=document.createElement("a");l.href=i,l.download=r,l.style.display="none",document.body.appendChild(l),l.click(),setTimeout(()=>{document.body.removeChild(l),URL.revokeObjectURL(i)},100)}downloadMp4(e,a="ORM-Record"){const r=`${a}.mp4`,i=URL.createObjectURL(e),l=document.createElement("a");l.href=i,l.download=r,l.style.display="none",document.body.appendChild(l),l.click(),setTimeout(()=>{document.body.removeChild(l),URL.revokeObjectURL(i)},100)}async saveAsFile(e){const r=`weather-animation-${new Date().toISOString().replace(/[:.]/g,"-").slice(0,19)}.gif`;if(window.showSaveFilePicker)try{const l=await(await window.showSaveFilePicker({suggestedName:r,types:[{description:"GIF Images",accept:{"image/gif":[".gif"]}}]})).createWritable();await l.write(e),await l.close(),console.log("文件保存成功");return}catch(i){console.log("用户取消了文件保存或发生错误:",i)}}reset(){this.frames=[],this.captureRect=null,this._isRecording=!1,this.canvas=null,this.ctx=null}get isRecording(){return this._isRecording}get frameDelay(){return this._frameDelay}}const g1="",pf={name:"IdmCapture",props:{isPlaying:{type:Boolean,default:!1},enabled:{type:Boolean,default:!1},frequency:{type:Number,default:1e3},currentTimestamp:{type:Number,default:void 0},token:{type:String,default:""}},emits:["closeRecord","preview","frameCount"],data(){return{recorder:null,actionStatus:0,startX:0,startY:0,selection:{x:0,y:0,width:0,height:0},frameCount:0,gifBlob:null,mp4Blob:null,gifUrl:"",mp4Url:""}},computed:{selectionStyle(){return{left:`${this.selection.x}px`,top:`${this.selection.y}px`,width:`${this.selection.width}px`,height:`${this.selection.height}px`}},computedUTCTime(){return o=>v(o).utc().format("yyyy-MM-DD HH:mm[Z]")}},watch:{frameCount:{handler(o){o&&this.$emit("frameCount",this.frameCount)}},enabled:{handler(o){o?this.actionStatus=1:this.actionStatus=5}},actionStatus:{handler(o){this.actionStatus===4&&this.startRecord(),this.actionStatus===5&&this.recorder&&this.createGifAndMp4(),this.actionStatus===6&&this.handleUpload(this.gifBlob),this.actionStatus===7&&this.$emit("preview",this.gifUrl,this.mp4Url)}}},methods:{handleMouseDown(o){this.actionStatus>=2&&o.clientX>=this.selection.x&&o.clientX<=this.selection.x+this.selection.width&&o.clientY>=this.selection.y&&o.clientY<=this.selection.y+this.selection.height||(this.actionStatus=2,this.startX=o.clientX,this.startY=o.clientY,this.selection={x:o.clientX,y:o.clientY,width:0,height:0})},handleMouseMove(o){if(this.actionStatus===3)return;const e=o.clientX,a=o.clientY;this.selection={x:Math.min(this.startX,e),y:Math.min(this.startY,a),width:Math.abs(e-this.startX),height:Math.abs(a-this.startY)}},handleMouseUp(){var o,e;((o=this.selection)==null?void 0:o.width)>20&&((e=this.selection)==null?void 0:e.height)>20?this.actionStatus=3:this.actionStatus=1},handleConfirm(){this.actionStatus=4},handleCancel(){this.actionStatus=1,this.recorder=null,this.selection={x:0,y:0,width:0,height:0}},startRecord(){var o,e,a;this.frameCount=0,this.recorder=new hf,(o=this.recorder)==null||o.setArea(this.selection),(e=this.recorder)==null||e.setFrameDelay(this.frequency),(a=this.recorder)==null||a.startRecording(),console.log("[BottomBar] 录制准备就绪")},async captureCurrentFrame(){var o,e,a;if(!(!this.recorder||this.actionStatus!==4)){console.log("[BottomBar] 开始截第"+(this.frameCount+1)+"帧截图");try{const r=(o=document.getElementsByClassName("gif-container"))==null?void 0:o[0];r&&(await((e=this.recorder)==null?void 0:e.captureFrame(r,this.computedUTCTime(this.currentTimestamp))),this.frameCount=(a=this.recorder)==null?void 0:a.getFrameCount(),console.log("[BottomBar] 截图总帧数:",this.frameCount))}catch(r){console.error("[BottomBar] 截图失败:",r)}}},async createGifAndMp4(){console.log("[BottomBar] 等待最后一帧截图完成..."),setTimeout(async()=>{var o,e,a;if(this.recorder){(o=this.recorder)==null||o.stopRecording(),console.log("[BottomBar] 停止录制,总帧数:",this.frameCount);try{this.gifBlob=await((e=this.recorder)==null?void 0:e.generateGif()),console.log("[BottomBar] GIF 生成完成:",this.gifBlob),this.mp4Blob=await((a=this.recorder)==null?void 0:a.generateMp4()),console.log("[BottomBar] MP4 生成完成:",this.mp4Blob),(this.gifBlob||this.mp4Blob)&&(this.actionStatus=6)}catch(r){console.error("[BottomBar] 生成失败:",r),this.clear()}}},2e3)},clear(){var o;this.actionStatus=0,this.frameCount=0,this.gifBlob=null,this.mp4Blob=null,this.gifUrl="",this.mp4Url="",this.recorder&&((o=this.recorder)==null||o.reset(),this.recorder=null),this.$emit("closeRecord"),console.log("[BottomBar] 关闭录制功能,清空数据")},async handleUpload(){console.log("[BottomBar] 开始上传");const o=[];if(this.gifBlob&&o.push({stream:this.gifBlob,ext:"gif"}),this.mp4Blob&&o.push({stream:this.mp4Blob,ext:"mp4"}),o.length===0){console.warn("[BottomBar] 没有可上传的文件");return}try{const e=await nr.AliOssSTSClient.create(this.token),a=await(e==null?void 0:e.put2HZ("/share",o));if(a&&a.length>0)for(const r of a)r.url&&(r.url.endsWith(".gif")?this.gifUrl=r.url:r.url.endsWith(".mp4")&&(this.mp4Url=r.url));console.log("[BottomBar] 上传成功",this.mp4Url,this.gifUrl),this.actionStatus=7}catch(e){console.error("[BottomBar] 上传失败:",e)}},handleDownloadGif(){const e=`ORM-Record-${v().format("yyyyMMDD-HHmm")}.gif`;this.recorder.downloadGif(this.gifBlob,e)},handleDownloadMp4(){const e=`ORM-Record-${v().format("yyyyMMDD-HHmm")}.mp4`;this.recorder.downloadMp4(this.mp4Blob,e)}}},gf={class:"capture-container"},uf={key:0,class:"drag-tips text-h4"},ff={class:"size-hint mt-2 ml-2 text-body-2 px-2 py-1 rounded font-weight-bold bg-background"},yf={class:"size-hint mt-2 ml-2 text-body-2 px-2 py-1 rounded font-weight-bold bg-background"},bf={class:"text-body-2"},wf={key:0,class:"py-1 px-2 d-flex align-center justify-center ga-2"},xf={class:"text-body-2"},kf={key:1,class:"py-1 px-2 d-flex align-center justify-center ga-2"},Af={class:"text-body-2"};function Lf(o,e,a,r,i,l){const n=t.resolveComponent("VBtn");return t.openBlock(),t.createElementBlock("div",gf,[i.actionStatus>0&&i.actionStatus<4?(t.openBlock(),t.createElementBlock("div",{key:0,class:"capture-selector",onMousedown:e[2]||(e[2]=(...c)=>l.handleMouseDown&&l.handleMouseDown(...c)),onMousemove:e[3]||(e[3]=(...c)=>l.handleMouseMove&&l.handleMouseMove(...c)),onMouseup:e[4]||(e[4]=(...c)=>l.handleMouseUp&&l.handleMouseUp(...c))},[i.actionStatus===1?(t.openBlock(),t.createElementBlock("div",uf,t.toDisplayString(o.$t("tips.crossHairText")),1)):t.createCommentVNode("",!0),i.actionStatus>=2?(t.openBlock(),t.createElementBlock("div",{key:1,class:"selection-box",style:t.normalizeStyle(l.selectionStyle)},[t.createElementVNode("div",ff,t.toDisplayString(Math.round(i.selection.width))+" × "+t.toDisplayString(Math.round(i.selection.height)),1),i.actionStatus===3?(t.openBlock(),t.createElementBlock("div",{key:0,class:"action-buttons px-2 rounded font-weight-bold bg-background d-flex justify-end ga-4",onMousedown:e[0]||(e[0]=t.withModifiers(()=>{},["stop"])),onMouseup:e[1]||(e[1]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(n,{icon:"mdi-check",density:"compact",variant:"plain",class:"text-none text-body-1",onClick:t.withModifiers(l.handleConfirm,["stop"])},null,8,["onClick"]),t.createVNode(n,{icon:"mdi-close",density:"compact",variant:"plain",class:"text-none text-body-1",onClick:t.withModifiers(l.handleCancel,["stop"])},null,8,["onClick"])],32)):t.createCommentVNode("",!0)],4)):t.createCommentVNode("",!0)],32)):t.createCommentVNode("",!0),i.actionStatus>=4&&i.actionStatus<=6?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["capture-frame",{recording:i.actionStatus===5}]),style:t.normalizeStyle(l.selectionStyle)},[t.createElementVNode("div",yf,[t.createElementVNode("div",bf,t.toDisplayString(i.selection.width)+" × "+t.toDisplayString(i.selection.height),1)]),t.createElementVNode("div",{class:"action-status mt-2 px-2 rounded font-weight-bold bg-background d-flex align-center justify-end ga-4",onMousedown:e[5]||(e[5]=t.withModifiers(()=>{},["stop"])),onMouseup:e[6]||(e[6]=t.withModifiers(()=>{},["stop"]))},[i.actionStatus===4?(t.openBlock(),t.createElementBlock("div",wf,[e[7]||(e[7]=t.createElementVNode("div",{class:"dot bg-danger"},null,-1)),t.createElementVNode("div",xf,t.toDisplayString(o.$t("tips.recordingText")),1)])):t.createCommentVNode("",!0),i.actionStatus===5||i.actionStatus===6?(t.openBlock(),t.createElementBlock("div",kf,[e[8]||(e[8]=t.createElementVNode("div",{class:"dot bg-success"},null,-1)),t.createElementVNode("div",Af,t.toDisplayString(o.$t("tips.savingText")),1)])):t.createCommentVNode("",!0)],32)],6)):t.createCommentVNode("",!0)])}const Oa=K(pf,[["render",Lf],["__scopeId","data-v-a81bf0b3"]]),u1="",Cf={name:"IdmBottomBar",components:{DateTimePicker:to,IdmCapture:Oa},props:{menuToggle:{type:Object,default:{}},weatherCheckList:{type:Array}},emits:["forecastModel","realTime","timeZone"],data(){return{right:10,show:{weather:!1,spot:!1,tropical:!1,ship:!1},dayAbout:{h:-7,f:14},currentDateTimeZ:void 0,currentTimestamp:void 0,currentDateTime:void 0,currentRealTime:void 0,minTimestamp:void 0,maxTimestamp:void 0,animation:void 0,startAnimate:0,step:0,frequency:1e3,paused:!0,intervalHour:3,intervalOptions:[3,6,12,24],showTimezone:!1,timeZone:localStorage.getItem("idm-timeZone-gl4")?Number(localStorage.getItem("idm-timeZone-gl4")):v().utcOffset()/60,offsets:[-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12],source:localStorage.getItem("forecastModelCacheGL4")==="undefined"?"ECMWF":localStorage.getItem("forecastModelCacheGL4"),gifEnabled:!1,frameCount:0}},watch:{"menuToggle.v":{handler(){this.$nextTick(()=>{var o;this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10})},immediate:!0},source:{handler(o,e){o&&o!==e&&(this.$emit("forecastModel",o),localStorage.setItem("forecastModelCacheGL4",o))},immediate:!0},step:{handler(o,e){if(!isNaN(o)&&!isNaN(e)&&o!==e){const a=o-e;let r=this.currentTimestamp;r=r+a*this.intervalHour*3600*1e3,r<=this.minTimestamp||r>=this.maxTimestamp?this.paused?this.currentTimestamp=a<0?this.minTimestamp:this.maxTimestamp:this.handleReset():this.currentTimestamp=r}}},currentTimestamp:{handler(){this.currentDateTimeZ=v(this.currentTimestamp).utc().format("yyyy-MM-DD HH:00[Z]"),this.$emit("realTime",this.currentDateTimeZ),this.currentDateTime=`${v.tz(this.currentTimestamp,this.timeZoneName).clone().format("yyyy-MM-DD : HH:00")}`},immediate:!0},timeZone:{handler(o,e){o!==e&&(this.$emit("timeZone",this.timeZone),localStorage.setItem("idm-timeZone-gl4",this.timeZone),this.showTimezone=!1)},immediate:!0},show:{handler(){var o;Object.values(this.show).includes(!0)||(o=this.$refs.dateTimePicker)==null||o.handleCancelDate()},deep:!0},gifEnabled:{handler(o,e){o||this.handlePause()},immediate:!0}},mounted(){this.handleReset()},methods:{handleReset(){var o;this.handlePause(),this.startAnimate=0,(o=this.$refs.dateTimePicker)==null||o.handleReset()},changeDayAbout(o,e){this.dayAbout={h:o??-7,f:e??14},this.$nextTick(()=>{var a;(a=this.$refs.dateTimePicker)==null||a.handleResetMinMax()})},handleToggle(o,e){this.show[o]=e},handleBackward(){this.handlePause(),this.step-=1},handleForward(){this.handlePause(),this.step+=1},handlePlay(){this.paused=!1,this.step=0,this.animateSpeeds()},async handlePause(){this.animation&&cancelAnimationFrame(this.animation),this.paused=!0},animateSpeeds(o){const e=o-this.startAnimate;this.step=Math.floor(e/this.frequency),this.animation=requestAnimationFrame(this.animateSpeeds)},handleClickFastWeather(o){this.$parent.$refs.idmWeatherLayers.handleFastWeatherToggle(o)},handleClickFastMore(){this.$parent.$refs.idmWeatherLayers.handleMenuToggle()}}},vf={class:"idm-bottom-bar-gl4"},zf={class:"date-box d-flex ga-2 mr-2"},_f={class:"play-btns-box d-flex justify-center align-center cursor-pointer ga-1"},Sf={class:"fast-weathers-box d-flex justify-center align-center ga-2 cursor-pointer"},Nf={class:"model-box d-flex justify-center align-center ga-2 my-2"},Mf={key:0,class:"list d-flex flex-wrap pa-2 rounded ga-2"},Pf=["onClick"],Vf={class:"btn-box d-flex justify-start align-center rounded ga-2 py-1 px-3"},Tf={class:"text-body-1"};function Ef(o,e,a,r,i,l){const n=t.resolveComponent("IdmCapture"),c=t.resolveComponent("DateTimePicker"),s=t.resolveComponent("VListItemTitle"),m=t.resolveComponent("VListItem"),d=t.resolveComponent("VList"),g=t.resolveComponent("VMenu"),u=t.resolveComponent("VBtn"),y=t.resolveComponent("VDivider"),p=t.resolveComponent("VTooltip");return t.openBlock(),t.createElementBlock("div",vf,[t.createVNode(n,t.mergeProps({ref:"capture","is-playing":!i.paused,enabled:i.gifEnabled,frequency:i.frequency,"current-timestamp":i.currentTimestamp},o.$attrs,{onCloseRecord:e[0]||(e[0]=h=>{i.gifEnabled=!1,i.paused=!0}),onFrameCount:e[1]||(e[1]=h=>i.frameCount=h)}),null,16,["is-playing","enabled","frequency","current-timestamp"]),t.createElementVNode("div",{class:"time-box px-2 d-flex justify-start align-center rounded",style:t.normalizeStyle({right:i.right+146+"px",bottom:Object.values(i.show).includes(!0)?"10px":"-100px"})},[t.createElementVNode("div",zf,[t.createVNode(c,t.mergeProps({ref:"dateTimePicker","date-time":i.currentDateTimeZ,"time-zone":i.timeZone,"day-about":i.dayAbout,"interval-hour":i.intervalHour,width:230},o.$attrs,{onCurrentTimestamp:e[2]||(e[2]=h=>i.currentTimestamp=h),onCurrentRealTime:e[3]||(e[3]=h=>i.currentRealTime=h),onMinTimestamp:e[4]||(e[4]=h=>i.minTimestamp=h),onMaxTimestamp:e[5]||(e[5]=h=>i.maxTimestamp=h)}),null,16,["date-time","time-zone","day-about","interval-hour"]),t.createVNode(u,{text:"",height:"30",class:"text-none elevation-0 btn-border-1 btn-bg-1 text-body-1","min-width":"30"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.intervalHour)+" h ",1),t.createVNode(g,{activator:"parent"},{default:t.withCtx(()=>[t.createVNode(d,{class:"pa-1"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.intervalOptions,(h,f)=>(t.openBlock(),t.createBlock(m,{key:f,value:h,variant:i.intervalHour===h?"tonal":"text",color:"primary",rounded:"",active:i.intervalHour===h,height:"30","min-height":"30","min-width":"30",class:"pa-0 text-center text-body-1"},{default:t.withCtx(()=>[t.createVNode(s,{onClick:w=>i.intervalHour=h},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h)+"h",1)]),_:2},1032,["onClick"])]),_:2},1032,["value","variant","active"]))),128))]),_:1})]),_:1})]),_:1})]),t.createVNode(y,{vertical:"",class:"mx-2 my-3",style:{height:"16px"}}),t.createElementVNode("div",_f,[t.createVNode(p,{text:i.gifEnabled?o.$t("actions.stop"):o.$t("actions.record"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[i.gifEnabled?(t.openBlock(),t.createBlock(u,t.mergeProps({key:1,disabled:i.frameCount<1},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[7]||(e[7]=f=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[15]||(e[15]=[t.createElementVNode("i",{class:"iconfont icon-stop-record text-danger"},null,-1)])),_:2,__:[15]},1040,["disabled"])):(t.openBlock(),t.createBlock(u,t.mergeProps({key:0},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[6]||(e[6]=f=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[14]||(e[14]=[t.createElementVNode("i",{class:"iconfont icon-record"},null,-1)])),_:2,__:[14]},1040))]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.reset"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleReset}),{default:t.withCtx(()=>e[16]||(e[16]=[t.createElementVNode("i",{class:"iconfont icon-Reset"},null,-1)])),_:2,__:[16]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.backward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleBackward}),{default:t.withCtx(()=>e[17]||(e[17]=[t.createElementVNode("i",{class:"iconfont icon-Backward"},null,-1)])),_:2,__:[17]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.play"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[i.paused?(t.openBlock(),t.createBlock(u,t.mergeProps({key:0},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePlay}),{default:t.withCtx(()=>e[18]||(e[18]=[t.createElementVNode("i",{class:"iconfont icon-Play"},null,-1)])),_:2,__:[18]},1040,["onClick"])):t.createCommentVNode("",!0)]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.pause"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[i.paused?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,t.mergeProps({key:0},h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePause}),{default:t.withCtx(()=>e[19]||(e[19]=[t.createElementVNode("i",{class:"iconfont icon-Pause"},null,-1)])),_:2,__:[19]},1040,["onClick"]))]),_:1},8,["text"]),t.createVNode(p,{text:o.$t("actions.forward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleForward}),{default:t.withCtx(()=>e[20]||(e[20]=[t.createElementVNode("i",{class:"iconfont icon-Forward"},null,-1)])),_:2,__:[20]},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(y,{vertical:"",class:"mx-2 my-3",style:{height:"16px"}}),t.createElementVNode("div",Sf,[t.createVNode(p,{text:o.$t("weather.windBarbs"),location:"top"},{activator:t.withCtx(({props:h})=>{var f,w;return[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",color:(f=a.weatherCheckList)!=null&&f.includes("wind")?"primary":"",variant:(w=a.weatherCheckList)!=null&&w.includes("wind")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[8]||(e[8]=b=>l.handleClickFastWeather("wind"))}),{default:t.withCtx(()=>e[21]||(e[21]=[t.createElementVNode("i",{class:"iconfont icon-a-WindLevel"},null,-1)])),_:2,__:[21]},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(p,{text:o.$t("weather.sigWaveHeight"),location:"top"},{activator:t.withCtx(({props:h})=>{var f,w;return[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",color:(f=a.weatherCheckList)!=null&&f.includes("sig-wave-height")?"primary":"",variant:(w=a.weatherCheckList)!=null&&w.includes("sig-wave-height")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[9]||(e[9]=b=>l.handleClickFastWeather("sig-wave-height"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(h,{class:"iconfont icon-a-WaveHeight"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(p,{text:o.$t("weather.currentDirection"),location:"top"},{activator:t.withCtx(({props:h})=>{var f,w;return[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",color:(f=a.weatherCheckList)!=null&&f.includes("current-direction")?"primary":"",variant:(w=a.weatherCheckList)!=null&&w.includes("current-direction")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[10]||(e[10]=b=>l.handleClickFastWeather("current-direction"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(h,{class:"iconfont icon-Current"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(p,{text:o.$t("weather.weatherLayers"),location:"top"},{activator:t.withCtx(({props:h})=>[t.createVNode(u,t.mergeProps(h,{class:"pa-1 d-flex",variant:"text",height:"24",width:"24","min-width":"24",onClick:l.handleClickFastMore}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(h,{class:"iconfont icon-dots-align"}),null,16)]),_:2},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(y,{vertical:"",class:"mx-2 mr-3 my-3",style:{height:"16px"}}),t.createElementVNode("div",Nf,[t.createVNode(u,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="GFS"?"bg-primary":"btn-bg-2"]),color:i.source==="GFS"?"primary":"",onClick:e[11]||(e[11]=h=>i.source="GFS")},{default:t.withCtx(()=>e[22]||(e[22]=[t.createTextVNode(" NOAA ",-1)])),_:1,__:[22]},8,["color","class"]),t.createVNode(u,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="ECMWF"?"bg-primary":"btn-bg-2"]),color:i.source==="ECMWF"?"primary":"",onClick:e[12]||(e[12]=h=>i.source="ECMWF")},{default:t.withCtx(()=>e[23]||(e[23]=[t.createTextVNode(" ECMWF ",-1)])),_:1,__:[23]},8,["class","color"])])],4),t.createElementVNode("div",{class:"timezone-box d-flex flex-column justify-space-between align-end",style:t.normalizeStyle({right:i.right+"px"})},[i.showTimezone?(t.openBlock(),t.createElementBlock("div",Mf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.offsets,h=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"item rounded text-body-2 hover-active",onClick:f=>i.timeZone=h},t.toDisplayString(h<0?h:"+"+h),9,Pf))),128))])):t.createCommentVNode("",!0),t.createElementVNode("div",Vf,[t.createVNode(u,{text:"",variant:"flat",height:"28",class:"pa-1 text-body-1",color:"primary",onClick:e[13]||(e[13]=h=>i.showTimezone=!i.showTimezone)},{default:t.withCtx(()=>[t.createTextVNode(" UTC "+t.toDisplayString(i.timeZone<0?i.timeZone:"+"+i.timeZone),1)]),_:1}),t.createElementVNode("span",Tf,t.toDisplayString(i.currentRealTime),1)])],4)])}const Df=K(Cf,[["render",Ef]]),f1="",Rf={name:"IdmTimePlayer",components:{DateTimePicker:to},props:{menuToggle:{type:Object,default:{}},weatherCheckList:{type:Array},playerBottom:{type:Number,default:30}},emits:["realTime","timeZone"],data(){return{right:10,show:{weather:!1,spot:!1,tropical:!1,ship:!1},dayAbout:{h:-7,f:14},currentDateTimeZ:void 0,currentTimestamp:void 0,currentDateTime:void 0,currentRealTime:void 0,minTimestamp:void 0,maxTimestamp:void 0,animation:void 0,startAnimate:0,step:0,frequency:1e3,paused:!0,intervalHour:3,intervalOptions:[3,6,12,24],showTimezone:!1,timeZone:v().utcOffset()/60,offsets:[-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12]}},watch:{step:{handler(o,e){if(!isNaN(o)&&!isNaN(e)&&o!==e){const a=o-e;let r=this.currentTimestamp;r=r+a*this.intervalHour*3600*1e3,r<=this.minTimestamp||r>=this.maxTimestamp?this.paused?this.currentTimestamp=a<0?this.minTimestamp:this.maxTimestamp:this.handleReset():this.currentTimestamp=r}}},currentTimestamp:{handler(){this.currentDateTimeZ=v(this.currentTimestamp).utc().format("yyyy-MM-DD HH:00[Z]"),this.$emit("realTime",this.currentDateTimeZ),this.currentDateTime=`${v.tz(this.currentTimestamp,this.timeZoneName).clone().format("yyyy-MM-DD : HH:00")}`},immediate:!0},timeZone:{handler(o,e){o!==e&&(this.$emit("timeZone",this.timeZone),this.showTimezone=!1)},immediate:!0},show:{handler(){var o;Object.values(this.show).includes(!0)||(o=this.$refs.dateTimePicker)==null||o.handleCancelDate()},deep:!0}},mounted(){this.handleReset()},methods:{handleReset(){var o;this.handlePause(),this.startAnimate=0,(o=this.$refs.dateTimePicker)==null||o.handleReset()},changeDayAbout(o,e){this.dayAbout={h:o??-7,f:e??14}},handleToggle(o,e){this.show[o]=e},handleBackward(){this.handlePause(),this.step-=1},handleForward(){this.handlePause(),this.step+=1},handlePlay(){this.paused=!1,this.step=0,this.animateSpeeds()},handlePause(){this.animation&&cancelAnimationFrame(this.animation),this.paused=!0},animateSpeeds(o){const e=o-this.startAnimate;this.step=Math.floor(e/this.frequency),this.animation=requestAnimationFrame(this.animateSpeeds)}}},Bf={class:"w-100 timeline-box d-flex justify-space-around align-center rounded px-2"};function If(o,e,a,r,i,l){const n=t.resolveComponent("VBtn"),c=t.resolveComponent("DateTimePicker");return t.openBlock(),t.createElementBlock("div",{class:"idm-time-player-gl4 d-flex justify-center align-center",style:t.normalizeStyle({bottom:Object.values(i.show).includes(!0)?a.playerBottom+"px":"-100px"})},[t.createElementVNode("div",Bf,[t.createVNode(n,{size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handleReset},{default:t.withCtx(()=>e[4]||(e[4]=[t.createElementVNode("i",{class:"iconfont icon-Reset"},null,-1)])),_:1,__:[4]},8,["onClick"]),t.createVNode(n,{size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handleBackward},{default:t.withCtx(()=>e[5]||(e[5]=[t.createElementVNode("i",{class:"iconfont icon-Backward"},null,-1)])),_:1,__:[5]},8,["onClick"]),t.createVNode(c,t.mergeProps({ref:"dateTimePicker","date-time":i.currentDateTimeZ,"time-zone":i.timeZone,"day-about":i.dayAbout,"interval-hour":i.intervalHour,height:32},o.$attrs,{onCurrentTimestamp:e[0]||(e[0]=s=>i.currentTimestamp=s),onCurrentRealTime:e[1]||(e[1]=s=>i.currentRealTime=s),onMinTimestamp:e[2]||(e[2]=s=>i.minTimestamp=s),onMaxTimestamp:e[3]||(e[3]=s=>i.maxTimestamp=s)}),null,16,["date-time","time-zone","day-about","interval-hour"]),t.createVNode(n,{size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handleForward},{default:t.withCtx(()=>e[6]||(e[6]=[t.createElementVNode("i",{class:"iconfont icon-Forward"},null,-1)])),_:1,__:[6]},8,["onClick"]),i.paused?(t.openBlock(),t.createBlock(n,{key:0,size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handlePlay},{default:t.withCtx(()=>e[7]||(e[7]=[t.createElementVNode("i",{class:"iconfont icon-Play"},null,-1)])),_:1,__:[7]},8,["onClick"])):(t.openBlock(),t.createBlock(n,{key:1,size:"small",density:"compact",class:"px-1 bg-background btn-border-1",width:"30","min-width":"30",height:"30",onClick:l.handlePause},{default:t.withCtx(()=>e[8]||(e[8]=[t.createElementVNode("i",{class:"iconfont icon-Pause"},null,-1)])),_:1,__:[8]},8,["onClick"]))])],4)}const la=K(Rf,[["render",If]]),y1="",Ff={name:"IdmBottomTimeLine",components:{DateTimePicker:to,IdmCapture:Oa},props:{menuToggle:{type:Object,default:{}},weatherCheckList:{type:Array}},emits:["forecastModel","realTime","timeZone"],data(){return{right:10,show:{weather:!1,spot:!1,tropical:!1,ship:!1},dayAbout:{h:0,f:14},currentDateTimeZ:void 0,currentTimestamp:void 0,currentDateTime:void 0,currentRealTime:void 0,animation:void 0,startAnimate:0,step:0,frequency:1e3,paused:!0,intervalHour:3,intervalOptions:[3,6,12,24],timer:void 0,showTimezone:!1,timeZone:localStorage.getItem("idm-timeZone-gl4")?Number(localStorage.getItem("idm-timeZone-gl4")):v().utcOffset()/60,offsets:[-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12],source:localStorage.getItem("forecastModelCacheGL4")==="undefined"?"ECMWF":localStorage.getItem("forecastModelCacheGL4"),gifEnabled:!1,frameCount:0,isDragging:!1,dragStartX:0,dragScrollLeft:0,hasDragged:!1}},computed:{minTimestamp(){return v.tz(v().add(this.dayAbout.h,"days"),this.timeZoneName).startOf("day").valueOf()},maxTimestamp(){return v.tz(v().add(this.dayAbout.f,"days"),this.timeZoneName).endOf("day").valueOf()},timelineStartDate(){return v.tz(this.minTimestamp,this.timeZoneName).startOf("day")},timelineEndDate(){return v.tz(this.maxTimestamp,this.timeZoneName).startOf("day")},timelineTotalHours(){return this.timelineEndDate.diff(this.timelineStartDate,"hours")+24},hourWidth(){const o=Math.ceil(24/this.intervalHour),e=this.timelineTotalHours/24*o;return Math.max(32,Math.ceil(600/Math.min(e,7*o)))},timeZoneName(){var o;return(o=v.tz.names().filter(e=>v.tz(v(),e).utcOffset()===this.timeZone*60))==null?void 0:o[0]},playBubbleText(){return this.currentTimestamp?v.tz(this.currentTimestamp,this.timeZoneName).format("MM-DD HH:00")+" ( UTC "+(this.timeZone>=0?"+":"-")+this.timeZone+" )":""},timelineDays(){const o=[],e=this.timeZoneName,a=(this.timeZone%this.intervalHour+this.intervalHour)%this.intervalHour;let r=v.tz(this.minTimestamp,e).startOf("day");const i=v.tz(this.maxTimestamp,e).startOf("day");for(;r.isSameOrBefore(i);){const l=[];for(let n=a;n<24;n+=this.intervalHour){const c=r.clone().add(n,"hours").valueOf();c<this.minTimestamp||c>this.maxTimestamp||l.push({key:`${r.format("YYYY-MM-DD")}-${n}`,timestamp:c,isActive:c<=(this.currentTimestamp||Date.now()),isCurrent:this.currentTimestamp>=c&&this.currentTimestamp<c+this.intervalHour*36e5,label:String(n).padStart(2,"0")})}l.length&&o.push({key:r.format("YYYY-MM-DD"),label:r.format("MMM-DD")+" "+r.format("ddd"),hours:l}),r.add(1,"day")}return o}},watch:{"menuToggle.v":{handler(){this.$nextTick(()=>{var o;this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10})},immediate:!0},source:{handler(o,e){o&&o!==e&&(this.$emit("forecastModel",o),localStorage.setItem("forecastModelCacheGL4",o))},immediate:!0},step:{handler(o,e){if(!isNaN(o)&&!isNaN(e)&&o!==e){const a=o-e;let r=this.currentTimestamp;r=r+a*this.intervalHour*3600*1e3,r<=this.minTimestamp||r>=this.maxTimestamp?this.paused?this.currentTimestamp=a<0?this.minTimestamp:this.maxTimestamp:this.handleReset():this.currentTimestamp=r}}},dayAbout:{handler(){this.initCurrentTimestamp()},deep:!0},currentTimestamp:{handler(){this.currentDateTimeZ=v(this.currentTimestamp).utc().format("yyyy-MM-DD HH:00[Z]"),this.$emit("realTime",this.currentDateTimeZ),this.currentDateTime=`${v.tz(this.currentTimestamp,this.timeZoneName).clone().format("yyyy-MM-DD : HH:00")}`,this.paused||this.$nextTick(()=>{const o=this.$refs.timelineScroll;if(!o||!this.currentTimestamp)return;const e=this.timeZoneName,a=v.tz(this.currentTimestamp,e),l=(a.clone().startOf("day").diff(this.timelineStartDate,"hours")+a.hour())/this.intervalHour*this.hourWidth,n=l+this.hourWidth,c=o.scrollLeft,s=c+o.clientWidth;n>s?o.scrollLeft=n-o.clientWidth:l<c&&(o.scrollLeft=l)})},immediate:!0},timeZone:{handler(o,e){o!==e&&(this.$emit("timeZone",this.timeZone),localStorage.setItem("idm-timeZone-gl4",this.timeZone),this.showTimezone=!1)},immediate:!0},show:{handler(){var o;Object.values(this.show).includes(!0)||(o=this.$refs.dateTimePicker)==null||o.handleCancelDate()},deep:!0},gifEnabled:{handler(o,e){o||this.handlePause()},immediate:!0}},mounted(){this.initCurrentTimestamp(),this.timer=setInterval(()=>{this.currentRealTime=`${v.tz(v().unix()*1e3,this.timeZoneName).clone().format("HH:mm")}`},100)},methods:{initCurrentTimestamp(){const o=Date.now(),e=this.timeZoneName,a=v.tz(o,e),r=(this.timeZone%this.intervalHour+this.intervalHour)%this.intervalHour,i=a.hour(),l=i-((i-r)%this.intervalHour+this.intervalHour)%this.intervalHour,n=a.clone().set({minute:0,second:0,millisecond:0,hour:l}).valueOf();this.currentTimestamp=Math.max(this.minTimestamp,Math.min(n,this.maxTimestamp)),this.step=0,this.startAnimate=0,this.$nextTick(()=>{const c=this.$refs.timelineScroll;if(!c)return;const s=v.tz(this.currentTimestamp,e),m=s.clone().startOf("day").diff(this.timelineStartDate,"hours")+s.hour(),d=Math.max(0,m*this.hourWidth-c.clientWidth/2);c.scrollLeft=d})},handleTimelineClick(o){this.hasDragged||(this.handlePause(),this.currentTimestamp=Math.max(this.minTimestamp,Math.min(o,this.maxTimestamp)))},handleDateClick(o,e){if(this.hasDragged)return;const a=e.currentTarget.getBoundingClientRect(),r=e.clientX-a.left-2,i=Math.min(Math.floor(r/this.hourWidth),o.hours.length-1);i>=0&&i<o.hours.length&&this.handleTimelineClick(o.hours[i].timestamp)},handleDragStart(o){var e;this.isDragging=!0,this.hasDragged=!1,this.dragStartX=o.clientX,this.dragScrollLeft=((e=this.$refs.timelineScroll)==null?void 0:e.scrollLeft)||0},handleDragMove(o){if(!this.isDragging)return;const e=o.clientX-this.dragStartX;Math.abs(e)>3&&(this.hasDragged=!0),this.$refs.timelineScroll&&(this.$refs.timelineScroll.scrollLeft=this.dragScrollLeft-e)},handleDragEnd(){this.isDragging=!1},handleReset(){this.handlePause(),this.startAnimate=0,this.step=0,this.initCurrentTimestamp()},changeDayAbout(o,e){this.dayAbout={h:o??0,f:e??14},this.$nextTick(()=>{this.initCurrentTimestamp()})},handleToggle(o,e){this.show[o]=e},handleBackward(){this.handlePause(),this.step-=1},handleForward(){this.handlePause(),this.step+=1},handlePlay(){this.paused=!1,this.step=0,this.animateSpeeds()},async handlePause(){this.animation&&cancelAnimationFrame(this.animation),this.paused=!0},animateSpeeds(o){const e=o-this.startAnimate;this.step=Math.floor(e/this.frequency),this.animation=requestAnimationFrame(this.animateSpeeds)},handleClickFastWeather(o){this.$parent.$refs.idmWeatherLayers.handleFastWeatherToggle(o)},handleClickFastMore(){this.$parent.$refs.idmWeatherLayers.handleMenuToggle()}}},Gf={class:"idm-bottom-bar-gl4"},jf={class:"play-btns-box d-flex justify-center align-center cursor-pointer ga-1"},Wf={class:"date-box d-flex ga-2"},Zf={class:"hour-box d-flex ga-2 flex-1-1-0 h-100 overflow-hidden"},Xf={class:"timeline-track"},Hf=["onClick"],Of={class:"timeline-hours"},Yf=["onClick"],Uf={key:0,class:"play-bubble"},Jf={class:"bubble-text"},Kf={key:1,class:"hour-label"},Qf={class:"fast-weathers-box d-flex justify-center align-center ga-2 cursor-pointer"},qf={class:"model-box d-flex justify-center align-center ga-2 my-2"},$f={key:0,class:"list d-flex flex-wrap pa-2 rounded ga-2"},ey=["onClick"],ty={class:"btn-box d-flex justify-start align-center rounded ga-2 py-1 px-3"},oy={class:"text-body-1"};function ay(o,e,a,r,i,l){const n=t.resolveComponent("IdmCapture"),c=t.resolveComponent("VBtn"),s=t.resolveComponent("VTooltip"),m=t.resolveComponent("VDivider"),d=t.resolveComponent("VListItemTitle"),g=t.resolveComponent("VListItem"),u=t.resolveComponent("VList"),y=t.resolveComponent("VMenu");return t.openBlock(),t.createElementBlock("div",Gf,[t.createVNode(n,t.mergeProps({ref:"capture","is-playing":!i.paused,enabled:i.gifEnabled,frequency:i.frequency,"current-timestamp":i.currentTimestamp},o.$attrs,{onCloseRecord:e[0]||(e[0]=p=>{i.gifEnabled=!1,i.paused=!0}),onFrameCount:e[1]||(e[1]=p=>i.frameCount=p)}),null,16,["is-playing","enabled","frequency","current-timestamp"]),t.createElementVNode("div",{class:"timeline-box px-2 d-flex justify-start align-center rounded",style:t.normalizeStyle({right:i.right+146+"px",bottom:Object.values(i.show).includes(!0)?"10px":"-100px"})},[t.createElementVNode("div",jf,[t.createVNode(s,{text:i.gifEnabled?o.$t("actions.stop"):o.$t("actions.record"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[i.gifEnabled?(t.openBlock(),t.createBlock(c,t.mergeProps({key:1,disabled:i.frameCount<1},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[3]||(e[3]=h=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[15]||(e[15]=[t.createElementVNode("i",{class:"iconfont icon-stop-record text-danger"},null,-1)])),_:2,__:[15]},1040,["disabled"])):(t.openBlock(),t.createBlock(c,t.mergeProps({key:0},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:e[2]||(e[2]=h=>i.gifEnabled=!i.gifEnabled)}),{default:t.withCtx(()=>e[14]||(e[14]=[t.createElementVNode("i",{class:"iconfont icon-record"},null,-1)])),_:2,__:[14]},1040))]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.reset"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleReset}),{default:t.withCtx(()=>e[16]||(e[16]=[t.createElementVNode("i",{class:"iconfont icon-Reset"},null,-1)])),_:2,__:[16]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.backward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleBackward}),{default:t.withCtx(()=>e[17]||(e[17]=[t.createElementVNode("i",{class:"iconfont icon-Backward"},null,-1)])),_:2,__:[17]},1040,["onClick"])]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.play"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[i.paused?(t.openBlock(),t.createBlock(c,t.mergeProps({key:0},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePlay}),{default:t.withCtx(()=>e[18]||(e[18]=[t.createElementVNode("i",{class:"iconfont icon-Play"},null,-1)])),_:2,__:[18]},1040,["onClick"])):t.createCommentVNode("",!0)]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.pause"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[i.paused?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(c,t.mergeProps({key:0},p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handlePause}),{default:t.withCtx(()=>e[19]||(e[19]=[t.createElementVNode("i",{class:"iconfont icon-Pause"},null,-1)])),_:2,__:[19]},1040,["onClick"]))]),_:1},8,["text"]),t.createVNode(s,{text:o.$t("actions.forward"),location:"top",interactive:!0,"open-on-click":!1},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{icon:"",size:"small",density:"comfortable",variant:"text",onClick:l.handleForward}),{default:t.withCtx(()=>e[20]||(e[20]=[t.createElementVNode("i",{class:"iconfont icon-Forward"},null,-1)])),_:2,__:[20]},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(m,{vertical:"",class:"mx-2 my-4"}),t.createElementVNode("div",Wf,[t.createVNode(c,{text:"",height:"30",class:"text-none elevation-0 btn-border-1 btn-bg-1 text-body-1","min-width":"30"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(i.intervalHour)+" h ",1),t.createVNode(y,{activator:"parent"},{default:t.withCtx(()=>[t.createVNode(u,{class:"pa-1"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.intervalOptions,(p,h)=>(t.openBlock(),t.createBlock(g,{key:h,value:p,variant:i.intervalHour===p?"tonal":"text",color:"primary",rounded:"",active:i.intervalHour===p,height:"30","min-height":"30","min-width":"30",class:"pa-0 text-center text-body-1"},{default:t.withCtx(()=>[t.createVNode(d,{onClick:f=>i.intervalHour=p},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(p)+"h",1)]),_:2},1032,["onClick"])]),_:2},1032,["value","variant","active"]))),128))]),_:1})]),_:1})]),_:1})]),t.createVNode(m,{vertical:"",class:"mx-2 my-4"}),t.createElementVNode("div",Zf,[t.createElementVNode("div",{ref:"timelineScroll",class:t.normalizeClass(["timeline-scroll",{dragging:i.isDragging}]),onMousedown:e[4]||(e[4]=(...p)=>l.handleDragStart&&l.handleDragStart(...p)),onMousemove:e[5]||(e[5]=(...p)=>l.handleDragMove&&l.handleDragMove(...p)),onMouseup:e[6]||(e[6]=(...p)=>l.handleDragEnd&&l.handleDragEnd(...p)),onMouseleave:e[7]||(e[7]=(...p)=>l.handleDragEnd&&l.handleDragEnd(...p))},[t.createElementVNode("div",Xf,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.timelineDays,p=>(t.openBlock(),t.createElementBlock("div",{key:p.key,class:"timeline-day"},[t.createElementVNode("div",{class:"timeline-date",onClick:h=>l.handleDateClick(p,h)},t.toDisplayString(p.label),9,Hf),t.createElementVNode("div",Of,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.hours,h=>(t.openBlock(),t.createElementBlock("div",{key:h.key,class:t.normalizeClass(["timeline-hour",{active:h.isActive}]),style:t.normalizeStyle({width:l.hourWidth+"px"}),onClick:f=>l.handleTimelineClick(h.timestamp)},[h.isCurrent?(t.openBlock(),t.createElementBlock("div",Uf,[t.createElementVNode("span",Jf,t.toDisplayString(l.playBubbleText),1),e[21]||(e[21]=t.createElementVNode("span",{class:"bubble-arrow"},null,-1))])):t.createCommentVNode("",!0),i.intervalHour<24?(t.openBlock(),t.createElementBlock("span",Kf,t.toDisplayString(h.label),1)):t.createCommentVNode("",!0)],14,Yf))),128))])]))),128))])],34)]),t.createVNode(m,{vertical:"",class:"mx-2 my-4"}),t.createElementVNode("div",Qf,[t.createVNode(s,{text:o.$t("weather.windBarbs"),location:"top"},{activator:t.withCtx(({props:p})=>{var h,f;return[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",color:(h=a.weatherCheckList)!=null&&h.includes("wind")?"primary":"",variant:(f=a.weatherCheckList)!=null&&f.includes("wind")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[8]||(e[8]=w=>l.handleClickFastWeather("wind"))}),{default:t.withCtx(()=>e[22]||(e[22]=[t.createElementVNode("i",{class:"iconfont icon-a-WindLevel"},null,-1)])),_:2,__:[22]},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(s,{text:o.$t("weather.sigWaveHeight"),location:"top"},{activator:t.withCtx(({props:p})=>{var h,f;return[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",color:(h=a.weatherCheckList)!=null&&h.includes("sig-wave-height")?"primary":"",variant:(f=a.weatherCheckList)!=null&&f.includes("sig-wave-height")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[9]||(e[9]=w=>l.handleClickFastWeather("sig-wave-height"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(p,{class:"iconfont icon-a-WaveHeight"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(s,{text:o.$t("weather.currentDirection"),location:"top"},{activator:t.withCtx(({props:p})=>{var h,f;return[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",color:(h=a.weatherCheckList)!=null&&h.includes("current-direction")?"primary":"",variant:(f=a.weatherCheckList)!=null&&f.includes("current-direction")?"elevated":"text",height:"24",width:"24","min-width":"24",onClick:e[10]||(e[10]=w=>l.handleClickFastWeather("current-direction"))}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(p,{class:"iconfont icon-Current"}),null,16)]),_:2},1040,["color","variant"])]}),_:1},8,["text"]),t.createVNode(s,{text:o.$t("weather.weatherLayers"),location:"top"},{activator:t.withCtx(({props:p})=>[t.createVNode(c,t.mergeProps(p,{class:"pa-1 d-flex",variant:"text",height:"24",width:"24","min-width":"24",onClick:l.handleClickFastMore}),{default:t.withCtx(()=>[t.createElementVNode("i",t.mergeProps(p,{class:"iconfont icon-dots-align"}),null,16)]),_:2},1040,["onClick"])]),_:1},8,["text"])]),t.createVNode(m,{vertical:"",class:"mx-2 mr-3 my-4"}),t.createElementVNode("div",qf,[t.createVNode(c,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="GFS"?"bg-primary":"btn-bg-2"]),color:i.source==="GFS"?"primary":"",onClick:e[11]||(e[11]=p=>i.source="GFS")},{default:t.withCtx(()=>e[23]||(e[23]=[t.createTextVNode(" NOAA ",-1)])),_:1,__:[23]},8,["color","class"]),t.createVNode(c,{text:"",height:"30",class:t.normalizeClass(["px-2 elevation-0 text-body-1 btn-border-2",i.source==="ECMWF"?"bg-primary":"btn-bg-2"]),color:i.source==="ECMWF"?"primary":"",onClick:e[12]||(e[12]=p=>i.source="ECMWF")},{default:t.withCtx(()=>e[24]||(e[24]=[t.createTextVNode(" ECMWF ",-1)])),_:1,__:[24]},8,["class","color"])])],4),t.createElementVNode("div",{class:"timezone-box d-flex flex-column justify-space-between align-end",style:t.normalizeStyle({right:i.right+"px"})},[i.showTimezone?(t.openBlock(),t.createElementBlock("div",$f,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(i.offsets,p=>(t.openBlock(),t.createElementBlock("div",{key:p,class:"item rounded text-body-2 hover-active",onClick:h=>i.timeZone=p},t.toDisplayString(p<0?p:"+"+p),9,ey))),128))])):t.createCommentVNode("",!0),t.createElementVNode("div",ty,[t.createVNode(c,{text:"",variant:"flat",height:"28",class:"pa-1 text-body-1",color:"primary",onClick:e[13]||(e[13]=p=>i.showTimezone=!i.showTimezone)},{default:t.withCtx(()=>[t.createTextVNode(" UTC "+t.toDisplayString(i.timeZone<0?i.timeZone:"+"+i.timeZone),1)]),_:1}),t.createElementVNode("span",oy,t.toDisplayString(i.currentRealTime),1)])],4)])}const iy={name:"IdmGL4",components:{IdmOtherLayer:ys,IdmWeatherLayer:nm,IdmTropicals:Xo,IdmMeasure:wp,IdmSpot:up,IdmMarker:Xg,IdmBottomBar:Df,IdmBottomTimeLine:K(Ff,[["render",ay]]),IdmBottomTimePlayer:la},props:{map:{type:Object},token:{type:String},beforeLayer:{type:String,default:""},forecastModel:{type:String},mapFeather:{type:String},simple:{type:Boolean,default:!1},showTimeline:{type:Boolean,default:!1}},emits:["mapFeather"],data(){return{weatherCheckList:[],otherCheckList:[],layerVersion:0,autoActive:!0,tempFeather:"",tempFeatherCount:0,tropicals:void 0,playerBottom:30,gateway:"https://cbe.ormwx.com",assistGateway:["https://assist0.ormwx.com","https://assist1.ormwx.com"],defaultMeteoToken:"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNtZWliMDg2dTAwMDdmdnV4ZHRhcmFoODIiLCJyb2xlIjoyLCJuYW1lIjoiY2hlbmhlbmdAb3Jtd3guY29tIiwicGxhdElkIjoiZ2QwbXQxZCIsImNvbXBhbnkiOnsiaWQiOm51bGwsImNoaWxkcmVuIjpbXX0sImlhdCI6MTc1NTg1NzQ0NiwiZXhwIjozOTYzMzc3NDQ2fQ.nll8PA8tZEFONV2ydX4Rx_Xya7nMzJQ6vPSL_Sg2dVU"}},watch:{layerVersion:{handler(){var o,e,a,r,i,l,n;if(this.map){const c=this.autoActive&&this.weatherCheckList.some(g=>["wind-particle","sig-wave","swell","current-particle","water-temp","temp"].some(u=>u===g)),s=this.autoActive&&this.weatherCheckList.some(g=>["wind-particle","sig-wave","swell","current-particle","water-temp","temp","sig-wave-height"].some(u=>u===g)),m=this.otherCheckList.some(g=>["navareas","eca-zones","load-lines","voluntary-reporting-area","war-zones","special-area","ice-areas"].some(u=>u===g)),d=s||m;this.mapFeather==="nautical"?(this.tempFeatherCount=1,c&&(this.tempFeather="nautical",this.$emit("mapFeather","light"))):this.mapFeather==="satellite"?(this.tempFeatherCount=1,c&&(this.tempFeather="satellite",this.$emit("mapFeather","dark"))):(!c&&this.tempFeather==="nautical"&&(this.tempFeather="",this.$emit("mapFeather","nautical")),!c&&this.tempFeather==="satellite"&&(this.tempFeather="",this.$emit("mapFeather","satellite")),d?((o=this.map)!=null&&o.getLayer("country-boundaries")&&this.map.setLayoutProperty("country-boundaries","visibility","visible"),(e=this.map)!=null&&e.getLayer("water-outline2")&&this.map.setLayoutProperty("water-outline2","visibility","visible")):((a=this.map)!=null&&a.getLayer("country-boundaries")&&this.map.setLayoutProperty("country-boundaries","visibility","none"),(r=this.map)!=null&&r.getLayer("water-outline2")&&this.map.setLayoutProperty("water-outline2","visibility","none"))),s?((i=this.map)!=null&&i.getLayer("ramp-color-layer")&&this.map.moveLayer("ramp-color-layer","empty-layer-0"),(l=this.map)!=null&&l.getLayer("particle-layer")&&this.map.moveLayer("particle-layer","empty-layer-0"),setTimeout(()=>{var g,u;(g=this.map)!=null&&g.getLayer("sig-wave-height-layer")&&this.map.moveLayer("sig-wave-height-layer","empty-layer-0"),(u=this.map)!=null&&u.getLayer("sig-wave-height-label-layer")&&this.map.moveLayer("sig-wave-height-label-layer","empty-layer-0")},1e3)):(n=this.map)!=null&&n.getLayer("ramp-color-layer")&&this.map.moveLayer("ramp-color-layer","empty-layer-2")}}},tempFeatherCount:{handler(){this.tempFeatherCount>=2&&(this.tempFeather="")}}},methods:{handleChangeOtherChecklist(o){this.otherCheckList=o,this.layerVersion=this.layerVersion+1},handleChangeAutoActive(o){this.autoActive=o,this.layerVersion=this.layerVersion+1},handleChangeWeatherChecklist(o){this.weatherCheckList=o,this.layerVersion=this.layerVersion+1}}},ry={id:"map-gl4-home",ref:"mapHomeGl4",class:"map-gl4-home"};function ly(o,e,a,r,i,l){const n=t.resolveComponent("IdmOtherLayer"),c=t.resolveComponent("IdmWeatherLayer"),s=t.resolveComponent("IdmTropicals"),m=t.resolveComponent("IdmSpot"),d=t.resolveComponent("IdmMeasure"),g=t.resolveComponent("IdmMarker"),u=t.resolveComponent("IdmBottomBar"),y=t.resolveComponent("IdmBottomTimeLine"),p=t.resolveComponent("IdmBottomTimePlayer");return t.openBlock(),t.createElementBlock("div",ry,[t.createVNode(n,t.mergeProps({ref:"idmOtherLayers",simple:a.simple,token:a.token,"default-meteo-token":i.defaultMeteoToken,map:a.map,"before-layer":"empty-layer-1",gateway:i.gateway,"assist-gateway":i.assistGateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs,{onOtherCheckList:l.handleChangeOtherChecklist,onMapFeather:e[0]||(e[0]=h=>o.$emit("mapFeather",h)),onTempFeatherCount:e[1]||(e[1]=h=>i.tempFeatherCount=i.tempFeatherCount+1)}),null,16,["simple","token","default-meteo-token","map","gateway","assist-gateway","forecast-model","map-feather","onOtherCheckList"]),t.createVNode(c,t.mergeProps({ref:"idmWeatherLayers",simple:a.simple,map:a.map,"before-layer":"empty-layer-2",token:a.token,"default-meteo-token":i.defaultMeteoToken,gateway:i.gateway,"assist-gateway":i.assistGateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs,{onAutoActive:l.handleChangeAutoActive,onWeatherCheckList:l.handleChangeWeatherChecklist}),null,16,["simple","map","token","default-meteo-token","gateway","assist-gateway","forecast-model","map-feather","onAutoActive","onWeatherCheckList"]),t.createVNode(s,t.mergeProps({ref:"idmTropicals",simple:a.simple,map:a.map,token:a.token,"default-meteo-token":i.defaultMeteoToken,tropicals:i.tropicals,"before-layer":"empty-layer-4",gateway:i.gateway,"assist-gateway":i.assistGateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs),null,16,["simple","map","token","default-meteo-token","tropicals","gateway","assist-gateway","forecast-model","map-feather"]),t.createVNode(m,t.mergeProps({ref:"idmSpot",simple:a.simple,map:a.map,token:a.token,"default-meteo-token":i.defaultMeteoToken,gateway:i.gateway,"forecast-model":a.forecastModel,"map-feather":a.mapFeather},o.$attrs),null,16,["simple","map","token","default-meteo-token","gateway","forecast-model","map-feather"]),t.createVNode(d,t.mergeProps({simple:a.simple,map:a.map,"map-feather":a.mapFeather},o.$attrs),null,16,["simple","map","map-feather"]),a.simple?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(g,t.mergeProps({key:0,simple:a.simple,map:a.map,"map-feather":a.mapFeather,gateway:i.gateway,"default-meteo-token":i.defaultMeteoToken,token:a.token},o.$attrs),null,16,["simple","map","map-feather","gateway","default-meteo-token","token"])),!a.simple&&!a.showTimeline?(t.openBlock(),t.createBlock(u,t.mergeProps({key:1,ref:"idmBottomBar","forecast-model":a.forecastModel,"weather-check-list":i.weatherCheckList,"map-feather":a.mapFeather,gateway:i.gateway,"default-meteo-token":i.defaultMeteoToken,token:a.token},o.$attrs),null,16,["forecast-model","weather-check-list","map-feather","gateway","default-meteo-token","token"])):t.createCommentVNode("",!0),!a.simple&&a.showTimeline?(t.openBlock(),t.createBlock(y,t.mergeProps({key:2,ref:"idmBottomBar","forecast-model":a.forecastModel,"weather-check-list":i.weatherCheckList,"map-feather":a.mapFeather,gateway:i.gateway,"default-meteo-token":i.defaultMeteoToken,token:a.token},o.$attrs),null,16,["forecast-model","weather-check-list","map-feather","gateway","default-meteo-token","token"])):t.createCommentVNode("",!0),a.simple?(t.openBlock(),t.createBlock(p,t.mergeProps({key:3,ref:"idmBottomBar","player-bottom":i.playerBottom,"bg-class":a.simple?"bg-background":"","weather-check-list":i.weatherCheckList,"map-feather":a.mapFeather,disabled:!0},o.$attrs),null,16,["player-bottom","bg-class","weather-check-list","map-feather"])):t.createCommentVNode("",!0)],512)}const Ya=K(iy,[["render",ly]]),w1="";class Ua{constructor(e="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImNsYmY5M3I0YTAwMDE4Ymx0NWJ4emFwNWMiLCJyb2xlIjoyMDQ3LCJpYXQiOjE2NzA1NTM0NzAsImV4cCI6Mzg3ODA3MzQ3MH0.MxTv0yLGarZCtOSCZfJHMqrXNMNN0-OL4gBGKGcYcc8",{hifleet:a=!1}){pe(this,"originStyle");pe(this,"mapboxStyle");pe(this,"i4");pe(this,"hi");pe(this,"td");pe(this,"windy");var r,i,l,n,c,s,m,d,g,u,y,p,h,f,w,b,A,x,C,k,_,z,P,T,V,H,O,J,se,ne,N,j,W,Q,G,B,U,S,ee,ce,ge,ue,oe,he,fe,_e,Y,ie,Fe,Ge,De,ve,je,Ve,Te,Re,We,Ze,Be,xe,ke,ze,Xe,He,Oe,Me,at,it,rt,lt,nt,st,ct,mt,dt,ht,pt,gt,ut,ft,yt,bt,wt,xt,kt,At,Lt,Ct,vt,zt,_t,St,Nt,Mt,Pt,Vt,Tt,Et,Dt,Rt,Bt,It,Ft,Gt,jt,Pe,Ee,Wt,Ye,Zt,et,Ae,Ue,te,Le,X,Z,Je,Ie,Se,I,Xt,q,Ce,Ke,tt,ot,R,Qe,F,qe,Ot,ae,$t,re,go,uo,fo,yo,bo,wo,xo,ko,Ao,Lo,Co,vo,zo,_o,So,No,ai,ii,ri,li,ni,si,ci,mi,di,hi,pi,gi,ui,fi,yi,bi,wi,xi,ki,Ai,Li,Ci,vi,zi,_i,Si,Ni,Mi,Pi,Vi,Ti,Ei,Di,Ri,Bi,Ii,Fi,Gi,ji,Wi,Zi,Xi,Hi,Oi,Yi,Ui,Ji,Ki,Qi,qi,$i,er,tr;this.i4={source:{type:"raster",tiles:["https://ossimg.ormwx.com/nautical/{z}/{x}/{y}.png"],tileSize:256},layer:{id:"i4",type:"raster",source:"i4",minzoom:1,maxzoom:18,layout:{visibility:"visible"}}},this.hi={source:{type:"raster",tiles:[`https://assist0.ormwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${e}`,`https://assist1.ormwx.com/api/arc/hifleets/{z}/{y}/{x}/nauticalmap?tk=${e}`],tileSize:256},layer:{id:"hi",type:"raster",source:"hi",minZoom:1,maxZoom:18,layout:{visibility:"visible"}}},this.originStyle={light:{version:8,name:"light",metadata:{"mapbox:print":{width:8.5,height:11,units:"in",format:"png",resolution:300},"mapbox:type":"default","mapbox:trackposition":!0,"mapbox:autocomposite":!0,"mapbox:sdk-support":{android:"11.0.0",ios:"11.0.0",js:"3.0.0"},"mapbox:origin":"outdoors-v12","mapbox:groups":{"Terrain, terrain-labels":{name:"Terrain, terrain-labels",collapsed:!0},"Administrative boundaries, admin":{name:"Administrative boundaries, admin",collapsed:!0},"Land & water, built":{name:"Land & water, built",collapsed:!0},"Terrain, surface":{name:"Terrain, surface",collapsed:!0},"Land & water, land":{name:"Land & water, land",collapsed:!1},"Natural features, natural-labels":{name:"Natural features, natural-labels",collapsed:!0},e9bb8e77353431519f7918998e9079d9:{name:"Group",collapsed:!1},"Walking, cycling, etc., barriers-bridges":{name:"Walking, cycling, etc., barriers-bridges",collapsed:!0},"Place labels, place-labels":{name:"Place labels, place-labels",collapsed:!1},"Transit, ferries":{name:"Transit, ferries",collapsed:!0},"Transit, elevated":{name:"Transit, elevated",collapsed:!0},"Walking, cycling, etc., tunnels":{name:"Walking, cycling, etc., tunnels",collapsed:!0},"Terrain, land":{name:"Terrain, land",collapsed:!0},"Road network, tunnels-case":{name:"Road network, tunnels-case",collapsed:!0},"Walking, cycling, etc., walking-cycling-labels":{name:"Walking, cycling, etc., walking-cycling-labels",collapsed:!0},"Walking, cycling, etc., surface":{name:"Walking, cycling, etc., surface",collapsed:!0},"Road network, surface-icons":{name:"Road network, surface-icons",collapsed:!0},"Land & water, water":{name:"Land & water, water",collapsed:!1}}},center:[104.01743114258029,17.078999978347557],zoom:1.9133216316430233,bearing:0,pitch:0,lights:[],fog:{range:[.5,10]},sources:{composite:{url:"mapbox://mapbox.mapbox-streets-v8,mapbox.mapbox-terrain-v2,mapbox.mapbox-bathymetry-v2,mapbox.country-boundaries-v1,neatchenheng.d44z21eg,neatchenheng.82kqbc1q,neatchenheng.a4ifbysm,neatchenheng.27issko0,neatchenheng.9uwc9x7l,neatchenheng.7y3kpvvv,neatchenheng.dlkkohie",type:"vector"},i4:this.i4.source,hi:this.hi.source},sprite:"mapbox://sprites/neatchenheng/cmd894dwn036m01rf7anc0k0d/bph0p8ithotzwly53az7lwdmv",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"equirectangular"},layers:[{id:"land",type:"background",layout:{},paint:{"background-color":"#e9ebed"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},maxzoom:12,type:"fill",source:"composite",id:"landcover",paint:{"fill-color":["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","crop","hsla(68, 55%, 70%, 0.6)","grass","hsla(98, 50%, 74%, 0.6)","snow","hsl(205, 45%, 95%)","hsl(98, 48%, 67%)"],"fill-opacity":["interpolate",["exponential",1.5],["zoom"],8,.8,12,0],"fill-antialias":!1},"source-layer":"landcover"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"fill",source:"composite",id:"national-park",paint:{"fill-color":"hsl(98, 38%, 68%)","fill-opacity":["interpolate",["linear"],["zoom"],5,0,6,.6,12,.2]},"source-layer":"landuse_overlay"},{minzoom:9,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"line",source:"composite",id:"national-park_tint-band",paint:{"line-color":"hsl(98, 38%, 68%)","line-width":["interpolate",["exponential",1.5],["zoom"],9,1,14,8],"line-blur":["interpolate",["exponential",1.5],["zoom"],9,1,14,8]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["all",[">=",["to-number",["get","sizerank"]],0],["match",["get","class"],["agriculture","wood","grass","scrub","glacier","pitch","sand"],["step",["zoom"],!1,11,!0],"residential",["step",["zoom"],!0,10,!1],["park","airport"],["step",["zoom"],!1,8,["case",["==",["get","sizerank"],1],!0,!1],10,!0],["facility","industrial"],["step",["zoom"],!1,12,!0],"rock",["step",["zoom"],!1,11,!0],"cemetery",["step",["zoom"],!1,11,!0],"school",["step",["zoom"],!1,11,!0],"hospital",["step",["zoom"],!1,11,!0],"commercial_area",["step",["zoom"],!1,11,!0],!1],["<=",["-",["to-number",["get","sizerank"]],["interpolate",["exponential",1.5],["zoom"],12,0,18,14]],14]],type:"fill",source:"composite",id:"landuse",paint:{"fill-color":["interpolate",["linear"],["zoom"],15,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsl(60, 0%, 85%)","school","hsl(40, 45%, 78%)","commercial_area","hsl(55, 45%, 85%)","residential","hsl(60, 7%, 87%)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"],16,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsla(60, 0%, 85%, 0.5)","school","hsl(40, 45%, 78%)","commercial_area","hsla(55, 45%, 85%, 0.5)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"]],"fill-opacity":["interpolate",["linear"],["zoom"],8,["match",["get","class"],"residential",.8,.2],10,["match",["get","class"],"residential",0,1]],"fill-antialias":!1},"source-layer":"landuse"},{minzoom:15,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"pitch"],type:"line",source:"composite",id:"pitch-outline",paint:{"line-color":"hsl(0, 0%, 69%)"},"source-layer":"landuse"},{id:"waterway-shadow",type:"line",source:"composite","source-layer":"waterway",minzoom:10,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"],visibility:"none"},paint:{"line-color":"hsl(224, 79%, 69%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"line-translate-anchor":"viewport","line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water-shadow",type:"fill",source:"composite","source-layer":"water",minzoom:10,layout:{visibility:"none"},paint:{"fill-color":"hsl(224, 79%, 69%)","fill-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"fill-translate-anchor":"viewport"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"waterway",type:"line",source:"composite","source-layer":"waterway",minzoom:8,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"]},paint:{"line-color":"hsl(198, 100%, 37%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water",type:"fill",source:"composite","source-layer":"water",layout:{},paint:{"fill-color":"hsl(215, 92%, 81%)"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},maxzoom:8,type:"fill",source:"composite",id:"water-depth",paint:{"fill-antialias":!1,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0.35)",200,"hsla(205, 75%, 63%, 0.35)",7e3,"hsla(205, 75%, 56%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0)",200,"hsla(205, 75%, 63%, 0)",7e3,"hsla(205, 75%, 53%, 0)"]]},"source-layer":"depth"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,.25,10.5,.15]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland-pattern",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,0,10.5,1],"fill-pattern":"wetland","fill-translate-anchor":"viewport"},"source-layer":"landuse_overlay"},{minzoom:13,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"Polygon"]],type:"fill",source:"composite",id:"land-structure-polygon",paint:{"fill-color":"hsl(0, 0%, 69%)"},"source-layer":"structure"},{minzoom:13,layout:{"line-cap":"square",visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"LineString"]],type:"line",source:"composite",id:"land-structure-line",paint:{"line-width":["interpolate",["exponential",1.99],["zoom"],14,.75,20,40],"line-color":"hsl(60, 20%, 85%)"},"source-layer":"structure"},{id:"empty-layer-0",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-1",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"country-boundaries",type:"fill",source:"composite","source-layer":"country_boundaries",paint:{"fill-color":"rgb(200, 200, 200)"},layout:{visibility:"none"}},{id:"empty-layer-2",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-3",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-4",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"water-outline2",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgb(150, 150, 150)"},layout:{visibility:"none"},source:"composite","source-layer":"water"},{id:"water-outline",type:"line",paint:{"line-color":"hsl(0, 0%, 70%)","line-width":["interpolate",["linear"],["zoom"],0,1.5,4,1]},source:"composite","source-layer":"water"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-bg",paint:{"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"rgb(173, 169, 170)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary",paint:{"line-color":"rgb(143, 143, 143)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-disputed",paint:{"line-color":"rgb(95, 93, 94)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]},"source-layer":"admin"},{minzoom:13,layout:{"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"waterway-label",paint:{"text-color":"hsl(205, 43%, 90%)","text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport"},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"natural-line-label",paint:{"text-halo-width":.5,"text-halo-color":"hsl(60, 17%, 84%)","text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["get","maki_beta"]],["image",["get","maki"]]],["image",["get","maki"]]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.8]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.8]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"natural-point-label",paint:{"icon-opacity":["step",["zoom"],["step",["get","sizerank"],0,5,1],17,["step",["get","sizerank"],0,13,1]],"text-halo-color":"hsl(60, 20%, 98%)","text-halo-width":.5,"text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"water-line-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(205, 71%, 90%)","hsl(205, 43%, 90%)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"water-point-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(205, 71%, 90%)","hsl(205, 43%, 90%)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:10,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",11,10.5],15,["match",["get","type"],"suburb",15,14]],visibility:"none"},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["match",["get","class"],["settlement_subdivision","disputed_settlement_subdivision"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],3],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-subdivision-label",paint:{"text-halo-color":"hsla(60, 25%, 100%, 0.75)","text-halo-width":1,"text-color":"hsl(230, 29%, 36%)","text-halo-blur":.5},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],11,9,10],6,["step",["get","symbolrank"],14,9,12,12,10],8,["step",["get","symbolrank"],16,9,14,12,12,15,10],13,["step",["get","symbolrank"],22,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-justify":"auto",visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-minor-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],13,6,11],6,["step",["get","symbolrank"],18,6,16,7,14],8,["step",["get","symbolrank"],20,9,16,10,14],15,["step",["get","symbolrank"],24,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-major-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:3,layout:{"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9,6,8,7,7],9,["step",["get","symbolrank"],21,6,16,7,14]],"text-transform":"uppercase","text-font":["DIN Pro Bold","Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"state-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-opacity":.5},"source-layer":"place_label"},{minzoom:1,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-radial-offset":["step",["zoom"],.6,8,0],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],12.100000000000001,4,9.9,5,8.8],9,["step",["get","symbolrank"],24.200000000000003,4,20.900000000000002,5,18.700000000000003]]},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"country-label",paint:{"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":"hsl(0, 0.00%, 13.70%)","text-halo-color":["interpolate",["linear"],["zoom"],2,"hsla(60, 25%, 100%, 0.75)",3,"hsl(60, 25%, 100%)"],"text-halo-width":1.25},"source-layer":"place_label"},{minzoom:.75,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-size":["interpolate",["exponential",.5],["zoom"],0,10,2.5,15],"text-transform":"uppercase","text-letter-spacing":.05},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:3,filter:["==",["get","class"],"continent"],type:"symbol",source:"composite",id:"continent-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":["interpolate",["linear"],["zoom"],0,"hsla(60, 25%, 100%, 0.75)",3,"hsl(60, 25%, 100%)"],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,.8,1.5,.5,2.5,0]},"source-layer":"natural_label"},{id:"world-12nm-v4-20231025",minzoom:3,type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2],"line-translate":[0,0]},source:"composite","source-layer":"eez_12nm_new1-6jzkww",layout:{"line-join":"round",visibility:"none"}},{id:"china-taiwan",type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2]},layout:{"line-join":"round",visibility:"none"},source:"composite","source-layer":"eez-d4udtm"},{id:"ne-10m-outline",type:"line",paint:{"line-color":"hsl(172, 0%, 33%)"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv",layout:{visibility:"none"}},{id:"ne-10m-label",type:"symbol",paint:{"text-halo-color":"hsl(0, 0%, 100%)","text-halo-width":1,"text-halo-blur":1},layout:{"text-field":["to-string",["get","name"]],"text-size":12,visibility:"none"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"china-route-line",type:"line",paint:{"line-color":"rgba(119, 239, 157, 1)","line-width":2},source:"composite","source-layer":"china_route-bdtx5d",layout:{visibility:"none"}},{id:"china-route-fill",type:"fill",paint:{"fill-color":"rgba(119, 239, 157, 1)","fill-opacity":.2},source:"composite","source-layer":"china_route-bdtx5d",filter:["match",["geometry-type"],["Polygon"],!0,!1],layout:{visibility:"none"}},{id:"china-route-label",type:"symbol",paint:{"text-color":"rgba(0, 0, 0, 1)"},source:"composite","source-layer":"china_route-bdtx5d",layout:{"text-field":["to-string",["get","route_name"]],"text-size":10,"text-offset":[0,1.6],visibility:"none"}},{id:"ice-area-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(199, 239, 236, 0.7)"},source:"composite","source-layer":"ICE_AREA-6oqazd",layout:{visibility:"none"}},{id:"ice-area-line",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgba(167, 211, 208, 0.7)"},layout:{visibility:"none"},source:"composite","source-layer":"ICE_AREA-6oqazd"},{id:"tide-stations",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(0, 0, 0)","text-opacity":["step",["zoom"],0,4,1]},layout:{visibility:"none","text-field":["to-string",["get","Location_EN"]],"text-size":10,"icon-image":"tide","icon-size":1,"icon-offset":[0,-13],"text-offset":[0,1.6],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},source:"composite","source-layer":"tide_station_cn-8xvt91"},{id:"loadlines-label",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(0, 0, 0)"},layout:{"text-field":["to-string",["get","name"]],"text-size":10,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],visibility:"none","text-offset":[0,1]},source:"composite","source-layer":"loadlines-b6mgr8"},{id:"loadlines-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":["match",["get","val"],["LLGreen"],"rgba(164, 214, 217, 0.6)",["LLBlue"],"rgba(53, 121, 194, 0.6)",["LLRed"],"rgba(217, 150, 151, 0.6)",["LLSUMMER"],"rgba(111, 110, 212, 0.6)","rgba(255, 255, 255, 0.6)"],"fill-outline-color":"rgba(255, 255, 255, 0.3)"},layout:{visibility:"none"},source:"composite","source-layer":"loadlines-b6mgr8"}],created:"2025-07-18T03:20:31.079Z",modified:"2025-07-31T03:57:21.238Z",id:"cmd894dwn036m01rf7anc0k0d",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1},dark:{version:8,name:"dark",metadata:{"mapbox:print":{width:8.5,height:11,units:"in",format:"png",resolution:300},"mapbox:type":"default","mapbox:trackposition":!0,"mapbox:autocomposite":!0,"mapbox:sdk-support":{android:"11.0.0",ios:"11.0.0",js:"3.0.0"},"mapbox:origin":"outdoors-v12","mapbox:groups":{"Terrain, terrain-labels":{name:"Terrain, terrain-labels",collapsed:!0},"Administrative boundaries, admin":{name:"Administrative boundaries, admin",collapsed:!1},"Land & water, built":{name:"Land & water, built",collapsed:!0},"Terrain, surface":{name:"Terrain, surface",collapsed:!0},"Land & water, land":{name:"Land & water, land",collapsed:!1},"Natural features, natural-labels":{name:"Natural features, natural-labels",collapsed:!0},e9bb8e77353431519f7918998e9079d9:{name:"Group",collapsed:!1},"Walking, cycling, etc., barriers-bridges":{name:"Walking, cycling, etc., barriers-bridges",collapsed:!0},"Place labels, place-labels":{name:"Place labels, place-labels",collapsed:!1},"Transit, ferries":{name:"Transit, ferries",collapsed:!0},"Transit, elevated":{name:"Transit, elevated",collapsed:!0},"Walking, cycling, etc., tunnels":{name:"Walking, cycling, etc., tunnels",collapsed:!0},"Terrain, land":{name:"Terrain, land",collapsed:!0},"Road network, tunnels-case":{name:"Road network, tunnels-case",collapsed:!0},"Walking, cycling, etc., walking-cycling-labels":{name:"Walking, cycling, etc., walking-cycling-labels",collapsed:!0},"Walking, cycling, etc., surface":{name:"Walking, cycling, etc., surface",collapsed:!0},"Road network, surface-icons":{name:"Road network, surface-icons",collapsed:!0},"Land & water, water":{name:"Land & water, water",collapsed:!1}}},center:[90.22129259388525,-3.2084663486364606],zoom:1.2556266457717493,bearing:0,pitch:0,lights:[],fog:{range:[.5,10]},sources:{composite:{url:"mapbox://mapbox.mapbox-streets-v8,mapbox.mapbox-terrain-v2,mapbox.mapbox-bathymetry-v2,mapbox.country-boundaries-v1,neatchenheng.d44z21eg,neatchenheng.82kqbc1q,neatchenheng.a4ifbysm,neatchenheng.27issko0,neatchenheng.9uwc9x7l,neatchenheng.7y3kpvvv,neatchenheng.dlkkohie",type:"vector"}},sprite:"mapbox://sprites/neatchenheng/cmdqwez32005b01re2w0k3zk4/3w0qcixxrxxonxutm2qkollqi",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"equirectangular"},layers:[{id:"land",type:"background",layout:{},paint:{"background-color":["interpolate",["linear"],["zoom"],9,"rgb(2, 43, 59)",11,"rgb(36, 36, 36)"]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},maxzoom:12,type:"fill",source:"composite",id:"landcover",paint:{"fill-color":["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","crop","hsla(68, 55%, 70%, 0.6)","grass","hsla(98, 50%, 74%, 0.6)","snow","hsl(205, 45%, 95%)","hsl(98, 48%, 67%)"],"fill-opacity":["interpolate",["exponential",1.5],["zoom"],8,.8,12,0],"fill-antialias":!1},"source-layer":"landcover"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"fill",source:"composite",id:"national-park",paint:{"fill-color":"hsl(98, 38%, 68%)","fill-opacity":["interpolate",["linear"],["zoom"],5,0,6,.6,12,.2]},"source-layer":"landuse_overlay"},{minzoom:9,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"national_park"],type:"line",source:"composite",id:"national-park_tint-band",paint:{"line-color":"hsl(98, 38%, 68%)","line-width":["interpolate",["exponential",1.5],["zoom"],9,1,14,8],"line-blur":["interpolate",["exponential",1.5],["zoom"],9,1,14,8]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["all",[">=",["to-number",["get","sizerank"]],0],["match",["get","class"],["agriculture","wood","grass","scrub","glacier","pitch","sand"],["step",["zoom"],!1,11,!0],"residential",["step",["zoom"],!0,10,!1],["park","airport"],["step",["zoom"],!1,8,["case",["==",["get","sizerank"],1],!0,!1],10,!0],["facility","industrial"],["step",["zoom"],!1,12,!0],"rock",["step",["zoom"],!1,11,!0],"cemetery",["step",["zoom"],!1,11,!0],"school",["step",["zoom"],!1,11,!0],"hospital",["step",["zoom"],!1,11,!0],"commercial_area",["step",["zoom"],!1,11,!0],!1],["<=",["-",["to-number",["get","sizerank"]],["interpolate",["exponential",1.5],["zoom"],12,0,18,14]],14]],type:"fill",source:"composite",id:"landuse",paint:{"fill-color":["interpolate",["linear"],["zoom"],15,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsl(60, 0%, 85%)","school","hsl(40, 45%, 78%)","commercial_area","hsl(55, 45%, 85%)","residential","hsl(60, 7%, 87%)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"],16,["match",["get","class"],"wood","hsla(103, 50%, 60%, 0.8)","scrub","hsla(98, 47%, 68%, 0.6)","agriculture","hsla(98, 50%, 74%, 0.6)","park",["match",["get","type"],["garden","playground","zoo"],"hsl(98, 38%, 68%)","hsl(98, 55%, 70%)"],"grass","hsla(98, 50%, 74%, 0.6)","airport","hsl(230, 40%, 82%)","cemetery","hsl(98, 45%, 75%)","glacier","hsl(205, 45%, 95%)","hospital","hsl(20, 45%, 82%)","pitch","hsl(88, 65%, 75%)","sand","hsl(69, 60%, 72%)","rock","hsla(60, 0%, 85%, 0.5)","school","hsl(40, 45%, 78%)","commercial_area","hsla(55, 45%, 85%, 0.5)",["facility","industrial"],"hsl(230, 20%, 85%)","hsl(60, 12%, 72%)"]],"fill-opacity":["interpolate",["linear"],["zoom"],8,["match",["get","class"],"residential",.8,.2],10,["match",["get","class"],"residential",0,1]],"fill-antialias":!1},"source-layer":"landuse"},{minzoom:15,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, land"},filter:["==",["get","class"],"pitch"],type:"line",source:"composite",id:"pitch-outline",paint:{"line-color":"hsl(0, 0%, 69%)"},"source-layer":"landuse"},{id:"waterway-shadow",type:"line",source:"composite","source-layer":"waterway",minzoom:10,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"],visibility:"none"},paint:{"line-color":"hsl(224, 79%, 69%)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"line-translate-anchor":"viewport","line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water-shadow",type:"fill",source:"composite","source-layer":"water",minzoom:10,layout:{visibility:"none"},paint:{"fill-color":"hsl(224, 79%, 69%)","fill-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"fill-translate-anchor":"viewport"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"waterway",type:"line",source:"composite","source-layer":"waterway",minzoom:8,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":["step",["zoom"],"miter",11,"round"],visibility:"none"},paint:{"line-color":"rgb(20, 66, 92)","line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{id:"water",type:"fill",source:"composite","source-layer":"water",layout:{},paint:{"fill-color":"rgb(20, 66, 92)"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"}},{layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},maxzoom:8,type:"fill",source:"composite",id:"water-depth",paint:{"fill-antialias":!1,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0.35)",200,"hsla(205, 75%, 63%, 0.35)",7e3,"hsla(205, 75%, 56%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(205, 75%, 70%, 0)",200,"hsla(205, 75%, 63%, 0)",7e3,"hsla(205, 75%, 53%, 0)"]]},"source-layer":"depth"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,.25,10.5,.15]},"source-layer":"landuse_overlay"},{minzoom:5,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, water"},filter:["match",["get","class"],["wetland","wetland_noveg"],!0,!1],type:"fill",source:"composite",id:"wetland-pattern",paint:{"fill-color":"hsl(194, 38%, 74%)","fill-opacity":["interpolate",["linear"],["zoom"],10,0,10.5,1],"fill-pattern":"wetland","fill-translate-anchor":"viewport"},"source-layer":"landuse_overlay"},{minzoom:13,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"Polygon"]],type:"fill",source:"composite",id:"land-structure-polygon",paint:{"fill-color":"hsl(0, 0%, 69%)"},"source-layer":"structure"},{minzoom:13,layout:{"line-cap":"square",visibility:"none"},metadata:{"mapbox:featureComponent":"land-and-water","mapbox:group":"Land & water, built"},filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"LineString"]],type:"line",source:"composite",id:"land-structure-line",paint:{"line-width":["interpolate",["exponential",1.99],["zoom"],14,.75,20,40],"line-color":"hsl(60, 20%, 85%)"},"source-layer":"structure"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-bg",paint:{"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"rgb(0, 96, 107)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary",paint:{"line-color":"rgb(0, 96, 107)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]]},"source-layer":"admin"},{minzoom:1,layout:{},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-disputed",paint:{"line-color":"rgb(0, 96, 107)","line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]},"source-layer":"admin"},{id:"empty-layer-0",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-1",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"country-boundaries",type:"fill",source:"composite","source-layer":"country_boundaries",paint:{"fill-color":["interpolate",["linear"],["zoom"],0,"rgb(2, 45, 62)",22,"rgb(2, 45, 62)"]},layout:{visibility:"none"}},{id:"empty-layer-2",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-3",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-4",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"water-outline",type:"line",paint:{"line-color":"rgb(0, 96, 107)","line-width":["interpolate",["linear"],["zoom"],0,1.5,4,1]},source:"composite","source-layer":"water"},{minzoom:13,layout:{"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"waterway-label",paint:{"text-color":"hsl(205, 43%, 90%)","text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport"},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"natural-line-label",paint:{"text-halo-width":.5,"text-halo-color":"hsl(60, 17%, 84%)","text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:4,layout:{"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["get","maki_beta"]],["image",["get","maki"]]],["image",["get","maki"]]],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.8]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.8]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"natural-point-label",paint:{"icon-opacity":["step",["zoom"],["step",["get","sizerank"],0,5,1],17,["step",["get","sizerank"],0,13,1]],"text-halo-color":"hsl(60, 20%, 98%)","text-halo-width":.5,"text-halo-blur":.5,"text-color":"hsl(340, 10%, 38%)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"LineString"]],type:"symbol",source:"composite",id:"water-line-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"rgb(1, 121, 137)","rgb(1, 121, 137)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:1,layout:{"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":["DIN Pro Italic","Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10]},metadata:{"mapbox:featureComponent":"natural-features","mapbox:group":"Natural features, natural-labels"},filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],1],60,["<",["distance-from-center"],1.5],70,["<",["distance-from-center"],2]],["==",["geometry-type"],"Point"]],type:"symbol",source:"composite",id:"water-point-label",paint:{"text-color":["match",["get","class"],["bay","ocean","sea"],"rgb(3, 117, 129)","rgb(3, 117, 129)"],"text-halo-color":"hsla(60, 17%, 84%, 0.5)"},"source-layer":"natural_label"},{minzoom:10,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",11,10.5],15,["match",["get","type"],"suburb",15,14]],visibility:"none"},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["match",["get","class"],["settlement_subdivision","disputed_settlement_subdivision"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],3],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-subdivision-label",paint:{"text-halo-color":"hsla(60, 25%, 100%, 0.75)","text-halo-width":1,"text-color":"hsl(230, 29%, 36%)","text-halo-blur":.5},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],11,9,10],6,["step",["get","symbolrank"],14,9,12,12,10],8,["step",["get","symbolrank"],16,9,14,12,12,15,10],13,["step",["get","symbolrank"],22,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],"text-justify":"auto",visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-minor-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],13,6,11],6,["step",["get","symbolrank"],18,6,16,7,14],8,["step",["get","symbolrank"],20,9,16,10,14],15,["step",["get","symbolrank"],24,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-major-label",paint:{"text-color":"hsl(230, 29%, 0%)","text-halo-color":"hsl(60, 25%, 100%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:3,layout:{"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9,6,8,7,7],9,["step",["get","symbolrank"],21,6,16,7,14]],"text-transform":"uppercase","text-font":["DIN Pro Bold","Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"state-label",paint:{"text-color":"rgb(0, 170, 189)","text-halo-color":"rgb(3, 3, 3)","text-halo-width":1,"text-opacity":.5},"source-layer":"place_label"},{minzoom:1,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-radial-offset":["step",["zoom"],.6,8,0],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],12.100000000000001,4,9.9,5,8.8],9,["step",["get","symbolrank"],24.200000000000003,4,20.900000000000002,5,18.700000000000003]]},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"country-label",paint:{"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":"rgb(2, 141, 156)","text-halo-color":["interpolate",["linear"],["zoom"],2,"rgb(252, 252, 252)",3,"rgb(250, 250, 250)"]},"source-layer":"place_label"},{minzoom:.75,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-size":["interpolate",["exponential",.5],["zoom"],0,10,2.5,15],"text-transform":"uppercase","text-letter-spacing":.05},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:3,filter:["==",["get","class"],"continent"],type:"symbol",source:"composite",id:"continent-label",paint:{"text-color":"rgb(0, 170, 189)","text-halo-color":["interpolate",["linear"],["zoom"],0,"rgba(0, 0, 0, 0.75)",3,"rgb(5, 5, 5)"],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,.8,1.5,.5,2.5,0]},"source-layer":"natural_label"},{id:"world-12nm-v4-20231025",minzoom:3,type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2],"line-translate":[0,0]},source:"composite","source-layer":"eez_12nm_new1-6jzkww",layout:{"line-join":"round",visibility:"none"}},{id:"china-taiwan",type:"line",paint:{"line-color":"hsl(2, 88%, 55%)","line-opacity":.62,"line-width":["interpolate",["linear"],["zoom"],0,2,22,2]},layout:{"line-join":"round",visibility:"none"},source:"composite","source-layer":"eez-d4udtm"},{id:"ne-10m-outline",type:"line",paint:{"line-color":"rgb(1, 119, 132)"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv",layout:{visibility:"none"}},{id:"ne-10m-label",type:"symbol",paint:{"text-halo-color":"hsl(0, 0%, 100%)","text-halo-width":0,"text-halo-blur":0,"text-color":"rgb(1, 119, 132)"},layout:{"text-field":["to-string",["get","name"]],"text-size":12,visibility:"none"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"china-route-line",type:"line",paint:{"line-color":"rgba(119, 239, 157, 1)","line-width":2},source:"composite","source-layer":"china_route-bdtx5d",layout:{visibility:"none"}},{id:"china-route-fill",type:"fill",paint:{"fill-color":"rgba(119, 239, 157, 1)","fill-opacity":.2},source:"composite","source-layer":"china_route-bdtx5d",filter:["match",["geometry-type"],["Polygon"],!0,!1],layout:{visibility:"none"}},{id:"china-route-label",type:"symbol",paint:{"text-color":"rgb(255, 255, 255)"},source:"composite","source-layer":"china_route-bdtx5d",layout:{"text-field":["to-string",["get","route_name"]],"text-size":10,"text-offset":[0,1.6],visibility:"none"}},{id:"ice-area-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(199, 239, 236, 0.7)"},source:"composite","source-layer":"ICE_AREA-6oqazd",layout:{visibility:"none"}},{id:"ice-area-line",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgba(167, 211, 208, 0.7)"},layout:{visibility:"none"},source:"composite","source-layer":"ICE_AREA-6oqazd"},{id:"tide-stations",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(255, 255, 255)","text-opacity":["step",["zoom"],0,4,1]},layout:{visibility:"none","text-field":["to-string",["get","Location_EN"]],"text-size":10,"icon-image":"tide","icon-size":1,"icon-offset":[0,-13],"text-offset":[0,1.6],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},source:"composite","source-layer":"tide_station_cn-8xvt91"},{id:"loadlines-label",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(255, 255, 255)"},layout:{"text-field":["to-string",["get","name"]],"text-size":10,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],visibility:"none","text-offset":[0,1]},source:"composite","source-layer":"loadlines-b6mgr8"},{id:"loadlines-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":["match",["get","val"],["LLGreen"],"rgba(164, 214, 217, 0.6)",["LLBlue"],"rgba(53, 121, 194, 0.6)",["LLRed"],"rgba(217, 150, 151, 0.6)",["LLSUMMER"],"rgba(111, 110, 212, 0.6)","rgba(255, 255, 255, 0.6)"],"fill-outline-color":"rgba(255, 255, 255, 0.3)"},layout:{visibility:"none"},source:"composite","source-layer":"loadlines-b6mgr8"}],created:"2025-07-31T04:32:27.422Z",modified:"2025-07-31T04:43:38.610Z",id:"cmdqwez32005b01re2w0k3zk4",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1},satellite:{version:8,name:"satellite",metadata:{"mapbox:type":"default","mapbox:autocomposite":!0,"mapbox:sdk-support":{js:"3.14.0",android:"11.14.0",ios:"11.14.0"},"mapbox:origin":"satellite-streets-v12","mapbox:uiExpandedImports":["basemap"],"mapbox:groups":{"Satellite imagery, land":{name:"Satellite imagery, land",collapsed:!1},"Administrative boundaries, admin":{name:"Administrative boundaries, admin",collapsed:!0},"Place labels, place-labels":{name:"Place labels, place-labels",collapsed:!1}}},center:[55.13,25.12],zoom:12,fog:{range:[1,10],color:["interpolate",["exponential",1.2],["zoom"],5.5,"hsl(240, 12%, 70%)",6,"hsl(0, 0%, 100%)"],"high-color":["interpolate",["exponential",1.2],["zoom"],5.5,"hsl(240, 12%, 7%)",6,"hsl(38, 63%, 84%)"],"space-color":["interpolate",["exponential",1.2],["zoom"],5.5,"hsl(240, 12%, 9%)",6,"hsl(199, 61%, 80%)"],"horizon-blend":["interpolate",["exponential",1.2],["zoom"],5.5,.008,6,.15],"star-intensity":["interpolate",["exponential",1.2],["zoom"],5.5,.1,6,0]},imports:[{id:"basemap",url:"mapbox://styles/mapbox/standard-satellite",config:{lightPreset:"day"},data:{version:8,name:"Mapbox Standard Satellite",metadata:{"mapbox:compatibility":{android:"11.9.0",ios:"11.9.0",js:"3.9.0"},"mapbox:autocomposite":!0,"mapbox:groups":{"road & transit labels":{name:"Road & Transit labels",collapsed:!0},"land & water":{name:"Land & water",collapsed:!0},"road shields":{name:"Road shields",collapsed:!0},"building labels":{name:"Building labels",collapsed:!0},"transit labels":{name:"Transit labels",collapsed:!0},"poi labels":{name:"Poi labels",collapsed:!0},"natural labels":{name:"Natural labels",collapsed:!0},"place labels":{name:"Place labels",collapsed:!0},"administrative boudaries":{name:"Administrative boudaries",collapsed:!0},"roads & transit network":{name:"Roads & transit network",collapsed:!0}}},center:[15.07,48.72],zoom:3.3,bearing:0,pitch:0,lights:[{id:"ambient",type:"ambient",properties:{color:["match",["config","lightPreset"],"dawn","hsl(28, 98%, 93%)","day","hsl(0, 0%, 100%)","dusk","hsl(228, 27%, 29%)","night","hsl(217, 100%, 11%)","hsl(0, 0%, 100%)"],intensity:["match",["config","lightPreset"],"dawn",.75,"day",.8,"dusk",.8,"night",.5,.8]}},{id:"directional",type:"directional",properties:{direction:["match",["config","lightPreset"],"dawn",["literal",[120,50]],"day",["literal",[180,20]],"dusk",["literal",[240,80]],"night",["literal",[270,20]],["literal",[180,20]]],color:["match",["config","lightPreset"],"dawn","hsl(33, 98%, 77%)","day","hsl(0, 0%, 100%)","dusk","hsl(30, 98%, 76%)","night","hsl(0, 0%, 29%)","hsl(0, 0%, 100%)"],intensity:["interpolate",["linear"],["zoom"],12,["match",["config","lightPreset"],"dawn",.5,"day",.2,"dusk",0,"night",0,.2],14,["match",["config","lightPreset"],"dawn",.5,"day",.2,"dusk",.2,"night",.5,.2]],"cast-shadows":!0,"shadow-intensity":["match",["config","lightPreset"],"night",.5,1]}}],terrain:{source:"mapbox-dem",exaggeration:["interpolate",["linear"],["zoom"],6,0,7,1,12,1,13.7,0]},fog:{"vertical-range":[30,120],range:["interpolate",["linear"],["zoom"],13,["literal",[1,20]],15,["literal",[1,4]]],color:["interpolate",["exponential",1.2],["zoom"],5,["interpolate",["linear"],["measure-light","brightness"],.1,"hsla(240, 9%, 55%, 0.2)",.4,"hsla(0, 0%, 100%, 0.2)"],7,["interpolate",["linear"],["measure-light","brightness"],.02,"hsla(213, 63%, 20%, 0.9)",.03,"hsla(30, 65%, 60%, 0.5)",.4,"hsla(10, 79%, 88%, 0.8)",.45,"hsla(200, 60%, 98%, 0.9)"]],"high-color":["interpolate",["exponential",1.2],["zoom"],5,["interpolate",["linear"],["measure-light","brightness"],.1,"hsla(215, 60%, 20%, 1)",.4,"hsla(215, 100%, 80%, 1)"],7,["interpolate",["linear"],["measure-light","brightness"],0,"hsla(228, 38%, 20%, 1)",.05,"hsla(360, 100%, 85%, 1)",.2,"hsla(205, 88%, 86%, 1)",.4,"hsla(270, 65%, 85%, 1)",.45,"hsla(0, 0%, 100%, 1)"]],"space-color":["interpolate",["exponential",1.2],["zoom"],5,"hsl(211, 84%, 0%)",7,["interpolate",["linear"],["measure-light","brightness"],0,"hsl(210, 84%, 5%)",.2,"hsl(210, 40%, 30%)",.4,"hsl(210, 45%, 30%)",.45,"hsl(210, 100%, 80%)"]],"horizon-blend":["interpolate",["exponential",1.2],["zoom"],5,.004,7,["interpolate",["exponential",1.2],["measure-light","brightness"],.35,.03,.4,.07,.45,.03]],"star-intensity":["interpolate",["exponential",1.2],["zoom"],5,.4,7,["interpolate",["exponential",1.2],["measure-light","brightness"],.1,.2,.3,0]]},camera:{"camera-projection":"orthographic"},schema:{roadsBrightness:{default:.7,type:"number",metadata:{"mapbox:title":"Roads brightness","mapbox:description":"Control how bright road network appear in dark styles","mapbox:group":!1}},colorPlaceLabelHighlight:{default:"hsl(5, 80%, 75%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Place label color used when setting highlight state.","mapbox:group":!1}},colorPlaceLabelSelect:{default:"hsl(5, 95%, 70%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Place label color used when setting select state.","mapbox:group":!1}},colorMotorways:{default:"hsl(214, 23%, 80%)",type:"color",metadata:{"mapbox:title":"Motorways","mapbox:description":"Set a custom color for motorway roads.","mapbox:group":"Color"}},colorTrunks:{default:"hsl(235, 20%, 80%)",type:"color",metadata:{"mapbox:title":"Trunk roads","mapbox:description":"Set a custom color for trunk roads.","mapbox:group":"Color"}},colorRoads:{default:"hsl(224, 25%, 75%)",type:"color",metadata:{"mapbox:title":"Roads","mapbox:description":"Set a custom color for roads.","mapbox:group":"Color"}},showPlaceLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Place labels","mapbox:description":"Shows and hides place label layers.","mapbox:group":"Visibility"}},showRoadsAndTransit:{default:!0,type:"boolean",metadata:{"mapbox:title":"Roads and transit network","mapbox:description":"Shows and hides all roads and transit networks.","mapbox:group":"Visibility"}},showPedestrianRoads:{default:!1,type:"boolean",metadata:{"mapbox:title":"Pedestrian roads, paths, trails","mapbox:description":"Shows and hides all pedestrian roads, paths, trails.","mapbox:group":"Visibility"}},showRoadLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Road labels","mapbox:description":"Shows and hides all road labels, including road shields.","mapbox:group":"Visibility"}},showPointOfInterestLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"POI labels","mapbox:description":"Shows or hides all POI icons and text.","mapbox:group":"Visibility"}},showTransitLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Transit labels","mapbox:description":"Shows or hides all transit icons and text.","mapbox:group":"Visibility"}},lightPreset:{default:"day",type:"string",values:["dawn","day","dusk","night"],metadata:{"mapbox:title":"Light preset","mapbox:description":"Switch between 4 time-of-day states: dusk, dawn, day and night.","mapbox:group":"Basemap"}},font:{default:"DIN Pro",type:"string",values:["Alegreya","Alegreya SC","Asap","Barlow","DIN Pro","EB Garamond","Faustina","Frank Ruhl Libre","Heebo","Inter","Lato","League Mono","Montserrat","Manrope","Noto Sans CJK JP","Open Sans","Poppins","Raleway","Roboto","Roboto Mono","Rubik","Source Code Pro","Source Sans Pro","Spectral","Ubuntu"],metadata:{"mapbox:title":"Font","mapbox:description":"Defines font family for the style from predefined options.","mapbox:group":"Typography"}}},sources:{"mapbox-dem":{url:"mapbox://mapbox.mapbox-terrain-dem-v1",type:"raster-dem",tileSize:512},"mapbox://mapbox.satellite":{url:"mapbox://mapbox.satellite",type:"raster",tileSize:256},composite:{url:"mapbox://mapbox.mapbox-bathymetry-v2,mapbox.mapbox-streets-v8-lite,mapbox.mapbox-poi-v2",type:"vector"}},sprite:"mapbox://sprites/mapbox/standard-satellite/46l64mrox16m5svqgseryp8fm",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"globe"},layers:[{id:"mapbox-satellite",type:"raster",source:"mapbox://mapbox.satellite",layout:{},paint:{"raster-emissive-strength":.5}},{id:"water",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"water",layout:{},paint:{"fill-color":"hsl(200, 35%, 28%)","fill-emissive-strength":.4,"fill-opacity":["interpolate",["linear"],["zoom"],10,.8,16,0]}},{id:"water-depth",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"depth",maxzoom:8,layout:{},paint:{"fill-emissive-strength":.4,"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,"hsla(200, 35%, 23%, 0.35)",200,"hsla(200, 35%, 20%, 0.35)",7e3,"hsla(200, 35%, 15%, 0.35)"],8,["interpolate",["linear"],["get","min_depth"],0,"hsla(200, 35%, 30%, 0)",200,"hsla(200, 35%, 25%, 0)",7e3,"hsla(200, 35%, 20%, 0)"]]}},{id:"bottom",type:"slot",metadata:{"mapbox:description":"Above polygons (land, landuse, water, etc.)"}},{id:"tunnel-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)","line-dasharray":[10,0]}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"path"],["!=",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":"round","line-join":"round"},paint:{"line-emissive-strength":.6,"line-opacity":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)"}},{id:"tunnel-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)","line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"tunnel-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","type"],"pedestrian"],["==",["get","class"],"pedestrian"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":"round","line-join":"round"},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)"}},{id:"tunnel-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"tunnel-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"tunnel-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"tunnel-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-color":"hsl(125, 50%, 60%)","line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,.5],"line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"ferry",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:8,filter:["==",["get","type"],"ferry"],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.8,"line-color":"hsl(210, 40%, 55%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,20,1],"line-dasharray":["step",["zoom"],["literal",[1,0]],13,["literal",[12,4]]]}},{id:"ferry-auto",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:8,filter:["==",["get","type"],"ferry_auto"],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.8,"line-color":"hsl(210, 40%, 55%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,20,1]}},{id:"road-primary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["==",["get","class"],"primary"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["-",["config","roadsBrightness"],.3],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,1],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-opacity":["step",["zoom"],1,14,1,14.5,0]}},{id:"road-major-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["-",["config","roadsBrightness"],.3],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,1],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-opacity":["step",["zoom"],0,11,1,14,1,14.5,0]}},{id:"road-motorway-trunk-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:3,filter:["all",["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],5,["all",["match",["get","class"],["motorway","trunk"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["-",["config","roadsBrightness"],.3],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,1],"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],30]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-opacity":["interpolate",["linear"],["zoom"],3,0,3.5,1,14,1,14.5,0]}},{id:"road-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":[10,0]}},{id:"road-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"path"],["step",["zoom"],["!",["match",["get","type"],["steps","sidewalk","crossing"],!0,!1]],16,["!=",["get","type"],"steps"]],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-emissive-strength":.6,"line-opacity":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"road-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-join":"round"},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"road-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"pedestrian"],["match",["get","structure"],["none","ford"],!0,!1],["case",["has","layer"],[">=",["get","layer"],0],!0],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"golf-hole-line",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["==",["get","class"],"golf"],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-color":"hsl(110, 29%, 70%)"}},{id:"road-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"road-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["==",["get","class"],"primary"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"road-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:3,filter:["all",["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],5,["all",["match",["get","class"],["motorway","trunk"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],3,0,3.5,1,14,1,15,0]}},{id:"road-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-color":"hsl(125, 50%, 60%)","line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,1],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"road-rail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["major_rail","minor_rail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-gap-width":["interpolate",["linear"],["zoom"],15,0,16,1,18,2,22,20],"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,2]}},{id:"road-rail-tracks",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["major_rail","minor_rail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],16,2,18,6,20,16,22,32],"line-dasharray":["step",["zoom"],["literal",[.1,15]],16,["literal",[.1,1]],18,["literal",[.05,.5]]],"line-opacity":["interpolate",["linear"],["zoom"],13.75,0,14,1]}},{id:"bridge-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":[10,0]}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"path"],["!=",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-emissive-strength":.6,"line-opacity":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"bridge-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["==",["get","structure"],"bridge"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"bridge-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"pedestrian"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-opacity":.6,"line-emissive-strength":.6,"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"bridge-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":"round"},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway","trunk"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":"round"},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-major-link-2",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":"round"},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-motorway-trunk-2",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"],"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["config","roadsBrightness"],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],14,1,15,0]}},{id:"bridge-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":.6,"line-color":"hsl(125, 50%, 60%)","line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,1],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"bridge-rail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["major_rail","minor_rail"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-gap-width":["interpolate",["linear"],["zoom"],15,0,16,1,18,2,22,20],"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,2]}},{id:"bridge-rail-tracks",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["major_rail","minor_rail"],!0,!1]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-color":"hsl(0, 0%, 20%)","line-width":["interpolate",["exponential",1.5],["zoom"],16,2,18,6,20,16,22,32],"line-dasharray":["step",["zoom"],["literal",[.1,15]],16,["literal",[.1,1]],18,["literal",[.05,.5]]],"line-opacity":["interpolate",["linear"],["zoom"],13.75,0,14,1]}},{id:"aerialway",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"aerialway"],["match",["get","type"],["aerialway:zip_line"],["step",["zoom"],!1,15,!0],!0]],layout:{visibility:["case",["config","showRoadsAndTransit"],"visible","none"]},paint:{"line-emissive-strength":1,"line-color":"hsl(225, 60%, 58%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,1,20,2],"line-dasharray":[4,1]}},{id:"admin-1-boundary-bg",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:7,filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":1,"line-width":["interpolate",["linear"],["zoom"],3,3,12,6],"line-color":"hsl(345, 100%, 0%)","line-opacity":["interpolate",["linear"],["zoom"],5,0,6,.1],"line-dasharray":[1,0],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,3]}},{id:"admin-0-boundary-bg",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":1,"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":"hsl(345, 100%, 0%)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.1],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]}},{id:"admin-1-boundary",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:2,filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],layout:{},paint:{"line-emissive-strength":1,"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]],"line-width":["interpolate",["linear"],["zoom"],3,.5,12,1.5],"line-opacity":["interpolate",["linear"],["zoom"],2,0,3,1],"line-color":"hsl(345, 100%, 75%)"}},{id:"admin-0-boundary",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],layout:{},paint:{"line-emissive-strength":1,"line-color":"hsl(345, 100%, 70%)","line-width":["interpolate",["linear"],["zoom"],3,.8,12,2],"line-dasharray":[10,0]}},{id:"admin-0-boundary-disputed",type:"line",metadata:{"mapbox:group":"administrative boudaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":1,"line-color":"hsl(345, 100%, 70%)","line-width":["interpolate",["linear"],["zoom"],3,.8,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]}},{id:"middle",type:"slot",metadata:{"mapbox:description":"Above lines (roads, etc.) and behind 3D buildings"}},{id:"road-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:10,filter:["all",["has","name"],["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],12,["match",["get","class"],["motorway","trunk","primary","secondary"],!0,!1],13,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary","street","street_limited"],!0,!1],15,["match",["get","class"],["path","pedestrian","golf","ferry","aerialway"],!1,!0]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.2]]]],layout:{"text-size":["interpolate",["linear"],["zoom"],10,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary"],9,["motorway_link","trunk_link","primary_link","secondary_link","tertiary_link","street","street_limited"],8,6.5],18,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary"],16,["motorway_link","trunk_link","primary_link","secondary_link","tertiary_link","street","street_limited"],14,13]],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,visibility:["case",["config","showRoadLabels"],"visible","none"],"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15},paint:{"text-color":"hsl(0, 0%, 100%)","text-halo-color":"hsl(0, 0%, 20%)","text-halo-width":1.5,"text-halo-blur":1}},{id:"path-pedestrian-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["case",["has","layer"],[">=",["get","layer"],0],!0],["step",["zoom"],["match",["get","class"],["pedestrian"],!0,!1],15,["match",["get","class"],["path","pedestrian"],!0,!1]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.2]]]],layout:{"text-size":["interpolate",["linear"],["zoom"],10,["match",["get","class"],"pedestrian",9,6.5],18,["match",["get","class"],"pedestrian",14,13]],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,visibility:["case",["config","showRoadLabels"],"visible","none"],"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.01},paint:{"text-color":"hsl(0, 0%, 100%)","text-halo-color":"hsl(0, 0%, 20%)","text-halo-width":1.5,"text-halo-blur":1}},{id:"golf-hole-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","class"],"golf"],["case",["<=",["pitch"],40],!0,["<=",["distance-from-center"],0]]],layout:{visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-size":12},paint:{"text-emissive-strength":.8,"text-halo-color":"hsl(110, 70%, 28%)","text-halo-width":.5,"text-halo-blur":.5,"text-color":"hsl(110, 40%, 65%)"}},{id:"ferry-aerialway-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],"aerialway",!0,"ferry",!0,!1],["case",["<=",["pitch"],40],!0,["<=",["distance-from-center"],0]]],layout:{"text-size":["interpolate",["linear"],["zoom"],10,6.5,18,13],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,visibility:["case",["config","showTransitLabels"],"visible","none"],"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.01},paint:{"text-emissive-strength":.8,"text-color":"hsl(200, 40%, 60%)","text-halo-color":"hsl(225, 60%, 20%)","text-halo-width":1.5,"text-halo-blur":1}},{id:"waterway-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:13,filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"text-emissive-strength":.8,"text-color":"hsl(210, 96%, 75%)"}},{id:"natural-line-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:4,filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["get","filterrank"],2],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line-center","text-pitch-alignment":"viewport"},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-halo-width":1,"text-halo-color":"hsl(210, 20%,20%)","text-halo-blur":.5,"text-color":"hsl(0, 0%, 95%)"}},{id:"natural-point-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:4,filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["get","filterrank"],2],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"Point"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["image",["string",["get","maki"]]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.75]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.75]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-color":"hsl(210, 20%,20%)","text-color":"hsl(0, 0%, 95%)","text-halo-width":1}},{id:"water-line-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"text-emissive-strength":.8,"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(210, 96%, 65%)","hsl(210, 96%, 75%)"]}},{id:"water-point-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"Point"],["!=",["id"],1]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10]},paint:{"text-emissive-strength":.8,"text-color":["match",["get","class"],["bay","ocean","sea"],"hsl(210, 96%, 65%)","hsl(210, 96%, 75%)"]}},{id:"road-intersection",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","class"],"intersection"],["has","name"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"icon-image":"intersection","icon-text-fit":"both","icon-text-fit-padding":[1,2,1,2],"text-size":["interpolate",["exponential",1.2],["zoom"],15,9,18,12],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-color":"hsl(230, 57%, 64%)"}},{id:"road-number-shield",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["has","reflen"],["<=",["get","reflen"],6],["match",["get","class"],["pedestrian","service"],!1,!0],["step",["zoom"],["==",["geometry-type"],"Point"],11,[">",["coalesce",["get","len"],0],5e3],12,[">",["coalesce",["get","len"],0],2500],13,[">",["coalesce",["get","len"],0],1e3],14,!0],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{"text-size":9,"icon-image":["case",["has","shield_beta"],["coalesce",["image",["concat",["get","shield_beta"],"-",["to-string",["get","reflen"]]]],["image",["concat",["get","shield"],"-",["to-string",["get","reflen"]]]],["image",["concat","default-",["to-string",["get","reflen"]]]]],["concat",["get","shield"],"-",["to-string",["get","reflen"]]]],"icon-rotation-alignment":"viewport","text-max-angle":38,"symbol-spacing":["interpolate",["linear"],["zoom"],11,400,14,600],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"],"symbol-placement":["step",["zoom"],"point",11,"line"],visibility:["case",["config","showRoadLabels"],"visible","none"],"text-rotation-alignment":"viewport","text-field":["get","ref"],"text-letter-spacing":.05},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-color":["case",["has","shield_beta"],["case",["all",["has","shield_text_color_beta"],["to-boolean",["coalesce",["image",["concat",["get","shield_beta"],"-",["to-string",["get","reflen"]]]],""]]],["match",["get","shield_text_color_beta"],"white","hsl(0, 0%, 100%)","yellow","hsl(50, 100%, 70%)","orange","hsl(25, 100%, 75%)","blue","hsl(230, 57%, 44%)","red","hsl(0, 87%, 59%)","green","hsl(140, 74%, 37%)","hsl(230, 18%, 13%)"],"hsl(230, 18%, 13%)"],["match",["get","shield_text_color"],"white","hsl(0, 0%, 100%)","yellow","hsl(50, 100%, 70%)","orange","hsl(25, 100%, 75%)","blue","hsl(230, 57%, 44%)","red","hsl(0, 87%, 59%)","green","hsl(140, 74%, 37%)","hsl(230, 18%, 13%)"]]}},{id:"road-exit-shield",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"motorway_junction",minzoom:14,filter:["all",["has","reflen"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-field":["get","ref"],"text-size":9,"icon-image":["concat","motorway-exit-",["to-string",["get","reflen"]]],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-color":"hsl(0, 0%, 100%)","text-translate":[0,0]}},{id:"gate-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"structure",minzoom:17,filter:["all",["==",["get","class"],"gate"],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<=",["distance-from-center"],.4],50,["<",["distance-from-center"],.2],55,["<",["distance-from-center"],0],60,["<",["distance-from-center"],-.05]]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"icon-image":["match",["get","type"],"gate","gate","lift_gate","lift-gate",""]},paint:{"icon-emissive-strength":.8}},{id:"building-entrance",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"structure",minzoom:18,filter:["all",["==",["get","class"],"entrance"],["case",["<=",["pitch"],40],!0,!1]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"icon-image":"marker","text-field":["get","ref"],"text-size":10,"text-offset":[0,-.5],"text-font":[["concat",["config","font"]," Regular"],"Arial Unicode MS Regular"]},paint:{"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)","icon-opacity":.4}},{id:"building-number-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"housenum_label",minzoom:17,filter:["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],.4],50,["<",["distance-from-center"],.2],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.4]]],layout:{"symbol-z-elevate":!0,visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["get","house_num"],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-max-width":10,"text-size":10,"text-padding":20},paint:{"text-emissive-strength":1.4,"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)"}},{id:"block-number-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"place_label",minzoom:16,filter:["all",["==",["get","class"],"settlement_subdivision"],["==",["get","type"],"block"],["case",["<=",["pitch"],60],!0,["<=",["distance-from-center"],.5]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["get","name"],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-max-width":7,"text-size":11},paint:{"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)"}},{id:"poi-label",type:"symbol",metadata:{"mapbox:group":"poi labels"},source:"composite","source-layer":"poi",minzoom:6,filter:["all",["has","sub_category"],["case",["<=",["pitch"],15],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","category"],"park_like",4,"visitor_amenities",2,"store_like",3,"lodging",1,2]]],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","category"],"park_like",4,["food_and_drink","visitor_amenities","lodging"],1,"religion",0,2]]]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1.2],50,["<",["distance-from-center"],1],55,["<",["distance-from-center"],.8],60,["<=",["distance-from-center"],.6]]],["match",["get","category"],["sport_and_leisure","visitor_amenities","commercial_services","general"],[">",["get","reality_score"],.95],["building","lodging","medical","store_like","food_and_drink","food_and_drink_stores","motorist","industrial","education"],[">",["get","reality_score"],.85],!0]],layout:{"text-size":13,"icon-image":["image",["string",["get","icon"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","icon"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","category"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","icon"],["literal",["communications-tower","museum","zoo"]]],["in",["get","category"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","icon"],"car-repair"],["in",["get","category"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","icon"],"picnic-site"],["==",["get","category"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","icon"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-padding":["interpolate",["linear"],["zoom"],16,6,17,4],visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"symbol-z-elevate":!0,"text-offset":["case",["match",["get","category"],["building","general","place_like"],!0,!1],["literal",[0,-.6]],["literal",[0,.8]]],"text-anchor":["case",["match",["get","category"],["building","general","place_like"],!0,!1],"bottom","top"],"text-field":["format",["get","name"],{}]},paint:{"text-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"icon-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"text-opacity":1,"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-width":1,"text-halo-color":"hsl(0, 0%, 15%)","text-color":["match",["get","category"],"food_and_drink","hsl(40, 100%, 75%)","park_like","hsl(110, 65%, 65%)","education","hsl(30, 100%, 70%)","medical","hsl(0, 100%, 85%)","sport_and_leisure","hsl(190, 60%, 75%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 80%)",["commercial_services","motorist","lodging"],"hsl(260, 100%, 85%)",["arts_and_entertainment","historic","landmark"],"hsl(320, 90%, 85%)",["match",["get","maki_beta"],"terminal","hsl(220, 100%, 80%)","hsl(0, 0%, 90%)"]]}},{id:"poi-label-osm",type:"symbol",metadata:{"mapbox:group":"poi labels"},source:"composite","source-layer":"poi",minzoom:6,filter:["all",["!",["has","sub_category"]],["case",["<=",["pitch"],15],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","class"],"park_like",4,"visitor_amenities",2,"store_like",3,"lodging",1,2]]],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],1,16,2,18,3],["match",["get","class"],"park_like",4,["food_and_drink","visitor_amenities","lodging"],1,"religion",0,2]]]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1.2],50,["<",["distance-from-center"],1],55,["<",["distance-from-center"],.8],60,["<=",["distance-from-center"],.6]]],["all",["match",["get","type"],"Toilets",[">=",["zoom"],17],!0]]],layout:{"text-size":["step",["zoom"],["step",["number",["get","sizerank"]],18,5,13],17,["step",["number",["get","sizerank"]],18,13,13]],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["string",["get","maki_beta"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","maki_beta"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","class"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","maki_beta"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}],["image",["string",["get","maki"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","maki"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","class"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","maki"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}]],["image",["string",["get","maki"]],{params:{"background-stroke":"hsl(0, 0%, 0%)",icon:["case",["==",["get","maki"],"marker"],"hsla(0, 0%, 0%, 0)","hsl(0, 0%, 0%)"],background:["match",["get","class"],"food_and_drink","hsl(40, 100%, 70%)","education","hsl(30, 100%, 65%)","medical","hsl(0, 100%, 80%)","sport_and_leisure","hsl(190, 60%, 70%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 75%)",["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],"hsl(320, 90%, 80%)",["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],"hsl(260, 100%, 80%)",["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],"hsl(110, 65%, 60%)",["==",["get","maki"],"terminal"],"hsl(220, 100%, 70%)","hsl(0, 0%, 90%)"]],"icon-stroke":"hsla(0, 0%, 0%, 0)"}}]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-padding":["interpolate",["linear"],["zoom"],16,6,17,4],visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"symbol-z-elevate":!0,"text-offset":["step",["zoom"],["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],["literal",[0,-.6]],["step",["number",["get","sizerank"]],["literal",[0,0]],5,["literal",[0,.8]]]],17,["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],["literal",[0,-.6]],["step",["number",["get","sizerank"]],["literal",[0,0]],13,["literal",[0,.8]]]]],"text-anchor":["step",["zoom"],["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],"bottom",["step",["number",["get","sizerank"]],"center",5,"top"]],17,["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],"bottom",["step",["number",["get","sizerank"]],"center",13,"top"]]],"text-field":["format",["coalesce",["get","name_en"],["get","name"]],{}]},paint:{"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-width":1.2,"text-halo-color":"hsl(0, 0%, 15%)","text-color":["match",["get","class"],"food_and_drink","hsl(40, 100%, 75%)","park_like","hsl(110, 65%, 65%)","education","hsl(30, 100%, 70%)","medical","hsl(0, 100%, 85%)","sport_and_leisure","hsl(190, 60%, 75%)",["store_like","food_and_drink_stores"],"hsl(210, 100%, 80%)",["commercial_services","motorist","lodging"],"hsl(260, 100%, 85%)",["arts_and_entertainment","historic","landmark"],"hsl(320, 90%, 85%)",["match",["get","maki_beta"],"terminal","hsl(220, 100%, 80%)","hsl(0, 0%, 90%)"]]}},{id:"top",type:"slot",metadata:{"mapbox:description":"Above POI labels and behind Place and Transit labels"}},{id:"transit-label",type:"symbol",metadata:{"mapbox:group":"transit labels"},source:"composite","source-layer":"transit_stop_label",minzoom:12,filter:["all",["step",["zoom"],["all",["!=",["get","mode"],"bus"],["!=",["get","stop_type"],"entrance"]],17,["!=",["get","stop_type"],"entrance"],19,!0],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],50,["<",["distance-from-center"],.8],55,["<",["distance-from-center"],.4],60,["<=",["distance-from-center"],-.1]]]],layout:{"text-size":13,"icon-image":["image",["string",["get","network"]],{params:{background:"hsl(220, 100%, 70%)","background-stroke":"hsl(0, 0%, 0%)",icon:"hsl(0, 0%, 0%)"}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-justify":["match",["get","stop_type"],"entrance","left","center"],visibility:["case",["config","showTransitLabels"],"visible","none"],"text-offset":["match",["get","stop_type"],"entrance",["literal",[1,0]],["literal",[0,.6]]],"text-anchor":["match",["get","stop_type"],"entrance","left","top"],"text-field":["step",["zoom"],["format","",{}],13,["match",["get","mode"],["metro_rail","rail"],["format",["coalesce",["get","name_en"],["get","name"]],{}],["format","",{}]],14,["match",["get","mode"],["bicycle","bus"],["format","",{}],["format",["coalesce",["get","name_en"],["get","name"]],{}]],18,["format",["coalesce",["get","name_en"],["get","name"]],{}]],"text-letter-spacing":.01,"text-max-width":["match",["get","stop_type"],"entrance",15,9]},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-halo-width":1.2,"text-halo-color":"hsl(0, 0%, 10%)","text-color":["match",["get","network"],"tokyo-metro","hsl(180, 50%, 30%)","mexico-city-metro","hsl(25, 100%, 63%)",["barcelona-metro","delhi-metro","hong-kong-mtr","milan-metro","osaka-subway"],"hsl(0, 90%, 47%)",["boston-t","washington-metro"],"hsl(230, 18%, 20%)",["chongqing-rail-transit","kiev-metro","singapore-mrt","taipei-metro"],"hsl(140, 90%, 25%)","hsl(225, 100%, 82%)"]}},{id:"airport-label",type:"symbol",metadata:{"mapbox:group":"transit labels"},source:"composite","source-layer":"airport_label",minzoom:8,filter:["all",["match",["get","class"],["military","civil","disputed_military","disputed_civil"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{"text-line-height":1.1,"text-size":["step",["get","sizerank"],18,9,13],"icon-image":["image",["string",["get","maki"]],{params:{background:"hsl(220, 100%, 70%)","background-stroke":"hsl(0, 0%, 0%)",icon:"hsl(0, 0%, 0%)"}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],visibility:["case",["config","showTransitLabels"],"visible","none"],"text-offset":[0,.8],"text-rotation-alignment":"viewport","text-anchor":"top","text-field":["step",["get","sizerank"],["case",["has","ref"],["concat",["get","ref"],` -
|
|
233
233
|
`,["coalesce",["get","name_en"],["get","name"]]],["coalesce",["get","name_en"],["get","name"]]],15,["get","ref"]],"text-letter-spacing":.01,"text-max-width":9},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-emissive-strength":.8,"text-emissive-strength":.9,"text-color":"hsl(225, 100%, 82%)","text-halo-color":"hsl(0, 0%, 10%)","text-halo-width":1.2}},{id:"settlement-subdivision-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:10,maxzoom:15,filter:["all",["match",["get","class"],["disputed_settlement_subdivision","settlement_subdivision"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["number",["get","filterrank"]],3],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1.5]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",12,11.5],15,["match",["get","type"],"suburb",16,15]]},paint:{"text-emissive-strength":["case",["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.8],"text-halo-color":["case",["to-boolean",["feature-state","select"]],"hsl(0, 0%, 15%)",["to-boolean",["feature-state","highlight"]],"hsl(0, 0%, 15%)","hsl(0, 0%, 25%)"],"text-halo-width":1.5,"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],"hsl(0, 0%, 100%)"],"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.8],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1]}},{id:"settlement-minor-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:2,maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],11,9,10],6,["step",["get","symbolrank"],14,9,12,12,10],8,["step",["get","symbolrank"],16,9,14,12,12,15,10],13,["step",["get","symbolrank"],22,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],["image","border-dot-13",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}],["step",["get","symbolrank"],["image","dot-11",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}],9,["image","dot-10",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}],11,["image","dot-9",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}]]],8,""],"text-font":[["concat",["config","font"]," Regular"],"Arial Unicode MS Regular"],"text-justify":"auto",visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.02,"text-max-width":7},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],"hsl(0, 0%, 100%)"],"text-halo-color":["case",["to-boolean",["feature-state","select"]],"hsl(0, 0%, 15%)",["to-boolean",["feature-state","highlight"]],"hsl(0, 0%, 15%)","hsl(0, 0%, 25%)"],"text-halo-width":1.25}},{id:"settlement-major-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:2,maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],13,6,11],6,["step",["get","symbolrank"],18,6,16,7,14],8,["step",["get","symbolrank"],20,9,16,10,14],15,["step",["get","symbolrank"],24,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],["image","border-dot-13",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}],["step",["get","symbolrank"],["image","dot-11",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}],9,["image","dot-10",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}],11,["image","dot-9",{params:{"color-primary":"hsl(0, 0%, 100%)","color-secondary":"hsl(0, 0%, 0%)"}}]]],8,""],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.02,"text-max-width":7},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],"hsl(0, 0%, 100%)"],"text-halo-color":["case",["to-boolean",["feature-state","select"]],"hsl(0, 0%, 15%)",["to-boolean",["feature-state","highlight"]],"hsl(0, 0%, 15%)","hsl(0, 0%, 25%)"],"text-halo-width":1.25}},{id:"state-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:3,maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9,6,8,7,7],9,["step",["get","symbolrank"],21,6,16,7,14]],"text-transform":"uppercase","text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6},paint:{"text-emissive-strength":["case",["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.8],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],"hsl(0, 0%, 100%)"],"text-halo-color":["case",["to-boolean",["feature-state","select"]],"hsl(0, 0%, 15%)",["to-boolean",["feature-state","highlight"]],"hsl(0, 0%, 15%)","hsl(0, 0%, 25%)"],"text-halo-width":1.5,"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.5]}},{id:"country-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:1,maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],11,4,9,5,8],9,["step",["get","symbolrank"],22,4,19,5,17]],"text-radial-offset":["step",["zoom"],.6,8,0],"icon-image":"","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":6},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-emissive-strength":["case",["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.8],"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],"hsl(0, 0%, 100%)"],"text-halo-color":["case",["to-boolean",["feature-state","select"]],"hsl(0, 0%, 15%)",["to-boolean",["feature-state","highlight"]],"hsl(0, 0%, 15%)","hsl(0, 0%, 25%)"],"text-halo-width":1.25}},{id:"continent-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"natural_label",minzoom:.75,maxzoom:3,filter:["all",["==",["get","class"],"continent"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-size":["interpolate",["exponential",.5],["zoom"],0,10,2.5,15],"text-transform":"uppercase","text-letter-spacing":.05},paint:{"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],"hsl(0, 0%, 100%)"],"text-halo-color":["case",["to-boolean",["feature-state","select"]],"hsl(0, 0%, 15%)",["to-boolean",["feature-state","highlight"]],"hsl(0, 0%, 15%)","hsl(0, 0%, 25%)"],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.8],1.5,["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.5],2.5,["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.5]]}}],models:{"maple2-lod1":"mapbox://models/mapbox/maple2-lod1.glb","palm1-lod3":"mapbox://models/mapbox/palm1-lod3.glb","maple1-lod1":"mapbox://models/mapbox/maple1-lod1.glb","maple2-lod2":"mapbox://models/mapbox/maple2-lod2.glb","palm1-lod4":"mapbox://models/mapbox/palm1-lod4.glb","maple1-lod2":"mapbox://models/mapbox/maple1-lod2.glb","maple2-lod3":"mapbox://models/mapbox/maple2-lod3.glb","turbinetower-lod1":"mapbox://models/mapbox/turbinetower-lod1.glb","maple1-lod3":"mapbox://models/mapbox/maple1-lod3.glb","maple2-lod4":"mapbox://models/mapbox/maple2-lod4.glb","turbinetower-lod2":"mapbox://models/mapbox/turbinetower-lod2.glb","maple1-lod4":"mapbox://models/mapbox/maple1-lod4.glb","oak2-lod1":"mapbox://models/mapbox/oak2-lod1.glb","oak1-lod1":"mapbox://models/mapbox/oak1-lod1.glb","oak2-lod2":"mapbox://models/mapbox/oak2-lod2.glb","oak1-lod2":"mapbox://models/mapbox/oak1-lod2.glb","oak2-lod3":"mapbox://models/mapbox/oak2-lod3.glb","oak1-lod3":"mapbox://models/mapbox/oak1-lod3.glb","oak2-lod4":"mapbox://models/mapbox/oak2-lod4.glb","oak1-lod4":"mapbox://models/mapbox/oak1-lod4.glb","turbinerotor-lod1":"mapbox://models/mapbox/turbinerotor-lod1.glb","turbinerotor-lod2":"mapbox://models/mapbox/turbinerotor-lod2.glb","pine2-lod1":"mapbox://models/mapbox/pine2-lod1.glb","pine1-lod1":"mapbox://models/mapbox/pine1-lod1.glb","pine2-lod2":"mapbox://models/mapbox/pine2-lod2.glb","pine1-lod2":"mapbox://models/mapbox/pine1-lod2.glb","pine2-lod3":"mapbox://models/mapbox/pine2-lod3.glb","pine1-lod3":"mapbox://models/mapbox/pine1-lod3.glb","palm1-lod1":"mapbox://models/mapbox/palm1-lod1.glb","pine2-lod4":"mapbox://models/mapbox/pine2-lod4.glb","pine1-lod4":"mapbox://models/mapbox/pine1-lod4.glb","palm1-lod2":"mapbox://models/mapbox/palm1-lod2.glb"},featuresets:{poi:{metadata:{"mapbox:title":"Points of interest","mapbox:description":"A point of interest.","mapbox:states":[{id:"hide",type:"boolean",doc:"When `true`, hides the icon and text. Use this state when displaying a custom annotation on top.",importConfigs:[]}],"mapbox:properties":[{name:"name",type:"string",doc:"Name of the point of interest."},{name:"group",type:"string",doc:"A high-level category, like POI, airport, transit, etc."},{name:"class",type:"string",doc:"A broad category of point of interest."},{name:"maki",type:"string",doc:"An icon identifier, designed to assign icons using the Maki icon project or other icons that follow the same naming scheme."},{name:"transit_mode",type:"string",doc:"Mode of transport served by a stop/station. Expected to be null for non-transit points of interest."},{name:"transit_stop_type",type:"string",doc:"A type of transit stop. Expected to be null for non-transit points of interest."},{name:"transit_network",type:"string",doc:"A rail station network identifier that is part of specific local or regional transit systems. Expected to be null for non-transit points of interest."},{name:"airport_ref",type:"string",doc:"A short identifier code of the airport. Expected to be null for non-airport points of interest"}]},selectors:[{layer:"poi-label-osm",properties:{name:["get","name"],class:["get","class"],maki:["coalesce",["get","maki_beta"],["get","maki"]],group:"poi"},featureNamespace:"poi-A"},{layer:"poi-label",properties:{name:["get","name"],class:["get","category"],maki:["get","icon"],group:"poi"},featureNamespace:"poi-A"},{layer:"transit-label",properties:{name:["get","name"],transit_mode:["get","mode"],transit_stop_type:["get","stop_type"],transit_network:["get","network"],group:"transit"},featureNamespace:"poi-B"},{layer:"airport-label",properties:{name:["get","name"],class:["get","class"],maki:["get","maki"],airport_ref:["get","ref"],group:"airport"},featureNamespace:"poi-C"},{layer:"natural-point-label",properties:{name:["get","name"],class:["get","class"],maki:["coalesce",["get","maki_beta"],["get","maki"]],group:"natural-point"},featureNamespace:"poi-D"}]},"place-labels":{metadata:{"mapbox:title":"Place labels","mapbox:description":"Points for labeling places including countries, states, cities, towns, and neighborhoods.","mapbox:states":[{id:"hide",type:"boolean",doc:"When `true`, hides the label. Use this state when displaying a custom annotation on top.",importConfigs:[]},{id:"highlight",type:"boolean",doc:"When `true`, the feature is highlighted. Use this state to create a temporary effect (e.g. hover).",importConfigs:["colorPlaceLabelHighlight"]},{id:"select",type:"boolean",doc:"When `true`, the feature is selected. Use this state to create a permanent effect. Note: the `select` state has a higher priority than `highlight`.",importConfigs:["colorPlaceLabelSelect"]}],"mapbox:properties":[{name:"name",type:"string",doc:"Name of the place label."},{name:"class",type:"string",doc:"Provides a broad distinction between place types."}]},selectors:[{layer:"continent-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-A"},{layer:"country-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"state-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"settlement-major-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"settlement-minor-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"settlement-subdivision-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"}]}},created:"2024-07-26T16:01:36.908Z",modified:"2025-07-22T16:17:01.022Z",id:"standard-satellite",owner:"mapbox",visibility:"public",protected:!0,draft:!1}}],sources:{"mapbox://mapbox.satellite":{url:"mapbox://mapbox.satellite",type:"raster",tileSize:256},composite:{url:"mapbox://mapbox.mapbox-streets-v8,mapbox.country-boundaries-v1,neatchenheng.82kqbc1q,neatchenheng.d44z21eg,neatchenheng.a4ifbysm,neatchenheng.27issko0,neatchenheng.9uwc9x7l,neatchenheng.7y3kpvvv,neatchenheng.dlkkohie",type:"vector"}},sprite:"mapbox://sprites/neatchenheng/cmdiadnej03n101r485bs2m6a/3ypt5l12v7es7ihchvsclc3i2",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"equirectangular"},layers:[{id:"background",type:"background",layout:{},paint:{"background-color":"hsl(222, 56%, 4%)"},metadata:{"mapbox:featureComponent":"satellite","mapbox:group":"Satellite imagery, land"}},{id:"satellite",type:"raster",source:"mapbox://mapbox.satellite",layout:{},paint:{},metadata:{"mapbox:featureComponent":"satellite","mapbox:group":"Satellite imagery, land"}},{minzoom:7,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-1-boundary-bg",paint:{"line-color":"hsl(260, 45%, 0%)","line-width":["interpolate",["linear"],["zoom"],3,3,12,6],"line-opacity":["interpolate",["linear"],["zoom"],7,0,8,.5],"line-dasharray":[1,0],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,3]},"source-layer":"admin"},{minzoom:1,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-bg",paint:{"line-width":["interpolate",["linear"],["zoom"],3,6,12,12],"line-color":"hsl(260, 45%, 0%)","line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,3]},"source-layer":"admin"},{minzoom:2,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-1-boundary",paint:{"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]],"line-width":["interpolate",["linear"],["zoom"],3,.3,12,1.5],"line-opacity":["interpolate",["linear"],["zoom"],2,0,3,1],"line-color":"hsl(260, 15%, 85%)"},"source-layer":"admin"},{minzoom:1,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary",paint:{"line-color":"hsl(260, 15%, 80%)","line-width":["interpolate",["linear"],["zoom"],3,.75,12,3],"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]]},"source-layer":"admin"},{minzoom:1,layout:{visibility:"none"},metadata:{"mapbox:featureComponent":"admin-boundaries","mapbox:group":"Administrative boundaries, admin"},filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["match",["get","worldview"],["all","CN"],!0,!1]],type:"line",source:"composite",id:"admin-0-boundary-disputed",paint:{"line-color":"hsl(260, 15%, 80%)","line-width":["interpolate",["linear"],["zoom"],3,.75,12,3],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]},"source-layer":"admin"},{id:"empty-layer-0",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-1",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{type:"fill",source:"composite",id:"country-boundaries",paint:{"fill-color":"rgb(2, 45, 62)"},slot:"","source-layer":"country_boundaries",layout:{visibility:"none"}},{id:"empty-layer-2",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-3",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-4",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{minzoom:10,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",12.100000000000001,11.55],15,["match",["get","type"],"suburb",16.5,15.400000000000002]],visibility:"none"},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["match",["get","class"],["settlement_subdivision","disputed_settlement_subdivision"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["<=",["get","filterrank"],4],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-subdivision-label",paint:{"text-halo-color":"hsla(0, 5%, 0%, 0.75)","text-halo-width":1,"text-color":"hsl(0, 0%, 100%)","text-halo-blur":.5},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],12.100000000000001,9,11],6,["step",["get","symbolrank"],15.400000000000002,9,13.200000000000001,12,11],8,["step",["get","symbolrank"],17.6,9,15.400000000000002,12,13.200000000000001,15,11],13,["step",["get","symbolrank"],24.200000000000003,9,22,12,17.6,15,15.400000000000002]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":"auto",visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-minor-label",paint:{"text-color":"hsl(0, 0%, 95%)","text-halo-color":"hsl(0, 5%, 0%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:2,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],14.3,6,12.100000000000001],6,["step",["get","symbolrank"],19.8,6,17.6,7,15.400000000000002],8,["step",["get","symbolrank"],22,9,17.6,10,15.400000000000002],15,["step",["get","symbolrank"],26.400000000000002,9,22,12,17.6,15,15.400000000000002]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],"border-dot-13",["step",["get","symbolrank"],"dot-11",9,"dot-10",11,"dot-9"]],8,""],"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],visibility:"none","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"settlement-major-label",paint:{"text-color":"hsl(0, 0%, 95%)","text-halo-color":"hsl(0, 5%, 0%)","text-halo-width":1,"text-halo-blur":1},"source-layer":"place_label"},{minzoom:3,layout:{"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9.9,6,8.8,7,7.700000000000001],9,["step",["get","symbolrank"],23.1,6,17.6,7,15.400000000000002]],"text-transform":"uppercase","text-font":["DIN Pro Bold","Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6,visibility:"none"},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"state-label",paint:{"text-color":"hsl(0, 0%, 95%)","text-halo-color":"hsl(0, 5%, 0%)","text-halo-width":1,"text-opacity":.5},"source-layer":"place_label"},{minzoom:1,layout:{"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],12.100000000000001,4,9.9,5,8.8],9,["step",["get","symbolrank"],24.200000000000003,4,20.900000000000002,5,18.700000000000003]],"text-radial-offset":["step",["zoom"],.6,8,0],"icon-image":"","text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],visibility:"none","text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":6},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["match",["get","worldview"],["all","CN"],!0,!1],!1],["step",["pitch"],!0,50,["<",["distance-from-center"],3],60,["<",["distance-from-center"],4],70,["<",["distance-from-center"],5]]],type:"symbol",source:"composite",id:"country-label",paint:{"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":"hsl(0, 0%, 95%)","text-halo-color":["interpolate",["linear"],["zoom"],2,"hsla(0, 5%, 0%, 0.75)",3,"hsl(0, 5%, 0%)"],"text-halo-width":1.25},"source-layer":"place_label"},{minzoom:.75,layout:{"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":["DIN Pro Medium","Arial Unicode MS Regular"],"text-size":["interpolate",["exponential",.5],["zoom"],0,11,2.5,16.5],"text-transform":"uppercase","text-letter-spacing":.05,visibility:"none"},metadata:{"mapbox:featureComponent":"place-labels","mapbox:group":"Place labels, place-labels"},maxzoom:3,filter:["==",["get","class"],"continent"],type:"symbol",source:"composite",id:"continent-label",paint:{"text-color":"hsl(0, 0%, 95%)","text-halo-color":["interpolate",["linear"],["zoom"],0,"hsla(0, 5%, 0%, 0.75)",3,"hsl(0, 5%, 0%)"],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,.8,1.5,.5,2.5,0]},"source-layer":"natural_label"},{id:"water-outline",type:"line",paint:{"line-color":"rgb(0, 96, 107)"},layout:{visibility:"none"},source:"composite","source-layer":"water"},{id:"world-12nm-v4-20231025",minzoom:3,type:"line",paint:{"line-color":"rgb(241, 46, 39)"},layout:{visibility:"none"},source:"composite","source-layer":"eez_12nm_new1-6jzkww"},{id:"china-taiwan",minzoom:3,type:"line",paint:{"line-color":"rgb(241, 46, 39)"},layout:{visibility:"none"},source:"composite","source-layer":"eez-d4udtm"},{id:"ne-10m-outline",type:"line",paint:{"line-color":"rgb(115, 115, 115)"},layout:{visibility:"none"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"ne-10m-label",type:"symbol",paint:{"text-color":"rgb(255, 255, 255)"},layout:{"text-field":["to-string",["get","name"]],"text-size":12,visibility:"none"},source:"composite","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"china-route-line",type:"line",paint:{"line-color":"rgba(119, 239, 157, 1)","line-width":2},layout:{visibility:"none"},source:"composite","source-layer":"china_route-bdtx5d"},{id:"china-route-fill",type:"fill",paint:{"fill-color":"rgba(119, 239, 157, 1)","fill-opacity":.2},layout:{visibility:"none"},source:"composite",filter:["match",["geometry-type"],["Polygon"],!0,!1],"source-layer":"china_route-bdtx5d"},{id:"china-route-label",type:"symbol",paint:{"text-color":"rgb(255, 255, 255)"},layout:{"text-field":["to-string",["get","route_name"]],"text-size":10,"text-offset":[0,1.6],visibility:"none"},source:"composite","source-layer":"china_route-bdtx5d"},{id:"ice-area-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(199, 239, 236, 0.7)"},source:"composite","source-layer":"ICE_AREA-6oqazd",layout:{visibility:"none"}},{id:"ice-area-line",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgba(167, 211, 208, 0.7)"},layout:{visibility:"none"},source:"composite","source-layer":"ICE_AREA-6oqazd"},{id:"tide-stations",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(255, 255, 255)","text-opacity":["step",["zoom"],0,4,1]},layout:{visibility:"none","text-field":["to-string",["get","Location_EN"]],"text-size":10,"icon-image":"tide","icon-size":1,"icon-offset":[0,-13],"text-offset":[0,1.6],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},source:"composite","source-layer":"tide_station_cn-8xvt91"},{id:"loadlines-label",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(255, 255, 255)"},layout:{"text-field":["to-string",["get","name"]],"text-size":10,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],visibility:"none","text-offset":[0,1]},source:"composite","source-layer":"loadlines-b6mgr8"},{id:"loadlines-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":["match",["get","val"],["LLGreen"],"rgba(164, 214, 217, 0.6)",["LLBlue"],"rgba(53, 121, 194, 0.6)",["LLRed"],"rgba(217, 150, 151, 0.6)",["LLSUMMER"],"rgba(111, 110, 212, 0.6)","rgba(255, 255, 255, 0.6)"],"fill-outline-color":"rgba(255, 255, 255, 0.3)"},layout:{visibility:"none"},source:"composite","source-layer":"loadlines-b6mgr8"}],created:"2025-07-25T03:53:24.667Z",modified:"2025-07-31T05:04:42.779Z",id:"cmdiadnej03n101r485bs2m6a",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1},nautical:{version:8,name:"nautical",metadata:{"mapbox:autocomposite":!1,"mapbox:sdk-support":{js:"3.14.0",android:"11.14.0",ios:"11.14.0"},"mapbox:uiExpandedImports":["basemap"],"mapbox:groups":{}},center:[-34,38],zoom:2,terrain:null,imports:[{id:"basemap",url:"mapbox://styles/neatchenheng/cmg0ale3r008801rhdey4f0go",config:{theme:"faded",lightPreset:"dawn",showLandmarkIcons:!1,showRoadLabels:!1,showPedestrianRoads:!1,showTransitLabels:!1,showPointOfInterestLabels:!1,showPlaceLabels:!0},data:{version:8,name:"Mapbox Standard",metadata:{"mapbox:compatibility":{android:"11.11.0",ios:"11.11.0",js:"3.14.0"},"mapbox:autocomposite":!1,"mapbox:configGroups":[{name:"Basemap",properties:["theme","theme-data","lightPreset"]},{name:"Typography",properties:["font"]},{name:"Places & boundaries",properties:["showPlaceLabels","colorPlaceLabels","showAdminBoundaries","colorAdminBoundaries"]},{name:"Land & water",properties:["colorGreenspace","colorWater"]},{name:"Road & transit network",properties:["showRoadLabels","colorRoadLabels","showTransitLabels","colorMotorways","colorTrunks","colorRoads","showPedestrianRoads"]},{name:"Points of interest",properties:["showPointOfInterestLabels","densityPointOfInterestLabels","backgroundPointOfInterestLabels","colorModePointOfInterestLabels","colorPointOfInterestLabels","showLandmarkIcons","showLandmarkIconLabels"]},{name:"3d models",properties:["show3dObjects"]}],"mapbox:groups":{"land & water":{name:"Land & water",collapsed:!0},"natural labels":{name:"Natural labels",collapsed:!0},"place labels":{name:"Place labels",collapsed:!0},"poi labels":{name:"Poi labels",collapsed:!0},"administrative boundaries":{name:"Administrative boundaries",collapsed:!0},"road & transit labels":{name:"Road & Transit labels",collapsed:!0},"roads & transit network":{name:"Roads & transit network",collapsed:!0},"building labels":{name:"Building labels",collapsed:!0},"3d models":{name:"3d models",collapsed:!0},"3d buildings":{name:"3d buildings",collapsed:!0},buildings:{name:"Buildings",collapsed:!0},"landmark icons":{name:"Landmark Icons",collapsed:!0},"transit labels":{name:"Transit labels",collapsed:!0},"road shields":{name:"Road shields",collapsed:!0}}},center:[-10,30],zoom:1.5,bearing:0,pitch:0,lights:[{id:"ambient",type:"ambient",properties:{color:["match",["config","lightPreset"],"dawn","hsl(28, 98%, 93%)","day","hsl(0, 0%, 100%)","dusk","hsl(228, 27%, 29%)","night",["match",["config","theme"],"monochrome","hsl(217, 100%, 0%)","hsl(217, 100%, 11%)"],"hsl(0, 0%, 100%)"],intensity:["match",["config","lightPreset"],"dawn",.75,"day",["match",["config","theme"],"monochrome",.85,.8],"dusk",["match",["config","theme"],"monochrome",.1,.8],"night",["match",["config","theme"],"monochrome",0,.5],.8]}},{id:"directional",type:"directional",properties:{direction:["match",["config","lightPreset"],"dawn",["match",["config","theme"],"monochrome",["literal",[120,40]],["literal",[120,50]]],"day",["literal",[180,20]],"dusk",["match",["config","theme"],"monochrome",["literal",[240,30]],["literal",[240,80]]],"night",["literal",[270,20]],["literal",[180,20]]],color:["match",["config","lightPreset"],"dawn","hsl(33, 98%, 77%)","day","hsl(0, 0%, 100%)","dusk",["match",["config","theme"],"monochrome","hsl(30, 0%, 50%)","hsl(30, 98%, 76%)"],"night",["match",["config","theme"],"monochrome","hsl(0, 0%, 0%)","hsl(225, 15%, 29%)"],"hsl(0, 0%, 100%)"],intensity:["interpolate",["linear"],["zoom"],12,["match",["config","lightPreset"],"dawn",.5,"day",["match",["config","theme"],"monochrome",.3,.2],"dusk",0,"night",["match",["config","theme"],"monochrome",.01,0],.2],13,["match",["config","lightPreset"],"night",["match",["config","theme"],"monochrome",.01,0],.2],14,["match",["config","lightPreset"],"dawn",["match",["config","theme"],"monochrome",.35,.5],"day",.2,"dusk",["match",["config","theme"],"monochrome",.15,.2],"night",["match",["config","theme"],"monochrome",.25,.5],.2]],"cast-shadows":!0,"shadow-intensity":["match",["config","lightPreset"],"night",.5,1],"shadow-quality":.5}}],terrain:{source:"mapbox-dem",exaggeration:["interpolate",["linear"],["zoom"],6,0,7,1,12,1,13.7,0]},fog:{"vertical-range":[30,120],range:["interpolate",["linear"],["zoom"],13,["literal",[1,10]],15,["literal",[1,4]],22,["literal",[14,20]]],color:["interpolate",["exponential",1.2],["zoom"],5,["interpolate",["linear"],["measure-light","brightness"],.1,["match",["config","theme"],"monochrome","hsla(0, 0%, 20%, 1)","hsla(240, 9%, 55%, 1)"],.4,"hsla(0, 0%, 100%, 1)"],7,["interpolate",["linear"],["measure-light","brightness"],.02,"hsla(213, 63%, 20%, 0.9)",.03,"hsla(30, 65%, 60%, 0.5)",.4,"hsla(10, 79%, 88%, 0.95)",.45,"hsla(200, 60%, 98%, 0.9)"]],"high-color":["interpolate",["exponential",1.2],["zoom"],5,["interpolate",["linear"],["measure-light","brightness"],.1,"hsla(215, 100%, 20%, 1)",.4,"hsla(215, 100%, 51%, 1)"],7,["interpolate",["linear"],["measure-light","brightness"],0,"hsla(228, 38%, 20%, 1)",.05,"hsla(360, 100%, 85%, 1)",.2,"hsla(205, 88%, 86%, 1)",.4,"hsla(270, 65%, 85%, 1)",.45,"hsla(0, 0%, 100%, 1)"]],"space-color":["interpolate",["exponential",1.2],["zoom"],5,["match",["config","theme"],"monochrome","hsl(0, 0%, 0%)","hsl(211, 84%, 9%)"],7,["interpolate",["linear"],["measure-light","brightness"],0,["match",["config","theme"],"monochrome","hsl(0, 0%, 0%)","hsl(211, 84%, 17%)"],.2,"hsl(210, 40%, 30%)",.4,"hsl(270, 45%, 98%)",.45,"hsl(210, 100%, 80%)"]],"horizon-blend":["interpolate",["exponential",1.2],["zoom"],5,["match",["config","theme"],"monochrome",.001,.01],7,["interpolate",["exponential",1.2],["measure-light","brightness"],.35,.03,.4,.1,.45,.03]],"star-intensity":["interpolate",["exponential",1.2],["zoom"],5,.4,7,["interpolate",["exponential",1.2],["measure-light","brightness"],.1,.2,.3,0]]},camera:{"camera-projection":"orthographic"},"color-theme":{data:["match",["config","theme"],"faded","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","monochrome","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","custom",["config","theme-data"],"default","",""]},iconsets:{landmarks:{type:"source",source:"mapbox-landmarks"}},schema:{theme:{default:"default",values:["default","faded","monochrome","custom"],metadata:{"mapbox:title":"Color theme","mapbox:description":"Switch between predefined themes or set a custom theme."}},"theme-data":{default:"",type:"string",metadata:{"mapbox:title":"Color theme","mapbox:description":"Set a custom theme based on a look-up table (LUT).","mapbox:auxiliary":["theme","custom"]}},lightPreset:{default:"day",type:"string",values:["dawn","day","dusk","night"],metadata:{"mapbox:title":"Light preset","mapbox:description":"Switch between 4 time-of-day states: dusk, dawn, day and night."}},showPlaceLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Place labels","mapbox:description":"Show or hide place labels."}},colorPlaceLabels:{default:"hsl(0, 0%, 0%)",type:"color",metadata:{"mapbox:title":"Place labels color","mapbox:description":"Set a custom color for place labels.","mapbox:auxiliary":["showPlaceLabels",!0]}},showAdminBoundaries:{default:!0,type:"boolean",metadata:{"mapbox:title":"Administrative boundaries","mapbox:description":"Show or hide administrative boundaries."}},colorAdminBoundaries:{default:"hsl(345, 100%, 70%)",type:"color",metadata:{"mapbox:title":"Administrative boundaries color","mapbox:description":"Set a custom color for administrative boundaries.","mapbox:auxiliary":["showAdminBoundaries",!0]}},colorGreenspace:{default:"hsl(115, 60%, 84%)",type:"color",metadata:{"mapbox:title":"Greenspace color","mapbox:description":"Set a custom color for greenspaces such as forests, parks, and woods."}},colorWater:{default:"hsl(200, 100%, 80%)",type:"color",metadata:{"mapbox:title":"Water color","mapbox:description":"Set a custom color for water."}},showRoadLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Road labels","mapbox:description":"Show or hide road labels including road shields."}},colorRoadLabels:{default:"hsl(0, 0%, 25%)",type:"color",metadata:{"mapbox:title":"Road labels color","mapbox:description":"Set a custom color for road labels.","mapbox:auxiliary":["showRoadLabels",!0]}},showTransitLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Transit labels","mapbox:description":"Show or hide transit labels."}},colorMotorways:{default:"hsl(214, 23%, 70%)",type:"color",metadata:{"mapbox:title":"Motorways color","mapbox:description":"Set a custom color for motorway roads."}},colorTrunks:{default:"hsl(235, 20%, 70%)",type:"color",metadata:{"mapbox:title":"Trunk roads color","mapbox:description":"Set a custom color for trunk roads."}},colorRoads:{default:"hsl(224, 25%, 80%)",type:"color",metadata:{"mapbox:title":"Other roads color","mapbox:description":"Set a custom color for other roads."}},showPedestrianRoads:{default:!0,type:"boolean",metadata:{"mapbox:title":"Pedestrian paths","mapbox:description":"Show or hide pedestrian roads, paths, and trails."}},roadsBrightness:{default:.4,type:"number",metadata:{"mapbox:title":"Roads brightness","mapbox:description":"Control how bright roads appear in dark styles."}},showPointOfInterestLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"POI labels","mapbox:description":"Show or hide POI labels."}},densityPointOfInterestLabels:{type:"number",default:3,minValue:1,maxValue:5,stepValue:1,metadata:{"mapbox:title":"POI density","mapbox:description":"Set the density of POI labels.","mapbox:auxiliary":["showPointOfInterestLabels",!0]}},backgroundPointOfInterestLabels:{default:"circle",type:"string",values:["circle","none"],metadata:{"mapbox:title":"POI background","mapbox:description":"Set background shape for POI labels.","mapbox:auxiliary":["showPointOfInterestLabels",!0]}},colorModePointOfInterestLabels:{type:"string",default:"default",values:["default","single"],metadata:{"mapbox:title":"POI color mode","mapbox:description":"Use the default categorical colors or set a single custom color for POI labels.","mapbox:auxiliary":["showPointOfInterestLabels",!0]}},colorPointOfInterestLabels:{default:"#848e94",type:"color",metadata:{"mapbox:title":"POI color","mapbox:description":"Set a custom color for POI labels.","mapbox:auxiliary":[["showPointOfInterestLabels",!0],["colorModePointOfInterestLabels","single"]]}},showLandmarkIcons:{default:!1,type:"boolean",metadata:{"mapbox:title":"Landmark icons","mapbox:description":"Show or hide Landmark icons."}},showLandmarkIconLabels:{default:!0,type:"boolean",metadata:{"mapbox:title":"Landmark icon labels","mapbox:description":"Show or hide Landmark icon labels.","mapbox:auxiliary":["showLandmarkIcons",!0]}},show3dObjects:{default:!0,type:"boolean",metadata:{"mapbox:title":"3d buildings and trees","mapbox:description":"Show or hide 3d objects (buildings, landmarks, trees, etc.) including shadows, ambient occlusion, and flood lights."}},colorPlaceLabelHighlight:{default:"hsl(4, 43%, 55%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Set a custom color for place labels when setting highlight state."}},colorPlaceLabelSelect:{default:"hsl(4, 53%, 42%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Set a custom color for place labels when setting select state."}},colorBuildingHighlight:{default:"hsl(34, 30%, 93%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Set a custom color for building fill extrusion when setting highlight state."}},colorBuildingSelect:{default:"hsl(214, 82%, 63%)",type:"color",metadata:{"mapbox:title":"Color","mapbox:description":"Set a custom color for building fill extrusion when setting select state."}},font:{default:"DIN Pro",type:"string",metadata:{"mapbox:title":"Font","mapbox:description":"Set the text font family. The basemap uses Medium, Bold, Italic and Regular. Falls back to Arial Unicode MS if a weight is missing."}}},sources:{composite:{url:"mapbox://mapbox.mapbox-bathymetry-v2,mapbox.mapbox-streets-v8-lite,mapbox.mapbox-terrain-v3,mapbox.mapbox-models-v1,mapbox.mapbox-poi-v2",type:"vector",promoteId:{building:["coalesce",["get","building_id"],["id"]]},data:{attribution:'<a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">© Mapbox</a> <a href="https://www.openstreetmap.org/copyright/" target="_blank" title="OpenStreetMap" aria-label="OpenStreetMap">© OpenStreetMap</a> <a class="mapbox-improve-map" href="https://www.mapbox.com/contribute/" target="_blank" title="Improve this map" aria-label="Improve this map">Improve this map</a>',bounds:[-180,-85,180,85],cacheControl:"max-age=43200,s-maxage=7200",center:[0,0,0],constituents:[{maxzoom:7,minzoom:0,source:"mapbox.mapbox-bathymetry-v2"},{maxzoom:16,minzoom:0,source:"mapbox.mapbox-streets-v8-lite"},{maxzoom:15,minzoom:0,source:"mapbox.mapbox-terrain-v3"},{maxzoom:16,minzoom:13,source:"mapbox.mapbox-models-v1"},{maxzoom:16,minzoom:6,source:"mapbox.mapbox-poi-v2"}],format:"pbf",language_options:{all:"Every available language",ar:"Arabic",bg:"Bulgarian",ca:"Catalan",cs:"Czech",da:"Danish",de:"German",el:"Greek",en:"English",es:"Spanish",et:"Estonian",fa:"Farsi",fi:"Finnish",fr:"French",he:"Hebrew",hr:"Croatian",hu:"Hungarian",id:"Indonesian",it:"Italian",ja:"Japanese",ka:"Georgian",ko:"Korean",local:"Renderable local language",lv:"Latvian",ms:"Malay",nb:"Norwegian Bokmål",nl:"Dutch",no:"Norwegian",pl:"Polish",pt:"Portuguese",ro:"Romanian",ru:"Russian",sk:"Slovak",sl:"Slovenian",sq:"Albanian",sr:"Serbian",sv:"Swedish",th:"Thai",tl:"Tagalog",tr:"Turkish",uk:"Ukrainian",vi:"Vietnamese","zh-Hans":"Simplified Chinese","zh-Hant":"Traditional Chinese"},mapbox_logo:!0,maxzoom:16,minzoom:0,name:"Mapbox POI v2 + Mapbox Models v1 + Mapbox Terrain v3 + Mapbox Streets v8 Lite + Mapbox Bathymetry v2",scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/mapbox.mapbox-bathymetry-v2,mapbox.mapbox-streets-v8-lite,mapbox.mapbox-terrain-v3,mapbox.mapbox-models-v1,mapbox.mapbox-poi-v2/{z}/{x}/{y}.vector.pbf"],vector_layers:[{id:"depth",maxzoom:7,minzoom:0,source:"mapbox.mapbox-bathymetry-v2"},{id:"landuse",minzoom:5,source:"mapbox.mapbox-streets-v8-lite"},{id:"waterway",minzoom:7,source:"mapbox.mapbox-streets-v8-lite"},{id:"water",minzoom:0,source:"mapbox.mapbox-streets-v8-lite"},{id:"aeroway",minzoom:9,source:"mapbox.mapbox-streets-v8-lite"},{id:"structure",minzoom:13,source:"mapbox.mapbox-streets-v8-lite"},{id:"building",minzoom:15,source:"mapbox.mapbox-streets-v8-lite"},{id:"landuse_overlay",minzoom:5,source:"mapbox.mapbox-streets-v8-lite"},{id:"road",minzoom:3,source:"mapbox.mapbox-streets-v8-lite"},{id:"admin",minzoom:1,source:"mapbox.mapbox-streets-v8-lite"},{id:"place_label",minzoom:0,source:"mapbox.mapbox-streets-v8-lite"},{id:"airport_label",minzoom:8,source:"mapbox.mapbox-streets-v8-lite"},{id:"transit_stop_label",minzoom:5,source:"mapbox.mapbox-streets-v8-lite"},{id:"natural_label",minzoom:0,source:"mapbox.mapbox-streets-v8-lite"},{id:"poi_label",minzoom:6,source:"mapbox.mapbox-streets-v8-lite"},{id:"motorway_junction",minzoom:9,source:"mapbox.mapbox-streets-v8-lite"},{id:"housenum_label",minzoom:16,source:"mapbox.mapbox-streets-v8-lite"},{id:"hillshade",maxzoom:22,minzoom:0,source:"mapbox.mapbox-terrain-v3"},{id:"landcover",maxzoom:12,minzoom:0,source:"mapbox.mapbox-terrain-v3"},{id:"tree",minzoom:15,source:"mapbox.mapbox-models-v1"},{id:"wind_turbine",minzoom:13,source:"mapbox.mapbox-models-v1"},{id:"poi",maxzoom:16,minzoom:6,source:"mapbox.mapbox-poi-v2"}],worldview_default:"CN",worldview_options:{ALL:"Every available worldview",AR:"Argentina",CN:"China",IN:"India",JP:"Japan",MA:"Morocco",RS:"Serbia",RU:"Russia",TR:"Turkey",US:"United States",VN:"Vietnam"}}},"3dbuildings":{url:"mapbox://mapbox.mapbox-3dbuildings-v1",type:"batched-model",data:{attribution:'<a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">© Mapbox</a>',bounds:[-180,-85,180,85],capabilities:["draco"],center:[0,0,3],created:1683634017088,description:"Public tileset - Mapbox 3D buildings",format:"glb",id:"mapbox.mapbox-3dbuildings-v1",mapbox_logo:!0,maxzoom:14,minzoom:14,modified:1719240021306,name:"Mapbox 3D landmark buildings v1",private:!1,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://3dtiles/mapbox.mapbox-3dbuildings-v1/{z}/{x}/{y}.glb"],variants:[{capabilities:["meshopt"],tiles:["mapbox://3dtiles/mapbox.mapbox-3dbuildings-v1-meshopt/{z}/{x}/{y}.glb"]}],webpage:"https://studio.mapbox.com/tilesets/mapbox.mapbox-3dbuildings-v1"}},"mapbox-dem":{url:"mapbox://mapbox.mapbox-terrain-dem-v1",type:"raster-dem",tileSize:514,data:{attribution:'<a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">© Mapbox</a>',autoscale:!0,bounds:[-180,-85,180,85],cacheControl:"max-age=43200,s-maxage=604800",center:[0,0,3],created:1604614692e3,description:"png or webp file extension must be used. height = -10000 + ((R * 256 * 256 + G * 256 + B) * 0.1)",encoding:"mapbox",filesize:0,format:"png",id:"mapbox.mapbox-terrain-dem-v1",mapbox_logo:!0,maxzoom:14,minzoom:0,modified:160583357e4,name:"Mapbox Terrain-DEM v1",packs:{scheme:[{indexzoom:0,maxzoom:5,minzoom:0},{indexzoom:6,maxzoom:9,minzoom:6},{indexzoom:10,maxzoom:12,minzoom:10},{indexzoom:11,maxzoom:14,minzoom:13}]},private:!1,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://raster/mapbox.mapbox-terrain-dem-v1/{z}/{x}/{y}.png"],webpage:"https://studio.mapbox.com/tilesets/mapbox.mapbox-terrain-dem-v1"}},"mapbox-landmark-pois":{url:"mapbox://mapbox.mapbox-landmark-pois-v1",type:"vector",data:{attribution:'<a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">© Mapbox</a>',bounds:[-180,-85,180,85],center:[0,0,0],created:1742999403069,description:"POIs for Landmarks",filesize:0,format:"pbf",id:"mapbox.mapbox-landmark-pois-v1",mapbox_logo:!0,maxzoom:17,minzoom:10,modified:1754404415e3,name:"Mapbox Landmark POIs v1",private:!1,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/mapbox.mapbox-landmark-pois-v1/{z}/{x}/{y}.vector.pbf"],vector_layers:[{id:"landmarks_poi",minzoom:10,source:"mapbox.mapbox-landmark-pois-v1"}],webpage:"https://studio.mapbox.com/tilesets/mapbox.mapbox-landmark-pois-v1"}},"mapbox-landmarks":{url:"mapbox://mapbox.mapbox-landmark-icons-v1",type:"raster-array",data:{attribution:'<a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">© Mapbox</a> <a class="mapbox-improve-map" href="https://www.mapbox.com/contribute/" target="_blank" title="Improve this map" aria-label="Improve this map">Improve this map</a>',bounds:[-180,-85,180,85],cacheControl:"max-age=43200,s-maxage=604800",capabilities:[],center:[0,0,3],created:1739202188782,description:"External tileset used for production - Mapbox Landmark Icons v1",extra_bounds:[[-18.716583,34.608345,48.080292,73.128931],[122.871094,26.431228,158.730469,46.800059],[-129.550781,19.642588,-64.335938,53.540307],[-46.7563,-23.6582,-43.1526,-22.8737],[76.948907,28.403519,77.385614,28.811024],[100.221813,13.570897,100.739887,13.954299]],format:"mrt",id:"mapbox.mapbox-landmark-icons-v1",mapbox_logo:!0,maxzoom:10,minzoom:10,name:"Mapbox Landmark Icons v1 - Production",private:!1,raster_layers:[{fields:{current_job_id:"2025-08-04"},id:"landmark-icons"}],scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://rasterarrays/mapbox.mapbox-landmark-icons-v1/{z}/{x}/{y}.mrt?jobid=2025-08-04"],webpage:"https://studio.mapbox.com/tilesets/mapbox.mapbox-landmark-icons-v1"}}},sprite:"mapbox://sprites/mapbox/standard/cearqi1fcr4p9hhmnba1yy3fr",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"globe"},layers:[{id:"land",type:"background",metadata:{"mapbox:group":"land & water"},paint:{"background-color":["match",["config","lightPreset"],"night","hsl(230, 30%, 95%)","hsl(20, 20%, 95%)"],"background-emissive-strength":["interpolate",["linear"],["zoom"],13,.1,14,["interpolate",["linear"],["measure-light","brightness"],.28,["match",["config","theme"],"monochrome",.05,0],.3,.25]]}},{id:"landcover",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"landcover",maxzoom:12,paint:{"fill-emissive-strength":["match",["config","theme"],"monochrome",.1,.2],"fill-color":["match",["get","class"],"snow","hsl(0, 0%, 100%)",["scrub"],["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],12]]],["flooded"],["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],2]]],"wood",["config","colorGreenspace"],["crop"],["hsl",["max",0,["-",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],13]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],2]]],["range"],["hsl",["max",0,["-",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],25]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],5]]],["bare"],"hsl(55, 60%, 94%)",["built-up"],"hsl(20, 100%, 97%)","hsl(20, 20%, 95%)"],"fill-opacity":["interpolate",["linear"],["zoom"],10,1,12,0],"fill-antialias":!1}},{id:"national-park",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"landuse_overlay",minzoom:5,paint:{"fill-emissive-strength":["match",["config","theme"],"monochrome",.08,.2],"fill-color":["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["*",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],.5]],["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]]],"fill-opacity":["interpolate",["linear"],["zoom"],5,0,6,.5],"fill-antialias":!1}},{id:"road-pedestrian-polygon-fill",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["match",["get","class"],["path","pedestrian"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["case",["has","layer"],[">=",["get","layer"],0],!0],["==",["geometry-type"],"Polygon"]],paint:{"fill-color":"hsl(0, 20%, 97%)","fill-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.28,["match",["config","theme"],"monochrome",.05,0],.3,.25],"fill-antialias":!1}},{id:"landuse",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"landuse",minzoom:8,filter:["all",[">=",["to-number",["get","sizerank"]],0],["<=",["-",["to-number",["get","sizerank"]],["interpolate",["exponential",1.5],["zoom"],12,0,18,14]],14],["match",["get","type"],["skateboard","playground","parking","surface","sand"],!1,!0]],paint:{"fill-emissive-strength":["interpolate",["linear"],["zoom"],12,["match",["config","theme"],"monochrome",.05,.25],14,["match",["config","theme"],"monochrome",0,.25]],"fill-color":["interpolate",["linear"],["measure-light","brightness"],.1,["match",["get","class"],"wood",["hsla",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],10]],["max",0,["-",["to-number",["at",3,["to-hsla",["config","colorGreenspace"]]]],.2]]],"scrub",["hsla",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",3,["to-hsla",["config","colorGreenspace"]]]],.4]]],["agriculture","grass"],["hsla",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],3]],["max",0,["-",["to-number",["at",3,["to-hsla",["config","colorGreenspace"]]]],.4]]],"park",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],4]]],"airport","hsl(225, 35%, 70%)","cemetery",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],30]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],9]]],"glacier","hsl(200, 70%, 95%)","hospital","hsl(0, 30%, 70%)","pitch",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["min",100,["+",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],10]],["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]]],"sand","hsl(52, 65%, 75%)","school","hsl(40, 10%, 60%)","commercial_area","hsl(324, 27%, 70%)","residential","hsl(20, 7%, 97%)",["facility","industrial"],"hsl(230, 20%, 70%)","hsl(20, 22%, 86%)"],.4,["match",["get","class"],"wood",["hsla",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],10]],["max",0,["-",["to-number",["at",3,["to-hsla",["config","colorGreenspace"]]]],.2]]],"scrub",["hsla",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",3,["to-hsla",["config","colorGreenspace"]]]],.4]]],["agriculture","grass"],["hsla",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],3]],["max",0,["-",["to-number",["at",3,["to-hsla",["config","colorGreenspace"]]]],.4]]],"park",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],4]]],"airport","hsl(225, 60%, 92%)","cemetery",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],10]],["at",2,["to-hsla",["config","colorGreenspace"]]]],"glacier","hsl(200, 70%, 90%)","hospital","hsl(0, 50%, 92%)","pitch",["hsl",["max",0,["-",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],12]],["min",100,["+",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],10]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],2]]],"sand","hsl(52, 65%, 86%)","school","hsl(40, 50%, 88%)","commercial_area","hsl(24, 100%, 94%)","residential","hsl(20, 7%, 97%)",["facility","industrial"],"hsl(230, 15%, 92%)","hsl(20, 22%, 86%)"]],"fill-opacity":["interpolate",["linear"],["zoom"],9,["match",["get","class"],["airport"],.8,.2],10,["match",["config","theme"],"monochrome",["match",["get","class"],["residential","industrial","hospital","parking","school","facility","commercial_area"],0,["grass","scrub","glacier","pitch","sand","airport"],1,["interpolate",["linear"],["measure-light","brightness"],.1,.8,.4,1]],["match",["get","class"],["residential"],0,["grass","scrub","glacier","pitch","sand","airport"],1,["interpolate",["linear"],["measure-light","brightness"],.1,.8,.4,1]]]],"fill-antialias":!1}},{id:"recreation-polygon",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"landuse",minzoom:14,filter:["all",[">=",["to-number",["get","sizerank"]],0],["<=",["-",["to-number",["get","sizerank"]],["interpolate",["exponential",1.5],["zoom"],12,0,18,14]],14],["match",["get","type"],["skateboard","playground","parking","surface","sand"],!0,!1]],paint:{"fill-emissive-strength":["interpolate",["linear"],["zoom"],12,["match",["config","theme"],"monochrome",.05,.25],14,["match",["config","theme"],"monochrome",0,.25]],"fill-opacity":["interpolate",["linear"],["zoom"],14,0,15,1],"fill-color":["interpolate",["linear"],["measure-light","brightness"],.1,["match",["get","type"],["parking","playground","skateboard","surface"],"hsla(20, 3%, 90%, 0.2)","hsl(52, 65%, 75%)"],.4,["match",["get","type"],["parking","playground","skateboard","surface"],"hsl(20, 3%, 92%)","hsl(52, 65%, 86%)"]],"fill-antialias":!1}},{id:"3d-hillshade",type:"hillshade",metadata:{"mapbox:group":"land & water"},source:"mapbox-dem",minzoom:6,maxzoom:14.49,paint:{"hillshade-exaggeration":["interpolate",["exponential",1.5],["zoom"],12,.4,14,0],"hillshade-illumination-anchor":"map","hillshade-shadow-color":["interpolate",["exponential",1.5],["zoom"],7,["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(235, 10%, 0%, 0.2)",.3,"hsla(0, 100%, 0%,0.2)"],10,["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(235, 10%, 0%, 0.3)",.3,"hsla(0, 100%, 0%,0.2)"]],"hillshade-highlight-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(235, 20%, 85%, 0.2)",.3,"hsla(0, 100%, 100%, 0.8)"],"hillshade-accent-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(235, 30%, 30%, 1)",.3,"hsla(0, 100%, 100%, 1)"]}},{id:"hillshade",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"hillshade",maxzoom:16,paint:{"fill-emissive-strength":["interpolate",["exponential",1.5],["zoom"],5.9,0,6,["match",["config","theme"],"monochrome",0,.2]],"fill-color":["interpolate",["linear"],["measure-light","brightness"],.28,["match",["get","class"],"shadow","hsla(235, 10%, 10%, 0.1)","hsla(235, 20%, 80%, 0)"],.3,["match",["get","class"],"shadow","hsla(40, 20%, 20%, 0.04)","hsla(20, 20%, 100%, 0.12)"]],"fill-opacity":["interpolate",["linear"],["zoom"],10,1,12,.8,16,0],"fill-antialias":!1}},{id:"pitch-outline",type:"line",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"landuse",minzoom:15,filter:["any",["==",["get","class"],"pitch"],["==",["get","type"],"playground"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.05,.15],"line-color":["match",["get","type"],["playground","skateboard"],"hsl(0, 0%, 85%)",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],10]]]]}},{id:"waterway-shadow",type:"line",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"waterway",minzoom:8,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":"round"},paint:{"line-color":["hsla",["min",360,["+",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],19]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],1]],["to-number",["at",3,["to-hsla",["config","colorWater"]]]]],"line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-translate":["interpolate",["exponential",1.2],["zoom"],7,["literal",[0,0]],16,["literal",[-1,-1]]],"line-translate-anchor":"viewport","line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]}},{id:"waterway",type:"line",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"waterway",minzoom:8,layout:{"line-cap":["step",["zoom"],"butt",11,"round"],"line-join":"round"},paint:{"line-color":["config","colorWater"],"line-width":["interpolate",["exponential",1.3],["zoom"],9,["match",["get","class"],["canal","river"],.1,0],20,["match",["get","class"],["canal","river"],8,3]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,8.5,1]}},{id:"water",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"water",paint:{"fill-color":["interpolate",["linear"],["zoom"],13,["config","colorWater"],14,["interpolate",["linear"],["measure-light","brightness"],0,["hsla",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],55]],["to-number",["at",3,["to-hsla",["config","colorWater"]]]]],.02,["config","colorWater"]]],"fill-emissive-strength":["interpolate",["linear"],["zoom"],5,["match",["config","theme"],"monochrome",.05,.1],7,0],"fill-antialias":!1}},{id:"water-depth",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"depth",maxzoom:8,paint:{"fill-color":["interpolate",["linear"],["zoom"],6,["interpolate",["linear"],["get","min_depth"],0,["hsla",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["to-number",["at",2,["to-hsla",["config","colorWater"]]]],.35],200,["hsla",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],8]],.35],7e3,["hsla",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],16]],.35]],8,["interpolate",["linear"],["get","min_depth"],0,["hsla",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["to-number",["at",2,["to-hsla",["config","colorWater"]]]],0],200,["hsla",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],8]],0],7e3,["hsla",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],16]],0]]],"fill-antialias":!1}},{id:"land-structure-polygon",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"structure",minzoom:13,filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"Polygon"]],paint:{"fill-color":"hsl(20, 20%, 95%)","fill-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.28,["match",["config","theme"],"monochrome",.05,0],.3,.25],"fill-antialias":!1}},{id:"land-structure-line",type:"line",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"structure",minzoom:13,filter:["all",["==",["get","class"],"land"],["==",["geometry-type"],"LineString"]],layout:{"line-cap":"square"},paint:{"line-width":["interpolate",["exponential",1.99],["zoom"],14,.75,20,40],"line-color":"hsl(20, 20%, 95%)","line-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.28,["match",["config","theme"],"monochrome",.05,0],.3,.25]}},{id:"aeroway-polygon",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"aeroway",minzoom:11,filter:["==",["geometry-type"],"Polygon"],paint:{"fill-emissive-strength":.15,"fill-color":"hsl(225, 52%, 87%)","fill-opacity":["interpolate",["linear"],["zoom"],10,0,11,1],"fill-antialias":!1}},{id:"aeroway-line",type:"line",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"aeroway",minzoom:9,filter:["==",["geometry-type"],"LineString"],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.3,.8],"line-color":["interpolate",["linear"],["measure-light","brightness"],0,"hsl(238, 16%, 40%)",.2,"hsl(225, 52%, 87%)"],"line-width":["interpolate",["exponential",1.5],["zoom"],9,["match",["get","type"],"runway",1,.5],18,["match",["get","type"],"runway",80,20]],"line-opacity":["interpolate",["linear"],["zoom"],10,0,11,1]}},{id:"building-underground",type:"fill",metadata:{"mapbox:group":"land & water"},source:"composite","source-layer":"building",minzoom:15,filter:["all",["==",["get","underground"],"true"],["==",["geometry-type"],"Polygon"]],paint:{"fill-color":["case",["to-boolean",["feature-state","select"]],["config","colorBuildingSelect"],["to-boolean",["feature-state","highlight"]],["config","colorBuildingHighlight"],"hsl(240, 60%, 92%)"],"fill-opacity":["interpolate",["linear"],["zoom"],15,0,16,.5],"fill-antialias":!1}},{id:"bottom",type:"slot",metadata:{"mapbox:description":"Above polygons (land, landuse, water, etc.)"}},{id:"tunnel-path-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"path"],["!=",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-join":"round"},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,18,1,22,2],"line-color":"hsl(0, 10%, 80%)","line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-dasharray":[3,1]}},{id:"tunnel-pedestrian-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","type"],["pedestrian"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-join":"round"},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,18,1,22,2],"line-color":"hsl(0, 10%, 80%)","line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-dasharray":[3,1]}},{id:"tunnel-steps-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-join":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 10%, 93%)"}},{id:"tunnel-minor-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["track"],!0,"service",["step",["zoom"],!1,14,!0],!1],["match",["get","type"],["piste"],!1,!0],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],14,1,18,10,22,100],"line-dasharray":[3,3]}},{id:"tunnel-street-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["street","street_limited"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-opacity":["step",["zoom"],0,14,1],"line-dasharray":[3,3]}},{id:"tunnel-minor-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["primary_link","secondary_link","tertiary_link"],!0,!1],["==",["get","structure"],"tunnel"],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.4,18,18,22,180],"line-opacity":["step",["zoom"],0,11,1],"line-dasharray":[3,3]}},{id:"tunnel-secondary-tertiary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["secondary","tertiary"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,0,18,26,22,260],"line-dasharray":[3,3]}},{id:"tunnel-primary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-dasharray":[3,3]}},{id:"tunnel-major-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-dasharray":[3,3]}},{id:"tunnel-motorway-trunk-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["min",["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],85],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-dasharray":[3,3]}},{id:"tunnel-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.05,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)","line-dasharray":[10,0]}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"path"],["!=",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":"round","line-join":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.05,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)"}},{id:"tunnel-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.05,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)","line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"tunnel-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","type"],"pedestrian"],["==",["get","class"],"pedestrian"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":"round","line-join":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.05,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(295, 11%, 95%)"}},{id:"tunnel-construction",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"construction"],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,18,20,22,200],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorRoads"]]]],.2]],"line-dasharray":[.2,.1]}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["track"],!0,"service",["step",["zoom"],!1,14,!0],!1],["match",["get","type"],["piste"],!1,!0],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,18,10,22,100],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorRoads"]]]],.2]]}},{id:"tunnel-minor-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["primary_link","secondary_link","tertiary_link"],!0,!1],["==",["get","structure"],"tunnel"],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.4,18,18,22,180],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorRoads"]]]],.2]]}},{id:"tunnel-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],["motorway_link"],["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]],.2]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]],.2]]]}},{id:"tunnel-street",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["street","street_limited"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorRoads"]]]],.2]],"line-opacity":["step",["zoom"],0,14,1]}},{id:"tunnel-street-low",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,maxzoom:14,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["street","street_limited"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorRoads"]]]],.2]]}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["secondary","tertiary"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,0,18,26,22,260],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorRoads"]]]],.2]]}},{id:"tunnel-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorRoads"]]]],.2]]}},{id:"tunnel-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.3],["-",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]],.2]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10],98],["-",["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]],.2]]]}},{id:"tunnel-oneway-arrow",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["==",["get","oneway"],"true"],["step",["zoom"],["match",["get","class"],["primary","secondary","street","street_limited","tertiary"],!0,!1],16,["match",["get","class"],["primary","secondary","tertiary","street","street_limited","primary_link","secondary_link","tertiary_link","service","track"],!0,!1]]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.4,.7],.5,1]}},{id:"tunnel-oneway-arrow-trunk",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["trunk","trunk_link"],!0,!1],["==",["get","oneway"],"true"]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.7],.5,1]}},{id:"tunnel-oneway-arrow-motorway",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["motorway","motorway_link"],!0,!1],["==",["get","oneway"],"true"]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.7],.5,1]}},{id:"tunnel-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"tunnel"],["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.2],"line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-color":"hsl(125, 50%, 60%)","line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,.5],"line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"ferry",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:8,filter:["==",["get","type"],"ferry"],paint:{"line-emissive-strength":["interpolate",["linear"],["zoom"],13,["match",["config","theme"],"monochrome",.2,.3],14,["match",["config","theme"],"monochrome",.4,.5]],"line-color":["interpolate",["linear"],["measure-light","brightness"],.3,["hsl",["min",360,["+",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],9]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],50]],50],.4,["case",[">=",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],50],["hsl",["min",360,["+",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],9]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],20]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],20]]],["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],20]]]]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,17,1],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,20,1],"line-dasharray":["step",["zoom"],["literal",[1,0]],13,["literal",[12,4]]]}},{id:"ferry-auto",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:8,filter:["==",["get","type"],"ferry_auto"],paint:{"line-emissive-strength":["interpolate",["linear"],["zoom"],13,["match",["config","theme"],"monochrome",.15,.3],14,["match",["config","theme"],"monochrome",.3,.5]],"line-color":["interpolate",["linear"],["measure-light","brightness"],.3,["hsl",["min",360,["+",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],9]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],50]],50],.4,["case",[">=",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],50],["hsl",["min",360,["+",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],9]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],20]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],20]]],["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],20]]]]],"line-opacity":["interpolate",["linear"],["zoom"],8,0,17,1],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,20,1]}},{id:"road-path-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","class"],"path"],["step",["zoom"],["!",["match",["get","type"],["steps","sidewalk","crossing"],!0,!1]],16,["!=",["get","type"],"steps"]],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,18,1,22,2],"line-color":"hsl(0, 10%, 80%)","line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80]}},{id:"road-steps-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-join":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":"hsl(0, 10%, 80%)"}},{id:"road-pedestrian-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","class"],"pedestrian"],["match",["get","structure"],["none","ford"],!0,!1],["case",["has","layer"],[">=",["get","layer"],0],!0],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,18,1,22,2],"line-color":"hsl(0, 10%, 80%)","line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80]}},{id:"road-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":[10,0]}},{id:"road-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"path"],["step",["zoom"],["!",["match",["get","type"],["steps","sidewalk","crossing"],!0,!1]],16,["!=",["get","type"],"steps"]],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"road-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-join":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"road-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"pedestrian"],["match",["get","structure"],["none","ford"],!0,!1],["case",["has","layer"],[">=",["get","layer"],0],!0],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"],"line-join":["step",["zoom"],"miter",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"golf-hole-line",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["==",["get","class"],"golf"],paint:{"line-emissive-strength":.2,"line-color":["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],30]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],14]]]}},{id:"gate-fence-hedge-shade",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"structure",minzoom:17,filter:["match",["get","class"],["gate","fence","hedge"],!0,!1],paint:{"line-width":["interpolate",["linear"],["zoom"],16,1,20,3],"line-opacity":["match",["get","class"],"gate",.5,1],"line-translate":[1.5,1.5],"line-color":["match",["get","class"],"hedge",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],25]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],14]]],"hsl(221, 0%, 70%)"]}},{id:"gate-fence-hedge",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"structure",minzoom:16,filter:["match",["get","class"],["gate","fence","hedge"],!0,!1],paint:{"line-color":["match",["get","class"],"hedge",["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],25]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],14]]],"hsl(221, 0%, 85%)"],"line-width":["interpolate",["linear"],["zoom"],16,1,20,3],"line-opacity":["match",["get","class"],"gate",.5,1]}},{id:"road-minor-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["match",["get","class"],["track"],!0,"service",["step",["zoom"],!1,14,!0],!1],["match",["get","type"],["piste"],!1,!0],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],14,1,18,10,22,100]}},{id:"road-street-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["street","street_limited"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-opacity":["step",["zoom"],0,14,1]}},{id:"road-minor-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["primary_link","secondary_link","tertiary_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.4,18,18,22,180],"line-opacity":["step",["zoom"],0,11,1]}},{id:"road-secondary-tertiary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["secondary","tertiary"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,0,18,26,22,260]}},{id:"road-primary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","class"],"primary"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280]}},{id:"road-major-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-opacity":["step",["zoom"],0,11,1]}},{id:"road-motorway-trunk-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],5,["all",["match",["get","class"],["motorway","trunk"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]]],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-opacity":["interpolate",["linear"],["zoom"],3,0,3.5,1]}},{id:"turning-feature",type:"circle",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["turning_circle","turning_loop"],!0,!1],["==",["geometry-type"],"Point"]],paint:{"circle-emissive-strength":["match",["config","theme"],"monochrome",.2,.35],"circle-radius":["interpolate",["exponential",1.5],["zoom"],15,4.5,16,8,18,20,22,200],"circle-color":["config","colorRoads"],"circle-pitch-alignment":"map"}},{id:"road-polygon-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["street","street_limited","primary","trunk_link","secondary_link","tertiary_link","tertiary","secondary","trunk","primary_link","motorway_link"],!0,!1],["match",["geometry-type"],["Polygon"],!0,!1],["match",["get","type"],["service"],!1,!0]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-opacity":["step",["zoom"],0,14,1],"line-color":["match",["get","class"],["motorway","motorway_link"],["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["trunk","trunk_link"],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]]],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-offset":["interpolate",["exponential",1.5],["zoom"],14,.4,22,-1]}},{id:"road-others-polygon-fill",type:"fill",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["street","street_limited"],!0,!1],["match",["geometry-type"],["Polygon"],!0,!1],["match",["get","type"],["service"],!1,!0]],layout:{},paint:{"fill-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"fill-opacity":["interpolate",["linear"],["zoom"],13,0,14,1],"fill-color":["config","colorRoads"],"fill-antialias":!1}},{id:"road-secondary-tertiary-polygon-fill",type:"fill",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["secondary_link","tertiary_link","tertiary","secondary"],!0,!1],["match",["geometry-type"],["Polygon"],!0,!1],["match",["get","type"],["service"],!1,!0]],layout:{},paint:{"fill-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"fill-opacity":["interpolate",["linear"],["zoom"],13,0,14,1],"fill-color":["config","colorRoads"],"fill-antialias":!1}},{id:"road-primary-polygon-fill",type:"fill",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["primary","primary_link"],!0,!1],["match",["geometry-type"],["Polygon"],!0,!1],["match",["get","type"],["service"],!1,!0]],layout:{},paint:{"fill-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"fill-opacity":["interpolate",["linear"],["zoom"],13,0,14,1],"fill-color":["config","colorRoads"],"fill-antialias":!1}},{id:"road-motorway-trunk-polygon-fill",type:"fill",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["motorway","trunk","trunk_link","motorway_link"],!0,!1],["match",["geometry-type"],["Polygon"],!0,!1],["match",["get","type"],["service"],!1,!0]],layout:{},paint:{"fill-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.1],["+",["config","roadsBrightness"],.2]],"fill-opacity":["interpolate",["linear"],["zoom"],13,0,14,1],"fill-color":["match",["get","class"],["motorway","motorway_link"],["config","colorMotorways"],["config","colorTrunks"]],"fill-antialias":!1}},{id:"road-construction",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","class"],"construction"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,18,20,22,200],"line-color":["config","colorRoads"],"line-dasharray":[.2,.1]}},{id:"road-minor",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["track"],!0,"service",["step",["zoom"],!1,14,!0],!1],["match",["get","type"],["piste"],!1,!0],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,18,10,22,100],"line-color":["config","colorRoads"]}},{id:"road-minor-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["match",["get","class"],["primary_link","secondary_link","tertiary_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.4,18,18,22,180],"line-color":["config","colorRoads"]}},{id:"road-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.1],["+",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],"motorway_link",["config","colorMotorways"],["config","colorTrunks"]]}},{id:"road-street",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["street","street_limited"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-color":["config","colorRoads"],"line-opacity":["step",["zoom"],0,14,1]}},{id:"road-street-low",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:11,maxzoom:14,filter:["all",["match",["get","class"],["street","street_limited"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-color":["config","colorRoads"]}},{id:"road-secondary-tertiary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:8,filter:["all",["match",["get","class"],["secondary","tertiary"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,0,18,26,22,260],"line-color":["config","colorRoads"]}},{id:"road-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["==",["get","class"],"primary"],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"]}},{id:"road-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:3,filter:["all",["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],5,["all",["match",["get","class"],["motorway","trunk"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]]],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",13,"round"],"line-join":["step",["zoom"],"miter",13,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.1],["+",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]],"line-opacity":["interpolate",["linear"],["zoom"],3,0,3.5,["match",["config","theme"],"monochrome",0,1],5,["match",["config","theme"],"monochrome",1,1]]}},{id:"road-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["match",["get","structure"],["none","ford"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.5,.6],"line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-color":"hsl(125, 50%, 60%)","line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,1],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"road-rail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["major_rail","minor_rail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],paint:{"line-gap-width":["interpolate",["linear"],["zoom"],15,0,16,1,18,2,22,20],"line-color":["interpolate",["linear"],["measure-light","brightness"],.1,"hsl(0, 0%, 30%)",.4,"hsl(0, 0%, 65%)"],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,2]}},{id:"road-rail-tracks",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["major_rail","minor_rail"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],paint:{"line-color":["interpolate",["linear"],["measure-light","brightness"],.1,"hsl(0, 0%, 30%)",.4,"hsl(0, 0%, 65%)"],"line-width":["interpolate",["exponential",1.5],["zoom"],16,2,18,6,20,16,22,32],"line-dasharray":["step",["zoom"],["literal",[.1,15]],16,["literal",[.1,1]],18,["literal",[.05,.5]]],"line-opacity":["interpolate",["linear"],["zoom"],13.75,0,14,1]}},{id:"road-oneway-arrow",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","oneway"],"true"],["step",["zoom"],["match",["get","class"],["primary","secondary","tertiary","street","street_limited"],!0,!1],16,["match",["get","class"],["primary","secondary","tertiary","street","street_limited","primary_link","secondary_link","tertiary_link","service","track"],!0,!1]],["match",["get","structure"],["none","ford"],!0,!1]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.4,.7],.5,1]}},{id:"road-oneway-arrow-trunk",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","oneway"],"true"],["match",["get","class"],["trunk","trunk_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.7],.5,1]}},{id:"road-oneway-arrow-motorway",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","oneway"],"true"],["match",["get","class"],["motorway","motorway_link"],!0,!1],["match",["get","structure"],["none","ford"],!0,!1]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.7],.5,1]}},{id:"crosswalks",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"structure",minzoom:17,filter:["all",["==",["get","class"],"crosswalk"],["==",["geometry-type"],"Point"]],layout:{"icon-size":["interpolate",["linear"],["zoom"],16,.1,18,.2,19,.5,22,1.5],"icon-image":["step",["zoom"],["image","crosswalk-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","crosswalk-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"icon-rotate":["get","direction"],"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.4,.7],.5,1]}},{id:"bridge-path-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"path"],["step",["zoom"],["!",["match",["get","type"],["steps","sidewalk","crossing"],!0,!1]],16,["!=",["get","type"],"steps"]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,18,1,22,2],"line-color":"hsl(0, 10%, 80%)","line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80]}},{id:"bridge-steps-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["==",["get","structure"],"bridge"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],15,2,17,4.6,18,7],"line-color":"hsl(0, 10%, 80%)"}},{id:"bridge-pedestrian-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"pedestrian"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",0,.15],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,18,1,22,2],"line-color":"hsl(0, 10%, 80%)","line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80]}},{id:"bridge-path-trail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"path"],["match",["get","type"],["hiking","mountain_bike","trail"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":[10,0]}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"path"],["!=",["get","type"],"steps"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"bridge-steps",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","type"],"steps"],["==",["get","structure"],"bridge"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"],"line-dasharray":["step",["zoom"],["literal",[1,0]],17,["literal",[.2,.2]],19,["literal",[.1,.1]]]}},{id:"bridge-pedestrian",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"pedestrian"],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"],"line-cap":["step",["zoom"],"butt",16,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.1,.25],"line-width":["interpolate",["exponential",1.5],["zoom"],12,0,18,6,22,80],"line-color":["interpolate",["linear"],["zoom"],15,"hsl(295, 10%, 97%)",16,"hsl(295, 10%, 93%)"]}},{id:"bridge-minor-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["track"],!0,"service",["step",["zoom"],!1,14,!0],!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],14,1,18,10,22,100],"line-blur":10}},{id:"bridge-minor-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["track"],!0,"service",["step",["zoom"],!1,14,!0],!1],["match",["get","type"],["piste"],!1,!0],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],14,1,18,10,22,100]}},{id:"bridge-street-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["street","street_limited"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-opacity":["step",["zoom"],0,14,1],"line-blur":10}},{id:"bridge-street-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["street","street_limited"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-opacity":["step",["zoom"],0,14,1]}},{id:"bridge-minor-link-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["primary_link","secondary_link","tertiary_link"],!0,!1],["==",["get","structure"],"bridge"],["==",["geometry-type"],"LineString"]],layout:{"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.4,18,18,22,180],"line-opacity":["step",["zoom"],0,11,1],"line-blur":10}},{id:"bridge-minor-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],["primary_link","secondary_link","tertiary_link"],!0,!1],["==",["get","structure"],"bridge"],["==",["geometry-type"],"LineString"]],layout:{"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.4,18,18,22,180],"line-opacity":["step",["zoom"],0,11,1]}},{id:"bridge-secondary-tertiary-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["secondary","tertiary"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,0,18,26,22,260],"line-opacity":["step",["zoom"],0,10,1],"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-blur":10}},{id:"bridge-secondary-tertiary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["secondary","tertiary"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,0,18,26,22,260],"line-opacity":["step",["zoom"],0,10,1]}},{id:"bridge-primary-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],paint:{"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-opacity":["step",["zoom"],0,10,1],"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-blur":10}},{id:"bridge-primary-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorRoads"]]]],["to-number",["at",1,["to-hsla",["config","colorRoads"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorRoads"]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-opacity":["step",["zoom"],0,10,1]}},{id:"bridge-major-link-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-blur":10}},{id:"bridge-major-link-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200]}},{id:"bridge-motorway-trunk-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway","trunk"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],paint:{"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-blur":10}},{id:"bridge-motorway-trunk-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway","trunk"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300]}},{id:"bridge-construction",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"construction"],["==",["geometry-type"],"LineString"]],paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,18,20,22,200],"line-color":["config","colorRoads"],"line-dasharray":[.2,.1]}},{id:"bridge-minor",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["track"],!0,"service",["step",["zoom"],!1,14,!0],!1],["match",["get","type"],["piste"],!1,!0],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,18,10,22,100],"line-color":["config","colorRoads"]}},{id:"bridge-minor-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["match",["get","class"],["primary_link","secondary_link","tertiary_link"],!0,!1],["==",["get","structure"],"bridge"],["==",["geometry-type"],"LineString"]],layout:{"line-cap":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.4,18,18,22,180],"line-color":["config","colorRoads"]}},{id:"bridge-major-link",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.1],["+",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],"motorway_link",["config","colorMotorways"],["config","colorTrunks"]]}},{id:"bridge-street",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["street","street_limited"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-color":["config","colorRoads"],"line-opacity":["step",["zoom"],0,14,1]}},{id:"bridge-street-low",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,maxzoom:14,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["street","street_limited"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"],"line-join":["step",["zoom"],"miter",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.5,18,20,22,200],"line-color":["config","colorRoads"]}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["secondary","tertiary"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,0,18,26,22,260],"line-color":["config","colorRoads"]}},{id:"bridge-primary",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["==",["get","class"],"primary"],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.2],["config","roadsBrightness"]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,28,22,280],"line-color":["config","colorRoads"]}},{id:"bridge-motorway-trunk",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway","trunk"],!0,!1],["<=",["get","layer"],1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.1],["+",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]]}},{id:"bridge-major-link-2-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-blur":10}},{id:"bridge-major-link-2-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,.8,22,2],"line-color":["match",["get","class"],"motorway_link",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200]}},{id:"bridge-motorway-trunk-2-shadow",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],20]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-width":["interpolate",["exponential",1.5],["zoom"],14,2,22,10],"line-blur":10}},{id:"bridge-motorway-trunk-2-case",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],paint:{"line-width":["interpolate",["exponential",1.5],["zoom"],14,1,22,2],"line-color":["match",["get","class"],"motorway",["hsla",["to-number",["at",0,["to-hsla",["config","colorMotorways"]]]],["to-number",["at",1,["to-hsla",["config","colorMotorways"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorMotorways"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorTrunks"]]]],["to-number",["at",1,["to-hsla",["config","colorTrunks"]]]],["abs",["-",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],10]],["to-number",["at",3,["to-hsla",["config","colorTrunks"]]]]]],"line-gap-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300]}},{id:"bridge-major-link-2",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway_link","trunk_link"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":"round"},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.1],["+",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],12,.8,18,20,22,200],"line-color":["match",["get","class"],"motorway_link",["config","colorMotorways"],["config","colorTrunks"]]}},{id:"bridge-motorway-trunk-2",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],[">=",["get","layer"],2],["match",["get","class"],["motorway","trunk"],!0,!1],["==",["geometry-type"],"LineString"]],layout:{"line-cap":["step",["zoom"],"butt",14,"round"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",["-",["config","roadsBrightness"],.1],["+",["config","roadsBrightness"],.2]],"line-width":["interpolate",["exponential",1.5],["zoom"],3,.8,18,30,22,300],"line-color":["match",["get","class"],"motorway",["config","colorMotorways"],["config","colorTrunks"]]}},{id:"bridge-oneway-arrow",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"bridge"],["==",["get","oneway"],"true"],["step",["zoom"],["match",["get","class"],["primary","secondary","tertiary","street","street_limited"],!0,!1],16,["match",["get","class"],["primary","secondary","tertiary","street","street_limited","primary_link","secondary_link","tertiary_link","service","track"],!0,!1]]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoads"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.4,.7],.5,1]}},{id:"bridge-oneway-arrow-trunk",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["trunk","trunk_link"],!0,!1],["==",["get","oneway"],"true"]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorTrunks"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.7],.5,1]}},{id:"bridge-oneway-arrow-motorway",type:"symbol",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["motorway","motorway_link"],!0,!1],["==",["get","oneway"],"true"]],layout:{"symbol-placement":"line","icon-image":["step",["zoom"],["image","oneway-small",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}],18,["image","oneway-large",{params:{color:["case",[">=",["to-number",["at",2,["to-hsla",["config","colorMotorways"]]]],92],"hsl(0, 0%, 85%)","hsl(0, 0%, 100%)"]}}]],"symbol-spacing":200,"icon-rotation-alignment":"map","icon-allow-overlap":!0,"icon-ignore-placement":!0},paint:{"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.7],.5,1]}},{id:"bridge-path-cycleway-piste",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:14,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["path","track"],!0,!1],["match",["get","type"],"cycleway",["step",["zoom"],!1,15,!0],"piste",!0,!1],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPedestrianRoads"],"visible","none"]},paint:{"line-emissive-strength":["match",["config","theme"],"monochrome",.5,.6],"line-color":"hsl(125, 50%, 60%)","line-width":["interpolate",["linear"],["zoom"],12,["match",["get","type"],["piste"],.5,0],18,["match",["get","type"],["piste"],4,2],22,["match",["get","type"],["piste"],40,20]],"line-translate":[0,0],"line-offset":["interpolate",["linear"],["zoom"],12,0,18,["match",["get","type"],["piste"],0,-2],22,["match",["get","type"],["piste"],0,-20]],"line-opacity":["interpolate",["linear"],["zoom"],15,["match",["get","type"],["piste"],1,0],16,1],"line-dasharray":["step",["zoom"],["literal",[1]],16,["literal",[1,1]]]}},{id:"bridge-rail",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["major_rail","minor_rail"],!0,!1]],paint:{"line-gap-width":["interpolate",["linear"],["zoom"],15,0,16,1,18,2,22,20],"line-color":["interpolate",["linear"],["measure-light","brightness"],.1,"hsl(0, 0%, 30%)",.4,"hsl(0, 0%, 65%)"],"line-width":["interpolate",["exponential",1.5],["zoom"],14,.5,22,2]}},{id:"bridge-rail-tracks",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:13,filter:["all",["==",["get","structure"],"bridge"],["match",["get","class"],["major_rail","minor_rail"],!0,!1]],paint:{"line-color":["interpolate",["linear"],["measure-light","brightness"],.1,"hsl(0, 0%, 30%)",.4,"hsl(0, 0%, 65%)"],"line-width":["interpolate",["exponential",1.5],["zoom"],16,2,18,6,20,16,22,32],"line-dasharray":["step",["zoom"],["literal",[.1,15]],16,["literal",[.1,1]],18,["literal",[.05,.5]]],"line-opacity":["interpolate",["linear"],["zoom"],13.75,0,14,1]}},{id:"aerialway",type:"line",metadata:{"mapbox:group":"roads & transit network"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["==",["get","class"],"aerialway"],["match",["get","type"],["aerialway:zip_line"],["step",["zoom"],!1,15,!0],!0]],paint:{"line-emissive-strength":1,"line-color":"hsl(225, 60%, 58%)","line-width":["interpolate",["exponential",1.5],["zoom"],14,1,20,2],"line-dasharray":[4,1]}},{id:"2d-building",type:"fill-extrusion",metadata:{"mapbox:group":"buildings"},source:"composite","source-layer":"building",minzoom:15,filter:["all",["!=",["get","type"],"building:part"],["==",["get","underground"],"false"]],layout:{visibility:["case",["config","show3dObjects"],"none","visible"]},paint:{"fill-extrusion-emissive-strength":["case",["to-boolean",["feature-state","select"]],["interpolate",["linear"],["at",2,["to-hsla",["config","colorBuildingSelect"]]],50,.6,90,.4],["to-boolean",["feature-state","highlight"]],["interpolate",["linear"],["at",2,["to-hsla",["config","colorBuildingHighlight"]]],50,.6,90,.4],.25],"fill-extrusion-cutoff-fade-range":.5,"fill-extrusion-color":["case",["to-boolean",["feature-state","select"]],["config","colorBuildingSelect"],["to-boolean",["feature-state","highlight"]],["config","colorBuildingHighlight"],["interpolate",["linear"],["measure-light","brightness"],0,["match",["config","theme"],"monochrome","hsl(0, 0%, 5%)","hsl(235, 8%, 42%)"],.02,"hsl(235, 8%, 42%)",.03,"hsl(280, 8%, 58%)",.4,"hsl(25, 20%, 91%)"]],"fill-extrusion-opacity":1,"fill-extrusion-base":0}},{id:"2d-building-outline",type:"line",metadata:{"mapbox:group":"buildings"},source:"composite","source-layer":"building",minzoom:15,filter:["all",["!=",["get","type"],"building:part"],["==",["get","underground"],"false"]],layout:{visibility:["case",["config","show3dObjects"],"none","visible"]},paint:{"line-width":.5,"line-emissive-strength":.25,"line-color":["interpolate",["linear"],["zoom"],14,"hsla(0, 0%, 100%, 0)",16,["interpolate",["linear"],["measure-light","brightness"],0,["match",["config","theme"],"monochrome","hsl(0, 0%, 0%)","hsl(235, 8%, 22%)"],.02,"hsl(235, 8%, 22%)",.03,"hsl(280, 8%, 50%)",.4,"hsl(25, 10%, 76%)"]]}},{id:"admin-1-boundary-bg",type:"line",metadata:{"mapbox:group":"administrative boundaries"},source:"composite","source-layer":"admin",minzoom:7,filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-color":["hsla",345,100,100,["to-number",["at",3,["to-hsla",["config","colorAdminBoundaries"]]]]],"line-width":["interpolate",["linear"],["zoom"],3,3,12,6],"line-opacity":["interpolate",["linear"],["zoom"],7,0,8,.5],"line-dasharray":[1,0],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,3]},layout:{visibility:["case",["config","showAdminBoundaries"],"visible","none"]}},{id:"admin-0-boundary-bg",type:"line",metadata:{"mapbox:group":"administrative boundaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-width":["interpolate",["linear"],["zoom"],3,4,12,8],"line-color":["hsla",345,100,100,["to-number",["at",3,["to-hsla",["config","colorAdminBoundaries"]]]]],"line-opacity":["interpolate",["linear"],["zoom"],3,0,4,.5],"line-blur":["interpolate",["linear"],["zoom"],3,0,12,2]},layout:{visibility:["case",["config","showAdminBoundaries"],"visible","none"]}},{id:"admin-1-boundary",type:"line",metadata:{"mapbox:group":"administrative boundaries"},source:"composite","source-layer":"admin",minzoom:2,filter:["all",["==",["get","admin_level"],1],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":.5,"line-dasharray":["step",["zoom"],["literal",[2,0]],7,["literal",[2,2,6,2]]],"line-width":["interpolate",["linear"],["zoom"],3,.3,12,1.5],"line-opacity":["interpolate",["linear"],["zoom"],2,0,3,1],"line-color":["hsla",["to-number",["at",0,["to-hsla",["config","colorAdminBoundaries"]]]],["to-number",["at",1,["to-hsla",["config","colorAdminBoundaries"]]]],["min",100,["+",5,["to-number",["at",2,["to-hsla",["config","colorAdminBoundaries"]]]]]],["to-number",["at",3,["to-hsla",["config","colorAdminBoundaries"]]]]]},layout:{visibility:["case",["config","showAdminBoundaries"],"visible","none"]}},{id:"admin-0-boundary",type:"line",metadata:{"mapbox:group":"administrative boundaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","admin_level"],0],["==",["get","disputed"],"false"],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":1,"line-color":["config","colorAdminBoundaries"],"line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":[10,0]},layout:{visibility:["case",["config","showAdminBoundaries"],"visible","none"]}},{id:"admin-0-boundary-disputed",type:"line",metadata:{"mapbox:group":"administrative boundaries"},source:"composite","source-layer":"admin",minzoom:1,filter:["all",["==",["get","disputed"],"true"],["==",["get","admin_level"],0],["==",["get","maritime"],"false"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]]],paint:{"line-emissive-strength":.8,"line-color":["config","colorAdminBoundaries"],"line-width":["interpolate",["linear"],["zoom"],3,.5,12,2],"line-dasharray":["step",["zoom"],["literal",[3,2,5]],7,["literal",[2,1.5]]]},layout:{visibility:["case",["config","showAdminBoundaries"],"visible","none"]}},{id:"middle",type:"slot",metadata:{"mapbox:description":"Above lines (roads, etc.) and behind 3D buildings"}},{id:"trees",type:"model",metadata:{"mapbox:group":"3d models"},source:"composite","source-layer":"tree",minzoom:15,layout:{visibility:["case",["config","show3dObjects"],"visible","none"],"model-id":["step",["zoom"],["match",["get","leaf_type"],"needleleaved",["case",["==",["%",["number",["id"]],2],0],"pine1-lod4","pine2-lod4"],"palm","palm1-lod4",["case",["==",["%",["number",["id"]],4],0],"oak1-lod4",["==",["%",["number",["id"]],4],1],"oak2-lod4",["==",["%",["number",["id"]],4],2],"maple1-lod4","maple2-lod4"]],15.8,["match",["get","leaf_type"],"needleleaved",["case",["==",["%",["number",["id"]],2],0],"pine1-lod3","pine2-lod3"],"palm","palm1-lod3",["case",["==",["%",["number",["id"]],4],0],"oak1-lod3",["==",["%",["number",["id"]],4],1],"oak2-lod3",["==",["%",["number",["id"]],4],2],"maple1-lod3","maple2-lod3"]],16.8,["match",["get","leaf_type"],"needleleaved",["case",["==",["%",["number",["id"]],2],0],"pine1-lod2","pine2-lod2"],"palm","palm1-lod2",["case",["==",["%",["number",["id"]],4],0],"oak1-lod2",["==",["%",["number",["id"]],4],1],"oak2-lod2",["==",["%",["number",["id"]],4],2],"maple1-lod2","maple2-lod2"]],17.5,["match",["get","leaf_type"],"needleleaved",["case",["==",["%",["number",["id"]],2],0],"pine1-lod1","pine2-lod1"],"palm","palm1-lod1",["case",["==",["%",["number",["id"]],4],0],"oak1-lod1",["==",["%",["number",["id"]],4],1],"oak2-lod1",["==",["%",["number",["id"]],4],2],"maple1-lod1","maple2-lod1"]]]},paint:{"model-cutoff-fade-range":.5,"model-color":["hsl",["random",["max",["-",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],20],0],["min",["+",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],40],360],["id"]],50,["random",["max",["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],20],0],["min",["+",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],5],90],["id"]]],"model-color-mix-intensity":.4,"model-opacity":["interpolate",["linear"],["zoom"],15,0,16,1],"model-rotation":[0,0,["random",0,360,["id"]]],"model-scale":["match",["%",["number",["id"]],5],0,["literal",[.8,.8,.8]],1,["literal",[.8,.8,.8]],2,["literal",[.9,.9,.9]],["literal",[1,1,1]]]}},{id:"wind-turbine-shadow",type:"circle",metadata:{"mapbox:group":"3d models"},source:"composite","source-layer":"wind_turbine",minzoom:15,layout:{visibility:["case",["config","show3dObjects"],"visible","none"]},paint:{"circle-pitch-alignment":"map","circle-blur":2,"circle-radius":["interpolate",["exponential",1.6],["zoom"],16,2,22,260],"circle-color":"hsl(0, 0%, 60%)","circle-opacity":["interpolate",["exponential",1.8],["zoom"],15,0,15.5,1]}},{id:"wind-turbine-towers",type:"model",metadata:{"mapbox:group":"3d models"},source:"composite","source-layer":"wind_turbine",minzoom:15,layout:{visibility:["case",["config","show3dObjects"],"visible","none"],"model-id":["step",["zoom"],"turbinetower-lod2",18,"turbinetower-lod1"]},paint:{"model-opacity":["interpolate",["exponential",1.8],["zoom"],15,0,15.5,1],"model-color":"hsl(0, 0%, 85%)","model-color-mix-intensity":.5,"model-cast-shadows":!1,"model-emissive-strength":.1}},{id:"wind-turbine-rotors",type:"model",metadata:{"mapbox:group":"3d models"},source:"composite","source-layer":"wind_turbine",minzoom:15,layout:{visibility:["case",["config","show3dObjects"],"visible","none"],"model-id":["step",["zoom"],"turbinerotor-lod2",18,"turbinerotor-lod1"]},paint:{"model-opacity":["interpolate",["exponential",1.8],["zoom"],15,0,15.5,1],"model-color":"hsl(0, 0%, 85%)","model-color-mix-intensity":.5,"model-cast-shadows":!1,"model-translation":[0,0,54.46344],"model-rotation":["interpolate",["linear"],["zoom"],15,[["random",0,45,["id"]],6,0],20,[["random",45,720,["id"]],6,0]],"model-emissive-strength":.1}},{id:"3d-building",type:"fill-extrusion",metadata:{"mapbox:group":"3d buildings"},source:"composite","source-layer":"building",minzoom:15,filter:["all",["==",["get","extrude"],"true"],["==",["get","underground"],"false"]],layout:{visibility:["case",["config","show3dObjects"],"visible","none"],"fill-extrusion-edge-radius":.4},paint:{"fill-extrusion-emissive-strength":["case",["to-boolean",["feature-state","select"]],["interpolate",["linear"],["at",2,["to-hsla",["config","colorBuildingSelect"]]],50,.6,90,.4],["to-boolean",["feature-state","highlight"]],["interpolate",["linear"],["at",2,["to-hsla",["config","colorBuildingHighlight"]]],50,.6,90,.4],0],"fill-extrusion-cutoff-fade-range":.5,"fill-extrusion-ambient-occlusion-intensity":.15,"fill-extrusion-color":["case",["to-boolean",["feature-state","select"]],["config","colorBuildingSelect"],["to-boolean",["feature-state","highlight"]],["config","colorBuildingHighlight"],["interpolate",["linear"],["get","height"],0,"hsl(40, 43%, 93%)",200,"hsl(23, 100%, 97%)"]],"fill-extrusion-ambient-occlusion-ground-radius":["interpolate",["linear"],["zoom"],17,0,17.8,8],"fill-extrusion-height":["case",["all",["==",["get","height"],3],["in",["get","type"],["literal",["beach_hut","boathouse","bunker","cabin","carport","garage","garages","greenhouse","houseboat","hut","service","stable","toilets"]]]],2,["all",["==",["get","height"],3],["==",["get","type"],"bungalow"]],4,["all",["==",["get","height"],3],["in",["get","type"],["literal",["apartments","church","civic","college","commercial","hangar","hotel","mosque","office","school","university","warehouse"]]]],["random",18,20,["id"]],["==",["get","height"],3],["random",5,7,["id"]],["case",["to-boolean",["feature-state","select"]],["+",["number",["get","height"]],1],["to-boolean",["feature-state","highlight"]],["+",["number",["get","height"]],1],["number",["get","height"]]]],"fill-extrusion-opacity":["interpolate",["linear"],["zoom"],15,0,15.3,1],"fill-extrusion-base":["case",[">=",["number",["get","min_height"]],0],["get","min_height"],0],"fill-extrusion-flood-light-intensity":["interpolate",["linear"],["measure-light","brightness"],.015,["match",["config","theme"],"monochrome",0,.3],.026,0],"fill-extrusion-vertical-scale":["interpolate",["linear"],["zoom"],15,0,15.3,1],"fill-extrusion-flood-light-wall-radius":["case",[">",["number",["get","height"]],200],["/",["number",["get","height"]],3],0],"fill-extrusion-flood-light-ground-radius":["step",["number",["get","height"]],0,30,["random",30,100,["id"]]],"fill-extrusion-flood-light-color":"hsl(30, 79%, 81%)"}},{id:"building-models",type:"model",metadata:{"mapbox:group":"3d buildings"},source:"3dbuildings",minzoom:14,layout:{visibility:["case",["config","show3dObjects"],"visible","none"]},paint:{"model-ambient-occlusion-intensity":["match",["config","theme"],"monochrome",.3,.75],"model-color":["match",["get","part"],"roof",["hsl",22,82,90],"wall",["interpolate",["linear"],["measure-light","brightness"],0,["hsl",29,93,77],.2,["hsl",0,0,100]],"window",["interpolate",["linear"],["measure-light","brightness"],0,["hsl",["random",0,90,["id"]],["random",20,100,["id"]],87],.15,["hsl",["random",200,215,["id"]],100,["random",70,80,["id"]]]],["interpolate",["linear"],["measure-light","brightness"],.16,["hsla",["random",10,70,["id"]],55,["random",80,90,["id"]],1],.4,"hsl(0, 100%, 100%)"]],"model-color-mix-intensity":["match",["get","part"],"logo",["interpolate",["linear"],["measure-light","brightness"],.2,0,.4,.3],1],"model-emissive-strength":["match",["get","part"],"door",["interpolate",["linear"],["measure-light","brightness"],.2,["match",["config","theme"],"monochrome",.2,1.5],.4,2.5],"logo",.6,"wall",["interpolate",["linear"],["measure-light","brightness"],.45,.1,.5,.8],"window",["interpolate",["linear"],["measure-light","brightness"],.2,["match",["config","theme"],"monochrome",["random",.1,.4,["id"]],["random",.5,.8,["id"]]],.4,.4],0],"model-height-based-emissive-strength-multiplier":["match",["get","part"],"wall",["interpolate",["linear"],["measure-light","brightness"],.2,["match",["config","theme"],"monochrome",["literal",[.5,0,0,.5,.8]],["literal",[.5,0,0,1,.8]]],.4,["literal",[0,1,0,1,.6]]],"window",["literal",[0,.9,0,1,.5]],["literal",[1,1,1,1,1]]],"model-opacity":["interpolate",["linear"],["zoom"],14.2,0,14.6,1],"model-roughness":["match",["get","part"],"window",0,1],"model-scale":["interpolate",["linear"],["zoom"],14.2,[1,1,0],14.6,[1,1,1]]}},{id:"path-pedestrian-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:12,filter:["all",["case",["has","layer"],[">=",["get","layer"],0],!0],["step",["zoom"],["match",["get","class"],["pedestrian"],!0,!1],15,["match",["get","class"],["path","pedestrian"],!0,!1]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.2]]]],layout:{visibility:["case",["all",["config","showRoadLabels"],["config","showPedestrianRoads"]],"visible","none"],"text-size":["interpolate",["linear"],["zoom"],10,["match",["get","class"],"pedestrian",9,6.5],18,["match",["get","class"],"pedestrian",14,13]],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.01},paint:{"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.5,1],"text-color":["interpolate",["linear"],["measure-light","brightness"],.28,["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],90,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]],.3,["config","colorRoadLabels"]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],30,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]],.3,["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoadLabels"]]]],75],["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],65,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],95,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]]]],"text-halo-width":1}},{id:"road-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:10,filter:["all",["has","name"],["step",["zoom"],["match",["get","class"],["motorway","trunk"],!0,!1],12,["match",["get","class"],["motorway","trunk","primary","secondary"],!0,!1],13,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary","street","street_limited"],!0,!1],15,["match",["get","class"],["path","pedestrian","golf","ferry","aerialway"],!1,!0]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.2]]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-size":["interpolate",["linear"],["zoom"],10,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary"],9,["motorway_link","trunk_link","primary_link","secondary_link","tertiary_link","street","street_limited"],8,6.5],18,["match",["get","class"],["motorway","trunk","primary","secondary","tertiary"],16,["motorway_link","trunk_link","primary_link","secondary_link","tertiary_link","street","street_limited"],14,13]],"text-max-angle":30,"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15},paint:{"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.5,1],"text-color":["interpolate",["linear"],["measure-light","brightness"],.28,["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],90,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]],.3,["config","colorRoadLabels"]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],30,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]],.3,["case",[">=",["to-number",["at",2,["to-hsla",["config","colorRoadLabels"]]]],75],["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],65,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]],["hsla",["to-number",["at",0,["to-hsla",["config","colorRoadLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorRoadLabels"]]]],95,["to-number",["at",3,["to-hsla",["config","colorRoadLabels"]]]]]]],"text-halo-width":1}},{id:"golf-hole-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:16,filter:["all",["==",["get","class"],"golf"],["case",["<=",["pitch"],40],!0,["<=",["distance-from-center"],0]]],layout:{visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-size":12},paint:{"text-emissive-strength":["match",["config","theme"],"monochrome",.5,.7],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],54]]],.3,["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],20]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],20]]]],"text-halo-width":.5,"text-halo-blur":.5,"text-color":["interpolate",["linear"],["measure-light","brightness"],.28,["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],20]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],20]]],.3,["hsl",["to-number",["at",0,["to-hsla",["config","colorGreenspace"]]]],["to-number",["at",1,["to-hsla",["config","colorGreenspace"]]]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorGreenspace"]]]],54]]]]}},{id:"ferry-aerialway-label",type:"symbol",metadata:{"mapbox:group":"road & transit labels"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["match",["get","class"],"aerialway",!0,"ferry",!0,!1],["case",["<=",["pitch"],40],!0,["<=",["distance-from-center"],0]]],layout:{visibility:["case",["config","showTransitLabels"],"visible","none"],"text-size":["interpolate",["linear"],["zoom"],10,6.5,18,13],"text-max-angle":30,"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line","text-padding":1,"text-rotation-alignment":"map","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.01,"text-transform":"uppercase"},paint:{"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.5,1],"text-color":["interpolate",["linear"],["measure-light","brightness"],.3,["hsl",["min",360,["+",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],9]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],50]],60],.4,["case",[">=",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],50],["hsl",["min",360,["+",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],9]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],30]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],30]]],["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],30]]]]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 0%)",.3,["config","colorWater"]],"text-halo-width":1,"text-halo-blur":1}},{id:"waterway-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:13,filter:["all",["match",["get","class"],["canal","river","stream","disputed_canal","disputed_river","disputed_stream"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"text-max-angle":30,"symbol-spacing":["interpolate",["linear",1],["zoom"],15,250,17,400],"text-size":["interpolate",["linear"],["zoom"],13,12,18,18],"symbol-placement":"line","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"text-occlusion-opacity":0,"text-color":["interpolate",["linear"],["measure-light","brightness"],.3,["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["min",100,["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],60]]],["min",100,["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],36]]]],.4,["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["min",100,["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],4]]],["min",100,["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],36]]]]]}},{id:"natural-line-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:4,filter:["all",["match",["get","class"],["glacier","landform","disputed_glacier","disputed_landform"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["get","filterrank"],2],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"text-max-angle":30,"text-field":["coalesce",["get","name_en"],["get","name"]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"symbol-placement":"line-center","text-pitch-alignment":"viewport"},paint:{"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"text-halo-width":.5,"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 0%)",.3,"hsl(0, 0%, 100%)"],"text-halo-blur":.5,"text-color":["interpolate",["linear"],["measure-light","brightness"],.28,["match",["config","theme"],"monochrome","hsl(0, 0%, 60%)","hsl(210, 20%, 80%)"],.3,"hsl(210, 20%, 46%)"]}},{id:"natural-point-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:4,filter:["all",["match",["get","class"],["dock","glacier","landform","water_feature","wetland","disputed_dock","disputed_glacier","disputed_landform","disputed_water_feature","disputed_wetland"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["get","filterrank"],2],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"Point"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["step",["zoom"],["step",["get","sizerank"],18,5,12],17,["step",["get","sizerank"],18,13,12]],"icon-image":["image",["string",["get","maki"]]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-offset":["step",["zoom"],["step",["get","sizerank"],["literal",[0,0]],5,["literal",[0,.75]]],17,["step",["get","sizerank"],["literal",[0,0]],13,["literal",[0,.75]]]],"text-anchor":["step",["zoom"],["step",["get","sizerank"],"center",5,"top"],17,["step",["get","sizerank"],"center",13,"top"]],"text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"icon-occlusion-opacity":0,"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.7],.5,1],"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 0%)",.3,"hsl(20, 20%, 100%)"],"text-color":["interpolate",["linear"],["measure-light","brightness"],.28,["match",["config","theme"],"monochrome","hsl(0, 0%, 60%)","hsl(210, 20%, 80%)"],.3,"hsl(210, 20%, 46%)"],"text-halo-width":.5,"text-halo-blur":.5}},{id:"water-line-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"LineString"]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-max-angle":30,"text-letter-spacing":["match",["get","class"],"ocean",.25,["sea","bay"],.15,0],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"symbol-placement":"line-center","text-pitch-alignment":"viewport","text-field":["coalesce",["get","name_en"],["get","name"]]},paint:{"text-occlusion-opacity":0,"text-color":["interpolate",["linear"],["measure-light","brightness"],.3,["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],60]],44],.4,["case",[">=",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],50],["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],4]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],36]]],["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],25]]]]]}},{id:"water-point-label",type:"symbol",metadata:{"mapbox:group":"natural labels"},source:"composite","source-layer":"natural_label",minzoom:1,filter:["all",["match",["get","class"],["bay","ocean","reservoir","sea","water","disputed_bay","disputed_ocean","disputed_reservoir","disputed_sea","disputed_water"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],0]],["==",["geometry-type"],"Point"],["!=",["id"],1]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-line-height":1.3,"text-size":["interpolate",["linear"],["zoom"],0,["*",["-",16,["sqrt",["get","sizerank"]]],1],22,["*",["-",22,["sqrt",["get","sizerank"]]],1]],"text-font":[["concat",["config","font"]," Italic"],"Arial Unicode MS Regular"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":["match",["get","class"],"ocean",.25,["bay","sea"],.15,.01],"text-max-width":["match",["get","class"],"ocean",4,"sea",5,["bay","water"],7,10]},paint:{"text-occlusion-opacity":0,"text-color":["interpolate",["linear"],["measure-light","brightness"],.3,["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],60]],44],.4,["case",[">=",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],50],["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["max",0,["-",["to-number",["at",1,["to-hsla",["config","colorWater"]]]],4]],["max",0,["-",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],36]]],["hsl",["to-number",["at",0,["to-hsla",["config","colorWater"]]]],["to-number",["at",1,["to-hsla",["config","colorWater"]]]],["min",100,["+",["to-number",["at",2,["to-hsla",["config","colorWater"]]]],25]]]]]}},{id:"road-intersection",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"road",minzoom:15,filter:["all",["==",["get","class"],"intersection"],["has","name"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"icon-image":"intersection","icon-text-fit":"both","icon-text-fit-padding":[1,2,1,2],"text-size":["interpolate",["exponential",1.2],["zoom"],15,9,18,12],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"]},paint:{"icon-occlusion-opacity":.1,"text-occlusion-opacity":.1,"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.6,.75],.3,1],"text-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.45,.75],.3,1],"text-color":"hsl(230, 57%, 64%)"}},{id:"road-number-shield",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"road",minzoom:6,filter:["all",["has","reflen"],["<=",["get","reflen"],6],["match",["get","class"],["pedestrian","service"],!1,!0],["step",["zoom"],["==",["geometry-type"],"Point"],11,[">",["coalesce",["get","len"],0],5e3],12,[">",["coalesce",["get","len"],0],2500],13,[">",["coalesce",["get","len"],0],1e3],14,!0],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-size":9,"icon-image":["case",["has","shield_beta"],["coalesce",["image",["concat",["get","shield_beta"],"-",["to-string",["get","reflen"]]]],["image",["concat",["get","shield"],"-",["to-string",["get","reflen"]]]],["image",["concat","default-",["to-string",["get","reflen"]]]]],["concat",["get","shield"],"-",["to-string",["get","reflen"]]]],"icon-rotation-alignment":"viewport","text-max-angle":38,"symbol-spacing":["interpolate",["linear"],["zoom"],11,400,14,600],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"],"symbol-placement":["step",["zoom"],"point",11,"line"],"text-rotation-alignment":"viewport","text-field":["get","ref"],"text-letter-spacing":.05},paint:{"icon-occlusion-opacity":.1,"text-occlusion-opacity":.1,"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.4,.75],.3,1],"text-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.75],.3,1],"text-color":["case",["has","shield_beta"],["case",["all",["has","shield_text_color_beta"],["to-boolean",["coalesce",["image",["concat",["get","shield_beta"],"-",["to-string",["get","reflen"]]]],""]]],["match",["get","shield_text_color_beta"],"white","hsl(0, 0%, 100%)","yellow","hsl(50, 100%, 70%)","orange","hsl(25, 100%, 75%)","blue","hsl(230, 57%, 44%)","red","hsl(0, 87%, 59%)","green","hsl(140, 74%, 37%)","hsl(230, 18%, 13%)"],"hsl(230, 18%, 13%)"],["match",["get","shield_text_color"],"white","hsl(0, 0%, 100%)","yellow","hsl(50, 100%, 70%)","orange","hsl(25, 100%, 75%)","blue","hsl(230, 57%, 44%)","red","hsl(0, 87%, 59%)","green","hsl(140, 74%, 37%)","hsl(230, 18%, 13%)"]]}},{id:"road-exit-shield",type:"symbol",metadata:{"mapbox:group":"road shields"},source:"composite","source-layer":"motorway_junction",minzoom:14,filter:["all",["has","reflen"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"text-field":["get","ref"],"text-size":9,"icon-image":["concat","motorway-exit-",["to-string",["get","reflen"]]],"text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"]},paint:{"icon-occlusion-opacity":.1,"text-occlusion-opacity":.1,"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.4,.75],.3,1],"text-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.5,.75],.3,1],"text-color":"hsl(0, 0%, 100%)","text-translate":[0,0]}},{id:"gate-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"structure",minzoom:17,filter:["all",["==",["get","class"],"gate"],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<=",["distance-from-center"],.4],50,["<",["distance-from-center"],.2],55,["<",["distance-from-center"],0],60,["<",["distance-from-center"],-.05]]]],layout:{visibility:["case",["config","showRoadLabels"],"visible","none"],"icon-image":["match",["get","type"],"gate","gate","lift_gate","lift-gate",""]},paint:{"icon-occlusion-opacity":0,"text-occlusion-opacity":0,"icon-emissive-strength":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome",.4,.5],.3,1]}},{id:"building-entrance",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"structure",minzoom:18,filter:["all",["==",["get","class"],"entrance"],["case",["<=",["pitch"],40],!0,!1]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"icon-image":"marker","text-field":["get","ref"],"text-size":10,"text-offset":[0,-.5],"text-font":[["concat",["config","font"]," Regular"],"Arial Unicode MS Regular"]},paint:{"icon-occlusion-opacity":0,"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.5,1],"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)","icon-opacity":.4}},{id:"building-number-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"housenum_label",minzoom:17,filter:["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],.4],50,["<",["distance-from-center"],.2],55,["<",["distance-from-center"],0],60,["<=",["distance-from-center"],-.4]]],layout:{"symbol-z-elevate":!0,visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["get","house_num"],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-max-width":10,"text-size":10,"text-padding":20},paint:{"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.5,1],"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)"}},{id:"block-number-label",type:"symbol",metadata:{"mapbox:group":"building labels"},source:"composite","source-layer":"place_label",minzoom:16,filter:["all",["==",["get","class"],"settlement_subdivision"],["==",["get","type"],"block"],["case",["<=",["pitch"],60],!0,["<=",["distance-from-center"],.5]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["get","name"],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-max-width":7,"text-size":11},paint:{"text-occlusion-opacity":0,"text-emissive-strength":["match",["config","theme"],"monochrome",.5,1],"text-color":"hsl(20, 0%, 60%)","text-halo-color":"hsl(20, 17%, 100%)"}},{id:"poi-label",type:"symbol",metadata:{"mapbox:group":"poi labels"},source:"composite","source-layer":"poi",minzoom:6,filter:["all",["has","sub_category"],["case",["<=",["pitch"],15],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],-2,16,-1,18,0],["match",["get","category"],"park_like",4,"visitor_amenities",2,"store_like",3,"lodging",1,2],["config","densityPointOfInterestLabels"]]],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],-2,16,-1,18,0],["match",["get","category"],"park_like",4,["food_and_drink","visitor_amenities","lodging"],1,"religion",0,2],["config","densityPointOfInterestLabels"]]]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1.2],50,["<",["distance-from-center"],1],55,["<",["distance-from-center"],.8],60,["<=",["distance-from-center"],.6]]],["match",["get","category"],["sport_and_leisure","visitor_amenities","commercial_services","general"],[">",["get","reality_score"],.95],["building","lodging","medical","store_like","food_and_drink","food_and_drink_stores","motorist","industrial","education"],[">",["get","reality_score"],.85],!0]],layout:{"icon-size":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],1,1.15],"text-size":13,"icon-image":["image",["string",["get","icon"]],{params:{"background-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]],"hsla(0, 0, 0, 0)"],icon:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["case",["==",["get","icon"],"marker"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["max",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],5],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","category"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","icon"],["literal",["communications-tower","museum","zoo"]]],["in",["get","category"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","icon"],"car-repair"],["in",["get","category"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","icon"],"picnic-site"],["==",["get","category"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]]],background:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","category"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","icon"],["literal",["communications-tower","museum","zoo"]]],["in",["get","category"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","icon"],"car-repair"],["in",["get","category"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","icon"],"picnic-site"],["==",["get","category"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]],"hsla(0,0, 0, 0)"],"icon-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]]}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-padding":["interpolate",["linear"],["zoom"],16,6,17,4],visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"symbol-z-elevate":!0,"text-offset":["case",["match",["get","category"],["building","general","place_like"],!0,!1],["literal",[0,-.6]],["literal",[0,.8]]],"text-anchor":["case",["match",["get","category"],["building","general","place_like"],!0,!1],"bottom","top"],"text-field":["format",["get","name"],{}]},paint:{"text-emissive-strength":["match",["config","theme"],"monochrome",.7,.9],"icon-emissive-strength":["match",["config","theme"],"monochrome",.7,.9],"text-opacity":1,"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-width":1,"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome","#000000",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"]],.3,["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"hsl(0, 0%, 100%)"]],"text-color":["match",["config","theme"],"monochrome",["interpolate",["linear"],["measure-light","brightness"],.25,"#999999",.3,"#A6A6A6"],["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["max",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],10],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","category"],"food_and_drink",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(40, 95%, 70%)",.3,"hsl(30, 100%, 48%)"],"education",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(30, 50%, 70%)",.3,"hsl(30, 50%, 38%)"],"medical",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 70%, 70%)",.3,"hsl(0, 90%, 60%)"],"sport_and_leisure",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(190, 60%, 70%)",.3,"hsl(190, 75%, 38%)"],["store_like","food_and_drink_stores"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(210, 70%, 75%)",.3,"hsl(210, 75%, 53%)"],["arts_and_entertainment","historic","landmark"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(320, 70%, 75%)",.3,"hsl(320, 85%, 60%)"],["commercial_services","motorist","lodging"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(260, 70%, 75%)",.3,"hsl(250, 75%, 60%)"],"park_like",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(110, 55%, 65%)",.3,"hsl(110, 70%, 28%)"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(210, 20%, 70%)",.3,"hsl(210, 20%, 43%)"]]]]}},{id:"poi-label-osm",type:"symbol",source:"composite","source-layer":"poi",minzoom:6,filter:["all",["!",["has","sub_category"]],["case",["<=",["pitch"],15],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],-2,16,-1,18,0],["match",["get","class"],"park_like",4,"visitor_amenities",2,"store_like",3,"lodging",1,2],["config","densityPointOfInterestLabels"]]],["<=",["number",["get","filterrank"]],["+",["step",["zoom"],-2,16,-1,18,0],["match",["get","class"],"park_like",4,["food_and_drink","visitor_amenities","lodging"],1,"religion",0,2],["config","densityPointOfInterestLabels"]]]],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1.2],50,["<",["distance-from-center"],1],55,["<",["distance-from-center"],.8],60,["<=",["distance-from-center"],.6]]],["all",["match",["get","type"],"Toilets",[">=",["zoom"],17],!0]]],layout:{"icon-size":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],1,1.15],"symbol-z-elevate":!0,visibility:["case",["config","showPointOfInterestLabels"],"visible","none"],"text-size":["step",["zoom"],["step",["number",["get","sizerank"]],18,5,13],17,["step",["number",["get","sizerank"]],18,13,13]],"text-field":["format",["coalesce",["get","name_en"],["get","name"]],{}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-padding":["interpolate",["linear"],["zoom"],16,6,17,4],"icon-image":["case",["has","maki_beta"],["coalesce",["image",["string",["get","maki_beta"]],{params:{"background-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]],"hsla(0, 0, 0, 0)"],icon:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["case",["==",["get","maki_beta"],"marker"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["max",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],5],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","class"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","maki_beta"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","maki_beta"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","maki_beta"],"picnic-site"],["==",["get","class"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]]],background:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","class"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]],"hsla(0,0, 0, 0)"],"icon-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]]}}],["image",["string",["get","maki"]],{params:{"background-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]],"hsla(0, 0, 0, 0)"],icon:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["case",["==",["get","maki"],"marker"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["max",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],5],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","class"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]]],background:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","class"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]],"hsla(0,0, 0, 0)"],"icon-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]]}}]],["image",["string",["get","maki"]],{params:{"background-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]],"hsla(0, 0, 0, 0)"],icon:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["case",["==",["get","maki"],"marker"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["max",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],5],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","class"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]]],background:["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],["match",["config","theme"],"monochrome","#A6A6A6",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","class"],"food_and_drink",["match",["config","lightPreset"],["dusk","night"],"#FBCB6A","#F93"],"education",["match",["config","lightPreset"],["dusk","night"],"#D9B38C","#BF8040"],"medical",["match",["config","lightPreset"],["dusk","night"],"#E87D7D","#FB7474"],"sport_and_leisure",["match",["config","lightPreset"],["dusk","night"],"#85D1E0","#20BFDF"],["store_like","food_and_drink_stores"],["match",["config","lightPreset"],["dusk","night"],"#93C0EC","#63A6E9"],["case",["any",["in",["get","maki"],["literal",["communications-tower","museum","zoo"]]],["in",["get","class"],["literal",["arts_and_entertainment","historic","landmark"]]]],["match",["config","lightPreset"],["dusk","night"],"#EC93CE","#F47BCB"],["any",["==",["get","maki"],"car-repair"],["in",["get","class"],["literal",["commercial_services","motorist","lodging"]]]],["match",["config","lightPreset"],["dusk","night"],"#A17DE8","#9482ED"],["any",["==",["get","maki"],"picnic-site"],["==",["get","class"],"park_like"]],["match",["config","lightPreset"],["dusk","night"],"#85D775","#36AD1F"],["match",["config","lightPreset"],["dusk","night"],"#A3B3C2","#7594A3"]]]]],"hsla(0,0, 0, 0)"],"icon-stroke":["case",["==",["config","backgroundPointOfInterestLabels"],"circle"],"hsla(0, 0, 0, 0)",["match",["config","lightPreset"],["dusk","night"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"],["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]]]}}]],"text-offset":["step",["zoom"],["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],["literal",[0,-.6]],["step",["number",["get","sizerank"]],["literal",[0,0]],5,["literal",[0,.8]]]],17,["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],["literal",[0,-.6]],["step",["number",["get","sizerank"]],["literal",[0,0]],13,["literal",[0,.8]]]]],"text-anchor":["step",["zoom"],["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],"bottom",["step",["number",["get","sizerank"]],"center",5,"top"]],17,["case",["all",["!=",["get","maki_beta"],"terminal"],["match",["get","class"],["building","general","place_like"],!0,!1]],"bottom",["step",["number",["get","sizerank"]],"center",13,"top"]]]},paint:{"text-emissive-strength":["match",["config","theme"],"monochrome",.7,.9],"icon-emissive-strength":["match",["config","theme"],"monochrome",.7,.9],"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["step",["zoom"],["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,5,1]],17,["case",["to-boolean",["feature-state","hide"]],0,["step",["number",["get","sizerank"]],0,13,1]]],"text-halo-width":1,"text-halo-blur":0,"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,["match",["config","theme"],"monochrome","#000000",["case",["==",["config","colorModePointOfInterestLabels"],"single"],["hsla",0,0,5,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],"#0D0D0D"]],.3,["case",["all",["==",["config","colorModePointOfInterestLabels"],"single"],["!=",["config","theme"],"monochrome"]],["case",[">=",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],80],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],40,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["hsla",0,0,100,["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]]],"#FFFFFF"]],"text-color":["match",["config","theme"],"monochrome",["interpolate",["linear"],["measure-light","brightness"],.25,"#999999",.3,"#A6A6A6"],["case",["==",["config","colorModePointOfInterestLabels"],"single"],["match",["config","lightPreset"],["dusk","night"],["hsla",["to-number",["at",0,["to-hsla",["config","colorPointOfInterestLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPointOfInterestLabels"]]]],["min",["+",["max",["to-number",["at",2,["to-hsla",["config","colorPointOfInterestLabels"]]]],10],20],100],["to-number",["at",3,["to-hsla",["config","colorPointOfInterestLabels"]]]]],["config","colorPointOfInterestLabels"]],["match",["get","class"],"food_and_drink",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(40, 95%, 70%)",.3,"hsl(30, 100%, 48%)"],"education",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(30, 50%, 70%)",.3,"hsl(30, 50%, 38%)"],"medical",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 70%, 70%)",.3,"hsl(0, 90%, 60%)"],"sport_and_leisure",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(190, 60%, 70%)",.3,"hsl(190, 75%, 38%)"],["store_like","food_and_drink_stores"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(210, 70%, 75%)",.3,"hsl(210, 75%, 53%)"],["arts_and_entertainment","historic","landmark"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(320, 70%, 75%)",.3,"hsl(320, 85%, 60%)"],["commercial_services","motorist","lodging"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(260, 70%, 75%)",.3,"hsl(250, 75%, 60%)"],"park_like",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(110, 55%, 65%)",.3,"hsl(110, 70%, 28%)"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(210, 20%, 70%)",.3,"hsl(210, 20%, 43%)"]]]]},metadata:{"mapbox:group":"poi labels"}},{id:"top",type:"slot",metadata:{"mapbox:description":"Above POI labels and behind Place and Transit labels"}},{id:"transit-label",type:"symbol",metadata:{"mapbox:group":"transit labels"},source:"composite","source-layer":"transit_stop_label",minzoom:12,filter:["all",["step",["zoom"],["all",["!=",["get","mode"],"bus"],["!=",["get","stop_type"],"entrance"]],17,["!=",["get","stop_type"],"entrance"],19,!0],["case",["<=",["pitch"],40],!0,["step",["pitch"],!0,40,["<",["distance-from-center"],1],50,["<",["distance-from-center"],.8],55,["<",["distance-from-center"],.4],60,["<=",["distance-from-center"],-.1]]]],layout:{visibility:["case",["config","showTransitLabels"],"visible","none"],"text-size":13,"icon-image":["image",["string",["get","network"]],{params:{background:["match",["config","lightPreset"],["dusk","night"],"hsl(225, 60%, 60%)","hsl(225, 60%, 58%)"],"background-stroke":["match",["config","lightPreset"],["dusk","night"],"hsl(0, 0%, 0%)","hsl(0, 0%, 100%)"],icon:["match",["config","lightPreset"],["dusk","night"],"hsl(0, 0%, 0%)","hsl(0, 0%, 100%)"]}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-justify":["match",["get","stop_type"],"entrance","left","center"],"text-offset":["case",["==",["get","network"],"entrance"],["literal",[1,0]],["==",["get","stop_type"],"entrance"],["literal",[1.8,0]],["literal",[0,.8]]],"text-anchor":["match",["get","stop_type"],"entrance","left","top"],"text-field":["step",["zoom"],["format","",{}],13,["match",["get","mode"],["metro_rail","rail"],["format",["coalesce",["get","name_en"],["get","name"]],{}],["format","",{}]],14,["match",["get","mode"],["bicycle","bus"],["format","",{}],["format",["coalesce",["get","name_en"],["get","name"]],{}]],18,["format",["coalesce",["get","name_en"],["get","name"]],{}]],"text-letter-spacing":.01,"text-max-width":["match",["get","stop_type"],"entrance",15,9]},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-emissive-strength":["match",["config","theme"],"monochrome",.7,1.5],"icon-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"text-halo-width":1,"text-halo-blur":0,"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 0%)",.3,"hsl(0, 0%, 100%)"],"text-color":["match",["config","theme"],"monochrome",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 70%)",.3,"hsl(0, 0%, 40%)"],["match",["get","network"],"tokyo-metro",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(180, 50%, 80%)",.3,"hsl(180, 50%, 30%)"],"mexico-city-metro",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(25, 100%, 80%)",.3,"hsl(25, 100%, 63%)"],["barcelona-metro","delhi-metro","hong-kong-mtr","milan-metro","osaka-subway"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 90%, 65%)",.3,"hsl(0, 90%, 47%)"],["boston-t","washington-metro"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(230, 18%, 80%)",.3,"hsl(230, 18%, 20%)"],["chongqing-rail-transit","kiev-metro","singapore-mrt","taipei-metro"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(140, 90%, 85%)",.3,"hsl(140, 90%, 25%)"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(225, 60%, 60%)",.3,"hsl(225, 60%, 50%)"]]]}},{id:"airport-label",type:"symbol",metadata:{"mapbox:group":"transit labels"},source:"composite","source-layer":"airport_label",minzoom:8,filter:["all",["match",["get","class"],["military","civil","disputed_military","disputed_civil"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showTransitLabels"],"visible","none"],"text-line-height":1.1,"text-size":["step",["get","sizerank"],18,9,13],"icon-image":["image",["string",["get","maki"]],{params:{background:["match",["config","lightPreset"],["dusk","night"],"hsl(225, 60%, 60%)","hsl(225, 60%, 58%)"],"background-stroke":["match",["config","lightPreset"],["dusk","night"],"hsl(0, 0%, 0%)","hsl(0, 0%, 100%)"],icon:["match",["config","lightPreset"],["dusk","night"],"hsl(0, 0%, 0%)","hsl(0, 0%, 100%)"]}}],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-offset":[0,.8],"text-rotation-alignment":"viewport","text-anchor":"top","text-field":["step",["get","sizerank"],["case",["has","ref"],["concat",["get","ref"],` -
|
|
234
234
|
`,["coalesce",["get","name_en"],["get","name"]]],["coalesce",["get","name_en"],["get","name"]]],15,["get","ref"]],"text-letter-spacing":.01,"text-max-width":9},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-emissive-strength":["match",["config","theme"],"monochrome",.7,1.5],"icon-emissive-strength":["match",["config","theme"],"monochrome",.7,1],"text-color":["match",["config","theme"],"monochrome",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 70%)",.3,"hsl(0, 0%, 40%)"],["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(225, 60%, 60%)",.3,"hsl(225, 60%, 50%)"]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 0%)",.3,"hsl(0, 0%, 100%)"],"text-halo-width":1}},{id:"settlement-subdivision-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:10,maxzoom:15,filter:["all",["match",["get","class"],["disputed_settlement_subdivision","settlement_subdivision"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["<=",["number",["get","filterrank"]],3],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],1.5]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-transform":"uppercase","text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-letter-spacing":["match",["get","type"],"suburb",.15,.05],"text-max-width":7,"text-padding":3,"text-size":["interpolate",["cubic-bezier",.5,0,1,1],["zoom"],11,["match",["get","type"],"suburb",12,11.5],15,["match",["get","type"],"suburb",16,15]]},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-emissive-strength":["match",["config","theme"],"monochrome",.6,1.2],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(0, 0%, 20%, 0.5)",.3,["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 80%, 1)"]],"text-halo-width":1.3,"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],["interpolate",["linear"],["measure-light","brightness"],.28,["hsla",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],85,.6],.3,["hsla",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],.6]]]}},{id:"settlement-minor-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:2,maxzoom:13,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["step",["zoom"],[">",["get","symbolrank"],6],4,[">=",["get","symbolrank"],7],6,[">=",["get","symbolrank"],8],7,[">=",["get","symbolrank"],10],10,[">=",["get","symbolrank"],11],11,[">=",["get","symbolrank"],13],12,[">=",["get","symbolrank"],15]],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],11,9,10],6,["step",["get","symbolrank"],14,9,12,12,10],8,["step",["get","symbolrank"],16,9,14,12,12,15,10],13,["step",["get","symbolrank"],22,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],["image","border-dot-13",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}],["step",["get","symbolrank"],["image","dot-11",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}],9,["image","dot-10",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}],11,["image","dot-9",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}]]],8,""],"text-font":[["concat",["config","font"]," Regular"],"Arial Unicode MS Regular"],"text-justify":"auto","text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-emissive-strength":["match",["config","theme"],"monochrome",.6,1],"icon-emissive-strength":["match",["config","theme"],"monochrome",.6,1],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],["interpolate",["linear"],["measure-light","brightness"],.28,["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],.3,["config","colorPlaceLabels"]]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(0, 0%, 20%, 1)",.3,["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]],"text-halo-width":1,"text-halo-blur":1}},{id:"landmark-icon",type:"symbol",metadata:{"mapbox:group":"Landmark icons"},source:"mapbox-landmark-pois","source-layer":"landmarks_poi",minzoom:10,maxzoom:17,filter:["all",["has","local_rank"],["<=",["get","local_rank"],1],["step",["zoom"],["==",["geometry-type"],"Point"],10,[">=",["get","local_rank"],.9],11,[">=",["get","local_rank"],.8],12,[">=",["get","local_rank"],.7],13,[">=",["get","local_rank"],.5],13.5,[">=",["get","local_rank"],.3],14,[">=",["get","local_rank"],.1],15.5,["case",[">",["pitch"],1],[">",["get","local_rank"],1],[">=",["get","local_rank"],.1]]],["case",["<=",["pitch"],45],!0,["all",["<=",["distance-from-center"],2],[">",["pitch"],45]],!0,!1]],paint:{"symbol-z-offset":["interpolate",["linear"],["zoom"],14,0,15,["case",["config","show3dObjects"],["+",["to-number",["get","height"]],10],0]],"icon-image-cross-fade":["interpolate",["linear"],["measure-light","brightness"],.25,0,.3,1],"icon-opacity":["interpolate",["linear"],["zoom"],10,0,10.3,1,16.7,1,17,0],"icon-emissive-strength":["match",["config","theme"],"monochrome",["interpolate",["linear"],["measure-light","brightness"],.25,.5,.3,1],1],"text-color":["match",["config","theme"],"monochrome",["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 40%)",.3,"hsl(0, 0%, 35%)"],["interpolate",["linear"],["measure-light","brightness"],.28,"hsl(240, 15%, 75%)",.3,"hsl(0, 0%, 35%)"]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.25,"hsl(0, 0%, 0%)",.3,"hsl(0, 0%, 100%)"],"text-halo-width":1,"text-opacity":["interpolate",["linear"],["zoom"],10,0,10.3,["case",["==",["config","showLandmarkIconLabels"],!0],1,0],16.7,["case",["==",["config","showLandmarkIconLabels"],!0],1,0],17,0]},layout:{visibility:["case",["config","showLandmarkIcons"],"visible","none"],"text-field":["to-string",["get","short_name_en"]],"icon-allow-overlap":!1,"icon-padding":30,"symbol-sort-key":["-",1,["get","local_rank"]],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"icon-image":["image",["concat","landmark-icons","/",["get","icon_name"],"-dark"],{iconset:{id:"landmarks"}},["concat","landmark-icons","/",["get","icon_name"]],{iconset:{id:"landmarks"}}],"icon-size":["interpolate",["linear"],["zoom"],12,.8,14,1],"symbol-placement":"point","text-size":["interpolate",["linear"],["zoom"],12,12,14,14],"text-padding":20,"text-anchor":"top","text-offset":[0,1.8]}},{id:"settlement-major-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:2,maxzoom:15,filter:["all",["<=",["get","filterrank"],3],["match",["get","class"],["settlement","disputed_settlement"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["step",["zoom"],!1,2,["<=",["get","symbolrank"],6],4,["<",["get","symbolrank"],7],6,["<",["get","symbolrank"],8],7,["<",["get","symbolrank"],10],10,["<",["get","symbolrank"],11],11,["<",["get","symbolrank"],13],12,["<",["get","symbolrank"],15],13,[">=",["get","symbolrank"],11],14,[">=",["get","symbolrank"],15]],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-line-height":1.1,"text-size":["interpolate",["cubic-bezier",.2,0,.9,1],["zoom"],3,["step",["get","symbolrank"],13,6,11],6,["step",["get","symbolrank"],18,6,16,7,14],8,["step",["get","symbolrank"],20,9,16,10,14],15,["step",["get","symbolrank"],24,9,20,12,16,15,14]],"text-radial-offset":["step",["zoom"],["match",["get","capital"],2,.6,.55],8,0],"symbol-sort-key":["get","symbolrank"],"icon-image":["step",["zoom"],["case",["==",["get","capital"],2],["image","border-dot-13",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}],["step",["get","symbolrank"],["image","dot-11",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}],9,["image","dot-10",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}],11,["image","dot-9",{params:{"color-primary":["match",["config","lightPreset"],["dusk","night"],["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],["config","colorPlaceLabels"]],"color-secondary":["match",["config","lightPreset"],["dusk","night"],"hsla(0, 0%, 20%, 1)",["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]]}}]]],8,""],"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],8,"center"],"text-anchor":["step",["zoom"],["get","text_anchor"],8,"center"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-max-width":7},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"icon-opacity":["case",["to-boolean",["feature-state","hide"]],0,1],"text-emissive-strength":["match",["config","theme"],"monochrome",.6,1],"icon-emissive-strength":["match",["config","theme"],"monochrome",.6,1],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],["interpolate",["linear"],["measure-light","brightness"],.28,["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],.3,["config","colorPlaceLabels"]]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(0, 0%, 20%, 1)",.3,["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]],"text-halo-width":1,"text-halo-blur":1}},{id:"state-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:3,maxzoom:9,filter:["all",["match",["get","class"],["state","disputed_state"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-size":["interpolate",["cubic-bezier",.85,.7,.65,1],["zoom"],4,["step",["get","symbolrank"],9,6,8,7,7],9,["step",["get","symbolrank"],21,6,16,7,14]],"text-transform":"uppercase","text-font":[["concat",["config","font"]," Bold"],"Arial Unicode MS Bold"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-letter-spacing":.15,"text-max-width":6},paint:{"text-emissive-strength":["match",["config","theme"],"monochrome",.6,1],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],["interpolate",["linear"],["measure-light","brightness"],.28,["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],.3,["config","colorPlaceLabels"]]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(0, 0%, 20%, 1)",.3,["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]],"text-halo-width":1,"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.5]}},{id:"country-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"place_label",minzoom:1,maxzoom:10,filter:["all",["match",["get","class"],["country","disputed_country"],["case",["has","$localized"],!0,["match",["get","worldview"],["all","CN"],!0,!1]],!1],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"icon-image":"","text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-radial-offset":["step",["zoom"],.6,8,0],"text-justify":["step",["zoom"],["match",["get","text_anchor"],["left","bottom-left","top-left"],"left",["right","bottom-right","top-right"],"right","center"],7,"auto"],"text-size":["interpolate",["cubic-bezier",.2,0,.7,1],["zoom"],1,["step",["get","symbolrank"],11,4,9,5,8],9,["step",["get","symbolrank"],22,4,19,5,17]]},paint:{"text-opacity":["case",["to-boolean",["feature-state","hide"]],0,.8],"text-emissive-strength":["match",["config","theme"],"monochrome",.6,1],"icon-opacity":["step",["zoom"],["case",["has","text_anchor"],1,0],7,0],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],["interpolate",["linear"],["measure-light","brightness"],.28,["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],.3,["config","colorPlaceLabels"]]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(0, 0%, 20%, 1)",.3,["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]],"text-halo-width":1.25}},{id:"continent-label",type:"symbol",metadata:{"mapbox:group":"place labels"},source:"composite","source-layer":"natural_label",minzoom:.75,maxzoom:3,filter:["all",["==",["get","class"],"continent"],["case",["<=",["pitch"],45],!0,["<=",["distance-from-center"],2]]],layout:{visibility:["case",["config","showPlaceLabels"],"visible","none"],"text-field":["coalesce",["get","name_en"],["get","name"]],"text-line-height":1.1,"text-max-width":6,"text-font":[["concat",["config","font"]," Medium"],"Arial Unicode MS Bold"],"text-size":["interpolate",["exponential",.5],["zoom"],0,10,2.5,15],"text-transform":"uppercase","text-letter-spacing":.05},paint:{"text-emissive-strength":["match",["config","theme"],"monochrome",.6,1],"text-color":["case",["to-boolean",["feature-state","select"]],["config","colorPlaceLabelSelect"],["to-boolean",["feature-state","highlight"]],["config","colorPlaceLabelHighlight"],["interpolate",["linear"],["measure-light","brightness"],.28,["hsl",["to-number",["at",0,["to-hsla",["config","colorPlaceLabels"]]]],["to-number",["at",1,["to-hsla",["config","colorPlaceLabels"]]]],80],.3,["config","colorPlaceLabels"]]],"text-halo-color":["interpolate",["linear"],["measure-light","brightness"],.28,"hsla(0, 0%, 20%, 1)",.3,["step",["to-number",["at",2,["to-hsla",["config","colorPlaceLabels"]]]],"hsla(0, 0%, 100%, 1)",90,"hsla(0, 0%, 60%, 1)"]],"text-halo-width":1.5,"text-opacity":["interpolate",["linear"],["zoom"],0,["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.8],1.5,["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.5],2.5,["case",["to-boolean",["feature-state","hide"]],0,["to-boolean",["feature-state","select"]],1,["to-boolean",["feature-state","highlight"]],1,.5]]}}],models:{"maple1-lod1":"mapbox://models/mapbox/maple1-v4-lod1.glb","maple1-lod2":"mapbox://models/mapbox/maple1-v4-lod2.glb","maple1-lod3":"mapbox://models/mapbox/maple1-v4-lod3.glb","maple1-lod4":"mapbox://models/mapbox/maple1-v4-lod4.glb","maple2-lod1":"mapbox://models/mapbox/maple2-v4-lod1.glb","maple2-lod2":"mapbox://models/mapbox/maple2-v4-lod2.glb","maple2-lod3":"mapbox://models/mapbox/maple2-v4-lod3.glb","maple2-lod4":"mapbox://models/mapbox/maple2-v4-lod4.glb","oak1-lod1":"mapbox://models/mapbox/oak1-v4-lod1.glb","oak1-lod2":"mapbox://models/mapbox/oak1-v4-lod2.glb","oak1-lod3":"mapbox://models/mapbox/oak1-v4-lod3.glb","oak1-lod4":"mapbox://models/mapbox/oak1-v4-lod4.glb","oak2-lod1":"mapbox://models/mapbox/oak2-v4-lod1.glb","oak2-lod2":"mapbox://models/mapbox/oak2-v4-lod2.glb","oak2-lod3":"mapbox://models/mapbox/oak2-v4-lod3.glb","oak2-lod4":"mapbox://models/mapbox/oak2-v4-lod4.glb","palm1-lod1":"mapbox://models/mapbox/palm1-v4-lod1.glb","palm1-lod2":"mapbox://models/mapbox/palm1-v4-lod2.glb","palm1-lod3":"mapbox://models/mapbox/palm1-v4-lod3.glb","palm1-lod4":"mapbox://models/mapbox/palm1-v4-lod4.glb","pine1-lod1":"mapbox://models/mapbox/pine1-v4-lod1.glb","pine1-lod2":"mapbox://models/mapbox/pine1-v4-lod2.glb","pine1-lod3":"mapbox://models/mapbox/pine1-v4-lod3.glb","pine1-lod4":"mapbox://models/mapbox/pine1-v4-lod4.glb","pine2-lod1":"mapbox://models/mapbox/pine2-v4-lod1.glb","pine2-lod2":"mapbox://models/mapbox/pine2-v4-lod2.glb","pine2-lod3":"mapbox://models/mapbox/pine2-v4-lod3.glb","pine2-lod4":"mapbox://models/mapbox/pine2-v4-lod4.glb","turbinetower-lod1":"mapbox://models/mapbox/turbinetower1-lod1.glb","turbinerotor-lod1":"mapbox://models/mapbox/turbinerotor1-lod1.glb","turbinetower-lod2":"mapbox://models/mapbox/turbinetower1-lod2.glb","turbinerotor-lod2":"mapbox://models/mapbox/turbinerotor1-lod2.glb"},featuresets:{poi:{metadata:{"mapbox:title":"Points of interest","mapbox:description":"A point of interest.","mapbox:states":[{id:"hide",type:"boolean",doc:"When `true`, hides the icon and text. Use this state when displaying a custom annotation on top.",importConfigs:[]}],"mapbox:properties":[{name:"name",type:"string",doc:"Name of the point of interest."},{name:"group",type:"string",doc:"A high-level category, like POI, airport, transit, etc."},{name:"class",type:"string",doc:"A broad category of point of interest."},{name:"maki",type:"string",doc:"An icon identifier, designed to assign icons using the Maki icon project or other icons that follow the same naming scheme."},{name:"transit_mode",type:"string",doc:"Mode of transport served by a stop/station. Expected to be null for non-transit points of interest."},{name:"transit_stop_type",type:"string",doc:"A type of transit stop. Expected to be null for non-transit points of interest."},{name:"transit_network",type:"string",doc:"A rail station network identifier that is part of specific local or regional transit systems. Expected to be null for non-transit points of interest."},{name:"airport_ref",type:"string",doc:"A short identifier code of the airport. Expected to be null for non-airport points of interest"}]},selectors:[{layer:"poi-label-osm",properties:{name:["get","name"],class:["get","class"],maki:["coalesce",["get","maki_beta"],["get","maki"]],group:"poi"},featureNamespace:"poi-A"},{layer:"poi-label",properties:{name:["get","name"],class:["get","category"],maki:["get","icon"],group:"poi"},featureNamespace:"poi-A"},{layer:"transit-label",properties:{name:["get","name"],transit_mode:["get","mode"],transit_stop_type:["get","stop_type"],transit_network:["get","network"],group:"transit"},featureNamespace:"poi-B"},{layer:"airport-label",properties:{name:["get","name"],class:["get","class"],maki:["get","maki"],airport_ref:["get","ref"],group:"airport"},featureNamespace:"poi-C"},{layer:"natural-point-label",properties:{name:["get","name"],class:["get","class"],maki:["coalesce",["get","maki_beta"],["get","maki"]],group:"natural-point"},featureNamespace:"poi-D"}]},"place-labels":{metadata:{"mapbox:title":"Place labels","mapbox:description":"Points for labeling places including countries, states, cities, towns, and neighborhoods.","mapbox:states":[{id:"hide",type:"boolean",doc:"When `true`, hides the label. Use this state when displaying a custom annotation on top.",importConfigs:[]},{id:"highlight",type:"boolean",doc:"When `true`, the feature is highlighted. Use this state to create a temporary effect (e.g. hover).",importConfigs:["colorPlaceLabelHighlight"]},{id:"select",type:"boolean",doc:"When `true`, the feature is selected. Use this state to create a permanent effect. Note: the `select` state has a higher priority than `highlight`.",importConfigs:["colorPlaceLabelSelect"]}],"mapbox:properties":[{name:"name",type:"string",doc:"Name of the place label."},{name:"class",type:"string",doc:"Provides a broad distinction between place types."}]},selectors:[{layer:"continent-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-A"},{layer:"country-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"state-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"settlement-major-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"settlement-minor-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"},{layer:"settlement-subdivision-label",properties:{name:["get","name"],class:["get","class"]},featureNamespace:"place-B"}]},buildings:{metadata:{"mapbox:title":"Buildings","mapbox:description":"Featureset describing the buildings.","mapbox:states":[{id:"highlight",type:"boolean",doc:"When `true`, the building is highlighted. Use this state to create a temporary effect (e.g. hover).",importConfigs:["colorBuildingHighlight"]},{id:"select",type:"boolean",doc:"When `true`, the building is selected. Use this state to create a permanent effect. Note: the `select` state has a higher priority than `highlight`.",importConfigs:["colorBuildingSelect"]}],"mapbox:properties":[{name:"group",type:"string",doc:"A high-level building group like building-2d, building-3d, etc."}]},selectors:[{layer:"3d-building",properties:{group:"building-3d"},featureNamespace:"building-A",_uniqueFeatureID:!0},{layer:"2d-building",properties:{group:"building-2d"},featureNamespace:"building-A",_uniqueFeatureID:!0}]},"landmark-icons":{metadata:{"mapbox:title":"Landmark Icons","mapbox:description":"Icons for landmark buildings","mapbox:properties":[{name:"id",type:"string",doc:"Unique landmark ID."},{name:"name",type:"string",doc:"Name of the Landmark in local language."},{name:"name_en",type:"string",doc:"Name of the Landmark in English."},{name:"short_name",type:"string",doc:"Short name of the Landmark in local language."},{name:"short_name_en",type:"string",doc:"Short name of the Landmark in English."},{name:"type",type:"string",doc:"Landmark type or building use."}]},selectors:[{layer:"landmark-icon",properties:{id:["get","id"],name:["get","name"],name_en:["get","name_en"],short_name:["get","short_name"],short_name_en:["get","short_name_en"],type:["get","type"]}}]}},created:"2023-10-26T16:35:57.777Z",modified:"2025-08-06T22:58:42.731Z",id:"standard",owner:"mapbox",visibility:"public",protected:!0,draft:!1}}],sources:{composite:{url:"mapbox://mapbox.country-boundaries-v1,mapbox.mapbox-streets-v8",type:"vector",data:{attribution:'<a href="https://www.mapbox.com/about/maps/" target="_blank" title="Mapbox" aria-label="Mapbox">© Mapbox</a> <a href="https://www.openstreetmap.org/copyright/" target="_blank" title="OpenStreetMap" aria-label="OpenStreetMap">© OpenStreetMap</a> <a class="mapbox-improve-map" href="https://www.mapbox.com/contribute/" target="_blank" title="Improve this map" aria-label="Improve this map">Improve this map</a>',bounds:[-180,-85.051129,180,85],center:[0,-.025564500000001544,0],constituents:[{maxzoom:12,minzoom:0,source:"mapbox.country-boundaries-v1"},{maxzoom:16,minzoom:0,source:"mapbox.mapbox-streets-v8"}],description:"Global polygon tileset of country boundaries and disputed areas",fillzoom:8,format:"pbf",language_options:{all:"Every available language",ar:"Arabic",bg:"Bulgarian",ca:"Catalan",cs:"Czech",da:"Danish",de:"German",el:"Greek",en:"English",es:"Spanish",et:"Estonian",fa:"Farsi",fi:"Finnish",fr:"French",he:"Hebrew",hr:"Croatian",hu:"Hungarian",id:"Indonesian",it:"Italian",ja:"Japanese",ka:"Georgian",ko:"Korean",local:"Renderable local language",lv:"Latvian",ms:"Malay",nb:"Norwegian Bokmål",nl:"Dutch",no:"Norwegian",pl:"Polish",pt:"Portuguese",ro:"Romanian",ru:"Russian",sk:"Slovak",sl:"Slovenian",sq:"Albanian",sr:"Serbian",sv:"Swedish",th:"Thai",tl:"Tagalog",tr:"Turkish",uk:"Ukrainian",vi:"Vietnamese","zh-Hans":"Simplified Chinese","zh-Hant":"Traditional Chinese"},mapbox_logo:!0,maxzoom:16,minzoom:0,mts:!0,name:"Mapbox Streets v8 + Mapbox Countries v1",scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/mapbox.country-boundaries-v1,mapbox.mapbox-streets-v8/{z}/{x}/{y}.vector.pbf"],vector_layers:[{id:"country_boundaries",maxzoom:22,minzoom:0,source:"mapbox.country-boundaries-v1"},{id:"landuse",minzoom:5,source:"mapbox.mapbox-streets-v8"},{id:"waterway",minzoom:7,source:"mapbox.mapbox-streets-v8"},{id:"water",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"aeroway",minzoom:9,source:"mapbox.mapbox-streets-v8"},{id:"structure",minzoom:13,source:"mapbox.mapbox-streets-v8"},{id:"building",minzoom:12,source:"mapbox.mapbox-streets-v8"},{id:"landuse_overlay",minzoom:5,source:"mapbox.mapbox-streets-v8"},{id:"road",minzoom:3,source:"mapbox.mapbox-streets-v8"},{id:"admin",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"place_label",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"airport_label",minzoom:8,source:"mapbox.mapbox-streets-v8"},{id:"transit_stop_label",minzoom:5,source:"mapbox.mapbox-streets-v8"},{id:"natural_label",minzoom:0,source:"mapbox.mapbox-streets-v8"},{id:"poi_label",minzoom:6,source:"mapbox.mapbox-streets-v8"},{id:"motorway_junction",minzoom:9,source:"mapbox.mapbox-streets-v8"},{id:"housenum_label",minzoom:16,source:"mapbox.mapbox-streets-v8"}],worldview_default:"CN",worldview_options:{ALL:"Every available worldview",AR:"Argentina",CN:"China",IN:"India",JP:"Japan",MA:"Morocco",RS:"Serbia",RU:"Russia",TR:"Turkey",US:"United States",VN:"Vietnam"}}},"mapbox://neatchenheng.7y3kpvvv":{url:"mapbox://neatchenheng.7y3kpvvv",type:"vector",data:{bounds:[-179.798,-69.008,179.195,82.49],center:[-.3015000000000043,6.741,0],created:1756267632047,created_by_client:"studio",filesize:587124,format:"pbf",id:"neatchenheng.7y3kpvvv",mapbox_logo:!0,maxzoom:10,minzoom:0,modified:1756267631830,name:"tide_station_cn-8xvt91",private:!0,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/neatchenheng.7y3kpvvv/{z}/{x}/{y}.vector.pbf"],upload_id:"cmetgd2xo142e1oqnwmn6owp2",vector_layers:[{id:"tide_station_cn-8xvt91",maxzoom:22,minzoom:0,source:"neatchenheng.7y3kpvvv"}],version:"1.0.0",webpage:"https://studio.mapbox.com/tilesets/neatchenheng.7y3kpvvv"}},"mapbox://neatchenheng.9uwc9x7l":{url:"mapbox://neatchenheng.9uwc9x7l",type:"vector",data:{bounds:[-180,-89.999999,180,87.948427],center:[0,-1.0257860000000036,0],created:1756258790178,created_by_client:"studio",filesize:21891,format:"pbf",id:"neatchenheng.9uwc9x7l",mapbox_logo:!0,maxzoom:6,minzoom:0,modified:1756258789958,name:"ICE_AREA-6oqazd",private:!0,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/neatchenheng.9uwc9x7l/{z}/{x}/{y}.vector.pbf"],upload_id:"cmetb4f0d12lt1mma92qeqhea",vector_layers:[{id:"ICE_AREA-6oqazd",maxzoom:22,minzoom:0,source:"neatchenheng.9uwc9x7l"}],version:"1.0.0",webpage:"https://studio.mapbox.com/tilesets/neatchenheng.9uwc9x7l"}},"mapbox://neatchenheng.bbqlsheu":{url:"mapbox://neatchenheng.bbqlsheu",type:"vector",data:{bounds:[-180,-56.7252897416281,180,83.8746022304263],center:[0,13.574656244399101,3],created:1734949386768,created_by_client:"studio",filesize:71176884,format:"pbf",id:"neatchenheng.bbqlsheu",mapbox_logo:!0,maxzoom:9,minzoom:3,modified:1734949386547,name:"World_12NM_v4_20231025-4rlzig",private:!0,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/neatchenheng.bbqlsheu/{z}/{x}/{y}.vector.pbf"],upload_id:"cm50vf2t1fbcu1pqgik3s6iuf",vector_layers:[{id:"World_12NM_v4_20231025-4rlzig",maxzoom:22,minzoom:0,source:"neatchenheng.bbqlsheu"}],version:"1.0.0",webpage:"https://studio.mapbox.com/tilesets/neatchenheng.bbqlsheu"}},"mapbox://neatchenheng.d44z21eg":{url:"mapbox://neatchenheng.d44z21eg",type:"vector",data:{bounds:[114.23736254035865,17.26387530490726,123.54476074541262,26.931359896042608],center:[118.89106164288563,22.097617600474933,0],created:1734952431828,created_by_client:"studio",filesize:88540,format:"pbf",id:"neatchenheng.d44z21eg",mapbox_logo:!0,maxzoom:9,minzoom:0,modified:1734952431589,name:"eez-d4udtm",private:!0,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/neatchenheng.d44z21eg/{z}/{x}/{y}.vector.pbf"],upload_id:"cm50xvcov1c0b1ony6ujyjdxy",vector_layers:[{id:"eez-d4udtm",maxzoom:22,minzoom:0,source:"neatchenheng.d44z21eg"}],version:"1.0.0",webpage:"https://studio.mapbox.com/tilesets/neatchenheng.d44z21eg"}},"mapbox://neatchenheng.a4ifbysm":{url:"mapbox://neatchenheng.a4ifbysm",type:"vector",data:{bounds:[-180,-85.19206064243458,179.99989708894586,89.99999999999996],center:[-5145552707119805e-20,2.403969678782687,0],created:1747207518572,created_by_client:"studio",filesize:957976,format:"pbf",id:"neatchenheng.a4ifbysm",mapbox_logo:!0,maxzoom:6,minzoom:0,modified:1747207518355,name:"ne_10m_geography_marine_polys-3968bv",private:!0,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/neatchenheng.a4ifbysm/{z}/{x}/{y}.vector.pbf"],upload_id:"cmanm83zc5ykk1tpgdupzbhb5",vector_layers:[{id:"ne_10m_geography_marine_polys-3968bv",maxzoom:22,minzoom:0,source:"neatchenheng.a4ifbysm"}],version:"1.0.0",webpage:"https://studio.mapbox.com/tilesets/neatchenheng.a4ifbysm"}},"mapbox://neatchenheng.27issko0":{url:"mapbox://neatchenheng.27issko0",type:"vector",data:{bounds:[108.09,20.116666666666667,123.31291651780737,30.871605632915227],center:[115.70145825890368,25.494136149790947,0],created:1747623775149,created_by_client:"studio",filesize:57724,format:"pbf",id:"neatchenheng.27issko0",mapbox_logo:!0,maxzoom:8,minzoom:0,modified:1747897418131,name:"china_route-bdtx5d",private:!0,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/neatchenheng.27issko0/{z}/{x}/{y}.vector.pbf"],upload_id:"cmaz0zckd20bi1onv2xqfrzcv",vector_layers:[{id:"china_route-bdtx5d",maxzoom:22,minzoom:0,source:"neatchenheng.27issko0"}],version:"1.0.0",webpage:"https://studio.mapbox.com/tilesets/neatchenheng.27issko0"}},"mapbox://neatchenheng.dlkkohie":{url:"mapbox://neatchenheng.dlkkohie",type:"vector",data:{bounds:[-180.0443283402411,-80,180.00284240174312,90],center:[-.020742969248985332,5,0],created:1756711198438,created_by_client:"studio",filesize:38990,format:"pbf",id:"neatchenheng.dlkkohie",mapbox_logo:!0,maxzoom:6,minzoom:0,modified:1758161205109,name:"loadlines-b6mgr8",private:!0,scheme:"xyz",tilejson:"3.0.0",tiles:["mapbox://tiles/neatchenheng.dlkkohie/{z}/{x}/{y}.vector.pbf"],upload_id:"cmforrscu3fwp1pqw2ibccowm",vector_layers:[{id:"loadlines-b6mgr8",maxzoom:22,minzoom:0,source:"neatchenheng.dlkkohie"}],version:"1.0.0",webpage:"https://studio.mapbox.com/tilesets/neatchenheng.dlkkohie"}},i4:this.i4.source,hi:this.hi.source},sprite:"mapbox://sprites/neatchenheng/cmddwkooj003i01ptch7p9gvz/8ej8fh7bqw5mhdjot66571v26",glyphs:"mapbox://fonts/mapbox/{fontstack}/{range}.pbf",projection:{name:"equirectangular"},layers:[{id:"empty-layer-0",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"empty-layer-1",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries",slot:""},{id:"country-boundaries",type:"fill",paint:{"fill-color":"rgb(200, 200, 200)"},layout:{visibility:"none"},source:"composite","source-layer":"country_boundaries",slot:""},{id:"empty-layer-2",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries",slot:""},{id:"empty-layer-3",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries",slot:""},{id:"empty-layer-4",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(0, 0, 0, 0)"},layout:{},source:"composite","source-layer":"country_boundaries"},{id:"water-outline",type:"line",paint:{"line-color":"rgb(176, 180, 181)"},layout:{},source:"composite","source-layer":"water",metadata:{"mapbox:featureStateHandler":{}},slot:""},{layout:{visibility:"none"},type:"line",source:"mapbox://neatchenheng.bbqlsheu",id:"world-12nm-v4-20231025",paint:{"line-color":"rgb(241, 46, 39)","line-width":2},slot:"","source-layer":"World_12NM_v4_20231025-4rlzig"},{id:"china-taiwan",type:"line",paint:{"line-width":2,"line-color":"rgb(241, 46, 39)"},layout:{visibility:"none"},source:"mapbox://neatchenheng.d44z21eg","source-layer":"eez-d4udtm"},{id:"ne-10m-outline",type:"line",paint:{"line-color":"rgb(84, 84, 84)"},layout:{visibility:"none"},source:"mapbox://neatchenheng.a4ifbysm","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"ne-10m-label",type:"symbol",paint:{"text-halo-width":1,"text-halo-color":"rgb(255, 255, 255)"},layout:{"text-field":["to-string",["get","name"]],"text-size":12,visibility:"none"},source:"mapbox://neatchenheng.a4ifbysm","source-layer":"ne_10m_geography_marine_polys-3968bv"},{id:"china-route-line",type:"line",paint:{"line-color":"rgba(119, 239, 157, 1)","line-width":2},layout:{visibility:"none"},source:"mapbox://neatchenheng.27issko0","source-layer":"china_route-bdtx5d"},{id:"china-route-fill",type:"fill",paint:{"fill-color":"rgba(119, 239, 157, 1)","fill-opacity":.2},layout:{visibility:"none"},source:"mapbox://neatchenheng.27issko0",filter:["match",["geometry-type"],["Polygon"],!0,!1],"source-layer":"china_route-bdtx5d"},{id:"china-route-label",type:"symbol",paint:{"text-color":"rgb(0, 0, 0)"},layout:{"text-field":["to-string",["get","route_name"]],"text-size":10,"text-offset":[0,1.6],visibility:"none"},source:"mapbox://neatchenheng.27issko0","source-layer":"china_route-bdtx5d"},{id:"ice-area-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":"rgba(167, 211, 208, 0.7)"},source:"mapbox://neatchenheng.9uwc9x7l","source-layer":"ICE_AREA-6oqazd",layout:{visibility:"none"}},{id:"ice-area-line",minzoom:0,maxzoom:22,type:"line",paint:{"line-color":"rgba(199, 239, 236, 1)"},layout:{visibility:"none"},source:"mapbox://neatchenheng.9uwc9x7l","source-layer":"ICE_AREA-6oqazd"},{id:"tide-stations",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(0, 0, 0)","text-opacity":["step",["zoom"],0,4,1]},layout:{visibility:"none","text-field":["to-string",["get","Location_EN"]],"text-size":10,"icon-image":"tide","icon-size":1,"icon-offset":[0,-13],"text-offset":[0,1.6],"text-font":["DIN Pro Regular","Arial Unicode MS Regular"]},source:"mapbox://neatchenheng.7y3kpvvv","source-layer":"tide_station_cn-8xvt91"},{id:"loadlines-label",minzoom:0,maxzoom:22,type:"symbol",paint:{"text-color":"rgb(0, 0, 0)"},layout:{"text-field":["to-string",["get","name"]],"text-size":10,"text-font":["DIN Pro Regular","Arial Unicode MS Regular"],visibility:"none","text-offset":[0,1]},source:"mapbox://neatchenheng.dlkkohie","source-layer":"loadlines-b6mgr8"},{id:"loadlines-fill",minzoom:0,maxzoom:22,type:"fill",paint:{"fill-color":["match",["get","val"],["LLGreen"],"rgba(164, 214, 217, 0.6)",["LLBlue"],"rgba(53, 121, 194, 0.6)",["LLRed"],"rgba(217, 150, 151, 0.6)",["LLSUMMER"],"rgba(111, 110, 212, 0.6)","rgba(255, 255, 255, 0.6)"],"fill-outline-color":"rgba(255, 255, 255, 0.3)"},layout:{visibility:"none"},source:"mapbox://neatchenheng.dlkkohie","source-layer":"loadlines-b6mgr8"}],created:"2025-07-22T02:15:53.587Z",modified:"2025-08-07T10:15:43.870Z",id:"cmddwkooj003i01ptch7p9gvz",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1}},this.mapboxStyle={light:{version:8,name:"origin",lights:[],fog:this.originStyle.light.fog,bearing:0,pitch:1,sprite:this.originStyle.light.sprite,glyphs:this.originStyle.light.glyphs,projection:this.originStyle.light.projection,sources:{composite:this.originStyle.light.sources.composite},layers:[(i=(r=this.originStyle)==null?void 0:r.light.layers)==null?void 0:i.find(L=>L.id==="land"),(n=(l=this.originStyle)==null?void 0:l.light.layers)==null?void 0:n.find(L=>L.id==="water"),(s=(c=this.originStyle)==null?void 0:c.light.layers)==null?void 0:s.find(L=>L.id==="loadlines-label"),(d=(m=this.originStyle)==null?void 0:m.light.layers)==null?void 0:d.find(L=>L.id==="loadlines-fill"),(u=(g=this.originStyle)==null?void 0:g.light.layers)==null?void 0:u.find(L=>L.id==="ice-area-fill"),(p=(y=this.originStyle)==null?void 0:y.light.layers)==null?void 0:p.find(L=>L.id==="ice-area-line"),(f=(h=this.originStyle)==null?void 0:h.light.layers)==null?void 0:f.find(L=>L.id==="empty-layer-0"),(b=(w=this.originStyle)==null?void 0:w.light.layers)==null?void 0:b.find(L=>L.id==="empty-layer-1"),(x=(A=this.originStyle)==null?void 0:A.light.layers)==null?void 0:x.find(L=>L.id==="country-boundaries"),(k=(C=this.originStyle)==null?void 0:C.light.layers)==null?void 0:k.find(L=>L.id==="water-outline"),(z=(_=this.originStyle)==null?void 0:_.light.layers)==null?void 0:z.find(L=>L.id==="water-outline2"),(T=(P=this.originStyle)==null?void 0:P.light.layers)==null?void 0:T.find(L=>L.id==="empty-layer-2"),(H=(V=this.originStyle)==null?void 0:V.light.layers)==null?void 0:H.find(L=>L.id==="water-line-label"),(J=(O=this.originStyle)==null?void 0:O.light.layers)==null?void 0:J.find(L=>L.id==="water-point-label"),(ne=(se=this.originStyle)==null?void 0:se.light.layers)==null?void 0:ne.find(L=>L.id==="world-12nm-v4-20231025"),(j=(N=this.originStyle)==null?void 0:N.light.layers)==null?void 0:j.find(L=>L.id==="ne-10m-outline"),(Q=(W=this.originStyle)==null?void 0:W.light.layers)==null?void 0:Q.find(L=>L.id==="ne-10m-label"),(B=(G=this.originStyle)==null?void 0:G.light.layers)==null?void 0:B.find(L=>L.id==="china-route-line"),(S=(U=this.originStyle)==null?void 0:U.light.layers)==null?void 0:S.find(L=>L.id==="china-route-fill"),(ce=(ee=this.originStyle)==null?void 0:ee.light.layers)==null?void 0:ce.find(L=>L.id==="china-route-label"),(ue=(ge=this.originStyle)==null?void 0:ge.light.layers)==null?void 0:ue.find(L=>L.id==="admin-0-boundary-bg"),(he=(oe=this.originStyle)==null?void 0:oe.light.layers)==null?void 0:he.find(L=>L.id==="admin-0-boundary"),(_e=(fe=this.originStyle)==null?void 0:fe.light.layers)==null?void 0:_e.find(L=>L.id==="admin-0-boundary-disputed"),(ie=(Y=this.originStyle)==null?void 0:Y.light.layers)==null?void 0:ie.find(L=>L.id==="country-label"),(Ge=(Fe=this.originStyle)==null?void 0:Fe.light.layers)==null?void 0:Ge.find(L=>L.id==="continent-label"),(ve=(De=this.originStyle)==null?void 0:De.light.layers)==null?void 0:ve.find(L=>L.id==="tide-stations"),(Ve=(je=this.originStyle)==null?void 0:je.light.layers)==null?void 0:Ve.find(L=>L.id==="empty-layer-3"),(Re=(Te=this.originStyle)==null?void 0:Te.light.layers)==null?void 0:Re.find(L=>L.id==="empty-layer-4")]},dark:{version:8,name:"dark",metadata:(We=this.originStyle)==null?void 0:We.dark.metadata,center:[90.22129259388525,-3.2084663486364606],zoom:1.2556266457717493,bearing:0,pitch:0,lights:[],fog:{range:[.5,10]},sources:(Ze=this.originStyle)==null?void 0:Ze.dark.sources,sprite:(Be=this.originStyle)==null?void 0:Be.dark.sprite,glyphs:(xe=this.originStyle)==null?void 0:xe.dark.glyphs,projection:(ke=this.originStyle)==null?void 0:ke.dark.projection,id:"cmdqwez32005b01re2w0k3zk4",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1,layers:[(Xe=(ze=this.originStyle)==null?void 0:ze.dark.layers)==null?void 0:Xe.find(L=>L.id==="land"),(Oe=(He=this.originStyle)==null?void 0:He.dark.layers)==null?void 0:Oe.find(L=>L.id==="water"),(at=(Me=this.originStyle)==null?void 0:Me.dark.layers)==null?void 0:at.find(L=>L.id==="loadlines-label"),(rt=(it=this.originStyle)==null?void 0:it.dark.layers)==null?void 0:rt.find(L=>L.id==="loadlines-fill"),(nt=(lt=this.originStyle)==null?void 0:lt.dark.layers)==null?void 0:nt.find(L=>L.id==="ice-area-fill"),(ct=(st=this.originStyle)==null?void 0:st.dark.layers)==null?void 0:ct.find(L=>L.id==="ice-area-line"),(dt=(mt=this.originStyle)==null?void 0:mt.dark.layers)==null?void 0:dt.find(L=>L.id==="empty-layer-0"),(pt=(ht=this.originStyle)==null?void 0:ht.dark.layers)==null?void 0:pt.find(L=>L.id==="empty-layer-1"),(ut=(gt=this.originStyle)==null?void 0:gt.dark.layers)==null?void 0:ut.find(L=>L.id==="country-boundaries"),(yt=(ft=this.originStyle)==null?void 0:ft.dark.layers)==null?void 0:yt.find(L=>L.id==="water-outline"),(wt=(bt=this.originStyle)==null?void 0:bt.dark.layers)==null?void 0:wt.find(L=>L.id==="empty-layer-2"),(kt=(xt=this.originStyle)==null?void 0:xt.dark.layers)==null?void 0:kt.find(L=>L.id==="water-line-label"),(Lt=(At=this.originStyle)==null?void 0:At.dark.layers)==null?void 0:Lt.find(L=>L.id==="water-point-label"),(vt=(Ct=this.originStyle)==null?void 0:Ct.dark.layers)==null?void 0:vt.find(L=>L.id==="world-12nm-v4-20231025"),(_t=(zt=this.originStyle)==null?void 0:zt.dark.layers)==null?void 0:_t.find(L=>L.id==="ne-10m-outline"),(Nt=(St=this.originStyle)==null?void 0:St.dark.layers)==null?void 0:Nt.find(L=>L.id==="ne-10m-label"),(Pt=(Mt=this.originStyle)==null?void 0:Mt.dark.layers)==null?void 0:Pt.find(L=>L.id==="china-route-line"),(Tt=(Vt=this.originStyle)==null?void 0:Vt.dark.layers)==null?void 0:Tt.find(L=>L.id==="china-route-fill"),(Dt=(Et=this.originStyle)==null?void 0:Et.dark.layers)==null?void 0:Dt.find(L=>L.id==="china-route-label"),(Bt=(Rt=this.originStyle)==null?void 0:Rt.dark.layers)==null?void 0:Bt.find(L=>L.id==="admin-0-boundary-bg"),(Ft=(It=this.originStyle)==null?void 0:It.dark.layers)==null?void 0:Ft.find(L=>L.id==="admin-0-boundary"),(jt=(Gt=this.originStyle)==null?void 0:Gt.dark.layers)==null?void 0:jt.find(L=>L.id==="admin-0-boundary-disputed"),(Ee=(Pe=this.originStyle)==null?void 0:Pe.dark.layers)==null?void 0:Ee.find(L=>L.id==="country-label"),(Ye=(Wt=this.originStyle)==null?void 0:Wt.dark.layers)==null?void 0:Ye.find(L=>L.id==="continent-label"),(et=(Zt=this.originStyle)==null?void 0:Zt.dark.layers)==null?void 0:et.find(L=>L.id==="tide-stations"),(Ue=(Ae=this.originStyle)==null?void 0:Ae.dark.layers)==null?void 0:Ue.find(L=>L.id==="empty-layer-3"),(Le=(te=this.originStyle)==null?void 0:te.dark.layers)==null?void 0:Le.find(L=>L.id==="empty-layer-4")]},satellite:{version:8,name:"Satellite Streets",metadata:(X=this.originStyle)==null?void 0:X.satellite.metadata,center:[55.13,25.12],zoom:12,fog:(Z=this.originStyle)==null?void 0:Z.satellite.fog,imports:(Je=this.originStyle)==null?void 0:Je.satellite.imports,sources:(Ie=this.originStyle)==null?void 0:Ie.satellite.sources,sprite:(Se=this.originStyle)==null?void 0:Se.satellite.sprite,glyphs:(I=this.originStyle)==null?void 0:I.satellite.glyphs,projection:(Xt=this.originStyle)==null?void 0:Xt.satellite.projection,created:"2025-07-25T03:53:24.667Z",modified:"2025-07-28T06:47:35.471Z",id:"cmdiadnej03n101r485bs2m6a",owner:"neatchenheng",visibility:"private",protected:!1,draft:!1,layers:[(Ce=(q=this.originStyle)==null?void 0:q.satellite.layers)==null?void 0:Ce.find(L=>L.id==="background"),(tt=(Ke=this.originStyle)==null?void 0:Ke.satellite.layers)==null?void 0:tt.find(L=>L.id==="satellite"),(R=(ot=this.originStyle)==null?void 0:ot.satellite.layers)==null?void 0:R.find(L=>L.id==="loadlines-label"),(F=(Qe=this.originStyle)==null?void 0:Qe.satellite.layers)==null?void 0:F.find(L=>L.id==="loadlines-fill"),(Ot=(qe=this.originStyle)==null?void 0:qe.satellite.layers)==null?void 0:Ot.find(L=>L.id==="ice-area-fill"),($t=(ae=this.originStyle)==null?void 0:ae.satellite.layers)==null?void 0:$t.find(L=>L.id==="ice-area-line"),(go=(re=this.originStyle)==null?void 0:re.satellite.layers)==null?void 0:go.find(L=>L.id==="empty-layer-0"),(fo=(uo=this.originStyle)==null?void 0:uo.satellite.layers)==null?void 0:fo.find(L=>L.id==="empty-layer-1"),(bo=(yo=this.originStyle)==null?void 0:yo.satellite.layers)==null?void 0:bo.find(L=>L.id==="country-boundaries"),(xo=(wo=this.originStyle)==null?void 0:wo.satellite.layers)==null?void 0:xo.find(L=>L.id==="water-outline"),(Ao=(ko=this.originStyle)==null?void 0:ko.satellite.layers)==null?void 0:Ao.find(L=>L.id==="empty-layer-2"),(Co=(Lo=this.originStyle)==null?void 0:Lo.satellite.layers)==null?void 0:Co.find(L=>L.id==="world-12nm-v4-20231025"),(zo=(vo=this.originStyle)==null?void 0:vo.satellite.layers)==null?void 0:zo.find(L=>L.id==="ne-10m-outline"),(So=(_o=this.originStyle)==null?void 0:_o.satellite.layers)==null?void 0:So.find(L=>L.id==="ne-10m-label"),(ai=(No=this.originStyle)==null?void 0:No.satellite.layers)==null?void 0:ai.find(L=>L.id==="china-route-line"),(ri=(ii=this.originStyle)==null?void 0:ii.satellite.layers)==null?void 0:ri.find(L=>L.id==="china-route-fill"),(ni=(li=this.originStyle)==null?void 0:li.satellite.layers)==null?void 0:ni.find(L=>L.id==="china-route-label"),(ci=(si=this.originStyle)==null?void 0:si.satellite.layers)==null?void 0:ci.find(L=>L.id==="tide-stations"),(di=(mi=this.originStyle)==null?void 0:mi.satellite.layers)==null?void 0:di.find(L=>L.id==="empty-layer-3"),(pi=(hi=this.originStyle)==null?void 0:hi.satellite.layers)==null?void 0:pi.find(L=>L.id==="empty-layer-4")]},nautical:{version:8,name:"origin",lights:[],fog:this.originStyle.light.fog,bearing:0,pitch:1,sprite:this.originStyle.light.sprite,glyphs:this.originStyle.light.glyphs,projection:this.originStyle.light.projection,sources:this.originStyle.light.sources,layers:[(ui=(gi=this.originStyle)==null?void 0:gi.light.layers)==null?void 0:ui.find(L=>L.id==="land"),(yi=(fi=this.originStyle)==null?void 0:fi.light.layers)==null?void 0:yi.find(L=>L.id==="water"),a?this.hi.layer:this.i4.layer,(wi=(bi=this.originStyle)==null?void 0:bi.light.layers)==null?void 0:wi.find(L=>L.id==="loadlines-label"),(ki=(xi=this.originStyle)==null?void 0:xi.light.layers)==null?void 0:ki.find(L=>L.id==="loadlines-fill"),(Li=(Ai=this.originStyle)==null?void 0:Ai.light.layers)==null?void 0:Li.find(L=>L.id==="ice-area-fill"),(vi=(Ci=this.originStyle)==null?void 0:Ci.light.layers)==null?void 0:vi.find(L=>L.id==="ice-area-line"),(_i=(zi=this.originStyle)==null?void 0:zi.light.layers)==null?void 0:_i.find(L=>L.id==="empty-layer-0"),(Ni=(Si=this.originStyle)==null?void 0:Si.light.layers)==null?void 0:Ni.find(L=>L.id==="empty-layer-1"),(Pi=(Mi=this.originStyle)==null?void 0:Mi.light.layers)==null?void 0:Pi.find(L=>L.id==="empty-layer-2"),(Ti=(Vi=this.originStyle)==null?void 0:Vi.light.layers)==null?void 0:Ti.find(L=>L.id==="country-boundaries"),(Di=(Ei=this.originStyle)==null?void 0:Ei.light.layers)==null?void 0:Di.find(L=>L.id==="water-outline"),(Bi=(Ri=this.originStyle)==null?void 0:Ri.light.layers)==null?void 0:Bi.find(L=>L.id==="water-outline2"),(Fi=(Ii=this.originStyle)==null?void 0:Ii.light.layers)==null?void 0:Fi.find(L=>L.id==="world-12nm-v4-20231025"),(ji=(Gi=this.originStyle)==null?void 0:Gi.light.layers)==null?void 0:ji.find(L=>L.id==="ne-10m-outline"),(Zi=(Wi=this.originStyle)==null?void 0:Wi.light.layers)==null?void 0:Zi.find(L=>L.id==="ne-10m-label"),(Hi=(Xi=this.originStyle)==null?void 0:Xi.light.layers)==null?void 0:Hi.find(L=>L.id==="china-route-line"),(Yi=(Oi=this.originStyle)==null?void 0:Oi.light.layers)==null?void 0:Yi.find(L=>L.id==="china-route-fill"),(Ji=(Ui=this.originStyle)==null?void 0:Ui.light.layers)==null?void 0:Ji.find(L=>L.id==="china-route-label"),(Qi=(Ki=this.originStyle)==null?void 0:Ki.light.layers)==null?void 0:Qi.find(L=>L.id==="tide-stations"),($i=(qi=this.originStyle)==null?void 0:qi.light.layers)==null?void 0:$i.find(L=>L.id==="empty-layer-3"),(tr=(er=this.originStyle)==null?void 0:er.light.layers)==null?void 0:tr.find(L=>L.id==="empty-layer-4")]}}}}const x1="",ny={name:"MapInitial",props:{token:{type:String,default:""},height:{type:String,default:"100vh"},width:{type:String,default:"100vw"},top:{type:Number,default:60},simple:{type:Boolean,default:!1},mapFeather:{type:String},menuToggle:{type:Object,default:{}},platform:{type:String}},emits:["map","menuToggle"],data(){return{map:void 0,beforeLayer:"",helper:void 0,zoom:2,right:10}},computed:{computeYear(){const o=new Date().getFullYear();return o>2023?o:2023}},watch:{"menuToggle.v":{handler(){this.$nextTick(()=>{var o;this.simple||(this.right=(((o=document.getElementsByClassName("right-bar")[0])==null?void 0:o.clientWidth)||0)+10)})}},mapFeather:{handler(){this.map=void 0,this.mapFeather&&this.$nextTick(()=>{this.initOnlineMap()})},immediate:!0},map:{handler(){this.$emit("map",this.map)},immediate:!0}},methods:{async initOnlineMap(){this.helper=new Ua(this.token,{hifleet:this.platform==="ops"}),de.accessToken="pk.eyJ1IjoibmVhdGNoZW5oZW5nIiwiYSI6ImNsdXM3cnBmODBsemgycW1vaXc1bjV6bXMifQ.w6fqHGRbhNhLvm0LnX4ZVw";const o=new de.Map({container:"map",style:this.helper.mapboxStyle[this.mapFeather],minZoom:2,maxZoom:22,zoom:2,center:[120,30],dragRotate:!1,pitchWithRotate:!1,touchZoomRotate:{enabled:!0,rotate:!1},projection:"mercator",preserveDrawingBuffer:!0,fadeDuration:300});o.dragRotate.disable(),o.touchZoomRotate.disableRotation(),o.on("load",()=>{this.zoom=2,this.map=o,this.$emit("menuToggle"),this.addScaleControl()}),o.on("move",()=>{var e;this.zoom=(e=this.map)==null?void 0:e.getZoom()})},addScaleControl(){var e;this.map.addControl(new de.ScaleControl({maxWidth:120,unit:"nautical"}),"bottom-left");const o=(e=document.getElementsByClassName("mapboxgl-ctrl-scale"))==null?void 0:e[0];o&&(o.className="mapboxgl-ctrl-scale "+this.mapFeather)},handleZoomIn(){var o;this.zoom<=22&&(this.zoom=Math.floor(this.zoom)+1,(o=this.map)==null||o.flyTo({zoom:this.zoom,duration:500}))},handleZoomOut(){var o;this.zoom>2&&(this.zoom=Math.floor(this.zoom)-1,(o=this.map)==null||o.flyTo({zoom:this.zoom,duration:500}))}}},sy={class:"v-btn--variant-elevated rounded"},cy={class:"v-btn--variant-elevated rounded"},my={class:"zoom"},dy={key:2,class:"position-absolute left-0 bottom-0 ma-2 my-1 text-caption text-label opacity-70"};function hy(o,e,a,r,i,l){const n=t.resolveComponent("VBtn");return t.openBlock(),t.createElementBlock("div",{id:"mapbox-initial-gl4",class:"mapbox-initial-gl4 gif-container",style:t.normalizeStyle({height:a.height,width:a.width})},[e[6]||(e[6]=t.createElementVNode("div",{id:"map"},null,-1)),a.simple?(t.openBlock(),t.createElementBlock("div",{key:0,class:"menu-bar-box transition px-1 rounded d-flex flex-column pa-1 simple",style:t.normalizeStyle({top:a.top+294+"px",right:i.right+"px",height:"40px"})},[t.createElementVNode("div",sy,[t.createVNode(n,{"min-width":"32",width:"32",height:"32",class:"pa-0 elevation-0",onClick:l.initOnlineMap},{default:t.withCtx(()=>e[0]||(e[0]=[t.createElementVNode("i",{class:"iconfont icon-shuaxin text-h4"},null,-1)])),_:1,__:[0]},8,["onClick"])])],4)):t.createCommentVNode("",!0),a.simple?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:1,class:"menu-bar-box transition px-1 rounded d-flex flex-column",style:t.normalizeStyle({top:a.top+308+"px",right:i.right+"px",height:"112px"})},[t.createElementVNode("div",cy,[t.createVNode(n,{"min-width":"32",width:"32",height:"32",class:"pa-0 elevation-0",onClick:l.handleZoomIn},{default:t.withCtx(()=>e[1]||(e[1]=[t.createElementVNode("i",{class:"iconfont icon-a-Zoomin text-h4"},null,-1)])),_:1,__:[1]},8,["onClick"]),t.createElementVNode("div",my,t.toDisplayString(i.zoom?Math.floor(i.zoom):0),1),t.createVNode(n,{"min-width":"32",width:"32",height:"32",class:"elevation-0 pa-0",onClick:l.handleZoomOut},{default:t.withCtx(()=>e[2]||(e[2]=[t.createElementVNode("i",{class:"iconfont icon-a-Zoomout text-h4"},null,-1)])),_:1,__:[2]},8,["onClick"])])],4)),a.simple?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",dy,[e[3]||(e[3]=t.createElementVNode("span",null,"© 2023",-1)),t.createElementVNode("span",null,"-"+t.toDisplayString(l.computeYear),1),e[4]||(e[4]=t.createElementVNode("span",{class:"text-uppercase ma-2"},"ormwx.com",-1)),e[5]||(e[5]=t.createElementVNode("a",{class:"text-decoration-underline cursor-pointer text-label",href:"https://beian.miit.gov.cn/",target:"_blank"},"沪ICP备18039043号-6",-1))]))],4)}const Ja=K(ny,[["render",hy]]),k1="",py={name:"DateRangePicker",props:{width:{type:Number,default:null},height:{type:Number,default:30},position:{type:String,default:"top"},locale:{type:String,default:"en"},timeZone:{type:Number},defaultRange:{type:Array,default:()=>[]},dayAbout:{type:Object,default:()=>({})},fastPick:{type:Object,default:()=>({show:!1,allows:["past7day","past14day","past1month","past3month","past6month","past1mear","lastMonth","lastSeason","lastYear","forward7day","forward14day","forward1month","forward3month"]})}},emits:["dateRange"],data(){return{showDatePicker:!1,minDate:void 0,maxDate:void 0,dateRange:[],dateRangeStr:void 0,activeFastPick:"",fastPickOptions:["past7day","past14day","past1month","past3month","past6month","past1year","lastMonth","lastSeason","lastYear","forward7day","forward14day","forward1month","forward3month"]}},computed:{getStyle(){const o=this.width||226;return this.position==="top"?{bottom:"40px",left:`-${(630-o)/2}px`}:this.position==="bottom"?{top:"40px",left:`-${(630-o)/2}px`}:this.position==="left"?{bottom:"-140px",left:"-636px"}:this.position==="right"?{bottom:"-140px",right:"-636px"}:{bottom:"40px",left:`-${(630-o)/2}px`}},timeZoneNames(){return v.tz.names()},timeZoneName(){var o;return(o=this.timeZoneNames.filter(e=>v.tz(v(),e).utcOffset()===this.timeZone*60))==null?void 0:o[0]},utcTimeZoneName(){return"Africa/Abidjan"},localTimeZoneName(){return Intl.DateTimeFormat().resolvedOptions().timeZone||"Asia/Shanghai"},computeTzSimple(){return(o,e,a="yyyy-MM-DD")=>{var r,i;if(o){const l=e||0;return(i=(r=v(o))==null?void 0:r.utcOffset(l))==null?void 0:i.format(a)}return"-"}}},watch:{timeZone:{handler(o,e){o!==e&&(this.handleResetDateRange(),this.handleResetMinMax())}},defaultRange:{handler(o,e){((o==null?void 0:o[0])!==(e==null?void 0:e[0])||(o==null?void 0:o[1])!==(e==null?void 0:e[1]))&&this.handleResetDateRange()},deep:!0}},mounted(){this.handleReset()},unmounted(){this.handleCancelDate()},methods:{handleReset(){this.handleResetDateRange(),this.handleResetMinMax()},handleResetDateRange(){var o;((o=this.defaultRange)==null?void 0:o.length)===2&&(this.dateRange=this.defaultRange,this.dateRangeStr=`${v.tz(this.dateRange[0],this.timeZoneName).format("yyyy-MM-DD")} ~ ${v.tz(this.dateRange[1],this.timeZoneName).format("yyyy-MM-DD")}`,this.$emit("dateRange",[v.tz(this.dateRange[0],this.timeZoneName).set({hour:0,minute:0,second:0,millisecond:0}).format(),v.tz(this.dateRange[1],this.timeZoneName).set({hour:23,minute:59,second:59,millisecond:59}).format()]))},handleResetMinMax(){const o=v.tz(v().format(),this.timeZoneName).clone(),{h:e,f:a}=this.dayAbout;e!=null&&typeof Number(e)=="number"&&!isNaN(e)&&(this.minDate=o.clone().add(e,"day").format("yyyy-MM-DD")),a!=null&&typeof Number(a)=="number"&&!isNaN(a)&&(this.maxDate=o.clone().add(a,"day").format("yyyy-MM-DD"))},handleOpenDatePicker(){this.showDatePicker=!this.showDatePicker},handleFastPick(o){if(o.dateRange){const e=[];switch(o.dateRange){case"past7day":e.push(v.tz(v(),this.timeZoneName).clone().subtract(7,"day").format()),e.push(v.tz(v(),this.timeZoneName).clone().format());break;case"past14day":e.push(v.tz(v(),this.timeZoneName).clone().subtract(14,"day").format()),e.push(v.tz(v(),this.timeZoneName).clone().format());break;case"past1month":e.push(v.tz(v(),this.timeZoneName).clone().add(-1,"month").format()),e.push(v.tz(v(),this.timeZoneName).clone().format());break;case"past3month":e.push(v.tz(v(),this.timeZoneName).clone().add(-3,"month").format()),e.push(v.tz(v(),this.timeZoneName).clone().format());break;case"past6month":e.push(v.tz(v(),this.timeZoneName).clone().add(-6,"month").format()),e.push(v.tz(v(),this.timeZoneName).clone().format());break;case"past1year":e.push(v.tz(v(),this.timeZoneName).clone().add(-12,"month").format()),e.push(v.tz(v(),this.timeZoneName).clone().format());break;case"lastMonth":e.push(v.tz(v(),this.timeZoneName).clone().subtract(1,"month").startOf("month").format()),e.push(v.tz(v(),this.timeZoneName).clone().subtract(1,"month").endOf("month").format());break;case"lastSeason":e.push(v.tz(v(),this.timeZoneName).clone().startOf("quarter").subtract(3,"months").startOf("month").format()),e.push(v.tz(v(),this.timeZoneName).clone().startOf("quarter").subtract(1,"day").endOf("month").format());break;case"lastYear":e.push(v.tz(v(),this.timeZoneName).clone().subtract(1,"year").startOf("year").format()),e.push(v.tz(v(),this.timeZoneName).clone().subtract(1,"year").endOf("year").format());break;case"forward7day":e.push(v.tz(v(),this.timeZoneName).clone().format()),e.push(v.tz(v(),this.timeZoneName).clone().add(7,"day").format());break;case"forward14day":e.push(v.tz(v(),this.timeZoneName).clone().format()),e.push(v.tz(v(),this.timeZoneName).clone().add(14,"day").format());break;case"forward1month":e.push(v.tz(v(),this.timeZoneName).clone().format()),e.push(v.tz(v(),this.timeZoneName).clone().add(1,"month").format());break;case"forward3month":e.push(v.tz(v(),this.timeZoneName).clone().format()),e.push(v.tz(v(),this.timeZoneName).clone().add(3,"month").format());break}this.dateRange=e,this.activeFastPick=o.dateRange}},handleConfirmDate(){var e;const o=[this.dateRange[0],this.dateRange[((e=this.dateRange)==null?void 0:e.length)-1]];this.dateRangeStr=`${v(o[0]).format("yyyy-MM-DD")} ~ ${v(o[1]).format("yyyy-MM-DD")}`,this.$emit("dateRange",[v.tz(o[0],this.timeZoneName).set({year:v(o[0]).year(),month:v(o[0]).month(),date:v(o[0]).date(),hour:0,minute:0,second:0,millisecond:0}).format(),v.tz(o[1],this.timeZoneName).set({year:v(o[1]).year(),month:v(o[1]).month(),date:v(o[1]).date(),hour:23,minute:59,second:59,millisecond:59}).format()]),this.showDatePicker=!1},handleCancelDate(){this.showDatePicker=!1},handleClickOutside(o){const e=this.$refs.idmGl4Timepicker;e&&!e.contains(o.target)&&(this.showDatePicker=!1)},handleClearDate(){this.dateRange=[],this.dateRangeStr="",this.$emit("dateRange",[])}}},gy={ref:"idmGl4DatePicker",class:"idm-gl4-date-picker"},uy={class:"flex-1-1-0"},fy={class:"pa-0 w-100 d-flex justify-space-between align-center ga-4"},yy={key:0,class:"d-flex justify-start align-center flex-wrap ga-3 ml-n2"},by={class:"flex-1-1-0 d-flex justify-end align-center ga-4"};function wy(o,e,a,r,i,l){const n=t.resolveComponent("VIcon"),c=t.resolveComponent("VDatePicker"),s=t.resolveComponent("VDivider"),m=t.resolveComponent("VCardText"),d=t.resolveComponent("VBtn"),g=t.resolveComponent("VCardActions"),u=t.resolveComponent("VCard");return t.openBlock(),t.createElementBlock("div",gy,[t.createElementVNode("div",{style:t.normalizeStyle({height:a.height+"px",width:a.width?a.width+"px":"auto"}),class:"rounded text-body-1 btn-border-1 btn-bg-1 d-flex align-center justify-space-between px-2 cursor-pointer",onClick:e[0]||(e[0]=(...y)=>l.handleOpenDatePicker&&l.handleOpenDatePicker(...y))},[t.createElementVNode("span",uy,t.toDisplayString(i.dateRangeStr),1),i.dateRangeStr?(t.openBlock(),t.createBlock(n,{key:0,class:"text-h5",icon:"mdi-close-circle",style:{opacity:"0.4"},onClick:t.withModifiers(l.handleClearDate,["stop"])},null,8,["onClick"])):t.createCommentVNode("",!0)],4),i.showDatePicker?(t.openBlock(),t.createBlock(u,{key:0,class:"card-box d-flex flex-column border elevation-12",style:t.normalizeStyle(l.getStyle)},{default:t.withCtx(()=>[t.createVNode(m,{class:"w-100 flex-1-1-0 d-flex pa-0"},{default:t.withCtx(()=>[t.createElementVNode("div",fy,[t.createVNode(c,{modelValue:i.dateRange[0],"onUpdate:modelValue":[e[1]||(e[1]=y=>i.dateRange[0]=y),e[2]||(e[2]=y=>i.activeFastPick=void 0)],min:i.minDate,max:i.maxDate,"weekday-format":"narrow",color:"primary",density:"compact",class:"w-100","hide-header":"","no-month-picker":!0},null,8,["modelValue","min","max"]),t.createVNode(s,{vertical:"",class:"my-2"}),t.createVNode(c,{modelValue:i.dateRange[1],"onUpdate:modelValue":[e[3]||(e[3]=y=>i.dateRange[1]=y),e[4]||(e[4]=y=>i.activeFastPick=void 0)],min:i.minDate,max:i.maxDate,"weekday-format":"narrow",color:"primary",density:"compact",class:"w-100","hide-header":"","no-month-picker":!0},null,8,["modelValue","min","max"])])]),_:1}),t.createVNode(s),t.createVNode(g,{class:"w-100 d-flex justify-space-between align-center pa-0 px-4",style:{height:"50px"}},{default:t.withCtx(()=>{var y,p;return[(y=a.fastPick)!=null&&y.show?(t.openBlock(),t.createElementBlock("div",yy,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList((p=i.fastPickOptions)==null?void 0:p.filter(h=>a.fastPick.allows.some(f=>f===h)),h=>(t.openBlock(),t.createBlock(d,{key:h,size:"small",color:i.activeFastPick===h?"primary":"",variant:i.activeFastPick===h?"tonal":"text",class:"text-none text-body-2 px-1",onClick:f=>l.handleFastPick({dateRange:h})},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(o.$t("time."+h)),1)]),_:2},1032,["color","variant","onClick"]))),128))])):t.createCommentVNode("",!0),t.createElementVNode("div",by,[t.createVNode(d,{size:"small",variant:"tonal",class:"text-none text-body-1 px-4",onClick:l.handleCancelDate},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(o.$t("actions.cancel")),1)]),_:1},8,["onClick"]),t.createVNode(d,{size:"small",variant:"flat",color:"primary",class:"text-none text-body-1 px-4",onClick:l.handleConfirmDate},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(o.$t("actions.confirm")),1)]),_:1},8,["onClick"])])]}),_:1})]),_:1},8,["style"])):t.createCommentVNode("",!0)],512)}const Ka=K(py,[["render",wy]]),xy={install(o){o.component("MapInitial",Ja),o.component("MapboxGL",Ya),o.component("TropicalGL",Xo),o.component("LatLngGL",Zo),o.component("DateTimePicker",to),o.component("DateRangePicker",Ka),o.component("PortDetail",Po),o.component("TimePlayer",la)}};function ky(o){return typeof o=="string"&&/^data:image\/svg\+xml/i.test(o)}function Ay(o){let e=o.indexOf(",");return e>=0?decodeURIComponent(o.slice(e+1)):""}function Ly(o){return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(o)}`}function Cy(o){let e=[],a="",r=0;for(let i=0;i<o.length;i++){let l=o[i];l==="("&&r++,l===")"&&(r=Math.max(0,r-1)),l===";"&&r===0?(e.push(a),a=""):a+=l}return a.trim()&&e.push(a),e.map(i=>i.trim()).filter(Boolean)}function vy(o){let e=[],a="",r=0;for(let l=0;l<o.length;l++){let n=o[l];n==="("&&r++,n===")"&&(r=Math.max(0,r-1)),n===","&&r===0?(e.push(a.trim()),a=""):a+=n}a.trim()&&e.push(a.trim());let i=[];for(let l of e){if(/\binset\b/i.test(l))continue;let n=l.match(/-?\d+(?:\.\d+)?px/gi)||[],[c="0px",s="0px",m="0px"]=n,d=l.replace(/-?\d+(?:\.\d+)?px/gi,"").replace(/\binset\b/ig,"").trim().replace(/\s{2,}/g," "),g=!!d&&d!==",";i.push(`drop-shadow(${c} ${s} ${m}${g?` ${d}`:""})`)}return i.join(" ")}function Qa(o){let e=Cy(o),a=null,r=null,i=null,l=[];for(let c of e){let s=c.indexOf(":");if(s<0)continue;let m=c.slice(0,s).trim().toLowerCase(),d=c.slice(s+1).trim();m==="box-shadow"?i=d:m==="filter"?a=d:m==="-webkit-filter"?r=d:l.push([m,d])}if(i){let c=vy(i);c&&(a=a?`${a} ${c}`:c,r=r?`${r} ${c}`:c)}let n=[...l];return a&&n.push(["filter",a]),r&&n.push(["-webkit-filter",r]),n.map(([c,s])=>`${c}:${s}`).join(";")}function zy(o){return o.replace(/([^{}]+)\{([^}]*)\}/g,(e,a,r)=>`${a}{${Qa(r)}}`)}function _y(o){return o=o.replace(/<style[^>]*>([\s\S]*?)<\/style>/gi,(e,a)=>e.replace(a,zy(a))),o=o.replace(/style=(['"])([\s\S]*?)\1/gi,(e,a,r)=>`style=${a}${Qa(r)}${a}`),o}function Sy(o){if(!Qt()||!ky(o))return o;try{let e=Ay(o),a=_y(e);return Ly(a)}catch{return o}}async function jo(o,e){let{width:a,height:r,scale:i=1,dpr:l=1,meta:n={},backgroundColor:c}=e;o=Sy(o);let s=new Image;s.loading="eager",s.decoding="sync",s.crossOrigin="anonymous",s.src=o,await s.decode();let m=s.naturalWidth,d=s.naturalHeight,g=Number.isFinite(n.w0)?n.w0:m,u=Number.isFinite(n.h0)?n.h0:d,y,p,h=Number.isFinite(a),f=Number.isFinite(r);if(h&&f)y=Math.max(1,a),p=Math.max(1,r);else if(h){let A=a/Math.max(1,g);y=a,p=u*A}else if(f){let A=r/Math.max(1,u);p=r,y=g*A}else y=m,p=d;y=y*i,p=p*i;let w=document.createElement("canvas");w.width=y*l,w.height=p*l,w.style.width=`${y}px`,w.style.height=`${p}px`;let b=w.getContext("2d");return l!==1&&b.scale(l,l),c&&(b.save(),b.fillStyle=c,b.fillRect(0,0,y,p),b.restore()),b.drawImage(s,0,0,y,p),w}async function qa(o,e){let a=await jo(o,e),r=new Image;return r.src=a.toDataURL(`image/${e.format}`,e.quality),await r.decode(),r.style.width=`${a.width/e.dpr}px`,r.style.height=`${a.height/e.dpr}px`,r}async function $a(o,e){let{scale:a=1,width:r,height:i,meta:l={}}=e,n=Number.isFinite(r),c=Number.isFinite(i),s=Number.isFinite(a)&&a!==1||n||c;if(Qt()&&s)return await qa(o,{...e,format:"png",quality:1,meta:l});let m=new Image;if(m.decoding="sync",m.loading="eager",m.src=o,await m.decode(),n&&c)m.style.width=`${r}px`,m.style.height=`${i}px`;else if(n){let d=Number.isFinite(l.w0)?l.w0:m.naturalWidth,g=Number.isFinite(l.h0)?l.h0:m.naturalHeight,u=r/Math.max(1,d);m.style.width=`${r}px`,m.style.height=`${Math.round(g*u)}px`}else if(c){let d=Number.isFinite(l.w0)?l.w0:m.naturalWidth,g=Number.isFinite(l.h0)?l.h0:m.naturalHeight,u=i/Math.max(1,g);m.style.height=`${i}px`,m.style.width=`${Math.round(d*u)}px`}else{let d=Math.round(m.naturalWidth*a),g=Math.round(m.naturalHeight*a);if(m.style.width=`${d}px`,m.style.height=`${g}px`,typeof o=="string"&&o.startsWith("data:image/svg+xml"))try{let u=decodeURIComponent(o.split(",")[1]).replace(/width="[^"]*"/,`width="${d}"`).replace(/height="[^"]*"/,`height="${g}"`);o=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(u)}`,m.src=o}catch{}}return m}const Wo=Object.freeze(Object.defineProperty({__proto__:null,toImg:$a,toSvg:$a},Symbol.toStringTag,{value:"Module"})),ei=Object.freeze(Object.defineProperty({__proto__:null,toCanvas:jo},Symbol.toStringTag,{value:"Module"}));async function ti(o,e){let a=e.type;if(a==="svg"){let i=decodeURIComponent(o.split(",")[1]);return new Blob([i],{type:"image/svg+xml"})}let r=await jo(o,e);return new Promise(i=>r.toBlob(l=>i(l),`image/${a}`,e.quality))}const oi=Object.freeze(Object.defineProperty({__proto__:null,toBlob:ti},Symbol.toStringTag,{value:"Module"})),qt=Object.freeze(Object.defineProperty({__proto__:null,rasterize:qa},Symbol.toStringTag,{value:"Module"}));async function Ny(o,e){let a=((e==null?void 0:e.format)||(e==null?void 0:e.type)||"").toLowerCase(),r=a==="jpg"?"jpeg":a||"png",i=(e==null?void 0:e.filename)||`snapdom.${r}`,l={...e||{},format:r,type:r};if(l.dpr=1,r==="svg"){let s=await ti(o,{...l,type:"svg"}),m=URL.createObjectURL(s),d=document.createElement("a");d.href=m,d.download=i,d.click(),URL.revokeObjectURL(m);return}let n=await jo(o,l),c=document.createElement("a");c.href=n.toDataURL(`image/${r}`,e==null?void 0:e.quality),c.download=i,c.click()}const My=Object.freeze(Object.defineProperty({__proto__:null,download:Ny},Symbol.toStringTag,{value:"Module"}));le.BottomTimePlayer=la,le.DateRangePicker=Ka,le.DateTimePicker=to,le.LatLngGL=Zo,le.MapInitial=Ja,le.MapboxGL=Ya,le.MapboxGLPlugin=xy,le.MapboxStyleHelper=Ua,le.ParticleSchema=Ne,le.PortDetail=Po,le.TropicalGL=Xo,le.Viewport=Vo,le.WebGL=$e,le.WebGLSchema=ye,Object.defineProperty(le,Symbol.toStringTag,{value:"Module"})});
|