From adcdb451e2d03e5df92073e857cb5869bdefa521 Mon Sep 17 00:00:00 2001 From: "jean-philippe.bazonnais" Date: Wed, 17 Apr 2024 18:20:22 +0200 Subject: [PATCH] modification de la route de deploiement pour le github --- assets/index-CLECqbgR.js | 379 ++++++++++++++++++++++++++++++++++++++ assets/index-CsLR8KJd.css | 82 +++++++++ index.html | 6 +- 3 files changed, 464 insertions(+), 3 deletions(-) create mode 100644 assets/index-CLECqbgR.js create mode 100644 assets/index-CsLR8KJd.css diff --git a/assets/index-CLECqbgR.js b/assets/index-CLECqbgR.js new file mode 100644 index 0000000..624f211 --- /dev/null +++ b/assets/index-CLECqbgR.js @@ -0,0 +1,379 @@ +var Nx=Object.defineProperty;var Ux=(i,e,t)=>e in i?Nx(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var Bx=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports);var Ko=(i,e,t)=>(Ux(i,typeof e!="symbol"?e+"":e,t),t),jx=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)};var td=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)};var Jo=(i,e,t)=>(jx(i,e,"access private method"),t);var jW=Bx(kA=>{(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const s of r)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function t(r){const s={};return r.integrity&&(s.integrity=r.integrity),r.referrerPolicy&&(s.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?s.credentials="include":r.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(r){if(r.ep)return;r.ep=!0;const s=t(r);fetch(r.href,s)}})();/** +* @vue/shared v3.4.21 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function tv(i,e){const t=new Set(i.split(","));return e?n=>t.has(n.toLowerCase()):n=>t.has(n)}const Zt={},Nl=[],Cr=()=>{},zx=()=>!1,Rg=i=>i.charCodeAt(0)===111&&i.charCodeAt(1)===110&&(i.charCodeAt(2)>122||i.charCodeAt(2)<97),iv=i=>i.startsWith("onUpdate:"),en=Object.assign,nv=(i,e)=>{const t=i.indexOf(e);t>-1&&i.splice(t,1)},Vx=Object.prototype.hasOwnProperty,It=(i,e)=>Vx.call(i,e),Ze=Array.isArray,Ul=i=>Tg(i)==="[object Map]",JI=i=>Tg(i)==="[object Set]",rt=i=>typeof i=="function",vi=i=>typeof i=="string",Sc=i=>typeof i=="symbol",ei=i=>i!==null&&typeof i=="object",QI=i=>(ei(i)||rt(i))&&rt(i.then)&&rt(i.catch),$I=Object.prototype.toString,Tg=i=>$I.call(i),Wx=i=>Tg(i).slice(8,-1),eE=i=>Tg(i)==="[object Object]",rv=i=>vi(i)&&i!=="NaN"&&i[0]!=="-"&&""+parseInt(i,10)===i,yu=tv(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Lg=i=>{const e=Object.create(null);return t=>e[t]||(e[t]=i(t))},Yx=/-(\w)/g,cs=Lg(i=>i.replace(Yx,(e,t)=>t?t.toUpperCase():"")),Hx=/\B([A-Z])/g,Ha=Lg(i=>i.replace(Hx,"-$1").toLowerCase()),Gg=Lg(i=>i.charAt(0).toUpperCase()+i.slice(1)),w0=Lg(i=>i?`on${Gg(i)}`:""),Lo=(i,e)=>!Object.is(i,e),b0=(i,e)=>{for(let t=0;t{Object.defineProperty(i,e,{configurable:!0,enumerable:!1,value:t})},qx=i=>{const e=parseFloat(i);return isNaN(e)?i:e};let UA;const tE=()=>UA||(UA=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function qa(i){if(Ze(i)){const e={};for(let t=0;t{if(t){const n=t.split(Zx);n.length>1&&(e[n[0].trim()]=n[1].trim())}}),e}function ur(i){let e="";if(vi(i))e=i;else if(Ze(i))for(let t=0;tvi(i)?i:i==null?"":Ze(i)||ei(i)&&(i.toString===$I||!rt(i.toString))?JSON.stringify(i,nE,2):String(i),nE=(i,e)=>e&&e.__v_isRef?nE(i,e.value):Ul(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((t,[n,r],s)=>(t[S0(n,s)+" =>"]=r,t),{})}:JI(e)?{[`Set(${e.size})`]:[...e.values()].map(t=>S0(t))}:Sc(e)?S0(e):ei(e)&&!Ze(e)&&!eE(e)?String(e):e,S0=(i,e="")=>{var t;return Sc(i)?`Symbol(${(t=i.description)!=null?t:e})`:i};/** +* @vue/reactivity v3.4.21 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let xr;class eP{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=xr,!e&&xr&&(this.index=(xr.scopes||(xr.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=xr;try{return xr=this,e()}finally{xr=t}}}on(){xr=this}off(){xr=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),Za()}return this._dirtyLevel>=4}set dirty(e){this._dirtyLevel=e?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=Eo,t=ba;try{return Eo=!0,ba=this,this._runnings++,BA(this),this.fn()}finally{jA(this),this._runnings--,ba=t,Eo=e}}stop(){var e;this.active&&(BA(this),jA(this),(e=this.onStop)==null||e.call(this),this.active=!1)}}function nP(i){return i.value}function BA(i){i._trackId++,i._depsLength=0}function jA(i){if(i.deps.length>i._depsLength){for(let e=i._depsLength;e{const t=new Map;return t.cleanup=i,t.computed=e,t},hf=new WeakMap,Sa=Symbol(""),Wp=Symbol("");function Wn(i,e,t){if(Eo&&ba){let n=hf.get(i);n||hf.set(i,n=new Map);let r=n.get(t);r||n.set(t,r=lE(()=>n.delete(t))),oE(ba,r)}}function Ms(i,e,t,n,r,s){const o=hf.get(i);if(!o)return;let a=[];if(e==="clear")a=[...o.values()];else if(t==="length"&&Ze(i)){const l=Number(n);o.forEach((c,u)=>{(u==="length"||!Sc(u)&&u>=l)&&a.push(c)})}else switch(t!==void 0&&a.push(o.get(t)),e){case"add":Ze(i)?rv(t)&&a.push(o.get("length")):(a.push(o.get(Sa)),Ul(i)&&a.push(o.get(Wp)));break;case"delete":Ze(i)||(a.push(o.get(Sa)),Ul(i)&&a.push(o.get(Wp)));break;case"set":Ul(i)&&a.push(o.get(Sa));break}ov();for(const l of a)l&&aE(l,4);av()}function rP(i,e){var t;return(t=hf.get(i))==null?void 0:t.get(e)}const sP=tv("__proto__,__v_isRef,__isVue"),cE=new Set(Object.getOwnPropertyNames(Symbol).filter(i=>i!=="arguments"&&i!=="caller").map(i=>Symbol[i]).filter(Sc)),zA=oP();function oP(){const i={};return["includes","indexOf","lastIndexOf"].forEach(e=>{i[e]=function(...t){const n=St(this);for(let s=0,o=this.length;s{i[e]=function(...t){Xa(),ov();const n=St(this)[e].apply(this,t);return av(),Za(),n}}),i}function aP(i){const e=St(this);return Wn(e,"has",i),e.hasOwnProperty(i)}class uE{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){const r=this._isReadonly,s=this._isShallow;if(t==="__v_isReactive")return!r;if(t==="__v_isReadonly")return r;if(t==="__v_isShallow")return s;if(t==="__v_raw")return n===(r?s?_P:gE:s?fE:dE).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const o=Ze(e);if(!r){if(o&&It(zA,t))return Reflect.get(zA,t,n);if(t==="hasOwnProperty")return aP}const a=Reflect.get(e,t,n);return(Sc(t)?cE.has(t):sP(t))||(r||Wn(e,"get",t),s)?a:vn(a)?o&&rv(t)?a:a.value:ei(a)?r?mE(a):rc(a):a}}class hE extends uE{constructor(e=!1){super(!1,e)}set(e,t,n,r){let s=e[t];if(!this._isShallow){const l=sc(s);if(!df(n)&&!sc(n)&&(s=St(s),n=St(n)),!Ze(e)&&vn(s)&&!vn(n))return l?!1:(s.value=n,!0)}const o=Ze(e)&&rv(t)?Number(t)i,Og=i=>Reflect.getPrototypeOf(i);function id(i,e,t=!1,n=!1){i=i.__v_raw;const r=St(i),s=St(e);t||(Lo(e,s)&&Wn(r,"get",e),Wn(r,"get",s));const{has:o}=Og(r),a=n?lv:t?hv:qu;if(o.call(r,e))return a(i.get(e));if(o.call(r,s))return a(i.get(s));i!==r&&i.get(e)}function nd(i,e=!1){const t=this.__v_raw,n=St(t),r=St(i);return e||(Lo(i,r)&&Wn(n,"has",i),Wn(n,"has",r)),i===r?t.has(i):t.has(i)||t.has(r)}function rd(i,e=!1){return i=i.__v_raw,!e&&Wn(St(i),"iterate",Sa),Reflect.get(i,"size",i)}function VA(i){i=St(i);const e=St(this);return Og(e).has.call(e,i)||(e.add(i),Ms(e,"add",i,i)),this}function WA(i,e){e=St(e);const t=St(this),{has:n,get:r}=Og(t);let s=n.call(t,i);s||(i=St(i),s=n.call(t,i));const o=r.call(t,i);return t.set(i,e),s?Lo(e,o)&&Ms(t,"set",i,e):Ms(t,"add",i,e),this}function YA(i){const e=St(this),{has:t,get:n}=Og(e);let r=t.call(e,i);r||(i=St(i),r=t.call(e,i)),n&&n.call(e,i);const s=e.delete(i);return r&&Ms(e,"delete",i,void 0),s}function HA(){const i=St(this),e=i.size!==0,t=i.clear();return e&&Ms(i,"clear",void 0,void 0),t}function sd(i,e){return function(n,r){const s=this,o=s.__v_raw,a=St(o),l=e?lv:i?hv:qu;return!i&&Wn(a,"iterate",Sa),o.forEach((c,u)=>n.call(r,l(c),l(u),s))}}function od(i,e,t){return function(...n){const r=this.__v_raw,s=St(r),o=Ul(s),a=i==="entries"||i===Symbol.iterator&&o,l=i==="keys"&&o,c=r[i](...n),u=t?lv:e?hv:qu;return!e&&Wn(s,"iterate",l?Wp:Sa),{next(){const{value:h,done:d}=c.next();return d?{value:h,done:d}:{value:a?[u(h[0]),u(h[1])]:u(h),done:d}},[Symbol.iterator](){return this}}}}function $s(i){return function(...e){return i==="delete"?!1:i==="clear"?void 0:this}}function dP(){const i={get(s){return id(this,s)},get size(){return rd(this)},has:nd,add:VA,set:WA,delete:YA,clear:HA,forEach:sd(!1,!1)},e={get(s){return id(this,s,!1,!0)},get size(){return rd(this)},has:nd,add:VA,set:WA,delete:YA,clear:HA,forEach:sd(!1,!0)},t={get(s){return id(this,s,!0)},get size(){return rd(this,!0)},has(s){return nd.call(this,s,!0)},add:$s("add"),set:$s("set"),delete:$s("delete"),clear:$s("clear"),forEach:sd(!0,!1)},n={get(s){return id(this,s,!0,!0)},get size(){return rd(this,!0)},has(s){return nd.call(this,s,!0)},add:$s("add"),set:$s("set"),delete:$s("delete"),clear:$s("clear"),forEach:sd(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(s=>{i[s]=od(s,!1,!1),t[s]=od(s,!0,!1),e[s]=od(s,!1,!0),n[s]=od(s,!0,!0)}),[i,t,e,n]}const[fP,gP,pP,mP]=dP();function cv(i,e){const t=e?i?mP:pP:i?gP:fP;return(n,r,s)=>r==="__v_isReactive"?!i:r==="__v_isReadonly"?i:r==="__v_raw"?n:Reflect.get(It(t,r)&&r in n?t:n,r,s)}const vP={get:cv(!1,!1)},yP={get:cv(!1,!0)},AP={get:cv(!0,!1)},dE=new WeakMap,fE=new WeakMap,gE=new WeakMap,_P=new WeakMap;function CP(i){switch(i){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function IP(i){return i.__v_skip||!Object.isExtensible(i)?0:CP(Wx(i))}function rc(i){return sc(i)?i:uv(i,!1,cP,vP,dE)}function pE(i){return uv(i,!1,hP,yP,fE)}function mE(i){return uv(i,!0,uP,AP,gE)}function uv(i,e,t,n,r){if(!ei(i)||i.__v_raw&&!(e&&i.__v_isReactive))return i;const s=r.get(i);if(s)return s;const o=IP(i);if(o===0)return i;const a=new Proxy(i,o===2?n:t);return r.set(i,a),a}function Bl(i){return sc(i)?Bl(i.__v_raw):!!(i&&i.__v_isReactive)}function sc(i){return!!(i&&i.__v_isReadonly)}function df(i){return!!(i&&i.__v_isShallow)}function vE(i){return Bl(i)||sc(i)}function St(i){const e=i&&i.__v_raw;return e?St(e):i}function yE(i){return Object.isExtensible(i)&&uf(i,"__v_skip",!0),i}const qu=i=>ei(i)?rc(i):i,hv=i=>ei(i)?mE(i):i;class AE{constructor(e,t,n,r){this.getter=e,this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new sv(()=>e(this._value),()=>Hd(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=n}get value(){const e=St(this);return(!e._cacheable||e.effect.dirty)&&Lo(e._value,e._value=e.effect.run())&&Hd(e,4),_E(e),e.effect._dirtyLevel>=2&&Hd(e,2),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function EP(i,e,t=!1){let n,r;const s=rt(i);return s?(n=i,r=Cr):(n=i.get,r=i.set),new AE(n,r,s||!r,t)}function _E(i){var e;Eo&&ba&&(i=St(i),oE(ba,(e=i.dep)!=null?e:i.dep=lE(()=>i.dep=void 0,i instanceof AE?i:void 0)))}function Hd(i,e=4,t){i=St(i);const n=i.dep;n&&aE(n,e)}function vn(i){return!!(i&&i.__v_isRef===!0)}function Si(i){return CE(i,!1)}function wP(i){return CE(i,!0)}function CE(i,e){return vn(i)?i:new bP(i,e)}class bP{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:St(e),this._value=t?e:qu(e)}get value(){return _E(this),this._value}set value(e){const t=this.__v_isShallow||df(e)||sc(e);e=t?e:St(e),Lo(e,this._rawValue)&&(this._rawValue=e,this._value=t?e:qu(e),Hd(this,4))}}function Nt(i){return vn(i)?i.value:i}const SP={get:(i,e,t)=>Nt(Reflect.get(i,e,t)),set:(i,e,t,n)=>{const r=i[e];return vn(r)&&!vn(t)?(r.value=t,!0):Reflect.set(i,e,t,n)}};function IE(i){return Bl(i)?i:new Proxy(i,SP)}function xP(i){const e=Ze(i)?new Array(i.length):{};for(const t in i)e[t]=MP(i,t);return e}class PP{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0}get value(){const e=this._object[this._key];return e===void 0?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return rP(St(this._object),this._key)}}function MP(i,e,t){const n=i[e];return vn(n)?n:new PP(i,e,t)}/** +* @vue/runtime-core v3.4.21 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function wo(i,e,t,n){try{return n?i(...n):i()}catch(r){Dg(r,e,t)}}function kr(i,e,t,n){if(rt(i)){const s=wo(i,e,t,n);return s&&QI(s)&&s.catch(o=>{Dg(o,e,t)}),s}const r=[];for(let s=0;s>>1,r=cn[n],s=Zu(r);sQr&&cn.splice(e,1)}function GP(i){Ze(i)?jl.push(...i):(!so||!so.includes(i,i.allowRecurse?ma+1:ma))&&jl.push(i),bE()}function qA(i,e,t=Xu?Qr+1:0){for(;tZu(t)-Zu(n));if(jl.length=0,so){so.push(...e);return}for(so=e,ma=0;mai.id==null?1/0:i.id,OP=(i,e)=>{const t=Zu(i)-Zu(e);if(t===0){if(i.pre&&!e.pre)return-1;if(e.pre&&!i.pre)return 1}return t};function xE(i){Yp=!1,Xu=!0,cn.sort(OP);try{for(Qr=0;Qrvi(f)?f.trim():f)),h&&(r=t.map(qx))}let a,l=n[a=w0(e)]||n[a=w0(cs(e))];!l&&s&&(l=n[a=w0(Ha(e))]),l&&kr(l,i,6,r);const c=n[a+"Once"];if(c){if(!i.emitted)i.emitted={};else if(i.emitted[a])return;i.emitted[a]=!0,kr(c,i,6,r)}}function PE(i,e,t=!1){const n=e.emitsCache,r=n.get(i);if(r!==void 0)return r;const s=i.emits;let o={},a=!1;if(!rt(i)){const l=c=>{const u=PE(c,e,!0);u&&(a=!0,en(o,u))};!t&&e.mixins.length&&e.mixins.forEach(l),i.extends&&l(i.extends),i.mixins&&i.mixins.forEach(l)}return!s&&!a?(ei(i)&&n.set(i,null),null):(Ze(s)?s.forEach(l=>o[l]=null):en(o,s),ei(i)&&n.set(i,o),o)}function kg(i,e){return!i||!Rg(e)?!1:(e=e.slice(2).replace(/Once$/,""),It(i,e[0].toLowerCase()+e.slice(1))||It(i,Ha(e))||It(i,e))}let hn=null,ME=null;function ff(i){const e=hn;return hn=i,ME=i&&i.type.__scopeId||null,e}function zn(i,e=hn,t){if(!e||i._n)return i;const n=(...r)=>{n._d&&r_(-1);const s=ff(e);let o;try{o=i(...r)}finally{ff(s),n._d&&r_(1)}return o};return n._n=!0,n._c=!0,n._d=!0,n}function x0(i){const{type:e,vnode:t,proxy:n,withProxy:r,props:s,propsOptions:[o],slots:a,attrs:l,emit:c,render:u,renderCache:h,data:d,setupState:f,ctx:g,inheritAttrs:p}=i;let m,v;const y=ff(i);try{if(t.shapeFlag&4){const _=r||n,C=_;m=Jr(u.call(C,_,h,s,f,d,g)),v=l}else{const _=e;m=Jr(_.length>1?_(s,{attrs:l,slots:a,emit:c}):_(s,null)),v=e.props?l:kP(l)}}catch(_){Eu.length=0,Dg(_,i,1),m=dt(Fs)}let A=m;if(v&&p!==!1){const _=Object.keys(v),{shapeFlag:C}=A;_.length&&C&7&&(o&&_.some(iv)&&(v=FP(v,o)),A=Ta(A,v))}return t.dirs&&(A=Ta(A),A.dirs=A.dirs?A.dirs.concat(t.dirs):t.dirs),t.transition&&(A.transition=t.transition),m=A,ff(y),m}const kP=i=>{let e;for(const t in i)(t==="class"||t==="style"||Rg(t))&&((e||(e={}))[t]=i[t]);return e},FP=(i,e)=>{const t={};for(const n in i)(!iv(n)||!(n.slice(9)in e))&&(t[n]=i[n]);return t};function NP(i,e,t){const{props:n,children:r,component:s}=i,{props:o,children:a,patchFlag:l}=e,c=s.emitsOptions;if(e.dirs||e.transition)return!0;if(t&&l>=0){if(l&1024)return!0;if(l&16)return n?XA(n,o,c):!!o;if(l&8){const u=e.dynamicProps;for(let h=0;hi.__isSuspense;function jP(i,e){e&&e.pendingBranch?Ze(i)?e.effects.push(...i):e.effects.push(i):GP(i)}const zP=Symbol.for("v-scx"),VP=()=>Vn(zP);function WP(i,e){return pv(i,null,e)}const ad={};function bo(i,e,t){return pv(i,e,t)}function pv(i,e,{immediate:t,deep:n,flush:r,once:s,onTrack:o,onTrigger:a}=Zt){if(e&&s){const I=e;e=(...b)=>{I(...b),C()}}const l=Xi,c=I=>n===!0?I:wl(I,n===!1?1:void 0);let u,h=!1,d=!1;if(vn(i)?(u=()=>i.value,h=df(i)):Bl(i)?(u=()=>c(i),h=!0):Ze(i)?(d=!0,h=i.some(I=>Bl(I)||df(I)),u=()=>i.map(I=>{if(vn(I))return I.value;if(Bl(I))return c(I);if(rt(I))return wo(I,l,2)})):rt(i)?e?u=()=>wo(i,l,2):u=()=>(f&&f(),kr(i,l,3,[g])):u=Cr,e&&n){const I=u;u=()=>wl(I())}let f,g=I=>{f=A.onStop=()=>{wo(I,l,4),f=A.onStop=void 0}},p;if(jg)if(g=Cr,e?t&&kr(e,l,3,[u(),d?[]:void 0,g]):u(),r==="sync"){const I=VP();p=I.__watcherHandles||(I.__watcherHandles=[])}else return Cr;let m=d?new Array(i.length).fill(ad):ad;const v=()=>{if(!(!A.active||!A.dirty))if(e){const I=A.run();(n||h||(d?I.some((b,S)=>Lo(b,m[S])):Lo(I,m)))&&(f&&f(),kr(e,l,3,[I,m===ad?void 0:d&&m[0]===ad?[]:m,g]),m=I)}else A.run()};v.allowRecurse=!!e;let y;r==="sync"?y=v:r==="post"?y=()=>kn(v,l&&l.suspense):(v.pre=!0,l&&(v.id=l.uid),y=()=>fv(v));const A=new sv(u,Cr,y),_=iP(),C=()=>{A.stop(),_&&nv(_.effects,A)};return e?t?v():m=A.run():r==="post"?kn(A.run.bind(A),l&&l.suspense):A.run(),p&&p.push(C),C}function YP(i,e,t){const n=this.proxy,r=vi(i)?i.includes(".")?LE(n,i):()=>n[i]:i.bind(n,n);let s;rt(e)?s=e:(s=e.handler,t=e);const o=Th(this),a=pv(r,s.bind(n),t);return o(),a}function LE(i,e){const t=e.split(".");return()=>{let n=i;for(let r=0;r0){if(t>=e)return i;t++}if(n=n||new Set,n.has(i))return i;if(n.add(i),vn(i))wl(i.value,e,t,n);else if(Ze(i))for(let r=0;r{wl(r,e,t,n)});else if(eE(i))for(const r in i)wl(i[r],e,t,n);return i}function Qo(i,e,t,n){const r=i.dirs,s=e&&e.dirs;for(let o=0;o!!i.type.__asyncLoader,GE=i=>i.type.__isKeepAlive;function HP(i,e){OE(i,"a",e)}function qP(i,e){OE(i,"da",e)}function OE(i,e,t=Xi){const n=i.__wdc||(i.__wdc=()=>{let r=t;for(;r;){if(r.isDeactivated)return;r=r.parent}return i()});if(Fg(e,n,t),t){let r=t.parent;for(;r&&r.parent;)GE(r.parent.vnode)&&XP(n,e,t,r),r=r.parent}}function XP(i,e,t,n){const r=Fg(e,i,n,!0);Rh(()=>{nv(n[e],r)},t)}function Fg(i,e,t=Xi,n=!1){if(t){const r=t[i]||(t[i]=[]),s=e.__weh||(e.__weh=(...o)=>{if(t.isUnmounted)return;Xa();const a=Th(t),l=kr(e,t,i,o);return a(),Za(),l});return n?r.unshift(s):r.push(s),s}}const Ys=i=>(e,t=Xi)=>(!jg||i==="sp")&&Fg(i,(...n)=>e(...n),t),ZP=Ys("bm"),wr=Ys("m"),Ng=Ys("bu"),Mh=Ys("u"),KP=Ys("bum"),Rh=Ys("um"),JP=Ys("sp"),QP=Ys("rtg"),$P=Ys("rtc");function eM(i,e=Xi){Fg("ec",i,e)}function Go(i,e,t,n){let r;const s=t&&t[n];if(Ze(i)||vi(i)){r=new Array(i.length);for(let o=0,a=i.length;oe(o,a,void 0,s&&s[a]));else{const o=Object.keys(i);r=new Array(o.length);for(let a=0,l=o.length;apf(e)?!(e.type===Fs||e.type===Kt&&!DE(e.children)):!0)?i:null}const Hp=i=>i?ZE(i)?_v(i)||i.proxy:Hp(i.parent):null,_u=en(Object.create(null),{$:i=>i,$el:i=>i.vnode.el,$data:i=>i.data,$props:i=>i.props,$attrs:i=>i.attrs,$slots:i=>i.slots,$refs:i=>i.refs,$parent:i=>Hp(i.parent),$root:i=>Hp(i.root),$emit:i=>i.emit,$options:i=>mv(i),$forceUpdate:i=>i.f||(i.f=()=>{i.effect.dirty=!0,fv(i.update)}),$nextTick:i=>i.n||(i.n=wE.bind(i.proxy)),$watch:i=>YP.bind(i)}),P0=(i,e)=>i!==Zt&&!i.__isScriptSetup&&It(i,e),tM={get({_:i},e){const{ctx:t,setupState:n,data:r,props:s,accessCache:o,type:a,appContext:l}=i;let c;if(e[0]!=="$"){const f=o[e];if(f!==void 0)switch(f){case 1:return n[e];case 2:return r[e];case 4:return t[e];case 3:return s[e]}else{if(P0(n,e))return o[e]=1,n[e];if(r!==Zt&&It(r,e))return o[e]=2,r[e];if((c=i.propsOptions[0])&&It(c,e))return o[e]=3,s[e];if(t!==Zt&&It(t,e))return o[e]=4,t[e];qp&&(o[e]=0)}}const u=_u[e];let h,d;if(u)return e==="$attrs"&&Wn(i,"get",e),u(i);if((h=a.__cssModules)&&(h=h[e]))return h;if(t!==Zt&&It(t,e))return o[e]=4,t[e];if(d=l.config.globalProperties,It(d,e))return d[e]},set({_:i},e,t){const{data:n,setupState:r,ctx:s}=i;return P0(r,e)?(r[e]=t,!0):n!==Zt&&It(n,e)?(n[e]=t,!0):It(i.props,e)||e[0]==="$"&&e.slice(1)in i?!1:(s[e]=t,!0)},has({_:{data:i,setupState:e,accessCache:t,ctx:n,appContext:r,propsOptions:s}},o){let a;return!!t[o]||i!==Zt&&It(i,o)||P0(e,o)||(a=s[0])&&It(a,o)||It(n,o)||It(_u,o)||It(r.config.globalProperties,o)},defineProperty(i,e,t){return t.get!=null?i._.accessCache[e]=0:It(t,"value")&&this.set(i,e,t.value,null),Reflect.defineProperty(i,e,t)}};function kE(){return FE().slots}function iM(){return FE().attrs}function FE(){const i=bM();return i.setupContext||(i.setupContext=JE(i))}function KA(i){return Ze(i)?i.reduce((e,t)=>(e[t]=null,e),{}):i}let qp=!0;function nM(i){const e=mv(i),t=i.proxy,n=i.ctx;qp=!1,e.beforeCreate&&JA(e.beforeCreate,i,"bc");const{data:r,computed:s,methods:o,watch:a,provide:l,inject:c,created:u,beforeMount:h,mounted:d,beforeUpdate:f,updated:g,activated:p,deactivated:m,beforeDestroy:v,beforeUnmount:y,destroyed:A,unmounted:_,render:C,renderTracked:I,renderTriggered:b,errorCaptured:S,serverPrefetch:R,expose:P,inheritAttrs:w,components:x,directives:D,filters:k}=e;if(c&&rM(c,n,null),o)for(const B in o){const V=o[B];rt(V)&&(n[B]=V.bind(t))}if(r){const B=r.call(t,t);ei(B)&&(i.data=rc(B))}if(qp=!0,s)for(const B in s){const V=s[B],se=rt(V)?V.bind(t,t):rt(V.get)?V.get.bind(t,t):Cr,j=!rt(V)&&rt(V.set)?V.set.bind(t):Cr,Ae=Se({get:se,set:j});Object.defineProperty(n,B,{enumerable:!0,configurable:!0,get:()=>Ae.value,set:q=>Ae.value=q})}if(a)for(const B in a)NE(a[B],n,t,B);if(l){const B=rt(l)?l.call(t):l;Reflect.ownKeys(B).forEach(V=>{Iu(V,B[V])})}u&&JA(u,i,"c");function N(B,V){Ze(V)?V.forEach(se=>B(se.bind(t))):V&&B(V.bind(t))}if(N(ZP,h),N(wr,d),N(Ng,f),N(Mh,g),N(HP,p),N(qP,m),N(eM,S),N($P,I),N(QP,b),N(KP,y),N(Rh,_),N(JP,R),Ze(P))if(P.length){const B=i.exposed||(i.exposed={});P.forEach(V=>{Object.defineProperty(B,V,{get:()=>t[V],set:se=>t[V]=se})})}else i.exposed||(i.exposed={});C&&i.render===Cr&&(i.render=C),w!=null&&(i.inheritAttrs=w),x&&(i.components=x),D&&(i.directives=D)}function rM(i,e,t=Cr){Ze(i)&&(i=Xp(i));for(const n in i){const r=i[n];let s;ei(r)?"default"in r?s=Vn(r.from||n,r.default,!0):s=Vn(r.from||n):s=Vn(r),vn(s)?Object.defineProperty(e,n,{enumerable:!0,configurable:!0,get:()=>s.value,set:o=>s.value=o}):e[n]=s}}function JA(i,e,t){kr(Ze(i)?i.map(n=>n.bind(e.proxy)):i.bind(e.proxy),e,t)}function NE(i,e,t,n){const r=n.includes(".")?LE(t,n):()=>t[n];if(vi(i)){const s=e[i];rt(s)&&bo(r,s)}else if(rt(i))bo(r,i.bind(t));else if(ei(i))if(Ze(i))i.forEach(s=>NE(s,e,t,n));else{const s=rt(i.handler)?i.handler.bind(t):e[i.handler];rt(s)&&bo(r,s,i)}}function mv(i){const e=i.type,{mixins:t,extends:n}=e,{mixins:r,optionsCache:s,config:{optionMergeStrategies:o}}=i.appContext,a=s.get(e);let l;return a?l=a:!r.length&&!t&&!n?l=e:(l={},r.length&&r.forEach(c=>gf(l,c,o,!0)),gf(l,e,o)),ei(e)&&s.set(e,l),l}function gf(i,e,t,n=!1){const{mixins:r,extends:s}=e;s&&gf(i,s,t,!0),r&&r.forEach(o=>gf(i,o,t,!0));for(const o in e)if(!(n&&o==="expose")){const a=sM[o]||t&&t[o];i[o]=a?a(i[o],e[o]):e[o]}return i}const sM={data:QA,props:$A,emits:$A,methods:au,computed:au,beforeCreate:En,created:En,beforeMount:En,mounted:En,beforeUpdate:En,updated:En,beforeDestroy:En,beforeUnmount:En,destroyed:En,unmounted:En,activated:En,deactivated:En,errorCaptured:En,serverPrefetch:En,components:au,directives:au,watch:aM,provide:QA,inject:oM};function QA(i,e){return e?i?function(){return en(rt(i)?i.call(this,this):i,rt(e)?e.call(this,this):e)}:e:i}function oM(i,e){return au(Xp(i),Xp(e))}function Xp(i){if(Ze(i)){const e={};for(let t=0;t1)return t&&rt(e)?e.call(n&&n.proxy):e}}function uM(i,e,t,n=!1){const r={},s={};uf(s,Bg,1),i.propsDefaults=Object.create(null),BE(i,e,r,s);for(const o in i.propsOptions[0])o in r||(r[o]=void 0);t?i.props=n?r:pE(r):i.type.props?i.props=r:i.props=s,i.attrs=s}function hM(i,e,t,n){const{props:r,attrs:s,vnode:{patchFlag:o}}=i,a=St(r),[l]=i.propsOptions;let c=!1;if((n||o>0)&&!(o&16)){if(o&8){const u=i.vnode.dynamicProps;for(let h=0;h{l=!0;const[d,f]=jE(h,e,!0);en(o,d),f&&a.push(...f)};!t&&e.mixins.length&&e.mixins.forEach(u),i.extends&&u(i.extends),i.mixins&&i.mixins.forEach(u)}if(!s&&!l)return ei(i)&&n.set(i,Nl),Nl;if(Ze(s))for(let u=0;u-1,f[1]=p<0||g-1||It(f,"default"))&&a.push(h)}}}const c=[o,a];return ei(i)&&n.set(i,c),c}function e_(i){return i[0]!=="$"&&!yu(i)}function t_(i){return i===null?"null":typeof i=="function"?i.name||"":typeof i=="object"&&i.constructor&&i.constructor.name||""}function i_(i,e){return t_(i)===t_(e)}function n_(i,e){return Ze(e)?e.findIndex(t=>i_(t,i)):rt(e)&&i_(e,i)?0:-1}const zE=i=>i[0]==="_"||i==="$stable",vv=i=>Ze(i)?i.map(Jr):[Jr(i)],dM=(i,e,t)=>{if(e._n)return e;const n=zn((...r)=>vv(e(...r)),t);return n._c=!1,n},VE=(i,e,t)=>{const n=i._ctx;for(const r in i){if(zE(r))continue;const s=i[r];if(rt(s))e[r]=dM(r,s,n);else if(s!=null){const o=vv(s);e[r]=()=>o}}},WE=(i,e)=>{const t=vv(e);i.slots.default=()=>t},fM=(i,e)=>{if(i.vnode.shapeFlag&32){const t=e._;t?(i.slots=St(e),uf(e,"_",t)):VE(e,i.slots={})}else i.slots={},e&&WE(i,e);uf(i.slots,Bg,1)},gM=(i,e,t)=>{const{vnode:n,slots:r}=i;let s=!0,o=Zt;if(n.shapeFlag&32){const a=e._;a?t&&a===1?s=!1:(en(r,e),!t&&a===1&&delete r._):(s=!e.$stable,VE(e,r)),o=e}else e&&(WE(i,e),o={default:1});if(s)for(const a in r)!zE(a)&&o[a]==null&&delete r[a]};function Kp(i,e,t,n,r=!1){if(Ze(i)){i.forEach((d,f)=>Kp(d,e&&(Ze(e)?e[f]:e),t,n,r));return}if(Au(n)&&!r)return;const s=n.shapeFlag&4?_v(n.component)||n.component.proxy:n.el,o=r?null:s,{i:a,r:l}=i,c=e&&e.r,u=a.refs===Zt?a.refs={}:a.refs,h=a.setupState;if(c!=null&&c!==l&&(vi(c)?(u[c]=null,It(h,c)&&(h[c]=null)):vn(c)&&(c.value=null)),rt(l))wo(l,a,12,[o,u]);else{const d=vi(l),f=vn(l);if(d||f){const g=()=>{if(i.f){const p=d?It(h,l)?h[l]:u[l]:l.value;r?Ze(p)&&nv(p,s):Ze(p)?p.includes(s)||p.push(s):d?(u[l]=[s],It(h,l)&&(h[l]=u[l])):(l.value=[s],i.k&&(u[i.k]=l.value))}else d?(u[l]=o,It(h,l)&&(h[l]=o)):f&&(l.value=o,i.k&&(u[i.k]=o))};o?(g.id=-1,kn(g,t)):g()}}}const kn=jP;function pM(i){return mM(i)}function mM(i,e){const t=tE();t.__VUE__=!0;const{insert:n,remove:r,patchProp:s,createElement:o,createText:a,createComment:l,setText:c,setElementText:u,parentNode:h,nextSibling:d,setScopeId:f=Cr,insertStaticContent:g}=i,p=(E,M,G,W=null,X=null,K=null,ie=void 0,$=null,Q=!!M.dynamicChildren)=>{if(E===M)return;E&&!Xc(E,M)&&(W=z(E),q(E,X,K,!0),E=null),M.patchFlag===-2&&(Q=!1,M.dynamicChildren=null);const{type:Z,ref:T,shapeFlag:F}=M;switch(Z){case Ug:m(E,M,G,W);break;case Fs:v(E,M,G,W);break;case R0:E==null&&y(M,G,W,ie);break;case Kt:x(E,M,G,W,X,K,ie,$,Q);break;default:F&1?C(E,M,G,W,X,K,ie,$,Q):F&6?D(E,M,G,W,X,K,ie,$,Q):(F&64||F&128)&&Z.process(E,M,G,W,X,K,ie,$,Q,Y)}T!=null&&X&&Kp(T,E&&E.ref,K,M||E,!M)},m=(E,M,G,W)=>{if(E==null)n(M.el=a(M.children),G,W);else{const X=M.el=E.el;M.children!==E.children&&c(X,M.children)}},v=(E,M,G,W)=>{E==null?n(M.el=l(M.children||""),G,W):M.el=E.el},y=(E,M,G,W)=>{[E.el,E.anchor]=g(E.children,M,G,W,E.el,E.anchor)},A=({el:E,anchor:M},G,W)=>{let X;for(;E&&E!==M;)X=d(E),n(E,G,W),E=X;n(M,G,W)},_=({el:E,anchor:M})=>{let G;for(;E&&E!==M;)G=d(E),r(E),E=G;r(M)},C=(E,M,G,W,X,K,ie,$,Q)=>{M.type==="svg"?ie="svg":M.type==="math"&&(ie="mathml"),E==null?I(M,G,W,X,K,ie,$,Q):R(E,M,X,K,ie,$,Q)},I=(E,M,G,W,X,K,ie,$)=>{let Q,Z;const{props:T,shapeFlag:F,transition:U,dirs:H}=E;if(Q=E.el=o(E.type,K,T&&T.is,T),F&8?u(Q,E.children):F&16&&S(E.children,Q,null,W,X,M0(E,K),ie,$),H&&Qo(E,null,W,"created"),b(Q,E,E.scopeId,ie,W),T){for(const ee in T)ee!=="value"&&!yu(ee)&&s(Q,ee,null,T[ee],K,E.children,W,X,Ie);"value"in T&&s(Q,"value",null,T.value,K),(Z=T.onVnodeBeforeMount)&&Yr(Z,W,E)}H&&Qo(E,null,W,"beforeMount");const te=vM(X,U);te&&U.beforeEnter(Q),n(Q,M,G),((Z=T&&T.onVnodeMounted)||te||H)&&kn(()=>{Z&&Yr(Z,W,E),te&&U.enter(Q),H&&Qo(E,null,W,"mounted")},X)},b=(E,M,G,W,X)=>{if(G&&f(E,G),W)for(let K=0;K{for(let Z=Q;Z{const $=M.el=E.el;let{patchFlag:Q,dynamicChildren:Z,dirs:T}=M;Q|=E.patchFlag&16;const F=E.props||Zt,U=M.props||Zt;let H;if(G&&$o(G,!1),(H=U.onVnodeBeforeUpdate)&&Yr(H,G,M,E),T&&Qo(M,E,G,"beforeUpdate"),G&&$o(G,!0),Z?P(E.dynamicChildren,Z,$,G,W,M0(M,X),K):ie||V(E,M,$,null,G,W,M0(M,X),K,!1),Q>0){if(Q&16)w($,M,F,U,G,W,X);else if(Q&2&&F.class!==U.class&&s($,"class",null,U.class,X),Q&4&&s($,"style",F.style,U.style,X),Q&8){const te=M.dynamicProps;for(let ee=0;ee{H&&Yr(H,G,M,E),T&&Qo(M,E,G,"updated")},W)},P=(E,M,G,W,X,K,ie)=>{for(let $=0;${if(G!==W){if(G!==Zt)for(const $ in G)!yu($)&&!($ in W)&&s(E,$,G[$],null,ie,M.children,X,K,Ie);for(const $ in W){if(yu($))continue;const Q=W[$],Z=G[$];Q!==Z&&$!=="value"&&s(E,$,Z,Q,ie,M.children,X,K,Ie)}"value"in W&&s(E,"value",G.value,W.value,ie)}},x=(E,M,G,W,X,K,ie,$,Q)=>{const Z=M.el=E?E.el:a(""),T=M.anchor=E?E.anchor:a("");let{patchFlag:F,dynamicChildren:U,slotScopeIds:H}=M;H&&($=$?$.concat(H):H),E==null?(n(Z,G,W),n(T,G,W),S(M.children||[],G,T,X,K,ie,$,Q)):F>0&&F&64&&U&&E.dynamicChildren?(P(E.dynamicChildren,U,G,X,K,ie,$),(M.key!=null||X&&M===X.subTree)&&YE(E,M,!0)):V(E,M,G,T,X,K,ie,$,Q)},D=(E,M,G,W,X,K,ie,$,Q)=>{M.slotScopeIds=$,E==null?M.shapeFlag&512?X.ctx.activate(M,G,W,ie,Q):k(M,G,W,X,K,ie,Q):O(E,M,Q)},k=(E,M,G,W,X,K,ie)=>{const $=E.component=wM(E,W,X);if(GE(E)&&($.ctx.renderer=Y),SM($),$.asyncDep){if(X&&X.registerDep($,N),!E.el){const Q=$.subTree=dt(Fs);v(null,Q,M,G)}}else N($,E,M,G,X,K,ie)},O=(E,M,G)=>{const W=M.component=E.component;if(NP(E,M,G))if(W.asyncDep&&!W.asyncResolved){B(W,M,G);return}else W.next=M,LP(W.update),W.effect.dirty=!0,W.update();else M.el=E.el,W.vnode=M},N=(E,M,G,W,X,K,ie)=>{const $=()=>{if(E.isMounted){let{next:T,bu:F,u:U,parent:H,vnode:te}=E;{const pt=HE(E);if(pt){T&&(T.el=te.el,B(E,T,ie)),pt.asyncDep.then(()=>{E.isUnmounted||$()});return}}let ee=T,ue;$o(E,!1),T?(T.el=te.el,B(E,T,ie)):T=te,F&&b0(F),(ue=T.props&&T.props.onVnodeBeforeUpdate)&&Yr(ue,H,T,te),$o(E,!0);const Me=x0(E),be=E.subTree;E.subTree=Me,p(be,Me,h(be.el),z(be),E,X,K),T.el=Me.el,ee===null&&UP(E,Me.el),U&&kn(U,X),(ue=T.props&&T.props.onVnodeUpdated)&&kn(()=>Yr(ue,H,T,te),X)}else{let T;const{el:F,props:U}=M,{bm:H,m:te,parent:ee}=E,ue=Au(M);if($o(E,!1),H&&b0(H),!ue&&(T=U&&U.onVnodeBeforeMount)&&Yr(T,ee,M),$o(E,!0),F&&tt){const Me=()=>{E.subTree=x0(E),tt(F,E.subTree,E,X,null)};ue?M.type.__asyncLoader().then(()=>!E.isUnmounted&&Me()):Me()}else{const Me=E.subTree=x0(E);p(null,Me,G,W,E,X,K),M.el=Me.el}if(te&&kn(te,X),!ue&&(T=U&&U.onVnodeMounted)){const Me=M;kn(()=>Yr(T,ee,Me),X)}(M.shapeFlag&256||ee&&Au(ee.vnode)&&ee.vnode.shapeFlag&256)&&E.a&&kn(E.a,X),E.isMounted=!0,M=G=W=null}},Q=E.effect=new sv($,Cr,()=>fv(Z),E.scope),Z=E.update=()=>{Q.dirty&&Q.run()};Z.id=E.uid,$o(E,!0),Z()},B=(E,M,G)=>{M.component=E;const W=E.vnode.props;E.vnode=M,E.next=null,hM(E,M.props,W,G),gM(E,M.children,G),Xa(),qA(E),Za()},V=(E,M,G,W,X,K,ie,$,Q=!1)=>{const Z=E&&E.children,T=E?E.shapeFlag:0,F=M.children,{patchFlag:U,shapeFlag:H}=M;if(U>0){if(U&128){j(Z,F,G,W,X,K,ie,$,Q);return}else if(U&256){se(Z,F,G,W,X,K,ie,$,Q);return}}H&8?(T&16&&Ie(Z,X,K),F!==Z&&u(G,F)):T&16?H&16?j(Z,F,G,W,X,K,ie,$,Q):Ie(Z,X,K,!0):(T&8&&u(G,""),H&16&&S(F,G,W,X,K,ie,$,Q))},se=(E,M,G,W,X,K,ie,$,Q)=>{E=E||Nl,M=M||Nl;const Z=E.length,T=M.length,F=Math.min(Z,T);let U;for(U=0;UT?Ie(E,X,K,!0,!1,F):S(M,G,W,X,K,ie,$,Q,F)},j=(E,M,G,W,X,K,ie,$,Q)=>{let Z=0;const T=M.length;let F=E.length-1,U=T-1;for(;Z<=F&&Z<=U;){const H=E[Z],te=M[Z]=Q?oo(M[Z]):Jr(M[Z]);if(Xc(H,te))p(H,te,G,null,X,K,ie,$,Q);else break;Z++}for(;Z<=F&&Z<=U;){const H=E[F],te=M[U]=Q?oo(M[U]):Jr(M[U]);if(Xc(H,te))p(H,te,G,null,X,K,ie,$,Q);else break;F--,U--}if(Z>F){if(Z<=U){const H=U+1,te=HU)for(;Z<=F;)q(E[Z],X,K,!0),Z++;else{const H=Z,te=Z,ee=new Map;for(Z=te;Z<=U;Z++){const Ne=M[Z]=Q?oo(M[Z]):Jr(M[Z]);Ne.key!=null&&ee.set(Ne.key,Z)}let ue,Me=0;const be=U-te+1;let pt=!1,wt=0;const Wt=new Array(be);for(Z=0;Z=be){q(Ne,X,K,!0);continue}let ct;if(Ne.key!=null)ct=ee.get(Ne.key);else for(ue=te;ue<=U;ue++)if(Wt[ue-te]===0&&Xc(Ne,M[ue])){ct=ue;break}ct===void 0?q(Ne,X,K,!0):(Wt[ct-te]=Z+1,ct>=wt?wt=ct:pt=!0,p(Ne,M[ct],G,null,X,K,ie,$,Q),Me++)}const mt=pt?yM(Wt):Nl;for(ue=mt.length-1,Z=be-1;Z>=0;Z--){const Ne=te+Z,ct=M[Ne],At=Ne+1{const{el:K,type:ie,transition:$,children:Q,shapeFlag:Z}=E;if(Z&6){Ae(E.component.subTree,M,G,W);return}if(Z&128){E.suspense.move(M,G,W);return}if(Z&64){ie.move(E,M,G,Y);return}if(ie===Kt){n(K,M,G);for(let F=0;F$.enter(K),X);else{const{leave:F,delayLeave:U,afterLeave:H}=$,te=()=>n(K,M,G),ee=()=>{F(K,()=>{te(),H&&H()})};U?U(K,te,ee):ee()}else n(K,M,G)},q=(E,M,G,W=!1,X=!1)=>{const{type:K,props:ie,ref:$,children:Q,dynamicChildren:Z,shapeFlag:T,patchFlag:F,dirs:U}=E;if($!=null&&Kp($,null,G,E,!0),T&256){M.ctx.deactivate(E);return}const H=T&1&&U,te=!Au(E);let ee;if(te&&(ee=ie&&ie.onVnodeBeforeUnmount)&&Yr(ee,M,E),T&6)pe(E.component,G,W);else{if(T&128){E.suspense.unmount(G,W);return}H&&Qo(E,null,M,"beforeUnmount"),T&64?E.type.remove(E,M,G,X,Y,W):Z&&(K!==Kt||F>0&&F&64)?Ie(Z,M,G,!1,!0):(K===Kt&&F&384||!X&&T&16)&&Ie(Q,M,G),W&&Te(E)}(te&&(ee=ie&&ie.onVnodeUnmounted)||H)&&kn(()=>{ee&&Yr(ee,M,E),H&&Qo(E,null,M,"unmounted")},G)},Te=E=>{const{type:M,el:G,anchor:W,transition:X}=E;if(M===Kt){Ce(G,W);return}if(M===R0){_(E);return}const K=()=>{r(G),X&&!X.persisted&&X.afterLeave&&X.afterLeave()};if(E.shapeFlag&1&&X&&!X.persisted){const{leave:ie,delayLeave:$}=X,Q=()=>ie(G,K);$?$(E.el,K,Q):Q()}else K()},Ce=(E,M)=>{let G;for(;E!==M;)G=d(E),r(E),E=G;r(M)},pe=(E,M,G)=>{const{bum:W,scope:X,update:K,subTree:ie,um:$}=E;W&&b0(W),X.stop(),K&&(K.active=!1,q(ie,E,M,G)),$&&kn($,M),kn(()=>{E.isUnmounted=!0},M),M&&M.pendingBranch&&!M.isUnmounted&&E.asyncDep&&!E.asyncResolved&&E.suspenseId===M.pendingId&&(M.deps--,M.deps===0&&M.resolve())},Ie=(E,M,G,W=!1,X=!1,K=0)=>{for(let ie=K;ieE.shapeFlag&6?z(E.component.subTree):E.shapeFlag&128?E.suspense.next():d(E.anchor||E.el);let oe=!1;const ne=(E,M,G)=>{E==null?M._vnode&&q(M._vnode,null,null,!0):p(M._vnode||null,E,M,null,null,null,G),oe||(oe=!0,qA(),SE(),oe=!1),M._vnode=E},Y={p,um:q,m:Ae,r:Te,mt:k,mc:S,pc:V,pbc:P,n:z,o:i};let Pe,tt;return e&&([Pe,tt]=e(Y)),{render:ne,hydrate:Pe,createApp:cM(ne,Pe)}}function M0({type:i,props:e},t){return t==="svg"&&i==="foreignObject"||t==="mathml"&&i==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:t}function $o({effect:i,update:e},t){i.allowRecurse=e.allowRecurse=t}function vM(i,e){return(!i||i&&!i.pendingBranch)&&e&&!e.persisted}function YE(i,e,t=!1){const n=i.children,r=e.children;if(Ze(n)&&Ze(r))for(let s=0;s>1,i[t[a]]0&&(e[n]=t[s-1]),t[s]=n)}}for(s=t.length,o=t[s-1];s-- >0;)t[s]=o,o=e[o];return t}function HE(i){const e=i.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:HE(e)}const AM=i=>i.__isTeleport,Kt=Symbol.for("v-fgt"),Ug=Symbol.for("v-txt"),Fs=Symbol.for("v-cmt"),R0=Symbol.for("v-stc"),Eu=[];let Lr=null;function de(i=!1){Eu.push(Lr=i?null:[])}function _M(){Eu.pop(),Lr=Eu[Eu.length-1]||null}let Ju=1;function r_(i){Ju+=i}function qE(i){return i.dynamicChildren=Ju>0?Lr||Nl:null,_M(),Ju>0&&Lr&&Lr.push(i),i}function Ge(i,e,t,n,r,s){return qE(Oe(i,e,t,n,r,s,!0))}function qt(i,e,t,n,r){return qE(dt(i,e,t,n,r,!0))}function pf(i){return i?i.__v_isVNode===!0:!1}function Xc(i,e){return i.type===e.type&&i.key===e.key}const Bg="__vInternal",XE=({key:i})=>i??null,qd=({ref:i,ref_key:e,ref_for:t})=>(typeof i=="number"&&(i=""+i),i!=null?vi(i)||vn(i)||rt(i)?{i:hn,r:i,k:e,f:!!t}:i:null);function Oe(i,e=null,t=null,n=0,r=null,s=i===Kt?0:1,o=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:i,props:e,key:e&&XE(e),ref:e&&qd(e),scopeId:ME,slotScopeIds:null,children:t,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:n,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:hn};return a?(Av(l,t),s&128&&i.normalize(l)):t&&(l.shapeFlag|=vi(t)?8:16),Ju>0&&!o&&Lr&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&Lr.push(l),l}const dt=CM;function CM(i,e=null,t=null,n=0,r=null,s=!1){if((!i||i===RE)&&(i=Fs),pf(i)){const a=Ta(i,e,!0);return t&&Av(a,t),Ju>0&&!s&&Lr&&(a.shapeFlag&6?Lr[Lr.indexOf(i)]=a:Lr.push(a)),a.patchFlag|=-2,a}if(RM(i)&&(i=i.__vccOpts),e){e=yv(e);let{class:a,style:l}=e;a&&!vi(a)&&(e.class=ur(a)),ei(l)&&(vE(l)&&!Ze(l)&&(l=en({},l)),e.style=qa(l))}const o=vi(i)?1:BP(i)?128:AM(i)?64:ei(i)?4:rt(i)?2:0;return Oe(i,e,t,n,r,o,s,!0)}function yv(i){return i?vE(i)||Bg in i?en({},i):i:null}function Ta(i,e,t=!1){const{props:n,ref:r,patchFlag:s,children:o}=i,a=e?xi(n||{},e):n;return{__v_isVNode:!0,__v_skip:!0,type:i.type,props:a,key:a&&XE(a),ref:e&&e.ref?t&&r?Ze(r)?r.concat(qd(e)):[r,qd(e)]:qd(e):r,scopeId:i.scopeId,slotScopeIds:i.slotScopeIds,children:o,target:i.target,targetAnchor:i.targetAnchor,staticCount:i.staticCount,shapeFlag:i.shapeFlag,patchFlag:e&&i.type!==Kt?s===-1?16:s|16:s,dynamicProps:i.dynamicProps,dynamicChildren:i.dynamicChildren,appContext:i.appContext,dirs:i.dirs,transition:i.transition,component:i.component,suspense:i.suspense,ssContent:i.ssContent&&Ta(i.ssContent),ssFallback:i.ssFallback&&Ta(i.ssFallback),el:i.el,anchor:i.anchor,ctx:i.ctx,ce:i.ce}}function cr(i=" ",e=0){return dt(Ug,null,i,e)}function Ct(i="",e=!1){return e?(de(),qt(Fs,null,i)):dt(Fs,null,i)}function Jr(i){return i==null||typeof i=="boolean"?dt(Fs):Ze(i)?dt(Kt,null,i.slice()):typeof i=="object"?oo(i):dt(Ug,null,String(i))}function oo(i){return i.el===null&&i.patchFlag!==-1||i.memo?i:Ta(i)}function Av(i,e){let t=0;const{shapeFlag:n}=i;if(e==null)e=null;else if(Ze(e))t=16;else if(typeof e=="object")if(n&65){const r=e.default;r&&(r._c&&(r._d=!1),Av(i,r()),r._c&&(r._d=!0));return}else{t=32;const r=e._;!r&&!(Bg in e)?e._ctx=hn:r===3&&hn&&(hn.slots._===1?e._=1:(e._=2,i.patchFlag|=1024))}else rt(e)?(e={default:e,_ctx:hn},t=32):(e=String(e),n&64?(t=16,e=[cr(e)]):t=8);i.children=e,i.shapeFlag|=t}function xi(...i){const e={};for(let t=0;tXi||hn;let mf,Jp;{const i=tE(),e=(t,n)=>{let r;return(r=i[t])||(r=i[t]=[]),r.push(n),s=>{r.length>1?r.forEach(o=>o(s)):r[0](s)}};mf=e("__VUE_INSTANCE_SETTERS__",t=>Xi=t),Jp=e("__VUE_SSR_SETTERS__",t=>jg=t)}const Th=i=>{const e=Xi;return mf(i),i.scope.on(),()=>{i.scope.off(),mf(e)}},s_=()=>{Xi&&Xi.scope.off(),mf(null)};function ZE(i){return i.vnode.shapeFlag&4}let jg=!1;function SM(i,e=!1){e&&Jp(e);const{props:t,children:n}=i.vnode,r=ZE(i);uM(i,t,r,e),fM(i,n);const s=r?xM(i,e):void 0;return e&&Jp(!1),s}function xM(i,e){const t=i.type;i.accessCache=Object.create(null),i.proxy=yE(new Proxy(i.ctx,tM));const{setup:n}=t;if(n){const r=i.setupContext=n.length>1?JE(i):null,s=Th(i);Xa();const o=wo(n,i,0,[i.props,r]);if(Za(),s(),QI(o)){if(o.then(s_,s_),e)return o.then(a=>{o_(i,a,e)}).catch(a=>{Dg(a,i,0)});i.asyncDep=o}else o_(i,o,e)}else KE(i,e)}function o_(i,e,t){rt(e)?i.type.__ssrInlineRender?i.ssrRender=e:i.render=e:ei(e)&&(i.setupState=IE(e)),KE(i,t)}let a_;function KE(i,e,t){const n=i.type;if(!i.render){if(!e&&a_&&!n.render){const r=n.template||mv(i).template;if(r){const{isCustomElement:s,compilerOptions:o}=i.appContext.config,{delimiters:a,compilerOptions:l}=n,c=en(en({isCustomElement:s,delimiters:a},o),l);n.render=a_(r,c)}}i.render=n.render||Cr}{const r=Th(i);Xa();try{nM(i)}finally{Za(),r()}}}function PM(i){return i.attrsProxy||(i.attrsProxy=new Proxy(i.attrs,{get(e,t){return Wn(i,"get","$attrs"),e[t]}}))}function JE(i){const e=t=>{i.exposed=t||{}};return{get attrs(){return PM(i)},slots:i.slots,emit:i.emit,expose:e}}function _v(i){if(i.exposed)return i.exposeProxy||(i.exposeProxy=new Proxy(IE(yE(i.exposed)),{get(e,t){if(t in e)return e[t];if(t in _u)return _u[t](i)},has(e,t){return t in e||t in _u}}))}function MM(i,e=!0){return rt(i)?i.displayName||i.name:i.name||e&&i.__name}function RM(i){return rt(i)&&"__vccOpts"in i}const Se=(i,e)=>EP(i,e,jg);function wu(i,e,t){const n=arguments.length;return n===2?ei(e)&&!Ze(e)?pf(e)?dt(i,null,[e]):dt(i,e):dt(i,null,e):(n>3?t=Array.prototype.slice.call(arguments,2):n===3&&pf(t)&&(t=[t]),dt(i,e,t))}const TM="3.4.21";/** +* @vue/runtime-dom v3.4.21 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const LM="http://www.w3.org/2000/svg",GM="http://www.w3.org/1998/Math/MathML",ao=typeof document<"u"?document:null,l_=ao&&ao.createElement("template"),OM={insert:(i,e,t)=>{e.insertBefore(i,t||null)},remove:i=>{const e=i.parentNode;e&&e.removeChild(i)},createElement:(i,e,t,n)=>{const r=e==="svg"?ao.createElementNS(LM,i):e==="mathml"?ao.createElementNS(GM,i):ao.createElement(i,t?{is:t}:void 0);return i==="select"&&n&&n.multiple!=null&&r.setAttribute("multiple",n.multiple),r},createText:i=>ao.createTextNode(i),createComment:i=>ao.createComment(i),setText:(i,e)=>{i.nodeValue=e},setElementText:(i,e)=>{i.textContent=e},parentNode:i=>i.parentNode,nextSibling:i=>i.nextSibling,querySelector:i=>ao.querySelector(i),setScopeId(i,e){i.setAttribute(e,"")},insertStaticContent(i,e,t,n,r,s){const o=t?t.previousSibling:e.lastChild;if(r&&(r===s||r.nextSibling))for(;e.insertBefore(r.cloneNode(!0),t),!(r===s||!(r=r.nextSibling)););else{l_.innerHTML=n==="svg"?`${i}`:n==="mathml"?`${i}`:i;const a=l_.content;if(n==="svg"||n==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}e.insertBefore(a,t)}return[o?o.nextSibling:e.firstChild,t?t.previousSibling:e.lastChild]}},DM=Symbol("_vtc");function kM(i,e,t){const n=i[DM];n&&(e=(e?[e,...n]:[...n]).join(" ")),e==null?i.removeAttribute("class"):t?i.setAttribute("class",e):i.className=e}const c_=Symbol("_vod"),FM=Symbol("_vsh"),NM=Symbol(""),UM=/(^|;)\s*display\s*:/;function BM(i,e,t){const n=i.style,r=vi(t);let s=!1;if(t&&!r){if(e)if(vi(e))for(const o of e.split(";")){const a=o.slice(0,o.indexOf(":")).trim();t[a]==null&&Xd(n,a,"")}else for(const o in e)t[o]==null&&Xd(n,o,"");for(const o in t)o==="display"&&(s=!0),Xd(n,o,t[o])}else if(r){if(e!==t){const o=n[NM];o&&(t+=";"+o),n.cssText=t,s=UM.test(t)}}else e&&i.removeAttribute("style");c_ in i&&(i[c_]=s?n.display:"",i[FM]&&(n.display="none"))}const u_=/\s*!important$/;function Xd(i,e,t){if(Ze(t))t.forEach(n=>Xd(i,e,n));else if(t==null&&(t=""),e.startsWith("--"))i.setProperty(e,t);else{const n=jM(i,e);u_.test(t)?i.setProperty(Ha(n),t.replace(u_,""),"important"):i[n]=t}}const h_=["Webkit","Moz","ms"],T0={};function jM(i,e){const t=T0[e];if(t)return t;let n=cs(e);if(n!=="filter"&&n in i)return T0[e]=n;n=Gg(n);for(let r=0;rL0||(XM.then(()=>L0=0),L0=Date.now());function KM(i,e){const t=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=t.attached)return;kr(JM(n,t.value),e,5,[n])};return t.value=i,t.attached=ZM(),t}function JM(i,e){if(Ze(e)){const t=i.stopImmediatePropagation;return i.stopImmediatePropagation=()=>{t.call(i),i._stopped=!0},e.map(n=>r=>!r._stopped&&n&&n(r))}else return e}const p_=i=>i.charCodeAt(0)===111&&i.charCodeAt(1)===110&&i.charCodeAt(2)>96&&i.charCodeAt(2)<123,QM=(i,e,t,n,r,s,o,a,l)=>{const c=r==="svg";e==="class"?kM(i,n,c):e==="style"?BM(i,t,n):Rg(e)?iv(e)||HM(i,e,t,n,o):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):$M(i,e,n,c))?VM(i,e,n,s,o,a,l):(e==="true-value"?i._trueValue=n:e==="false-value"&&(i._falseValue=n),zM(i,e,n,c))};function $M(i,e,t,n){if(n)return!!(e==="innerHTML"||e==="textContent"||e in i&&p_(e)&&rt(t));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="form"||e==="list"&&i.tagName==="INPUT"||e==="type"&&i.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const r=i.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return p_(e)&&vi(t)?!1:e in i}const eR=["ctrl","shift","alt","meta"],tR={stop:i=>i.stopPropagation(),prevent:i=>i.preventDefault(),self:i=>i.target!==i.currentTarget,ctrl:i=>!i.ctrlKey,shift:i=>!i.shiftKey,alt:i=>!i.altKey,meta:i=>!i.metaKey,left:i=>"button"in i&&i.button!==0,middle:i=>"button"in i&&i.button!==1,right:i=>"button"in i&&i.button!==2,exact:(i,e)=>eR.some(t=>i[`${t}Key`]&&!e.includes(t))},zl=(i,e)=>{const t=i._withMods||(i._withMods={}),n=e.join(".");return t[n]||(t[n]=(r,...s)=>{for(let o=0;o{const t=i._withKeys||(i._withKeys={}),n=e.join(".");return t[n]||(t[n]=r=>{if(!("key"in r))return;const s=Ha(r.key);if(e.some(o=>o===s||iR[o]===s))return i(r)})},rR=en({patchProp:QM},OM);let m_;function sR(){return m_||(m_=pM(rR))}const oR=(...i)=>{const e=sR().createApp(...i),{mount:t}=e;return e.mount=n=>{const r=lR(n);if(!r)return;const s=e._component;!rt(s)&&!s.render&&!s.template&&(s.template=r.innerHTML),r.innerHTML="";const o=t(r,!1,aR(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},e};function aR(i){if(i instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&i instanceof MathMLElement)return"mathml"}function lR(i){return vi(i)?document.querySelector(i):i}const cR={"<":"<",">":">",'"':""","'":"'","&":"&"};let uR=0;var hR=i=>i.replace(/[<>"&]/g,e=>cR[e]||e),dR=i=>i+uR++;const va={},fR=i=>{const{name:e,paths:t=[],d:n,polygons:r=[],points:s}=i;n&&t.push({d:n}),s&&r.push({points:s}),va[e]=Object.assign({},i,{paths:t,polygons:r}),va[e].minX||(va[e].minX=0),va[e].minY||(va[e].minY=0)},gR=(...i)=>{for(const e of i)fR(e)},oc=Ut({name:"OhVueIcon",props:{name:{type:String,validator:i=>!i||i in va||(console.warn(`Invalid prop: prop "name" is referring to an unregistered icon "${i}". +Please make sure you have imported this icon before using it.`),!1)},title:String,fill:String,scale:{type:[Number,String],default:1},animation:{validator:i=>["spin","spin-pulse","wrench","ring","pulse","flash","float"].includes(i)},hover:Boolean,flip:{validator:i=>["horizontal","vertical","both"].includes(i)},speed:{validator:i=>i==="fast"||i==="slow"},label:String,inverse:Boolean},setup(i){const e=Si([]),t=rc({outerScale:1.2,x:null,y:null}),n=rc({width:0,height:0}),r=Se(()=>{const p=Number(i.scale);return isNaN(p)||p<=0?(console.warn('Invalid prop: prop "scale" should be a number over 0.'),t.outerScale):p*t.outerScale}),s=Se(()=>({"ov-icon":!0,"ov-inverse":i.inverse,"ov-flip-horizontal":i.flip==="horizontal","ov-flip-vertical":i.flip==="vertical","ov-flip-both":i.flip==="both","ov-spin":i.animation==="spin","ov-spin-pulse":i.animation==="spin-pulse","ov-wrench":i.animation==="wrench","ov-ring":i.animation==="ring","ov-pulse":i.animation==="pulse","ov-flash":i.animation==="flash","ov-float":i.animation==="float","ov-hover":i.hover,"ov-fast":i.speed==="fast","ov-slow":i.speed==="slow"})),o=Se(()=>i.name?va[i.name]:null),a=Se(()=>o.value?`${o.value.minX} ${o.value.minY} ${o.value.width} ${o.value.height}`:`0 0 ${c.value} ${u.value}`),l=Se(()=>{if(!o.value)return 1;const{width:p,height:m}=o.value;return Math.max(p,m)/16}),c=Se(()=>n.width||o.value&&o.value.width/l.value*r.value||0),u=Se(()=>n.height||o.value&&o.value.height/l.value*r.value||0),h=Se(()=>r.value!==1&&{fontSize:r.value+"em"}),d=Se(()=>{if(!o.value||!o.value.raw)return null;const p={};let m=o.value.raw;return m=m.replace(/\s(?:xml:)?id=(["']?)([^"')\s]+)\1/g,(v,y,A)=>{const _=dR("vat-");return p[A]=_,` id="${_}"`}),m=m.replace(/#(?:([^'")\s]+)|xpointer\(id\((['"]?)([^')]+)\2\)\))/g,(v,y,A,_)=>{const C=y||_;return C&&p[C]?`#${p[C]}`:v}),m}),f=Se(()=>o.value&&o.value.attr?o.value.attr:{}),g=()=>{if(!i.name&&i.name!==null&&e.value.length===0)return void console.warn('Invalid prop: prop "name" is required.');if(o.value)return;let p=0,m=0;e.value.forEach(v=>{v.outerScale=r.value,p=Math.max(p,v.width),m=Math.max(m,v.height)}),n.width=p,n.height=m,e.value.forEach(v=>{v.x=(p-v.width)/2,v.y=(m-v.height)/2})};return wr(()=>{g()}),Mh(()=>{g()}),{...xP(t),children:e,icon:o,klass:s,style:h,width:c,height:u,box:a,attribs:f,raw:d}},created(){const i=this.$parent;i&&i.children&&i.children.push(this)},render(){const i=Object.assign({role:this.$attrs.role||(this.label||this.title?"img":null),"aria-label":this.label||null,"aria-hidden":!(this.label||this.title),width:this.width,height:this.height,viewBox:this.box},this.attribs);this.attribs.stroke?i.stroke=this.fill?this.fill:"currentColor":i.fill=this.fill?this.fill:"currentColor",this.x&&(i.x=this.x.toString()),this.y&&(i.y=this.y.toString());let e={class:this.klass,style:this.style};if(e=Object.assign(e,i),this.raw){const r=this.title?`${hR(this.title)}${this.raw}`:this.raw;e.innerHTML=r}const t=this.title?[wu("title",this.title)]:[],n=(r,s,o)=>wu(r,{...s,key:`${r}-${o}`});return wu("svg",e,this.raw?void 0:t.concat([this.$slots.default?this.$slots.default():this.icon?[...this.icon.paths.map((r,s)=>n("path",r,s)),...this.icon.polygons.map((r,s)=>n("polygon",r,s))]:[]]))}});function Cv(i,e){e===void 0&&(e={});var t=e.insertAt;if(i&&typeof document<"u"){var n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",t==="top"&&n.firstChild?n.insertBefore(r,n.firstChild):n.appendChild(r),r.styleSheet?r.styleSheet.cssText=i:r.appendChild(document.createTextNode(i))}}Cv(`.ov-icon { + display: inline-block; + overflow: visible; + vertical-align: -0.2em; +} +`);Cv(`/* ---------------- spin ---------------- */ +.ov-spin:not(.ov-hover), +.ov-spin.ov-hover:hover, +.ov-parent.ov-hover:hover > .ov-spin { + animation: ov-spin 1s linear infinite; +} + +.ov-spin:not(.ov-hover).ov-fast, +.ov-spin.ov-hover.ov-fast:hover, +.ov-parent.ov-hover:hover > .ov-spin.ov-fast { + animation: ov-spin 0.7s linear infinite; +} + +.ov-spin:not(.ov-hover).ov-slow, +.ov-spin.ov-hover.ov-slow:hover, +.ov-parent.ov-hover:hover > .ov-spin.ov-slow { + animation: ov-spin 2s linear infinite; +} + +/* ---------------- spin-pulse ---------------- */ + +.ov-spin-pulse:not(.ov-hover), +.ov-spin-pulse.ov-hover:hover, +.ov-parent.ov-hover:hover > .ov-spin-pulse { + animation: ov-spin 1s infinite steps(8); +} + +.ov-spin-pulse:not(.ov-hover).ov-fast, +.ov-spin-pulse.ov-hover.ov-fast:hover, +.ov-parent.ov-hover:hover > .ov-spin-pulse.ov-fast { + animation: ov-spin 0.7s infinite steps(8); +} + +.ov-spin-pulse:not(.ov-hover).ov-slow, +.ov-spin-pulse.ov-hover.ov-slow:hover, +.ov-parent.ov-hover:hover > .ov-spin-pulse.ov-slow { + animation: ov-spin 2s infinite steps(8); +} + +@keyframes ov-spin { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} + +/* ---------------- wrench ---------------- */ +.ov-wrench:not(.ov-hover), +.ov-wrench.ov-hover:hover, +.ov-parent.ov-hover:hover > .ov-wrench { + animation: ov-wrench 2.5s ease infinite; +} + +.ov-wrench:not(.ov-hover).ov-fast, +.ov-wrench.ov-hover.ov-fast:hover, +.ov-parent.ov-hover:hover > .ov-wrench.ov-fast { + animation: ov-wrench 1.2s ease infinite; +} + +.ov-wrench:not(.ov-hover).ov-slow, +.ov-wrench.ov-hover.ov-slow:hover, +.ov-parent.ov-hover:hover > .ov-wrench.ov-slow { + animation: ov-wrench 3.7s ease infinite; +} + +@keyframes ov-wrench { + 0% { + transform: rotate(-12deg); + } + + 8% { + transform: rotate(12deg); + } + + 10%, 28%, 30%, 48%, 50%, 68% { + transform: rotate(24deg); + } + + 18%, 20%, 38%, 40%, 58%, 60% { + transform: rotate(-24deg); + } + + 75%, 100% { + transform: rotate(0deg); + } +} + +/* ---------------- ring ---------------- */ +.ov-ring:not(.ov-hover), +.ov-ring.ov-hover:hover, +.ov-parent.ov-hover:hover > .ov-ring { + animation: ov-ring 2s ease infinite; +} + +.ov-ring:not(.ov-hover).ov-fast, +.ov-ring.ov-hover.ov-fast:hover, +.ov-parent.ov-hover:hover > .ov-ring.ov-fast { + animation: ov-ring 1s ease infinite; +} + +.ov-ring:not(.ov-hover).ov-slow, +.ov-ring.ov-hover.ov-slow:hover, +.ov-parent.ov-hover:hover > .ov-ring.ov-slow { + animation: ov-ring 3s ease infinite; +} + +@keyframes ov-ring { + 0% { + transform: rotate(-15deg); + } + + 2% { + transform: rotate(15deg); + } + + 4%, 12% { + transform: rotate(-18deg); + } + + 6% { + transform: rotate(18deg); + } + + 8% { + transform: rotate(-22deg); + } + + 10% { + transform: rotate(22deg); + } + + 12% { + transform: rotate(-18deg); + } + + 14% { + transform: rotate(18deg); + } + + 16% { + transform: rotate(-12deg); + } + + 18% { + transform: rotate(12deg); + } + + 20%, 100% { + transform: rotate(0deg); + } +} + +/* ---------------- pulse ---------------- */ +.ov-pulse:not(.ov-hover), +.ov-pulse.ov-hover:hover, +.ov-parent.ov-hover:hover > .ov-pulse { + animation: ov-pulse 2s linear infinite; +} + +.ov-pulse:not(.ov-hover).ov-fast, +.ov-pulse.ov-hover.ov-fast:hover, +.ov-parent.ov-hover:hover > .ov-pulse.ov-fast { + animation: ov-pulse 1s linear infinite; +} + +.ov-pulse:not(.ov-hover).ov-slow, +.ov-pulse.ov-hover.ov-slow:hover, +.ov-parent.ov-hover:hover > .ov-pulse.ov-slow { + animation: ov-pulse 3s linear infinite; +} + +@keyframes ov-pulse { + 0% { + transform: scale(1.1); + } + + 50% { + transform: scale(0.8); + } + + 100% { + transform: scale(1.1); + } +} + +/* ---------------- flash ---------------- */ +.ov-flash:not(.ov-hover), +.ov-flash.ov-hover:hover, +.ov-parent.ov-hover:hover > .ov-flash { + animation: ov-flash 2s ease infinite; +} + +.ov-flash:not(.ov-hover).ov-fast, +.ov-flash.ov-hover.ov-fast:hover, +.ov-parent.ov-hover:hover > .ov-flash.ov-fast { + animation: ov-flash 1s ease infinite; +} + +.ov-flash:not(.ov-hover).ov-slow, +.ov-flash.ov-hover.ov-slow:hover, +.ov-parent.ov-hover:hover > .ov-flash.ov-slow { + animation: ov-flash 3s ease infinite; +} + +@keyframes ov-flash { + 0%, 100%, 50%{ + opacity: 1; + } + 25%, 75%{ + opacity: 0; + } +} + +/* ---------------- float ---------------- */ +.ov-float:not(.ov-hover), +.ov-float.ov-hover:hover, +.ov-parent.ov-hover:hover > .ov-float { + animation: ov-float 2s linear infinite; +} + +.ov-float:not(.ov-hover).ov-fast, +.ov-float.ov-hover.ov-fast:hover, +.ov-parent.ov-hover:hover > .ov-float.ov-fast { + animation: ov-float 1s linear infinite; +} + +.ov-float:not(.ov-hover).ov-slow, +.ov-float.ov-hover.ov-slow:hover, +.ov-parent.ov-hover:hover > .ov-float.ov-slow { + animation: ov-float 3s linear infinite; +} + +@keyframes ov-float { + 0%, 100% { + transform: translateY(-3px); + } + 50% { + transform: translateY(3px); + } +} +`);Cv(`.ov-flip-horizontal { + transform: scale(-1, 1); +} + +.ov-flip-vertical { + transform: scale(1, -1); +} + +.ov-flip-both { + transform: scale(-1, -1); +} + +.ov-inverse { + color: #fff; +} +`);const pR="abcdefghijklmnopqrstuvwyz0123456789",v_=pR.repeat(10),mR=()=>{const i=Math.floor(Math.random()*v_.length);return v_[i]},Yo=(i="",e="")=>(i?i+"-":"")+vR(5)+(e?"-"+e:""),vR=i=>Array.from({length:i}).map(mR).join(""),yR="(prefers-color-scheme: dark)",Zd="vue-dsfr-scheme",vf="light",bu="dark",Vl="system",y_="data-fr-theme",Qp=i=>{const e=i??(localStorage.getItem(Zd)||Vl);return[vf,bu,Vl].includes(e)?e:Vl},A_=(i,e)=>(i=Qp(i),i===Vl?e!=null&&e.matches?bu:vf:i),AR=i=>{if(typeof window>"u")return;const e={scheme:localStorage.getItem(Zd)||Vl,dataThemeAttribute:y_,...i},t=window.matchMedia&&window.matchMedia(yR),n=Si(Qp(e.scheme));localStorage.setItem(Zd,n.value);const r=Si(A_(n.value,t)),s=Si(n.value!==Vl);WP(()=>{var u;(u=document.body.parentElement)==null||u.setAttribute(e.dataThemeAttribute||y_,r.value)}),t==null||t.addEventListener("change",u=>{s.value||(u.matches?r.value=bu:r.value=vf)}),!s.value&&t!=null&&t.matches&&(r.value=bu);const o=u=>{if(n.value=Qp(u),localStorage.setItem(Zd,n.value),[vf,bu].includes(n.value)){r.value=n.value,s.value=!0;return}r.value=A_(n.value,t),s.value=!1},a=document.documentElement,l={subtree:!1,childList:!1,attributes:!0},c=new MutationObserver(u=>{for(const h of u)if(h.type==="attributes"&&h.attributeName==="data-fr-theme"){const d=h.target.getAttribute(h.attributeName);d!==n.value&&(console.log("mutation:",d,"<-",n.value),o(d))}});return c.observe(a,l),window.addEventListener("unload",()=>c.disconnect()),o(n.value),{setScheme:o,theme:Se(()=>r.value),scheme:Se(()=>n.value)}},QE=()=>{const i=Si(),e=Si(!1),t=Si(!1),n=()=>{if(!i.value)return;i.value.style.setProperty("--collapser","none");const r=i.value.offsetHeight;i.value.style.setProperty("--collapse",-r+"px"),i.value.style.setProperty("--collapser","")};return{collapse:i,collapsing:e,cssExpanded:t,doExpand:r=>{i.value&&(r===!0&&i.value.style.setProperty("--collapse-max-height","none"),window.requestAnimationFrame(()=>{e.value=!0,n(),window.requestAnimationFrame(()=>{t.value=r})}))},adjust:n,onTransitionEnd:r=>{e.value=!1,i.value&&r===!1&&i.value.style.removeProperty("--collapse-max-height")}}},_R=["title","disabled","aria-disabled"],CR={key:1},IR=Ut({__name:"DsfrButton",props:{disabled:{type:Boolean},label:{default:void 0},secondary:{type:Boolean},tertiary:{type:Boolean},iconRight:{type:Boolean},iconOnly:{type:Boolean},noOutline:{type:Boolean},size:{default:"md"},icon:{default:void 0},onClick:{type:Function,default:()=>{}}},setup(i,{expose:e}){const t=i,n=Se(()=>["sm","small"].includes(t.size)),r=Se(()=>["md","medium"].includes(t.size)),s=Se(()=>["lg","large"].includes(t.size)),o=Si(null);e({focus:()=>{var u;(u=o.value)==null||u.focus()}});const a=Se(()=>typeof t.icon=="string"&&t.icon.startsWith("fr-icon-")),l=Se(()=>t.iconOnly?1.25:.8325),c=Se(()=>typeof t.icon=="string"?{scale:l.value,name:t.icon}:{scale:l.value,...t.icon});return(u,h)=>(de(),Ge("button",{ref_key:"btn",ref:o,class:ur({"fr-btn":!0,"fr-btn--secondary":u.secondary&&!u.tertiary,"fr-btn--tertiary":u.tertiary&&!u.secondary&&!u.noOutline,"fr-btn--tertiary-no-outline":u.tertiary&&!u.secondary&&u.noOutline,"fr-btn--sm":n.value,"fr-btn--md":r.value,"fr-btn--lg":s.value,"fr-btn--icon-right":!u.iconOnly&&a.value&&u.iconRight,"fr-btn--icon-left":!u.iconOnly&&a.value&&!u.iconRight,"inline-flex":!a.value,reverse:u.iconRight&&!a.value,"justify-center":!a.value&&u.iconOnly,[u.icon]:a.value}),title:u.iconOnly?u.label:void 0,disabled:u.disabled,"aria-disabled":u.disabled,style:qa(!a.value&&u.iconOnly?{"padding-inline":"0.5rem"}:{}),onClick:h[0]||(h[0]=d=>u.onClick?u.onClick(d):()=>{})},[u.icon&&!a.value?(de(),qt(Nt(oc),Hu(xi({key:0},c.value)),null,16)):Ct("",!0),u.iconOnly?Ct("",!0):(de(),Ge("span",CR,[cr(pi(u.label)+" ",1),dn(u.$slots,"default",{},void 0,!0)]))],14,_R))}}),Lh=(i,e)=>{const t=i.__vccOpts||i;for(const[n,r]of e)t[n]=r;return t},ER=Lh(IR,[["__scopeId","data-v-7fc52401"]]),wR=["innerHTML"],$E=Ut({__name:"DsfrLogo",props:{small:{type:Boolean},large:{type:Boolean},logoText:{default:()=>"Gouvernement"}},setup(i){const e=i,t=Se(()=>e.logoText instanceof Array?e.logoText.join("
"):e.logoText);return(n,r)=>(de(),Ge("p",{class:ur(["fr-logo",{"fr-logo--sm":n.small&&!n.large,"fr-logo--lg":n.large&&!n.small}]),innerHTML:t.value},null,10,wR))}}),bR={class:"fr-footer__partners"},SR={key:0,class:"fr-footer__partners-title"},xR={class:"fr-footer__partners-logos"},PR={key:0,class:"fr-footer__partners-main"},MR=["href"],RR=["src","alt"],TR={class:"fr-footer__partners-sub"},LR=["href"],GR=["src","alt"],OR=Ut({__name:"DsfrFooterPartners",props:{mainPartner:{default:void 0},subPartners:{default:()=>[]},title:{default:""}},setup(i){return(e,t)=>(de(),Ge("div",bR,[e.title?(de(),Ge("h4",SR,pi(e.title),1)):Ct("",!0),Oe("div",xR,[e.mainPartner?(de(),Ge("div",PR,[Oe("a",{class:"fr-footer__partners-link",href:e.mainPartner.href,target:"_blank",rel:"noopener noreferrer"},[Oe("img",{class:"fr-footer__logo",src:e.mainPartner.logo,alt:e.mainPartner.name},null,8,RR)],8,MR)])):Ct("",!0),Oe("div",TR,[Oe("ul",null,[(de(!0),Ge(Kt,null,Go(e.subPartners,(n,r)=>(de(),Ge("li",{key:r},[Oe("a",{class:"fr-footer__partners-link",href:n.href,target:"_blank",rel:"noopener noreferrer"},[Oe("img",{class:"fr-footer__logo",src:n.logo,alt:n.name},null,8,GR)],8,LR)]))),128))])])])]))}}),__=1,DR=Ut({__name:"DsfrFooterLink",props:{button:{type:Boolean},icon:{default:void 0},iconAttrs:{default:()=>({})},iconRight:{type:Boolean},label:{default:""},target:{default:void 0},onClick:{type:Function,default:()=>{}},to:{default:void 0},href:{default:void 0}},setup(i){const e=i,t=Se(()=>e.button?"button":n.value||r.value?"a":"RouterLink"),n=Se(()=>{var u;return(u=e.href)==null?void 0:u.startsWith("http")}),r=Se(()=>{var u;return(u=e.href)==null?void 0:u.startsWith("mailto")}),s=Se(()=>{if(!(!n.value&&!r.value))return e.href}),o=Se(()=>{if(!(n.value||r.value))return e.to}),a=Se(()=>o.value?{to:o.value}:{href:s.value}),l=Se(()=>typeof e.icon=="string"&&e.icon.startsWith("fr-icon-")),c=Se(()=>typeof e.icon=="string"?{name:e.icon,scale:__,...e.iconAttrs??{}}:{scale:__,...e.icon??{},...e.iconAttrs??{}});return(u,h)=>(de(),qt(Ku(t.value),xi({class:["fr-footer__bottom-link",{"fr-btn--icon-right":l.value&&u.iconRight,"fr-btn--icon-left":l.value&&!u.iconRight,[String(u.icon)]:l.value}]},a.value,{target:u.target,onClick:zl(u.onClick,["stop"])}),{default:zn(()=>{var d,f;return[!l.value&&(u.icon||(d=u.iconAttrs)!=null&&d.name)&&!u.iconRight?(de(),qt(Nt(oc),xi({key:0,class:"fr-mr-1w"},c.value),null,16)):Ct("",!0),cr(" "+pi(u.label)+" ",1),!l.value&&(u.icon||(f=u.iconAttrs)!=null&&f.name)&&u.iconRight?(de(),qt(Nt(oc),xi({key:1,class:"fr-ml-1w"},c.value),null,16)):Ct("",!0)]}),_:1},16,["class","target","onClick"]))}}),kR={id:"footer",class:"fr-footer",role:"contentinfo"},FR={key:0,class:"fr-footer__top"},NR={class:"fr-container"},UR={class:"fr-grid-row fr-grid-row--start fr-grid-row--gutters"},BR={class:"fr-container"},jR={class:"fr-footer__body"},zR={class:"fr-footer__brand fr-enlarge-link"},VR=["src","alt"],WR={class:"fr-footer__content"},YR={class:"fr-footer__content-desc"},HR={class:"fr-footer__content-list"},qR=["href"],XR={class:"fr-footer__bottom"},ZR={class:"fr-footer__bottom-list"},KR={key:0,class:"fr-footer__bottom-copy"},JR=Ut({__name:"DsfrFooter",props:{a11yCompliance:{default:"non conforme"},a11yComplianceLink:{default:"/a11y"},legalLink:{default:"/mentions-legales"},homeLink:{default:"/"},partners:{default:()=>{}},personalDataLink:{default:"/donnees-personnelles"},cookiesLink:{default:"/cookies"},logoText:{default:()=>["République","Française"]},descText:{default:void 0},beforeMandatoryLinks:{default:()=>[]},afterMandatoryLinks:{default:()=>[]},mandatoryLinks:{default:i=>[{label:`Accessibilité : ${i.a11yCompliance}`,to:i.a11yComplianceLink},{label:"Mentions légales",to:i.legalLink,"data-testid":"/mentions-legales"},{label:"Données personnelles",to:i.personalDataLink},{label:"Gestion des cookies",to:i.cookiesLink}]},ecosystemLinks:{default:()=>[{label:"legifrance.gouv.fr",href:"https://legifrance.gouv.fr"},{label:"gouvernement.fr",href:"https://gouvernement.fr"},{label:"service-public.fr",href:"https://service-public.fr"},{label:"data.gouv.fr",href:"https://data.gouv.fr"}]},operatorLinkText:{default:"Revenir à l’accueil"},operatorTo:{default:"/"},operatorImgStyle:{default:void 0},operatorImgSrc:{default:void 0},operatorImgAlt:{default:""},licenceTo:{default:"https://github.com/etalab/licence-ouverte/blob/master/LO.md"},licenceLinkProps:{default:()=>{}},licenceText:{default:"Sauf mention contraire, tous les textes de ce site sont sous"},licenceName:{default:"licence etalab-2.0"}},setup(i){const e=i,t=Se(()=>[...e.beforeMandatoryLinks,...e.mandatoryLinks,...e.afterMandatoryLinks]),n=kE(),r=Se(()=>{var l;return(l=n["footer-link-lists"])==null?void 0:l.call(n).length}),s=Se(()=>{const l=e.licenceTo||e.licenceLinkProps.to;return l&&typeof l=="string"&&l.startsWith("http")}),o=Se(()=>s.value?"":e.licenceTo),a=Se(()=>s.value?e.licenceTo:"");return(l,c)=>{const u=Ph("RouterLink");return de(),Ge("footer",kR,[r.value?(de(),Ge("div",FR,[Oe("div",NR,[Oe("div",UR,[dn(l.$slots,"footer-link-lists",{},void 0,!0)])])])):Ct("",!0),Oe("div",BR,[Oe("div",jR,[Oe("div",zR,[dt(u,{to:l.homeLink,title:"Retour à l’accueil"},{default:zn(()=>[dt($E,{"logo-text":l.logoText},null,8,["logo-text"])]),_:1},8,["to"]),l.operatorImgSrc?(de(),qt(u,{key:0,class:"fr-footer__brand-link",to:l.operatorTo,title:l.operatorLinkText},{default:zn(()=>[Oe("img",{class:"fr-footer__logo fr-responsive-img",style:qa([typeof l.operatorImgStyle=="string"?l.operatorImgStyle:"",{"margin-left":"0.5px",padding:"1rem",...typeof l.operatorImgStyle=="object"?l.operatorImgStyle:{},"max-width":"12.5rem"}]),src:l.operatorImgSrc,alt:l.operatorImgAlt},null,12,VR)]),_:1},8,["to","title"])):Ct("",!0)]),Oe("div",WR,[Oe("p",YR,[dn(l.$slots,"description",{},()=>[cr(pi(l.descText),1)],!0)]),Oe("ul",HR,[(de(!0),Ge(Kt,null,Go(l.ecosystemLinks,(h,d)=>(de(),Ge("li",{key:d,class:"fr-footer__content-item"},[Oe("a",{class:"fr-footer__content-link",href:h.href,target:"_blank",rel:"noopener noreferrer"},pi(h.label),9,qR)]))),128))])])]),l.partners?(de(),qt(OR,Hu(xi({key:0},l.partners)),null,16)):Ct("",!0),Oe("div",XR,[Oe("ul",ZR,[(de(!0),Ge(Kt,null,Go(t.value,(h,d)=>(de(),Ge("li",{key:d,class:"fr-footer__bottom-item"},[dt(DR,Hu(yv(h)),null,16)]))),128))]),l.licenceText?(de(),Ge("div",KR,[Oe("p",null,[cr(pi(l.licenceText)+" ",1),(de(),qt(Ku(s.value?"a":"RouterLink"),xi({class:"fr-link-licence no-content-after",to:s.value?null:o.value,href:a.value,target:s.value?"_blank":void 0,rel:"noopener noreferrer"},l.licenceLinkProps),{default:zn(()=>[cr(pi(l.licenceName),1)]),_:1},16,["to","href","target"]))])])):Ct("",!0)])])])}}}),QR=Lh(JR,[["__scopeId","data-v-884531a5"]]),$R=["for"],e2={key:0,class:"required"},t2={key:0,class:"fr-hint-text"},i2=Ut({inheritAttrs:!1,__name:"DsfrInput",props:{id:{default:()=>Yo("basic","input")},descriptionId:{default:void 0},hint:{default:""},isInvalid:{type:Boolean},isValid:{type:Boolean},isTextarea:{type:Boolean},isWithWrapper:{type:Boolean},labelVisible:{type:Boolean},label:{default:""},labelClass:{default:""},modelValue:{default:""},wrapperClass:{default:""}},emits:["update:modelValue"],setup(i,{expose:e}){const t=i,n=iM(),r=Si(null),s=()=>{var c;return(c=r.value)==null?void 0:c.focus()},o=Se(()=>t.isTextarea?"textarea":"input"),a=Se(()=>t.isWithWrapper||n.type==="date"||!!t.wrapperClass),l=Se(()=>["fr-label",{invisible:!t.labelVisible},t.labelClass]);return e({focus:s}),(c,u)=>(de(),Ge(Kt,null,[Oe("label",{class:ur(l.value),for:c.id},[dn(c.$slots,"label",{},()=>[cr(pi(c.label)+" ",1),dn(c.$slots,"required-tip",{},()=>["required"in c.$attrs&&c.$attrs.required!==!1?(de(),Ge("span",e2,"*")):Ct("",!0)],!0)],!0),c.hint?(de(),Ge("span",t2,pi(c.hint),1)):Ct("",!0)],10,$R),a.value?(de(),Ge("div",{key:1,class:ur([{"fr-input-wrap":c.isWithWrapper||c.$attrs.type==="date"},c.wrapperClass])},[(de(),qt(Ku(o.value),xi({id:c.id},c.$attrs,{ref_key:"__input",ref:r,class:["fr-input",{"fr-input--error":c.isInvalid,"fr-input--valid":c.isValid}],value:c.modelValue,"aria-describedby":c.descriptionId||void 0,onInput:u[1]||(u[1]=h=>c.$emit("update:modelValue",h.target.value))}),null,16,["id","class","value","aria-describedby"]))],2)):(de(),qt(Ku(o.value),xi({key:0,id:c.id},c.$attrs,{ref_key:"__input",ref:r,class:["fr-input",{"fr-input--error":c.isInvalid,"fr-input--valid":c.isValid}],value:c.modelValue,"aria-describedby":c.descriptionId||void 0,onInput:u[0]||(u[0]=h=>c.$emit("update:modelValue",h.target.value))}),null,16,["id","class","value","aria-describedby"]))],64))}}),n2=Lh(i2,[["__scopeId","data-v-0171a9ee"]]),C_=Ut({__name:"DsfrSearchBar",props:{id:{default:()=>Yo("search","input")},label:{default:""},labelVisible:{type:Boolean},large:{type:Boolean},buttonText:{default:""},modelValue:{default:""},placeholder:{default:"Rechercher"},disabled:{type:Boolean}},emits:["update:modelValue","search"],setup(i,{emit:e}){const t=i,n=e;return bo(()=>t.modelValue,r=>{console.log("modelValue",r)}),(r,s)=>(de(),Ge("div",{class:ur(["fr-search-bar",{"fr-search-bar--lg":r.large}]),role:"search"},[dt(n2,{id:r.id,type:"search",placeholder:r.placeholder,"model-value":r.modelValue,"label-visible":r.labelVisible,label:r.label,disabled:r.disabled,"onUpdate:modelValue":s[0]||(s[0]=o=>n("update:modelValue",o)),onKeydown:s[1]||(s[1]=nR(o=>n("search",r.modelValue),["enter"]))},null,8,["id","placeholder","model-value","label-visible","label","disabled"]),dt(ER,{title:"Rechercher",disabled:r.disabled,onClick:s[2]||(s[2]=o=>n("search",r.modelValue))},{default:zn(()=>[cr(pi(r.buttonText),1)]),_:1},8,["disabled"])],2))}}),I_=1,r2=Ut({__name:"DsfrHeaderMenuLink",props:{button:{type:Boolean},icon:{default:void 0},iconAttrs:{default:()=>({})},iconRight:{type:Boolean},label:{default:""},target:{default:"_self"},onClick:{type:Function,default:()=>{}},to:{default:void 0},href:{default:void 0}},setup(i){const e=i,t=Se(()=>e.button?"button":r.value||s.value?"a":"RouterLink"),n=Se(()=>typeof e.path=="string"),r=Se(()=>{var h;return((h=e.href)==null?void 0:h.startsWith("http"))||n.value&&e.path.startsWith("http")}),s=Se(()=>{var h;return((h=e.href)==null?void 0:h.startsWith("mailto"))||n.value&&e.path.startsWith("mailto")}),o=Se(()=>{if(!(!r.value&&!s.value))return e.href!==void 0?e.href:e.path}),a=Se(()=>{if(!(r.value||s.value))return e.to||e.path}),l=Se(()=>a.value?{to:a.value}:{href:o.value}),c=Se(()=>typeof e.icon=="string"&&e.icon.startsWith("fr-icon-")),u=Se(()=>typeof e.icon=="string"?{name:e.icon,scale:I_,...e.iconAttrs??{}}:{scale:I_,...e.icon??{},...e.iconAttrs??{}});return(h,d)=>(de(),qt(Ku(t.value),xi({class:["fr-btn",{"fr-btn--icon-right":c.value&&h.iconRight,"fr-btn--icon-left":c.value&&!h.iconRight,[String(h.icon)]:c.value}]},l.value,{target:h.target,onClick:zl(h.onClick,["stop"])}),{default:zn(()=>{var f,g;return[!c.value&&(h.icon||(f=h.iconAttrs)!=null&&f.name)&&!h.iconRight?(de(),qt(Nt(oc),xi({key:0,class:"fr-mr-1w"},u.value),null,16)):Ct("",!0),cr(" "+pi(h.label)+" ",1),!c.value&&(h.icon||(g=h.iconAttrs)!=null&&g.name)&&h.iconRight?(de(),qt(Nt(oc),xi({key:1,class:"fr-ml-1w"},u.value),null,16)):Ct("",!0)]}),_:1},16,["class","target","onClick"]))}}),s2=["aria-label"],o2={class:"fr-btns-group"},E_=Ut({__name:"DsfrHeaderMenuLinks",props:{links:{default:()=>[]},navAriaLabel:{default:"Menu secondaire"}},emits:["linkClick"],setup(i,{emit:e}){const t=e;return(n,r)=>(de(),Ge("nav",{role:"navigation","aria-label":n.navAriaLabel},[Oe("ul",o2,[(de(!0),Ge(Kt,null,Go(n.links,(s,o)=>(de(),Ge("li",{key:o},[dt(r2,xi(s,{"on-click":a=>{var l;t("linkClick",a),(l=s.onClick)==null||l.call(s,a)}}),null,16,["on-click"])]))),128))])],8,s2))}}),a2={role:"banner",class:"fr-header"},l2={class:"fr-header__body"},c2={class:"fr-container width-inherit"},u2={class:"fr-header__body-row"},h2={class:"fr-header__brand fr-enlarge-link"},d2={class:"fr-header__brand-top"},f2={class:"fr-header__logo"},g2={key:0,class:"fr-header__operator"},p2=["src","alt"],m2={key:1,class:"fr-header__navbar"},v2=["data-fr-opened"],y2={key:0,class:"fr-header__service"},A2={class:"fr-header__service-title"},_2={key:0,class:"fr-badge fr-badge--sm fr-badge--green-emeraude"},C2={key:0,class:"fr-header__service-tagline"},I2={key:1,class:"fr-header__service"},E2=Oe("p",{class:"fr-header__service-title"},[Oe("span",{class:"fr-badge fr-badge--sm fr-badge--green-emeraude"},"BETA")],-1),w2=[E2],b2={class:"fr-header__tools"},S2={key:0,class:"fr-header__tools-links"},x2={role:"navigation"},P2={key:1,class:"fr-header__search fr-modal"},M2={class:"fr-container"},R2={class:"fr-header__menu-links"},T2={role:"navigation"},L2={key:1,class:"flex justify-center items-center"},G2={key:1,class:"fr-hidden fr-unhidden-lg"},O2=Ut({__name:"DsfrHeader",props:{searchbarId:{default:"searchbar-header"},serviceTitle:{default:void 0},serviceDescription:{default:void 0},homeTo:{default:"/"},logoText:{default:()=>"Gouvernement"},modelValue:{default:""},operatorImgAlt:{default:""},operatorImgSrc:{default:""},operatorImgStyle:{default:()=>({})},placeholder:{default:"Rechercher..."},quickLinks:{default:()=>[]},searchLabel:{default:"Recherche"},quickLinksAriaLabel:{default:"Menu secondaire"},showSearch:{type:Boolean},showBeta:{type:Boolean}},emits:["update:modelValue","search"],setup(i){const e=i,t=f=>{f.key==="Escape"&&o()};wr(()=>{document.addEventListener("keydown",t)}),Rh(()=>{document.removeEventListener("keydown",t)});const n=Si(!1),r=Si(!1),s=Si(!1),o=()=>{var f;s.value=!1,n.value=!1,r.value=!1,(f=document.getElementById("button-menu"))==null||f.focus()},a=()=>{var f;s.value=!0,n.value=!0,r.value=!1,(f=document.getElementById("close-button"))==null||f.focus()},l=()=>{s.value=!0,n.value=!1,r.value=!0},c=o,u=kE(),h=Se(()=>{var f;return!!((f=u.operator)!=null&&f.call(u).length)||!!e.operatorImgSrc}),d=Se(()=>!!u.mainnav);return(f,g)=>{var p,m,v;const y=Ph("RouterLink");return de(),Ge("header",a2,[Oe("div",l2,[Oe("div",c2,[Oe("div",u2,[Oe("div",h2,[Oe("div",d2,[Oe("div",f2,[dt($E,{"logo-text":f.logoText,"data-testid":"header-logo"},null,8,["logo-text"])]),h.value?(de(),Ge("div",g2,[dn(f.$slots,"operator",{},()=>[f.operatorImgSrc?(de(),Ge("img",{key:0,class:"fr-responsive-img",src:f.operatorImgSrc,alt:f.operatorImgAlt,style:qa(f.operatorImgStyle)},null,12,p2)):Ct("",!0)])])):Ct("",!0),f.showSearch||d.value||(p=f.quickLinks)!=null&&p.length?(de(),Ge("div",m2,[f.showSearch?(de(),Ge("button",{key:0,class:"fr-btn fr-btn--search","aria-controls":"header-search","aria-label":"Recherche",title:"Recherche","data-fr-opened":r.value,onClick:g[0]||(g[0]=zl(A=>l(),["prevent","stop"]))},null,8,v2)):Ct("",!0),d.value||(m=f.quickLinks)!=null&&m.length?(de(),Ge("button",{key:1,id:"button-menu",class:"fr-btn--menu fr-btn","data-fr-opened":a,"aria-controls":"header-navigation","aria-haspopup":"menu","aria-label":"Menu",title:"Menu","data-testid":"open-menu-btn",onClick:g[1]||(g[1]=zl(A=>a(),["prevent","stop"]))})):Ct("",!0)])):Ct("",!0)]),f.serviceTitle?(de(),Ge("div",y2,[dt(y,xi({to:f.homeTo,title:`Accueil - ${f.serviceTitle}`},f.$attrs),{default:zn(()=>[Oe("p",A2,[cr(pi(f.serviceTitle)+" ",1),f.showBeta?(de(),Ge("span",_2," BETA ")):Ct("",!0)])]),_:1},16,["to","title"]),f.serviceDescription?(de(),Ge("p",C2,pi(f.serviceDescription),1)):Ct("",!0)])):Ct("",!0),!f.serviceTitle&&f.showBeta?(de(),Ge("div",I2,w2)):Ct("",!0)]),Oe("div",b2,[(v=f.quickLinks)!=null&&v.length?(de(),Ge("div",S2,[Oe("nav",x2,[n.value?Ct("",!0):(de(),qt(E_,{key:0,links:f.quickLinks,"nav-aria-label":f.quickLinksAriaLabel},null,8,["links","nav-aria-label"]))])])):Ct("",!0),f.showSearch?(de(),Ge("div",P2,[dt(C_,{"searchbar-id":f.searchbarId,label:f.searchLabel,"model-value":f.modelValue,placeholder:f.placeholder,style:{"justify-content":"flex-end"},"onUpdate:modelValue":g[2]||(g[2]=A=>f.$emit("update:modelValue",A)),onSearch:g[3]||(g[3]=A=>f.$emit("search",A))},null,8,["searchbar-id","label","model-value","placeholder"])])):Ct("",!0)])]),f.showSearch||d.value||f.quickLinks&&f.quickLinks.length?(de(),Ge("div",{key:0,id:"header-navigation",class:ur(["fr-header__menu fr-modal",{"fr-modal--opened":s.value}]),"aria-label":"Menu modal",role:"dialog","aria-modal":"true"},[Oe("div",M2,[Oe("button",{id:"close-button",class:"fr-btn fr-btn--close","aria-controls":"header-navigation","data-testid":"close-modal-btn",onClick:g[4]||(g[4]=zl(A=>o(),["prevent","stop"]))}," Fermer "),Oe("div",R2,[Oe("nav",T2,[n.value?(de(),qt(E_,{key:0,role:"navigation",links:f.quickLinks,"nav-aria-label":f.quickLinksAriaLabel,onLinkClick:Nt(c)},null,8,["links","nav-aria-label","onLinkClick"])):Ct("",!0)])]),s.value?dn(f.$slots,"mainnav",{key:0,hidemodal:o}):Ct("",!0),r.value?(de(),Ge("div",L2,[dt(C_,{"searchbar-id":f.searchbarId,"model-value":f.modelValue,placeholder:f.placeholder,"onUpdate:modelValue":g[5]||(g[5]=A=>f.$emit("update:modelValue",A)),onSearch:g[6]||(g[6]=A=>f.$emit("search",A))},null,8,["searchbar-id","model-value","placeholder"])])):Ct("",!0)])],2)):Ct("",!0),d.value&&!s.value?(de(),Ge("div",G2,[dn(f.$slots,"mainnav",{hidemodal:o})])):Ct("",!0),dn(f.$slots,"default")])])])}}});/*! +* tabbable 6.2.0 +* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE +*/var e1=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],yf=e1.join(","),t1=typeof Element>"u",La=t1?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Af=!t1&&Element.prototype.getRootNode?function(i){var e;return i==null||(e=i.getRootNode)===null||e===void 0?void 0:e.call(i)}:function(i){return i==null?void 0:i.ownerDocument},_f=function i(e,t){var n;t===void 0&&(t=!0);var r=e==null||(n=e.getAttribute)===null||n===void 0?void 0:n.call(e,"inert"),s=r===""||r==="true",o=s||t&&e&&i(e.parentNode);return o},D2=function(i){var e,t=i==null||(e=i.getAttribute)===null||e===void 0?void 0:e.call(i,"contenteditable");return t===""||t==="true"},i1=function(i,e,t){if(_f(i))return[];var n=Array.prototype.slice.apply(i.querySelectorAll(yf));return e&&La.call(i,yf)&&n.unshift(i),n=n.filter(t),n},n1=function i(e,t,n){for(var r=[],s=Array.from(e);s.length;){var o=s.shift();if(!_f(o,!1))if(o.tagName==="SLOT"){var a=o.assignedElements(),l=a.length?a:o.children,c=i(l,!0,n);n.flatten?r.push.apply(r,c):r.push({scopeParent:o,candidates:c})}else{var u=La.call(o,yf);u&&n.filter(o)&&(t||!e.includes(o))&&r.push(o);var h=o.shadowRoot||typeof n.getShadowRoot=="function"&&n.getShadowRoot(o),d=!_f(h,!1)&&(!n.shadowRootFilter||n.shadowRootFilter(o));if(h&&d){var f=i(h===!0?o.children:h.children,!0,n);n.flatten?r.push.apply(r,f):r.push({scopeParent:o,candidates:f})}else s.unshift.apply(s,o.children)}}return r},r1=function(i){return!isNaN(parseInt(i.getAttribute("tabindex"),10))},ya=function(i){if(!i)throw new Error("No node provided");return i.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(i.tagName)||D2(i))&&!r1(i)?0:i.tabIndex},k2=function(i,e){var t=ya(i);return t<0&&e&&!r1(i)?0:t},F2=function(i,e){return i.tabIndex===e.tabIndex?i.documentOrder-e.documentOrder:i.tabIndex-e.tabIndex},s1=function(i){return i.tagName==="INPUT"},N2=function(i){return s1(i)&&i.type==="hidden"},U2=function(i){var e=i.tagName==="DETAILS"&&Array.prototype.slice.apply(i.children).some(function(t){return t.tagName==="SUMMARY"});return e},B2=function(i,e){for(var t=0;tsummary:first-of-type"),s=r?i.parentElement:i;if(La.call(s,"details:not([open]) *"))return!0;if(!t||t==="full"||t==="legacy-full"){if(typeof n=="function"){for(var o=i;i;){var a=i.parentElement,l=Af(i);if(a&&!a.shadowRoot&&n(a)===!0)return w_(i);i.assignedSlot?i=i.assignedSlot:!a&&l!==i.ownerDocument?i=l.host:i=a}i=o}if(W2(i))return!i.getClientRects().length;if(t!=="legacy-full")return!0}else if(t==="non-zero-area")return w_(i);return!1},H2=function(i){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(i.tagName))for(var e=i.parentElement;e;){if(e.tagName==="FIELDSET"&&e.disabled){for(var t=0;t=0)},X2=function i(e){var t=[],n=[];return e.forEach(function(r,s){var o=!!r.scopeParent,a=o?r.scopeParent:r,l=k2(a,o),c=o?i(r.candidates):a;l===0?o?t.push.apply(t,c):t.push(a):n.push({documentOrder:s,tabIndex:l,item:r,isScope:o,content:c})}),n.sort(F2).reduce(function(r,s){return s.isScope?r.push.apply(r,s.content):r.push(s.content),r},[]).concat(t)},Z2=function(i,e){e=e||{};var t;return e.getShadowRoot?t=n1([i],e.includeContainer,{filter:$p.bind(null,e),flatten:!1,getShadowRoot:e.getShadowRoot,shadowRootFilter:q2}):t=i1(i,e.includeContainer,$p.bind(null,e)),X2(t)},K2=function(i,e){e=e||{};var t;return e.getShadowRoot?t=n1([i],e.includeContainer,{filter:Cf.bind(null,e),flatten:!0,getShadowRoot:e.getShadowRoot}):t=i1(i,e.includeContainer,Cf.bind(null,e)),t},nl=function(i,e){if(e=e||{},!i)throw new Error("No node provided");return La.call(i,yf)===!1?!1:$p(e,i)},J2=e1.concat("iframe").join(","),G0=function(i,e){if(e=e||{},!i)throw new Error("No node provided");return La.call(i,J2)===!1?!1:Cf(e,i)};/*! +* focus-trap 7.5.4 +* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE +*/function b_(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function S_(i){for(var e=1;e0){var t=i[i.length-1];t!==e&&t.pause()}var n=i.indexOf(e);n===-1||i.splice(n,1),i.push(e)},deactivateTrap:function(i,e){var t=i.indexOf(e);t!==-1&&i.splice(t,1),i.length>0&&i[i.length-1].unpause()}},tT=function(i){return i.tagName&&i.tagName.toLowerCase()==="input"&&typeof i.select=="function"},iT=function(i){return(i==null?void 0:i.key)==="Escape"||(i==null?void 0:i.key)==="Esc"||(i==null?void 0:i.keyCode)===27},Su=function(i){return(i==null?void 0:i.key)==="Tab"||(i==null?void 0:i.keyCode)===9},nT=function(i){return Su(i)&&!i.shiftKey},rT=function(i){return Su(i)&&i.shiftKey},P_=function(i){return setTimeout(i,0)},M_=function(i,e){var t=-1;return i.every(function(n,r){return e(n)?(t=r,!1):!0}),t},Zc=function(i){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n1?x-1:0),k=1;k=0)P=t.activeElement;else{var w=s.tabbableGroups[0],x=w&&w.firstTabbableNode;P=x||c("fallbackFocus")}if(!P)throw new Error("Your focus-trap needs to have at least one focusable element");return P},h=function(){if(s.containerGroups=s.containers.map(function(P){var w=Z2(P,r.tabbableOptions),x=K2(P,r.tabbableOptions),D=w.length>0?w[0]:void 0,k=w.length>0?w[w.length-1]:void 0,O=x.find(function(V){return nl(V)}),N=x.slice().reverse().find(function(V){return nl(V)}),B=!!w.find(function(V){return ya(V)>0});return{container:P,tabbableNodes:w,focusableNodes:x,posTabIndexesFound:B,firstTabbableNode:D,lastTabbableNode:k,firstDomTabbableNode:O,lastDomTabbableNode:N,nextTabbableNode:function(V){var se=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,j=w.indexOf(V);return j<0?se?x.slice(x.indexOf(V)+1).find(function(Ae){return nl(Ae)}):x.slice(0,x.indexOf(V)).reverse().find(function(Ae){return nl(Ae)}):w[j+(se?1:-1)]}}}),s.tabbableGroups=s.containerGroups.filter(function(P){return P.tabbableNodes.length>0}),s.tabbableGroups.length<=0&&!c("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(s.containerGroups.find(function(P){return P.posTabIndexesFound})&&s.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},d=function P(w){var x=w.activeElement;if(x)return x.shadowRoot&&x.shadowRoot.activeElement!==null?P(x.shadowRoot):x},f=function P(w){if(w!==!1&&w!==d(document)){if(!w||!w.focus){P(u());return}w.focus({preventScroll:!!r.preventScroll}),s.mostRecentlyFocusedNode=w,tT(w)&&w.select()}},g=function(P){var w=c("setReturnFocus",P);return w||(w===!1?!1:P)},p=function(P){var w=P.target,x=P.event,D=P.isBackward,k=D===void 0?!1:D;w=w||ld(x),h();var O=null;if(s.tabbableGroups.length>0){var N=l(w,x),B=N>=0?s.containerGroups[N]:void 0;if(N<0)k?O=s.tabbableGroups[s.tabbableGroups.length-1].lastTabbableNode:O=s.tabbableGroups[0].firstTabbableNode;else if(k){var V=M_(s.tabbableGroups,function(Ce){var pe=Ce.firstTabbableNode;return w===pe});if(V<0&&(B.container===w||G0(w,r.tabbableOptions)&&!nl(w,r.tabbableOptions)&&!B.nextTabbableNode(w,!1))&&(V=N),V>=0){var se=V===0?s.tabbableGroups.length-1:V-1,j=s.tabbableGroups[se];O=ya(w)>=0?j.lastTabbableNode:j.lastDomTabbableNode}else Su(x)||(O=B.nextTabbableNode(w,!1))}else{var Ae=M_(s.tabbableGroups,function(Ce){var pe=Ce.lastTabbableNode;return w===pe});if(Ae<0&&(B.container===w||G0(w,r.tabbableOptions)&&!nl(w,r.tabbableOptions)&&!B.nextTabbableNode(w))&&(Ae=N),Ae>=0){var q=Ae===s.tabbableGroups.length-1?0:Ae+1,Te=s.tabbableGroups[q];O=ya(w)>=0?Te.firstTabbableNode:Te.firstDomTabbableNode}else Su(x)||(O=B.nextTabbableNode(w))}}else O=c("fallbackFocus");return O},m=function(P){var w=ld(P);if(!(l(w,P)>=0)){if(Zc(r.clickOutsideDeactivates,P)){o.deactivate({returnFocus:r.returnFocusOnDeactivate});return}Zc(r.allowOutsideClick,P)||P.preventDefault()}},v=function(P){var w=ld(P),x=l(w,P)>=0;if(x||w instanceof Document)x&&(s.mostRecentlyFocusedNode=w);else{P.stopImmediatePropagation();var D,k=!0;if(s.mostRecentlyFocusedNode)if(ya(s.mostRecentlyFocusedNode)>0){var O=l(s.mostRecentlyFocusedNode),N=s.containerGroups[O].tabbableNodes;if(N.length>0){var B=N.findIndex(function(V){return V===s.mostRecentlyFocusedNode});B>=0&&(r.isKeyForward(s.recentNavEvent)?B+1=0&&(D=N[B-1],k=!1))}}else s.containerGroups.some(function(V){return V.tabbableNodes.some(function(se){return ya(se)>0})})||(k=!1);else k=!1;k&&(D=p({target:s.mostRecentlyFocusedNode,isBackward:r.isKeyBackward(s.recentNavEvent)})),f(D||s.mostRecentlyFocusedNode||u())}s.recentNavEvent=void 0},y=function(P){var w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;s.recentNavEvent=P;var x=p({event:P,isBackward:w});x&&(Su(P)&&P.preventDefault(),f(x))},A=function(P){if(iT(P)&&Zc(r.escapeDeactivates,P)!==!1){P.preventDefault(),o.deactivate();return}(r.isKeyForward(P)||r.isKeyBackward(P))&&y(P,r.isKeyBackward(P))},_=function(P){var w=ld(P);l(w,P)>=0||Zc(r.clickOutsideDeactivates,P)||Zc(r.allowOutsideClick,P)||(P.preventDefault(),P.stopImmediatePropagation())},C=function(){if(s.active)return x_.activateTrap(n,o),s.delayInitialFocusTimer=r.delayInitialFocus?P_(function(){f(u())}):f(u()),t.addEventListener("focusin",v,!0),t.addEventListener("mousedown",m,{capture:!0,passive:!1}),t.addEventListener("touchstart",m,{capture:!0,passive:!1}),t.addEventListener("click",_,{capture:!0,passive:!1}),t.addEventListener("keydown",A,{capture:!0,passive:!1}),o},I=function(){if(s.active)return t.removeEventListener("focusin",v,!0),t.removeEventListener("mousedown",m,!0),t.removeEventListener("touchstart",m,!0),t.removeEventListener("click",_,!0),t.removeEventListener("keydown",A,!0),o},b=function(P){var w=P.some(function(x){var D=Array.from(x.removedNodes);return D.some(function(k){return k===s.mostRecentlyFocusedNode})});w&&f(u())},S=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(b):void 0,R=function(){S&&(S.disconnect(),s.active&&!s.paused&&s.containers.map(function(P){S.observe(P,{subtree:!0,childList:!0})}))};return o={get active(){return s.active},get paused(){return s.paused},activate:function(P){if(s.active)return this;var w=a(P,"onActivate"),x=a(P,"onPostActivate"),D=a(P,"checkCanFocusTrap");D||h(),s.active=!0,s.paused=!1,s.nodeFocusedBeforeActivation=t.activeElement,w==null||w();var k=function(){D&&h(),C(),R(),x==null||x()};return D?(D(s.containers.concat()).then(k,k),this):(k(),this)},deactivate:function(P){if(!s.active)return this;var w=S_({onDeactivate:r.onDeactivate,onPostDeactivate:r.onPostDeactivate,checkCanReturnFocus:r.checkCanReturnFocus},P);clearTimeout(s.delayInitialFocusTimer),s.delayInitialFocusTimer=void 0,I(),s.active=!1,s.paused=!1,R(),x_.deactivateTrap(n,o);var x=a(w,"onDeactivate"),D=a(w,"onPostDeactivate"),k=a(w,"checkCanReturnFocus"),O=a(w,"returnFocus","returnFocusOnDeactivate");x==null||x();var N=function(){P_(function(){O&&f(g(s.nodeFocusedBeforeActivation)),D==null||D()})};return O&&k?(k(g(s.nodeFocusedBeforeActivation)).then(N,N),this):(N(),this)},pause:function(P){if(s.paused||!s.active)return this;var w=a(P,"onPause"),x=a(P,"onPostPause");return s.paused=!0,w==null||w(),I(),R(),x==null||x(),this},unpause:function(P){if(!s.paused||!s.active)return this;var w=a(P,"onUnpause"),x=a(P,"onPostUnpause");return s.paused=!1,w==null||w(),h(),C(),R(),x==null||x(),this},updateContainerElements:function(P){var w=[].concat(P).filter(Boolean);return s.containers=w.map(function(x){return typeof x=="string"?t.querySelector(x):x}),s.active&&h(),R(),this}},o.updateContainerElements(i),o};/*! + * focus-trap-vue v4.0.2 + * (c) 2023 Eduardo San Martin Morote + * @license MIT + */const aT={escapeDeactivates:{type:Boolean,default:!0},returnFocusOnDeactivate:{type:Boolean,default:!0},allowOutsideClick:{type:[Boolean,Function],default:!0},clickOutsideDeactivates:[Boolean,Function],initialFocus:[String,Function,Boolean],fallbackFocus:[String,Function],checkCanFocusTrap:Function,checkCanReturnFocus:Function,delayInitialFocus:{type:Boolean,default:!0},document:Object,preventScroll:Boolean,setReturnFocus:[Object,String,Boolean,Function],tabbableOptions:Object};Object.assign({active:{type:Boolean,default:!0}},aT);const lT=["id","aria-current"],cT=Ut({__name:"DsfrNavigationItem",props:{id:{default:()=>Yo("nav","item")},active:{type:Boolean}},setup(i){return(e,t)=>(de(),Ge("li",{id:e.id,class:"fr-nav__item","aria-current":e.active?"page":void 0},[dn(e.$slots,"default",{},void 0,!0)],8,lT))}}),uT=Lh(cT,[["__scopeId","data-v-5909c19f"]]),hT=["href"],R_=2,Iv=Ut({__name:"DsfrNavigationMenuLink",props:{id:{default:()=>Yo("menu-link")},to:{default:"#"},text:{default:""},icon:{default:void 0},onClick:{type:Function,default:()=>{}}},emits:["toggle-id"],setup(i){const e=i,t=Se(()=>typeof e.to=="string"&&e.to.startsWith("http")),n=Se(()=>e.icon&&typeof e.icon=="string"&&e.icon.startsWith("fr-icon-")),r=Se(()=>n.value||!e.icon?void 0:typeof e.icon=="string"?{scale:R_,name:e.icon}:{scale:R_,...e.icon||{}});return(s,o)=>{const a=Ph("RouterLink");return t.value?(de(),Ge("a",{key:0,class:"fr-nav__link","data-testid":"nav-external-link",href:s.to,onClick:o[0]||(o[0]=l=>s.$emit("toggle-id",s.id))},pi(s.text),9,hT)):(de(),qt(a,{key:1,class:ur(["fr-nav__link",{[String(s.icon)]:n.value}]),"data-testid":"nav-router-link",to:s.to,onClick:o[1]||(o[1]=l=>s.$emit("toggle-id",s.id))},{default:zn(()=>[r.value?(de(),qt(Nt(oc),Hu(xi({key:0},r.value)),null,16)):Ct("",!0),cr(" "+pi(s.text),1)]),_:1},8,["to","class"]))}}}),dT=["id","aria-current"],fT=Ut({__name:"DsfrNavigationMenuItem",props:{id:{default:()=>Yo("menu","item")},active:{type:Boolean}},setup(i){return(e,t)=>(de(),Ge("li",{id:e.id,class:"fr-menu__item","aria-current":e.active?"page":void 0},[dn(e.$slots,"default")],8,dT))}}),gT=["aria-expanded","aria-current","aria-controls"],pT=["id"],mT={ref:"menuList",class:"fr-menu__list"},vT=Ut({__name:"DsfrNavigationMenu",props:{id:{default:()=>Yo("menu")},title:{},links:{default:()=>[]},expandedId:{default:""},active:{type:Boolean}},emits:["toggle-id"],setup(i){const{collapse:e,collapsing:t,cssExpanded:n,doExpand:r,onTransitionEnd:s}=QE(),o=i,a=Se(()=>o.id===o.expandedId);return bo(a,(l,c)=>{l!==c&&r(l)}),wr(()=>{a.value&&r(!0)}),(l,c)=>(de(),Ge(Kt,null,[Oe("button",{class:"fr-nav__btn","aria-expanded":a.value,"aria-current":l.active||void 0,"aria-controls":l.id,onClick:c[0]||(c[0]=u=>l.$emit("toggle-id",l.id))},[Oe("span",null,pi(l.title),1)],8,gT),Oe("div",{id:l.id,ref_key:"collapse",ref:e,class:ur(["fr-collapse fr-menu",{"fr-collapse--expanded":Nt(n),"fr-collapsing":Nt(t)}]),"data-testid":"navigation-menu",onTransitionend:c[2]||(c[2]=u=>Nt(s)(a.value))},[Oe("ul",mT,[dn(l.$slots,"default"),(de(!0),Ge(Kt,null,Go(l.links,(u,h)=>(de(),qt(fT,{key:h},{default:zn(()=>[dt(Iv,xi(u,{onToggleId:c[1]||(c[1]=d=>l.$emit("toggle-id",l.expandedId))}),null,16)]),_:2},1024))),128))],512)],42,pT)],64))}}),yT={class:"fr-col-12 fr-col-lg-3"},AT={class:"fr-mega-menu__category"},_T={class:"fr-mega-menu__list"},CT=Ut({__name:"DsfrNavigationMegaMenuCategory",props:{title:{},active:{type:Boolean},links:{}},setup(i){return(e,t)=>(de(),Ge("div",yT,[Oe("h5",AT,[Oe("a",{class:"fr-nav__link",href:"#",onClick:t[0]||(t[0]=zl(()=>{},["prevent"]))},pi(e.title),1)]),Oe("ul",_T,[(de(!0),Ge(Kt,null,Go(e.links,(n,r)=>(de(),Ge("li",{key:r,class:"fr-nav__link"},[dt(Iv,Hu(yv(n)),null,16)]))),128))])]))}}),IT=["aria-expanded","aria-current","aria-controls"],ET=["id"],wT={class:"fr-container fr-container--fluid fr-container-lg"},bT={ref:"megaMenuList",class:"fr-grid-row fr-grid-row-lg--gutters"},ST={class:"fr-col-12 fr-col-lg-8 fr-col-offset-lg-4--right fr-mb-4v"},xT={class:"fr-mega-menu__leader"},PT={class:"fr-h4 fr-mb-2v"},MT={class:"fr-hidden fr-displayed-lg"},RT=Ut({__name:"DsfrNavigationMegaMenu",props:{id:{default:()=>Yo("menu")},title:{},description:{default:""},link:{default:()=>({to:"#",text:"Voir toute la rubrique"})},menus:{default:()=>[]},expandedId:{default:""},active:{type:Boolean}},emits:["toggle-id"],setup(i){const e=i,{collapse:t,collapsing:n,cssExpanded:r,doExpand:s,onTransitionEnd:o}=QE(),a=Se(()=>e.id===e.expandedId);return bo(a,(l,c)=>{l!==c&&s(l)}),wr(()=>{a.value&&s(!0)}),(l,c)=>{const u=Ph("RouterLink");return de(),Ge(Kt,null,[Oe("button",{class:"fr-nav__btn","aria-expanded":a.value,"aria-current":l.active||void 0,"aria-controls":l.id,onClick:c[0]||(c[0]=h=>l.$emit("toggle-id",l.id))},pi(l.title),9,IT),Oe("div",{id:l.id,ref_key:"collapse",ref:t,"data-testid":"mega-menu-wrapper",class:ur(["fr-collapse fr-mega-menu",{"fr-collapse--expanded":Nt(r),"fr-collapsing":Nt(n)}]),tabindex:"-1",onTransitionend:c[2]||(c[2]=h=>Nt(o)(a.value))},[Oe("div",wT,[Oe("button",{class:"fr-link--close fr-link","aria-controls":"mega-menu-695",onClick:c[1]||(c[1]=h=>l.$emit("toggle-id",l.id))}," Fermer "),Oe("div",bT,[Oe("div",ST,[Oe("div",xT,[Oe("h4",PT,pi(l.title),1),Oe("p",MT,[cr(pi(l.description)+" ",1),dn(l.$slots,"description",{},void 0,!0)]),dt(u,{class:"fr-link fr-icon-arrow-right-line fr-link--icon-right fr-link--align-on-content",to:l.link.to},{default:zn(()=>[cr(pi(l.link.text),1)]),_:1},8,["to"])])]),dn(l.$slots,"default",{},void 0,!0),(de(!0),Ge(Kt,null,Go(l.menus,(h,d)=>(de(),qt(CT,xi({key:d},h),null,16))),128))],512)])],42,ET)],64)}}}),TT=Lh(RT,[["__scopeId","data-v-3ee9b678"]]),LT=["id","aria-label"],GT={class:"fr-nav__list"},OT=Ut({__name:"DsfrNavigation",props:{id:{default:()=>Yo("menu")},label:{default:"Menu principal"},navItems:{default:()=>[]}},setup(i){const e=i,t=Si(void 0),n=a=>{if(a===t.value){t.value=void 0;return}t.value=a},r=a=>{o(a.target)},s=a=>{a.key==="Escape"&&n(t.value)},o=a=>{if(a!==document.getElementById(e.id)){if(!(a!=null&&a.parentNode)){n(t.value);return}o(a.parentNode)}};return wr(()=>{document.addEventListener("click",r),document.addEventListener("keydown",s)}),Rh(()=>{document.removeEventListener("click",r),document.removeEventListener("keydown",s)}),(a,l)=>(de(),Ge("nav",{id:a.id,class:"fr-nav",role:"navigation","aria-label":a.label},[Oe("ul",GT,[dn(a.$slots,"default"),(de(!0),Ge(Kt,null,Go(a.navItems,(c,u)=>(de(),qt(uT,{key:u},{default:zn(()=>[c.to&&c.text?(de(),qt(Iv,xi({key:0},c,{"expanded-id":t.value,onToggleId:l[0]||(l[0]=h=>n(h))}),null,16,["expanded-id"])):c.title&&c.links?(de(),qt(vT,xi({key:1},c,{"expanded-id":t.value,onToggleId:l[1]||(l[1]=h=>n(h))}),null,16,["expanded-id"])):c.title&&c.menus?(de(),qt(TT,xi({key:2},c,{"expanded-id":t.value,onToggleId:l[2]||(l[2]=h=>n(h))}),null,16,["expanded-id"])):Ct("",!0)]),_:2},1024))),128))])],8,LT))}});/*! + * vue-router v4.3.0 + * (c) 2024 Eduardo San Martin Morote + * @license MIT + */const pl=typeof document<"u";function DT(i){return i.__esModule||i[Symbol.toStringTag]==="Module"}const Ft=Object.assign;function O0(i,e){const t={};for(const n in e){const r=e[n];t[n]=Br(r)?r.map(i):i(r)}return t}const xu=()=>{},Br=Array.isArray,o1=/#/g,kT=/&/g,FT=/\//g,NT=/=/g,UT=/\?/g,a1=/\+/g,BT=/%5B/g,jT=/%5D/g,l1=/%5E/g,zT=/%60/g,c1=/%7B/g,VT=/%7C/g,u1=/%7D/g,WT=/%20/g;function Ev(i){return encodeURI(""+i).replace(VT,"|").replace(BT,"[").replace(jT,"]")}function YT(i){return Ev(i).replace(c1,"{").replace(u1,"}").replace(l1,"^")}function em(i){return Ev(i).replace(a1,"%2B").replace(WT,"+").replace(o1,"%23").replace(kT,"%26").replace(zT,"`").replace(c1,"{").replace(u1,"}").replace(l1,"^")}function HT(i){return em(i).replace(NT,"%3D")}function qT(i){return Ev(i).replace(o1,"%23").replace(UT,"%3F")}function XT(i){return i==null?"":qT(i).replace(FT,"%2F")}function Qu(i){try{return decodeURIComponent(""+i)}catch{}return""+i}const ZT=/\/$/,KT=i=>i.replace(ZT,"");function D0(i,e,t="/"){let n,r={},s="",o="";const a=e.indexOf("#");let l=e.indexOf("?");return a=0&&(l=-1),l>-1&&(n=e.slice(0,l),s=e.slice(l+1,a>-1?a:e.length),r=i(s)),a>-1&&(n=n||e.slice(0,a),o=e.slice(a,e.length)),n=eL(n??e,t),{fullPath:n+(s&&"?")+s+o,path:n,query:r,hash:Qu(o)}}function JT(i,e){const t=e.query?i(e.query):"";return e.path+(t&&"?")+t+(e.hash||"")}function T_(i,e){return!e||!i.toLowerCase().startsWith(e.toLowerCase())?i:i.slice(e.length)||"/"}function QT(i,e,t){const n=e.matched.length-1,r=t.matched.length-1;return n>-1&&n===r&&ac(e.matched[n],t.matched[r])&&h1(e.params,t.params)&&i(e.query)===i(t.query)&&e.hash===t.hash}function ac(i,e){return(i.aliasOf||i)===(e.aliasOf||e)}function h1(i,e){if(Object.keys(i).length!==Object.keys(e).length)return!1;for(const t in i)if(!$T(i[t],e[t]))return!1;return!0}function $T(i,e){return Br(i)?L_(i,e):Br(e)?L_(e,i):i===e}function L_(i,e){return Br(e)?i.length===e.length&&i.every((t,n)=>t===e[n]):i.length===1&&i[0]===e}function eL(i,e){if(i.startsWith("/"))return i;if(!i)return e;const t=e.split("/"),n=i.split("/"),r=n[n.length-1];(r===".."||r===".")&&n.push("");let s=t.length-1,o,a;for(o=0;o1&&s--;else break;return t.slice(0,s).join("/")+"/"+n.slice(o).join("/")}var $u;(function(i){i.pop="pop",i.push="push"})($u||($u={}));var Pu;(function(i){i.back="back",i.forward="forward",i.unknown=""})(Pu||(Pu={}));function tL(i){if(!i)if(pl){const e=document.querySelector("base");i=e&&e.getAttribute("href")||"/",i=i.replace(/^\w+:\/\/[^\/]+/,"")}else i="/";return i[0]!=="/"&&i[0]!=="#"&&(i="/"+i),KT(i)}const iL=/^[^#]+#/;function nL(i,e){return i.replace(iL,"#")+e}function rL(i,e){const t=document.documentElement.getBoundingClientRect(),n=i.getBoundingClientRect();return{behavior:e.behavior,left:n.left-t.left-(e.left||0),top:n.top-t.top-(e.top||0)}}const zg=()=>({left:window.scrollX,top:window.scrollY});function sL(i){let e;if("el"in i){const t=i.el,n=typeof t=="string"&&t.startsWith("#"),r=typeof t=="string"?n?document.getElementById(t.slice(1)):document.querySelector(t):t;if(!r)return;e=rL(r,i)}else e=i;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function G_(i,e){return(history.state?history.state.position-e:-1)+i}const tm=new Map;function oL(i,e){tm.set(i,e)}function aL(i){const e=tm.get(i);return tm.delete(i),e}let lL=()=>location.protocol+"//"+location.host;function d1(i,e){const{pathname:t,search:n,hash:r}=e,s=i.indexOf("#");if(s>-1){let a=r.includes(i.slice(s))?i.slice(s).length:1,l=r.slice(a);return l[0]!=="/"&&(l="/"+l),T_(l,"")}return T_(t,i)+n+r}function cL(i,e,t,n){let r=[],s=[],o=null;const a=({state:d})=>{const f=d1(i,location),g=t.value,p=e.value;let m=0;if(d){if(t.value=f,e.value=d,o&&o===g){o=null;return}m=p?d.position-p.position:0}else n(f);r.forEach(v=>{v(t.value,g,{delta:m,type:$u.pop,direction:m?m>0?Pu.forward:Pu.back:Pu.unknown})})};function l(){o=t.value}function c(d){r.push(d);const f=()=>{const g=r.indexOf(d);g>-1&&r.splice(g,1)};return s.push(f),f}function u(){const{history:d}=window;d.state&&d.replaceState(Ft({},d.state,{scroll:zg()}),"")}function h(){for(const d of s)d();s=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:l,listen:c,destroy:h}}function O_(i,e,t,n=!1,r=!1){return{back:i,current:e,forward:t,replaced:n,position:window.history.length,scroll:r?zg():null}}function uL(i){const{history:e,location:t}=window,n={value:d1(i,t)},r={value:e.state};r.value||s(n.value,{back:null,current:n.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function s(l,c,u){const h=i.indexOf("#"),d=h>-1?(t.host&&document.querySelector("base")?i:i.slice(h))+l:lL()+i+l;try{e[u?"replaceState":"pushState"](c,"",d),r.value=c}catch(f){console.error(f),t[u?"replace":"assign"](d)}}function o(l,c){const u=Ft({},e.state,O_(r.value.back,l,r.value.forward,!0),c,{position:r.value.position});s(l,u,!0),n.value=l}function a(l,c){const u=Ft({},r.value,e.state,{forward:l,scroll:zg()});s(u.current,u,!0);const h=Ft({},O_(n.value,l,null),{position:u.position+1},c);s(l,h,!1),n.value=l}return{location:n,state:r,push:a,replace:o}}function hL(i){i=tL(i);const e=uL(i),t=cL(i,e.state,e.location,e.replace);function n(s,o=!0){o||t.pauseListeners(),history.go(s)}const r=Ft({location:"",base:i,go:n,createHref:nL.bind(null,i)},e,t);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>e.state.value}),r}function dL(i){return typeof i=="string"||i&&typeof i=="object"}function f1(i){return typeof i=="string"||typeof i=="symbol"}const eo={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},g1=Symbol("");var D_;(function(i){i[i.aborted=4]="aborted",i[i.cancelled=8]="cancelled",i[i.duplicated=16]="duplicated"})(D_||(D_={}));function lc(i,e){return Ft(new Error,{type:i,[g1]:!0},e)}function ys(i,e){return i instanceof Error&&g1 in i&&(e==null||!!(i.type&e))}const k_="[^/]+?",fL={sensitive:!1,strict:!1,start:!0,end:!0},gL=/[.+*?^${}()[\]/\\]/g;function pL(i,e){const t=Ft({},fL,e),n=[];let r=t.start?"^":"";const s=[];for(const c of i){const u=c.length?[]:[90];t.strict&&!c.length&&(r+="/");for(let h=0;he.length?e.length===1&&e[0]===80?1:-1:0}function vL(i,e){let t=0;const n=i.score,r=e.score;for(;t0&&e[e.length-1]<0}const yL={type:0,value:""},AL=/[a-zA-Z0-9_]/;function _L(i){if(!i)return[[]];if(i==="/")return[[yL]];if(!i.startsWith("/"))throw new Error(`Invalid path "${i}"`);function e(f){throw new Error(`ERR (${t})/"${c}": ${f}`)}let t=0,n=t;const r=[];let s;function o(){s&&r.push(s),s=[]}let a=0,l,c="",u="";function h(){c&&(t===0?s.push({type:0,value:c}):t===1||t===2||t===3?(s.length>1&&(l==="*"||l==="+")&&e(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:c,regexp:u,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):e("Invalid state to consume buffer"),c="")}function d(){c+=l}for(;a{o(y)}:xu}function o(u){if(f1(u)){const h=n.get(u);h&&(n.delete(u),t.splice(t.indexOf(h),1),h.children.forEach(o),h.alias.forEach(o))}else{const h=t.indexOf(u);h>-1&&(t.splice(h,1),u.record.name&&n.delete(u.record.name),u.children.forEach(o),u.alias.forEach(o))}}function a(){return t}function l(u){let h=0;for(;h=0&&(u.record.path!==t[h].record.path||!p1(u,t[h]));)h++;t.splice(h,0,u),u.record.name&&!U_(u)&&n.set(u.record.name,u)}function c(u,h){let d,f={},g,p;if("name"in u&&u.name){if(d=n.get(u.name),!d)throw lc(1,{location:u});p=d.record.name,f=Ft(N_(h.params,d.keys.filter(y=>!y.optional).concat(d.parent?d.parent.keys.filter(y=>y.optional):[]).map(y=>y.name)),u.params&&N_(u.params,d.keys.map(y=>y.name))),g=d.stringify(f)}else if(u.path!=null)g=u.path,d=t.find(y=>y.re.test(g)),d&&(f=d.parse(g),p=d.record.name);else{if(d=h.name?n.get(h.name):t.find(y=>y.re.test(h.path)),!d)throw lc(1,{location:u,currentLocation:h});p=d.record.name,f=Ft({},h.params,u.params),g=d.stringify(f)}const m=[];let v=d;for(;v;)m.unshift(v.record),v=v.parent;return{name:p,path:g,params:f,matched:m,meta:bL(m)}}return i.forEach(u=>s(u)),{addRoute:s,resolve:c,removeRoute:o,getRoutes:a,getRecordMatcher:r}}function N_(i,e){const t={};for(const n of e)n in i&&(t[n]=i[n]);return t}function EL(i){return{path:i.path,redirect:i.redirect,name:i.name,meta:i.meta||{},aliasOf:void 0,beforeEnter:i.beforeEnter,props:wL(i),children:i.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in i?i.components||null:i.component&&{default:i.component}}}function wL(i){const e={},t=i.props||!1;if("component"in i)e.default=t;else for(const n in i.components)e[n]=typeof t=="object"?t[n]:t;return e}function U_(i){for(;i;){if(i.record.aliasOf)return!0;i=i.parent}return!1}function bL(i){return i.reduce((e,t)=>Ft(e,t.meta),{})}function B_(i,e){const t={};for(const n in i)t[n]=n in e?e[n]:i[n];return t}function p1(i,e){return e.children.some(t=>t===i||p1(i,t))}function SL(i){const e={};if(i===""||i==="?")return e;const n=(i[0]==="?"?i.slice(1):i).split("&");for(let r=0;rs&&em(s)):[n&&em(n)]).forEach(s=>{s!==void 0&&(e+=(e.length?"&":"")+t,s!=null&&(e+="="+s))})}return e}function xL(i){const e={};for(const t in i){const n=i[t];n!==void 0&&(e[t]=Br(n)?n.map(r=>r==null?null:""+r):n==null?n:""+n)}return e}const PL=Symbol(""),z_=Symbol(""),wv=Symbol(""),bv=Symbol(""),im=Symbol("");function Kc(){let i=[];function e(n){return i.push(n),()=>{const r=i.indexOf(n);r>-1&&i.splice(r,1)}}function t(){i=[]}return{add:e,list:()=>i.slice(),reset:t}}function lo(i,e,t,n,r,s=o=>o()){const o=n&&(n.enterCallbacks[r]=n.enterCallbacks[r]||[]);return()=>new Promise((a,l)=>{const c=d=>{d===!1?l(lc(4,{from:t,to:e})):d instanceof Error?l(d):dL(d)?l(lc(2,{from:e,to:d})):(o&&n.enterCallbacks[r]===o&&typeof d=="function"&&o.push(d),a())},u=s(()=>i.call(n&&n.instances[r],e,t,c));let h=Promise.resolve(u);i.length<3&&(h=h.then(c)),h.catch(d=>l(d))})}function k0(i,e,t,n,r=s=>s()){const s=[];for(const o of i)for(const a in o.components){let l=o.components[a];if(!(e!=="beforeRouteEnter"&&!o.instances[a]))if(ML(l)){const u=(l.__vccOpts||l)[e];u&&s.push(lo(u,t,n,o,a,r))}else{let c=l();s.push(()=>c.then(u=>{if(!u)return Promise.reject(new Error(`Couldn't resolve component "${a}" at "${o.path}"`));const h=DT(u)?u.default:u;o.components[a]=h;const f=(h.__vccOpts||h)[e];return f&&lo(f,t,n,o,a,r)()}))}}return s}function ML(i){return typeof i=="object"||"displayName"in i||"props"in i||"__vccOpts"in i}function V_(i){const e=Vn(wv),t=Vn(bv),n=Se(()=>e.resolve(Nt(i.to))),r=Se(()=>{const{matched:l}=n.value,{length:c}=l,u=l[c-1],h=t.matched;if(!u||!h.length)return-1;const d=h.findIndex(ac.bind(null,u));if(d>-1)return d;const f=W_(l[c-2]);return c>1&&W_(u)===f&&h[h.length-1].path!==f?h.findIndex(ac.bind(null,l[c-2])):d}),s=Se(()=>r.value>-1&&GL(t.params,n.value.params)),o=Se(()=>r.value>-1&&r.value===t.matched.length-1&&h1(t.params,n.value.params));function a(l={}){return LL(l)?e[Nt(i.replace)?"replace":"push"](Nt(i.to)).catch(xu):Promise.resolve()}return{route:n,href:Se(()=>n.value.href),isActive:s,isExactActive:o,navigate:a}}const RL=Ut({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:V_,setup(i,{slots:e}){const t=rc(V_(i)),{options:n}=Vn(wv),r=Se(()=>({[Y_(i.activeClass,n.linkActiveClass,"router-link-active")]:t.isActive,[Y_(i.exactActiveClass,n.linkExactActiveClass,"router-link-exact-active")]:t.isExactActive}));return()=>{const s=e.default&&e.default(t);return i.custom?s:wu("a",{"aria-current":t.isExactActive?i.ariaCurrentValue:null,href:t.href,onClick:t.navigate,class:r.value},s)}}}),TL=RL;function LL(i){if(!(i.metaKey||i.altKey||i.ctrlKey||i.shiftKey)&&!i.defaultPrevented&&!(i.button!==void 0&&i.button!==0)){if(i.currentTarget&&i.currentTarget.getAttribute){const e=i.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return i.preventDefault&&i.preventDefault(),!0}}function GL(i,e){for(const t in e){const n=e[t],r=i[t];if(typeof n=="string"){if(n!==r)return!1}else if(!Br(r)||r.length!==n.length||n.some((s,o)=>s!==r[o]))return!1}return!0}function W_(i){return i?i.aliasOf?i.aliasOf.path:i.path:""}const Y_=(i,e,t)=>i??e??t,OL=Ut({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(i,{attrs:e,slots:t}){const n=Vn(im),r=Se(()=>i.route||n.value),s=Vn(z_,0),o=Se(()=>{let c=Nt(s);const{matched:u}=r.value;let h;for(;(h=u[c])&&!h.components;)c++;return c}),a=Se(()=>r.value.matched[o.value]);Iu(z_,Se(()=>o.value+1)),Iu(PL,a),Iu(im,r);const l=Si();return bo(()=>[l.value,a.value,i.name],([c,u,h],[d,f,g])=>{u&&(u.instances[h]=c,f&&f!==u&&c&&c===d&&(u.leaveGuards.size||(u.leaveGuards=f.leaveGuards),u.updateGuards.size||(u.updateGuards=f.updateGuards))),c&&u&&(!f||!ac(u,f)||!d)&&(u.enterCallbacks[h]||[]).forEach(p=>p(c))},{flush:"post"}),()=>{const c=r.value,u=i.name,h=a.value,d=h&&h.components[u];if(!d)return H_(t.default,{Component:d,route:c});const f=h.props[u],g=f?f===!0?c.params:typeof f=="function"?f(c):f:null,m=wu(d,Ft({},g,e,{onVnodeUnmounted:v=>{v.component.isUnmounted&&(h.instances[u]=null)},ref:l}));return H_(t.default,{Component:m,route:c})||m}}});function H_(i,e){if(!i)return null;const t=i(e);return t.length===1?t[0]:t}const DL=OL;function kL(i){const e=IL(i.routes,i),t=i.parseQuery||SL,n=i.stringifyQuery||j_,r=i.history,s=Kc(),o=Kc(),a=Kc(),l=wP(eo);let c=eo;pl&&i.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=O0.bind(null,z=>""+z),h=O0.bind(null,XT),d=O0.bind(null,Qu);function f(z,oe){let ne,Y;return f1(z)?(ne=e.getRecordMatcher(z),Y=oe):Y=z,e.addRoute(Y,ne)}function g(z){const oe=e.getRecordMatcher(z);oe&&e.removeRoute(oe)}function p(){return e.getRoutes().map(z=>z.record)}function m(z){return!!e.getRecordMatcher(z)}function v(z,oe){if(oe=Ft({},oe||l.value),typeof z=="string"){const M=D0(t,z,oe.path),G=e.resolve({path:M.path},oe),W=r.createHref(M.fullPath);return Ft(M,G,{params:d(G.params),hash:Qu(M.hash),redirectedFrom:void 0,href:W})}let ne;if(z.path!=null)ne=Ft({},z,{path:D0(t,z.path,oe.path).path});else{const M=Ft({},z.params);for(const G in M)M[G]==null&&delete M[G];ne=Ft({},z,{params:h(M)}),oe.params=h(oe.params)}const Y=e.resolve(ne,oe),Pe=z.hash||"";Y.params=u(d(Y.params));const tt=JT(n,Ft({},z,{hash:YT(Pe),path:Y.path})),E=r.createHref(tt);return Ft({fullPath:tt,hash:Pe,query:n===j_?xL(z.query):z.query||{}},Y,{redirectedFrom:void 0,href:E})}function y(z){return typeof z=="string"?D0(t,z,l.value.path):Ft({},z)}function A(z,oe){if(c!==z)return lc(8,{from:oe,to:z})}function _(z){return b(z)}function C(z){return _(Ft(y(z),{replace:!0}))}function I(z){const oe=z.matched[z.matched.length-1];if(oe&&oe.redirect){const{redirect:ne}=oe;let Y=typeof ne=="function"?ne(z):ne;return typeof Y=="string"&&(Y=Y.includes("?")||Y.includes("#")?Y=y(Y):{path:Y},Y.params={}),Ft({query:z.query,hash:z.hash,params:Y.path!=null?{}:z.params},Y)}}function b(z,oe){const ne=c=v(z),Y=l.value,Pe=z.state,tt=z.force,E=z.replace===!0,M=I(ne);if(M)return b(Ft(y(M),{state:typeof M=="object"?Ft({},Pe,M.state):Pe,force:tt,replace:E}),oe||ne);const G=ne;G.redirectedFrom=oe;let W;return!tt&&QT(n,Y,ne)&&(W=lc(16,{to:G,from:Y}),Ae(Y,Y,!0,!1)),(W?Promise.resolve(W):P(G,Y)).catch(X=>ys(X)?ys(X,2)?X:j(X):V(X,G,Y)).then(X=>{if(X){if(ys(X,2))return b(Ft({replace:E},y(X.to),{state:typeof X.to=="object"?Ft({},Pe,X.to.state):Pe,force:tt}),oe||G)}else X=x(G,Y,!0,E,Pe);return w(G,Y,X),X})}function S(z,oe){const ne=A(z,oe);return ne?Promise.reject(ne):Promise.resolve()}function R(z){const oe=Ce.values().next().value;return oe&&typeof oe.runWithContext=="function"?oe.runWithContext(z):z()}function P(z,oe){let ne;const[Y,Pe,tt]=FL(z,oe);ne=k0(Y.reverse(),"beforeRouteLeave",z,oe);for(const M of Y)M.leaveGuards.forEach(G=>{ne.push(lo(G,z,oe))});const E=S.bind(null,z,oe);return ne.push(E),Ie(ne).then(()=>{ne=[];for(const M of s.list())ne.push(lo(M,z,oe));return ne.push(E),Ie(ne)}).then(()=>{ne=k0(Pe,"beforeRouteUpdate",z,oe);for(const M of Pe)M.updateGuards.forEach(G=>{ne.push(lo(G,z,oe))});return ne.push(E),Ie(ne)}).then(()=>{ne=[];for(const M of tt)if(M.beforeEnter)if(Br(M.beforeEnter))for(const G of M.beforeEnter)ne.push(lo(G,z,oe));else ne.push(lo(M.beforeEnter,z,oe));return ne.push(E),Ie(ne)}).then(()=>(z.matched.forEach(M=>M.enterCallbacks={}),ne=k0(tt,"beforeRouteEnter",z,oe,R),ne.push(E),Ie(ne))).then(()=>{ne=[];for(const M of o.list())ne.push(lo(M,z,oe));return ne.push(E),Ie(ne)}).catch(M=>ys(M,8)?M:Promise.reject(M))}function w(z,oe,ne){a.list().forEach(Y=>R(()=>Y(z,oe,ne)))}function x(z,oe,ne,Y,Pe){const tt=A(z,oe);if(tt)return tt;const E=oe===eo,M=pl?history.state:{};ne&&(Y||E?r.replace(z.fullPath,Ft({scroll:E&&M&&M.scroll},Pe)):r.push(z.fullPath,Pe)),l.value=z,Ae(z,oe,ne,E),j()}let D;function k(){D||(D=r.listen((z,oe,ne)=>{if(!pe.listening)return;const Y=v(z),Pe=I(Y);if(Pe){b(Ft(Pe,{replace:!0}),Y).catch(xu);return}c=Y;const tt=l.value;pl&&oL(G_(tt.fullPath,ne.delta),zg()),P(Y,tt).catch(E=>ys(E,12)?E:ys(E,2)?(b(E.to,Y).then(M=>{ys(M,20)&&!ne.delta&&ne.type===$u.pop&&r.go(-1,!1)}).catch(xu),Promise.reject()):(ne.delta&&r.go(-ne.delta,!1),V(E,Y,tt))).then(E=>{E=E||x(Y,tt,!1),E&&(ne.delta&&!ys(E,8)?r.go(-ne.delta,!1):ne.type===$u.pop&&ys(E,20)&&r.go(-1,!1)),w(Y,tt,E)}).catch(xu)}))}let O=Kc(),N=Kc(),B;function V(z,oe,ne){j(z);const Y=N.list();return Y.length?Y.forEach(Pe=>Pe(z,oe,ne)):console.error(z),Promise.reject(z)}function se(){return B&&l.value!==eo?Promise.resolve():new Promise((z,oe)=>{O.add([z,oe])})}function j(z){return B||(B=!z,k(),O.list().forEach(([oe,ne])=>z?ne(z):oe()),O.reset()),z}function Ae(z,oe,ne,Y){const{scrollBehavior:Pe}=i;if(!pl||!Pe)return Promise.resolve();const tt=!ne&&aL(G_(z.fullPath,0))||(Y||!ne)&&history.state&&history.state.scroll||null;return wE().then(()=>Pe(z,oe,tt)).then(E=>E&&sL(E)).catch(E=>V(E,z,oe))}const q=z=>r.go(z);let Te;const Ce=new Set,pe={currentRoute:l,listening:!0,addRoute:f,removeRoute:g,hasRoute:m,getRoutes:p,resolve:v,options:i,push:_,replace:C,go:q,back:()=>q(-1),forward:()=>q(1),beforeEach:s.add,beforeResolve:o.add,afterEach:a.add,onError:N.add,isReady:se,install(z){const oe=this;z.component("RouterLink",TL),z.component("RouterView",DL),z.config.globalProperties.$router=oe,Object.defineProperty(z.config.globalProperties,"$route",{enumerable:!0,get:()=>Nt(l)}),pl&&!Te&&l.value===eo&&(Te=!0,_(r.location).catch(Pe=>{}));const ne={};for(const Pe in eo)Object.defineProperty(ne,Pe,{get:()=>l.value[Pe],enumerable:!0});z.provide(wv,oe),z.provide(bv,pE(ne)),z.provide(im,l);const Y=z.unmount;Ce.add(z),z.unmount=function(){Ce.delete(z),Ce.size<1&&(c=eo,D&&D(),D=null,l.value=eo,Te=!1,B=!1),Y()}}};function Ie(z){return z.reduce((oe,ne)=>oe.then(()=>R(ne)),Promise.resolve())}return pe}function FL(i,e){const t=[],n=[],r=[],s=Math.max(e.matched.length,i.matched.length);for(let o=0;oac(c,a))?n.push(a):t.push(a));const l=i.matched[o];l&&(e.matched.find(c=>ac(c,l))||r.push(l))}return[t,n,r]}function NL(){return Vn(bv)}const UL="Carte.gouv.fr",q_="Portail Cartographique",BL="partiellement conforme",jL="/mentions-legales",zL="/donnees-personnelles",VL="/cookies",WL="/a11y-conformite",YL="Cartes.gouv.fr est développé par l’Institut national de l’information géographique et forestière (IGN) et ses partenaires. Le site s’appuie sur la Géoplateforme, la nouvelle infrastructure publique, ouverte et collaborative des données géographiques.",HL="/",qL=Ut({__name:"App",setup(i){AR();const e=["Ministère","des Cartes"],t=[{label:q_,to:"/",icon:"ri-arrow-right-line",iconRight:!0},{label:"Accueil",to:"/accueil",icon:"ri-arrow-right-line",iconRight:!0},{label:"Catalogue",to:"/catalogue",icon:"ri-arrow-right-line",iconRight:!0},{label:"Se Connecter",to:"/login",icon:"fa-user-circle"}],n=Si(""),r=[{label:"Before",to:"/before"}],s=[{label:"After",to:"/after"},{label:"Paramètres d’affichage",button:!0,class:"fr-icon-theme-fill fr-link--icon-left fr-px-2v",to:"/settings"}],o=void 0,a=void 0,l=void 0,c=void 0,u=[{label:"legifrance.gouv.fr",href:"https://legifrance.gouv.fr"},{label:"gouvernement.fr",href:"https://gouvernement.fr"},{label:"service-public.fr",href:"https://service-public.fr"},{label:"data.gouv.fr",href:"https://data.gouv.fr"}],h=NL(),d=[{title:"Commencer avec cartes.gouv",get active(){return["Documentation Géoplateforme","Questions fréquanetes","Nous écrire"].includes(h.name)},links:[{href:"",text:"Documentation Géoplateforme"},{href:"",text:"Questions fréquanetes"},{href:"",text:"Nous écrire"}]},{to:{href:""},text:"Actualités"},{to:{href:""},text:"A propos"}];return(f,g)=>{const p=OT,m=O2,v=Ph("router-view"),y=QR;return de(),Ge(Kt,null,[dt(m,{modelValue:Nt(n),"onUpdate:modelValue":g[0]||(g[0]=A=>vn(n)?n.value=A:null),"service-title":UL,"service-description":q_,"logo-text":e,"quick-links":t,"show-search":""},{default:zn(()=>[dt(p,{"nav-items":d})]),_:1},8,["modelValue"]),Oe("div",null,[dt(v)]),dt(y,{"before-mandatory-links":r,"after-mandatory-links":s,"a11y-compliance":BL,"logo-text":e,"legal-link":jL,"personal-data-link":zL,"cookies-link":VL,"a11y-compliance-link":WL,"desc-text":YL,"home-link":HL,"licence-text":Nt(o),"licence-to":Nt(a),"licence-name":Nt(l),"licence-link-props":Nt(c),"ecosystem-links":u},null,8,["licence-text","licence-to","licence-name","licence-link-props"])],64)}}}),ze={CHANGE:"change",ERROR:"error",BLUR:"blur",CLEAR:"clear",CONTEXTMENU:"contextmenu",CLICK:"click",DBLCLICK:"dblclick",DRAGENTER:"dragenter",DRAGOVER:"dragover",DROP:"drop",FOCUS:"focus",KEYDOWN:"keydown",KEYPRESS:"keypress",LOAD:"load",RESIZE:"resize",TOUCHMOVE:"touchmove",WHEEL:"wheel"};class Sv{constructor(){this.disposed=!1}dispose(){this.disposed||(this.disposed=!0,this.disposeInternal())}disposeInternal(){}}class fr{constructor(e){this.propagationStopped,this.defaultPrevented,this.type=e,this.target=null}preventDefault(){this.defaultPrevented=!0}stopPropagation(){this.propagationStopped=!0}}function XL(i,e,t){let n,r;t=t||Oo;let s=0,o=i.length,a=!1;for(;s>1),r=+t(i[n],e),r<0?s=n+1:(o=n,a=!r);return a?s:~s}function Oo(i,e){return i>e?1:i0?r-1:r}return n-1}if(t>0){for(let r=1;r0||t&&o===0)})}function Do(){return!0}function xc(){return!1}function cc(){}function m1(i){let e=!1,t,n,r;return function(){const s=Array.prototype.slice.call(arguments);return(!e||this!==r||!Hs(s,n))&&(e=!0,r=this,n=s,t=i.apply(this,arguments)),t}}function eh(i){function e(){let t;try{t=i()}catch(n){return Promise.reject(n)}return t instanceof Promise?t:Promise.resolve(t)}return e()}function Pc(i){for(const e in i)delete i[e]}function ko(i){let e;for(e in i)return!1;return!e}class Gh extends Sv{constructor(e){super(),this.eventTarget_=e,this.pendingRemovals_=null,this.dispatching_=null,this.listeners_=null}addEventListener(e,t){if(!e||!t)return;const n=this.listeners_||(this.listeners_={}),r=n[e]||(n[e]=[]);r.includes(t)||r.push(t)}dispatchEvent(e){const t=typeof e=="string",n=t?e:e.type,r=this.listeners_&&this.listeners_[n];if(!r)return;const s=t?new fr(e):e;s.target||(s.target=this.eventTarget_||this);const o=this.dispatching_||(this.dispatching_={}),a=this.pendingRemovals_||(this.pendingRemovals_={});n in o||(o[n]=0,a[n]=0),++o[n];let l;for(let c=0,u=r.length;c0:!1}removeEventListener(e,t){if(!this.listeners_)return;const n=this.listeners_[e];if(!n)return;const r=n.indexOf(t);r!==-1&&(this.pendingRemovals_&&e in this.pendingRemovals_?(n[r]=cc,++this.pendingRemovals_[e]):(n.splice(r,1),n.length===0&&delete this.listeners_[e]))}}const ge={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4};function We(){throw new Error("Unimplemented abstract method.")}let JL=0;function ke(i){return i.ol_uid||(i.ol_uid=String(++JL))}function v1(i){return Math.pow(i,3)}function Mc(i){return 1-v1(1-i)}function QL(i){return 3*i*i-2*i*i*i}function $L(i){return i}class Wg extends Gh{constructor(e,t,n){super(),n=n||{},this.tileCoord=e,this.state=t,this.interimTile=null,this.key="",this.transition_=n.transition===void 0?250:n.transition,this.transitionStarts_={},this.interpolate=!!n.interpolate}changed(){this.dispatchEvent(ze.CHANGE)}release(){this.state===ge.ERROR&&this.setState(ge.EMPTY)}getKey(){return this.key+"/"+this.tileCoord}getInterimTile(){let e=this.interimTile;if(!e)return this;do{if(e.getState()==ge.LOADED)return this.transition_=0,e;e=e.interimTile}while(e);return this}refreshInterimChain(){let e=this.interimTile;if(!e)return;let t=this;do{if(e.getState()==ge.LOADED){e.interimTile=null;break}e.getState()==ge.LOADING?t=e:e.getState()==ge.IDLE?t.interimTile=e.interimTile:t=e,e=t.interimTile}while(e)}getTileCoord(){return this.tileCoord}getState(){return this.state}setState(e){if(this.state!==ge.ERROR&&this.state>e)throw new Error("Tile load sequence violation");this.state=e,this.changed()}load(){We()}getAlpha(e,t){if(!this.transition_)return 1;let n=this.transitionStarts_[e];if(!n)n=t,this.transitionStarts_[e]=n;else if(n===-1)return 1;const r=t-n+1e3/60;return r>=this.transition_?1:v1(r/this.transition_)}inTransition(e){return this.transition_?this.transitionStarts_[e]!==-1:!1}endTransition(e){this.transition_&&(this.transitionStarts_[e]=-1)}}const Fo=typeof navigator<"u"&&typeof navigator.userAgent<"u"?navigator.userAgent.toLowerCase():"",eG=Fo.includes("firefox"),tG=Fo.includes("safari")&&!Fo.includes("chrom");tG&&(Fo.includes("version/15.4")||/cpu (os|iphone os) 15_4 like mac os x/.test(Fo));const iG=Fo.includes("webkit")&&!Fo.includes("edge"),y1=Fo.includes("macintosh"),A1=typeof devicePixelRatio<"u"?devicePixelRatio:1,xv=typeof WorkerGlobalScope<"u"&&typeof OffscreenCanvas<"u"&&self instanceof WorkerGlobalScope,Pv=typeof Image<"u"&&Image.prototype.decode,nG=typeof createImageBitmap=="function",_1=function(){let i=!1;try{const e=Object.defineProperty({},"passive",{get:function(){i=!0}});window.addEventListener("_",null,e),window.removeEventListener("_",null,e)}catch{}return i}();function yn(i,e,t,n){let r;return t&&t.length?r=t.shift():xv?r=new OffscreenCanvas(i||300,e||300):r=document.createElement("canvas"),i&&(r.width=i),e&&(r.height=e),r.getContext("2d",n)}function Oh(i){const e=i.canvas;e.width=1,e.height=1,i.clearRect(0,0,1,1)}function rG(i){let e=i.offsetWidth;const t=getComputedStyle(i);return e+=parseInt(t.marginLeft,10)+parseInt(t.marginRight,10),e}function sG(i){let e=i.offsetHeight;const t=getComputedStyle(i);return e+=parseInt(t.marginTop,10)+parseInt(t.marginBottom,10),e}function If(i,e){const t=e.parentNode;t&&t.replaceChild(i,e)}function Ef(i){return i&&i.parentNode?i.parentNode.removeChild(i):null}function C1(i){for(;i.lastChild;)i.removeChild(i.lastChild)}function oG(i,e){const t=i.childNodes;for(let n=0;;++n){const r=t[n],s=e[n];if(!r&&!s)break;if(r!==s){if(!r){i.appendChild(s);continue}if(!s){i.removeChild(r),--n;continue}i.insertBefore(s,r)}}}const Ye={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4};function ht(i,e,t,n,r){if(n&&n!==i&&(t=t.bind(n)),r){const o=t;t=function(){i.removeEventListener(e,t),o.apply(this,arguments)}}const s={target:i,type:e,listener:t};return i.addEventListener(e,t),s}function th(i,e,t,n){return ht(i,e,t,n,!0)}function zt(i){i&&i.target&&(i.target.removeEventListener(i.type,i.listener),Pc(i))}class I1 extends Gh{constructor(e,t,n,r){super(),this.extent=e,this.pixelRatio_=n,this.resolution=t,this.state=typeof r=="function"?Ye.IDLE:r,this.image_=null,this.loader=typeof r=="function"?r:null}changed(){this.dispatchEvent(ze.CHANGE)}getExtent(){return this.extent}getImage(){return this.image_}getPixelRatio(){return this.pixelRatio_}getResolution(){return this.resolution}getState(){return this.state}load(){if(this.state==Ye.IDLE&&this.loader){this.state=Ye.LOADING,this.changed();const e=this.getResolution(),t=Array.isArray(e)?e[0]:e;eh(()=>this.loader(this.getExtent(),t,this.getPixelRatio())).then(n=>{"image"in n&&(this.image_=n.image),"extent"in n&&(this.extent=n.extent),"resolution"in n&&(this.resolution=n.resolution),"pixelRatio"in n&&(this.pixelRatio_=n.pixelRatio),(n instanceof HTMLImageElement||n instanceof ImageBitmap||n instanceof HTMLCanvasElement||n instanceof HTMLVideoElement)&&(this.image_=n),this.state=Ye.LOADED}).catch(n=>{this.state=Ye.ERROR,console.error(n)}).finally(()=>this.changed())}}setImage(e){this.image_=e}setResolution(e){this.resolution=e}}function aG(i,e,t){const n=i;let r=!0,s=!1,o=!1;const a=[th(n,ze.LOAD,function(){o=!0,s||e()})];return n.src&&Pv?(s=!0,n.decode().then(function(){r&&e()}).catch(function(l){r&&(o?e():t())})):a.push(th(n,ze.ERROR,t)),function(){r=!1,a.forEach(zt)}}function lG(i,e){return new Promise((t,n)=>{function r(){o(),t(i)}function s(){o(),n(new Error("Image load error"))}function o(){i.removeEventListener("load",r),i.removeEventListener("error",s)}i.addEventListener("load",r),i.addEventListener("error",s),e&&(i.src=e)})}function E1(i,e){return e&&(i.src=e),i.src&&Pv?new Promise((t,n)=>i.decode().then(()=>t(i)).catch(r=>i.complete&&i.width?t(i):n(r))):lG(i)}function w1(i,e){return e&&(i.src=e),i.src&&Pv&&nG?i.decode().then(()=>createImageBitmap(i)).catch(t=>{if(i.complete&&i.width)return i;throw t}):E1(i)}class b1 extends Wg{constructor(e,t,n,r,s,o){super(e,t,o),this.crossOrigin_=r,this.src_=n,this.key=n,this.image_=new Image,r!==null&&(this.image_.crossOrigin=r),this.unlisten_=null,this.tileLoadFunction_=s}getImage(){return this.image_}setImage(e){this.image_=e,this.state=ge.LOADED,this.unlistenImage_(),this.changed()}handleImageError_(){this.state=ge.ERROR,this.unlistenImage_(),this.image_=cG(),this.changed()}handleImageLoad_(){const e=this.image_;e.naturalWidth&&e.naturalHeight?this.state=ge.LOADED:this.state=ge.EMPTY,this.unlistenImage_(),this.changed()}load(){this.state==ge.ERROR&&(this.state=ge.IDLE,this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_)),this.state==ge.IDLE&&(this.state=ge.LOADING,this.changed(),this.tileLoadFunction_(this,this.src_),this.unlisten_=aG(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this)))}unlistenImage_(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)}}function cG(){const i=yn(1,1);return i.fillStyle="rgba(0,0,0,0)",i.fillRect(0,0,1,1),i.canvas}const S1=.5,Ui={UNKNOWN:0,INTERSECTING:1,ABOVE:2,RIGHT:4,BELOW:8,LEFT:16};function Fn(i){const e=Yn();for(let t=0,n=i.length;tr&&(l=l|Ui.RIGHT),as&&(l=l|Ui.ABOVE),l===Ui.UNKNOWN&&(l=Ui.INTERSECTING),l}function Yn(){return[1/0,1/0,-1/0,-1/0]}function us(i,e,t,n,r){return r?(r[0]=i,r[1]=e,r[2]=t,r[3]=n,r):[i,e,t,n]}function Rc(i){return us(1/0,1/0,-1/0,-1/0,i)}function Mu(i,e){const t=i[0],n=i[1];return us(t,n,t,n,e)}function Rv(i,e,t,n,r){const s=Rc(r);return M1(s,i,e,t,n)}function No(i,e){return i[0]==e[0]&&i[2]==e[2]&&i[1]==e[1]&&i[3]==e[3]}function P1(i,e){return e[0]i[2]&&(i[2]=e[2]),e[1]i[3]&&(i[3]=e[3]),i}function Ru(i,e){e[0]i[2]&&(i[2]=e[0]),e[1]i[3]&&(i[3]=e[1])}function M1(i,e,t,n,r){for(;te[0]?n[0]=i[0]:n[0]=e[0],i[1]>e[1]?n[1]=i[1]:n[1]=e[1],i[2]=e[0]&&i[1]<=e[3]&&i[3]>=e[1]}function Tc(i){return i[2]=o&&p<=l),!n&&s&Ui.RIGHT&&!(r&Ui.RIGHT)&&(m=f-(d-l)*g,n=m>=a&&m<=c),!n&&s&Ui.BELOW&&!(r&Ui.BELOW)&&(p=d-(f-a)/g,n=p>=o&&p<=l),!n&&s&Ui.LEFT&&!(r&Ui.LEFT)&&(m=f-(d-o)*g,n=m>=a&&m<=c)}return n}function Lv(i,e,t,n){if(Tc(i))return Rc(t);let r=[];if(n>1){const a=i[2]-i[0],l=i[3]-i[1];for(let c=0;c=t[2])){const r=Rt(t),o=Math.floor((n[0]-t[0])/r)*r;i[0]-=o,i[2]-=o}return i}function mG(i,e){if(e.canWrapX()){const t=e.getExtent();if(!isFinite(i[0])||!isFinite(i[2]))return[[t[0],i[1],t[2],i[3]]];R1(i,e);const n=Rt(t);if(Rt(i)>n)return[[t[0],i[1],t[2],i[3]]];if(i[0]t[2])return[[i[0],i[1],t[2],i[3]],[t[0],i[1],i[2]-n,i[3]]]}return[i]}const Ga={radians:6370997/(2*Math.PI),degrees:2*Math.PI*6370997/360,ft:.3048,m:1,"us-ft":1200/3937};let Xg=class{constructor(e){this.code_=e.code,this.units_=e.units,this.extent_=e.extent!==void 0?e.extent:null,this.worldExtent_=e.worldExtent!==void 0?e.worldExtent:null,this.axisOrientation_=e.axisOrientation!==void 0?e.axisOrientation:"enu",this.global_=e.global!==void 0?e.global:!1,this.canWrapX_=!!(this.global_&&this.extent_),this.getPointResolutionFunc_=e.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=e.metersPerUnit}canWrapX(){return this.canWrapX_}getCode(){return this.code_}getExtent(){return this.extent_}getUnits(){return this.units_}getMetersPerUnit(){return this.metersPerUnit_||Ga[this.units_]}getWorldExtent(){return this.worldExtent_}getAxisOrientation(){return this.axisOrientation_}isGlobal(){return this.global_}setGlobal(e){this.global_=e,this.canWrapX_=!!(e&&this.extent_)}getDefaultTileGrid(){return this.defaultTileGrid_}setDefaultTileGrid(e){this.defaultTileGrid_=e}setExtent(e){this.extent_=e,this.canWrapX_=!!(this.global_&&e)}setWorldExtent(e){this.worldExtent_=e}setGetPointResolution(e){this.getPointResolutionFunc_=e}getPointResolutionFunc(){return this.getPointResolutionFunc_}};const kh=6378137,bl=Math.PI*kh,vG=[-bl,-bl,bl,bl],yG=[-180,-85,180,85],cd=kh*Math.log(Math.tan(Math.PI/2));class rl extends Xg{constructor(e){super({code:e,units:"m",extent:vG,global:!0,worldExtent:yG,getPointResolution:function(t,n){return t/Math.cosh(n[1]/kh)}})}}const X_=[new rl("EPSG:3857"),new rl("EPSG:102100"),new rl("EPSG:102113"),new rl("EPSG:900913"),new rl("http://www.opengis.net/def/crs/EPSG/0/3857"),new rl("http://www.opengis.net/gml/srs/epsg.xml#3857")];function AG(i,e,t){const n=i.length;t=t>1?t:2,e===void 0&&(t>2?e=i.slice():e=new Array(n));for(let r=0;rcd?s=cd:s<-cd&&(s=-cd),e[r+1]=s}return e}function _G(i,e,t){const n=i.length;t=t>1?t:2,e===void 0&&(t>2?e=i.slice():e=new Array(n));for(let r=0;r1?(t=r,n=s):l>0&&(t+=o*l,n+=a*l)}return Rs(i,e,t,n)}function Rs(i,e,t,n){const r=t-i,s=n-e;return r*r+s*s}function SG(i){const e=i.length;for(let n=0;ns&&(s=l,r=a)}if(s===0)return null;const o=i[r];i[r]=i[n],i[n]=o;for(let a=n+1;a=0;n--){t[n]=i[n][e]/i[n][n];for(let r=n-1;r>=0;r--)i[r][e]-=i[r][n]*t[n]}return t}function xo(i){return i*Math.PI/180}function xa(i,e){const t=i%e;return t*e<0?t+e:t}function rr(i,e,t){return i+t*(e-i)}function Fh(i,e){const t=Math.pow(10,e);return Math.round(i*t)/t}function J_(i,e){return Math.round(Fh(i,e))}function Sl(i,e){return Math.floor(Fh(i,e))}function po(i,e){return Math.ceil(Fh(i,e))}function Jc(i,e,t){const n=t!==void 0?i.toFixed(t):""+i;let r=n.indexOf(".");return r=r===-1?n.length:r,r>e?n:new Array(1+e-r).join("0")+n}function Gv(i,e){const t=(""+i).split("."),n=(""+e).split(".");for(let r=0;ro)return 1;if(o>s)return-1}return 0}function xG(i,e){return i[0]+=+e[0],i[1]+=+e[1],i}function L1(i,e){const t=i[0],n=i[1],r=e[0],s=e[1],o=r[0],a=r[1],l=s[0],c=s[1],u=l-o,h=c-a,d=u===0&&h===0?0:(u*(t-o)+h*(n-a))/(u*u+h*h||0);let f,g;return d<=0?(f=o,g=a):d>=1?(f=l,g=c):(f=o+d*u,g=a+d*h),[f,g]}function Pr(i,e){let t=!0;for(let n=i.length-1;n>=0;--n)if(i[n]!=e[n]){t=!1;break}return t}function Ov(i,e){const t=Math.cos(e),n=Math.sin(e),r=i[0]*t-i[1]*n,s=i[1]*t+i[0]*n;return i[0]=r,i[1]=s,i}function PG(i,e){return i[0]*=e,i[1]*=e,i}function hc(i,e){const t=i[0]-e[0],n=i[1]-e[1];return t*t+n*n}function wf(i,e){return Math.sqrt(hc(i,e))}function MG(i,e){return hc(i,L1(i,e))}function Dv(i,e){if(e.canWrapX()){const t=Rt(e.getExtent()),n=RG(i,e,t);n&&(i[0]-=n*t)}return i}function RG(i,e,t){const n=e.getExtent();let r=0;return e.canWrapX()&&(i[0]n[2])&&(t=t||Rt(n),r=Math.floor((i[0]-n[0])/t)),r}const G1=63710088e-1;function Oa(i,e,t){t=t||G1;const n=xo(i[1]),r=xo(e[1]),s=(r-n)/2,o=xo(e[0]-i[0])/2,a=Math.sin(s)*Math.sin(s)+Math.sin(o)*Math.sin(o)*Math.cos(n)*Math.cos(r);return 2*t*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}function ud(i,e){let t=0;const n=i.length;let r=i[n-1][0],s=i[n-1][1];for(let o=0;o=a?e[s+l]:o[l]}return t}}function GG(i,e,t,n){const r=Re(i),s=Re(e);uc(r,s,Q_(t)),uc(s,r,Q_(n))}function $_(i,e){return D1(),Et(i,"EPSG:4326",e!==void 0?e:"EPSG:3857")}function $r(i,e){if(i===e)return!0;const t=i.getUnits()===e.getUnits();return(i.getCode()===e.getCode()||Zg(i,e)===kv)&&t}function Zg(i,e){const t=i.getCode(),n=e.getCode();let r=T1(t,n);return r||(r=k1),r}function Da(i,e){const t=Re(i),n=Re(e);return Zg(t,n)}function Et(i,e,t){return Da(e,t)(i,void 0,i.length)}function Ss(i,e,t,n){const r=Da(e,t);return Lv(i,r,void 0,n)}function dc(i,e){return i}function di(i,e){return am&&!Pr(i,[0,0])&&i[0]>=-180&&i[0]<=180&&i[1]>=-90&&i[1]<=90&&(am=!1,O1("Call useGeographic() from ol/proj once to work with [longitude, latitude] coordinates.")),i}function Uv(i,e){return i}function mo(i,e){return i}function OG(){lm(X_),lm(K_),LG(K_,X_,AG,_G)}OG();const DG=10,eC=.25;class F1{constructor(e,t,n,r,s,o){this.sourceProj_=e,this.targetProj_=t;let a={};const l=Da(this.targetProj_,this.sourceProj_);this.transformInv_=function(y){const A=y[0]+"/"+y[1];return a[A]||(a[A]=l(y)),a[A]},this.maxSourceExtent_=r,this.errorThresholdSquared_=s*s,this.triangles_=[],this.wrapsXInSource_=!1,this.canWrapXInSource_=this.sourceProj_.canWrapX()&&!!r&&!!this.sourceProj_.getExtent()&&Rt(r)>=Rt(this.sourceProj_.getExtent()),this.sourceWorldWidth_=this.sourceProj_.getExtent()?Rt(this.sourceProj_.getExtent()):null,this.targetWorldWidth_=this.targetProj_.getExtent()?Rt(this.targetProj_.getExtent()):null;const c=ms(n),u=qg(n),h=Dh(n),d=Hg(n),f=this.transformInv_(c),g=this.transformInv_(u),p=this.transformInv_(h),m=this.transformInv_(d),v=DG+(o?Math.max(0,Math.ceil(Math.log2(rm(n)/(o*o*256*256)))):0);if(this.addQuad_(c,u,h,d,f,g,p,m,v),this.wrapsXInSource_){let y=1/0;this.triangles_.forEach(function(A,_,C){y=Math.min(y,A.source[0][0],A.source[1][0],A.source[2][0])}),this.triangles_.forEach(A=>{if(Math.max(A.source[0][0],A.source[1][0],A.source[2][0])-y>this.sourceWorldWidth_/2){const _=[[A.source[0][0],A.source[0][1]],[A.source[1][0],A.source[1][1]],[A.source[2][0],A.source[2][1]]];_[0][0]-y>this.sourceWorldWidth_/2&&(_[0][0]-=this.sourceWorldWidth_),_[1][0]-y>this.sourceWorldWidth_/2&&(_[1][0]-=this.sourceWorldWidth_),_[2][0]-y>this.sourceWorldWidth_/2&&(_[2][0]-=this.sourceWorldWidth_);const C=Math.min(_[0][0],_[1][0],_[2][0]);Math.max(_[0][0],_[1][0],_[2][0])-C.5&&h<1;let g=!1;if(c>0){if(this.targetProj_.isGlobal()&&this.targetWorldWidth_){const m=Fn([e,t,n,r]);g=Rt(m)/this.targetWorldWidth_>eC||g}!f&&this.sourceProj_.isGlobal()&&h&&(g=h>eC||g)}if(!g&&this.maxSourceExtent_&&isFinite(u[0])&&isFinite(u[1])&&isFinite(u[2])&&isFinite(u[3])&&!Jt(u,this.maxSourceExtent_))return;let p=0;if(!g&&(!isFinite(s[0])||!isFinite(s[1])||!isFinite(o[0])||!isFinite(o[1])||!isFinite(a[0])||!isFinite(a[1])||!isFinite(l[0])||!isFinite(l[1]))){if(c>0)g=!0;else if(p=(!isFinite(s[0])||!isFinite(s[1])?8:0)+(!isFinite(o[0])||!isFinite(o[1])?4:0)+(!isFinite(a[0])||!isFinite(a[1])?2:0)+(!isFinite(l[0])||!isFinite(l[1])?1:0),p!=1&&p!=2&&p!=4&&p!=8)return}if(c>0){if(!g){const m=[(e[0]+n[0])/2,(e[1]+n[1])/2],v=this.transformInv_(m);let y;f?y=(xa(s[0],d)+xa(a[0],d))/2-xa(v[0],d):y=(s[0]+a[0])/2-v[0];const A=(s[1]+a[1])/2-v[1];g=y*y+A*A>this.errorThresholdSquared_}if(g){if(Math.abs(e[0]-n[0])<=Math.abs(e[1]-n[1])){const m=[(t[0]+n[0])/2,(t[1]+n[1])/2],v=this.transformInv_(m),y=[(r[0]+e[0])/2,(r[1]+e[1])/2],A=this.transformInv_(y);this.addQuad_(e,t,m,y,s,o,v,A,c-1),this.addQuad_(y,m,n,r,A,v,a,l,c-1)}else{const m=[(e[0]+t[0])/2,(e[1]+t[1])/2],v=this.transformInv_(m),y=[(n[0]+r[0])/2,(n[1]+r[1])/2],A=this.transformInv_(y);this.addQuad_(e,m,y,r,s,v,A,l,c-1),this.addQuad_(m,t,n,y,v,o,a,A,c-1)}return}}if(f){if(!this.canWrapXInSource_)return;this.wrapsXInSource_=!0}p&11||this.addTriangle_(e,n,r,s,a,l),p&14||this.addTriangle_(e,n,t,s,a,o),p&&(p&13||this.addTriangle_(t,r,e,o,l,s),p&7||this.addTriangle_(t,r,n,o,l,a))}calculateSourceExtent(){const e=Yn();return this.triangles_.forEach(function(t,n,r){const s=t.source;Ru(e,s[0]),Ru(e,s[1]),Ru(e,s[2])}),e}getTriangles(){return this.triangles_}}let F0;const Yl=[];function tC(i,e,t,n,r){i.beginPath(),i.moveTo(0,0),i.lineTo(e,t),i.lineTo(n,r),i.closePath(),i.save(),i.clip(),i.fillRect(0,0,Math.max(e,n)+1,Math.max(t,r)),i.restore()}function N0(i,e){return Math.abs(i[e*4]-210)>2||Math.abs(i[e*4+3]-.75*255)>2}function kG(){if(F0===void 0){const i=yn(6,6,Yl);i.globalCompositeOperation="lighter",i.fillStyle="rgba(210, 0, 0, 0.75)",tC(i,4,5,4,0),tC(i,4,5,0,5);const e=i.getImageData(0,0,3,3).data;F0=N0(e,0)||N0(e,4)||N0(e,8),Oh(i),Yl.push(i.canvas)}return F0}function nh(i,e,t,n){const r=Et(t,e,i);let s=Sf(e,n,t);const o=e.getMetersPerUnit();o!==void 0&&(s*=o);const a=i.getMetersPerUnit();a!==void 0&&(s/=a);const l=i.getExtent();if(!l||Yg(l,r)){const c=Sf(i,s,r)/s;isFinite(c)&&c>0&&(s/=c)}return s}function FG(i,e,t,n){const r=hs(t);let s=nh(i,e,r,n);return(!isFinite(s)||s<=0)&&Tv(t,function(o){return s=nh(i,e,o,n),isFinite(s)&&s>0}),s}function N1(i,e,t,n,r,s,o,a,l,c,u,h,d){const f=yn(Math.round(t*i),Math.round(t*e),Yl);if(h||(f.imageSmoothingEnabled=!1),l.length===0)return f.canvas;f.scale(t,t);function g(y){return Math.round(y*t)/t}f.globalCompositeOperation="lighter";const p=Yn();l.forEach(function(y,A,_){P1(p,y.extent)});let m;if(!d||l.length!==1||c!==0){const y=Rt(p),A=fn(p);m=yn(Math.round(t*y/n),Math.round(t*A/n),Yl),h||(m.imageSmoothingEnabled=!1);const _=t/n;l.forEach(function(C,I,b){const S=C.extent[0]-p[0],R=-(C.extent[3]-p[3]),P=Rt(C.extent),w=fn(C.extent);C.image.width>0&&C.image.height>0&&m.drawImage(C.image,c,c,C.image.width-2*c,C.image.height-2*c,S*_,R*_,P*_,w*_)})}const v=ms(o);return a.getTriangles().forEach(function(y,A,_){const C=y.source,I=y.target;let b=C[0][0],S=C[0][1],R=C[1][0],P=C[1][1],w=C[2][0],x=C[2][1];const D=g((I[0][0]-v[0])/s),k=g(-(I[0][1]-v[1])/s),O=g((I[1][0]-v[0])/s),N=g(-(I[1][1]-v[1])/s),B=g((I[2][0]-v[0])/s),V=g(-(I[2][1]-v[1])/s),se=b,j=S;b=0,S=0,R-=se,P-=j,w-=se,x-=j;const Ae=[[R,P,0,0,O-D],[w,x,0,0,B-D],[0,0,R,P,N-k],[0,0,w,x,V-k]],q=SG(Ae);if(!q)return;if(f.save(),f.beginPath(),kG()||!h){f.moveTo(O,N);const Ce=4,pe=D-O,Ie=k-N;for(let z=0;z{t&&t.getState()==ge.LOADED&&e.push({extent:this.sourceTileGrid_.getTileCoordExtent(t.tileCoord),image:t.getImage()})}),this.sourceTiles_.length=0,e.length===0)this.state=ge.ERROR;else{const t=this.wrappedTileCoord_[0],n=this.targetTileGrid_.getTileSize(t),r=typeof n=="number"?n:n[0],s=typeof n=="number"?n:n[1],o=this.targetTileGrid_.getResolution(t),a=this.sourceTileGrid_.getResolution(this.sourceZ_),l=this.targetTileGrid_.getTileCoordExtent(this.wrappedTileCoord_);this.canvas_=N1(r,s,this.pixelRatio_,a,this.sourceTileGrid_.getExtent(),o,l,this.triangulation_,e,this.gutter_,this.renderEdges_,this.interpolate),this.state=ge.LOADED}this.changed()}load(){if(this.state==ge.IDLE){this.state=ge.LOADING,this.changed();let e=0;this.sourcesListenerKeys_=[],this.sourceTiles_.forEach(t=>{const n=t.getState();if(n==ge.IDLE||n==ge.LOADING){e++;const r=ht(t,ze.CHANGE,function(s){const o=t.getState();(o==ge.LOADED||o==ge.ERROR||o==ge.EMPTY)&&(zt(r),e--,e===0&&(this.unlistenSources_(),this.reproject_()))},this);this.sourcesListenerKeys_.push(r)}}),e===0?setTimeout(this.reproject_.bind(this),0):this.sourceTiles_.forEach(function(t,n,r){t.getState()==ge.IDLE&&t.load()})}}unlistenSources_(){this.sourcesListenerKeys_.forEach(zt),this.sourcesListenerKeys_=null}release(){this.canvas_&&(Oh(this.canvas_.getContext("2d")),Yl.push(this.canvas_),this.canvas_=null),super.release()}}function vt(i,e){if(!i)throw new Error(e)}class NG{constructor(e){this.highWaterMark=e!==void 0?e:2048,this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null}canExpireCache(){return this.highWaterMark>0&&this.getCount()>this.highWaterMark}expireCache(e){for(;this.canExpireCache();)this.pop()}clear(){this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null}containsKey(e){return this.entries_.hasOwnProperty(e)}forEach(e){let t=this.oldest_;for(;t;)e(t.value_,t.key_,this),t=t.newer}get(e,t){const n=this.entries_[e];return vt(n!==void 0,"Tried to get a value for a key that does not exist in the cache"),n===this.newest_||(n===this.oldest_?(this.oldest_=this.oldest_.newer,this.oldest_.older=null):(n.newer.older=n.older,n.older.newer=n.newer),n.newer=null,n.older=this.newest_,this.newest_.newer=n,this.newest_=n),n.value_}remove(e){const t=this.entries_[e];return vt(t!==void 0,"Tried to get a value for a key that does not exist in the cache"),t===this.newest_?(this.newest_=t.older,this.newest_&&(this.newest_.newer=null)):t===this.oldest_?(this.oldest_=t.newer,this.oldest_&&(this.oldest_.older=null)):(t.newer.older=t.older,t.older.newer=t.newer),delete this.entries_[e],--this.count_,t.value_}getCount(){return this.count_}getKeys(){const e=new Array(this.count_);let t=0,n;for(n=this.newest_;n;n=n.older)e[t++]=n.key_;return e}getValues(){const e=new Array(this.count_);let t=0,n;for(n=this.newest_;n;n=n.older)e[t++]=n.value_;return e}peekLast(){return this.oldest_.value_}peekLastKey(){return this.oldest_.key_}peekFirstKey(){return this.newest_.key_}peek(e){var t;return(t=this.entries_[e])==null?void 0:t.value_}pop(){const e=this.oldest_;return delete this.entries_[e.key_],e.newer&&(e.newer.older=null),this.oldest_=e.newer,this.oldest_||(this.newest_=null),--this.count_,e.value_}replace(e,t){this.get(e),this.entries_[e].value_=t}set(e,t){vt(!(e in this.entries_),"Tried to set a value for a key that is used already");const n={key_:e,newer:null,older:this.newest_,value_:t};this.newest_?this.newest_.newer=n:this.oldest_=n,this.newest_=n,this.entries_[e]=n,++this.count_}setSize(e){this.highWaterMark=e}}function iC(i,e,t,n){return n!==void 0?(n[0]=i,n[1]=e,n[2]=t,n):[i,e,t]}function Lc(i,e,t){return i+"/"+e+"/"+t}function U1(i){return Lc(i[0],i[1],i[2])}function UG(i){const[e,t,n]=i.substring(i.lastIndexOf("/")+1,i.length).split(",").map(Number);return Lc(e,t,n)}function B1(i){return i.split("/").map(Number)}function j1(i){return(i[1]<t||t>e.getMaxZoom())return!1;const s=e.getFullTileRange(t);return s?s.containsXY(n,r):!0}class Bv extends NG{clear(){for(;this.getCount()>0;)this.pop().release();super.clear()}expireCache(e){for(;this.canExpireCache()&&!(this.peekLast().getKey()in e);)this.pop().release()}pruneExceptNewestZ(){if(this.getCount()===0)return;const e=this.peekFirstKey(),n=B1(e)[0];this.forEach(r=>{r.tileCoord[0]!==n&&(this.remove(U1(r.tileCoord)),r.release())})}}const U0={TILELOADSTART:"tileloadstart",TILELOADEND:"tileloadend",TILELOADERROR:"tileloaderror"},ka={PROPERTYCHANGE:"propertychange"};class Nh extends Gh{constructor(){super(),this.on=this.onInternal,this.once=this.onceInternal,this.un=this.unInternal,this.revision_=0}changed(){++this.revision_,this.dispatchEvent(ze.CHANGE)}getRevision(){return this.revision_}onInternal(e,t){if(Array.isArray(e)){const n=e.length,r=new Array(n);for(let s=0;sthis.maxX&&(this.maxX=e.maxX),e.minYthis.maxY&&(this.maxY=e.maxY)}getHeight(){return this.maxY-this.minY+1}getSize(){return[this.getWidth(),this.getHeight()]}getWidth(){return this.maxX-this.minX+1}intersects(e){return this.minX<=e.maxX&&this.maxX>=e.minX&&this.minY<=e.maxY&&this.maxY>=e.minY}}function sl(i,e,t,n,r){return r!==void 0?(r.minX=i,r.maxX=e,r.minY=t,r.maxY=n,r):new zv(i,e,t,n)}const z1=42,Vv=256;function V1(i,e,t,n,r){let s;for(e+=n;es&&(c-a)*(s-l)-(r-a)*(u-l)>0&&o++:u<=s&&(c-a)*(s-l)-(r-a)*(u-l)<0&&o--,a=c,l=u}return o!==0}function Wv(i,e,t,n,r,s){if(t.length===0||!Aa(i,e,t[0],n,r,s))return!1;for(let o=1,a=t.length;o=r[0]&&s[2]<=r[2]||s[1]>=r[1]&&s[3]<=r[3]?!0:V1(i,e,t,n,function(o,a){return pG(r,o,a)}):!1}function VG(i,e,t,n,r){for(let s=0,o=t.length;s0&&i[1]>0}function YG(i,e,t){return t===void 0&&(t=[0,0]),t[0]=i[0]*e+.5|0,t[1]=i[1]*e+.5|0,t}function Sn(i,e){return Array.isArray(i)?i:(e===void 0?e=[i,i]:(e[0]=i,e[1]=i),e)}const ol=[0,0,0],to=5;class HG{constructor(e){this.minZoom=e.minZoom!==void 0?e.minZoom:0,this.resolutions_=e.resolutions,vt(KL(this.resolutions_,(r,s)=>s-r,!0),"`resolutions` must be sorted in descending order");let t;if(!e.origins){for(let r=0,s=this.resolutions_.length-1;r{const o=new zv(Math.min(0,r[0]),Math.max(r[0]-1,-1),Math.min(0,r[1]),Math.max(r[1]-1,-1));if(n){const a=this.getTileRangeForExtentAndZ(n,s);o.minX=Math.max(a.minX,o.minX),o.maxX=Math.min(a.maxX,o.maxX),o.minY=Math.max(a.minY,o.minY),o.maxY=Math.min(a.maxY,o.maxY)}return o}):n&&this.calculateTileRanges_(n)}forEachTileCoord(e,t,n){const r=this.getTileRangeForExtentAndZ(e,t);for(let s=r.minX,o=r.maxX;s<=o;++s)for(let a=r.minY,l=r.maxY;a<=l;++a)n([t,s,a])}forEachTileCoordParentTileRange(e,t,n,r){let s,o,a,l=null,c=e[0]-1;for(this.zoomFactor_===2?(o=e[1],a=e[2]):l=this.getTileCoordExtent(e,r);c>=this.minZoom;){if(o!==void 0&&a!==void 0?(o=Math.floor(o/2),a=Math.floor(a/2),s=sl(o,o,a,a,n)):s=this.getTileRangeForExtentAndZ(l,c,n),t(c,s))return!0;--c}return!1}getExtent(){return this.extent_}getMaxZoom(){return this.maxZoom}getMinZoom(){return this.minZoom}getOrigin(e){return this.origin_?this.origin_:this.origins_[e]}getResolution(e){return this.resolutions_[e]}getResolutions(){return this.resolutions_}getTileCoordChildTileRange(e,t,n){if(e[0]this.maxZoom||t0?n:Math.max(s/t[0],r/t[1]);const o=e+1,a=new Array(o);for(let l=0;ln.highWaterMark&&(n.highWaterMark=e)}useTile(e,t,n,r){}}class QG extends fr{constructor(e,t){super(e),this.tile=t}}function $G(i,e){const t=/\{z\}/g,n=/\{x\}/g,r=/\{y\}/g,s=/\{-y\}/g;return function(o,a,l){if(o)return i.replace(t,o[0].toString()).replace(n,o[1].toString()).replace(r,o[2].toString()).replace(s,function(){const c=o[0],u=e.getFullTileRange(c);if(!u)throw new Error("The {-y} placeholder requires a tile grid with extent");return(u.getHeight()-o[2]-1).toString()})}}function Z1(i,e){const t=i.length,n=new Array(t);for(let r=0;rthis.getTileInternal(m,v,y,A,o),this.reprojectionErrorThreshold_,this.renderReprojectionEdges_,this.tileOptions);return p.key=h,c?(p.interimTile=c,p.refreshInterimChain(),a.replace(u,p)):a.set(u,p),p}getTileInternal(e,t,n,r,s){let o=null;const a=Lc(e,t,n),l=this.getKey();if(!this.tileCache.containsKey(a))o=this.createTile_(e,t,n,r,s,l),this.tileCache.set(a,o);else if(o=this.tileCache.get(a),o.key!=l){const c=o;o=this.createTile_(e,t,n,r,s,l),c.getState()==ge.IDLE?o.interimTile=c.interimTile:o.interimTile=c,o.refreshInterimChain(),this.tileCache.replace(a,o)}return o}setRenderReprojectionEdges(e){if(this.renderReprojectionEdges_!=e){this.renderReprojectionEdges_=e;for(const t in this.tileCacheForProjection)this.tileCacheForProjection[t].clear();this.changed()}}setTileGridForProjection(e,t){const n=Re(e);if(n){const r=ke(n);r in this.tileGridForProjection||(this.tileGridForProjection[r]=t)}}clear(){super.clear();for(const e in this.tileCacheForProjection)this.tileCacheForProjection[e].clear()}}function eO(i,e){i.getImage().src=e}class tO extends $g{constructor(e){e=e||{};const t=e.projection!==void 0?e.projection:"EPSG:3857",n=e.tileGrid!==void 0?e.tileGrid:Jg({extent:Uh(t),maxResolution:e.maxResolution,maxZoom:e.maxZoom,minZoom:e.minZoom,tileSize:e.tileSize});super({attributions:e.attributions,cacheSize:e.cacheSize,crossOrigin:e.crossOrigin,interpolate:e.interpolate,opaque:e.opaque,projection:t,reprojectionErrorThreshold:e.reprojectionErrorThreshold,tileGrid:n,tileLoadFunction:e.tileLoadFunction,tilePixelRatio:e.tilePixelRatio,tileUrlFunction:e.tileUrlFunction,url:e.url,urls:e.urls,wrapX:e.wrapX!==void 0?e.wrapX:!0,transition:e.transition,attributionsCollapsible:e.attributionsCollapsible,zDirection:e.zDirection}),this.gutter_=e.gutter!==void 0?e.gutter:0}getGutter(){return this.gutter_}}const iO='© OpenStreetMap contributors.';class K1 extends tO{constructor(e){e=e||{};let t;e.attributions!==void 0?t=e.attributions:t=[iO];const n=e.crossOrigin!==void 0?e.crossOrigin:"anonymous",r=e.url!==void 0?e.url:"https://tile.openstreetmap.org/{z}/{x}/{y}.png";super({attributions:t,attributionsCollapsible:!1,cacheSize:e.cacheSize,crossOrigin:n,interpolate:e.interpolate,maxZoom:e.maxZoom!==void 0?e.maxZoom:19,opaque:e.opaque!==void 0?e.opaque:!0,reprojectionErrorThreshold:e.reprojectionErrorThreshold,tileLoadFunction:e.tileLoadFunction,transition:e.transition,url:r,wrapX:e.wrapX,zDirection:e.zDirection})}}const kt={OPACITY:"opacity",VISIBLE:"visible",EXTENT:"extent",Z_INDEX:"zIndex",MAX_RESOLUTION:"maxResolution",MIN_RESOLUTION:"minResolution",MAX_ZOOM:"maxZoom",MIN_ZOOM:"minZoom",SOURCE:"source",MAP:"map"};class J1 extends zr{constructor(e){super(),this.on,this.once,this.un,this.background_=e.background;const t=Object.assign({},e);typeof e.properties=="object"&&(delete t.properties,Object.assign(t,e.properties)),t[kt.OPACITY]=e.opacity!==void 0?e.opacity:1,vt(typeof t[kt.OPACITY]=="number","Layer opacity must be a number"),t[kt.VISIBLE]=e.visible!==void 0?e.visible:!0,t[kt.Z_INDEX]=e.zIndex,t[kt.MAX_RESOLUTION]=e.maxResolution!==void 0?e.maxResolution:1/0,t[kt.MIN_RESOLUTION]=e.minResolution!==void 0?e.minResolution:0,t[kt.MIN_ZOOM]=e.minZoom!==void 0?e.minZoom:-1/0,t[kt.MAX_ZOOM]=e.maxZoom!==void 0?e.maxZoom:1/0,this.className_=t.className!==void 0?t.className:"ol-layer",delete t.className,this.setProperties(t),this.state_=null}getBackground(){return this.background_}getClassName(){return this.className_}getLayerState(e){const t=this.state_||{layer:this,managed:e===void 0?!0:e},n=this.getZIndex();return t.opacity=mi(Math.round(this.getOpacity()*100)/100,0,1),t.visible=this.getVisible(),t.extent=this.getExtent(),t.zIndex=n===void 0&&!t.managed?1/0:n,t.maxResolution=this.getMaxResolution(),t.minResolution=Math.max(this.getMinResolution(),0),t.minZoom=this.getMinZoom(),t.maxZoom=this.getMaxZoom(),this.state_=t,t}getLayersArray(e){return We()}getLayerStatesArray(e){return We()}getExtent(){return this.get(kt.EXTENT)}getMaxResolution(){return this.get(kt.MAX_RESOLUTION)}getMinResolution(){return this.get(kt.MIN_RESOLUTION)}getMinZoom(){return this.get(kt.MIN_ZOOM)}getMaxZoom(){return this.get(kt.MAX_ZOOM)}getOpacity(){return this.get(kt.OPACITY)}getSourceState(){return We()}getVisible(){return this.get(kt.VISIBLE)}getZIndex(){return this.get(kt.Z_INDEX)}setBackground(e){this.background_=e,this.changed()}setExtent(e){this.set(kt.EXTENT,e)}setMaxResolution(e){this.set(kt.MAX_RESOLUTION,e)}setMinResolution(e){this.set(kt.MIN_RESOLUTION,e)}setMaxZoom(e){this.set(kt.MAX_ZOOM,e)}setMinZoom(e){this.set(kt.MIN_ZOOM,e)}setOpacity(e){vt(typeof e=="number","Layer opacity must be a number"),this.set(kt.OPACITY,e)}setVisible(e){this.set(kt.VISIBLE,e)}setZIndex(e){this.set(kt.Z_INDEX,e)}disposeInternal(){this.state_&&(this.state_.layer=null,this.state_=null),super.disposeInternal()}}const rs={PRERENDER:"prerender",POSTRENDER:"postrender",PRECOMPOSE:"precompose",POSTCOMPOSE:"postcompose",RENDERCOMPLETE:"rendercomplete"},ai={ANIMATING:0,INTERACTING:1},$n={CENTER:"center",RESOLUTION:"resolution",ROTATION:"rotation"};function oC(i,e,t){return function(n,r,s,o,a){if(!n)return;if(!r&&!e)return n;const l=e?0:s[0]*r,c=e?0:s[1]*r,u=a?a[0]:0,h=a?a[1]:0;let d=i[0]+l/2+u,f=i[2]-l/2+u,g=i[1]+c/2+h,p=i[3]-c/2+h;d>f&&(d=(f+d)/2,f=d),g>p&&(g=(p+g)/2,p=g);let m=mi(n[0],d,f),v=mi(n[1],g,p);if(o&&t&&r){const y=30*r;m+=-y*Math.log(1+Math.max(0,d-n[0])/y)+y*Math.log(1+Math.max(0,n[0]-f)/y),v+=-y*Math.log(1+Math.max(0,g-n[1])/y)+y*Math.log(1+Math.max(0,n[1]-p)/y)}return[m,v]}}function nO(i){return i}function Hv(i,e,t,n){const r=Rt(e)/t[0],s=fn(e)/t[1];return n?Math.min(i,Math.max(r,s)):Math.min(i,Math.min(r,s))}function qv(i,e,t){let n=Math.min(i,e);const r=50;return n*=Math.log(1+r*Math.max(0,i/e-1))/r+1,t&&(n=Math.max(n,t),n/=Math.log(1+r*Math.max(0,t/i-1))/r+1),mi(n,t/2,e*2)}function rO(i,e,t,n){return e=e!==void 0?e:!0,function(r,s,o,a){if(r!==void 0){const l=i[0],c=i[i.length-1],u=t?Hv(l,t,o,n):l;if(a)return e?qv(r,u,c):mi(r,c,u);const h=Math.min(u,r),d=Math.floor(Vg(i,h,s));return i[d]>u&&d{if(!n)return this.getSimplifiedGeometry(t);const r=this.clone();return r.applyTransform(n),r.getSimplifiedGeometry(t)})}simplifyTransformed(e,t){return this.simplifyTransformedInternal(this.getRevision(),e,t)}clone(){return We()}closestPointXY(e,t,n,r){return We()}containsXY(e,t){const n=this.getClosestPoint([e,t]);return n[0]===e&&n[1]===t}getClosestPoint(e,t){return t=t||[NaN,NaN],this.closestPointXY(e[0],e[1],t,1/0),t}intersectsCoordinate(e){return this.containsXY(e[0],e[1])}computeExtent(e){return We()}getExtent(e){if(this.extentRevision_!=this.getRevision()){const t=this.computeExtent(this.extent_);(isNaN(t[0])||isNaN(t[1]))&&Rc(t),this.extentRevision_=this.getRevision()}return fG(this.extent_,e)}rotate(e,t){We()}scale(e,t,n){We()}simplify(e){return this.getSimplifiedGeometry(e*e)}getSimplifiedGeometry(e){return We()}getType(){return We()}applyTransform(e){We()}intersectsExtent(e){return We()}translate(e,t){We()}transform(e,t){const n=Re(e),r=n.getUnits()=="tile-pixels"?function(s,o,a){const l=n.getExtent(),c=n.getWorldExtent(),u=fn(c)/fn(l);return Ns(hC,c[0],c[3],u,-u,0,0,0),Po(s,0,s.length,a,hC,o),Da(n,t)(s,o,a)}:Da(n,t);return this.applyTransform(r),this}}class Ho extends ew{constructor(){super(),this.layout="XY",this.stride=2,this.flatCoordinates}computeExtent(e){return Rv(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,e)}getCoordinates(){return We()}getFirstCoordinate(){return this.flatCoordinates.slice(0,this.stride)}getFlatCoordinates(){return this.flatCoordinates}getLastCoordinate(){return this.flatCoordinates.slice(this.flatCoordinates.length-this.stride)}getLayout(){return this.layout}getSimplifiedGeometry(e){if(this.simplifiedGeometryRevision!==this.getRevision()&&(this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),e<0||this.simplifiedGeometryMaxMinSquaredTolerance!==0&&e<=this.simplifiedGeometryMaxMinSquaredTolerance)return this;const t=this.getSimplifiedGeometryInternal(e);return t.getFlatCoordinates().length1)h=t;else if(d>0){for(let f=0;fr&&(r=c),s=a,o=l}return r}function $v(i,e,t,n,r){for(let s=0,o=t.length;s0;){const h=c.pop(),d=c.pop();let f=0;const g=i[d],p=i[d+1],m=i[h],v=i[h+1];for(let y=d+n;yf&&(u=y,f=C)}f>r&&(l[(u-e)/n]=1,d+n0&&p>f)&&(g<0&&m0&&m>g)){c=h,u=d;continue}s[o++]=c,s[o++]=u,a=c,l=u,c=h,u=d}return s[o++]=c,s[o++]=u,o}function iy(i,e,t,n,r,s,o,a){for(let l=0,c=t.length;lv&&(c=(u+h)/2,Wv(i,e,t,n,c,g)&&(m=c,v=y)),u=h}return isNaN(m)&&(m=r[s]),o?(o.push(m,g,v),o):[m,g,v]}function aw(i,e,t,n,r){let s=[];for(let o=0,a=t.length;o0}function sy(i,e,t,n,r){r=r!==void 0?r:!1;for(let s=0,o=t.length;s1&&typeof arguments[t-1]=="function"&&(n=arguments[t-1],--t);let r=0;for(;r0}getInteracting(){return this.hints_[ai.INTERACTING]>0}cancelAnimations(){this.setHint(ai.ANIMATING,-this.hints_[ai.ANIMATING]);let e;for(let t=0,n=this.animations_.length;t=0;--n){const r=this.animations_[n];let s=!0;for(let o=0,a=r.length;o0?c/l.duration:1;u>=1?(l.complete=!0,u=1):s=!1;const h=l.easing(u);if(l.sourceCenter){const d=l.sourceCenter[0],f=l.sourceCenter[1],g=l.targetCenter[0],p=l.targetCenter[1];this.nextCenter_=l.targetCenter;const m=d+h*(g-d),v=f+h*(p-f);this.targetCenter_=[m,v]}if(l.sourceResolution&&l.targetResolution){const d=h===1?l.targetResolution:l.sourceResolution+h*(l.targetResolution-l.sourceResolution);if(l.anchor){const f=this.getViewportSize_(this.getRotation()),g=this.constraints_.resolution(d,0,f,!0);this.targetCenter_=this.calculateCenterZoom(g,l.anchor)}this.nextResolution_=l.targetResolution,this.targetResolution_=d,this.applyTargetState_(!0)}if(l.sourceRotation!==void 0&&l.targetRotation!==void 0){const d=h===1?xa(l.targetRotation+Math.PI,2*Math.PI)-Math.PI:l.sourceRotation+h*(l.targetRotation-l.sourceRotation);if(l.anchor){const f=this.constraints_.rotation(d,!0);this.targetCenter_=this.calculateCenterRotate(f,l.anchor)}this.nextRotation_=l.targetRotation,this.targetRotation_=d}if(this.applyTargetState_(!0),t=!0,!l.complete)break}if(s){this.animations_[n]=null,this.setHint(ai.ANIMATING,-1),this.nextCenter_=null,this.nextResolution_=NaN,this.nextRotation_=NaN;const o=r[0].callback;o&&hd(o,!0)}}this.animations_=this.animations_.filter(Boolean),t&&this.updateAnimationKey_===void 0&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_.bind(this)))}calculateCenterRotate(e,t){let n;const r=this.getCenterInternal();return r!==void 0&&(n=[r[0]-t[0],r[1]-t[1]],Ov(n,e-this.getRotation()),xG(n,t)),n}calculateCenterZoom(e,t){let n;const r=this.getCenterInternal(),s=this.getResolution();if(r!==void 0&&s!==void 0){const o=t[0]-e*(t[0]-r[0])/s,a=t[1]-e*(t[1]-r[1])/s;n=[o,a]}return n}getViewportSize_(e){const t=this.viewportSize_;if(e){const n=t[0],r=t[1];return[Math.abs(n*Math.cos(e))+Math.abs(r*Math.sin(e)),Math.abs(n*Math.sin(e))+Math.abs(r*Math.cos(e))]}return t}setViewportSize(e){this.viewportSize_=Array.isArray(e)?e.slice():[100,100],this.getAnimating()||this.resolveConstraints(0)}getCenter(){const e=this.getCenterInternal();return e&&dc(e,this.getProjection())}getCenterInternal(){return this.get($n.CENTER)}getConstraints(){return this.constraints_}getConstrainResolution(){return this.get("constrainResolution")}getHints(e){return e!==void 0?(e[0]=this.hints_[0],e[1]=this.hints_[1],e):this.hints_.slice()}calculateExtent(e){const t=this.calculateExtentInternal(e);return Uv(t,this.getProjection())}calculateExtentInternal(e){e=e||this.getViewportSizeMinusPadding_();const t=this.getCenterInternal();vt(t,"The view center is not defined");const n=this.getResolution();vt(n!==void 0,"The view resolution is not defined");const r=this.getRotation();return vt(r!==void 0,"The view rotation is not defined"),ih(t,n,r,e)}getMaxResolution(){return this.maxResolution_}getMinResolution(){return this.minResolution_}getMaxZoom(){return this.getZoomForResolution(this.minResolution_)}setMaxZoom(e){this.applyOptions_(this.getUpdatedOptions_({maxZoom:e}))}getMinZoom(){return this.getZoomForResolution(this.maxResolution_)}setMinZoom(e){this.applyOptions_(this.getUpdatedOptions_({minZoom:e}))}setConstrainResolution(e){this.applyOptions_(this.getUpdatedOptions_({constrainResolution:e}))}getProjection(){return this.projection_}getResolution(){return this.get($n.RESOLUTION)}getResolutions(){return this.resolutions_}getResolutionForExtent(e,t){return this.getResolutionForExtentInternal(mo(e,this.getProjection()),t)}getResolutionForExtentInternal(e,t){t=t||this.getViewportSizeMinusPadding_();const n=Rt(e)/t[0],r=fn(e)/t[1];return Math.max(n,r)}getResolutionForValueFunction(e){e=e||2;const t=this.getConstrainedResolution(this.maxResolution_),n=this.minResolution_,r=Math.log(t/n)/Math.log(e);return function(s){return t/Math.pow(e,s*r)}}getRotation(){return this.get($n.ROTATION)}getValueForResolutionFunction(e){const t=Math.log(e||2),n=this.getConstrainedResolution(this.maxResolution_),r=this.minResolution_,s=Math.log(n/r)/t;return function(o){return Math.log(n/o)/t/s}}getViewportSizeMinusPadding_(e){let t=this.getViewportSize_(e);const n=this.padding_;return n&&(t=[t[0]-n[1]-n[3],t[1]-n[0]-n[2]]),t}getState(){const e=this.getProjection(),t=this.getResolution(),n=this.getRotation();let r=this.getCenterInternal();const s=this.padding_;if(s){const o=this.getViewportSizeMinusPadding_();r=z0(r,this.getViewportSize_(),[o[0]/2+s[3],o[1]/2+s[0]],t,n)}return{center:r.slice(0),projection:e!==void 0?e:null,resolution:t,nextCenter:this.nextCenter_,nextResolution:this.nextResolution_,nextRotation:this.nextRotation_,rotation:n,zoom:this.getZoom()}}getViewStateAndExtent(){return{viewState:this.getState(),extent:this.calculateExtent()}}getZoom(){let e;const t=this.getResolution();return t!==void 0&&(e=this.getZoomForResolution(t)),e}getZoomForResolution(e){let t=this.minZoom_||0,n,r;if(this.resolutions_){const s=Vg(this.resolutions_,e,1);t=s,n=this.resolutions_[s],s==this.resolutions_.length-1?r=2:r=n/this.resolutions_[s+1]}else n=this.maxResolution_,r=this.zoomFactor_;return t+Math.log(n/e)/Math.log(r)}getResolutionForZoom(e){if(this.resolutions_){if(this.resolutions_.length<=1)return 0;const t=mi(Math.floor(e),0,this.resolutions_.length-2),n=this.resolutions_[t]/this.resolutions_[t+1];return this.resolutions_[t]/Math.pow(n,mi(e-t,0,1))}return this.maxResolution_/Math.pow(this.zoomFactor_,e-this.minZoom_)}fit(e,t){let n;if(vt(Array.isArray(e)||typeof e.getSimplifiedGeometry=="function","Invalid extent or geometry provided as `geometry`"),Array.isArray(e)){vt(!Tc(e),"Cannot fit empty extent provided as `geometry`");const r=mo(e,this.getProjection());n=fm(r)}else if(e.getType()==="Circle"){const r=mo(e.getExtent(),this.getProjection());n=fm(r),n.rotate(this.getRotation(),hs(r))}else n=e;this.fitInternal(n,t)}rotatedExtentForGeometry(e){const t=this.getRotation(),n=Math.cos(t),r=Math.sin(-t),s=e.getFlatCoordinates(),o=e.getStride();let a=1/0,l=1/0,c=-1/0,u=-1/0;for(let h=0,d=s.length;h{this.dispatchEvent("sourceready")},0))),this.changed()}getFeatures(e){return this.renderer_?this.renderer_.getFeatures(e):Promise.resolve([])}getData(e){return!this.renderer_||!this.rendered?null:this.renderer_.getData(e)}isVisible(e){let t;const n=this.getMapInternal();!e&&n&&(e=n.getView()),e instanceof Rr?t={viewState:e.getState(),extent:e.calculateExtent()}:t=e,!t.layerStatesArray&&n&&(t.layerStatesArray=n.getLayerGroup().getLayerStatesArray());let r;t.layerStatesArray?r=t.layerStatesArray.find(o=>o.layer===this):r=this.getLayerState();const s=this.getExtent();return oy(r,t.viewState)&&(!s||Jt(s,t.extent))}getAttributions(e){if(!this.isVisible(e))return[];let t;const n=this.getSource();if(n&&(t=n.getAttributions()),!t)return[];const r=e instanceof Rr?e.getViewStateAndExtent():e;let s=t(r);return Array.isArray(s)||(s=[s]),s}render(e,t){const n=this.getRenderer();return n.prepareFrame(e)?(this.rendered=!0,n.renderFrame(e,t)):null}unrender(){this.rendered=!1}setMapInternal(e){e||this.unrender(),this.set(kt.MAP,e)}getMapInternal(){return this.get(kt.MAP)}setMap(e){this.mapPrecomposeKey_&&(zt(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),e||this.changed(),this.mapRenderKey_&&(zt(this.mapRenderKey_),this.mapRenderKey_=null),e&&(this.mapPrecomposeKey_=ht(e,rs.PRECOMPOSE,function(t){const r=t.frameState.layerStatesArray,s=this.getLayerState(!1);vt(!r.some(function(o){return o.layer===s.layer}),"A layer can only be added to the map once. Use either `layer.setMap()` or `map.addLayer()`, not both."),r.push(s)},this),this.mapRenderKey_=ht(this,ze.CHANGE,e.render,e),this.changed())}setSource(e){this.set(kt.SOURCE,e)}getRenderer(){return this.renderer_||(this.renderer_=this.createRenderer()),this.renderer_}hasRenderer(){return!!this.renderer_}createRenderer(){return null}disposeInternal(){this.renderer_&&(this.renderer_.dispose(),delete this.renderer_),this.setSource(null),super.disposeInternal()}};function oy(i,e){if(!i.visible)return!1;const t=e.resolution;if(t=i.maxResolution)return!1;const n=e.zoom;return n>i.minZoom&&n<=i.maxZoom}const yo={PRELOAD:"preload",USE_INTERIM_TILES_ON_ERROR:"useInterimTilesOnError"};class bO extends n0{constructor(e){e=e||{};const t=Object.assign({},e);delete t.preload,delete t.useInterimTilesOnError,super(t),this.on,this.once,this.un,this.setPreload(e.preload!==void 0?e.preload:0),this.setUseInterimTilesOnError(e.useInterimTilesOnError!==void 0?e.useInterimTilesOnError:!0)}getPreload(){return this.get(yo.PRELOAD)}setPreload(e){this.set(yo.PRELOAD,e)}getUseInterimTilesOnError(){return this.get(yo.USE_INTERIM_TILES_ON_ERROR)}setUseInterimTilesOnError(e){this.set(yo.USE_INTERIM_TILES_ON_ERROR,e)}getData(e){return super.getData(e)}}class SO extends Nh{constructor(e){super(),this.ready=!0,this.boundHandleImageChange_=this.handleImageChange_.bind(this),this.layer_=e,this.declutterExecutorGroup=null}getFeatures(e){return We()}getData(e){return null}prepareFrame(e){return We()}renderFrame(e,t){return We()}loadedTileCallback(e,t,n){e[t]||(e[t]={}),e[t][n.tileCoord.toString()]=n}createLoadedTileFinder(e,t,n){return(r,s)=>{const o=this.loadedTileCallback.bind(this,n,r);return e.forEachLoadedTile(t,r,s,o)}}forEachFeatureAtCoordinate(e,t,n,r,s){}getLayer(){return this.layer_}handleFontsChanged(){}handleImageChange_(e){const t=e.target;(t.getState()===Ye.LOADED||t.getState()===Ye.ERROR)&&this.renderIfReadyAndVisible()}loadImage(e){let t=e.getState();return t!=Ye.LOADED&&t!=Ye.ERROR&&e.addEventListener(ze.CHANGE,this.boundHandleImageChange_),t==Ye.IDLE&&(e.load(),t=e.getState()),t==Ye.LOADED}renderIfReadyAndVisible(){const e=this.getLayer();e&&e.getVisible()&&e.getSourceState()==="ready"&&e.changed()}disposeInternal(){delete this.layer_,super.disposeInternal()}}class uw extends fr{constructor(e,t,n,r){super(e),this.inversePixelTransform=t,this.frameState=n,this.context=r}}const sh={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]};var Zi={name:"xyz",min:[0,0,0],channel:["X","Y","Z"],alias:["XYZ","ciexyz","cie1931"]};Zi.whitepoint={2:{A:[109.85,100,35.585],C:[98.074,100,118.232],D50:[96.422,100,82.521],D55:[95.682,100,92.149],D65:[95.045592705167,100,108.9057750759878],D75:[94.972,100,122.638],F2:[99.187,100,67.395],F7:[95.044,100,108.755],F11:[100.966,100,64.37],E:[100,100,100]},10:{A:[111.144,100,35.2],C:[97.285,100,116.145],D50:[96.72,100,81.427],D55:[95.799,100,90.926],D65:[94.811,100,107.304],D75:[94.416,100,120.641],F2:[103.28,100,69.026],F7:[95.792,100,107.687],F11:[103.866,100,65.627],E:[100,100,100]}};Zi.max=Zi.whitepoint[2].D65;Zi.rgb=function(i,e){e=e||Zi.whitepoint[2].E;var t=i[0]/e[0],n=i[1]/e[1],r=i[2]/e[2],s,o,a;return s=t*3.240969941904521+n*-1.537383177570093+r*-.498610760293,o=t*-.96924363628087+n*1.87596750150772+r*.041555057407175,a=t*.055630079696993+n*-.20397695888897+r*1.056971514242878,s=s>.0031308?1.055*Math.pow(s,1/2.4)-.055:s=s*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o=o*12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a=a*12.92,s=Math.min(Math.max(0,s),1),o=Math.min(Math.max(0,o),1),a=Math.min(Math.max(0,a),1),[s*255,o*255,a*255]};sh.xyz=function(i,e){var t=i[0]/255,n=i[1]/255,r=i[2]/255;t=t>.04045?Math.pow((t+.055)/1.055,2.4):t/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92;var s=t*.41239079926595+n*.35758433938387+r*.18048078840183,o=t*.21263900587151+n*.71516867876775+r*.072192315360733,a=t*.019330818715591+n*.11919477979462+r*.95053215224966;return e=e||Zi.whitepoint[2].E,[s*e[0],o*e[1],a*e[2]]};const ay={name:"luv",min:[0,-134,-140],max:[100,224,122],channel:["lightness","u","v"],alias:["LUV","cieluv","cie1976"],xyz:function(i,e,t){var n,r,s,o,a,l,c,u,h,d,f,g,p;if(s=i[0],o=i[1],a=i[2],s===0)return[0,0,0];var m=.0011070564598794539;return e=e||"D65",t=t||2,h=Zi.whitepoint[t][e][0],d=Zi.whitepoint[t][e][1],f=Zi.whitepoint[t][e][2],g=4*h/(h+15*d+3*f),p=9*d/(h+15*d+3*f),n=o/(13*s)+g||0,r=a/(13*s)+p||0,c=s>8?d*Math.pow((s+16)/116,3):d*s*m,l=c*9*n/(4*r)||0,u=c*(12-3*n-20*r)/(4*r)||0,[l,c,u]}};Zi.luv=function(i,e,t){var n,r,s,o,a,l,c,u,h,d,f,g,p,m=.008856451679035631,v=903.2962962962961;e=e||"D65",t=t||2,h=Zi.whitepoint[t][e][0],d=Zi.whitepoint[t][e][1],f=Zi.whitepoint[t][e][2],g=4*h/(h+15*d+3*f),p=9*d/(h+15*d+3*f),l=i[0],c=i[1],u=i[2],n=4*l/(l+15*c+3*u)||0,r=9*c/(l+15*c+3*u)||0;var y=c/d;return s=y<=m?v*y:116*Math.pow(y,1/3)-16,o=13*s*(n-g),a=13*s*(r-p),[s,o,a]};var hw={name:"lchuv",channel:["lightness","chroma","hue"],alias:["LCHuv","cielchuv"],min:[0,0,0],max:[100,100,360],luv:function(i){var e=i[0],t=i[1],n=i[2],r,s,o;return o=n/360*2*Math.PI,r=t*Math.cos(o),s=t*Math.sin(o),[e,r,s]},xyz:function(i){return ay.xyz(hw.luv(i))}};ay.lchuv=function(i){var e=i[0],t=i[1],n=i[2],r=Math.sqrt(t*t+n*n),s=Math.atan2(n,t),o=s*360/2/Math.PI;return o<0&&(o+=360),[e,r,o]};Zi.lchuv=function(i){return ay.lchuv(Zi.luv(i))};const fC={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};var gC={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function xO(i){var u,h;var e,t=[],n=1,r;if(typeof i=="number")return{space:"rgb",values:[i>>>16,(i&65280)>>>8,i&255],alpha:1};if(typeof i=="number")return{space:"rgb",values:[i>>>16,(i&65280)>>>8,i&255],alpha:1};if(i=String(i).toLowerCase(),fC[i])t=fC[i].slice(),r="rgb";else if(i==="transparent")n=0,r="rgb",t=[0,0,0];else if(i[0]==="#"){var s=i.slice(1),o=s.length,a=o<=4;n=1,a?(t=[parseInt(s[0]+s[0],16),parseInt(s[1]+s[1],16),parseInt(s[2]+s[2],16)],o===4&&(n=parseInt(s[3]+s[3],16)/255)):(t=[parseInt(s[0]+s[1],16),parseInt(s[2]+s[3],16),parseInt(s[4]+s[5],16)],o===8&&(n=parseInt(s[6]+s[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),r="rgb"}else if(e=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(i)){var l=e[1];r=l.replace(/a$/,"");var c=r==="cmyk"?4:r==="gray"?1:3;t=e[2].trim().split(/\s*[,\/]\s*|\s+/),r==="color"&&(r=t.shift()),t=t.map(function(d,f){if(d[d.length-1]==="%")return d=parseFloat(d)/100,f===3?d:r==="rgb"?d*255:r[0]==="h"||r[0]==="l"&&!f?d*100:r==="lab"?d*125:r==="lch"?f<2?d*150:d*360:r[0]==="o"&&!f?d:r==="oklab"?d*.4:r==="oklch"?f<2?d*.4:d*360:d;if(r[f]==="h"||f===2&&r[r.length-1]==="h"){if(gC[d]!==void 0)return gC[d];if(d.endsWith("deg"))return parseFloat(d);if(d.endsWith("turn"))return parseFloat(d)*360;if(d.endsWith("grad"))return parseFloat(d)*360/400;if(d.endsWith("rad"))return parseFloat(d)*180/Math.PI}return d==="none"?0:parseFloat(d)}),n=t.length>c?t.pop():1}else/[0-9](?:\s|\/|,)/.test(i)&&(t=i.match(/([0-9]+)/g).map(function(d){return parseFloat(d)}),r=((h=(u=i.match(/([a-z])/ig))==null?void 0:u.join(""))==null?void 0:h.toLowerCase())||"rgb");return{space:r,values:t,alpha:n}}const V0={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(i){var e=i[0]/360,t=i[1]/100,n=i[2]/100,r,s,o,a,l,c=0;if(t===0)return l=n*255,[l,l,l];for(s=n<.5?n*(1+t):n+t-n*t,r=2*n-s,a=[0,0,0];c<3;)o=e+1/3*-(c-1),o<0?o++:o>1&&o--,l=6*o<1?r+(s-r)*6*o:2*o<1?s:3*o<2?r+(s-r)*(2/3-o)*6:r,a[c++]=l*255;return a}};sh.hsl=function(i){var e=i[0]/255,t=i[1]/255,n=i[2]/255,r=Math.min(e,t,n),s=Math.max(e,t,n),o=s-r,a,l,c;return s===r?a=0:e===s?a=(t-n)/o:t===s?a=2+(n-e)/o:n===s&&(a=4+(e-t)/o),a=Math.min(a*60,360),a<0&&(a+=360),c=(r+s)/2,s===r?l=0:c<=.5?l=o/(s+r):l=o/(2-s-r),[a,l*100,c*100]};function PO(i){Array.isArray(i)&&i.raw&&(i=String.raw(...arguments)),i instanceof Number&&(i=+i);var e,t=xO(i);if(!t.space)return[];const n=t.space[0]==="h"?V0.min:sh.min,r=t.space[0]==="h"?V0.max:sh.max;return e=Array(3),e[0]=Math.min(Math.max(t.values[0],n[0]),r[0]),e[1]=Math.min(Math.max(t.values[1],n[1]),r[1]),e[2]=Math.min(Math.max(t.values[2],n[2]),r[2]),t.space[0]==="h"&&(e=V0.rgb(e)),e.push(Math.min(Math.max(t.alpha,0),1)),e}function dw(i){return typeof i=="string"?i:gw(i)}const MO=1024,Qc={};let W0=0;function RO(i){if(i.length===4)return i;const e=i.slice();return e[3]=1,e}function pC(i){const e=Zi.lchuv(sh.xyz(i));return e[3]=i[3],e}function TO(i){const e=Zi.rgb(hw.xyz(i));return e[3]=i[3],e}function ly(i){if(Qc.hasOwnProperty(i))return Qc[i];if(W0>=MO){let t=0;for(const n in Qc)t++&3||(delete Qc[n],--W0)}const e=PO(i);if(e.length!==4)throw new Error('Failed to parse "'+i+'" as color');for(const t of e)if(isNaN(t))throw new Error('Failed to parse "'+i+'" as color');return fw(e),Qc[i]=e,++W0,e}function oh(i){return Array.isArray(i)?i:ly(i)}function fw(i){return i[0]=mi(i[0]+.5|0,0,255),i[1]=mi(i[1]+.5|0,0,255),i[2]=mi(i[2]+.5|0,0,255),i[3]=mi(i[3],0,1),i}function gw(i){let e=i[0];e!=(e|0)&&(e=e+.5|0);let t=i[1];t!=(t|0)&&(t=t+.5|0);let n=i[2];n!=(n|0)&&(n=n+.5|0);const r=i[3]===void 0?1:Math.round(i[3]*100)/100;return"rgba("+e+","+t+","+n+","+r+")"}function LO(i){try{return ly(i),!0}catch{return!1}}const mC=[];let ml=null;function GO(){ml=yn(1,1,void 0,{willReadFrequently:!0})}class pw extends SO{constructor(e){super(e),this.container=null,this.renderedResolution,this.tempTransform=Ir(),this.pixelTransform=Ir(),this.inversePixelTransform=Ir(),this.context=null,this.containerReused=!1,this.pixelContext_=null,this.frameState=null}getImageData(e,t,n){ml||GO(),ml.clearRect(0,0,1,1);let r;try{ml.drawImage(e,t,n,1,1,0,0,1,1),r=ml.getImageData(0,0,1,1).data}catch{return ml=null,null}return r}getBackground(e){let n=this.getLayer().getBackground();return typeof n=="function"&&(n=n(e.viewState.resolution)),n||void 0}useContainer(e,t,n){const r=this.getLayer().getClassName();let s,o;if(e&&e.className===r&&(!n||e&&e.style.backgroundColor&&Hs(oh(e.style.backgroundColor),oh(n)))){const a=e.firstElementChild;a instanceof HTMLCanvasElement&&(o=a.getContext("2d"))}if(o&&o.canvas.style.transform===t?(this.container=e,this.context=o,this.containerReused=!0):this.containerReused?(this.container=null,this.context=null,this.containerReused=!1):this.container&&(this.container.style.backgroundColor=null),!this.container){s=document.createElement("div"),s.className=r;let a=s.style;a.position="absolute",a.width="100%",a.height="100%",o=yn();const l=o.canvas;s.appendChild(l),a=l.style,a.position="absolute",a.left="0",a.transformOrigin="top left",this.container=s,this.context=o}!this.containerReused&&n&&!this.container.style.backgroundColor&&(this.container.style.backgroundColor=n)}clipUnrotated(e,t,n){const r=ms(n),s=qg(n),o=Dh(n),a=Hg(n);Gi(t.coordinateToPixelTransform,r),Gi(t.coordinateToPixelTransform,s),Gi(t.coordinateToPixelTransform,o),Gi(t.coordinateToPixelTransform,a);const l=this.inversePixelTransform;Gi(l,r),Gi(l,s),Gi(l,o),Gi(l,a),e.save(),e.beginPath(),e.moveTo(Math.round(r[0]),Math.round(r[1])),e.lineTo(Math.round(s[0]),Math.round(s[1])),e.lineTo(Math.round(o[0]),Math.round(o[1])),e.lineTo(Math.round(a[0]),Math.round(a[1])),e.clip()}dispatchRenderEvent_(e,t,n){const r=this.getLayer();if(r.hasListener(e)){const s=new uw(e,this.inversePixelTransform,n,t);r.dispatchEvent(s)}}preRender(e,t){this.frameState=t,this.dispatchRenderEvent_(rs.PRERENDER,e,t)}postRender(e,t){this.dispatchRenderEvent_(rs.POSTRENDER,e,t)}getRenderTransform(e,t,n,r,s,o,a){const l=s/2,c=o/2,u=r/t,h=-u,d=-e[0]+a,f=-e[1];return Ns(this.tempTransform,l,c,u,h,-n,d,f)}disposeInternal(){delete this.frameState,super.disposeInternal()}}class mw extends pw{constructor(e){super(e),this.extentChanged=!0,this.renderedExtent_=null,this.renderedPixelRatio,this.renderedProjection=null,this.renderedRevision,this.renderedTiles=[],this.newTiles_=!1,this.tmpExtent=Yn(),this.tmpTileRange_=new zv(0,0,0,0)}isDrawableTile(e){const t=this.getLayer(),n=e.getState(),r=t.getUseInterimTilesOnError();return n==ge.LOADED||n==ge.EMPTY||n==ge.ERROR&&!r}getTile(e,t,n,r){const s=r.pixelRatio,o=r.viewState.projection,a=this.getLayer();let c=a.getSource().getTile(e,t,n,s,o);return c.getState()==ge.ERROR&&a.getUseInterimTilesOnError()&&a.getPreload()>0&&(this.newTiles_=!0),this.isDrawableTile(c)||(c=c.getInterimTile()),c}getData(e){const t=this.frameState;if(!t)return null;const n=this.getLayer(),r=Gi(t.pixelToCoordinateTransform,e.slice()),s=n.getExtent();if(s&&!Yg(s,r))return null;const o=t.pixelRatio,a=t.viewState.projection,l=t.viewState,c=n.getRenderSource(),u=c.getTileGridForProjection(l.projection),h=c.getTilePixelRatio(t.pixelRatio);for(let d=u.getZForResolution(l.resolution);d>=u.getMinZoom();--d){const f=u.getTileCoordForCoordAndZ(r,d),g=c.getTile(d,f[1],f[2],o,a);if(!(g instanceof b1||g instanceof cm)||g instanceof cm&&g.getState()===ge.EMPTY)return null;if(g.getState()!==ge.LOADED)continue;const p=u.getOrigin(d),m=Sn(u.getTileSize(d)),v=u.getResolution(d),y=Math.floor(h*((r[0]-p[0])/v-f[1]*m[0])),A=Math.floor(h*((p[1]-r[1])/v-f[2]*m[1])),_=Math.round(h*c.getGutterForProjection(l.projection));return this.getImageData(g.getImage(),y+_,A+_)}return null}loadedTileCallback(e,t,n){return this.isDrawableTile(n)?super.loadedTileCallback(e,t,n):!1}prepareFrame(e){return!!this.getLayer().getSource()}renderFrame(e,t){const n=e.layerStatesArray[e.layerIndex],r=e.viewState,s=r.projection,o=r.resolution,a=r.center,l=r.rotation,c=e.pixelRatio,u=this.getLayer(),h=u.getSource(),d=h.getRevision(),f=h.getTileGridForProjection(s),g=f.getZForResolution(o,h.zDirection),p=f.getResolution(g);let m=e.extent;const v=e.viewState.resolution,y=h.getTilePixelRatio(c),A=Math.round(Rt(m)/v*c),_=Math.round(fn(m)/v*c),C=n.extent&&mo(n.extent);C&&(m=So(m,mo(n.extent)));const I=p*A/2/y,b=p*_/2/y,S=[a[0]-I,a[1]-b,a[0]+I,a[1]+b],R=f.getTileRangeForExtentAndZ(m,g),P={};P[g]={};const w=this.createLoadedTileFinder(h,s,P),x=this.tmpExtent,D=this.tmpTileRange_;this.newTiles_=!1;const k=l?sm(r.center,v,l,e.size):void 0;for(let Te=R.minX;Te<=R.maxX;++Te)for(let Ce=R.minY;Ce<=R.maxY;++Ce){if(l&&!f.tileCoordIntersectsViewport([g,Te,Ce],k))continue;const pe=this.getTile(g,Te,Ce,e);if(this.isDrawableTile(pe)){const oe=ke(this);if(pe.getState()==ge.LOADED){P[g][pe.tileCoord.toString()]=pe;let ne=pe.inTransition(oe);ne&&n.opacity!==1&&(pe.endTransition(oe),ne=!1),!this.newTiles_&&(ne||!this.renderedTiles.includes(pe))&&(this.newTiles_=!0)}if(pe.getAlpha(oe,e.time)===1)continue}const Ie=f.getTileCoordChildTileRange(pe.tileCoord,D,x);let z=!1;Ie&&(z=w(g+1,Ie)),z||f.forEachTileCoordParentTileRange(pe.tileCoord,w,D,x)}const O=p/o*c/y;Ns(this.pixelTransform,e.size[0]/2,e.size[1]/2,1/c,1/c,l,-A/2,-_/2);const N=$1(this.pixelTransform);this.useContainer(t,N,this.getBackground(e));const B=this.context,V=B.canvas;Kv(this.inversePixelTransform,this.pixelTransform),Ns(this.tempTransform,A/2,_/2,O,O,0,-A/2,-_/2),V.width!=A||V.height!=_?(V.width=A,V.height=_):this.containerReused||B.clearRect(0,0,A,_),C&&this.clipUnrotated(B,e,C),h.getInterpolate()||(B.imageSmoothingEnabled=!1),this.preRender(B,e),this.renderedTiles.length=0;let se=Object.keys(P).map(Number);se.sort(Oo);let j,Ae,q;n.opacity===1&&(!this.containerReused||h.getOpaque(e.viewState.projection))?se=se.reverse():(j=[],Ae=[]);for(let Te=se.length-1;Te>=0;--Te){const Ce=se[Te],pe=h.getTilePixelSize(Ce,c,s),z=f.getResolution(Ce)/p,oe=pe[0]*z*O,ne=pe[1]*z*O,Y=f.getTileCoordForCoordAndZ(ms(S),Ce),Pe=f.getTileCoordExtent(Y),tt=Gi(this.tempTransform,[y*(Pe[0]-S[0])/p,y*(S[3]-Pe[3])/p]),E=y*h.getGutterForProjection(s),M=P[Ce];for(const G in M){const W=M[G],X=W.tileCoord,K=Y[1]-X[1],ie=Math.round(tt[0]-(K-1)*oe),$=Y[2]-X[2],Q=Math.round(tt[1]-($-1)*ne),Z=Math.round(tt[0]-K*oe),T=Math.round(tt[1]-$*ne),F=ie-Z,U=Q-T,H=g===Ce,te=H&&W.getAlpha(ke(this),e.time)!==1;let ee=!1;if(!te)if(j){q=[Z,T,Z+F,T,Z+F,T+U,Z,T+U];for(let ue=0,Me=j.length;ue0;)this.pop()}extend(e){for(let t=0,n=e.length;tthis.getLength())throw new Error("Index out of bounds: "+e);this.unique_&&this.assertUnique_(t),this.array_.splice(e,0,t),this.updateLength_(),this.dispatchEvent(new dd(Ii.ADD,t,e))}pop(){return this.removeAt(this.getLength()-1)}push(e){this.unique_&&this.assertUnique_(e);const t=this.getLength();return this.insertAt(t,e),this.getLength()}remove(e){const t=this.array_;for(let n=0,r=t.length;n=this.getLength())return;const t=this.array_[e];return this.array_.splice(e,1),this.updateLength_(),this.dispatchEvent(new dd(Ii.REMOVE,t,e)),t}setAt(e,t){const n=this.getLength();if(e>=n){this.insertAt(e,t);return}if(e<0)throw new Error("Index out of bounds: "+e);this.unique_&&this.assertUnique_(t,e);const r=this.array_[e];this.array_[e]=t,this.dispatchEvent(new dd(Ii.REMOVE,r,e)),this.dispatchEvent(new dd(Ii.ADD,t,e))}updateLength_(){this.set(vC.LENGTH,this.array_.length)}assertUnique_(e,t){for(let n=0,r=this.array_.length;nthis.maxCacheSize_}expire(){if(this.canExpireCache()){let e=0;for(const t in this.cache_){const n=this.cache_[t];!(e++&3)&&!n.hasListener()&&(delete this.cache_[t],--this.cacheSize_)}}}get(e,t,n){const r=yC(e,t,n);return r in this.cache_?this.cache_[r]:null}set(e,t,n,r){const s=yC(e,t,n);this.cache_[s]=r,++this.cacheSize_}setSize(e){this.maxCacheSize_=e,this.expire()}}function yC(i,e,t){const n=t?dw(t):"null";return e+":"+i+":"+n}const Mf=new OO;class DO extends Sv{constructor(e){super(),this.map_=e}dispatchRenderEvent(e,t){We()}calculateMatrices2D(e){const t=e.viewState,n=e.coordinateToPixelTransform,r=e.pixelToCoordinateTransform;Ns(n,e.size[0]/2,e.size[1]/2,1/t.resolution,-1/t.resolution,-t.rotation,-t.center[0],-t.center[1]),Kv(r,n)}forEachFeatureAtCoordinate(e,t,n,r,s,o,a,l){let c;const u=t.viewState;function h(_,C,I,b){return s.call(o,C,_?I:null,b)}const d=u.projection,f=Dv(e.slice(),d),g=[[0,0]];if(d.canWrapX()&&r){const _=d.getExtent(),C=Rt(_);g.push([-C,0],[C,0])}const p=t.layerStatesArray,m=p.length,v=[],y=[];for(let _=0;_=0;--C){const I=p[C],b=I.layer;if(b.hasRenderer()&&oy(I,u)&&a.call(l,b)){const S=b.getRenderer(),R=b.getSource();if(S&&R){const P=R.getWrapX()?f:e,w=h.bind(null,I.managed);y[0]=P[0]+g[_][0],y[1]=P[1]+g[_][1],c=S.forEachFeatureAtCoordinate(y,t,n,w,v)}if(c)return c}}if(v.length===0)return;const A=1/v.length;return v.forEach((_,C)=>_.distanceSq+=C*A),v.sort((_,C)=>_.distanceSq-C.distanceSq),v.some(_=>c=_.callback(_.feature,_.layer,_.geometry)),c}hasFeatureAtCoordinate(e,t,n,r,s,o){return this.forEachFeatureAtCoordinate(e,t,n,r,Do,this,s,o)!==void 0}getMap(){return this.map_}renderFrame(e){We()}flushDeclutterItems(e){}scheduleExpireIconCache(e){Mf.canExpireCache()&&e.postRenderFunctions.push(kO)}}function kO(i,e){Mf.expire()}const fd="ol-hidden",FO="ol-selectable",Oc="ol-unselectable",r0="ol-control",Rf="ol-collapsed",NO=new RegExp(["^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00 ))?)","(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?","(?:small|large)|medium|smaller|larger|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))","(?:\\s*\\/\\s*(normal|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])?))",`?\\s*([-,\\"\\'\\sa-z]+?)\\s*$`].join(""),"i"),AC=["style","variant","weight","size","lineHeight","family"],vw=function(i){const e=i.match(NO);if(!e)return null;const t={lineHeight:"normal",size:"1.2em",style:"normal",weight:"normal",variant:"normal"};for(let n=0,r=AC.length;nMath.max(r,Lf(i,s)),0);return t[e]=n,n}function BO(i,e){const t=[],n=[],r=[];let s=0,o=0,a=0,l=0;for(let c=0,u=e.length;c<=u;c+=2){const h=e[c];if(h===` +`||c===u){s=Math.max(s,o),r.push(o),o=0,a+=l;continue}const d=e[c+1]||i.font,f=Lf(d,h);t.push(f),o+=f;const g=UO(d);n.push(g),l=Math.max(l,g)}return{width:s,height:a,widths:t,heights:n,lineWidths:r}}function jO(i,e,t,n,r,s,o,a,l,c,u){i.save(),t!==1&&(i.globalAlpha*=t),e&&i.transform.apply(i,e),n.contextInstructions?(i.translate(l,c),i.scale(u[0],u[1]),zO(n,i)):u[0]<0||u[1]<0?(i.translate(l,c),i.scale(u[0],u[1]),i.drawImage(n,r,s,o,a,0,0,o,a)):i.drawImage(n,r,s,o,a,l,c,o*u[0],a*u[1]),i.restore()}function zO(i,e){const t=i.contextInstructions;for(let n=0,r=t.length;n=0;--n)t[n].renderDeclutter(e);t.length=0}}class co extends fr{constructor(e,t){super(e),this.layer=t}}const Y0={LAYERS:"layers"};class Dc extends J1{constructor(e){e=e||{};const t=Object.assign({},e);delete t.layers;let n=e.layers;super(t),this.on,this.once,this.un,this.layersListenerKeys_=[],this.listenerKeys_={},this.addChangeListener(Y0.LAYERS,this.handleLayersChanged_),n?Array.isArray(n)?n=new bi(n.slice(),{unique:!0}):vt(typeof n.getArray=="function","Expected `layers` to be an array or a `Collection`"):n=new bi(void 0,{unique:!0}),this.setLayers(n)}handleLayerChange_(){this.changed()}handleLayersChanged_(){this.layersListenerKeys_.forEach(zt),this.layersListenerKeys_.length=0;const e=this.getLayers();this.layersListenerKeys_.push(ht(e,Ii.ADD,this.handleLayersAdd_,this),ht(e,Ii.REMOVE,this.handleLayersRemove_,this));for(const n in this.listenerKeys_)this.listenerKeys_[n].forEach(zt);Pc(this.listenerKeys_);const t=e.getArray();for(let n=0,r=t.length;n{this.clickTimeoutId_=void 0;const n=new Es(gt.SINGLECLICK,this.map_,e);this.dispatchEvent(n)},250)}updateActivePointers_(e){const t=e,n=t.pointerId;if(t.type==gt.POINTERUP||t.type==gt.POINTERCANCEL){delete this.trackedTouches_[n];for(const r in this.trackedTouches_)if(this.trackedTouches_[r].target!==t.target){delete this.trackedTouches_[r];break}}else(t.type==gt.POINTERDOWN||t.type==gt.POINTERMOVE)&&(this.trackedTouches_[n]=t);this.activePointers_=Object.values(this.trackedTouches_)}handlePointerUp_(e){this.updateActivePointers_(e);const t=new Es(gt.POINTERUP,this.map_,e,void 0,void 0,this.activePointers_);this.dispatchEvent(t),this.emulateClicks_&&!t.defaultPrevented&&!this.dragging_&&this.isMouseActionButton_(e)&&this.emulateClick_(this.down_),this.activePointers_.length===0&&(this.dragListenerKeys_.forEach(zt),this.dragListenerKeys_.length=0,this.dragging_=!1,this.down_=null)}isMouseActionButton_(e){return e.button===0}handlePointerDown_(e){this.emulateClicks_=this.activePointers_.length===0,this.updateActivePointers_(e);const t=new Es(gt.POINTERDOWN,this.map_,e,void 0,void 0,this.activePointers_);if(this.dispatchEvent(t),this.down_=new PointerEvent(e.type,e),Object.defineProperty(this.down_,"target",{writable:!1,value:e.target}),this.dragListenerKeys_.length===0){const n=this.map_.getOwnerDocument();this.dragListenerKeys_.push(ht(n,gt.POINTERMOVE,this.handlePointerMove_,this),ht(n,gt.POINTERUP,this.handlePointerUp_,this),ht(this.element_,gt.POINTERCANCEL,this.handlePointerUp_,this)),this.element_.getRootNode&&this.element_.getRootNode()!==n&&this.dragListenerKeys_.push(ht(this.element_.getRootNode(),gt.POINTERUP,this.handlePointerUp_,this))}}handlePointerMove_(e){if(this.isMoving_(e)){this.updateActivePointers_(e),this.dragging_=!0;const t=new Es(gt.POINTERDRAG,this.map_,e,this.dragging_,void 0,this.activePointers_);this.dispatchEvent(t)}}relayMoveEvent_(e){this.originalPointerMoveEvent_=e;const t=!!(this.down_&&this.isMoving_(e));this.dispatchEvent(new Es(gt.POINTERMOVE,this.map_,e,t))}handleTouchMove_(e){const t=this.originalPointerMoveEvent_;(!t||t.defaultPrevented)&&(typeof e.cancelable!="boolean"||e.cancelable===!0)&&e.preventDefault()}isMoving_(e){return this.dragging_||Math.abs(e.clientX-this.down_.clientX)>this.moveTolerance_||Math.abs(e.clientY-this.down_.clientY)>this.moveTolerance_}disposeInternal(){this.relayedListenerKey_&&(zt(this.relayedListenerKey_),this.relayedListenerKey_=null),this.element_.removeEventListener(ze.TOUCHMOVE,this.boundHandleTouchMove_),this.pointerdownListenerKey_&&(zt(this.pointerdownListenerKey_),this.pointerdownListenerKey_=null),this.dragListenerKeys_.forEach(zt),this.dragListenerKeys_.length=0,this.element_=null,super.disposeInternal()}}const Kr={POSTRENDER:"postrender",MOVESTART:"movestart",MOVEEND:"moveend",LOADSTART:"loadstart",LOADEND:"loadend"},Ti={LAYERGROUP:"layergroup",SIZE:"size",TARGET:"target",VIEW:"view"},Gf=1/0;class YO{constructor(e,t){this.priorityFunction_=e,this.keyFunction_=t,this.elements_=[],this.priorities_=[],this.queuedElements_={}}clear(){this.elements_.length=0,this.priorities_.length=0,Pc(this.queuedElements_)}dequeue(){const e=this.elements_,t=this.priorities_,n=e[0];e.length==1?(e.length=0,t.length=0):(e[0]=e.pop(),t[0]=t.pop(),this.siftUp_(0));const r=this.keyFunction_(n);return delete this.queuedElements_[r],n}enqueue(e){vt(!(this.keyFunction_(e)in this.queuedElements_),"Tried to enqueue an `element` that was already added to the queue");const t=this.priorityFunction_(e);return t!=Gf?(this.elements_.push(e),this.priorities_.push(t),this.queuedElements_[this.keyFunction_(e)]=!0,this.siftDown_(0,this.elements_.length-1),!0):!1}getCount(){return this.elements_.length}getLeftChildIndex_(e){return e*2+1}getRightChildIndex_(e){return e*2+2}getParentIndex_(e){return e-1>>1}heapify_(){let e;for(e=(this.elements_.length>>1)-1;e>=0;e--)this.siftUp_(e)}isEmpty(){return this.elements_.length===0}isKeyQueued(e){return e in this.queuedElements_}isQueued(e){return this.isKeyQueued(this.keyFunction_(e))}siftUp_(e){const t=this.elements_,n=this.priorities_,r=t.length,s=t[e],o=n[e],a=e;for(;e>1;){const l=this.getLeftChildIndex_(e),c=this.getRightChildIndex_(e),u=ce;){const a=this.getParentIndex_(t);if(r[a]>o)n[t]=n[a],r[t]=r[a],t=a;else break}n[t]=s,r[t]=o}reprioritize(){const e=this.priorityFunction_,t=this.elements_,n=this.priorities_;let r=0;const s=t.length;let o,a,l;for(a=0;a0;)s=this.dequeue()[0],o=s.getKey(),r=s.getState(),r===ge.IDLE&&!(o in this.tilesLoadingKeys_)&&(this.tilesLoadingKeys_[o]=!0,++this.tilesLoading_,++n,s.load())}}function qO(i,e,t,n,r){if(!i||!(t in i.wantedTiles)||!i.wantedTiles[t][e.getKey()])return Gf;const s=i.viewState.center,o=n[0]-s[0],a=n[1]-s[1];return 65536*Math.log(r)+Math.sqrt(o*o+a*a)/r}class qs extends zr{constructor(e){super();const t=e.element;t&&!e.target&&!t.style.pointerEvents&&(t.style.pointerEvents="auto"),this.element=t||null,this.target_=null,this.map_=null,this.listenerKeys=[],e.render&&(this.render=e.render),e.target&&this.setTarget(e.target)}disposeInternal(){Ef(this.element),super.disposeInternal()}getMap(){return this.map_}setMap(e){this.map_&&Ef(this.element);for(let t=0,n=this.listenerKeys.length;tr.getAttributions(e)))),n=!this.getMap().getAllLayers().some(r=>r.getSource()&&r.getSource().getAttributionsCollapsible()===!1);return this.overrideCollapsible_||this.setCollapsible(n),t}updateElement_(e){if(!e){this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1);return}const t=this.collectSourceAttributions_(e),n=t.length>0;if(this.renderedVisible_!=n&&(this.element.style.display=n?"":"none",this.renderedVisible_=n),!Hs(t,this.renderedAttributions_)){C1(this.ulElement_);for(let r=0,s=t.length;r0&&n%(2*Math.PI)!==0?t.animate({rotation:0,duration:this.duration_,easing:Mc}):t.setRotation(0))}render(e){const t=e.frameState;if(!t)return;const n=t.viewState.rotation;if(n!=this.rotation_){const r="rotate("+n+"rad)";if(this.autoHide_){const s=this.element.classList.contains(fd);!s&&n===0?this.element.classList.add(fd):s&&n!==0&&this.element.classList.remove(fd)}this.label_.style.transform=r}this.rotation_=n}}const KO=ZO;class JO extends qs{constructor(e){e=e||{},super({element:document.createElement("div"),target:e.target});const t=e.className!==void 0?e.className:"ol-zoom",n=e.delta!==void 0?e.delta:1,r=e.zoomInClassName!==void 0?e.zoomInClassName:t+"-in",s=e.zoomOutClassName!==void 0?e.zoomOutClassName:t+"-out",o=e.zoomInLabel!==void 0?e.zoomInLabel:"+",a=e.zoomOutLabel!==void 0?e.zoomOutLabel:"–",l=e.zoomInTipLabel!==void 0?e.zoomInTipLabel:"Zoom in",c=e.zoomOutTipLabel!==void 0?e.zoomOutTipLabel:"Zoom out",u=document.createElement("button");u.className=r,u.setAttribute("type","button"),u.title=l,u.appendChild(typeof o=="string"?document.createTextNode(o):o),u.addEventListener(ze.CLICK,this.handleClick_.bind(this,n),!1);const h=document.createElement("button");h.className=s,h.setAttribute("type","button"),h.title=c,h.appendChild(typeof a=="string"?document.createTextNode(a):a),h.addEventListener(ze.CLICK,this.handleClick_.bind(this,-n),!1);const d=t+" "+Oc+" "+r0,f=this.element;f.className=d,f.appendChild(u),f.appendChild(h),this.duration_=e.duration!==void 0?e.duration:250}handleClick_(e,t){t.preventDefault(),this.zoomByDelta_(e)}zoomByDelta_(e){const n=this.getMap().getView();if(!n)return;const r=n.getZoom();if(r!==void 0){const s=n.getConstrainedZoom(r+e);this.duration_>0?(n.getAnimating()&&n.cancelAnimations(),n.animate({zoom:s,duration:this.duration_,easing:Mc})):n.setZoom(s)}}}const QO=JO;function $O(i){i=i||{};const e=new bi;return(i.zoom!==void 0?i.zoom:!0)&&e.push(new QO(i.zoomOptions)),(i.rotate!==void 0?i.rotate:!0)&&e.push(new KO(i.rotateOptions)),(i.attribution!==void 0?i.attribution:!0)&&e.push(new Cw(i.attributionOptions)),e}const vm={ACTIVE:"active"};class kc extends zr{constructor(e){super(),this.on,this.once,this.un,e&&e.handleEvent&&(this.handleEvent=e.handleEvent),this.map_=null,this.setActive(!0)}getActive(){return this.get(vm.ACTIVE)}getMap(){return this.map_}handleEvent(e){return!0}setActive(e){this.set(vm.ACTIVE,e)}setMap(e){this.map_=e}}function eD(i,e,t){const n=i.getCenterInternal();if(n){const r=[n[0]+e[0],n[1]+e[1]];i.animateInternal({duration:t!==void 0?t:250,easing:$L,center:i.getConstrainedCenter(r)})}}function cy(i,e,t,n){const r=i.getZoom();if(r===void 0)return;const s=i.getConstrainedZoom(r+e),o=i.getResolutionForZoom(s);i.getAnimating()&&i.cancelAnimations(),i.animate({resolution:o,anchor:t,duration:n!==void 0?n:250,easing:Mc})}class tD extends kc{constructor(e){super(),e=e||{},this.delta_=e.delta?e.delta:1,this.duration_=e.duration!==void 0?e.duration:250}handleEvent(e){let t=!1;if(e.type==gt.DBLCLICK){const n=e.originalEvent,r=e.map,s=e.coordinate,o=n.shiftKey?-this.delta_:this.delta_,a=r.getView();cy(a,o,s,this.duration_),n.preventDefault(),t=!0}return!t}}const iD=tD;class Qa extends kc{constructor(e){e=e||{},super(e),e.handleDownEvent&&(this.handleDownEvent=e.handleDownEvent),e.handleDragEvent&&(this.handleDragEvent=e.handleDragEvent),e.handleMoveEvent&&(this.handleMoveEvent=e.handleMoveEvent),e.handleUpEvent&&(this.handleUpEvent=e.handleUpEvent),e.stopDown&&(this.stopDown=e.stopDown),this.handlingDownUpSequence=!1,this.targetPointers=[]}getPointerCount(){return this.targetPointers.length}handleDownEvent(e){return!1}handleDragEvent(e){}handleEvent(e){if(!e.originalEvent)return!0;let t=!1;if(this.updateTrackedPointers_(e),this.handlingDownUpSequence){if(e.type==gt.POINTERDRAG)this.handleDragEvent(e),e.originalEvent.preventDefault();else if(e.type==gt.POINTERUP){const n=this.handleUpEvent(e);this.handlingDownUpSequence=n&&this.targetPointers.length>0}}else if(e.type==gt.POINTERDOWN){const n=this.handleDownEvent(e);this.handlingDownUpSequence=n,t=this.stopDown(n)}else e.type==gt.POINTERMOVE&&this.handleMoveEvent(e);return!t}handleMoveEvent(e){}handleUpEvent(e){return!1}stopDown(e){return e}updateTrackedPointers_(e){e.activePointers&&(this.targetPointers=e.activePointers)}}function uy(i){const e=i.length;let t=0,n=0;for(let r=0;r0&&this.condition_(e)){const n=e.map.getView();return this.lastCentroid=null,n.getAnimating()&&n.cancelAnimations(),this.kinetic_&&this.kinetic_.begin(),this.noKinetic_=this.targetPointers.length>1,!0}return!1}}const lD=aD;class cD extends Qa{constructor(e){e=e||{},super({stopDown:xc}),this.condition_=e.condition?e.condition:rD,this.lastAngle_=void 0,this.duration_=e.duration!==void 0?e.duration:250}handleDragEvent(e){if(!H0(e))return;const t=e.map,n=t.getView();if(n.getConstraints().rotation===Xv)return;const r=t.getSize(),s=e.pixel,o=Math.atan2(r[1]/2-s[1],s[0]-r[0]/2);if(this.lastAngle_!==void 0){const a=o-this.lastAngle_;n.adjustRotationInternal(-a)}this.lastAngle_=o}handleUpEvent(e){return H0(e)?(e.map.getView().endInteraction(this.duration_),!1):!0}handleDownEvent(e){return H0(e)&&Ew(e)&&this.condition_(e)?(e.map.getView().beginInteraction(),this.lastAngle_=void 0,!0):!1}}class uD extends Sv{constructor(e){super(),this.geometry_=null,this.element_=document.createElement("div"),this.element_.style.position="absolute",this.element_.style.pointerEvents="auto",this.element_.className="ol-box "+e,this.map_=null,this.startPixel_=null,this.endPixel_=null}disposeInternal(){this.setMap(null)}render_(){const e=this.startPixel_,t=this.endPixel_,n="px",r=this.element_.style;r.left=Math.min(e[0],t[0])+n,r.top=Math.min(e[1],t[1])+n,r.width=Math.abs(t[0]-e[0])+n,r.height=Math.abs(t[1]-e[1])+n}setMap(e){if(this.map_){this.map_.getOverlayContainer().removeChild(this.element_);const t=this.element_.style;t.left="inherit",t.top="inherit",t.width="inherit",t.height="inherit"}this.map_=e,this.map_&&this.map_.getOverlayContainer().appendChild(this.element_)}setPixels(e,t){this.startPixel_=e,this.endPixel_=t,this.createOrUpdateGeometry(),this.render_()}createOrUpdateGeometry(){const e=this.startPixel_,t=this.endPixel_,r=[e,[e[0],t[1]],t,[t[0],e[1]]].map(this.map_.getCoordinateFromPixelInternal,this.map_);r[4]=r[0].slice(),this.geometry_?this.geometry_.setCoordinates([r]):this.geometry_=new wi([r])}getGeometry(){return this.geometry_}}const gd={BOXSTART:"boxstart",BOXDRAG:"boxdrag",BOXEND:"boxend",BOXCANCEL:"boxcancel"};class q0 extends fr{constructor(e,t,n){super(e),this.coordinate=t,this.mapBrowserEvent=n}}class hD extends Qa{constructor(e){super(),this.on,this.once,this.un,e=e||{},this.box_=new uD(e.className||"ol-dragbox"),this.minArea_=e.minArea!==void 0?e.minArea:64,e.onBoxEnd&&(this.onBoxEnd=e.onBoxEnd),this.startPixel_=null,this.condition_=e.condition?e.condition:Ew,this.boxEndCondition_=e.boxEndCondition?e.boxEndCondition:this.defaultBoxEndCondition}defaultBoxEndCondition(e,t,n){const r=n[0]-t[0],s=n[1]-t[1];return r*r+s*s>=this.minArea_}getGeometry(){return this.box_.getGeometry()}handleDragEvent(e){this.box_.setPixels(this.startPixel_,e.pixel),this.dispatchEvent(new q0(gd.BOXDRAG,e.coordinate,e))}handleUpEvent(e){this.box_.setMap(null);const t=this.boxEndCondition_(e,this.startPixel_,e.pixel);return t&&this.onBoxEnd(e),this.dispatchEvent(new q0(t?gd.BOXEND:gd.BOXCANCEL,e.coordinate,e)),!1}handleDownEvent(e){return this.condition_(e)?(this.startPixel_=e.pixel,this.box_.setMap(e.map),this.box_.setPixels(this.startPixel_,this.startPixel_),this.dispatchEvent(new q0(gd.BOXSTART,e.coordinate,e)),!0):!1}onBoxEnd(e){}}class dD extends hD{constructor(e){e=e||{};const t=e.condition?e.condition:gy;super({condition:t,className:e.className||"ol-dragzoom",minArea:e.minArea}),this.duration_=e.duration!==void 0?e.duration:200,this.out_=e.out!==void 0?e.out:!1}onBoxEnd(e){const n=this.getMap().getView();let r=this.getGeometry();if(this.out_){const s=n.rotatedExtentForGeometry(r),o=n.getResolutionForExtentInternal(s),a=n.getResolution()/o;r=r.clone(),r.scale(a*a)}n.fitInternal(r,{duration:this.duration_,easing:Mc})}}const fD=dD,ta={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",DOWN:"ArrowDown"};class gD extends kc{constructor(e){super(),e=e||{},this.defaultCondition_=function(t){return fy(t)&&ww(t)},this.condition_=e.condition!==void 0?e.condition:this.defaultCondition_,this.duration_=e.duration!==void 0?e.duration:100,this.pixelDelta_=e.pixelDelta!==void 0?e.pixelDelta:128}handleEvent(e){let t=!1;if(e.type==ze.KEYDOWN){const n=e.originalEvent,r=n.key;if(this.condition_(e)&&(r==ta.DOWN||r==ta.LEFT||r==ta.RIGHT||r==ta.UP)){const o=e.map.getView(),a=o.getResolution()*this.pixelDelta_;let l=0,c=0;r==ta.DOWN?c=-a:r==ta.LEFT?l=-a:r==ta.RIGHT?l=a:c=a;const u=[l,c];Ov(u,o.getRotation()),eD(o,u,this.duration_),n.preventDefault(),t=!0}}return!t}}class pD extends kc{constructor(e){super(),e=e||{},this.condition_=e.condition?e.condition:function(t){return!oD(t)&&ww(t)},this.delta_=e.delta?e.delta:1,this.duration_=e.duration!==void 0?e.duration:100}handleEvent(e){let t=!1;if(e.type==ze.KEYDOWN||e.type==ze.KEYPRESS){const n=e.originalEvent,r=n.key;if(this.condition_(e)&&(r==="+"||r==="-")){const s=e.map,o=r==="+"?this.delta_:-this.delta_,a=s.getView();cy(a,o,void 0,this.duration_),n.preventDefault(),t=!0}}return!t}}const mD=pD;class vD{constructor(e,t,n){this.decay_=e,this.minVelocity_=t,this.delay_=n,this.points_=[],this.angle_=0,this.initialVelocity_=0}begin(){this.points_.length=0,this.angle_=0,this.initialVelocity_=0}update(e,t){this.points_.push(e,t,Date.now())}end(){if(this.points_.length<6)return!1;const e=Date.now()-this.delay_,t=this.points_.length-3;if(this.points_[t+2]0&&this.points_[n+2]>e;)n-=3;const r=this.points_[t+2]-this.points_[n+2];if(r<1e3/60)return!1;const s=this.points_[t]-this.points_[n],o=this.points_[t+1]-this.points_[n+1];return this.angle_=Math.atan2(o,s),this.initialVelocity_=Math.sqrt(s*s+o*o)/r,this.initialVelocity_>this.minVelocity_}getDistance(){return(this.minVelocity_-this.initialVelocity_)/this.decay_}getAngle(){return this.angle_}}class yD extends kc{constructor(e){e=e||{},super(e),this.totalDelta_=0,this.lastDelta_=0,this.maxDelta_=e.maxDelta!==void 0?e.maxDelta:1,this.duration_=e.duration!==void 0?e.duration:250,this.timeout_=e.timeout!==void 0?e.timeout:80,this.useAnchor_=e.useAnchor!==void 0?e.useAnchor:!0,this.constrainResolution_=e.constrainResolution!==void 0?e.constrainResolution:!1;const t=e.condition?e.condition:Of;this.condition_=e.onFocusOnly?ym(Iw,t):t,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_,this.mode_=void 0,this.trackpadEventGap_=400,this.trackpadTimeoutId_,this.deltaPerZoom_=300}endInteraction_(){this.trackpadTimeoutId_=void 0;const e=this.getMap();if(!e)return;e.getView().endInteraction(void 0,this.lastDelta_?this.lastDelta_>0?1:-1:0,this.lastAnchor_)}handleEvent(e){if(!this.condition_(e)||e.type!==ze.WHEEL)return!0;const n=e.map,r=e.originalEvent;r.preventDefault(),this.useAnchor_&&(this.lastAnchor_=e.coordinate);let s;if(e.type==ze.WHEEL&&(s=r.deltaY,eG&&r.deltaMode===WheelEvent.DOM_DELTA_PIXEL&&(s/=A1),r.deltaMode===WheelEvent.DOM_DELTA_LINE&&(s*=40)),s===0)return!1;this.lastDelta_=s;const o=Date.now();this.startTime_===void 0&&(this.startTime_=o),(!this.mode_||o-this.startTime_>this.trackpadEventGap_)&&(this.mode_=Math.abs(s)<4?"trackpad":"wheel");const a=n.getView();if(this.mode_==="trackpad"&&!(a.getConstrainResolution()||this.constrainResolution_))return this.trackpadTimeoutId_?clearTimeout(this.trackpadTimeoutId_):(a.getAnimating()&&a.cancelAnimations(),a.beginInteraction()),this.trackpadTimeoutId_=setTimeout(this.endInteraction_.bind(this),this.timeout_),a.adjustZoom(-s/this.deltaPerZoom_,this.lastAnchor_),this.startTime_=o,!1;this.totalDelta_+=s;const l=Math.max(this.timeout_-(o-this.startTime_),0);return clearTimeout(this.timeoutId_),this.timeoutId_=setTimeout(this.handleWheelZoom_.bind(this,n),l),!1}handleWheelZoom_(e){const t=e.getView();t.getAnimating()&&t.cancelAnimations();let n=-mi(this.totalDelta_,-this.maxDelta_*this.deltaPerZoom_,this.maxDelta_*this.deltaPerZoom_)/this.deltaPerZoom_;(t.getConstrainResolution()||this.constrainResolution_)&&(n=n?n>0?1:-1:0),cy(t,n,this.lastAnchor_,this.duration_),this.mode_=void 0,this.totalDelta_=0,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_=void 0}setMouseAnchor(e){this.useAnchor_=e,e||(this.lastAnchor_=null)}}const AD=yD;class _D extends Qa{constructor(e){e=e||{};const t=e;t.stopDown||(t.stopDown=xc),super(t),this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.threshold_=e.threshold!==void 0?e.threshold:.3,this.duration_=e.duration!==void 0?e.duration:250}handleDragEvent(e){let t=0;const n=this.targetPointers[0],r=this.targetPointers[1],s=Math.atan2(r.clientY-n.clientY,r.clientX-n.clientX);if(this.lastAngle_!==void 0){const l=s-this.lastAngle_;this.rotationDelta_+=l,!this.rotating_&&Math.abs(this.rotationDelta_)>this.threshold_&&(this.rotating_=!0),t=l}this.lastAngle_=s;const o=e.map,a=o.getView();a.getConstraints().rotation!==Xv&&(this.anchor_=o.getCoordinateFromPixelInternal(o.getEventPixel(uy(this.targetPointers))),this.rotating_&&(o.render(),a.adjustRotationInternal(t,this.anchor_)))}handleUpEvent(e){return this.targetPointers.length<2?(e.map.getView().endInteraction(this.duration_),!1):!0}handleDownEvent(e){if(this.targetPointers.length>=2){const t=e.map;return this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.handlingDownUpSequence||t.getView().beginInteraction(),!0}return!1}}class CD extends Qa{constructor(e){e=e||{};const t=e;t.stopDown||(t.stopDown=xc),super(t),this.anchor_=null,this.duration_=e.duration!==void 0?e.duration:400,this.lastDistance_=void 0,this.lastScaleDelta_=1}handleDragEvent(e){let t=1;const n=this.targetPointers[0],r=this.targetPointers[1],s=n.clientX-r.clientX,o=n.clientY-r.clientY,a=Math.sqrt(s*s+o*o);this.lastDistance_!==void 0&&(t=this.lastDistance_/a),this.lastDistance_=a;const l=e.map,c=l.getView();t!=1&&(this.lastScaleDelta_=t),this.anchor_=l.getCoordinateFromPixelInternal(l.getEventPixel(uy(this.targetPointers))),l.render(),c.adjustResolutionInternal(t,this.anchor_)}handleUpEvent(e){if(this.targetPointers.length<2){const n=e.map.getView(),r=this.lastScaleDelta_>1?1:-1;return n.endInteraction(this.duration_,r),!1}return!0}handleDownEvent(e){if(this.targetPointers.length>=2){const t=e.map;return this.anchor_=null,this.lastDistance_=void 0,this.lastScaleDelta_=1,this.handlingDownUpSequence||t.getView().beginInteraction(),!0}return!1}}const ID=CD;function ED(i){i=i||{};const e=new bi,t=new vD(-.005,.05,100);return(i.altShiftDragRotate!==void 0?i.altShiftDragRotate:!0)&&e.push(new cD),(i.doubleClickZoom!==void 0?i.doubleClickZoom:!0)&&e.push(new iD({delta:i.zoomDelta,duration:i.zoomDuration})),(i.dragPan!==void 0?i.dragPan:!0)&&e.push(new lD({onFocusOnly:i.onFocusOnly,kinetic:t})),(i.pinchRotate!==void 0?i.pinchRotate:!0)&&e.push(new _D),(i.pinchZoom!==void 0?i.pinchZoom:!0)&&e.push(new ID({duration:i.zoomDuration})),(i.keyboard!==void 0?i.keyboard:!0)&&(e.push(new gD),e.push(new mD({delta:i.zoomDelta,duration:i.zoomDuration}))),(i.mouseWheelZoom!==void 0?i.mouseWheelZoom:!0)&&e.push(new AD({onFocusOnly:i.onFocusOnly,duration:i.zoomDuration})),(i.shiftDragZoom!==void 0?i.shiftDragZoom:!0)&&e.push(new fD({duration:i.zoomDuration})),e}function Sw(i){if(i instanceof n0){i.setMapInternal(null);return}i instanceof Dc&&i.getLayers().forEach(Sw)}function xw(i,e){if(i instanceof n0){i.setMapInternal(e);return}if(i instanceof Dc){const t=i.getLayers().getArray();for(let n=0,r=t.length;nthis.updateSize()),this.controls=t.controls||$O(),this.interactions=t.interactions||ED({onFocusOnly:!0}),this.overlays_=t.overlays,this.overlayIdIndex_={},this.renderer_=null,this.postRenderFunctions_=[],this.tileQueue_=new HO(this.getTilePriority.bind(this),this.handleTileChange_.bind(this)),this.addChangeListener(Ti.LAYERGROUP,this.handleLayerGroupChanged_),this.addChangeListener(Ti.VIEW,this.handleViewChanged_),this.addChangeListener(Ti.SIZE,this.handleSizeChanged_),this.addChangeListener(Ti.TARGET,this.handleTargetChanged_),this.setProperties(t.values);const n=this;e.view&&!(e.view instanceof Rr)&&e.view.then(function(r){n.setView(new Rr(r))}),this.controls.addEventListener(Ii.ADD,r=>{r.element.setMap(this)}),this.controls.addEventListener(Ii.REMOVE,r=>{r.element.setMap(null)}),this.interactions.addEventListener(Ii.ADD,r=>{r.element.setMap(this)}),this.interactions.addEventListener(Ii.REMOVE,r=>{r.element.setMap(null)}),this.overlays_.addEventListener(Ii.ADD,r=>{this.addOverlayInternal_(r.element)}),this.overlays_.addEventListener(Ii.REMOVE,r=>{const s=r.element.getId();s!==void 0&&delete this.overlayIdIndex_[s.toString()],r.element.setMap(null)}),this.controls.forEach(r=>{r.setMap(this)}),this.interactions.forEach(r=>{r.setMap(this)}),this.overlays_.forEach(this.addOverlayInternal_.bind(this))}addControl(e){this.getControls().push(e)}addInteraction(e){this.getInteractions().push(e)}addLayer(e){this.getLayerGroup().getLayers().push(e)}handleLayerAdd_(e){xw(e.layer,this)}addOverlay(e){this.getOverlays().push(e)}addOverlayInternal_(e){const t=e.getId();t!==void 0&&(this.overlayIdIndex_[t.toString()]=e),e.setMap(this)}disposeInternal(){this.controls.clear(),this.interactions.clear(),this.overlays_.clear(),this.resizeObserver_.disconnect(),this.setTarget(null),super.disposeInternal()}forEachFeatureAtPixel(e,t,n){if(!this.frameState_||!this.renderer_)return;const r=this.getCoordinateFromPixelInternal(e);n=n!==void 0?n:{};const s=n.hitTolerance!==void 0?n.hitTolerance:0,o=n.layerFilter!==void 0?n.layerFilter:Do,a=n.checkWrapped!==!1;return this.renderer_.forEachFeatureAtCoordinate(r,this.frameState_,s,a,t,null,o,null)}getFeaturesAtPixel(e,t){const n=[];return this.forEachFeatureAtPixel(e,function(r){n.push(r)},t),n}getAllLayers(){const e=[];function t(n){n.forEach(function(r){r instanceof Dc?t(r.getLayers()):e.push(r)})}return t(this.getLayers()),e}hasFeatureAtPixel(e,t){if(!this.frameState_||!this.renderer_)return!1;const n=this.getCoordinateFromPixelInternal(e);t=t!==void 0?t:{};const r=t.layerFilter!==void 0?t.layerFilter:Do,s=t.hitTolerance!==void 0?t.hitTolerance:0,o=t.checkWrapped!==!1;return this.renderer_.hasFeatureAtCoordinate(n,this.frameState_,s,o,r,null)}getEventCoordinate(e){return this.getCoordinateFromPixel(this.getEventPixel(e))}getEventCoordinateInternal(e){return this.getCoordinateFromPixelInternal(this.getEventPixel(e))}getEventPixel(e){const n=this.viewport_.getBoundingClientRect(),r=this.getSize(),s=n.width/r[0],o=n.height/r[1],a="changedTouches"in e?e.changedTouches[0]:e;return[(a.clientX-n.left)/s,(a.clientY-n.top)/o]}getTarget(){return this.get(Ti.TARGET)}getTargetElement(){return this.targetElement_}getCoordinateFromPixel(e){return dc(this.getCoordinateFromPixelInternal(e),this.getView().getProjection())}getCoordinateFromPixelInternal(e){const t=this.frameState_;return t?Gi(t.pixelToCoordinateTransform,e.slice()):null}getControls(){return this.controls}getOverlays(){return this.overlays_}getOverlayById(e){const t=this.overlayIdIndex_[e.toString()];return t!==void 0?t:null}getInteractions(){return this.interactions}getLayerGroup(){return this.get(Ti.LAYERGROUP)}setLayers(e){const t=this.getLayerGroup();if(e instanceof bi){t.setLayers(e);return}const n=t.getLayers();n.clear(),n.extend(e)}getLayers(){return this.getLayerGroup().getLayers()}getLoadingOrNotReady(){const e=this.getLayerGroup().getLayerStatesArray();for(let t=0,n=e.length;t=0;s--){const o=r[s];if(o.getMap()!==this||!o.getActive()||!this.getTargetElement())continue;if(!o.handleEvent(e)||e.propagationStopped)break}}}handlePostRender(){const e=this.frameState_,t=this.tileQueue_;if(!t.isEmpty()){let r=this.maxTilesLoading_,s=r;if(e){const o=e.viewHints;if(o[ai.ANIMATING]||o[ai.INTERACTING]){const a=Date.now()-e.time>8;r=a?0:8,s=a?0:2}}t.getTilesLoading(){this.postRenderTimeoutHandle_=void 0,this.handlePostRender()},0))}setLayerGroup(e){const t=this.getLayerGroup();t&&this.handleLayerRemove_(new co("removelayer",t)),this.set(Ti.LAYERGROUP,e)}setSize(e){this.set(Ti.SIZE,e)}setTarget(e){this.set(Ti.TARGET,e)}setView(e){if(!e||e instanceof Rr){this.set(Ti.VIEW,e);return}this.set(Ti.VIEW,new Rr);const t=this;e.then(function(n){t.setView(new Rr(n))})}updateSize(){const e=this.getTargetElement();let t;if(e){const r=getComputedStyle(e),s=e.offsetWidth-parseFloat(r.borderLeftWidth)-parseFloat(r.paddingLeft)-parseFloat(r.paddingRight)-parseFloat(r.borderRightWidth),o=e.offsetHeight-parseFloat(r.borderTopWidth)-parseFloat(r.paddingTop)-parseFloat(r.paddingBottom)-parseFloat(r.borderBottomWidth);!isNaN(s)&&!isNaN(o)&&(t=[s,o],!sC(t)&&(e.offsetWidth||e.offsetHeight||e.getClientRects().length)&&O1("No map visible because the map container's width or height are 0."))}const n=this.getSize();t&&(!n||!Hs(t,n))&&(this.setSize(t),this.updateViewportSize_(t))}updateViewportSize_(e){const t=this.getView();t&&t.setViewportSize(e)}};function wD(i){let e=null;i.keyboardEventTarget!==void 0&&(e=typeof i.keyboardEventTarget=="string"?document.getElementById(i.keyboardEventTarget):i.keyboardEventTarget);const t={},n=i.layers&&typeof i.layers.getLayers=="function"?i.layers:new Dc({layers:i.layers});t[Ti.LAYERGROUP]=n,t[Ti.TARGET]=i.target,t[Ti.VIEW]=i.view instanceof Rr?i.view:new Rr;let r;i.controls!==void 0&&(Array.isArray(i.controls)?r=new bi(i.controls.slice()):(vt(typeof i.controls.getArray=="function","Expected `controls` to be an array or an `ol/Collection.js`"),r=i.controls));let s;i.interactions!==void 0&&(Array.isArray(i.interactions)?s=new bi(i.interactions.slice()):(vt(typeof i.interactions.getArray=="function","Expected `interactions` to be an array or an `ol/Collection.js`"),s=i.interactions));let o;return i.overlays!==void 0?Array.isArray(i.overlays)?o=new bi(i.overlays.slice()):(vt(typeof i.overlays.getArray=="function","Expected `overlays` to be an array or an `ol/Collection.js`"),o=i.overlays):o=new bi,{controls:r,interactions:s,keyboardEventTarget:e,overlays:o,values:t}}const bD=Ut({__name:"Map",setup(i){const e=Si(void 0),t=new Pw;wr(()=>{var s;t==null||t.setTarget(e.value);const r=(s=document.getElementById("map"))==null?void 0:s.getElementsByTagName("canvas");r&&(r.tabindex=0)});function n(){e.value.focus()}return Iu("map",t),(r,s)=>(de(),Ge("div",{id:"map",ref_key:"mapRef",ref:e,tabindex:"0",onMouseover:n},[dn(r.$slots,"default",{},void 0,!0)],544))}}),jh=(i,e)=>{const t=i.__vccOpts||i;for(const[n,r]of e)t[n]=r;return t},SD=jh(bD,[["__scopeId","data-v-38aaac19"]]),xD=Ut({__name:"View",props:{zoom:Number,center:Array,layers:Array},setup(i){const e=i,t=Vn("map"),n={zoom:e.zoom,center:e.center},r=new Rr(n);return wr(()=>{e.layers.forEach(s=>{t==null||t.addLayer(s)}),t==null||t.setView(r)}),(s,o)=>(de(),Ge("div"))}}),PD="geoportal-extensions-openlayers",MD="French Geoportal Extensions for OpenLayers libraries",RD="1.0.0-beta.8",TD="16/04/2024",LD="src/index.js",GD="module",OD={},DD={node:">=20"},kD={},FD={type:"git",url:"https://github.com/IGNF/geoportal-extensions-openlayers.git"},ND="IGNF",UD=["geoportail","geoplateforme","javascript","OpenLayers 8"],BD="CECILL-B",jD={url:"https://github.com/IGNF/geoportal-extensions-openlayers/issues"},zD="https://github.com/IGNF/geoportal-extensions-openlayers#readme",VD={"@gouvfr/dsfr":"^1.11.0",eventbusjs:"0.2.0","geoportal-access-lib":"3.4.1",loglevel:"^1.9.1",ol:"8.2.0","ol-mapbox-style":"12.2.0",proj4:"2.10.0",sortablejs:"1.15.2"},WD={},Df={name:PD,description:MD,version:RD,date:TD,main:LD,type:GD,directories:OD,engines:DD,scripts:kD,repository:FD,author:ND,keywords:UD,license:BD,bugs:jD,homepage:zD,dependencies:VD,devDependencies:WD},nn={ELEMENT:"element",MAP:"map",OFFSET:"offset",POSITION:"position",POSITIONING:"positioning"};class YD extends zr{constructor(e){super(),this.on,this.once,this.un,this.options=e,this.id=e.id,this.insertFirst=e.insertFirst!==void 0?e.insertFirst:!0,this.stopEvent=e.stopEvent!==void 0?e.stopEvent:!0,this.element=document.createElement("div"),this.element.className=e.className!==void 0?e.className:"ol-overlay-container "+FO,this.element.style.position="absolute",this.element.style.pointerEvents="auto",this.autoPan=e.autoPan===!0?{}:e.autoPan||void 0,this.rendered={transform_:"",visible:!0},this.mapPostrenderListenerKey=null,this.addChangeListener(nn.ELEMENT,this.handleElementChanged),this.addChangeListener(nn.MAP,this.handleMapChanged),this.addChangeListener(nn.OFFSET,this.handleOffsetChanged),this.addChangeListener(nn.POSITION,this.handlePositionChanged),this.addChangeListener(nn.POSITIONING,this.handlePositioningChanged),e.element!==void 0&&this.setElement(e.element),this.setOffset(e.offset!==void 0?e.offset:[0,0]),this.setPositioning(e.positioning||"top-left"),e.position!==void 0&&this.setPosition(e.position)}getElement(){return this.get(nn.ELEMENT)}getId(){return this.id}getMap(){return this.get(nn.MAP)||null}getOffset(){return this.get(nn.OFFSET)}getPosition(){return this.get(nn.POSITION)}getPositioning(){return this.get(nn.POSITIONING)}handleElementChanged(){C1(this.element);const e=this.getElement();e&&this.element.appendChild(e)}handleMapChanged(){this.mapPostrenderListenerKey&&(Ef(this.element),zt(this.mapPostrenderListenerKey),this.mapPostrenderListenerKey=null);const e=this.getMap();if(e){this.mapPostrenderListenerKey=ht(e,Kr.POSTRENDER,this.render,this),this.updatePixelPosition();const t=this.stopEvent?e.getOverlayContainerStopEvent():e.getOverlayContainer();this.insertFirst?t.insertBefore(this.element,t.childNodes[0]||null):t.appendChild(this.element),this.performAutoPan()}}render(){this.updatePixelPosition()}handleOffsetChanged(){this.updatePixelPosition()}handlePositionChanged(){this.updatePixelPosition(),this.performAutoPan()}handlePositioningChanged(){this.updatePixelPosition()}setElement(e){this.set(nn.ELEMENT,e)}setMap(e){this.set(nn.MAP,e)}setOffset(e){this.set(nn.OFFSET,e)}setPosition(e){this.set(nn.POSITION,e)}performAutoPan(){this.autoPan&&this.panIntoView(this.autoPan)}panIntoView(e){const t=this.getMap();if(!t||!t.getTargetElement()||!this.get(nn.POSITION))return;const n=this.getRect(t.getTargetElement(),t.getSize()),r=this.getElement(),s=this.getRect(r,[rG(r),sG(r)]);e=e||{};const o=e.margin===void 0?20:e.margin;if(!Gr(n,s)){const a=s[0]-n[0],l=n[2]-s[2],c=s[1]-n[1],u=n[3]-s[3],h=[0,0];if(a<0?h[0]=a-o:l<0&&(h[0]=Math.abs(l)+o),c<0?h[1]=c-o:u<0&&(h[1]=Math.abs(u)+o),h[0]!==0||h[1]!==0){const d=t.getView().getCenterInternal(),f=t.getPixelFromCoordinateInternal(d);if(!f)return;const g=[f[0]+h[0],f[1]+h[1]],p=e.animation||{};t.getView().animateInternal({center:t.getCoordinateFromPixelInternal(g),duration:p.duration,easing:p.easing})}}}getRect(e,t){const n=e.getBoundingClientRect(),r=n.left+window.pageXOffset,s=n.top+window.pageYOffset;return[r,s,r+t[0],s+t[1]]}setPositioning(e){this.set(nn.POSITIONING,e)}setVisible(e){this.rendered.visible!==e&&(this.element.style.display=e?"":"none",this.rendered.visible=e)}updatePixelPosition(){const e=this.getMap(),t=this.getPosition();if(!e||!e.isRendered()||!t){this.setVisible(!1);return}const n=e.getPixelFromCoordinate(t),r=e.getSize();this.updateRenderedPosition(n,r)}updateRenderedPosition(e,t){const n=this.element.style,r=this.getOffset(),s=this.getPositioning();this.setVisible(!0);const o=Math.round(e[0]+r[0])+"px",a=Math.round(e[1]+r[1])+"px";let l="0%",c="0%";s=="bottom-right"||s=="center-right"||s=="top-right"?l="-100%":(s=="bottom-center"||s=="center-center"||s=="top-center")&&(l="-50%"),s=="bottom-left"||s=="bottom-center"||s=="bottom-right"?c="-100%":(s=="center-left"||s=="center-center"||s=="center-right")&&(c="-50%");const u=`translate(${l}, ${c}) translate(${o}, ${a})`;this.rendered.transform_!=u&&(this.rendered.transform_=u,n.transform=u)}getOptions(){return this.options}}const jn=YD;let Mw=class extends Wg{constructor(e,t,n,r,s,o){super(e,t,o),this.extent=null,this.format_=r,this.features_=null,this.loader_,this.projection=null,this.resolution,this.tileLoadFunction_=s,this.url_=n,this.key=n}getFormat(){return this.format_}getFeatures(){return this.features_}load(){this.state==ge.IDLE&&(this.setState(ge.LOADING),this.tileLoadFunction_(this,this.url_),this.loader_&&this.loader_(this.extent,this.resolution,this.projection))}onLoad(e,t){this.setFeatures(e)}onError(){this.setState(ge.ERROR)}setFeatures(e){this.features_=e,this.setState(ge.LOADED)}setLoader(e){this.loader_=e}};const CC=[];class HD extends Wg{constructor(e,t,n,r){super(e,t,{transition:0}),this.context_={},this.executorGroups={},this.declutterExecutorGroups={},this.loadingSourceTiles=0,this.hitDetectionImageData={},this.replayState_={},this.sourceTiles=[],this.errorTileKeys={},this.wantedResolution,this.getSourceTiles=r.bind(void 0,this),this.wrappedTileCoord=n}getContext(e){const t=ke(e);return t in this.context_||(this.context_[t]=yn(1,1,CC)),this.context_[t]}hasContext(e){return ke(e)in this.context_}getImage(e){return this.hasContext(e)?this.getContext(e).canvas:null}getReplayState(e){const t=ke(e);return t in this.replayState_||(this.replayState_[t]={dirty:!1,renderedRenderOrder:null,renderedResolution:NaN,renderedRevision:-1,renderedTileResolution:NaN,renderedTileRevision:-1,renderedTileZ:-1}),this.replayState_[t]}load(){this.getSourceTiles()}release(){for(const e in this.context_){const t=this.context_[e];Oh(t),CC.push(t.canvas),delete this.context_[e]}super.release()}}let qD=!1;function Rw(i,e,t,n,r,s,o){const a=new XMLHttpRequest;a.open("GET",typeof i=="function"?i(t,n,r):i,!0),e.getType()=="arraybuffer"&&(a.responseType="arraybuffer"),a.withCredentials=qD,a.onload=function(l){if(!a.status||a.status>=200&&a.status<300){const c=e.getType();let u;c=="json"?u=JSON.parse(a.responseText):c=="text"?u=a.responseText:c=="xml"?(u=a.responseXML,u||(u=new DOMParser().parseFromString(a.responseText,"application/xml"))):c=="arraybuffer"&&(u=a.response),u?s(e.readFeatures(u,{extent:t,featureProjection:r}),e.readProjection(u)):o()}else o()},a.onerror=o,a.send()}function IC(i,e){return function(t,n,r,s,o){const a=this;Rw(i,e,t,n,r,function(l,c){a.addFeatures(l),s!==void 0&&s(l)},o||cc)}}class Hl extends Qg{constructor(e){const t=e.projection||"EPSG:3857",n=e.extent||Uh(t),r=e.tileGrid||Jg({extent:n,maxResolution:e.maxResolution,maxZoom:e.maxZoom!==void 0?e.maxZoom:22,minZoom:e.minZoom,tileSize:e.tileSize||512});super({attributions:e.attributions,attributionsCollapsible:e.attributionsCollapsible,cacheSize:e.cacheSize,interpolate:!0,opaque:!1,projection:t,state:e.state,tileGrid:r,tileLoadFunction:e.tileLoadFunction?e.tileLoadFunction:Tw,tileUrlFunction:e.tileUrlFunction,url:e.url,urls:e.urls,wrapX:e.wrapX===void 0?!0:e.wrapX,transition:e.transition,zDirection:e.zDirection===void 0?1:e.zDirection}),this.format_=e.format?e.format:null,this.sourceTileCache=new Bv(this.tileCache.highWaterMark),this.overlaps_=e.overlaps==null?!0:e.overlaps,this.tileClass=e.tileClass?e.tileClass:Mw,this.tileGrids_={}}getFeaturesInExtent(e){const t=[],n=this.tileCache;if(n.getCount()===0)return t;const r=B1(n.peekFirstKey())[0],s=this.tileGrid;return n.forEach(function(o){if(o.tileCoord[0]!==r||o.getState()!==ge.LOADED)return;const a=o.getSourceTiles();for(let l=0,c=a.length;l{const a=UG(o),l=n.peek(a);if(l){const c=l.sourceTiles;for(let u=0,h=c.length;u{const f=this.tileUrlFunction(d,e,t),g=this.sourceTileCache.containsKey(f)?this.sourceTileCache.get(f):new this.tileClass(d,f?ge.IDLE:ge.EMPTY,f,this.format_,this.tileLoadFunction);n.sourceTiles.push(g);const p=g.getState();if(p{this.handleTileChange(v);const y=g.getState();if(y===ge.LOADED||y===ge.ERROR){const A=g.getKey();A in n.errorTileKeys?g.getState()===ge.LOADED&&delete n.errorTileKeys[A]:n.loadingSourceTiles--,y===ge.ERROR?n.errorTileKeys[A]=!0:g.removeEventListener(ze.CHANGE,m),n.loadingSourceTiles===0&&n.setState(ko(n.errorTileKeys)?ge.LOADED:ge.ERROR)}};g.addEventListener(ze.CHANGE,m),n.loadingSourceTiles++}p===ge.IDLE&&(g.extent=c.getTileCoordExtent(d),g.projection=t,g.resolution=c.getResolution(d[0]),this.sourceTileCache.set(f,g),g.load())}),n.loadingSourceTiles||n.setState(n.sourceTiles.some(d=>d.getState()===ge.ERROR)?ge.ERROR:ge.LOADED)}return n.sourceTiles}getTile(e,t,n,r,s){const o=Lc(e,t,n),a=this.getKey();let l;if(this.tileCache.containsKey(o)&&(l=this.tileCache.get(o),l.key===a))return l;const c=[e,t,n];let u=this.getTileCoordForTileUrlFunction(c,s);const h=this.getTileGrid().getExtent(),d=this.getTileGridForProjection(s);if(u&&h){const p=d.getTileCoordExtent(u);Fr(p,-d.getResolution(e),p),Jt(h,p)||(u=null)}let f=!0;if(u!==null){const p=this.tileGrid,m=d.getResolution(e),v=p.getZForResolution(m,1),y=d.getTileCoordExtent(u);Fr(y,-m,y),p.forEachTileCoord(y,v,A=>{f=f&&!this.tileUrlFunction(A,r,s)})}const g=new HD(c,f?ge.EMPTY:ge.IDLE,u,this.getSourceTiles.bind(this,r,s));return g.key=a,l?(g.interimTile=l,g.refreshInterimChain(),this.tileCache.replace(o,g)):this.tileCache.set(o,g),g}getTileGridForProjection(e){const t=e.getCode();let n=this.tileGrids_[t];if(!n){const r=this.tileGrid,s=r.getResolutions().slice(),o=s.map(function(c,u){return r.getOrigin(u)}),a=s.map(function(c,u){return r.getTileSize(u)}),l=z1+1;for(let c=s.length;ct;){if(n-t>600){var s=n-t+1,o=e-t+1,a=Math.log(s),l=.5*Math.exp(2*a/3),c=.5*Math.sqrt(a*l*(s-l)/s)*(o-s/2<0?-1:1),u=Math.max(t,Math.floor(e-o*l/s+c)),h=Math.min(n,Math.floor(e+(s-o)*l/s+c));Lw(i,e,u,h,r)}var d=i[e],f=t,g=n;for($c(i,t,e),r(i[n],d)>0&&$c(i,t,n);f0;)g--}r(i[t],d)===0?$c(i,t,g):(g++,$c(i,g,n)),g<=e&&(t=g+1),e<=g&&(n=g-1)}}function $c(i,e,t){var n=i[e];i[e]=i[t],i[t]=n}function ZD(i,e){return ie?1:0}let Gw=class{constructor(e=9){this._maxEntries=Math.max(4,e),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(e){let t=this.data;const n=[];if(!md(e,t))return n;const r=this.toBBox,s=[];for(;t;){for(let o=0;o=0&&s[t].children.length>this._maxEntries;)this._split(s,t),t--;this._adjustParentBBoxes(r,s,t)}_split(e,t){const n=e[t],r=n.children.length,s=this._minEntries;this._chooseSplitAxis(n,s,r);const o=this._chooseSplitIndex(n,s,r),a=Al(n.children.splice(o,n.children.length-o));a.height=n.height,a.leaf=n.leaf,al(n,this.toBBox),al(a,this.toBBox),t?e[t-1].children.push(a):this._splitRoot(n,a)}_splitRoot(e,t){this.data=Al([e,t]),this.data.height=e.height+1,this.data.leaf=!1,al(this.data,this.toBBox)}_chooseSplitIndex(e,t,n){let r,s=1/0,o=1/0;for(let a=t;a<=n-t;a++){const l=lu(e,0,a,this.toBBox),c=lu(e,a,n,this.toBBox),u=ek(l,c),h=X0(l)+X0(c);u=t;c--){const u=e.children[c];cu(a,e.leaf?s(u):u),l+=pd(a)}return l}_adjustParentBBoxes(e,t,n){for(let r=n;r>=0;r--)cu(t[r],e)}_condense(e){for(let t=e.length-1,n;t>=0;t--)e[t].children.length===0?t>0?(n=e[t-1].children,n.splice(n.indexOf(e[t]),1)):this.clear():al(e[t],this.toBBox)}};function KD(i,e,t){if(!t)return e.indexOf(i);for(let n=0;n=i.minX&&e.maxY>=i.minY}function Al(i){return{children:i,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function EC(i,e,t,n,r){const s=[e,t];for(;s.length;){if(t=s.pop(),e=s.pop(),t-e<=n)continue;const o=e+Math.ceil((t-e)/n/2)*n;XD(i,o,e,t,r),s.push(e,o,o,t)}}class _m{constructor(e){this.rbush_=new Gw(e),this.items_={}}insert(e,t){const n={minX:e[0],minY:e[1],maxX:e[2],maxY:e[3],value:t};this.rbush_.insert(n),this.items_[ke(t)]=n}load(e,t){const n=new Array(t.length);for(let r=0,s=t.length;r=n[0]||e[1]<=n[1]&&e[3]>=n[1]?!0:Tv(e,this.intersectsCoordinate.bind(this))}return!1}setCenter(e){const t=this.stride,n=this.flatCoordinates[t]-this.flatCoordinates[0],r=e.slice();r[t]=r[0]+n;for(let s=1;s1?o:2,s=s||new Array(o);for(let u=0;u>1;r{if(e===this.squaredTolerance_)return this.simplifiedGeometry_;this.simplifiedGeometry_=this.clone(),t&&this.simplifiedGeometry_.applyTransform(t);const n=this.simplifiedGeometry_.getFlatCoordinates();let r;switch(this.type_){case"LineString":n.length=i0(n,0,this.simplifiedGeometry_.flatCoordinates_.length,this.simplifiedGeometry_.stride_,e,n,0),r=[n.length];break;case"MultiLineString":r=[],n.length=nw(n,0,this.simplifiedGeometry_.ends_,this.simplifiedGeometry_.stride_,e,n,0,r);break;case"Polygon":r=[],n.length=iy(n,0,this.simplifiedGeometry_.ends_,this.simplifiedGeometry_.stride_,Math.sqrt(e),n,0,r);break}return r&&(this.simplifiedGeometry_=new qi(this.type_,n,r,2,this.properties_,this.id_)),this.squaredTolerance_=e,this.simplifiedGeometry_}),this}}qi.prototype.getFlatCoordinates=qi.prototype.getOrientedFlatCoordinates;const er={ADDFEATURE:"addfeature",CHANGEFEATURE:"changefeature",CLEAR:"clear",REMOVEFEATURE:"removefeature",FEATURESLOADSTART:"featuresloadstart",FEATURESLOADEND:"featuresloadend",FEATURESLOADERROR:"featuresloaderror"};function nk(i,e){return[[-1/0,-1/0,1/0,1/0]]}function rk(i,e){return[i]}class io extends fr{constructor(e,t,n){super(e),this.feature=t,this.features=n}}class gn extends jv{constructor(e){e=e||{},super({attributions:e.attributions,interpolate:!0,projection:void 0,state:"ready",wrapX:e.wrapX!==void 0?e.wrapX:!0}),this.on,this.once,this.un,this.loader_=cc,this.format_=e.format,this.overlaps_=e.overlaps===void 0?!0:e.overlaps,this.url_=e.url,e.loader!==void 0?this.loader_=e.loader:this.url_!==void 0&&(vt(this.format_,"`format` must be set when `url` is set"),this.loader_=IC(this.url_,this.format_)),this.strategy_=e.strategy!==void 0?e.strategy:nk;const t=e.useSpatialIndex!==void 0?e.useSpatialIndex:!0;this.featuresRtree_=t?new _m:null,this.loadedExtentsRtree_=new _m,this.loadingExtentsCount_=0,this.nullGeometryFeatures_={},this.idIndex_={},this.uidIndex_={},this.featureChangeKeys_={},this.featuresCollection_=null;let n,r;Array.isArray(e.features)?r=e.features:e.features&&(n=e.features,r=n.getArray()),!t&&n===void 0&&(n=new bi(r)),r!==void 0&&this.addFeaturesInternal(r),n!==void 0&&this.bindFeaturesCollection_(n)}addFeature(e){this.addFeatureInternal(e),this.changed()}addFeatureInternal(e){const t=ke(e);if(!this.addToIndex_(t,e)){this.featuresCollection_&&this.featuresCollection_.remove(e);return}this.setupChangeEvents_(t,e);const n=e.getGeometry();if(n){const r=n.getExtent();this.featuresRtree_&&this.featuresRtree_.insert(r,e)}else this.nullGeometryFeatures_[t]=e;this.dispatchEvent(new io(er.ADDFEATURE,e))}setupChangeEvents_(e,t){t instanceof qi||(this.featureChangeKeys_[e]=[ht(t,ze.CHANGE,this.handleFeatureChange_,this),ht(t,ka.PROPERTYCHANGE,this.handleFeatureChange_,this)])}addToIndex_(e,t){let n=!0;if(t.getId()!==void 0){const r=String(t.getId());if(!(r in this.idIndex_))this.idIndex_[r]=t;else if(t instanceof qi){const s=this.idIndex_[r];s instanceof qi?Array.isArray(s)?s.push(t):this.idIndex_[r]=[s,t]:n=!1}else n=!1}return n&&(vt(!(e in this.uidIndex_),"The passed `feature` was already added to the source"),this.uidIndex_[e]=t),n}addFeatures(e){this.addFeaturesInternal(e),this.changed()}addFeaturesInternal(e){const t=[],n=[],r=[];for(let s=0,o=e.length;s{t||(t=!0,this.addFeature(n.element),t=!1)}),e.addEventListener(Ii.REMOVE,n=>{t||(t=!0,this.removeFeature(n.element),t=!1)}),this.featuresCollection_=e}clear(e){if(e){for(const n in this.featureChangeKeys_)this.featureChangeKeys_[n].forEach(zt);this.featuresCollection_||(this.featureChangeKeys_={},this.idIndex_={},this.uidIndex_={})}else if(this.featuresRtree_){const n=r=>{this.removeFeatureInternal(r)};this.featuresRtree_.forEach(n);for(const r in this.nullGeometryFeatures_)this.removeFeatureInternal(this.nullGeometryFeatures_[r])}this.featuresCollection_&&this.featuresCollection_.clear(),this.featuresRtree_&&this.featuresRtree_.clear(),this.nullGeometryFeatures_={};const t=new io(er.CLEAR);this.dispatchEvent(t),this.changed()}forEachFeature(e){if(this.featuresRtree_)return this.featuresRtree_.forEach(e);this.featuresCollection_&&this.featuresCollection_.forEach(e)}forEachFeatureAtCoordinateDirect(e,t){const n=[e[0],e[1],e[0],e[1]];return this.forEachFeatureInExtent(n,function(r){const s=r.getGeometry();if(s instanceof qi||s.intersectsCoordinate(e))return t(r)})}forEachFeatureInExtent(e,t){if(this.featuresRtree_)return this.featuresRtree_.forEachInExtent(e,t);this.featuresCollection_&&this.featuresCollection_.forEach(t)}forEachFeatureIntersectingExtent(e,t){return this.forEachFeatureInExtent(e,function(n){const r=n.getGeometry();if(r instanceof qi||r.intersectsExtent(e)){const s=t(n);if(s)return s}})}getFeaturesCollection(){return this.featuresCollection_}getFeatures(){let e;return this.featuresCollection_?e=this.featuresCollection_.getArray().slice(0):this.featuresRtree_&&(e=this.featuresRtree_.getAll(),ko(this.nullGeometryFeatures_)||bt(e,Object.values(this.nullGeometryFeatures_))),e}getFeaturesAtCoordinate(e){const t=[];return this.forEachFeatureAtCoordinateDirect(e,function(n){t.push(n)}),t}getFeaturesInExtent(e,t){if(this.featuresRtree_){if(!(t&&t.canWrapX()&&this.getWrapX()))return this.featuresRtree_.getInExtent(e);const r=mG(e,t);return[].concat(...r.map(s=>this.featuresRtree_.getInExtent(s)))}return this.featuresCollection_?this.featuresCollection_.getArray().slice(0):[]}getClosestFeatureToCoordinate(e,t){const n=e[0],r=e[1];let s=null;const o=[NaN,NaN];let a=1/0;const l=[-1/0,-1/0,1/0,1/0];return t=t||Do,this.featuresRtree_.forEachInExtent(l,function(c){if(t(c)){const u=c.getGeometry(),h=a;if(a=u instanceof qi?0:u.closestPointXY(n,r,o,a),a{--this.loadingExtentsCount_,this.dispatchEvent(new io(er.FEATURESLOADEND,void 0,u))},()=>{--this.loadingExtentsCount_,this.dispatchEvent(new io(er.FEATURESLOADERROR))}),r.insert(l,{extent:l.slice()}))}this.loading=this.loader_.length<4?!1:this.loadingExtentsCount_>0}refresh(){this.clear(!0),this.loadedExtentsRtree_.clear(),super.refresh()}removeLoadedExtent(e){const t=this.loadedExtentsRtree_;let n;t.forEachInExtent(e,function(r){if(No(r.extent,e))return n=r,!0}),n&&t.remove(n)}removeFeature(e){if(!e)return;const t=ke(e);t in this.nullGeometryFeatures_?delete this.nullGeometryFeatures_[t]:this.featuresRtree_&&this.featuresRtree_.remove(e),this.removeFeatureInternal(e)&&this.changed()}removeFeatureInternal(e){const t=ke(e),n=this.featureChangeKeys_[t];if(!n)return;n.forEach(zt),delete this.featureChangeKeys_[t];const r=e.getId();return r!==void 0&&delete this.idIndex_[r.toString()],delete this.uidIndex_[t],this.dispatchEvent(new io(er.REMOVEFEATURE,e)),e}removeFromIdIndex_(e){let t=!1;for(const n in this.idIndex_){const r=this.idIndex_[n];if(e instanceof qi&&Array.isArray(r)&&r.includes(e))r.splice(r.indexOf(e),1);else if(this.idIndex_[n]===e){delete this.idIndex_[n],t=!0;break}}return t}setLoader(e){this.loader_=e}setUrl(e){vt(this.format_,"`format` must be set when `url` is set"),this.url_=e,this.setLoader(IC(e,this.format_))}}const Ao=4;function hh(i,e){const t=[];Object.keys(e).forEach(function(r){e[r]!==null&&e[r]!==void 0&&t.push(r+"="+encodeURIComponent(e[r]))});const n=t.join("&");return i=i.replace(/[?&]$/,""),i+=i.includes("?")?"&":"?",i+n}function Im(i){return Array.isArray(i)?Math.min(...i):i}class sk extends I1{constructor(e,t,n,r,s,o,a){let l=e.getExtent();l&&e.canWrapX()&&(l=l.slice(),l[0]=-1/0,l[2]=1/0);let c=t.getExtent();c&&t.canWrapX()&&(c=c.slice(),c[0]=-1/0,c[2]=1/0);const u=c?So(n,c):n,h=hs(u),d=nh(e,t,h,r),f=S1,g=new F1(e,t,u,l,d*f,r),p=g.calculateSourceExtent(),m=Tc(p)?null:o(p,d,s),v=m?Ye.IDLE:Ye.EMPTY,y=m?m.getPixelRatio():1;super(n,r,y,v),this.targetProj_=t,this.maxSourceExtent_=l,this.triangulation_=g,this.targetResolution_=r,this.targetExtent_=n,this.sourceImage_=m,this.sourcePixelRatio_=y,this.interpolate_=a,this.canvas_=null,this.sourceListenerKey_=null}disposeInternal(){this.state==Ye.LOADING&&this.unlistenSource_(),super.disposeInternal()}getImage(){return this.canvas_}getProjection(){return this.targetProj_}reproject_(){const e=this.sourceImage_.getState();if(e==Ye.LOADED){const t=Rt(this.targetExtent_)/this.targetResolution_,n=fn(this.targetExtent_)/this.targetResolution_;this.canvas_=N1(t,n,this.sourcePixelRatio_,Im(this.sourceImage_.getResolution()),this.maxSourceExtent_,this.targetResolution_,this.targetExtent_,this.triangulation_,[{extent:this.sourceImage_.getExtent(),image:this.sourceImage_.getImage()}],0,void 0,this.interpolate_,!0)}this.state=e,this.changed()}load(){if(this.state==Ye.IDLE){this.state=Ye.LOADING,this.changed();const e=this.sourceImage_.getState();e==Ye.LOADED||e==Ye.ERROR?this.reproject_():(this.sourceListenerKey_=ht(this.sourceImage_,ze.CHANGE,function(t){const n=this.sourceImage_.getState();(n==Ye.LOADED||n==Ye.ERROR)&&(this.unlistenSource_(),this.reproject_())},this),this.sourceImage_.load())}}unlistenSource_(){zt(this.sourceListenerKey_),this.sourceListenerKey_=null}}const K0={IMAGELOADSTART:"imageloadstart",IMAGELOADEND:"imageloadend",IMAGELOADERROR:"imageloaderror"};class ok extends fr{constructor(e,t){super(e),this.image=t}}class ak extends jv{constructor(e){super({attributions:e.attributions,projection:e.projection,state:e.state,interpolate:e.interpolate!==void 0?e.interpolate:!0}),this.on,this.once,this.un,this.loader=e.loader||null,this.resolutions_=e.resolutions!==void 0?e.resolutions:null,this.reprojectedImage_=null,this.reprojectedRevision_=0,this.image=null,this.wantedExtent_,this.wantedResolution_,this.static_=e.loader?e.loader.length===0:!1,this.wantedProjection_=null}getResolutions(){return this.resolutions_}setResolutions(e){this.resolutions_=e}findNearestResolution(e){const t=this.getResolutions();if(t){const n=Vg(t,e,0);e=t[n]}return e}getImage(e,t,n,r){const s=this.getProjection();if(!s||!r||$r(s,r))return s&&(r=s),this.getImageInternal(e,t,n,r);if(this.reprojectedImage_){if(this.reprojectedRevision_==this.getRevision()&&$r(this.reprojectedImage_.getProjection(),r)&&this.reprojectedImage_.getResolution()==t&&No(this.reprojectedImage_.getExtent(),e))return this.reprojectedImage_;this.reprojectedImage_.dispose(),this.reprojectedImage_=null}return this.reprojectedImage_=new sk(s,r,e,t,n,(o,a,l)=>this.getImageInternal(o,a,l,s),this.getInterpolate()),this.reprojectedRevision_=this.getRevision(),this.reprojectedImage_}getImageInternal(e,t,n,r){if(this.loader){const s=Nw(e,t,n,1),o=this.findNearestResolution(t);if(this.image&&(this.static_||this.wantedProjection_===r&&(this.wantedExtent_&&Gr(this.wantedExtent_,s)||Gr(this.image.getExtent(),s))&&(this.wantedResolution_&&Im(this.wantedResolution_)===o||Im(this.image.getResolution())===o)))return this.image;this.wantedProjection_=r,this.wantedExtent_=s,this.wantedResolution_=o,this.image=new I1(s,o,n,this.loader),this.image.addEventListener(ze.CHANGE,this.handleImageChange.bind(this))}return this.image}handleImageChange(e){const t=e.target;let n;switch(t.getState()){case Ye.LOADING:this.loading=!0,n=K0.IMAGELOADSTART;break;case Ye.LOADED:this.loading=!1,n=K0.IMAGELOADEND;break;case Ye.ERROR:this.loading=!1,n=K0.IMAGELOADERROR;break;default:return}this.hasListener(n)&&this.dispatchEvent(new ok(n,t))}}function lk(i,e){i.getImage().src=e}function Nw(i,e,t,n){const r=e/t,s=hs(i),o=po(Rt(i)/r,Ao),a=po(fn(i)/r,Ao),l=po((n-1)*o/2,Ao),c=o+2*l,u=po((n-1)*a/2,Ao),h=a+2*u;return ih(s,r,0,[c,h])}const Nf="1.3.0",SC=[101,101];function Uw(i,e,t,n,r){r.WIDTH=t[0],r.HEIGHT=t[1];const s=n.getAxisOrientation();let o;const a=Gv(r.VERSION,"1.3")>=0;return r[a?"CRS":"SRS"]=n.getCode(),a&&s.substr(0,2)=="ne"?o=[e[1],e[0],e[3],e[2]]:o=e,r.BBOX=o.join(","),hh(i,r)}function Bw(i,e,t,n,r,s,o){s=Object.assign({REQUEST:"GetMap"},s);const a=e/t,l=[J_(Rt(i)/a,Ao),J_(fn(i)/a,Ao)];if(t!=1)switch(o){case"geoserver":const u=90*t+.5|0;"FORMAT_OPTIONS"in s?s.FORMAT_OPTIONS+=";dpi:"+u:s.FORMAT_OPTIONS="dpi:"+u;break;case"mapserver":s.MAP_RESOLUTION=90*t;break;case"carmentaserver":case"qgis":s.DPI=90*t;break;default:throw new Error("Unknown `serverType` configured")}return Uw(r,i,l,n,s)}function Uf(i,e){return Object.assign({REQUEST:e,SERVICE:"WMS",VERSION:Nf,FORMAT:"image/png",STYLES:"",TRANSPARENT:!0},i)}function ck(i){const e=i.hidpi===void 0?!0:i.hidpi,t=Re(i.projection||"EPSG:3857"),n=i.ratio||1.5,r=i.load||w1;return(s,o,a)=>{s=Nw(s,o,a,n),a!=1&&(!e||i.serverType===void 0)&&(a=1);const l=Bw(s,o,a,t,i.url,Uf(i.params,"GetMap"),i.serverType),c=new Image;return i.crossOrigin!==null&&(c.crossOrigin=i.crossOrigin),r(c,l).then(u=>({image:u,extent:s,pixelRatio:a}))}}function uk(i,e,t){if(i.url===void 0)return;const n=Re(i.projection||"EPSG:3857"),r=ih(e,t,0,SC),s={QUERY_LAYERS:i.params.LAYERS,INFO_FORMAT:"application/json"};Object.assign(s,Uf(i.params,"GetFeatureInfo"),i.params);const o=Sl((e[0]-r[0])/t,Ao),a=Sl((r[3]-e[1])/t,Ao),l=Gv(s.VERSION,"1.3")>=0;return s[l?"I":"X"]=o,s[l?"J":"Y"]=a,Uw(i.url,r,SC,n,s)}function hk(i,e){if(i.url===void 0)return;const t={SERVICE:"WMS",VERSION:Nf,REQUEST:"GetLegendGraphic",FORMAT:"image/png"};if(i.params===void 0||i.params.LAYER===void 0){const n=i.params.LAYERS;if(!(!Array.isArray(n)||n.length===1))return;t.LAYER=n}if(e!==void 0){const n=Re(i.projection||"EPSG:3857").getMetersPerUnit()||1,r=28e-5;t.SCALE=e*n/r}return Object.assign(t,i.params),hh(i.url,t)}class py extends $g{constructor(e){e=e||{};const t=Object.assign({},e.params),n="TRANSPARENT"in t?t.TRANSPARENT:!0;super({attributions:e.attributions,attributionsCollapsible:e.attributionsCollapsible,cacheSize:e.cacheSize,crossOrigin:e.crossOrigin,interpolate:e.interpolate,opaque:!n,projection:e.projection,reprojectionErrorThreshold:e.reprojectionErrorThreshold,tileClass:e.tileClass,tileGrid:e.tileGrid,tileLoadFunction:e.tileLoadFunction,url:e.url,urls:e.urls,wrapX:e.wrapX!==void 0?e.wrapX:!0,transition:e.transition,zDirection:e.zDirection}),this.gutter_=e.gutter!==void 0?e.gutter:0,this.params_=t,this.v13_=!0,this.serverType_=e.serverType,this.hidpi_=e.hidpi!==void 0?e.hidpi:!0,this.tmpExtent_=Yn(),this.updateV13_(),this.setKey(this.getKeyForParams_())}getFeatureInfoUrl(e,t,n,r){const s=Re(n),o=this.getProjection()||s;let a=this.getTileGrid();a||(a=this.getTileGridForProjection(o));const l=Et(e,s,o),c=nh(o,s,e,t),u=a.getZForResolution(c,this.zDirection),h=a.getResolution(u),d=a.getTileCoordForCoordAndZ(l,u);if(a.getResolutions().length<=d[0])return;let f=a.getTileCoordExtent(d,this.tmpExtent_);const g=this.gutter_;g!==0&&(f=Fr(f,h*g,f));const p={QUERY_LAYERS:this.params_.LAYERS};Object.assign(p,Uf(this.params_,"GetFeatureInfo"),r);const m=Math.floor((l[0]-f[0])/h),v=Math.floor((f[3]-l[1])/h);return p[this.v13_?"I":"X"]=m,p[this.v13_?"J":"Y"]=v,this.getRequestUrl_(d,f,1,o||s,p)}getLegendUrl(e,t){if(this.urls[0]===void 0)return;const n={SERVICE:"WMS",VERSION:Nf,REQUEST:"GetLegendGraphic",FORMAT:"image/png"};if(t===void 0||t.LAYER===void 0){const r=this.params_.LAYERS;if(!(!Array.isArray(r)||r.length===1))return;n.LAYER=r}if(e!==void 0){const r=this.getProjection()?this.getProjection().getMetersPerUnit():1,s=28e-5;n.SCALE=e*r/s}return Object.assign(n,t),hh(this.urls[0],n)}getGutter(){return this.gutter_}getParams(){return this.params_}getRequestUrl_(e,t,n,r,s){const o=this.urls;if(!o)return;let a;if(o.length==1)a=o[0];else{const l=xa(j1(e),o.length);a=o[l]}return Bw(t,(this.tileGrid||this.getTileGridForProjection(r)).getResolution(e[0]),n,r,a,s,this.serverType_)}getTilePixelRatio(e){return!this.hidpi_||this.serverType_===void 0?1:e}getKeyForParams_(){let e=0;const t=[];for(const n in this.params_)t[e++]=n+"-"+this.params_[n];return t.join("/")}updateParams(e){Object.assign(this.params_,e),this.updateV13_(),this.setKey(this.getKeyForParams_())}updateV13_(){const e=this.params_.VERSION||Nf;this.v13_=Gv(e,"1.3")>=0}tileUrlFunction(e,t,n){let r=this.getTileGrid();if(r||(r=this.getTileGridForProjection(n)),r.getResolutions().length<=e[0])return;t!=1&&(!this.hidpi_||this.serverType_===void 0)&&(t=1);const s=r.getResolution(e[0]);let o=r.getTileCoordExtent(e,this.tmpExtent_);const a=this.gutter_;a!==0&&(o=Fr(o,s*a,o));const l=Object.assign({},Uf(this.params_,"GetMap"));return this.getRequestUrl_(e,o,t,n,l)}}let my=class extends $g{constructor(e){const t=e.requestEncoding!==void 0?e.requestEncoding:"KVP",n=e.tileGrid;let r=e.urls;r===void 0&&e.url!==void 0&&(r=Yv(e.url)),super({attributions:e.attributions,attributionsCollapsible:e.attributionsCollapsible,cacheSize:e.cacheSize,crossOrigin:e.crossOrigin,interpolate:e.interpolate,projection:e.projection,reprojectionErrorThreshold:e.reprojectionErrorThreshold,tileClass:e.tileClass,tileGrid:n,tileLoadFunction:e.tileLoadFunction,tilePixelRatio:e.tilePixelRatio,urls:r,wrapX:e.wrapX!==void 0?e.wrapX:!1,transition:e.transition,zDirection:e.zDirection}),this.version_=e.version!==void 0?e.version:"1.0.0",this.format_=e.format!==void 0?e.format:"image/jpeg",this.dimensions_=e.dimensions!==void 0?e.dimensions:{},this.layer_=e.layer,this.matrixSet_=e.matrixSet,this.style_=e.style,this.requestEncoding_=t,this.setKey(this.getKeyForDimensions_()),r&&r.length>0&&(this.tileUrlFunction=um(r.map(this.createFromWMTSTemplate.bind(this))))}setUrls(e){this.urls=e;const t=e.join(` +`);this.setTileUrlFunction(um(e.map(this.createFromWMTSTemplate.bind(this))),t)}getDimensions(){return this.dimensions_}getFormat(){return this.format_}getLayer(){return this.layer_}getMatrixSet(){return this.matrixSet_}getRequestEncoding(){return this.requestEncoding_}getStyle(){return this.style_}getVersion(){return this.version_}getKeyForDimensions_(){const e=this.urls?this.urls.slice(0):[];for(const t in this.dimensions_)e.push(t+"-"+this.dimensions_[t]);return e.join("/")}updateDimensions(e){Object.assign(this.dimensions_,e),this.setKey(this.getKeyForDimensions_())}createFromWMTSTemplate(e){const t=this.requestEncoding_,n={layer:this.layer_,style:this.style_,tilematrixset:this.matrixSet_};t=="KVP"&&Object.assign(n,{Service:"WMTS",Request:"GetTile",Version:this.version_,Format:this.format_}),e=t=="KVP"?hh(e,n):e.replace(/\{(\w+?)\}/g,function(o,a){return a.toLowerCase()in n?n[a.toLowerCase()]:o});const r=this.tileGrid,s=this.dimensions_;return function(o,a,l){if(!o)return;const c={TileMatrix:r.getMatrixId(o[0]),TileCol:o[1],TileRow:o[2]};Object.assign(c,s);let u=e;return t=="KVP"?u=hh(u,c):u=u.replace(/\{(\w+?)\}/g,function(h,d){return c[d]}),u}}};class dk extends ak{constructor(e){e=e||{},super({attributions:e.attributions,interpolate:e.interpolate,projection:e.projection,resolutions:e.resolutions}),this.crossOrigin_=e.crossOrigin!==void 0?e.crossOrigin:null,this.url_=e.url,this.imageLoadFunction_=e.imageLoadFunction!==void 0?e.imageLoadFunction:lk,this.params_=e.params,this.serverType_=e.serverType,this.hidpi_=e.hidpi!==void 0?e.hidpi:!0,this.renderedRevision_=0,this.ratio_=e.ratio!==void 0?e.ratio:1.5,this.loaderProjection_=null}getFeatureInfoUrl(e,t,n,r){const s=Re(n),o=this.getProjection();o&&o!==s&&(t=nh(o,s,e,t),e=Et(e,s,o));const a={url:this.url_,params:{...this.params_,...r},projection:o||s};return uk(a,e,t)}getLegendUrl(e,t){return hk({url:this.url_,params:{...this.params_,...t}},e)}getParams(){return this.params_}getImageInternal(e,t,n,r){return this.url_===void 0?null:((!this.loader||this.loaderProjection_!==r)&&(this.loaderProjection_=r,this.loader=ck({crossOrigin:this.crossOrigin_,params:this.params_,projection:r,serverType:this.serverType_,hidpi:this.hidpi_,url:this.url_,ratio:this.ratio_,load:(s,o)=>(this.image.setImage(s),this.imageLoadFunction_(this.image,o),w1(s))})),super.getImageInternal(e,t,n,r))}getImageLoadFunction(){return this.imageLoadFunction_}getUrl(){return this.url_}setImageLoadFunction(e){this.imageLoadFunction_=e,this.changed()}setUrl(e){e!=this.url_&&(this.url_=e,this.loader=null,this.changed())}updateParams(e){Object.assign(this.params_,e),this.changed()}changed(){this.image=null,super.changed()}}const fk=dk;class vy{constructor(e){this.opacity_=e.opacity,this.rotateWithView_=e.rotateWithView,this.rotation_=e.rotation,this.scale_=e.scale,this.scaleArray_=Sn(e.scale),this.displacement_=e.displacement,this.declutterMode_=e.declutterMode}clone(){const e=this.getScale();return new vy({opacity:this.getOpacity(),scale:Array.isArray(e)?e.slice():e,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()})}getOpacity(){return this.opacity_}getRotateWithView(){return this.rotateWithView_}getRotation(){return this.rotation_}getScale(){return this.scale_}getScaleArray(){return this.scaleArray_}getDisplacement(){return this.displacement_}getDeclutterMode(){return this.declutterMode_}getAnchor(){return We()}getImage(e){return We()}getHitDetectionImage(){return We()}getPixelRatio(e){return 1}getImageState(){return We()}getImageSize(){return We()}getOrigin(){return We()}getSize(){return We()}setDisplacement(e){this.displacement_=e}setOpacity(e){this.opacity_=e}setRotateWithView(e){this.rotateWithView_=e}setRotation(e){this.rotation_=e}setScale(e){this.scale_=e,this.scaleArray_=Sn(e)}listenImageChange(e){We()}load(){We()}unlistenImageChange(e){We()}}const Bf=vy;function is(i){return Array.isArray(i)?gw(i):i}class s0 extends Bf{constructor(e){const t=e.rotateWithView!==void 0?e.rotateWithView:!1;super({opacity:1,rotateWithView:t,rotation:e.rotation!==void 0?e.rotation:0,scale:e.scale!==void 0?e.scale:1,displacement:e.displacement!==void 0?e.displacement:[0,0],declutterMode:e.declutterMode}),this.canvases_,this.hitDetectionCanvas_=null,this.fill_=e.fill!==void 0?e.fill:null,this.origin_=[0,0],this.points_=e.points,this.radius_=e.radius!==void 0?e.radius:e.radius1,this.radius2_=e.radius2,this.angle_=e.angle!==void 0?e.angle:0,this.stroke_=e.stroke!==void 0?e.stroke:null,this.size_,this.renderOptions_,this.render()}clone(){const e=this.getScale(),t=new s0({fill:this.getFill()?this.getFill().clone():void 0,points:this.getPoints(),radius:this.getRadius(),radius2:this.getRadius2(),angle:this.getAngle(),stroke:this.getStroke()?this.getStroke().clone():void 0,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),scale:Array.isArray(e)?e.slice():e,displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()});return t.setOpacity(this.getOpacity()),t}getAnchor(){const e=this.size_,t=this.getDisplacement(),n=this.getScaleArray();return[e[0]/2-t[0]/n[0],e[1]/2+t[1]/n[1]]}getAngle(){return this.angle_}getFill(){return this.fill_}setFill(e){this.fill_=e,this.render()}getHitDetectionImage(){return this.hitDetectionCanvas_||(this.hitDetectionCanvas_=this.createHitDetectionCanvas_(this.renderOptions_)),this.hitDetectionCanvas_}getImage(e){let t=this.canvases_[e];if(!t){const n=this.renderOptions_,r=yn(n.size*e,n.size*e);this.draw_(n,r,e),t=r.canvas,this.canvases_[e]=t}return t}getPixelRatio(e){return e}getImageSize(){return this.size_}getImageState(){return Ye.LOADED}getOrigin(){return this.origin_}getPoints(){return this.points_}getRadius(){return this.radius_}getRadius2(){return this.radius2_}getSize(){return this.size_}getStroke(){return this.stroke_}setStroke(e){this.stroke_=e,this.render()}listenImageChange(e){}load(){}unlistenImageChange(e){}calculateLineJoinSize_(e,t,n){if(t===0||this.points_===1/0||e!=="bevel"&&e!=="miter")return t;let r=this.radius_,s=this.radius2_===void 0?r:this.radius2_;if(r{this.image_=e,this.handleImageLoad_()}).catch(this.handleImageError_.bind(this))}}replaceColor_(e){if(!this.color_||this.canvas_[e]||this.imageState_!==Ye.LOADED)return;const t=this.image_,n=document.createElement("canvas");n.width=Math.ceil(t.width*e),n.height=Math.ceil(t.height*e);const r=n.getContext("2d");r.scale(e,e),r.drawImage(t,0,0),r.globalCompositeOperation="multiply",r.fillStyle=dw(this.color_),r.fillRect(0,0,n.width/e,n.height/e),r.globalCompositeOperation="destination-in",r.drawImage(t,0,0),this.canvas_[e]=n}}function vk(i,e,t,n,r){let s=e===void 0?void 0:Mf.get(e,t,r);return s||(s=new mk(i,i instanceof HTMLImageElement?i.src||void 0:e,t,n,r),Mf.set(e,t,r,s)),s}function PC(i,e,t,n){return t!==void 0&&n!==void 0?[t/i,n/e]:t!==void 0?t/i:n!==void 0?n/e:1}class Qt extends Bf{constructor(e){e=e||{};const t=e.opacity!==void 0?e.opacity:1,n=e.rotation!==void 0?e.rotation:0,r=e.scale!==void 0?e.scale:1,s=e.rotateWithView!==void 0?e.rotateWithView:!1;super({opacity:t,rotation:n,scale:r,displacement:e.displacement!==void 0?e.displacement:[0,0],rotateWithView:s,declutterMode:e.declutterMode}),this.anchor_=e.anchor!==void 0?e.anchor:[.5,.5],this.normalizedAnchor_=null,this.anchorOrigin_=e.anchorOrigin!==void 0?e.anchorOrigin:"top-left",this.anchorXUnits_=e.anchorXUnits!==void 0?e.anchorXUnits:"fraction",this.anchorYUnits_=e.anchorYUnits!==void 0?e.anchorYUnits:"fraction",this.crossOrigin_=e.crossOrigin!==void 0?e.crossOrigin:null;const o=e.img!==void 0?e.img:null;let a=e.src;vt(!(a!==void 0&&o),"`image` and `src` cannot be provided at the same time"),(a===void 0||a.length===0)&&o&&(a=o.src||ke(o)),vt(a!==void 0&&a.length>0,"A defined and non-empty `src` or `image` must be provided"),vt(!((e.width!==void 0||e.height!==void 0)&&e.scale!==void 0),"`width` or `height` cannot be provided together with `scale`");let l;if(e.src!==void 0?l=Ye.IDLE:o!==void 0&&(o instanceof HTMLImageElement?o.complete?l=o.src?Ye.LOADED:Ye.IDLE:l=Ye.LOADING:l=Ye.LOADED),this.color_=e.color!==void 0?oh(e.color):null,this.iconImage_=vk(o,a,this.crossOrigin_,l,this.color_),this.offset_=e.offset!==void 0?e.offset:[0,0],this.offsetOrigin_=e.offsetOrigin!==void 0?e.offsetOrigin:"top-left",this.origin_=null,this.size_=e.size!==void 0?e.size:null,e.width!==void 0||e.height!==void 0){let c,u;if(e.size)[c,u]=e.size;else{const h=this.getImage(1);if(h.width&&h.height)c=h.width,u=h.height;else if(h instanceof HTMLImageElement){this.initialOptions_=e;const d=()=>{if(this.unlistenImageChange(d),!this.initialOptions_)return;const f=this.iconImage_.getSize();this.setScale(PC(f[0],f[1],e.width,e.height))};this.listenImageChange(d);return}}c!==void 0&&this.setScale(PC(c,u,e.width,e.height))}}clone(){let e,t,n;return this.initialOptions_?(t=this.initialOptions_.width,n=this.initialOptions_.height):(e=this.getScale(),e=Array.isArray(e)?e.slice():e),new Qt({anchor:this.anchor_.slice(),anchorOrigin:this.anchorOrigin_,anchorXUnits:this.anchorXUnits_,anchorYUnits:this.anchorYUnits_,color:this.color_&&this.color_.slice?this.color_.slice():this.color_||void 0,crossOrigin:this.crossOrigin_,offset:this.offset_.slice(),offsetOrigin:this.offsetOrigin_,opacity:this.getOpacity(),rotateWithView:this.getRotateWithView(),rotation:this.getRotation(),scale:e,width:t,height:n,size:this.size_!==null?this.size_.slice():void 0,src:this.getSrc(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()})}getAnchor(){let e=this.normalizedAnchor_;if(!e){e=this.anchor_;const r=this.getSize();if(this.anchorXUnits_=="fraction"||this.anchorYUnits_=="fraction"){if(!r)return null;e=this.anchor_.slice(),this.anchorXUnits_=="fraction"&&(e[0]*=r[0]),this.anchorYUnits_=="fraction"&&(e[1]*=r[1])}if(this.anchorOrigin_!="top-left"){if(!r)return null;e===this.anchor_&&(e=this.anchor_.slice()),(this.anchorOrigin_=="top-right"||this.anchorOrigin_=="bottom-right")&&(e[0]=-e[0]+r[0]),(this.anchorOrigin_=="bottom-left"||this.anchorOrigin_=="bottom-right")&&(e[1]=-e[1]+r[1])}this.normalizedAnchor_=e}const t=this.getDisplacement(),n=this.getScaleArray();return[e[0]-t[0]/n[0],e[1]+t[1]/n[1]]}setAnchor(e){this.anchor_=e,this.normalizedAnchor_=null}getColor(){return this.color_}getImage(e){return this.iconImage_.getImage(e)}getPixelRatio(e){return this.iconImage_.getPixelRatio(e)}getImageSize(){return this.iconImage_.getSize()}getImageState(){return this.iconImage_.getImageState()}getHitDetectionImage(){return this.iconImage_.getHitDetectionImage()}getOrigin(){if(this.origin_)return this.origin_;let e=this.offset_;if(this.offsetOrigin_!="top-left"){const t=this.getSize(),n=this.iconImage_.getSize();if(!t||!n)return null;e=e.slice(),(this.offsetOrigin_=="top-right"||this.offsetOrigin_=="bottom-right")&&(e[0]=n[0]-t[0]-e[0]),(this.offsetOrigin_=="bottom-left"||this.offsetOrigin_=="bottom-right")&&(e[1]=n[1]-t[1]-e[1])}return this.origin_=e,this.origin_}getSrc(){return this.iconImage_.getSrc()}getSize(){return this.size_?this.size_:this.iconImage_.getSize()}getWidth(){const e=this.getScaleArray();if(this.size_)return this.size_[0]*e[0];if(this.iconImage_.getImageState()==Ye.LOADED)return this.iconImage_.getSize()[0]*e[0]}getHeight(){const e=this.getScaleArray();if(this.size_)return this.size_[1]*e[1];if(this.iconImage_.getImageState()==Ye.LOADED)return this.iconImage_.getSize()[1]*e[1]}setScale(e){delete this.initialOptions_,super.setScale(e)}listenImageChange(e){this.iconImage_.addEventListener(ze.CHANGE,e)}load(){this.iconImage_.load()}unlistenImageChange(e){this.iconImage_.removeEventListener(ze.CHANGE,e)}}const yk="#333";class Cy{constructor(e){e=e||{},this.font_=e.font,this.rotation_=e.rotation,this.rotateWithView_=e.rotateWithView,this.scale_=e.scale,this.scaleArray_=Sn(e.scale!==void 0?e.scale:1),this.text_=e.text,this.textAlign_=e.textAlign,this.justify_=e.justify,this.repeat_=e.repeat,this.textBaseline_=e.textBaseline,this.fill_=e.fill!==void 0?e.fill:new $e({color:yk}),this.maxAngle_=e.maxAngle!==void 0?e.maxAngle:Math.PI/4,this.placement_=e.placement!==void 0?e.placement:"point",this.overflow_=!!e.overflow,this.stroke_=e.stroke!==void 0?e.stroke:null,this.offsetX_=e.offsetX!==void 0?e.offsetX:0,this.offsetY_=e.offsetY!==void 0?e.offsetY:0,this.backgroundFill_=e.backgroundFill?e.backgroundFill:null,this.backgroundStroke_=e.backgroundStroke?e.backgroundStroke:null,this.padding_=e.padding===void 0?null:e.padding}clone(){const e=this.getScale();return new Cy({font:this.getFont(),placement:this.getPlacement(),repeat:this.getRepeat(),maxAngle:this.getMaxAngle(),overflow:this.getOverflow(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),scale:Array.isArray(e)?e.slice():e,text:this.getText(),textAlign:this.getTextAlign(),justify:this.getJustify(),textBaseline:this.getTextBaseline(),fill:this.getFill()?this.getFill().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,offsetX:this.getOffsetX(),offsetY:this.getOffsetY(),backgroundFill:this.getBackgroundFill()?this.getBackgroundFill().clone():void 0,backgroundStroke:this.getBackgroundStroke()?this.getBackgroundStroke().clone():void 0,padding:this.getPadding()||void 0})}getOverflow(){return this.overflow_}getFont(){return this.font_}getMaxAngle(){return this.maxAngle_}getPlacement(){return this.placement_}getRepeat(){return this.repeat_}getOffsetX(){return this.offsetX_}getOffsetY(){return this.offsetY_}getFill(){return this.fill_}getRotateWithView(){return this.rotateWithView_}getRotation(){return this.rotation_}getScale(){return this.scale_}getScaleArray(){return this.scaleArray_}getStroke(){return this.stroke_}getText(){return this.text_}getTextAlign(){return this.textAlign_}getJustify(){return this.justify_}getTextBaseline(){return this.textBaseline_}getBackgroundFill(){return this.backgroundFill_}getBackgroundStroke(){return this.backgroundStroke_}getPadding(){return this.padding_}setOverflow(e){this.overflow_=e}setFont(e){this.font_=e}setMaxAngle(e){this.maxAngle_=e}setOffsetX(e){this.offsetX_=e}setOffsetY(e){this.offsetY_=e}setPlacement(e){this.placement_=e}setRepeat(e){this.repeat_=e}setRotateWithView(e){this.rotateWithView_=e}setFill(e){this.fill_=e}setRotation(e){this.rotation_=e}setScale(e){this.scale_=e,this.scaleArray_=Sn(e!==void 0?e:1)}setStroke(e){this.stroke_=e}setText(e){this.text_=e}setTextAlign(e){this.textAlign_=e}setJustify(e){this.justify_=e}setTextBaseline(e){this.textBaseline_=e}setBackgroundFill(e){this.backgroundFill_=e}setBackgroundStroke(e){this.backgroundStroke_=e}setPadding(e){this.padding_=e}}const Nr=Cy;let Fc=0;const Nc=0,ui=1<",GreaterThanOrEqualTo:">=",LessThan:"<",LessThanOrEqualTo:"<=",Multiply:"*",Divide:"/",Add:"+",Subtract:"-",Clamp:"clamp",Mod:"%",Pow:"^",Abs:"abs",Floor:"floor",Ceil:"ceil",Round:"round",Sin:"sin",Cos:"cos",Atan:"atan",Sqrt:"sqrt",Match:"match",Between:"between",Interpolate:"interpolate",Case:"case",In:"in",Number:"number",String:"string",Array:"array",Color:"color",Id:"id",Band:"band",Palette:"palette"},Ek={[re.Get]:et(([i,e])=>e!==void 0?Ik(e.value):On,ut(1,2),wk),[re.Var]:et(([i])=>i.type,ut(1,1),bk),[re.Id]:et(De|Or,tu,Sk),[re.Concat]:et(Or,ut(2,1/0),xt(On)),[re.GeometryType]:et(Or,tu),[re.Resolution]:et(De,tu),[re.Zoom]:et(De,tu),[re.Time]:et(De,tu),[re.Any]:et(ui,ut(2,1/0),xt(ui)),[re.All]:et(ui,ut(2,1/0),xt(ui)),[re.Not]:et(ui,ut(1,1),xt(ui)),[re.Equal]:et(ui,ut(2,2),xt(On),ia),[re.NotEqual]:et(ui,ut(2,2),xt(On),ia),[re.GreaterThan]:et(ui,ut(2,2),xt(On),ia),[re.GreaterThanOrEqualTo]:et(ui,ut(2,2),xt(On),ia),[re.LessThan]:et(ui,ut(2,2),xt(On),ia),[re.LessThanOrEqualTo]:et(ui,ut(2,2),xt(On),ia),[re.Multiply]:et(i=>{let e=De|ln;for(let t=0;t{let e=On;for(let t=2;t{let e=ln|De;for(let t=3;t{let e=On;for(let t=1;ti.length===3||i.length===4?Uo|ln:Uo,ut(1,1/0),xt(De)),[re.Color]:et(ln,ut(3,4),xt(De)),[re.Band]:et(De,ut(1,3),xt(De)),[re.Palette]:et(ln,ut(2,2),Lk)};function wk(i,e){const t=Ot(i[1],e);if(!(t instanceof _o))throw new Error("Expected a literal argument for get operation");if(typeof t.value!="string")throw new Error("Expected a string argument for get operation");if(e.properties.add(t.value),i.length===3){const n=Ot(i[2],e);return[t,n]}return[t]}function bk(i,e,t,n){const r=i[1];if(typeof r!="string")throw new Error("Expected a string argument for var operation");if(e.variables.add(r),!("variables"in e.style)||e.style.variables[r]===void 0)return[new _o(On,r)];const s=e.style.variables[r],o=Ot(s,e);if(o.value=r,n&&!ss(n,o.type))throw new Error(`The variable ${r} has type ${pn(o.type)} but the following type was expected: ${pn(n)}`);return[o]}function Sk(i,e){e.featureId=!0}function tu(i,e){const t=i[0];if(i.length!==1)throw new Error(`Expected no arguments for ${t} operation`);return[]}function ut(i,e){return function(t,n){const r=t[0],s=t.length-1;if(i===e){if(s!==i){const o=i===1?"":"s";throw new Error(`Expected ${i} argument${o} for ${r}, got ${s}`)}}else if(se){const o=e===1/0?`${i} or more`:`${i} to ${e}`;throw new Error(`Expected ${o} arguments for ${r}, got ${s}`)}}}function xt(i){return function(e,t){const n=e[0],r=e.length-1,s=new Array(r);for(let o=0;on.featureId;case re.Concat:{const n=i.args.map(r=>Bs(r));return r=>"".concat(...n.map(s=>s(r).toString()))}case re.Resolution:return n=>n.resolution;case re.Any:case re.All:case re.Not:return Fk(i);case re.Equal:case re.NotEqual:case re.LessThan:case re.LessThanOrEqualTo:case re.GreaterThan:case re.GreaterThanOrEqualTo:return kk(i);case re.Multiply:case re.Divide:case re.Add:case re.Subtract:case re.Clamp:case re.Mod:case re.Pow:case re.Abs:case re.Floor:case re.Ceil:case re.Round:case re.Sin:case re.Cos:case re.Atan:case re.Sqrt:return Nk(i);case re.Match:return Uk(i);case re.Interpolate:return Bk(i);default:throw new Error(`Unsupported operator ${t}`)}}function Ok(i,e){const t=i.operator,n=i.args.length,r=new Array(n);for(let s=0;s{for(let o=0;or.properties[n];case re.Var:return r=>r.variables[n];default:throw new Error(`Unsupported accessor operator ${i.operator}`)}}function kk(i,e){const t=i.operator,n=Bs(i.args[0]),r=Bs(i.args[1]);switch(t){case re.Equal:return s=>n(s)===r(s);case re.NotEqual:return s=>n(s)!==r(s);case re.LessThan:return s=>n(s)n(s)<=r(s);case re.GreaterThan:return s=>n(s)>r(s);case re.GreaterThanOrEqualTo:return s=>n(s)>=r(s);default:throw new Error(`Unsupported comparison operator ${t}`)}}function Fk(i,e){const t=i.operator,n=i.args.length,r=new Array(n);for(let s=0;s{for(let o=0;o{for(let o=0;o!r[0](s);default:throw new Error(`Unsupported logical operator ${t}`)}}function Nk(i,e){const t=i.operator,n=i.args.length,r=new Array(n);for(let s=0;s{let o=1;for(let a=0;ar[0](s)/r[1](s);case re.Add:return s=>{let o=0;for(let a=0;ar[0](s)-r[1](s);case re.Clamp:return s=>{const o=r[0](s),a=r[1](s);if(ol?l:o};case re.Mod:return s=>r[0](s)%r[1](s);case re.Pow:return s=>Math.pow(r[0](s),r[1](s));case re.Abs:return s=>Math.abs(r[0](s));case re.Floor:return s=>Math.floor(r[0](s));case re.Ceil:return s=>Math.ceil(r[0](s));case re.Round:return s=>Math.round(r[0](s));case re.Sin:return s=>Math.sin(r[0](s));case re.Cos:return s=>Math.cos(r[0](s));case re.Atan:return n===2?s=>Math.atan2(r[0](s),r[1](s)):s=>Math.atan(r[0](s));case re.Sqrt:return s=>Math.sqrt(r[0](s));default:throw new Error(`Unsupported numeric operator ${t}`)}}function Uk(i,e){const t=i.args.length,n=new Array(t);for(let r=0;r{const s=n[0](r);for(let o=1;o{const s=n[0](r),o=n[1](r);let a,l;for(let c=2;c=o)return c===2?h:d?jk(s,o,a,l,u,h):uu(s,o,a,l,u,h);a=u,l=h}return l}}function uu(i,e,t,n,r,s){const o=r-t;if(o===0)return n;const a=e-t,l=i===1?a/o:(Math.pow(i,a)-1)/(Math.pow(i,o)-1);return n+l*(s-n)}function jk(i,e,t,n,r,s){if(r-t===0)return n;const a=pC(n),l=pC(s);let c=l[2]-a[2];c>180?c-=360:c<-180&&(c+=360);const u=[uu(i,e,t,a[0],r,l[0]),uu(i,e,t,a[1],r,l[1]),a[2]+uu(i,e,t,0,r,c),uu(i,e,t,n[3],r,s[3])];return fw(TO(u))}function zk(i){return!0}function Vk(i){const e=Vw(),t=Wk(i,e),n=Ww();return function(r,s){if(n.properties=r.getPropertiesInternal(),n.resolution=s,e.featureId){const o=r.getId();o!==void 0?n.featureId=o:n.featureId=null}return t(n)}}function RC(i){const e=Vw(),t=i.length,n=new Array(t);for(let o=0;o4)throw new Error(`Expected a color with 3 or 4 values for ${e}`);return t}function e3(i,e){if(typeof i=="number")return i;const t=zh(i,e);if(t.length!==2)throw new Error(`Expected an array of two numbers for ${e}`);return t}const GC={RENDER_ORDER:"renderOrder"};class Kw extends n0{constructor(e){e=e||{};const t=Object.assign({},e);delete t.style,delete t.renderBuffer,delete t.updateWhileAnimating,delete t.updateWhileInteracting,super(t),this.declutter_=e.declutter!==void 0?e.declutter:!1,this.renderBuffer_=e.renderBuffer!==void 0?e.renderBuffer:100,this.style_=null,this.styleFunction_=void 0,this.setStyle(e.style),this.updateWhileAnimating_=e.updateWhileAnimating!==void 0?e.updateWhileAnimating:!1,this.updateWhileInteracting_=e.updateWhileInteracting!==void 0?e.updateWhileInteracting:!1}getDeclutter(){return this.declutter_}getFeatures(e){return super.getFeatures(e)}getRenderBuffer(){return this.renderBuffer_}getRenderOrder(){return this.get(GC.RENDER_ORDER)}getStyle(){return this.style_}getStyleFunction(){return this.styleFunction_}getUpdateWhileAnimating(){return this.updateWhileAnimating_}getUpdateWhileInteracting(){return this.updateWhileInteracting_}renderDeclutter(e){e.declutterTree||(e.declutterTree=new Gw(9)),this.getRenderer().renderDeclutter(e)}setRenderOrder(e){this.set(GC.RENDER_ORDER,e)}setStyle(e){this.style_=t3(e),this.styleFunction_=e===null?void 0:gk(this.style_),this.changed()}}function t3(i){if(i===void 0)return pk;if(!i)return null;if(typeof i=="function"||i instanceof Ee)return i;if(!Array.isArray(i))return RC([i]);if(i.length===0)return[];const e=i.length,t=i[0];if(t instanceof Ee){const r=new Array(e);for(let s=0;sa&&(this.instructions.push([Ue.CUSTOM,a,c,e,n,vo]),this.hitDetectionInstructions.push([Ue.CUSTOM,a,c,e,r||n,vo]));break;case"Point":l=e.getFlatCoordinates(),this.coordinates.push(l[0],l[1]),c=this.coordinates.length,this.instructions.push([Ue.CUSTOM,a,c,e,n]),this.hitDetectionInstructions.push([Ue.CUSTOM,a,c,e,r||n]);break}this.endGeometry(t)}beginGeometry(e,t){this.beginGeometryInstruction1_=[Ue.BEGIN_GEOMETRY,t,0,e],this.instructions.push(this.beginGeometryInstruction1_),this.beginGeometryInstruction2_=[Ue.BEGIN_GEOMETRY,t,0,e],this.hitDetectionInstructions.push(this.beginGeometryInstruction2_)}finish(){return{instructions:this.instructions,hitDetectionInstructions:this.hitDetectionInstructions,coordinates:this.coordinates}}reverseHitDetectionInstructions(){const e=this.hitDetectionInstructions;e.reverse();let t;const n=e.length;let r,s,o=-1;for(t=0;tthis.maxLineWidth&&(this.maxLineWidth=n.lineWidth,this.bufferedMaxExtent_=null)}else n.strokeStyle=void 0,n.lineCap=void 0,n.lineDash=null,n.lineDashOffset=void 0,n.lineJoin=void 0,n.lineWidth=void 0,n.miterLimit=void 0}createFill(e){const t=e.fillStyle,n=[Ue.SET_FILL_STYLE,t];return typeof t!="string"&&n.push(!0),n}applyStroke(e){this.instructions.push(this.createStroke(e))}createStroke(e){return[Ue.SET_STROKE_STYLE,e.strokeStyle,e.lineWidth*this.pixelRatio,e.lineCap,e.lineJoin,e.miterLimit,this.applyPixelRatio(e.lineDash),e.lineDashOffset*this.pixelRatio]}updateFillStyle(e,t){const n=e.fillStyle;(typeof n!="string"||e.currentFillStyle!=n)&&(n!==void 0&&this.instructions.push(t.call(this,e)),e.currentFillStyle=n)}updateStrokeStyle(e,t){const n=e.strokeStyle,r=e.lineCap,s=e.lineDash,o=e.lineDashOffset,a=e.lineJoin,l=e.lineWidth,c=e.miterLimit;(e.currentStrokeStyle!=n||e.currentLineCap!=r||s!=e.currentLineDash&&!Hs(e.currentLineDash,s)||e.currentLineDashOffset!=o||e.currentLineJoin!=a||e.currentLineWidth!=l||e.currentMiterLimit!=c)&&(n!==void 0&&t.call(this,e),e.currentStrokeStyle=n,e.currentLineCap=r,e.currentLineDash=s,e.currentLineDashOffset=o,e.currentLineJoin=a,e.currentLineWidth=l,e.currentMiterLimit=c)}endGeometry(e){this.beginGeometryInstruction1_[2]=this.instructions.length,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_[2]=this.hitDetectionInstructions.length,this.beginGeometryInstruction2_=null;const t=[Ue.END_GEOMETRY,e];this.instructions.push(t),this.hitDetectionInstructions.push(t)}getBufferedMaxExtent(){if(!this.bufferedMaxExtent_&&(this.bufferedMaxExtent_=x1(this.maxExtent),this.maxLineWidth>0)){const e=this.resolution*(this.maxLineWidth+1)/2;Fr(this.bufferedMaxExtent_,e,this.bufferedMaxExtent_)}return this.bufferedMaxExtent_}}class i3 extends Vh{constructor(e,t,n,r){super(e,t,n,r),this.hitDetectionImage_=null,this.image_=null,this.imagePixelRatio_=void 0,this.anchorX_=void 0,this.anchorY_=void 0,this.height_=void 0,this.opacity_=void 0,this.originX_=void 0,this.originY_=void 0,this.rotateWithView_=void 0,this.rotation_=void 0,this.scale_=void 0,this.width_=void 0,this.declutterMode_=void 0,this.declutterImageWithText_=void 0}drawPoint(e,t){if(!this.image_)return;this.beginGeometry(e,t);const n=e.getFlatCoordinates(),r=e.getStride(),s=this.coordinates.length,o=this.appendFlatPointCoordinates(n,r);this.instructions.push([Ue.DRAW_IMAGE,s,o,this.image_,this.anchorX_*this.imagePixelRatio_,this.anchorY_*this.imagePixelRatio_,Math.ceil(this.height_*this.imagePixelRatio_),this.opacity_,this.originX_*this.imagePixelRatio_,this.originY_*this.imagePixelRatio_,this.rotateWithView_,this.rotation_,[this.scale_[0]*this.pixelRatio/this.imagePixelRatio_,this.scale_[1]*this.pixelRatio/this.imagePixelRatio_],Math.ceil(this.width_*this.imagePixelRatio_),this.declutterMode_,this.declutterImageWithText_]),this.hitDetectionInstructions.push([Ue.DRAW_IMAGE,s,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.height_,1,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_,this.declutterMode_,this.declutterImageWithText_]),this.endGeometry(t)}drawMultiPoint(e,t){if(!this.image_)return;this.beginGeometry(e,t);const n=e.getFlatCoordinates(),r=e.getStride(),s=this.coordinates.length,o=this.appendFlatPointCoordinates(n,r);this.instructions.push([Ue.DRAW_IMAGE,s,o,this.image_,this.anchorX_*this.imagePixelRatio_,this.anchorY_*this.imagePixelRatio_,Math.ceil(this.height_*this.imagePixelRatio_),this.opacity_,this.originX_*this.imagePixelRatio_,this.originY_*this.imagePixelRatio_,this.rotateWithView_,this.rotation_,[this.scale_[0]*this.pixelRatio/this.imagePixelRatio_,this.scale_[1]*this.pixelRatio/this.imagePixelRatio_],Math.ceil(this.width_*this.imagePixelRatio_),this.declutterMode_,this.declutterImageWithText_]),this.hitDetectionInstructions.push([Ue.DRAW_IMAGE,s,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.height_,1,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_,this.declutterMode_,this.declutterImageWithText_]),this.endGeometry(t)}finish(){return this.reverseHitDetectionInstructions(),this.anchorX_=void 0,this.anchorY_=void 0,this.hitDetectionImage_=null,this.image_=null,this.imagePixelRatio_=void 0,this.height_=void 0,this.scale_=void 0,this.opacity_=void 0,this.originX_=void 0,this.originY_=void 0,this.rotateWithView_=void 0,this.rotation_=void 0,this.width_=void 0,super.finish()}setImageStyle(e,t){const n=e.getAnchor(),r=e.getSize(),s=e.getOrigin();this.imagePixelRatio_=e.getPixelRatio(this.pixelRatio),this.anchorX_=n[0],this.anchorY_=n[1],this.hitDetectionImage_=e.getHitDetectionImage(),this.image_=e.getImage(this.pixelRatio),this.height_=r[1],this.opacity_=e.getOpacity(),this.originX_=s[0],this.originY_=s[1],this.rotateWithView_=e.getRotateWithView(),this.rotation_=e.getRotation(),this.scale_=e.getScaleArray(),this.width_=r[0],this.declutterMode_=e.getDeclutterMode(),this.declutterImageWithText_=t}}const n3=i3;class r3 extends Vh{constructor(e,t,n,r){super(e,t,n,r)}drawFlatCoordinates_(e,t,n,r){const s=this.coordinates.length,o=this.appendFlatLineCoordinates(e,t,n,r,!1,!1),a=[Ue.MOVE_TO_LINE_TO,s,o];return this.instructions.push(a),this.hitDetectionInstructions.push(a),n}drawLineString(e,t){const n=this.state,r=n.strokeStyle,s=n.lineWidth;if(r===void 0||s===void 0)return;this.updateStrokeStyle(n,this.applyStroke),this.beginGeometry(e,t),this.hitDetectionInstructions.push([Ue.SET_STROKE_STYLE,n.strokeStyle,n.lineWidth,n.lineCap,n.lineJoin,n.miterLimit,Ts,Ls],Ca);const o=e.getFlatCoordinates(),a=e.getStride();this.drawFlatCoordinates_(o,0,o.length,a),this.hitDetectionInstructions.push(Co),this.endGeometry(t)}drawMultiLineString(e,t){const n=this.state,r=n.strokeStyle,s=n.lineWidth;if(r===void 0||s===void 0)return;this.updateStrokeStyle(n,this.applyStroke),this.beginGeometry(e,t),this.hitDetectionInstructions.push([Ue.SET_STROKE_STYLE,n.strokeStyle,n.lineWidth,n.lineCap,n.lineJoin,n.miterLimit,Ts,Ls],Ca);const o=e.getEnds(),a=e.getFlatCoordinates(),l=e.getStride();let c=0;for(let u=0,h=o.length;u=i){const g=(i-a+f)/f,p=rr(c,h,g),m=rr(u,d,g);l.push(p,m),s.push(l),l=[p,m],a==i&&(o+=r),a=0}else if(a0&&s.push(l),s}function l3(i,e,t,n,r){let s=t,o=t,a=0,l=0,c=t,u,h,d,f,g,p,m,v,y,A;for(h=t;hi&&(l>a&&(a=l,s=c,o=h),l=0,c=h-r)),d=f,m=y,v=A),g=_,p=C}return l+=f,l>a?[c,h]:[s,o]}const zf={left:0,center:.5,right:1,top:0,middle:.5,hanging:.2,alphabetic:.8,ideographic:.8,bottom:1};class c3 extends Vh{constructor(e,t,n,r){super(e,t,n,r),this.labels_=null,this.text_="",this.textOffsetX_=0,this.textOffsetY_=0,this.textRotateWithView_=void 0,this.textRotation_=0,this.textFillState_=null,this.fillStates={},this.fillStates[Un]={fillStyle:Un},this.textStrokeState_=null,this.strokeStates={},this.textState_={},this.textStates={},this.textKey_="",this.fillKey_="",this.strokeKey_="",this.declutterImageWithText_=void 0}finish(){const e=super.finish();return e.textStates=this.textStates,e.fillStates=this.fillStates,e.strokeStates=this.strokeStates,e}drawText(e,t){const n=this.textFillState_,r=this.textStrokeState_,s=this.textState_;if(this.text_===""||!s||!n&&!r)return;const o=this.coordinates;let a=o.length;const l=e.getType();let c=null,u=e.getStride();if(s.placement==="line"&&(l=="LineString"||l=="MultiLineString"||l=="Polygon"||l=="MultiPolygon")){if(!Jt(this.getBufferedMaxExtent(),e.getExtent()))return;let h;if(c=e.getFlatCoordinates(),l=="LineString")h=[c.length];else if(l=="MultiLineString")h=e.getEnds();else if(l=="Polygon")h=e.getEnds().slice(0,1);else if(l=="MultiPolygon"){const p=e.getEndss();h=[];for(let m=0,v=p.length;m{const _=o[(v+A)*2]===c[A*u]&&o[(v+A)*2+1]===c[A*u+1];return _||--v,_})}this.saveTextStates_(),(s.backgroundFill||s.backgroundStroke)&&(this.setFillStrokeStyle(s.backgroundFill,s.backgroundStroke),s.backgroundFill&&this.updateFillStyle(this.state,this.createFill),s.backgroundStroke&&(this.updateStrokeStyle(this.state,this.applyStroke),this.hitDetectionInstructions.push(this.createStroke(this.state)))),this.beginGeometry(e,t);let f=s.padding;if(f!=_a&&(s.scale[0]<0||s.scale[1]<0)){let v=s.padding[0],y=s.padding[1],A=s.padding[2],_=s.padding[3];s.scale[0]<0&&(y=-y,_=-_),s.scale[1]<0&&(v=-v,A=-A),f=[v,y,A,_]}const g=this.pixelRatio;this.instructions.push([Ue.DRAW_IMAGE,a,d,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[1,1],NaN,void 0,this.declutterImageWithText_,f==_a?_a:f.map(function(v){return v*g}),!!s.backgroundFill,!!s.backgroundStroke,this.text_,this.textKey_,this.strokeKey_,this.fillKey_,this.textOffsetX_,this.textOffsetY_,h]);const p=1/g,m=this.state.fillStyle;s.backgroundFill&&(this.state.fillStyle=Un,this.hitDetectionInstructions.push(this.createFill(this.state))),this.hitDetectionInstructions.push([Ue.DRAW_IMAGE,a,d,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[p,p],NaN,void 0,this.declutterImageWithText_,f,!!s.backgroundFill,!!s.backgroundStroke,this.text_,this.textKey_,this.strokeKey_,this.fillKey_?Un:this.fillKey_,this.textOffsetX_,this.textOffsetY_,h]),s.backgroundFill&&(this.state.fillStyle=m,this.hitDetectionInstructions.push(this.createFill(this.state))),this.endGeometry(t)}}saveTextStates_(){const e=this.textStrokeState_,t=this.textState_,n=this.textFillState_,r=this.strokeKey_;e&&(r in this.strokeStates||(this.strokeStates[r]={strokeStyle:e.strokeStyle,lineCap:e.lineCap,lineDashOffset:e.lineDashOffset,lineWidth:e.lineWidth,lineJoin:e.lineJoin,miterLimit:e.miterLimit,lineDash:e.lineDash}));const s=this.textKey_;s in this.textStates||(this.textStates[s]={font:t.font,textAlign:t.textAlign||ch,justify:t.justify,textBaseline:t.textBaseline||Tf,scale:t.scale});const o=this.fillKey_;n&&(o in this.fillStates||(this.fillStates[o]={fillStyle:n.fillStyle}))}drawChars_(e,t){const n=this.textStrokeState_,r=this.textState_,s=this.strokeKey_,o=this.textKey_,a=this.fillKey_;this.saveTextStates_();const l=this.pixelRatio,c=zf[r.textBaseline],u=this.textOffsetY_*l,h=this.text_,d=n?n.lineWidth*Math.abs(r.scale[0])/2:0;this.instructions.push([Ue.DRAW_CHARS,e,t,c,r.overflow,a,r.maxAngle,l,u,s,d*l,h,o,1]),this.hitDetectionInstructions.push([Ue.DRAW_CHARS,e,t,c,r.overflow,a&&Un,r.maxAngle,l,u,s,d*l,h,o,1/l])}setTextStyle(e,t){let n,r,s;if(!e)this.text_="";else{const o=e.getFill();o?(r=this.textFillState_,r||(r={},this.textFillState_=r),r.fillStyle=is(o.getColor()||Un)):(r=null,this.textFillState_=r);const a=e.getStroke();if(!a)s=null,this.textStrokeState_=s;else{s=this.textStrokeState_,s||(s={},this.textStrokeState_=s);const g=a.getLineDash(),p=a.getLineDashOffset(),m=a.getWidth(),v=a.getMiterLimit();s.lineCap=a.getLineCap()||gc,s.lineDash=g?g.slice():Ts,s.lineDashOffset=p===void 0?Ls:p,s.lineJoin=a.getLineJoin()||pc,s.lineWidth=m===void 0?uh:m,s.miterLimit=v===void 0?ah:v,s.strokeStyle=is(a.getColor()||lh)}n=this.textState_;const l=e.getFont()||yw;Aw(l);const c=e.getScaleArray();n.overflow=e.getOverflow(),n.font=l,n.maxAngle=e.getMaxAngle(),n.placement=e.getPlacement(),n.textAlign=e.getTextAlign(),n.repeat=e.getRepeat(),n.justify=e.getJustify(),n.textBaseline=e.getTextBaseline()||Tf,n.backgroundFill=e.getBackgroundFill(),n.backgroundStroke=e.getBackgroundStroke(),n.padding=e.getPadding()||_a,n.scale=c===void 0?[1,1]:c;const u=e.getOffsetX(),h=e.getOffsetY(),d=e.getRotateWithView(),f=e.getRotation();this.text_=e.getText()||"",this.textOffsetX_=u===void 0?0:u,this.textOffsetY_=h===void 0?0:h,this.textRotateWithView_=d===void 0?!1:d,this.textRotation_=f===void 0?0:f,this.strokeKey_=s?(typeof s.strokeStyle=="string"?s.strokeStyle:ke(s.strokeStyle))+s.lineCap+s.lineDashOffset+"|"+s.lineWidth+s.lineJoin+s.miterLimit+"["+s.lineDash.join()+"]":"",this.textKey_=n.font+n.scale+(n.textAlign||"?")+(n.repeat||"?")+(n.justify||"?")+(n.textBaseline||"?"),this.fillKey_=r?typeof r.fillStyle=="string"?r.fillStyle:"|"+ke(r.fillStyle):""}this.declutterImageWithText_=t}}const u3={Circle:DC,Default:Vh,Image:n3,LineString:s3,Polygon:DC,Text:c3};class Vf{constructor(e,t,n,r){this.tolerance_=e,this.maxExtent_=t,this.pixelRatio_=r,this.resolution_=n,this.buildersByZIndex_={}}finish(){const e={};for(const t in this.buildersByZIndex_){e[t]=e[t]||{};const n=this.buildersByZIndex_[t];for(const r in n){const s=n[r].finish();e[t][r]=s}}return e}getBuilder(e,t){const n=e!==void 0?e.toString():"0";let r=this.buildersByZIndex_[n];r===void 0&&(r={},this.buildersByZIndex_[n]=r);let s=r[t];if(s===void 0){const o=u3[t];s=new o(this.tolerance_,this.maxExtent_,this.resolution_,this.pixelRatio_),r[t]=s}return s}}function h3(i,e,t,n,r,s,o,a,l,c,u,h){let d=i[e],f=i[e+1],g=0,p=0,m=0,v=0;function y(){g=d,p=f,e+=n,d=i[e],f=i[e+1],v+=m,m=Math.sqrt((d-g)*(d-g)+(f-p)*(f-p))}do y();while(eN[2]}else w=_>R;const x=Math.PI,D=[],k=I+n===e;e=I,m=0,v=b,d=i[e],f=i[e+1];let O;if(k){y(),O=Math.atan2(f-p,d-g),w&&(O+=O>0?-x:x);const N=(R+_)/2,B=(P+C)/2;return D[0]=[N,B,(S-s)/2,O,r],D}r=r.replace(/\n/g," ");for(let N=0,B=r.length;N0?-x:x),O!==void 0){let Ce=V-O;if(Ce+=Ce>x?-2*x:Ce<-x?2*x:0,Math.abs(Ce)>o)return null}O=V;const se=N;let j=0;for(;N0&&i.push(` +`,""),i.push(e,""),i}class g3{constructor(e,t,n,r){this.overlaps=n,this.pixelRatio=t,this.resolution=e,this.alignFill_,this.instructions=r.instructions,this.coordinates=r.coordinates,this.coordinateCache_={},this.renderedTransform_=Ir(),this.hitDetectionInstructions=r.hitDetectionInstructions,this.pixelCoordinates_=null,this.viewRotation_=0,this.fillStates=r.fillStates||{},this.strokeStates=r.strokeStates||{},this.textStates=r.textStates||{},this.widths_={},this.labels_={}}createLabel(e,t,n,r){const s=e+t+n+r;if(this.labels_[s])return this.labels_[s];const o=r?this.strokeStates[r]:null,a=n?this.fillStates[n]:null,l=this.textStates[t],c=this.pixelRatio,u=[l.scale[0]*c,l.scale[1]*c],h=Array.isArray(e),d=l.justify?zf[l.justify]:Q0(Array.isArray(e)?e[0]:e,l.textAlign||ch),f=r&&o.lineWidth?o.lineWidth:0,g=h?e:e.split(` +`).reduce(f3,[]),{width:p,height:m,widths:v,heights:y,lineWidths:A}=BO(l,g),_=p+f,C=[],I=(_+2)*u[0],b=(m+f)*u[1],S={width:I<0?Math.floor(I):Math.ceil(I),height:b<0?Math.floor(b):Math.ceil(b),contextInstructions:C};(u[0]!=1||u[1]!=1)&&C.push("scale",u),r&&(C.push("strokeStyle",o.strokeStyle),C.push("lineWidth",f),C.push("lineCap",o.lineCap),C.push("lineJoin",o.lineJoin),C.push("miterLimit",o.miterLimit),C.push("setLineDash",[o.lineDash]),C.push("lineDashOffset",o.lineDashOffset)),n&&C.push("fillStyle",a.fillStyle),C.push("textBaseline","middle"),C.push("textAlign","center");const R=.5-d;let P=d*_+R*f;const w=[],x=[];let D=0,k=0,O=0,N=0,B;for(let V=0,se=g.length;Ve?e-c:s,_=o+u>t?t-u:o,C=g[3]+A*d[0]+g[1],I=g[0]+_*d[1]+g[2],b=v-g[3],S=y-g[0];(p||h!==0)&&(no[0]=b,ro[0]=b,no[1]=S,As[1]=S,As[0]=b+C,_s[0]=As[0],_s[1]=S+I,ro[1]=_s[1]);let R;return h!==0?(R=Ns(Ir(),n,r,1,1,h,-n,-r),Gi(R,no),Gi(R,As),Gi(R,_s),Gi(R,ro),us(Math.min(no[0],As[0],_s[0],ro[0]),Math.min(no[1],As[1],_s[1],ro[1]),Math.max(no[0],As[0],_s[0],ro[0]),Math.max(no[1],As[1],_s[1],ro[1]),ll)):us(Math.min(b,b+C),Math.min(S,S+I),Math.max(b,b+C),Math.max(S,S+I),ll),f&&(v=Math.round(v),y=Math.round(y)),{drawImageX:v,drawImageY:y,drawImageW:A,drawImageH:_,originX:c,originY:u,declutterBox:{minX:ll[0],minY:ll[1],maxX:ll[2],maxY:ll[3],value:m},canvasTransform:R,scale:d}}replayImageOrLabel_(e,t,n,r,s,o,a){const l=!!(o||a),c=r.declutterBox,u=e.canvas,h=a?a[2]*r.scale[0]/2:0;return c.minX-h<=u.width/t&&c.maxX+h>=0&&c.minY-h<=u.height/t&&c.maxY+h>=0&&(l&&this.replayTextBackground_(e,no,As,_s,ro,o,a),jO(e,r.canvasTransform,s,n,r.originX,r.originY,r.drawImageW,r.drawImageH,r.drawImageX,r.drawImageY,r.scale)),!0}fill_(e){if(this.alignFill_){const t=Gi(this.renderedTransform_,[0,0]),n=512*this.pixelRatio;e.save(),e.translate(t[0]%n,t[1]%n),e.rotate(this.viewRotation_)}e.fill(),this.alignFill_&&e.restore()}setStrokeStyle_(e,t){e.strokeStyle=t[1],e.lineWidth=t[2],e.lineCap=t[3],e.lineJoin=t[4],e.miterLimit=t[5],e.lineDashOffset=t[7],e.setLineDash(t[6])}drawLabelWithPointPlacement_(e,t,n,r){const s=this.textStates[t],o=this.createLabel(e,t,r,n),a=this.strokeStates[n],l=this.pixelRatio,c=Q0(Array.isArray(e)?e[0]:e,s.textAlign||ch),u=zf[s.textBaseline||Tf],h=a&&a.lineWidth?a.lineWidth:0,d=o.width/l-2*s.scale[0],f=c*d+2*(.5-c)*h,g=u*o.height/l+2*(.5-u)*h;return{label:o,anchorX:f,anchorY:g}}execute_(e,t,n,r,s,o,a,l){let c;this.pixelCoordinates_&&Hs(n,this.renderedTransform_)?c=this.pixelCoordinates_:(this.pixelCoordinates_||(this.pixelCoordinates_=[]),c=Po(this.coordinates,0,this.coordinates.length,2,n,this.pixelCoordinates_),lO(this.renderedTransform_,n));let u=0;const h=r.length;let d=0,f,g,p,m,v,y,A,_,C,I,b,S,R=0,P=0,w=null,x=null;const D=this.coordinateCache_,k=this.viewRotation_,O=Math.round(Math.atan2(-n[1],n[0])*1e12)/1e12,N={context:e,pixelRatio:this.pixelRatio,resolution:this.resolution,rotation:k},B=this.instructions!=r||this.overlaps?0:200;let V,se,j,Ae;for(;uB&&(this.fill_(e),R=0),P>B&&(e.stroke(),P=0),!R&&!P&&(e.beginPath(),m=NaN,v=NaN),++u;break;case Ue.CIRCLE:d=q[1];const Ce=c[d],pe=c[d+1],Ie=c[d+2],z=c[d+3],oe=Ie-Ce,ne=z-pe,Y=Math.sqrt(oe*oe+ne*ne);e.moveTo(Ce+Y,pe),e.arc(Ce,pe,Y,0,2*Math.PI,!0),++u;break;case Ue.CLOSE_PATH:e.closePath(),++u;break;case Ue.CUSTOM:d=q[1],f=q[2];const Pe=q[3],tt=q[4],E=q.length==6?q[5]:void 0;N.geometry=Pe,N.feature=V,u in D||(D[u]=[]);const M=D[u];E?E(c,d,f,2,M):(M[0]=c[d],M[1]=c[d+1],M.length=2),tt(M,N),++u;break;case Ue.DRAW_IMAGE:d=q[1],f=q[2],_=q[3],g=q[4],p=q[5];let G=q[6];const W=q[7],X=q[8],K=q[9],ie=q[10];let $=q[11];const Q=q[12];let Z=q[13];const T=q[14],F=q[15];if(!_&&q.length>=20){C=q[19],I=q[20],b=q[21],S=q[22];const _n=this.drawLabelWithPointPlacement_(C,I,b,S);_=_n.label,q[3]=_;const Js=q[23];g=(_n.anchorX-Js)*this.pixelRatio,q[4]=g;const Tn=q[24];p=(_n.anchorY-Tn)*this.pixelRatio,q[5]=p,G=_.height,q[6]=G,Z=_.width,q[13]=Z}let U;q.length>25&&(U=q[25]);let H,te,ee;q.length>17?(H=q[16],te=q[17],ee=q[18]):(H=_a,te=!1,ee=!1),ie&&O?$+=k:!ie&&!O&&($-=k);let ue=0;for(;d0){if(!o||f!=="Image"&&f!=="Text"||o.includes(C)){const P=(d[S]-3)/4,w=r-P%a,x=r-(P/a|0),D=s(C,I,w*w+x*x);if(D)return D}u.clearRect(0,0,a,a);break}}const p=Object.keys(this.executorsByZIndex_).map(Number);p.sort(Oo);let m,v,y,A,_;for(m=p.length-1;m>=0;--m){const C=p[m].toString();for(y=this.executorsByZIndex_[C],v=$0.length-1;v>=0;--v)if(f=$0[v],A=y[f],A!==void 0&&(_=A.executeHitDetection(u,l,n,g,h),_))return _}}getClipCoords(e){const t=this.maxExtent_;if(!t)return null;const n=t[0],r=t[1],s=t[2],o=t[3],a=[n,r,n,o,s,o,s,r];return Po(a,0,8,2,e,a),a}isEmpty(){return ko(this.executorsByZIndex_)}execute(e,t,n,r,s,o,a){const l=Object.keys(this.executorsByZIndex_).map(Number);l.sort(Oo),this.maxExtent_&&(e.save(),this.clip(e,n)),o=o||$0;let c,u,h,d,f,g;for(a&&l.reverse(),c=0,u=l.length;ct)break;let l=n[a];l||(l=[],n[a]=l),l.push(((i+s)*e+(i+o))*4+3),s>0&&l.push(((i-s)*e+(i+o))*4+3),o>0&&(l.push(((i+s)*e+(i-o))*4+3),s>0&&l.push(((i-s)*e+(i-o))*4+3))}const r=[];for(let s=0,o=n.length;sh*this.pixelRatio_),lineDashOffset:(o||Ls)*this.pixelRatio_,lineJoin:a!==void 0?a:pc,lineWidth:(l!==void 0?l:uh)*this.pixelRatio_,miterLimit:c!==void 0?c:ah,strokeStyle:is(n||lh)}}}setImageStyle(e){let t;if(!e||!(t=e.getSize())){this.image_=null;return}const n=e.getPixelRatio(this.pixelRatio_),r=e.getAnchor(),s=e.getOrigin();this.image_=e.getImage(this.pixelRatio_),this.imageAnchorX_=r[0]*n,this.imageAnchorY_=r[1]*n,this.imageHeight_=t[1]*n,this.imageOpacity_=e.getOpacity(),this.imageOriginX_=s[0],this.imageOriginY_=s[1],this.imageRotateWithView_=e.getRotateWithView(),this.imageRotation_=e.getRotation();const o=e.getScaleArray();this.imageScale_=[o[0]*this.pixelRatio_/n,o[1]*this.pixelRatio_/n],this.imageWidth_=t[0]*n}setTextStyle(e){if(!e)this.text_="";else{const t=e.getFill();if(!t)this.textFillState_=null;else{const f=t.getColor();this.textFillState_={fillStyle:is(f||Un)}}const n=e.getStroke();if(!n)this.textStrokeState_=null;else{const f=n.getColor(),g=n.getLineCap(),p=n.getLineDash(),m=n.getLineDashOffset(),v=n.getLineJoin(),y=n.getWidth(),A=n.getMiterLimit();this.textStrokeState_={lineCap:g!==void 0?g:gc,lineDash:p||Ts,lineDashOffset:m||Ls,lineJoin:v!==void 0?v:pc,lineWidth:y!==void 0?y:uh,miterLimit:A!==void 0?A:ah,strokeStyle:is(f||lh)}}const r=e.getFont(),s=e.getOffsetX(),o=e.getOffsetY(),a=e.getRotateWithView(),l=e.getRotation(),c=e.getScaleArray(),u=e.getText(),h=e.getTextAlign(),d=e.getTextBaseline();this.textState_={font:r!==void 0?r:yw,textAlign:h!==void 0?h:ch,textBaseline:d!==void 0?d:Tf},this.text_=u!==void 0?Array.isArray(u)?u.reduce((f,g,p)=>f+=p%2?" ":g,""):u:"",this.textOffsetX_=s!==void 0?this.pixelRatio_*s:0,this.textOffsetY_=o!==void 0?this.pixelRatio_*o:0,this.textRotateWithView_=a!==void 0?a:!1,this.textRotation_=l!==void 0?l:0,this.textScale_=[this.pixelRatio_*c[0],this.pixelRatio_*c[1]]}}}const sr=.5;function Qw(i,e,t,n,r,s,o){const a=i[0]*sr,l=i[1]*sr,c=yn(a,l);c.imageSmoothingEnabled=!1;const u=c.canvas,h=new m3(c,sr,r,null,o),d=t.length,f=Math.floor((256*256*256-1)/d),g={};for(let m=1;m<=d;++m){const v=t[m-1],y=v.getStyleFunction()||n;if(!y)continue;let A=y(v,s);if(!A)continue;Array.isArray(A)||(A=[A]);const C=(m*f).toString(16).padStart(7,"#00000");for(let I=0,b=A.length;I{if(!this.hitDetectionImageData_&&!this.animatingOrInteracting_){const n=[this.context.canvas.width,this.context.canvas.height];Gi(this.pixelTransform,n);const r=this.renderedCenter_,s=this.renderedResolution_,o=this.renderedRotation_,a=this.renderedProjection_,l=this.wrappedRenderedExtent_,c=this.getLayer(),u=[],h=n[0]*sr,d=n[1]*sr;u.push(this.getRenderTransform(r,s,o,sr,h,d,0).slice());const f=c.getSource(),g=a.getExtent();if(f.getWrapX()&&a.canWrapX()&&!Gr(g,l)){let p=l[0];const m=Rt(g);let v=0,y;for(;pg[2];)++v,y=m*v,u.push(this.getRenderTransform(r,s,o,sr,h,d,y).slice()),p-=m}this.hitDetectionImageData_=Qw(n,u,this.renderedFeatures_,c.getStyleFunction(),l,s,o)}t($w(e,this.renderedFeatures_,this.hitDetectionImageData_))})}forEachFeatureAtCoordinate(e,t,n,r,s){if(!this.replayGroup_)return;const o=t.viewState.resolution,a=t.viewState.rotation,l=this.getLayer(),c={},u=function(f,g,p){const m=ke(f),v=c[m];if(v){if(v!==!0&&ph=f.forEachFeatureAtCoordinate(e,o,a,n,u,f===this.declutterExecutorGroup&&t.declutterTree?t.declutterTree.all().map(g=>g.value):null)),h}handleFontsChanged(){const e=this.getLayer();e.getVisible()&&this.replayGroup_&&e.changed()}handleStyleImageChange_(e){this.renderIfReadyAndVisible()}prepareFrame(e){const t=this.getLayer(),n=t.getSource();if(!n)return!1;const r=e.viewHints[ai.ANIMATING],s=e.viewHints[ai.INTERACTING],o=t.getUpdateWhileAnimating(),a=t.getUpdateWhileInteracting();if(this.ready&&!o&&r||!a&&s)return this.animatingOrInteracting_=!0,!0;this.animatingOrInteracting_=!1;const l=e.extent,c=e.viewState,u=c.projection,h=c.resolution,d=e.pixelRatio,f=t.getRevision(),g=t.getRenderBuffer();let p=t.getRenderOrder();p===void 0&&(p=y3);const m=c.center.slice(),v=Fr(l,g*h),y=v.slice(),A=[v.slice()],_=u.getExtent();if(n.getWrapX()&&u.canWrapX()&&!Gr(_,e.extent)){const O=Rt(_),N=Math.max(Rt(v)/2,O);v[0]=_[0]-N,v[2]=_[2]+N,Dv(m,u);const B=R1(A[0],u);B[0]<_[0]&&B[2]<_[2]?A.push([B[0]+O,B[1],B[2]+O,B[3]]):B[0]>_[0]&&B[2]>_[2]&&A.push([B[0]-O,B[1],B[2]-O,B[3]])}if(this.ready&&this.renderedResolution_==h&&this.renderedRevision_==f&&this.renderedRenderOrder_==p&&Gr(this.wrappedRenderedExtent_,v))return Hs(this.renderedExtent_,y)||(this.hitDetectionImageData_=null,this.renderedExtent_=y),this.renderedCenter_=m,this.replayGroupChanged=!1,!0;this.replayGroup_=null;const C=new Vf(wm(h,d),v,h,d);let I;this.getLayer().getDeclutter()&&(I=new Vf(wm(h,d),v,h,d));let b;for(let O=0,N=A.length;O{let N;const B=O.getStyleFunction()||t.getStyleFunction();if(B&&(N=B(O,h)),N){const V=this.renderFeature(O,S,N,C,b,I);R=R&&!V}},w=Uv(v),x=n.getFeaturesInExtent(w);p&&x.sort(p);for(let O=0,N=x.length;O=t?i[e-t]:i[e]}function Cd(i,e,t){let n,r;eo){const l=Rl(i,n),c=Rl(i,r);return _d(l,c)}let a=0;if(nd.startIndex?pd.startIndex&&(p-=f.length)),l=p,a=h)}const c=e.targets[a];let u=c.ring;if(e.targetIndex===a&&u){const h=Rl(c.coordinates,l),d=t.getPixelFromCoordinate(h);wf(d,e.startPx)>n&&(u=!1)}if(u){const h=c.coordinates,d=h.length,f=c.startIndex,g=l;if(f=t?n-=t:n<0&&(n+=t);let s=n+1;s>=t&&(s-=t);const o=i[n],a=o[0],l=o[1],c=i[s],u=c[0]-a,h=c[1]-l;return[a+u*r,l+h*r]}class L3 extends Qa{constructor(e){const t=e;t.stopDown||(t.stopDown=xc),super(t),this.on,this.once,this.un,this.shouldHandle_=!1,this.downPx_=null,this.downTimeout_,this.lastDragTime_,this.pointerType_,this.freehand_=!1,this.source_=e.source?e.source:null,this.features_=e.features?e.features:null,this.snapTolerance_=e.snapTolerance?e.snapTolerance:12,this.type_=e.type,this.mode_=O3(this.type_),this.stopClick_=!!e.stopClick,this.minPoints_=e.minPoints?e.minPoints:this.mode_==="Polygon"?3:2,this.maxPoints_=this.mode_==="Circle"?2:e.maxPoints?e.maxPoints:1/0,this.finishCondition_=e.finishCondition?e.finishCondition:Do,this.geometryLayout_=e.geometryLayout?e.geometryLayout:"XY";let n=e.geometryFunction;if(!n){const r=this.mode_;if(r==="Circle")n=function(s,o,a){const l=o||new Ow([NaN,NaN]),c=di(s[0]),u=hc(c,di(s[s.length-1]));return l.setCenterAndRadius(c,Math.sqrt(u),this.geometryLayout_),l};else{let s;r==="Point"?s=Ki:r==="LineString"?s=Ji:r==="Polygon"&&(s=wi),n=function(o,a,l){return a?r==="Polygon"?o[0].length?a.setCoordinates([o[0].concat([o[0][0]])],this.geometryLayout_):a.setCoordinates([],this.geometryLayout_):a.setCoordinates(o,this.geometryLayout_):a=new s(o,this.geometryLayout_),a}}}this.geometryFunction_=n,this.dragVertexDelay_=e.dragVertexDelay!==void 0?e.dragVertexDelay:500,this.finishCoordinate_=null,this.sketchFeature_=null,this.sketchPoint_=null,this.sketchCoords_=null,this.sketchLine_=null,this.sketchLineCoords_=null,this.squaredClickTolerance_=e.clickTolerance?e.clickTolerance*e.clickTolerance:36,this.overlay_=new Di({source:new gn({useSpatialIndex:!1,wrapX:e.wrapX?e.wrapX:!1}),style:e.style?e.style:G3(),updateWhileInteracting:!0}),this.geometryName_=e.geometryName,this.condition_=e.condition?e.condition:fy,this.freehandCondition_,e.freehand?this.freehandCondition_=Of:this.freehandCondition_=e.freehandCondition?e.freehandCondition:gy,this.traceCondition_,this.setTrace(e.trace||!1),this.traceState_={active:!1},this.traceSource_=e.traceSource||e.source||null,this.addChangeListener(vm.ACTIVE,this.updateState_)}setTrace(e){let t;e?e===!0?t=Of:t=e:t=Am,this.traceCondition_=t}setMap(e){super.setMap(e),this.updateState_()}getOverlay(){return this.overlay_}handleEvent(e){e.originalEvent.type===ze.CONTEXTMENU&&e.originalEvent.preventDefault(),this.freehand_=this.mode_!=="Point"&&this.freehandCondition_(e);let t=e.type===gt.POINTERMOVE,n=!0;return!this.freehand_&&this.lastDragTime_&&e.type===gt.POINTERDRAG&&(Date.now()-this.lastDragTime_>=this.dragVertexDelay_?(this.downPx_=e.pixel,this.shouldHandle_=!this.freehand_,t=!0):this.lastDragTime_=void 0,this.shouldHandle_&&this.downTimeout_!==void 0&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0)),this.freehand_&&e.type===gt.POINTERDRAG&&this.sketchFeature_!==null?(this.addToDrawing_(e.coordinate),n=!1):this.freehand_&&e.type===gt.POINTERDOWN?n=!1:t&&this.getPointerCount()<2?(n=e.type===gt.POINTERMOVE,n&&this.freehand_?(this.handlePointerMove_(e),this.shouldHandle_&&e.originalEvent.preventDefault()):(e.originalEvent.pointerType==="mouse"||e.type===gt.POINTERDRAG&&this.downTimeout_===void 0)&&this.handlePointerMove_(e)):e.type===gt.DBLCLICK&&(n=!1),super.handleEvent(e)&&n}handleDownEvent(e){return this.shouldHandle_=!this.freehand_,this.freehand_?(this.downPx_=e.pixel,this.finishCoordinate_||this.startDrawing_(e.coordinate),!0):this.condition_(e)?(this.lastDragTime_=Date.now(),this.downTimeout_=setTimeout(()=>{this.handlePointerMove_(new Es(gt.POINTERMOVE,e.map,e.originalEvent,!1,e.frameState))},this.dragVertexDelay_),this.downPx_=e.pixel,!0):(this.lastDragTime_=void 0,!1)}deactivateTrace_(){this.traceState_={active:!1}}toggleTraceState_(e){if(!this.traceSource_||!this.traceCondition_(e))return;if(this.traceState_.active){this.deactivateTrace_();return}const t=this.getMap(),n=t.getCoordinateFromPixel([e.pixel[0]-this.snapTolerance_,e.pixel[1]+this.snapTolerance_]),r=t.getCoordinateFromPixel([e.pixel[0]+this.snapTolerance_,e.pixel[1]-this.snapTolerance_]),s=Fn([n,r]),o=this.traceSource_.getFeaturesInExtent(s);if(o.length===0)return;const a=R3(e.coordinate,o);a.length&&(this.traceState_={active:!0,startPx:e.pixel.slice(),targets:a,targetIndex:-1})}addOrRemoveTracedCoordinates_(e,t){const n=e.startIndex<=e.endIndex,r=e.startIndex<=t;n===r?n&&t>e.endIndex||!n&&te.endIndex)&&this.removeTracedCoordinates_(t,e.endIndex):(this.removeTracedCoordinates_(e.startIndex,e.endIndex),this.addTracedCoordinates_(e,e.startIndex,t))}removeTracedCoordinates_(e,t){if(e===t)return;let n=0;if(e0&&this.removeLastPoints_(n)}addTracedCoordinates_(e,t,n){if(t===n)return;const r=[];if(t=o;--a)r.push(Ml(e.coordinates,a))}r.length&&this.appendCoordinates(r)}updateTrace_(e){const t=this.traceState_;if(!t.active||t.targetIndex===-1&&wf(t.startPx,e.pixel)this.squaredClickTolerance_:o<=this.squaredClickTolerance_,!this.shouldHandle_)return}if(!this.finishCoordinate_){this.createOrUpdateSketchPoint_(e.coordinate.slice());return}this.updateTrace_(e),this.modifyDrawing_(e.coordinate)}atFinish_(e,t){let n=!1;if(this.sketchFeature_){let r=!1,s=[this.finishCoordinate_];const o=this.mode_;if(o==="Point")n=!0;else if(o==="Circle")n=this.sketchCoords_.length===2;else if(o==="LineString")r=!t&&this.sketchCoords_.length>this.minPoints_;else if(o==="Polygon"){const a=this.sketchCoords_;r=a[0].length>this.minPoints_,s=[a[0][0],a[0][a[0].length-2]],t?s=[a[0][0]]:s=[a[0][0],a[0][a[0].length-2]]}if(r){const a=this.getMap();for(let l=0,c=s.length;l=this.maxPoints_&&(this.freehand_?s.pop():r=!0),s.push(e.slice()),this.geometryFunction_(s,t,n)):o==="Polygon"&&(s=this.sketchCoords_[0],s.length>=this.maxPoints_&&(this.freehand_?s.pop():r=!0),s.push(e.slice()),r&&(this.finishCoordinate_=s[0]),this.geometryFunction_(this.sketchCoords_,t,n)),this.createOrUpdateSketchPoint_(e.slice()),this.updateSketchFeatures_(),r&&this.finishDrawing()}removeLastPoints_(e){if(!this.sketchFeature_)return;const t=this.sketchFeature_.getGeometry(),n=this.getMap().getView().getProjection(),r=this.mode_;for(let s=0;s=2){this.finishCoordinate_=o[o.length-2].slice();const a=this.finishCoordinate_.slice();o[o.length-1]=a,this.createOrUpdateSketchPoint_(a)}this.geometryFunction_(o,t,n),t.getType()==="Polygon"&&this.sketchLine_&&this.createOrUpdateCustomSketchLine_(t)}else if(r==="Polygon"){o=this.sketchCoords_[0],o.splice(-2,1);const a=this.sketchLine_.getGeometry();if(o.length>=2){const l=o[o.length-2].slice();o[o.length-1]=l,this.createOrUpdateSketchPoint_(l)}a.setCoordinates(o),this.geometryFunction_(this.sketchCoords_,t,n)}if(o.length===1){this.abortDrawing();break}}this.updateSketchFeatures_()}removeLastPoint(){this.removeLastPoints_(1)}finishDrawing(){const e=this.abortDrawing_();if(!e)return;let t=this.sketchCoords_;const n=e.getGeometry(),r=this.getMap().getView().getProjection();this.mode_==="LineString"?(t.pop(),this.geometryFunction_(t,n,r)):this.mode_==="Polygon"&&(t[0].pop(),this.geometryFunction_(t,n,r),t=n.getCoordinates()),this.type_==="MultiPoint"?e.setGeometry(new Us([t])):this.type_==="MultiLineString"?e.setGeometry(new hr([t])):this.type_==="MultiPolygon"&&e.setGeometry(new jr([t])),this.dispatchEvent(new Ad(yd.DRAWEND,e)),this.features_&&this.features_.push(e),this.source_&&this.source_.addFeature(e)}abortDrawing_(){this.finishCoordinate_=null;const e=this.sketchFeature_;return this.sketchFeature_=null,this.sketchPoint_=null,this.sketchLine_=null,this.overlay_.getSource().clear(!0),this.deactivateTrace_(),e}abortDrawing(){const e=this.abortDrawing_();e&&this.dispatchEvent(new Ad(yd.DRAWABORT,e))}appendCoordinates(e){const t=this.mode_,n=!this.sketchFeature_;n&&this.startDrawing_(e[0]);let r;if(t==="LineString"||t==="Circle")r=this.sketchCoords_;else if(t==="Polygon")r=this.sketchCoords_&&this.sketchCoords_.length?this.sketchCoords_[0]:[];else return;n&&r.shift(),r.pop();for(let o=0;o=0;--r){const s=n[r];for(let o=this.dragSegments_.length-1;o>=0;--o)this.dragSegments_[o][0]===s&&this.dragSegments_.splice(o,1);t.remove(s)}}setActive(e){this.vertexFeature_&&!e&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),super.setActive(e)}setMap(e){this.overlay_.setMap(e),super.setMap(e)}getOverlay(){return this.overlay_}handleSourceAdd_(e){e.feature&&this.features_.push(e.feature)}handleSourceRemove_(e){e.feature&&this.features_.remove(e.feature)}handleFeatureAdd_(e){this.addFeature_(e.element)}handleFeatureChange_(e){if(!this.changingFeature_){const t=e.target;this.removeFeature_(t),this.addFeature_(t)}}handleFeatureRemove_(e){this.removeFeature_(e.element)}writePointGeometry_(e,t){const n=t.getCoordinates(),r={feature:e,geometry:t,segment:[n,n]};this.rBush_.insert(t.getExtent(),r)}writeMultiPointGeometry_(e,t){const n=t.getCoordinates();for(let r=0,s=n.length;r=0;--c)this.insertVertex_(r[c],s)}return!!this.vertexFeature_}handleUpEvent(e){for(let t=this.dragSegments_.length-1;t>=0;--t){const n=this.dragSegments_[t][0],r=n.geometry;if(r.getType()==="Circle"){const s=r.getCenter(),o=n.featureSegments[0],a=n.featureSegments[1];o.segment[0]=s,o.segment[1]=s,a.segment[0]=s,a.segment[1]=s,this.rBush_.update(Mu(s),o);let l=r;this.rBush_.update(l.getExtent(),a)}else this.rBush_.update(Fn(n.segment),n)}return this.featuresBeingModified_&&(this.dispatchEvent(new rp(np.MODIFYEND,this.featuresBeingModified_,e)),this.featuresBeingModified_=null),!1}handlePointerMove_(e){this.lastPixel_=e.pixel,this.handlePointerAtPixel_(e.pixel,e.map,e.coordinate)}handlePointerAtPixel_(e,t,n){const r=n||t.getCoordinateFromPixel(e);t.getView().getProjection();const s=function(l,c){return BC(r,l)-BC(r,c)};let o,a;if(this.hitDetection_){const l=typeof this.hitDetection_=="object"?c=>c===this.hitDetection_:void 0;t.forEachFeatureAtPixel(e,(c,u,h)=>{h&&h.getType()==="Point"&&(h=new Ki(dc(h.getCoordinates())));const d=h||c.getGeometry();if(c instanceof Ht&&this.features_.getArray().includes(c)){a=d;const f=c.getGeometry().getFlatCoordinates().slice(0,2);o=[{feature:c,geometry:a,segment:[f,f]}]}return!0},{layerFilter:l})}if(!o){const l=mo(Mu(r,UC)),c=t.getView().getResolution()*this.pixelTolerance_,u=Uv(Fr(l,c,UC));o=this.rBush_.getInExtent(u)}if(o&&o.length>0){const l=o.sort(s)[0],c=l.segment;let u=jC(r,l);const h=t.getPixelFromCoordinate(u);let d=wf(e,h);if(a||d<=this.pixelTolerance_){const f={};if(f[ke(c)]=!0,this.snapToPointer_||(this.delta_[0]=u[0]-r[0],this.delta_[1]=u[1]-r[1]),l.geometry.getType()==="Circle"&&l.index===Tu)this.snappedToVertex_=!0,this.createOrUpdateVertexFeature_(u,[l.feature],[l.geometry]);else{const g=t.getPixelFromCoordinate(c[0]),p=t.getPixelFromCoordinate(c[1]),m=hc(h,g),v=hc(h,p);d=Math.sqrt(Math.min(m,v)),this.snappedToVertex_=d<=this.pixelTolerance_,this.snappedToVertex_&&(u=m>v?c[1]:c[0]),this.createOrUpdateVertexFeature_(u,[l.feature],[l.geometry]);const y={};y[ke(l.geometry)]=!0;for(let A=1,_=o.length;A<_;++A){const C=o[A].segment;if(Pr(c[0],C[0])&&Pr(c[1],C[1])||Pr(c[0],C[1])&&Pr(c[1],C[0])){const I=ke(o[A].geometry);I in y||(y[I]=!0,f[ke(C)]=!0)}else break}}this.vertexSegments_=f;return}}this.vertexFeature_&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null)}insertVertex_(e,t){const n=e.segment,r=e.feature,s=e.geometry,o=e.depth,a=e.index;let l;for(;t.length=0;--l)o=e[l],f=o[0],g=ke(f.feature),f.depth&&(g+="-"+f.depth.join("-")),g in t||(t[g]={}),o[1]===0?(t[g].right=f,t[g].index=f.index):o[1]==1&&(t[g].left=f,t[g].index=f.index+1);for(g in t){switch(d=t[g].right,u=t[g].left,c=t[g].index,h=c-1,u!==void 0?f=u:f=d,h<0&&(h=0),a=f.geometry,s=a.getCoordinates(),r=s,n=!1,a.getType()){case"MultiLineString":s[f.depth[0]].length>2&&(s[f.depth[0]].splice(c,1),n=!0);break;case"LineString":s.length>2&&(s.splice(c,1),n=!0);break;case"MultiPolygon":r=r[f.depth[1]];case"Polygon":r=r[f.depth[0]],r.length>4&&(c==r.length-1&&(c=0),r.splice(c,1),n=!0,c===0&&(r.pop(),r.push(r[0]),h=r.length-1));break}if(n){this.setGeometryCoordinates_(a,s);const p=[];if(u!==void 0&&(this.rBush_.remove(u),p.push(u.segment[0])),d!==void 0&&(this.rBush_.remove(d),p.push(d.segment[1])),u!==void 0&&d!==void 0){const m={depth:f.depth,feature:f.feature,geometry:f.geometry,index:h,segment:p};this.rBush_.insert(Fn(m.segment),m)}this.updateSegmentIndices_(a,c,f.depth,-1),this.vertexFeature_&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),e.length=0}}return n}setGeometryCoordinates_(e,t){this.changingFeature_=!0,e.setCoordinates(t),this.changingFeature_=!1}updateSegmentIndices_(e,t,n,r){this.rBush_.forEachInExtent(e.getExtent(),function(s){s.geometry===e&&(n===void 0||s.depth===void 0||Hs(s.depth,n))&&s.index>t&&(s.index+=r)})}}function k3(i,e){return i.index-e.index}function BC(i,e,t){const n=e.geometry;if(n.getType()==="Circle"){let s=n;if(e.index===Tu){const o=hc(s.getCenter(),di(i)),a=Math.sqrt(o)-s.getRadius();return a*a}}const r=di(i);return ql[0]=di(e.segment[0]),ql[1]=di(e.segment[1]),MG(r,ql)}function jC(i,e,t){const n=e.geometry;if(n.getType()==="Circle"&&e.index===Tu)return dc(n.getClosestPoint(di(i)));const r=di(i);return ql[0]=di(e.segment[0]),ql[1]=di(e.segment[1]),dc(L1(r,ql))}function F3(){const i=_y();return function(e,t){return i.Point}}const Ey=D3,N3={SELECT:"select"};class U3 extends fr{constructor(e,t,n,r){super(e),this.selected=t,this.deselected=n,this.mapBrowserEvent=r}}const Ed={};class wy extends kc{constructor(e){super(),this.on,this.once,this.un,e=e||{},this.boundAddFeature_=this.addFeature_.bind(this),this.boundRemoveFeature_=this.removeFeature_.bind(this),this.condition_=e.condition?e.condition:dy,this.addCondition_=e.addCondition?e.addCondition:Am,this.removeCondition_=e.removeCondition?e.removeCondition:Am,this.toggleCondition_=e.toggleCondition?e.toggleCondition:gy,this.multi_=e.multi?e.multi:!1,this.filter_=e.filter?e.filter:Do,this.hitTolerance_=e.hitTolerance?e.hitTolerance:0,this.style_=e.style!==void 0?e.style:B3(),this.features_=e.features||new bi;let t;if(e.layers)if(typeof e.layers=="function")t=e.layers;else{const n=e.layers;t=function(r){return n.includes(r)}}else t=Do;this.layerFilter_=t,this.featureLayerAssociation_={}}addFeatureLayerAssociation_(e,t){this.featureLayerAssociation_[ke(e)]=t}getFeatures(){return this.features_}getHitTolerance(){return this.hitTolerance_}getLayer(e){return this.featureLayerAssociation_[ke(e)]}setHitTolerance(e){this.hitTolerance_=e}setMap(e){this.getMap()&&this.style_&&this.features_.forEach(this.restorePreviousStyle_.bind(this)),super.setMap(e),e?(this.features_.addEventListener(Ii.ADD,this.boundAddFeature_),this.features_.addEventListener(Ii.REMOVE,this.boundRemoveFeature_),this.style_&&this.features_.forEach(this.applySelectedStyle_.bind(this))):(this.features_.removeEventListener(Ii.ADD,this.boundAddFeature_),this.features_.removeEventListener(Ii.REMOVE,this.boundRemoveFeature_))}addFeature_(e){const t=e.element;if(this.style_&&this.applySelectedStyle_(t),!this.getLayer(t)){const n=this.getMap().getAllLayers().find(function(r){if(r instanceof Di&&r.getSource()&&r.getSource().hasFeature(t))return r});n&&this.addFeatureLayerAssociation_(t,n)}}removeFeature_(e){this.style_&&this.restorePreviousStyle_(e.element)}getStyle(){return this.style_}applySelectedStyle_(e){const t=ke(e);t in Ed||(Ed[t]=e.getStyle()),e.setStyle(this.style_)}restorePreviousStyle_(e){const t=this.getMap().getInteractions().getArray();for(let r=t.length-1;r>=0;--r){const s=t[r];if(s!==this&&s instanceof wy&&s.getStyle()&&s.getFeatures().getArray().lastIndexOf(e)!==-1){e.setStyle(s.getStyle());return}}const n=ke(e);e.setStyle(Ed[n]),delete Ed[n]}removeFeatureLayerAssociation_(e){delete this.featureLayerAssociation_[ke(e)]}handleEvent(e){if(!this.condition_(e))return!0;const t=this.addCondition_(e),n=this.removeCondition_(e),r=this.toggleCondition_(e),s=!t&&!n&&!r,o=e.map,a=this.getFeatures(),l=[],c=[];if(s){Pc(this.featureLayerAssociation_),o.forEachFeatureAtPixel(e.pixel,(u,h)=>{if(!(!(u instanceof Ht)||!this.filter_(u,h)))return this.addFeatureLayerAssociation_(u,h),c.push(u),!this.multi_},{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(let u=a.getLength()-1;u>=0;--u){const h=a.item(u),d=c.indexOf(h);d>-1?c.splice(d,1):(a.remove(h),l.push(h))}c.length!==0&&a.extend(c)}else{o.forEachFeatureAtPixel(e.pixel,(u,h)=>{if(!(!(u instanceof Ht)||!this.filter_(u,h)))return(t||r)&&!a.getArray().includes(u)?(this.addFeatureLayerAssociation_(u,h),c.push(u)):(n||r)&&a.getArray().includes(u)&&(l.push(u),this.removeFeatureLayerAssociation_(u)),!this.multi_},{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(let u=l.length-1;u>=0;--u)a.remove(l[u]);a.extend(c)}return(c.length>0||l.length>0)&&this.dispatchEvent(new U3(N3.SELECT,c,l,e)),!0}}function B3(){const i=_y();return bt(i.Polygon,i.LineString),bt(i.GeometryCollection,i.LineString),function(e){return e.getGeometry()?i[e.getGeometry().getType()]:null}}const Tr=wy;var Lu=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function by(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var sb={exports:{}};(function(i){(function(e,t){i.exports?i.exports=t():e.log=t()})(Lu,function(){var e=function(){},t="undefined",n=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),r=["trace","debug","info","warn","error"],s={},o=null;function a(p,m){var v=p[m];if(typeof v.bind=="function")return v.bind(p);try{return Function.prototype.bind.call(v,p)}catch{return function(){return Function.prototype.apply.apply(v,[p,arguments])}}}function l(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function c(p){return p==="debug"&&(p="log"),typeof console===t?!1:p==="trace"&&n?l:console[p]!==void 0?a(console,p):console.log!==void 0?a(console,"log"):e}function u(){for(var p=this.getLevel(),m=0;m=0&&x<=v.levels.SILENT)return x;throw new TypeError("log.setLevel() called with invalid level: "+w)}v.name=p,v.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},v.methodFactory=m||d,v.getLevel=function(){return _??A??y},v.setLevel=function(w,x){return _=R(w),x!==!1&&I(_),u.call(v)},v.setDefaultLevel=function(w){A=R(w),b()||v.setLevel(w,!1)},v.resetLevel=function(){_=null,S(),u.call(v)},v.enableAll=function(w){v.setLevel(v.levels.TRACE,w)},v.disableAll=function(w){v.setLevel(v.levels.SILENT,w)},v.rebuild=function(){if(o!==v&&(y=R(o.getLevel())),u.call(v),o===v)for(var w in s)s[w].rebuild()},y=R(o?o.getLevel():"WARN");var P=b();P!=null&&(_=R(P)),u.call(v)}o=new f,o.getLogger=function(m){if(typeof m!="symbol"&&typeof m!="string"||m==="")throw new TypeError("You must supply a name when creating a logger.");var v=s[m];return v||(v=s[m]=new f(m,o.methodFactory)),v};var g=typeof window!==t?window.log:void 0;return o.noConflict=function(){return typeof window!==t&&window.log===o&&(window.log=g),o},o.getLoggers=function(){return s},o.default=o,o})})(sb);var fo=sb.exports,Tt={getLogger:function(i){if(typeof e>"u"){var e={};e.env={VERBOSE:!1}}e.env.VERBOSE?fo.enableAll():fo.disableAll();var t=i||"default";return fo.getLogger(t)}},me={PARAM_MISSING:"Parameter(s) '%var%' missing",PARAM_EMPTY:"Parameter(s) '%var%' empty",PARAM_TYPE:"Wrong type(s) for parameter(s) '%var%'",PARAM_FORMAT:"Parameter(s) '%var%' not correctly formatted",PARAM_NOT_SUPPORT:"Value(s) for parameter(s) '%var%' not supported",PARAM_NOT_SUPPORT_NODEJS:"Value(s) for parameter(s) '%var%' not supported to NodeJS",PARAM_UNKNOWN:"Value(s) for parameter(s) '%var%' unknown",SERVICE_REQUEST_BUILD:"An error occurred during the request building of the service",SERVICE_REQUEST_EMPTY:"The request sent to the service is empty",SERVICE_RESPONSE_EXCEPTION:"The service returned an exception : '%var%'",SERVICE_RESPONSE_EXCEPTION_2:"The service returned an exception",SERVICE_RESPONSE_ANALYSE:"An error occurred while parsing the response '%var%' of the service",SERVICE_RESPONSE_ANALYSE_2:"An unknown error occurred while parsing the response",SERVICE_RESPONSE_EMPTY:"The response of the service is empty",SERVICE_RESPONSE_EMPTY_2:"The response from the service could not be analyzed or is empty",SERVICE_RESPONSE_FORMAT:"The format of the service response is not supported (handled format(s) : '%var%')",SERVICE_RESPONSE_FORMAT_2:"The format of the service response is not supported",SERVICE_RESPONSE_FORMAT_3:"No suggestion matching the search",CLASS_CONSTRUCTOR:"'%var%' constructor cannot be called as a function.",getMessage:function(i,e){if(Object.keys(arguments).length===0)return"Message indefined !";var t=Array.prototype.slice.call(arguments),n=t.shift(),r=t,s=this[n];try{Array.isArray(r)&&r.length>0?s=s.replace("%var%",r.join(" - ")):s=s.replace("%var%","%var% (not specified)")}catch{}return s}},Os={normalyzeParameters:function(i){var e=null;if(i){var t=[];for(var n in i)if(i.hasOwnProperty(n)){var r=i[n];r||(r=""),t.push(n+"="+r)}e=t.join("&")}return e},normalyzeUrl:function(i,e,t){var n=i;if(i){var r=i.indexOf("?");r===-1&&(n+="?"),r!==-1&&r!==i.length-1&&(n+="&")}return e&&(typeof e=="string"?(e=e.replace("?",""),n+=e):n+=this.normalyzeParameters(e)),t&&(n=encodeURIComponent(n)),n},indent:function(i,e){var t=i||0;return new Array(t+1).join(" ")+e}};function j3(i){throw new Error('Could not dynamically require "'+i+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var ob={exports:{}};/*! + * @overview es6-promise - a tiny implementation of Promises/A+. + * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald) + * @license Licensed under MIT license + * See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE + * @version v4.2.8+1e68dce6 + */(function(i,e){(function(t,n){i.exports=n()})(Lu,function(){function t(T){var F=typeof T;return T!==null&&(F==="object"||F==="function")}function n(T){return typeof T=="function"}var r=void 0;Array.isArray?r=Array.isArray:r=function(T){return Object.prototype.toString.call(T)==="[object Array]"};var s=r,o=0,a=void 0,l=void 0,c=function(F,U){I[o]=F,I[o+1]=U,o+=2,o===2&&(l?l(b):R())};function u(T){l=T}function h(T){c=T}var d=typeof window<"u"?window:void 0,f=d||{},g=f.MutationObserver||f.WebKitMutationObserver,p=typeof self>"u"&&typeof process<"u"&&{}.toString.call(process)==="[object process]",m=typeof Uint8ClampedArray<"u"&&typeof importScripts<"u"&&typeof MessageChannel<"u";function v(){return function(){return process.nextTick(b)}}function y(){return typeof a<"u"?function(){a(b)}:C()}function A(){var T=0,F=new g(b),U=document.createTextNode("");return F.observe(U,{characterData:!0}),function(){U.data=T=++T%2}}function _(){var T=new MessageChannel;return T.port1.onmessage=b,function(){return T.port2.postMessage(0)}}function C(){var T=setTimeout;return function(){return T(b,1)}}var I=new Array(1e3);function b(){for(var T=0;T"u"){var a=require("node-fetch"),l={headers:{Referer:"https://localhost"}};return i.data&&typeof i.data=="string"&&s&&(l={method:i.method,body:i.data,headers:{"Content-Type":i.content,Referer:"https://localhost"}}),a(i.url,l).then(function(d){if(d.ok)n(d.text());else{var f="Errors Occured on Http Request (status : '"+d.statusText+"' | url : '"+d.url+"')",g=d.status;r({message:f,status:g})}}).catch(function(d){r({message:d,status:-1})})}else if(window.XMLHttpRequest){e.trace("XMLHttpRequest"),o=new XMLHttpRequest,o.open(i.method,i.url,!0),o.overrideMimeType=i.content;var c=null;i.timeOut>0&&(e.trace("XHR - TimeOut actif !"),c=window.setTimeout(function(){var d="TimeOut Occured on Http Request with XMLHttpRequest !";r({message:d,status:-1})},i.timeOut)),s&&(e.trace("data = ",i.data),o.setRequestHeader("Content-type",i.content)),o.onerror=function(d){console.log(d),r(new Error("Errors Occured on Http Request with XMLHttpRequest !"))},o.ontimeout=function(d){console.log(d),r(new Error("TimeOut Occured on Http Request with XMLHttpRequest !"))},o.onreadystatechange=function(d){if(o.readyState===4)if(o.status===200)window.clearTimeout(c),n(o.response);else{var f="Errors Occured on Http Request (status : '"+d.target.statusText+"' | url : '"+d.target.responseURL+"' | response : '"+d.target.response+"')",g=d.target.status;r({message:f,status:g})}};var u=i.data&&s?i.data:null;o.send(u)}else if(window.XDomainRequest){e.trace("XDomainRequest"),o=new XDomainRequest,o.open(i.method,i.url),o.overrideMimeType=i.content,i.timeOut>0&&(o.timeout=i.timeout,e.trace("XHR - TimeOut actif !")),s&&o.setRequestHeader("Content-type",i.content),o.onerror=function(){r(new Error("Errors Occured on Http Request with XMLHttpRequest !"))},o.ontimeout=function(){r(new Error("TimeOut Occured on Http Request with XMLHttpRequest !"))},o.onload=function(d){if(o.status===200)n(o.responseText);else{var f="Errors Occured on Http Request (status : '"+d.target.statusText+"' | url : '"+d.target.responseURL+"')",g=d.target.status;r({message:f,status:g})}};var h=i.data&&s?i.data:null;o.send(h)}else throw new Error("CORS not supported")});return t},__callJSON:function(i){return this.__call(i).then(JSON.parse).catch(function(e){console.log("_callJSON failed on : ",i.url,e)})},__callXML:function(i){return this.__call(i).then(function(e){var t;if(typeof window>"u"){var n=require("@xmldom/xmldom").DOMParser;t=new n().parseFromString(e,"text/xml")}else if(window.DOMParser){var r=new window.DOMParser;t=r.parseFromString(e,"text/xml")}else t=new window.ActiveXObject("Microsoft.XMLDOM"),t.async=!1,t.loadXML(e);return t}).catch(function(e){console.log("__callXML failed on : ",i.url,e)})}},W3={uuid:function(){var i=Math.floor(Date.now());return function(){return i++}}(),call:function(i){var e=Tt.getLogger("JSONP");if(e.trace("[JSONP::call ()]"),!i)throw e.error("missing parameter : options !"),new Error("missing parameter : options !");if(!i.url)throw e.error("missing parameter : options.url !"),new Error("missing parameter : options.url !");if(i.timeOut||(e.info("setting 'options.timeOut' default value"),i.timeOut=0),!i.onResponse)throw e.error("missing parameter : options.onResponse !"),new Error("missing parameter : options.onResponse !");var t=typeof i.callbackSuffix=="string"?i.callbackSuffix:this.uuid(),n=!1,r=!1,s=i.url.indexOf("callback=");if(s!==-1){n=!0;var o=i.url.indexOf("&",s);o===-1&&(o=i.url.length);var a=i.url.substring(s+9,o);a&&(r=!0,i.callbackName=a,e.info("setting 'options.callbackName' value ("+i.callbackName+") from 'options.url' parameter"))}if(!n){var l=i.url.indexOf("?");l===-1?i.url=i.url+"?callback=":l===i.url.length?i.url=i.url+"callback=":i.url=i.url+"&callback=",e.info("setting callback default key in 'options.url' : "+i.url)}var c=i.callbackName?!0:r;if(r||(i.callbackName||(e.info("setting 'options.callbackName' default value"),i.callbackName="callback",(t||t==="")&&(i.callbackName+=t)),i.url=i.url.replace("callback=","callback="+i.callbackName),e.info("setting callback function name in 'options.url' : "+i.url)),i.onTimeOut||(e.info("setting 'options.onTimeOut' default value"),i.onTimeOut=function(){console.log("TimeOut while invoking url : "+i.url)}),!c){var u=this,h=null;i.timeOut>0&&(h=window.setTimeout(function(){window[i.callbackName]=function(){},i.onTimeOut(),u._deleteScript(t)},i.timeOut)),window[i.callbackName]=function(d){window.clearTimeout(h),i.onResponse(d),u._deleteScript(t)}}this._createScript(t,i.url)},_createScript:function(i,e){var t,n=document.getElementById("results"+i);t=document.createElement("script"),t.setAttribute("type","text/javascript"),t.setAttribute("src",e),t.setAttribute("charset","UTF-8"),t.setAttribute("id","results"+i),t.setAttribute("async","true");var r=document.documentElement||document.getElementsByTagName("head")[0];n===null?r.appendChild(t):r.replaceChild(t,n)},_deleteScript:function(i){var e=document.getElementById("results"+i);if(e){var t=e.parentNode||document.documentElement;if(!t)return;t.removeChild(e)}}},Y3={send:function(i){var e=i||{method:"GET",protocol:"XHR",timeOut:0,format:null,wrap:!0,nocache:!0,output:"json",callback:null,callbackSuffix:null};if(typeof window>"u"&&i.protocol==="JSONP"){console.log("Value (s) for parameter (s) 'protocol=JSONP (instead use XHR)' not supported to NodeJS");return}if(i.protocol==="XHR"||i.format==="json"?e.wrap=!1:i.protocol==="JSONP"&&i.format==="xml"&&(e.wrap=!0),e.callback=null,e.output=e.wrap?"json":null,e.wrap){var t={};t.output=e.output,t.callback=e.callback,delete t.callback,e.url=Os.normalyzeUrl(i.url,t)}switch(e.protocol){case"XHR":i.method==="GET"&&i.nocache&&(e.url=Os.normalyzeUrl(e.url,{t:new Date().getTime()})),ab.call(e);break;case"JSONP":e.data&&(e.url=Os.normalyzeUrl(e.url,e.data)),W3.call(e);break;default:throw new Error("protocol not supported (XHR|JSONP) !")}}};function _e(i){if(!(this instanceof _e))throw new TypeError("ErrorService constructor cannot be called as a function.");var e=i;typeof i=="string"||i instanceof String?(this.message=i,this.status=-1,this.type=_e.TYPE_UNKERR):(this.message=e.message||"undefined!?",this.type=e.type,this.status=e.status||-1),this.name="ErrorService",this.stack=new Error().stack}_e.TYPE_SRVERR="SERVICE_ERROR";_e.TYPE_USEERR="USAGE_ERROR";_e.TYPE_UNKERR="UNKNOWN_ERROR";_e.prototype=Object.create(Error.prototype,{constructor:{value:_e,writable:!0,configurable:!0}});const H3="geoportal-access-lib",q3="3.4.1",X3="16/04/2024",Z3="French Geoportal resources access library",K3="src/Gp.js",J3="dist/GpServices-src.js",Q3="https://github.com/IGNF/geoportal-access-lib#readme",$3={clean:'echo "Warning: no yet implemented!" && exit 0',setup:"npm install",cover:"nyc --reporter=lcov --reporter=text npm run test",eslint:"eslint src/",build:"webpack --mode=none","build:prod":"webpack --mode=production","build:dev":"webpack --mode=development",test:'mocha-webpack --reporter mochawesome --reporter-options reportDir=test-report,reportFilename=index --webpack-config ./test/webpack/webpack.test.js --glob "test_*.js" test/spec/',"test:serve":"webpack-dev-server --hot --config ./test/webpack/webpack.test.serve.js","test:serve:docker":"webpack-dev-server --hot --config ./test/webpack/webpack.test.serve.docker.js","test:end-to-end:serve":"webpack-dev-server --hot --config ./test/webpack/webpack.end-to-end.serve.js","test:end-to-end:serve:docker":"webpack-dev-server --hot --config ./test/webpack/webpack.end-to-end.serve.docker.js",sample:"npm run sample:serve","sample:serve":"webpack-dev-server --mode=none --open-page samples/index-src.html --https --content-base . --output-public-path '/dist/' --port 9001 --open","sample:serve:prod":"webpack-dev-server --mode=production --open-page samples/index-prod.html --content-base . --output-public-path '/dist/' --port 9001 --open","sample:serve:dev":"webpack-dev-server --mode=development --open-page samples/index-map.html --content-base . --output-public-path '/dist/' --port 9001 --open",doc:"npm run doc:serve","doc:serve":"webpack-dev-server --content-base jsdoc --port 9001 --open"},eF={include:["src/**/*.js"],instrument:!1,sourceMap:!1},tF={type:"git",url:"https://github.com/IGNF/geoportal-access-lib.git"},iF=["geoplateforme","geoportail","webservice","javascript","es6"],nF="IGNF",rF="CECILL-B",sF={"es6-promise":"^4.2.4","node-fetch":"^2.6.1","@xmldom/xmldom":"^0.8.10"},oF={"@babel/core":"^7.12.10","@babel/plugin-transform-template-literals":"^7.12.1","@babel/preset-env":"^7.12.11","babel-loader":"^8.2.2",chai:"^4.1.2","clean-webpack-plugin":"^3.0.0","copy-webpack-plugin":"^5.1.2",eslint:"^7.18.0","eslint-config-standard":"^16.0.2","eslint-loader":"^4.0.2","eslint-plugin-import":"^2.22.1","eslint-plugin-node":"^11.1.0","eslint-plugin-promise":"^4.2.1","eslint-plugin-standard":"^5.0.0",glob:"^7.1.2","handlebars-layouts":"^3.1.4","handlebars-webpack-plugin":"^1.4.1","html-webpack-plugin":"^4.5.1","istanbul-instrumenter-loader":"^3.0.1","jsdoc-webpack-plugin":"^0.3.0",loglevel:"^1.6.1",mocha:"^7.2.0","mocha-loader":"^5.1.5","mocha-webpack":"^2.0.0-beta.0",mochawesome:"^6.2.1",nyc:"^15.1.0",path:"^0.12.7","replace-bundle-webpack-plugin":"^1.0.0",sinon:"^9.2.4","sinon-es6":"0.0.3","speed-measure-webpack-plugin":"^1.4.2","string-template":"^1.0.0","terser-webpack-plugin":"^2.3.8",webpack:"^4.46.0","webpack-cli":"^3.3.12","webpack-dev-server":"^3.11.2","webpack-node-externals":"^2.5.2","webpack-shell-plugin":"^0.5.0"},aF=[],lF={},cF={},Sy={name:H3,version:q3,date:X3,description:Z3,module:K3,main:J3,homepage:Q3,scripts:$3,nyc:eF,repository:tF,keywords:iF,author:nF,license:rF,dependencies:sF,devDependencies:oF,bundledDependencies:aF,peerDependencies:lF,optionalDependencies:cF};function An(i){if(!(this instanceof An))throw new TypeError(me.getMessage("CLASS_CONSTRUCTOR"));this.logger=Tt.getLogger("CommonService"),this.logger.trace("[Constructeur CommonService (options)]"),this.options={protocol:"XHR",ssl:!0,proxyURL:"",callbackSuffix:null,httpMethod:"GET",timeOut:0,rawResponse:!1,scope:this,onSuccess:function(n){console.log("onSuccess - la reponse est la suivante : ",n)},onFailure:function(n){n.status===200||!n.status?console.log("onFailure : ",n.message):console.log("onFailure - Erreur (",n.status,") : ",n.message)}};for(var e in i)i.hasOwnProperty(e)&&(this.options[e]=i[e]);this.options.rawResponse&&!this.options.onSuccess&&(this.options.onSuccess=function(n){console.log("onSuccess - la réponse brute du service est la suivante : ",n)});var t=this.options.onSuccess!==null&&typeof this.options.onSuccess=="function";if(!t)throw new Error(me.getMessage("PARAM_MISSING","onSuccess()"));switch(this.options.httpMethod=typeof i.httpMethod=="string"?i.httpMethod.toUpperCase():"GET",this.options.httpMethod){case"POST":case"GET":break;case"PUT":case"DELETE":case"HEAD":case"OPTIONS":throw new Error(me.getMessage("PARAM_NOT_SUPPORT","httpMethod"));default:throw new Error(me.getMessage("PARAM_UNKNOWN","httpMethod"))}switch(this.options.protocol=typeof i.protocol=="string"?i.protocol.toUpperCase():"XHR",this.options.protocol){case"JSONP":case"XHR":break;default:throw new Error(me.getMessage("PARAM_UNKNOWN","protocol"))}if(typeof window>"u"&&this.options.protocol==="JSONP")throw new Error(me.getMessage("PARAM_NOT_SUPPORT_NODEJS","protocol=JSONP (instead use XHR)"));this.options.protocol==="JSONP"&&(this.options.httpMethod="GET"),this.options.nocache=i.nocache||!1,this.options.outputFormat=null,this.request=null,this.response=null}An.prototype={constructor:An,call:function(){this.logger.trace("CommonService::call ()");var i=this;function e(){this.logger.trace("CommonService::run ()"),this.buildRequest.call(i,s,t)}e.call(i);function t(o){this.logger.trace("CommonService::onBuildRequest : ",o),this.callService.call(i,s,n)}function n(o){this.logger.trace("CommonService::onCallService : ",o),this.analyzeResponse.call(i,s,r)}function r(o){if(this.logger.trace("CommonService::onAnalyzeResponse : ",o),o)this.options.onSuccess.call(this,o);else return s.call(this,new _e("Analyse de la reponse en échec !?"))}function s(o){this.logger.trace("CommonService::onError()");var a=o;a instanceof _e||(a=new _e(o.message)),this.options.onFailure.call(this,a)}},buildRequest:function(i,e){this.logger.error("overwritten method !"),i&&i.call(this,"This method must be overwritten !"),e.call(this,"This method must be overwritten !")},callService:function(i,e){var t=null,n=this.request,r=!!(this.options.proxyURL&&this.options.protocol==="XHR"),s={"gp-access-lib":Sy.version};this.options.apiKey&&(s.apiKey=this.options.apiKey),this.options.serverUrl=Os.normalyzeUrl(this.options.serverUrl,s,!1),r&&(this.options.httpMethod==="GET"&&(t=this.options.proxyURL+Os.normalyzeUrl(this.options.serverUrl,this.request,!0),n=null),this.options.httpMethod==="POST"&&(t=this.options.proxyURL+Os.normalyzeUrl(this.options.serverUrl,null,!0),n=this.request));var o=this,a={url:t||this.options.serverUrl,method:this.options.httpMethod,protocol:this.options.protocol,timeOut:this.options.timeOut||0,format:this.options.outputFormat,nocache:this.options.nocache||!1,wrap:this.options.protocol!=="XHR",callbackSuffix:this.options.callbackSuffix,data:n,headers:null,content:this.options.contentType||"application/xml",scope:this.options.scope||this,onResponse:function(l){o.logger.trace("callService::onResponse()");var c=null;if(o.options.protocol==="XHR"&&(o.logger.trace("Response XHR",l),c=l),o.options.protocol==="JSONP")if(o.logger.trace("Response JSON",l),l)if(l.http)if(l.http.status!==200){i.call(o,new _e({status:l.http.status,message:l.http.error,type:_e.TYPE_SRVERR}));return}else c=l.xml,o.options.rawResponse&&(c=l);else c=l;else{i.call(o,new _e("Le contenu de la reponse est vide !?"));return}if(typeof o.options.onBeforeParse=="function"){var u=o.options.onBeforeParse(c);typeof u=="string"&&(c=u)}o.response=c,e.call(o,c)},onFailure:function(l){o.logger.trace("callService::onFailure()"),l.type=_e.TYPE_SRVERR,i.call(o,new _e(l))},onTimeOut:function(){o.logger.trace("callService::onTimeOut()"),i.call(o,new _e("TimeOut!"))}};Y3.send(a)},analyzeResponse:function(i,e){this.logger.error("overwritten method !"),i&&i.call(this,"This method must be overwritten !"),e.call(this,"This method must be overwritten !")}};var Li={ssl:!0,newUrl:function(i){var e="data.geopf.fr",t;return Li.ssl===!1?t="http://":t="https://",t+e+i},Alti:{new_key:{"elevation-json":"/altimetrie/1.0/calcul/alti/rest/elevation.json","elevation-xml":"/altimetrie/1.0/calcul/alti/rest/elevation.xml","profil-json":"/altimetrie/1.0/calcul/alti/rest/elevationLine.json","profil-xml":"/altimetrie/1.0/calcul/alti/rest/elevationLine.xml"},newUrl:function(){return{"elevation-json":Li.newUrl(this.new_key["elevation-json"]),"elevation-xml":Li.newUrl(this.new_key["elevation-xml"]),"profil-json":Li.newUrl(this.new_key["profil-json"]),"profil-xml":Li.newUrl(this.new_key["profil-xml"])}}},ProcessIsoCurve:{new_key:"/navigation/isochrone",newUrl:function(){return Li.newUrl(this.new_key)}},Config:{_key:"https://raw.githubusercontent.com/IGNF/geoportal-configuration/new-url/dist/",url:function(i){Array.isArray(i)||(i=i.split(","));for(var e=[],t=0;t"u"){var n=require("node-fetch");t=n}else t=window.fetch;var r=o=>t(o,{credentials:"same-origin"}).then(a=>{if(a.ok)return a.json().then(l=>l).catch(l=>{throw new Error("Exception Json : "+l)});throw new Error("Exception HTTP : "+a.status+" (status code) !")}).catch(a=>new Promise((l,c)=>{c(a)})),s=[];for(let o=0;o{if(!o)throw new Error("results config empty !?");o.forEach(a=>{this.listConfigResults.push(a)})}).then(()=>{e.call(this,this.listConfigResults)}).catch(o=>{i.call(this,o)})},hF=function(i,e){this.listConfigResults=[];for(var t=0;te||i",input:"__KEY__=__DATA__"},post:{value:'__IDENTIFIER____RAWDATAOUTPUT__',input:"__KEY____DATA__"}},namespaceByDefault:function(){var i=['xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"','xmlns="http://www.opengis.net/wps/1.0.0"','xmlns:wfs="http://www.opengis.net/wfs"','xmlns:wps="http://www.opengis.net/wps/1.0.0"','xmlns:ows="http://www.opengis.net/ows/1.1"','xmlns:gml="http://www.opengis.net/gml"','xmlns:ogc="http://www.opengis.net/ogc"','xmlns:wcs="http://www.opengis.net/wcs/1.1.1"','xmlns:xlink="http://www.w3.org/1999/xlink"'];return i.join(" ")},schemaLocationByDefault:function(){return'xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"'},processRequestString:function(){this.logger.trace("WPS::processRequestString ()");var i="";if(this.method==="POST")i=this.template.post.value;else if(this.method==="GET")i=this.template.get.value;else return this.logger.error("No other method supported by the service !"),!1;return i=i.replace(/__SERVICE__/g,this.paramservice),i=i.replace(/__VERSION__/g,this.paramversion),i=i.replace(/__RAWDATAOUTPUT__/g,this.paramrawdataoutput),i=i.replace(/__IDENTIFIER__/g,this.paramidentifier),i=i.replace(/__REQUEST__/g,this.paramrequest),this.method==="POST"&&(i=i.replace(/__NAMESPACE__/g,this.namespaceByDefault),i=i.replace(/__SCHEMALOCATION__/g,this.schemaLocationByDefault)),i=i.replace(//g,this.__addDataInputs()),i?(this.requestString=i,this.logger.trace("traduction tmpl",i),!0):(this.logger.warn("traduction tmpl : empty request !?"),!1)},__addDataInputs:function(){this.logger.trace("WPS::__addDataInputs ()");for(var i=this.method==="GET"?this.template.get.input:this.template.post.input,e=this.method==="GET"?";":"",t="",n=this,r=this.DataObject.getData(),s=0;s"u"){var e=require("@xmldom/xmldom").DOMParser;return new e().parseFromString(i,"text/xml")}else{var t,n,r="Erreur lors du parsing de la réponse du service : XML non conforme";if(window.ActiveXObject){n=new window.ActiveXObject("Microsoft.XMLDOM"),n.async=!1,n.loadXML(i);var s=n.parseError;if(s.errorCode)throw s.line&&s.linepos&&(r+="( ligne "+s.line+", colonne "+s.linepos),s.reason&&(r+=": "+s.reason+")"),new Error(r);return n}else if(window.DOMParser){t=new window.DOMParser;try{n=t.parseFromString(i,"text/xml")}catch(c){throw c.message==="SyntaxError"?new Error(r):new Error("Erreur lors du parsing de la réponse du service : "+c.message)}if(n.getElementsByTagName("parsererror").length>0)for(var o=n.getElementsByTagName("parsererror"),a=0;a0){var t=pF(i);e.attributes=t}if(i.hasChildNodes()){for(var n={},r,s=i.childNodes,o=0;o0){for(var e={},t=i.attributes,n=0;n"u"||typeof e.filters[r]=="object"&&Object.keys(e.filters[r]).length===0||typeof e.filters[r]=="string"&&e.filters[r].length===0||Array.isArray(e.filters[r])&&e.filters[r].length===0)&&delete this.options.filters[r]}this.options.index=e.index||"StreetAddress",this.options.maximumResponses=e.maximumResponses||20}Bo.prototype=Object.create(An.prototype,{});Bo.prototype.constructor=Bo;Bo.prototype.patchOptionConvertor=function(i){const e=i;return e.hasOwnProperty("location")&&(this.logger.warn("The parameter 'location' is deprecated"),e.query||(e.query=e.location),delete e.location),e.filterOptions&&(this.logger.warn("The parameter 'filterOptions' is deprecated"),e.filters||(e.filters=e.filterOptions,e.filters.type&&(this.logger.warn("The parameter 'filterOptions.type' is deprecated"),e.index||(Array.isArray(e.filters.type)&&e.filters.type.length>0?e.index=e.filters.type[0]:e.index=e.filters.type),delete e.filters.type),e.filters.bbox&&(this.logger.warn("The parameter 'filterOptions.bbox' is deprecated"),delete e.filters.bbox)),delete e.filterOptions),e.position&&(e.position.x&&(this.logger.warn("The parameter 'position.x' is deprecated"),e.position.lon||(e.position.lon=e.position.x),delete e.position.x),e.position.y&&(this.logger.warn("The parameter 'position.y' is deprecated"),e.position.lat||(e.position.lat=e.position.y),delete e.position.y)),e.returnFreeForm&&(this.logger.warn("The parameter 'returnFreeForm' is deprecated"),delete e.returnFreeForm),e.srs&&(this.logger.warn("The parameter 'srs' is deprecated"),delete e.srs),e};Bo.prototype.buildRequest=function(i,e){var t={httpMethod:this.options.httpMethod,geocodeMethod:"search",query:this.options.query,index:this.options.index,returnTrueGeometry:this.options.returnTrueGeometry,position:this.options.position,maxResp:this.options.maximumResponses,filters:this.options.filters};this.request=cb.build(t),this.request?e.call(this,this.request):i.call(this,new _e(me.getMessage("SERVICE_REQUEST_BUILD")))};Bo.prototype.analyzeResponse=function(i,e){if(this.response){var t={response:this.response,rawResponse:this.options.rawResponse,onError:i,onSuccess:e,scope:this};ub.build(t)}else i.call(this,new _e(me.getMessage("SERVICE_RESPONSE_EMPTY")))};function Er(i){if(!(this instanceof Er))throw new TypeError(me.getMessage("CLASS_CONSTRUCTOR","ReverseGeocode"));this.CLASSNAME="ReverseGeocode",this.logger=Tt.getLogger("Gp.Services.ReverseGeocode"),this.logger.trace("[Constructeur ReverseGeocode (options)]");var e=this.patchOptionConvertor(i);if(e.serverUrl||(e.serverUrl=Li.ReverseGeocode.newUrl()),An.apply(this,[e]),e.searchGeometry)this.options.searchGeometry=e.searchGeometry;else if(!e.position)throw new Error(me.getMessage("PARAM_MISSING","searchGeometry"));if(e.index||(this.options.index=e.index="StreetAddress"),e.filters)for(var t=Object.keys(e.filters),n=0;n"u"||typeof e.filters[r]=="object"&&Object.keys(e.filters[r]).length===0||typeof e.filters[r]=="string"&&e.filters[r].length===0||Array.isArray(e.filters[r])&&e.filters[r].length===0)&&delete this.options.filters[r]}this.options.position=e.position,this.options.index=e.index||"StreetAddress",this.options.maximumResponses=e.maximumResponses||20}Er.prototype=Object.create(An.prototype,{});Er.prototype.constructor=Er;Er.prototype.patchOptionConvertor=function(i){var e=i;return e.filterOptions&&(this.logger.warn("The parameter 'filterOptions' is deprecated"),e.filterOptions.type&&(this.logger.warn("The parameter 'filterOptions.type' is deprecated"),e.index||(Array.isArray(e.filterOptions.type)&&e.filterOptions.type.length>0?e.index=e.filterOptions.type[0]:e.index=e.filterOptions.type),delete e.filterOptions.type),e.filterOptions.bbox&&(this.logger.warn("The parameter 'filterOptions.bbox' is deprecated"),e.searchGeometry||(e.searchGeometry=this.bbox2Json(e.filterOptions.bbox)),delete e.filterOptions.bbox),e.filterOptions.circle&&(this.logger.warn("The parameter 'filterOptions.circle' is deprecated"),e.searchGeometry||(e.searchGeometry=this.circle2Json(e.filterOptions.circle)),delete e.filterOptions.circle),e.filterOptions.polygon&&(this.logger.warn("The parameter 'filterOptions.polygon' is deprecated"),e.searchGeometry||(e.searchGeometry=this.polygon2Json(e.filterOptions.polygon)),delete e.filterOptions.polygon),!e.filters&&Object.keys(e.filterOptions).length>0&&(e.filters=e.filterOptions),delete e.filterOptions),e.position&&(e.position.x&&(this.logger.warn("The parameter 'position.x' is deprecated"),e.position.lon||(e.position.lon=e.position.x),delete e.position.x),e.position.y&&(this.logger.warn("The parameter 'position.y' is deprecated"),e.position.lat||(e.position.lat=e.position.y),delete e.position.y)),e.srs&&(this.logger.warn("The parameter 'srs' is deprecated"),delete e.srs),e};Er.prototype.buildRequest=function(i,e){var t={httpMethod:this.options.httpMethod,geocodeMethod:"reverse",searchGeometry:this.options.searchGeometry,index:this.options.index,position:this.options.position,returnTrueGeometry:this.options.returnTrueGeometry,maxResp:this.options.maximumResponses,filters:this.options.filters};this.request=cb.build(t),this.request?e.call(this,this.request):i.call(this,new _e(me.getMessage("SERVICE_REQUEST_BUILD")))};Er.prototype.analyzeResponse=function(i,e){if(this.response){var t={response:this.response,rawResponse:this.options.rawResponse,onError:i,onSuccess:e,scope:this};ub.build(t)}else i.call(this,new _e(me.getMessage("SERVICE_RESPONSE_EMPTY")))};Er.prototype.bbox2Json=function(i){return{type:"Polygon",coordinates:[[[i.left,i.top],[i.right,i.top],[i.right,i.bottom],[i.left,i.bottom],[i.left,i.top]]]}};Er.prototype.circle2Json=function(i){return{type:"Circle",radius:i.radius,coordinates:[i.x,i.y]}};Er.prototype.polygon2Json=function(i){for(var e={type:"Polygon",coordinates:[[]]},t=0;t"u"){var e={};e.env={VERBOSE:!1}}e.env.VERBOSE?fo.enableAll():fo.disableAll();var t=i||"default";return fo.getLogger(t)},disableAll:function(){var i=fo.getLoggers();for(const e in i)Object.hasOwnProperty.call(i,e)&&i[e].disableAll()},enableAll:function(){var i=fo.getLoggers();for(const e in i)Object.hasOwnProperty.call(i,e)&&i[e].enableAll()}},Sm={proxifyUrl:function(i,e){var t=ot.getLogger("proxifyUrl");if(!e||!e.hasOwnProperty("proxyUrl")||e.proxyUrl===null||e.proxyUrl.trim().length===0)return i;if(e.noProxyDomains&&Array.isArray(e.noProxyDomains)&&e.noProxyDomains.length>0){for(var n in e.noProxyDomains)if(t.trace("[ProxyUtils] proxifyUrl : analyzing "+e.noProxyDomains[n]),i.indexOf(e.noProxyDomains[n])!==-1)return t.info("[ProxyUtils] proxifyUrl : "+i+" found in noProxyDomains list ("+e.noProxyDomains[n]+")."),i}return e.proxyUrl+encodeURIComponent(i)}},cl=ot.getLogger("GfiUtils"),Gu={getLayerFormat:function(i){var e=typeof i.getType=="function"?i.getType():null,t=i.getSource();if(e){if(e==="VECTOR"||e==="VECTOR_TILE")return"vector";if(e==="TILE")return t.tileGrid?"wmts":"wms";if(e==="IMAGE")return"wms"}else{if(t instanceof py||t instanceof fk)return"wms";if(t instanceof my)return"wmts";if(t instanceof gn||t instanceof Hl)return"vector"}return"unknown"},displayInfo:function(i,e,t,n,r){if(cl.trace("[Gfi] : displayInfo..."),n||(n="text/html"),t!==null){var s=null,o=null,a=t;a=a.replace(/\n/g,""),a=a.replace(/(>)\s*(<)/g,"$1$2");var l=typeof window<"u"?window:null;if(typeof kA=="object"&&window===null){var c=require("xmldom").DOMParser;o=new c,s=o.parseFromString(a,n)}else if(l.DOMParser)o=new l.DOMParser,s=o.parseFromString(a,n);else if(l.ActiveXObject)s=new l.ActiveXObject("Microsoft.XMLDOM"),s.async=!1,s.loadXML(a);else return cl.log("Incompatible environment for DOM Parser !"),!1;var u=s.getElementsByTagName("body");if(u&&u.length===1&&!u[0].hasChildNodes())return!1;var h=document.createElement("div");h.className="gp-feature-info-div";var d=document.createElement("input");d.type="button",d.className="gp-styling-button closer",d.onclick=function(){return i.featuresOverlay&&(i.removeOverlay(i.featuresOverlay),i.featuresOverlay=null),!1};var f=document.createElement("div");return f.className="gp-features-content-div",f.innerHTML=t,h.appendChild(f),h.appendChild(d),i.featuresOverlay&&(i.removeOverlay(i.featuresOverlay),i.featuresOverlay=null),i.featuresOverlay=new jn({element:h,autoPan:r.autoPan,autoPanAnimation:r.autoPanAnimation,autoPanMargin:r.autoPanMargin,positioning:"bottom-center",insertFirst:!1,stopEvent:!0}),i.addOverlay(i.featuresOverlay),i.featuresOverlay.setPosition(e),i.featuresOverlay.render(),!0}},features2html:function(i,e){var t=document.createElement("div");return e.forEach(function(n){var r=n.getProperties();if(r.hasOwnProperty("render"))t.insertAdjacentHTML("beforeend",r.render);else{if(r.hasOwnProperty("name")){var s=document.createElement("div");s.className="gp-att-name-div",s.insertAdjacentHTML("afterbegin",r.name),t.appendChild(s)}if(r.hasOwnProperty("description")){var o=document.createElement("div");o.className="gp-att-description-div",o.insertAdjacentHTML("afterbegin",r.description),t.appendChild(o)}var a=null,l=!1,c=null,u=null,h=null,d=["fill","fill-opacity","stroke","stroke-opacity","stroke-width","marker-symbol","marker-color","marker-size","geometry","value","name","description","styleUrl","extensionsNode_","icon"];for(a in r)if(r[a]!==void 0&&d.indexOf(a)===-1){l||(c=document.createElement("div"),c.className="gp-att-others-div",u=document.createElement("ul"),l=!0),h=document.createElement("li");var f=document.createElement("span");f.className="gp-attname-others-span",f.appendChild(document.createTextNode(a+" : ")),h.appendChild(f),h.appendChild(document.createTextNode(r[a])),u.appendChild(h)}u&&(c.appendChild(u),t.appendChild(c))}},i),t.hasChildNodes()||(t=null),t},layerGetFeatureAtCoordinates:function(i,e,t){var n=i.getPixelFromCoordinate(t);return i.hasFeatureAtPixel(n,function(r){return r===e})},displayVectorFeatureInfo:function(i,e,t,n){var r=i.getPixelFromCoordinate(e),s=[];if(i.forEachFeatureAtPixel(r,function(a,l){(!t||t.indexOf(l)>-1)&&s.push(a)}),s.length===0)return!1;var o=this.features2html(i,s);return o===null?!1:(this.displayInfo(i,e,o.innerHTML,"text/html",n),!0)},displayFeatureInfo:function(i,e,t,n,r){for(var s={},o=0;oi.getResolution()&&(m=!1),m&&g.maxResolution&&g.maxResolution"u"&&(t=!0);for(var n in e)e.hasOwnProperty(n)&&(typeof e[n]=="object"?i.hasOwnProperty(n)?this.mergeParams(i[n],e[n],t):i[n]=e[n]:i.hasOwnProperty(n)?t&&(i[n]=e[n]):i[n]=e[n])}}},bF=ot.getLogger("interactions"),ds={_extensions:["Measures","ElevationPath","Drawing"],_options:{current:null,clean:null},unset:function(i,e){bF.trace("unset()");var t={};He.mergeParams(t,this._options),He.mergeParams(t,e);for(var n=i.getInteractions().getArray(),r=0;r-1){if(t.current&&t.current===o)continue;n[r].setActive(!1);var a=s.source;if(typeof a<"u"&&a instanceof qs){for(var l in t)if(t.hasOwnProperty(l)){if(l==="current")continue;if(typeof a[l]=="function"){var c=Array.isArray(t[l])?t[l]:[t[l]];a[l].apply(a,c)}}}}else n[r].setActive(!1)}}},jt={lightOrange:"data:image/png;base64,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IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjkyYWVkNjM2LWY3MDMtNDAzOC1hNzM4LWZiYzYxYzZlMTljNCIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5NWMzZWI3NC0zYWRmLTRkYzUtOWZjZS1iODQ4NTc3Nzg4ODQiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0NjI3ZDg3NC1lZDIyLTRiZTUtYTlkNS00NDlmMzVhZDIxYzgiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE5Mjc4OTUzMDYiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDphM2U3ZWQ1MS0xNTI4LTRhYjAtODVjOS0zNzNkNzgxZGM2ZmMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI1OjI3KzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PofUkY4AAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGRuA4VZTAAAFcElEQVRYw82YW2xbVRaGv7XP8bHjXByHQkNhWigdVX1AikRBMBoQ8wASl4fRqPDAAxIPKAVxeRqQRohHBEVCaoGKUBCl4qHcNKCZVKMRRQxtgTaACLRKqlwB14NzM2ni2D2XvXjgBFXQOnFiA1uy/HB89u9/7bX+vf4l1HnpK57hTNCE0AzqAS5gAAuEID5KiWSiLPf4tp7YUjcSu4yLZzdi2IJyNXANcBlwAdAKzAHTwDhwDKEPywC+GZWHbPi7IKOvZIWguAnlr8BtwJ+AxDJeDYCPgF6Ed0hkh+Weov5mZLTHJMDeBjwYk0itYJtKTOpZML3SbYNfnYz2SBr0buARYENcFytdFvga2AGyT7p14Vcjoz3ShOgdKDuAi+pUewpMIDyCypvSreWGk9HdroOEV2F4A1hfTxGJCX2D5U7U/UzuD6NaXq49NRJhBsOjwMVLEtE4gaL4W5cV3IsxPEoizDT0ZLTHcSH6M/BWLLlVwpQKuPzhb+i8sRkv04Y/e5rvPigxtnM9trKU2k0D28A5LN3RsmXbrbFOU8DtQLpqfJqu97nh6TydmzvwWpOI8VDbxqbrkmz62yk+/Ps6yoe8KkeV/hHHfgrMNyrNEkBX1SAktgRs3T7ApV1rSWayiEkDLmLSJDNZLu1ay9btAyS2BEsEuWuZ99WKyRhgHeCcn8wGw/qbOnAS3jmfOwmP9Td1kNhQDduJcUwjyciS0RJXMMkWkPPUo/z4XFxZRhZII8mEwFCsT+f5xXTE7FAOteduItVaZodyhNPVZDeKccJGkxmsChIMOvTt6aRSzIP+7A9rRKWYp29PJ8GgsyqcVauZSADaj+IDTecWvBlD4e01HKjM07XtOOuuy+A2X0BYmib/8SxfvLWRYm8LdqZaCvkI/SDBci6nld0ze7KCLa4F3gSurR4MB5x1FnMhiCeor9hJiPKmWpbGp3EU2IbJFuTe5XfStbczLxgP7K0IPcCFDWhnJoFuMAek2/oNbWdku/WxHATejT1JPZcPvINysFYiK+gAFkXTK6H+MyhXADeseJ9fmrVDM6X080/+p1M2/yFsD1zjEIauEeMAqNpQE16oaKiqwfjYeLk+fuYl10HDq7DsBTavxs8o6FzFKez/dM3rLx9LjUyVxcb7yVkfzmpXFbACJURHIxgyxkyu1ml6qL0Z4YX4xl7Jfrrgm9Ov9bX/e++x1tHCgkQ11lgELGA4sBp3iHRbH5GDwJPAFLXo6KJnDmTh/aG2w2/3t47VSGQxs1zAE9U2s9pEjx3hXuBloCa7G1rxv8o3f/7SkUz/UFFWMqGRWMpHAqsDbl00KGotIXM7MawF7gKSS5oJJRospI7v+rD96Ikp8aV2EgrkVPW4OnIy6SVL9ZubvZgyaOVyYDfwl2oNqVWiXNEb231oTe+/BrzvK9Gy01MFyoiOKzIEmqsEfjGf/39U1yHgosJFUXhlFMl+z9E/nkvhVNHZsjux+9Caf77RnyzMBaJLmW4RrWAlB3Y4Uh13HLOA4wQjo6O2IRPNxVV4JuG5Et2SSelzjtFLzsZQ0NIZ8/2rx7K9+/paxqbKvyh4Bc4AFQxzau23Dow7FS+nHmfEUz05OqINH8+evXJPJVOuE93XkY4eSziaXcQpB2b+vZNt7+/8IPPl2OxPRMJ4dDsLzIho3hpzamJ6aqJ0ei6qtZAasmZ2OS1RyOMd6egBIzSFVoKj4y1Hnvhv+8cD02ZOkEmgIKITVnXKWDs1ksvNrgbTbRSZ46cypY50aWcllIsyKXvr8GTyi9f6WvePFGVQhO8EPW2NzI+OfV2pF2bDTgbg8D/aJeVUspd1BK3/G24u7/skO3+iYP3h3LdhI/B+AGodUpo8WKwoAAAAAElFTkSuQmCC",darkOrange:"data:image/png;base64,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czpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjIxNDZjMzUzLWIxZjItNGVjOC04NzQ3LTIwMGEyYWExM2ViMyIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo2NGViNmI2Ni03Y2I2LTRkZGUtYTI3OS01MGY0ZWFiZGFhODAiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo1ODRhM2VjZC1kNGFmLTQ3NjItYjA1ZS04ODk2MGQ4ZTk0Y2MiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE5MDM3ODI2MTQiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxYzNjOGRkZi1kMjVkLTQ4YzQtYTAwYS0yMmU3ZDYwMzg1YjYiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI1OjAzKzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PuhCAHgAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGQOTjc4FAAAFdklEQVRYw82YW2gcZRTHf+eb2dlkc9lsrFYr2notfSgWxKKiog8VvIFI9UFQEaWtYPFJfREfRRSEeqlttViLD/WGisYXrShWpfWC1WpSN5eN3cZumkuTzWY3c/mOD9lI0WSTTXbVA8M8zMz3n//5zvl/5xyhxqb3ewYvaERpAvUAFzCABUIQH6GAHyvKa76tJbbUjMRW4+LbC7GsQbgCWA+sAs4AWoA8MAxkgEMo32LoxDO98oIN/xdk9IGUYEYvRrgduAW4Gogt4NMA+BroQHkfm+qW3aP6n5HRTSYG9hZga5lEwyKWKZVJvQCmQ3bZ4F8no5skAXov8BiwspwXizUL9APPgOyVXTr5r5HRzdKI1TsRngHOqlHuKTCI8hhG3padWqw7GX3IddDwcixvAefXUkTKhH7HcBfifi8vh1E1H1cfGkGYxPI4cM68RGw5zf3y3S7IuedgeZwgTNZ1Z3Sz46LRNcA7Zcmd25yGgPWP/M7q65toTLZSHBvn6OcFDm07n6g0n9oNAxsR54DsjBYs2251QWAbgFuBREX/tF3rc9+zA6xa3U5jSxwxHmpbueyqOOvvOM7rj67g1JfedFTNagngVtR+B0zUK8xiwLqKTmhcE3Dblk4uXbecRDKFmATgIiZBIpni0nXLuW1LJ41rgnmcvG6B59WiyRhgBeDM+UZipWHthnbcmDf7b8Y81m5oJ7GyErZTxjH1JCPzesu4ghtvBpkjH2X6uXFlAVEg9SMjhEAamFsyp4Yjcuks1s6uXdZacuksU8OVZDcC0mW8OpFRQqBruvqdwwpdDh+9cjaF0QHQv/2wRhRGB6afdzkVkKZxtDoyVaqZBKCHEXygcXafjhi63l3G9tIEGzYe4ZKrksSbzmCqMEz6mzE+eedC+juaiUYqhZCPchgkqKB4SzxntqQEO7oceBu4srIzHIitsMTOBOMJ1leCkxAMmEpRWt6Vg8BGTConOxZeSVdfzmwxHmpvRtkJnFmHcuYksBkxH8tO69e1nJEd1sdhP/BBuUippfnA+3jsr5ZI9TnzV33mFcB/DuEi4LpFr/PPZu3LkanES08fOltWnxe2Ba5xCEPXiHEAVG2oMS9UNFTVINOXKdamn3nQdSC8HMMeYPVS+hkFzQdObl9m2Zu7+xt6hkKx5fXktGumdNXyZQUKiPZGkDbGnFxqp+kh9kaUHeUTezHr6WRkxt/oa/toT39Lby6QqMoci4BJDB8vpTtEdlkflf3A08AQ1ejoTM8cyeRnudYD72Zb+qokMhNZLuCJaqtZaqDLLi0i7EHYDVTV7oZW/J9PNf3wanfycLoki5nQSFnKewKrnW5NNMhtKRDlt6EsB+4G4vM2/UrUNd5w5Pl028FfiuJL9SQUyKrqEXXkaNyLF2o3N9vUYKB0AbAduKFSQWqVKFv0+rYfXdbx4aB3qqQLDk8VKCKaUSQNmi0F/ujAwB9RTYeAMwoXabg2QvZ5jl4ym8Ip6FjgDm7/bdl7bw3Ec/lItEJyWyAS0RJWsmC7I9WM45hJHCfo6e21dZlozlju3pjnSnRT0tMXHdFzT8dQ0EJoTr2eSXXs7W/uG/pnwiswBZQw5NXaYw5knJKXVY8p8VSP9vZo3cezp1v2nniDK9FD7V70RMxoaganGJmJT0+0frbtt+RPfVN/EQnLo9sxYEREB6wxxweHhwYL4/mo2kSqi43c5zRH8GS7Fz1shMZQJTg41PzVU7+2fdNZNHlBTgI5ER20qkPG2qGebHZsSTpULzJH8slCe6ywrWTlrGTM3tw9Ef/xjUzLvp6idIlwQtBxa2Sit6+/VCvMuu0MwIE726RBSqlViaDli6Gm4t6e1MQveet3Z4+F9cD7Ewo4WRJBbaaSAAAAAElFTkSuQmCC",red:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADMAAAAgCAYAAAC/40AfAAATbHpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjapZppchuxEUb/4xQ5AvYGjgOgG1W5QY6f10NKtmW5EieiTVLDIQbo5VswCvavf97wD37qyD3UJqPP3iM/ddaZF29GfP2s5znF+jw/P6W8P0u/Hg/5fTxmDvlJ7xNHf5//cTx9DvB6WbxrPw00zvuD/esHs77HH18Gel+o+Ix8FvoeaL4HKvn1QXoPsF7Lin0O+XkJ216v+rGS8fof/Ol+xEReL19/r0L0tHGdkrOVVCLP72CVXPx/CWXxpvGcS+XEVOR5H3mu5SMmBOS7OH3+TGZ0far125N+ycrnuy/ZekeApX3JVs3vU8qXIPfP12+Ph9S+z8oT+p+uXMf7Xf71+NgpvWb0JfpP8K+O+6yZVazaCXV/L+ozak9Srm4u4Zcegal1stOpocGrPyaPweIPpaDxxM3jpJky6bqpJk0r3WTP60mHKdZsIQtvcj65PAdHkTzzKZ6/6o90s5RZtAxyeZ6015I/55Key854wnO1wZU1cWpODJb4yl8/wt9+4V5vBQI8ntSnV35z9mAzDc+cP3MaGUn3HdT2BPjj8fXH81rIYPMoe4tMht6vIXZLP5CgPIkunNh4ffVgEn0PQIi4dGMyqZABspZKSz1FyVlSIpCDBC2m7j2zyUBqLSuTzLWUTm5G9kvzFUnPqbllDgeOA2ZkopVOnw0ytEhWrY36kTqoodVKq6213qSNNtvqpdfeeu/SHRSXFKlBmnQRGTJljTLqaKMPGWPMsWaeBdBss0+ZY865FtdcjLz49uKEtXbeZdfdwu5b9thzr0P5nHra6UfOOPMszVoU/NCuokOnLktGKVm1Zt3Ehk1bl1K7Jdx62+1X7rjzrs+svdP62+MvspbeWctPpvxE+cwaR0U+hkgOJ81zRsJyqImMi6eAgs6eszhSrdkz5zmLE/grLTPJ5jnT5Bkjg9VSbjd95C7kV0Y9c/9X3oLUX/KW/9fMBU/dX2bu97x9lzV1ED5Pxl5d6EGNhe7jnJUH/+jW31/D+83KPiEmlrd0ZremEblUT7eZm0BzexaimmXYgubnuEPvkbQGa9wthiOWrraVZNfSbR0D3dM5e18pXeZJJmnLWKdvldHSuKUOsxOt3bbTboUw2gyslJWdOaVdy9qByFHOHqbkHGo8yhf7pMzaZaS57phW01Jel0mrG5SmjUNddDez7oydWuXyM2lNdiFWXboPJVg7FGLzCt/lNwpH8zahiOZobe1kVcJOl4zlA+HOkZfx6ZCqda7d110dOqk5j555J51FiWZST5Qtdd1klCVRBYFSJPLQBhVUm0uIVsH9rLkAPGR3mNdLnms6F9jxCstcglo/til6U1v7hJm27l3rQ7HE7SzZVqiFqgKlzQ0BSa17KIOX6mWnnHzLOfToTkNLH9lgkXjuufNIsdmoM5nGyaSbACl51ihnS4t7TBrI9uikqdFIpLPGdaGkO4e2QBHMZEe8Ls6U6DWk+dBZ9VLGu98lM11aIjXjakwmrUP6KF24IvLlTbBSMKXAz7ibZFg6JtIZFqmoicKJlpnItETwSSfBphrjGTYkkzzqgArxS9wA7/o/amHMG4VpUQ4naZO6llRb63b19J1i3g9Lqy/ptx4Jf2yej95JmyqnPp40nD1FZ6eEE5GkmCLLXyizGgweEiqMDJ59WrKiWnajjLNcFMFdh/WCApcKnDU3Ymiqex46z4jy0O5rCny1U8sU44naDrlFlpBoiqK2FSlQEkHj0YlVtbmq2OSJIt9n3XKPnkuWEFrHx1cmu67wCdWWb26RPgIq6cbWQSCh7ae1mavXCLiYj//UCeia5L5SWHfOUy1nmsah0qgDFAnlMSvhAGM7iEUB9aZX4xO7Zb2Agc/b+D4UPt78/jq64wBC6Jaup8vuDiT7JCo/slSKKILbA1xMusPOqh2o3McIKmivFJLa3bxx2ChgFek5k49tFcrJazxJPZAlqmxVaMSQfstACssdyhDQIDJr+rfDSzfXCzFsBrte200pvE5xAkmDNjbIohNm5klmgx9YnSeanMqY5A/FTwObIRibOeDRqguEXKfVlYUsDBao9WTlykDd1C2A/6v6HDLrn8L19fWACeBm7jfSqwkmzehsIIaOBraQNtfrp43aAEzqpEvhK1NPFeC4qG2jkWBXunMnuOISRcCYsAdsF3O7fUNnujpInQp4DZ8KwV2FmvtIOsh0MU0/t5EmSrcCsRpAyod4KFVKDYGfrdIxkSyVp42oJ1W+RLmRdmi0Esc0V7UIzJJ//A+4FBq6GJDSNahvqK0ceqdOtLOlCY7I3aUpxTsUdtOZL6m/rVwjKAPk2qwfngswTfY1DlqXBA1y3zIyIc/qRPHoW5SIy37KpWFJjHxD3I6/c2bOA3y2hQ4pYTZgbjokXWhk5NuoOmZiZwI/XVUnUEJFcawCmm1Ta/tw3ZnakHNtNGbUWEmVz6sXlxuq5lNV4lOqIJuQU5QHEMeyooAIrnXphlkdMea0QBdhgMjIKxu4ijyOJsAkNkSA4nW3zegoRhLwGvsiwsZFjaA+vJ+Pgl41LFqKTBzKJzeY4y4K5XoNc7nis0wgQnLKo12glDFaehPgz6/h64EaExPNTwJAe1DE3wFUMBxd4DV7naTKl3PCl5MMxeG/EgQoy39r+w5UIWwAZ7wmNqNo/ZhYKgiEmkMjJViEcWAN4ggPgzAdfloCgu4iHEgRDTcRcXnedsSBlODF7lLlgOpER4KNup9IZKHakS9TXDhct95PHzZaH3cFI3KsEcHSDhw4pxZUZEFXqYrF0L1DQXjKGS3CVVwx8nDWQ8lEU9eXCBiEat99LPSlgWplOVQDS2NDg3WSNSQYde+YyYCuVZNkYNUgND126YEyidh4loQEG2DBs/cx8KWQNz0yTgqCTkMLmclevB/oQSuswMNCWvYAHh277jmLiswGO2w9Q1IplD35KTr5Hkwr71QA1z9KYTfXDe9ie6JJUVGMgMsSH6YhBvcTN5Z+bw/6BkhdiOf4X0Pk+Qpv4YVvn/BmtOy3CPg+A8gw+v/J82EJl0ikfsma0i508WtNQFu6GJ5nsZ7sTacCgBfB1FmObYVEFLW3GkrRWXPP3mc5A+7fEinK4mqRU5D8gGpdNjZaTx7lfU3nAo5S7q6ZuzncQWjEbqGSyCJeBLuCbu5dB2B0NAvwQyBz0dO4KqIKUmzL6q2DRavRClhgVIC4xaAFJtpuxYBysKndvZhDL1fAUIGdSPVI1pj/IDsdOKzaO8oQp+O6V3E/4NI4XnZr1TBg9+zyic6BWbfzLUlOLB6VgvGd9dJlG2R3DQsnLrRb6tTGFEK3xB7SD1RT3S59Z7c2jisR42rokoQEIGggP4WMs4k1IYD3cOfVdnNjhiKwU8dM8YaSfVVYkKt2aOTuqsgBZY7jUazQPnqrocQgNSYPRF9E+SvLGIzVnyRDRzT5U7xUMb2wAFgAhqoHIja8Y7WQRurG2vHdnqeq6N53vShmnb5r4SmYj8L506vjGsLOMErgHKOchXNdCpdq3QKvrjCj24kXD1E11zUiyyQP1MMjC1GiLD4NtFbhbGXGdkY8i7TXDL5BETfhadPCzeugxtwL4lmKYfiQ+XpIzLxwA9hIky+ggMIqYFfDmiPa8AX7XMRUP+GAPciSQmZh4Q3ckRH3wIhZAsCijAbKl3J+pBtLw3pYK7n4IYHuIwk8Qdyjb+veV3i3lQFXjE95i470ifEZ34URpc53BJVKlIXJwbJgCB41Ag71DFpSqxtLXgf2MW3cvBmvhAaOZEiIFY4AVBNM8UITXn7AS1iF7J6pAoWAjmh4y5Wmx51o7qBVgkfol4MYBDQ6qnu60cLlwDyLZYLAnBUqs8u49IqKPjh1RKKDN4iOh8DC90kXJ3xR8Z3IXSKZY8wTHxaiwMkIazyh4r9Gh4PQgzQ5mi1l/HgDodGAEMOgPtzPUKjxDvqs3BfQ2QO0J2IC73XMhu3pL5h3OK0uF1GF9tgFiBzAEbEjPTfS0cXuhVAaV2toiWcgvopYcMpGI0r0rdl00vNRBbx+vXb6+do4CCDx7s8BhYZKAbGVsYEF33o6xfVwbB6PDhm42oxaeA0Pis6BgJjTlTqIdcdjI5CuK9YAEKmrYea3ZUCxeBgkMLVzXT48dD4WLX4TigKZ1x4yfWTZoIw5Yfj9Abj/j9QD9LCQRHR8r8ZAtosh4YsTZzwE6+t04rsoc2+g1h5gIHF4+O1J7Vg+NGbz7SfwOlPzvqVFhJCQ4mnAXHYqSrG5AGNBbEqAGmFR7CdXyA2PXUBbZDh04fz6OMUM3MHoVfGpA62Ch3LlCzVgC7l8h8oDzdHdYxXflJvm2zGM3fYpvodExdcdIZQVxzzLN/gLhzHDXBEgfgFpqgumRYc6Z2AyvCqVChakJ3UFShQaws6WkvrLRGBZ2vdBDT8fmO5ZrS1WV7AY6aEvuGNBCy6dENU+H7cj+IjURXxTlPiK5oBpiACdbw2ydEwhPeXgVeb0ZnPzCSk4aFIe3c7D+pQqdIRsEnklqk/0kTRiCrR5Cwx7NlvcKcK/+C842Hscz4SUBV8uHsfcFaHWDgNiVHyPq2tg2I0GwSGsCArBXY9aaonlIA/89/xSTMxu0YksrZC3USmjxhTd1OydAjy7HAWjs35LiSTJJGK+1fLY/jYha/Vtoc6KLD7NAwjBqov6ivQQKv+1N5Lit2LeX0kyrAOWwx4Y324Y6Ta1Pfe28KB+o20SyxGKged8rR68DLyOIPFZ8CylJuyKu1OIFtC7cUjNvv1wXNFyGgVX0BpryQgwPEYaTYyRPB4XzBaiaPdjDIqGRRW4knDdjsiAkxdzpWuOpxqgQMMzl0uLjOmW/UD7ziKzeymC3sVo9mXbwe1RmQix8c2+EFYJ2pqhsAx6apOdEn2fGXY9rvHJmE1Ae+fyqD0sH6o6dwh1wtUz6c6+XccvEf4MCg1gEJAu+DwazG+DVNf1RCkDYkgs37VXmFBbf21t9YRme7YS1HcXi284Q9kfNGWse323t0VlvTrImQsPsQe6oMLeHd2EbPNN6ub3aUuCjRDEcgcWHxX+kvCkf/xHvW1E1jcoJZxauvcKydiCv48V37kWZQxtw4qJNODPVsIU+R44zQtroi0Be+hQX63ZyRriAqWJJEBGzKI6HJPsdjpG3Vc3onja7pSJW3QaDu/lW8PjGISJQeEi9QZyj2GseK/BcVrkzo6CmB6a4tMCg2mQY5Ir7qkXBGGv51Yy496L2SD5l4UJHQG9D4NFJC5gLAA8HHMB1ULcWPqjb/FcfCK03wHQM64NAO9+x/lQNAHAAX2YIPJ5gjLOmy259gcgyvU7L8idDkJ2yr1iWAUkKo7aIk9uF+QrKQAFiq4u8yDdIZJNQ+Ts+x2oKKSDb5VtVDdyAHQi/ANtRPG4NK/Z8W1ilCdNK4egJtQD80GKITglgrcAvDm7GAgUvenMrdOOvrlEwcpEut/RfSe/eJeHm6vvwhdX3gi1lwnEsNAm/jZX13mIJM+UrhGdBlhhvig38IwcJ8W9zsAUzqpRN4VOZ6jfC6b+sS/Y0+VtHOmH6PwKZYMjbnwus9HtO0/IURgRkxFYTHJapCqYIzWFN4BpySEpeKAeD6PzeaflxfmdVkq7ynBzOtqlqAW/BkrR0Y7mINvwbWv4iO6GSDPJHdmbG+xH+UW+DEnHia4hqdQ2ohfBna6CR8CN+u0CFILsuJOLZ99dv72NlBM1hBDGM8IP5TFZ/QAQhDXKyVAIySckQWg/67gP6hDcqVNQlTt3Z3Bp5Ksj2JAxfs+OKrZqmi8nKzhDDVK6ie+cEli83+7BM4qzhKseI23xey7482t4xHg1VjMBA+zFo89895p+Rfr4Ni6Ek+j4+ayNAovkBd00m7iCQrQSvXB97wCkxqsPopP00DnR7zRQIHs2uowUsjA8dPG/jrjS/UYoEgyM9Xs/FSUpLaAjORmgMNyebyyd3G82egkJ4rfESLTf/Lfie7SAK4GFZyh/GrsDyRW3gxoNiJjVkPK++Ygp9T1h3BB4xirxqpZXj7YAtoUcBcCwBRv9j0xh9EFhGOyOMwoO4rmNW/1GTWx0/FnUAZN0P19SxougYiS7BzkOfe63MH3Nd29lMhC6UvG0g7Pwn4sCXag3v1t6XXfn5RrBnc4hwNv3CiYVAk75nhTtZy6QhgFusIEE1Gf1sTiISULf0Q1Ukd8PtZuzAzk1bA2fbRAJUoZT0iWiKGNFpKKLerkngI3DN5P83tEsCCValn5tCSSoAFZ8NE5iZCGOFvnI2+fc0hSMyOP6hgheBC/JqM0XtzPY4ff3CcRZGFPQp+eT9FGVEXZAx5l6MPfTxBAh6p9mAdsCes1v4slb46vGhDSdrI7iP3whocfnC9FXoxzU/6gk3T51NDqRmqXEDBZpfvMByw0xUJeUSzQ5viPcMHg1uzxlzOnc9szCN1b5NBH44/uD8eVHwoMzBAdw5t/eZ7uSp4CG3yd2DETwEdbr9O8QEP3Wg28roCeRYRkHdKL6HzKxMGDwGRf0vRjBi75j7X6nFNW/ckp20Z7t7ZL6fRp0CBMDCbLfwU4hteMuyDWR35qZvpvj1ZDwnfkxnjWhUnmmRRqK67v2d+On/kdI/wa+GQTprDiGjAAAAYRpQ0NQSUNDIHByb2ZpbGUAAHicfZE9SMNAHMVfU0tFKh0MUsQhQ3WyICriqFUoQoVQK7TqYD76BU0akhQXR8G14ODHYtXBxVlXB1dBEPwAcXVxUnSREv+XFFrEeHDcj3f3HnfvAK5ZVTSrZxzQdNvMpJJCLr8qhF8RQgxR8BiUFMuYE8U0fMfXPQJsvUuwLP9zf45+tWApQEAgnlUM0ybeIJ7etA3G+8S8UpZU4nPiMZMuSPzIdNnjN8YllzmWyZvZzDwxTyyUuljuYqVsasRTxHFV0ymfy3msMt5irFXrSvue7IWRgr6yzHSaw0hhEUsQIUBGHRVUYSNBq06KhQztJ338Q65fJJdMrgoUciygBg2S6wf7g9/dWsXJCS8pkgRCL47zMQKEd4FWw3G+jx2ndQIEn4ErveOvNYGZT9IbHS1+BES3gYvrjibvAZc7QOzJkEzJlYI0uWIReD+jb8oDA7dA35rXW3sfpw9AlrpK3wAHh8BoibLXfd7d293bv2fa/f0ASM5yljz/NiUAAA0aaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOmI5YjA2YTAwLWZkOTQtNDc5MC1hNzIzLTlkMGUwNGRiNTRlNyIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1MTQ3ZGU5Yi1kOTA0LTRlNWYtYjIyYy0wZmMzOGRmMWI3ZGEiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4YzBjNTI2YS1lYTkyLTQxYWItODM5Yy05OWFhYTM0YjdlYzciCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE2NDAxNTU0MjYiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDowMjQ4MDc5ZS1kMTYyLTQxZmItOGViYS1lMzY2NTRiNGRjMjYiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjIwOjQwKzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PkaovgIAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPFCiKn0kIAAAFfUlEQVRYw82YTWxc1RXHf+e+N2/GH+Px2IEEV02AgqIsIkwgoYS2ahepVGCBUOiCRRdsAAnECthErBBCICGFj4gqRQqBRSABUrVm1URtCSATJ5ASZCPHH0kGgx1/xJl5nvH7uIcFY4iIM/GzZyhHenqL994993/u+f/fOUeos+nNnkHCJoQWRD0UFzCARYhQCVB8NFWWTwNbT99SNxC3GZfIXg9sADYDWxCuRekEskARYQplFPgEOAr045ph6bXRzwKM3pEX5mduQLkHuAvYCqSW8GkIfAT0IBwknT8lH87o/w2M3mpSqL0LeLQKIrOMZSpVUC8hpkf6bPiTg9FbpBn0L8ATwLoqL5ZrFjgNPAeyV47p3E8GRjdLE6r3oTwHXF0n7ikwgfAEIvvlqJYbDkY3uw4a3YLyNrC2niJSBXQG4c+Ie0yORnGSj5OnRhzlUJ4ErrkikBAoAjPVe7ik4F6D8iRxlGvoyegmx4X4NwgHgM6a8fUyIfc8doZbf99Ca66N0uwF+v7tc3DnWoJK6gqep1C2g3NEjsdLlm03GXSbAe4GmmvGZ91vA3Y8P8aN6ztoyaYxxsPaNrbcnmbbvV/x9ONdnPnA+w71otaMcDfYPqDUmDQTUgjdNYPQsSHkgYf62di9mmwujzHNgIsxzWRzeTZ2r+aBh/rp2BDWDLLQjSzpf7VMMIpB6QKcy77Tuc6wdVsHbspbfJspj63bOuhcV8u3g9KFJtufWQbHakfLdQUv3YrI4qwQ+e65616Jr6mknE4KJgIGgctLZnEq5vRgAWsXLyKttZweLFCcqiW7cdVP1DgwQoQwUNPJxIDDG7vXMDszBvqjDWvM7MwYb+xew8SAUzNowgCSDEwyNVMJQU8AAdC06DvBtOG/76xirlLi3u0nufn2HJmWTir+FJ9+PMu7B66nr6eVYLpWCgUoJ0DCGoq3wv/MbXkhmlkN7Ad+XTMY4kBTl6XlKnA8IQ4U/xyUx8wlB3ZpKvcC23Hz49K79Ep6GeWM8VB7J8pfgasaUM6cAx5EzPvSZ4OGljNy1AYIh4C/L6lASWYBcBCHQ0mBJOfM94rk+WjwAsKvgN8te51LK7kPpm3zK89OrZH1v4zaQ9c4RJFrxDgAqjbSlBcpGqlqODoyWq5TP1OtnoU9wPqV9DMKWlRnfJ+/6q3XKpmhSRVbXU8uuhb6Hq1eVsBHdDiGQWPMuZV1mpuMB/aPCK8CXcsMjs6pufCm3/7PPZXs8LhKnJBjMTCH4f2VdIfIcRsgcgh4FpgkiY4u9Mwqc4fn2468M58dSQhkIbNcwBPVNrPSRJdjWgb2AK8BidrdSCX4PGw5/re53IlBK8uZ0EhVyodCq/1uXTTIzfrExZ0oq4H7gfQSmv54IMqcfNFv7/0ilkCSg1CgoKon1ZEv017ar9/cbEvGEFeuQ9mF8IdaBamFuBB7I7tKq3r+EXjnK0tPTxUoIzqqyCBooRIGM2NjX8d1HQIuKFys0cYY2eeJ3riYwinorHUndvmr3nt7Pj1eVNEa5LZALKIVrBTAnopVRx3HzOE44dDwsG3IRHPBxrtTnkv8p5yjLzvoLy72oaC+mvOvz+V79pZbRyYvJbwC80AFQ1GtPevAqFPxCuoxL57ql8ND2vDx7MVW2JTOuMQPdxDvSInmF/yU1ZT+Nd92eGcp97+RH4BE1XHHLDAtomPWmK8mpiYn/AvFOCmRGmLTm53WOOKpDhM/YqApQsLe+dYPnym1f9xvTVGQc8C4iE5Y1Ulj7eRQoTC7Ih1qFJiTQc7vwN9ZUbk6Z+ydp6L0Z2+Ws/uGrAyI8I2gF6yR0vDI6Uq9fDbsZACO3NQuGa3kr3XC7H+ClvJeP1/6IrbBqbNno0b4+xbMlmARngcRbAAAAABJRU5ErkJggg==",turquoiseBlue:"data:image/png;base64,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/MUi8H5G35QHBm+BvjV3bu1znD4AWZpV+gY4OARGS5S97vHu3u65/XunPb8fN2tyj8UDOK0AAA0aaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA0LjQuMC1FeGl2MiI+CiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICB4bWxuczpHSU1QPSJodHRwOi8vd3d3LmdpbXAub3JnL3htcC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgeG1wTU06RG9jdW1lbnRJRD0iZ2ltcDpkb2NpZDpnaW1wOjEwNGNlNWFhLTE1YzctNGI4Yi1iOGU1LTFmYWQyNWFiYzBhZCIKICAgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpkNDMyZTY1Zi0xOThhLTQxM2EtYWYyMy1jNzhlNzczNGRlN2QiCiAgIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoyNzExODVkMi03MWZiLTRhZDMtYTJmMi1iNjM3OWU3MDc1OTEiCiAgIGRjOkZvcm1hdD0iaW1hZ2UvcG5nIgogICBHSU1QOkFQST0iMi4wIgogICBHSU1QOlBsYXRmb3JtPSJMaW51eCIKICAgR0lNUDpUaW1lU3RhbXA9IjE2ODQ5NDE4NjYyMzgzMjQiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4zMCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1NGFiYzNkYS1lZWJiLTRlZjctYjdjNS04ZDRjODY5OGVjODMiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTGludXgpIgogICAgICBzdEV2dDp3aGVuPSIyMDIzLTA1LTI0VDE3OjI0OjI2KzAyOjAwIi8+CiAgICA8L3JkZjpTZXE+CiAgIDwveG1wTU06SGlzdG9yeT4KICA8L3JkZjpEZXNjcmlwdGlvbj4KIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pj0tlUwAAAAJcEhZcwAADdcAAA3XAUIom3gAAAAHdElNRQfnBRgPGBru/VeEAAAABmJLR0QA/wD/AP+gvaeTAAAFO0lEQVRYw9WYe2xTVRzHTx97dYS5B1UHa+/tY12dDoOKWyIGlfgHkCkSNTHGwHxA3NiAP/A5x4CMKEzdYL29YyAyBxKQZbI+NvYIaowaH9Ogi2GRbGjcFrbBNrq2a2/9nq5LCFnbbfSOeZJPTs/t6Tm/7/39zu+cU0IiXc7WSImNX0BsZiVYAhigmah5tHklsZrjSYtJSuZtaeSiiJU3gHUwfC9oARfBIHBP1DzaPH1eRuzmp0E6aTgSNX9EWMwSvOkMGPgG+CpguG8a0H7nA78zkMYqye0V0lYXDSHrYUw7cE5TxM04/b+38+vJ+RPRt0eIjVeAAhhyCQizFDKJEBjndaCY49Di4+CRlzFxfwSE3Ciol9i4DSBujoRUy7HIszFxdwSF3CioBy8qm1g5ufhirHwyJqwHrrDGWTlg8hFL1URN2+EF0XFPkyYuSWwhUVgnT2CygXBG3dFcM7bz1/au1u7OK9/93eWidUlHe1dCc810EsUAsXOPQZCI3rGZ6Wb4EXAEM0SCUFnZduz6T/09l4bHXYOCz+f0+XxeWg+7XYM/4vnKtlqHJHSIOrAHlYMFYmawRNCKycaDGZLVfMRdf/nPDpfXM+abotDnpy93dtzXfNgdZg+im2uimJ6h66UTeIMZsrat1jvkdPRRb/imLt4hl6N3DfqFEIPvOMzDJYspJsWfbUKEyFNttcKoyzkKo4UgYoRRt3OE9guT1br984nsmQ7gCWbIipaj4xeu9v/hFQTPlG7B89+u9v9O+4UQQ8f/BSlaVM8kgBOhji4p9mpvwQ+Wfwddjp6bQw2u8g44HT3535/tTUa/0Eccvg4sFDE1m2PBZkx2LVRqVcLQvG/PDDX1/tVxze38x+UZH6O1He28b764qgwtxOcf327eBGLFE9NikiD3qzDZhVBJgCJH3KubDnkfbD4s5Jw74qM1bcvDnxq8/vHt1SrS9InIJ2m7OQ4UYsKhCB9lJqHj0gPsHJzPvsS9w8rRRPDptI40M8PlH9fOJ5M5K008rsZmIwi5gc4QN9Zja8zn+5epch9PTFepU1iGuVunVqeyS9g0iv8zy96l0WiSjIsXx28iJEJhaONkMGB5YP14bkmI1SzIz1T0pRa9VKnNzCjUMcwWUAS2BtgWYLJN+xTo1OyrOhW7xsAwqnSGkd3i+uGjkT5Xw6DLt3AdEKQNB4YXbdtwQpuVuRtG7pwhxWA7vJgRib0nDuSDvtkIkjYcHE3aVWjRLL9/zyyETPK2Vq3OidAaOhiPDLcbxo3MRIik0eReWPnO15pHHiqbpYhS6hkNw7wAz0To6GM5hAzH3wkDa6b7x4bEwnkUfMnP6idX7Nex7GxElIDNerV6hU6jSdbp9RHck2w0w/FaGGoJm7KtnCfmWNlF1fOrK3Q6bekMRFABO7QM8yxewFLUi+5JSxPpAmcxy0gjt1Rytir4NcHKCfJTH/al5j1j1hr0pWEML55YD+x2GP6cVqNZZjQYEvUsG4vP4v8jKju5L1p6qnytxGKa6qogyOorBpVbXvxMe69xdxABb9I0DAGvIIRWp7NsBsJIoWVZKfaXuf+jMKp2b6z8+Adb4aErNwpCCh5J2pnfoH0ga08g7invBfaQjXjjuQifhyEgLdNolJP5UqR17y+QnSwvk1i565OZK6F8RzubvWwvDH8LvKZnmHXY8HKws+sNLJtI5muJ/7hYElOzJ1V+fN9R7CVDClPJOVXuqo06vS4HQjTwgDKDZRXk/1JiD7wrieFLk6T1lczCXUVK7aPZinS9XrTw+Q+Tql7SUmvGuQAAAABJRU5ErkJggg==",defaultOffset:[-25.5,-32]};class xy{constructor(){this.dataProjection=void 0,this.defaultFeatureProjection=void 0,this.featureClass=Ht,this.supportedMediaTypes=null}getReadOptions(e,t){if(t){let n=t.dataProjection?Re(t.dataProjection):this.readProjection(e);t.extent&&n&&n.getUnits()==="tile-pixels"&&(n=Re(n),n.setWorldExtent(t.extent)),t={dataProjection:n,featureProjection:t.featureProjection}}return this.adaptOptions(t)}adaptOptions(e){return Object.assign({dataProjection:this.dataProjection,featureProjection:this.defaultFeatureProjection,featureClass:this.featureClass},e)}getType(){return We()}readFeature(e,t){return We()}readFeatures(e,t){return We()}readGeometry(e,t){return We()}readProjection(e){return We()}writeFeature(e,t){return We()}writeFeatures(e,t){return We()}writeGeometry(e,t){return We()}}function br(i,e,t){const n=t?Re(t.featureProjection):null,r=t?Re(t.dataProjection):null;let s=i;if(n&&r&&!$r(n,r)){e&&(s=i.clone());const o=e?n:r,a=e?r:n;o.getUnits()==="tile-pixels"?s.transform(o,a):s.applyTransform(Da(o,a))}if(e&&t&&t.decimals!==void 0){const o=Math.pow(10,t.decimals),a=function(l){for(let c=0,u=l.length;chb({...i,geometry:o})).flat();const n=t.type==="MultiPolygon"?"Polygon":t.type;if(n==="GeometryCollection"||n==="Circle")throw new Error("Unsupported geometry type: "+n);const r=t.layout.length;return br(new qi(n,n==="Polygon"?xF(t.flatCoordinates,t.ends,r):t.flatCoordinates,(s=t.ends)==null?void 0:s.flat(),r,i.properties||{},i.id).enableSimplifyTransformed(),!1,e)}function Py(i,e){if(!i)return null;if(Array.isArray(i)){const n=i.map(r=>Py(r,e));return new Gs(n)}const t=SF[i.type];return br(new t(i.flatCoordinates,i.layout,i.ends),!1,e)}const ng="http://www.w3.org/2001/XMLSchema-instance";function $a(i,e){return Uc().createElementNS(i,e)}function Vr(i,e){return db(i,e,[]).join("")}function db(i,e,t){if(i.nodeType==Node.CDATA_SECTION_NODE||i.nodeType==Node.TEXT_NODE)e?t.push(String(i.nodeValue).replace(/(\r\n|\r|\n)/g,"")):t.push(i.nodeValue);else{let n;for(n=i.firstChild;n;n=n.nextSibling)db(n,e,t)}return t}function xs(i){return"documentElement"in i}function Ps(i){return new DOMParser().parseFromString(i,"application/xml")}function VC(i,e){return function(t,n){const r=i.call(e!==void 0?e:this,t,n);if(r!==void 0){const s=n[n.length-1];bt(s,r)}}}function un(i,e){return function(t,n){const r=i.call(e!==void 0?e:this,t,n);r!==void 0&&n[n.length-1].push(r)}}function My(i,e){return function(t,n){const r=i.call(e!==void 0?e:this,t,n);r!==void 0&&(n[n.length-1]=r)}}function Yt(i,e,t){return function(n,r){const s=i.call(t!==void 0?t:this,n,r);if(s!==void 0){const o=r[r.length-1],a=e!==void 0?e:n.localName;let l;a in o?l=o[a]:(l=[],o[a]=l),l.push(s)}}}function L(i,e,t){return function(n,r){const s=i.call(t!==void 0?t:this,n,r);if(s!==void 0){const o=r[r.length-1],a=e!==void 0?e:n.localName;o[a]=s}}}function ce(i,e){return function(t,n,r){i.call(e!==void 0?e:this,t,n,r),r[r.length-1].node.appendChild(t)}}function fb(i,e){let t,n;return function(r,s,o){if(t===void 0){t={};const a={};a[r.localName]=i,t[r.namespaceURI]=a,n=Wr(r.localName)}gb(t,n,s,o)}}function Wr(i,e){return function(t,n,r){const o=n[n.length-1].node;let a=i;a===void 0&&(a=r);const l=e!==void 0?e:o.namespaceURI;return $a(l,a)}}const mn=Wr();function Hn(i,e){const t=e.length,n=new Array(t);for(let r=0;r0?n[0]:null}readFeatureFromNode(e,t){return null}readFeatures(e,t){if(!e)return[];if(typeof e=="string"){const n=Ps(e);return this.readFeaturesFromDocument(n,t)}return xs(e)?this.readFeaturesFromDocument(e,t):this.readFeaturesFromNode(e,t)}readFeaturesFromDocument(e,t){const n=[];for(let r=e.firstChild;r;r=r.nextSibling)r.nodeType==Node.ELEMENT_NODE&&bt(n,this.readFeaturesFromNode(r,t));return n}readFeaturesFromNode(e,t){return We()}readGeometry(e,t){if(!e)return null;if(typeof e=="string"){const n=Ps(e);return this.readGeometryFromDocument(n,t)}return xs(e)?this.readGeometryFromDocument(e,t):this.readGeometryFromNode(e,t)}readGeometryFromDocument(e,t){return null}readGeometryFromNode(e,t){return null}readProjection(e){if(!e)return null;if(typeof e=="string"){const t=Ps(e);return this.readProjectionFromDocument(t)}return xs(e)?this.readProjectionFromDocument(e):this.readProjectionFromNode(e)}readProjectionFromDocument(e){return this.dataProjection}readProjectionFromNode(e){return this.dataProjection}writeFeature(e,t){const n=this.writeFeatureNode(e,t);return this.xmlSerializer_.serializeToString(n)}writeFeatureNode(e,t){return null}writeFeatures(e,t){const n=this.writeFeaturesNode(e,t);return this.xmlSerializer_.serializeToString(n)}writeFeaturesNode(e,t){return null}writeGeometry(e,t){const n=this.writeGeometryNode(e,t);return this.xmlSerializer_.serializeToString(n)}writeGeometryNode(e,t){return null}}function zo(i){const e=Vr(i,!1);return Pa(e)}function Pa(i){const e=/^\s*(true|1)|(false|0)\s*$/.exec(i);if(e)return e[1]!==void 0||!1}function Ry(i){const e=Vr(i,!1),t=Date.parse(e);return isNaN(t)?void 0:t/1e3}function lt(i){const e=Vr(i,!1);return ws(e)}function ws(i){const e=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)\s*$/i.exec(i);if(e)return parseFloat(e[1])}function xn(i){const e=Vr(i,!1);return rg(e)}function rg(i){const e=/^\s*(\d+)\s*$/.exec(i);if(e)return parseInt(e[1],10)}function ae(i){return Vr(i,!1).trim()}function _c(i,e){Dt(i,e?"1":"0")}function MF(i,e){i.appendChild(Uc().createCDATASection(e))}function RF(i,e){const t=new Date(e*1e3),n=t.getUTCFullYear()+"-"+Jc(t.getUTCMonth()+1,2)+"-"+Jc(t.getUTCDate(),2)+"T"+Jc(t.getUTCHours(),2)+":"+Jc(t.getUTCMinutes(),2)+":"+Jc(t.getUTCSeconds(),2)+"Z";i.appendChild(Uc().createTextNode(n))}function Nn(i,e){const t=e.toPrecision();i.appendChild(Uc().createTextNode(t))}function sg(i,e){const t=e.toString();i.appendChild(Uc().createTextNode(t))}function Dt(i,e){i.appendChild(Uc().createTextNode(e))}const Xs=["http://www.google.com/kml/ext/2.2"],xe=[null,"http://earth.google.com/kml/2.0","http://earth.google.com/kml/2.1","http://earth.google.com/kml/2.2","http://www.opengis.net/kml/2.2"],TF="http://www.opengis.net/kml/2.2 https://developers.google.com/kml/schema/kml22gx.xsd",WC={fraction:"fraction",pixels:"pixels",insetPixels:"pixels"},LF=J(xe,{ExtendedData:Rb,Region:Tb,MultiGeometry:L(xb,"geometry"),LineString:L(bb,"geometry"),LinearRing:L(Sb,"geometry"),Point:L(Pb,"geometry"),Polygon:L(Mb,"geometry"),Style:L(Gy),StyleMap:pN,address:L(ae),description:L(ae),name:L(ae),open:L(zo),phoneNumber:L(ae),styleUrl:L(_b),visibility:L(zo)},J(Xs,{MultiTrack:L(iN,"geometry"),Track:L(wb,"geometry")})),GF=J(xe,{ExtendedData:Rb,Region:Tb,Link:xN,address:L(ae),description:L(ae),name:L(ae),open:L(zo),phoneNumber:L(ae),visibility:L(zo)}),OF=J(xe,{href:L(Ab)}),DF=J(xe,{Altitude:L(lt),Longitude:L(lt),Latitude:L(lt),Tilt:L(lt),AltitudeMode:L(ae),Heading:L(lt),Roll:L(lt)}),mb=J(xe,{LatLonAltBox:_N,Lod:IN}),kF=J(xe,["Document","Placemark"]),FF=J(xe,{Document:ce(DN),Placemark:ce(Ob)});let Xl,Kd=null,xm,Ou,Du,ku,og,Pm=null,Ty,Mm=null,Rm,Ia=null,YC=null,Tm=null;function ag(i){return 32/Math.min(i[0],i[1])}function NF(){Xl=[255,255,255,1],Kd=new $e({color:Xl}),xm=[20,2],Ou="pixels",Du="pixels",ku=[64,64],og="https://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png",Pm=new Qt({anchor:xm,anchorOrigin:"bottom-left",anchorXUnits:Ou,anchorYUnits:Du,crossOrigin:"anonymous",rotation:0,scale:ag(ku),size:ku,src:og}),Ty="NO_IMAGE",Mm=new je({color:Xl,width:1}),Rm=new je({color:[51,51,51,1],width:2}),Ia=new Nr({font:"bold 16px Helvetica",fill:Kd,stroke:Rm,scale:.8}),YC=new Ee({fill:Kd,image:Pm,text:Ia,stroke:Mm,zIndex:0}),Tm=[YC]}let wd;function UF(i){return i}let BF=class extends pb{constructor(e){super(),e=e||{},Tm||NF(),this.dataProjection=Re("EPSG:4326"),this.defaultStyle_=e.defaultStyle?e.defaultStyle:Tm,this.extractStyles_=e.extractStyles!==void 0?e.extractStyles:!0,this.writeStyles_=e.writeStyles!==void 0?e.writeStyles:!0,this.sharedStyles_={},this.showPointNames_=e.showPointNames!==void 0?e.showPointNames:!0,this.crossOrigin_=e.crossOrigin!==void 0?e.crossOrigin:"anonymous",this.iconUrlFunction_=e.iconUrlFunction?e.iconUrlFunction:UF,this.supportedMediaTypes=["application/vnd.google-earth.kml+xml"]}readDocumentOrFolder_(e,t){const n=J(xe,{Document:VC(this.readDocumentOrFolder_,this),Folder:VC(this.readDocumentOrFolder_,this),Placemark:un(this.readPlacemark_,this),Style:this.readSharedStyle_.bind(this),StyleMap:this.readSharedStyleMap_.bind(this)}),r=ve([],n,e,t,this);if(r)return r}readPlacemark_(e,t){const n=ve({geometry:null},LF,e,t,this);if(!n)return;const r=new Ht,s=e.getAttribute("id");s!==null&&r.setId(s);const o=t[0],a=n.geometry;if(a&&br(a,!1,o),r.setGeometry(a),delete n.geometry,this.extractStyles_){const l=n.Style,c=n.styleUrl,u=zF(l,c,this.defaultStyle_,this.sharedStyles_,this.showPointNames_);r.setStyle(u)}return delete n.Style,r.setProperties(n,!0),r}readSharedStyle_(e,t){const n=e.getAttribute("id");if(n!==null){const r=Gy.call(this,e,t);if(r){let s,o=e.baseURI;(!o||o=="about:blank")&&(o=window.location.href),o?s=new URL("#"+n,o).href:s="#"+n,this.sharedStyles_[s]=r}}}readSharedStyleMap_(e,t){const n=e.getAttribute("id");if(n===null)return;const r=Ib.call(this,e,t);if(!r)return;let s,o=e.baseURI;(!o||o=="about:blank")&&(o=window.location.href),o?s=new URL("#"+n,o).href:s="#"+n,this.sharedStyles_[s]=r}readFeatureFromNode(e,t){if(!xe.includes(e.namespaceURI))return null;const n=this.readPlacemark_(e,[this.getReadOptions(e,t)]);return n||null}readFeaturesFromNode(e,t){if(!xe.includes(e.namespaceURI))return[];let n;const r=e.localName;if(r=="Document"||r=="Folder")return n=this.readDocumentOrFolder_(e,[this.getReadOptions(e,t)]),n||[];if(r=="Placemark"){const s=this.readPlacemark_(e,[this.getReadOptions(e,t)]);return s?[s]:[]}if(r=="kml"){n=[];for(let s=e.firstElementChild;s;s=s.nextElementSibling){const o=this.readFeaturesFromNode(s,t);o&&bt(n,o)}return n}return[]}readName(e){if(e){if(typeof e=="string"){const t=Ps(e);return this.readNameFromDocument(t)}return xs(e)?this.readNameFromDocument(e):this.readNameFromNode(e)}}readNameFromDocument(e){for(let t=e.firstChild;t;t=t.nextSibling)if(t.nodeType==Node.ELEMENT_NODE){const n=this.readNameFromNode(t);if(n)return n}}readNameFromNode(e){for(let t=e.firstElementChild;t;t=t.nextElementSibling)if(xe.includes(t.namespaceURI)&&t.localName=="name")return ae(t);for(let t=e.firstElementChild;t;t=t.nextElementSibling){const n=t.localName;if(xe.includes(t.namespaceURI)&&(n=="Document"||n=="Folder"||n=="Placemark"||n=="kml")){const r=this.readNameFromNode(t);if(r)return r}}}readNetworkLinks(e){const t=[];if(typeof e=="string"){const n=Ps(e);bt(t,this.readNetworkLinksFromDocument(n))}else xs(e)?bt(t,this.readNetworkLinksFromDocument(e)):bt(t,this.readNetworkLinksFromNode(e));return t}readNetworkLinksFromDocument(e){const t=[];for(let n=e.firstChild;n;n=n.nextSibling)n.nodeType==Node.ELEMENT_NODE&&bt(t,this.readNetworkLinksFromNode(n));return t}readNetworkLinksFromNode(e){const t=[];for(let n=e.firstElementChild;n;n=n.nextElementSibling)if(xe.includes(n.namespaceURI)&&n.localName=="NetworkLink"){const r=ve({},GF,n,[]);t.push(r)}for(let n=e.firstElementChild;n;n=n.nextElementSibling){const r=n.localName;xe.includes(n.namespaceURI)&&(r=="Document"||r=="Folder"||r=="kml")&&bt(t,this.readNetworkLinksFromNode(n))}return t}readRegion(e){const t=[];if(typeof e=="string"){const n=Ps(e);bt(t,this.readRegionFromDocument(n))}else xs(e)?bt(t,this.readRegionFromDocument(e)):bt(t,this.readRegionFromNode(e));return t}readRegionFromDocument(e){const t=[];for(let n=e.firstChild;n;n=n.nextSibling)n.nodeType==Node.ELEMENT_NODE&&bt(t,this.readRegionFromNode(n));return t}readRegionFromNode(e){const t=[];for(let n=e.firstElementChild;n;n=n.nextElementSibling)if(xe.includes(n.namespaceURI)&&n.localName=="Region"){const r=ve({},mb,n,[]);t.push(r)}for(let n=e.firstElementChild;n;n=n.nextElementSibling){const r=n.localName;xe.includes(n.namespaceURI)&&(r=="Document"||r=="Folder"||r=="kml")&&bt(t,this.readRegionFromNode(n))}return t}readCamera(e){const t=[];if(typeof e=="string"){const n=Ps(e);bt(t,this.readCameraFromDocument(n))}else xs(e)?bt(t,this.readCameraFromDocument(e)):bt(t,this.readCameraFromNode(e));return t}readCameraFromDocument(e){const t=[];for(let n=e.firstChild;n;n=n.nextSibling)n.nodeType===Node.ELEMENT_NODE&&bt(t,this.readCameraFromNode(n));return t}readCameraFromNode(e){const t=[];for(let n=e.firstElementChild;n;n=n.nextElementSibling)if(xe.includes(n.namespaceURI)&&n.localName==="Camera"){const r=ve({},DF,n,[]);t.push(r)}for(let n=e.firstElementChild;n;n=n.nextElementSibling){const r=n.localName;xe.includes(n.namespaceURI)&&(r==="Document"||r==="Folder"||r==="Placemark"||r==="kml")&&bt(t,this.readCameraFromNode(n))}return t}writeFeaturesNode(e,t){t=this.adaptOptions(t);const n=$a(xe[4],"kml"),r="http://www.w3.org/2000/xmlns/";n.setAttributeNS(r,"xmlns:gx",Xs[0]),n.setAttributeNS(r,"xmlns:xsi",ng),n.setAttributeNS(ng,"xsi:schemaLocation",TF);const s={node:n},o={};e.length>1?o.Document=e:e.length==1&&(o.Placemark=e[0]);const a=kF[n.namespaceURI],l=Hn(o,a);return Vt(s,FF,mn,l,[t],a,this),n}};function jF(i,e){const t=[0,0];let n="start";const r=i.getImage();if(r){const a=r.getSize();if(a&&a.length==2){const l=r.getScaleArray(),c=r.getAnchor();t[0]=l[0]*(a[0]-c[0]),t[1]=l[1]*(a[1]/2-c[1]),n="left"}}let s=i.getText();return s?(s=s.clone(),s.setFont(s.getFont()||Ia.getFont()),s.setScale(s.getScale()||Ia.getScale()),s.setFill(s.getFill()||Ia.getFill()),s.setStroke(s.getStroke()||Rm)):s=Ia.clone(),s.setText(e),s.setOffsetX(t[0]),s.setOffsetY(t[1]),s.setTextAlign(n),new Ee({image:r,text:s})}function zF(i,e,t,n,r){return function(s,o){let a=r,l="",c=[];if(a){const h=s.getGeometry();if(h)if(h instanceof Gs)c=h.getGeometriesArrayRecursive().filter(function(d){const f=d.getType();return f==="Point"||f==="MultiPoint"}),a=c.length>0;else{const d=h.getType();a=d==="Point"||d==="MultiPoint"}}a&&(l=s.get("name"),a=a&&!!l,a&&/&[^&]+;/.test(l)&&(wd||(wd=document.createElement("textarea")),wd.innerHTML=l,l=wd.value));let u=t;if(i?u=i:e&&(u=vb(e,t,n)),a){const h=jF(u[0],l);if(c.length>0){h.setGeometry(new Gs(c));const d=new Ee({geometry:u[0].getGeometry(),image:null,fill:u[0].getFill(),stroke:u[0].getStroke(),text:null});return[h,d].concat(u.slice(1))}return h}return u}}function vb(i,e,t){return Array.isArray(i)?i:typeof i=="string"?vb(t[i],e,t):e}function l0(i){const e=Vr(i,!1),t=/^\s*#?\s*([0-9A-Fa-f]{8})\s*$/.exec(e);if(t){const n=t[1];return[parseInt(n.substr(6,2),16),parseInt(n.substr(4,2),16),parseInt(n.substr(2,2),16),parseInt(n.substr(0,2),16)/255]}}function yb(i){let e=Vr(i,!1);const t=[];e=e.replace(/\s*,\s*/g,",");const n=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?),([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)(?:\s+|,|$)(?:([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)(?:\s+|$))?\s*/i;let r;for(;r=n.exec(e);){const s=parseFloat(r[1]),o=parseFloat(r[2]),a=r[3]?parseFloat(r[3]):0;t.push(s,o,a),e=e.substr(r[0].length)}if(e==="")return t}function Ab(i){const e=Vr(i,!1).trim();let t=i.baseURI;return(!t||t=="about:blank")&&(t=window.location.href),t?new URL(e,t).href:e}function _b(i){const e=Vr(i,!1).trim().replace(/^(?!.*#)/,"#");let t=i.baseURI;return(!t||t=="about:blank")&&(t=window.location.href),t?new URL(e,t).href:e}function VF(i){const e=i.getAttribute("xunits"),t=i.getAttribute("yunits");let n;return e!=="insetPixels"?t!=="insetPixels"?n="bottom-left":n="top-left":t!=="insetPixels"?n="bottom-right":n="top-right",{x:parseFloat(i.getAttribute("x")),xunits:WC[e],y:parseFloat(i.getAttribute("y")),yunits:WC[t],origin:n}}function Cb(i){return lt(i)}const WF=J(xe,{Pair:gN});function Ib(i,e){return ve(void 0,WF,i,e,this)}const YF=J(xe,{Icon:L(sN),color:L(l0),heading:L(lt),hotSpot:L(VF),scale:L(Cb)});function HF(i,e){const t=ve({},YF,i,e);if(!t)return;const n=e[e.length-1],r="Icon"in t?t.Icon:{},s=!("Icon"in t)||Object.keys(r).length>0;let o;const a=r.href;a?o=a:s&&(o=og);let l,c,u,h="bottom-left";const d=t.hotSpot;d?(l=[d.x,d.y],c=d.xunits,u=d.yunits,h=d.origin):/^https?:\/\/maps\.(?:google|gstatic)\.com\//.test(o)&&(o.includes("pushpin")?(l=xm,c=Ou,u=Du):o.includes("arrow-reverse")?(l=[54,42],c=Ou,u=Du):o.includes("paddle")&&(l=[32,1],c=Ou,u=Du));let f;const g=r.x,p=r.y;g!==void 0&&p!==void 0&&(f=[g,p]);let m;const v=r.w,y=r.h;v!==void 0&&y!==void 0&&(m=[v,y]);let A;const _=t.heading;_!==void 0&&(A=xo(_));const C=t.scale,I=t.color;if(s){o==og&&(m=ku);const b=new Qt({anchor:l,anchorOrigin:h,anchorXUnits:c,anchorYUnits:u,crossOrigin:this.crossOrigin_,offset:f,offsetOrigin:"bottom-left",rotation:A,scale:C,size:m,src:this.iconUrlFunction_(o),color:I}),S=b.getScaleArray()[0],R=b.getSize();if(R===null){const P=b.getImageState();if(P===Ye.IDLE||P===Ye.LOADING){const w=function(){const x=b.getImageState();if(!(x===Ye.IDLE||x===Ye.LOADING)){const D=b.getSize();if(D&&D.length==2){const k=ag(D);b.setScale(S*k)}b.unlistenImageChange(w)}};b.listenImageChange(w),P===Ye.IDLE&&b.load()}}else if(R.length==2){const P=ag(R);b.setScale(S*P)}n.imageStyle=b}else n.imageStyle=Ty}const qF=J(xe,{color:L(l0),scale:L(Cb)});function XF(i,e){const t=ve({},qF,i,e);if(!t)return;const n=e[e.length-1],r=new Nr({fill:new $e({color:"color"in t?t.color:Xl}),scale:t.scale});n.textStyle=r}const ZF=J(xe,{color:L(l0),width:L(lt)});function KF(i,e){const t=ve({},ZF,i,e);if(!t)return;const n=e[e.length-1],r=new je({color:"color"in t?t.color:Xl,width:"width"in t?t.width:1});n.strokeStyle=r}const JF=J(xe,{color:L(l0),fill:L(zo),outline:L(zo)});function QF(i,e){const t=ve({},JF,i,e);if(!t)return;const n=e[e.length-1],r=new $e({color:"color"in t?t.color:Xl});n.fillStyle=r;const s=t.fill;s!==void 0&&(n.fill=s);const o=t.outline;o!==void 0&&(n.outline=o)}const $F=J(xe,{coordinates:My(yb)});function Eb(i,e){return ve(null,$F,i,e)}function eN(i,e){const n=e[e.length-1].coordinates,r=Vr(i,!1),o=/^\s*([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s*$/i.exec(r);if(o){const a=parseFloat(o[1]),l=parseFloat(o[2]),c=parseFloat(o[3]);n.push([a,l,c])}else n.push([])}const tN=J(Xs,{Track:un(wb)});function iN(i,e){const t=ve([],tN,i,e);if(t)return new hr(t)}const nN=J(xe,{when:PN},J(Xs,{coord:eN}));function wb(i,e){const t=ve({coordinates:[],whens:[]},nN,i,e);if(!t)return;const n=[],r=t.coordinates,s=t.whens;for(let o=0,a=Math.min(r.length,s.length);o0&&e[e.length-1].push(...t)}const bN=J(xe,{LinearRing:My(Eb)});function SN(i,e){const t=ve(void 0,bN,i,e);if(t){const n=e[e.length-1];n[0]=t}}function xN(i,e){Xo(OF,i,e)}function PN(i,e){const n=e[e.length-1].whens,r=Vr(i,!1),s=Date.parse(r);n.push(isNaN(s)?0:s)}function u0(i,e){const t=oh(e),r=[(t.length==4?t[3]:1)*255,t[2],t[1],t[0]];for(let s=0;s<4;++s){const o=Math.floor(r[s]).toString(16);r[s]=o.length==1?"0"+o:o}Dt(i,r.join(""))}function MN(i,e,t){const n=t[t.length-1],r=n.layout,s=n.stride;let o;if(r=="XY"||r=="XYM")o=2;else if(r=="XYZ"||r=="XYZM")o=3;else throw new Error("Invalid geometry layout");const a=e.length;let l="";if(a>0){l+=e[0];for(let c=1;c0){const f=Hn(r,o);Vt(n,lp,n4,[{names:o,values:f}],t)}const h=t[0];let d=e.getGeometry();d&&(d=br(d,!0,h)),Vt(n,lp,Lb,[d],t)}const r4=J(xe,["extrude","tessellate","altitudeMode","coordinates"]),s4=J(xe,{extrude:ce(_c),tessellate:ce(_c),altitudeMode:ce(Dt),coordinates:ce(MN)});function Zl(i,e,t){const n=e.getFlatCoordinates(),r={node:i};r.layout=e.getLayout(),r.stride=e.getStride();const s=e.getProperties();s.coordinates=n;const o=t[t.length-1].node,a=r4[o.namespaceURI],l=Hn(s,a);Vt(r,s4,mn,l,t,a)}const o4=J(xe,["color","fill","outline"]),ZC=J(xe,{outerBoundaryIs:ce(XC),innerBoundaryIs:ce(XC)}),a4=Wr("innerBoundaryIs"),l4=Wr("outerBoundaryIs");function Db(i,e,t){const n=e.getLinearRings(),r=n.shift(),s={node:i};Vt(s,ZC,a4,n,t),Vt(s,ZC,l4,[r],t)}const c4=J(xe,{color:ce(u0),fill:ce(_c),outline:ce(_c)});function u4(i,e,t){const n={node:i},r=e.getFill(),s=e.getStroke(),o={color:r?r.getColor():void 0,fill:r?void 0:!1,outline:s?void 0:!1},a=t[t.length-1].node,l=o4[a.namespaceURI],c=Hn(o,l);Vt(n,c4,mn,c,t,l)}function kb(i,e){Nn(i,Math.round(e*1e6)/1e6)}const h4=J(xe,["IconStyle","LabelStyle","LineStyle","PolyStyle"]),d4=J(xe,{IconStyle:ce(zN),LabelStyle:ce(YN),LineStyle:ce(XN),PolyStyle:ce(u4)});function f4(i,e,t){const n={node:i},r={};if(e.pointStyles.length){const l=e.pointStyles[0].getText();l&&(r.LabelStyle=l);const c=e.pointStyles[0].getImage();c&&typeof c.getSrc=="function"&&(r.IconStyle=c)}if(e.lineStyles.length){const l=e.lineStyles[0].getStroke();l&&(r.LineStyle=l)}if(e.polyStyles.length){const l=e.polyStyles[0].getStroke();l&&!r.LineStyle&&(r.LineStyle=l),r.PolyStyle=e.polyStyles[0]}const s=t[t.length-1].node,o=h4[s.namespaceURI],a=Hn(r,o);Vt(n,d4,mn,a,t,o)}function g4(i,e){i.setAttribute("x",String(e.x)),i.setAttribute("y",String(e.y)),i.setAttribute("xunits",e.xunits),i.setAttribute("yunits",e.yunits)}const p4=BF;var Le={hex:function(i){if(i>255)throw new Error("'"+i+"'' is greater than 255(0xff);");var e=Number(i).toString(16);return("0"+e).slice(-2)},num:function(i){return parseInt(i,16)},arrayToRgba:function(i){if(!Array.isArray(i))throw new Error("Not an array !");var e=i[0],t=i[1],n=i[2],r=i[3]||1,s="rgba("+e+", "+t+", "+n+", "+parseFloat(r)+")";return s},arrayToHex:function(i){if(!Array.isArray(i))throw new Error("Not an array !");var e=i[0],t=i[1],n=i[2],r=i[3],s=[this.hex(e),this.hex(t),this.hex(n)],o={};return o.hex="#"+s.join(""),r&&(o.opacity=parseFloat(r)),o},rgbaToHex:function(i){var e=/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(0?.?\d+)\s*)?\)/,t=e.exec(i);if(!t)throw new Error("Invalid format: "+i);var n=t[1],r=t[2],s=t[3],o=t[4],a=[this.hex(n),this.hex(r),this.hex(s)],l={};return l.hex="#"+a.join(""),o&&(l.opacity=parseFloat(o)),l},hexToRgba:function(i,e){var t=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;if(!i)throw new Error("Invalid format");i=i.replace(t,function(s,o,a,l){return o+o+a+a+l+l});var n=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(i);n=n?{r:parseInt(n[1],16),g:parseInt(n[2],16),b:parseInt(n[3],16)}:null;var r=n?"rgba("+n.r+", "+n.g+", "+n.b+", "+e+")":null;return r},isHex:function(i){if(!i||i.charAt(0)!=="#")return!1;var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,t=e.exec(i);return!!t},isRGB:function(i){if(!i)return!1;var e=/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(0?.?\d+)\s*)?\)/,t=e.exec(i);return!!t}},m4=ot.getLogger("styling");Ht.prototype.setPropertyFill=function(){var i=this.getStyle();if(i&&!(Array.isArray(i)&&i.length===0)){var e=i.getFill();if(e){var t=e.getColor();if(Array.isArray(t)){var n="rgba(";n+=t[0]+",",n+=t[1]+",",n+=t[2]+",",n+=t[3]+")",t=n}if(Le.isRGB(t)){var r=Le.rgbaToHex(t);this.set("fill",r.hex),this.set("fill-opacity",r.opacity)}else this.set("fill",t),this.set("fill-opacity",1)}}};Ht.prototype.setPropertyStroke=function(){var i=this.getStyle();if(i&&!(Array.isArray(i)&&i.length===0)){var e=i.getStroke();if(e){var t=e.getColor();if(Array.isArray(t)){var n="rgba(";n+=t[0]+",",n+=t[1]+",",n+=t[2]+",",n+=t[3]+")",t=n}if(Le.isRGB(t)){var r=Le.rgbaToHex(t);this.set("stroke",r.hex),this.set("stroke-opacity",r.opacity)}else this.set("stroke",t),this.set("stroke-opacity",1);this.set("stroke-width",e.getWidth())}}};Ht.prototype.setPropertyLabel=function(){var i=this.getStyle();if(i&&!(Array.isArray(i)&&i.length===0)){var e=this.get("name")!==void 0,t=i.getText();if(t&&e){var n=i.getText().getFill();if(n){var r=n.getColor();if(Array.isArray(r)){var s="rgba(";s+=r[0]+",",s+=r[1]+",",s+=r[2]+",",s+=r[3]+")",r=s}if(Le.isRGB(r)){var o=Le.rgbaToHex(r);this.set("label-fill",o.hex),this.set("label-fill-opacity",o.opacity)}else this.set("label-fill",r),this.set("label-fill-opacity",1)}var a=i.getText().getStroke();if(a){var l=a.getColor();if(Array.isArray(l)){var c="rgba(";c+=l[0]+",",c+=l[1]+",",c+=l[2]+",",c+=l[3]+")",l=c}if(Le.isRGB(l)){var u=Le.rgbaToHex(l);this.set("label-stroke",u.hex),this.set("label-stroke-opacity",u.opacity)}else this.set("label-stroke",l),this.set("label-stroke-opacity",1);this.set("label-stroke-width",a.getWidth())}this.set("label-font",i.getText().getFont()||or.DEFAULT_TEXT.font),this.set("label-textAlign",i.getText().getTextAlign()||or.DEFAULT_TEXT.textAlign)}}};Ht.prototype.setPropertyMarker=function(){var i=this.getStyle();if(i&&!(Array.isArray(i)&&i.length===0)){var e=i.getImage();if(e)if(e instanceof Qt){var t=e.getColor();if(Array.isArray(t)){var n="rgba(";n+=t[0]+",",n+=t[1]+",",n+=t[2]+",",n+=t[3]+")",t=n}if(t){var r=Le.rgbaToHex(t);this.set("marker-color",r.hex)}var s=e.getScale();switch(Math.round(s*2)/2){case 0:case .5:this.set("marker-size","small");break;case 1:this.set("marker-size","medium");break;case 1.5:case 2:this.set("marker-size","large");break}var o=e.getSrc();o&&this.set("marker-symbol",o),this.unset("circle-fill"),this.unset("circle-fill-opacity"),this.unset("circle-stroke"),this.unset("circle-stroke-width"),this.unset("circle-stroke-opacity"),this.unset("circle-radius")}else{var a=e.getFill();if(a){var l=a.getColor();if(Array.isArray(l)){var c="rgba(";c+=l[0]+",",c+=l[1]+",",c+=l[2]+",",c+=l[3]+")",l=c}if(Le.isRGB(l)){var u=Le.rgbaToHex(l);this.set("circle-fill",u.hex),this.set("circle-fill-opacity",u.opacity)}else this.set("circle-fill",l),this.set("circle-fill-opacity",1)}var h=e.getStroke();if(h){var d=h.getColor();if(Array.isArray(d)){var f="rgba(";f+=d[0]+",",f+=d[1]+",",f+=d[2]+",",f+=d[3]+")",d=f}if(Le.isRGB(d)){var g=Le.rgbaToHex(d);this.set("circle-stroke",g.hex),this.set("circle-stroke-opacity",g.opacity)}else this.set("circle-stroke",d),this.set("circle-stroke-opacity",1);this.set("circle-stroke-width",h.getWidth())}var p=e.getRadius();this.set("circle-radius",p)}}};var or={APPLY_CONVERT_GEOM_GPX:!0,DEFAULT_ICON:{src:jt.lightOrange,anchor:[.5,1],scale:1},DEFAULT_CIRCLE:{radius:10,fill:{opacity:1,color:[0,0,0,1]},stroke:{width:1,opacity:1,color:[0,0,0,1]}},DEFAULT_STROKE:{width:5,opacity:1,color:[250,250,250,1]},DEFAULT_FILL:{opacity:1,color:[0,0,0,1]},DEFAULT_TEXT:{font:"16px sans",textAlign:"left",stroke:{color:[250,250,250,1],width:5,opactity:1},fill:{opacity:1,color:[0,0,0,1]}},getListTags:function(){return["type","fill","fill-opacity","stroke","stroke-opacity","stroke-width","circle-fill","circle-fill-opacity","circle-stroke","circle-stroke-opacity","circle-stroke-width","circle-radius","marker-symbol","marker-color","marker-size","label-fill","label-fill-opacity","label-stroke","label-stroke-width","label-stroke-opacity","label-font","label-textAlign"]},defineStyleFromProperties:function(i){var e=null,t={},n=null;if(i.get("marker-color")||i.get("marker-size")||i.get("marker-symbol")){n={},n.src=this.DEFAULT_ICON.src,n.anchor=this.DEFAULT_ICON.anchor;var r=i.get("marker-symbol");r&&r.search("data:image/png;base64")!==-1&&(n.src=r);var s=i.get("marker-color");Le.isHex(s)&&(n.color=Le.hexToRgba(s,1));var o=i.get("marker-size");if(o)switch(o){case"small":n.scale=.5;break;case"medium":n.scale=1;break;case"large":n.scale=1.5;break;default:n.scale=this.DEFAULT_ICON.scale;break}}var a=null;(i.get("stroke")||i.get("stroke-opacity")||i.get("stroke-width"))&&(a={},a.color=Le.hexToRgba(i.get("stroke"),+i.get("stroke-opacity")||this.DEFAULT_STROKE.opacity),a.width=+i.get("stroke-width")||this.DEFAULT_STROKE.width);var l=null;(i.get("fill")||i.get("fill-opacity"))&&(l={},l.color=Le.hexToRgba(i.get("fill"),+i.get("fill-opacity")||this.DEFAULT_FILL.opacity));var c=null,u=null,h=i.get("name")!=="";h&&((i.get("label-fill")||i.get("label-fill-opacity"))&&(u={},u.color=Le.hexToRgba(i.get("label-fill"),+i.get("label-fill-opacity")||this.DEFAULT_TEXT.fill.opacity)),(i.get("label-stroke")||i.get("label-stroke-opacity")||i.get("label-stroke-width"))&&(c={},c.color=Le.hexToRgba(i.get("label-stroke"),+i.get("label-stroke-opacity")||this.DEFAULT_TEXT.stroke.opacity),c.width=+i.get("label-stroke-width")||this.DEFAULT_TEXT.stroke.width));var d=i.get("circle-radius")||this.DEFAULT_CIRCLE.radius,f=null;(i.get("circle-stroke")||i.get("circle-stroke-opacity")||i.get("circle-stroke-width"))&&(f={},f.color=Le.hexToRgba(i.get("circle-stroke"),+i.get("circle-stroke-opacity")||this.DEFAULT_CIRCLE.stroke.opacity),f.width=+i.get("circle-stroke-width")||this.DEFAULT_CIRCLE.stroke.width);var g=null;(i.get("circle-fill")||i.get("circle-fill-opacity"))&&(g={},g.color=Le.hexToRgba(i.get("circle-fill"),+i.get("circle-fill-opacity")||this.DEFAULT_CIRCLE.fill.opacity));var p=i.getGeometry().getType();switch(p){case"Circle":case"Point":case"MultiPoint":var m=!1,v={};if(f&&(v.stroke=new je(f)),g&&(v.fill=new $e(g)),Object.keys(v).length!==0&&(m=!0,v.radius=+d,t.image=new Ei(v)),n&&(t.image=new Qt(n)),h){var y={};if(c&&(y.stroke=new je(c)),u&&(y.fill=new $e(u)),Object.keys(y).length!==0)y.text=i.get("name"),y.textAlign=i.get("label-textAlign")||this.DEFAULT_TEXT.textAlign,y.font=i.get("label-font")||this.DEFAULT_TEXT.font,t.text=new Nr(Object.assign({},this.DEFAULT_TEXT,y));else if(n||m){var A=new Nr(Object.assign({},this.DEFAULT_TEXT,{fill:new $e(this.DEFAULT_TEXT.fill),stroke:new je(this.DEFAULT_TEXT.stroke)}));if(A){var _=A.clone();_.setText(i.get("name")),t.text=_}}}break;case"Polygon":case"MultiPolygon":a&&(t.stroke=new je(a)),l&&(t.fill=new $e(l));break;case"LineString":case"MultiLineString":if(a&&(t.stroke=new je(a)),this.APPLY_CONVERT_GEOM_GPX&&l){var C=i.get("type");if(C&&(C==="Polygon"||C==="MultiPolygon")){t.fill=new $e(l);var I=i.clone(),b=p==="LineString"?wi:jr;i.setGeometry(new b([I.getGeometry().getCoordinates()]))}}break}return Object.keys(t).length!==0&&(e=new Ee(t)),e},defineStyleFunctionByDefault:function(i){if(!i)return[];if(Object.keys(i).length===0)return[];var e=(t,n)=>{var r=null,s=t.getGeometry().getType();switch(s){case"Point":case"MultiPoint":var o={};if(i.getImage()&&(o.image=i.getImage()),i.getText()&&t.get("name")){var a=i.getText().clone();a.setText(t.get("name")),o.text=a}r=new Ee(o);break;case"Circle":var l={},c={};if(i.getFill()&&(c.fill=i.getFill()),i.getStroke()&&(c.stroke=i.getStroke()),i.getText()&&t.get("name")){var u=i.getText().clone();u.setText(t.get("name")),l.text=u}Object.keys(c).length!==0&&(c.radius=3,l.image=new Ei(c)),r=new Ee(l);break;case"Polygon":case"MultiPolygon":var h={};i.getFill()&&(h.fill=i.getFill()),i.getStroke()&&(h.stroke=i.getStroke()),r=new Ee(h);break;case"LineString":case"LinearRing":case"MultiLineString":var d={};i.getStroke()&&(d.stroke=i.getStroke()),r=new Ee(d);break}return[r]};return e},definePropertiesFromStyleByType:function(i){var e=i.getGeometry().getType();switch(e){case"Point":case"MultiPoint":i.setPropertyMarker(),i.setPropertyLabel();break;case"LineString":case"MultiLineString":i.setPropertyStroke();break;case"Polygon":case"MultiPolygon":i.setPropertyStroke(),i.setPropertyFill();break}},definePropertiesFromStyle:function(i){var e=i.getStyle()||i.getStyleFunction();if(e){if(typeof e=="function"){var t=e.call(this,i,0);if(t&&t.length!==0)e=Array.isArray(t)?t[0]:t,i.setStyle(e);else return}this.definePropertiesFromStyleByType(i)}},defineTagFromStyle:function(i,e){return m4.trace("todo..."),null}},bd=ot.getLogger("parser"),Ea={parse:function(i){var e=null,t=null,n=typeof window<"u"?window:null;if(typeof kA=="object"&&window===null){var r=require("xmldom").DOMParser;t=new r,e=t.parseFromString(i,"text/xml")}else n.DOMParser?(t=new n.DOMParser,e=t.parseFromString(i,"text/xml")):n.ActiveXObject?(e=new n.ActiveXObject("Microsoft.XMLDOM"),e.async=!1,e.loadXML(i)):bd.log("Incompatible environment for DOM Parser !");var s=e.querySelector("parsererror");return s?(console.error(s),null):(bd.trace(e),e)},toString:function(i){var e=new XMLSerializer,t=e.serializeToString(i);return bd.trace(t),t},format:function(i){var e=/(>)\s*(<)(\/*)/g,t=/ *(.*) +\n/g,n=/(<.+>)(.+\n)/g;i=i.replace(e,`$1 +$2$3`).replace(t,`$1 +`).replace(n,`$1 +$2`);for(var r="",s=i.split(` +`),o=0,a="other",l={"single->single":0,"single->closing":-1,"single->opening":0,"single->other":0,"closing->single":0,"closing->closing":-1,"closing->opening":0,"closing->other":0,"opening->single":1,"opening->closing":0,"opening->opening":1,"opening->other":1,"other->single":0,"other->closing":-1,"other->opening":0,"other->other":0},c=0;c/),d=!!u.match(/<\/.+>/),f=!!u.match(/<[^!].*>/),g=h?"single":d?"closing":f?"opening":"other",p=a+"->"+g;a=g;var m="";o+=l[p];for(var v=0;vclosing"?r=r.substr(0,r.length-1)+u+` +`:r+=m+u+` +`}return bd.trace(r),r}},Ln=ot.getLogger("extended KML format"),_h=class Fb extends p4{constructor(e){if(super(e),!(this instanceof Fb))throw new TypeError("ERROR CLASS_CONSTRUCTOR");return e=e||{},this.source=null,this.extensions=e.extensions||null,e.defaultStyle&&!Array.isArray(e.defaultStyle)&&(e.defaultStyle=[e.defaultStyle]),(e.defaultStyle===null||typeof e.defaultStyle>"u")&&(e.defaultStyle=[]),this}_processKml(e,t,n){for(var r=e.nodeName==="#document"?e.childNodes[0].childNodes:e.childNodes,s=r,o=0;o{y.remove()})}};this._processKml(e,t,{labelStyle:s,iconStyle:o,iconLabelStyle:c,circleStyle:a,pointStyle:l,nameData:u,extendedData:h});var d=Ea.toString(e);return d||null}_writeRootExtensions(e,t){var n=document.createElementNS(e.namespaceURI,"ExtendedData");for(const a in t)if(Object.hasOwnProperty.call(t,a)){const l=t[a];var r=document.createElementNS(e.namespaceURI,"Data");r.setAttribute("name",a);var s=document.createTextNode(JSON.stringify(l));r.appendChild(s),n.appendChild(r)}var o=e.firstChild;e.insertBefore(n,o)}readFeatures(e,t){Ln.log("overload : ol.format.KML.readFeatures"),typeof e=="string"?this.source=Ea.parse(e):e!==null&&(this.source=e);var n=this._readExtendStylesFeatures(e,t);return Ln.trace("Styles étendus",n),n.forEach(r=>{or.definePropertiesFromStyle(r)}),n}_readExtendStylesFeatures(e,t){var n=super.readFeatures(e,t),r=null,s="";if(typeof e=="string"?s=e:s=e.documentElement.outerHTML,s=s.replace(/\n/g,""),s=s.replace(/(>)\s*(<)/g,"$1$2"),r=Ea.parse(s),r===null)return n;function o(d){var f="";f=f+d.substr(6,2),f=f+d.substr(4,2),f=f+d.substr(2,2);for(var g=parseInt(f,16).toString(16),p="",m=g.length||0,v=0;v<6-m;v++)p+="0";return g="#"+p+g,g}var a=function(d,f){if(Ln.trace("label with style :",f),!!d){for(var g=d.getProperties().name,p=o("ff000000"),m="#FFFFFF",v=0,y="Sans",A="16px",_=null,C=5,I="#000000",b="#ffffff",S=1,R=!1,P=!1,w=f.childNodes,x=0;x"u")&&(this.options.defaultStyle={}),this.source=null,this}readFeatures(e,t){var n=super.readFeatures(e,t);typeof e=="string"?this.source=Ea.parse(e):e!==null&&(this.source=e);var r=this;return n.forEach(function(s,o,a){s.setId(o+1);var l=s.getProperties().desc;l&&s.setProperties({description:l});var c=s.getStyleFunction();if(!c){var u=or.defineStyleFunctionByDefault(r.options.defaultStyle);u&&s.setStyle(u)}}),n}writeFeatures(e,t){if(e.forEach(function(l,c,u){var h=l.getProperties().description;h&&l.setProperties({desc:h}),or.definePropertiesFromStyle(l);var d=l.getGeometry().getType();if(d==="Polygon"){var f=l.clone();f.set("type",d),f.setGeometry(new Ji(l.getGeometry().getCoordinates())),e.push(f),u.splice(c,1)}else if(d==="MultiPolygon"){var g=l.clone();g.set("type",d),g.setGeometry(new hr(l.getGeometry().getCoordinates())),e.push(g),u.splice(c,1)}}),this.options.orderBy!==void 0){var n=this.options.orderBy;if(n){var r=function(l,c){var u=l.get(n)||0,h=c.get(n)||0;return u.toString().localeCompare(h.toString(),void 0,{numeric:!0})};e.sort(r)}}var s=super.writeFeaturesNode(e,t);if(s===null)return null;this.options.hasOwnProperty("extensions")&&this.writeRootExtensions_(s,this.options.extensions),this.processExtensions_(s,e,{extensions:this.writeExtensions_});var o=Ea.toString(s);if(!o)return null;var a=Ea.format(o);return a===""?null:a}readExtensions(e,t){var n=t;if(!t){var r=e.getProperties();for(const l in r)if(Object.hasOwnProperty.call(r,l)){const c=r[l];if(c instanceof Node){n=c;break}}}if(!n){console.warn("node not found !");return}for(var s=0;s{if(e.get(r)){var s=document.createElementNS(t.parentNode.namespaceURI,r);s.innerHTML=e.get(r),n.appendChild(s)}}),t.appendChild(n)}processExtensions_(e,t,n){for(var r=-1,s=e.childNodes,o=0;o"u")&&(this.options.defaultStyle={}),this.source=null,this}readFeatures(e,t){var n=super.readFeatures(e,t);return typeof e=="string"?this.source=JSON.parse(e):e!==null&&(this.source=e),n.forEach(r=>{var s=r.getStyleFunction();if(s){var o=s.call(this,r,0);o&&o.length!==0&&r.setStyle(o[0])}else{var a=or.defineStyleFromProperties(r);if(a)r.setStyle(a);else{var l=or.defineStyleFunctionByDefault(this.options.defaultStyle);l&&(r.setStyle(l),or.definePropertiesFromStyle(r))}}}),n}writeFeatures(e,t){e.forEach(function(r){or.definePropertiesFromStyle(r)});var n=this.writeFeaturesObject(e,t);return this.options.hasOwnProperty("extensions")&&Object.assign(n,this.options.extensions),JSON.stringify(n)}readRootExtensions(e){return this.source[e]}};window.ol&&window.ol.format&&(window.ol.format.GeoJSONExtended=Dr);var Vb=class extends my{constructor(e){super(e)}getFeatureInfoUrl(e,t,n,r){var s=this.options&&this.options.tilePixelRatio?this.options.tilePixelRatio:1,o=this.tileGrid,a=this.tileGrid.getTileCoordForCoordAndResolution(e,t),l=function(A,_,C){var I=[0,0,0],b=Yn(),S=A[1],R=A[2],P=_.getTileCoordExtent(A),w=C.getExtent();if(w!=null&&C.isGlobal()){var x=Math.ceil(Rt(w)/Rt(P));S=S%x,I[0]=A[0],I[1]=S,I[2]=A[2],P=_.getTileCoordExtent(I,b)}return Jt(P,w)?[A[0],S,R]:null},c=o.getTileCoordExtent(a),u=l(a,o,n);if(!(o.getResolutions().length<=a[0])){var h=o.getResolution(a[0]),d=o.getMatrixIds()[a[0]],f={SERVICE:"WMTS",VERSION:"1.0.0",REQUEST:"GetFeatureInfo",LAYER:this.getLayer(),TILECOL:u[1],TILEROW:u[2],TILEMATRIX:d,TILEMATRIXSET:this.getMatrixSet(),FORMAT:this.getFormat()||"image/png",STYLE:this.getStyle()||"normal"};He.assign(f,r);var g=Math.floor((e[0]-c[0])/(h/s)),p=Math.floor((c[3]-e[1])/(h/s)),m=o.getTileSize(a[0]);g=Math.min(g,(m[0]|m)-1),p=Math.max(p,0),f.I=g,f.J=p;var v=this.urls[0],y=yt.Helper.normalyzeUrl(v,f);return y}}};window.ol&&window.ol.source&&(window.ol.source.WMTSExtended=Vb);var Wb={getZoomLevelFromScaleDenominator:function(i,e){var t={};switch(e){case"EPSG:2154":t={0:104579.224549894,1:52277.5323537905,2:26135.4870785954,3:13066.8913818,4:6533.2286041135,5:3266.5595244627,6:1633.2660045974,7:816.629554986,8:408.3139146768,9:204.1567415109,10:102.0783167832,11:51.0391448966,12:25.5195690743,13:12.7597836936,14:6.379891636,15:3.1899457653,16:1.5949728695,17:.7974864315,18:.3987432149,19:.1993716073,20:.0996858037,21:.0498429018};break;default:t={0:156543.033928041,1:78271.51696402048,2:39135.758482010235,3:19567.87924100512,4:9783.93962050256,5:4891.96981025128,6:2445.98490512564,7:1222.99245256282,8:611.49622628141,9:305.7481131407048,10:152.8740565703525,11:76.43702828517624,12:38.21851414258813,13:19.10925707129406,14:9.554628535647032,15:4.777314267823516,16:2.388657133911758,17:1.194328566955879,18:.5971642834779395,19:.2985821417389697,20:.1492910708694849,21:.0746455354347424};break}var n=i*28e-5;for(var r in t)if(t.hasOwnProperty(r)&&t[r]<=n)return r=parseInt(r,10),r;return 0},getAttributions:function(i){var e=i.zoom,t=[];if(i.originators!=null&&i.visibility)for(var n,r=0,s=i.originators.length;re&&(n=!1),n&&d&&d"u"&&(e.ssl=!0),!Bi.isConfigLoaded())throw new Error("ERROR : contract key configuration has to be loaded to load Geoportal layers.");var t=Bi.configuration.getLayerId(e.layer,"WMTS");if(!t)throw new Error(`ERROR : WMTS Layer ID ${e.layer} cannot be found in Geoportal Configuration. Make sure that this resource is included in your contract key.`);if(!Bi.configuration.getLayerConf(t))throw new Error("ERROR : WMTS Layer configuration cannot be found in Geoportal....");var n=Bi.configuration.getLayerParams(e.layer,"WMTS"),r=e.ssl===!1?"http://":"https://",s={"gp-ol-ext":Df.olExtVersion||Df.version};n.url.includes("/private/")&&(s.apikey=e.apiKey||Bi.configuration.getLayerKey(t)[0]);var o={url:yt.Helper.normalyzeUrl(n.url.replace(/(http|https):\/\//,r),s,!1),version:n.version,style:n.styles,format:n.format,projection:n.projection,maxZoom:Wb.getZoomLevelFromScaleDenominator(n.minScale),layer:e.layer,matrixSet:n.TMSLink,tileGrid:new H1({resolutions:n.nativeResolutions,matrixIds:n.matrixIds,origin:[n.tileMatrices[0].topLeftCorner.x,n.tileMatrices[0].topLeftCorner.y]})};return He.mergeParams(o,e.olParams),e.olParams&&!n.originators&&(n.originators=e.olParams.attributions),super(o),this._originators=n.originators,this._legends=e.legends||n.legends,this._metadata=e.metadata||n.metadata,this._description=e.description||n.description,this._title=e.title||n.title,this._quicklookUrl=e.quicklookUrl||n.quicklookUrl,this}};window.ol&&window.ol.source&&(window.ol.source.GeoportalWMTS=Yb);ot.getLogger("sourcewms");var Hb=class extends py{constructor(e){if(!e.layer)throw new Error("ERROR PARAM_MISSING : layer");if(typeof e.layer!="string")throw new Error("ERROR WRONG TYPE : layer");if(typeof e.ssl>"u"&&(e.ssl=!0),!Bi.isConfigLoaded())throw new Error("ERROR : contract key configuration has to be loaded to load Geoportal layers.");var t=Bi.configuration.getLayerId(e.layer,"WMS");if(!t)throw new Error(`ERROR : WMS Layer ID ${e.layer} cannot be found in Geoportal Configuration. Make sure that this resource is included in your contract key.`);if(!Bi.configuration.getLayerConf(t))throw new Error("ERROR : WMS Layer configuration cannot be found in Geoportal....");var n=Bi.configuration.getLayerParams(e.layer,"WMS"),r=e.ssl===!1?"http://":"https://",s={"gp-ol-ext":Df.olExtVersion||Df.version};n.url.includes("/private/")&&(s.apikey=e.apiKey||Bi.configuration.getLayerKey(t)[0]);var o={url:yt.Helper.normalyzeUrl(n.url.replace(/(http|https):\/\//,r),s,!1),params:{SERVICE:"WMS",LAYERS:e.layer,VERSION:n.version,STYLES:n.styles,FORMAT:n.format}};return He.mergeParams(o,e.olParams),e.olParams&&!n.originators&&(n.originators=e.olParams.attributions),super(o),this._originators=n.originators,this._legends=e.legends||n.legends,this._metadata=e.metadata||n.metadata,this._title=e.title||n.title,this._description=e.description||n.description,this._quicklookUrl=e.quicklookUrl||n.quicklookUrl,this}};window.ol&&window.ol.source&&(window.ol.source.GeoportalWMS=Hb);var f8=class extends Fa{constructor(e){if(!e.layer)throw new Error("ERROR PARAM_MISSING : layer");if(typeof e.layer!="string")throw new Error("ERROR WRONG TYPE : layer");if(typeof e.ssl>"u"&&(e.ssl=!0),!Bi.isConfigLoaded())throw new Error("ERROR : contract key configuration has to be loaded to load Geoportal layers.");var t;e.olParams&&e.olParams.sourceParams&&(t=e.olParams.sourceParams);var n=new Yb({layer:e.layer,ssl:e.ssl,apiKey:e.apiKey,olParams:t}),r={source:n};if(n.getLayer()!==void 0){var s=Bi.configuration.getLayerId(e.layer,"WMTS"),o=Bi.configuration.getGlobalConstraints(s);if(o&&o.projection){var a;typeof o.projection=="string"&&(a=Re(o.projection)),a&&a.getUnits()&&(a.getUnits()==="m"?(r.minResolution=(o.minScale-1)*28e-5,r.maxResolution=(o.maxScale+1)*28e-5):a.getUnits()==="degrees"&&(r.minResolution=(o.minScale-1)*28e-5*180/(Math.PI*6378137),r.maxResolution=(o.maxScale+1)*28e-5*180/(Math.PI*6378137)))}}return He.mergeParams(r,e.olParams),super(r),this}};window.ol&&window.ol.layer&&(window.ol.layer.GeoportalWMTS=f8);var g8=class extends Fa{constructor(e){if(!e.layer)throw new Error("ERROR PARAM_MISSING : layer");if(typeof e.layer!="string")throw new Error("ERROR WRONG TYPE : layer");if(typeof e.ssl>"u"&&(e.ssl=!0),!Bi.isConfigLoaded())throw new Error("ERROR : contract key configuration has to be loaded to load Geoportal layers.");var t;e.olParams&&e.olParams.sourceParams&&(t=e.olParams.sourceParams);var n=new Hb({layer:e.layer,ssl:e.ssl,apiKey:e.apiKey,olParams:t}),r={source:n};if(n.getParams().LAYERS!==void 0){var s=Bi.configuration.getLayerId(e.layer,"WMS"),o=Bi.configuration.getGlobalConstraints(s);if(t&&t.projection){var a=[o.extent.left,o.extent.bottom,o.extent.right,o.extent.top];r.extent=Ss(a,"EPSG:4326",t.projection);var l;typeof t.projection=="string"?l=Re(t.projection):typeof t.projection=="object"&&t.projection.getCode()&&(l=Re(t.projection.getCode())),l&&l.getUnits()&&(l.getUnits()==="m"?(r.minResolution=(o.minScale-1)*28e-5,r.maxResolution=(o.maxScale+1)*28e-5):l.getUnits()==="degrees"&&(r.minResolution=(o.minScale-1)*28e-5*180/(Math.PI*6378137),r.maxResolution=(o.maxScale+1)*28e-5*180/(Math.PI*6378137)))}}return He.mergeParams(r,e.olParams),super(r),this}};window.ol&&window.ol.layer&&(window.ol.layer.GeoportalWMS=g8);const p8={image:["Polygon","Circle","LineString","Image","Text"],hybrid:["Polygon","LineString"],vector:[]},m8={hybrid:["Image","Text","Default"],vector:["Polygon","Circle","LineString","Image","Text","Default"]};class v8 extends mw{constructor(e){super(e),this.boundHandleStyleImageChange_=this.handleStyleImageChange_.bind(this),this.renderedLayerRevision_,this.renderedPixelToCoordinateTransform_=null,this.renderedRotation_,this.tmpTransform_=Ir()}prepareTile(e,t,n){let r;const s=e.getState();return(s===ge.LOADED||s===ge.ERROR)&&(this.updateExecutorGroup_(e,t,n),this.tileImageNeedsRender_(e)&&(r=!0)),r}getTile(e,t,n,r){const s=r.pixelRatio,o=r.viewState,a=o.resolution,l=o.projection,c=this.getLayer(),u=c.getSource().getTile(e,t,n,s,l),h=r.viewHints,d=!(h[ai.ANIMATING]||h[ai.INTERACTING]);return(d||!u.wantedResolution)&&(u.wantedResolution=a),this.prepareTile(u,s,l)&&(d||Date.now()-r.time<8)&&c.getRenderMode()!=="vector"&&this.renderTileImage_(u,r),super.getTile(e,t,n,r)}isDrawableTile(e){const t=this.getLayer();return super.isDrawableTile(e)&&(t.getRenderMode()==="vector"?ke(t)in e.executorGroups:e.hasContext(t))}getTileImage(e){return e.getImage(this.getLayer())}prepareFrame(e){const t=this.getLayer().getRevision();return this.renderedLayerRevision_!==t&&(this.renderedLayerRevision_=t,this.renderedTiles.length=0),super.prepareFrame(e)}updateExecutorGroup_(e,t,n){const r=this.getLayer(),s=r.getRevision(),o=r.getRenderOrder()||null,a=e.wantedResolution,l=e.getReplayState(r);if(!l.dirty&&l.renderedResolution===a&&l.renderedRevision==s&&l.renderedRenderOrder==o)return;const c=r.getSource(),u=r.getDeclutter(),h=c.getTileGrid(),f=c.getTileGridForProjection(n).getTileCoordExtent(e.wrappedTileCoord),g=c.getSourceTiles(t,n,e),p=ke(r);delete e.hitDetectionImageData[p],e.executorGroups[p]=[],u&&(e.declutterExecutorGroups[p]=[]),l.dirty=!1;for(let m=0,v=g.length;m{const S=b===I?t.declutterTree.all().map(R=>R.value):null;for(let R=0,P=b.length;R{const r=this.getLayer(),s=ke(r),o=r.getSource(),a=this.renderedProjection,l=a.getExtent(),c=this.renderedResolution,u=o.getTileGridForProjection(a),h=Gi(this.renderedPixelToCoordinateTransform_,e.slice()),d=u.getTileCoordForCoordAndResolution(h,c);let f;for(let A=0,_=this.renderedTiles.length;A<_;++A)if(d.toString()===this.renderedTiles[A].tileCoord.toString()){if(f=this.renderedTiles[A],f.getState()===ge.LOADED){const C=u.getTileCoordExtent(f.tileCoord);o.getWrapX()&&a.canWrapX()&&!Gr(l,C)&&Dv(h,a);break}f=void 0}if(!f||f.loadingSourceTiles>0){t([]);return}const g=u.getTileCoordExtent(f.wrappedTileCoord),p=ms(g),m=[(h[0]-p[0])/c,(p[1]-h[1])/c],v=f.getSourceTiles().reduce(function(A,_){return A.concat(_.getFeatures())},[]);let y=f.hitDetectionImageData[s];if(!y){const A=Sn(u.getTileSize(u.getZForResolution(c,o.zDirection))),_=this.renderedRotation_,C=[this.getRenderTransform(u.getTileCoordCenter(f.wrappedTileCoord),c,0,sr,A[0]*sr,A[1]*sr,0)];y=Qw(A,C,v,r.getStyleFunction(),u.getTileCoordExtent(f.wrappedTileCoord),f.getReplayState(r).renderedResolution,_),f.hitDetectionImageData[s]=y}t($w(m,v,y))})}handleFontsChanged(){const e=this.getLayer();e.getVisible()&&this.renderedLayerRevision_!==void 0&&e.changed()}handleStyleImageChange_(e){this.renderIfReadyAndVisible()}renderDeclutter(e){const t=this.context,n=t.globalAlpha;t.globalAlpha=this.getLayer().getOpacity();const r=e.viewHints,s=!(r[ai.ANIMATING]||r[ai.INTERACTING]),o=this.renderedTiles;for(let a=0,l=o.length;a=0;--h)u[h].execute(this.context,1,this.getTileRenderTransform(c,e),e.viewState.rotation,s,void 0,e.declutterTree)}t.globalAlpha=n}getTileRenderTransform(e,t){const n=t.pixelRatio,r=t.viewState,s=r.center,o=r.resolution,a=r.rotation,l=t.size,c=Math.round(l[0]*n),u=Math.round(l[1]*n),d=this.getLayer().getSource().getTileGridForProjection(t.viewState.projection),f=e.tileCoord,g=d.getTileCoordExtent(e.wrappedTileCoord),p=d.getTileCoordExtent(f,this.tmpExtent)[0]-g[0];return Zv(B0(this.inversePixelTransform.slice(),1/n,1/n),this.getRenderTransform(s,o,a,n,c,u,p))}postRender(e,t){const n=t.viewHints,r=!(n[ai.ANIMATING]||n[ai.INTERACTING]);this.renderedPixelToCoordinateTransform_=t.pixelToCoordinateTransform.slice(),this.renderedRotation_=t.viewState.rotation;const s=this.getLayer(),o=s.getRenderMode(),a=e.globalAlpha;e.globalAlpha=s.getOpacity();const l=m8[o],c=t.viewState,u=c.rotation,h=s.getSource(),f=h.getTileGridForProjection(c.projection).getZForResolution(c.resolution,h.zDirection),g=this.renderedTiles,p=[],m=[];let v=!0;for(let y=g.length-1;y>=0;--y){const A=g[y];v=v&&!A.getReplayState(s).dirty;const _=A.executorGroups[ke(s)].filter(R=>R.hasExecutors(l));if(_.length===0)continue;const C=this.getTileRenderTransform(A,t),I=A.tileCoord[0];let b=!1;const S=_[0].getClipCoords(C);if(S){for(let R=0,P=p.length;R=200&&t.status<300){let n;try{n=JSON.parse(t.responseText)}catch{this.handleTileJSONError();return}this.handleTileJSONResponse(n)}else this.handleTileJSONError()}onXHRError_(e){this.handleTileJSONError()}getTileJSON(){return this.tileJSON_}handleTileJSONResponse(e){const t=Re("EPSG:4326"),n=this.getProjection();let r;if(e.bounds!==void 0){const c=Zg(t,n);r=Lv(e.bounds,c)}const s=Uh(n),o=e.minzoom||0,a=e.maxzoom||22,l=Jg({extent:s,maxZoom:a,minZoom:o,tileSize:this.tileSize_});if(this.tileGrid=l,this.tileUrlFunction=Z1(e.tiles,l),e.attribution&&!this.getAttributions()){const c=r!==void 0?r:s;this.setAttributions(function(u){return Jt(c,u.extent)?[e.attribution]:null})}this.tileJSON_=e,this.setState("ready")}handleTileJSONError(){this.setState("error")}}var zy={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */zy.read=function(i,e,t,n,r){var s,o,a=r*8-n-1,l=(1<>1,u=-7,h=t?r-1:0,d=t?-1:1,f=i[e+h];for(h+=d,s=f&(1<<-u)-1,f>>=-u,u+=a;u>0;s=s*256+i[e+h],h+=d,u-=8);for(o=s&(1<<-u)-1,s>>=-u,u+=n;u>0;o=o*256+i[e+h],h+=d,u-=8);if(s===0)s=1-c;else{if(s===l)return o?NaN:(f?-1:1)*(1/0);o=o+Math.pow(2,n),s=s-c}return(f?-1:1)*o*Math.pow(2,s-n)};zy.write=function(i,e,t,n,r,s){var o,a,l,c=s*8-r-1,u=(1<>1,d=r===23?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:s-1,g=n?1:-1,p=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),o+h>=1?e+=d/l:e+=d*Math.pow(2,1-h),e*l>=2&&(o++,l/=2),o+h>=u?(a=0,o=u):o+h>=1?(a=(e*l-1)*Math.pow(2,r),o=o+h):(a=e*Math.pow(2,h-1)*Math.pow(2,r),o=0));r>=8;i[t+f]=a&255,f+=g,a/=256,r-=8);for(o=o<0;i[t+f]=o&255,f+=g,o/=256,c-=8);i[t+f-g]|=p*128};var A8=Pt,xd=zy;function Pt(i){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(i)?i:new Uint8Array(i||0),this.pos=0,this.type=0,this.length=this.buf.length}Pt.Varint=0;Pt.Fixed64=1;Pt.Bytes=2;Pt.Fixed32=5;var Om=65536*65536,KC=1/Om,_8=12,qb=typeof TextDecoder>"u"?null:new TextDecoder("utf8");Pt.prototype={destroy:function(){this.buf=null},readFields:function(i,e,t){for(t=t||this.length;this.pos>3,s=this.pos;this.type=n&7,i(r,e,this),this.pos===s&&this.skip(n)}return e},readMessage:function(i,e){return this.readFields(i,e,this.readVarint()+this.pos)},readFixed32:function(){var i=Pd(this.buf,this.pos);return this.pos+=4,i},readSFixed32:function(){var i=QC(this.buf,this.pos);return this.pos+=4,i},readFixed64:function(){var i=Pd(this.buf,this.pos)+Pd(this.buf,this.pos+4)*Om;return this.pos+=8,i},readSFixed64:function(){var i=Pd(this.buf,this.pos)+QC(this.buf,this.pos+4)*Om;return this.pos+=8,i},readFloat:function(){var i=xd.read(this.buf,this.pos,!0,23,4);return this.pos+=4,i},readDouble:function(){var i=xd.read(this.buf,this.pos,!0,52,8);return this.pos+=8,i},readVarint:function(i){var e=this.buf,t,n;return n=e[this.pos++],t=n&127,n<128||(n=e[this.pos++],t|=(n&127)<<7,n<128)||(n=e[this.pos++],t|=(n&127)<<14,n<128)||(n=e[this.pos++],t|=(n&127)<<21,n<128)?t:(n=e[this.pos],t|=(n&15)<<28,C8(t,i,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var i=this.readVarint();return i%2===1?(i+1)/-2:i/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var i=this.readVarint()+this.pos,e=this.pos;return this.pos=i,i-e>=_8&&qb?D8(this.buf,e,i):O8(this.buf,e,i)},readBytes:function(){var i=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,i);return this.pos=i,e},readPackedVarint:function(i,e){if(this.type!==Pt.Bytes)return i.push(this.readVarint(e));var t=Cs(this);for(i=i||[];this.pos127;);else if(e===Pt.Bytes)this.pos=this.readVarint()+this.pos;else if(e===Pt.Fixed32)this.pos+=4;else if(e===Pt.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+e)},writeTag:function(i,e){this.writeVarint(i<<3|e)},realloc:function(i){for(var e=this.length||16;e268435455||i<0){I8(i,this);return}this.realloc(4),this.buf[this.pos++]=i&127|(i>127?128:0),!(i<=127)&&(this.buf[this.pos++]=(i>>>=7)&127|(i>127?128:0),!(i<=127)&&(this.buf[this.pos++]=(i>>>=7)&127|(i>127?128:0),!(i<=127)&&(this.buf[this.pos++]=i>>>7&127)))},writeSVarint:function(i){this.writeVarint(i<0?-i*2-1:i*2)},writeBoolean:function(i){this.writeVarint(!!i)},writeString:function(i){i=String(i),this.realloc(i.length*4),this.pos++;var e=this.pos;this.pos=k8(this.buf,i,this.pos);var t=this.pos-e;t>=128&&JC(e,t,this),this.pos=e-1,this.writeVarint(t),this.pos+=t},writeFloat:function(i){this.realloc(4),xd.write(this.buf,i,this.pos,!0,23,4),this.pos+=4},writeDouble:function(i){this.realloc(8),xd.write(this.buf,i,this.pos,!0,52,8),this.pos+=8},writeBytes:function(i){var e=i.length;this.writeVarint(e),this.realloc(e);for(var t=0;t=128&&JC(t,n,this),this.pos=t-1,this.writeVarint(n),this.pos+=n},writeMessage:function(i,e,t){this.writeTag(i,Pt.Bytes),this.writeRawMessage(e,t)},writePackedVarint:function(i,e){e.length&&this.writeMessage(i,b8,e)},writePackedSVarint:function(i,e){e.length&&this.writeMessage(i,S8,e)},writePackedBoolean:function(i,e){e.length&&this.writeMessage(i,M8,e)},writePackedFloat:function(i,e){e.length&&this.writeMessage(i,x8,e)},writePackedDouble:function(i,e){e.length&&this.writeMessage(i,P8,e)},writePackedFixed32:function(i,e){e.length&&this.writeMessage(i,R8,e)},writePackedSFixed32:function(i,e){e.length&&this.writeMessage(i,T8,e)},writePackedFixed64:function(i,e){e.length&&this.writeMessage(i,L8,e)},writePackedSFixed64:function(i,e){e.length&&this.writeMessage(i,G8,e)},writeBytesField:function(i,e){this.writeTag(i,Pt.Bytes),this.writeBytes(e)},writeFixed32Field:function(i,e){this.writeTag(i,Pt.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(i,e){this.writeTag(i,Pt.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(i,e){this.writeTag(i,Pt.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(i,e){this.writeTag(i,Pt.Fixed64),this.writeSFixed64(e)},writeVarintField:function(i,e){this.writeTag(i,Pt.Varint),this.writeVarint(e)},writeSVarintField:function(i,e){this.writeTag(i,Pt.Varint),this.writeSVarint(e)},writeStringField:function(i,e){this.writeTag(i,Pt.Bytes),this.writeString(e)},writeFloatField:function(i,e){this.writeTag(i,Pt.Fixed32),this.writeFloat(e)},writeDoubleField:function(i,e){this.writeTag(i,Pt.Fixed64),this.writeDouble(e)},writeBooleanField:function(i,e){this.writeVarintField(i,!!e)}};function C8(i,e,t){var n=t.buf,r,s;if(s=n[t.pos++],r=(s&112)>>4,s<128||(s=n[t.pos++],r|=(s&127)<<3,s<128)||(s=n[t.pos++],r|=(s&127)<<10,s<128)||(s=n[t.pos++],r|=(s&127)<<17,s<128)||(s=n[t.pos++],r|=(s&127)<<24,s<128)||(s=n[t.pos++],r|=(s&1)<<31,s<128))return ul(i,r,e);throw new Error("Expected varint not more than 10 bytes")}function Cs(i){return i.type===Pt.Bytes?i.readVarint()+i.pos:i.pos+1}function ul(i,e,t){return t?e*4294967296+(i>>>0):(e>>>0)*4294967296+(i>>>0)}function I8(i,e){var t,n;if(i>=0?(t=i%4294967296|0,n=i/4294967296|0):(t=~(-i%4294967296),n=~(-i/4294967296),t^4294967295?t=t+1|0:(t=0,n=n+1|0)),i>=18446744073709552e3||i<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),E8(t,n,e),w8(n,e)}function E8(i,e,t){t.buf[t.pos++]=i&127|128,i>>>=7,t.buf[t.pos++]=i&127|128,i>>>=7,t.buf[t.pos++]=i&127|128,i>>>=7,t.buf[t.pos++]=i&127|128,i>>>=7,t.buf[t.pos]=i&127}function w8(i,e){var t=(i&7)<<4;e.buf[e.pos++]|=t|((i>>>=3)?128:0),i&&(e.buf[e.pos++]=i&127|((i>>>=7)?128:0),i&&(e.buf[e.pos++]=i&127|((i>>>=7)?128:0),i&&(e.buf[e.pos++]=i&127|((i>>>=7)?128:0),i&&(e.buf[e.pos++]=i&127|((i>>>=7)?128:0),i&&(e.buf[e.pos++]=i&127)))))}function JC(i,e,t){var n=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(Math.LN2*7));t.realloc(n);for(var r=t.pos-1;r>=i;r--)t.buf[r+n]=t.buf[r]}function b8(i,e){for(var t=0;t>>8,i[t+2]=e>>>16,i[t+3]=e>>>24}function QC(i,e){return(i[e]|i[e+1]<<8|i[e+2]<<16)+(i[e+3]<<24)}function O8(i,e,t){for(var n="",r=e;r239?4:s>223?3:s>191?2:1;if(r+a>t)break;var l,c,u;a===1?s<128&&(o=s):a===2?(l=i[r+1],(l&192)===128&&(o=(s&31)<<6|l&63,o<=127&&(o=null))):a===3?(l=i[r+1],c=i[r+2],(l&192)===128&&(c&192)===128&&(o=(s&15)<<12|(l&63)<<6|c&63,(o<=2047||o>=55296&&o<=57343)&&(o=null))):a===4&&(l=i[r+1],c=i[r+2],u=i[r+3],(l&192)===128&&(c&192)===128&&(u&192)===128&&(o=(s&15)<<18|(l&63)<<12|(c&63)<<6|u&63,(o<=65535||o>=1114112)&&(o=null))),o===null?(o=65533,a=1):o>65535&&(o-=65536,n+=String.fromCharCode(o>>>10&1023|55296),o=56320|o&1023),n+=String.fromCharCode(o),r+=a}return n}function D8(i,e,t){return qb.decode(i.subarray(e,t))}function k8(i,e,t){for(var n=0,r,s;n55295&&r<57344)if(s)if(r<56320){i[t++]=239,i[t++]=191,i[t++]=189,s=r;continue}else r=s-55296<<10|r-56320|65536,s=null;else{r>56319||n+1===e.length?(i[t++]=239,i[t++]=191,i[t++]=189):s=r;continue}else s&&(i[t++]=239,i[t++]=191,i[t++]=189,s=null);r<128?i[t++]=r:(r<2048?i[t++]=r>>6|192:(r<65536?i[t++]=r>>12|224:(i[t++]=r>>18|240,i[t++]=r>>12&63|128),i[t++]=r>>6&63|128),i[t++]=r&63|128)}return t}const F8=by(A8);class lg extends xy{constructor(e){super(),e=e||{},this.dataProjection=new Xg({code:"",units:"tile-pixels"}),this.featureClass_=e.featureClass?e.featureClass:qi,this.geometryName_=e.geometryName,this.layerName_=e.layerName?e.layerName:"layer",this.layers_=e.layers?e.layers:null,this.idProperty_=e.idProperty,this.supportedMediaTypes=["application/vnd.mapbox-vector-tile","application/x-protobuf"]}readRawGeometry_(e,t,n,r){e.pos=t.geometry;const s=e.readVarint()+e.pos;let o=1,a=0,l=0,c=0,u=0,h=0;for(;e.pos>3}if(a--,o===1||o===2)l+=e.readSVarint(),c+=e.readSVarint(),o===1&&u>h&&(r.push(u),h=u),n.push(l,c),u+=2;else if(o===7)u>h&&(n.push(n[h],n[h+1]),u+=2);else throw new Error("Invalid command found in the PBF")}u>h&&(r.push(u),h=u)}createFeature_(e,t,n){const r=t.type;if(r===0)return null;let s;const o=t.properties;let a;this.idProperty_?(a=o[this.idProperty_],delete o[this.idProperty_]):a=t.id,o[this.layerName_]=t.layer.name;const l=[],c=[];this.readRawGeometry_(e,t,l,c);const u=z8(r,c.length);if(this.featureClass_===qi)s=new this.featureClass_(u,l,c,2,o,a),s.transform(n.dataProjection);else{let h;if(u=="Polygon"){const g=cw(l,c);h=g.length>1?new jr(l,"XY",g):new wi(l,"XY",c)}else h=u==="Point"?new Ki(l,"XY"):u==="LineString"?new Ji(l,"XY"):u==="MultiPoint"?new Us(l,"XY"):u==="MultiLineString"?new hr(l,"XY",c):null;const d=this.featureClass_;s=new d,this.geometryName_&&s.setGeometryName(this.geometryName_);const f=br(h,!1,n);s.setGeometry(f),a!==void 0&&s.setId(a),s.setProperties(o,!0)}return s}getType(){return"arraybuffer"}readFeatures(e,t){const n=this.layers_;t=this.adaptOptions(t);const r=Re(t.dataProjection);r.setWorldExtent(t.extent),t.dataProjection=r;const s=new F8(e),o=s.readFields(N8,{}),a=[];for(const l in o){if(n&&!n.includes(l))continue;const c=o[l],u=c?[0,0,c.extent,c.extent]:null;r.setExtent(u);for(let h=0,d=c.length;h>3,n=i===1?t.readString():i===2?t.readFloat():i===3?t.readDouble():i===4?t.readVarint64():i===5?t.readVarint():i===6?t.readSVarint():i===7?t.readBoolean():null;e.values.push(n)}}function B8(i,e,t){if(i==1)e.id=t.readVarint();else if(i==2){const n=t.readVarint()+t.pos;for(;t.pos255?255:i}function eI(i){return i<0?0:i>1?1:i}function cp(i){return i[i.length-1]==="%"?Fu(parseFloat(i)/100*255):Fu(parseInt(i))}function Md(i){return i[i.length-1]==="%"?eI(parseFloat(i)/100):eI(parseFloat(i))}function up(i,e,t){return t<0?t+=1:t>1&&(t-=1),t*6<1?i+(e-i)*t*6:t*2<1?e:t*3<2?i+(e-i)*(2/3-t)*6:i}function W8(i){var e=i.replace(/ /g,"").toLowerCase();if(e in $C)return $C[e].slice();if(e[0]==="#"){if(e.length===4){var t=parseInt(e.substr(1),16);return t>=0&&t<=4095?[(t&3840)>>4|(t&3840)>>8,t&240|(t&240)>>4,t&15|(t&15)<<4,1]:null}else if(e.length===7){var t=parseInt(e.substr(1),16);return t>=0&&t<=16777215?[(t&16711680)>>16,(t&65280)>>8,t&255,1]:null}return null}var n=e.indexOf("("),r=e.indexOf(")");if(n!==-1&&r+1===e.length){var s=e.substr(0,n),o=e.substr(n+1,r-(n+1)).split(","),a=1;switch(s){case"rgba":if(o.length!==4)return null;a=Md(o.pop());case"rgb":return o.length!==3?null:[cp(o[0]),cp(o[1]),cp(o[2]),a];case"hsla":if(o.length!==4)return null;a=Md(o.pop());case"hsl":if(o.length!==3)return null;var l=(parseFloat(o[0])%360+360)%360/360,c=Md(o[1]),u=Md(o[2]),h=u<=.5?u*(c+1):u+c-u*c,d=u*2-h;return[Fu(up(d,h,l+1/3)*255),Fu(up(d,h,l)*255),Fu(up(d,h,l-1/3)*255),a];default:return null}}return null}try{Zb=V8.parseCSSColor=W8}catch{}class qn{constructor(e,t,n,r=1){this.r=e,this.g=t,this.b=n,this.a=r}static parse(e){if(!e)return;if(e instanceof qn)return e;if(typeof e!="string")return;const t=Zb(e);if(t)return new qn(t[0]/255*t[3],t[1]/255*t[3],t[2]/255*t[3],t[3])}toString(){const[e,t,n,r]=this.toArray();return`rgba(${Math.round(e)},${Math.round(t)},${Math.round(n)},${r})`}toArray(){const{r:e,g:t,b:n,a:r}=this;return r===0?[0,0,0,0]:[e*255/r,t*255/r,n*255/r,r]}toArray01(){const{r:e,g:t,b:n,a:r}=this;return r===0?[0,0,0,0]:[e/r,t/r,n/r,r]}toArray01PremultipliedAlpha(){const{r:e,g:t,b:n,a:r}=this;return[e,t,n,r]}}qn.black=new qn(0,0,0,1);qn.white=new qn(1,1,1,1);qn.transparent=new qn(0,0,0,0);qn.red=new qn(1,0,0,1);qn.blue=new qn(0,0,1,1);var dr=qn;function Ih(i){return typeof i=="object"?["literal",i]:i}function Y8(i,e){let t=i.stops;if(!t)return H8(i,e);const n=t&&typeof t[0][0]=="object",r=n||i.property!==void 0,s=n||!r;return t=t.map(o=>!r&&e.tokens&&typeof o[1]=="string"?[o[0],K8(o[1])]:[o[0],Ih(o[1])]),n?q8(i,e,t):s?Z8(i,e,t):Dm(i,e,t)}function H8(i,e){const t=["get",i.property];if(i.default===void 0)return e.type==="string"?["string",t]:t;if(e.type==="enum")return["match",t,Object.keys(e.values),t,i.default];{const n=[e.type==="color"?"to-color":e.type,t,Ih(i.default)];return e.type==="array"&&n.splice(1,0,e.value,e.length||null),n}}function Vy(i){switch(i.colorSpace){case"hcl":return"interpolate-hcl";case"lab":return"interpolate-lab";default:return"interpolate"}}function q8(i,e,t){const n={},r={},s=[];for(let a=0;a3&&e===i[i.length-2]||(n&&i.length===2||i.push(e),i.push(t))}function Yy(i,e){return i.type?i.type:e.expression.interpolated?"exponential":"interval"}function K8(i){const e=["concat"],t=/{([^{}]+)}/g;let n=0;for(let r=t.exec(i);r!==null;r=t.exec(i)){const s=i.slice(n,t.lastIndex-r[0].length);n=t.lastIndex,s.length>0&&e.push(s),e.push(["get",r[1]])}if(e.length===1)return i;if(n`:i.itemType.kind==="value"?"array":`array<${e}>`}else return i.kind}const e5=[h0,he,st,it,Ds,f0,Jl,Ar(nt),Wh];function Eh(i,e){if(e.kind==="error")return null;if(i.kind==="array"){if(e.kind==="array"&&(e.N===0&&e.itemType.kind==="value"||!Eh(i.itemType,e.itemType))&&(typeof i.N!="number"||i.N===e.N))return null}else{if(i.kind===e.kind)return null;if(i.kind==="value"){for(const t of e5)if(!Eh(t,e))return null}}return`Expected ${$t(i)} but found ${$t(e)} instead.`}function qy(i,e){return e.some(t=>t.kind===i.kind)}function wh(i,e){return e.some(t=>t==="null"?i===null:t==="array"?Array.isArray(i):t==="object"?i&&!Array.isArray(i)&&typeof i=="object":t===typeof i)}class Xy{constructor(e,t,n){e?this.sensitivity=t?"variant":"case":this.sensitivity=t?"accent":"base",this.locale=n,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(e,t){return this.collator.compare(e,t)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class km{constructor(e,t,n,r,s){this.text=e.normalize?e.normalize():e,this.image=t,this.scale=n,this.fontStack=r,this.textColor=s}}class os{constructor(e){this.sections=e}static fromString(e){return new os([new km(e,null,null,null,null)])}isEmpty(){return this.sections.length===0?!0:!this.sections.some(e=>e.text.length!==0||e.image&&e.image.name.length!==0)}static factory(e){return e instanceof os?e:os.fromString(e)}toString(){return this.sections.length===0?"":this.sections.map(e=>e.text).join("")}serialize(){const e=["format"];for(const t of this.sections){if(t.image){e.push(["image",t.image.name]);continue}e.push(t.text);const n={};t.fontStack&&(n["text-font"]=["literal",t.fontStack.split(",")]),t.scale&&(n["font-scale"]=t.scale),t.textColor&&(n["text-color"]=["rgba"].concat(t.textColor.toArray())),e.push(n)}return e}}class Zo{constructor(e){this.name=e.name,this.available=e.available}toString(){return this.name}static fromString(e){return e?new Zo({name:e,available:!1}):null}serialize(){return["image",this.name]}}function Kb(i,e,t,n){return typeof i=="number"&&i>=0&&i<=255&&typeof e=="number"&&e>=0&&e<=255&&typeof t=="number"&&t>=0&&t<=255?typeof n>"u"||typeof n=="number"&&n>=0&&n<=1?null:`Invalid rgba value [${[i,e,t,n].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof n=="number"?[i,e,t,n]:[i,e,t]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function cg(i){if(i===null)return!0;if(typeof i=="string")return!0;if(typeof i=="boolean")return!0;if(typeof i=="number")return!0;if(i instanceof dr)return!0;if(i instanceof Xy)return!0;if(i instanceof os)return!0;if(i instanceof Zo)return!0;if(Array.isArray(i)){for(const e of i)if(!cg(e))return!1;return!0}else if(typeof i=="object"){for(const e in i)if(!cg(i[e]))return!1;return!0}else return!1}function Oi(i){if(i===null)return h0;if(typeof i=="string")return st;if(typeof i=="boolean")return it;if(typeof i=="number")return he;if(i instanceof dr)return Ds;if(i instanceof Xy)return d0;if(i instanceof os)return f0;if(i instanceof Zo)return Wh;if(Array.isArray(i)){const e=i.length;let t;for(const n of i){const r=Oi(n);if(!t)t=r;else{if(t===r)continue;t=nt;break}}return Ar(t||nt,e)}else return Jl}function Nu(i){const e=typeof i;return i===null?"":e==="string"||e==="number"||e==="boolean"?String(i):i instanceof dr||i instanceof os||i instanceof Zo?i.toString():JSON.stringify(i)}class Zy{constructor(e,t){this.type=e,this.value=t}static parse(e,t){if(e.length!==2)return t.error(`'literal' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!cg(e[1]))return t.error("invalid value");const n=e[1];let r=Oi(n);const s=t.expectedType;return r.kind==="array"&&r.N===0&&s&&s.kind==="array"&&(typeof s.N!="number"||s.N===0)&&(r=s),new Zy(r,n)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}serialize(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof dr?["rgba"].concat(this.value.toArray()):this.value instanceof os?this.value.serialize():this.value}}var ug=Zy;class t5{constructor(e){this.name="ExpressionEvaluationError",this.message=e}toJSON(){return this.message}}var Qi=t5;const hp={string:st,number:he,boolean:it,object:Jl};class Ky{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");let n=1,r;const s=e[0];if(s==="array"){let a;if(e.length>2){const c=e[1];if(typeof c!="string"||!(c in hp)||c==="object")return t.error('The item type argument of "array" must be one of string, number, boolean',1);a=hp[c],n++}else a=nt;let l;if(e.length>3){if(e[2]!==null&&(typeof e[2]!="number"||e[2]<0||e[2]!==Math.floor(e[2])))return t.error('The length argument to "array" must be a positive integer literal',2);l=e[2],n++}r=Ar(a,l)}else r=hp[s];const o=[];for(;ne.outputDefined())}serialize(){const e=this.type,t=[e.kind];if(e.kind==="array"){const n=e.itemType;if(n.kind==="string"||n.kind==="number"||n.kind==="boolean"){t.push(n.kind);const r=e.N;(typeof r=="number"||this.args.length>1)&&t.push(r)}}return t.concat(this.args.map(n=>n.serialize()))}}var bs=Ky;class g0{constructor(e){this.type=f0,this.sections=e}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const n=e[1];if(!Array.isArray(n)&&typeof n=="object")return t.error("First argument must be an image or text section.");const r=[];let s=!1;for(let o=1;o<=e.length-1;++o){const a=e[o];if(s&&typeof a=="object"&&!Array.isArray(a)){s=!1;let l=null;if(a["font-scale"]&&(l=t.parse(a["font-scale"],1,he),!l))return null;let c=null;if(a["text-font"]&&(c=t.parse(a["text-font"],1,Ar(st)),!c))return null;let u=null;if(a["text-color"]&&(u=t.parse(a["text-color"],1,Ds),!u))return null;const h=r[r.length-1];h.scale=l,h.font=c,h.textColor=u}else{const l=t.parse(e[o],1,nt);if(!l)return null;const c=l.type.kind;if(c!=="string"&&c!=="value"&&c!=="null"&&c!=="resolvedImage")return t.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");s=!0,r.push({content:l,scale:null,font:null,textColor:null})}}return new g0(r)}evaluate(e){const t=n=>{const r=n.content.evaluate(e);return Oi(r)===Wh?new km("",r,null,null,null):new km(Nu(r),null,n.scale?n.scale.evaluate(e):null,n.font?n.font.evaluate(e).join(","):null,n.textColor?n.textColor.evaluate(e):null)};return new os(this.sections.map(t))}eachChild(e){for(const t of this.sections)e(t.content),t.scale&&e(t.scale),t.font&&e(t.font),t.textColor&&e(t.textColor)}outputDefined(){return!1}serialize(){const e=["format"];for(const t of this.sections){e.push(t.content.serialize());const n={};t.scale&&(n["font-scale"]=t.scale.serialize()),t.font&&(n["text-font"]=t.font.serialize()),t.textColor&&(n["text-color"]=t.textColor.serialize()),e.push(n)}return e}}class p0{constructor(e){this.type=Wh,this.input=e}static parse(e,t){if(e.length!==2)return t.error("Expected two arguments.");const n=t.parse(e[1],1,st);return n?new p0(n):t.error("No image name provided.")}evaluate(e){const t=this.input.evaluate(e),n=Zo.fromString(t);return n&&e.availableImages&&(n.available=e.availableImages.indexOf(t)>-1),n}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){return["image",this.input.serialize()]}}const i5={"to-boolean":it,"to-color":Ds,"to-number":he,"to-string":st};class Jy{constructor(e,t){this.type=e,this.args=t}static parse(e,t){if(e.length<2)return t.error("Expected at least one argument.");const n=e[0];if((n==="to-boolean"||n==="to-string")&&e.length!==2)return t.error("Expected one argument.");const r=i5[n],s=[];for(let o=1;o4?n=`Invalid rbga value ${JSON.stringify(t)}: expected an array containing either three or four numeric values.`:n=Kb(t[0],t[1],t[2],t[3]),!n))return new dr(t[0]/255,t[1]/255,t[2]/255,t[3])}throw new Qi(n||`Could not parse color from value '${typeof t=="string"?t:String(JSON.stringify(t))}'`)}else if(this.type.kind==="number"){let t=null;for(const n of this.args){if(t=n.evaluate(e),t===null)return 0;const r=Number(t);if(!isNaN(r))return r}throw new Qi(`Could not convert ${JSON.stringify(t)} to number.`)}else return this.type.kind==="formatted"?os.fromString(Nu(this.args[0].evaluate(e))):this.type.kind==="resolvedImage"?Zo.fromString(Nu(this.args[0].evaluate(e))):Nu(this.args[0].evaluate(e))}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){if(this.type.kind==="formatted")return new g0([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new p0(this.args[0]).serialize();const e=[`to-${this.type.kind}`];return this.eachChild(t=>{e.push(t.serialize())}),e}}var Tl=Jy;const n5=["Unknown","Point","LineString","Polygon"];class r5{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null,this.featureTileCoord=null,this.featureDistanceData=null}id(){return this.feature&&this.feature.id!==void 0?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?n5[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}distanceFromCenter(){if(this.featureTileCoord&&this.featureDistanceData){const e=this.featureDistanceData.center,t=this.featureDistanceData.scale,{x:n,y:r}=this.featureTileCoord,s=n*t-e[0],o=r*t-e[1],a=this.featureDistanceData.bearing[0],l=this.featureDistanceData.bearing[1];return a*s+l*o}return 0}parseColor(e){let t=this._parseColorCache[e];return t||(t=this._parseColorCache[e]=dr.parse(e)),t}}var Jb=r5;class Ll{constructor(e,t,n,r){this.name=e,this.type=t,this._evaluate=n,this.args=r}evaluate(e){return this._evaluate(e,this.args)}eachChild(e){this.args.forEach(e)}outputDefined(){return!1}serialize(){return[this.name].concat(this.args.map(e=>e.serialize()))}static parse(e,t){const n=e[0],r=Ll.definitions[n];if(!r)return t.error(`Unknown expression "${n}". If you wanted a literal array, use ["literal", [...]].`,0);const s=Array.isArray(r)?r[0]:r.type,o=Array.isArray(r)?[[r[1],r[2]]]:r.overloads,a=o.filter(([c])=>!Array.isArray(c)||c.length===e.length-1);let l=null;for(const[c,u]of a){l=new iS(t.registry,t.path,null,t.scope);const h=[];let d=!1;for(let f=1;fs5(d)).join(" | "),h=[];for(let d=1;d=e[2]||i[1]<=e[1]||i[3]>=e[3])}function l5(i,e){const t=o5(i[0]),n=a5(i[1]),r=Math.pow(2,e.z);return[Math.round(t*r*Mo),Math.round(n*r*Mo)]}function c5(i,e,t){const n=i[0]-e[0],r=i[1]-e[1],s=i[0]-t[0],o=i[1]-t[1];return n*o-s*r===0&&n*s<=0&&r*o<=0}function u5(i,e,t){return e[1]>i[1]!=t[1]>i[1]&&i[0]<(t[0]-e[0])*(i[1]-e[1])/(t[1]-e[1])+e[0]}function $y(i,e){let t=!1;for(let n=0,r=e.length;n0&&h<0||u<0&&h>0}function f5(i,e,t,n){const r=[e[0]-i[0],e[1]-i[1]],s=[n[0]-t[0],n[1]-t[1]];return d5(s,r)===0?!1:!!(iI(i,e,t,n)&&iI(t,n,i,e))}function g5(i,e,t){for(const n of t)for(let r=0;rt[2]){const r=n*.5;let s=i[0]-t[0]>r?-n:t[0]-i[0]>r?n:0;s===0&&(s=i[0]-t[2]>r?-n:t[2]-i[0]>r?n:0),i[0]+=s}Qy(e,i)}function m5(i){i[0]=i[1]=1/0,i[2]=i[3]=-1/0}function nI(i,e,t,n){const r=Math.pow(2,n.z)*Mo,s=[n.x*Mo,n.y*Mo],o=[];if(!i)return o;for(const a of i)for(const l of a){const c=[l.x+s[0],l.y+s[1]];eS(c,e,t,r),o.push(c)}return o}function rI(i,e,t,n){const r=Math.pow(2,n.z)*Mo,s=[n.x*Mo,n.y*Mo],o=[];if(!i)return o;for(const a of i){const l=[];for(const c of a){const u=[c.x+s[0],c.y+s[1]];Qy(e,u),l.push(u)}o.push(l)}if(e[2]-e[0]<=r/2){m5(e);for(const a of o)for(const l of a)eS(l,e,t,r)}return o}function v5(i,e){const t=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],r=i.canonicalID();if(!r)return!1;if(e.type==="Polygon"){const s=eA(e.coordinates,n,r),o=nI(i.geometry(),t,n,r);if(!hg(t,n))return!1;for(const a of o)if(!$y(a,s))return!1}if(e.type==="MultiPolygon"){const s=$b(e.coordinates,n,r),o=nI(i.geometry(),t,n,r);if(!hg(t,n))return!1;for(const a of o)if(!h5(a,s))return!1}return!0}function y5(i,e){const t=[1/0,1/0,-1/0,-1/0],n=[1/0,1/0,-1/0,-1/0],r=i.canonicalID();if(!r)return!1;if(e.type==="Polygon"){const s=eA(e.coordinates,n,r),o=rI(i.geometry(),t,n,r);if(!hg(t,n))return!1;for(const a of o)if(!Qb(a,s))return!1}if(e.type==="MultiPolygon"){const s=$b(e.coordinates,n,r),o=rI(i.geometry(),t,n,r);if(!hg(t,n))return!1;for(const a of o)if(!p5(a,s))return!1}return!0}class Uu{constructor(e,t){this.type=it,this.geojson=e,this.geometries=t}static parse(e,t){if(e.length!==2)return t.error(`'within' expression requires exactly one argument, but found ${e.length-1} instead.`);if(cg(e[1])){const n=e[1];if(n.type==="FeatureCollection")for(let r=0;r{e&&!v0(t)&&(e=!1)}),e}function iA(i){if(i instanceof Bc&&i.name==="feature-state")return!1;let e=!0;return i.eachChild(t=>{e&&!iA(t)&&(e=!1)}),e}function nA(i,e){if(i instanceof Bc&&e.indexOf(i.name)>=0)return!1;let t=!0;return i.eachChild(n=>{t&&!nA(n,e)&&(t=!1)}),t}class rA{constructor(e,t){this.type=t.type,this.name=e,this.boundExpression=t}static parse(e,t){if(e.length!==2||typeof e[1]!="string")return t.error("'var' expression requires exactly one string literal argument.");const n=e[1];return t.scope.has(n)?new rA(n,t.scope.get(n)):t.error(`Unknown variable "${n}". Make sure "${n}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(e){return this.boundExpression.evaluate(e)}eachChild(){}outputDefined(){return!1}serialize(){return["var",this.name]}}var tS=rA;class sA{constructor(e,t=[],n,r=new Q8,s=[]){this.registry=e,this.path=t,this.key=t.map(o=>`[${o}]`).join(""),this.scope=r,this.errors=s,this.expectedType=n}parse(e,t,n,r,s={}){return t?this.concat(t,n,r)._parse(e,s):this._parse(e,s)}_parse(e,t){(e===null||typeof e=="string"||typeof e=="boolean"||typeof e=="number")&&(e=["literal",e]);function n(r,s,o){return o==="assert"?new bs(s,[r]):o==="coerce"?new Tl(s,[r]):r}if(Array.isArray(e)){if(e.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const r=e[0];if(typeof r!="string")return this.error(`Expression name must be a string, but found ${typeof r} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;const s=this.registry[r];if(s){let o=s.parse(e,this);if(!o)return null;if(this.expectedType){const a=this.expectedType,l=o.type;if((a.kind==="string"||a.kind==="number"||a.kind==="boolean"||a.kind==="object"||a.kind==="array")&&l.kind==="value")o=n(o,a,t.typeAnnotation||"assert");else if((a.kind==="color"||a.kind==="formatted"||a.kind==="resolvedImage")&&(l.kind==="value"||l.kind==="string"))o=n(o,a,t.typeAnnotation||"coerce");else if(this.checkSubtype(a,l))return null}if(!(o instanceof ug)&&o.type.kind!=="resolvedImage"&&Fm(o)){const a=new Jb;try{o=new ug(o.type,o.evaluate(a))}catch(l){return this.error(l.message),null}}return o}return this.error(`Unknown expression "${r}". If you wanted a literal array, use ["literal", [...]].`,0)}else return typeof e>"u"?this.error("'undefined' value invalid. Use null instead."):typeof e=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error(`Expected an array, but found ${typeof e} instead.`)}concat(e,t,n){const r=typeof e=="number"?this.path.concat(e):this.path,s=n?this.scope.concat(n):this.scope;return new sA(this.registry,r,t||null,s,this.errors)}error(e,...t){const n=`${this.key}${t.map(r=>`[${r}]`).join("")}`;this.errors.push(new es(n,e))}checkSubtype(e,t){const n=Eh(e,t);return n&&this.error(n),n}}var iS=sA;function Fm(i){if(i instanceof tS)return Fm(i.boundExpression);if(i instanceof Bc&&i.name==="error")return!1;if(i instanceof m0)return!1;if(i instanceof tA)return!1;const e=i instanceof Tl||i instanceof bs;let t=!0;return i.eachChild(n=>{e?t=t&&Fm(n):t=t&&n instanceof ug}),t?v0(i)&&nA(i,["zoom","heatmap-density","line-progress","sky-radial-progress","accumulated","is-supported-script","pitch","distance-from-center"]):!1}function nS(i,e){const t=i.length-1;let n=0,r=t,s=0,o,a;for(;n<=r;)if(s=Math.floor((n+r)/2),o=i[s],a=i[s+1],o<=e){if(s===t||ee)r=s-1;else throw new Qi("Input is not a number.");return 0}class oA{constructor(e,t,n){this.type=e,this.input=t,this.labels=[],this.outputs=[];for(const[r,s]of n)this.labels.push(r),this.outputs.push(s)}static parse(e,t){if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!==0)return t.error("Expected an even number of arguments.");const n=t.parse(e[1],1,he);if(!n)return null;const r=[];let s=null;t.expectedType&&t.expectedType.kind!=="value"&&(s=t.expectedType);for(let o=1;o=a)return t.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',c);const h=t.parse(l,u,s);if(!h)return null;s=s||h.type,r.push([a,h])}return new oA(s,n,r)}evaluate(e){const t=this.labels,n=this.outputs;if(t.length===1)return n[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return n[0].evaluate(e);const s=t.length;if(r>=t[s-1])return n[s-1].evaluate(e);const o=nS(t,r);return n[o].evaluate(e)}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every(e=>e.outputDefined())}serialize(){const e=["step",this.input.serialize()];for(let t=0;t0&&e.push(this.labels[t]),e.push(this.outputs[t].serialize());return e}}var rS=oA,A5=jc;function jc(i,e,t,n){this.cx=3*i,this.bx=3*(t-i)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(n-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=i,this.p1y=n,this.p2x=t,this.p2y=n}jc.prototype.sampleCurveX=function(i){return((this.ax*i+this.bx)*i+this.cx)*i};jc.prototype.sampleCurveY=function(i){return((this.ay*i+this.by)*i+this.cy)*i};jc.prototype.sampleCurveDerivativeX=function(i){return(3*this.ax*i+2*this.bx)*i+this.cx};jc.prototype.solveCurveX=function(i,e){typeof e>"u"&&(e=1e-6);var t,n,r,s,o;for(r=i,o=0;o<8;o++){if(s=this.sampleCurveX(r)-i,Math.abs(s)n)return n;for(;ts?t=r:n=r,r=(n-t)*.5+t}return r};jc.prototype.solve=function(i,e){return this.sampleCurveY(this.solveCurveX(i,e))};var _5=Xb(A5);function lr(i,e,t){return i*(1-t)+e*t}function C5(i,e,t){return new dr(lr(i.r,e.r,t),lr(i.g,e.g,t),lr(i.b,e.b,t),lr(i.a,e.a,t))}function I5(i,e,t){return i.map((n,r)=>lr(n,e[r],t))}var E5=Object.freeze({__proto__:null,number:lr,color:C5,array:I5});const sS=.95047,oS=1,aS=1.08883,lS=4/29,Ql=6/29,cS=3*Ql*Ql,w5=Ql*Ql*Ql,b5=Math.PI/180,S5=180/Math.PI;function dp(i){return i>w5?Math.pow(i,1/3):i/cS+lS}function fp(i){return i>Ql?i*i*i:cS*(i-lS)}function gp(i){return 255*(i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055)}function pp(i){return i/=255,i<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4)}function uS(i){const e=pp(i.r),t=pp(i.g),n=pp(i.b),r=dp((.4124564*e+.3575761*t+.1804375*n)/sS),s=dp((.2126729*e+.7151522*t+.072175*n)/oS),o=dp((.0193339*e+.119192*t+.9503041*n)/aS);return{l:116*s-16,a:500*(r-s),b:200*(s-o),alpha:i.a}}function hS(i){let e=(i.l+16)/116,t=isNaN(i.a)?e:e+i.a/500,n=isNaN(i.b)?e:e-i.b/200;return e=oS*fp(e),t=sS*fp(t),n=aS*fp(n),new dr(gp(3.2404542*t-1.5371385*e-.4985314*n),gp(-.969266*t+1.8760108*e+.041556*n),gp(.0556434*t-.2040259*e+1.0572252*n),i.alpha)}function x5(i,e,t){return{l:lr(i.l,e.l,t),a:lr(i.a,e.a,t),b:lr(i.b,e.b,t),alpha:lr(i.alpha,e.alpha,t)}}function P5(i){const{l:e,a:t,b:n}=uS(i),r=Math.atan2(n,t)*S5;return{h:r<0?r+360:r,c:Math.sqrt(t*t+n*n),l:e,alpha:i.a}}function M5(i){const e=i.h*b5,t=i.c,n=i.l;return hS({l:n,a:Math.cos(e)*t,b:Math.sin(e)*t,alpha:i.alpha})}function R5(i,e,t){const n=e-i;return i+t*(n>180||n<-180?n-360*Math.round(n/360):n)}function T5(i,e,t){return{h:R5(i.h,e.h,t),c:lr(i.c,e.c,t),l:lr(i.l,e.l,t),alpha:lr(i.alpha,e.alpha,t)}}const Rd={forward:uS,reverse:hS,interpolate:x5},Td={forward:P5,reverse:M5,interpolate:T5};class dg{constructor(e,t,n,r,s){this.type=e,this.operator=t,this.interpolation=n,this.input=r,this.labels=[],this.outputs=[];for(const[o,a]of s)this.labels.push(o),this.outputs.push(a)}static interpolationFactor(e,t,n,r){let s=0;if(e.name==="exponential")s=mp(t,e.base,n,r);else if(e.name==="linear")s=mp(t,1,n,r);else if(e.name==="cubic-bezier"){const o=e.controlPoints;s=new _5(o[0],o[1],o[2],o[3]).solve(mp(t,1,n,r))}return s}static parse(e,t){let[n,r,s,...o]=e;if(!Array.isArray(r)||r.length===0)return t.error("Expected an interpolation type expression.",1);if(r[0]==="linear")r={name:"linear"};else if(r[0]==="exponential"){const c=r[1];if(typeof c!="number")return t.error("Exponential interpolation requires a numeric base.",1,1);r={name:"exponential",base:c}}else if(r[0]==="cubic-bezier"){const c=r.slice(1);if(c.length!==4||c.some(u=>typeof u!="number"||u<0||u>1))return t.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);r={name:"cubic-bezier",controlPoints:c}}else return t.error(`Unknown interpolation type ${String(r[0])}`,1,0);if(e.length-1<4)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!==0)return t.error("Expected an even number of arguments.");if(s=t.parse(s,2,he),!s)return null;const a=[];let l=null;n==="interpolate-hcl"||n==="interpolate-lab"?l=Ds:t.expectedType&&t.expectedType.kind!=="value"&&(l=t.expectedType);for(let c=0;c=u)return t.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',d);const g=t.parse(h,f,l);if(!g)return null;l=l||g.type,a.push([u,g])}return l.kind!=="number"&&l.kind!=="color"&&!(l.kind==="array"&&l.itemType.kind==="number"&&typeof l.N=="number")?t.error(`Type ${$t(l)} is not interpolatable.`):new dg(l,n,r,s,a)}evaluate(e){const t=this.labels,n=this.outputs;if(t.length===1)return n[0].evaluate(e);const r=this.input.evaluate(e);if(r<=t[0])return n[0].evaluate(e);const s=t.length;if(r>=t[s-1])return n[s-1].evaluate(e);const o=nS(t,r),a=t[o],l=t[o+1],c=dg.interpolationFactor(this.interpolation,r,a,l),u=n[o].evaluate(e),h=n[o+1].evaluate(e);return this.operator==="interpolate"?E5[this.type.kind.toLowerCase()](u,h,c):this.operator==="interpolate-hcl"?Td.reverse(Td.interpolate(Td.forward(u),Td.forward(h),c)):Rd.reverse(Rd.interpolate(Rd.forward(u),Rd.forward(h),c))}eachChild(e){e(this.input);for(const t of this.outputs)e(t)}outputDefined(){return this.outputs.every(e=>e.outputDefined())}serialize(){let e;this.interpolation.name==="linear"?e=["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?e=["linear"]:e=["exponential",this.interpolation.base]:e=["cubic-bezier"].concat(this.interpolation.controlPoints);const t=[this.operator,e,this.input.serialize()];for(let n=0;nEh(r,a.type))?new fg(nt,s):new fg(n,s)}evaluate(e){let t=null,n=0,r;for(const s of this.args){if(n++,t=s.evaluate(e),t&&t instanceof Zo&&!t.available&&(r||(r=t),t=null,n===this.args.length))return r;if(t!==null)break}return t}eachChild(e){this.args.forEach(e)}outputDefined(){return this.args.every(e=>e.outputDefined())}serialize(){const e=["coalesce"];return this.eachChild(t=>{e.push(t.serialize())}),e}}var dS=fg;class aA{constructor(e,t){this.type=t.type,this.bindings=[].concat(e),this.result=t}evaluate(e){return this.result.evaluate(e)}eachChild(e){for(const t of this.bindings)e(t[1]);e(this.result)}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);const n=[];for(let s=1;s=n.length)throw new Qi(`Array index out of bounds: ${t} > ${n.length-1}.`);if(t!==Math.floor(t))throw new Qi(`Array index must be an integer, but found ${t} instead.`);return n[t]}eachChild(e){e(this.index),e(this.input)}outputDefined(){return!1}serialize(){return["at",this.index.serialize(),this.input.serialize()]}}var L5=lA;class cA{constructor(e,t){this.type=it,this.needle=e,this.haystack=t}static parse(e,t){if(e.length!==3)return t.error(`Expected 2 arguments, but found ${e.length-1} instead.`);const n=t.parse(e[1],1,nt),r=t.parse(e[2],2,nt);return!n||!r?null:qy(n.type,[it,st,he,h0,nt])?new cA(n,r):t.error(`Expected first argument to be of type boolean, string, number or null, but found ${$t(n.type)} instead`)}evaluate(e){const t=this.needle.evaluate(e),n=this.haystack.evaluate(e);if(n==null)return!1;if(!wh(t,["boolean","string","number","null"]))throw new Qi(`Expected first argument to be of type boolean, string, number or null, but found ${$t(Oi(t))} instead.`);if(!wh(n,["string","array"]))throw new Qi(`Expected second argument to be of type array or string, but found ${$t(Oi(n))} instead.`);return n.indexOf(t)>=0}eachChild(e){e(this.needle),e(this.haystack)}outputDefined(){return!0}serialize(){return["in",this.needle.serialize(),this.haystack.serialize()]}}var G5=cA;class gg{constructor(e,t,n){this.type=he,this.needle=e,this.haystack=t,this.fromIndex=n}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const n=t.parse(e[1],1,nt),r=t.parse(e[2],2,nt);if(!n||!r)return null;if(!qy(n.type,[it,st,he,h0,nt]))return t.error(`Expected first argument to be of type boolean, string, number or null, but found ${$t(n.type)} instead`);if(e.length===4){const s=t.parse(e[3],3,he);return s?new gg(n,r,s):null}else return new gg(n,r)}evaluate(e){const t=this.needle.evaluate(e),n=this.haystack.evaluate(e);if(!wh(t,["boolean","string","number","null"]))throw new Qi(`Expected first argument to be of type boolean, string, number or null, but found ${$t(Oi(t))} instead.`);if(!wh(n,["string","array"]))throw new Qi(`Expected second argument to be of type array or string, but found ${$t(Oi(n))} instead.`);if(this.fromIndex){const r=this.fromIndex.evaluate(e);return n.indexOf(t,r)}return n.indexOf(t)}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex)}outputDefined(){return!1}serialize(){if(this.fromIndex!=null&&this.fromIndex!==void 0){const e=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),e]}return["index-of",this.needle.serialize(),this.haystack.serialize()]}}var O5=gg;class uA{constructor(e,t,n,r,s,o){this.inputType=e,this.type=t,this.input=n,this.cases=r,this.outputs=s,this.otherwise=o}static parse(e,t){if(e.length<5)return t.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!==1)return t.error("Expected an even number of arguments.");let n,r;t.expectedType&&t.expectedType.kind!=="value"&&(r=t.expectedType);const s={},o=[];for(let c=2;cNumber.MAX_SAFE_INTEGER)return d.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof g=="number"&&Math.floor(g)!==g)return d.error("Numeric branch labels must be integer values.");if(!n)n=Oi(g);else if(d.checkSubtype(n,Oi(g)))return null;if(typeof s[String(g)]<"u")return d.error("Branch labels must be unique.");s[String(g)]=o.length}const f=t.parse(h,c,r);if(!f)return null;r=r||f.type,o.push(f)}const a=t.parse(e[1],1,nt);if(!a)return null;const l=t.parse(e[e.length-1],e.length-1,r);return!l||a.type.kind!=="value"&&t.concat(1).checkSubtype(n,a.type)?null:new uA(n,r,a,s,o,l)}evaluate(e){const t=this.input.evaluate(e);return(Oi(t)===this.inputType&&this.outputs[this.cases[t]]||this.otherwise).evaluate(e)}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise)}outputDefined(){return this.outputs.every(e=>e.outputDefined())&&this.otherwise.outputDefined()}serialize(){const e=["match",this.input.serialize()],t=Object.keys(this.cases).sort(),n=[],r={};for(const o of t){const a=r[this.cases[o]];a===void 0?(r[this.cases[o]]=n.length,n.push([this.cases[o],[o]])):n[a][1].push(o)}const s=o=>this.inputType.kind==="number"?Number(o):o;for(const[o,a]of n)a.length===1?e.push(s(a[0])):e.push(a.map(s)),e.push(this.outputs[o].serialize());return e.push(this.otherwise.serialize()),e}}var D5=uA;class hA{constructor(e,t,n){this.type=e,this.branches=t,this.otherwise=n}static parse(e,t){if(e.length<4)return t.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!==0)return t.error("Expected an odd number of arguments.");let n;t.expectedType&&t.expectedType.kind!=="value"&&(n=t.expectedType);const r=[];for(let o=1;ot.outputDefined())&&this.otherwise.outputDefined()}serialize(){const e=["case"];return this.eachChild(t=>{e.push(t.serialize())}),e}}var k5=hA;class pg{constructor(e,t,n,r){this.type=e,this.input=t,this.beginIndex=n,this.endIndex=r}static parse(e,t){if(e.length<=2||e.length>=5)return t.error(`Expected 3 or 4 arguments, but found ${e.length-1} instead.`);const n=t.parse(e[1],1,nt),r=t.parse(e[2],2,he);if(!n||!r)return null;if(!qy(n.type,[Ar(nt),st,nt]))return t.error(`Expected first argument to be of type array or string, but found ${$t(n.type)} instead`);if(e.length===4){const s=t.parse(e[3],3,he);return s?new pg(n.type,n,r,s):null}else return new pg(n.type,n,r)}evaluate(e){const t=this.input.evaluate(e),n=this.beginIndex.evaluate(e);if(!wh(t,["string","array"]))throw new Qi(`Expected first argument to be of type array or string, but found ${$t(Oi(t))} instead.`);if(this.endIndex){const r=this.endIndex.evaluate(e);return t.slice(n,r)}return t.slice(n)}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex)}outputDefined(){return!1}serialize(){if(this.endIndex!=null&&this.endIndex!==void 0){const e=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),e]}return["slice",this.input.serialize(),this.beginIndex.serialize()]}}var F5=pg;function sI(i,e){return i==="=="||i==="!="?e.kind==="boolean"||e.kind==="string"||e.kind==="number"||e.kind==="null"||e.kind==="value":e.kind==="string"||e.kind==="number"||e.kind==="value"}function N5(i,e,t){return e===t}function U5(i,e,t){return e!==t}function B5(i,e,t){return et}function z5(i,e,t){return e<=t}function V5(i,e,t){return e>=t}function gS(i,e,t,n){return n.compare(e,t)===0}function W5(i,e,t,n){return!gS(i,e,t,n)}function Y5(i,e,t,n){return n.compare(e,t)<0}function H5(i,e,t,n){return n.compare(e,t)>0}function q5(i,e,t,n){return n.compare(e,t)<=0}function X5(i,e,t,n){return n.compare(e,t)>=0}function zc(i,e,t){const n=i!=="=="&&i!=="!=";return class pS{constructor(s,o,a){this.type=it,this.lhs=s,this.rhs=o,this.collator=a,this.hasUntypedArgument=s.type.kind==="value"||o.type.kind==="value"}static parse(s,o){if(s.length!==3&&s.length!==4)return o.error("Expected two or three arguments.");const a=s[0];let l=o.parse(s[1],1,nt);if(!l)return null;if(!sI(a,l.type))return o.concat(1).error(`"${a}" comparisons are not supported for type '${$t(l.type)}'.`);let c=o.parse(s[2],2,nt);if(!c)return null;if(!sI(a,c.type))return o.concat(2).error(`"${a}" comparisons are not supported for type '${$t(c.type)}'.`);if(l.type.kind!==c.type.kind&&l.type.kind!=="value"&&c.type.kind!=="value")return o.error(`Cannot compare types '${$t(l.type)}' and '${$t(c.type)}'.`);n&&(l.type.kind==="value"&&c.type.kind!=="value"?l=new bs(c.type,[l]):l.type.kind!=="value"&&c.type.kind==="value"&&(c=new bs(l.type,[c])));let u=null;if(s.length===4){if(l.type.kind!=="string"&&c.type.kind!=="string"&&l.type.kind!=="value"&&c.type.kind!=="value")return o.error("Cannot use collator to compare non-string types.");if(u=o.parse(s[3],3,d0),!u)return null}return new pS(l,c,u)}evaluate(s){const o=this.lhs.evaluate(s),a=this.rhs.evaluate(s);if(n&&this.hasUntypedArgument){const l=Oi(o),c=Oi(a);if(l.kind!==c.kind||!(l.kind==="string"||l.kind==="number"))throw new Qi(`Expected arguments for "${i}" to be (string, string) or (number, number), but found (${l.kind}, ${c.kind}) instead.`)}if(this.collator&&!n&&this.hasUntypedArgument){const l=Oi(o),c=Oi(a);if(l.kind!=="string"||c.kind!=="string")return e(s,o,a)}return this.collator?t(s,o,a,this.collator.evaluate(s)):e(s,o,a)}eachChild(s){s(this.lhs),s(this.rhs),this.collator&&s(this.collator)}outputDefined(){return!0}serialize(){const s=[i];return this.eachChild(o=>{s.push(o.serialize())}),s}}}const Z5=zc("==",N5,gS),K5=zc("!=",U5,W5),J5=zc("<",B5,Y5),Q5=zc(">",j5,H5),$5=zc("<=",z5,q5),eU=zc(">=",V5,X5);class dA{constructor(e,t,n,r,s,o){this.type=st,this.number=e,this.locale=t,this.currency=n,this.unit=r,this.minFractionDigits=s,this.maxFractionDigits=o}static parse(e,t){if(e.length!==3)return t.error("Expected two arguments.");const n=t.parse(e[1],1,he);if(!n)return null;const r=e[2];if(typeof r!="object"||Array.isArray(r))return t.error("NumberFormat options argument must be an object.");let s=null;if(r.locale&&(s=t.parse(r.locale,1,st),!s))return null;let o=null;if(r.currency&&(o=t.parse(r.currency,1,st),!o))return null;let a=null;if(r.unit&&(a=t.parse(r.unit,1,st),!a))return null;let l=null;if(r["min-fraction-digits"]&&(l=t.parse(r["min-fraction-digits"],1,he),!l))return null;let c=null;return r["max-fraction-digits"]&&(c=t.parse(r["max-fraction-digits"],1,he),!c)?null:new dA(n,s,o,a,l,c)}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:this.currency&&"currency"||this.unit&&"unit"||"decimal",currency:this.currency?this.currency.evaluate(e):void 0,unit:this.unit?this.unit.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e))}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.unit&&e(this.unit),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits)}outputDefined(){return!1}serialize(){const e={};return this.locale&&(e.locale=this.locale.serialize()),this.currency&&(e.currency=this.currency.serialize()),this.unit&&(e.unit=this.unit.serialize()),this.minFractionDigits&&(e["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(e["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),e]}}class fA{constructor(e){this.type=he,this.input=e}static parse(e,t){if(e.length!==2)return t.error(`Expected 1 argument, but found ${e.length-1} instead.`);const n=t.parse(e[1],1);return n?n.type.kind!=="array"&&n.type.kind!=="string"&&n.type.kind!=="value"?t.error(`Expected argument of type string or array, but found ${$t(n.type)} instead.`):new fA(n):null}evaluate(e){const t=this.input.evaluate(e);if(typeof t=="string")return t.length;if(Array.isArray(t))return t.length;throw new Qi(`Expected value to be of type string or array, but found ${$t(Oi(t))} instead.`)}eachChild(e){e(this.input)}outputDefined(){return!1}serialize(){const e=["length"];return this.eachChild(t=>{e.push(t.serialize())}),e}}var tU=fA;const mS={"==":Z5,"!=":K5,">":Q5,"<":J5,">=":eU,"<=":$5,array:bs,at:L5,boolean:bs,case:k5,coalesce:dS,collator:m0,format:g0,image:p0,in:G5,"index-of":O5,interpolate:Ra,"interpolate-hcl":Ra,"interpolate-lab":Ra,length:tU,let:fS,literal:ug,match:D5,number:bs,"number-format":dA,object:bs,slice:F5,step:rS,string:bs,"to-boolean":Tl,"to-color":Tl,"to-number":Tl,"to-string":Tl,var:tS,within:tA};function oI(i,[e,t,n,r]){e=e.evaluate(i),t=t.evaluate(i),n=n.evaluate(i);const s=r?r.evaluate(i):1,o=Kb(e,t,n,s);if(o)throw new Qi(o);return new dr(e/255*s,t/255*s,n/255*s,s)}function aI(i,e){return i in e}function vp(i,e){const t=e[i];return typeof t>"u"?null:t}function iU(i,e,t,n){for(;t<=n;){const r=t+n>>1;if(e[r]===i)return!0;e[r]>i?n=r-1:t=r+1}return!1}function na(i){return{type:i}}Bc.register(mS,{error:[$8,[st],(i,[e])=>{throw new Qi(e.evaluate(i))}],typeof:[st,[nt],(i,[e])=>$t(Oi(e.evaluate(i)))],"to-rgba":[Ar(he,4),[Ds],(i,[e])=>e.evaluate(i).toArray()],rgb:[Ds,[he,he,he],oI],rgba:[Ds,[he,he,he,he],oI],has:{type:it,overloads:[[[st],(i,[e])=>aI(e.evaluate(i),i.properties())],[[st,Jl],(i,[e,t])=>aI(e.evaluate(i),t.evaluate(i))]]},get:{type:nt,overloads:[[[st],(i,[e])=>vp(e.evaluate(i),i.properties())],[[st,Jl],(i,[e,t])=>vp(e.evaluate(i),t.evaluate(i))]]},"feature-state":[nt,[st],(i,[e])=>vp(e.evaluate(i),i.featureState||{})],properties:[Jl,[],i=>i.properties()],"geometry-type":[st,[],i=>i.geometryType()],id:[nt,[],i=>i.id()],zoom:[he,[],i=>i.globals.zoom],pitch:[he,[],i=>i.globals.pitch||0],"distance-from-center":[he,[],i=>i.distanceFromCenter()],"heatmap-density":[he,[],i=>i.globals.heatmapDensity||0],"line-progress":[he,[],i=>i.globals.lineProgress||0],"sky-radial-progress":[he,[],i=>i.globals.skyRadialProgress||0],accumulated:[nt,[],i=>i.globals.accumulated===void 0?null:i.globals.accumulated],"+":[he,na(he),(i,e)=>{let t=0;for(const n of e)t+=n.evaluate(i);return t}],"*":[he,na(he),(i,e)=>{let t=1;for(const n of e)t*=n.evaluate(i);return t}],"-":{type:he,overloads:[[[he,he],(i,[e,t])=>e.evaluate(i)-t.evaluate(i)],[[he],(i,[e])=>-e.evaluate(i)]]},"/":[he,[he,he],(i,[e,t])=>e.evaluate(i)/t.evaluate(i)],"%":[he,[he,he],(i,[e,t])=>e.evaluate(i)%t.evaluate(i)],ln2:[he,[],()=>Math.LN2],pi:[he,[],()=>Math.PI],e:[he,[],()=>Math.E],"^":[he,[he,he],(i,[e,t])=>Math.pow(e.evaluate(i),t.evaluate(i))],sqrt:[he,[he],(i,[e])=>Math.sqrt(e.evaluate(i))],log10:[he,[he],(i,[e])=>Math.log(e.evaluate(i))/Math.LN10],ln:[he,[he],(i,[e])=>Math.log(e.evaluate(i))],log2:[he,[he],(i,[e])=>Math.log(e.evaluate(i))/Math.LN2],sin:[he,[he],(i,[e])=>Math.sin(e.evaluate(i))],cos:[he,[he],(i,[e])=>Math.cos(e.evaluate(i))],tan:[he,[he],(i,[e])=>Math.tan(e.evaluate(i))],asin:[he,[he],(i,[e])=>Math.asin(e.evaluate(i))],acos:[he,[he],(i,[e])=>Math.acos(e.evaluate(i))],atan:[he,[he],(i,[e])=>Math.atan(e.evaluate(i))],min:[he,na(he),(i,e)=>Math.min(...e.map(t=>t.evaluate(i)))],max:[he,na(he),(i,e)=>Math.max(...e.map(t=>t.evaluate(i)))],abs:[he,[he],(i,[e])=>Math.abs(e.evaluate(i))],round:[he,[he],(i,[e])=>{const t=e.evaluate(i);return t<0?-Math.round(-t):Math.round(t)}],floor:[he,[he],(i,[e])=>Math.floor(e.evaluate(i))],ceil:[he,[he],(i,[e])=>Math.ceil(e.evaluate(i))],"filter-==":[it,[st,nt],(i,[e,t])=>i.properties()[e.value]===t.value],"filter-id-==":[it,[nt],(i,[e])=>i.id()===e.value],"filter-type-==":[it,[st],(i,[e])=>i.geometryType()===e.value],"filter-<":[it,[st,nt],(i,[e,t])=>{const n=i.properties()[e.value],r=t.value;return typeof n==typeof r&&n{const t=i.id(),n=e.value;return typeof t==typeof n&&t":[it,[st,nt],(i,[e,t])=>{const n=i.properties()[e.value],r=t.value;return typeof n==typeof r&&n>r}],"filter-id->":[it,[nt],(i,[e])=>{const t=i.id(),n=e.value;return typeof t==typeof n&&t>n}],"filter-<=":[it,[st,nt],(i,[e,t])=>{const n=i.properties()[e.value],r=t.value;return typeof n==typeof r&&n<=r}],"filter-id-<=":[it,[nt],(i,[e])=>{const t=i.id(),n=e.value;return typeof t==typeof n&&t<=n}],"filter->=":[it,[st,nt],(i,[e,t])=>{const n=i.properties()[e.value],r=t.value;return typeof n==typeof r&&n>=r}],"filter-id->=":[it,[nt],(i,[e])=>{const t=i.id(),n=e.value;return typeof t==typeof n&&t>=n}],"filter-has":[it,[nt],(i,[e])=>e.value in i.properties()],"filter-has-id":[it,[],i=>i.id()!==null&&i.id()!==void 0],"filter-type-in":[it,[Ar(st)],(i,[e])=>e.value.indexOf(i.geometryType())>=0],"filter-id-in":[it,[Ar(nt)],(i,[e])=>e.value.indexOf(i.id())>=0],"filter-in-small":[it,[st,Ar(nt)],(i,[e,t])=>t.value.indexOf(i.properties()[e.value])>=0],"filter-in-large":[it,[st,Ar(nt)],(i,[e,t])=>iU(i.properties()[e.value],t.value,0,t.value.length-1)],all:{type:it,overloads:[[[it,it],(i,[e,t])=>e.evaluate(i)&&t.evaluate(i)],[na(it),(i,e)=>{for(const t of e)if(!t.evaluate(i))return!1;return!0}]]},any:{type:it,overloads:[[[it,it],(i,[e,t])=>e.evaluate(i)||t.evaluate(i)],[na(it),(i,e)=>{for(const t of e)if(t.evaluate(i))return!0;return!1}]]},"!":[it,[it],(i,[e])=>!e.evaluate(i)],"is-supported-script":[it,[st],(i,[e])=>{const t=i.globals&&i.globals.isSupportedScript;return t?t(e.evaluate(i)):!0}],upcase:[st,[st],(i,[e])=>e.evaluate(i).toUpperCase()],downcase:[st,[st],(i,[e])=>e.evaluate(i).toLowerCase()],concat:[st,na(nt),(i,e)=>e.map(t=>Nu(t.evaluate(i))).join("")],"resolved-locale":[st,[d0],(i,[e])=>e.evaluate(i).resolvedLocale()]});var vS=mS;function Nm(i){return{result:"success",value:i}}function _l(i){return{result:"error",value:i}}function nU(i){return i["property-type"]==="data-driven"}function rU(i){return!!i.expression&&i.expression.parameters.indexOf("zoom")>-1}function sU(i){return!!i.expression&&i.expression.interpolated}function yS(i){return typeof i=="object"&&i!==null&&!Array.isArray(i)}class oU{constructor(e,t){this.expression=e,this._warningHistory={},this._evaluator=new Jb,this._defaultValue=t?uU(t):null,this._enumValues=t&&t.type==="enum"?t.values:null}evaluateWithoutErrorHandling(e,t,n,r,s,o,a,l){return this._evaluator.globals=e,this._evaluator.feature=t,this._evaluator.featureState=n,this._evaluator.canonical=r||null,this._evaluator.availableImages=s||null,this._evaluator.formattedSection=o,this._evaluator.featureTileCoord=a||null,this._evaluator.featureDistanceData=l||null,this.expression.evaluate(this._evaluator)}evaluate(e,t,n,r,s,o,a,l){this._evaluator.globals=e,this._evaluator.feature=t||null,this._evaluator.featureState=n||null,this._evaluator.canonical=r||null,this._evaluator.availableImages=s||null,this._evaluator.formattedSection=o||null,this._evaluator.featureTileCoord=a||null,this._evaluator.featureDistanceData=l||null;try{const c=this.expression.evaluate(this._evaluator);if(c==null||typeof c=="number"&&c!==c)return this._defaultValue;if(this._enumValues&&!(c in this._enumValues))throw new Qi(`Expected value to be one of ${Object.keys(this._enumValues).map(u=>JSON.stringify(u)).join(", ")}, but found ${JSON.stringify(c)} instead.`);return c}catch(c){return this._warningHistory[c.message]||(this._warningHistory[c.message]=!0,typeof console<"u"&&console.warn(c.message)),this._defaultValue}}}function aU(i){return Array.isArray(i)&&i.length>0&&typeof i[0]=="string"&&i[0]in vS}function Um(i,e){const t=new iS(vS,[],e?cU(e):void 0),n=t.parse(i,void 0,void 0,void 0,e&&e.type==="string"?{typeAnnotation:"coerce"}:void 0);return n?Nm(new oU(n,e)):_l(t.errors)}class lI{constructor(e,t){this.kind=e,this._styleExpression=t,this.isStateDependent=e!=="constant"&&!iA(t.expression)}evaluateWithoutErrorHandling(e,t,n,r,s,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,n,r,s,o)}evaluate(e,t,n,r,s,o){return this._styleExpression.evaluate(e,t,n,r,s,o)}}class cI{constructor(e,t,n,r){this.kind=e,this.zoomStops=n,this._styleExpression=t,this.isStateDependent=e!=="camera"&&!iA(t.expression),this.interpolationType=r}evaluateWithoutErrorHandling(e,t,n,r,s,o){return this._styleExpression.evaluateWithoutErrorHandling(e,t,n,r,s,o)}evaluate(e,t,n,r,s,o){return this._styleExpression.evaluate(e,t,n,r,s,o)}interpolationFactor(e,t,n){return this.interpolationType?Ra.interpolationFactor(this.interpolationType,e,t,n):0}}function lU(i,e){if(i=Um(i,e),i.result==="error")return i;const t=i.value.expression,n=v0(t);if(!n&&!nU(e))return _l([new es("","data expressions not supported")]);const r=nA(t,["zoom","pitch","distance-from-center"]);if(!r&&!rU(e))return _l([new es("","zoom expressions not supported")]);const s=Qd(t);if(!s&&!r)return _l([new es("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(s instanceof es)return _l([s]);if(s instanceof Ra&&!sU(e))return _l([new es("",'"interpolate" expressions cannot be used with this property')]);if(!s)return Nm(n?new lI("constant",i.value):new lI("source",i.value));const o=s instanceof Ra?s.interpolation:void 0;return Nm(n?new cI("camera",i.value,s.labels,o):new cI("composite",i.value,s.labels,o))}function Qd(i){let e=null;if(i instanceof fS)e=Qd(i.result);else if(i instanceof dS){for(const t of i.args)if(e=Qd(t),e)break}else(i instanceof rS||i instanceof Ra)&&i.input instanceof Bc&&i.input.name==="zoom"&&(e=i);return e instanceof es||i.eachChild(t=>{const n=Qd(t);n instanceof es?e=n:!e&&n?e=new es("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):e&&n&&e!==n&&(e=new es("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),e}function cU(i){const e={color:Ds,string:st,number:he,enum:st,boolean:it,formatted:f0,resolvedImage:Wh};return i.type==="array"?Ar(e[i.value]||nt,i.length):e[i.type]}function uU(i){return i.type==="color"&&(yS(i.default)||Array.isArray(i.default))?new dr(0,0,0,0):i.type==="color"?dr.parse(i.default)||null:i.default===void 0?null:i.default}function hU(i){return i instanceof Number||i instanceof String||i instanceof Boolean?i.valueOf():i}function Bm(i){if(Array.isArray(i))return i.map(Bm);if(i instanceof Object&&!(i instanceof Number||i instanceof String||i instanceof Boolean)){const e={};for(const t in i)e[t]=Bm(i[t]);return e}return hU(i)}var AS={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},terrain:{type:"terrain"},fog:{type:"fog"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},projection:{type:"projection"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{},sky:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background","layout_sky"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_sky:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"},"fill-extrusion-edge-radius":{type:"number",private:!0,default:0,minimum:0,maximum:1,"property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_symbol:{type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature","pitch","distance-from-center"]}},filter_fill:{type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}},filter_line:{type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}},filter_circle:{type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}},"filter_fill-extrusion":{type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}},filter_heatmap:{type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},expression_name:{type:"enum",values:{let:{group:"Variable binding"},var:{group:"Variable binding"},literal:{group:"Types"},array:{group:"Types"},at:{group:"Lookup"},in:{group:"Lookup"},"index-of":{group:"Lookup"},slice:{group:"Lookup"},case:{group:"Decision"},match:{group:"Decision"},coalesce:{group:"Decision"},step:{group:"Ramps, scales, curves"},interpolate:{group:"Ramps, scales, curves"},"interpolate-hcl":{group:"Ramps, scales, curves"},"interpolate-lab":{group:"Ramps, scales, curves"},ln2:{group:"Math"},pi:{group:"Math"},e:{group:"Math"},typeof:{group:"Types"},string:{group:"Types"},number:{group:"Types"},boolean:{group:"Types"},object:{group:"Types"},collator:{group:"Types"},format:{group:"Types"},image:{group:"Types"},"number-format":{group:"Types"},"to-string":{group:"Types"},"to-number":{group:"Types"},"to-boolean":{group:"Types"},"to-rgba":{group:"Color"},"to-color":{group:"Types"},rgb:{group:"Color"},rgba:{group:"Color"},get:{group:"Lookup"},has:{group:"Lookup"},length:{group:"Lookup"},properties:{group:"Feature data"},"feature-state":{group:"Feature data"},"geometry-type":{group:"Feature data"},id:{group:"Feature data"},zoom:{group:"Camera"},pitch:{group:"Camera"},"distance-from-center":{group:"Camera"},"heatmap-density":{group:"Heatmap"},"line-progress":{group:"Feature data"},"sky-radial-progress":{group:"sky"},accumulated:{group:"Feature data"},"+":{group:"Math"},"*":{group:"Math"},"-":{group:"Math"},"/":{group:"Math"},"%":{group:"Math"},"^":{group:"Math"},sqrt:{group:"Math"},log10:{group:"Math"},ln:{group:"Math"},log2:{group:"Math"},sin:{group:"Math"},cos:{group:"Math"},tan:{group:"Math"},asin:{group:"Math"},acos:{group:"Math"},atan:{group:"Math"},min:{group:"Math"},max:{group:"Math"},round:{group:"Math"},abs:{group:"Math"},ceil:{group:"Math"},floor:{group:"Math"},distance:{group:"Math"},"==":{group:"Decision"},"!=":{group:"Decision"},">":{group:"Decision"},"<":{group:"Decision"},">=":{group:"Decision"},"<=":{group:"Decision"},all:{group:"Decision"},any:{group:"Decision"},"!":{group:"Decision"},within:{group:"Decision"},"is-supported-script":{group:"String"},upcase:{group:"String"},downcase:{group:"String"},concat:{group:"String"},"resolved-locale":{group:"String"}}},fog:{range:{type:"array",default:[.5,10],minimum:-20,maximum:20,length:2,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"high-color":{type:"color","property-type":"data-constant",default:"#245cdf",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"space-color":{type:"color","property-type":"data-constant",default:["interpolate",["linear"],["zoom"],4,"#010b19",7,"#367ab9"],expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-blend":{type:"number","property-type":"data-constant",default:["interpolate",["linear"],["zoom"],4,.2,7,.1],minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"star-intensity":{type:"number","property-type":"data-constant",default:["interpolate",["linear"],["zoom"],5,.35,6,0],minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},projection:{name:{type:"enum",values:{albers:{},equalEarth:{},equirectangular:{},lambertConformalConic:{},mercator:{},naturalEarth:{},winkelTripel:{},globe:{}},default:"mercator",required:!0},center:{type:"array",length:2,value:"number","property-type":"data-constant",minimum:[-180,-90],maximum:[180,90],transition:!1,requires:[{name:["albers","lambertConformalConic"]}]},parallels:{type:"array",length:2,value:"number","property-type":"data-constant",minimum:[-90,-90],maximum:[90,90],transition:!1,requires:[{name:["albers","lambertConformalConic"]}]}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number","property-type":"data-constant",default:1,minimum:0,maximum:1e3,expression:{interpolated:!0,parameters:["zoom"]},transition:!0,requires:["source"]}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background","paint_sky"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!1,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!1,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-ambient-occlusion-intensity":{"property-type":"data-constant",type:"number",private:!0,default:0,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fill-extrusion-ambient-occlusion-radius":{"property-type":"data-constant",type:"number",private:!0,default:3,minimum:0,expression:{interpolated:!0,parameters:["zoom"]},transition:!0,requires:["fill-extrusion-edge-radius"]}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!1,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-pattern":{type:"resolvedImage",transition:!1,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"},"line-trim-offset":{type:"array",value:"number",length:2,default:[0,0],minimum:[0,0],maximum:[1,1],transition:!1,requires:[{source:"geojson",has:{lineMetrics:!0}}],"property-type":"constant"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_sky:{"sky-type":{type:"enum",values:{gradient:{},atmosphere:{}},default:"atmosphere",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun":{type:"array",value:"number",length:2,units:"degrees",minimum:[0,0],maximum:[360,180],transition:!1,requires:[{"sky-type":"atmosphere"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"sky-atmosphere-sun-intensity":{type:"number",requires:[{"sky-type":"atmosphere"}],default:10,minimum:0,maximum:100,transition:!1,"property-type":"data-constant"},"sky-gradient-center":{type:"array",requires:[{"sky-type":"gradient"}],value:"number",default:[0,0],length:2,units:"degrees",minimum:[0,0],maximum:[360,180],transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"sky-gradient-radius":{type:"number",requires:[{"sky-type":"gradient"}],default:90,minimum:0,maximum:180,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"sky-gradient":{type:"color",default:["interpolate",["linear"],["sky-radial-progress"],.8,"#87ceeb",1,"white"],transition:!1,requires:[{"sky-type":"gradient"}],expression:{interpolated:!0,parameters:["sky-radial-progress"]},"property-type":"color-ramp"},"sky-atmosphere-halo-color":{type:"color",default:"white",transition:!1,requires:[{"sky-type":"atmosphere"}],"property-type":"data-constant"},"sky-atmosphere-color":{type:"color",default:"white",transition:!1,requires:[{"sky-type":"atmosphere"}],"property-type":"data-constant"},"sky-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};function _S(i){if(i===!0||i===!1)return!0;if(!Array.isArray(i)||i.length===0)return!1;switch(i[0]){case"has":return i.length>=2&&i[1]!=="$id"&&i[1]!=="$type";case"in":return i.length>=3&&(typeof i[1]!="string"||Array.isArray(i[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return i.length!==3||Array.isArray(i[1])||Array.isArray(i[2]);case"any":case"all":for(const e of i.slice(1))if(!_S(e)&&typeof e!="boolean")return!1;return!0;default:return!0}}function dU(i,e="fill"){if(i==null)return{filter:()=>!0,needGeometry:!1,needFeature:!1};_S(i)||(i=mg(i));const t=i;let n=!0;try{n=fU(t)}catch{console.warn(`Failed to extract static filter. Filter will continue working, but at higher memory usage and slower framerate. +This is most likely a bug, please report this via https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.md +and paste the contents of this message in the report. +Thank you! +Filter Expression: +${JSON.stringify(t,null,2)} + `)}const r=AS[`filter_${e}`],s=Um(n,r);let o=null;if(s.result==="error")throw new Error(s.value.map(u=>`${u.key}: ${u.message}`).join(", "));o=(u,h,d)=>s.value.evaluate(u,h,{},d);let a=null,l=null;if(n!==t){const u=Um(t,r);if(u.result==="error")throw new Error(u.value.map(h=>`${h.key}: ${h.message}`).join(", "));a=(h,d,f,g,p)=>u.value.evaluate(h,d,{},f,void 0,void 0,g,p),l=!v0(u.value.expression)}o=o;const c=ES(n);return{filter:o,dynamicFilter:a||void 0,needGeometry:c,needFeature:!!l}}function fU(i){if(!$l(i))return i;let e=Bm(i);return IS(e),e=CS(e),e}function CS(i){if(!Array.isArray(i))return i;const e=mU(i);return e===!0?e:e.map(t=>CS(t))}function IS(i){let e=!1;const t=[];if(i[0]==="case"){for(let n=1;n",">=","<","<=","to-boolean"]);function mU(i){if(pU.has(i[0]))for(let e=1;ee?1:0}function ES(i){if(!Array.isArray(i))return!1;if(i[0]==="within")return!0;for(let e=1;e"||e==="<="||e===">="?yp(i[1],i[2],e):e==="any"?yU(i.slice(1)):e==="all"?["all"].concat(i.slice(1).map(mg)):e==="none"?["all"].concat(i.slice(1).map(mg).map(Ld)):e==="in"?uI(i[1],i.slice(2)):e==="!in"?Ld(uI(i[1],i.slice(2))):e==="has"?hI(i[1]):e==="!has"?Ld(hI(i[1])):e==="within"?i:!0}function yp(i,e,t){switch(i){case"$type":return[`filter-type-${t}`,e];case"$id":return[`filter-id-${t}`,e];default:return[`filter-${t}`,i,e]}}function yU(i){return["any"].concat(i.map(mg))}function uI(i,e){if(e.length===0)return!1;switch(i){case"$type":return["filter-type-in",["literal",e]];case"$id":return["filter-id-in",["literal",e]];default:return e.length>200&&!e.some(t=>typeof t!=typeof e[0])?["filter-in-large",i,["literal",e.sort(vU)]]:["filter-in-small",i,["literal",e]]}}function hI(i){switch(i){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",i]}}function Ld(i){return["!",i]}var AU=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function _U(i,e){const t={};for(const n in i)n!=="ref"&&(t[n]=i[n]);return AU.forEach(n=>{n in e&&(t[n]=e[n])}),t}function CU(i){i=i.slice();const e=Object.create(null);for(let t=0;t1?d[d.length-2].toLowerCase():"";if(f==g||f==g.replace("-","")||p+"-"+f==g){r=a?r:dI[g],d.pop(),p&&g.startsWith(p)&&d.pop();break}}!a&&typeof f=="number"&&(r=f);var m=d.join(iu).replace("Klokantech Noto Sans","Noto Sans");m.indexOf(iu)!==-1&&(m='"'+m+'"'),o.push(m)}n=gI[i]=[s,r,o]}return n[0]+iu+n[1]+iu+e+"px"+(t?"/"+t:"")+iu+n[2]},jm=Xb(IU);const wS="https://api.mapbox.com";function gA(i){const e="mapbox://";return i.indexOf(e)!==0?"":i.slice(e.length)}function EU(i,e,t){const n=gA(i);if(!n)return decodeURI(new URL(i,t).href);const r="sprites/";if(n.indexOf(r)!==0)throw new Error(`unexpected sprites url: ${i}`);const s=n.slice(r.length);return`${wS}/styles/v1/${s}/sprite?access_token=${e}`}function bS(i,e){const t=gA(i);if(!t)return decodeURI(new URL(i,location.href).href);const n="styles/";if(t.indexOf(n)!==0)throw new Error(`unexpected style url: ${i}`);const r=t.slice(n.length);return`${wS}/styles/v1/${r}?&access_token=${e}`}function $d(i,e,t,n){const r=new URL(i,n),s=gA(i);if(!s)return e&&(r.searchParams.has(t)||r.searchParams.set(t,e)),decodeURI(r.href);if(s==="mapbox.satellite"){const o=window.devicePixelRatio>=1.5?"@2x":"";return`https://api.mapbox.com/v4/${s}/{z}/{x}/{y}${o}.webp?access_token=${e}`}return`https://{a-d}.tiles.mapbox.com/v4/${s}/{z}/{x}/{y}.vector.pbf?access_token=${e}`}const pI={},mI={};let wU=0;function pA(i){return i.id||(i.id=wU++),i.id}function bU(i,e){return pA(i)+"."+ke(e)}function SU(i){let e=pI[i.id];return e||(e={},pI[pA(i)]=e),e}function xU(i){let e=mI[i.id];return e||(e={},mI[pA(i)]=e),e}function Ap(i){return i*Math.PI/180}const y0=function(){const i=[];for(let e=78271.51696402048;i.length<=24;e/=2)i.push(e);return i}();new Gc({extent:Re("EPSG:3857").getExtent(),resolutions:y0});function SS(i,e){if(typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof OffscreenCanvas<"u")return new OffscreenCanvas(i,e);const t=document.createElement("canvas");return t.width=i,t.height=e,t}function PU(i,e){let t=0;const n=e.length;for(;tr).then(o=>(o instanceof Request||(o=new Request(o)),o.headers.get("Accept")||o.headers.set("Accept","application/json"),n&&(n.request=o),fetch(o).then(function(a){return delete dl[e],a.ok?a.json():Promise.reject(new Error("Error fetching source "+e))}).catch(function(a){return delete dl[e],Promise.reject(new Error("Error fetching source "+e))})));return dl[e]=[r,s],s}function MU(i,e){if(typeof i=="string")if(i.trim().startsWith("{"))try{const t=JSON.parse(i);return Promise.resolve(t)}catch(t){return Promise.reject(t)}else return i=bS(i,e.accessToken),Cc("Style",i,e);else return Promise.resolve(i)}const vI={};function RU(i,e,t={}){const n=[e,JSON.stringify(i)].toString();let r=vI[n];if(!r||t.transformRequest){let s;t.transformRequest&&(s=(a,l)=>{const c=t.transformRequest&&t.transformRequest(l,"Tiles")||l;if(a instanceof Mw)a.setLoader((u,h,d)=>{eh(()=>c).then(f=>{fetch(f).then(g=>g.arrayBuffer()).then(g=>{const m=a.getFormat().readFeatures(g,{extent:u,featureProjection:d});a.setFeatures(m)}).catch(g=>a.setState(ge.ERROR))})});else{const u=a.getImage();eh(()=>c).then(h=>{h instanceof Request?fetch(h).then(d=>d.blob()).then(d=>{const f=URL.createObjectURL(d);u.addEventListener("load",()=>URL.revokeObjectURL(f)),u.addEventListener("error",()=>URL.revokeObjectURL(f)),u.src=f}).catch(d=>a.setState(ge.ERROR)):u.src=h})}});const o=i.url;if(o&&!i.tiles){const a=$d(o,t.accessToken,t.accessTokenParam||"access_token",e||location.href);if(o.startsWith("mapbox://"))r=Promise.resolve({tileJson:Object.assign({},i,{url:void 0,tiles:Yv(a)}),tileLoadFunction:s});else{const l={};r=Cc("Source",a,t,l).then(function(c){return c.tiles=c.tiles.map(function(u){return c.scheme==="tms"&&(u=u.replace("{y}","{-y}")),$d(u,t.accessToken,t.accessTokenParam||"access_token",l.request.url)}),Promise.resolve({tileJson:c,tileLoadFunction:s})})}}else i=Object.assign({},i,{tiles:i.tiles.map(function(a){return i.scheme==="tms"&&(a=a.replace("{y}","{-y}")),$d(a,t.accessToken,t.accessTokenParam||"access_token",e||location.href)})}),r=Promise.resolve({tileJson:Object.assign({},i),tileLoadFunction:s});vI[n]=r}return r}function yI(i,e,t,n){const r=document.createElement("canvas"),s=[2*t*e.pixelRatio+e.width,2*t*e.pixelRatio+e.height];r.width=s[0],r.height=s[1];const o=r.getContext("2d");o.drawImage(i,e.x,e.y,e.width,e.height,t*e.pixelRatio,t*e.pixelRatio,e.width,e.height);const a=o.getImageData(0,0,s[0],s[1]);o.globalCompositeOperation="destination-over",o.fillStyle=`rgba(${n.r*255},${n.g*255},${n.b*255},${n.a})`;const l=a.data;for(let c=0,u=a.width;c0&&o.arc(c,h,t*e.pixelRatio,0,2*Math.PI)}return o.fill(),r}function TU(i,e,t){const n=Math.max(0,Math.min(1,(t-i)/(e-i)));return n*n*(3-2*n)}function AI(i,e,t){const n=document.createElement("canvas");n.width=e.width,n.height=e.height;const r=n.getContext("2d");r.drawImage(i,e.x,e.y,e.width,e.height,0,0,e.width,e.height);const s=r.getImageData(0,0,e.width,e.height),o=s.data;for(let a=0,l=s.width;a0?(o[h+0]=Math.round(255*t.r*p),o[h+1]=Math.round(255*t.g*p),o[h+2]=Math.round(255*t.b*p),o[h+3]=Math.round(255*p)):o[h+3]=0}return r.putImageData(s,0,0),n}const LU=Array(256).join(" ");function zm(i,e){if(e>=.05){let t="";const n=i.split(` +`),r=LU.slice(0,Math.round(e/.1));for(let s=0,o=n.length;s0&&(t+=` +`),t+=n[s].split("").join(r);return t}return i}let _p;function xS(){return _p||(_p=SS(1,1).getContext("2d")),_p}function ra(i,e){return xS().measureText(i).width+(i.length-1)*e}const _I={};function Vm(i,e,t,n){if(i.indexOf(` +`)!==-1){const o=i.split(` +`),a=[];for(let l=0,c=o.length;l1){const a=xS();a.font=e;const c=a.measureText("M").width*t;let u="";const h=[];for(let d=0,f=o.length;d1;++d){const g=h[d];if(ra(g,n)0?ra(h[d-1],n):1/0,m=dc*.7&&ra(p,n)`${n.key}: ${n.message}`).join(", "));return t.value},Wm={},vg={zoom:0};let Od,Ip;function Be(i,e,t,n,r,s,o){const a=i.id;s||(s={},console.warn("No functionCache provided to getValue()")),s[a]||(s[a]={});const l=s[a];if(!l[t]){let c=(i[e]||Wm)[t];const u=AS[`${e}_${i.type}`][t];c===void 0&&(c=u.default);let h=aU(c);if(!h&&yS(c)&&(c=Y8(c,u),h=!0),h){const d=UU(c,u);l[t]=d.evaluate.bind(d)}else u.type=="color"&&(c=dr.parse(c)),l[t]=function(){return c}}return vg.zoom=n,l[t](vg,r,o)}function CI(i,e,t,n,r){return Be(i,"layout",`${n}-allow-overlap`,e,t,r)?Be(i,"layout",`${n}-ignore-placement`,e,t,r)?"none":"obstacle":"declutter"}function BU(i,e,t,n,r){return r||console.warn("No filterCache provided to evaluateFilter()"),i in r||(r[i]=dU(e).filter),vg.zoom=n,r[i](vg,t)}function sa(i,e){if(i){if(i.a===0||e===0)return;const t=i.a;return e=e===void 0?1:e,t===0?"transparent":"rgba("+Math.round(i.r*255/t)+","+Math.round(i.g*255/t)+","+Math.round(i.b*255/t)+","+t*e+")"}return i}const jU=/\{[^{}}]*\}/g;function Ep(i,e){return i.replace(jU,function(t){return e[t.slice(1,-1)]||""})}const zU={};function VU(i,e,t,n=y0,r=void 0,s=void 0,o=void 0,a=void 0){if(typeof e=="string"&&(e=JSON.parse(e)),e.version!=8)throw new Error("glStyle version 8 required.");zU[bU(e,i)]=Array.from(arguments);let l,c,u;if(s){if(typeof Image<"u"){const b=new Image;let S;eh(()=>s).then(R=>{R instanceof Request?fetch(R).then(P=>P.blob()).then(P=>{S=URL.createObjectURL(P),b.src=S}).catch(()=>{}):(b.crossOrigin="anonymous",b.src=R,S&&URL.revokeObjectURL(S))}),b.onload=function(){l=b,c=[b.width,b.height],i.changed(),b.onload=null}}else if(typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope){const b=self;b.postMessage({action:"loadImage",src:s}),b.addEventListener("message",function(R){R.data.action==="imageLoaded"&&R.data.src===s&&(l=R.data.image,c=[l.width,l.height])})}}const h=CU(e.layers),d={},f=[],g={},p={},m=SU(e),v=xU(e);let y;for(let b=0,S=h.length;b=j.maxzoom)continue;const Ce=j.filter;if(!Ce||BU(Ae,Ce,k,x,v)){let pe,Ie,z,oe,ne,Y;const Pe=se.index;if(D==3&&(j.type=="fill"||j.type=="fill-extrusion"))if(Ie=Be(j,"paint",j.type+"-opacity",x,k,m,O),j.type+"-pattern"in Te){const F=Be(j,"paint",j.type+"-pattern",x,k,m,O);if(F){const U=typeof F=="string"?Ep(F,P):F.toString();if(l&&r&&r[U]){++N,Y=C[N],(!Y||!Y.getFill()||Y.getStroke()||Y.getText())&&(Y=new Ee({fill:new $e}),C[N]=Y),z=Y.getFill(),Y.setZIndex(Pe);const H=U+"."+Ie;let te=p[H];if(!te){const ee=r[U],ue=SS(ee.width,ee.height),Me=ue.getContext("2d");Me.globalAlpha=Ie,Me.drawImage(l,ee.x,ee.y,ee.width,ee.height,0,0,ee.width,ee.height),te=Me.createPattern(ue,"repeat"),p[H]=te}z.setColor(te)}}}else pe=sa(Be(j,"paint",j.type+"-color",x,k,m,O),Ie),j.type+"-outline-color"in Te&&(ne=sa(Be(j,"paint",j.type+"-outline-color",x,k,m,O),Ie)),ne||(ne=pe),(pe||ne)&&(++N,Y=C[N],(!Y||pe&&!Y.getFill()||!pe&&Y.getFill()||ne&&!Y.getStroke()||!ne&&Y.getStroke()||Y.getText())&&(Y=new Ee({fill:pe?new $e:void 0,stroke:ne?new je:void 0}),C[N]=Y),pe&&(z=Y.getFill(),z.setColor(pe)),ne&&(oe=Y.getStroke(),oe.setColor(ne),oe.setWidth(.5)),Y.setZIndex(Pe));if(D!=1&&j.type=="line"){"line-pattern"in Te?pe=void 0:pe=sa(Be(j,"paint","line-color",x,k,m,O),Be(j,"paint","line-opacity",x,k,m,O));const F=Be(j,"paint","line-width",x,k,m,O);pe&&F>0&&(++N,Y=C[N],(!Y||!Y.getStroke()||Y.getFill()||Y.getText())&&(Y=new Ee({stroke:new je}),C[N]=Y),oe=Y.getStroke(),oe.setLineCap(Be(j,"layout","line-cap",x,k,m,O)),oe.setLineJoin(Be(j,"layout","line-join",x,k,m,O)),oe.setMiterLimit(Be(j,"layout","line-miter-limit",x,k,m,O)),oe.setColor(pe),oe.setWidth(F),oe.setLineDash(Te["line-dasharray"]?Be(j,"paint","line-dasharray",x,k,m,O).map(function(U){return U*F}):null),Y.setZIndex(Pe))}let tt=!1,E=null,M=0,G,W,X;if((D==1||D==2)&&"icon-image"in q){const F=Be(j,"layout","icon-image",x,k,m,O);if(F){G=typeof F=="string"?Ep(F,P):F.toString();let U;const H=a?a(i,G):void 0;if(l&&r&&r[G]||H){const te=Be(j,"layout","icon-rotation-alignment",x,k,m,O);if(D==2){const ee=b.getGeometry();if(ee.getFlatMidpoint||ee.getFlatMidpoints){const ue=ee.getExtent();if(Math.sqrt(Math.max(Math.pow((ue[2]-ue[0])/S,2),Math.pow((ue[3]-ue[1])/S,2)))>150){const be=ee.getType()==="MultiLineString"?ee.getFlatMidpoints():ee.getFlatMidpoint();if(Ip||(Od=[NaN,NaN],Ip=new qi("Point",Od,[],2,{},void 0)),U=Ip,Od[0]=be[0],Od[1]=be[1],Be(j,"layout","symbol-placement",x,k,m,O)==="line"&&te==="map"){const wt=ee.getStride(),Wt=ee.getFlatCoordinates();for(let mt=0,Ne=Wt.length-wt;mt=Fi&&be[0]<=Jn&&be[1]>=Ni&&be[1]<=Rn){M=Math.atan2(At-Bt,ti-ct);break}}}}}}if(D!==2||U){const ee=Be(j,"layout","icon-size",x,k,m,O),ue=Te["icon-color"]!==void 0?Be(j,"paint","icon-color",x,k,m,O):null;if(!ue||ue.a!==0){const Me=Be(j,"paint","icon-halo-color",x,k,m,O),be=Be(j,"paint","icon-halo-width",x,k,m,O);let pt=`${G}.${ee}.${be}.${Me}`;if(ue!==null&&(pt+=`.${ue}`),W=g[pt],!W){const wt=CI(j,x,k,"icon",m);let Wt;"icon-offset"in q&&(Wt=Be(j,"layout","icon-offset",x,k,m,O).slice(0),Wt[0]*=ee,Wt[1]*=-ee);let mt=ue?[ue.r*255,ue.g*255,ue.b*255,ue.a]:void 0;if(H){const Ne={color:mt,rotateWithView:te==="map",displacement:Wt,declutterMode:wt,scale:ee};typeof H=="string"?Ne.src=H:(Ne.img=H,Ne.imgSize=[H.width,H.height]),W=new Qt(Ne)}else{const Ne=r[G];let ct,At,ti;be?Ne.sdf?(ct=yI(AI(l,Ne,ue),{x:0,y:0,width:Ne.width,height:Ne.height,pixelRatio:Ne.pixelRatio},be,Me),mt=void 0):ct=yI(l,Ne,be,Me):(Ne.sdf?(u||(u=AI(l,{x:0,y:0,width:c[0],height:c[1]},{r:1,g:1,b:1,a:1})),ct=u):ct=l,At=[Ne.width,Ne.height],ti=[Ne.x,Ne.y]),W=new Qt({color:mt,img:ct,imgSize:c,size:At,offset:ti,rotateWithView:te==="map",scale:ee/Ne.pixelRatio,displacement:Wt,declutterMode:wt})}g[pt]=W}}W&&(++N,Y=C[N],(!Y||!Y.getImage()||Y.getFill()||Y.getStroke())&&(Y=new Ee,C[N]=Y),Y.setGeometry(U),W.setRotation(M+Ap(Be(j,"layout","icon-rotate",x,k,m,O))),W.setOpacity(Be(j,"paint","icon-opacity",x,k,m,O)),W.setAnchor(NU[Be(j,"layout","icon-anchor",x,k,m,O)]),Y.setImage(W),E=Y.getText(),Y.setText(void 0),Y.setZIndex(Pe),tt=!0,X=!1)}else X=!0}}}if(D==1&&j.type==="circle"){++N,Y=C[N],(!Y||!Y.getImage()||Y.getFill()||Y.getStroke())&&(Y=new Ee,C[N]=Y);const F="circle-radius"in Te?Be(j,"paint","circle-radius",x,k,m,O):5,U=sa(Be(j,"paint","circle-stroke-color",x,k,m,O),Be(j,"paint","circle-stroke-opacity",x,k,m,O)),H=Be(j,"paint","circle-translate",x,k,m,O),te=sa(Be(j,"paint","circle-color",x,k,m,O),Be(j,"paint","circle-opacity",x,k,m,O)),ee=Be(j,"paint","circle-stroke-width",x,k,m,O),ue=F+"."+U+"."+te+"."+ee+"."+H[0]+"."+H[1];W=g[ue],W||(W=new Ei({radius:F,displacement:[H[0],-H[1]],stroke:U&&ee>0?new je({width:ee,color:U}):void 0,fill:te?new $e({color:te}):void 0,declutterMode:"none"}),g[ue]=W),Y.setImage(W),E=Y.getText(),Y.setText(void 0),Y.setGeometry(void 0),Y.setZIndex(Pe),tt=!0}let K,ie,$,Q,Z,T;if("text-field"in q){Q=Math.round(Be(j,"layout","text-size",x,k,m,O));const F=Be(j,"layout","text-font",x,k,m,O);$=Be(j,"layout","text-line-height",x,k,m,O),ie=jm(o?o(F,e.metadata?e.metadata["ol:webfonts"]:void 0):F,Q,$),ie.includes("sans-serif")||(ie+=",sans-serif"),Z=Be(j,"layout","text-letter-spacing",x,k,m,O),T=Be(j,"layout","text-max-width",x,k,m,O);const U=Be(j,"layout","text-field",x,k,m,O);typeof U=="object"&&U.sections?U.sections.length===1?K=U.toString():K=U.sections.reduce((H,te,ee)=>{const ue=te.fontStack?te.fontStack.split(","):F,Me=jm(o?o(ue):ue,Q*(te.scale||1),$);let be=te.text;if(be===` +`)return H.push(` +`,""),H;if(D==2){H.push(zm(be,Z),Me);return}be=Vm(be,Me,T,Z).split(` +`);for(let pt=0,wt=be.length;pt0&&H.push(` +`,""),H.push(be[pt],Me);return H},[]):K=Ep(U,P).trim(),Ie=Be(j,"paint","text-opacity",x,k,m,O)}if(K&&Ie&&!X){tt||(++N,Y=C[N],(!Y||!Y.getText()||Y.getFill()||Y.getStroke())&&(Y=new Ee,C[N]=Y),Y.setImage(void 0),Y.setGeometry(void 0));const F=CI(j,x,k,"text",m);Y.getText()||Y.setText(E),E=Y.getText(),(!E||"getDeclutterMode"in E&&E.getDeclutterMode()!==F)&&(E=new Nr({padding:[2,2,2,2],declutterMode:F}),Y.setText(E));const U=Be(j,"layout","text-transform",x,k,m,O);U=="uppercase"?K=Array.isArray(K)?K.map((Bt,Fi)=>Fi%2?Bt:Bt.toUpperCase()):K.toUpperCase():U=="lowercase"&&(K=Array.isArray(K)?K.map((Bt,Fi)=>Fi%2?Bt:Bt.toLowerCase()):K.toLowerCase());const H=Array.isArray(K)?K:D==2?zm(K,Z):Vm(K,ie,T,Z);E.setText(H),E.setFont(ie),E.setRotation(Ap(Be(j,"layout","text-rotate",x,k,m,O)));const te=Be(j,"layout","text-anchor",x,k,m,O),ee=tt||D==1?"point":Be(j,"layout","symbol-placement",x,k,m,O);let ue;if(ee==="line-center"?(E.setPlacement("line"),ue="center"):E.setPlacement(ee),ee==="line"&&typeof E.setRepeat=="function"){const Bt=Be(j,"layout","symbol-spacing",x,k,m,O);E.setRepeat(Bt*2)}E.setOverflow(ee==="point");let Me=Be(j,"paint","text-halo-width",x,k,m,O);const be=Be(j,"layout","text-offset",x,k,m,O),pt=Be(j,"paint","text-translate",x,k,m,O);let wt=0,Wt=0;if(ee=="point"){ue="center",te.indexOf("left")!==-1?(ue="left",Wt=Me):te.indexOf("right")!==-1&&(ue="right",Wt=-Me);const Bt=Be(j,"layout","text-rotation-alignment",x,k,m,O);E.setRotateWithView(Bt=="map")}else E.setMaxAngle(Ap(Be(j,"layout","text-max-angle",x,k,m,O))*K.length/H.length),E.setRotateWithView(!1);E.setTextAlign(ue);let mt="middle";te.indexOf("bottom")==0?(mt="bottom",wt=-Me-.5*($-1)*Q):te.indexOf("top")==0&&(mt="top",wt=Me+.5*($-1)*Q),E.setTextBaseline(mt);const Ne=Be(j,"layout","text-justify",x,k,m,O);E.setJustify(Ne==="auto"?void 0:Ne),E.setOffsetX(be[0]*Q+Wt+pt[0]),E.setOffsetY(be[1]*Q+wt+pt[1]),_.setColor(sa(Be(j,"paint","text-color",x,k,m,O),Ie)),E.setFill(_);const ct=sa(Be(j,"paint","text-halo-color",x,k,m,O),Ie);if(ct&&Me>0){A.setColor(ct),Me*=2;const Bt=.5*Q;A.setWidth(Me<=Bt?Me:Bt),E.setStroke(A)}else E.setStroke(void 0);const At=Be(j,"layout","text-padding",x,k,m,O),ti=E.getPadding();At!==ti[0]&&(ti[0]=At,ti[1]=At,ti[2]=At,ti[3]=At),Y.setZIndex(Pe)}}}if(N>-1)return C.length=N+1,C};return i.setStyle(I),i.set("mapbox-source",y),i.set("mapbox-layers",f),i.set("mapbox-featurestate",i.get("mapbox-featurestate")||{}),I}function WU(i,e=512){return i.getExtent()?Jg({extent:i.getExtent(),tileSize:e,maxZoom:22}).getResolutions():y0}function YU(i,e){return e.accessToken||(e=Object.assign({},e),new URL(i).searchParams.forEach((n,r)=>{e.accessToken=n,e.accessTokenParam=r})),e}function Cl(i,e,t="",n={},r=void 0){let s,o,a,l,c=!0;return typeof t!="string"&&!Array.isArray(t)?(a=t,l=a.source||a.layers,n=a):l=t,typeof n=="string"?(s=n,a={}):(s=n.styleUrl,a=n),a.updateSource===!1&&(c=!1),r||(r=a.resolutions),!s&&typeof e=="string"&&!e.trim().startsWith("{")&&(s=e),s&&(s=s.startsWith("data:")?location.href:bS(s,a.accessToken),a=YU(s,a)),new Promise(function(u,h){MU(e,a).then(function(d){if(d.version!=8)return h(new Error("glStyle version 8 required."));if(!(i instanceof Di||i instanceof Ma))return h(new Error("Can only apply to VectorLayer or VectorTileLayer"));const f=i instanceof Ma?"vector":"geojson";if(l?Array.isArray(l)?o=d.layers.find(function(_){return _.id===l[0]}).source:o=l:(o=Object.keys(d.sources).find(function(_){return d.sources[_].type===f}),l=o),!o)return h(new Error(`No ${f} source found in the glStyle.`));function g(){if(!c)return Promise.resolve();if(i instanceof Ma)return XU(d.sources[o],s,a).then(function(b){const S=i.getSource();if(S?b!==S&&(S.setTileUrlFunction(b.getTileUrlFunction()),typeof S.setUrls=="function"&&typeof b.getUrls=="function"&&S.setUrls(b.getUrls()),S.format_||(S.format_=b.format_),S.getAttributions()||S.setAttributions(b.getAttributions()),S.getTileLoadFunction()===Tw&&S.setTileLoadFunction(b.getTileLoadFunction()),$r(S.getProjection(),b.getProjection())&&(S.tileGrid=b.getTileGrid())):i.setSource(b),!isFinite(i.getMaxResolution())&&!isFinite(i.getMinZoom())){const R=i.getSource().getTileGrid();i.setMaxResolution(R.getResolution(R.getMinZoom()))}});const _=d.sources[o];let C=i.getSource();(!C||C.get("mapbox-source")!==_)&&(C=KU(_,s,a));const I=i.getSource();return I?C!==I&&(I.getAttributions()||I.setAttributions(C.getAttributions()),I.format_||(I.format_=C.getFormat()),I.url_=C.getUrl()):i.setSource(C),Promise.resolve()}let p,m,v,y;function A(){if(!y&&(!d.sprite||m)){if(a.projection&&!r){const C=Re(a.projection).getUnits();C!=="m"&&(r=y0.map(I=>I/Ga[C]))}y=VU(i,d,l,r,m,v,kU,a.getImage),i.getStyle()?g().then(u).catch(h):h(new Error(`Nothing to show for source [${o}]`))}else y?(i.setStyle(y),g().then(u).catch(h)):h(new Error("Something went wrong trying to apply style."))}if(d.sprite){const _=new URL(EU(d.sprite,a.accessToken,s||location.href));p=window.devicePixelRatio>=1.5?.5:1;const C=p==.5?"@2x":"";let I=_.origin+_.pathname+C+".json"+_.search;new Promise(function(b,S){Cc("Sprite",I,a).then(b).catch(function(R){I=_.origin+_.pathname+".json"+_.search,Cc("Sprite",I,a).then(b).catch(S)})}).then(function(b){if(b===void 0&&h(new Error("No sprites found.")),m=b,v=_.origin+_.pathname+C+".png"+_.search,a.transformRequest){const S=a.transformRequest(v,"SpriteImage")||v;(S instanceof Request||S instanceof Promise)&&(v=S)}A()}).catch(function(b){h(new Error(`Sprites cannot be loaded: ${I}: ${b.message}`))})}else A()}).catch(h)})}function HU(i,e){const t=i.bounds;if(t){const n=$_([t[0],t[1]],e),r=$_([t[2],t[3]],e);return[n[0],n[1],r[0],r[1]]}return Re(e).getExtent()}function qU(i,e,t){const n=new jy({tileJSON:e,tileSize:i.tileSize||e.tileSize||512}),r=n.getTileJSON(),s=n.getTileGrid(),o=Re(t.projection||"EPSG:3857"),a=HU(r,o),l=o.getExtent(),c=r.minzoom||0,u=r.maxzoom||22,h={attributions:n.getAttributions(),projection:o,tileGrid:new Gc({origin:l?ms(l):s.getOrigin(0),extent:a||s.getExtent(),minZoom:c,resolutions:WU(o,e.tileSize).slice(0,u+1),tileSize:s.getTileSize(0)})};return Array.isArray(r.tiles)?h.urls=r.tiles:h.url=r.tiles,h}function XU(i,e,t){return new Promise(function(n,r){RU(i,e,t).then(function({tileJson:s,tileLoadFunction:o}){const a=qU(i,s,t);a.tileLoadFunction=o,a.format=new lg,n(new Hl(a))}).catch(r)})}function ZU(i){return`{bbox-${(i?i.getCode():"EPSG:3857").toLowerCase().replace(/[^a-z0-9]/g,"-")}}`}function KU(i,e,t){const n=t.projection?new Gm({dataProjection:t.projection}):new Gm,r=i.data,s={};if(typeof r=="string"){const a=$d(r,t.accessToken,t.accessTokenParam||"access_token",e||location.href);if(/\{bbox-[0-9a-z-]+\}/.test(a)){const c=(h,d,f)=>{const g=ZU(f);return a.replace(g,`${h.join(",")}`)},u=new gn({attributions:i.attribution,format:n,loader:(h,d,f,g,p)=>{const m=typeof c=="function"?c(h,d,f):c;Cc("GeoJSON",m,t).then(v=>{const y=u.getFormat().readFeatures(v,{featureProjection:f});u.addFeatures(y),g(y)}).catch(v=>{u.removeLoadedExtent(h),p()})},strategy:rk});return u.set("mapbox-source",i),u}const l=new gn({attributions:i.attribution,format:n,url:a,loader:(c,u,h,d,f)=>{Cc("GeoJSON",a,t).then(g=>{const p=l.getFormat().readFeatures(g,{featureProjection:h});l.addFeatures(p),d(p)}).catch(g=>{l.removeLoadedExtent(c),f()})}});return l}s.features=n.readFeatures(r,{featureProjection:"EPSG:3857"});const o=new gn(Object.assign({attributions:i.attribution,format:n},s));return o.set("mapbox-source",i),o}var JU=class extends Ma{constructor(e,t){if(!e.layer)throw new Error("ERROR PARAM_MISSING : layer");if(typeof e.layer!="string")throw new Error("ERROR WRONG TYPE : layer");typeof e.ssl>"u"&&(e.ssl=!0);var n=e.ssl===!1?"http://":"https://";if(!Bi.isConfigLoaded())throw new Error("ERROR : contract key configuration has to be loaded to load Geoportal layers.");var r=e.layer+"$GEOPORTAIL:GPP:TMS",s=Bi.configuration.getLayerConf(r);if(!s)throw new Error("ERROR : Layer ID not found into the catalogue !?");for(var o=null,a="",l=e.style,c=0;c{n.setState("ready"),this.set("mapbox-styles",e)}).catch(l=>{this.onStyleMapBoxError(l)})}onStyleMapBoxError(e){var t=this.getSource();t.setState("error"),console.error(e.message)}};window.ol&&window.ol.layer&&(window.ol.layer.GeoportalMapBox=JU);var Xn=class extends qs{constructor(e){super(e)}setPosition(e){var t=new $U(this);t.set(e)}};const QU=["top-left","top-right","bottom-left","bottom-right"];var Pg,PS,wa,hu,Mg,MS;class $U{constructor(e){td(this,Pg);td(this,wa);td(this,Mg);return this.caller=e,Jo(this,wa,hu).call(this,"top-left"),Jo(this,wa,hu).call(this,"top-right"),Jo(this,wa,hu).call(this,"bottom-left"),Jo(this,wa,hu).call(this,"bottom-right"),this}set(e){QU.includes(e.toLowerCase())&&(Jo(this,Mg,MS).call(this,e),document.getElementById("position-container-"+e).appendChild(this.caller.element))}}Pg=new WeakSet,PS=function(e){var t=document.getElementById("position-container-"+e);return!!t},wa=new WeakSet,hu=function(e){if(!Jo(this,Pg,PS).call(this,e)){var t=document.createElement("div");t.id="position-container-"+e,t.className="position-container-"+e;var n=this.caller.getMap().getOverlayContainerStopEvent();n.appendChild(t)}},Mg=new WeakSet,MS=function(e){const t=o=>{var a=document.getElementById("position-container-"+o),l=a.offsetWidth;return l},n=o=>{o.style.top="unset",o.style.bottom="unset",o.style.left="unset",o.style.right="unset"};n(this.caller.element),this.caller.element.style.position="unset";var r=Array.from(this.caller.element.getElementsByClassName("GPpanel"));if(r.length!==0){r.forEach(o=>{n(o)});var s=r[0];switch(e.toLowerCase()){case"top-left":s.style.top="0px",s.style.left=t(e)+"px";break;case"bottom-left":s.style.bottom="0px",s.style.left=t(e)+"px";break;case"top-right":s.style.top="0px",s.style.right=t(e)+"px";break;case"bottom-right":s.style.bottom="0px",s.style.right=t(e)+"px";break}}};var Xe={generate:function(){var i=Math.floor(Date.now());return function(){return i++}}(),name:function(i){var e=null,t=i.lastIndexOf("-");return t===-1?e=i:e=i.substring(0,t),e},index:function(i){var e=null,t=this.name(i),n=t.lastIndexOf("_");return n!==-1&&(e=t.substring(n+1)),e},uuid:function(i){var e=null,t=i.lastIndexOf("-");return t!==-1&&(e=parseInt(i.substring(t+1),10)),e}};/**! + * Sortable 1.15.2 + * @author RubaXa + * @author owenm + * @license MIT + */function II(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),t.push.apply(t,n)}return t}function fs(i){for(var e=1;e=0)&&(t[r]=i[r]);return t}function i6(i,e){if(i==null)return{};var t=t6(i,e),n,r;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(i);for(r=0;r=0)&&Object.prototype.propertyIsEnumerable.call(i,n)&&(t[n]=i[n])}return t}var n6="1.15.2";function ks(i){if(typeof window<"u"&&window.navigator)return!!navigator.userAgent.match(i)}var Zs=ks(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Yh=ks(/Edge/i),EI=ks(/firefox/i),Bu=ks(/safari/i)&&!ks(/chrome/i)&&!ks(/android/i),RS=ks(/iP(ad|od|hone)/i),TS=ks(/chrome/i)&&ks(/android/i),LS={capture:!1,passive:!1};function Mt(i,e,t){i.addEventListener(e,t,!Zs&&LS)}function _t(i,e,t){i.removeEventListener(e,t,!Zs&&LS)}function yg(i,e){if(e){if(e[0]===">"&&(e=e.substring(1)),i)try{if(i.matches)return i.matches(e);if(i.msMatchesSelector)return i.msMatchesSelector(e);if(i.webkitMatchesSelector)return i.webkitMatchesSelector(e)}catch{return!1}return!1}}function r6(i){return i.host&&i!==document&&i.host.nodeType?i.host:i.parentNode}function Mr(i,e,t,n){if(i){t=t||document;do{if(e!=null&&(e[0]===">"?i.parentNode===t&&yg(i,e):yg(i,e))||n&&i===t)return i;if(i===t)break}while(i=r6(i))}return null}var wI=/\s+/g;function Qn(i,e,t){if(i&&e)if(i.classList)i.classList[t?"add":"remove"](e);else{var n=(" "+i.className+" ").replace(wI," ").replace(" "+e+" "," ");i.className=(n+(t?" "+e:"")).replace(wI," ")}}function qe(i,e,t){var n=i&&i.style;if(n){if(t===void 0)return document.defaultView&&document.defaultView.getComputedStyle?t=document.defaultView.getComputedStyle(i,""):i.currentStyle&&(t=i.currentStyle),e===void 0?t:t[e];!(e in n)&&e.indexOf("webkit")===-1&&(e="-webkit-"+e),n[e]=t+(typeof t=="string"?"":"px")}}function ec(i,e){var t="";if(typeof i=="string")t=i;else do{var n=qe(i,"transform");n&&n!=="none"&&(t=n+" "+t)}while(!e&&(i=i.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(t)}function GS(i,e,t){if(i){var n=i.getElementsByTagName(e),r=0,s=n.length;if(t)for(;r=s:o=r<=s,!o)return n;if(n===as())break;n=Io(n,!1)}return!1}function Ic(i,e,t,n){for(var r=0,s=0,o=i.children;s2&&arguments[2]!==void 0?arguments[2]:{},r=n.evt,s=i6(n,d6);Hh.pluginEvent.bind(Ve)(e,t,fs({dragEl:fe,parentEl:si,ghostEl:Qe,rootEl:Xt,nextEl:ga,lastDownEl:tf,cloneEl:ni,cloneHidden:go,dragStarted:du,putSortable:Yi,activeSortable:Ve.active,originalEvent:r,oldIndex:Gl,oldDraggableIndex:zu,newIndex:tr,newDraggableIndex:ho,hideGhostForTarget:jS,unhideGhostForTarget:zS,cloneNowHidden:function(){go=!0},cloneNowShown:function(){go=!1},dispatchSortableEvent:function(a){wn({sortable:t,name:a,originalEvent:r})}},s))};function wn(i){h6(fs({putSortable:Yi,cloneEl:ni,targetEl:fe,rootEl:Xt,oldIndex:Gl,oldDraggableIndex:zu,newIndex:tr,newDraggableIndex:ho},i))}var fe,si,Qe,Xt,ga,tf,ni,go,Gl,tr,zu,ho,Dd,Yi,Il=!1,Ag=!1,_g=[],oa,Sr,Sp,xp,xI,PI,du,gl,Vu,Wu=!1,kd=!1,nf,rn,Pp=[],Ym=!1,Cg=[],A0=typeof document<"u",Fd=RS,MI=Yh||Zs?"cssFloat":"float",f6=A0&&!TS&&!RS&&"draggable"in document.createElement("div"),NS=function(){if(A0){if(Zs)return!1;var i=document.createElement("x");return i.style.cssText="pointer-events:auto",i.style.pointerEvents==="auto"}}(),US=function(e,t){var n=qe(e),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),s=Ic(e,0,t),o=Ic(e,1,t),a=s&&qe(s),l=o&&qe(o),c=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+Ci(s).width,u=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+Ci(o).width;if(n.display==="flex")return n.flexDirection==="column"||n.flexDirection==="column-reverse"?"vertical":"horizontal";if(n.display==="grid")return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(s&&a.float&&a.float!=="none"){var h=a.float==="left"?"left":"right";return o&&(l.clear==="both"||l.clear===h)?"vertical":"horizontal"}return s&&(a.display==="block"||a.display==="flex"||a.display==="table"||a.display==="grid"||c>=r&&n[MI]==="none"||o&&n[MI]==="none"&&c+u>r)?"vertical":"horizontal"},g6=function(e,t,n){var r=n?e.left:e.top,s=n?e.right:e.bottom,o=n?e.width:e.height,a=n?t.left:t.top,l=n?t.right:t.bottom,c=n?t.width:t.height;return r===a||s===l||r+o/2===a+c/2},p6=function(e,t){var n;return _g.some(function(r){var s=r[ar].options.emptyInsertThreshold;if(!(!s||mA(r))){var o=Ci(r),a=e>=o.left-s&&e<=o.right+s,l=t>=o.top-s&&t<=o.bottom+s;if(a&&l)return n=r}}),n},BS=function(e){function t(s,o){return function(a,l,c,u){var h=a.options.group.name&&l.options.group.name&&a.options.group.name===l.options.group.name;if(s==null&&(o||h))return!0;if(s==null||s===!1)return!1;if(o&&s==="clone")return s;if(typeof s=="function")return t(s(a,l,c,u),o)(a,l,c,u);var d=(o?a:l).options.group.name;return s===!0||typeof s=="string"&&s===d||s.join&&s.indexOf(d)>-1}}var n={},r=e.group;(!r||ef(r)!="object")&&(r={name:r}),n.name=r.name,n.checkPull=t(r.pull,!0),n.checkPut=t(r.put),n.revertClone=r.revertClone,e.group=n},jS=function(){!NS&&Qe&&qe(Qe,"display","none")},zS=function(){!NS&&Qe&&qe(Qe,"display","")};A0&&!TS&&document.addEventListener("click",function(i){if(Ag)return i.preventDefault(),i.stopPropagation&&i.stopPropagation(),i.stopImmediatePropagation&&i.stopImmediatePropagation(),Ag=!1,!1},!0);var aa=function(e){if(fe){e=e.touches?e.touches[0]:e;var t=p6(e.clientX,e.clientY);if(t){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]=e[r]);n.target=n.rootEl=t,n.preventDefault=void 0,n.stopPropagation=void 0,t[ar]._onDragOver(n)}}},m6=function(e){fe&&fe.parentNode[ar]._isOutsideThisEl(e.target)};function Ve(i,e){if(!(i&&i.nodeType&&i.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(i));this.el=i,this.options=e=Vs({},e),i[ar]=this;var t={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(i.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return US(i,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(o,a){o.setData("Text",a.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:Ve.supportPointer!==!1&&"PointerEvent"in window&&!Bu,emptyInsertThreshold:5};Hh.initializePlugins(this,i,t);for(var n in t)!(n in e)&&(e[n]=t[n]);BS(e);for(var r in this)r.charAt(0)==="_"&&typeof this[r]=="function"&&(this[r]=this[r].bind(this));this.nativeDraggable=e.forceFallback?!1:f6,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?Mt(i,"pointerdown",this._onTapStart):(Mt(i,"mousedown",this._onTapStart),Mt(i,"touchstart",this._onTapStart)),this.nativeDraggable&&(Mt(i,"dragover",this),Mt(i,"dragenter",this)),_g.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),Vs(this,l6())}Ve.prototype={constructor:Ve,_isOutsideThisEl:function(e){!this.el.contains(e)&&e!==this.el&&(gl=null)},_getDirection:function(e,t){return typeof this.options.direction=="function"?this.options.direction.call(this,e,t,fe):this.options.direction},_onTapStart:function(e){if(e.cancelable){var t=this,n=this.el,r=this.options,s=r.preventOnFilter,o=e.type,a=e.touches&&e.touches[0]||e.pointerType&&e.pointerType==="touch"&&e,l=(a||e).target,c=e.target.shadowRoot&&(e.path&&e.path[0]||e.composedPath&&e.composedPath()[0])||l,u=r.filter;if(w6(n),!fe&&!(/mousedown|pointerdown/.test(o)&&e.button!==0||r.disabled)&&!c.isContentEditable&&!(!this.nativeDraggable&&Bu&&l&&l.tagName.toUpperCase()==="SELECT")&&(l=Mr(l,r.draggable,n,!1),!(l&&l.animated)&&tf!==l)){if(Gl=vr(l),zu=vr(l,r.draggable),typeof u=="function"){if(u.call(this,e,l,this)){wn({sortable:t,rootEl:c,name:"filter",targetEl:l,toEl:n,fromEl:n}),Gn("filter",t,{evt:e}),s&&e.cancelable&&e.preventDefault();return}}else if(u&&(u=u.split(",").some(function(h){if(h=Mr(c,h.trim(),n,!1),h)return wn({sortable:t,rootEl:h,name:"filter",targetEl:l,fromEl:n,toEl:n}),Gn("filter",t,{evt:e}),!0}),u)){s&&e.cancelable&&e.preventDefault();return}r.handle&&!Mr(c,r.handle,n,!1)||this._prepareDragStart(e,a,l)}}},_prepareDragStart:function(e,t,n){var r=this,s=r.el,o=r.options,a=s.ownerDocument,l;if(n&&!fe&&n.parentNode===s){var c=Ci(n);if(Xt=s,fe=n,si=fe.parentNode,ga=fe.nextSibling,tf=n,Dd=o.group,Ve.dragged=fe,oa={target:fe,clientX:(t||e).clientX,clientY:(t||e).clientY},xI=oa.clientX-c.left,PI=oa.clientY-c.top,this._lastX=(t||e).clientX,this._lastY=(t||e).clientY,fe.style["will-change"]="all",l=function(){if(Gn("delayEnded",r,{evt:e}),Ve.eventCanceled){r._onDrop();return}r._disableDelayedDragEvents(),!EI&&r.nativeDraggable&&(fe.draggable=!0),r._triggerDragStart(e,t),wn({sortable:r,name:"choose",originalEvent:e}),Qn(fe,o.chosenClass,!0)},o.ignore.split(",").forEach(function(u){GS(fe,u.trim(),Mp)}),Mt(a,"dragover",aa),Mt(a,"mousemove",aa),Mt(a,"touchmove",aa),Mt(a,"mouseup",r._onDrop),Mt(a,"touchend",r._onDrop),Mt(a,"touchcancel",r._onDrop),EI&&this.nativeDraggable&&(this.options.touchStartThreshold=4,fe.draggable=!0),Gn("delayStart",this,{evt:e}),o.delay&&(!o.delayOnTouchOnly||t)&&(!this.nativeDraggable||!(Yh||Zs))){if(Ve.eventCanceled){this._onDrop();return}Mt(a,"mouseup",r._disableDelayedDrag),Mt(a,"touchend",r._disableDelayedDrag),Mt(a,"touchcancel",r._disableDelayedDrag),Mt(a,"mousemove",r._delayedDragTouchMoveHandler),Mt(a,"touchmove",r._delayedDragTouchMoveHandler),o.supportPointer&&Mt(a,"pointermove",r._delayedDragTouchMoveHandler),r._dragStartTimer=setTimeout(l,o.delay)}else l()}},_delayedDragTouchMoveHandler:function(e){var t=e.touches?e.touches[0]:e;Math.max(Math.abs(t.clientX-this._lastX),Math.abs(t.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){fe&&Mp(fe),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var e=this.el.ownerDocument;_t(e,"mouseup",this._disableDelayedDrag),_t(e,"touchend",this._disableDelayedDrag),_t(e,"touchcancel",this._disableDelayedDrag),_t(e,"mousemove",this._delayedDragTouchMoveHandler),_t(e,"touchmove",this._delayedDragTouchMoveHandler),_t(e,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(e,t){t=t||e.pointerType=="touch"&&e,!this.nativeDraggable||t?this.options.supportPointer?Mt(document,"pointermove",this._onTouchMove):t?Mt(document,"touchmove",this._onTouchMove):Mt(document,"mousemove",this._onTouchMove):(Mt(fe,"dragend",this),Mt(Xt,"dragstart",this._onDragStart));try{document.selection?rf(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(e,t){if(Il=!1,Xt&&fe){Gn("dragStarted",this,{evt:t}),this.nativeDraggable&&Mt(document,"dragover",m6);var n=this.options;!e&&Qn(fe,n.dragClass,!1),Qn(fe,n.ghostClass,!0),Ve.active=this,e&&this._appendGhost(),wn({sortable:this,name:"start",originalEvent:t})}else this._nulling()},_emulateDragOver:function(){if(Sr){this._lastX=Sr.clientX,this._lastY=Sr.clientY,jS();for(var e=document.elementFromPoint(Sr.clientX,Sr.clientY),t=e;e&&e.shadowRoot&&(e=e.shadowRoot.elementFromPoint(Sr.clientX,Sr.clientY),e!==t);)t=e;if(fe.parentNode[ar]._isOutsideThisEl(e),t)do{if(t[ar]){var n=void 0;if(n=t[ar]._onDragOver({clientX:Sr.clientX,clientY:Sr.clientY,target:e,rootEl:t}),n&&!this.options.dragoverBubble)break}e=t}while(t=t.parentNode);zS()}},_onTouchMove:function(e){if(oa){var t=this.options,n=t.fallbackTolerance,r=t.fallbackOffset,s=e.touches?e.touches[0]:e,o=Qe&&ec(Qe,!0),a=Qe&&o&&o.a,l=Qe&&o&&o.d,c=Fd&&rn&&SI(rn),u=(s.clientX-oa.clientX+r.x)/(a||1)+(c?c[0]-Pp[0]:0)/(a||1),h=(s.clientY-oa.clientY+r.y)/(l||1)+(c?c[1]-Pp[1]:0)/(l||1);if(!Ve.active&&!Il){if(n&&Math.max(Math.abs(s.clientX-this._lastX),Math.abs(s.clientY-this._lastY))=0&&(wn({rootEl:si,name:"add",toEl:si,fromEl:Xt,originalEvent:e}),wn({sortable:this,name:"remove",toEl:si,originalEvent:e}),wn({rootEl:si,name:"sort",toEl:si,fromEl:Xt,originalEvent:e}),wn({sortable:this,name:"sort",toEl:si,originalEvent:e})),Yi&&Yi.save()):tr!==Gl&&tr>=0&&(wn({sortable:this,name:"update",toEl:si,originalEvent:e}),wn({sortable:this,name:"sort",toEl:si,originalEvent:e})),Ve.active&&((tr==null||tr===-1)&&(tr=Gl,ho=zu),wn({sortable:this,name:"end",toEl:si,originalEvent:e}),this.save()))),this._nulling()},_nulling:function(){Gn("nulling",this),Xt=fe=si=Qe=ga=ni=tf=go=oa=Sr=du=tr=ho=Gl=zu=gl=Vu=Yi=Dd=Ve.dragged=Ve.ghost=Ve.clone=Ve.active=null,Cg.forEach(function(e){e.checked=!0}),Cg.length=Sp=xp=0},handleEvent:function(e){switch(e.type){case"drop":case"dragend":this._onDrop(e);break;case"dragenter":case"dragover":fe&&(this._onDragOver(e),v6(e));break;case"selectstart":e.preventDefault();break}},toArray:function(){for(var e=[],t,n=this.el.children,r=0,s=n.length,o=this.options;rr.right+s||i.clientY>n.bottom&&i.clientX>n.left:i.clientY>r.bottom+s||i.clientX>n.right&&i.clientY>n.top}function C6(i,e,t,n,r,s,o,a){var l=n?i.clientY:i.clientX,c=n?t.height:t.width,u=n?t.top:t.left,h=n?t.bottom:t.right,d=!1;if(!o){if(a&&nfu+c*s/2:lh-nf)return-Vu}else if(l>u+c*(1-r)/2&&lh-c*s/2)?l>u+c/2?1:-1:0}function I6(i){return vr(fe)this._onMapMoveEnd(e)),this._listeners.onAddListener=e.getLayers().on("add",n=>{var r=n.element,s;r.hasOwnProperty("gpLayerId")?s=r.gpLayerId:(s=this._layerId,r.gpLayerId=s,this._layerId++),this._layers[s]||this.addLayer(r)}),this._listeners.onRemoveListener=e.getLayers().on("remove",n=>{var r=n.element,s=r.gpLayerId;this._layers[s]&&this.removeLayer(r)});else{gi(this._listeners.onMoveListener),gi(this._listeners.onAddListener),gi(this._listeners.onRemoveListener);for(var t=this._layersOrder.length-1;t>=0;t--)this._layersOrder[t].layer.setZIndex(0)}super.setMap(e),this.options.position&&this.setPosition(this.options.position)}addLayer(e,t){var n=this.getMap();if(t=t||{},!e){la.log("[ERROR] LayerSwitcher:addLayer - missing layer parameter");return}var r=e.gpLayerId;if(typeof r>"u"){la.trace("[WARN] LayerSwitcher:addLayer - configuration cannot be set for this layer (layer id not found)",e);return}var s=!1;if(n.getLayers().forEach(m=>{m.gpLayerId===r&&(s=!0)}),!s){la.log("[ERROR] LayerSwitcher:addLayer - configuration cannot be set for ",e," layer (layer is not in map.getLayers() )");return}if(this._layers[r]){for(var d in t)t.hasOwnProperty(d)&&(this._layers[r][d]=t[d]);if(t.title){var f=document.getElementById(this._addUID("GPname_ID_"+r));f&&(f.innerHTML=t.title,f.title=t.description||t.title)}var g=document.getElementById(this._addUID("GPinfo_ID_"+r));if(!document.getElementById(this._addUID("GPinfo_ID_"+r))&&t.description){var p=document.getElementById(this._addUID("GPadvancedTools_ID_"+r));p&&p.appendChild(this._createAdvancedToolInformationElement({id:r}))}g&&g.className==="GPlayerInfoOpened"&&(document.getElementById(this._addUID("GPlayerInfoPanel")).className="GPlayerInfoPanelClosed",g.className="GPlayerInfo")}else{var o=this.getLayerInfo(e)||{},a=e.getOpacity(),l=e.getVisible(),c=this.isInRange(e,n),u={layer:e,id:r,opacity:a??1,visibility:l??!0,inRange:c??!0,title:t.title!=null?t.title:o._title||r,description:t.description||o._description||null,legends:t.legends||o._legends||[],metadata:t.metadata||o._metadata||[],quicklookUrl:t.quicklookUrl||o._quicklookUrl||null};this._layers[r]=u;var h=this._createLayerDiv(u);this._layers[r].div=h,e.getZIndex&&e.getZIndex()!==0&&typeof e.getZIndex()<"u"||e._forceNullzIndex?this._updateLayersOrder():(this._layersOrder.unshift(u),this._lastZIndex++,e.setZIndex(this._lastZIndex),this._layerListContainer.insertBefore(h,this._layerListContainer.firstChild)),this._listeners.updateLayerOpacity=e.on("change:opacity",m=>this._updateLayerOpacity(m)),this._listeners.updateLayerVisibility=e.on("change:visible",m=>this._updateLayerVisibility(m)),this._layers[r].onZIndexChangeEvent==null&&(this._layers[r].onZIndexChangeEvent=e.on("change:zIndex",()=>this._updateLayersOrder()))}}removeLayer(e){if(e){gi(this._listeners.updateLayerOpacity),gi(this._listeners.updateLayerVisibility),la.trace(e);var t=e.gpLayerId,n=document.getElementById(this._addUID("GPlayersList")).firstChild,r=document.getElementById(this._addUID("GPinfo_ID_"+t));r&&r.className==="GPlayerInfoOpened"&&(document.getElementById(this._addUID("GPlayerInfoPanel")).className="GPlayerInfoPanelClosed",r.className="GPlayerInfo");var s=document.getElementById(this._addUID("GPlayerSwitcher_ID_"+t));s&&n.removeChild(s);var o=Math.abs(e.getZIndex()-this._lastZIndex);this._layersOrder.splice(o,1),this._lastZIndex--;for(var a=this._layersOrder,l=0;l{var c;l.hasOwnProperty("gpLayerId")?c=l.gpLayerId:(c=this._layerId,l.gpLayerId=c,this._layerId++);var u=this.getLayerInfo(l)||{};if(this._layers[c])this._layers[c].opacity=l.getOpacity(),this._layers[c].visibility=l.getVisible(),this._layers[c].inRange=this.isInRange(l,e);else{var h=l.getOpacity(),d=l.getVisible(),f=this.isInRange(l,e),g={layer:l,id:c,opacity:h??1,visibility:d??!0,inRange:f??!0,title:u._title||c,description:u._description||null,legends:u._legends||[],metadata:u._metadata||[],quicklookUrl:u._quicklookUrl||null};this._layers[c]=g}if(this._listeners.updateLayerOpacity=l.on("change:opacity",m=>this._updateLayerOpacity(m)),this._listeners._updateLayerVisibility=l.on("change:visible",m=>this._updateLayerVisibility(m)),l.getZIndex!==void 0){var p=l.getZIndex()||0;(!this._layersIndex[p]||!Array.isArray(this._layersIndex[p]))&&(this._layersIndex[p]=[]),this._layersIndex[p].push(this._layers[c])}});for(var t in this._layersIndex)if(this._layersIndex.hasOwnProperty(t))for(var n=this._layersIndex[t],r=0;rthis._updateLayersOrder()));for(var s=0;s1&&(t=1),t<0&&(t=0);var n=e.target.gpLayerId,r=document.getElementById(this._addUID("GPopacityValueDiv_ID_"+n));r&&(r.value=Math.round(t*100));var s=document.getElementById(this._addUID("GPopacityValue_ID_"+n));s&&(s.innerHTML=Math.round(t*100)+"%")}_onVisibilityLayerClick(e){var t=e.target.id,n=Xe.index(t),r=this._layers[n].layer;r.setVisible(e.target.checked)}_updateLayerVisibility(e){var t=e.target.getVisible(),n=e.target.gpLayerId,r=document.getElementById(this._addUID("GPvisibility_ID_"+n));r&&(r.checked=t)}_updateLayersOrder(){var e=this.getMap();if(e){this._layersIndex={};var t,n;e.getLayers().forEach(c=>{n=c.gpLayerId,gi(this._layers[n].onZIndexChangeEvent),this._layers[n].onZIndexChangeEvent=null,t=null,c.getZIndex!==void 0&&(t=c.getZIndex(),(!this._layersIndex[t]||!Array.isArray(this._layersIndex[t]))&&(this._layersIndex[t]=[]),this._layersIndex[t].push(this._layers[n]))}),this._lastZIndex=0,this._layersOrder=[];for(var r in this._layersIndex)if(this._layersIndex.hasOwnProperty(r))for(var s=this._layersIndex[r],o=0;othis._updateLayersOrder()));if(this._layerListContainer){for(;this._layerListContainer.firstChild;)this._layerListContainer.removeChild(this._layerListContainer.firstChild);for(var a=0;athis._updateLayersOrder()))}e.updateSize()}_onMapMoveEnd(e){e.getLayers().forEach(t=>{var n=t.gpLayerId;if(this._layers[n]){var r=this._layers[n],s;this.isInRange(t,e)&&!r.inRange?(r.inRange=!0,s=document.getElementById(this._addUID("GPlayerSwitcher_ID_"+n)),s.classList.remove("outOfRange")):!this.isInRange(t,e)&&r.inRange&&(r.inRange=!1,s=document.getElementById(this._addUID("GPlayerSwitcher_ID_"+n)),s.classList.add("outOfRange"))}})}getLayerDOMId(e){var t=null;return this.getMap().getLayers().forEach(n=>{n===e&&(t=n.hasOwnProperty("gpLayerId")?n.gpLayerId:null)}),t!==null?this._addUID("GPlayerSwitcher_ID_"+t):null}isInRange(e,t){if(t){var n=t.getView().getResolution();if(n>e.getMaxResolution()||n"u"?!0:e.active,e.defaultEvent&&typeof e.defaultEvent!="string"){ci.log("[ERROR] GetFeatureInfo:_initialize - defaultEvent parameter should be a string");return}if(this._defaultEvent=e.defaultEvent||"singleclick",!this._isValidEvent(this._defaultEvent)){ci.log("[ERROR] GetFeatureInfo:_initialize - _defaultEvent '"+this._defaultEvent+"' is not a valid event");return}if(e.defaultInfoFormat&&typeof e.defaultInfoFormat!="string"){ci.log("[ERROR] GetFeatureInfo:_initialize - defaultInfoFormat parameter should be a string");return}if(this._defaultInfoFormat=e.defaultInfoFormat||"text/html",e.cursorStyle&&typeof e.cursorStyle!="string"){ci.log("[ERROR] GetFeatureInfo:_initialize - cursorStyle parameter should be a string");return}if(this._cursorStyle=e.cursorStyle||"pointer",e.proxyUrl){if(typeof e.proxyUrl!="string"){ci.log("[ERROR] GetFeatureInfo:_initialize - proxyUrl parameter should be a string");return}this._proxyUrl=e.proxyUrl}if(e.noProxyDomains){if(!Array.isArray(e.noProxyDomains)){ci.log("[ERROR] GetFeatureInfo:_initialize - noProxyDomains parameter should be a array");return}this._noProxyDomains=e.noProxyDomains}if(typeof e.autoPan<"u"&&typeof e.autoPan!="boolean"){ci.log("[ERROR] GetFeatureInfo:_initialize - autoPan parameter should be a boolean");return}if(this._autoPan=typeof e.autoPan>"u"?!0:e.autoPan,e.autoPanAnimation){if(e.autoPanAnimation.duration&&typeof e.autoPanAnimation.duration!="number"){ci.log("[ERROR] GetFeatureInfo:_initialize - autoPanAnimation parameter is invalid : duration should be a number.");return}if(e.autoPanAnimation.easing&&typeof e.autoPanAnimation.easing!="function"){ci.log("[ERROR] GetFeatureInfo:_initialize - autoPanAnimation parameter is invalid : easing should be a ol.easing function or a custom function.");return}this._autoPanAnimation=e.autoPanAnimation}if(e.autoPanMargin){if(typeof e.autoPanMargin!="number"){ci.log("[ERROR] GetFeatureInfo:_initialize - autoPanMargin parameter should be a number");return}this._autoPanMargin=e.autoPanMargin}if(!Array.isArray(t)){ci.log("[ERROR] GetFeatureInfo:_initialize - layers parameter should be an array");return}this._setLayers(t),this._activateGetFeatureInfoButton=null}setMap(e){if(e){if(this._updateEvents(e),this._cursorStyle&&this._active&&this._activateCursor(!0,e),e.getLayers().on("remove",n=>{for(var r=0;r{var r=Gu.getLayerFormat(n);!this._hasLayer(n)&&r==="vector"&&(this._layers.push({obj:n}),t=!0)}),t&&this._updateEvents(e),e.getLayers().on("add",n=>{var r=Gu.getLayerFormat(n.element);r==="vector"&&this._layers.push({obj:n.element}),this._updateEvents(e)})}}else this._clearEvents(),this._activateCursor(!1);super.setMap(e),this.options.position&&this.setPosition(this.options.position)}getLayers(){return this._layers}setDefaultEvent(e){if(typeof e!="string"){ci.log("[ERROR] GetFeatureInfo:setDefaultEvent - eventName parameter should be a string");return}if(!e||!this._isValidEvent(e)){ci.log("[ERROR] GetFeatureInfo:setDefaultEvent - event '"+e+"' is not allowed.");return}this._defaultEvent=e,this._updateEvents()}setCursorStyle(e){if(typeof e!="string"){ci.log("[ERROR] GetFeatureInfo:setCursorStyle - cursorStyle parameter should be a string");return}this._active&&(!this._cursorStyle&&e?this._activateCursor(!0):this._cursorStyle&&!e&&this._activateCursor(!1)),this._cursorStyle=e}setActive(e){this._setActive(e),this._activateGetFeatureInfoButton.setAttribute("aria-pressed",e)}_setActive(e){if(typeof e!="boolean"){ci.log("[ERROR] GetFeatureInfo:_setActive - active parameter should be a boolean");return}this._active!==e&&(this._active=e,this._cursorStyle&&this._activateCursor(e))}isActive(){return this._active}setHidden(e){this.element.style.visibility=e?"hidden":""}isHidden(){return this.element.style.visibility==="hidden"}setLayers(e){this._setLayers(e),this._updateEvents()}_isValidEvent(e){return Object.keys(this._events).indexOf(e)>-1}_activateEvent(e,t){var n=this,r=function(s){Gu.onDisplayFeatureInfo(s,n)};e==="contextmenu"?t.getViewport().addEventListener(e,r):t.on(e,r),this._eventsHandler[e]=r,this._events[e]=!0}_deactivateEvent(e,t){e==="contextmenu"?t.getViewport().removeEventListener(e,this._eventsHandler[e]):t.un(e,this._eventsHandler[e]),delete this._eventsHandler[e],this._events[e]=!1}_updateEvents(e){e||(e=this.getMap());for(var t=[],n=0;n=0?this._activateEvent(s,e):this._events[s]&&t.indexOf(s)<0&&this._deactivateEvent(s,e)}_clearEvents(){var e=this.getMap();for(var t in this._events)this._events[t]&&this._deactivateEvent(t,e)}_hasLayer(e){for(var t=0;t{for(var c=n.getLayers(),u=0;u