/usr/share/grafana/public/build
"use strict";(self.webpackChunkgrafana=self.webpackChunkgrafana||[]).push([[3326],{409:(gt,q,o)=>{o.d(q,{A:()=>B,n:()=>W});var b=o(89352),y=o(49825);function B(){return{variables:{},properties:{},resolution:NaN,featureId:null,geometryType:""}}function W(u,c,n){const e=(0,y.qg)(u,c,n);return v(e,n)}function v(u,c){if(u instanceof y._D){if(u.type===y.mE&&typeof u.value=="string"){const e=(0,b.sH)(u.value);return function(){return e}}return function(){return u.value}}const n=u.operator;switch(n){case y.ZD.Number:case y.ZD.String:case y.ZD.Coalesce:return C(u,c);case y.ZD.Get:case y.ZD.Var:case y.ZD.Has:return d(u,c);case y.ZD.Id:return e=>e.featureId;case y.ZD.GeometryType:return e=>e.geometryType;case y.ZD.Concat:{const e=u.args.map(i=>v(i,c));return i=>"".concat(...e.map(a=>a(i).toString()))}case y.ZD.Resolution:return e=>e.resolution;case y.ZD.Any:case y.ZD.All:case y.ZD.Between:case y.ZD.In:case y.ZD.Not:return O(u,c);case y.ZD.Equal:case y.ZD.NotEqual:case y.ZD.LessThan:case y.ZD.LessThanOrEqualTo:case y.ZD.GreaterThan:case y.ZD.GreaterThanOrEqualTo:return A(u,c);case y.ZD.Multiply:case y.ZD.Divide:case y.ZD.Add:case y.ZD.Subtract:case y.ZD.Clamp:case y.ZD.Mod:case y.ZD.Pow:case y.ZD.Abs:case y.ZD.Floor:case y.ZD.Ceil:case y.ZD.Round:case y.ZD.Sin:case y.ZD.Cos:case y.ZD.Atan:case y.ZD.Sqrt:return x(u,c);case y.ZD.Case:return M(u,c);case y.ZD.Match:return t(u,c);case y.ZD.Interpolate:return s(u,c);case y.ZD.ToString:return r(u,c);default:throw new Error(`Unsupported operator ${n}`)}}function C(u,c){const n=u.operator,e=u.args.length,i=new Array(e);for(let a=0;a<e;++a)i[a]=v(u.args[a],c);switch(n){case y.ZD.Coalesce:return a=>{for(let g=0;g<e;++g){const m=i[g](a);if(typeof m<"u"&&m!==null)return m}throw new Error("Expected one of the values to be non-null")};case y.ZD.Number:case y.ZD.String:return a=>{for(let g=0;g<e;++g){const m=i[g](a);if(typeof m===n)return m}throw new Error(`Expected one of the values to be a ${n}`)};default:throw new Error(`Unsupported assertion operator ${n}`)}}function d(u,c){const e=u.args[0].value;switch(u.operator){case y.ZD.Get:return i=>{const a=u.args;let g=i.properties[e];for(let m=1,R=a.length;m<R;++m){const l=a[m].value;g=g[l]}return g};case y.ZD.Var:return i=>i.variables[e];case y.ZD.Has:return i=>{const a=u.args;if(!(e in i.properties))return!1;let g=i.properties[e];for(let m=1,R=a.length;m<R;++m){const l=a[m].value;if(!g||!Object.hasOwn(g,l))return!1;g=g[l]}return!0};default:throw new Error(`Unsupported accessor operator ${u.operator}`)}}function A(u,c){const n=u.operator,e=v(u.args[0],c),i=v(u.args[1],c);switch(n){case y.ZD.Equal:return a=>e(a)===i(a);case y.ZD.NotEqual:return a=>e(a)!==i(a);case y.ZD.LessThan:return a=>e(a)<i(a);case y.ZD.LessThanOrEqualTo:return a=>e(a)<=i(a);case y.ZD.GreaterThan:return a=>e(a)>i(a);case y.ZD.GreaterThanOrEqualTo:return a=>e(a)>=i(a);default:throw new Error(`Unsupported comparison operator ${n}`)}}function O(u,c){const n=u.operator,e=u.args.length,i=new Array(e);for(let a=0;a<e;++a)i[a]=v(u.args[a],c);switch(n){case y.ZD.Any:return a=>{for(let g=0;g<e;++g)if(i[g](a))return!0;return!1};case y.ZD.All:return a=>{for(let g=0;g<e;++g)if(!i[g](a))return!1;return!0};case y.ZD.Between:return a=>{const g=i[0](a),m=i[1](a),R=i[2](a);return g>=m&&g<=R};case y.ZD.In:return a=>{const g=i[0](a);for(let m=1;m<e;++m)if(g===i[m](a))return!0;return!1};case y.ZD.Not:return a=>!i[0](a);default:throw new Error(`Unsupported logical operator ${n}`)}}function x(u,c){const n=u.operator,e=u.args.length,i=new Array(e);for(let a=0;a<e;++a)i[a]=v(u.args[a],c);switch(n){case y.ZD.Multiply:return a=>{let g=1;for(let m=0;m<e;++m)g*=i[m](a);return g};case y.ZD.Divide:return a=>i[0](a)/i[1](a);case y.ZD.Add:return a=>{let g=0;for(let m=0;m<e;++m)g+=i[m](a);return g};case y.ZD.Subtract:return a=>i[0](a)-i[1](a);case y.ZD.Clamp:return a=>{const g=i[0](a),m=i[1](a);if(g<m)return m;const R=i[2](a);return g>R?R:g};case y.ZD.Mod:return a=>i[0](a)%i[1](a);case y.ZD.Pow:return a=>Math.pow(i[0](a),i[1](a));case y.ZD.Abs:return a=>Math.abs(i[0](a));case y.ZD.Floor:return a=>Math.floor(i[0](a));case y.ZD.Ceil:return a=>Math.ceil(i[0](a));case y.ZD.Round:return a=>Math.round(i[0](a));case y.ZD.Sin:return a=>Math.sin(i[0](a));case y.ZD.Cos:return a=>Math.cos(i[0](a));case y.ZD.Atan:return e===2?a=>Math.atan2(i[0](a),i[1](a)):a=>Math.atan(i[0](a));case y.ZD.Sqrt:return a=>Math.sqrt(i[0](a));default:throw new Error(`Unsupported numeric operator ${n}`)}}function M(u,c){const n=u.args.length,e=new Array(n);for(let i=0;i<n;++i)e[i]=v(u.args[i],c);return i=>{for(let a=0;a<n-1;a+=2)if(e[a](i))return e[a+1](i);return e[n-1](i)}}function t(u,c){const n=u.args.length,e=new Array(n);for(let i=0;i<n;++i)e[i]=v(u.args[i],c);return i=>{const a=e[0](i);for(let g=1;g<n-1;g+=2)if(a===e[g](i))return e[g+1](i);return e[n-1](i)}}function s(u,c){const n=u.args.length,e=new Array(n);for(let i=0;i<n;++i)e[i]=v(u.args[i],c);return i=>{const a=e[0](i),g=e[1](i);let m,R;for(let h=2;h<n;h+=2){const l=e[h](i);let _=e[h+1](i);const I=Array.isArray(_);if(I&&(_=(0,b.fu)(_)),l>=g)return h===2?_:I?D(a,g,m,R,l,_):P(a,g,m,R,l,_);m=l,R=_}return R}}function r(u,c){const n=u.operator,e=u.args.length,i=new Array(e);for(let a=0;a<e;++a)i[a]=v(u.args[a],c);switch(n){case y.ZD.ToString:return a=>{const g=i[0](a);return u.args[0].type===y.mE?(0,b.dI)(g):g.toString()};default:throw new Error(`Unsupported convert operator ${n}`)}}function P(u,c,n,e,i,a){const g=i-n;if(g===0)return e;const m=c-n,R=u===1?m/g:(Math.pow(u,m)-1)/(Math.pow(u,g)-1);return e+R*(a-e)}function D(u,c,n,e,i,a){if(i-n===0)return e;const m=(0,b.eE)(e),R=(0,b.eE)(a);let h=R[2]-m[2];h>180?h-=360:h<-180&&(h+=360);const l=[P(u,c,n,m[0],i,R[0]),P(u,c,n,m[1],i,R[1]),m[2]+P(u,c,n,0,i,h),P(u,c,n,e[3],i,a[3])];return(0,b.cD)(l)}},835:(gt,q,o)=>{o.d(q,{x:()=>b});const b={GENERATE_POLYGON_BUFFERS:"GENERATE_POLYGON_BUFFERS",GENERATE_POINT_BUFFERS:"GENERATE_POINT_BUFFERS",GENERATE_LINE_STRING_BUFFERS:"GENERATE_LINE_STRING_BUFFERS"}},953:(gt,q,o)=>{o.d(q,{A:()=>y});class b{constructor(W){W=W||{},this.color_=W.color!==void 0?W.color:null,this.lineCap_=W.lineCap,this.lineDash_=W.lineDash!==void 0?W.lineDash:null,this.lineDashOffset_=W.lineDashOffset,this.lineJoin_=W.lineJoin,this.miterLimit_=W.miterLimit,this.width_=W.width}clone(){const W=this.getColor();return new b({color:Array.isArray(W)?W.slice():W||void 0,lineCap:this.getLineCap(),lineDash:this.getLineDash()?this.getLineDash().slice():void 0,lineDashOffset:this.getLineDashOffset(),lineJoin:this.getLineJoin(),miterLimit:this.getMiterLimit(),width:this.getWidth()})}getColor(){return this.color_}getLineCap(){return this.lineCap_}getLineDash(){return this.lineDash_}getLineDashOffset(){return this.lineDashOffset_}getLineJoin(){return this.lineJoin_}getMiterLimit(){return this.miterLimit_}getWidth(){return this.width_}setColor(W){this.color_=W}setLineCap(W){this.lineCap_=W}setLineDash(W){this.lineDash_=W}setLineDashOffset(W){this.lineDashOffset_=W}setLineJoin(W){this.lineJoin_=W}setMiterLimit(W){this.miterLimit_=W}setWidth(W){this.width_=W}}const y=b},1486:(gt,q,o)=>{o.d(q,{N:()=>t});var b=o(25847);function y(){return{"fill-color":"rgba(255,255,255,0.4)","stroke-color":"#3399CC","stroke-width":1.25,"circle-radius":5,"circle-fill-color":"rgba(255,255,255,0.4)","circle-stroke-width":1.25,"circle-stroke-color":"#3399CC"}}const B=.985,W=null,v={vertexPosition:0,indexPosition:0};function C(s,r,P,D,u){s[r+0]=P,s[r+1]=D,s[r+2]=u}function d(s,r,P,D,u,c){const i=3+u,a=s[r+0],g=s[r+1],m=W;m.length=u;for(let _=0;_<m.length;_++)m[_]=s[r+2+_];let R=c?c.vertexPosition:0,h=c?c.indexPosition:0;const l=R/i;return C(P,R,a,g,0),m.length&&P.set(m,R+3),R+=i,C(P,R,a,g,1),m.length&&P.set(m,R+3),R+=i,C(P,R,a,g,2),m.length&&P.set(m,R+3),R+=i,C(P,R,a,g,3),m.length&&P.set(m,R+3),R+=i,D[h++]=l,D[h++]=l+1,D[h++]=l+3,D[h++]=l+1,D[h++]=l+2,D[h++]=l+3,v.vertexPosition=R,v.indexPosition=h,v}function A(s,r,P,D,u,c,n,e,i,a,g){const R=10+e.length,h=c.length/R,l=[s[r+0],s[r+1]],_=[s[P],s[P+1]],I=s[r+2],T=s[P+2],w=applyTransform(i,[...l]),p=applyTransform(i,[..._]);function E(st,X,L){const j=Math.sqrt((X[0]-st[0])*(X[0]-st[0])+(X[1]-st[1])*(X[1]-st[1])),it=[(X[0]-st[0])/j,(X[1]-st[1])/j],k=[-it[1],it[0]],Q=Math.sqrt((L[0]-st[0])*(L[0]-st[0])+(L[1]-st[1])*(L[1]-st[1])),nt=[(L[0]-st[0])/Q,(L[1]-st[1])/Q],tt=j===0||Q===0?0:Math.acos(clamp(nt[0]*it[0]+nt[1]*it[1],-1,1));return nt[0]*k[0]+nt[1]*k[1]>0?tt:Math.PI*2-tt}let f=-1,S=-1,N=g;const K=D!==null,H=u!==null;if(K){const st=[s[D],s[D+1]],X=applyTransform(i,[...st]);f=E(w,p,X),Math.cos(f)<=B&&(N+=Math.tan((f-Math.PI)/2))}if(H){const st=[s[u],s[u+1]],X=applyTransform(i,[...st]);S=E(p,w,X),Math.cos(S)<=B&&(N+=Math.tan((Math.PI-S)/2))}function Y(st,X){return X===0?st*1e4:Math.sign(X)*(st*1e4+Math.abs(X))}return c.push(l[0],l[1],I,_[0],_[1],T,f,S,a,Y(0,g)),c.push(...e),c.push(l[0],l[1],I,_[0],_[1],T,f,S,a,Y(1,g)),c.push(...e),c.push(l[0],l[1],I,_[0],_[1],T,f,S,a,Y(2,g)),c.push(...e),c.push(l[0],l[1],I,_[0],_[1],T,f,S,a,Y(3,g)),c.push(...e),n.push(h,h+1,h+2,h+1,h+3,h+2),{length:a+Math.sqrt((p[0]-w[0])*(p[0]-w[0])+(p[1]-w[1])*(p[1]-w[1])),angle:N}}function O(s,r,P,D,u){const n=2+u;let e=r;const i=s.slice(e,e+u);e+=u;const a=s[e++];let g=0;const m=new Array(a-1);for(let l=0;l<a;l++)g+=s[e++],l<a-1&&(m[l]=g);const R=s.slice(e,e+g*2),h=earcut(R,m,2);for(let l=0;l<h.length;l++)D.push(h[l]+P.length/n);for(let l=0;l<R.length;l+=2)P.push(R[l],R[l+1],...i);return e+g*2}const x=`#ifdef GL_FRAGMENT_PRECISION_HIGH precision highp float; #else precision mediump float; #endif uniform mat4 u_projectionMatrix; uniform mat4 u_screenToWorldMatrix; uniform vec2 u_viewportSizePx; uniform float u_pixelRatio; uniform float u_globalAlpha; uniform float u_time; uniform float u_zoom; uniform float u_resolution; uniform float u_rotation; uniform vec4 u_renderExtent; uniform vec2 u_patternOrigin; uniform float u_depth; uniform mediump int u_hitDetection; const float PI = 3.141592653589793238; const float TWO_PI = 2.0 * PI; float currentLineMetric = 0.; // an actual value will be used in the stroke shaders `,M=y();class t{constructor(){this.uniforms_=[],this.attributes_=[],this.hasSymbol_=!1,this.symbolSizeExpression_=`vec2(${(0,b.$R)(M["circle-radius"])} + ${(0,b.$R)(M["circle-stroke-width"]*.5)})`,this.symbolRotationExpression_="0.0",this.symbolOffsetExpression_="vec2(0.0)",this.symbolColorExpression_=(0,b.VO)(M["circle-fill-color"]),this.texCoordExpression_="vec4(0.0, 0.0, 1.0, 1.0)",this.discardExpression_="false",this.symbolRotateWithView_=!1,this.hasStroke_=!1,this.strokeWidthExpression_=(0,b.$R)(M["stroke-width"]),this.strokeColorExpression_=(0,b.VO)(M["stroke-color"]),this.strokeOffsetExpression_="0.",this.strokeCapExpression_=(0,b.Tl)("round"),this.strokeJoinExpression_=(0,b.Tl)("round"),this.strokeMiterLimitExpression_="10.",this.strokeDistanceFieldExpression_="-1000.",this.hasFill_=!1,this.fillColorExpression_=(0,b.VO)(M["fill-color"]),this.vertexShaderFunctions_=[],this.fragmentShaderFunctions_=[]}addUniform(r,P){return this.uniforms_.push({name:r,type:P}),this}addAttribute(r,P,D,u){return this.attributes_.push({name:r,type:P,varyingName:r.replace(/^a_/,"v_"),varyingType:u??P,varyingExpression:D??r}),this}setSymbolSizeExpression(r){return this.hasSymbol_=!0,this.symbolSizeExpression_=r,this}getSymbolSizeExpression(){return this.symbolSizeExpression_}setSymbolRotationExpression(r){return this.symbolRotationExpression_=r,this}setSymbolOffsetExpression(r){return this.symbolOffsetExpression_=r,this}getSymbolOffsetExpression(){return this.symbolOffsetExpression_}setSymbolColorExpression(r){return this.hasSymbol_=!0,this.symbolColorExpression_=r,this}getSymbolColorExpression(){return this.symbolColorExpression_}setTextureCoordinateExpression(r){return this.texCoordExpression_=r,this}setFragmentDiscardExpression(r){return this.discardExpression_=r,this}getFragmentDiscardExpression(){return this.discardExpression_}setSymbolRotateWithView(r){return this.symbolRotateWithView_=r,this}setStrokeWidthExpression(r){return this.hasStroke_=!0,this.strokeWidthExpression_=r,this}setStrokeColorExpression(r){return this.hasStroke_=!0,this.strokeColorExpression_=r,this}getStrokeColorExpression(){return this.strokeColorExpression_}setStrokeOffsetExpression(r){return this.strokeOffsetExpression_=r,this}setStrokeCapExpression(r){return this.strokeCapExpression_=r,this}setStrokeJoinExpression(r){return this.strokeJoinExpression_=r,this}setStrokeMiterLimitExpression(r){return this.strokeMiterLimitExpression_=r,this}setStrokeDistanceFieldExpression(r){return this.strokeDistanceFieldExpression_=r,this}setFillColorExpression(r){return this.hasFill_=!0,this.fillColorExpression_=r,this}getFillColorExpression(){return this.fillColorExpression_}addVertexShaderFunction(r){return this.vertexShaderFunctions_.includes(r)?this:(this.vertexShaderFunctions_.push(r),this)}addFragmentShaderFunction(r){return this.fragmentShaderFunctions_.includes(r)?this:(this.fragmentShaderFunctions_.push(r),this)}getSymbolVertexShader(){return this.hasSymbol_?`${x} ${this.uniforms_.map(r=>`uniform ${r.type} ${r.name};`).join(` `)} attribute vec2 a_position; attribute float a_index; attribute vec4 a_hitColor; varying vec2 v_texCoord; varying vec2 v_quadCoord; varying vec4 v_hitColor; varying vec2 v_centerPx; varying float v_angle; varying vec2 v_quadSizePx; ${this.attributes_.map(r=>`attribute ${r.type} ${r.name}; varying ${r.varyingType} ${r.varyingName};`).join(` `)} ${this.vertexShaderFunctions_.join(` `)} vec2 pxToScreen(vec2 coordPx) { vec2 scaled = coordPx / u_viewportSizePx / 0.5; return scaled; } vec2 screenToPx(vec2 coordScreen) { return (coordScreen * 0.5 + 0.5) * u_viewportSizePx; } void main(void) { v_quadSizePx = ${this.symbolSizeExpression_}; vec2 halfSizePx = v_quadSizePx * 0.5; vec2 centerOffsetPx = ${this.symbolOffsetExpression_}; vec2 offsetPx = centerOffsetPx; if (a_index == 0.0) { offsetPx -= halfSizePx; } else if (a_index == 1.0) { offsetPx += halfSizePx * vec2(1., -1.); } else if (a_index == 2.0) { offsetPx += halfSizePx; } else { offsetPx += halfSizePx * vec2(-1., 1.); } float angle = ${this.symbolRotationExpression_}${this.symbolRotateWithView_?" + u_rotation":""}; float c = cos(-angle); float s = sin(-angle); offsetPx = vec2(c * offsetPx.x - s * offsetPx.y, s * offsetPx.x + c * offsetPx.y); vec4 center = u_projectionMatrix * vec4(a_position, 0.0, 1.0); gl_Position = center + vec4(pxToScreen(offsetPx), u_depth, 0.); vec4 texCoord = ${this.texCoordExpression_}; float u = a_index == 0.0 || a_index == 3.0 ? texCoord.s : texCoord.p; float v = a_index == 2.0 || a_index == 3.0 ? texCoord.t : texCoord.q; v_texCoord = vec2(u, v); v_hitColor = a_hitColor; v_angle = angle; c = cos(-v_angle); s = sin(-v_angle); centerOffsetPx = vec2(c * centerOffsetPx.x - s * centerOffsetPx.y, s * centerOffsetPx.x + c * centerOffsetPx.y); v_centerPx = screenToPx(center.xy) + centerOffsetPx; ${this.attributes_.map(r=>` ${r.varyingName} = ${r.varyingExpression};`).join(` `)} }`:null}getSymbolFragmentShader(){return this.hasSymbol_?`${x} ${this.uniforms_.map(r=>`uniform ${r.type} ${r.name};`).join(` `)} varying vec2 v_texCoord; varying vec4 v_hitColor; varying vec2 v_centerPx; varying float v_angle; varying vec2 v_quadSizePx; ${this.attributes_.map(r=>`varying ${r.varyingType} ${r.varyingName};`).join(` `)} ${this.fragmentShaderFunctions_.join(` `)} void main(void) { ${this.attributes_.map(r=>` ${r.varyingType} ${r.name} = ${r.varyingName}; // assign to original attribute name`).join(` `)} if (${this.discardExpression_}) { discard; } vec2 coordsPx = gl_FragCoord.xy / u_pixelRatio - v_centerPx; // relative to center float c = cos(v_angle); float s = sin(v_angle); coordsPx = vec2(c * coordsPx.x - s * coordsPx.y, s * coordsPx.x + c * coordsPx.y); gl_FragColor = ${this.symbolColorExpression_}; gl_FragColor.rgb *= gl_FragColor.a; if (u_hitDetection > 0) { if (gl_FragColor.a < 0.05) { discard; }; gl_FragColor = v_hitColor; } }`:null}getStrokeVertexShader(){return this.hasStroke_?`${x} ${this.uniforms_.map(r=>`uniform ${r.type} ${r.name};`).join(` `)} attribute vec2 a_segmentStart; attribute vec2 a_segmentEnd; attribute float a_measureStart; attribute float a_measureEnd; attribute float a_parameters; attribute float a_distance; attribute vec2 a_joinAngles; attribute vec4 a_hitColor; varying vec2 v_segmentStart; varying vec2 v_segmentEnd; varying float v_angleStart; varying float v_angleEnd; varying float v_width; varying vec4 v_hitColor; varying float v_distanceOffsetPx; varying float v_measureStart; varying float v_measureEnd; ${this.attributes_.map(r=>`attribute ${r.type} ${r.name}; varying ${r.varyingType} ${r.varyingName};`).join(` `)} ${this.vertexShaderFunctions_.join(` `)} vec2 worldToPx(vec2 worldPos) { vec4 screenPos = u_projectionMatrix * vec4(worldPos, 0.0, 1.0); return (0.5 * screenPos.xy + 0.5) * u_viewportSizePx; } vec4 pxToScreen(vec2 pxPos) { vec2 screenPos = 2.0 * pxPos / u_viewportSizePx - 1.0; return vec4(screenPos, u_depth, 1.0); } bool isCap(float joinAngle) { return joinAngle < -0.1; } vec2 getJoinOffsetDirection(vec2 normalPx, float joinAngle) { float halfAngle = joinAngle / 2.0; float c = cos(halfAngle); float s = sin(halfAngle); vec2 angleBisectorNormal = vec2(s * normalPx.x + c * normalPx.y, -c * normalPx.x + s * normalPx.y); float length = 1.0 / s; return angleBisectorNormal * length; } vec2 getOffsetPoint(vec2 point, vec2 normal, float joinAngle, float offsetPx) { // if on a cap or the join angle is too high, offset the line along the segment normal if (cos(joinAngle) > 0.998 || isCap(joinAngle)) { return point - normal * offsetPx; } // offset is applied along the inverted normal (positive offset goes "right" relative to line direction) return point - getJoinOffsetDirection(normal, joinAngle) * offsetPx; } void main(void) { v_angleStart = a_joinAngles.x; v_angleEnd = a_joinAngles.y; float vertexNumber = floor(abs(a_parameters) / 10000. + 0.5); currentLineMetric = vertexNumber < 1.5 ? a_measureStart : a_measureEnd; // we're reading the fractional part while keeping the sign (so -4.12 gives -0.12, 3.45 gives 0.45) float angleTangentSum = fract(abs(a_parameters) / 10000.) * 10000. * sign(a_parameters); float lineWidth = ${this.strokeWidthExpression_}; float lineOffsetPx = ${this.strokeOffsetExpression_}; // compute segment start/end in px with offset vec2 segmentStartPx = worldToPx(a_segmentStart); vec2 segmentEndPx = worldToPx(a_segmentEnd); vec2 tangentPx = normalize(segmentEndPx - segmentStartPx); vec2 normalPx = vec2(-tangentPx.y, tangentPx.x); segmentStartPx = getOffsetPoint(segmentStartPx, normalPx, v_angleStart, lineOffsetPx), segmentEndPx = getOffsetPoint(segmentEndPx, normalPx, v_angleEnd, lineOffsetPx); // compute current vertex position float normalDir = vertexNumber < 0.5 || (vertexNumber > 1.5 && vertexNumber < 2.5) ? 1.0 : -1.0; float tangentDir = vertexNumber < 1.5 ? 1.0 : -1.0; float angle = vertexNumber < 1.5 ? v_angleStart : v_angleEnd; vec2 joinDirection; vec2 positionPx = vertexNumber < 1.5 ? segmentStartPx : segmentEndPx; // if angle is too high, do not make a proper join if (cos(angle) > ${B} || isCap(angle)) { joinDirection = normalPx * normalDir - tangentPx * tangentDir; } else { joinDirection = getJoinOffsetDirection(normalPx * normalDir, angle); } positionPx = positionPx + joinDirection * (lineWidth * 0.5 + 1.); // adding 1 pixel for antialiasing gl_Position = pxToScreen(positionPx); v_segmentStart = segmentStartPx; v_segmentEnd = segmentEndPx; v_width = lineWidth; v_hitColor = a_hitColor; v_distanceOffsetPx = a_distance / u_resolution - (lineOffsetPx * angleTangentSum); v_measureStart = a_measureStart; v_measureEnd = a_measureEnd; ${this.attributes_.map(r=>` ${r.varyingName} = ${r.varyingExpression};`).join(` `)} }`:null}getStrokeFragmentShader(){return this.hasStroke_?`${x} ${this.uniforms_.map(r=>`uniform ${r.type} ${r.name};`).join(` `)} varying vec2 v_segmentStart; varying vec2 v_segmentEnd; varying float v_angleStart; varying float v_angleEnd; varying float v_width; varying vec4 v_hitColor; varying float v_distanceOffsetPx; varying float v_measureStart; varying float v_measureEnd; ${this.attributes_.map(r=>`varying ${r.varyingType} ${r.varyingName};`).join(` `)} ${this.fragmentShaderFunctions_.join(` `)} vec2 pxToWorld(vec2 pxPos) { vec2 screenPos = 2.0 * pxPos / u_viewportSizePx - 1.0; return (u_screenToWorldMatrix * vec4(screenPos, 0.0, 1.0)).xy; } bool isCap(float joinAngle) { return joinAngle < -0.1; } float segmentDistanceField(vec2 point, vec2 start, vec2 end, float width) { vec2 tangent = normalize(end - start); vec2 normal = vec2(-tangent.y, tangent.x); vec2 startToPoint = point - start; return abs(dot(startToPoint, normal)) - width * 0.5; } float buttCapDistanceField(vec2 point, vec2 start, vec2 end) { vec2 startToPoint = point - start; vec2 tangent = normalize(end - start); return dot(startToPoint, -tangent); } float squareCapDistanceField(vec2 point, vec2 start, vec2 end, float width) { return buttCapDistanceField(point, start, end) - width * 0.5; } float roundCapDistanceField(vec2 point, vec2 start, vec2 end, float width) { float onSegment = max(0., 1000. * dot(point - start, end - start)); // this is very high when inside the segment return length(point - start) - width * 0.5 - onSegment; } float roundJoinDistanceField(vec2 point, vec2 start, vec2 end, float width) { return roundCapDistanceField(point, start, end, width); } float bevelJoinField(vec2 point, vec2 start, vec2 end, float width, float joinAngle) { vec2 startToPoint = point - start; vec2 tangent = normalize(end - start); float c = cos(joinAngle * 0.5); float s = sin(joinAngle * 0.5); float direction = -sign(sin(joinAngle)); vec2 bisector = vec2(c * tangent.x - s * tangent.y, s * tangent.x + c * tangent.y); float radius = width * 0.5 * s; return dot(startToPoint, bisector * direction) - radius; } float miterJoinDistanceField(vec2 point, vec2 start, vec2 end, float width, float joinAngle) { if (cos(joinAngle) > ${B}) { // avoid risking a division by zero return bevelJoinField(point, start, end, width, joinAngle); } float miterLength = 1. / sin(joinAngle * 0.5); float miterLimit = ${this.strokeMiterLimitExpression_}; if (miterLength > miterLimit) { return bevelJoinField(point, start, end, width, joinAngle); } return -1000.; } float capDistanceField(vec2 point, vec2 start, vec2 end, float width, float capType) { if (capType == ${(0,b.Tl)("butt")}) { return buttCapDistanceField(point, start, end); } else if (capType == ${(0,b.Tl)("square")}) { return squareCapDistanceField(point, start, end, width); } return roundCapDistanceField(point, start, end, width); } float joinDistanceField(vec2 point, vec2 start, vec2 end, float width, float joinAngle, float joinType) { if (joinType == ${(0,b.Tl)("bevel")}) { return bevelJoinField(point, start, end, width, joinAngle); } else if (joinType == ${(0,b.Tl)("miter")}) { return miterJoinDistanceField(point, start, end, width, joinAngle); } return roundJoinDistanceField(point, start, end, width); } float computeSegmentPointDistance(vec2 point, vec2 start, vec2 end, float width, float joinAngle, float capType, float joinType) { if (isCap(joinAngle)) { return capDistanceField(point, start, end, width, capType); } return joinDistanceField(point, start, end, width, joinAngle, joinType); } float distanceFromSegment(vec2 point, vec2 start, vec2 end) { vec2 tangent = end - start; vec2 startToPoint = point - start; // inspire by capsule fn in https://iquilezles.org/articles/distfunctions/ float h = clamp(dot(startToPoint, tangent) / dot(tangent, tangent), 0.0, 1.0); return length(startToPoint - tangent * h); } void main(void) { ${this.attributes_.map(r=>` ${r.varyingType} ${r.name} = ${r.varyingName}; // assign to original attribute name`).join(` `)} vec2 currentPoint = gl_FragCoord.xy / u_pixelRatio; #ifdef GL_FRAGMENT_PRECISION_HIGH vec2 worldPos = pxToWorld(currentPoint); if ( abs(u_renderExtent[0] - u_renderExtent[2]) > 0.0 && ( worldPos[0] < u_renderExtent[0] || worldPos[1] < u_renderExtent[1] || worldPos[0] > u_renderExtent[2] || worldPos[1] > u_renderExtent[3] ) ) { discard; } #endif float segmentLength = length(v_segmentEnd - v_segmentStart); vec2 segmentTangent = (v_segmentEnd - v_segmentStart) / segmentLength; vec2 segmentNormal = vec2(-segmentTangent.y, segmentTangent.x); vec2 startToPoint = currentPoint - v_segmentStart; float lengthToPoint = max(0., min(dot(segmentTangent, startToPoint), segmentLength)); float currentLengthPx = lengthToPoint + v_distanceOffsetPx; float currentRadiusPx = distanceFromSegment(currentPoint, v_segmentStart, v_segmentEnd); float currentRadiusRatio = dot(segmentNormal, startToPoint) * 2. / v_width; currentLineMetric = mix( v_measureStart, v_measureEnd, lengthToPoint / max(segmentLength, 1.17549429e-38) ); if (${this.discardExpression_}) { discard; } float capType = ${this.strokeCapExpression_}; float joinType = ${this.strokeJoinExpression_}; float segmentStartDistance = computeSegmentPointDistance(currentPoint, v_segmentStart, v_segmentEnd, v_width, v_angleStart, capType, joinType); float segmentEndDistance = computeSegmentPointDistance(currentPoint, v_segmentEnd, v_segmentStart, v_width, v_angleEnd, capType, joinType); float distanceField = max( segmentDistanceField(currentPoint, v_segmentStart, v_segmentEnd, v_width), max(segmentStartDistance, segmentEndDistance) ); distanceField = max(distanceField, ${this.strokeDistanceFieldExpression_}); vec4 color = ${this.strokeColorExpression_}; color.a *= smoothstep(0.5, -0.5, distanceField); gl_FragColor = color; gl_FragColor.a *= u_globalAlpha; gl_FragColor.rgb *= gl_FragColor.a; if (u_hitDetection > 0) { if (gl_FragColor.a < 0.1) { discard; }; gl_FragColor = v_hitColor; } }`:null}getFillVertexShader(){return this.hasFill_?`${x} ${this.uniforms_.map(r=>`uniform ${r.type} ${r.name};`).join(` `)} attribute vec2 a_position; attribute vec4 a_hitColor; varying vec4 v_hitColor; ${this.attributes_.map(r=>`attribute ${r.type} ${r.name}; varying ${r.varyingType} ${r.varyingName};`).join(` `)} ${this.vertexShaderFunctions_.join(` `)} void main(void) { gl_Position = u_projectionMatrix * vec4(a_position, u_depth, 1.0); v_hitColor = a_hitColor; ${this.attributes_.map(r=>` ${r.varyingName} = ${r.varyingExpression};`).join(` `)} }`:null}getFillFragmentShader(){return this.hasFill_?`${x} ${this.uniforms_.map(r=>`uniform ${r.type} ${r.name};`).join(` `)} varying vec4 v_hitColor; ${this.attributes_.map(r=>`varying ${r.varyingType} ${r.varyingName};`).join(` `)} ${this.fragmentShaderFunctions_.join(` `)} vec2 pxToWorld(vec2 pxPos) { vec2 screenPos = 2.0 * pxPos / u_viewportSizePx - 1.0; return (u_screenToWorldMatrix * vec4(screenPos, 0.0, 1.0)).xy; } vec2 worldToPx(vec2 worldPos) { vec4 screenPos = u_projectionMatrix * vec4(worldPos, 0.0, 1.0); return (0.5 * screenPos.xy + 0.5) * u_viewportSizePx; } void main(void) { ${this.attributes_.map(r=>` ${r.varyingType} ${r.name} = ${r.varyingName}; // assign to original attribute name`).join(` `)} vec2 pxPos = gl_FragCoord.xy / u_pixelRatio; vec2 pxOrigin = worldToPx(u_patternOrigin); #ifdef GL_FRAGMENT_PRECISION_HIGH vec2 worldPos = pxToWorld(pxPos); if ( abs(u_renderExtent[0] - u_renderExtent[2]) > 0.0 && ( worldPos[0] < u_renderExtent[0] || worldPos[1] < u_renderExtent[1] || worldPos[0] > u_renderExtent[2] || worldPos[1] > u_renderExtent[3] ) ) { discard; } #endif if (${this.discardExpression_}) { discard; } gl_FragColor = ${this.fillColorExpression_}; gl_FragColor.a *= u_globalAlpha; gl_FragColor.rgb *= gl_FragColor.a; if (u_hitDetection > 0) { if (gl_FragColor.a < 0.1) { discard; }; gl_FragColor = v_hitColor; } }`:null}}},3422:(gt,q,o)=>{o.d(q,{L:()=>y,b:()=>b});function b(B,W){W=W||[];const v=256,C=v-1;return W[0]=Math.floor(B/v/v/v)/C,W[1]=Math.floor(B/v/v)%v/C,W[2]=Math.floor(B/v)%v/C,W[3]=B%v/C,W}function y(B){let W=0;const v=256,C=v-1;return W+=Math.round(B[0]*v*v*v*C),W+=Math.round(B[1]*v*v*C),W+=Math.round(B[2]*v*C),W+=Math.round(B[3]*C),W}},5986:(gt,q,o)=>{o.d(q,{A:()=>d});var b=o(6141),y=o(11854),B=o(6837),W=o(4087);const v=5;class C extends y.A{constructor(O){super(),this.ready=!0,this.boundHandleImageChange_=this.handleImageChange_.bind(this),this.layer_=O,this.staleKeys_=new Array,this.maxStaleKeys=v}getStaleKeys(){return this.staleKeys_}prependStaleKey(O){this.staleKeys_.unshift(O),this.staleKeys_.length>this.maxStaleKeys&&(this.staleKeys_.length=this.maxStaleKeys)}getFeatures(O){return(0,W.b0)()}getData(O){return null}prepareFrame(O){return(0,W.b0)()}renderFrame(O,x){return(0,W.b0)()}forEachFeatureAtCoordinate(O,x,M,t,s){}getLayer(){return this.layer_}handleFontsChanged(){}handleImageChange_(O){const x=O.target;(x.getState()===b.A.LOADED||x.getState()===b.A.ERROR)&&this.renderIfReadyAndVisible()}loadImage(O){let x=O.getState();return x!=b.A.LOADED&&x!=b.A.ERROR&&O.addEventListener(B.A.CHANGE,this.boundHandleImageChange_),x==b.A.IDLE&&(O.load(),x=O.getState()),x==b.A.LOADED}renderIfReadyAndVisible(){const O=this.getLayer();O&&O.getVisible()&&O.getSourceState()==="ready"&&O.changed()}renderDeferred(O){}disposeInternal(){delete this.layer_,super.disposeInternal()}}const d=C},6141:(gt,q,o)=>{o.d(q,{A:()=>b});const b={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4}},6292:(gt,q,o)=>{o.d(q,{Ay:()=>d,D2:()=>C,e4:()=>v});var b=o(34120),y=o(93474),B=o(82187);class W extends b.A{constructor(O){super(),this.on,this.once,this.un,O&&O.handleEvent&&(this.handleEvent=O.handleEvent),this.map_=null,this.setActive(!0)}getActive(){return this.get(B.A.ACTIVE)}getMap(){return this.map_}handleEvent(O){return!0}setActive(O){this.set(B.A.ACTIVE,O)}setMap(O){this.map_=O}}function v(A,O,x){const M=A.getCenterInternal();if(M){const t=[M[0]+O[0],M[1]+O[1]];A.animateInternal({duration:x!==void 0?x:250,easing:y.sn,center:A.getConstrainedCenter(t)})}}function C(A,O,x,M){const t=A.getZoom();if(t===void 0)return;const s=A.getConstrainedZoom(t+O),r=A.getResolutionForZoom(s);A.getAnimating()&&A.cancelAnimations(),A.animate({resolution:r,anchor:x,duration:M!==void 0?M:250,easing:y.vT})}const d=W},6782:(gt,q,o)=>{o.d(q,{Ie:()=>y,hs:()=>B,xq:()=>W});function b(v,C,d){return d===void 0&&(d=[0,0]),d[0]=v[0]+2*C,d[1]=v[1]+2*C,d}function y(v){return v[0]>0&&v[1]>0}function B(v,C,d){return d===void 0&&(d=[0,0]),d[0]=v[0]*C+.5|0,d[1]=v[1]*C+.5|0,d}function W(v,C){return Array.isArray(v)?v:(C===void 0?C=[v,v]:(C[0]=v,C[1]=v),C)}},7771:(gt,q,o)=>{o.d(q,{DT:()=>A,FT:()=>x,Wl:()=>d,XM:()=>O,cr:()=>C,ew:()=>v,j:()=>W,oF:()=>B});const b=typeof navigator<"u"&&typeof navigator.userAgent<"u"?navigator.userAgent.toLowerCase():"",B=b.includes("safari")&&!b.includes("chrom")&&(b.includes("version/15.4")||/cpu (os|iphone os) 15_4 like mac os x/.test(b)),W=b.includes("webkit")&&!b.includes("edge"),v=b.includes("macintosh"),C=typeof devicePixelRatio<"u"?devicePixelRatio:1,d=typeof WorkerGlobalScope<"u"&&typeof OffscreenCanvas<"u"&&self instanceof WorkerGlobalScope,A=typeof Image<"u"&&Image.prototype.decode,O=typeof createImageBitmap=="function",x=function(){let M=!1;try{const t=Object.defineProperty({},"passive",{get:function(){M=!0}});window.addEventListener("_",null,t),window.removeEventListener("_",null,t)}catch{}return M}()},8130:(gt,q,o)=>{o.d(q,{A:()=>x});var b=o(66514),y=o(99676),B=o(11580),W=o(70915),v=o(56361),C=o(32826),d=o(38774),A=o(66429);class O extends C.A{constructor(t,s,r,P){super(),this.tolerance=t,this.maxExtent=s,this.pixelRatio=P,this.maxLineWidth=0,this.resolution=r,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_=null,this.bufferedMaxExtent_=null,this.instructions=[],this.coordinates=[],this.tmpCoordinate_=[],this.hitDetectionInstructions=[],this.state={}}applyPixelRatio(t){const s=this.pixelRatio;return s==1?t:t.map(function(r){return r*s})}appendFlatPointCoordinates(t,s){const r=this.getBufferedMaxExtent(),P=this.tmpCoordinate_,D=this.coordinates;let u=D.length;for(let c=0,n=t.length;c<n;c+=s)P[0]=t[c],P[1]=t[c+1],(0,W.Ym)(r,P)&&(D[u++]=P[0],D[u++]=P[1]);return u}appendFlatLineCoordinates(t,s,r,P,D,u){const c=this.coordinates;let n=c.length;const e=this.getBufferedMaxExtent();u&&(s+=P);let i=t[s],a=t[s+1];const g=this.tmpCoordinate_;let m=!0,R,h,l;for(R=s+P;R<r;R+=P)g[0]=t[R],g[1]=t[R+1],l=(0,W.vz)(e,g),l!==h?(m&&(c[n++]=i,c[n++]=a,m=!1),c[n++]=g[0],c[n++]=g[1]):l===B.A.INTERSECTING?(c[n++]=g[0],c[n++]=g[1],m=!1):m=!0,i=g[0],a=g[1],h=l;return(D&&m||R===s+P)&&(c[n++]=i,c[n++]=a),n}drawCustomCoordinates_(t,s,r,P,D){for(let u=0,c=r.length;u<c;++u){const n=r[u],e=this.appendFlatLineCoordinates(t,s,n,P,!1,!1);D.push(e),s=n}return s}drawCustom(t,s,r,P,D){this.beginGeometry(t,s,D);const u=t.getType(),c=t.getStride(),n=this.coordinates.length;let e,i,a,g,m;switch(u){case"MultiPolygon":e=t.getOrientedFlatCoordinates(),g=[];const R=t.getEndss();m=0;for(let h=0,l=R.length;h<l;++h){const _=[];m=this.drawCustomCoordinates_(e,m,R[h],c,_),g.push(_)}this.instructions.push([A.Ay.CUSTOM,n,g,t,r,v.Dz,D]),this.hitDetectionInstructions.push([A.Ay.CUSTOM,n,g,t,P||r,v.Dz,D]);break;case"Polygon":case"MultiLineString":a=[],e=u=="Polygon"?t.getOrientedFlatCoordinates():t.getFlatCoordinates(),m=this.drawCustomCoordinates_(e,0,t.getEnds(),c,a),this.instructions.push([A.Ay.CUSTOM,n,a,t,r,v.cD,D]),this.hitDetectionInstructions.push([A.Ay.CUSTOM,n,a,t,P||r,v.cD,D]);break;case"LineString":case"Circle":e=t.getFlatCoordinates(),i=this.appendFlatLineCoordinates(e,0,e.length,c,!1,!1),this.instructions.push([A.Ay.CUSTOM,n,i,t,r,v.n2,D]),this.hitDetectionInstructions.push([A.Ay.CUSTOM,n,i,t,P||r,v.n2,D]);break;case"MultiPoint":e=t.getFlatCoordinates(),i=this.appendFlatPointCoordinates(e,c),i>n&&(this.instructions.push([A.Ay.CUSTOM,n,i,t,r,v.n2,D]),this.hitDetectionInstructions.push([A.Ay.CUSTOM,n,i,t,P||r,v.n2,D]));break;case"Point":e=t.getFlatCoordinates(),this.coordinates.push(e[0],e[1]),i=this.coordinates.length,this.instructions.push([A.Ay.CUSTOM,n,i,t,r,void 0,D]),this.hitDetectionInstructions.push([A.Ay.CUSTOM,n,i,t,P||r,void 0,D]);break;default:}this.endGeometry(s)}beginGeometry(t,s,r){this.beginGeometryInstruction1_=[A.Ay.BEGIN_GEOMETRY,s,0,t,r],this.instructions.push(this.beginGeometryInstruction1_),this.beginGeometryInstruction2_=[A.Ay.BEGIN_GEOMETRY,s,0,t,r],this.hitDetectionInstructions.push(this.beginGeometryInstruction2_)}finish(){return{instructions:this.instructions,hitDetectionInstructions:this.hitDetectionInstructions,coordinates:this.coordinates}}reverseHitDetectionInstructions(){const t=this.hitDetectionInstructions;t.reverse();let s;const r=t.length;let P,D,u=-1;for(s=0;s<r;++s)P=t[s],D=P[0],D==A.Ay.END_GEOMETRY?u=s:D==A.Ay.BEGIN_GEOMETRY&&(P[2]=s,(0,b.gI)(this.hitDetectionInstructions,u,s),u=-1)}fillStyleToState(t,s={}){if(t){const r=t.getColor();s.fillPatternScale=r&&typeof r=="object"&&"src"in r?this.pixelRatio:1,s.fillStyle=(0,y.F)(r||d.qY)}else s.fillStyle=void 0;return s}strokeStyleToState(t,s={}){if(t){const r=t.getColor();s.strokeStyle=(0,y.F)(r||d.NT);const P=t.getLineCap();s.lineCap=P!==void 0?P:d._m;const D=t.getLineDash();s.lineDash=D?D.slice():d.Oq;const u=t.getLineDashOffset();s.lineDashOffset=u||d.vk;const c=t.getLineJoin();s.lineJoin=c!==void 0?c:d._K;const n=t.getWidth();s.lineWidth=n!==void 0?n:d.aq;const e=t.getMiterLimit();s.miterLimit=e!==void 0?e:d.eL,s.lineWidth>this.maxLineWidth&&(this.maxLineWidth=s.lineWidth,this.bufferedMaxExtent_=null)}else s.strokeStyle=void 0,s.lineCap=void 0,s.lineDash=null,s.lineDashOffset=void 0,s.lineJoin=void 0,s.lineWidth=void 0,s.miterLimit=void 0;return s}setFillStrokeStyle(t,s){const r=this.state;this.fillStyleToState(t,r),this.strokeStyleToState(s,r)}createFill(t){const s=t.fillStyle,r=[A.Ay.SET_FILL_STYLE,s];return typeof s!="string"&&r.push(t.fillPatternScale),r}applyStroke(t){this.instructions.push(this.createStroke(t))}createStroke(t){return[A.Ay.SET_STROKE_STYLE,t.strokeStyle,t.lineWidth*this.pixelRatio,t.lineCap,t.lineJoin,t.miterLimit,t.lineDash?this.applyPixelRatio(t.lineDash):null,t.lineDashOffset*this.pixelRatio]}updateFillStyle(t,s){const r=t.fillStyle;(typeof r!="string"||t.currentFillStyle!=r)&&(this.instructions.push(s.call(this,t)),t.currentFillStyle=r)}updateStrokeStyle(t,s){const r=t.strokeStyle,P=t.lineCap,D=t.lineDash,u=t.lineDashOffset,c=t.lineJoin,n=t.lineWidth,e=t.miterLimit;(t.currentStrokeStyle!=r||t.currentLineCap!=P||D!=t.currentLineDash&&!(0,b.aI)(t.currentLineDash,D)||t.currentLineDashOffset!=u||t.currentLineJoin!=c||t.currentLineWidth!=n||t.currentMiterLimit!=e)&&(s.call(this,t),t.currentStrokeStyle=r,t.currentLineCap=P,t.currentLineDash=D,t.currentLineDashOffset=u,t.currentLineJoin=c,t.currentLineWidth=n,t.currentMiterLimit=e)}endGeometry(t){this.beginGeometryInstruction1_[2]=this.instructions.length,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_[2]=this.hitDetectionInstructions.length,this.beginGeometryInstruction2_=null;const s=[A.Ay.END_GEOMETRY,t];this.instructions.push(s),this.hitDetectionInstructions.push(s)}getBufferedMaxExtent(){if(!this.bufferedMaxExtent_&&(this.bufferedMaxExtent_=(0,W.o8)(this.maxExtent),this.maxLineWidth>0)){const t=this.resolution*(this.maxLineWidth+1)/2;(0,W.r)(this.bufferedMaxExtent_,t,this.bufferedMaxExtent_)}return this.bufferedMaxExtent_}}const x=O},8143:(gt,q,o)=>{o.d(q,{A:()=>d});var b=o(11078),y=o(93474),B=o(6837),W=o(79332),v=o(4087);class C extends W.A{constructor(O,x,M){super(),M=M||{},this.tileCoord=O,this.state=x,this.key="",this.transition_=M.transition===void 0?250:M.transition,this.transitionStarts_={},this.interpolate=!!M.interpolate}changed(){this.dispatchEvent(B.A.CHANGE)}release(){this.setState(b.A.EMPTY)}getKey(){return this.key+"/"+this.tileCoord}getTileCoord(){return this.tileCoord}getState(){return this.state}setState(O){if(this.state!==b.A.EMPTY){if(this.state!==b.A.ERROR&&this.state>O)throw new Error("Tile load sequence violation");this.state=O,this.changed()}}load(){(0,v.b0)()}getAlpha(O,x){if(!this.transition_)return 1;let M=this.transitionStarts_[O];if(!M)M=x,this.transitionStarts_[O]=M;else if(M===-1)return 1;const t=x-M+1e3/60;return t>=this.transition_?1:(0,y.a6)(t/this.transition_)}inTransition(O){return this.transition_?this.transitionStarts_[O]!==-1:!1}endTransition(O){this.transition_&&(this.transitionStarts_[O]=-1)}disposeInternal(){this.release(),super.disposeInternal()}}const d=C},9777:(gt,q,o)=>{o.d(q,{jQ:()=>r,M8:()=>s,Ay:()=>m});var b=o(90025),y=o(43530),B=o(9703),W=o(4087),v=o(83954);const C={LOST:"webglcontextlost",RESTORED:"webglcontextrestored"};var d=o(90130);const A=` precision mediump float; attribute vec2 a_position; varying vec2 v_texCoord; varying vec2 v_screenCoord; uniform vec2 u_screenSize; void main() { v_texCoord = a_position * 0.5 + 0.5; v_screenCoord = v_texCoord * u_screenSize; gl_Position = vec4(a_position, 0.0, 1.0); } `,O=` precision mediump float; uniform sampler2D u_image; uniform float u_opacity; varying vec2 v_texCoord; void main() { gl_FragColor = texture2D(u_image, v_texCoord) * u_opacity; } `;class x{constructor(h){this.gl_=h.webGlContext;const l=this.gl_;this.scaleRatio_=h.scaleRatio||1,this.renderTargetTexture_=l.createTexture(),this.renderTargetTextureSize_=null,this.frameBuffer_=l.createFramebuffer(),this.depthBuffer_=l.createRenderbuffer();const _=l.createShader(l.VERTEX_SHADER);l.shaderSource(_,h.vertexShader||A),l.compileShader(_);const I=l.createShader(l.FRAGMENT_SHADER);l.shaderSource(I,h.fragmentShader||O),l.compileShader(I),this.renderTargetProgram_=l.createProgram(),l.attachShader(this.renderTargetProgram_,_),l.attachShader(this.renderTargetProgram_,I),l.linkProgram(this.renderTargetProgram_),this.renderTargetVerticesBuffer_=l.createBuffer();const T=[-1,-1,1,-1,-1,1,1,-1,1,1,-1,1];l.bindBuffer(l.ARRAY_BUFFER,this.renderTargetVerticesBuffer_),l.bufferData(l.ARRAY_BUFFER,new Float32Array(T),l.STATIC_DRAW),this.renderTargetAttribLocation_=l.getAttribLocation(this.renderTargetProgram_,"a_position"),this.renderTargetUniformLocation_=l.getUniformLocation(this.renderTargetProgram_,"u_screenSize"),this.renderTargetOpacityLocation_=l.getUniformLocation(this.renderTargetProgram_,"u_opacity"),this.renderTargetTextureLocation_=l.getUniformLocation(this.renderTargetProgram_,"u_image"),this.uniforms_=[],h.uniforms&&Object.keys(h.uniforms).forEach(w=>{this.uniforms_.push({value:h.uniforms[w],location:l.getUniformLocation(this.renderTargetProgram_,w)})})}getRenderTargetTexture(){return this.renderTargetTexture_}getGL(){return this.gl_}init(h){const l=this.getGL(),_=[l.drawingBufferWidth*this.scaleRatio_,l.drawingBufferHeight*this.scaleRatio_];if(l.bindFramebuffer(l.FRAMEBUFFER,this.getFrameBuffer()),l.bindRenderbuffer(l.RENDERBUFFER,this.getDepthBuffer()),l.viewport(0,0,_[0],_[1]),!this.renderTargetTextureSize_||this.renderTargetTextureSize_[0]!==_[0]||this.renderTargetTextureSize_[1]!==_[1]){this.renderTargetTextureSize_=_;const I=0,T=l.RGBA,w=0,p=l.RGBA,E=l.UNSIGNED_BYTE,f=null;l.bindTexture(l.TEXTURE_2D,this.renderTargetTexture_),l.texImage2D(l.TEXTURE_2D,I,T,_[0],_[1],w,p,E,f),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_MIN_FILTER,l.LINEAR),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_S,l.CLAMP_TO_EDGE),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_T,l.CLAMP_TO_EDGE),l.framebufferTexture2D(l.FRAMEBUFFER,l.COLOR_ATTACHMENT0,l.TEXTURE_2D,this.renderTargetTexture_,0),l.renderbufferStorage(l.RENDERBUFFER,l.DEPTH_COMPONENT16,_[0],_[1]),l.framebufferRenderbuffer(l.FRAMEBUFFER,l.DEPTH_ATTACHMENT,l.RENDERBUFFER,this.depthBuffer_)}}apply(h,l,_,I){const T=this.getGL(),w=h.size;if(T.bindFramebuffer(T.FRAMEBUFFER,l?l.getFrameBuffer():null),T.activeTexture(T.TEXTURE0),T.bindTexture(T.TEXTURE_2D,this.renderTargetTexture_),!l){const E=(0,W.v6)(T.canvas);if(!h.renderTargets[E]){const f=T.getContextAttributes();f&&f.preserveDrawingBuffer&&(T.clearColor(0,0,0,0),T.clearDepth(1),T.clear(T.COLOR_BUFFER_BIT|T.DEPTH_BUFFER_BIT)),h.renderTargets[E]=!0}}T.disable(T.DEPTH_TEST),T.enable(T.BLEND),T.blendFunc(T.ONE,T.ONE_MINUS_SRC_ALPHA),T.viewport(0,0,T.drawingBufferWidth,T.drawingBufferHeight),T.bindBuffer(T.ARRAY_BUFFER,this.renderTargetVerticesBuffer_),T.useProgram(this.renderTargetProgram_),T.enableVertexAttribArray(this.renderTargetAttribLocation_),T.vertexAttribPointer(this.renderTargetAttribLocation_,2,T.FLOAT,!1,0,0),T.uniform2f(this.renderTargetUniformLocation_,w[0],w[1]),T.uniform1i(this.renderTargetTextureLocation_,0);const p=h.layerStatesArray[h.layerIndex].opacity;T.uniform1f(this.renderTargetOpacityLocation_,p),this.applyUniforms(h),_&&_(T,h),T.drawArrays(T.TRIANGLES,0,6),I&&I(T,h)}getFrameBuffer(){return this.frameBuffer_}getDepthBuffer(){return this.depthBuffer_}applyUniforms(h){const l=this.getGL();let _,I=1;this.uniforms_.forEach(function(T){if(_=typeof T.value=="function"?T.value(h):T.value,_ instanceof HTMLCanvasElement||_ instanceof ImageData)T.texture||(T.texture=l.createTexture()),l.activeTexture(l[`TEXTURE${I}`]),l.bindTexture(l.TEXTURE_2D,T.texture),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_MIN_FILTER,l.LINEAR),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_S,l.CLAMP_TO_EDGE),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_T,l.CLAMP_TO_EDGE),_ instanceof ImageData?l.texImage2D(l.TEXTURE_2D,0,l.RGBA,l.RGBA,_.width,_.height,0,l.UNSIGNED_BYTE,new Uint8Array(_.data)):l.texImage2D(l.TEXTURE_2D,0,l.RGBA,l.RGBA,l.UNSIGNED_BYTE,_),l.uniform1i(T.location,I++);else if(Array.isArray(_))switch(_.length){case 2:l.uniform2f(T.location,_[0],_[1]);return;case 3:l.uniform3f(T.location,_[0],_[1],_[2]);return;case 4:l.uniform4f(T.location,_[0],_[1],_[2],_[3]);return;default:return}else typeof _=="number"&&l.uniform1f(T.location,_)})}}const M=x,t={FRAGMENT_SHADER:35632,VERTEX_SHADER:35633},s={PROJECTION_MATRIX:"u_projectionMatrix",SCREEN_TO_WORLD_MATRIX:"u_screenToWorldMatrix",TIME:"u_time",ZOOM:"u_zoom",RESOLUTION:"u_resolution",ROTATION:"u_rotation",VIEWPORT_SIZE_PX:"u_viewportSizePx",PIXEL_RATIO:"u_pixelRatio",HIT_DETECTION:"u_hitDetection"},r={UNSIGNED_BYTE:d.l4,UNSIGNED_SHORT:d.JL,UNSIGNED_INT:d.UD,FLOAT:d.zH},P={};function D(R){return"shared/"+R}let u=0;function c(){const R="unique/"+u;return u+=1,R}function n(R){let h=P[R];if(!h){const l=document.createElement("canvas");l.width=1,l.height=1,l.style.position="absolute",l.style.left="0",h={users:0,context:(0,d.SD)(l)},P[R]=h}return h.users+=1,h.context}function e(R){const h=P[R];if(!h||(h.users-=1,h.users>0))return;const l=h.context,_=l.getExtension("WEBGL_lose_context");_&&_.loseContext();const I=l.canvas;I.width=1,I.height=1,delete P[R]}class i extends b.A{constructor(h){super(),h=h||{},this.boundHandleWebGLContextLost_=this.handleWebGLContextLost.bind(this),this.boundHandleWebGLContextRestored_=this.handleWebGLContextRestored.bind(this),this.canvasCacheKey_=h.canvasCacheKey?D(h.canvasCacheKey):c(),this.gl_=n(this.canvasCacheKey_),this.bufferCache_={},this.extensionCache_={},this.currentProgram_=null,this.needsToBeRecreated_=!1;const l=this.gl_.canvas;l.addEventListener(C.LOST,this.boundHandleWebGLContextLost_),l.addEventListener(C.RESTORED,this.boundHandleWebGLContextRestored_),this.offsetRotateMatrix_=(0,B.vt)(),this.offsetScaleMatrix_=(0,B.vt)(),this.tmpMat4_=(0,v.vt)(),this.uniformLocationsByProgram_={},this.attribLocationsByProgram_={},this.uniforms_=[],h.uniforms&&this.setUniforms(h.uniforms),this.postProcessPasses_=h.postProcesses?h.postProcesses.map(_=>new M({webGlContext:this.gl_,scaleRatio:_.scaleRatio,vertexShader:_.vertexShader,fragmentShader:_.fragmentShader,uniforms:_.uniforms})):[new M({webGlContext:this.gl_})],this.shaderCompileErrors_=null,this.startTime_=Date.now(),this.maxAttributeCount_=this.gl_.getParameter(this.gl_.MAX_VERTEX_ATTRIBS)}setUniforms(h){this.uniforms_=[],this.addUniforms(h)}addUniforms(h){for(const l in h)this.uniforms_.push({name:l,value:h[l]})}canvasCacheKeyMatches(h){return this.canvasCacheKey_===D(h)}getExtension(h){if(h in this.extensionCache_)return this.extensionCache_[h];const l=this.gl_.getExtension(h);return this.extensionCache_[h]=l,l}bindBuffer(h){const l=this.gl_,_=(0,W.v6)(h);let I=this.bufferCache_[_];if(!I){const T=l.createBuffer();I={buffer:h,webGlBuffer:T},this.bufferCache_[_]=I}l.bindBuffer(h.getType(),I.webGlBuffer)}flushBufferData(h){const l=this.gl_;this.bindBuffer(h),l.bufferData(h.getType(),h.getArray(),h.getUsage())}deleteBuffer(h){const l=(0,W.v6)(h);delete this.bufferCache_[l]}disposeInternal(){const h=this.gl_.canvas;h.removeEventListener(C.LOST,this.boundHandleWebGLContextLost_),h.removeEventListener(C.RESTORED,this.boundHandleWebGLContextRestored_),e(this.canvasCacheKey_),delete this.gl_}prepareDraw(h,l,_){const I=this.gl_,T=this.getCanvas(),w=h.size,p=h.pixelRatio;(T.width!==w[0]*p||T.height!==w[1]*p)&&(T.width=w[0]*p,T.height=w[1]*p,T.style.width=w[0]+"px",T.style.height=w[1]+"px");for(let E=this.postProcessPasses_.length-1;E>=0;E--)this.postProcessPasses_[E].init(h);I.bindTexture(I.TEXTURE_2D,null),I.clearColor(0,0,0,0),I.depthRange(0,1),I.clearDepth(1),I.clear(I.COLOR_BUFFER_BIT|I.DEPTH_BUFFER_BIT),I.enable(I.BLEND),I.blendFunc(I.ONE,l?I.ZERO:I.ONE_MINUS_SRC_ALPHA),_?(I.enable(I.DEPTH_TEST),I.depthFunc(I.LEQUAL)):I.disable(I.DEPTH_TEST)}bindFrameBuffer(h,l){const _=this.getGL();_.bindFramebuffer(_.FRAMEBUFFER,h),l&&_.framebufferTexture2D(_.FRAMEBUFFER,_.COLOR_ATTACHMENT0,_.TEXTURE_2D,l,0)}bindInitialFrameBuffer(){const h=this.getGL(),l=this.postProcessPasses_[0].getFrameBuffer();h.bindFramebuffer(h.FRAMEBUFFER,l);const _=this.postProcessPasses_[0].getRenderTargetTexture();h.framebufferTexture2D(h.FRAMEBUFFER,h.COLOR_ATTACHMENT0,h.TEXTURE_2D,_,0)}bindTexture(h,l,_){const I=this.gl_;I.activeTexture(I.TEXTURE0+l),I.bindTexture(I.TEXTURE_2D,h),I.uniform1i(this.getUniformLocation(_),l)}bindAttribute(h,l,_){const I=this.getGL();this.bindBuffer(h);const T=this.getAttributeLocation(l);I.enableVertexAttribArray(T),I.vertexAttribPointer(T,_,I.FLOAT,!1,0,0)}prepareDrawToRenderTarget(h,l,_,I){const T=this.gl_,w=l.getSize();T.bindFramebuffer(T.FRAMEBUFFER,l.getFramebuffer()),T.bindRenderbuffer(T.RENDERBUFFER,l.getDepthbuffer()),T.viewport(0,0,w[0],w[1]),T.bindTexture(T.TEXTURE_2D,l.getTexture()),T.clearColor(0,0,0,0),T.depthRange(0,1),T.clearDepth(1),T.clear(T.COLOR_BUFFER_BIT|T.DEPTH_BUFFER_BIT),T.enable(T.BLEND),T.blendFunc(T.ONE,_?T.ZERO:T.ONE_MINUS_SRC_ALPHA),I?(T.enable(T.DEPTH_TEST),T.depthFunc(T.LEQUAL)):T.disable(T.DEPTH_TEST)}drawElements(h,l){const _=this.gl_;this.getExtension("OES_element_index_uint");const I=_.UNSIGNED_INT,T=4,w=l-h,p=h*T;_.drawElements(_.TRIANGLES,w,I,p)}finalizeDraw(h,l,_){for(let I=0,T=this.postProcessPasses_.length;I<T;I++)I===T-1?this.postProcessPasses_[I].apply(h,null,l,_):this.postProcessPasses_[I].apply(h,this.postProcessPasses_[I+1])}getCanvas(){return this.gl_.canvas}getGL(){return this.gl_}applyFrameState(h){const l=h.size,_=h.viewState.rotation,I=h.pixelRatio;this.setUniformFloatValue(s.TIME,(Date.now()-this.startTime_)*.001),this.setUniformFloatValue(s.ZOOM,h.viewState.zoom),this.setUniformFloatValue(s.RESOLUTION,h.viewState.resolution),this.setUniformFloatValue(s.PIXEL_RATIO,I),this.setUniformFloatVec2(s.VIEWPORT_SIZE_PX,[l[0],l[1]]),this.setUniformFloatValue(s.ROTATION,_)}applyHitDetectionUniform(h){const l=this.getUniformLocation(s.HIT_DETECTION);this.getGL().uniform1i(l,h?1:0),h&&this.setUniformFloatValue(s.PIXEL_RATIO,.5)}applyUniforms(h){const l=this.gl_;let _,I=0;this.uniforms_.forEach(T=>{if(_=typeof T.value=="function"?T.value(h):T.value,_ instanceof HTMLCanvasElement||_ instanceof HTMLImageElement||_ instanceof ImageData||_ instanceof WebGLTexture){_ instanceof WebGLTexture&&!T.texture?(T.prevValue=void 0,T.texture=_):T.texture||(T.prevValue=void 0,T.texture=l.createTexture()),this.bindTexture(T.texture,I,T.name),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_MIN_FILTER,l.LINEAR),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_S,l.CLAMP_TO_EDGE),l.texParameteri(l.TEXTURE_2D,l.TEXTURE_WRAP_T,l.CLAMP_TO_EDGE);const w=!(_ instanceof HTMLImageElement)||_.complete;!(_ instanceof WebGLTexture)&&w&&T.prevValue!==_&&(T.prevValue=_,l.texImage2D(l.TEXTURE_2D,0,l.RGBA,l.RGBA,l.UNSIGNED_BYTE,_)),I++}else if(Array.isArray(_)&&_.length===6)this.setUniformMatrixValue(T.name,(0,v.Z1)(this.tmpMat4_,_));else if(Array.isArray(_)&&_.length<=4)switch(_.length){case 2:l.uniform2f(this.getUniformLocation(T.name),_[0],_[1]);return;case 3:l.uniform3f(this.getUniformLocation(T.name),_[0],_[1],_[2]);return;case 4:l.uniform4f(this.getUniformLocation(T.name),_[0],_[1],_[2],_[3]);return;default:return}else typeof _=="number"&&l.uniform1f(this.getUniformLocation(T.name),_)})}useProgram(h,l){this.disableAllAttributes_(),this.gl_.useProgram(h),this.currentProgram_=h,l&&(this.applyFrameState(l),this.applyUniforms(l))}compileShader(h,l){const _=this.gl_,I=_.createShader(l);return _.shaderSource(I,h),_.compileShader(I),I}getProgram(h,l){const _=this.gl_,I=this.compileShader(h,_.FRAGMENT_SHADER),T=this.compileShader(l,_.VERTEX_SHADER),w=_.createProgram();if(_.attachShader(w,I),_.attachShader(w,T),_.linkProgram(w),!_.getShaderParameter(I,_.COMPILE_STATUS)){const p=`Fragment shader compilation failed: ${_.getShaderInfoLog(I)}`;throw new Error(p)}if(_.deleteShader(I),!_.getShaderParameter(T,_.COMPILE_STATUS)){const p=`Vertex shader compilation failed: ${_.getShaderInfoLog(T)}`;throw new Error(p)}if(_.deleteShader(T),!_.getProgramParameter(w,_.LINK_STATUS)){const p=`GL program linking failed: ${_.getProgramInfoLog(w)}`;throw new Error(p)}return w}getUniformLocation(h){const l=(0,W.v6)(this.currentProgram_);return this.uniformLocationsByProgram_[l]===void 0&&(this.uniformLocationsByProgram_[l]={}),this.uniformLocationsByProgram_[l][h]===void 0&&(this.uniformLocationsByProgram_[l][h]=this.gl_.getUniformLocation(this.currentProgram_,h)),this.uniformLocationsByProgram_[l][h]}getAttributeLocation(h){const l=(0,W.v6)(this.currentProgram_);return this.attribLocationsByProgram_[l]===void 0&&(this.attribLocationsByProgram_[l]={}),this.attribLocationsByProgram_[l][h]===void 0&&(this.attribLocationsByProgram_[l][h]=this.gl_.getAttribLocation(this.currentProgram_,h)),this.attribLocationsByProgram_[l][h]}makeProjectionTransform(h,l){const _=h.size,I=h.viewState.rotation,T=h.viewState.resolution,w=h.viewState.center;return(0,B.Zz)(l,0,0,2/(T*_[0]),2/(T*_[1]),-I,-w[0],-w[1]),l}setUniformFloatValue(h,l){this.gl_.uniform1f(this.getUniformLocation(h),l)}setUniformFloatVec2(h,l){this.gl_.uniform2fv(this.getUniformLocation(h),l)}setUniformFloatVec4(h,l){this.gl_.uniform4fv(this.getUniformLocation(h),l)}setUniformMatrixValue(h,l){this.gl_.uniformMatrix4fv(this.getUniformLocation(h),!1,l)}disableAllAttributes_(){for(let h=0;h<this.maxAttributeCount_;h++)this.gl_.disableVertexAttribArray(h)}enableAttributeArray_(h,l,_,I,T){const w=this.getAttributeLocation(h);w<0||(this.gl_.enableVertexAttribArray(w),this.gl_.vertexAttribPointer(w,l,_,!1,I,T))}enableAttributes(h){const l=a(h);let _=0;for(let I=0;I<h.length;I++){const T=h[I];this.enableAttributeArray_(T.name,T.size,T.type||d.zH,l,_),_+=T.size*g(T.type)}}handleWebGLContextLost(h){(0,y.I)(this.bufferCache_),this.currentProgram_=null,h.preventDefault()}handleWebGLContextRestored(){this.needsToBeRecreated_=!0}needsToBeRecreated(){return this.needsToBeRecreated_}createTexture(h,l,_,I){const T=this.gl_;_=_||T.createTexture();const w=I?T.NEAREST:T.LINEAR;T.bindTexture(T.TEXTURE_2D,_),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,w),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,w),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_WRAP_S,T.CLAMP_TO_EDGE),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_WRAP_T,T.CLAMP_TO_EDGE);const p=0,E=T.RGBA,f=0,S=T.RGBA,N=T.UNSIGNED_BYTE;return l instanceof Uint8Array?T.texImage2D(T.TEXTURE_2D,p,E,h[0],h[1],f,S,N,l):l?T.texImage2D(T.TEXTURE_2D,p,E,S,N,l):T.texImage2D(T.TEXTURE_2D,p,E,h[0],h[1],f,S,N,null),_}}function a(R){let h=0;for(let l=0;l<R.length;l++){const _=R[l];h+=_.size*g(_.type)}return h}function g(R){switch(R){case r.UNSIGNED_BYTE:return Uint8Array.BYTES_PER_ELEMENT;case r.UNSIGNED_SHORT:return Uint16Array.BYTES_PER_ELEMENT;case r.UNSIGNED_INT:return Uint32Array.BYTES_PER_ELEMENT;case r.FLOAT:default:return Float32Array.BYTES_PER_ELEMENT}}const m=i},10277:(gt,q,o)=>{o.d(q,{A:()=>B});var b=o(95801);class y extends b.A{constructor(v,C,d,A,O,x){super(v,C,O),this.originalEvent=d,this.pixel_=null,this.coordinate_=null,this.dragging=A!==void 0?A:!1,this.activePointers=x}get pixel(){return this.pixel_||(this.pixel_=this.map.getEventPixel(this.originalEvent)),this.pixel_}set pixel(v){this.pixel_=v}get coordinate(){return this.coordinate_||(this.coordinate_=this.map.getCoordinateFromPixel(this.pixel)),this.coordinate_}set coordinate(v){this.coordinate_=v}preventDefault(){super.preventDefault(),"preventDefault"in this.originalEvent&&this.originalEvent.preventDefault()}stopPropagation(){super.stopPropagation(),"stopPropagation"in this.originalEvent&&this.originalEvent.stopPropagation()}}const B=y},10940:(gt,q,o)=>{o.d(q,{A:()=>W});var b=o(6782),y=o(4087);class B{constructor(C){this.opacity_=C.opacity,this.rotateWithView_=C.rotateWithView,this.rotation_=C.rotation,this.scale_=C.scale,this.scaleArray_=(0,b.xq)(C.scale),this.displacement_=C.displacement,this.declutterMode_=C.declutterMode}clone(){const C=this.getScale();return new B({opacity:this.getOpacity(),scale:Array.isArray(C)?C.slice():C,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(0,y.b0)()}getImage(C){return(0,y.b0)()}getHitDetectionImage(){return(0,y.b0)()}getPixelRatio(C){return 1}getImageState(){return(0,y.b0)()}getImageSize(){return(0,y.b0)()}getOrigin(){return(0,y.b0)()}getSize(){return(0,y.b0)()}setDisplacement(C){this.displacement_=C}setOpacity(C){this.opacity_=C}setRotateWithView(C){this.rotateWithView_=C}setRotation(C){this.rotation_=C}setScale(C){this.scale_=C,this.scaleArray_=(0,b.xq)(C)}listenImageChange(C){(0,y.b0)()}load(){(0,y.b0)()}unlistenImageChange(C){(0,y.b0)()}ready(){return Promise.resolve()}}const W=B},10972:(gt,q,o)=>{o.d(q,{A:()=>C});var b=o(82585),y=o(34120),B=o(9438),W=o(74238);class v extends y.A{constructor(A){super();const O=A.element;O&&!A.target&&!O.style.pointerEvents&&(O.style.pointerEvents="auto"),this.element=O||null,this.target_=null,this.map_=null,this.listenerKeys=[],A.render&&(this.render=A.render),A.target&&this.setTarget(A.target)}disposeInternal(){this.element?.remove(),super.disposeInternal()}getMap(){return this.map_}setMap(A){this.map_&&this.element?.remove();for(let O=0,x=this.listenerKeys.length;O<x;++O)(0,B.JH)(this.listenerKeys[O]);if(this.listenerKeys.length=0,this.map_=A,A){const O=this.target_??A.getOverlayContainerStopEvent();this.element&&O.appendChild(this.element),this.render!==W.tV&&this.listenerKeys.push((0,B.KT)(A,b.A.POSTRENDER,this.render,this)),A.render()}}render(A){}setTarget(A){this.target_=typeof A=="string"?document.getElementById(A):A}}const C=v},11078:(gt,q,o)=>{o.d(q,{A:()=>b});const b={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4}},13326:(gt,q,o)=>{o.d(q,{T:()=>x,e:()=>M});var b=o(74848),y=o(22803),B=o(16515),W=o(55386),v=o(92745),C=o(89640),d=o(63142),A=o(53049),O=o(16913);function x(s,r,P){const D=s.fields.filter((e,i)=>!e.config.custom?.hideFrom?.tooltip&&(P==null||i===P));if(D.length===0)return null;const u=[],c=[],n=new Set;for(const e of D){const i=e.values[r],a=e.display?e.display(i):{text:`${i}`,numeric:+i};(0,O.u)(e,r).forEach(g=>{const m=`${g.title}/${g.href}`;n.has(m)||(c.push(g),n.add(m))}),u.push({name:(0,B.Ct)(e,s),value:i,valueString:(0,W.cN)(a)})}return{displayValues:u,links:c}}const M=({data:s,rowIndex:r,header:P,padding:D=0})=>{const u=(0,d.of)(t,D);if(!s||r==null)return null;const c=x(s,r);if(c==null)return null;const{displayValues:n,links:e}=c;return(0,b.jsxs)("div",{className:u.wrapper,children:[P&&(0,b.jsx)("div",{className:u.header,children:(0,b.jsx)("span",{className:u.title,children:P})}),(0,b.jsx)("table",{className:u.infoWrap,children:(0,b.jsxs)("tbody",{children:[n.map((i,a)=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("th",{children:i.name}),(0,b.jsx)("td",{children:(0,A.A)(i.valueString)})]},`${a}/${r}`)),e.map((i,a)=>(0,b.jsxs)("tr",{children:[(0,b.jsx)("th",{children:(0,b.jsx)(v.x6,{i18nKey:"visualization.data-hover-view.link",children:"Link"})}),(0,b.jsx)("td",{colSpan:2,children:(0,b.jsx)(C.Y,{href:i.href,external:i.target==="_blank",weight:"medium",inline:!1,children:i.title})})]},a))]})})]})},t=(s,r=0)=>({wrapper:(0,y.css)({padding:`${r}px`,background:s.components.tooltip.background,borderRadius:s.shape.borderRadius(2)}),header:(0,y.css)({background:s.colors.background.secondary,alignItems:"center",alignContent:"center",display:"flex",paddingBottom:s.spacing(1)}),title:(0,y.css)({fontWeight:s.typography.fontWeightMedium,overflow:"hidden",display:"inline-block",whiteSpace:"nowrap",textOverflow:"ellipsis",flexGrow:1}),infoWrap:(0,y.css)({padding:s.spacing(1),background:"transparent",border:"none",th:{fontWeight:s.typography.fontWeightMedium,padding:s.spacing(.25,2,.25,0)},tr:{borderBottom:`1px solid ${s.colors.border.weak}`,"&:last-child":{borderBottom:"none"}}}),link:(0,y.css)({color:s.colors.text.link})})},13628:(gt,q,o)=>{o.d(q,{A:()=>C});var b=o(6141),y=o(89352),B=o(4087),W=o(97907);class v{constructor(A){A=A||{},this.patternImage_=null,this.color_=null,A.color!==void 0&&this.setColor(A.color)}clone(){const A=this.getColor();return new v({color:Array.isArray(A)?A.slice():A||void 0})}getColor(){return this.color_}setColor(A){if(A!==null&&typeof A=="object"&&"src"in A){const O=(0,W.J)(null,A.src,"anonymous",void 0,A.offset?null:A.color?A.color:null,!(A.offset&&A.size));O.ready().then(()=>{this.patternImage_=null}),O.getImageState()===b.A.IDLE&&O.load(),O.getImageState()===b.A.LOADING&&(this.patternImage_=O)}this.color_=A}getKey(){const A=this.getColor();return A?A instanceof CanvasPattern||A instanceof CanvasGradient?(0,B.v6)(A):typeof A=="object"&&"src"in A?A.src+":"+A.offset:(0,y._j)(A).toString():""}loading(){return!!this.patternImage_}ready(){return this.patternImage_?this.patternImage_.ready():Promise.resolve()}}const C=v},14969:(gt,q,o)=>{o.d(q,{A:()=>W});var b=o(90025),y=o(90588);class B{constructor(C){this.highWaterMark=C!==void 0?C:2048,this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null}deleteOldest(){const C=this.pop();C instanceof b.A&&C.dispose()}canExpireCache(){return this.highWaterMark>0&&this.getCount()>this.highWaterMark}expireCache(C){for(;this.canExpireCache();)this.deleteOldest()}clear(){for(;this.oldest_;)this.deleteOldest()}containsKey(C){return this.entries_.hasOwnProperty(C)}forEach(C){let d=this.oldest_;for(;d;)C(d.value_,d.key_,this),d=d.newer}get(C,d){const A=this.entries_[C];return(0,y.v)(A!==void 0,"Tried to get a value for a key that does not exist in the cache"),A===this.newest_||(A===this.oldest_?(this.oldest_=this.oldest_.newer,this.oldest_.older=null):(A.newer.older=A.older,A.older.newer=A.newer),A.newer=null,A.older=this.newest_,this.newest_.newer=A,this.newest_=A),A.value_}remove(C){const d=this.entries_[C];return(0,y.v)(d!==void 0,"Tried to get a value for a key that does not exist in the cache"),d===this.newest_?(this.newest_=d.older,this.newest_&&(this.newest_.newer=null)):d===this.oldest_?(this.oldest_=d.newer,this.oldest_&&(this.oldest_.older=null)):(d.newer.older=d.older,d.older.newer=d.newer),delete this.entries_[C],--this.count_,d.value_}getCount(){return this.count_}getKeys(){const C=new Array(this.count_);let d=0,A;for(A=this.newest_;A;A=A.older)C[d++]=A.key_;return C}getValues(){const C=new Array(this.count_);let d=0,A;for(A=this.newest_;A;A=A.older)C[d++]=A.value_;return C}peekLast(){return this.oldest_.value_}peekLastKey(){return this.oldest_.key_}peekFirstKey(){return this.newest_.key_}peek(C){return this.entries_[C]?.value_}pop(){const C=this.oldest_;return delete this.entries_[C.key_],C.newer&&(C.newer.older=null),this.oldest_=C.newer,this.oldest_||(this.newest_=null),--this.count_,C.value_}replace(C,d){this.get(C),this.entries_[C].value_=d}set(C,d){(0,y.v)(!(C in this.entries_),"Tried to set a value for a key that is used already");const A={key_:C,newer:null,older:this.newest_,value_:d};this.newest_?this.newest_.newer=A:this.oldest_=A,this.newest_=A,this.entries_[C]=A,++this.count_}setSize(C){this.highWaterMark=C}}const W=B},20259:(gt,q,o)=>{o.d(q,{Ay:()=>C});var b=o(90588),y=o(90130);const B={STATIC_DRAW:y.Ek,STREAM_DRAW:y.Ss,DYNAMIC_DRAW:y.Be};class W{constructor(A,O){this.array_=null,this.type_=A,(0,b.v)(A===y.H7||A===y.IP,"A `WebGLArrayBuffer` must either be of type `ELEMENT_ARRAY_BUFFER` or `ARRAY_BUFFER`"),this.usage_=O!==void 0?O:B.STATIC_DRAW}ofSize(A){return this.array_=new(v(this.type_))(A),this}fromArray(A){return this.array_=v(this.type_).from(A),this}fromArrayBuffer(A){return this.array_=new(v(this.type_))(A),this}getType(){return this.type_}getArray(){return this.array_}setArray(A){const O=v(this.type_);if(!(A instanceof O))throw new Error(`Expected ${O}`);this.array_=A}getUsage(){return this.usage_}getSize(){return this.array_?this.array_.length:0}}function v(d){switch(d){case y.H7:return Float32Array;case y.IP:return Uint32Array;default:return Float32Array}}const C=W},21409:(gt,q,o)=>{o.d(q,{A:()=>v,v:()=>W});var b=o(73445),y=o(6292);class B extends y.Ay{constructor(d){d=d||{},super(d),d.handleDownEvent&&(this.handleDownEvent=d.handleDownEvent),d.handleDragEvent&&(this.handleDragEvent=d.handleDragEvent),d.handleMoveEvent&&(this.handleMoveEvent=d.handleMoveEvent),d.handleUpEvent&&(this.handleUpEvent=d.handleUpEvent),d.stopDown&&(this.stopDown=d.stopDown),this.handlingDownUpSequence=!1,this.targetPointers=[]}getPointerCount(){return this.targetPointers.length}handleDownEvent(d){return!1}handleDragEvent(d){}handleEvent(d){if(!d.originalEvent)return!0;let A=!1;if(this.updateTrackedPointers_(d),this.handlingDownUpSequence){if(d.type==b.A.POINTERDRAG)this.handleDragEvent(d),d.originalEvent.preventDefault();else if(d.type==b.A.POINTERUP){const O=this.handleUpEvent(d);this.handlingDownUpSequence=O&&this.targetPointers.length>0}}else if(d.type==b.A.POINTERDOWN){const O=this.handleDownEvent(d);this.handlingDownUpSequence=O,A=this.stopDown(O)}else d.type==b.A.POINTERMOVE&&this.handleMoveEvent(d);return!A}handleMoveEvent(d){}handleUpEvent(d){return!1}stopDown(d){return d}updateTrackedPointers_(d){d.activePointers&&(this.targetPointers=d.activePointers)}}function W(C){const d=C.length;let A=0,O=0;for(let x=0;x<d;x++)A+=C[x].clientX,O+=C[x].clientY;return{clientX:A/d,clientY:O/d}}const v=B},24029:(gt,q,o)=>{o.d(q,{A:()=>e});var b=o(49988),y=o(40190),B=o(91110),W=o(11078),v=o(66514),C=o(70915),d=o(82922),A=o(97404),O=o(6782),x=o(14969),M=o(40186),t=o(9703),s=o(4087),r=o(96769);function P(i,a,g,m,R){return`${(0,s.v6)(i)},${a},${(0,M.dp)(g,m,R)}`}function D(i,a,g){if(!(g in i))return i[g]=new Set([a]),!0;const m=i[g],R=m.has(a);return R||m.add(a),!R}function u(i,a,g){const m=i[g];return m?m.delete(a):!1}function c(i,a){const g=i.layerStatesArray[i.layerIndex];g.extent&&(a=(0,C._N)(a,(0,d.SD)(g.extent,i.viewState.projection)));const m=g.layer.getRenderSource();if(!m.getWrapX()){const R=m.getTileGridForProjection(i.viewState.projection).getExtent();R&&(a=(0,C._N)(a,R))}return a}class n extends r.A{constructor(a,g){super(a),g=g||{},this.extentChanged=!0,this.renderComplete=!1,this.renderedExtent_=null,this.renderedPixelRatio,this.renderedProjection=null,this.renderedTiles=[],this.renderedSourceKey_,this.renderedSourceRevision_,this.tempExtent=(0,C.S5)(),this.tempTileRange_=new B.A(0,0,0,0),this.tempTileCoord_=(0,M.N)(0,0,0);const m=g.cacheSize!==void 0?g.cacheSize:512;this.tileCache_=new x.A(m),this.maxStaleKeys=m*.5}getTileCache(){return this.tileCache_}getOrCreateTile(a,g,m,R){const h=this.tileCache_,_=this.getLayer().getSource(),I=P(_,_.getKey(),a,g,m);let T;if(h.containsKey(I))T=h.get(I);else{if(T=_.getTile(a,g,m,R.pixelRatio,R.viewState.projection),!T)return null;h.set(I,T)}return T}getTile(a,g,m,R){const h=this.getOrCreateTile(a,g,m,R);return h||null}getData(a){const g=this.frameState;if(!g)return null;const m=this.getLayer(),R=(0,t.Bb)(g.pixelToCoordinateTransform,a.slice()),h=m.getExtent();if(h&&!(0,C.Ym)(h,R))return null;const l=g.viewState,_=m.getRenderSource(),I=_.getTileGridForProjection(l.projection),T=_.getTilePixelRatio(g.pixelRatio);for(let w=I.getZForResolution(l.resolution);w>=I.getMinZoom();--w){const p=I.getTileCoordForCoordAndZ(R,w),E=this.getTile(w,p[1],p[2],g);if(!E||E.getState()!==W.A.LOADED)continue;const f=I.getOrigin(w),S=(0,O.xq)(I.getTileSize(w)),N=I.getResolution(w);let K;if(E instanceof y.A||E instanceof A.A)K=E.getImage();else if(E instanceof b.Ay){if(K=(0,b.xo)(E.getData()),!K)continue}else continue;const H=Math.floor(T*((R[0]-f[0])/N-p[1]*S[0])),Y=Math.floor(T*((f[1]-R[1])/N-p[2]*S[1])),st=Math.round(T*_.getGutterForProjection(l.projection));return this.getImageData(K,H+st,Y+st)}return null}prepareFrame(a){this.renderedProjection?a.viewState.projection!==this.renderedProjection&&(this.tileCache_.clear(),this.renderedProjection=a.viewState.projection):this.renderedProjection=a.viewState.projection;const g=this.getLayer().getSource();if(!g)return!1;const m=g.getRevision();return this.renderedSourceRevision_?this.renderedSourceRevision_!==m&&(this.renderedSourceRevision_=m,this.renderedSourceKey_===g.getKey()&&this.tileCache_.clear()):this.renderedSourceRevision_=m,!0}enqueueTiles(a,g,m,R,h){const l=a.viewState,_=this.getLayer(),I=_.getRenderSource(),T=I.getTileGridForProjection(l.projection),w=(0,s.v6)(I);w in a.wantedTiles||(a.wantedTiles[w]={});const p=a.wantedTiles[w],E=_.getMapInternal(),f=Math.max(m-h,T.getMinZoom(),T.getZForResolution(Math.min(_.getMaxResolution(),E?E.getView().getResolutionForZoom(Math.max(_.getMinZoom(),0)):T.getResolution(0)),I.zDirection)),S=l.rotation,N=S?(0,C.Yw)(l.center,l.resolution,S,a.size):void 0;for(let K=m;K>=f;--K){const H=T.getTileRangeForExtentAndZ(g,K,this.tempTileRange_),Y=T.getResolution(K);for(let st=H.minX;st<=H.maxX;++st)for(let X=H.minY;X<=H.maxY;++X){if(S&&!T.tileCoordIntersectsViewport([K,st,X],N))continue;const L=this.getTile(K,st,X,a);if(!L||!D(R,L,K))continue;const it=L.getKey();if(p[it]=!0,L.getState()===W.A.IDLE&&!a.tileQueue.isKeyQueued(it)){const k=(0,M.N)(K,st,X,this.tempTileCoord_);a.tileQueue.enqueue([L,w,T.getTileCoordCenter(k),Y])}}}}findStaleTile_(a,g){const m=this.tileCache_,R=a[0],h=a[1],l=a[2],_=this.getStaleKeys();for(let I=0;I<_.length;++I){const T=P(this.getLayer().getSource(),_[I],R,h,l);if(m.containsKey(T)){const w=m.peek(T);if(w.getState()===W.A.LOADED)return w.endTransition((0,s.v6)(this)),D(g,w,R),!0}}return!1}findAltTiles_(a,g,m,R){const h=a.getTileRangeForTileCoordAndZ(g,m,this.tempTileRange_);if(!h)return!1;let l=!0;const _=this.tileCache_,I=this.getLayer().getRenderSource(),T=I.getKey();for(let w=h.minX;w<=h.maxX;++w)for(let p=h.minY;p<=h.maxY;++p){const E=P(I,T,m,w,p);let f=!1;if(_.containsKey(E)){const S=_.peek(E);S.getState()===W.A.LOADED&&(D(R,S,m),f=!0)}f||(l=!1)}return l}renderFrame(a,g){this.renderComplete=!0;const m=a.layerStatesArray[a.layerIndex],R=a.viewState,h=R.projection,l=R.resolution,_=R.center,I=a.pixelRatio,T=this.getLayer(),w=T.getSource(),p=w.getTileGridForProjection(h),E=p.getZForResolution(l,w.zDirection),f=p.getResolution(E),S=w.getKey();this.renderedSourceKey_?this.renderedSourceKey_!==S&&(this.prependStaleKey(this.renderedSourceKey_),this.renderedSourceKey_=S):this.renderedSourceKey_=S;let N=a.extent;const K=w.getTilePixelRatio(I);this.prepareContainer(a,g);const H=this.context.canvas.width,Y=this.context.canvas.height,st=m.extent&&(0,d.SD)(m.extent,h);st&&(N=(0,C._N)(N,(0,d.SD)(m.extent,h)));const X=f*H/2/K,L=f*Y/2/K,j=[_[0]-X,_[1]-L,_[0]+X,_[1]+L],it={};this.renderedTiles.length=0;const k=T.getPreload();if(a.nextExtent){const G=p.getZForResolution(R.nextResolution,w.zDirection),Z=c(a,a.nextExtent);this.enqueueTiles(a,Z,G,it,k)}const Q=c(a,N);if(this.enqueueTiles(a,Q,E,it,0),k>0&&setTimeout(()=>{this.enqueueTiles(a,Q,E-1,it,k-1)},0),!(E in it))return this.container;const nt=(0,s.v6)(this),tt=a.time;for(const G of it[E]){const Z=G.getState();if(Z===W.A.EMPTY)continue;const ut=G.tileCoord;if(Z===W.A.LOADED&&G.getAlpha(nt,tt)===1){G.endTransition(nt);continue}if(Z!==W.A.ERROR&&(this.renderComplete=!1),this.findStaleTile_(ut,it)){u(it,G,E),a.animate=!0;continue}if(this.findAltTiles_(p,ut,E+1,it))continue;const $=p.getMinZoom();for(let et=E-1;et>=$&&!this.findAltTiles_(p,ut,et,it);--et);}const at=f/l*I/K,ht=this.getRenderContext(a);(0,t.Zz)(this.tempTransform,H/2,Y/2,at,at,0,-H/2,-Y/2),m.extent&&this.clipUnrotated(ht,a,st),w.getInterpolate()||(ht.imageSmoothingEnabled=!1),this.preRender(ht,a);const ft=Object.keys(it).map(Number);ft.sort(v.V_);let vt;const Tt=[],z=[];for(let G=ft.length-1;G>=0;--G){const Z=ft[G],ut=w.getTilePixelSize(Z,I,h),F=p.getResolution(Z)/f,$=ut[0]*F*at,et=ut[1]*F*at,rt=p.getTileCoordForCoordAndZ((0,C.Py)(j),Z),ct=p.getTileCoordExtent(rt),Et=(0,t.Bb)(this.tempTransform,[K*(ct[0]-j[0])/f,K*(j[3]-ct[3])/f]),Rt=K*w.getGutterForProjection(h);for(const _t of it[Z]){if(_t.getState()!==W.A.LOADED)continue;const Ot=_t.tileCoord,wt=rt[1]-Ot[1],V=Math.round(Et[0]-(wt-1)*$),U=rt[2]-Ot[2],J=Math.round(Et[1]-(U-1)*et),lt=Math.round(Et[0]-wt*$),mt=Math.round(Et[1]-U*et),xt=V-lt,pt=J-mt,Ct=ft.length===1;let Pt=!1;vt=[lt,mt,lt+xt,mt,lt+xt,mt+pt,lt,mt+pt];for(let dt=0,At=Tt.length;dt<At;++dt)if(!Ct&&Z<z[dt]){const yt=Tt[dt];(0,C.HY)([lt,mt,lt+xt,mt+pt],[yt[0],yt[3],yt[4],yt[7]])&&(Pt||(ht.save(),Pt=!0),ht.beginPath(),ht.moveTo(vt[0],vt[1]),ht.lineTo(vt[2],vt[3]),ht.lineTo(vt[4],vt[5]),ht.lineTo(vt[6],vt[7]),ht.moveTo(yt[6],yt[7]),ht.lineTo(yt[4],yt[5]),ht.lineTo(yt[2],yt[3]),ht.lineTo(yt[0],yt[1]),ht.clip())}Tt.push(vt),z.push(Z),this.drawTile(_t,a,lt,mt,xt,pt,Rt,Ct),Pt&&ht.restore(),this.renderedTiles.unshift(_t),this.updateUsedTiles(a.usedTiles,w,_t)}}if(this.renderedResolution=f,this.extentChanged=!this.renderedExtent_||!(0,C.aI)(this.renderedExtent_,j),this.renderedExtent_=j,this.renderedPixelRatio=I,this.postRender(this.context,a),m.extent&&ht.restore(),ht.imageSmoothingEnabled=!0,this.renderComplete){const G=(Z,ut)=>{const ot=(0,s.v6)(w),F=ut.wantedTiles[ot],$=F?Object.keys(F).length:0;this.updateCacheSize($),this.tileCache_.expireCache()};a.postRenderFunctions.push(G)}return this.container}updateCacheSize(a){this.tileCache_.highWaterMark=Math.max(this.tileCache_.highWaterMark,a*2)}drawTile(a,g,m,R,h,l,_,I){let T;if(a instanceof b.Ay){if(T=(0,b.xo)(a.getData()),!T)throw new Error("Rendering array data is not yet supported")}else T=this.getTileImage(a);if(!T)return;const w=this.getRenderContext(g),p=(0,s.v6)(this),E=g.layerStatesArray[g.layerIndex],f=E.opacity*(I?a.getAlpha(p,g.time):1),S=f!==w.globalAlpha;S&&(w.save(),w.globalAlpha=f),w.drawImage(T,_,_,T.width-2*_,T.height-2*_,m,R,h,l),S&&w.restore(),f!==E.opacity?g.animate=!0:I&&a.endTransition(p)}getImage(){const a=this.context;return a?a.canvas:null}getTileImage(a){return a.getImage()}updateUsedTiles(a,g,m){const R=(0,s.v6)(g);R in a||(a[R]={}),a[R][m.getKey()]=!0}}const e=n},24498:(gt,q,o)=>{o.d(q,{a$:()=>W,b8:()=>y,cq:()=>v,dv:()=>B});var b=o(61597);function y(C){if(C!==void 0)return 0}function B(C){if(C!==void 0)return C}function W(C){const d=2*Math.PI/C;return function(A,O){if(O)return A;if(A!==void 0)return A=Math.floor(A/d+.5)*d,A}}function v(C){const d=C===void 0?(0,b.eh)(5):C;return function(A,O){return O||A===void 0?A:Math.abs(A)<=d?0:A}}},25176:(gt,q,o)=>{o.d(q,{$N:()=>v,K5:()=>x,NM:()=>O,Si:()=>b,XI:()=>B,nT:()=>C});const b="ol-hidden",y="ol-selectable",B="ol-unselectable",W="ol-unsupported",v="ol-control",C="ol-collapsed",d=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-z0-9]+?)\\s*$`].join(""),"i"),A=["style","variant","weight","size","lineHeight","family"],O={normal:400,bold:700},x=function(M){const t=M.match(d);if(!t)return null;const s={lineHeight:"normal",size:"1.2em",style:"normal",weight:"400",variant:"normal"};for(let r=0,P=A.length;r<P;++r){const D=t[r+1];D!==void 0&&(s[A[r]]=typeof D=="string"?D.trim():D)}return isNaN(Number(s.weight))&&s.weight in O&&(s.weight=O[s.weight]),s.families=s.family.split(/,\s?/).map(r=>r.trim().replace(/^['"]|['"]$/g,"")),s}},25847:(gt,q,o)=>{o.d(q,{L$:()=>rt,M7:()=>ct,t7:()=>Et,nR:()=>Rt,VO:()=>vt,Lm:()=>Z,z0:()=>F,$R:()=>ht,Tl:()=>ut,Sl:()=>ot});var b=o(89352),y=o(11078),B=o(70915),W=o(82922),v=o(6782),C=o(9703),d=o(83954),A=o(20259),O=o(9777),x=o(49988),M=o(40190),t=o(68711),s=o(97404),r=o(90130),P=o(6837),D=o(79332),u=o(4087);class c extends D.A{constructor(U){super(),this.tile,this.handleTileChange_=this.handleTileChange_.bind(this),this.gutter=U.gutter||0,this.helper=U.helper,this.loaded=!1,this.ready=!1}setTile(U){if(U!==this.tile)if(this.tile&&this.tile.removeEventListener(P.A.CHANGE,this.handleTileChange_),this.tile=U,this.loaded=U.getState()===y.A.LOADED,this.loaded)this.uploadTile();else{if(U instanceof M.A){const J=U.getImage();J instanceof Image&&!J.crossOrigin&&(J.crossOrigin="anonymous")}U.addEventListener(P.A.CHANGE,this.handleTileChange_)}}uploadTile(){(0,u.b0)()}setReady(){this.ready=!0,this.dispatchEvent(P.A.CHANGE)}handleTileChange_(){this.tile.getState()===y.A.LOADED&&(this.loaded=!0,this.uploadTile())}setHelper(U){this.helper=U,this.helper&&this.loaded&&this.uploadTile()}disposeInternal(){this.setHelper(null),this.tile.removeEventListener(P.A.CHANGE,this.handleTileChange_)}}const n=c;function e(V,U,J){const lt=J?V.LINEAR:V.NEAREST;V.bindTexture(V.TEXTURE_2D,U),V.texParameteri(V.TEXTURE_2D,V.TEXTURE_WRAP_S,V.CLAMP_TO_EDGE),V.texParameteri(V.TEXTURE_2D,V.TEXTURE_WRAP_T,V.CLAMP_TO_EDGE),V.texParameteri(V.TEXTURE_2D,V.TEXTURE_MIN_FILTER,lt),V.texParameteri(V.TEXTURE_2D,V.TEXTURE_MAG_FILTER,lt)}function i(V,U,J,lt){e(V,U,lt),V.texImage2D(V.TEXTURE_2D,0,V.RGBA,V.RGBA,V.UNSIGNED_BYTE,J)}function a(V,U,J,lt,mt,xt){const pt=V.getGL();let Ct,Pt;J instanceof Float32Array?(Ct=pt.FLOAT,V.getExtension("OES_texture_float"),Pt=V.getExtension("OES_texture_float_linear")!==null):(Ct=pt.UNSIGNED_BYTE,Pt=!0),e(pt,U,xt&&Pt);const dt=J.byteLength/lt[1];let At=1;dt%8===0?At=8:dt%4===0?At=4:dt%2===0&&(At=2);let yt;switch(mt){case 1:{yt=pt.LUMINANCE;break}case 2:{yt=pt.LUMINANCE_ALPHA;break}case 3:{yt=pt.RGB;break}case 4:{yt=pt.RGBA;break}default:throw new Error(`Unsupported number of bands: ${mt}`)}const It=pt.getParameter(pt.UNPACK_ALIGNMENT);pt.pixelStorei(pt.UNPACK_ALIGNMENT,At),pt.texImage2D(pt.TEXTURE_2D,0,yt,lt[0],lt[1],0,yt,Ct,J),pt.pixelStorei(pt.UNPACK_ALIGNMENT,It)}let g=null;function m(){g=(0,t.Y)(1,1,void 0,{willReadFrequently:!0})}class R extends n{constructor(U){super(U),this.textures=[],this.renderSize_=(0,v.xq)(U.grid.getTileSize(U.tile.tileCoord[0])),this.bandCount=NaN;const J=new A.Ay(r.H7,r.Ek);J.fromArray([0,1,1,1,1,0,0,0]),this.helper.flushBufferData(J),this.coords=J,this.setTile(U.tile)}setHelper(U){const J=this.helper?.getGL();if(J){this.helper.deleteBuffer(this.coords);for(let lt=0;lt<this.textures.length;++lt)J.deleteTexture(this.textures[lt])}super.setHelper(U),U&&U.flushBufferData(this.coords)}uploadTile(){const U=this.helper,J=U.getGL(),lt=this.tile;this.textures.length=0;let mt;lt instanceof M.A||lt instanceof s.A?mt=lt.getImage():mt=lt.getData();const xt=(0,x.xo)(mt);if(xt){const Mt=J.createTexture();this.textures.push(Mt),this.bandCount=4,i(J,Mt,xt,lt.interpolate),this.setReady();return}mt=(0,x.bL)(mt);const pt=lt.getSize(),Ct=[pt[0]+2*this.gutter,pt[1]+2*this.gutter],Pt=mt instanceof Float32Array,dt=Ct[0]*Ct[1],At=Pt?Float32Array:Uint8Array,yt=At.BYTES_PER_ELEMENT,It=mt.byteLength/Ct[1];this.bandCount=Math.floor(It/yt/Ct[0]);const Dt=Math.ceil(this.bandCount/4);if(Dt===1){const Mt=J.createTexture();this.textures.push(Mt),a(U,Mt,mt,Ct,this.bandCount,lt.interpolate),this.setReady();return}const St=new Array(Dt);for(let Mt=0;Mt<Dt;++Mt){const Lt=J.createTexture();this.textures.push(Lt);const Ft=Mt<Dt-1?4:(this.bandCount-1)%4+1;St[Mt]=new At(dt*Ft)}let Wt=0,Kt=0;const Gt=Ct[0]*this.bandCount;for(let Mt=0;Mt<Ct[1];++Mt){for(let Lt=0;Lt<Gt;++Lt){const Ft=mt[Kt+Lt],Bt=Math.floor(Wt/this.bandCount),bt=Lt%this.bandCount,Nt=Math.floor(bt/4),zt=St[Nt],jt=zt.length/dt,Ut=bt%4;zt[Bt*jt+Ut]=Ft,++Wt}Kt+=It/yt}for(let Mt=0;Mt<Dt;++Mt){const Lt=this.textures[Mt],Ft=St[Mt],Bt=Ft.length/dt;a(U,Lt,Ft,Ct,Bt,lt.interpolate)}this.setReady()}getImagePixelData_(U,J,lt){const mt=this.gutter,xt=this.renderSize_[0],pt=this.renderSize_[1];g||m(),g.clearRect(0,0,1,1);const Ct=U.width,Pt=U.height,dt=Ct-2*mt,At=Pt-2*mt,yt=mt+Math.floor(dt*(J/xt)),It=mt+Math.floor(At*(lt/pt));let Dt;try{g.drawImage(U,yt,It,1,1,0,0,1,1),Dt=g.getImageData(0,0,1,1).data}catch{return g=null,null}return Dt}getArrayPixelData_(U,J,lt,mt){const xt=this.gutter,pt=this.renderSize_[0],Ct=this.renderSize_[1],Pt=J[0],dt=J[1],At=Pt+2*xt,yt=dt+2*xt,It=xt+Math.floor(Pt*(lt/pt)),Dt=xt+Math.floor(dt*(mt/Ct));if(U instanceof DataView){const Wt=U.byteLength/(At*yt),Kt=Wt*(Dt*At+It),Gt=U.buffer.slice(Kt,Kt+Wt);return new DataView(Gt)}const St=this.bandCount*(Dt*At+It);return U.slice(St,St+this.bandCount)}getPixelData(U,J){if(!this.loaded)return null;if(this.tile instanceof x.Ay){const lt=this.tile.getData(),mt=(0,x.bL)(lt);if(mt){const xt=this.tile.getSize();return this.getArrayPixelData_(mt,xt,U,J)}return this.getImagePixelData_((0,x.xo)(lt),U,J)}return this.getImagePixelData_(this.tile.getImage(),U,J)}}const h=R;var l=o(91110),_=o(66514),I=o(14969),T=o(40186),w=o(38111);const p={TILE_TRANSFORM:"u_tileTransform",TRANSITION_ALPHA:"u_transitionAlpha",DEPTH:"u_depth",RENDER_EXTENT:"u_renderExtent",PATTERN_ORIGIN:"u_patternOrigin",RESOLUTION:"u_resolution",ZOOM:"u_zoom",GLOBAL_ALPHA:"u_globalAlpha",PROJECTION_MATRIX:"u_projectionMatrix",SCREEN_TO_WORLD_MATRIX:"u_screenToWorldMatrix"};function E(V){return 1/(V+2)}function f(){return{tileIds:new Set,representationsByZ:{}}}function S(V,U){return V.tileIds.has((0,u.v6)(U))}function N(V,U,J){const lt=V.representationsByZ;J in lt||(lt[J]=new Set),lt[J].add(U),V.tileIds.add((0,u.v6)(U.tile))}function K(V,U){const J=V.layerStatesArray[V.layerIndex];J.extent&&(U=(0,B._N)(U,(0,W.SD)(J.extent,V.viewState.projection)));const lt=J.layer.getRenderSource();if(!lt.getWrapX()){const mt=lt.getTileGridForProjection(V.viewState.projection).getExtent();mt&&(U=(0,B._N)(U,mt))}return U}function H(V,U){return`${(0,u.v6)(V)},${V.getKey()},${V.getRevision()},${(0,T.i7)(U)}`}class Y extends w.A{constructor(U,J){super(U,{uniforms:J.uniforms,postProcesses:J.postProcesses}),this.renderComplete=!1,this.tileTransform_=(0,C.vt)(),this.tempMat4=(0,d.vt)(),this.tempTileRange_=new l.A(0,0,0,0),this.tempTileCoord_=(0,T.N)(0,0,0),this.tempSize_=[0,0];const lt=J.cacheSize!==void 0?J.cacheSize:512;this.tileRepresentationCache=new I.A(lt),this.frameState=null,this.renderedProjection_=void 0}reset(U){super.reset({uniforms:U.uniforms})}prepareFrameInternal(U){this.renderedProjection_?U.viewState.projection!==this.renderedProjection_&&(this.clearCache(),this.renderedProjection_=U.viewState.projection):this.renderedProjection_=U.viewState.projection;const lt=this.getLayer().getRenderSource();return!lt||(0,B.Im)(K(U,U.extent))?!1:lt.getState()==="ready"}createTileRepresentation(U){return(0,u.b0)()}enqueueTiles(U,J,lt,mt,xt){const pt=U.viewState,Ct=this.getLayer(),Pt=Ct.getRenderSource(),dt=Pt.getTileGridForProjection(pt.projection),At=Pt.getGutterForProjection(pt.projection),yt=(0,u.v6)(Pt);yt in U.wantedTiles||(U.wantedTiles[yt]={});const It=U.wantedTiles[yt],Dt=this.tileRepresentationCache,St=Ct.getMapInternal(),Wt=Math.max(lt-xt,dt.getMinZoom(),dt.getZForResolution(Math.min(Ct.getMaxResolution(),St?St.getView().getResolutionForZoom(Math.max(Ct.getMinZoom(),0)):dt.getResolution(0)),Pt.zDirection)),Kt=pt.rotation,Gt=Kt?(0,B.Yw)(pt.center,pt.resolution,Kt,U.size):void 0;for(let Mt=lt;Mt>=Wt;--Mt){const Lt=dt.getTileRangeForExtentAndZ(J,Mt,this.tempTileRange_),Ft=dt.getResolution(Mt);for(let Bt=Lt.minX;Bt<=Lt.maxX;++Bt)for(let bt=Lt.minY;bt<=Lt.maxY;++bt){if(Kt&&!dt.tileCoordIntersectsViewport([Mt,Bt,bt],Gt))continue;const Nt=(0,T.N)(Mt,Bt,bt,this.tempTileCoord_),zt=H(Pt,Nt);let jt,Ut;if(Dt.containsKey(zt)&&(jt=Dt.get(zt),Ut=jt.tile),(!jt||jt.tile.key!==Pt.getKey())&&(Ut=Pt.getTile(Mt,Bt,bt,U.pixelRatio,pt.projection),!Ut)||S(mt,Ut))continue;jt?jt.setTile(Ut):(jt=this.createTileRepresentation({tile:Ut,grid:dt,helper:this.helper,gutter:At}),Dt.set(zt,jt)),N(mt,jt,Mt);const Xt=Ut.getKey();It[Xt]=!0,Ut.getState()===y.A.IDLE&&(U.tileQueue.isKeyQueued(Xt)||U.tileQueue.enqueue([Ut,yt,dt.getTileCoordCenter(Nt),Ft]))}}}beforeTilesRender(U,J){this.helper.prepareDraw(this.frameState,!J,!0)}beforeTilesMaskRender(U){return!1}renderTile(U,J,lt,mt,xt,pt,Ct,Pt,dt,At,yt){}renderTileMask(U,J,lt,mt){}drawTile_(U,J,lt,mt,xt,pt,Ct){if(!J.ready)return;const dt=J.tile.tileCoord,At=(0,T.i7)(dt),yt=At in pt?pt[At]:1,It=Ct.getResolution(lt),Dt=(0,v.xq)(Ct.getTileSize(lt),this.tempSize_),St=Ct.getOrigin(lt),Wt=Ct.getTileCoordExtent(dt),Kt=yt<1?-1:E(lt);yt<1&&(U.animate=!0);const Gt=U.viewState,Mt=Gt.center[0],Lt=Gt.center[1],Ft=Dt[0]+2*mt,Bt=Dt[1]+2*mt,bt=Ft/Bt,Nt=(Mt-St[0])/(Dt[0]*It),zt=(St[1]-Lt)/(Dt[1]*It),jt=Gt.resolution/It,Ut=dt[1],Xt=dt[2];(0,C.cL)(this.tileTransform_),(0,C.hs)(this.tileTransform_,2/(U.size[0]*jt/Ft),-2/(U.size[1]*jt/Ft)),(0,C.e$)(this.tileTransform_,Gt.rotation),(0,C.hs)(this.tileTransform_,1,1/bt),(0,C.Tl)(this.tileTransform_,(Dt[0]*(Ut-Nt)-mt)/Ft,(Dt[1]*(Xt-zt)-mt)/Bt),this.renderTile(J,this.tileTransform_,U,xt,It,Dt,St,Wt,Kt,mt,yt)}renderFrame(U){this.frameState=U,this.renderComplete=!0;const J=this.helper.getGL();this.preRender(J,U);const lt=U.viewState,mt=this.getLayer(),xt=mt.getRenderSource(),pt=xt.getTileGridForProjection(lt.projection),Ct=xt.getGutterForProjection(lt.projection),Pt=K(U,U.extent),dt=pt.getZForResolution(lt.resolution,xt.zDirection),At=f(),yt=mt.getPreload();if(U.nextExtent){const Lt=pt.getZForResolution(lt.nextResolution,xt.zDirection),Ft=K(U,U.nextExtent);this.enqueueTiles(U,Ft,Lt,At,yt)}this.enqueueTiles(U,Pt,dt,At,0),yt>0&&setTimeout(()=>{this.enqueueTiles(U,Pt,dt-1,At,yt-1)},0);const It={};let Dt=!1;const St=At.representationsByZ;if(dt in St){const Lt=(0,u.v6)(this),Ft=U.time;for(const Bt of St[dt]){const bt=Bt.tile;if(bt.getState()===y.A.EMPTY)continue;const Nt=bt.tileCoord;if(Bt.ready){const Ut=bt.getAlpha(Lt,Ft);if(Ut===1){bt.endTransition(Lt);continue}Dt=!0;const Xt=(0,T.i7)(Nt);It[Xt]=Ut}if(this.renderComplete=!1,this.findAltTiles_(pt,Nt,dt+1,At))continue;const jt=pt.getMinZoom();for(let Ut=dt-1;Ut>=jt&&!this.findAltTiles_(pt,Nt,Ut,At);--Ut);}}const Wt=Object.keys(St).map(Number).sort(_.rG);if(this.beforeTilesMaskRender(U))for(let Lt=0,Ft=Wt.length;Lt<Ft;++Lt){const Bt=Wt[Lt];for(const bt of St[Bt]){const Nt=bt.tile.tileCoord;if((0,T.i7)(Nt)in It)continue;const jt=pt.getTileCoordExtent(Nt);this.renderTileMask(bt,Bt,jt,E(Bt))}}this.beforeTilesRender(U,Dt);for(let Lt=0,Ft=Wt.length;Lt<Ft;++Lt){const Bt=Wt[Lt];for(const bt of St[Bt]){const Nt=bt.tile.tileCoord;(0,T.i7)(Nt)in It||this.drawTile_(U,bt,Bt,Ct,Pt,It,pt)}}if(dt in St)for(const Lt of St[dt]){const Ft=Lt.tile.tileCoord;(0,T.i7)(Ft)in It&&this.drawTile_(U,Lt,dt,Ct,Pt,It,pt)}this.beforeFinalize(U),this.helper.finalizeDraw(U,this.dispatchPreComposeEvent,this.dispatchPostComposeEvent);const Gt=this.helper.getCanvas(),Mt=this.tileRepresentationCache;for(;Mt.canExpireCache();)Mt.pop().dispose();return this.postRender(J,U),Gt}beforeFinalize(U){}findAltTiles_(U,J,lt,mt){const xt=U.getTileRangeForTileCoordAndZ(J,lt,this.tempTileRange_);if(!xt)return!1;let pt=!0;const Ct=this.tileRepresentationCache,Pt=this.getLayer().getRenderSource();for(let dt=xt.minX;dt<=xt.maxX;++dt)for(let At=xt.minY;At<=xt.maxY;++At){const yt=H(Pt,[lt,dt,At]);let It=!1;if(Ct.containsKey(yt)){const Dt=Ct.get(yt);Dt.ready&&!S(mt,Dt.tile)&&(N(mt,Dt,lt),It=!0)}It||(pt=!1)}return pt}clearCache(){super.clearCache();const U=this.tileRepresentationCache;U.forEach(J=>J.dispose()),U.clear()}afterHelperCreated(){super.afterHelperCreated(),this.tileRepresentationCache.forEach(U=>U.setHelper(this.helper))}disposeInternal(){super.disposeInternal(),delete this.frameState}}const st=Y,X={...p,TILE_TEXTURE_ARRAY:"u_tileTextures",TEXTURE_PIXEL_WIDTH:"u_texturePixelWidth",TEXTURE_PIXEL_HEIGHT:"u_texturePixelHeight",TEXTURE_RESOLUTION:"u_textureResolution",TEXTURE_ORIGIN_X:"u_textureOriginX",TEXTURE_ORIGIN_Y:"u_textureOriginY"},j=[{name:{TEXTURE_COORD:"a_textureCoord"}.TEXTURE_COORD,size:2,type:O.jQ.FLOAT}];class it extends st{constructor(U,J){super(U,J),this.program_,this.vertexShader_=J.vertexShader,this.fragmentShader_=J.fragmentShader,this.indices_=new A.Ay(r.IP,r.Ek),this.indices_.fromArray([0,1,3,1,2,3]),this.paletteTextures_=J.paletteTextures||[]}reset(U){if(super.reset(U),this.helper){const J=this.helper.getGL();for(const lt of this.paletteTextures_)lt.delete(J)}if(this.vertexShader_=U.vertexShader,this.fragmentShader_=U.fragmentShader,this.paletteTextures_=U.paletteTextures||[],this.helper){this.program_=this.helper.getProgram(this.fragmentShader_,this.vertexShader_);const J=this.helper.getGL();for(const lt of this.paletteTextures_)lt.getTexture(J)}}afterHelperCreated(){super.afterHelperCreated();const U=this.helper.getGL();for(const J of this.paletteTextures_)J.getTexture(U);this.program_=this.helper.getProgram(this.fragmentShader_,this.vertexShader_),this.helper.flushBufferData(this.indices_)}removeHelper(){if(this.helper){const U=this.helper.getGL();for(const J of this.paletteTextures_)J.delete(U)}super.removeHelper()}createTileRepresentation(U){return new h(U)}beforeTilesRender(U,J){super.beforeTilesRender(U,J),this.helper.useProgram(this.program_,U)}renderTile(U,J,lt,mt,xt,pt,Ct,Pt,dt,At,yt){const It=this.helper.getGL();this.helper.bindBuffer(U.coords),this.helper.bindBuffer(this.indices_),this.helper.enableAttributes(j);let Dt=0;for(;Dt<U.textures.length;){const bt=`${X.TILE_TEXTURE_ARRAY}[${Dt}]`;this.helper.bindTexture(U.textures[Dt],Dt,bt),++Dt}for(let bt=0;bt<this.paletteTextures_.length;++bt){const Nt=this.paletteTextures_[bt],zt=Nt.getTexture(It);this.helper.bindTexture(zt,Dt,Nt.name),++Dt}const St=lt.viewState,Wt=pt[0]+2*At,Kt=pt[1]+2*At,Mt=U.tile.tileCoord,Lt=Mt[1],Ft=Mt[2];this.helper.setUniformMatrixValue(X.TILE_TRANSFORM,(0,d.Z1)(this.tempMat4,J)),this.helper.setUniformFloatValue(X.TRANSITION_ALPHA,yt),this.helper.setUniformFloatValue(X.DEPTH,dt);let Bt=mt;At>0&&(Bt=Pt,(0,B._N)(Bt,mt,Bt)),this.helper.setUniformFloatVec4(X.RENDER_EXTENT,Bt),this.helper.setUniformFloatValue(X.RESOLUTION,St.resolution),this.helper.setUniformFloatValue(X.ZOOM,St.zoom),this.helper.setUniformFloatValue(X.TEXTURE_PIXEL_WIDTH,Wt),this.helper.setUniformFloatValue(X.TEXTURE_PIXEL_HEIGHT,Kt),this.helper.setUniformFloatValue(X.TEXTURE_RESOLUTION,xt),this.helper.setUniformFloatValue(X.TEXTURE_ORIGIN_X,Ct[0]+Lt*pt[0]*xt-At*xt),this.helper.setUniformFloatValue(X.TEXTURE_ORIGIN_Y,Ct[1]-Ft*pt[1]*xt+At*xt),this.helper.drawElements(0,this.indices_.getSize())}getData(U){if(!this.helper.getGL())return null;const lt=this.frameState;if(!lt)return null;const mt=this.getLayer(),xt=(0,C.Bb)(lt.pixelToCoordinateTransform,U.slice()),pt=lt.viewState,Ct=mt.getExtent();if(Ct&&!(0,B.Ym)((0,W.SD)(Ct,pt.projection),xt))return null;const Pt=mt.getSources((0,B.Tr)([xt]),pt.resolution);let dt,At,yt;for(dt=Pt.length-1;dt>=0;--dt)if(At=Pt[dt],At.getState()==="ready"){if(yt=At.getTileGridForProjection(pt.projection),At.getWrapX())break;const Dt=yt.getExtent();if(!Dt||(0,B.Ym)(Dt,xt))break}if(dt<0)return null;const It=this.tileRepresentationCache;for(let Dt=yt.getZForResolution(pt.resolution);Dt>=yt.getMinZoom();--Dt){const St=yt.getTileCoordForCoordAndZ(xt,Dt),Wt=H(At,St);if(!It.containsKey(Wt))continue;const Kt=It.get(Wt);if(Kt.tile.getState()===y.A.EMPTY)return null;if(!Kt.loaded)continue;const Mt=yt.getOrigin(Dt),Lt=(0,v.xq)(yt.getTileSize(Dt)),Ft=yt.getResolution(Dt),Bt=(xt[0]-Mt[0])/Ft-St[1]*Lt[0],bt=(Mt[1]-xt[1])/Ft-St[2]*Lt[1];return Kt.getPixelData(Bt,bt)}return null}disposeInternal(){const U=this.helper;if(U){const J=U.getGL();for(const lt of this.paletteTextures_)lt.delete(J);this.paletteTextures_.length=0,J.deleteProgram(this.program_),delete this.program_,U.deleteBuffer(this.indices_)}super.disposeInternal(),delete this.indices_}}const k=null;class Q{constructor(U,J){this.name=U,this.data=J,this.texture_=null}getTexture(U){if(!this.texture_){const J=U.createTexture();U.bindTexture(U.TEXTURE_2D,J),U.texParameteri(U.TEXTURE_2D,U.TEXTURE_WRAP_S,U.CLAMP_TO_EDGE),U.texParameteri(U.TEXTURE_2D,U.TEXTURE_WRAP_T,U.CLAMP_TO_EDGE),U.texParameteri(U.TEXTURE_2D,U.TEXTURE_MIN_FILTER,U.NEAREST),U.texParameteri(U.TEXTURE_2D,U.TEXTURE_MAG_FILTER,U.NEAREST),U.texImage2D(U.TEXTURE_2D,0,U.RGBA,this.data.length/4,1,0,U.RGBA,U.UNSIGNED_BYTE,this.data),this.texture_=J}return this.texture_}delete(U){this.texture_&&U.deleteTexture(this.texture_),this.texture_=null}}const nt=Q;var tt=o(49825);function at(V,U){return`operator_${V}_${Object.keys(U.functions).length}`}function ht(V){const U=V.toString();return U.includes(".")?U:U+".0"}function ft(V){if(V.length<2||V.length>4)throw new Error("`formatArray` can only output `vec2`, `vec3` or `vec4` arrays.");return`vec${V.length}(${V.map(ht).join(", ")})`}function vt(V){const U=(0,b._j)(V),J=U.length>3?U[3]:1;return ft([U[0]/255,U[1]/255,U[2]/255,J])}function Tt(V){const U=(0,v.xq)(V);return ft(U)}const z={};let G=0;function Z(V){return V in z||(z[V]=G++),z[V]}function ut(V){return ht(Z(V))}function ot(V){return"u_var_"+V}function F(){return{variables:{},properties:{},functions:{},bandCount:0,featureId:!1,geometryType:!1}}const $="getBandValue",et="u_paletteTextures",rt="featureId",ct="geometryType",Et=-9999999;function Rt(V,U,J,lt){const mt=(0,tt.qg)(V,U,J);return wt(mt,U,lt)}function _t(V){return(U,J,lt)=>{const mt=J.args.length,xt=new Array(mt);for(let pt=0;pt<mt;++pt)xt[pt]=wt(J.args[pt],lt,U);return V(xt,U)}}const Ot={[tt.ZD.Get]:(V,U)=>{const lt=U.args[0].value;return lt in V.properties||(V.properties[lt]={name:lt,type:U.type}),"a_prop_"+lt},[tt.ZD.Id]:V=>(V.featureId=!0,"a_"+rt),[tt.ZD.GeometryType]:V=>(V.geometryType=!0,"a_"+ct),[tt.ZD.LineMetric]:()=>"currentLineMetric",[tt.ZD.Var]:(V,U)=>{const lt=U.args[0].value;return lt in V.variables||(V.variables[lt]={name:lt,type:U.type}),ot(lt)},[tt.ZD.Has]:(V,U)=>{const lt=U.args[0].value;return lt in V.properties||(V.properties[lt]={name:lt,type:U.type}),`(a_prop_${lt} != ${ht(Et)})`},[tt.ZD.Resolution]:()=>"u_resolution",[tt.ZD.Zoom]:()=>"u_zoom",[tt.ZD.Time]:()=>"u_time",[tt.ZD.Any]:_t(V=>`(${V.join(" || ")})`),[tt.ZD.All]:_t(V=>`(${V.join(" && ")})`),[tt.ZD.Not]:_t(([V])=>`(!${V})`),[tt.ZD.Equal]:_t(([V,U])=>`(${V} == ${U})`),[tt.ZD.NotEqual]:_t(([V,U])=>`(${V} != ${U})`),[tt.ZD.GreaterThan]:_t(([V,U])=>`(${V} > ${U})`),[tt.ZD.GreaterThanOrEqualTo]:_t(([V,U])=>`(${V} >= ${U})`),[tt.ZD.LessThan]:_t(([V,U])=>`(${V} < ${U})`),[tt.ZD.LessThanOrEqualTo]:_t(([V,U])=>`(${V} <= ${U})`),[tt.ZD.Multiply]:_t(V=>`(${V.join(" * ")})`),[tt.ZD.Divide]:_t(([V,U])=>`(${V} / ${U})`),[tt.ZD.Add]:_t(V=>`(${V.join(" + ")})`),[tt.ZD.Subtract]:_t(([V,U])=>`(${V} - ${U})`),[tt.ZD.Clamp]:_t(([V,U,J])=>`clamp(${V}, ${U}, ${J})`),[tt.ZD.Mod]:_t(([V,U])=>`mod(${V}, ${U})`),[tt.ZD.Pow]:_t(([V,U])=>`pow(${V}, ${U})`),[tt.ZD.Abs]:_t(([V])=>`abs(${V})`),[tt.ZD.Floor]:_t(([V])=>`floor(${V})`),[tt.ZD.Ceil]:_t(([V])=>`ceil(${V})`),[tt.ZD.Round]:_t(([V])=>`floor(${V} + 0.5)`),[tt.ZD.Sin]:_t(([V])=>`sin(${V})`),[tt.ZD.Cos]:_t(([V])=>`cos(${V})`),[tt.ZD.Atan]:_t(([V,U])=>U!==void 0?`atan(${V}, ${U})`:`atan(${V})`),[tt.ZD.Sqrt]:_t(([V])=>`sqrt(${V})`),[tt.ZD.Match]:_t(V=>{const U=V[0],J=V[V.length-1];let lt=null;for(let mt=V.length-3;mt>=1;mt-=2){const xt=V[mt],pt=V[mt+1];lt=`(${U} == ${xt} ? ${pt} : ${lt||J})`}return lt}),[tt.ZD.Between]:_t(([V,U,J])=>`(${V} >= ${U} && ${V} <= ${J})`),[tt.ZD.Interpolate]:_t(([V,U,...J])=>{let lt="";for(let mt=0;mt<J.length-2;mt+=2){const xt=J[mt],pt=lt||J[mt+1],Ct=J[mt+2],Pt=J[mt+3];let dt;V===ht(1)?dt=`(${U} - ${xt}) / (${Ct} - ${xt})`:dt=`(pow(${V}, (${U} - ${xt})) - 1.0) / (pow(${V}, (${Ct} - ${xt})) - 1.0)`,lt=`mix(${pt}, ${Pt}, clamp(${dt}, 0.0, 1.0))`}return lt}),[tt.ZD.Case]:_t(V=>{const U=V[V.length-1];let J=null;for(let lt=V.length-3;lt>=0;lt-=2){const mt=V[lt],xt=V[lt+1];J=`(${mt} ? ${xt} : ${J||U})`}return J}),[tt.ZD.In]:_t(([V,...U],J)=>{const lt=at("in",J),mt=[];for(let xt=0;xt<U.length;xt+=1)mt.push(` if (inputValue == ${U[xt]}) { return true; }`);return J.functions[lt]=`bool ${lt}(float inputValue) { ${mt.join(` `)} return false; }`,`${lt}(${V})`}),[tt.ZD.Array]:_t(V=>`vec${V.length}(${V.join(", ")})`),[tt.ZD.Color]:_t(V=>{if(V.length===1)return`vec4(vec3(${V[0]} / 255.0), 1.0)`;if(V.length===2)return`vec4(vec3(${V[0]} / 255.0), ${V[1]})`;const U=V.slice(0,3).map(lt=>`${lt} / 255.0`);if(V.length===3)return`vec4(${U.join(", ")}, 1.0)`;const J=V[3];return`vec4(${U.join(", ")}, ${J})`}),[tt.ZD.Band]:_t(([V,U,J],lt)=>{if(!($ in lt.functions)){let mt="";const xt=lt.bandCount||1;for(let pt=0;pt<xt;pt++){const Ct=Math.floor(pt/4);let Pt=pt%4;pt===xt-1&&Pt===1&&(Pt=3);const dt=`${X.TILE_TEXTURE_ARRAY}[${Ct}]`;mt+=` if (band == ${pt+1}.0) { return texture2D(${dt}, v_textureCoord + vec2(dx, dy))[${Pt}]; } `}lt.functions[$]=`float getBandValue(float band, float xOffset, float yOffset) { float dx = xOffset / ${X.TEXTURE_PIXEL_WIDTH}; float dy = yOffset / ${X.TEXTURE_PIXEL_HEIGHT}; ${mt} }`}return`${$}(${V}, ${U??"0.0"}, ${J??"0.0"})`}),[tt.ZD.Palette]:(V,U)=>{const[J,...lt]=U.args,mt=lt.length,xt=new Uint8Array(mt*4);for(let dt=0;dt<lt.length;dt++){const At=lt[dt].value,yt=(0,b._j)(At),It=dt*4;xt[It]=yt[0],xt[It+1]=yt[1],xt[It+2]=yt[2],xt[It+3]=yt[3]*255}V.paletteTextures||(V.paletteTextures=[]);const pt=`${et}[${V.paletteTextures.length}]`,Ct=new nt(pt,xt);V.paletteTextures.push(Ct);const Pt=wt(J,tt.wl,V);return`texture2D(${pt}, vec2((${Pt} + 0.5) / ${mt}.0, 0.5))`}};function wt(V,U,J){if(V instanceof tt.DG){const lt=Ot[V.operator];if(lt===void 0)throw new Error(`No compiler defined for this operator: ${JSON.stringify(V.operator)}`);return lt(J,V,U)}if((V.type&tt.wl)>0)return ht(V.value);if((V.type&tt.T8)>0)return V.value.toString();if((V.type&tt.cT)>0)return ut(V.value.toString());if((V.type&tt.mE)>0)return vt(V.value);if((V.type&tt.Fq)>0)return ft(V.value);if((V.type&tt.qA)>0)return Tt(V.value);throw new Error(`Unexpected expression ${V.value} (expected type ${(0,tt.go)(U)})`)}},27343:(gt,q,o)=>{o.d(q,{y2:()=>h,$i:()=>l,x$:()=>_,Ay:()=>p});var b=o(66514),y=o(68711),B=o(70915),W=o(87622),v=o(43530),C=o(9703),d=o(50904),A=o(61597);function O(E,f,S,N,K,H,Y,st,X,L,j,it,k=!0){let Q=E[f],nt=E[f+1],tt=0,at=0,ht=0,ft=0;function vt(){tt=Q,at=nt,f+=N,Q=E[f],nt=E[f+1],ft+=ht,ht=Math.sqrt((Q-tt)*(Q-tt)+(nt-at)*(nt-at))}do vt();while(f<S-N&&ft+ht<H);let Tt=ht===0?0:(H-ft)/ht;const z=(0,A.Cc)(tt,Q,Tt),G=(0,A.Cc)(at,nt,Tt),Z=f-N,ut=ft,ot=H+st*X(L,K,j);for(;f<S-N&&ft+ht<ot;)vt();Tt=ht===0?0:(ot-ft)/ht;const F=(0,A.Cc)(tt,Q,Tt),$=(0,A.Cc)(at,nt,Tt);let et=!1;if(k)if(it){const _t=[z,G,F,$];(0,W.e$)(_t,0,4,2,it,_t,_t),et=_t[0]>_t[2]}else et=z>F;const rt=Math.PI,ct=[],Et=Z+N===f;f=Z,ht=0,ft=ut,Q=E[f],nt=E[f+1];let Rt;if(Et){vt(),Rt=Math.atan2(nt-at,Q-tt),et&&(Rt+=Rt>0?-rt:rt);const _t=(F+z)/2,Ot=($+G)/2;return ct[0]=[_t,Ot,(ot-H)/2,Rt,K],ct}K=K.replace(/\n/g," ");for(let _t=0,Ot=K.length;_t<Ot;){vt();let wt=Math.atan2(nt-at,Q-tt);if(et&&(wt+=wt>0?-rt:rt),Rt!==void 0){let xt=wt-Rt;if(xt+=xt>rt?-2*rt:xt<-rt?2*rt:0,Math.abs(xt)>Y)return null}Rt=wt;const V=_t;let U=0;for(;_t<Ot;++_t){const xt=et?Ot-_t-1:_t,pt=st*X(L,K[xt],j);if(f+N<S&&ft+ht<H+U+pt/2)break;U+=pt}if(_t===V)continue;const J=et?K.substring(Ot-V,Ot-_t):K.substring(V,_t);Tt=ht===0?0:(H+U/2-ft)/ht;const lt=(0,A.Cc)(tt,Q,Tt),mt=(0,A.Cc)(at,nt,Tt);ct.push([lt,mt,U/2,wt,J]),H+=U}return ct}var x=o(40808),M=o(38774),t=o(66429),s=o(63624);const r=(0,B.S5)(),P=[],D=[],u=[],c=[];function n(E){return E[3].declutterBox}const e=new RegExp("[\u0591-\u08FF\uFB1D-\uFDFF\uFE70-\uFEFC\u0800-\u0FFF\uE800-\uEFFF]");function i(E,f){return f==="start"?f=e.test(E)?"right":"left":f==="end"&&(f=e.test(E)?"left":"right"),s.E[f]}function a(E,f,S){return S>0&&E.push(` `,""),E.push(f,""),E}function g(E,f,S){return S%2===0&&(E+=f),E}class m{constructor(f,S,N,K,H){this.overlaps=N,this.pixelRatio=S,this.resolution=f,this.alignAndScaleFill_,this.instructions=K.instructions,this.coordinates=K.coordinates,this.coordinateCache_={},this.renderedTransform_=(0,C.vt)(),this.hitDetectionInstructions=K.hitDetectionInstructions,this.pixelCoordinates_=null,this.viewRotation_=0,this.fillStates=K.fillStates||{},this.strokeStates=K.strokeStates||{},this.textStates=K.textStates||{},this.widths_={},this.labels_={},this.zIndexContext_=H?new x.A:null}getZIndexContext(){return this.zIndexContext_}createLabel(f,S,N,K){const H=f+S+N+K;if(this.labels_[H])return this.labels_[H];const Y=K?this.strokeStates[K]:null,st=N?this.fillStates[N]:null,X=this.textStates[S],L=this.pixelRatio,j=[X.scale[0]*L,X.scale[1]*L],it=X.justify?s.E[X.justify]:i(Array.isArray(f)?f[0]:f,X.textAlign||M.MY),k=K&&Y.lineWidth?Y.lineWidth:0,Q=Array.isArray(f)?f:String(f).split(` `).reduce(a,[]),{width:nt,height:tt,widths:at,heights:ht,lineWidths:ft}=(0,M.jT)(X,Q),vt=nt+k,Tt=[],z=(vt+2)*j[0],G=(tt+k)*j[1],Z={width:z<0?Math.floor(z):Math.ceil(z),height:G<0?Math.floor(G):Math.ceil(G),contextInstructions:Tt};(j[0]!=1||j[1]!=1)&&Tt.push("scale",j),K&&(Tt.push("strokeStyle",Y.strokeStyle),Tt.push("lineWidth",k),Tt.push("lineCap",Y.lineCap),Tt.push("lineJoin",Y.lineJoin),Tt.push("miterLimit",Y.miterLimit),Tt.push("setLineDash",[Y.lineDash]),Tt.push("lineDashOffset",Y.lineDashOffset)),N&&Tt.push("fillStyle",st.fillStyle),Tt.push("textBaseline","middle"),Tt.push("textAlign","center");const ut=.5-it;let ot=it*vt+ut*k;const F=[],$=[];let et=0,rt=0,ct=0,Et=0,Rt;for(let _t=0,Ot=Q.length;_t<Ot;_t+=2){const wt=Q[_t];if(wt===` `){rt+=et,et=0,ot=it*vt+ut*k,++Et;continue}const V=Q[_t+1]||X.font;V!==Rt&&(K&&F.push("font",V),N&&$.push("font",V),Rt=V),et=Math.max(et,ht[ct]);const U=[wt,ot+ut*at[ct]+it*(at[ct]-ft[Et]),.5*(k+et)+rt];ot+=at[ct],K&&F.push("strokeText",U),N&&$.push("fillText",U),++ct}return Array.prototype.push.apply(Tt,F),Array.prototype.push.apply(Tt,$),this.labels_[H]=Z,Z}replayTextBackground_(f,S,N,K,H,Y,st){f.beginPath(),f.moveTo.apply(f,S),f.lineTo.apply(f,N),f.lineTo.apply(f,K),f.lineTo.apply(f,H),f.lineTo.apply(f,S),Y&&(this.alignAndScaleFill_=Y[2],f.fillStyle=Y[1],this.fill_(f)),st&&(this.setStrokeStyle_(f,st),f.stroke())}calculateImageOrLabelDimensions_(f,S,N,K,H,Y,st,X,L,j,it,k,Q,nt,tt,at){st*=k[0],X*=k[1];let ht=N-st,ft=K-X;const vt=H+L>f?f-L:H,Tt=Y+j>S?S-j:Y,z=nt[3]+vt*k[0]+nt[1],G=nt[0]+Tt*k[1]+nt[2],Z=ht-nt[3],ut=ft-nt[0];(tt||it!==0)&&(P[0]=Z,c[0]=Z,P[1]=ut,D[1]=ut,D[0]=Z+z,u[0]=D[0],u[1]=ut+G,c[1]=u[1]);let ot;return it!==0?(ot=(0,C.Zz)((0,C.vt)(),N,K,1,1,it,-N,-K),(0,C.Bb)(ot,P),(0,C.Bb)(ot,D),(0,C.Bb)(ot,u),(0,C.Bb)(ot,c),(0,B.N)(Math.min(P[0],D[0],u[0],c[0]),Math.min(P[1],D[1],u[1],c[1]),Math.max(P[0],D[0],u[0],c[0]),Math.max(P[1],D[1],u[1],c[1]),r)):(0,B.N)(Math.min(Z,Z+z),Math.min(ut,ut+G),Math.max(Z,Z+z),Math.max(ut,ut+G),r),Q&&(ht=Math.round(ht),ft=Math.round(ft)),{drawImageX:ht,drawImageY:ft,drawImageW:vt,drawImageH:Tt,originX:L,originY:j,declutterBox:{minX:r[0],minY:r[1],maxX:r[2],maxY:r[3],value:at},canvasTransform:ot,scale:k}}replayImageOrLabel_(f,S,N,K,H,Y,st){const X=!!(Y||st),L=K.declutterBox,j=st?st[2]*K.scale[0]/2:0;return L.minX-j<=S[0]&&L.maxX+j>=0&&L.minY-j<=S[1]&&L.maxY+j>=0&&(X&&this.replayTextBackground_(f,P,D,u,c,Y,st),(0,M.Jw)(f,K.canvasTransform,H,N,K.originX,K.originY,K.drawImageW,K.drawImageH,K.drawImageX,K.drawImageY,K.scale)),!0}fill_(f){const S=this.alignAndScaleFill_;if(S){const N=(0,C.Bb)(this.renderedTransform_,[0,0]),K=512*this.pixelRatio;f.save(),f.translate(N[0]%K,N[1]%K),S!==1&&f.scale(S,S),f.rotate(this.viewRotation_)}f.fill(),S&&f.restore()}setStrokeStyle_(f,S){f.strokeStyle=S[1],S[1]&&(f.lineWidth=S[2],f.lineCap=S[3],f.lineJoin=S[4],f.miterLimit=S[5],f.lineDashOffset=S[7],f.setLineDash(S[6]))}drawLabelWithPointPlacement_(f,S,N,K){const H=this.textStates[S],Y=this.createLabel(f,S,K,N),st=this.strokeStates[N],X=this.pixelRatio,L=i(Array.isArray(f)?f[0]:f,H.textAlign||M.MY),j=s.E[H.textBaseline||M.M8],it=st&&st.lineWidth?st.lineWidth:0,k=Y.width/X-2*H.scale[0],Q=L*k+2*(.5-L)*it,nt=j*Y.height/X+2*(.5-j)*it;return{label:Y,anchorX:Q,anchorY:nt}}execute_(f,S,N,K,H,Y,st,X){const L=this.zIndexContext_;let j;this.pixelCoordinates_&&(0,b.aI)(N,this.renderedTransform_)?j=this.pixelCoordinates_:(this.pixelCoordinates_||(this.pixelCoordinates_=[]),j=(0,W.Rc)(this.coordinates,0,this.coordinates.length,2,N,this.pixelCoordinates_),(0,C.k3)(this.renderedTransform_,N));let it=0;const k=K.length;let Q=0,nt,tt,at,ht,ft,vt,Tt,z,G,Z,ut,ot,F,$=0,et=0;const rt=this.coordinateCache_,ct=this.viewRotation_,Et=Math.round(Math.atan2(-N[1],N[0])*1e12)/1e12,Rt={context:f,pixelRatio:this.pixelRatio,resolution:this.resolution,rotation:ct},_t=this.instructions!=K||this.overlaps?0:200;let Ot,wt,V,U;for(;it<k;){const J=K[it];switch(J[0]){case t.Ay.BEGIN_GEOMETRY:Ot=J[1],U=J[3],Ot.getGeometry()?st!==void 0&&!(0,B.HY)(st,U.getExtent())?it=J[2]+1:++it:it=J[2],L&&(L.zIndex=J[4]);break;case t.Ay.BEGIN_PATH:$>_t&&(this.fill_(f),$=0),et>_t&&(f.stroke(),et=0),!$&&!et&&(f.beginPath(),ft=NaN,vt=NaN),++it;break;case t.Ay.CIRCLE:Q=J[1];const mt=j[Q],xt=j[Q+1],pt=j[Q+2],Ct=j[Q+3],Pt=pt-mt,dt=Ct-xt,At=Math.sqrt(Pt*Pt+dt*dt);f.moveTo(mt+At,xt),f.arc(mt,xt,At,0,2*Math.PI,!0),++it;break;case t.Ay.CLOSE_PATH:f.closePath(),++it;break;case t.Ay.CUSTOM:Q=J[1],nt=J[2];const yt=J[3],It=J[4],Dt=J[5];Rt.geometry=yt,Rt.feature=Ot,it in rt||(rt[it]=[]);const St=rt[it];Dt?Dt(j,Q,nt,2,St):(St[0]=j[Q],St[1]=j[Q+1],St.length=2),L&&(L.zIndex=J[6]),It(St,Rt),++it;break;case t.Ay.DRAW_IMAGE:Q=J[1],nt=J[2],G=J[3],tt=J[4],at=J[5];let Wt=J[6];const Kt=J[7],Gt=J[8],Mt=J[9],Lt=J[10];let Ft=J[11];const Bt=J[12];let bt=J[13];ht=J[14]||"declutter";const Nt=J[15];if(!G&&J.length>=20){Z=J[19],ut=J[20],ot=J[21],F=J[22];const Zt=this.drawLabelWithPointPlacement_(Z,ut,ot,F);G=Zt.label,J[3]=G;const te=J[23];tt=(Zt.anchorX-te)*this.pixelRatio,J[4]=tt;const Vt=J[24];at=(Zt.anchorY-Vt)*this.pixelRatio,J[5]=at,Wt=G.height,J[6]=Wt,bt=G.width,J[13]=bt}let zt;J.length>25&&(zt=J[25]);let jt,Ut,Xt;J.length>17?(jt=J[16],Ut=J[17],Xt=J[18]):(jt=M.Tq,Ut=null,Xt=null),Lt&&Et?Ft+=ct:!Lt&&!Et&&(Ft-=ct);let _e=0;for(;Q<nt;Q+=2){if(zt&&zt[_e++]<bt/this.pixelRatio)continue;const Zt=this.calculateImageOrLabelDimensions_(G.width,G.height,j[Q],j[Q+1],bt,Wt,tt,at,Gt,Mt,Ft,Bt,H,jt,!!Ut||!!Xt,Ot),te=[f,S,G,Zt,Kt,Ut,Xt];if(X){let Vt,Ht,Yt;if(Nt){const kt=nt-Q;if(!Nt[kt]){Nt[kt]={args:te,declutterMode:ht};continue}const $t=Nt[kt];Vt=$t.args,Ht=$t.declutterMode,delete Nt[kt],Yt=n(Vt)}let Jt,Qt;if(Vt&&(Ht!=="declutter"||!X.collides(Yt))&&(Jt=!0),(ht!=="declutter"||!X.collides(Zt.declutterBox))&&(Qt=!0),Ht==="declutter"&&ht==="declutter"){const kt=Jt&&Qt;Jt=kt,Qt=kt}Jt&&(Ht!=="none"&&X.insert(Yt),this.replayImageOrLabel_.apply(this,Vt)),Qt&&(ht!=="none"&&X.insert(Zt.declutterBox),this.replayImageOrLabel_.apply(this,te))}else this.replayImageOrLabel_.apply(this,te)}++it;break;case t.Ay.DRAW_CHARS:const ae=J[1],le=J[2],se=J[3],ge=J[4];F=J[5];const me=J[6],he=J[7],ce=J[8];ot=J[9];const re=J[10];Z=J[11],Array.isArray(Z)&&(Z=Z.reduce(g,"")),ut=J[12];const ue=[J[13],J[13]];ht=J[14]||"declutter";const Ee=J[15],oe=this.textStates[ut],ee=oe.font,ne=[oe.scale[0]*he,oe.scale[1]*he];let ie;ee in this.widths_?ie=this.widths_[ee]:(ie={},this.widths_[ee]=ie);const de=(0,d.k)(j,ae,le,2),fe=Math.abs(ne[0])*(0,M.TA)(ee,Z,ie);if(ge||fe<=de){const Zt=this.textStates[ut].textAlign,te=(de-fe)*i(Z,Zt),Vt=O(j,ae,le,2,Z,te,me,Math.abs(ne[0]),M.TA,ee,ie,Et?0:this.viewRotation_,Ee);t:if(Vt){const Ht=[];let Yt,Jt,Qt,kt,$t;if(ot)for(Yt=0,Jt=Vt.length;Yt<Jt;++Yt){$t=Vt[Yt],Qt=$t[4],kt=this.createLabel(Qt,ut,"",ot),tt=$t[2]+(ne[0]<0?-re:re),at=se*kt.height+(.5-se)*2*re*ne[1]/ne[0]-ce;const qt=this.calculateImageOrLabelDimensions_(kt.width,kt.height,$t[0],$t[1],kt.width,kt.height,tt,at,0,0,$t[3],ue,!1,M.Tq,!1,Ot);if(X&&ht==="declutter"&&X.collides(qt.declutterBox))break t;Ht.push([f,S,kt,qt,1,null,null])}if(F)for(Yt=0,Jt=Vt.length;Yt<Jt;++Yt){$t=Vt[Yt],Qt=$t[4],kt=this.createLabel(Qt,ut,F,""),tt=$t[2],at=se*kt.height-ce;const qt=this.calculateImageOrLabelDimensions_(kt.width,kt.height,$t[0],$t[1],kt.width,kt.height,tt,at,0,0,$t[3],ue,!1,M.Tq,!1,Ot);if(X&&ht==="declutter"&&X.collides(qt.declutterBox))break t;Ht.push([f,S,kt,qt,1,null,null])}X&&ht!=="none"&&X.load(Ht.map(n));for(let qt=0,pe=Ht.length;qt<pe;++qt)this.replayImageOrLabel_.apply(this,Ht[qt])}}++it;break;case t.Ay.END_GEOMETRY:if(Y!==void 0){Ot=J[1];const Zt=Y(Ot,U,ht);if(Zt)return Zt}++it;break;case t.Ay.FILL:_t?$++:this.fill_(f),++it;break;case t.Ay.MOVE_TO_LINE_TO:for(Q=J[1],nt=J[2],wt=j[Q],V=j[Q+1],f.moveTo(wt,V),ft=wt+.5|0,vt=V+.5|0,Q+=2;Q<nt;Q+=2)wt=j[Q],V=j[Q+1],Tt=wt+.5|0,z=V+.5|0,(Q==nt-2||Tt!==ft||z!==vt)&&(f.lineTo(wt,V),ft=Tt,vt=z);++it;break;case t.Ay.SET_FILL_STYLE:this.alignAndScaleFill_=J[2],$&&(this.fill_(f),$=0,et&&(f.stroke(),et=0)),f.fillStyle=J[1],++it;break;case t.Ay.SET_STROKE_STYLE:et&&(f.stroke(),et=0),this.setStrokeStyle_(f,J),++it;break;case t.Ay.STROKE:_t?et++:f.stroke(),++it;break;default:++it;break}}$&&this.fill_(f),et&&f.stroke()}execute(f,S,N,K,H,Y){this.viewRotation_=K,this.execute_(f,S,N,this.instructions,H,void 0,void 0,Y)}executeHitDetection(f,S,N,K,H){return this.viewRotation_=N,this.execute_(f,[f.canvas.width,f.canvas.height],S,this.hitDetectionInstructions,!0,K,H)}}const R=m,h=["Polygon","Circle","LineString","Image","Text","Default"],l=["Image","Text"],_=h.filter(E=>!l.includes(E));class I{constructor(f,S,N,K,H,Y,st){this.maxExtent_=f,this.overlaps_=K,this.pixelRatio_=N,this.resolution_=S,this.renderBuffer_=Y,this.executorsByZIndex_={},this.hitDetectionContext_=null,this.hitDetectionTransform_=(0,C.vt)(),this.renderedContext_=null,this.deferredZIndexContexts_={},this.createExecutors_(H,st)}clip(f,S){const N=this.getClipCoords(S);f.beginPath(),f.moveTo(N[0],N[1]),f.lineTo(N[2],N[3]),f.lineTo(N[4],N[5]),f.lineTo(N[6],N[7]),f.clip()}createExecutors_(f,S){for(const N in f){let K=this.executorsByZIndex_[N];K===void 0&&(K={},this.executorsByZIndex_[N]=K);const H=f[N];for(const Y in H){const st=H[Y];K[Y]=new R(this.resolution_,this.pixelRatio_,this.overlaps_,st,S)}}}hasExecutors(f){for(const S in this.executorsByZIndex_){const N=this.executorsByZIndex_[S];for(let K=0,H=f.length;K<H;++K)if(f[K]in N)return!0}return!1}forEachFeatureAtCoordinate(f,S,N,K,H,Y){K=Math.round(K);const st=K*2+1,X=(0,C.Zz)(this.hitDetectionTransform_,K+.5,K+.5,1/S,-1/S,-N,-f[0],-f[1]),L=!this.hitDetectionContext_;L&&(this.hitDetectionContext_=(0,y.Y)(st,st));const j=this.hitDetectionContext_;j.canvas.width!==st||j.canvas.height!==st?(j.canvas.width=st,j.canvas.height=st):L||j.clearRect(0,0,st,st);let it;this.renderBuffer_!==void 0&&(it=(0,B.S5)(),(0,B.$C)(it,f),(0,B.r)(it,S*(this.renderBuffer_+K),it));const k=w(K);let Q;function nt(z,G,Z){const ut=j.getImageData(0,0,st,st).data;for(let ot=0,F=k.length;ot<F;ot++)if(ut[k[ot]]>0){if(!Y||Z==="none"||Q!=="Image"&&Q!=="Text"||Y.includes(z)){const $=(k[ot]-3)/4,et=K-$%st,rt=K-($/st|0),ct=H(z,G,et*et+rt*rt);if(ct)return ct}j.clearRect(0,0,st,st);break}}const tt=Object.keys(this.executorsByZIndex_).map(Number);tt.sort(b.V_);let at,ht,ft,vt,Tt;for(at=tt.length-1;at>=0;--at){const z=tt[at].toString();for(ft=this.executorsByZIndex_[z],ht=h.length-1;ht>=0;--ht)if(Q=h[ht],vt=ft[Q],vt!==void 0&&(Tt=vt.executeHitDetection(j,X,N,nt,it),Tt))return Tt}}getClipCoords(f){const S=this.maxExtent_;if(!S)return null;const N=S[0],K=S[1],H=S[2],Y=S[3],st=[N,K,N,Y,H,Y,H,K];return(0,W.Rc)(st,0,8,2,f,st),st}isEmpty(){return(0,v.p)(this.executorsByZIndex_)}execute(f,S,N,K,H,Y,st){const X=Object.keys(this.executorsByZIndex_).map(Number);X.sort(st?b.rG:b.V_),Y=Y||h;const L=h.length;for(let j=0,it=X.length;j<it;++j){const k=X[j].toString(),Q=this.executorsByZIndex_[k];for(let nt=0,tt=Y.length;nt<tt;++nt){const at=Y[nt],ht=Q[at];if(ht!==void 0){const ft=st===null?void 0:ht.getZIndexContext(),vt=ft?ft.getContext():f,Tt=this.maxExtent_&&at!=="Image"&&at!=="Text";if(Tt&&(vt.save(),this.clip(vt,N)),!ft||at==="Text"||at==="Image"?ht.execute(vt,S,N,K,H,st):ft.pushFunction(z=>ht.execute(z,S,N,K,H,st)),Tt&&vt.restore(),ft){ft.offset();const z=X[j]*L+h.indexOf(at);this.deferredZIndexContexts_[z]||(this.deferredZIndexContexts_[z]=[]),this.deferredZIndexContexts_[z].push(ft)}}}}this.renderedContext_=f}getDeferredZIndexContexts(){return this.deferredZIndexContexts_}getRenderedContext(){return this.renderedContext_}renderDeferred(){const f=this.deferredZIndexContexts_,S=Object.keys(f).map(Number).sort(b.V_);for(let N=0,K=S.length;N<K;++N)f[S[N]].forEach(H=>{H.draw(this.renderedContext_),H.clear()}),f[S[N]].length=0}}const T={};function w(E){if(T[E]!==void 0)return T[E];const f=E*2+1,S=E*E,N=new Array(S+1);for(let H=0;H<=E;++H)for(let Y=0;Y<=E;++Y){const st=H*H+Y*Y;if(st>S)break;let X=N[st];X||(X=[],N[st]=X),X.push(((E+H)*f+(E+Y))*4+3),H>0&&X.push(((E-H)*f+(E+Y))*4+3),Y>0&&(X.push(((E+H)*f+(E-Y))*4+3),H>0&&X.push(((E-H)*f+(E-Y))*4+3))}const K=[];for(let H=0,Y=N.length;H<Y;++H)N[H]&&K.push(...N[H]);return T[E]=K,K}const p=I},27733:(gt,q,o)=>{o.d(q,{A:()=>B});var b=o(86936);class y extends b.A{constructor(v){v=v||{radius:5},super({points:1/0,fill:v.fill,radius:v.radius,stroke:v.stroke,scale:v.scale!==void 0?v.scale:1,rotation:v.rotation!==void 0?v.rotation:0,rotateWithView:v.rotateWithView!==void 0?v.rotateWithView:!1,displacement:v.displacement!==void 0?v.displacement:[0,0],declutterMode:v.declutterMode})}clone(){const v=this.getScale(),C=new y({fill:this.getFill()?this.getFill().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,radius:this.getRadius(),scale:Array.isArray(v)?v.slice():v,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()});return C.setOpacity(this.getOpacity()),C}setRadius(v){this.radius=v,this.render()}}const B=y},29276:(gt,q,o)=>{o.d(q,{Ay:()=>M,d1:()=>A,mC:()=>C,mY:()=>O});var b=o(90588),y=o(27733),B=o(13628),W=o(953);class v{constructor(s){s=s||{},this.geometry_=null,this.geometryFunction_=x,s.geometry!==void 0&&this.setGeometry(s.geometry),this.fill_=s.fill!==void 0?s.fill:null,this.image_=s.image!==void 0?s.image:null,this.renderer_=s.renderer!==void 0?s.renderer:null,this.hitDetectionRenderer_=s.hitDetectionRenderer!==void 0?s.hitDetectionRenderer:null,this.stroke_=s.stroke!==void 0?s.stroke:null,this.text_=s.text!==void 0?s.text:null,this.zIndex_=s.zIndex}clone(){let s=this.getGeometry();return s&&typeof s=="object"&&(s=s.clone()),new v({geometry:s??void 0,fill:this.getFill()?this.getFill().clone():void 0,image:this.getImage()?this.getImage().clone():void 0,renderer:this.getRenderer()??void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,text:this.getText()?this.getText().clone():void 0,zIndex:this.getZIndex()})}getRenderer(){return this.renderer_}setRenderer(s){this.renderer_=s}setHitDetectionRenderer(s){this.hitDetectionRenderer_=s}getHitDetectionRenderer(){return this.hitDetectionRenderer_}getGeometry(){return this.geometry_}getGeometryFunction(){return this.geometryFunction_}getFill(){return this.fill_}setFill(s){this.fill_=s}getImage(){return this.image_}setImage(s){this.image_=s}getStroke(){return this.stroke_}setStroke(s){this.stroke_=s}getText(){return this.text_}setText(s){this.text_=s}getZIndex(){return this.zIndex_}setGeometry(s){typeof s=="function"?this.geometryFunction_=s:typeof s=="string"?this.geometryFunction_=function(r){return r.get(s)}:s?s!==void 0&&(this.geometryFunction_=function(){return s}):this.geometryFunction_=x,this.geometry_=s}setZIndex(s){this.zIndex_=s}}function C(t){let s;if(typeof t=="function")s=t;else{let r;Array.isArray(t)?r=t:((0,b.v)(typeof t.getZIndex=="function","Expected an `Style` or an array of `Style`"),r=[t]),s=function(){return r}}return s}let d=null;function A(t,s){if(!d){const r=new B.A({color:"rgba(255,255,255,0.4)"}),P=new W.A({color:"#3399CC",width:1.25});d=[new v({image:new y.A({fill:r,stroke:P,radius:5}),fill:r,stroke:P})]}return d}function O(){const t={},s=[255,255,255,1],r=[0,153,255,1],P=3;return t.Polygon=[new v({fill:new B.A({color:[255,255,255,.5]})})],t.MultiPolygon=t.Polygon,t.LineString=[new v({stroke:new W.A({color:s,width:P+2})}),new v({stroke:new W.A({color:r,width:P})})],t.MultiLineString=t.LineString,t.Circle=t.Polygon.concat(t.LineString),t.Point=[new v({image:new y.A({radius:P*2,fill:new B.A({color:r}),stroke:new W.A({color:s,width:P/2})}),zIndex:1/0})],t.MultiPoint=t.Point,t.GeometryCollection=t.Polygon.concat(t.LineString,t.Point),t}function x(t){return t.getGeometry()}const M=v},32135:(gt,q,o)=>{o.d(q,{A:()=>b});const b={ADD:"add",REMOVE:"remove"}},32348:(gt,q,o)=>{o.d(q,{A:()=>P});var b=o(62703),y=o(66514),B=o(6933),W=o(68711),v=o(70915),C=o(82922),d=o(83984),A=o(70136),O=o(27343),x=o(77727),M=o(4087),t=o(73608),s=o(96769);class r extends s.A{constructor(u){super(u),this.boundHandleStyleImageChange_=this.handleStyleImageChange_.bind(this),this.animatingOrInteracting_,this.hitDetectionImageData_=null,this.clipped_=!1,this.renderedFeatures_=null,this.renderedRevision_=-1,this.renderedResolution_=NaN,this.renderedExtent_=(0,v.S5)(),this.wrappedRenderedExtent_=(0,v.S5)(),this.renderedRotation_,this.renderedCenter_=null,this.renderedProjection_=null,this.renderedPixelRatio_=1,this.renderedRenderOrder_=null,this.renderedFrameDeclutter_,this.replayGroup_=null,this.replayGroupChanged=!0,this.clipping=!0,this.targetContext_=null,this.opacity_=1}renderWorlds(u,c,n){const e=c.extent,i=c.viewState,a=i.center,g=i.resolution,m=i.projection,R=i.rotation,h=m.getExtent(),l=this.getLayer().getSource(),_=this.getLayer().getDeclutter(),I=c.pixelRatio,T=c.viewHints,w=!(T[b.A.ANIMATING]||T[b.A.INTERACTING]),p=this.context,E=Math.round((0,v.RG)(e)/g*I),f=Math.round((0,v.Oq)(e)/g*I),S=l.getWrapX()&&m.canWrapX(),N=S?(0,v.RG)(h):null,K=S?Math.ceil((e[2]-h[2])/N)+1:1;let H=S?Math.floor((e[0]-h[0])/N):0;do{let Y=this.getRenderTransform(a,g,0,I,E,f,H*N);c.declutter&&(Y=Y.slice(0)),u.execute(p,[p.canvas.width,p.canvas.height],Y,R,w,n===void 0?O.y2:n?O.$i:O.x$,n?_&&c.declutter[_]:void 0)}while(++H<K)}setDrawContext_(){this.opacity_!==1&&(this.targetContext_=this.context,this.context=(0,W.Y)(this.context.canvas.width,this.context.canvas.height,s.B))}resetDrawContext_(){if(this.opacity_!==1&&this.targetContext_){const u=this.targetContext_.globalAlpha;this.targetContext_.globalAlpha=this.opacity_,this.targetContext_.drawImage(this.context.canvas,0,0),this.targetContext_.globalAlpha=u,(0,W.Yg)(this.context),s.B.push(this.context.canvas),this.context=this.targetContext_,this.targetContext_=null}}renderDeclutter(u){!this.replayGroup_||!this.getLayer().getDeclutter()||this.renderWorlds(this.replayGroup_,u,!0)}renderDeferredInternal(u){this.replayGroup_&&(this.replayGroup_.renderDeferred(),this.clipped_&&this.context.restore(),this.resetDrawContext_())}renderFrame(u,c){const n=u.layerStatesArray[u.layerIndex];this.opacity_=n.opacity;const e=u.viewState;this.prepareContainer(u,c);const i=this.context,a=this.replayGroup_;let g=a&&!a.isEmpty();if(!g&&!(this.getLayer().hasListener(d.A.PRERENDER)||this.getLayer().hasListener(d.A.POSTRENDER)))return this.container;this.setDrawContext_(),this.preRender(i,u);const m=e.projection;if(this.clipped_=!1,g&&n.extent&&this.clipping){const R=(0,C.SD)(n.extent,m);g=(0,v.HY)(R,u.extent),this.clipped_=g&&!(0,v.ms)(R,u.extent),this.clipped_&&this.clipUnrotated(i,u,R)}return g&&this.renderWorlds(a,u,this.getLayer().getDeclutter()?!1:void 0),!u.declutter&&this.clipped_&&i.restore(),this.postRender(i,u),this.renderedRotation_!==e.rotation&&(this.renderedRotation_=e.rotation,this.hitDetectionImageData_=null),u.declutter||this.resetDrawContext_(),this.container}getFeatures(u){return new Promise(c=>{if(this.frameState&&!this.hitDetectionImageData_&&!this.animatingOrInteracting_){const n=this.frameState.size.slice(),e=this.renderedCenter_,i=this.renderedResolution_,a=this.renderedRotation_,g=this.renderedProjection_,m=this.wrappedRenderedExtent_,R=this.getLayer(),h=[],l=n[0]*x.tF,_=n[1]*x.tF;h.push(this.getRenderTransform(e,i,a,x.tF,l,_,0).slice());const I=R.getSource(),T=g.getExtent();if(I.getWrapX()&&g.canWrapX()&&!(0,v.ms)(T,m)){let p=m[0];const E=(0,v.RG)(T);let f=0,S;for(;p<T[0];)--f,S=E*f,h.push(this.getRenderTransform(e,i,a,x.tF,l,_,S).slice()),p+=E;for(f=0,p=m[2];p>T[2];)++f,S=E*f,h.push(this.getRenderTransform(e,i,a,x.tF,l,_,S).slice()),p-=E}const w=(0,C.Tf)();this.hitDetectionImageData_=(0,x._7)(n,h,this.renderedFeatures_,R.getStyleFunction(),m,i,a,(0,t.j)(i,this.renderedPixelRatio_),w?g:null)}c((0,x.F8)(u,this.renderedFeatures_,this.hitDetectionImageData_))})}forEachFeatureAtCoordinate(u,c,n,e,i){if(!this.replayGroup_)return;const a=c.viewState.resolution,g=c.viewState.rotation,m=this.getLayer(),R={},h=function(_,I,T){const w=(0,M.v6)(_),p=R[w];if(p){if(p!==!0&&T<p.distanceSq){if(T===0)return R[w]=!0,i.splice(i.lastIndexOf(p),1),e(_,m,I);p.geometry=I,p.distanceSq=T}}else{if(T===0)return R[w]=!0,e(_,m,I);i.push(R[w]={feature:_,layer:m,geometry:I,distanceSq:T,callback:e})}},l=this.getLayer().getDeclutter();return this.replayGroup_.forEachFeatureAtCoordinate(u,a,g,n,h,l?c.declutter?.[l]?.all().map(_=>_.value):null)}handleFontsChanged(){const u=this.getLayer();u.getVisible()&&this.replayGroup_&&u.changed()}handleStyleImageChange_(u){this.renderIfReadyAndVisible()}prepareFrame(u){const c=this.getLayer(),n=c.getSource();if(!n)return!1;const e=u.viewHints[b.A.ANIMATING],i=u.viewHints[b.A.INTERACTING],a=c.getUpdateWhileAnimating(),g=c.getUpdateWhileInteracting();if(this.ready&&!a&&e||!g&&i)return this.animatingOrInteracting_=!0,!0;this.animatingOrInteracting_=!1;const m=u.extent,R=u.viewState,h=R.projection,l=R.resolution,_=u.pixelRatio,I=c.getRevision(),T=c.getRenderBuffer();let w=c.getRenderOrder();w===void 0&&(w=t.Eo);const p=R.center.slice(),E=(0,v.r)(m,T*l),f=E.slice(),S=[E.slice()],N=h.getExtent();if(n.getWrapX()&&h.canWrapX()&&!(0,v.ms)(N,u.extent)){const nt=(0,v.RG)(N),tt=Math.max((0,v.RG)(E)/2,nt);E[0]=N[0]-tt,E[2]=N[2]+tt,(0,B.Li)(p,h);const at=(0,v.Li)(S[0],h);at[0]<N[0]&&at[2]<N[2]?S.push([at[0]+nt,at[1],at[2]+nt,at[3]]):at[0]>N[0]&&at[2]>N[2]&&S.push([at[0]-nt,at[1],at[2]-nt,at[3]])}if(this.ready&&this.renderedResolution_==l&&this.renderedRevision_==I&&this.renderedRenderOrder_==w&&this.renderedFrameDeclutter_===!!u.declutter&&(0,v.ms)(this.wrappedRenderedExtent_,E))return(0,y.aI)(this.renderedExtent_,f)||(this.hitDetectionImageData_=null,this.renderedExtent_=f),this.renderedCenter_=p,this.replayGroupChanged=!1,!0;this.replayGroup_=null;const K=new A.A((0,t.gY)(l,_),E,l,_),H=(0,C.Tf)();let Y;if(H){for(let nt=0,tt=S.length;nt<tt;++nt){const at=S[nt],ht=(0,C.JR)(at,h);n.loadFeatures(ht,(0,C.vN)(l,h),H)}Y=(0,C.FO)(H,h)}else for(let nt=0,tt=S.length;nt<tt;++nt)n.loadFeatures(S[nt],l,h);const st=(0,t.j)(l,_);let X=!0;const L=(nt,tt)=>{let at;const ht=nt.getStyleFunction()||c.getStyleFunction();if(ht&&(at=ht(nt,l)),at){const ft=this.renderFeature(nt,st,at,K,Y,this.getLayer().getDeclutter(),tt);X=X&&!ft}},j=(0,C.JR)(E,h),it=n.getFeaturesInExtent(j);w&&it.sort(w);for(let nt=0,tt=it.length;nt<tt;++nt)L(it[nt],nt);this.renderedFeatures_=it,this.ready=X;const k=K.finish(),Q=new O.Ay(E,l,_,n.getOverlaps(),k,c.getRenderBuffer(),!!u.declutter);return this.renderedResolution_=l,this.renderedRevision_=I,this.renderedRenderOrder_=w,this.renderedFrameDeclutter_=!!u.declutter,this.renderedExtent_=f,this.wrappedRenderedExtent_=E,this.renderedCenter_=p,this.renderedProjection_=h,this.renderedPixelRatio_=_,this.replayGroup_=Q,this.hitDetectionImageData_=null,this.replayGroupChanged=!0,!0}renderFeature(u,c,n,e,i,a,g){if(!n)return!1;let m=!1;if(Array.isArray(n))for(let R=0,h=n.length;R<h;++R)m=(0,t.nl)(e,u,n[R],c,this.boundHandleStyleImageChange_,i,a,g)||m;else m=(0,t.nl)(e,u,n,c,this.boundHandleStyleImageChange_,i,a,g);return m}}const P=r},32826:(gt,q,o)=>{o.d(q,{A:()=>y});class b{drawCustom(W,v,C,d,A){}drawGeometry(W){}setStyle(W){}drawCircle(W,v,C){}drawFeature(W,v,C){}drawGeometryCollection(W,v,C){}drawLineString(W,v,C){}drawMultiLineString(W,v,C){}drawMultiPoint(W,v,C){}drawMultiPolygon(W,v,C){}drawPoint(W,v,C){}drawPolygon(W,v,C){}drawText(W,v,C){}setFillStrokeStyle(W,v){}setImageStyle(W,v){}setTextStyle(W,v){}}const y=b},33513:(gt,q,o)=>{o.d(q,{BV:()=>C,KQ:()=>x,XX:()=>t,aY:()=>M});var b=o(68711),y=o(70915),B=o(61597),W=o(82922);let v;const C=[];function d(s,r,P,D,u){s.beginPath(),s.moveTo(0,0),s.lineTo(r,P),s.lineTo(D,u),s.closePath(),s.save(),s.clip(),s.fillRect(0,0,Math.max(r,D)+1,Math.max(P,u)),s.restore()}function A(s,r){return Math.abs(s[r*4]-210)>2||Math.abs(s[r*4+3]-.75*255)>2}function O(){if(v===void 0){const s=(0,b.Y)(6,6,C);s.globalCompositeOperation="lighter",s.fillStyle="rgba(210, 0, 0, 0.75)",d(s,4,5,4,0),d(s,4,5,0,5);const r=s.getImageData(0,0,3,3).data;v=A(r,0)||A(r,4)||A(r,8),(0,b.Yg)(s),C.push(s.canvas)}return v}function x(s,r,P,D){const u=(0,W.pd)(P,r,s);let c=(0,W.hO)(r,D,P);const n=r.getMetersPerUnit();n!==void 0&&(c*=n);const e=s.getMetersPerUnit();e!==void 0&&(c/=e);const i=s.getExtent();if(!i||(0,y.Ym)(i,u)){const a=(0,W.hO)(s,c,u)/c;isFinite(a)&&a>0&&(c/=a)}return c}function M(s,r,P,D){const u=(0,y.q1)(P);let c=x(s,r,u,D);return(!isFinite(c)||c<=0)&&(0,y.sB)(P,function(n){return c=x(s,r,n,D),isFinite(c)&&c>0}),c}function t(s,r,P,D,u,c,n,e,i,a,g,m,R,h){const l=(0,b.Y)(Math.round(P*s),Math.round(P*r),C);if(m||(l.imageSmoothingEnabled=!1),i.length===0)return l.canvas;l.scale(P,P);function _(f){return Math.round(f*P)/P}l.globalCompositeOperation="lighter";const I=(0,y.S5)();i.forEach(function(f,S,N){(0,y.X$)(I,f.extent)});let T;const w=P/D,p=(m?1:1+Math.pow(2,-24))/w;if(!R||i.length!==1||a!==0){if(T=(0,b.Y)(Math.round((0,y.RG)(I)*w),Math.round((0,y.Oq)(I)*w),C),m||(T.imageSmoothingEnabled=!1),u&&h){const f=(u[0]-I[0])*w,S=-(u[3]-I[3])*w,N=(0,y.RG)(u)*w,K=(0,y.Oq)(u)*w;T.rect(f,S,N,K),T.clip()}i.forEach(function(f,S,N){if(f.image.width>0&&f.image.height>0){if(f.clipExtent){T.save();const X=(f.clipExtent[0]-I[0])*w,L=-(f.clipExtent[3]-I[3])*w,j=(0,y.RG)(f.clipExtent)*w,it=(0,y.Oq)(f.clipExtent)*w;T.rect(m?X:Math.round(X),m?L:Math.round(L),m?j:Math.round(X+j)-Math.round(X),m?it:Math.round(L+it)-Math.round(L)),T.clip()}const K=(f.extent[0]-I[0])*w,H=-(f.extent[3]-I[3])*w,Y=(0,y.RG)(f.extent)*w,st=(0,y.Oq)(f.extent)*w;T.drawImage(f.image,a,a,f.image.width-2*a,f.image.height-2*a,m?K:Math.round(K),m?H:Math.round(H),m?Y:Math.round(K+Y)-Math.round(K),m?st:Math.round(H+st)-Math.round(H)),f.clipExtent&&T.restore()}})}const E=(0,y.Py)(n);return e.getTriangles().forEach(function(f,S,N){const K=f.source,H=f.target;let Y=K[0][0],st=K[0][1],X=K[1][0],L=K[1][1],j=K[2][0],it=K[2][1];const k=_((H[0][0]-E[0])/c),Q=_(-(H[0][1]-E[1])/c),nt=_((H[1][0]-E[0])/c),tt=_(-(H[1][1]-E[1])/c),at=_((H[2][0]-E[0])/c),ht=_(-(H[2][1]-E[1])/c),ft=Y,vt=st;Y=0,st=0,X-=ft,L-=vt,j-=ft,it-=vt;const Tt=[[X,L,0,0,nt-k],[j,it,0,0,at-k],[0,0,X,L,tt-Q],[0,0,j,it,ht-Q]],z=(0,B.KU)(Tt);if(!z)return;if(l.save(),l.beginPath(),O()||!m){l.moveTo(nt,tt);const Z=4,ut=k-nt,ot=Q-tt;for(let F=0;F<Z;F++)l.lineTo(nt+_((F+1)*ut/Z),tt+_(F*ot/(Z-1))),F!=Z-1&&l.lineTo(nt+_((F+1)*ut/Z),tt+_((F+1)*ot/(Z-1)));l.lineTo(at,ht)}else l.moveTo(nt,tt),l.lineTo(k,Q),l.lineTo(at,ht);l.clip(),l.transform(z[0],z[2],z[1],z[3],k,Q),l.translate(I[0]-ft,I[3]-vt);let G;if(T)G=T.canvas,l.scale(p,-p);else{const Z=i[0],ut=Z.extent;G=Z.image,l.scale((0,y.RG)(ut)/G.width,-(0,y.Oq)(ut)/G.height)}l.drawImage(G,0,0),l.restore()}),T&&((0,b.Yg)(T),C.push(T.canvas)),g&&(l.save(),l.globalCompositeOperation="source-over",l.strokeStyle="black",l.lineWidth=1,e.getTriangles().forEach(function(f,S,N){const K=f.target,H=(K[0][0]-E[0])/c,Y=-(K[0][1]-E[1])/c,st=(K[1][0]-E[0])/c,X=-(K[1][1]-E[1])/c,L=(K[2][0]-E[0])/c,j=-(K[2][1]-E[1])/c;l.beginPath(),l.moveTo(st,X),l.lineTo(H,Y),l.lineTo(L,j),l.closePath(),l.stroke()}),l.restore()),l.canvas}},34835:(gt,q,o)=>{o.d(q,{Qi:()=>d,T0:()=>A,kc:()=>x,mf:()=>O,mh:()=>M,s2:()=>W});var b=o(89352),y=o(49825),B=o(25847);function W(t,s,r){const P=(0,y.SR)();return(0,B.nR)(s,r,P,t)}function v(t){const s=(0,b._j)(t),r=s[0]*256,P=s[1],D=s[2]*256,u=Math.round(s[3]*255);return[r+P,D+u]}const C=`vec4 unpackColor(vec2 packedColor) { return vec4( fract(floor(packedColor[0] / 256.0) / 256.0), fract(packedColor[0] / 256.0), fract(floor(packedColor[1] / 256.0) / 256.0), fract(packedColor[1] / 256.0) ); }`;function d(t){return t===y.mE||t===y.qA?2:t===y.Fq?4:1}function A(t){const s=d(t);return s>1?`vec${s}`:"float"}function O(t,s){for(const r in s.variables){const P=s.variables[r],D=(0,B.Sl)(P.name);let u=A(P.type);P.type===y.mE&&(u="vec4"),t.addUniform(D,u)}for(const r in s.properties){const P=s.properties[r],D=A(P.type),u=`a_prop_${P.name}`;P.type===y.mE?(t.addAttribute(u,D,`unpackColor(${u})`,"vec4"),t.addVertexShaderFunction(C)):t.addAttribute(u,D)}for(const r in s.functions)t.addVertexShaderFunction(s.functions[r]),t.addFragmentShaderFunction(s.functions[r])}function x(t,s){const r={};for(const P in t.variables){const D=t.variables[P],u=(0,B.Sl)(D.name);r[u]=()=>{const c=s[D.name];if(typeof c=="number")return c;if(typeof c=="boolean")return c?1:0;if(D.type===y.mE){const n=[...(0,b._j)(c||"#eee")];return n[0]/=255,n[1]/=255,n[2]/=255,n[3]??=1,n}return typeof c=="string"?(0,B.Lm)(c):c}}return r}function M(t){const s={};for(const r in t.properties){const P=t.properties[r],D=u=>{const c=u.get(P.name);return P.type===y.mE?v([...(0,b._j)(c||"#eee")]):typeof c=="string"?(0,B.Lm)(c):typeof c=="boolean"?c?1:0:c};s[`prop_${P.name}`]={size:d(P.type),callback:D}}return s}},34889:(gt,q,o)=>{o.d(q,{m:()=>b});function b(y){return Array.isArray(y)?Math.min(...y):y}},35339:(gt,q,o)=>{o.d(q,{v:()=>y});var b=o(48287).Buffer;function y(){const B='function t(t,n,x=2){const o=n&&n.length,i=o?n[0]*x:t.length;let u=e(t,0,i,x,!0);const l=[];if(!u||u.next===u.prev)return l;let c,h,y;if(o&&(u=function(t,n,r,x){const o=[];for(let r=0,i=n.length;r<i;r++){const u=e(t,n[r]*x,r<i-1?n[r+1]*x:t.length,x,!1);u===u.next&&(u.steiner=!0),o.push(a(u))}o.sort(f);for(let t=0;t<o.length;t++)r=s(o[t],r);return r}(t,n,u,x)),t.length>80*x){c=1/0,h=1/0;let e=-1/0,n=-1/0;for(let r=x;r<i;r+=x){const x=t[r],o=t[r+1];x<c&&(c=x),o<h&&(h=o),x>e&&(e=x),o>n&&(n=o)}y=Math.max(e-c,n-h),y=0!==y?32767/y:0}return r(u,l,x,c,h,y,0),l}function e(t,e,n,r,x){let o;if(x===function(t,e,n,r){let x=0;for(let o=e,i=n-r;o<n;o+=r)x+=(t[i]-t[o])*(t[o+1]+t[i+1]),i=o;return x}(t,e,n,r)>0)for(let x=e;x<n;x+=r)o=w(x/r|0,t[x],t[x+1],o);else for(let x=n-r;x>=e;x-=r)o=w(x/r|0,t[x],t[x+1],o);return o&&g(o,o.next)&&(A(o),o=o.next),o}function n(t,e){if(!t)return t;e||(e=t);let n,r=t;do{if(n=!1,r.steiner||!g(r,r.next)&&0!==v(r.prev,r,r.next))r=r.next;else{if(A(r),r=e=r.prev,r===r.next)break;n=!0}}while(n||r!==e);return e}function r(t,e,f,s,l,a,h){if(!t)return;!h&&a&&function(t,e,n,r){let x=t;do{0===x.z&&(x.z=c(x.x,x.y,e,n,r)),x.prevZ=x.prev,x.nextZ=x.next,x=x.next}while(x!==t);x.prevZ.nextZ=null,x.prevZ=null,function(t){let e,n=1;do{let r,x=t;t=null;let o=null;for(e=0;x;){e++;let i=x,u=0;for(let t=0;t<n&&(u++,i=i.nextZ,i);t++);let f=n;for(;u>0||f>0&&i;)0!==u&&(0===f||!i||x.z<=i.z)?(r=x,x=x.nextZ,u--):(r=i,i=i.nextZ,f--),o?o.nextZ=r:t=r,r.prevZ=o,o=r;x=i}o.nextZ=null,n*=2}while(e>1)}(x)}(t,s,l,a);let y=t;for(;t.prev!==t.next;){const c=t.prev,p=t.next;if(a?o(t,s,l,a):x(t))e.push(c.i,t.i,p.i),A(t),t=p.next,y=p.next;else if((t=p)===y){h?1===h?r(t=i(n(t),e),e,f,s,l,a,2):2===h&&u(t,e,f,s,l,a):r(n(t),e,f,s,l,a,1);break}}}function x(t){const e=t.prev,n=t,r=t.next;if(v(e,n,r)>=0)return!1;const x=e.x,o=n.x,i=r.x,u=e.y,f=n.y,s=r.y,l=Math.min(x,o,i),c=Math.min(u,f,s),a=Math.max(x,o,i),h=Math.max(u,f,s);let p=r.next;for(;p!==e;){if(p.x>=l&&p.x<=a&&p.y>=c&&p.y<=h&&y(x,u,o,f,i,s,p.x,p.y)&&v(p.prev,p,p.next)>=0)return!1;p=p.next}return!0}function o(t,e,n,r){const x=t.prev,o=t,i=t.next;if(v(x,o,i)>=0)return!1;const u=x.x,f=o.x,s=i.x,l=x.y,a=o.y,h=i.y,p=Math.min(u,f,s),g=Math.min(l,a,h),b=Math.max(u,f,s),M=Math.max(l,a,h),m=c(p,g,e,n,r),Z=c(b,M,e,n,r);let d=t.prevZ,w=t.nextZ;for(;d&&d.z>=m&&w&&w.z<=Z;){if(d.x>=p&&d.x<=b&&d.y>=g&&d.y<=M&&d!==x&&d!==i&&y(u,l,f,a,s,h,d.x,d.y)&&v(d.prev,d,d.next)>=0)return!1;if(d=d.prevZ,w.x>=p&&w.x<=b&&w.y>=g&&w.y<=M&&w!==x&&w!==i&&y(u,l,f,a,s,h,w.x,w.y)&&v(w.prev,w,w.next)>=0)return!1;w=w.nextZ}for(;d&&d.z>=m;){if(d.x>=p&&d.x<=b&&d.y>=g&&d.y<=M&&d!==x&&d!==i&&y(u,l,f,a,s,h,d.x,d.y)&&v(d.prev,d,d.next)>=0)return!1;d=d.prevZ}for(;w&&w.z<=Z;){if(w.x>=p&&w.x<=b&&w.y>=g&&w.y<=M&&w!==x&&w!==i&&y(u,l,f,a,s,h,w.x,w.y)&&v(w.prev,w,w.next)>=0)return!1;w=w.nextZ}return!0}function i(t,e){let r=t;do{const n=r.prev,x=r.next.next;!g(n,x)&&b(n,r,r.next,x)&&Z(n,x)&&Z(x,n)&&(e.push(n.i,r.i,x.i),A(r),A(r.next),r=t=x),r=r.next}while(r!==t);return n(r)}function u(t,e,x,o,i,u){let f=t;do{let t=f.next.next;for(;t!==f.prev;){if(f.i!==t.i&&p(f,t)){let s=d(f,t);return f=n(f,f.next),s=n(s,s.next),r(f,e,x,o,i,u,0),void r(s,e,x,o,i,u,0)}t=t.next}f=f.next}while(f!==t)}function f(t,e){let n=t.x-e.x;if(0===n&&(n=t.y-e.y,0===n)){n=(t.next.y-t.y)/(t.next.x-t.x)-(e.next.y-e.y)/(e.next.x-e.x)}return n}function s(t,e){const r=function(t,e){let n=e;const r=t.x,x=t.y;let o,i=-1/0;if(g(t,n))return n;do{if(g(t,n.next))return n.next;if(x<=n.y&&x>=n.next.y&&n.next.y!==n.y){const t=n.x+(x-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(t<=r&&t>i&&(i=t,o=n.x<n.next.x?n:n.next,t===r))return o}n=n.next}while(n!==e);if(!o)return null;const u=o,f=o.x,s=o.y;let c=1/0;n=o;do{if(r>=n.x&&n.x>=f&&r!==n.x&&h(x<s?r:i,x,f,s,x<s?i:r,x,n.x,n.y)){const e=Math.abs(x-n.y)/(r-n.x);Z(n,t)&&(e<c||e===c&&(n.x>o.x||n.x===o.x&&l(o,n)))&&(o=n,c=e)}n=n.next}while(n!==u);return o}(t,e);if(!r)return e;const x=d(r,t);return n(x,x.next),n(r,r.next)}function l(t,e){return v(t.prev,t,e.prev)<0&&v(e.next,t,t.next)<0}function c(t,e,n,r,x){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-n)*x|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-r)*x|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function a(t){let e=t,n=t;do{(e.x<n.x||e.x===n.x&&e.y<n.y)&&(n=e),e=e.next}while(e!==t);return n}function h(t,e,n,r,x,o,i,u){return(x-i)*(e-u)>=(t-i)*(o-u)&&(t-i)*(r-u)>=(n-i)*(e-u)&&(n-i)*(o-u)>=(x-i)*(r-u)}function y(t,e,n,r,x,o,i,u){return!(t===i&&e===u)&&h(t,e,n,r,x,o,i,u)}function p(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){let n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&b(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&(Z(t,e)&&Z(e,t)&&function(t,e){let n=t,r=!1;const x=(t.x+e.x)/2,o=(t.y+e.y)/2;do{n.y>o!=n.next.y>o&&n.next.y!==n.y&&x<(n.next.x-n.x)*(o-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==t);return r}(t,e)&&(v(t.prev,t,e.prev)||v(t,e.prev,e))||g(t,e)&&v(t.prev,t,t.next)>0&&v(e.prev,e,e.next)>0)}function v(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function g(t,e){return t.x===e.x&&t.y===e.y}function b(t,e,n,r){const x=m(v(t,e,n)),o=m(v(t,e,r)),i=m(v(n,r,t)),u=m(v(n,r,e));return x!==o&&i!==u||(!(0!==x||!M(t,n,e))||(!(0!==o||!M(t,r,e))||(!(0!==i||!M(n,t,r))||!(0!==u||!M(n,e,r)))))}function M(t,e,n){return e.x<=Math.max(t.x,n.x)&&e.x>=Math.min(t.x,n.x)&&e.y<=Math.max(t.y,n.y)&&e.y>=Math.min(t.y,n.y)}function m(t){return t>0?1:t<0?-1:0}function Z(t,e){return v(t.prev,t,t.next)<0?v(t,e,t.next)>=0&&v(t,t.prev,e)>=0:v(t,e,t.prev)<0||v(t,t.next,e)<0}function d(t,e){const n=E(t.i,t.x,t.y),r=E(e.i,e.x,e.y),x=t.next,o=e.prev;return t.next=e,e.prev=t,n.next=x,x.prev=n,r.next=n,n.prev=r,o.next=r,r.prev=o,r}function w(t,e,n,r){const x=E(t,e,n);return r?(x.next=r.next,x.prev=r,r.next.prev=x,r.next=x):(x.prev=x,x.next=x),x}function A(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function E(t,e,n){return{i:t,x:e,y:n,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function I(t,e){const n=e[0],r=e[1];return e[0]=t[0]*n+t[2]*r+t[4],e[1]=t[1]*n+t[3]*r+t[5],e}function z(t,e){const n=(r=e)[0]*r[3]-r[1]*r[2];var r;!function(t,e){if(!t)throw new Error(e)}(0!==n,"Transformation matrix cannot be inverted");const x=e[0],o=e[1],i=e[2],u=e[3],f=e[4],s=e[5];return t[0]=u/n,t[1]=-o/n,t[2]=-i/n,t[3]=x/n,t[4]=(i*s-u*f)/n,t[5]=-(x*s-o*f)/n,t}new Array(6);const F=[],P={vertexPosition:0,indexPosition:0};function B(t,e,n,r,x){t[e+0]=n,t[e+1]=r,t[e+2]=x}function N(t,e,n,r,x,o){const i=3+x,u=t[e+0],f=t[e+1],s=F;s.length=x;for(let n=0;n<s.length;n++)s[n]=t[e+2+n];let l=o?o.vertexPosition:0,c=o?o.indexPosition:0;const a=l/i;return B(n,l,u,f,0),s.length&&n.set(s,l+3),l+=i,B(n,l,u,f,1),s.length&&n.set(s,l+3),l+=i,B(n,l,u,f,2),s.length&&n.set(s,l+3),l+=i,B(n,l,u,f,3),s.length&&n.set(s,l+3),l+=i,r[c++]=a,r[c++]=a+1,r[c++]=a+3,r[c++]=a+1,r[c++]=a+2,r[c++]=a+3,P.vertexPosition=l,P.indexPosition=c,P}function R(t,e,n,r,x,o,i,u,f,s,l){const c=10+u.length,a=o.length/c,h=[t[e+0],t[e+1]],y=[t[n],t[n+1]],p=t[e+2],v=t[n+2],g=I(f,[...h]),b=I(f,[...y]);function M(t,e,n){const r=Math.sqrt((e[0]-t[0])*(e[0]-t[0])+(e[1]-t[1])*(e[1]-t[1])),x=[(e[0]-t[0])/r,(e[1]-t[1])/r],o=[-x[1],x[0]],i=Math.sqrt((n[0]-t[0])*(n[0]-t[0])+(n[1]-t[1])*(n[1]-t[1])),u=[(n[0]-t[0])/i,(n[1]-t[1])/i],f=0===r||0===i?0:Math.acos((s=u[0]*x[0]+u[1]*x[1],l=-1,c=1,Math.min(Math.max(s,l),c)));var s,l,c;return u[0]*o[0]+u[1]*o[1]>0?f:2*Math.PI-f}let m=-1,Z=-1,d=l;const w=null!==x;if(null!==r){m=M(g,b,I(f,[...[t[r],t[r+1]]])),Math.cos(m)<=.985&&(d+=Math.tan((m-Math.PI)/2))}if(w){Z=M(b,g,I(f,[...[t[x],t[x+1]]])),Math.cos(Z)<=.985&&(d+=Math.tan((Math.PI-Z)/2))}function A(t,e){return 0===e?1e4*t:Math.sign(e)*(1e4*t+Math.abs(e))}return o.push(h[0],h[1],p,y[0],y[1],v,m,Z,s,A(0,l)),o.push(...u),o.push(h[0],h[1],p,y[0],y[1],v,m,Z,s,A(1,l)),o.push(...u),o.push(h[0],h[1],p,y[0],y[1],v,m,Z,s,A(2,l)),o.push(...u),o.push(h[0],h[1],p,y[0],y[1],v,m,Z,s,A(3,l)),o.push(...u),i.push(a,a+1,a+2,a+1,a+3,a+2),{length:s+Math.sqrt((b[0]-g[0])*(b[0]-g[0])+(b[1]-g[1])*(b[1]-g[1])),angle:d}}function S(e,n,r,x,o){const i=2+o;let u=n;const f=e.slice(u,u+o);u+=o;const s=e[u++];let l=0;const c=new Array(s-1);for(let t=0;t<s;t++)l+=e[u++],t<s-1&&(c[t]=l);const a=e.slice(u,u+2*l),h=t(a,c,2);for(let t=0;t<h.length;t++)x.push(h[t]+r.length/i);for(let t=0;t<a.length;t+=2)r.push(a[t],a[t+1],...f);return u+2*l}const T="GENERATE_POLYGON_BUFFERS",_="GENERATE_POINT_BUFFERS",O="GENERATE_LINE_STRING_BUFFERS",U=self;U.onmessage=t=>{const e=t.data;switch(e.type){case _:{const t=3,n=2,r=e.customAttributesSize,x=n+r,o=new Float32Array(e.renderInstructions),i=o.length/x,u=4*i*(r+t),f=new Uint32Array(6*i),s=new Float32Array(u);let l;for(let t=0;t<o.length;t+=x)l=N(o,t,s,f,r,l);const c=Object.assign({vertexBuffer:s.buffer,indexBuffer:f.buffer,renderInstructions:o.buffer},e);U.postMessage(c,[s.buffer,f.buffer,o.buffer]);break}case O:{const t=[],n=[],r=e.customAttributesSize,x=3,o=new Float32Array(e.renderInstructions);let i=0;const u=[1,0,0,1,0,0];let f,s;for(z(u,e.renderInstructionsTransform);i<o.length;){s=Array.from(o.slice(i,i+r)),i+=r,f=o[i++];const e=i,l=i+(f-1)*x,c=o[e]===o[l]&&o[e+1]===o[l+1];let a=0,h=0;for(let r=0;r<f-1;r++){let y=null;r>0?y=i+(r-1)*x:c&&(y=l-x);let p=null;r<f-2?p=i+(r+2)*x:c&&(p=e+x);const v=R(o,i+r*x,i+(r+1)*x,y,p,t,n,s,u,a,h);a=v.length,h=v.angle}i+=f*x}const l=Uint32Array.from(n),c=Float32Array.from(t),a=Object.assign({vertexBuffer:c.buffer,indexBuffer:l.buffer,renderInstructions:o.buffer},e);U.postMessage(a,[c.buffer,l.buffer,o.buffer]);break}case T:{const t=[],n=[],r=e.customAttributesSize,x=new Float32Array(e.renderInstructions);let o=0;for(;o<x.length;)o=S(x,o,t,n,r);const i=Uint32Array.from(n),u=Float32Array.from(t),f=Object.assign({vertexBuffer:u.buffer,indexBuffer:i.buffer,renderInstructions:x.buffer},e);U.postMessage(f,[u.buffer,i.buffer,x.buffer]);break}}};';return new Worker(typeof Blob>"u"?"data:application/javascript;base64,"+b.from(B,"binary").toString("base64"):URL.createObjectURL(new Blob([B],{type:"application/javascript"})))}},35598:(gt,q,o)=>{o.d(q,{A:()=>P,i:()=>t});var b=o(50071),y=o(32135),B=o(28450),W=o(90588),v=o(1685),C=o(6837),d=o(9438),A=o(70915),O=o(43530),x=o(4087),M=o(58620);class t extends v.Ay{constructor(u,c){super(u),this.layer=c}}const s={LAYERS:"layers"};class r extends M.A{constructor(u){u=u||{};const c=Object.assign({},u);delete c.layers;let n=u.layers;super(c),this.on,this.once,this.un,this.layersListenerKeys_=[],this.listenerKeys_={},this.addChangeListener(s.LAYERS,this.handleLayersChanged_),n?Array.isArray(n)?n=new b.A(n.slice(),{unique:!0}):(0,W.v)(typeof n.getArray=="function","Expected `layers` to be an array or a `Collection`"):n=new b.A(void 0,{unique:!0}),this.setLayers(n)}handleLayerChange_(){this.changed()}handleLayersChanged_(){this.layersListenerKeys_.forEach(d.JH),this.layersListenerKeys_.length=0;const u=this.getLayers();this.layersListenerKeys_.push((0,d.KT)(u,y.A.ADD,this.handleLayersAdd_,this),(0,d.KT)(u,y.A.REMOVE,this.handleLayersRemove_,this));for(const n in this.listenerKeys_)this.listenerKeys_[n].forEach(d.JH);(0,O.I)(this.listenerKeys_);const c=u.getArray();for(let n=0,e=c.length;n<e;n++){const i=c[n];this.registerLayerListeners_(i),this.dispatchEvent(new t("addlayer",i))}this.changed()}registerLayerListeners_(u){const c=[(0,d.KT)(u,B.A.PROPERTYCHANGE,this.handleLayerChange_,this),(0,d.KT)(u,C.A.CHANGE,this.handleLayerChange_,this)];u instanceof r&&c.push((0,d.KT)(u,"addlayer",this.handleLayerGroupAdd_,this),(0,d.KT)(u,"removelayer",this.handleLayerGroupRemove_,this)),this.listenerKeys_[(0,x.v6)(u)]=c}handleLayerGroupAdd_(u){this.dispatchEvent(new t("addlayer",u.layer))}handleLayerGroupRemove_(u){this.dispatchEvent(new t("removelayer",u.layer))}handleLayersAdd_(u){const c=u.element;this.registerLayerListeners_(c),this.dispatchEvent(new t("addlayer",c)),this.changed()}handleLayersRemove_(u){const c=u.element,n=(0,x.v6)(c);this.listenerKeys_[n].forEach(d.JH),delete this.listenerKeys_[n],this.dispatchEvent(new t("removelayer",c)),this.changed()}getLayers(){return this.get(s.LAYERS)}setLayers(u){const c=this.getLayers();if(c){const n=c.getArray();for(let e=0,i=n.length;e<i;++e)this.dispatchEvent(new t("removelayer",n[e]))}this.set(s.LAYERS,u)}getLayersArray(u){return u=u!==void 0?u:[],this.getLayers().forEach(function(c){c.getLayersArray(u)}),u}getLayerStatesArray(u){const c=u!==void 0?u:[],n=c.length;this.getLayers().forEach(function(a){a.getLayerStatesArray(c)});const e=this.getLayerState();let i=e.zIndex;!u&&e.zIndex===void 0&&(i=0);for(let a=n,g=c.length;a<g;a++){const m=c[a];m.opacity*=e.opacity,m.visible=m.visible&&e.visible,m.maxResolution=Math.min(m.maxResolution,e.maxResolution),m.minResolution=Math.max(m.minResolution,e.minResolution),m.minZoom=Math.max(m.minZoom,e.minZoom),m.maxZoom=Math.min(m.maxZoom,e.maxZoom),e.extent!==void 0&&(m.extent!==void 0?m.extent=(0,A._N)(m.extent,e.extent):m.extent=e.extent),m.zIndex===void 0&&(m.zIndex=i)}return c}getSourceState(){return"ready"}}const P=r},36813:(gt,q,o)=>{o.d(q,{A:()=>O,z:()=>x});var b=o(11078),y=o(6837),B=o(90588),W=o(43530);const v=1/0;class C{constructor(t,s){this.priorityFunction_=t,this.keyFunction_=s,this.elements_=[],this.priorities_=[],this.queuedElements_={}}clear(){this.elements_.length=0,this.priorities_.length=0,(0,W.I)(this.queuedElements_)}dequeue(){const t=this.elements_,s=this.priorities_,r=t[0];t.length==1?(t.length=0,s.length=0):(t[0]=t.pop(),s[0]=s.pop(),this.siftUp_(0));const P=this.keyFunction_(r);return delete this.queuedElements_[P],r}enqueue(t){(0,B.v)(!(this.keyFunction_(t)in this.queuedElements_),"Tried to enqueue an `element` that was already added to the queue");const s=this.priorityFunction_(t);return s!=v?(this.elements_.push(t),this.priorities_.push(s),this.queuedElements_[this.keyFunction_(t)]=!0,this.siftDown_(0,this.elements_.length-1),!0):!1}getCount(){return this.elements_.length}getLeftChildIndex_(t){return t*2+1}getRightChildIndex_(t){return t*2+2}getParentIndex_(t){return t-1>>1}heapify_(){let t;for(t=(this.elements_.length>>1)-1;t>=0;t--)this.siftUp_(t)}isEmpty(){return this.elements_.length===0}isKeyQueued(t){return t in this.queuedElements_}isQueued(t){return this.isKeyQueued(this.keyFunction_(t))}siftUp_(t){const s=this.elements_,r=this.priorities_,P=s.length,D=s[t],u=r[t],c=t;for(;t<P>>1;){const n=this.getLeftChildIndex_(t),e=this.getRightChildIndex_(t),i=e<P&&r[e]<r[n]?e:n;s[t]=s[i],r[t]=r[i],t=i}s[t]=D,r[t]=u,this.siftDown_(c,t)}siftDown_(t,s){const r=this.elements_,P=this.priorities_,D=r[s],u=P[s];for(;s>t;){const c=this.getParentIndex_(s);if(P[c]>u)r[s]=r[c],P[s]=P[c],s=c;else break}r[s]=D,P[s]=u}reprioritize(){const t=this.priorityFunction_,s=this.elements_,r=this.priorities_;let P=0;const D=s.length;let u,c,n;for(c=0;c<D;++c)u=s[c],n=t(u),n==v?delete this.queuedElements_[this.keyFunction_(u)]:(r[P]=n,s[P++]=u);s.length=P,r.length=P,this.heapify_()}}const d=C;class A extends d{constructor(t,s){super(r=>t.apply(null,r),r=>r[0].getKey()),this.boundHandleTileChange_=this.handleTileChange.bind(this),this.tileChangeCallback_=s,this.tilesLoading_=0,this.tilesLoadingKeys_={}}enqueue(t){const s=super.enqueue(t);return s&&t[0].addEventListener(y.A.CHANGE,this.boundHandleTileChange_),s}getTilesLoading(){return this.tilesLoading_}handleTileChange(t){const s=t.target,r=s.getState();if(r===b.A.LOADED||r===b.A.ERROR||r===b.A.EMPTY){r!==b.A.ERROR&&s.removeEventListener(y.A.CHANGE,this.boundHandleTileChange_);const P=s.getKey();P in this.tilesLoadingKeys_&&(delete this.tilesLoadingKeys_[P],--this.tilesLoading_),this.tileChangeCallback_()}}loadMoreTiles(t,s){let r=0;for(;this.tilesLoading_<t&&r<s&&this.getCount()>0;){const P=this.dequeue()[0],D=P.getKey();P.getState()===b.A.IDLE&&!(D in this.tilesLoadingKeys_)&&(this.tilesLoadingKeys_[D]=!0,++this.tilesLoading_,++r,P.load())}}}const O=A;function x(M,t,s,r,P){if(!M||!(s in M.wantedTiles)||!M.wantedTiles[s][t.getKey()])return v;const D=M.viewState.center,u=r[0]-D[0],c=r[1]-D[1];return 65536*Math.log(P)+Math.sqrt(u*u+c*c)/P}},38111:(gt,q,o)=>{o.d(q,{A:()=>A});var b=o(75332),y=o(87579),B=o(83984),W=o(9703),v=o(9777),C=o(5986);class d extends C.A{constructor(x,M){super(x),M=M||{},this.inversePixelTransform_=(0,W.vt)(),this.postProcesses_=M.postProcesses,this.uniforms_=M.uniforms,this.helper,this.onMapChanged_=()=>{this.clearCache(),this.removeHelper()},x.addChangeListener(b.A.MAP,this.onMapChanged_),this.dispatchPreComposeEvent=this.dispatchPreComposeEvent.bind(this),this.dispatchPostComposeEvent=this.dispatchPostComposeEvent.bind(this)}dispatchPreComposeEvent(x,M){const t=this.getLayer();if(t.hasListener(B.A.PRECOMPOSE)){const s=new y.A(B.A.PRECOMPOSE,void 0,M,x);t.dispatchEvent(s)}}dispatchPostComposeEvent(x,M){const t=this.getLayer();if(t.hasListener(B.A.POSTCOMPOSE)){const s=new y.A(B.A.POSTCOMPOSE,void 0,M,x);t.dispatchEvent(s)}}reset(x){this.uniforms_=x.uniforms,this.helper&&this.helper.setUniforms(this.uniforms_)}removeHelper(){this.helper&&(this.helper.dispose(),delete this.helper)}prepareFrame(x){if(this.getLayer().getRenderSource()){let M=!0,t=-1,s;for(let P=0,D=x.layerStatesArray.length;P<D;P++){const u=x.layerStatesArray[P].layer,c=u.getRenderer();if(!(c instanceof d)){M=!0;continue}const n=u.getClassName();if((M||n!==s)&&(t+=1,M=!1),s=n,c===this)break}const r="map/"+x.mapId+"/group/"+t;(!this.helper||!this.helper.canvasCacheKeyMatches(r)||this.helper.needsToBeRecreated())&&(this.removeHelper(),this.helper=new v.Ay({postProcesses:this.postProcesses_,uniforms:this.uniforms_,canvasCacheKey:r}),s&&(this.helper.getCanvas().className=s),this.afterHelperCreated())}return this.prepareFrameInternal(x)}afterHelperCreated(){}prepareFrameInternal(x){return!0}clearCache(){}disposeInternal(){this.clearCache(),this.removeHelper(),this.getLayer()?.removeChangeListener(b.A.MAP,this.onMapChanged_),super.disposeInternal()}dispatchRenderEvent_(x,M,t){const s=this.getLayer();if(s.hasListener(x)){(0,W.Zz)(this.inversePixelTransform_,0,0,t.pixelRatio,-t.pixelRatio,0,0,-t.size[1]);const r=new y.A(x,this.inversePixelTransform_,t,M);s.dispatchEvent(r)}}preRender(x,M){this.dispatchRenderEvent_(B.A.PRERENDER,x,M)}postRender(x,M){this.dispatchRenderEvent_(B.A.POSTRENDER,x,M)}}const A=d},38774:(gt,q,o)=>{o.d(q,{Jw:()=>w,M8:()=>P,MY:()=>r,NT:()=>s,Oq:()=>O,TA:()=>_,Tq:()=>D,ZV:()=>C,_K:()=>M,_m:()=>A,aq:()=>u,eL:()=>t,fZ:()=>m,jT:()=>I,qY:()=>d,vk:()=>x,yY:()=>c});var b=o(34120),y=o(25176),B=o(68711),W=o(7771),v=o(43530);const C="10px sans-serif",d="#000",A="round",O=[],x=0,M="round",t=10,s="#000",r="center",P="middle",D=[0,0,0,0],u=1,c=new b.A;let n=null,e;const i={},a=new Set(["serif","sans-serif","monospace","cursive","fantasy","system-ui","ui-serif","ui-sans-serif","ui-monospace","ui-rounded","emoji","math","fangsong"]);function g(E,f,S){return`${E} ${f} 16px "${S}"`}const m=function(){let f,S;async function N(H){await S.ready;const Y=await S.load(H);if(Y.length===0)return!1;const st=(0,y.K5)(H),X=st.families[0].toLowerCase(),L=st.weight;return Y.some(j=>{const it=j.family.replace(/^['"]|['"]$/g,"").toLowerCase(),k=y.NM[j.weight]||j.weight;return it===X&&j.style===st.style&&k==L})}async function K(){await S.ready;let H=!0;const Y=c.getProperties(),st=Object.keys(Y).filter(X=>Y[X]<100);for(let X=st.length-1;X>=0;--X){const L=st[X];let j=Y[L];j<100&&(await N(L)?((0,v.I)(i),c.set(L,100)):(j+=10,c.set(L,j,!0),j<100&&(H=!1)))}f=void 0,H||(f=setTimeout(K,100))}return async function(H){S||(S=W.Wl?self.fonts:document.fonts);const Y=(0,y.K5)(H);if(!Y)return;const st=Y.families;let X=!1;for(const L of st){if(a.has(L))continue;const j=g(Y.style,Y.weight,L);c.get(j)===void 0&&(c.set(j,0,!0),X=!0)}X&&(clearTimeout(f),f=setTimeout(K,100))}}(),R=function(){let E;return function(f){let S=i[f];if(S==null){if(W.Wl){const N=(0,y.K5)(f),K=h(f,"\u017Dg");S=(isNaN(Number(N.lineHeight))?1.2:Number(N.lineHeight))*(K.actualBoundingBoxAscent+K.actualBoundingBoxDescent)}else E||(E=document.createElement("div"),E.innerHTML="M",E.style.minHeight="0",E.style.maxHeight="none",E.style.height="auto",E.style.padding="0",E.style.border="none",E.style.position="absolute",E.style.display="block",E.style.left="-99999px"),E.style.font=f,document.body.appendChild(E),S=E.offsetHeight,document.body.removeChild(E);i[f]=S}return S}}();function h(E,f){return n||(n=(0,B.Y)(1,1)),E!=e&&(n.font=E,e=n.font),n.measureText(f)}function l(E,f){return h(E,f).width}function _(E,f,S){if(f in S)return S[f];const N=f.split(` `).reduce((K,H)=>Math.max(K,l(E,H)),0);return S[f]=N,N}function I(E,f){const S=[],N=[],K=[];let H=0,Y=0,st=0,X=0;for(let L=0,j=f.length;L<=j;L+=2){const it=f[L];if(it===` `||L===j){H=Math.max(H,Y),K.push(Y),Y=0,st+=X,X=0;continue}const k=f[L+1]||E.font,Q=l(k,it);S.push(Q),Y+=Q;const nt=R(k);N.push(nt),X=Math.max(X,nt)}return{width:H,height:st,widths:S,heights:N,lineWidths:K}}function T(E,f,S,N){f!==0&&(E.translate(S,N),E.rotate(f),E.translate(-S,-N))}function w(E,f,S,N,K,H,Y,st,X,L,j){E.save(),S!==1&&(E.globalAlpha===void 0?E.globalAlpha=it=>it.globalAlpha*=S:E.globalAlpha*=S),f&&E.transform.apply(E,f),N.contextInstructions?(E.translate(X,L),E.scale(j[0],j[1]),p(N,E)):j[0]<0||j[1]<0?(E.translate(X,L),E.scale(j[0],j[1]),E.drawImage(N,K,H,Y,st,0,0,Y,st)):E.drawImage(N,K,H,Y,st,X,L,Y*j[0],st*j[1]),E.restore()}function p(E,f){const S=E.contextInstructions;for(let N=0,K=S.length;N<K;N+=2)Array.isArray(S[N+1])?f[S[N]].apply(f,S[N+1]):f[S[N]]=S[N+1]}},40186:(gt,q,o)=>{o.d(q,{N:()=>b,N5:()=>A,dp:()=>y,i7:()=>B,tW:()=>C});function b(O,x,M,t){return t!==void 0?(t[0]=O,t[1]=x,t[2]=M,t):[O,x,M]}function y(O,x,M){return O+"/"+x+"/"+M}function B(O){return y(O[0],O[1],O[2])}function W(O){const[x,M,t]=O.substring(O.lastIndexOf("/")+1,O.length).split(",").map(Number);return y(x,M,t)}function v(O){return O.split("/").map(Number)}function C(O){return d(O[0],O[1],O[2])}function d(O,x,M){return(x<<O)+M}function A(O,x){const M=O[0],t=O[1],s=O[2];if(x.getMinZoom()>M||M>x.getMaxZoom())return!1;const r=x.getFullTileRange(M);return r?r.containsXY(t,s):!0}},40190:(gt,q,o)=>{o.d(q,{A:()=>d});var b=o(43938),y=o(8143),B=o(11078),W=o(68711);class v extends y.A{constructor(O,x,M,t,s,r){super(O,x,r),this.crossOrigin_=t,this.src_=M,this.key=M,this.image_=new Image,t!==null&&(this.image_.crossOrigin=t),this.unlisten_=null,this.tileLoadFunction_=s}getImage(){return this.image_}setImage(O){this.image_=O,this.state=B.A.LOADED,this.unlistenImage_(),this.changed()}handleImageError_(){this.state=B.A.ERROR,this.unlistenImage_(),this.image_=C(),this.changed()}handleImageLoad_(){const O=this.image_;O.naturalWidth&&O.naturalHeight?this.state=B.A.LOADED:this.state=B.A.EMPTY,this.unlistenImage_(),this.changed()}load(){this.state==B.A.ERROR&&(this.state=B.A.IDLE,this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_)),this.state==B.A.IDLE&&(this.state=B.A.LOADING,this.changed(),this.tileLoadFunction_(this,this.src_),this.unlisten_=(0,b.f6)(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this)))}unlistenImage_(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)}disposeInternal(){this.unlistenImage_(),this.image_=null,super.disposeInternal()}}function C(){const A=(0,W.Y)(1,1);return A.fillStyle="rgba(0,0,0,0)",A.fillRect(0,0,1,1),A.canvas}const d=v},40808:(gt,q,o)=>{o.d(q,{A:()=>B});var b=o(68711);class y{constructor(){this.instructions_=[],this.zIndex=0,this.offset_=0,this.context_=new Proxy((0,b.lr)(),{get:(v,C)=>{if(typeof(0,b.lr)()[C]=="function")return this.push_(C),this.pushMethodArgs_},set:(v,C,d)=>(this.push_(C,d),!0)})}push_(...v){const C=this.instructions_,d=this.zIndex+this.offset_;C[d]||(C[d]=[]),C[d].push(...v)}pushMethodArgs_=(...v)=>(this.push_(v),this);pushFunction(v){this.push_(v)}getContext(){return this.context_}draw(v){this.instructions_.forEach(C=>{for(let d=0,A=C.length;d<A;++d){const O=C[d];if(typeof O=="function"){O(v);continue}const x=C[++d];if(typeof v[O]=="function")v[O](...x);else{if(typeof x=="function"){v[O]=x(v);continue}v[O]=x}}})}clear(){this.instructions_.length=0,this.zIndex=0,this.offset_=0}offset(){this.offset_=this.instructions_.length,this.zIndex=0}}const B=y},42375:(gt,q,o)=>{o.d(q,{A:()=>W});function b(n,e,i=0,a=n.length-1,g=B){for(;a>i;){if(a-i>600){const l=a-i+1,_=e-i+1,I=Math.log(l),T=.5*Math.exp(2*I/3),w=.5*Math.sqrt(I*T*(l-T)/l)*(_-l/2<0?-1:1),p=Math.max(i,Math.floor(e-_*T/l+w)),E=Math.min(a,Math.floor(e+(l-_)*T/l+w));b(n,e,p,E,g)}const m=n[e];let R=i,h=a;for(y(n,i,e),g(n[a],m)>0&&y(n,i,a);R<h;){for(y(n,R,h),R++,h--;g(n[R],m)<0;)R++;for(;g(n[h],m)>0;)h--}g(n[i],m)===0?y(n,i,h):(h++,y(n,h,a)),h<=e&&(i=h+1),e<=h&&(a=h-1)}}function y(n,e,i){const a=n[e];n[e]=n[i],n[i]=a}function B(n,e){return n<e?-1:n>e?1:0}class W{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 i=this.data;const a=[];if(!D(e,i))return a;const g=this.toBBox,m=[];for(;i;){for(let R=0;R<i.children.length;R++){const h=i.children[R],l=i.leaf?g(h):h;D(e,l)&&(i.leaf?a.push(h):P(e,l)?this._all(h,a):m.push(h))}i=m.pop()}return a}collides(e){let i=this.data;if(!D(e,i))return!1;const a=[];for(;i;){for(let g=0;g<i.children.length;g++){const m=i.children[g],R=i.leaf?this.toBBox(m):m;if(D(e,R)){if(i.leaf||P(e,R))return!0;a.push(m)}}i=a.pop()}return!1}load(e){if(!(e&&e.length))return this;if(e.length<this._minEntries){for(let a=0;a<e.length;a++)this.insert(e[a]);return this}let i=this._build(e.slice(),0,e.length-1,0);if(!this.data.children.length)this.data=i;else if(this.data.height===i.height)this._splitRoot(this.data,i);else{if(this.data.height<i.height){const a=this.data;this.data=i,i=a}this._insert(i,this.data.height-i.height-1,!0)}return this}insert(e){return e&&this._insert(e,this.data.height-1),this}clear(){return this.data=u([]),this}remove(e,i){if(!e)return this;let a=this.data;const g=this.toBBox(e),m=[],R=[];let h,l,_;for(;a||m.length;){if(a||(a=m.pop(),l=m[m.length-1],h=R.pop(),_=!0),a.leaf){const I=v(e,a.children,i);if(I!==-1)return a.children.splice(I,1),m.push(a),this._condense(m),this}!_&&!a.leaf&&P(a,g)?(m.push(a),R.push(h),h=0,l=a,a=a.children[0]):l?(h++,a=l.children[h],_=!1):a=null}return this}toBBox(e){return e}compareMinX(e,i){return e.minX-i.minX}compareMinY(e,i){return e.minY-i.minY}toJSON(){return this.data}fromJSON(e){return this.data=e,this}_all(e,i){const a=[];for(;e;)e.leaf?i.push(...e.children):a.push(...e.children),e=a.pop();return i}_build(e,i,a,g){const m=a-i+1;let R=this._maxEntries,h;if(m<=R)return h=u(e.slice(i,a+1)),C(h,this.toBBox),h;g||(g=Math.ceil(Math.log(m)/Math.log(R)),R=Math.ceil(m/Math.pow(R,g-1))),h=u([]),h.leaf=!1,h.height=g;const l=Math.ceil(m/R),_=l*Math.ceil(Math.sqrt(R));c(e,i,a,_,this.compareMinX);for(let I=i;I<=a;I+=_){const T=Math.min(I+_-1,a);c(e,I,T,l,this.compareMinY);for(let w=I;w<=T;w+=l){const p=Math.min(w+l-1,T);h.children.push(this._build(e,w,p,g-1))}}return C(h,this.toBBox),h}_chooseSubtree(e,i,a,g){for(;g.push(i),!(i.leaf||g.length-1===a);){let m=1/0,R=1/0,h;for(let l=0;l<i.children.length;l++){const _=i.children[l],I=M(_),T=s(e,_)-I;T<R?(R=T,m=I<m?I:m,h=_):T===R&&I<m&&(m=I,h=_)}i=h||i.children[0]}return i}_insert(e,i,a){const g=a?e:this.toBBox(e),m=[],R=this._chooseSubtree(g,this.data,i,m);for(R.children.push(e),A(R,g);i>=0&&m[i].children.length>this._maxEntries;)this._split(m,i),i--;this._adjustParentBBoxes(g,m,i)}_split(e,i){const a=e[i],g=a.children.length,m=this._minEntries;this._chooseSplitAxis(a,m,g);const R=this._chooseSplitIndex(a,m,g),h=u(a.children.splice(R,a.children.length-R));h.height=a.height,h.leaf=a.leaf,C(a,this.toBBox),C(h,this.toBBox),i?e[i-1].children.push(h):this._splitRoot(a,h)}_splitRoot(e,i){this.data=u([e,i]),this.data.height=e.height+1,this.data.leaf=!1,C(this.data,this.toBBox)}_chooseSplitIndex(e,i,a){let g,m=1/0,R=1/0;for(let h=i;h<=a-i;h++){const l=d(e,0,h,this.toBBox),_=d(e,h,a,this.toBBox),I=r(l,_),T=M(l)+M(_);I<m?(m=I,g=h,R=T<R?T:R):I===m&&T<R&&(R=T,g=h)}return g||a-i}_chooseSplitAxis(e,i,a){const g=e.leaf?this.compareMinX:O,m=e.leaf?this.compareMinY:x,R=this._allDistMargin(e,i,a,g),h=this._allDistMargin(e,i,a,m);R<h&&e.children.sort(g)}_allDistMargin(e,i,a,g){e.children.sort(g);const m=this.toBBox,R=d(e,0,i,m),h=d(e,a-i,a,m);let l=t(R)+t(h);for(let _=i;_<a-i;_++){const I=e.children[_];A(R,e.leaf?m(I):I),l+=t(R)}for(let _=a-i-1;_>=i;_--){const I=e.children[_];A(h,e.leaf?m(I):I),l+=t(h)}return l}_adjustParentBBoxes(e,i,a){for(let g=a;g>=0;g--)A(i[g],e)}_condense(e){for(let i=e.length-1,a;i>=0;i--)e[i].children.length===0?i>0?(a=e[i-1].children,a.splice(a.indexOf(e[i]),1)):this.clear():C(e[i],this.toBBox)}}function v(n,e,i){if(!i)return e.indexOf(n);for(let a=0;a<e.length;a++)if(i(n,e[a]))return a;return-1}function C(n,e){d(n,0,n.children.length,e,n)}function d(n,e,i,a,g){g||(g=u(null)),g.minX=1/0,g.minY=1/0,g.maxX=-1/0,g.maxY=-1/0;for(let m=e;m<i;m++){const R=n.children[m];A(g,n.leaf?a(R):R)}return g}function A(n,e){return n.minX=Math.min(n.minX,e.minX),n.minY=Math.min(n.minY,e.minY),n.maxX=Math.max(n.maxX,e.maxX),n.maxY=Math.max(n.maxY,e.maxY),n}function O(n,e){return n.minX-e.minX}function x(n,e){return n.minY-e.minY}function M(n){return(n.maxX-n.minX)*(n.maxY-n.minY)}function t(n){return n.maxX-n.minX+(n.maxY-n.minY)}function s(n,e){return(Math.max(e.maxX,n.maxX)-Math.min(e.minX,n.minX))*(Math.max(e.maxY,n.maxY)-Math.min(e.minY,n.minY))}function r(n,e){const i=Math.max(n.minX,e.minX),a=Math.max(n.minY,e.minY),g=Math.min(n.maxX,e.maxX),m=Math.min(n.maxY,e.maxY);return Math.max(0,g-i)*Math.max(0,m-a)}function P(n,e){return n.minX<=e.minX&&n.minY<=e.minY&&e.maxX<=n.maxX&&e.maxY<=n.maxY}function D(n,e){return e.minX<=n.maxX&&e.minY<=n.maxY&&e.maxX>=n.minX&&e.maxY>=n.minY}function u(n){return{children:n,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function c(n,e,i,a,g){const m=[e,i];for(;m.length;){if(i=m.pop(),e=m.pop(),i-e<=a)continue;const R=e+Math.ceil((i-e)/a/2)*a;b(n,R,e,i,g),m.push(e,R,R,i)}}},43938:(gt,q,o)=>{o.d(q,{Ay:()=>t,RA:()=>x,f6:()=>A});var b=o(6141),y=o(6837),B=o(79332),W=o(9438),v=o(74238),C=o(7771);class d extends B.A{constructor(r,P,D,u){super(),this.extent=r,this.pixelRatio_=D,this.resolution=P,this.state=typeof u=="function"?b.A.IDLE:u,this.image_=null,this.loader=typeof u=="function"?u:null}changed(){this.dispatchEvent(y.A.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==b.A.IDLE&&this.loader){this.state=b.A.LOADING,this.changed();const r=this.getResolution(),P=Array.isArray(r)?r[0]:r;(0,v.hq)(()=>this.loader(this.getExtent(),P,this.getPixelRatio())).then(D=>{"image"in D&&(this.image_=D.image),"extent"in D&&(this.extent=D.extent),"resolution"in D&&(this.resolution=D.resolution),"pixelRatio"in D&&(this.pixelRatio_=D.pixelRatio),(D instanceof HTMLImageElement||C.XM&&D instanceof ImageBitmap||D instanceof HTMLCanvasElement||D instanceof HTMLVideoElement)&&(this.image_=D),this.state=b.A.LOADED}).catch(D=>{this.state=b.A.ERROR,console.error(D)}).finally(()=>this.changed())}}setImage(r){this.image_=r}setResolution(r){this.resolution=r}}function A(s,r,P){const D=s;let u=!0,c=!1,n=!1;const e=[(0,W.Jz)(D,y.A.LOAD,function(){n=!0,c||r()})];return D.src&&C.DT?(c=!0,D.decode().then(function(){u&&r()}).catch(function(i){u&&(n?r():P())})):e.push((0,W.Jz)(D,y.A.ERROR,P)),function(){u=!1,e.forEach(W.JH)}}function O(s,r){return new Promise((P,D)=>{function u(){n(),P(s)}function c(){n(),D(new Error("Image load error"))}function n(){s.removeEventListener("load",u),s.removeEventListener("error",c)}s.addEventListener("load",u),s.addEventListener("error",c),r&&(s.src=r)})}function x(s,r){return r&&(s.src=r),s.src&&C.DT?new Promise((P,D)=>s.decode().then(()=>P(s)).catch(u=>s.complete&&s.width?P(s):D(u))):O(s)}function M(s,r){return r&&(s.src=r),s.src&&IMAGE_DECODE&&CREATE_IMAGE_BITMAP?s.decode().then(()=>createImageBitmap(s)).catch(P=>{if(s.complete&&s.width)return s;throw P}):x(s)}const t=d},44181:(gt,q,o)=>{o.d(q,{A:()=>C});var b=o(69796),y=o(60764);class B extends y.A{constructor(A){A=A||{},super(A)}}const W=B;class v extends W{constructor(A){super(A)}createRenderer(){return new b.A(this)}getData(A){return super.getData(A)}}const C=v},45360:(gt,q,o)=>{o.d(q,{A:()=>b});const b={PRELOAD:"preload",USE_INTERIM_TILES_ON_ERROR:"useInterimTilesOnError"}},48629:(gt,q,o)=>{o.d(q,{Bz:()=>m,G_:()=>n,Lc:()=>g,cA:()=>i,gU:()=>l,o3:()=>h,q:()=>R,rd:()=>a,sN:()=>_,ue:()=>u});var b=o(52653),y=o(62620),B=o(35598),W=o(44181),v=o(92780),C=o(82986),d=o(98020),A=o(63425),O=o(92745),x=o(2863),M=o(54825),t=o(57444),s=o(88011),r=o(28807),P=o(16310),D=o(53497);function u(I,T,w,p){const E={};return p&&Object.keys(p).length?(E.color=(0,M.K)(I,p.color??D.T5.color,w),E.size=(0,s.hX)(I,p.size??D.T5.size),E.rotation=(0,t.H)(I,p.rotation??D.T5.rotation),p.text&&(p.text.field||p.text.fixed)&&(E.text=(0,r.E)(I,p.text))):T.fields&&(T.fields.color&&(E.color=(0,M.K)(I,T.config.color??D.T5.color,w)),T.fields.size&&(E.size=(0,s.hX)(I,T.config.size??D.T5.size)),T.fields.text&&(E.text=(0,r.E)(I,T.config.text)),T.fields.rotation&&(E.rotation=(0,t.H)(I,T.config.rotation??D.T5.rotation))),E}let c;function n(){return c||(c=[],e()),c}async function e(){const I=await(0,P.o)();for(let T of["maps","gazetteer"])I.listFiles(T).subscribe({next:w=>{w.forEach(p=>{if(p.name.endsWith(".geojson")){const E=`public/${T}/${p.name}`;c.push({value:E,label:E})}})}})}const i=I=>(0,x.w)().containsTemplate(JSON.stringify(I)),a=(I,T,w)=>{const p=I.initMapView(T.view);return I.map=new b.A({view:p,pixelRatio:window.devicePixelRatio,layers:[],controls:[],target:w,interactions:(0,y.N)({mouseWheelZoom:!1})})},g=(I,T)=>{I.initControls(T.controls),I.forceUpdate()},m=(I,T,w)=>{I.panelContext&&I.panelContext.onInstanceStateChange&&I.panelContext.onInstanceStateChange({map:I.map,layers:T,selected:w,actions:I.actions})},R=I=>{let T=I.layers.length;for(;T<100;){const w=(0,O.t)("geomap.utils.get-next-layer-name","Layer {{name}}",{name:T++});if(!I.byName.has(w))return w}return(0,O.t)("geomap.utils.get-next-layer-name","Layer {{name}}",{name:Date.now()})};function h(I,T,w,p){const E=I.getPixelFromCoordinate(w),f=I.getPixelFromCoordinate(p),S=Math.abs(E[0]-f[0]),N=Math.abs(E[1]-f[1]);return S>T||N>T}const l=I=>{try{return new URL(I).protocol.includes("http")}catch{return!1}};function _(I){if(I instanceof B.A)return I.getLayers().getArray().some(T=>_(T));if(I instanceof C.A||I instanceof d.A){const T=I.getSource();return T!=null&&T.getFeatures().length>0}if(I instanceof A.A){const T=I.getSource();return T!=null&&T.getFeatures().length>0}return I instanceof v.A||I instanceof W.A?!!I.getSource():!1}},49189:(gt,q,o)=>{o.d(q,{v:()=>y});var b=o(70915);function y(B,W){const v=B.viewState.projection,d=W.getSource().getWrapX()&&v.canWrapX(),A=v.getExtent(),O=B.extent,x=d?(0,b.RG)(A):null,M=d?Math.ceil((O[2]-A[2])/x)+1:1;return[d?Math.floor((O[0]-A[0])/x):0,M,x]}},49700:(gt,q,o)=>{o.d(q,{A:()=>x});var b=o(6141),y=o(90588),B=o(89352),W=o(6837),v=o(4087),C=o(97907),d=o(10940);function A(M,t,s,r){return s!==void 0&&r!==void 0?[s/M,r/t]:s!==void 0?s/M:r!==void 0?r/t:1}class O extends d.A{constructor(t){t=t||{};const s=t.opacity!==void 0?t.opacity:1,r=t.rotation!==void 0?t.rotation:0,P=t.scale!==void 0?t.scale:1,D=t.rotateWithView!==void 0?t.rotateWithView:!1;super({opacity:s,rotation:r,scale:P,displacement:t.displacement!==void 0?t.displacement:[0,0],rotateWithView:D,declutterMode:t.declutterMode}),this.anchor_=t.anchor!==void 0?t.anchor:[.5,.5],this.normalizedAnchor_=null,this.anchorOrigin_=t.anchorOrigin!==void 0?t.anchorOrigin:"top-left",this.anchorXUnits_=t.anchorXUnits!==void 0?t.anchorXUnits:"fraction",this.anchorYUnits_=t.anchorYUnits!==void 0?t.anchorYUnits:"fraction",this.crossOrigin_=t.crossOrigin!==void 0?t.crossOrigin:null;const u=t.img!==void 0?t.img:null;let c=t.src;(0,y.v)(!(c!==void 0&&u),"`image` and `src` cannot be provided at the same time"),(c===void 0||c.length===0)&&u&&(c=u.src||(0,v.v6)(u)),(0,y.v)(c!==void 0&&c.length>0,"A defined and non-empty `src` or `image` must be provided"),(0,y.v)(!((t.width!==void 0||t.height!==void 0)&&t.scale!==void 0),"`width` or `height` cannot be provided together with `scale`");let n;if(t.src!==void 0?n=b.A.IDLE:u!==void 0&&("complete"in u?u.complete?n=u.src?b.A.LOADED:b.A.IDLE:n=b.A.LOADING:n=b.A.LOADED),this.color_=t.color!==void 0?(0,B._j)(t.color):null,this.iconImage_=(0,C.J)(u,c,this.crossOrigin_,n,this.color_),this.offset_=t.offset!==void 0?t.offset:[0,0],this.offsetOrigin_=t.offsetOrigin!==void 0?t.offsetOrigin:"top-left",this.origin_=null,this.size_=t.size!==void 0?t.size:null,this.initialOptions_,t.width!==void 0||t.height!==void 0){let e,i;if(t.size)[e,i]=t.size;else{const a=this.getImage(1);if(a.width&&a.height)e=a.width,i=a.height;else if(a instanceof HTMLImageElement){this.initialOptions_=t;const g=()=>{if(this.unlistenImageChange(g),!this.initialOptions_)return;const m=this.iconImage_.getSize();this.setScale(A(m[0],m[1],t.width,t.height))};this.listenImageChange(g);return}}e!==void 0&&this.setScale(A(e,i,t.width,t.height))}}clone(){let t,s,r;return this.initialOptions_?(s=this.initialOptions_.width,r=this.initialOptions_.height):(t=this.getScale(),t=Array.isArray(t)?t.slice():t),new O({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:t,width:s,height:r,size:this.size_!==null?this.size_.slice():void 0,src:this.getSrc(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()})}getAnchor(){let t=this.normalizedAnchor_;if(!t){t=this.anchor_;const P=this.getSize();if(this.anchorXUnits_=="fraction"||this.anchorYUnits_=="fraction"){if(!P)return null;t=this.anchor_.slice(),this.anchorXUnits_=="fraction"&&(t[0]*=P[0]),this.anchorYUnits_=="fraction"&&(t[1]*=P[1])}if(this.anchorOrigin_!="top-left"){if(!P)return null;t===this.anchor_&&(t=this.anchor_.slice()),(this.anchorOrigin_=="top-right"||this.anchorOrigin_=="bottom-right")&&(t[0]=-t[0]+P[0]),(this.anchorOrigin_=="bottom-left"||this.anchorOrigin_=="bottom-right")&&(t[1]=-t[1]+P[1])}this.normalizedAnchor_=t}const s=this.getDisplacement(),r=this.getScaleArray();return[t[0]-s[0]/r[0],t[1]+s[1]/r[1]]}setAnchor(t){this.anchor_=t,this.normalizedAnchor_=null}getColor(){return this.color_}getImage(t){return this.iconImage_.getImage(t)}getPixelRatio(t){return this.iconImage_.getPixelRatio(t)}getImageSize(){return this.iconImage_.getSize()}getImageState(){return this.iconImage_.getImageState()}getHitDetectionImage(){return this.iconImage_.getHitDetectionImage()}getOrigin(){if(this.origin_)return this.origin_;let t=this.offset_;if(this.offsetOrigin_!="top-left"){const s=this.getSize(),r=this.iconImage_.getSize();if(!s||!r)return null;t=t.slice(),(this.offsetOrigin_=="top-right"||this.offsetOrigin_=="bottom-right")&&(t[0]=r[0]-s[0]-t[0]),(this.offsetOrigin_=="bottom-left"||this.offsetOrigin_=="bottom-right")&&(t[1]=r[1]-s[1]-t[1])}return this.origin_=t,this.origin_}getSrc(){return this.iconImage_.getSrc()}getSize(){return this.size_?this.size_:this.iconImage_.getSize()}getWidth(){const t=this.getScaleArray();if(this.size_)return this.size_[0]*t[0];if(this.iconImage_.getImageState()==b.A.LOADED)return this.iconImage_.getSize()[0]*t[0]}getHeight(){const t=this.getScaleArray();if(this.size_)return this.size_[1]*t[1];if(this.iconImage_.getImageState()==b.A.LOADED)return this.iconImage_.getSize()[1]*t[1]}setScale(t){delete this.initialOptions_,super.setScale(t)}listenImageChange(t){this.iconImage_.addEventListener(W.A.CHANGE,t)}load(){this.iconImage_.load()}unlistenImageChange(t){this.iconImage_.removeEventListener(W.A.CHANGE,t)}ready(){return this.iconImage_.ready()}}const x=O},49825:(gt,q,o)=>{o.d(q,{DG:()=>i,Fq:()=>x,SR:()=>a,T8:()=>C,Ye:()=>it,ZD:()=>m,_D:()=>e,cT:()=>A,go:()=>D,mE:()=>O,qA:()=>M,qg:()=>g,wl:()=>d});var b=o(66514),y=o(89352),B=o(6782);let W=0;const v=0,C=1<<W++,d=1<<W++,A=1<<W++,O=1<<W++,x=1<<W++,M=1<<W++,t=Math.pow(2,W)-1,s={[C]:"boolean",[d]:"number",[A]:"string",[O]:"color",[x]:"number[]",[M]:"size"},r=Object.keys(s).map(Number).sort(b.V_);function P(k){return k in s}function D(k){const Q=[];for(const nt of r)u(k,nt)&&Q.push(s[nt]);return Q.length===0?"untyped":Q.length<3?Q.join(" or "):Q.slice(0,-1).join(", ")+", or "+Q[Q.length-1]}function u(k,Q){return(k&Q)===Q}function c(k,Q){return!!(k&Q)}function n(k,Q){return k===Q}class e{constructor(Q,nt){if(!P(Q))throw new Error(`literal expressions must have a specific type, got ${D(Q)}`);this.type=Q,this.value=nt}}class i{constructor(Q,nt,...tt){this.type=Q,this.operator=nt,this.args=tt}}function a(){return{variables:new Set,properties:new Set,featureId:!1,geometryType:!1,mapState:!1}}function g(k,Q,nt){switch(typeof k){case"boolean":{if(n(Q,A))return new e(A,k?"true":"false");if(!u(Q,C))throw new Error(`got a boolean, but expected ${D(Q)}`);return new e(C,k)}case"number":{if(n(Q,M))return new e(M,(0,B.xq)(k));if(n(Q,C))return new e(C,!!k);if(n(Q,A))return new e(A,k.toString());if(!u(Q,d))throw new Error(`got a number, but expected ${D(Q)}`);return new e(d,k)}case"string":{if(n(Q,O))return new e(O,(0,y.sH)(k));if(n(Q,C))return new e(C,!!k);if(!u(Q,A))throw new Error(`got a string, but expected ${D(Q)}`);return new e(A,k)}default:}if(!Array.isArray(k))throw new Error("expression must be an array or a primitive value");if(k.length===0)throw new Error("empty expression");if(typeof k[0]=="string")return j(k,Q,nt);for(const tt of k)if(typeof tt!="number")throw new Error("expected an array of numbers");if(n(Q,M)){if(k.length!==2)throw new Error(`expected an array of two values for a size, got ${k.length}`);return new e(M,k)}if(n(Q,O)){if(k.length===3)return new e(O,[...k,1]);if(k.length===4)return new e(O,k);throw new Error(`expected an array of 3 or 4 values for a color, got ${k.length}`)}if(!u(Q,x))throw new Error(`got an array of numbers, but expected ${D(Q)}`);return new e(x,k)}const m={Get:"get",Var:"var",Concat:"concat",GeometryType:"geometry-type",LineMetric:"line-metric",Any:"any",All:"all",Not:"!",Resolution:"resolution",Zoom:"zoom",Time:"time",Equal:"==",NotEqual:"!=",GreaterThan:">",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",Coalesce:"coalesce",Case:"case",In:"in",Number:"number",String:"string",Array:"array",Color:"color",Id:"id",Band:"band",Palette:"palette",ToString:"to-string",Has:"has"},R={[m.Get]:L(p(1,1/0),h),[m.Var]:L(p(1,1),l),[m.Has]:L(p(1,1/0),h),[m.Id]:L(_,w),[m.Concat]:L(p(2,1/0),f(A)),[m.GeometryType]:L(I,w),[m.LineMetric]:L(w),[m.Resolution]:L(T,w),[m.Zoom]:L(T,w),[m.Time]:L(T,w),[m.Any]:L(p(2,1/0),f(C)),[m.All]:L(p(2,1/0),f(C)),[m.Not]:L(p(1,1),f(C)),[m.Equal]:L(p(2,2),f(t)),[m.NotEqual]:L(p(2,2),f(t)),[m.GreaterThan]:L(p(2,2),f(d)),[m.GreaterThanOrEqualTo]:L(p(2,2),f(d)),[m.LessThan]:L(p(2,2),f(d)),[m.LessThanOrEqualTo]:L(p(2,2),f(d)),[m.Multiply]:L(p(2,1/0),E),[m.Coalesce]:L(p(2,1/0),E),[m.Divide]:L(p(2,2),f(d)),[m.Add]:L(p(2,1/0),f(d)),[m.Subtract]:L(p(2,2),f(d)),[m.Clamp]:L(p(3,3),f(d)),[m.Mod]:L(p(2,2),f(d)),[m.Pow]:L(p(2,2),f(d)),[m.Abs]:L(p(1,1),f(d)),[m.Floor]:L(p(1,1),f(d)),[m.Ceil]:L(p(1,1),f(d)),[m.Round]:L(p(1,1),f(d)),[m.Sin]:L(p(1,1),f(d)),[m.Cos]:L(p(1,1),f(d)),[m.Atan]:L(p(1,2),f(d)),[m.Sqrt]:L(p(1,1),f(d)),[m.Match]:L(p(4,1/0),N,K),[m.Between]:L(p(3,3),f(d)),[m.Interpolate]:L(p(6,1/0),N,H),[m.Case]:L(p(3,1/0),S,Y),[m.In]:L(p(2,2),st),[m.Number]:L(p(1,1/0),f(t)),[m.String]:L(p(1,1/0),f(t)),[m.Array]:L(p(1,1/0),f(d)),[m.Color]:L(p(1,4),f(d)),[m.Band]:L(p(1,3),f(d)),[m.Palette]:L(p(2,2),X),[m.ToString]:L(p(1,1),f(C|d|A|O))};function h(k,Q,nt){const tt=k.length-1,at=new Array(tt);for(let ht=0;ht<tt;++ht){const ft=k[ht+1];switch(typeof ft){case"number":{at[ht]=new e(d,ft);break}case"string":{at[ht]=new e(A,ft);break}default:throw new Error(`expected a string key or numeric array index for a get operation, got ${ft}`)}ht===0&&nt.properties.add(String(ft))}return at}function l(k,Q,nt){const tt=k[1];if(typeof tt!="string")throw new Error("expected a string argument for var operation");return nt.variables.add(tt),[new e(A,tt)]}function _(k,Q,nt){nt.featureId=!0}function I(k,Q,nt){nt.geometryType=!0}function T(k,Q,nt){nt.mapState=!0}function w(k,Q,nt){const tt=k[0];if(k.length!==1)throw new Error(`expected no arguments for ${tt} operation`);return[]}function p(k,Q){return function(nt,tt,at){const ht=nt[0],ft=nt.length-1;if(k===Q){if(ft!==k){const vt=k===1?"":"s";throw new Error(`expected ${k} argument${vt} for ${ht}, got ${ft}`)}}else if(ft<k||ft>Q){const vt=Q===1/0?`${k} or more`:`${k} to ${Q}`;throw new Error(`expected ${vt} arguments for ${ht}, got ${ft}`)}}}function E(k,Q,nt){const tt=k.length-1,at=new Array(tt);for(let ht=0;ht<tt;++ht){const ft=g(k[ht+1],Q,nt);at[ht]=ft}return at}function f(k){return function(Q,nt,tt){const at=Q.length-1,ht=new Array(at);for(let ft=0;ft<at;++ft){const vt=g(Q[ft+1],k,tt);ht[ft]=vt}return ht}}function S(k,Q,nt){const tt=k[0],at=k.length-1;if(at%2===0)throw new Error(`expected an odd number of arguments for ${tt}, got ${at} instead`)}function N(k,Q,nt){const tt=k[0],at=k.length-1;if(at%2===1)throw new Error(`expected an even number of arguments for operation ${tt}, got ${at} instead`)}function K(k,Q,nt){const tt=k.length-1,at=A|d|C,ht=g(k[1],at,nt),ft=g(k[k.length-1],Q,nt),vt=new Array(tt-2);for(let Tt=0;Tt<tt-2;Tt+=2){try{const z=g(k[Tt+2],ht.type,nt);vt[Tt]=z}catch(z){throw new Error(`failed to parse argument ${Tt+1} of match expression: ${z.message}`)}try{const z=g(k[Tt+3],ft.type,nt);vt[Tt+1]=z}catch(z){throw new Error(`failed to parse argument ${Tt+2} of match expression: ${z.message}`)}}return[ht,...vt,ft]}function H(k,Q,nt){const tt=k[1];let at;switch(tt[0]){case"linear":at=1;break;case"exponential":const Tt=tt[1];if(typeof Tt!="number"||Tt<=0)throw new Error(`expected a number base for exponential interpolation, got ${JSON.stringify(Tt)} instead`);at=Tt;break;default:throw new Error(`invalid interpolation type: ${JSON.stringify(tt)}`)}const ht=new e(d,at);let ft;try{ft=g(k[2],d,nt)}catch(Tt){throw new Error(`failed to parse argument 1 in interpolate expression: ${Tt.message}`)}const vt=new Array(k.length-3);for(let Tt=0;Tt<vt.length;Tt+=2){try{const z=g(k[Tt+3],d,nt);vt[Tt]=z}catch(z){throw new Error(`failed to parse argument ${Tt+2} for interpolate expression: ${z.message}`)}try{const z=g(k[Tt+4],Q,nt);vt[Tt+1]=z}catch(z){throw new Error(`failed to parse argument ${Tt+3} for interpolate expression: ${z.message}`)}}return[ht,ft,...vt]}function Y(k,Q,nt){const tt=g(k[k.length-1],Q,nt),at=new Array(k.length-1);for(let ht=0;ht<at.length-1;ht+=2){try{const ft=g(k[ht+1],C,nt);at[ht]=ft}catch(ft){throw new Error(`failed to parse argument ${ht} of case expression: ${ft.message}`)}try{const ft=g(k[ht+2],tt.type,nt);at[ht+1]=ft}catch(ft){throw new Error(`failed to parse argument ${ht+1} of case expression: ${ft.message}`)}}return at[at.length-1]=tt,at}function st(k,Q,nt){let tt=k[2];if(!Array.isArray(tt))throw new Error('the second argument for the "in" operator must be an array');let at;if(typeof tt[0]=="string"){if(tt[0]!=="literal")throw new Error('for the "in" operator, a string array should be wrapped in a "literal" operator to disambiguate from expressions');if(!Array.isArray(tt[1]))throw new Error('failed to parse "in" expression: the literal operator must be followed by an array');tt=tt[1],at=A}else at=d;const ht=new Array(tt.length);for(let vt=0;vt<ht.length;vt++)try{const Tt=g(tt[vt],at,nt);ht[vt]=Tt}catch(Tt){throw new Error(`failed to parse haystack item ${vt} for "in" expression: ${Tt.message}`)}return[g(k[1],at,nt),...ht]}function X(k,Q,nt){let tt;try{tt=g(k[1],d,nt)}catch(ft){throw new Error(`failed to parse first argument in palette expression: ${ft.message}`)}const at=k[2];if(!Array.isArray(at))throw new Error("the second argument of palette must be an array");const ht=new Array(at.length);for(let ft=0;ft<ht.length;ft++){let vt;try{vt=g(at[ft],O,nt)}catch(Tt){throw new Error(`failed to parse color at index ${ft} in palette expression: ${Tt.message}`)}if(!(vt instanceof e))throw new Error(`the palette color at index ${ft} must be a literal value`);ht[ft]=vt}return[tt,...ht]}function L(...k){return function(Q,nt,tt){const at=Q[0];let ht;for(let ft=0;ft<k.length;ft++){const vt=k[ft](Q,nt,tt);if(ft==k.length-1){if(!vt)throw new Error("expected last argument validator to return the parsed args");ht=vt}}return new i(nt,at,...ht)}}function j(k,Q,nt){const tt=k[0],at=R[tt];if(!at)throw new Error(`unknown operator: ${tt}`);return at(k,Q,nt)}function it(k){if(!k)return"";const Q=k.getType();switch(Q){case"Point":case"LineString":case"Polygon":return Q;case"MultiPoint":case"MultiLineString":case"MultiPolygon":return Q.substring(5);case"Circle":return"Polygon";case"GeometryCollection":return it(k.getGeometries()[0]);default:return""}}},49988:(gt,q,o)=>{o.d(q,{Ay:()=>x,bL:()=>W,xo:()=>B});var b=o(8143),y=o(11078);function B(M){return M instanceof Image||M instanceof HTMLCanvasElement||M instanceof HTMLVideoElement||M instanceof ImageBitmap?M:null}function W(M){return M instanceof Uint8Array||M instanceof Uint8ClampedArray||M instanceof Float32Array||M instanceof DataView?M:null}const v=new Error("disposed");let C=null;function d(M){C||(C=createCanvasContext2D(M.width,M.height,void 0,{willReadFrequently:!0}));const t=C.canvas,s=M.width;t.width!==s&&(t.width=s);const r=M.height;return t.height!==r&&(t.height=r),C.clearRect(0,0,s,r),C.drawImage(M,0,0),C.getImageData(0,0,s,r).data}const A=[256,256];class O extends b.A{constructor(t){const s=y.A.IDLE;super(t.tileCoord,s,{transition:t.transition,interpolate:t.interpolate}),this.loader_=t.loader,this.data_=null,this.error_=null,this.size_=t.size||null,this.controller_=t.controller||null}getSize(){if(this.size_)return this.size_;const t=B(this.data_);return t?[t.width,t.height]:A}getData(){return this.data_}getError(){return this.error_}load(){if(this.state!==y.A.IDLE&&this.state!==y.A.ERROR)return;this.state=y.A.LOADING,this.changed();const t=this;this.loader_().then(function(s){t.data_=s,t.state=y.A.LOADED,t.changed()}).catch(function(s){t.error_=s,t.state=y.A.ERROR,t.changed()})}disposeInternal(){this.controller_&&(this.controller_.abort(v),this.controller_=null),super.disposeInternal()}}const x=O},50071:(gt,q,o)=>{o.d(q,{A:()=>d});var b=o(32135),y=o(34120),B=o(1685);const W={LENGTH:"length"};class v extends B.Ay{constructor(O,x,M){super(O),this.element=x,this.index=M}}class C extends y.A{constructor(O,x){if(super(),this.on,this.once,this.un,x=x||{},this.unique_=!!x.unique,this.array_=O||[],this.unique_)for(let M=0,t=this.array_.length;M<t;++M)this.assertUnique_(this.array_[M],M);this.updateLength_()}clear(){for(;this.getLength()>0;)this.pop()}extend(O){for(let x=0,M=O.length;x<M;++x)this.push(O[x]);return this}forEach(O){const x=this.array_;for(let M=0,t=x.length;M<t;++M)O(x[M],M,x)}getArray(){return this.array_}item(O){return this.array_[O]}getLength(){return this.get(W.LENGTH)}insertAt(O,x){if(O<0||O>this.getLength())throw new Error("Index out of bounds: "+O);this.unique_&&this.assertUnique_(x),this.array_.splice(O,0,x),this.updateLength_(),this.dispatchEvent(new v(b.A.ADD,x,O))}pop(){return this.removeAt(this.getLength()-1)}push(O){this.unique_&&this.assertUnique_(O);const x=this.getLength();return this.insertAt(x,O),this.getLength()}remove(O){const x=this.array_;for(let M=0,t=x.length;M<t;++M)if(x[M]===O)return this.removeAt(M)}removeAt(O){if(O<0||O>=this.getLength())return;const x=this.array_[O];return this.array_.splice(O,1),this.updateLength_(),this.dispatchEvent(new v(b.A.REMOVE,x,O)),x}setAt(O,x){const M=this.getLength();if(O>=M){this.insertAt(O,x);return}if(O<0)throw new Error("Index out of bounds: "+O);this.unique_&&this.assertUnique_(x,O);const t=this.array_[O];this.array_[O]=x,this.dispatchEvent(new v(b.A.REMOVE,t,O)),this.dispatchEvent(new v(b.A.ADD,x,O))}updateLength_(){this.set(W.LENGTH,this.array_.length)}assertUnique_(O,x){for(let M=0,t=this.array_.length;M<t;++M)if(this.array_[M]===O&&M!==x)throw new Error("Duplicate item added to a unique collection")}}const d=C},52653:(gt,q,o)=>{o.d(q,{A:()=>ut});var b=o(50071),y=o(32135),B=o(10277),W=o(73445),v=o(6837),C=o(79332),d=o(9438),A=o(7771);const O={POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTERUP:"pointerup",POINTEROVER:"pointerover",POINTEROUT:"pointerout",POINTERENTER:"pointerenter",POINTERLEAVE:"pointerleave",POINTERCANCEL:"pointercancel"};class x extends C.A{constructor(F,$){super(F),this.map_=F,this.clickTimeoutId_,this.emulateClicks_=!1,this.dragging_=!1,this.dragListenerKeys_=[],this.moveTolerance_=$===void 0?1:$,this.down_=null;const et=this.map_.getViewport();this.activePointers_=[],this.trackedTouches_={},this.element_=et,this.pointerdownListenerKey_=(0,d.KT)(et,O.POINTERDOWN,this.handlePointerDown_,this),this.originalPointerMoveEvent_,this.relayedListenerKey_=(0,d.KT)(et,O.POINTERMOVE,this.relayMoveEvent_,this),this.boundHandleTouchMove_=this.handleTouchMove_.bind(this),this.element_.addEventListener(v.A.TOUCHMOVE,this.boundHandleTouchMove_,A.FT?{passive:!1}:!1)}emulateClick_(F){let $=new B.A(W.A.CLICK,this.map_,F);this.dispatchEvent($),this.clickTimeoutId_!==void 0?(clearTimeout(this.clickTimeoutId_),this.clickTimeoutId_=void 0,$=new B.A(W.A.DBLCLICK,this.map_,F),this.dispatchEvent($)):this.clickTimeoutId_=setTimeout(()=>{this.clickTimeoutId_=void 0;const et=new B.A(W.A.SINGLECLICK,this.map_,F);this.dispatchEvent(et)},250)}updateActivePointers_(F){const $=F,et=$.pointerId;if($.type==W.A.POINTERUP||$.type==W.A.POINTERCANCEL){delete this.trackedTouches_[et];for(const rt in this.trackedTouches_)if(this.trackedTouches_[rt].target!==$.target){delete this.trackedTouches_[rt];break}}else($.type==W.A.POINTERDOWN||$.type==W.A.POINTERMOVE)&&(this.trackedTouches_[et]=$);this.activePointers_=Object.values(this.trackedTouches_)}handlePointerUp_(F){this.updateActivePointers_(F);const $=new B.A(W.A.POINTERUP,this.map_,F,void 0,void 0,this.activePointers_);this.dispatchEvent($),this.emulateClicks_&&!$.defaultPrevented&&!this.dragging_&&this.isMouseActionButton_(F)&&this.emulateClick_(this.down_),this.activePointers_.length===0&&(this.dragListenerKeys_.forEach(d.JH),this.dragListenerKeys_.length=0,this.dragging_=!1,this.down_=null)}isMouseActionButton_(F){return F.button===0}handlePointerDown_(F){this.emulateClicks_=this.activePointers_.length===0,this.updateActivePointers_(F);const $=new B.A(W.A.POINTERDOWN,this.map_,F,void 0,void 0,this.activePointers_);if(this.dispatchEvent($),this.down_=new PointerEvent(F.type,F),Object.defineProperty(this.down_,"target",{writable:!1,value:F.target}),this.dragListenerKeys_.length===0){const et=this.map_.getOwnerDocument();this.dragListenerKeys_.push((0,d.KT)(et,W.A.POINTERMOVE,this.handlePointerMove_,this),(0,d.KT)(et,W.A.POINTERUP,this.handlePointerUp_,this),(0,d.KT)(this.element_,W.A.POINTERCANCEL,this.handlePointerUp_,this)),this.element_.getRootNode&&this.element_.getRootNode()!==et&&this.dragListenerKeys_.push((0,d.KT)(this.element_.getRootNode(),W.A.POINTERUP,this.handlePointerUp_,this))}}handlePointerMove_(F){if(this.isMoving_(F)){this.updateActivePointers_(F),this.dragging_=!0;const $=new B.A(W.A.POINTERDRAG,this.map_,F,this.dragging_,void 0,this.activePointers_);this.dispatchEvent($)}}relayMoveEvent_(F){this.originalPointerMoveEvent_=F;const $=!!(this.down_&&this.isMoving_(F));this.dispatchEvent(new B.A(W.A.POINTERMOVE,this.map_,F,$))}handleTouchMove_(F){const $=this.originalPointerMoveEvent_;(!$||$.defaultPrevented)&&(typeof F.cancelable!="boolean"||F.cancelable===!0)&&F.preventDefault()}isMoving_(F){return this.dragging_||Math.abs(F.clientX-this.down_.clientX)>this.moveTolerance_||Math.abs(F.clientY-this.down_.clientY)>this.moveTolerance_}disposeInternal(){this.relayedListenerKey_&&((0,d.JH)(this.relayedListenerKey_),this.relayedListenerKey_=null),this.element_.removeEventListener(v.A.TOUCHMOVE,this.boundHandleTouchMove_),this.pointerdownListenerKey_&&((0,d.JH)(this.pointerdownListenerKey_),this.pointerdownListenerKey_=null),this.dragListenerKeys_.forEach(d.JH),this.dragListenerKeys_.length=0,this.element_=null,super.disposeInternal()}}const M=x;var t=o(95801),s=o(82585);const r={LAYERGROUP:"layergroup",SIZE:"size",TARGET:"target",VIEW:"view"};var P=o(34120),D=o(28450),u=o(36813),c=o(91765),n=o(62703),e=o(66514),i=o(90588),a=o(54422),g=o(57456),m=o(25176),R=o(93474),h=o(10972);class l extends h.A{constructor(F){F=F||{},super({element:document.createElement("div"),render:F.render,target:F.target});const $=F.className!==void 0?F.className:"ol-rotate",et=F.label!==void 0?F.label:"\u21E7",rt=F.compassClassName!==void 0?F.compassClassName:"ol-compass";this.label_=null,typeof et=="string"?(this.label_=document.createElement("span"),this.label_.className=rt,this.label_.textContent=et):(this.label_=et,this.label_.classList.add(rt));const ct=F.tipLabel?F.tipLabel:"Reset rotation",Et=document.createElement("button");Et.className=$+"-reset",Et.setAttribute("type","button"),Et.title=ct,Et.appendChild(this.label_),Et.addEventListener(v.A.CLICK,this.handleClick_.bind(this),!1);const Rt=$+" "+m.XI+" "+m.$N,_t=this.element;_t.className=Rt,_t.appendChild(Et),this.callResetNorth_=F.resetNorth?F.resetNorth:void 0,this.duration_=F.duration!==void 0?F.duration:250,this.autoHide_=F.autoHide!==void 0?F.autoHide:!0,this.rotation_=void 0,this.autoHide_&&this.element.classList.add(m.Si)}handleClick_(F){F.preventDefault(),this.callResetNorth_!==void 0?this.callResetNorth_():this.resetNorth_()}resetNorth_(){const $=this.getMap().getView();if(!$)return;const et=$.getRotation();et!==void 0&&(this.duration_>0&&et%(2*Math.PI)!==0?$.animate({rotation:0,duration:this.duration_,easing:R.vT}):$.setRotation(0))}render(F){const $=F.frameState;if(!$)return;const et=$.viewState.rotation;if(et!=this.rotation_){const rt="rotate("+et+"rad)";if(this.autoHide_){const ct=this.element.classList.contains(m.Si);!ct&&et===0?this.element.classList.add(m.Si):ct&&et!==0&&this.element.classList.remove(m.Si)}this.label_.style.transform=rt}this.rotation_=et}}const _=l;var I=o(69186);function T(ot){ot=ot||{};const F=new b.A;return(ot.zoom!==void 0?ot.zoom:!0)&&F.push(new I.A(ot.zoomOptions)),(ot.rotate!==void 0?ot.rotate:!0)&&F.push(new _(ot.rotateOptions)),(ot.attribution!==void 0?ot.attribution:!0)&&F.push(new g.A(ot.attributionOptions)),F}var w=o(70915),p=o(74238),E=o(62620),f=o(35598),S=o(60764),N=o(82922),K=o(83984),H=o(68711),Y=o(94720),st=o(87579),X=o(38774),L=o(90025),j=o(6933),it=o(82241),k=o(9703),Q=o(4087);class nt extends L.A{constructor(F){super(),this.map_=F}dispatchRenderEvent(F,$){(0,Q.b0)()}calculateMatrices2D(F){const $=F.viewState,et=F.coordinateToPixelTransform,rt=F.pixelToCoordinateTransform;(0,k.Zz)(et,F.size[0]/2,F.size[1]/2,1/$.resolution,-1/$.resolution,-$.rotation,-$.center[0],-$.center[1]),(0,k.T9)(rt,et)}forEachFeatureAtCoordinate(F,$,et,rt,ct,Et,Rt,_t){let Ot;const wt=$.viewState;function V(dt,At,yt,It){return ct.call(Et,At,dt?yt:null,It)}const U=wt.projection,J=(0,j.Li)(F.slice(),U),lt=[[0,0]];if(U.canWrapX()&&rt){const dt=U.getExtent(),At=(0,w.RG)(dt);lt.push([-At,0],[At,0])}const mt=$.layerStatesArray,xt=mt.length,pt=[],Ct=[];for(let dt=0;dt<lt.length;dt++)for(let At=xt-1;At>=0;--At){const yt=mt[At],It=yt.layer;if(It.hasRenderer()&&(0,S.l)(yt,wt)&&Rt.call(_t,It)){const Dt=It.getRenderer(),St=It.getSource();if(Dt&&St){const Wt=St.getWrapX()?J:F,Kt=V.bind(null,yt.managed);Ct[0]=Wt[0]+lt[dt][0],Ct[1]=Wt[1]+lt[dt][1],Ot=Dt.forEachFeatureAtCoordinate(Ct,$,et,Kt,pt)}if(Ot)return Ot}}if(pt.length===0)return;const Pt=1/pt.length;return pt.forEach((dt,At)=>dt.distanceSq+=At*Pt),pt.sort((dt,At)=>dt.distanceSq-At.distanceSq),pt.some(dt=>Ot=dt.callback(dt.feature,dt.layer,dt.geometry)),Ot}hasFeatureAtCoordinate(F,$,et,rt,ct,Et){return this.forEachFeatureAtCoordinate(F,$,et,rt,p.rT,this,ct,Et)!==void 0}getMap(){return this.map_}renderFrame(F){(0,Q.b0)()}scheduleExpireIconCache(F){it.ue.canExpireCache()&&F.postRenderFunctions.push(tt)}}function tt(ot,F){it.ue.expire()}const at=nt;class ht extends at{constructor(F){super(F),this.fontChangeListenerKey_=(0,d.KT)(X.yY,D.A.PROPERTYCHANGE,F.redrawText,F),this.element_=document.createElement("div");const $=this.element_.style;$.position="absolute",$.width="100%",$.height="100%",$.zIndex="0",this.element_.className=m.XI+" ol-layers";const et=F.getViewport();et.insertBefore(this.element_,et.firstChild||null),this.children_=[],this.renderedVisible_=!0}dispatchRenderEvent(F,$){const et=this.getMap();if(et.hasListener(F)){const rt=new st.A(F,void 0,$);et.dispatchEvent(rt)}}disposeInternal(){(0,d.JH)(this.fontChangeListenerKey_),this.element_.remove(),super.disposeInternal()}renderFrame(F){if(!F){this.renderedVisible_&&(this.element_.style.display="none",this.renderedVisible_=!1);return}this.calculateMatrices2D(F),this.dispatchRenderEvent(K.A.PRECOMPOSE,F);const $=F.layerStatesArray.sort((Rt,_t)=>Rt.zIndex-_t.zIndex);$.some(Rt=>Rt.layer instanceof Y.A&&Rt.layer.getDeclutter())&&(F.declutter={});const rt=F.viewState;this.children_.length=0;const ct=[];let Et=null;for(let Rt=0,_t=$.length;Rt<_t;++Rt){const Ot=$[Rt];F.layerIndex=Rt;const wt=Ot.layer,V=wt.getSourceState();if(!(0,S.l)(Ot,rt)||V!="ready"&&V!="undefined"){wt.unrender();continue}const U=wt.render(F,Et);U&&(U!==Et&&(this.children_.push(U),Et=U),ct.push(Ot))}this.declutter(F,ct),(0,H.WM)(this.element_,this.children_),this.dispatchRenderEvent(K.A.POSTCOMPOSE,F),this.renderedVisible_||(this.element_.style.display="",this.renderedVisible_=!0),this.scheduleExpireIconCache(F)}declutter(F,$){if(F.declutter){for(let et=$.length-1;et>=0;--et){const rt=$[et],ct=rt.layer;ct.getDeclutter()&&ct.renderDeclutter(F,rt)}$.forEach(et=>et.layer.renderDeferred(F))}}}const ft=ht;var vt=o(6782);function Tt(ot){if(ot instanceof S.A){ot.setMapInternal(null);return}ot instanceof f.A&&ot.getLayers().forEach(Tt)}function z(ot,F){if(ot instanceof S.A){ot.setMapInternal(F);return}if(ot instanceof f.A){const $=ot.getLayers().getArray();for(let et=0,rt=$.length;et<rt;++et)z($[et],F)}}class G extends P.A{constructor(F){super(),F=F||{},this.on,this.once,this.un;const $=Z(F);this.renderComplete_=!1,this.loaded_=!0,this.boundHandleBrowserEvent_=this.handleBrowserEvent.bind(this),this.maxTilesLoading_=F.maxTilesLoading!==void 0?F.maxTilesLoading:16,this.pixelRatio_=F.pixelRatio!==void 0?F.pixelRatio:A.cr,this.postRenderTimeoutHandle_,this.animationDelayKey_,this.animationDelay_=this.animationDelay_.bind(this),this.coordinateToPixelTransform_=(0,k.vt)(),this.pixelToCoordinateTransform_=(0,k.vt)(),this.frameIndex_=0,this.frameState_=null,this.previousExtent_=null,this.viewPropertyListenerKey_=null,this.viewChangeListenerKey_=null,this.layerGroupPropertyListenerKeys_=null,this.viewport_=document.createElement("div"),this.viewport_.className="ol-viewport"+("ontouchstart"in window?" ol-touch":""),this.viewport_.style.position="relative",this.viewport_.style.overflow="hidden",this.viewport_.style.width="100%",this.viewport_.style.height="100%",this.overlayContainer_=document.createElement("div"),this.overlayContainer_.style.position="absolute",this.overlayContainer_.style.zIndex="0",this.overlayContainer_.style.width="100%",this.overlayContainer_.style.height="100%",this.overlayContainer_.style.pointerEvents="none",this.overlayContainer_.className="ol-overlaycontainer",this.viewport_.appendChild(this.overlayContainer_),this.overlayContainerStopEvent_=document.createElement("div"),this.overlayContainerStopEvent_.style.position="absolute",this.overlayContainerStopEvent_.style.zIndex="0",this.overlayContainerStopEvent_.style.width="100%",this.overlayContainerStopEvent_.style.height="100%",this.overlayContainerStopEvent_.style.pointerEvents="none",this.overlayContainerStopEvent_.className="ol-overlaycontainer-stopevent",this.viewport_.appendChild(this.overlayContainerStopEvent_),this.mapBrowserEventHandler_=null,this.moveTolerance_=F.moveTolerance,this.keyboardEventTarget_=$.keyboardEventTarget,this.targetChangeHandlerKeys_=null,this.targetElement_=null,this.resizeObserver_=new ResizeObserver(()=>this.updateSize()),this.controls=$.controls||T(),this.interactions=$.interactions||(0,E.N)({onFocusOnly:!0}),this.overlays_=$.overlays,this.overlayIdIndex_={},this.renderer_=null,this.postRenderFunctions_=[],this.tileQueue_=new u.A(this.getTilePriority.bind(this),this.handleTileChange_.bind(this)),this.addChangeListener(r.LAYERGROUP,this.handleLayerGroupChanged_),this.addChangeListener(r.VIEW,this.handleViewChanged_),this.addChangeListener(r.SIZE,this.handleSizeChanged_),this.addChangeListener(r.TARGET,this.handleTargetChanged_),this.setProperties($.values);const et=this;F.view&&!(F.view instanceof c.Ay)&&F.view.then(function(rt){et.setView(new c.Ay(rt))}),this.controls.addEventListener(y.A.ADD,rt=>{rt.element.setMap(this)}),this.controls.addEventListener(y.A.REMOVE,rt=>{rt.element.setMap(null)}),this.interactions.addEventListener(y.A.ADD,rt=>{rt.element.setMap(this)}),this.interactions.addEventListener(y.A.REMOVE,rt=>{rt.element.setMap(null)}),this.overlays_.addEventListener(y.A.ADD,rt=>{this.addOverlayInternal_(rt.element)}),this.overlays_.addEventListener(y.A.REMOVE,rt=>{const ct=rt.element.getId();ct!==void 0&&delete this.overlayIdIndex_[ct.toString()],rt.element.setMap(null)}),this.controls.forEach(rt=>{rt.setMap(this)}),this.interactions.forEach(rt=>{rt.setMap(this)}),this.overlays_.forEach(this.addOverlayInternal_.bind(this))}addControl(F){this.getControls().push(F)}addInteraction(F){this.getInteractions().push(F)}addLayer(F){this.getLayerGroup().getLayers().push(F)}handleLayerAdd_(F){z(F.layer,this)}addOverlay(F){this.getOverlays().push(F)}addOverlayInternal_(F){const $=F.getId();$!==void 0&&(this.overlayIdIndex_[$.toString()]=F),F.setMap(this)}disposeInternal(){this.controls.clear(),this.interactions.clear(),this.overlays_.clear(),this.resizeObserver_.disconnect(),this.setTarget(null),super.disposeInternal()}forEachFeatureAtPixel(F,$,et){if(!this.frameState_||!this.renderer_)return;const rt=this.getCoordinateFromPixelInternal(F);et=et!==void 0?et:{};const ct=et.hitTolerance!==void 0?et.hitTolerance:0,Et=et.layerFilter!==void 0?et.layerFilter:p.rT,Rt=et.checkWrapped!==!1;return this.renderer_.forEachFeatureAtCoordinate(rt,this.frameState_,ct,Rt,$,null,Et,null)}getFeaturesAtPixel(F,$){const et=[];return this.forEachFeatureAtPixel(F,function(rt){et.push(rt)},$),et}getAllLayers(){const F=[];function $(et){et.forEach(function(rt){rt instanceof f.A?$(rt.getLayers()):F.push(rt)})}return $(this.getLayers()),F}hasFeatureAtPixel(F,$){if(!this.frameState_||!this.renderer_)return!1;const et=this.getCoordinateFromPixelInternal(F);$=$!==void 0?$:{};const rt=$.layerFilter!==void 0?$.layerFilter:p.rT,ct=$.hitTolerance!==void 0?$.hitTolerance:0,Et=$.checkWrapped!==!1;return this.renderer_.hasFeatureAtCoordinate(et,this.frameState_,ct,Et,rt,null)}getEventCoordinate(F){return this.getCoordinateFromPixel(this.getEventPixel(F))}getEventCoordinateInternal(F){return this.getCoordinateFromPixelInternal(this.getEventPixel(F))}getEventPixel(F){const et=this.viewport_.getBoundingClientRect(),rt=this.getSize(),ct=et.width/rt[0],Et=et.height/rt[1],Rt="changedTouches"in F?F.changedTouches[0]:F;return[(Rt.clientX-et.left)/ct,(Rt.clientY-et.top)/Et]}getTarget(){return this.get(r.TARGET)}getTargetElement(){return this.targetElement_}getCoordinateFromPixel(F){return(0,N.te)(this.getCoordinateFromPixelInternal(F),this.getView().getProjection())}getCoordinateFromPixelInternal(F){const $=this.frameState_;return $?(0,k.Bb)($.pixelToCoordinateTransform,F.slice()):null}getControls(){return this.controls}getOverlays(){return this.overlays_}getOverlayById(F){const $=this.overlayIdIndex_[F.toString()];return $!==void 0?$:null}getInteractions(){return this.interactions}getLayerGroup(){return this.get(r.LAYERGROUP)}setLayers(F){const $=this.getLayerGroup();if(F instanceof b.A){$.setLayers(F);return}const et=$.getLayers();et.clear(),et.extend(F)}getLayers(){return this.getLayerGroup().getLayers()}getLoadingOrNotReady(){const F=this.getLayerGroup().getLayerStatesArray();for(let $=0,et=F.length;$<et;++$){const rt=F[$];if(!rt.visible)continue;const ct=rt.layer.getRenderer();if(ct&&!ct.ready)return!0;const Et=rt.layer.getSource();if(Et&&Et.loading)return!0}return!1}getPixelFromCoordinate(F){const $=(0,N.Ad)(F,this.getView().getProjection());return this.getPixelFromCoordinateInternal($)}getPixelFromCoordinateInternal(F){const $=this.frameState_;return $?(0,k.Bb)($.coordinateToPixelTransform,F.slice(0,2)):null}getRenderer(){return this.renderer_}getSize(){return this.get(r.SIZE)}getView(){return this.get(r.VIEW)}getViewport(){return this.viewport_}getOverlayContainer(){return this.overlayContainer_}getOverlayContainerStopEvent(){return this.overlayContainerStopEvent_}getOwnerDocument(){const F=this.getTargetElement();return F?F.ownerDocument:document}getTilePriority(F,$,et,rt){return(0,u.z)(this.frameState_,F,$,et,rt)}handleBrowserEvent(F,$){$=$||F.type;const et=new B.A($,this,F);this.handleMapBrowserEvent(et)}handleMapBrowserEvent(F){if(!this.frameState_)return;const $=F.originalEvent,et=$.type;if(et===O.POINTERDOWN||et===v.A.WHEEL||et===v.A.KEYDOWN){const rt=this.getOwnerDocument(),ct=this.viewport_.getRootNode?this.viewport_.getRootNode():rt,Et=$.target,Rt=ct instanceof ShadowRoot?ct.host===Et?ct.host.ownerDocument:ct:ct===rt?rt.documentElement:ct;if(this.overlayContainerStopEvent_.contains(Et)||!Rt.contains(Et))return}if(F.frameState=this.frameState_,this.dispatchEvent(F)!==!1){const rt=this.getInteractions().getArray().slice();for(let ct=rt.length-1;ct>=0;ct--){const Et=rt[ct];if(Et.getMap()!==this||!Et.getActive()||!this.getTargetElement())continue;if(!Et.handleEvent(F)||F.propagationStopped)break}}}handlePostRender(){const F=this.frameState_,$=this.tileQueue_;if(!$.isEmpty()){let rt=this.maxTilesLoading_,ct=rt;if(F){const Et=F.viewHints;if(Et[n.A.ANIMATING]||Et[n.A.INTERACTING]){const Rt=Date.now()-F.time>8;rt=Rt?0:8,ct=Rt?0:2}}$.getTilesLoading()<rt&&($.reprioritize(),$.loadMoreTiles(rt,ct))}F&&this.renderer_&&!F.animate&&(this.renderComplete_?(this.hasListener(K.A.RENDERCOMPLETE)&&this.renderer_.dispatchRenderEvent(K.A.RENDERCOMPLETE,F),this.loaded_===!1&&(this.loaded_=!0,this.dispatchEvent(new t.A(s.A.LOADEND,this,F)))):this.loaded_===!0&&(this.loaded_=!1,this.dispatchEvent(new t.A(s.A.LOADSTART,this,F))));const et=this.postRenderFunctions_;if(F)for(let rt=0,ct=et.length;rt<ct;++rt)et[rt](this,F);et.length=0}handleSizeChanged_(){this.getView()&&!this.getView().getAnimating()&&this.getView().resolveConstraints(0),this.render()}handleTargetChanged_(){if(this.mapBrowserEventHandler_){for(let et=0,rt=this.targetChangeHandlerKeys_.length;et<rt;++et)(0,d.JH)(this.targetChangeHandlerKeys_[et]);this.targetChangeHandlerKeys_=null,this.viewport_.removeEventListener(v.A.CONTEXTMENU,this.boundHandleBrowserEvent_),this.viewport_.removeEventListener(v.A.WHEEL,this.boundHandleBrowserEvent_),this.mapBrowserEventHandler_.dispose(),this.mapBrowserEventHandler_=null,this.viewport_.remove()}if(this.targetElement_){this.resizeObserver_.unobserve(this.targetElement_);const et=this.targetElement_.getRootNode();et instanceof ShadowRoot&&this.resizeObserver_.unobserve(et.host),this.setSize(void 0)}const F=this.getTarget(),$=typeof F=="string"?document.getElementById(F):F;if(this.targetElement_=$,!$)this.renderer_&&(clearTimeout(this.postRenderTimeoutHandle_),this.postRenderTimeoutHandle_=void 0,this.postRenderFunctions_.length=0,this.renderer_.dispose(),this.renderer_=null),this.animationDelayKey_&&(cancelAnimationFrame(this.animationDelayKey_),this.animationDelayKey_=void 0);else{$.appendChild(this.viewport_),this.renderer_||(this.renderer_=new ft(this)),this.mapBrowserEventHandler_=new M(this,this.moveTolerance_);for(const ct in W.A)this.mapBrowserEventHandler_.addEventListener(W.A[ct],this.handleMapBrowserEvent.bind(this));this.viewport_.addEventListener(v.A.CONTEXTMENU,this.boundHandleBrowserEvent_,!1),this.viewport_.addEventListener(v.A.WHEEL,this.boundHandleBrowserEvent_,A.FT?{passive:!1}:!1);let et;if(this.keyboardEventTarget_)et=this.keyboardEventTarget_;else{const ct=$.getRootNode();et=ct instanceof ShadowRoot?ct.host:$}this.targetChangeHandlerKeys_=[(0,d.KT)(et,v.A.KEYDOWN,this.handleBrowserEvent,this),(0,d.KT)(et,v.A.KEYPRESS,this.handleBrowserEvent,this)];const rt=$.getRootNode();rt instanceof ShadowRoot&&this.resizeObserver_.observe(rt.host),this.resizeObserver_.observe($)}this.updateSize()}handleTileChange_(){this.render()}handleViewPropertyChanged_(){this.render()}handleViewChanged_(){this.viewPropertyListenerKey_&&((0,d.JH)(this.viewPropertyListenerKey_),this.viewPropertyListenerKey_=null),this.viewChangeListenerKey_&&((0,d.JH)(this.viewChangeListenerKey_),this.viewChangeListenerKey_=null);const F=this.getView();F&&(this.updateViewportSize_(this.getSize()),this.viewPropertyListenerKey_=(0,d.KT)(F,D.A.PROPERTYCHANGE,this.handleViewPropertyChanged_,this),this.viewChangeListenerKey_=(0,d.KT)(F,v.A.CHANGE,this.handleViewPropertyChanged_,this),F.resolveConstraints(0)),this.render()}handleLayerGroupChanged_(){this.layerGroupPropertyListenerKeys_&&(this.layerGroupPropertyListenerKeys_.forEach(d.JH),this.layerGroupPropertyListenerKeys_=null);const F=this.getLayerGroup();F&&(this.handleLayerAdd_(new f.i("addlayer",F)),this.layerGroupPropertyListenerKeys_=[(0,d.KT)(F,D.A.PROPERTYCHANGE,this.render,this),(0,d.KT)(F,v.A.CHANGE,this.render,this),(0,d.KT)(F,"addlayer",this.handleLayerAdd_,this),(0,d.KT)(F,"removelayer",this.handleLayerRemove_,this)]),this.render()}isRendered(){return!!this.frameState_}animationDelay_(){this.animationDelayKey_=void 0,this.renderFrame_(Date.now())}renderSync(){this.animationDelayKey_&&cancelAnimationFrame(this.animationDelayKey_),this.animationDelay_()}redrawText(){if(!this.frameState_)return;const F=this.frameState_.layerStatesArray;for(let $=0,et=F.length;$<et;++$){const rt=F[$].layer;rt.hasRenderer()&&rt.getRenderer().handleFontsChanged()}}render(){this.renderer_&&this.animationDelayKey_===void 0&&(this.animationDelayKey_=requestAnimationFrame(this.animationDelay_))}removeControl(F){return this.getControls().remove(F)}removeInteraction(F){return this.getInteractions().remove(F)}removeLayer(F){return this.getLayerGroup().getLayers().remove(F)}handleLayerRemove_(F){Tt(F.layer)}removeOverlay(F){return this.getOverlays().remove(F)}renderFrame_(F){const $=this.getSize(),et=this.getView(),rt=this.frameState_;let ct=null;if($!==void 0&&(0,vt.Ie)($)&&et&&et.isDef()){const Et=et.getHints(this.frameState_?this.frameState_.viewHints:void 0),Rt=et.getState();if(ct={animate:!1,coordinateToPixelTransform:this.coordinateToPixelTransform_,declutter:null,extent:(0,w.Bg)(Rt.center,Rt.resolution,Rt.rotation,$),index:this.frameIndex_++,layerIndex:0,layerStatesArray:this.getLayerGroup().getLayerStatesArray(),pixelRatio:this.pixelRatio_,pixelToCoordinateTransform:this.pixelToCoordinateTransform_,postRenderFunctions:[],size:$,tileQueue:this.tileQueue_,time:F,usedTiles:{},viewState:Rt,viewHints:Et,wantedTiles:{},mapId:(0,Q.v6)(this),renderTargets:{}},Rt.nextCenter&&Rt.nextResolution){const _t=isNaN(Rt.nextRotation)?Rt.rotation:Rt.nextRotation;ct.nextExtent=(0,w.Bg)(Rt.nextCenter,Rt.nextResolution,_t,$)}}this.frameState_=ct,this.renderer_.renderFrame(ct),ct&&(ct.animate&&this.render(),Array.prototype.push.apply(this.postRenderFunctions_,ct.postRenderFunctions),rt&&(!this.previousExtent_||!(0,w.Im)(this.previousExtent_)&&!(0,w.aI)(ct.extent,this.previousExtent_))&&(this.dispatchEvent(new t.A(s.A.MOVESTART,this,rt)),this.previousExtent_=(0,w.aZ)(this.previousExtent_)),this.previousExtent_&&!ct.viewHints[n.A.ANIMATING]&&!ct.viewHints[n.A.INTERACTING]&&!(0,w.aI)(ct.extent,this.previousExtent_)&&(this.dispatchEvent(new t.A(s.A.MOVEEND,this,ct)),(0,w.o8)(ct.extent,this.previousExtent_))),this.dispatchEvent(new t.A(s.A.POSTRENDER,this,ct)),this.renderComplete_=(this.hasListener(s.A.LOADSTART)||this.hasListener(s.A.LOADEND)||this.hasListener(K.A.RENDERCOMPLETE))&&!this.tileQueue_.getTilesLoading()&&!this.tileQueue_.getCount()&&!this.getLoadingOrNotReady(),this.postRenderTimeoutHandle_||(this.postRenderTimeoutHandle_=setTimeout(()=>{this.postRenderTimeoutHandle_=void 0,this.handlePostRender()},0))}setLayerGroup(F){const $=this.getLayerGroup();$&&this.handleLayerRemove_(new f.i("removelayer",$)),this.set(r.LAYERGROUP,F)}setSize(F){this.set(r.SIZE,F)}setTarget(F){this.set(r.TARGET,F)}setView(F){if(!F||F instanceof c.Ay){this.set(r.VIEW,F);return}this.set(r.VIEW,new c.Ay);const $=this;F.then(function(et){$.setView(new c.Ay(et))})}updateSize(){const F=this.getTargetElement();let $;if(F){const rt=getComputedStyle(F),ct=F.offsetWidth-parseFloat(rt.borderLeftWidth)-parseFloat(rt.paddingLeft)-parseFloat(rt.paddingRight)-parseFloat(rt.borderRightWidth),Et=F.offsetHeight-parseFloat(rt.borderTopWidth)-parseFloat(rt.paddingTop)-parseFloat(rt.paddingBottom)-parseFloat(rt.borderBottomWidth);!isNaN(ct)&&!isNaN(Et)&&($=[Math.max(0,ct),Math.max(0,Et)],!(0,vt.Ie)($)&&(F.offsetWidth||F.offsetHeight||F.getClientRects().length)&&(0,a.R8)("No map visible because the map container's width or height are 0."))}const et=this.getSize();$&&(!et||!(0,e.aI)($,et))&&(this.setSize($),this.updateViewportSize_($))}updateViewportSize_(F){const $=this.getView();$&&$.setViewportSize(F)}}function Z(ot){let F=null;ot.keyboardEventTarget!==void 0&&(F=typeof ot.keyboardEventTarget=="string"?document.getElementById(ot.keyboardEventTarget):ot.keyboardEventTarget);const $={},et=ot.layers&&typeof ot.layers.getLayers=="function"?ot.layers:new f.A({layers:ot.layers});$[r.LAYERGROUP]=et,$[r.TARGET]=ot.target,$[r.VIEW]=ot.view instanceof c.Ay?ot.view:new c.Ay;let rt;ot.controls!==void 0&&(Array.isArray(ot.controls)?rt=new b.A(ot.controls.slice()):((0,i.v)(typeof ot.controls.getArray=="function","Expected `controls` to be an array or an `ol/Collection.js`"),rt=ot.controls));let ct;ot.interactions!==void 0&&(Array.isArray(ot.interactions)?ct=new b.A(ot.interactions.slice()):((0,i.v)(typeof ot.interactions.getArray=="function","Expected `interactions` to be an array or an `ol/Collection.js`"),ct=ot.interactions));let Et;return ot.overlays!==void 0?Array.isArray(ot.overlays)?Et=new b.A(ot.overlays.slice()):((0,i.v)(typeof ot.overlays.getArray=="function","Expected `overlays` to be an array or an `ol/Collection.js`"),Et=ot.overlays):Et=new b.A,{controls:rt,interactions:ct,keyboardEventTarget:F,overlays:Et,values:$}}const ut=G},52913:(gt,q,o)=>{o.d(q,{A:()=>A});var b=o(70915),y=o(61597),B=o(82922),W=o(9703);const v=10,C=.25;class d{constructor(x,M,t,s,r,P,D){this.sourceProj_=x,this.targetProj_=M;let u={};const c=D?(0,B.HU)(_=>(0,W.Bb)(D,(0,B.pd)(_,this.targetProj_,this.sourceProj_))):(0,B.RG)(this.targetProj_,this.sourceProj_);this.transformInv_=function(_){const I=_[0]+"/"+_[1];return u[I]||(u[I]=c(_)),u[I]},this.maxSourceExtent_=s,this.errorThresholdSquared_=r*r,this.triangles_=[],this.wrapsXInSource_=!1,this.canWrapXInSource_=this.sourceProj_.canWrapX()&&!!s&&!!this.sourceProj_.getExtent()&&(0,b.RG)(s)>=(0,b.RG)(this.sourceProj_.getExtent()),this.sourceWorldWidth_=this.sourceProj_.getExtent()?(0,b.RG)(this.sourceProj_.getExtent()):null,this.targetWorldWidth_=this.targetProj_.getExtent()?(0,b.RG)(this.targetProj_.getExtent()):null;const n=(0,b.Py)(t),e=(0,b.WU)(t),i=(0,b.k_)(t),a=(0,b.R)(t),g=this.transformInv_(n),m=this.transformInv_(e),R=this.transformInv_(i),h=this.transformInv_(a),l=v+(P?Math.max(0,Math.ceil(Math.log2((0,b.UG)(t)/(P*P*256*256)))):0);if(this.addQuad_(n,e,i,a,g,m,R,h,l),this.wrapsXInSource_){let _=1/0;this.triangles_.forEach(function(I,T,w){_=Math.min(_,I.source[0][0],I.source[1][0],I.source[2][0])}),this.triangles_.forEach(I=>{if(Math.max(I.source[0][0],I.source[1][0],I.source[2][0])-_>this.sourceWorldWidth_/2){const T=[[I.source[0][0],I.source[0][1]],[I.source[1][0],I.source[1][1]],[I.source[2][0],I.source[2][1]]];T[0][0]-_>this.sourceWorldWidth_/2&&(T[0][0]-=this.sourceWorldWidth_),T[1][0]-_>this.sourceWorldWidth_/2&&(T[1][0]-=this.sourceWorldWidth_),T[2][0]-_>this.sourceWorldWidth_/2&&(T[2][0]-=this.sourceWorldWidth_);const w=Math.min(T[0][0],T[1][0],T[2][0]);Math.max(T[0][0],T[1][0],T[2][0])-w<this.sourceWorldWidth_/2&&(I.source=T)}})}u={}}addTriangle_(x,M,t,s,r,P){this.triangles_.push({source:[s,r,P],target:[x,M,t]})}addQuad_(x,M,t,s,r,P,D,u,c){const n=(0,b.Tr)([r,P,D,u]),e=this.sourceWorldWidth_?(0,b.RG)(n)/this.sourceWorldWidth_:null,i=this.sourceWorldWidth_,a=this.sourceProj_.canWrapX()&&e>.5&&e<1;let g=!1;if(c>0){if(this.targetProj_.isGlobal()&&this.targetWorldWidth_){const R=(0,b.Tr)([x,M,t,s]);g=(0,b.RG)(R)/this.targetWorldWidth_>C||g}!a&&this.sourceProj_.isGlobal()&&e&&(g=e>C||g)}if(!g&&this.maxSourceExtent_&&isFinite(n[0])&&isFinite(n[1])&&isFinite(n[2])&&isFinite(n[3])&&!(0,b.HY)(n,this.maxSourceExtent_))return;let m=0;if(!g&&(!isFinite(r[0])||!isFinite(r[1])||!isFinite(P[0])||!isFinite(P[1])||!isFinite(D[0])||!isFinite(D[1])||!isFinite(u[0])||!isFinite(u[1]))){if(c>0)g=!0;else if(m=(!isFinite(r[0])||!isFinite(r[1])?8:0)+(!isFinite(P[0])||!isFinite(P[1])?4:0)+(!isFinite(D[0])||!isFinite(D[1])?2:0)+(!isFinite(u[0])||!isFinite(u[1])?1:0),m!=1&&m!=2&&m!=4&&m!=8)return}if(c>0){if(!g){const R=[(x[0]+t[0])/2,(x[1]+t[1])/2],h=this.transformInv_(R);let l;a?l=((0,y.xP)(r[0],i)+(0,y.xP)(D[0],i))/2-(0,y.xP)(h[0],i):l=(r[0]+D[0])/2-h[0];const _=(r[1]+D[1])/2-h[1];g=l*l+_*_>this.errorThresholdSquared_}if(g){if(Math.abs(x[0]-t[0])<=Math.abs(x[1]-t[1])){const R=[(M[0]+t[0])/2,(M[1]+t[1])/2],h=this.transformInv_(R),l=[(s[0]+x[0])/2,(s[1]+x[1])/2],_=this.transformInv_(l);this.addQuad_(x,M,R,l,r,P,h,_,c-1),this.addQuad_(l,R,t,s,_,h,D,u,c-1)}else{const R=[(x[0]+M[0])/2,(x[1]+M[1])/2],h=this.transformInv_(R),l=[(t[0]+s[0])/2,(t[1]+s[1])/2],_=this.transformInv_(l);this.addQuad_(x,R,l,s,r,h,_,u,c-1),this.addQuad_(R,M,t,l,h,P,D,_,c-1)}return}}if(a){if(!this.canWrapXInSource_)return;this.wrapsXInSource_=!0}(m&11)==0&&this.addTriangle_(x,t,s,r,D,u),(m&14)==0&&this.addTriangle_(x,t,M,r,D,P),m&&((m&13)==0&&this.addTriangle_(M,s,x,P,u,r),(m&7)==0&&this.addTriangle_(M,s,t,P,u,D))}calculateSourceExtent(){const x=(0,b.S5)();return this.triangles_.forEach(function(M,t,s){const r=M.source;(0,b.$C)(x,r[0]),(0,b.$C)(x,r[1]),(0,b.$C)(x,r[2])}),x}getTriangles(){return this.triangles_}}const A=d},53049:(gt,q,o)=>{o.d(q,{A:()=>W});var b=o(74848),y=o(22803),B=o(48629);const W=v=>(0,B.gU)(v)?(0,b.jsx)("a",{href:v,target:"_blank",className:(0,y.cx)("external-link"),rel:"noreferrer",children:v}):v},53497:(gt,q,o)=>{o.d(q,{DY:()=>W,G4:()=>d,Sq:()=>O,T5:()=>A,W_:()=>y,_7:()=>B,fX:()=>v,wq:()=>C,yQ:()=>x,yu:()=>M});var b=o(739),y=(t=>(t.Point="point",t.Line="line",t.Polygon="polygon",t.Any="*any*",t))(y||{});const B=5;var W=(t=>(t.Left="left",t.Center="center",t.Right="right",t))(W||{}),v=(t=>(t.Top="top",t.Middle="middle",t.Bottom="bottom",t))(v||{}),C=(t=>(t.Left="left",t.Center="center",t.Right="right",t))(C||{}),d=(t=>(t.Top="top",t.Center="center",t.Bottom="bottom",t))(d||{});const A=Object.freeze({size:{fixed:B,min:2,max:15},color:{fixed:"dark-green"},opacity:.4,symbol:{mode:b.q_.Fixed,fixed:"img/icons/marker/circle.svg"},symbolAlign:{horizontal:"center",vertical:"center"},textConfig:{fontSize:12,textAlign:"center",textBaseline:"middle",offsetX:0,offsetY:0},rotation:{fixed:0,mode:b.WQ.Mod,min:-360,max:360}});var O=(t=>(t.color="fill",t.opacity="fill-opacity",t.lineWidth="stroke-width",t))(O||{}),x=(t=>(t.color="marker-color",t.size="marker-size",t))(x||{}),M=(t=>(t.color="stroke",t.lineWidth="stroke-width",t))(M||{})},57115:(gt,q,o)=>{o.d(q,{L:()=>b,R:()=>y});const b=42,y=256},57456:(gt,q,o)=>{o.d(q,{A:()=>A});var b=o(66514),y=o(25176),B=o(68711),W=o(6837),v=o(74238),C=o(10972);class d extends C.A{constructor(x){x=x||{},super({element:document.createElement("div"),render:x.render,target:x.target}),this.ulElement_=document.createElement("ul"),this.collapsed_=x.collapsed!==void 0?x.collapsed:!0,this.userCollapsed_=this.collapsed_,this.overrideCollapsible_=x.collapsible!==void 0,this.collapsible_=x.collapsible!==void 0?x.collapsible:!0,this.collapsible_||(this.collapsed_=!1),this.attributions_=x.attributions;const M=x.className!==void 0?x.className:"ol-attribution",t=x.tipLabel!==void 0?x.tipLabel:"Attributions",s=x.expandClassName!==void 0?x.expandClassName:M+"-expand",r=x.collapseLabel!==void 0?x.collapseLabel:"\u203A",P=x.collapseClassName!==void 0?x.collapseClassName:M+"-collapse";typeof r=="string"?(this.collapseLabel_=document.createElement("span"),this.collapseLabel_.textContent=r,this.collapseLabel_.className=P):this.collapseLabel_=r;const D=x.label!==void 0?x.label:"i";typeof D=="string"?(this.label_=document.createElement("span"),this.label_.textContent=D,this.label_.className=s):this.label_=D;const u=this.collapsible_&&!this.collapsed_?this.collapseLabel_:this.label_;this.toggleButton_=document.createElement("button"),this.toggleButton_.setAttribute("type","button"),this.toggleButton_.setAttribute("aria-expanded",String(!this.collapsed_)),this.toggleButton_.title=t,this.toggleButton_.appendChild(u),this.toggleButton_.addEventListener(W.A.CLICK,this.handleClick_.bind(this),!1);const c=M+" "+y.XI+" "+y.$N+(this.collapsed_&&this.collapsible_?" "+y.nT:"")+(this.collapsible_?"":" ol-uncollapsible"),n=this.element;n.className=c,n.appendChild(this.toggleButton_),n.appendChild(this.ulElement_),this.renderedAttributions_=[],this.renderedVisible_=!0}collectSourceAttributions_(x){const M=this.getMap().getAllLayers(),t=new Set(M.flatMap(s=>s.getAttributions(x)));if(this.attributions_!==void 0&&(Array.isArray(this.attributions_)?this.attributions_.forEach(s=>t.add(s)):t.add(this.attributions_)),!this.overrideCollapsible_){const s=!M.some(r=>r.getSource()?.getAttributionsCollapsible()===!1);this.setCollapsible(s)}return Array.from(t)}async updateElement_(x){if(!x){this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1);return}const M=await Promise.all(this.collectSourceAttributions_(x).map(s=>(0,v.hq)(()=>s))),t=M.length>0;if(this.renderedVisible_!=t&&(this.element.style.display=t?"":"none",this.renderedVisible_=t),!(0,b.aI)(M,this.renderedAttributions_)){(0,B.gS)(this.ulElement_);for(let s=0,r=M.length;s<r;++s){const P=document.createElement("li");P.innerHTML=M[s],this.ulElement_.appendChild(P)}this.renderedAttributions_=M}}handleClick_(x){x.preventDefault(),this.handleToggle_(),this.userCollapsed_=this.collapsed_}handleToggle_(){this.element.classList.toggle(y.nT),this.collapsed_?(0,B.fo)(this.collapseLabel_,this.label_):(0,B.fo)(this.label_,this.collapseLabel_),this.collapsed_=!this.collapsed_,this.toggleButton_.setAttribute("aria-expanded",String(!this.collapsed_))}getCollapsible(){return this.collapsible_}setCollapsible(x){this.collapsible_!==x&&(this.collapsible_=x,this.element.classList.toggle("ol-uncollapsible"),this.userCollapsed_&&this.handleToggle_())}setCollapsed(x){this.userCollapsed_=x,!(!this.collapsible_||this.collapsed_===x)&&this.handleToggle_()}getCollapsed(){return this.collapsed_}render(x){this.updateElement_(x.frameState)}}const A=d},58620:(gt,q,o)=>{o.d(q,{A:()=>d});var b=o(34120),y=o(90588),B=o(61597),W=o(4087),v=o(75332);class C extends b.A{constructor(O){super(),this.on,this.once,this.un,this.background_=O.background;const x=Object.assign({},O);typeof O.properties=="object"&&(delete x.properties,Object.assign(x,O.properties)),x[v.A.OPACITY]=O.opacity!==void 0?O.opacity:1,(0,y.v)(typeof x[v.A.OPACITY]=="number","Layer opacity must be a number"),x[v.A.VISIBLE]=O.visible!==void 0?O.visible:!0,x[v.A.Z_INDEX]=O.zIndex,x[v.A.MAX_RESOLUTION]=O.maxResolution!==void 0?O.maxResolution:1/0,x[v.A.MIN_RESOLUTION]=O.minResolution!==void 0?O.minResolution:0,x[v.A.MIN_ZOOM]=O.minZoom!==void 0?O.minZoom:-1/0,x[v.A.MAX_ZOOM]=O.maxZoom!==void 0?O.maxZoom:1/0,this.className_=x.className!==void 0?x.className:"ol-layer",delete x.className,this.setProperties(x),this.state_=null}getBackground(){return this.background_}getClassName(){return this.className_}getLayerState(O){const x=this.state_||{layer:this,managed:O===void 0?!0:O},M=this.getZIndex();return x.opacity=(0,B.qE)(Math.round(this.getOpacity()*100)/100,0,1),x.visible=this.getVisible(),x.extent=this.getExtent(),x.zIndex=M===void 0&&!x.managed?1/0:M,x.maxResolution=this.getMaxResolution(),x.minResolution=Math.max(this.getMinResolution(),0),x.minZoom=this.getMinZoom(),x.maxZoom=this.getMaxZoom(),this.state_=x,x}getLayersArray(O){return(0,W.b0)()}getLayerStatesArray(O){return(0,W.b0)()}getExtent(){return this.get(v.A.EXTENT)}getMaxResolution(){return this.get(v.A.MAX_RESOLUTION)}getMinResolution(){return this.get(v.A.MIN_RESOLUTION)}getMinZoom(){return this.get(v.A.MIN_ZOOM)}getMaxZoom(){return this.get(v.A.MAX_ZOOM)}getOpacity(){return this.get(v.A.OPACITY)}getSourceState(){return(0,W.b0)()}getVisible(){return this.get(v.A.VISIBLE)}getZIndex(){return this.get(v.A.Z_INDEX)}setBackground(O){this.background_=O,this.changed()}setExtent(O){this.set(v.A.EXTENT,O)}setMaxResolution(O){this.set(v.A.MAX_RESOLUTION,O)}setMinResolution(O){this.set(v.A.MIN_RESOLUTION,O)}setMaxZoom(O){this.set(v.A.MAX_ZOOM,O)}setMinZoom(O){this.set(v.A.MIN_ZOOM,O)}setOpacity(O){(0,y.v)(typeof O=="number","Layer opacity must be a number"),this.set(v.A.OPACITY,O)}setVisible(O){this.set(v.A.VISIBLE,O)}setZIndex(O){this.set(v.A.Z_INDEX,O)}disposeInternal(){this.state_&&(this.state_.layer=null,this.state_=null),super.disposeInternal()}}const d=C},58704:(gt,q,o)=>{o.d(q,{A4:()=>i,GB:()=>c,Gk:()=>O,IO:()=>C,Js:()=>v,Kg:()=>n,Q7:()=>W,TS:()=>D,Zm:()=>t,at:()=>M,eL:()=>A,fs:()=>m,t5:()=>r,tE:()=>e});var b=o(73445),y=o(74238),B=o(7771);function W(R){const h=arguments;return function(l){let _=!0;for(let I=0,T=h.length;I<T&&(_=_&&h[I](l),!!_);++I);return _}}const v=function(R){const h=R.originalEvent;return h.altKey&&!(h.metaKey||h.ctrlKey)&&!h.shiftKey},C=function(R){const h=R.originalEvent;return h.altKey&&!(h.metaKey||h.ctrlKey)&&h.shiftKey},d=function(R){const h=R.map.getTargetElement(),l=h.getRootNode(),_=R.map.getOwnerDocument().activeElement;return l instanceof ShadowRoot?l.host.contains(_):h.contains(_)},A=function(R){const h=R.map.getTargetElement(),l=h.getRootNode();return(l instanceof ShadowRoot?l.host:h).hasAttribute("tabindex")?d(R):!0},O=y.rT,x=function(R){return R.type==MapBrowserEventType.CLICK},M=function(R){const h=R.originalEvent;return"pointerId"in h&&h.button==0&&!(B.j&&B.ew&&h.ctrlKey)},t=y.W8,s=function(R){return R.type=="pointermove"},r=function(R){return R.type==b.A.SINGLECLICK},P=function(R){return R.type==MapBrowserEventType.DBLCLICK},D=function(R){const h=R.originalEvent;return!h.altKey&&!(h.metaKey||h.ctrlKey)&&!h.shiftKey},u=function(R){const h=R.originalEvent;return!h.altKey&&(MAC?h.metaKey:h.ctrlKey)&&!h.shiftKey},c=function(R){const h=R.originalEvent;return B.ew?h.metaKey:h.ctrlKey},n=function(R){const h=R.originalEvent;return!h.altKey&&!(h.metaKey||h.ctrlKey)&&h.shiftKey},e=function(R){const h=R.originalEvent,l=h.target.tagName;return l!=="INPUT"&&l!=="SELECT"&&l!=="TEXTAREA"&&!h.target.isContentEditable},i=function(R){const h=R.originalEvent;return"pointerId"in h&&h.pointerType=="mouse"},a=function(R){const h=R.originalEvent;return"pointerId"in h&&h.pointerType==="touch"},g=function(R){const h=R.originalEvent;return"pointerId"in h&&h.pointerType==="pen"},m=function(R){const h=R.originalEvent;return"pointerId"in h&&h.isPrimary&&h.button===0}},60764:(gt,q,o)=>{o.d(q,{A:()=>M,l:()=>x});var b=o(91765),y=o(90588),B=o(6837),W=o(9438),v=o(70915),C=o(83984),d=o(58620),A=o(75332);class O extends d.A{constructor(s){const r=Object.assign({},s);delete r.source,super(r),this.on,this.once,this.un,this.mapPrecomposeKey_=null,this.mapRenderKey_=null,this.sourceChangeKey_=null,this.renderer_=null,this.sourceReady_=!1,this.rendered=!1,s.render&&(this.render=s.render),s.map&&this.setMap(s.map),this.addChangeListener(A.A.SOURCE,this.handleSourcePropertyChange_);const P=s.source?s.source:null;this.setSource(P)}getLayersArray(s){return s=s||[],s.push(this),s}getLayerStatesArray(s){return s=s||[],s.push(this.getLayerState()),s}getSource(){return this.get(A.A.SOURCE)||null}getRenderSource(){return this.getSource()}getSourceState(){const s=this.getSource();return s?s.getState():"undefined"}handleSourceChange_(){this.changed(),!(this.sourceReady_||this.getSource().getState()!=="ready")&&(this.sourceReady_=!0,this.dispatchEvent("sourceready"))}handleSourcePropertyChange_(){this.sourceChangeKey_&&((0,W.JH)(this.sourceChangeKey_),this.sourceChangeKey_=null),this.sourceReady_=!1;const s=this.getSource();s&&(this.sourceChangeKey_=(0,W.KT)(s,B.A.CHANGE,this.handleSourceChange_,this),s.getState()==="ready"&&(this.sourceReady_=!0,setTimeout(()=>{this.dispatchEvent("sourceready")},0))),this.changed()}getFeatures(s){return this.renderer_?this.renderer_.getFeatures(s):Promise.resolve([])}getData(s){return!this.renderer_||!this.rendered?null:this.renderer_.getData(s)}isVisible(s){let r;const P=this.getMapInternal();!s&&P&&(s=P.getView()),s instanceof b.Ay?r={viewState:s.getState(),extent:s.calculateExtent()}:r=s,!r.layerStatesArray&&P&&(r.layerStatesArray=P.getLayerGroup().getLayerStatesArray());let D;if(r.layerStatesArray){if(D=r.layerStatesArray.find(c=>c.layer===this),!D)return!1}else D=this.getLayerState();const u=this.getExtent();return x(D,r.viewState)&&(!u||(0,v.HY)(u,r.extent))}getAttributions(s){if(!this.isVisible(s))return[];const r=this.getSource()?.getAttributions();if(!r)return[];const P=s instanceof b.Ay?s.getViewStateAndExtent():s;let D=r(P);return Array.isArray(D)||(D=[D]),D}render(s,r){const P=this.getRenderer();return P.prepareFrame(s)?(this.rendered=!0,P.renderFrame(s,r)):null}unrender(){this.rendered=!1}getDeclutter(){}renderDeclutter(s,r){}renderDeferred(s){const r=this.getRenderer();r&&r.renderDeferred(s)}setMapInternal(s){s||this.unrender(),this.set(A.A.MAP,s)}getMapInternal(){return this.get(A.A.MAP)}setMap(s){this.mapPrecomposeKey_&&((0,W.JH)(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),s||this.changed(),this.mapRenderKey_&&((0,W.JH)(this.mapRenderKey_),this.mapRenderKey_=null),s&&(this.mapPrecomposeKey_=(0,W.KT)(s,C.A.PRECOMPOSE,this.handlePrecompose_,this),this.mapRenderKey_=(0,W.KT)(this,B.A.CHANGE,s.render,s),this.changed())}handlePrecompose_(s){const r=s.frameState.layerStatesArray,P=this.getLayerState(!1);(0,y.v)(!r.some(D=>D.layer===P.layer),"A layer can only be added to the map once. Use either `layer.setMap()` or `map.addLayer()`, not both."),r.push(P)}setSource(s){this.set(A.A.SOURCE,s)}getRenderer(){return this.renderer_||(this.renderer_=this.createRenderer()),this.renderer_}hasRenderer(){return!!this.renderer_}createRenderer(){return null}clearRenderer(){this.renderer_&&(this.renderer_.dispose(),delete this.renderer_)}disposeInternal(){this.clearRenderer(),this.setSource(null),super.disposeInternal()}}function x(t,s){if(!t.visible)return!1;const r=s.resolution;if(r<t.minResolution||r>=t.maxResolution)return!1;const P=s.zoom;return P>t.minZoom&&P<=t.maxZoom}const M=O},62620:(gt,q,o)=>{o.d(q,{N:()=>st});var b=o(50071);class y{constructor(L,j,it){this.decay_=L,this.minVelocity_=j,this.delay_=it,this.points_=[],this.angle_=0,this.initialVelocity_=0}begin(){this.points_.length=0,this.angle_=0,this.initialVelocity_=0}update(L,j){this.points_.push(L,j,Date.now())}end(){if(this.points_.length<6)return!1;const L=Date.now()-this.delay_,j=this.points_.length-3;if(this.points_[j+2]<L)return!1;let it=j-3;for(;it>0&&this.points_[it+2]>L;)it-=3;const k=this.points_[j+2]-this.points_[it+2];if(k<1e3/60)return!1;const Q=this.points_[j]-this.points_[it],nt=this.points_[j+1]-this.points_[it+1];return this.angle_=Math.atan2(nt,Q),this.initialVelocity_=Math.sqrt(Q*Q+nt*nt)/k,this.initialVelocity_>this.minVelocity_}getDistance(){return(this.minVelocity_-this.initialVelocity_)/this.decay_}getAngle(){return this.angle_}}const B=y;var W=o(73445),v=o(6292);class C extends v.Ay{constructor(L){super(),L=L||{},this.delta_=L.delta?L.delta:1,this.duration_=L.duration!==void 0?L.duration:250}handleEvent(L){let j=!1;if(L.type==W.A.DBLCLICK){const it=L.originalEvent,k=L.map,Q=L.coordinate,nt=it.shiftKey?-this.delta_:this.delta_,tt=k.getView();(0,v.D2)(tt,nt,Q,this.duration_),it.preventDefault(),j=!0}return!j}}const d=C;var A=o(6933),O=o(93474),x=o(58704),M=o(74238),t=o(21409);class s extends t.A{constructor(L){super({stopDown:M.W8}),L=L||{},this.kinetic_=L.kinetic,this.lastCentroid=null,this.lastPointersCount_,this.panning_=!1;const j=L.condition?L.condition:(0,x.Q7)(x.TS,x.fs);this.condition_=L.onFocusOnly?(0,x.Q7)(x.eL,j):j,this.noKinetic_=!1}handleDragEvent(L){const j=L.map;this.panning_||(this.panning_=!0,j.getView().beginInteraction());const it=this.targetPointers,k=j.getEventPixel((0,t.v)(it));if(it.length==this.lastPointersCount_){if(this.kinetic_&&this.kinetic_.update(k[0],k[1]),this.lastCentroid){const Q=[this.lastCentroid[0]-k[0],k[1]-this.lastCentroid[1]],tt=L.map.getView();(0,A.hs)(Q,tt.getResolution()),(0,A.e$)(Q,tt.getRotation()),tt.adjustCenterInternal(Q)}}else this.kinetic_&&this.kinetic_.begin();this.lastCentroid=k,this.lastPointersCount_=it.length,L.originalEvent.preventDefault()}handleUpEvent(L){const j=L.map,it=j.getView();if(this.targetPointers.length===0){if(!this.noKinetic_&&this.kinetic_&&this.kinetic_.end()){const k=this.kinetic_.getDistance(),Q=this.kinetic_.getAngle(),nt=it.getCenterInternal(),tt=j.getPixelFromCoordinateInternal(nt),at=j.getCoordinateFromPixelInternal([tt[0]-k*Math.cos(Q),tt[1]-k*Math.sin(Q)]);it.animateInternal({center:it.getConstrainedCenter(at),duration:500,easing:O.vT})}return this.panning_&&(this.panning_=!1,it.endInteraction()),!1}return this.kinetic_&&this.kinetic_.begin(),this.lastCentroid=null,!0}handleDownEvent(L){if(this.targetPointers.length>0&&this.condition_(L)){const it=L.map.getView();return this.lastCentroid=null,it.getAnimating()&&it.cancelAnimations(),this.kinetic_&&this.kinetic_.begin(),this.noKinetic_=this.targetPointers.length>1,!0}return!1}}const r=s;var P=o(24498);class D extends t.A{constructor(L){L=L||{},super({stopDown:M.W8}),this.condition_=L.condition?L.condition:x.IO,this.lastAngle_=void 0,this.duration_=L.duration!==void 0?L.duration:250}handleDragEvent(L){if(!(0,x.A4)(L))return;const j=L.map,it=j.getView();if(it.getConstraints().rotation===P.b8)return;const k=j.getSize(),Q=L.pixel,nt=Math.atan2(k[1]/2-Q[1],Q[0]-k[0]/2);if(this.lastAngle_!==void 0){const tt=nt-this.lastAngle_;it.adjustRotationInternal(-tt)}this.lastAngle_=nt}handleUpEvent(L){return(0,x.A4)(L)?(L.map.getView().endInteraction(this.duration_),!1):!0}handleDownEvent(L){return(0,x.A4)(L)&&(0,x.at)(L)&&this.condition_(L)?(L.map.getView().beginInteraction(),this.lastAngle_=void 0,!0):!1}}const u=D;var c=o(1685),n=o(90025),e=o(71064);class i extends n.A{constructor(L){super(),this.geometry_=null,this.element_=document.createElement("div"),this.element_.style.position="absolute",this.element_.style.pointerEvents="auto",this.element_.className="ol-box "+L,this.map_=null,this.startPixel_=null,this.endPixel_=null}disposeInternal(){this.setMap(null)}render_(){const L=this.startPixel_,j=this.endPixel_,it="px",k=this.element_.style;k.left=Math.min(L[0],j[0])+it,k.top=Math.min(L[1],j[1])+it,k.width=Math.abs(j[0]-L[0])+it,k.height=Math.abs(j[1]-L[1])+it}setMap(L){if(this.map_){this.map_.getOverlayContainer().removeChild(this.element_);const j=this.element_.style;j.left="inherit",j.top="inherit",j.width="inherit",j.height="inherit"}this.map_=L,this.map_&&this.map_.getOverlayContainer().appendChild(this.element_)}setPixels(L,j){this.startPixel_=L,this.endPixel_=j,this.createOrUpdateGeometry(),this.render_()}createOrUpdateGeometry(){if(!this.map_)return;const L=this.startPixel_,j=this.endPixel_,k=[L,[L[0],j[1]],j,[j[0],L[1]]].map(this.map_.getCoordinateFromPixelInternal,this.map_);k[4]=k[0].slice(),this.geometry_?this.geometry_.setCoordinates([k]):this.geometry_=new e.Ay([k])}getGeometry(){return this.geometry_}}const a=i,g={BOXSTART:"boxstart",BOXDRAG:"boxdrag",BOXEND:"boxend",BOXCANCEL:"boxcancel"};class m extends c.Ay{constructor(L,j,it){super(L),this.coordinate=j,this.mapBrowserEvent=it}}class R extends t.A{constructor(L){super(),this.on,this.once,this.un,L=L??{},this.box_=new a(L.className||"ol-dragbox"),this.minArea_=L.minArea??64,L.onBoxEnd&&(this.onBoxEnd=L.onBoxEnd),this.startPixel_=null,this.condition_=L.condition??x.at,this.boxEndCondition_=L.boxEndCondition??this.defaultBoxEndCondition}defaultBoxEndCondition(L,j,it){const k=it[0]-j[0],Q=it[1]-j[1];return k*k+Q*Q>=this.minArea_}getGeometry(){return this.box_.getGeometry()}handleDragEvent(L){this.startPixel_&&(this.box_.setPixels(this.startPixel_,L.pixel),this.dispatchEvent(new m(g.BOXDRAG,L.coordinate,L)))}handleUpEvent(L){if(!this.startPixel_)return!1;const j=this.boxEndCondition_(L,this.startPixel_,L.pixel);return j&&this.onBoxEnd(L),this.dispatchEvent(new m(j?g.BOXEND:g.BOXCANCEL,L.coordinate,L)),this.box_.setMap(null),this.startPixel_=null,!1}handleDownEvent(L){return this.condition_(L)?(this.startPixel_=L.pixel,this.box_.setMap(L.map),this.box_.setPixels(this.startPixel_,this.startPixel_),this.dispatchEvent(new m(g.BOXSTART,L.coordinate,L)),!0):!1}onBoxEnd(L){}setActive(L){L||(this.box_.setMap(null),this.startPixel_&&(this.dispatchEvent(new m(g.BOXCANCEL,this.startPixel_,null)),this.startPixel_=null)),super.setActive(L)}setMap(L){this.getMap()&&(this.box_.setMap(null),this.startPixel_&&(this.dispatchEvent(new m(g.BOXCANCEL,this.startPixel_,null)),this.startPixel_=null)),super.setMap(L)}}const h=R;class l extends h{constructor(L){L=L||{};const j=L.condition?L.condition:x.Kg;super({condition:j,className:L.className||"ol-dragzoom",minArea:L.minArea}),this.duration_=L.duration!==void 0?L.duration:200,this.out_=L.out!==void 0?L.out:!1}onBoxEnd(L){const it=this.getMap().getView();let k=this.getGeometry();if(this.out_){const Q=it.rotatedExtentForGeometry(k),nt=it.getResolutionForExtentInternal(Q),tt=it.getResolution()/nt;k=k.clone(),k.scale(tt*tt)}it.fitInternal(k,{duration:this.duration_,easing:O.vT})}}const _=l;var I=o(6837);const T={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",DOWN:"ArrowDown"};class w extends v.Ay{constructor(L){super(),L=L||{},this.defaultCondition_=function(j){return(0,x.TS)(j)&&(0,x.tE)(j)},this.condition_=L.condition!==void 0?L.condition:this.defaultCondition_,this.duration_=L.duration!==void 0?L.duration:100,this.pixelDelta_=L.pixelDelta!==void 0?L.pixelDelta:128}handleEvent(L){let j=!1;if(L.type==I.A.KEYDOWN){const it=L.originalEvent,k=it.key;if(this.condition_(L)&&(k==T.DOWN||k==T.LEFT||k==T.RIGHT||k==T.UP)){const nt=L.map.getView(),tt=nt.getResolution()*this.pixelDelta_;let at=0,ht=0;k==T.DOWN?ht=-tt:k==T.LEFT?at=-tt:k==T.RIGHT?at=tt:ht=tt;const ft=[at,ht];(0,A.e$)(ft,nt.getRotation()),(0,v.e4)(nt,ft,this.duration_),it.preventDefault(),j=!0}}return!j}}const p=w;class E extends v.Ay{constructor(L){super(),L=L||{},this.condition_=L.condition?L.condition:function(j){return!(0,x.GB)(j)&&(0,x.tE)(j)},this.delta_=L.delta?L.delta:1,this.duration_=L.duration!==void 0?L.duration:100}handleEvent(L){let j=!1;if(L.type==I.A.KEYDOWN||L.type==I.A.KEYPRESS){const it=L.originalEvent,k=it.key;if(this.condition_(L)&&(k==="+"||k==="-")){const Q=L.map,nt=k==="+"?this.delta_:-this.delta_,tt=Q.getView();(0,v.D2)(tt,nt,void 0,this.duration_),it.preventDefault(),j=!0}}return!j}}const f=E;var S=o(88751);class N extends t.A{constructor(L){L=L||{};const j=L;j.stopDown||(j.stopDown=M.W8),super(j),this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.threshold_=L.threshold!==void 0?L.threshold:.3,this.duration_=L.duration!==void 0?L.duration:250}handleDragEvent(L){let j=0;const it=this.targetPointers[0],k=this.targetPointers[1],Q=Math.atan2(k.clientY-it.clientY,k.clientX-it.clientX);if(this.lastAngle_!==void 0){const at=Q-this.lastAngle_;this.rotationDelta_+=at,!this.rotating_&&Math.abs(this.rotationDelta_)>this.threshold_&&(this.rotating_=!0),j=at}this.lastAngle_=Q;const nt=L.map,tt=nt.getView();tt.getConstraints().rotation!==P.b8&&(this.anchor_=nt.getCoordinateFromPixelInternal(nt.getEventPixel((0,t.v)(this.targetPointers))),this.rotating_&&(nt.render(),tt.adjustRotationInternal(j,this.anchor_)))}handleUpEvent(L){return this.targetPointers.length<2?(L.map.getView().endInteraction(this.duration_),!1):!0}handleDownEvent(L){if(this.targetPointers.length>=2){const j=L.map;return this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.handlingDownUpSequence||j.getView().beginInteraction(),!0}return!1}}const K=N;class H extends t.A{constructor(L){L=L||{};const j=L;j.stopDown||(j.stopDown=M.W8),super(j),this.anchor_=null,this.duration_=L.duration!==void 0?L.duration:400,this.lastDistance_=void 0,this.lastScaleDelta_=1}handleDragEvent(L){let j=1;const it=this.targetPointers[0],k=this.targetPointers[1],Q=it.clientX-k.clientX,nt=it.clientY-k.clientY,tt=Math.sqrt(Q*Q+nt*nt);this.lastDistance_!==void 0&&(j=this.lastDistance_/tt),this.lastDistance_=tt;const at=L.map,ht=at.getView();j!=1&&(this.lastScaleDelta_=j),this.anchor_=at.getCoordinateFromPixelInternal(at.getEventPixel((0,t.v)(this.targetPointers))),at.render(),ht.adjustResolutionInternal(j,this.anchor_)}handleUpEvent(L){if(this.targetPointers.length<2){const it=L.map.getView(),k=this.lastScaleDelta_>1?1:-1;return it.endInteraction(this.duration_,k),!1}return!0}handleDownEvent(L){if(this.targetPointers.length>=2){const j=L.map;return this.anchor_=null,this.lastDistance_=void 0,this.lastScaleDelta_=1,this.handlingDownUpSequence||j.getView().beginInteraction(),!0}return!1}}const Y=H;function st(X){X=X||{};const L=new b.A,j=new B(-.005,.05,100);return(X.altShiftDragRotate!==void 0?X.altShiftDragRotate:!0)&&L.push(new u),(X.doubleClickZoom!==void 0?X.doubleClickZoom:!0)&&L.push(new d({delta:X.zoomDelta,duration:X.zoomDuration})),(X.dragPan!==void 0?X.dragPan:!0)&&L.push(new r({onFocusOnly:X.onFocusOnly,kinetic:j})),(X.pinchRotate!==void 0?X.pinchRotate:!0)&&L.push(new K),(X.pinchZoom!==void 0?X.pinchZoom:!0)&&L.push(new Y({duration:X.zoomDuration})),(X.keyboard!==void 0?X.keyboard:!0)&&(L.push(new p),L.push(new f({delta:X.zoomDelta,duration:X.zoomDuration}))),(X.mouseWheelZoom!==void 0?X.mouseWheelZoom:!0)&&L.push(new S.A({onFocusOnly:X.onFocusOnly,duration:X.zoomDuration})),(X.shiftDragZoom!==void 0?X.shiftDragZoom:!0)&&L.push(new _({duration:X.zoomDuration})),L}},62703:(gt,q,o)=>{o.d(q,{A:()=>b});const b={ANIMATING:0,INTERACTING:1}},63425:(gt,q,o)=>{o.d(q,{A:()=>m});var b=o(71259),y=o(62703),B=o(90588),W=o(9438),v=o(70915),C=o(94720),d=o(82922),A=o(835),O=o(3422),x=o(88280),M=o(9703),t=o(4087),s=o(20259),r=o(9777),P=o(89940),D=o(90130),u=o(35339),c=o(38111),n=o(49189);class e extends c.A{constructor(h,l){const _=l.uniforms||{},I=(0,M.vt)();_[r.M8.PROJECTION_MATRIX]=I,super(h,{uniforms:_,postProcesses:l.postProcesses}),this.sourceRevision_=-1,this.verticesBuffer_=new s.Ay(D.H7,D.Be),this.indicesBuffer_=new s.Ay(D.IP,D.Be),this.vertexShader_=l.vertexShader,this.fragmentShader_=l.fragmentShader,this.program_,this.hitDetectionEnabled_=l.hitDetectionEnabled??!0;const T=l.attributes?l.attributes.map(function(p){return{name:"a_"+p.name,size:1,type:r.jQ.FLOAT}}):[];this.attributes=[{name:"a_position",size:2,type:r.jQ.FLOAT},{name:"a_index",size:1,type:r.jQ.FLOAT}],this.hitDetectionEnabled_&&(this.attributes.push({name:"a_hitColor",size:4,type:r.jQ.FLOAT}),this.attributes.push({name:"a_featureUid",size:1,type:r.jQ.FLOAT})),this.attributes.push(...T),this.customAttributes=l.attributes?l.attributes:[],this.previousExtent_=(0,v.S5)(),this.currentTransform_=I,this.renderTransform_=(0,M.vt)(),this.invertRenderTransform_=(0,M.vt)(),this.renderInstructions_=new Float32Array(0),this.hitRenderTarget_,this.lastSentId=0,this.worker_=(0,u.v)(),this.worker_.addEventListener("message",p=>{const E=p.data;if(E.type===A.x.GENERATE_POINT_BUFFERS){const f=E.projectionTransform;this.verticesBuffer_.fromArrayBuffer(E.vertexBuffer),this.helper.flushBufferData(this.verticesBuffer_),this.indicesBuffer_.fromArrayBuffer(E.indexBuffer),this.helper.flushBufferData(this.indicesBuffer_),this.renderTransform_=f,(0,M.T9)(this.invertRenderTransform_,this.renderTransform_),this.renderInstructions_=new Float32Array(p.data.renderInstructions),E.id===this.lastSentId&&(this.ready=!0),this.getLayer().changed()}}),this.featureCache_={},this.featureCount_=0;const w=this.getLayer().getSource();this.sourceListenKeys_=[(0,W.KT)(w,x.A.ADDFEATURE,this.handleSourceFeatureAdded_,this),(0,W.KT)(w,x.A.CHANGEFEATURE,this.handleSourceFeatureChanged_,this),(0,W.KT)(w,x.A.REMOVEFEATURE,this.handleSourceFeatureDelete_,this),(0,W.KT)(w,x.A.CLEAR,this.handleSourceFeatureClear_,this)],w.forEachFeature(p=>{const E=p.getGeometry();E&&E.getType()==="Point"&&(this.featureCache_[(0,t.v6)(p)]={feature:p,properties:p.getProperties(),flatCoordinates:E.getFlatCoordinates()},this.featureCount_++)})}afterHelperCreated(){this.program_=this.helper.getProgram(this.fragmentShader_,this.vertexShader_),this.hitDetectionEnabled_&&(this.hitRenderTarget_=new P.A(this.helper)),this.verticesBuffer_.getArray()&&this.helper.flushBufferData(this.verticesBuffer_),this.indicesBuffer_.getArray()&&this.helper.flushBufferData(this.indicesBuffer_)}handleSourceFeatureAdded_(h){const l=h.feature,_=l.getGeometry();_&&_.getType()==="Point"&&(this.featureCache_[(0,t.v6)(l)]={feature:l,properties:l.getProperties(),flatCoordinates:_.getFlatCoordinates()},this.featureCount_++)}handleSourceFeatureChanged_(h){const l=h.feature,_=(0,t.v6)(l),I=this.featureCache_[_],T=l.getGeometry();I?T&&T.getType()==="Point"?(I.properties=l.getProperties(),I.flatCoordinates=T.getFlatCoordinates()):(delete this.featureCache_[_],this.featureCount_--):T&&T.getType()==="Point"&&(this.featureCache_[_]={feature:l,properties:l.getProperties(),flatCoordinates:T.getFlatCoordinates()},this.featureCount_++)}handleSourceFeatureDelete_(h){const l=h.feature,_=(0,t.v6)(l);_ in this.featureCache_&&(delete this.featureCache_[_],this.featureCount_--)}handleSourceFeatureClear_(){this.featureCache_={},this.featureCount_=0}renderFrame(h){const l=this.helper.getGL();this.preRender(l,h);const[_,I,T]=(0,n.v)(h,this.getLayer());return this.renderWorlds(h,!1,_,I,T),this.helper.finalizeDraw(h,this.dispatchPreComposeEvent,this.dispatchPostComposeEvent),this.hitDetectionEnabled_&&(this.renderWorlds(h,!0,_,I,T),this.hitRenderTarget_.clearCachedData()),this.postRender(l,h),this.helper.getCanvas()}prepareFrameInternal(h){const l=this.getLayer(),_=l.getSource(),I=h.viewState,T=!h.viewHints[y.A.ANIMATING]&&!h.viewHints[y.A.INTERACTING],w=!(0,v.aI)(this.previousExtent_,h.extent),p=this.sourceRevision_<_.getRevision();if(p&&(this.sourceRevision_=_.getRevision()),T&&(w||p)){const E=I.projection,f=I.resolution,S=l instanceof C.A?l.getRenderBuffer():0,N=(0,v.r)(h.extent,S*f);_.loadFeatures(N,f,E),this.rebuildBuffers_(h),this.previousExtent_=h.extent.slice()}return this.helper.useProgram(this.program_,h),this.helper.prepareDraw(h),this.helper.bindBuffer(this.verticesBuffer_),this.helper.bindBuffer(this.indicesBuffer_),this.helper.enableAttributes(this.attributes),!0}rebuildBuffers_(h){const l=(0,M.vt)();this.helper.makeProjectionTransform(h,l);const _=(0,d.Tf)(),T=(this.hitDetectionEnabled_?7:2)+this.customAttributes.length,w=T*this.featureCount_,p=this.renderInstructions_&&this.renderInstructions_.length===w?this.renderInstructions_:new Float32Array(w);this.renderInstructions_=null;let E=[];const f=[];let S=-1;const N=h.viewState.projection;for(const H in this.featureCache_){const Y=this.featureCache_[H];if(_?E=(0,d.Ad)(Y.flatCoordinates,N):(E[0]=Y.flatCoordinates[0],E[1]=Y.flatCoordinates[1]),(0,M.Bb)(l,E),p[++S]=E[0],p[++S]=E[1],this.hitDetectionEnabled_){const st=(0,O.b)(S+5,f);p[++S]=st[0],p[++S]=st[1],p[++S]=st[2],p[++S]=st[3],p[++S]=Number(H)}for(let st=0;st<this.customAttributes.length;st++){const X=this.customAttributes[st].callback(Y.feature,Y.properties);p[++S]=X}}const K={id:++this.lastSentId,type:A.x.GENERATE_POINT_BUFFERS,renderInstructions:p.buffer,customAttributesSize:T-2};K.projectionTransform=l,this.ready=!1,this.worker_.postMessage(K,[p.buffer])}forEachFeatureAtCoordinate(h,l,_,I,T){if((0,B.v)(this.hitDetectionEnabled_,"`forEachFeatureAtCoordinate` cannot be used on a WebGL layer if the hit detection logic has been disabled using the `disableHitDetection: true` option."),!this.renderInstructions_||!this.hitDetectionEnabled_)return;const w=(0,M.Bb)(l.coordinateToPixelTransform,h.slice()),p=this.hitRenderTarget_.readPixel(w[0]/2,w[1]/2),E=[p[0]/255,p[1]/255,p[2]/255,p[3]/255],f=(0,O.L)(E),S=this.renderInstructions_[f],N=Math.floor(S).toString(),H=this.getLayer().getSource().getFeatureByUid(N);if(H)return I(H,this.getLayer(),null)}renderWorlds(h,l,_,I,T){let w=_;this.helper.useProgram(this.program_,h),l&&(this.hitRenderTarget_.setSize([Math.floor(h.size[0]/2),Math.floor(h.size[1]/2)]),this.helper.prepareDrawToRenderTarget(h,this.hitRenderTarget_,!0)),this.helper.bindBuffer(this.verticesBuffer_),this.helper.bindBuffer(this.indicesBuffer_),this.helper.enableAttributes(this.attributes);do{this.helper.makeProjectionTransform(h,this.currentTransform_),(0,M.Tl)(this.currentTransform_,w*T,0),(0,M.lw)(this.currentTransform_,this.invertRenderTransform_),this.helper.applyUniforms(h),this.helper.applyHitDetectionUniform(l);const p=this.indicesBuffer_.getSize();this.helper.drawElements(0,p)}while(++w<I)}disposeInternal(){this.worker_.terminate(),this.sourceListenKeys_.forEach(function(h){(0,W.JH)(h)}),this.sourceListenKeys_=null,super.disposeInternal()}renderDeclutter(){}}const i=e;var a=o(60764);class g extends a.A{constructor(h){const l=Object.assign({},h);super(l),this.styleVariables_=h.variables||{},this.parseResult_=(0,b.my)(h.style,this.styleVariables_,h.filter),this.hitDetectionDisabled_=!!h.disableHitDetection}createRenderer(){const h=Object.keys(this.parseResult_.attributes).map(l=>({name:l,...this.parseResult_.attributes[l]}));return new i(this,{vertexShader:this.parseResult_.builder.getSymbolVertexShader(),fragmentShader:this.parseResult_.builder.getSymbolFragmentShader(),hitDetectionEnabled:!this.hitDetectionDisabled_,uniforms:this.parseResult_.uniforms,attributes:h})}updateStyleVariables(h){Object.assign(this.styleVariables_,h),this.changed()}}const m=g},63624:(gt,q,o)=>{o.d(q,{E:()=>x,A:()=>t});var b=o(99676),y=o(70915),B=o(61597);function W(s,r,P,D,u){const c=[];let n=P,e=0,i=r.slice(P,2);for(;e<s&&n+u<D;){const[a,g]=i.slice(-2),m=r[n+u],R=r[n+u+1],h=Math.sqrt((m-a)*(m-a)+(R-g)*(R-g));if(e+=h,e>=s){const l=(s-e+h)/h,_=(0,B.Cc)(a,m,l),I=(0,B.Cc)(g,R,l);i.push(_,I),c.push(i),i=[_,I],e==s&&(n+=u),e=0}else if(e<s)i.push(r[n+u],r[n+u+1]),n+=u;else{const l=h-e,_=(0,B.Cc)(a,m,l/h),I=(0,B.Cc)(g,R,l/h);i.push(_,I),c.push(i),i=[_,I],e=0,n+=u}}return e>0&&c.push(i),c}function v(s,r,P,D,u){let c=P,n=P,e=0,i=0,a=P,g,m,R,h,l,_,I,T,w,p;for(m=P;m<D;m+=u){const E=r[m],f=r[m+1];l!==void 0&&(w=E-l,p=f-_,h=Math.sqrt(w*w+p*p),I!==void 0&&(i+=R,g=Math.acos((I*w+T*p)/(R*h)),g>s&&(i>e&&(e=i,c=a,n=m),i=0,a=m-u)),R=h,I=w,T=p),l=E,_=f}return i+=h,i>e?[a,m]:[c,n]}var C=o(4087),d=o(38774),A=o(8130),O=o(66429);const x={left:0,center:.5,right:1,top:0,middle:.5,hanging:.2,alphabetic:.8,ideographic:.8,bottom:1};class M extends A.A{constructor(r,P,D,u){super(r,P,D,u),this.labels_=null,this.text_="",this.textOffsetX_=0,this.textOffsetY_=0,this.textRotateWithView_=void 0,this.textKeepUpright_=void 0,this.textRotation_=0,this.textFillState_=null,this.fillStates={},this.fillStates[d.qY]={fillStyle:d.qY},this.textStrokeState_=null,this.strokeStates={},this.textState_={},this.textStates={},this.textKey_="",this.fillKey_="",this.strokeKey_="",this.declutterMode_=void 0,this.declutterImageWithText_=void 0}finish(){const r=super.finish();return r.textStates=this.textStates,r.fillStates=this.fillStates,r.strokeStates=this.strokeStates,r}drawText(r,P,D){const u=this.textFillState_,c=this.textStrokeState_,n=this.textState_;if(this.text_===""||!n||!u&&!c)return;const e=this.coordinates;let i=e.length;const a=r.getType();let g=null,m=r.getStride();if(n.placement==="line"&&(a=="LineString"||a=="MultiLineString"||a=="Polygon"||a=="MultiPolygon")){if(!(0,y.HY)(this.maxExtent,r.getExtent()))return;let R;if(g=r.getFlatCoordinates(),a=="LineString")R=[g.length];else if(a=="MultiLineString")R=r.getEnds();else if(a=="Polygon")R=r.getEnds().slice(0,1);else if(a=="MultiPolygon"){const I=r.getEndss();R=[];for(let T=0,w=I.length;T<w;++T)R.push(I[T][0])}this.beginGeometry(r,P,D);const h=n.repeat,l=h?void 0:n.textAlign;let _=0;for(let I=0,T=R.length;I<T;++I){let w;h?w=W(h*this.resolution,g,_,R[I],m):w=[g.slice(_,R[I])];for(let p=0,E=w.length;p<E;++p){const f=w[p];let S=0,N=f.length;if(l==null){const H=v(n.maxAngle,f,0,f.length,2);S=H[0],N=H[1]}for(let H=S;H<N;H+=m)e.push(f[H],f[H+1]);const K=e.length;_=R[I],this.drawChars_(i,K),i=K}}this.endGeometry(P)}else{let R=n.overflow?null:[];switch(a){case"Point":case"MultiPoint":g=r.getFlatCoordinates();break;case"LineString":g=r.getFlatMidpoint();break;case"Circle":g=r.getCenter();break;case"MultiLineString":g=r.getFlatMidpoints(),m=2;break;case"Polygon":g=r.getFlatInteriorPoint(),n.overflow||R.push(g[2]/this.resolution),m=3;break;case"MultiPolygon":const E=r.getFlatInteriorPoints();g=[];for(let f=0,S=E.length;f<S;f+=3)n.overflow||R.push(E[f+2]/this.resolution),g.push(E[f],E[f+1]);if(g.length===0)return;m=2;break;default:}const h=this.appendFlatPointCoordinates(g,m);if(h===i)return;if(R&&(h-i)/2!==g.length/m){let E=i/2;R=R.filter((f,S)=>{const N=e[(E+S)*2]===g[S*m]&&e[(E+S)*2+1]===g[S*m+1];return N||--E,N})}this.saveTextStates_();const l=n.backgroundFill?this.createFill(this.fillStyleToState(n.backgroundFill)):null,_=n.backgroundStroke?this.createStroke(this.strokeStyleToState(n.backgroundStroke)):null;this.beginGeometry(r,P,D);let I=n.padding;if(I!=d.Tq&&(n.scale[0]<0||n.scale[1]<0)){let E=n.padding[0],f=n.padding[1],S=n.padding[2],N=n.padding[3];n.scale[0]<0&&(f=-f,N=-N),n.scale[1]<0&&(E=-E,S=-S),I=[E,f,S,N]}const T=this.pixelRatio;this.instructions.push([O.Ay.DRAW_IMAGE,i,h,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[1,1],NaN,this.declutterMode_,this.declutterImageWithText_,I==d.Tq?d.Tq:I.map(function(E){return E*T}),l,_,this.text_,this.textKey_,this.strokeKey_,this.fillKey_,this.textOffsetX_,this.textOffsetY_,R]);const w=1/T,p=l?l.slice(0):null;p&&(p[1]=d.qY),this.hitDetectionInstructions.push([O.Ay.DRAW_IMAGE,i,h,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[w,w],NaN,this.declutterMode_,this.declutterImageWithText_,I,p,_,this.text_,this.textKey_,this.strokeKey_,this.fillKey_?d.qY:this.fillKey_,this.textOffsetX_,this.textOffsetY_,R]),this.endGeometry(P)}}saveTextStates_(){const r=this.textStrokeState_,P=this.textState_,D=this.textFillState_,u=this.strokeKey_;r&&(u in this.strokeStates||(this.strokeStates[u]={strokeStyle:r.strokeStyle,lineCap:r.lineCap,lineDashOffset:r.lineDashOffset,lineWidth:r.lineWidth,lineJoin:r.lineJoin,miterLimit:r.miterLimit,lineDash:r.lineDash}));const c=this.textKey_;c in this.textStates||(this.textStates[c]={font:P.font,textAlign:P.textAlign||d.MY,justify:P.justify,textBaseline:P.textBaseline||d.M8,scale:P.scale});const n=this.fillKey_;D&&(n in this.fillStates||(this.fillStates[n]={fillStyle:D.fillStyle}))}drawChars_(r,P){const D=this.textStrokeState_,u=this.textState_,c=this.strokeKey_,n=this.textKey_,e=this.fillKey_;this.saveTextStates_();const i=this.pixelRatio,a=x[u.textBaseline],g=this.textOffsetY_*i,m=this.text_,R=D?D.lineWidth*Math.abs(u.scale[0])/2:0;this.instructions.push([O.Ay.DRAW_CHARS,r,P,a,u.overflow,e,u.maxAngle,i,g,c,R*i,m,n,1,this.declutterMode_,this.textKeepUpright_]),this.hitDetectionInstructions.push([O.Ay.DRAW_CHARS,r,P,a,u.overflow,e&&d.qY,u.maxAngle,i,g,c,R*i,m,n,1/i,this.declutterMode_,this.textKeepUpright_])}setTextStyle(r,P){let D,u,c;if(!r)this.text_="";else{const n=r.getFill();n?(u=this.textFillState_,u||(u={},this.textFillState_=u),u.fillStyle=(0,b.F)(n.getColor()||d.qY)):(u=null,this.textFillState_=u);const e=r.getStroke();if(!e)c=null,this.textStrokeState_=c;else{c=this.textStrokeState_,c||(c={},this.textStrokeState_=c);const _=e.getLineDash(),I=e.getLineDashOffset(),T=e.getWidth(),w=e.getMiterLimit();c.lineCap=e.getLineCap()||d._m,c.lineDash=_?_.slice():d.Oq,c.lineDashOffset=I===void 0?d.vk:I,c.lineJoin=e.getLineJoin()||d._K,c.lineWidth=T===void 0?d.aq:T,c.miterLimit=w===void 0?d.eL:w,c.strokeStyle=(0,b.F)(e.getColor()||d.NT)}D=this.textState_;const i=r.getFont()||d.ZV;(0,d.fZ)(i);const a=r.getScaleArray();D.overflow=r.getOverflow(),D.font=i,D.maxAngle=r.getMaxAngle(),D.placement=r.getPlacement(),D.textAlign=r.getTextAlign(),D.repeat=r.getRepeat(),D.justify=r.getJustify(),D.textBaseline=r.getTextBaseline()||d.M8,D.backgroundFill=r.getBackgroundFill(),D.backgroundStroke=r.getBackgroundStroke(),D.padding=r.getPadding()||d.Tq,D.scale=a===void 0?[1,1]:a;const g=r.getOffsetX(),m=r.getOffsetY(),R=r.getRotateWithView(),h=r.getKeepUpright(),l=r.getRotation();this.text_=r.getText()||"",this.textOffsetX_=g===void 0?0:g,this.textOffsetY_=m===void 0?0:m,this.textRotateWithView_=R===void 0?!1:R,this.textKeepUpright_=h===void 0?!0:h,this.textRotation_=l===void 0?0:l,this.strokeKey_=c?(typeof c.strokeStyle=="string"?c.strokeStyle:(0,C.v6)(c.strokeStyle))+c.lineCap+c.lineDashOffset+"|"+c.lineWidth+c.lineJoin+c.miterLimit+"["+c.lineDash.join()+"]":"",this.textKey_=D.font+D.scale+(D.textAlign||"?")+(D.repeat||"?")+(D.justify||"?")+(D.textBaseline||"?"),this.fillKey_=u&&u.fillStyle?typeof u.fillStyle=="string"?u.fillStyle:"|"+(0,C.v6)(u.fillStyle):""}this.declutterMode_=r.getDeclutterMode(),this.declutterImageWithText_=P}}const t=M},66429:(gt,q,o)=>{o.d(q,{Ay:()=>C,I5:()=>y,VD:()=>B,kx:()=>v,th:()=>W});const b={BEGIN_GEOMETRY:0,BEGIN_PATH:1,CIRCLE:2,CLOSE_PATH:3,CUSTOM:4,DRAW_CHARS:5,DRAW_IMAGE:6,END_GEOMETRY:7,FILL:8,MOVE_TO_LINE_TO:9,SET_FILL_STYLE:10,SET_STROKE_STYLE:11,STROKE:12},y=[b.FILL],B=[b.STROKE],W=[b.BEGIN_PATH],v=[b.CLOSE_PATH],C=b},67238:(gt,q,o)=>{o.d(q,{A:()=>W});var b=o(43938),y=o(6141);class B extends b.Ay{constructor(C,d,A,O,x){const M=x!==void 0?y.A.IDLE:y.A.LOADED;super(C,d,A,M),this.loader_=x!==void 0?x:null,this.canvas_=O,this.error_=null}getError(){return this.error_}handleLoad_(C){C?(this.error_=C,this.state=y.A.ERROR):this.state=y.A.LOADED,this.changed()}load(){this.state==y.A.IDLE&&(this.state=y.A.LOADING,this.changed(),this.loader_(this.handleLoad_.bind(this)))}getImage(){return this.canvas_}}const W=B},68711:(gt,q,o)=>{o.d(q,{WM:()=>x,Y:()=>y,Yg:()=>v,fo:()=>A,gS:()=>O,lr:()=>W});var b=o(7771);function y(M,t,s,r){let P;return s&&s.length?P=s.shift():b.Wl?P=new OffscreenCanvas(M||300,t||300):P=document.createElement("canvas"),M&&(P.width=M),t&&(P.height=t),P.getContext("2d",r)}let B;function W(){return B||(B=y(1,1)),B}function v(M){const t=M.canvas;t.width=1,t.height=1,M.clearRect(0,0,1,1)}function C(M){let t=M.offsetWidth;const s=getComputedStyle(M);return t+=parseInt(s.marginLeft,10)+parseInt(s.marginRight,10),t}function d(M){let t=M.offsetHeight;const s=getComputedStyle(M);return t+=parseInt(s.marginTop,10)+parseInt(s.marginBottom,10),t}function A(M,t){const s=t.parentNode;s&&s.replaceChild(M,t)}function O(M){for(;M.lastChild;)M.lastChild.remove()}function x(M,t){const s=M.childNodes;for(let r=0;;++r){const P=s[r],D=t[r];if(!P&&!D)break;if(P!==D){if(!P){M.appendChild(D);continue}if(!D){M.removeChild(P),--r;continue}M.insertBefore(D,P)}}}},69186:(gt,q,o)=>{o.d(q,{A:()=>C});var b=o(25176),y=o(93474),B=o(6837),W=o(10972);class v extends W.A{constructor(A){A=A||{},super({element:document.createElement("div"),target:A.target});const O=A.className!==void 0?A.className:"ol-zoom",x=A.delta!==void 0?A.delta:1,M=A.zoomInClassName!==void 0?A.zoomInClassName:O+"-in",t=A.zoomOutClassName!==void 0?A.zoomOutClassName:O+"-out",s=A.zoomInLabel!==void 0?A.zoomInLabel:"+",r=A.zoomOutLabel!==void 0?A.zoomOutLabel:"\u2013",P=A.zoomInTipLabel!==void 0?A.zoomInTipLabel:"Zoom in",D=A.zoomOutTipLabel!==void 0?A.zoomOutTipLabel:"Zoom out",u=document.createElement("button");u.className=M,u.setAttribute("type","button"),u.title=P,u.appendChild(typeof s=="string"?document.createTextNode(s):s),u.addEventListener(B.A.CLICK,this.handleClick_.bind(this,x),!1);const c=document.createElement("button");c.className=t,c.setAttribute("type","button"),c.title=D,c.appendChild(typeof r=="string"?document.createTextNode(r):r),c.addEventListener(B.A.CLICK,this.handleClick_.bind(this,-x),!1);const n=O+" "+b.XI+" "+b.$N,e=this.element;e.className=n,e.appendChild(u),e.appendChild(c),this.duration_=A.duration!==void 0?A.duration:250}handleClick_(A,O){O.preventDefault(),this.zoomByDelta_(A)}zoomByDelta_(A){const x=this.getMap().getView();if(!x)return;const M=x.getZoom();if(M!==void 0){const t=x.getConstrainedZoom(M+A);this.duration_>0?(x.getAnimating()&&x.cancelAnimations(),x.animate({zoom:t,duration:this.duration_,easing:y.vT})):x.setZoom(t)}}}const C=v},69796:(gt,q,o)=>{o.d(q,{A:()=>A});var b=o(6141),y=o(62703),B=o(70915),W=o(82922),v=o(9703),C=o(96769);class d extends C.A{constructor(x){super(x),this.image=null}getImage(){return this.image?this.image.getImage():null}prepareFrame(x){const M=x.layerStatesArray[x.layerIndex],t=x.pixelRatio,s=x.viewState,r=s.resolution,P=this.getLayer().getSource(),D=x.viewHints;let u=x.extent;if(M.extent!==void 0&&(u=(0,B._N)(u,(0,W.SD)(M.extent,s.projection))),!D[y.A.ANIMATING]&&!D[y.A.INTERACTING]&&!(0,B.Im)(u))if(P){const c=s.projection,n=P.getImage(u,r,t,c);n&&(this.loadImage(n)?this.image=n:n.getState()===b.A.EMPTY&&(this.image=null))}else this.image=null;return!!this.image}getData(x){const M=this.frameState;if(!M)return null;const t=this.getLayer(),s=(0,v.Bb)(M.pixelToCoordinateTransform,x.slice()),r=t.getExtent();if(r&&!(0,B.Ym)(r,s))return null;const P=this.image.getExtent(),D=this.image.getImage(),u=(0,B.RG)(P),c=Math.floor(D.width*((s[0]-P[0])/u));if(c<0||c>=D.width)return null;const n=(0,B.Oq)(P),e=Math.floor(D.height*((P[3]-s[1])/n));return e<0||e>=D.height?null:this.getImageData(D,c,e)}renderFrame(x,M){const t=this.image,s=t.getExtent(),r=t.getResolution(),[P,D]=Array.isArray(r)?r:[r,r],u=t.getPixelRatio(),c=x.layerStatesArray[x.layerIndex],n=x.pixelRatio,e=x.viewState,i=e.center,a=e.resolution,g=n*P/(a*u),m=n*D/(a*u);this.prepareContainer(x,M);const R=this.context.canvas.width,h=this.context.canvas.height,l=this.getRenderContext(x);let _=!1,I=!0;if(c.extent){const f=(0,W.SD)(c.extent,e.projection);I=(0,B.HY)(f,x.extent),_=I&&!(0,B.ms)(f,x.extent),_&&this.clipUnrotated(l,x,f)}const T=t.getImage(),w=(0,v.Zz)(this.tempTransform,R/2,h/2,g,m,0,u*(s[0]-i[0])/P,u*(i[1]-s[3])/D);this.renderedResolution=D*n/u;const p=T.width*w[0],E=T.height*w[3];if(this.getLayer().getSource().getInterpolate()||(l.imageSmoothingEnabled=!1),this.preRender(l,x),I&&p>=.5&&E>=.5){const f=w[4],S=w[5],N=c.opacity;N!==1&&(l.save(),l.globalAlpha=N),l.drawImage(T,0,0,+T.width,+T.height,f,S,p,E),N!==1&&l.restore()}return this.postRender(this.context,x),_&&l.restore(),l.imageSmoothingEnabled=!0,this.container}}const A=d},70136:(gt,q,o)=>{o.d(q,{A:()=>P});var b=o(8130),y=o(70915),B=o(66429);class W extends b.A{constructor(u,c,n,e){super(u,c,n,e),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(u,c,n){if(!this.image_||this.maxExtent&&!(0,y.Ym)(this.maxExtent,u.getFlatCoordinates()))return;this.beginGeometry(u,c,n);const e=u.getFlatCoordinates(),i=u.getStride(),a=this.coordinates.length,g=this.appendFlatPointCoordinates(e,i);this.instructions.push([B.Ay.DRAW_IMAGE,a,g,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([B.Ay.DRAW_IMAGE,a,g,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(c)}drawMultiPoint(u,c,n){if(!this.image_)return;this.beginGeometry(u,c,n);const e=u.getFlatCoordinates(),i=[];for(let m=0,R=e.length;m<R;m+=u.getStride())(!this.maxExtent||(0,y.Ym)(this.maxExtent,e.slice(m,m+2)))&&i.push(e[m],e[m+1]);const a=this.coordinates.length,g=this.appendFlatPointCoordinates(i,2);this.instructions.push([B.Ay.DRAW_IMAGE,a,g,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([B.Ay.DRAW_IMAGE,a,g,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(c)}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(u,c){const n=u.getAnchor(),e=u.getSize(),i=u.getOrigin();this.imagePixelRatio_=u.getPixelRatio(this.pixelRatio),this.anchorX_=n[0],this.anchorY_=n[1],this.hitDetectionImage_=u.getHitDetectionImage(),this.image_=u.getImage(this.pixelRatio),this.height_=e[1],this.opacity_=u.getOpacity(),this.originX_=i[0],this.originY_=i[1],this.rotateWithView_=u.getRotateWithView(),this.rotation_=u.getRotation(),this.scale_=u.getScaleArray(),this.width_=e[0],this.declutterMode_=u.getDeclutterMode(),this.declutterImageWithText_=c}}const v=W;var C=o(38774);class d extends b.A{constructor(u,c,n,e){super(u,c,n,e)}drawFlatCoordinates_(u,c,n,e){const i=this.coordinates.length,a=this.appendFlatLineCoordinates(u,c,n,e,!1,!1),g=[B.Ay.MOVE_TO_LINE_TO,i,a];return this.instructions.push(g),this.hitDetectionInstructions.push(g),n}drawLineString(u,c,n){const e=this.state,i=e.strokeStyle,a=e.lineWidth;if(i===void 0||a===void 0)return;this.updateStrokeStyle(e,this.applyStroke),this.beginGeometry(u,c,n),this.hitDetectionInstructions.push([B.Ay.SET_STROKE_STYLE,e.strokeStyle,e.lineWidth,e.lineCap,e.lineJoin,e.miterLimit,C.Oq,C.vk],B.th);const g=u.getFlatCoordinates(),m=u.getStride();this.drawFlatCoordinates_(g,0,g.length,m),this.hitDetectionInstructions.push(B.VD),this.endGeometry(c)}drawMultiLineString(u,c,n){const e=this.state,i=e.strokeStyle,a=e.lineWidth;if(i===void 0||a===void 0)return;this.updateStrokeStyle(e,this.applyStroke),this.beginGeometry(u,c,n),this.hitDetectionInstructions.push([B.Ay.SET_STROKE_STYLE,e.strokeStyle,e.lineWidth,e.lineCap,e.lineJoin,e.miterLimit,C.Oq,C.vk],B.th);const g=u.getEnds(),m=u.getFlatCoordinates(),R=u.getStride();let h=0;for(let l=0,_=g.length;l<_;++l)h=this.drawFlatCoordinates_(m,h,g[l],R);this.hitDetectionInstructions.push(B.VD),this.endGeometry(c)}finish(){const u=this.state;return u.lastStroke!=null&&u.lastStroke!=this.coordinates.length&&this.instructions.push(B.VD),this.reverseHitDetectionInstructions(),this.state=null,super.finish()}applyStroke(u){u.lastStroke!=null&&u.lastStroke!=this.coordinates.length&&(this.instructions.push(B.VD),u.lastStroke=this.coordinates.length),u.lastStroke=0,super.applyStroke(u),this.instructions.push(B.th)}}const A=d;var O=o(83671);class x extends b.A{constructor(u,c,n,e){super(u,c,n,e)}drawFlatCoordinatess_(u,c,n,e){const i=this.state,a=i.fillStyle!==void 0,g=i.strokeStyle!==void 0,m=n.length;this.instructions.push(B.th),this.hitDetectionInstructions.push(B.th);for(let R=0;R<m;++R){const h=n[R],l=this.coordinates.length,_=this.appendFlatLineCoordinates(u,c,h,e,!0,!g),I=[B.Ay.MOVE_TO_LINE_TO,l,_];this.instructions.push(I),this.hitDetectionInstructions.push(I),g&&(this.instructions.push(B.kx),this.hitDetectionInstructions.push(B.kx)),c=h}return a&&(this.instructions.push(B.I5),this.hitDetectionInstructions.push(B.I5)),g&&(this.instructions.push(B.VD),this.hitDetectionInstructions.push(B.VD)),c}drawCircle(u,c,n){const e=this.state,i=e.fillStyle,a=e.strokeStyle;if(i===void 0&&a===void 0)return;this.setFillStrokeStyles_(),this.beginGeometry(u,c,n),e.fillStyle!==void 0&&this.hitDetectionInstructions.push([B.Ay.SET_FILL_STYLE,C.qY]),e.strokeStyle!==void 0&&this.hitDetectionInstructions.push([B.Ay.SET_STROKE_STYLE,e.strokeStyle,e.lineWidth,e.lineCap,e.lineJoin,e.miterLimit,C.Oq,C.vk]);const g=u.getFlatCoordinates(),m=u.getStride(),R=this.coordinates.length;this.appendFlatLineCoordinates(g,0,g.length,m,!1,!1);const h=[B.Ay.CIRCLE,R];this.instructions.push(B.th,h),this.hitDetectionInstructions.push(B.th,h),e.fillStyle!==void 0&&(this.instructions.push(B.I5),this.hitDetectionInstructions.push(B.I5)),e.strokeStyle!==void 0&&(this.instructions.push(B.VD),this.hitDetectionInstructions.push(B.VD)),this.endGeometry(c)}drawPolygon(u,c,n){const e=this.state,i=e.fillStyle,a=e.strokeStyle;if(i===void 0&&a===void 0)return;this.setFillStrokeStyles_(),this.beginGeometry(u,c,n),e.fillStyle!==void 0&&this.hitDetectionInstructions.push([B.Ay.SET_FILL_STYLE,C.qY]),e.strokeStyle!==void 0&&this.hitDetectionInstructions.push([B.Ay.SET_STROKE_STYLE,e.strokeStyle,e.lineWidth,e.lineCap,e.lineJoin,e.miterLimit,C.Oq,C.vk]);const g=u.getEnds(),m=u.getOrientedFlatCoordinates(),R=u.getStride();this.drawFlatCoordinatess_(m,0,g,R),this.endGeometry(c)}drawMultiPolygon(u,c,n){const e=this.state,i=e.fillStyle,a=e.strokeStyle;if(i===void 0&&a===void 0)return;this.setFillStrokeStyles_(),this.beginGeometry(u,c,n),e.fillStyle!==void 0&&this.hitDetectionInstructions.push([B.Ay.SET_FILL_STYLE,C.qY]),e.strokeStyle!==void 0&&this.hitDetectionInstructions.push([B.Ay.SET_STROKE_STYLE,e.strokeStyle,e.lineWidth,e.lineCap,e.lineJoin,e.miterLimit,C.Oq,C.vk]);const g=u.getEndss(),m=u.getOrientedFlatCoordinates(),R=u.getStride();let h=0;for(let l=0,_=g.length;l<_;++l)h=this.drawFlatCoordinatess_(m,h,g[l],R);this.endGeometry(c)}finish(){this.reverseHitDetectionInstructions(),this.state=null;const u=this.tolerance;if(u!==0){const c=this.coordinates;for(let n=0,e=c.length;n<e;++n)c[n]=(0,O.n$)(c[n],u)}return super.finish()}setFillStrokeStyles_(){const u=this.state;this.updateFillStyle(u,this.createFill),this.updateStrokeStyle(u,this.applyStroke)}}const M=x;var t=o(63624);const s={Circle:M,Default:b.A,Image:v,LineString:A,Polygon:M,Text:t.A};class r{constructor(u,c,n,e){this.tolerance_=u,this.maxExtent_=c,this.pixelRatio_=e,this.resolution_=n,this.buildersByZIndex_={}}finish(){const u={};for(const c in this.buildersByZIndex_){u[c]=u[c]||{};const n=this.buildersByZIndex_[c];for(const e in n){const i=n[e].finish();u[c][e]=i}}return u}getBuilder(u,c){const n=u!==void 0?u.toString():"0";let e=this.buildersByZIndex_[n];e===void 0&&(e={},this.buildersByZIndex_[n]=e);let i=e[c];if(i===void 0){const a=s[c];i=new a(this.tolerance_,this.maxExtent_,this.resolution_,this.pixelRatio_),e[c]=i}return i}}const P=r},71259:(gt,q,o)=>{o.d(q,{iA:()=>u,my:()=>D});var b=o(90588),y=o(49825),B=o(25847),W=o(1486),v=o(34835);function C(c){return(JSON.stringify(c).split("").reduce((e,i)=>(e<<5)-e+i.charCodeAt(0),0)>>>0).toString()}function d(c,n,e,i){if(`${i}radius`in c&&i!=="icon-"){let a=(0,v.s2)(e,c[`${i}radius`],y.wl);if(`${i}radius2`in c){const g=(0,v.s2)(e,c[`${i}radius2`],y.wl);a=`max(${a}, ${g})`}`${i}stroke-width`in c&&(a=`(${a} + ${(0,v.s2)(e,c[`${i}stroke-width`],y.wl)} * 0.5)`),n.setSymbolSizeExpression(`vec2(${a} * 2. + 0.5)`)}if(`${i}scale`in c){const a=(0,v.s2)(e,c[`${i}scale`],y.qA);n.setSymbolSizeExpression(`${n.getSymbolSizeExpression()} * ${a}`)}`${i}displacement`in c&&n.setSymbolOffsetExpression((0,v.s2)(e,c[`${i}displacement`],y.Fq)),`${i}rotation`in c&&n.setSymbolRotationExpression((0,v.s2)(e,c[`${i}rotation`],y.wl)),`${i}rotate-with-view`in c&&n.setSymbolRotateWithView(!!c[`${i}rotate-with-view`])}function A(c,n,e,i,a){let g="vec4(0.)";if(n!==null&&(g=n),e!==null&&i!==null){const h=`smoothstep(-${i} + 0.63, -${i} - 0.58, ${c})`;g=`mix(${e}, ${g}, ${h})`}const m=`(1.0 - smoothstep(-0.63, 0.58, ${c}))`;let R=`${g} * vec4(1.0, 1.0, 1.0, ${m})`;return a!==null&&(R=`${R} * vec4(1.0, 1.0, 1.0, ${a})`),R}function O(c,n,e,i,a){const g=new Image;g.crossOrigin=c[`${i}cross-origin`]===void 0?"anonymous":c[`${i}cross-origin`],(0,b.v)(typeof c[`${i}src`]=="string",`WebGL layers do not support expressions for the ${i}src style property`),g.src=c[`${i}src`],e[`u_texture${a}_size`]=()=>g.complete?[g.width,g.height]:[0,0],n.addUniform(`u_texture${a}_size`,"vec2");const m=`u_texture${a}_size`;return e[`u_texture${a}`]=g,n.addUniform(`u_texture${a}`,"sampler2D"),m}function x(c,n,e,i,a){let g=(0,v.s2)(e,c[`${n}offset`],y.qA);if(`${n}offset-origin`in c)switch(c[`${n}offset-origin`]){case"top-right":g=`vec2(${i}.x, 0.) + ${a} * vec2(-1., 0.) + ${g} * vec2(-1., 1.)`;break;case"bottom-left":g=`vec2(0., ${i}.y) + ${a} * vec2(0., -1.) + ${g} * vec2(1., -1.)`;break;case"bottom-right":g=`${i} - ${a} - ${g}`;break;default:}return g}function M(c,n,e,i){i.functions.circleDistanceField=`float circleDistanceField(vec2 point, float radius) { return length(point) - radius; }`,d(c,n,i,"circle-");let a=null;"circle-opacity"in c&&(a=(0,v.s2)(i,c["circle-opacity"],y.wl));let g="coordsPx";"circle-scale"in c&&(g=`coordsPx / ${(0,v.s2)(i,c["circle-scale"],y.qA)}`);let m=null;"circle-fill-color"in c&&(m=(0,v.s2)(i,c["circle-fill-color"],y.mE));let R=null;"circle-stroke-color"in c&&(R=(0,v.s2)(i,c["circle-stroke-color"],y.mE));let h=(0,v.s2)(i,c["circle-radius"],y.wl),l=null;"circle-stroke-width"in c&&(l=(0,v.s2)(i,c["circle-stroke-width"],y.wl),h=`(${h} + ${l} * 0.5)`);const _=`circleDistanceField(${g}, ${h})`,I=A(_,m,R,l,a);n.setSymbolColorExpression(I)}function t(c,n,e,i){i.functions.round=`float round(float v) { return sign(v) * floor(abs(v) + 0.5); }`,i.functions.starDistanceField=`float starDistanceField(vec2 point, float numPoints, float radius, float radius2, float angle) { float startAngle = -PI * 0.5 + angle; // tip starts upwards and rotates clockwise with angle float c = cos(startAngle); float s = sin(startAngle); vec2 pointRotated = vec2(c * point.x - s * point.y, s * point.x + c * point.y); float alpha = TWO_PI / numPoints; // the angle of one sector float beta = atan(pointRotated.y, pointRotated.x); float gamma = round(beta / alpha) * alpha; // angle in sector c = cos(-gamma); s = sin(-gamma); vec2 inSector = vec2(c * pointRotated.x - s * pointRotated.y, abs(s * pointRotated.x + c * pointRotated.y)); vec2 tipToPoint = inSector + vec2(-radius, 0.); vec2 edgeNormal = vec2(radius2 * sin(alpha * 0.5), -radius2 * cos(alpha * 0.5) + radius); return dot(normalize(edgeNormal), tipToPoint); }`,i.functions.regularDistanceField=`float regularDistanceField(vec2 point, float numPoints, float radius, float angle) { float startAngle = -PI * 0.5 + angle; // tip starts upwards and rotates clockwise with angle float c = cos(startAngle); float s = sin(startAngle); vec2 pointRotated = vec2(c * point.x - s * point.y, s * point.x + c * point.y); float alpha = TWO_PI / numPoints; // the angle of one sector float radiusIn = radius * cos(PI / numPoints); float beta = atan(pointRotated.y, pointRotated.x); float gamma = round((beta - alpha * 0.5) / alpha) * alpha + alpha * 0.5; // angle in sector from mid c = cos(-gamma); s = sin(-gamma); vec2 inSector = vec2(c * pointRotated.x - s * pointRotated.y, abs(s * pointRotated.x + c * pointRotated.y)); return inSector.x - radiusIn; }`,d(c,n,i,"shape-");let a=null;"shape-opacity"in c&&(a=(0,v.s2)(i,c["shape-opacity"],y.wl));let g="coordsPx";"shape-scale"in c&&(g=`coordsPx / ${(0,v.s2)(i,c["shape-scale"],y.qA)}`);let m=null;"shape-fill-color"in c&&(m=(0,v.s2)(i,c["shape-fill-color"],y.mE));let R=null;"shape-stroke-color"in c&&(R=(0,v.s2)(i,c["shape-stroke-color"],y.mE));let h=null;"shape-stroke-width"in c&&(h=(0,v.s2)(i,c["shape-stroke-width"],y.wl));const l=(0,v.s2)(i,c["shape-points"],y.wl);let _="0.";"shape-angle"in c&&(_=(0,v.s2)(i,c["shape-angle"],y.wl));let I,T=(0,v.s2)(i,c["shape-radius"],y.wl);if(h!==null&&(T=`${T} + ${h} * 0.5`),"shape-radius2"in c){let p=(0,v.s2)(i,c["shape-radius2"],y.wl);h!==null&&(p=`${p} + ${h} * 0.5`),I=`starDistanceField(${g}, ${l}, ${T}, ${p}, ${_})`}else I=`regularDistanceField(${g}, ${l}, ${T}, ${_})`;const w=A(I,m,R,h,a);n.setSymbolColorExpression(w)}function s(c,n,e,i){let a="vec4(1.0)";"icon-color"in c&&(a=(0,v.s2)(i,c["icon-color"],y.mE)),"icon-opacity"in c&&(a=`${a} * vec4(1.0, 1.0, 1.0, ${(0,v.s2)(i,c["icon-opacity"],y.wl)})`);const g=C(c["icon-src"]),m=O(c,n,e,"icon-",g);if(n.setSymbolColorExpression(`${a} * texture2D(u_texture${g}, v_texCoord)`).setSymbolSizeExpression(m),"icon-width"in c&&"icon-height"in c&&n.setSymbolSizeExpression(`vec2(${(0,v.s2)(i,c["icon-width"],y.wl)}, ${(0,v.s2)(i,c["icon-height"],y.wl)})`),"icon-offset"in c&&"icon-size"in c){const R=(0,v.s2)(i,c["icon-size"],y.Fq),h=n.getSymbolSizeExpression();n.setSymbolSizeExpression(R);const l=x(c,"icon-",i,"v_quadSizePx",R);n.setTextureCoordinateExpression(`(vec4((${l}).xyxy) + vec4(0., 0., ${R})) / (${h}).xyxy`)}if(d(c,n,i,"icon-"),"icon-anchor"in c){const R=(0,v.s2)(i,c["icon-anchor"],y.Fq);let h="1.0";"icon-scale"in c&&(h=(0,v.s2)(i,c["icon-scale"],y.qA));let l;c["icon-anchor-x-units"]==="pixels"&&c["icon-anchor-y-units"]==="pixels"?l=`${R} * ${h}`:c["icon-anchor-x-units"]==="pixels"?l=`${R} * vec2(vec2(${h}).x, v_quadSizePx.y)`:c["icon-anchor-y-units"]==="pixels"?l=`${R} * vec2(v_quadSizePx.x, vec2(${h}).x)`:l=`${R} * v_quadSizePx`;let _=`v_quadSizePx * vec2(0.5, -0.5) + ${l} * vec2(-1., 1.)`;if("icon-anchor-origin"in c)switch(c["icon-anchor-origin"]){case"top-right":_=`v_quadSizePx * -0.5 + ${l}`;break;case"bottom-left":_=`v_quadSizePx * 0.5 - ${l}`;break;case"bottom-right":_=`v_quadSizePx * vec2(-0.5, 0.5) + ${l} * vec2(1., -1.)`;break;default:}n.setSymbolOffsetExpression(`${n.getSymbolOffsetExpression()} + ${_}`)}}function r(c,n,e,i){if("stroke-color"in c&&n.setStrokeColorExpression((0,v.s2)(i,c["stroke-color"],y.mE)),"stroke-pattern-src"in c){const a=C(c["stroke-pattern-src"]),g=O(c,n,e,"stroke-pattern-",a);let m=g,R="vec2(0.)";"stroke-pattern-offset"in c&&"stroke-pattern-size"in c&&(m=(0,v.s2)(i,c["stroke-pattern-size"],y.Fq),R=x(c,"stroke-pattern-",i,g,m));let h="0.";"stroke-pattern-spacing"in c&&(h=(0,v.s2)(i,c["stroke-pattern-spacing"],y.wl)),i.functions.sampleStrokePattern=`vec4 sampleStrokePattern(sampler2D texture, vec2 textureSize, vec2 textureOffset, vec2 sampleSize, float spacingPx, float currentLengthPx, float currentRadiusRatio, float lineWidth) { float currentLengthScaled = currentLengthPx * sampleSize.y / lineWidth; float spacingScaled = spacingPx * sampleSize.y / lineWidth; float uCoordPx = mod(currentLengthScaled, (sampleSize.x + spacingScaled)); // make sure that we're not sampling too close to the borders to avoid interpolation with outside pixels uCoordPx = clamp(uCoordPx, 0.5, sampleSize.x - 0.5); float vCoordPx = (-currentRadiusRatio * 0.5 + 0.5) * sampleSize.y; vec2 texCoord = (vec2(uCoordPx, vCoordPx) + textureOffset) / textureSize; return texture2D(texture, texCoord); }`;const l=`u_texture${a}`;let _="1.";"stroke-color"in c&&(_=n.getStrokeColorExpression()),n.setStrokeColorExpression(`${_} * sampleStrokePattern(${l}, ${g}, ${R}, ${m}, ${h}, currentLengthPx, currentRadiusRatio, v_width)`)}if("stroke-width"in c&&n.setStrokeWidthExpression((0,v.s2)(i,c["stroke-width"],y.wl)),"stroke-offset"in c&&n.setStrokeOffsetExpression((0,v.s2)(i,c["stroke-offset"],y.wl)),"stroke-line-cap"in c&&n.setStrokeCapExpression((0,v.s2)(i,c["stroke-line-cap"],y.cT)),"stroke-line-join"in c&&n.setStrokeJoinExpression((0,v.s2)(i,c["stroke-line-join"],y.cT)),"stroke-miter-limit"in c&&n.setStrokeMiterLimitExpression((0,v.s2)(i,c["stroke-miter-limit"],y.wl)),"stroke-line-dash"in c){i.functions.getSingleDashDistance=`float getSingleDashDistance(float distance, float radius, float dashOffset, float dashLength, float dashLengthTotal, float capType, float lineWidth) { float localDistance = mod(distance, dashLengthTotal); float distanceSegment = abs(localDistance - dashOffset - dashLength * 0.5) - dashLength * 0.5; distanceSegment = min(distanceSegment, dashLengthTotal - localDistance); if (capType == ${(0,B.Tl)("square")}) { distanceSegment -= lineWidth * 0.5; } else if (capType == ${(0,B.Tl)("round")}) { distanceSegment = min(distanceSegment, sqrt(distanceSegment * distanceSegment + radius * radius) - lineWidth * 0.5); } return distanceSegment; }`;let a=c["stroke-line-dash"].map(w=>(0,v.s2)(i,w,y.wl));a.length%2===1&&(a=[...a,...a]);let g="0.";"stroke-line-dash-offset"in c&&(g=(0,v.s2)(i,c["stroke-line-dash-offset"],y.wl));const R=`dashDistanceField_${C(c["stroke-line-dash"])}`,h=a.map((w,p)=>`float dashLength${p}`).join(", "),l=a.map((w,p)=>`dashLength${p}`).join(" + ");let _="0.",I=`getSingleDashDistance(distance, radius, ${_}, dashLength0, totalDashLength, capType, lineWidth)`;for(let w=2;w<a.length;w+=2)_=`${_} + dashLength${w-2} + dashLength${w-1}`,I=`min(${I}, getSingleDashDistance(distance, radius, ${_}, dashLength${w}, totalDashLength, capType, lineWidth))`;i.functions[R]=`float ${R}(float distance, float radius, float capType, float lineWidth, ${h}) { float totalDashLength = ${l}; return ${I}; }`;const T=a.map((w,p)=>`${w}`).join(", ");n.setStrokeDistanceFieldExpression(`${R}(currentLengthPx + ${g}, currentRadiusPx, capType, v_width, ${T})`)}}function P(c,n,e,i){if("fill-color"in c&&n.setFillColorExpression((0,v.s2)(i,c["fill-color"],y.mE)),"fill-pattern-src"in c){const a=C(c["fill-pattern-src"]),g=O(c,n,e,"fill-pattern-",a);let m=g,R="vec2(0.)";"fill-pattern-offset"in c&&"fill-pattern-size"in c&&(m=(0,v.s2)(i,c["fill-pattern-size"],y.Fq),R=x(c,"fill-pattern-",i,g,m)),i.functions.sampleFillPattern=`vec4 sampleFillPattern(sampler2D texture, vec2 textureSize, vec2 textureOffset, vec2 sampleSize, vec2 pxOrigin, vec2 pxPosition) { float scaleRatio = pow(2., mod(u_zoom + 0.5, 1.) - 0.5); vec2 pxRelativePos = pxPosition - pxOrigin; // rotate the relative position from origin by the current view rotation pxRelativePos = vec2(pxRelativePos.x * cos(u_rotation) - pxRelativePos.y * sin(u_rotation), pxRelativePos.x * sin(u_rotation) + pxRelativePos.y * cos(u_rotation)); // sample position is computed according to the sample offset & size vec2 samplePos = mod(pxRelativePos / scaleRatio, sampleSize); // also make sure that we're not sampling too close to the borders to avoid interpolation with outside pixels samplePos = clamp(samplePos, vec2(0.5), sampleSize - vec2(0.5)); samplePos.y = sampleSize.y - samplePos.y; // invert y axis so that images appear upright return texture2D(texture, (samplePos + textureOffset) / textureSize); }`;const h=`u_texture${a}`;let l="1.";"fill-color"in c&&(l=n.getFillColorExpression()),n.setFillColorExpression(`${l} * sampleFillPattern(${h}, ${g}, ${R}, ${m}, pxOrigin, pxPos)`)}}function D(c,n,e){const i=(0,B.z0)(),a=new W.N,g={};if("icon-src"in c?s(c,a,g,i):"shape-points"in c?t(c,a,g,i):"circle-radius"in c&&M(c,a,g,i),r(c,a,g,i),P(c,a,g,i),e){const h=(0,v.s2)(i,e,y.T8);a.setFragmentDiscardExpression(`!${h}`)}const m={};function R(h,l,_,I){if(!i[h])return;const T=(0,v.T0)(_),w=(0,v.Qi)(_);a.addAttribute(`a_${l}`,T),m[l]={size:w,callback:I}}return R("geometryType",B.M7,y.cT,h=>(0,B.Lm)((0,y.Ye)(h.getGeometry()))),R("featureId",B.L$,y.cT|y.wl,h=>{const l=h.getId()??null;return typeof l=="string"?(0,B.Lm)(l):l}),(0,v.mf)(a,i),{builder:a,attributes:{...m,...(0,v.mh)(i)},uniforms:{...g,...(0,v.kc)(i,n)}}}function u(c){const n=Array.isArray(c)?c:[c];if("style"in n[0]){const e=[],i=n,a=[];for(const g of i){const m=Array.isArray(g.style)?g.style:[g.style];let R=g.filter;g.else&&a.length&&(R=["all",...a.map(l=>["!",l])],g.filter&&R.push(g.filter),R.length<3&&(R=R[1])),g.filter&&a.push(g.filter);const h=m.map(l=>({style:l,...R&&{filter:R}}));e.push(...h)}return e}return"builder"in n[0]?n:n.map(e=>({style:e}))}},73445:(gt,q,o)=>{o.d(q,{A:()=>y});var b=o(6837);const y={SINGLECLICK:"singleclick",CLICK:b.A.CLICK,DBLCLICK:b.A.DBLCLICK,POINTERDRAG:"pointerdrag",POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTERUP:"pointerup",POINTEROVER:"pointerover",POINTEROUT:"pointerout",POINTERENTER:"pointerenter",POINTERLEAVE:"pointerleave",POINTERCANCEL:"pointercancel"}},73608:(gt,q,o)=>{o.d(q,{Eo:()=>v,gY:()=>d,j:()=>C,nl:()=>O});var b=o(6141),y=o(4087);const B=.5,W={Point:D,LineString:s,Polygon:c,MultiPoint:u,MultiLineString:r,MultiPolygon:P,GeometryCollection:t,Circle:A};function v(n,e){return parseInt((0,y.v6)(n),10)-parseInt((0,y.v6)(e),10)}function C(n,e){const i=d(n,e);return i*i}function d(n,e){return B*n/e}function A(n,e,i,a,g){const m=i.getFill(),R=i.getStroke();if(m||R){const l=n.getBuilder(i.getZIndex(),"Circle");l.setFillStrokeStyle(m,R),l.drawCircle(e,a,g)}const h=i.getText();if(h&&h.getText()){const l=n.getBuilder(i.getZIndex(),"Text");l.setTextStyle(h),l.drawText(e,a)}}function O(n,e,i,a,g,m,R,h){const l=[],_=i.getImage();if(_){let w=!0;const p=_.getImageState();p==b.A.LOADED||p==b.A.ERROR?w=!1:p==b.A.IDLE&&_.load(),w&&l.push(_.ready())}const I=i.getFill();I&&I.loading()&&l.push(I.ready());const T=l.length>0;return T&&Promise.all(l).then(()=>g(null)),x(n,e,i,a,m,R,h),T}function x(n,e,i,a,g,m,R){const h=i.getGeometryFunction()(e);if(!h)return;const l=h.simplifyTransformed(a,g);if(i.getRenderer())M(n,l,i,e,R);else{const I=W[l.getType()];I(n,l,i,e,R,m)}}function M(n,e,i,a,g){if(e.getType()=="GeometryCollection"){const R=e.getGeometries();for(let h=0,l=R.length;h<l;++h)M(n,R[h],i,a,g);return}n.getBuilder(i.getZIndex(),"Default").drawCustom(e,a,i.getRenderer(),i.getHitDetectionRenderer(),g)}function t(n,e,i,a,g,m){const R=e.getGeometriesArray();let h,l;for(h=0,l=R.length;h<l;++h){const _=W[R[h].getType()];_(n,R[h],i,a,g,m)}}function s(n,e,i,a,g){const m=i.getStroke();if(m){const h=n.getBuilder(i.getZIndex(),"LineString");h.setFillStrokeStyle(null,m),h.drawLineString(e,a,g)}const R=i.getText();if(R&&R.getText()){const h=n.getBuilder(i.getZIndex(),"Text");h.setTextStyle(R),h.drawText(e,a,g)}}function r(n,e,i,a,g){const m=i.getStroke();if(m){const h=n.getBuilder(i.getZIndex(),"LineString");h.setFillStrokeStyle(null,m),h.drawMultiLineString(e,a,g)}const R=i.getText();if(R&&R.getText()){const h=n.getBuilder(i.getZIndex(),"Text");h.setTextStyle(R),h.drawText(e,a,g)}}function P(n,e,i,a,g){const m=i.getFill(),R=i.getStroke();if(R||m){const l=n.getBuilder(i.getZIndex(),"Polygon");l.setFillStrokeStyle(m,R),l.drawMultiPolygon(e,a,g)}const h=i.getText();if(h&&h.getText()){const l=n.getBuilder(i.getZIndex(),"Text");l.setTextStyle(h),l.drawText(e,a,g)}}function D(n,e,i,a,g,m){const R=i.getImage(),h=i.getText(),l=h&&h.getText(),_=m&&R&&l?{}:void 0;if(R){if(R.getImageState()!=b.A.LOADED)return;const I=n.getBuilder(i.getZIndex(),"Image");I.setImageStyle(R,_),I.drawPoint(e,a,g)}if(l){const I=n.getBuilder(i.getZIndex(),"Text");I.setTextStyle(h,_),I.drawText(e,a,g)}}function u(n,e,i,a,g,m){const R=i.getImage(),h=R&&R.getOpacity()!==0,l=i.getText(),_=l&&l.getText(),I=m&&h&&_?{}:void 0;if(h){if(R.getImageState()!=b.A.LOADED)return;const T=n.getBuilder(i.getZIndex(),"Image");T.setImageStyle(R,I),T.drawMultiPoint(e,a,g)}if(_){const T=n.getBuilder(i.getZIndex(),"Text");T.setTextStyle(l,I),T.drawText(e,a,g)}}function c(n,e,i,a,g){const m=i.getFill(),R=i.getStroke();if(m||R){const l=n.getBuilder(i.getZIndex(),"Polygon");l.setFillStrokeStyle(m,R),l.drawPolygon(e,a,g)}const h=i.getText();if(h&&h.getText()){const l=n.getBuilder(i.getZIndex(),"Text");l.setTextStyle(h),l.drawText(e,a,g)}}},75332:(gt,q,o)=>{o.d(q,{A:()=>b});const b={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"}},77727:(gt,q,o)=>{o.d(q,{tF:()=>P,_7:()=>D,F8:()=>u});var b=o(66514),y=o(68711),B=o(70915),W=o(61597),v=o(82922),C=o(49700),d=o(99676),A=o(62096),O=o(87622),x=o(9703),M=o(32826),t=o(38774);class s extends M.A{constructor(n,e,i,a,g,m,R){super(),this.context_=n,this.pixelRatio_=e,this.extent_=i,this.transform_=a,this.transformRotation_=a?(0,W.Mg)(Math.atan2(a[1],a[0]),10):0,this.viewRotation_=g,this.squaredTolerance_=m,this.userTransform_=R,this.contextFillState_=null,this.contextStrokeState_=null,this.contextTextState_=null,this.fillState_=null,this.strokeState_=null,this.image_=null,this.imageAnchorX_=0,this.imageAnchorY_=0,this.imageHeight_=0,this.imageOpacity_=0,this.imageOriginX_=0,this.imageOriginY_=0,this.imageRotateWithView_=!1,this.imageRotation_=0,this.imageScale_=[0,0],this.imageWidth_=0,this.text_="",this.textOffsetX_=0,this.textOffsetY_=0,this.textRotateWithView_=!1,this.textRotation_=0,this.textScale_=[0,0],this.textFillState_=null,this.textStrokeState_=null,this.textState_=null,this.pixelCoordinates_=[],this.tmpLocalTransform_=(0,x.vt)()}drawImages_(n,e,i,a){if(!this.image_)return;const g=(0,O.Rc)(n,e,i,a,this.transform_,this.pixelCoordinates_),m=this.context_,R=this.tmpLocalTransform_,h=m.globalAlpha;this.imageOpacity_!=1&&(m.globalAlpha=h*this.imageOpacity_);let l=this.imageRotation_;this.transformRotation_===0&&(l-=this.viewRotation_),this.imageRotateWithView_&&(l+=this.viewRotation_);for(let _=0,I=g.length;_<I;_+=2){const T=g[_]-this.imageAnchorX_,w=g[_+1]-this.imageAnchorY_;if(l!==0||this.imageScale_[0]!=1||this.imageScale_[1]!=1){const p=T+this.imageAnchorX_,E=w+this.imageAnchorY_;(0,x.Zz)(R,p,E,1,1,l,-p,-E),m.save(),m.transform.apply(m,R),m.translate(p,E),m.scale(this.imageScale_[0],this.imageScale_[1]),m.drawImage(this.image_,this.imageOriginX_,this.imageOriginY_,this.imageWidth_,this.imageHeight_,-this.imageAnchorX_,-this.imageAnchorY_,this.imageWidth_,this.imageHeight_),m.restore()}else m.drawImage(this.image_,this.imageOriginX_,this.imageOriginY_,this.imageWidth_,this.imageHeight_,T,w,this.imageWidth_,this.imageHeight_)}this.imageOpacity_!=1&&(m.globalAlpha=h)}drawText_(n,e,i,a){if(!this.textState_||this.text_==="")return;this.textFillState_&&this.setContextFillState_(this.textFillState_),this.textStrokeState_&&this.setContextStrokeState_(this.textStrokeState_),this.setContextTextState_(this.textState_);const g=(0,O.Rc)(n,e,i,a,this.transform_,this.pixelCoordinates_),m=this.context_;let R=this.textRotation_;for(this.transformRotation_===0&&(R-=this.viewRotation_),this.textRotateWithView_&&(R+=this.viewRotation_);e<i;e+=a){const h=g[e]+this.textOffsetX_,l=g[e+1]+this.textOffsetY_;R!==0||this.textScale_[0]!=1||this.textScale_[1]!=1?(m.save(),m.translate(h-this.textOffsetX_,l-this.textOffsetY_),m.rotate(R),m.translate(this.textOffsetX_,this.textOffsetY_),m.scale(this.textScale_[0],this.textScale_[1]),this.textStrokeState_&&m.strokeText(this.text_,0,0),this.textFillState_&&m.fillText(this.text_,0,0),m.restore()):(this.textStrokeState_&&m.strokeText(this.text_,h,l),this.textFillState_&&m.fillText(this.text_,h,l))}}moveToLineTo_(n,e,i,a,g){const m=this.context_,R=(0,O.Rc)(n,e,i,a,this.transform_,this.pixelCoordinates_);m.moveTo(R[0],R[1]);let h=R.length;g&&(h-=2);for(let l=2;l<h;l+=2)m.lineTo(R[l],R[l+1]);return g&&m.closePath(),i}drawRings_(n,e,i,a){for(let g=0,m=i.length;g<m;++g)e=this.moveToLineTo_(n,e,i[g],a,!0);return e}drawCircle(n){if(this.squaredTolerance_&&(n=n.simplifyTransformed(this.squaredTolerance_,this.userTransform_)),!!(0,B.HY)(this.extent_,n.getExtent())){if(this.fillState_||this.strokeState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);const e=(0,A.v7)(n,this.transform_,this.pixelCoordinates_),i=e[2]-e[0],a=e[3]-e[1],g=Math.sqrt(i*i+a*a),m=this.context_;m.beginPath(),m.arc(e[0],e[1],g,0,2*Math.PI),this.fillState_&&m.fill(),this.strokeState_&&m.stroke()}this.text_!==""&&this.drawText_(n.getCenter(),0,2,2)}}setStyle(n){this.setFillStrokeStyle(n.getFill(),n.getStroke()),this.setImageStyle(n.getImage()),this.setTextStyle(n.getText())}setTransform(n){this.transform_=n}drawGeometry(n){switch(n.getType()){case"Point":this.drawPoint(n);break;case"LineString":this.drawLineString(n);break;case"Polygon":this.drawPolygon(n);break;case"MultiPoint":this.drawMultiPoint(n);break;case"MultiLineString":this.drawMultiLineString(n);break;case"MultiPolygon":this.drawMultiPolygon(n);break;case"GeometryCollection":this.drawGeometryCollection(n);break;case"Circle":this.drawCircle(n);break;default:}}drawFeature(n,e){const i=e.getGeometryFunction()(n);i&&(this.setStyle(e),this.drawGeometry(i))}drawGeometryCollection(n){const e=n.getGeometriesArray();for(let i=0,a=e.length;i<a;++i)this.drawGeometry(e[i])}drawPoint(n){this.squaredTolerance_&&(n=n.simplifyTransformed(this.squaredTolerance_,this.userTransform_));const e=n.getFlatCoordinates(),i=n.getStride();this.image_&&this.drawImages_(e,0,e.length,i),this.text_!==""&&this.drawText_(e,0,e.length,i)}drawMultiPoint(n){this.squaredTolerance_&&(n=n.simplifyTransformed(this.squaredTolerance_,this.userTransform_));const e=n.getFlatCoordinates(),i=n.getStride();this.image_&&this.drawImages_(e,0,e.length,i),this.text_!==""&&this.drawText_(e,0,e.length,i)}drawLineString(n){if(this.squaredTolerance_&&(n=n.simplifyTransformed(this.squaredTolerance_,this.userTransform_)),!!(0,B.HY)(this.extent_,n.getExtent())){if(this.strokeState_){this.setContextStrokeState_(this.strokeState_);const e=this.context_,i=n.getFlatCoordinates();e.beginPath(),this.moveToLineTo_(i,0,i.length,n.getStride(),!1),e.stroke()}if(this.text_!==""){const e=n.getFlatMidpoint();this.drawText_(e,0,2,2)}}}drawMultiLineString(n){this.squaredTolerance_&&(n=n.simplifyTransformed(this.squaredTolerance_,this.userTransform_));const e=n.getExtent();if((0,B.HY)(this.extent_,e)){if(this.strokeState_){this.setContextStrokeState_(this.strokeState_);const i=this.context_,a=n.getFlatCoordinates();let g=0;const m=n.getEnds(),R=n.getStride();i.beginPath();for(let h=0,l=m.length;h<l;++h)g=this.moveToLineTo_(a,g,m[h],R,!1);i.stroke()}if(this.text_!==""){const i=n.getFlatMidpoints();this.drawText_(i,0,i.length,2)}}}drawPolygon(n){if(this.squaredTolerance_&&(n=n.simplifyTransformed(this.squaredTolerance_,this.userTransform_)),!!(0,B.HY)(this.extent_,n.getExtent())){if(this.strokeState_||this.fillState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);const e=this.context_;e.beginPath(),this.drawRings_(n.getOrientedFlatCoordinates(),0,n.getEnds(),n.getStride()),this.fillState_&&e.fill(),this.strokeState_&&e.stroke()}if(this.text_!==""){const e=n.getFlatInteriorPoint();this.drawText_(e,0,2,2)}}}drawMultiPolygon(n){if(this.squaredTolerance_&&(n=n.simplifyTransformed(this.squaredTolerance_,this.userTransform_)),!!(0,B.HY)(this.extent_,n.getExtent())){if(this.strokeState_||this.fillState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);const e=this.context_,i=n.getOrientedFlatCoordinates();let a=0;const g=n.getEndss(),m=n.getStride();e.beginPath();for(let R=0,h=g.length;R<h;++R){const l=g[R];a=this.drawRings_(i,a,l,m)}this.fillState_&&e.fill(),this.strokeState_&&e.stroke()}if(this.text_!==""){const e=n.getFlatInteriorPoints();this.drawText_(e,0,e.length,2)}}}setContextFillState_(n){const e=this.context_,i=this.contextFillState_;i?i.fillStyle!=n.fillStyle&&(i.fillStyle=n.fillStyle,e.fillStyle=n.fillStyle):(e.fillStyle=n.fillStyle,this.contextFillState_={fillStyle:n.fillStyle})}setContextStrokeState_(n){const e=this.context_,i=this.contextStrokeState_;i?(i.lineCap!=n.lineCap&&(i.lineCap=n.lineCap,e.lineCap=n.lineCap),(0,b.aI)(i.lineDash,n.lineDash)||e.setLineDash(i.lineDash=n.lineDash),i.lineDashOffset!=n.lineDashOffset&&(i.lineDashOffset=n.lineDashOffset,e.lineDashOffset=n.lineDashOffset),i.lineJoin!=n.lineJoin&&(i.lineJoin=n.lineJoin,e.lineJoin=n.lineJoin),i.lineWidth!=n.lineWidth&&(i.lineWidth=n.lineWidth,e.lineWidth=n.lineWidth),i.miterLimit!=n.miterLimit&&(i.miterLimit=n.miterLimit,e.miterLimit=n.miterLimit),i.strokeStyle!=n.strokeStyle&&(i.strokeStyle=n.strokeStyle,e.strokeStyle=n.strokeStyle)):(e.lineCap=n.lineCap,e.setLineDash(n.lineDash),e.lineDashOffset=n.lineDashOffset,e.lineJoin=n.lineJoin,e.lineWidth=n.lineWidth,e.miterLimit=n.miterLimit,e.strokeStyle=n.strokeStyle,this.contextStrokeState_={lineCap:n.lineCap,lineDash:n.lineDash,lineDashOffset:n.lineDashOffset,lineJoin:n.lineJoin,lineWidth:n.lineWidth,miterLimit:n.miterLimit,strokeStyle:n.strokeStyle})}setContextTextState_(n){const e=this.context_,i=this.contextTextState_,a=n.textAlign?n.textAlign:t.MY;i?(i.font!=n.font&&(i.font=n.font,e.font=n.font),i.textAlign!=a&&(i.textAlign=a,e.textAlign=a),i.textBaseline!=n.textBaseline&&(i.textBaseline=n.textBaseline,e.textBaseline=n.textBaseline)):(e.font=n.font,e.textAlign=a,e.textBaseline=n.textBaseline,this.contextTextState_={font:n.font,textAlign:a,textBaseline:n.textBaseline})}setFillStrokeStyle(n,e){if(!n)this.fillState_=null;else{const i=n.getColor();this.fillState_={fillStyle:(0,d.F)(i||t.qY)}}if(!e)this.strokeState_=null;else{const i=e.getColor(),a=e.getLineCap(),g=e.getLineDash(),m=e.getLineDashOffset(),R=e.getLineJoin(),h=e.getWidth(),l=e.getMiterLimit(),_=g||t.Oq;this.strokeState_={lineCap:a!==void 0?a:t._m,lineDash:this.pixelRatio_===1?_:_.map(I=>I*this.pixelRatio_),lineDashOffset:(m||t.vk)*this.pixelRatio_,lineJoin:R!==void 0?R:t._K,lineWidth:(h!==void 0?h:t.aq)*this.pixelRatio_,miterLimit:l!==void 0?l:t.eL,strokeStyle:(0,d.F)(i||t.NT)}}}setImageStyle(n){let e;if(!n||!(e=n.getSize())){this.image_=null;return}const i=n.getPixelRatio(this.pixelRatio_),a=n.getAnchor(),g=n.getOrigin();this.image_=n.getImage(this.pixelRatio_),this.imageAnchorX_=a[0]*i,this.imageAnchorY_=a[1]*i,this.imageHeight_=e[1]*i,this.imageOpacity_=n.getOpacity(),this.imageOriginX_=g[0],this.imageOriginY_=g[1],this.imageRotateWithView_=n.getRotateWithView(),this.imageRotation_=n.getRotation();const m=n.getScaleArray();this.imageScale_=[m[0]*this.pixelRatio_/i,m[1]*this.pixelRatio_/i],this.imageWidth_=e[0]*i}setTextStyle(n){if(!n)this.text_="";else{const e=n.getFill();if(!e)this.textFillState_=null;else{const w=e.getColor();this.textFillState_={fillStyle:(0,d.F)(w||t.qY)}}const i=n.getStroke();if(!i)this.textStrokeState_=null;else{const w=i.getColor(),p=i.getLineCap(),E=i.getLineDash(),f=i.getLineDashOffset(),S=i.getLineJoin(),N=i.getWidth(),K=i.getMiterLimit();this.textStrokeState_={lineCap:p!==void 0?p:t._m,lineDash:E||t.Oq,lineDashOffset:f||t.vk,lineJoin:S!==void 0?S:t._K,lineWidth:N!==void 0?N:t.aq,miterLimit:K!==void 0?K:t.eL,strokeStyle:(0,d.F)(w||t.NT)}}const a=n.getFont(),g=n.getOffsetX(),m=n.getOffsetY(),R=n.getRotateWithView(),h=n.getRotation(),l=n.getScaleArray(),_=n.getText(),I=n.getTextAlign(),T=n.getTextBaseline();this.textState_={font:a!==void 0?a:t.ZV,textAlign:I!==void 0?I:t.MY,textBaseline:T!==void 0?T:t.M8},this.text_=_!==void 0?Array.isArray(_)?_.reduce((w,p,E)=>w+=E%2?" ":p,""):_:"",this.textOffsetX_=g!==void 0?this.pixelRatio_*g:0,this.textOffsetY_=m!==void 0?this.pixelRatio_*m:0,this.textRotateWithView_=R!==void 0?R:!1,this.textRotation_=h!==void 0?h:0,this.textScale_=[this.pixelRatio_*l[0],this.pixelRatio_*l[1]]}}}const r=s,P=.5;function D(c,n,e,i,a,g,m,R,h){const l=h?(0,v.JR)(a,h):a,_=c[0]*P,I=c[1]*P,T=(0,y.Y)(_,I);T.imageSmoothingEnabled=!1;const w=T.canvas,p=new r(T,P,a,null,m,R,h?(0,v.FO)((0,v.Tf)(),h):null),E=e.length,f=Math.floor((256*256*256-1)/E),S={};for(let K=1;K<=E;++K){const H=e[K-1],Y=H.getStyleFunction()||i;if(!Y)continue;let st=Y(H,g);if(!st)continue;Array.isArray(st)||(st=[st]);const L=(K*f).toString(16).padStart(7,"#00000");for(let j=0,it=st.length;j<it;++j){const k=st[j],Q=k.getGeometryFunction()(H);if(!Q||!(0,B.HY)(l,Q.getExtent()))continue;const nt=k.clone(),tt=nt.getFill();tt&&tt.setColor(L);const at=nt.getStroke();at&&(at.setColor(L),at.setLineDash(null)),nt.setText(void 0);const ht=k.getImage();if(ht){const z=ht.getImageSize();if(!z)continue;const G=(0,y.Y)(z[0],z[1],void 0,{alpha:!1}),Z=G.canvas;G.fillStyle=L,G.fillRect(0,0,Z.width,Z.height),nt.setImage(new C.A({img:Z,anchor:ht.getAnchor(),anchorXUnits:"pixels",anchorYUnits:"pixels",offset:ht.getOrigin(),opacity:1,size:ht.getSize(),scale:ht.getScale(),rotation:ht.getRotation(),rotateWithView:ht.getRotateWithView()}))}const ft=nt.getZIndex()||0;let vt=S[ft];vt||(vt={},S[ft]=vt,vt.Polygon=[],vt.Circle=[],vt.LineString=[],vt.Point=[]);const Tt=Q.getType();if(Tt==="GeometryCollection"){const z=Q.getGeometriesArrayRecursive();for(let G=0,Z=z.length;G<Z;++G){const ut=z[G];vt[ut.getType().replace("Multi","")].push(ut,nt)}}else vt[Tt.replace("Multi","")].push(Q,nt)}}const N=Object.keys(S).map(Number).sort(b.V_);for(let K=0,H=N.length;K<H;++K){const Y=S[N[K]];for(const st in Y){const X=Y[st];for(let L=0,j=X.length;L<j;L+=2){p.setStyle(X[L+1]);for(let it=0,k=n.length;it<k;++it)p.setTransform(n[it]),p.drawGeometry(X[L])}}}return T.getImageData(0,0,w.width,w.height)}function u(c,n,e){const i=[];if(e){const a=Math.floor(Math.round(c[0])*P),g=Math.floor(Math.round(c[1])*P),m=((0,W.qE)(a,0,e.width-1)+(0,W.qE)(g,0,e.height-1)*e.width)*4,R=e.data[m],h=e.data[m+1],_=e.data[m+2]+256*(h+256*R),I=Math.floor((256*256*256-1)/n.length);_&&_%I===0&&i.push(n[_/I-1])}return i}},81426:(gt,q,o)=>{o.d(q,{A:()=>v});var b=o(6782),y=o(13628);const B="#333";class W{constructor(d){d=d||{},this.font_=d.font,this.rotation_=d.rotation,this.rotateWithView_=d.rotateWithView,this.keepUpright_=d.keepUpright,this.scale_=d.scale,this.scaleArray_=(0,b.xq)(d.scale!==void 0?d.scale:1),this.text_=d.text,this.textAlign_=d.textAlign,this.justify_=d.justify,this.repeat_=d.repeat,this.textBaseline_=d.textBaseline,this.fill_=d.fill!==void 0?d.fill:new y.A({color:B}),this.maxAngle_=d.maxAngle!==void 0?d.maxAngle:Math.PI/4,this.placement_=d.placement!==void 0?d.placement:"point",this.overflow_=!!d.overflow,this.stroke_=d.stroke!==void 0?d.stroke:null,this.offsetX_=d.offsetX!==void 0?d.offsetX:0,this.offsetY_=d.offsetY!==void 0?d.offsetY:0,this.backgroundFill_=d.backgroundFill?d.backgroundFill:null,this.backgroundStroke_=d.backgroundStroke?d.backgroundStroke:null,this.padding_=d.padding===void 0?null:d.padding,this.declutterMode_=d.declutterMode}clone(){const d=this.getScale();return new W({font:this.getFont(),placement:this.getPlacement(),repeat:this.getRepeat(),maxAngle:this.getMaxAngle(),overflow:this.getOverflow(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),keepUpright:this.getKeepUpright(),scale:Array.isArray(d)?d.slice():d,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,declutterMode:this.getDeclutterMode()})}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_}getKeepUpright(){return this.keepUpright_}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_}getDeclutterMode(){return this.declutterMode_}setOverflow(d){this.overflow_=d}setFont(d){this.font_=d}setMaxAngle(d){this.maxAngle_=d}setOffsetX(d){this.offsetX_=d}setOffsetY(d){this.offsetY_=d}setPlacement(d){this.placement_=d}setRepeat(d){this.repeat_=d}setRotateWithView(d){this.rotateWithView_=d}setKeepUpright(d){this.keepUpright_=d}setFill(d){this.fill_=d}setRotation(d){this.rotation_=d}setScale(d){this.scale_=d,this.scaleArray_=(0,b.xq)(d!==void 0?d:1)}setStroke(d){this.stroke_=d}setText(d){this.text_=d}setTextAlign(d){this.textAlign_=d}setJustify(d){this.justify_=d}setTextBaseline(d){this.textBaseline_=d}setBackgroundFill(d){this.backgroundFill_=d}setBackgroundStroke(d){this.backgroundStroke_=d}setPadding(d){this.padding_=d}}const v=W},82187:(gt,q,o)=>{o.d(q,{A:()=>b});const b={ACTIVE:"active"}},82241:(gt,q,o)=>{o.d(q,{ue:()=>d});var b=o(6141),y=o(89352),B=o(68711);class W{constructor(){this.cache_={},this.patternCache_={},this.cacheSize_=0,this.maxCacheSize_=1024}clear(){this.cache_={},this.patternCache_={},this.cacheSize_=0}canExpireCache(){return this.cacheSize_>this.maxCacheSize_}expire(){if(this.canExpireCache()){let O=0;for(const x in this.cache_){const M=this.cache_[x];(O++&3)===0&&!M.hasListener()&&(delete this.cache_[x],delete this.patternCache_[x],--this.cacheSize_)}}}get(O,x,M){const t=v(O,x,M);return t in this.cache_?this.cache_[t]:null}getPattern(O,x,M){const t=v(O,x,M);return t in this.patternCache_?this.patternCache_[t]:null}set(O,x,M,t,s){const r=v(O,x,M),P=r in this.cache_;this.cache_[r]=t,s&&(t.getImageState()===b.A.IDLE&&t.load(),t.getImageState()===b.A.LOADING?t.ready().then(()=>{this.patternCache_[r]=(0,B.lr)().createPattern(t.getImage(1),"repeat")}):this.patternCache_[r]=(0,B.lr)().createPattern(t.getImage(1),"repeat")),P||++this.cacheSize_}setSize(O){this.maxCacheSize_=O,this.expire()}}function v(A,O,x){const M=x?(0,y._j)(x):"null";return O+":"+A+":"+M}var C=null;const d=new W},82585:(gt,q,o)=>{o.d(q,{A:()=>b});const b={POSTRENDER:"postrender",MOVESTART:"movestart",MOVEEND:"moveend",LOADSTART:"loadstart",LOADEND:"loadend"}},82986:(gt,q,o)=>{o.d(q,{A:()=>W});var b=o(32348),y=o(94720);class B extends y.A{constructor(C){super(C)}createRenderer(){return new b.A(this)}}const W=B},83954:(gt,q,o)=>{o.d(q,{Z1:()=>y,vt:()=>b});function b(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function y(d,A){return d[0]=A[0],d[1]=A[1],d[4]=A[2],d[5]=A[3],d[12]=A[4],d[13]=A[5],d}function B(d,A,O,x,M,t,s){s=s??b();const r=1/(d-A),P=1/(O-x),D=1/(M-t);return s[0]=-2*r,s[1]=0,s[2]=0,s[3]=0,s[4]=0,s[5]=-2*P,s[6]=0,s[7]=0,s[8]=0,s[9]=0,s[10]=2*D,s[11]=0,s[12]=(d+A)*r,s[13]=(x+O)*P,s[14]=(t+M)*D,s[15]=1,s}function W(d,A,O,x,M){return M=M??b(),M[0]=d[0]*A,M[1]=d[1]*A,M[2]=d[2]*A,M[3]=d[3]*A,M[4]=d[4]*O,M[5]=d[5]*O,M[6]=d[6]*O,M[7]=d[7]*O,M[8]=d[8]*x,M[9]=d[9]*x,M[10]=d[10]*x,M[11]=d[11]*x,M[12]=d[12],M[13]=d[13],M[14]=d[14],M[15]=d[15],M}function v(d,A,O,x,M){M=M??b();let t,s,r,P,D,u,c,n,e,i,a,g;return d===M?(M[12]=d[0]*A+d[4]*O+d[8]*x+d[12],M[13]=d[1]*A+d[5]*O+d[9]*x+d[13],M[14]=d[2]*A+d[6]*O+d[10]*x+d[14],M[15]=d[3]*A+d[7]*O+d[11]*x+d[15]):(t=d[0],s=d[1],r=d[2],P=d[3],D=d[4],u=d[5],c=d[6],n=d[7],e=d[8],i=d[9],a=d[10],g=d[11],M[0]=t,M[1]=s,M[2]=r,M[3]=P,M[4]=D,M[5]=u,M[6]=c,M[7]=n,M[8]=e,M[9]=i,M[10]=a,M[11]=g,M[12]=t*A+D*O+e*x+d[12],M[13]=s*A+u*O+i*x+d[13],M[14]=r*A+c*O+a*x+d[14],M[15]=P*A+n*O+g*x+d[15]),M}function C(d,A,O,x){return x=x??b(),x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=d,x[13]=A,x[14]=O,x[15]=1,x}},83984:(gt,q,o)=>{o.d(q,{A:()=>b});const b={PRERENDER:"prerender",POSTRENDER:"postrender",PRECOMPOSE:"precompose",POSTCOMPOSE:"postcompose",RENDERCOMPLETE:"rendercomplete"}},86936:(gt,q,o)=>{o.d(q,{A:()=>x});var b=o(6141),y=o(89352),B=o(99676),W=o(68711),v=o(38774),C=o(97907),d=o(82241),A=o(10940);class O extends A.A{constructor(t){super({opacity:1,rotateWithView:t.rotateWithView!==void 0?t.rotateWithView:!1,rotation:t.rotation!==void 0?t.rotation:0,scale:t.scale!==void 0?t.scale:1,displacement:t.displacement!==void 0?t.displacement:[0,0],declutterMode:t.declutterMode}),this.hitDetectionCanvas_=null,this.fill_=t.fill!==void 0?t.fill:null,this.origin_=[0,0],this.points_=t.points,this.radius=t.radius,this.radius2_=t.radius2,this.angle_=t.angle!==void 0?t.angle:0,this.stroke_=t.stroke!==void 0?t.stroke:null,this.size_,this.renderOptions_,this.imageState_=this.fill_&&this.fill_.loading()?b.A.LOADING:b.A.LOADED,this.imageState_===b.A.LOADING&&this.ready().then(()=>this.imageState_=b.A.LOADED),this.render()}clone(){const t=this.getScale(),s=new O({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(t)?t.slice():t,displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()});return s.setOpacity(this.getOpacity()),s}getAnchor(){const t=this.size_,s=this.getDisplacement(),r=this.getScaleArray();return[t[0]/2-s[0]/r[0],t[1]/2+s[1]/r[1]]}getAngle(){return this.angle_}getFill(){return this.fill_}setFill(t){this.fill_=t,this.render()}getHitDetectionImage(){return this.hitDetectionCanvas_||(this.hitDetectionCanvas_=this.createHitDetectionCanvas_(this.renderOptions_)),this.hitDetectionCanvas_}getImage(t){const s=this.fill_?.getKey(),r=`${t},${this.angle_},${this.radius},${this.radius2_},${this.points_},${s}`+Object.values(this.renderOptions_).join(",");let P=d.ue.get(r,null,null)?.getImage(1);if(!P){const D=this.renderOptions_,u=Math.ceil(D.size*t),c=(0,W.Y)(u,u);this.draw_(D,c,t),P=c.canvas,d.ue.set(r,null,null,new C.A(P,void 0,null,b.A.LOADED,null))}return P}getPixelRatio(t){return t}getImageSize(){return this.size_}getImageState(){return this.imageState_}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(t){this.stroke_=t,this.render()}listenImageChange(t){}load(){}unlistenImageChange(t){}calculateLineJoinSize_(t,s,r){if(s===0||this.points_===1/0||t!=="bevel"&&t!=="miter")return s;let P=this.radius,D=this.radius2_===void 0?P:this.radius2_;if(P<D){const E=P;P=D,D=E}const u=this.radius2_===void 0?this.points_:this.points_*2,c=2*Math.PI/u,n=D*Math.sin(c),e=Math.sqrt(D*D-n*n),i=P-e,a=Math.sqrt(n*n+i*i),g=a/n;if(t==="miter"&&g<=r)return g*s;const m=s/2/g,R=s/2*(i/a),l=Math.sqrt((P+m)*(P+m)+R*R)-P;if(this.radius2_===void 0||t==="bevel")return l*2;const _=P*Math.sin(c),I=Math.sqrt(P*P-_*_),T=D-I,p=Math.sqrt(_*_+T*T)/_;if(p<=r){const E=p*s/2-D-P;return 2*Math.max(l,E)}return l*2}createRenderOptions(){let t=v._m,s=v._K,r=0,P=null,D=0,u,c=0;this.stroke_&&(u=(0,B.F)(this.stroke_.getColor()??v.NT),c=this.stroke_.getWidth()??v.aq,P=this.stroke_.getLineDash(),D=this.stroke_.getLineDashOffset()??0,s=this.stroke_.getLineJoin()??v._K,t=this.stroke_.getLineCap()??v._m,r=this.stroke_.getMiterLimit()??v.eL);const n=this.calculateLineJoinSize_(s,c,r),e=Math.max(this.radius,this.radius2_||0),i=Math.ceil(2*e+n);return{strokeStyle:u,strokeWidth:c,size:i,lineCap:t,lineDash:P,lineDashOffset:D,lineJoin:s,miterLimit:r}}render(){this.renderOptions_=this.createRenderOptions();const t=this.renderOptions_.size;this.hitDetectionCanvas_=null,this.size_=[t,t]}draw_(t,s,r){if(s.scale(r,r),s.translate(t.size/2,t.size/2),this.createPath_(s),this.fill_){let P=this.fill_.getColor();P===null&&(P=v.qY),s.fillStyle=(0,B.F)(P),s.fill()}t.strokeStyle&&(s.strokeStyle=t.strokeStyle,s.lineWidth=t.strokeWidth,t.lineDash&&(s.setLineDash(t.lineDash),s.lineDashOffset=t.lineDashOffset),s.lineCap=t.lineCap,s.lineJoin=t.lineJoin,s.miterLimit=t.miterLimit,s.stroke())}createHitDetectionCanvas_(t){let s;if(this.fill_){let r=this.fill_.getColor(),P=0;typeof r=="string"&&(r=(0,y._j)(r)),r===null?P=1:Array.isArray(r)&&(P=r.length===4?r[3]:1),P===0&&(s=(0,W.Y)(t.size,t.size),this.drawHitDetectionCanvas_(t,s))}return s?s.canvas:this.getImage(1)}createPath_(t){let s=this.points_;const r=this.radius;if(s===1/0)t.arc(0,0,r,0,2*Math.PI);else{const P=this.radius2_===void 0?r:this.radius2_;this.radius2_!==void 0&&(s*=2);const D=this.angle_-Math.PI/2,u=2*Math.PI/s;for(let c=0;c<s;c++){const n=D+c*u,e=c%2===0?r:P;t.lineTo(e*Math.cos(n),e*Math.sin(n))}t.closePath()}}drawHitDetectionCanvas_(t,s){s.translate(t.size/2,t.size/2),this.createPath_(s),s.fillStyle=v.qY,s.fill(),t.strokeStyle&&(s.strokeStyle=t.strokeStyle,s.lineWidth=t.strokeWidth,t.lineDash&&(s.setLineDash(t.lineDash),s.lineDashOffset=t.lineDashOffset),s.lineJoin=t.lineJoin,s.miterLimit=t.miterLimit,s.stroke())}ready(){return this.fill_?this.fill_.ready():Promise.resolve()}}const x=O},87579:(gt,q,o)=>{o.d(q,{A:()=>B});var b=o(1685);class y extends b.Ay{constructor(v,C,d,A){super(v),this.inversePixelTransform=C,this.frameState=d,this.context=A}}const B=y},88280:(gt,q,o)=>{o.d(q,{A:()=>b});const b={ADDFEATURE:"addfeature",CHANGEFEATURE:"changefeature",CLEAR:"clear",REMOVEFEATURE:"removefeature",FEATURESLOADSTART:"featuresloadstart",FEATURESLOADEND:"featuresloadend",FEATURESLOADERROR:"featuresloaderror"}},88751:(gt,q,o)=>{o.d(q,{A:()=>A});var b=o(6837),y=o(58704),B=o(61597),W=o(6292);const v=40,C=300;class d extends W.Ay{constructor(x){x=x||{},super(x),this.totalDelta_=0,this.lastDelta_=0,this.maxDelta_=x.maxDelta!==void 0?x.maxDelta:1,this.duration_=x.duration!==void 0?x.duration:250,this.timeout_=x.timeout!==void 0?x.timeout:80,this.useAnchor_=x.useAnchor!==void 0?x.useAnchor:!0,this.constrainResolution_=x.constrainResolution!==void 0?x.constrainResolution:!1;const M=x.condition?x.condition:y.Gk;this.condition_=x.onFocusOnly?(0,y.Q7)(y.eL,M):M,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 x=this.getMap();if(!x)return;x.getView().endInteraction(void 0,this.lastDelta_?this.lastDelta_>0?1:-1:0,this.lastAnchor_?x.getCoordinateFromPixel(this.lastAnchor_):null)}handleEvent(x){if(!this.condition_(x)||x.type!==b.A.WHEEL)return!0;const t=x.map,s=x.originalEvent;s.preventDefault(),this.useAnchor_&&(this.lastAnchor_=x.pixel);let r=s.deltaY;switch(s.deltaMode){case WheelEvent.DOM_DELTA_LINE:r*=v;break;case WheelEvent.DOM_DELTA_PAGE:r*=C;break;default:}if(r===0)return!1;this.lastDelta_=r;const P=Date.now();this.startTime_===void 0&&(this.startTime_=P),(!this.mode_||P-this.startTime_>this.trackpadEventGap_)&&(this.mode_=Math.abs(r)<4?"trackpad":"wheel");const D=t.getView();if(this.mode_==="trackpad"&&!(D.getConstrainResolution()||this.constrainResolution_))return this.trackpadTimeoutId_?clearTimeout(this.trackpadTimeoutId_):(D.getAnimating()&&D.cancelAnimations(),D.beginInteraction()),this.trackpadTimeoutId_=setTimeout(this.endInteraction_.bind(this),this.timeout_),D.adjustZoom(-r/this.deltaPerZoom_,this.lastAnchor_?t.getCoordinateFromPixel(this.lastAnchor_):null),this.startTime_=P,!1;this.totalDelta_+=r;const u=Math.max(this.timeout_-(P-this.startTime_),0);return clearTimeout(this.timeoutId_),this.timeoutId_=setTimeout(this.handleWheelZoom_.bind(this,t),u),!1}handleWheelZoom_(x){const M=x.getView();M.getAnimating()&&M.cancelAnimations();let t=-(0,B.qE)(this.totalDelta_,-this.maxDelta_*this.deltaPerZoom_,this.maxDelta_*this.deltaPerZoom_)/this.deltaPerZoom_;(M.getConstrainResolution()||this.constrainResolution_)&&(t=t?t>0?1:-1:0),(0,W.D2)(M,t,this.lastAnchor_?x.getCoordinateFromPixel(this.lastAnchor_):null,this.duration_),this.mode_=void 0,this.totalDelta_=0,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_=void 0}setMouseAnchor(x){this.useAnchor_=x,x||(this.lastAnchor_=null)}}const A=d},89352:(gt,q,o)=>{o.d(q,{_j:()=>R,cD:()=>g,dI:()=>h,eE:()=>a,fu:()=>u,oJ:()=>s,qV:()=>B,sH:()=>m});var b=o(68711),y=o(61597);const B=[NaN,NaN,NaN,0];let W;function v(){return W||(W=(0,b.Y)(1,1,void 0,{willReadFrequently:!0,desynchronized:!0})),W}const C=/^rgba?\(\s*(\d+%?)\s+(\d+%?)\s+(\d+%?)(?:\s*\/\s*(\d+%|\d*\.\d+|[01]))?\s*\)$/i,d=/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)(?:\s*,\s*(\d+%|\d*\.\d+|[01]))?\s*\)$/i,A=/^rgba?\(\s*(\d+%)\s*,\s*(\d+%)\s*,\s*(\d+%)(?:\s*,\s*(\d+%|\d*\.\d+|[01]))?\s*\)$/i,O=/^#([\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$/i;function x(_,I){return _.endsWith("%")?Number(_.substring(0,_.length-1))/I:Number(_)}function M(_){throw new Error('failed to parse "'+_+'" as color')}function t(_){if(_.toLowerCase().startsWith("rgb")){const E=_.match(d)||_.match(C)||_.match(A);if(E){const f=E[4],S=100/255;return[(0,y.qE)(x(E[1],S)+.5|0,0,255),(0,y.qE)(x(E[2],S)+.5|0,0,255),(0,y.qE)(x(E[3],S)+.5|0,0,255),f!==void 0?(0,y.qE)(x(f,100),0,1):1]}M(_)}if(_.startsWith("#")){if(O.test(_)){const E=_.substring(1),f=E.length<=4?1:2,S=[0,0,0,255];for(let N=0,K=E.length;N<K;N+=f){let H=parseInt(E.substring(N,N+f),16);f===1&&(H+=H<<4),S[N/f]=H}return S[3]=S[3]/255,S}M(_)}const I=v();I.fillStyle="#abcdef";let T=I.fillStyle;I.fillStyle=_,I.fillStyle===T&&(I.fillStyle="#fedcba",T=I.fillStyle,I.fillStyle=_,I.fillStyle===T&&M(_));const w=I.fillStyle;if(w.startsWith("#")||w.startsWith("rgba"))return t(w);I.clearRect(0,0,1,1),I.fillRect(0,0,1,1);const p=Array.from(I.getImageData(0,0,1,1).data);return p[3]=(0,y.Mg)(p[3]/255,3),p}function s(_){return typeof _=="string"?_:h(_)}const r=1024,P={};let D=0;function u(_){if(_.length===4)return _;const I=_.slice();return I[3]=1,I}function c(_){return _>.0031308?Math.pow(_,1/2.4)*269.025-14.025:_*3294.6}function n(_){return _>.2068965?Math.pow(_,3):(_-4/29)*(108/841)}function e(_){return _>10.314724?Math.pow((_+14.025)/269.025,2.4):_/3294.6}function i(_){return _>.0088564?Math.pow(_,1/3):_/(108/841)+4/29}function a(_){const I=e(_[0]),T=e(_[1]),w=e(_[2]),p=i(I*.222488403+T*.716873169+w*.06060791),E=500*(i(I*.452247074+T*.399439023+w*.148375274)-p),f=200*(p-i(I*.016863605+T*.117638439+w*.865350722)),S=Math.atan2(f,E)*(180/Math.PI);return[116*p-16,Math.sqrt(E*E+f*f),S<0?S+360:S,_[3]]}function g(_){const I=(_[0]+16)/116,T=_[1],w=_[2]*Math.PI/180,p=n(I),E=n(I+T/500*Math.cos(w)),f=n(I-T/200*Math.sin(w)),S=c(E*3.021973625-p*1.617392459-f*.404875592),N=c(E*-.943766287+p*1.916279586+f*.027607165),K=c(E*.069407491-p*.22898585+f*1.159737864);return[(0,y.qE)(S+.5|0,0,255),(0,y.qE)(N+.5|0,0,255),(0,y.qE)(K+.5|0,0,255),_[3]]}function m(_){if(_==="none")return B;if(P.hasOwnProperty(_))return P[_];if(D>=r){let T=0;for(const w in P)(T++&3)===0&&(delete P[w],--D)}const I=t(_);I.length!==4&&M(_);for(const T of I)isNaN(T)&&M(_);return P[_]=I,++D,I}function R(_){return Array.isArray(_)?_:m(_)}function h(_){let I=_[0];I!=(I|0)&&(I=I+.5|0);let T=_[1];T!=(T|0)&&(T=T+.5|0);let w=_[2];w!=(w|0)&&(w=w+.5|0);const p=_[3]===void 0?1:Math.round(_[3]*1e3)/1e3;return"rgba("+I+","+T+","+w+","+p+")"}function l(_){try{return m(_),!0}catch{return!1}}},89940:(gt,q,o)=>{o.d(q,{A:()=>W});var b=o(66514);const y=new Uint8Array(4);class B{constructor(C,d){this.helper_=C;const A=C.getGL();this.texture_=A.createTexture(),this.framebuffer_=A.createFramebuffer(),this.depthbuffer_=A.createRenderbuffer(),this.size_=d||[1,1],this.data_=new Uint8Array(0),this.dataCacheDirty_=!0,this.updateSize_()}setSize(C){(0,b.aI)(C,this.size_)||(this.size_[0]=C[0],this.size_[1]=C[1],this.updateSize_())}getSize(){return this.size_}clearCachedData(){this.dataCacheDirty_=!0}readAll(){if(this.dataCacheDirty_){const C=this.size_,d=this.helper_.getGL();d.bindFramebuffer(d.FRAMEBUFFER,this.framebuffer_),d.readPixels(0,0,C[0],C[1],d.RGBA,d.UNSIGNED_BYTE,this.data_),this.dataCacheDirty_=!1}return this.data_}readPixel(C,d){if(C<0||d<0||C>this.size_[0]||d>=this.size_[1])return y[0]=0,y[1]=0,y[2]=0,y[3]=0,y;this.readAll();const A=Math.floor(C)+(this.size_[1]-Math.floor(d)-1)*this.size_[0];return y[0]=this.data_[A*4],y[1]=this.data_[A*4+1],y[2]=this.data_[A*4+2],y[3]=this.data_[A*4+3],y}getTexture(){return this.texture_}getFramebuffer(){return this.framebuffer_}getDepthbuffer(){return this.depthbuffer_}updateSize_(){const C=this.size_,d=this.helper_.getGL();this.texture_=this.helper_.createTexture(C,null,this.texture_),d.bindFramebuffer(d.FRAMEBUFFER,this.framebuffer_),d.viewport(0,0,C[0],C[1]),d.framebufferTexture2D(d.FRAMEBUFFER,d.COLOR_ATTACHMENT0,d.TEXTURE_2D,this.texture_,0),d.bindRenderbuffer(d.RENDERBUFFER,this.depthbuffer_),d.renderbufferStorage(d.RENDERBUFFER,d.DEPTH_COMPONENT16,C[0],C[1]),d.framebufferRenderbuffer(d.FRAMEBUFFER,d.DEPTH_ATTACHMENT,d.RENDERBUFFER,this.depthbuffer_),this.data_=new Uint8Array(C[0]*C[1]*4)}}const W=B},90130:(gt,q,o)=>{o.d(q,{Be:()=>C,Ek:()=>v,H7:()=>y,IP:()=>B,JL:()=>A,SD:()=>t,Ss:()=>W,UD:()=>O,l4:()=>d,zH:()=>x});var b=o(7771);const y=34962,B=34963,W=35040,v=35044,C=35048,d=5121,A=5123,O=5125,x=5126,M=["experimental-webgl","webgl","webkit-3d","moz-webgl"];function t(P,D){D=Object.assign({preserveDrawingBuffer:!0,antialias:!b.oF},D);const u=M.length;for(let c=0;c<u;++c)try{const n=P.getContext(M[c],D);if(n)return n}catch{}return null}let s=null;function r(){if(!s){const P=document.createElement("canvas"),D=t(P);D&&(s=D.getSupportedExtensions())}return s}},91110:(gt,q,o)=>{o.d(q,{A:()=>B,N:()=>y});class b{constructor(v,C,d,A){this.minX=v,this.maxX=C,this.minY=d,this.maxY=A}contains(v){return this.containsXY(v[1],v[2])}containsTileRange(v){return this.minX<=v.minX&&v.maxX<=this.maxX&&this.minY<=v.minY&&v.maxY<=this.maxY}containsXY(v,C){return this.minX<=v&&v<=this.maxX&&this.minY<=C&&C<=this.maxY}equals(v){return this.minX==v.minX&&this.minY==v.minY&&this.maxX==v.maxX&&this.maxY==v.maxY}extend(v){v.minX<this.minX&&(this.minX=v.minX),v.maxX>this.maxX&&(this.maxX=v.maxX),v.minY<this.minY&&(this.minY=v.minY),v.maxY>this.maxY&&(this.maxY=v.maxY)}getHeight(){return this.maxY-this.minY+1}getSize(){return[this.getWidth(),this.getHeight()]}getWidth(){return this.maxX-this.minX+1}intersects(v){return this.minX<=v.maxX&&this.maxX>=v.minX&&this.minY<=v.maxY&&this.maxY>=v.minY}}function y(W,v,C,d,A){return A!==void 0?(A.minX=W,A.maxX=v,A.minY=C,A.maxY=d,A):new b(W,v,C,d)}const B=b},91765:(gt,q,o)=>{o.d(q,{Ay:()=>T});var b=o(34120),y=o(62703);const B={CENTER:"center",RESOLUTION:"resolution",ROTATION:"rotation"};var W=o(66514),v=o(90588),C=o(61597);function d(w,p,E){return function(f,S,N,K,H){if(!f)return;if(!S&&!p)return f;const Y=p?0:N[0]*S,st=p?0:N[1]*S,X=H?H[0]:0,L=H?H[1]:0;let j=w[0]+Y/2+X,it=w[2]-Y/2+X,k=w[1]+st/2+L,Q=w[3]-st/2+L;j>it&&(j=(it+j)/2,it=j),k>Q&&(k=(Q+k)/2,Q=k);let nt=(0,C.qE)(f[0],j,it),tt=(0,C.qE)(f[1],k,Q);if(K&&E&&S){const at=30*S;nt+=-at*Math.log(1+Math.max(0,j-f[0])/at)+at*Math.log(1+Math.max(0,f[0]-it)/at),tt+=-at*Math.log(1+Math.max(0,k-f[1])/at)+at*Math.log(1+Math.max(0,f[1]-Q)/at)}return[nt,tt]}}function A(w){return w}var O=o(6933),x=o(93474),M=o(70915),t=o(74238),s=o(71064),r=o(82922);function P(w,p,E,f){const S=(0,M.RG)(p)/E[0],N=(0,M.Oq)(p)/E[1];return f?Math.min(w,Math.max(S,N)):Math.min(w,Math.min(S,N))}function D(w,p,E){let f=Math.min(w,p);const S=50;return f*=Math.log(1+S*Math.max(0,w/p-1))/S+1,E&&(f=Math.max(f,E),f/=Math.log(1+S*Math.max(0,E/w-1))/S+1),(0,C.qE)(f,E/2,p*2)}function u(w,p,E,f){return p=p!==void 0?p:!0,function(S,N,K,H){if(S!==void 0){const Y=w[0],st=w[w.length-1],X=E?P(Y,E,K,f):Y;if(H)return p?D(S,X,st):(0,C.qE)(S,st,X);const L=Math.min(X,S),j=Math.floor((0,W.FT)(w,L,N));return w[j]>X&&j<w.length-1?w[j+1]:w[j]}}}function c(w,p,E,f,S,N){return f=f!==void 0?f:!0,E=E!==void 0?E:0,function(K,H,Y,st){if(K!==void 0){const X=S?P(p,S,Y,N):p;if(st)return f?D(K,X,E):(0,C.qE)(K,E,X);const L=1e-9,j=Math.ceil(Math.log(p/X)/Math.log(w)-L),it=-H*(.5-L)+.5,k=Math.min(X,K),Q=Math.floor(Math.log(p/k)/Math.log(w)+it),nt=Math.max(j,Q),tt=p/Math.pow(w,nt);return(0,C.qE)(tt,E,X)}}}function n(w,p,E,f,S){return E=E!==void 0?E:!0,function(N,K,H,Y){if(N!==void 0){const st=f?P(w,f,H,S):w;return!E||!Y?(0,C.qE)(N,p,st):D(N,st,p)}}}var e=o(24498),i=o(57115);const a=0;class g extends b.A{constructor(p){super(),this.on,this.once,this.un,p=Object.assign({},p),this.hints_=[0,0],this.animations_=[],this.updateAnimationKey_,this.projection_=(0,r.Av)(p.projection,"EPSG:3857"),this.viewportSize_=[100,100],this.targetCenter_=null,this.targetResolution_,this.targetRotation_,this.nextCenter_=null,this.nextResolution_,this.nextRotation_,this.cancelAnchor_=void 0,p.projection&&(0,r.RJ)(),p.center&&(p.center=(0,r.Ad)(p.center,this.projection_)),p.extent&&(p.extent=(0,r.SD)(p.extent,this.projection_)),this.applyOptions_(p)}applyOptions_(p){const E=Object.assign({},p);for(const H in B)delete E[H];this.setProperties(E,!0);const f=h(p);this.maxResolution_=f.maxResolution,this.minResolution_=f.minResolution,this.zoomFactor_=f.zoomFactor,this.resolutions_=p.resolutions,this.padding_=p.padding,this.minZoom_=f.minZoom;const S=R(p),N=f.constraint,K=l(p);this.constraints_={center:S,resolution:N,rotation:K},this.setRotation(p.rotation!==void 0?p.rotation:0),this.setCenterInternal(p.center!==void 0?p.center:null),p.resolution!==void 0?this.setResolution(p.resolution):p.zoom!==void 0&&this.setZoom(p.zoom)}get padding(){return this.padding_}set padding(p){let E=this.padding_;this.padding_=p;const f=this.getCenterInternal();if(f){const S=p||[0,0,0,0];E=E||[0,0,0,0];const N=this.getResolution(),K=N/2*(S[3]-E[3]+E[1]-S[1]),H=N/2*(S[0]-E[0]+E[2]-S[2]);this.setCenterInternal([f[0]+K,f[1]-H])}}getUpdatedOptions_(p){const E=this.getProperties();return E.resolution!==void 0?E.resolution=this.getResolution():E.zoom=this.getZoom(),E.center=this.getCenterInternal(),E.rotation=this.getRotation(),Object.assign({},E,p)}animate(p){this.isDef()&&!this.getAnimating()&&this.resolveConstraints(0);const E=new Array(arguments.length);for(let f=0;f<E.length;++f){let S=arguments[f];S.center&&(S=Object.assign({},S),S.center=(0,r.Ad)(S.center,this.getProjection())),S.anchor&&(S=Object.assign({},S),S.anchor=(0,r.Ad)(S.anchor,this.getProjection())),E[f]=S}this.animateInternal.apply(this,E)}animateInternal(p){let E=arguments.length,f;E>1&&typeof arguments[E-1]=="function"&&(f=arguments[E-1],--E);let S=0;for(;S<E&&!this.isDef();++S){const X=arguments[S];X.center&&this.setCenterInternal(X.center),X.zoom!==void 0?this.setZoom(X.zoom):X.resolution&&this.setResolution(X.resolution),X.rotation!==void 0&&this.setRotation(X.rotation)}if(S===E){f&&m(f,!0);return}let N=Date.now(),K=this.targetCenter_.slice(),H=this.targetResolution_,Y=this.targetRotation_;const st=[];for(;S<E;++S){const X=arguments[S],L={start:N,complete:!1,anchor:X.anchor,duration:X.duration!==void 0?X.duration:1e3,easing:X.easing||x.T9,callback:f};if(X.center&&(L.sourceCenter=K,L.targetCenter=X.center.slice(),K=L.targetCenter),X.zoom!==void 0?(L.sourceResolution=H,L.targetResolution=this.getResolutionForZoom(X.zoom),H=L.targetResolution):X.resolution&&(L.sourceResolution=H,L.targetResolution=X.resolution,H=L.targetResolution),X.rotation!==void 0){L.sourceRotation=Y;const j=(0,C.xP)(X.rotation-Y+Math.PI,2*Math.PI)-Math.PI;L.targetRotation=Y+j,Y=L.targetRotation}_(L)?L.complete=!0:N+=L.duration,st.push(L)}this.animations_.push(st),this.setHint(y.A.ANIMATING,1),this.updateAnimations_()}getAnimating(){return this.hints_[y.A.ANIMATING]>0}getInteracting(){return this.hints_[y.A.INTERACTING]>0}cancelAnimations(){this.setHint(y.A.ANIMATING,-this.hints_[y.A.ANIMATING]);let p;for(let E=0,f=this.animations_.length;E<f;++E){const S=this.animations_[E];if(S[0].callback&&m(S[0].callback,!1),!p)for(let N=0,K=S.length;N<K;++N){const H=S[N];if(!H.complete){p=H.anchor;break}}}this.animations_.length=0,this.cancelAnchor_=p,this.nextCenter_=null,this.nextResolution_=NaN,this.nextRotation_=NaN}updateAnimations_(){if(this.updateAnimationKey_!==void 0&&(cancelAnimationFrame(this.updateAnimationKey_),this.updateAnimationKey_=void 0),!this.getAnimating())return;const p=Date.now();let E=!1;for(let f=this.animations_.length-1;f>=0;--f){const S=this.animations_[f];let N=!0;for(let K=0,H=S.length;K<H;++K){const Y=S[K];if(Y.complete)continue;const st=p-Y.start;let X=Y.duration>0?st/Y.duration:1;X>=1?(Y.complete=!0,X=1):N=!1;const L=Y.easing(X);if(Y.sourceCenter){const j=Y.sourceCenter[0],it=Y.sourceCenter[1],k=Y.targetCenter[0],Q=Y.targetCenter[1];this.nextCenter_=Y.targetCenter;const nt=j+L*(k-j),tt=it+L*(Q-it);this.targetCenter_=[nt,tt]}if(Y.sourceResolution&&Y.targetResolution){const j=L===1?Y.targetResolution:Y.sourceResolution+L*(Y.targetResolution-Y.sourceResolution);if(Y.anchor){const it=this.getViewportSize_(this.getRotation()),k=this.constraints_.resolution(j,0,it,!0);this.targetCenter_=this.calculateCenterZoom(k,Y.anchor)}this.nextResolution_=Y.targetResolution,this.targetResolution_=j,this.applyTargetState_(!0)}if(Y.sourceRotation!==void 0&&Y.targetRotation!==void 0){const j=L===1?(0,C.xP)(Y.targetRotation+Math.PI,2*Math.PI)-Math.PI:Y.sourceRotation+L*(Y.targetRotation-Y.sourceRotation);if(Y.anchor){const it=this.constraints_.rotation(j,!0);this.targetCenter_=this.calculateCenterRotate(it,Y.anchor)}this.nextRotation_=Y.targetRotation,this.targetRotation_=j}if(this.applyTargetState_(!0),E=!0,!Y.complete)break}if(N){this.animations_[f]=null,this.setHint(y.A.ANIMATING,-1),this.nextCenter_=null,this.nextResolution_=NaN,this.nextRotation_=NaN;const K=S[0].callback;K&&m(K,!0)}}this.animations_=this.animations_.filter(Boolean),E&&this.updateAnimationKey_===void 0&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_.bind(this)))}calculateCenterRotate(p,E){let f;const S=this.getCenterInternal();return S!==void 0&&(f=[S[0]-E[0],S[1]-E[1]],(0,O.e$)(f,p-this.getRotation()),(0,O.WQ)(f,E)),f}calculateCenterZoom(p,E){let f;const S=this.getCenterInternal(),N=this.getResolution();if(S!==void 0&&N!==void 0){const K=E[0]-p*(E[0]-S[0])/N,H=E[1]-p*(E[1]-S[1])/N;f=[K,H]}return f}getViewportSize_(p){const E=this.viewportSize_;if(p){const f=E[0],S=E[1];return[Math.abs(f*Math.cos(p))+Math.abs(S*Math.sin(p)),Math.abs(f*Math.sin(p))+Math.abs(S*Math.cos(p))]}return E}setViewportSize(p){this.viewportSize_=Array.isArray(p)?p.slice():[100,100],this.getAnimating()||this.resolveConstraints(0)}getCenter(){const p=this.getCenterInternal();return p&&(0,r.te)(p,this.getProjection())}getCenterInternal(){return this.get(B.CENTER)}getConstraints(){return this.constraints_}getConstrainResolution(){return this.get("constrainResolution")}getHints(p){return p!==void 0?(p[0]=this.hints_[0],p[1]=this.hints_[1],p):this.hints_.slice()}calculateExtent(p){const E=this.calculateExtentInternal(p);return(0,r.JR)(E,this.getProjection())}calculateExtentInternal(p){p=p||this.getViewportSizeMinusPadding_();const E=this.getCenterInternal();(0,v.v)(E,"The view center is not defined");const f=this.getResolution();(0,v.v)(f!==void 0,"The view resolution is not defined");const S=this.getRotation();return(0,v.v)(S!==void 0,"The view rotation is not defined"),(0,M.Bg)(E,f,S,p)}getMaxResolution(){return this.maxResolution_}getMinResolution(){return this.minResolution_}getMaxZoom(){return this.getZoomForResolution(this.minResolution_)}setMaxZoom(p){this.applyOptions_(this.getUpdatedOptions_({maxZoom:p}))}getMinZoom(){return this.getZoomForResolution(this.maxResolution_)}setMinZoom(p){this.applyOptions_(this.getUpdatedOptions_({minZoom:p}))}setConstrainResolution(p){this.applyOptions_(this.getUpdatedOptions_({constrainResolution:p}))}getProjection(){return this.projection_}getResolution(){return this.get(B.RESOLUTION)}getResolutions(){return this.resolutions_}getResolutionForExtent(p,E){return this.getResolutionForExtentInternal((0,r.SD)(p,this.getProjection()),E)}getResolutionForExtentInternal(p,E){E=E||this.getViewportSizeMinusPadding_();const f=(0,M.RG)(p)/E[0],S=(0,M.Oq)(p)/E[1];return Math.max(f,S)}getResolutionForValueFunction(p){p=p||2;const E=this.getConstrainedResolution(this.maxResolution_),f=this.minResolution_,S=Math.log(E/f)/Math.log(p);return function(N){return E/Math.pow(p,N*S)}}getRotation(){return this.get(B.ROTATION)}getValueForResolutionFunction(p){const E=Math.log(p||2),f=this.getConstrainedResolution(this.maxResolution_),S=this.minResolution_,N=Math.log(f/S)/E;return function(K){return Math.log(f/K)/E/N}}getViewportSizeMinusPadding_(p){let E=this.getViewportSize_(p);const f=this.padding_;return f&&(E=[E[0]-f[1]-f[3],E[1]-f[0]-f[2]]),E}getState(){const p=this.getProjection(),E=this.getResolution(),f=this.getRotation();let S=this.getCenterInternal();const N=this.padding_;if(N){const K=this.getViewportSizeMinusPadding_();S=I(S,this.getViewportSize_(),[K[0]/2+N[3],K[1]/2+N[0]],E,f)}return{center:S.slice(0),projection:p!==void 0?p:null,resolution:E,nextCenter:this.nextCenter_,nextResolution:this.nextResolution_,nextRotation:this.nextRotation_,rotation:f,zoom:this.getZoom()}}getViewStateAndExtent(){return{viewState:this.getState(),extent:this.calculateExtent()}}getZoom(){let p;const E=this.getResolution();return E!==void 0&&(p=this.getZoomForResolution(E)),p}getZoomForResolution(p){let E=this.minZoom_||0,f,S;if(this.resolutions_){const N=(0,W.FT)(this.resolutions_,p,1);E=N,f=this.resolutions_[N],N==this.resolutions_.length-1?S=2:S=f/this.resolutions_[N+1]}else f=this.maxResolution_,S=this.zoomFactor_;return E+Math.log(f/p)/Math.log(S)}getResolutionForZoom(p){if(this.resolutions_?.length){if(this.resolutions_.length===1)return this.resolutions_[0];const E=(0,C.qE)(Math.floor(p),0,this.resolutions_.length-2),f=this.resolutions_[E]/this.resolutions_[E+1];return this.resolutions_[E]/Math.pow(f,(0,C.qE)(p-E,0,1))}return this.maxResolution_/Math.pow(this.zoomFactor_,p-this.minZoom_)}fit(p,E){let f;if((0,v.v)(Array.isArray(p)||typeof p.getSimplifiedGeometry=="function","Invalid extent or geometry provided as `geometry`"),Array.isArray(p)){(0,v.v)(!(0,M.Im)(p),"Cannot fit empty extent provided as `geometry`");const S=(0,r.SD)(p,this.getProjection());f=(0,s.VY)(S)}else if(p.getType()==="Circle"){const S=(0,r.SD)(p.getExtent(),this.getProjection());f=(0,s.VY)(S),f.rotate(this.getRotation(),(0,M.q1)(S))}else{const S=(0,r.Tf)();S?f=p.clone().transform(S,this.getProjection()):f=p}this.fitInternal(f,E)}rotatedExtentForGeometry(p){const E=this.getRotation(),f=Math.cos(E),S=Math.sin(-E),N=p.getFlatCoordinates(),K=p.getStride();let H=1/0,Y=1/0,st=-1/0,X=-1/0;for(let L=0,j=N.length;L<j;L+=K){const it=N[L]*f-N[L+1]*S,k=N[L]*S+N[L+1]*f;H=Math.min(H,it),Y=Math.min(Y,k),st=Math.max(st,it),X=Math.max(X,k)}return[H,Y,st,X]}fitInternal(p,E){E=E||{};let f=E.size;f||(f=this.getViewportSizeMinusPadding_());const S=E.padding!==void 0?E.padding:[0,0,0,0],N=E.nearest!==void 0?E.nearest:!1;let K;E.minResolution!==void 0?K=E.minResolution:E.maxZoom!==void 0?K=this.getResolutionForZoom(E.maxZoom):K=0;const H=this.rotatedExtentForGeometry(p);let Y=this.getResolutionForExtentInternal(H,[f[0]-S[1]-S[3],f[1]-S[0]-S[2]]);Y=isNaN(Y)?K:Math.max(Y,K),Y=this.getConstrainedResolution(Y,N?0:1);const st=this.getRotation(),X=Math.sin(st),L=Math.cos(st),j=(0,M.q1)(H);j[0]+=(S[1]-S[3])/2*Y,j[1]+=(S[0]-S[2])/2*Y;const it=j[0]*L-j[1]*X,k=j[1]*L+j[0]*X,Q=this.getConstrainedCenter([it,k],Y),nt=E.callback?E.callback:t.tV;E.duration!==void 0?this.animateInternal({resolution:Y,center:Q,duration:E.duration,easing:E.easing},nt):(this.targetResolution_=Y,this.targetCenter_=Q,this.applyTargetState_(!1,!0),m(nt,!0))}centerOn(p,E,f){this.centerOnInternal((0,r.Ad)(p,this.getProjection()),E,f)}centerOnInternal(p,E,f){this.setCenterInternal(I(p,E,f,this.getResolution(),this.getRotation()))}calculateCenterShift(p,E,f,S){let N;const K=this.padding_;if(K&&p){const H=this.getViewportSizeMinusPadding_(-f),Y=I(p,S,[H[0]/2+K[3],H[1]/2+K[0]],E,f);N=[p[0]-Y[0],p[1]-Y[1]]}return N}isDef(){return!!this.getCenterInternal()&&this.getResolution()!==void 0}adjustCenter(p){const E=(0,r.te)(this.targetCenter_,this.getProjection());this.setCenter([E[0]+p[0],E[1]+p[1]])}adjustCenterInternal(p){const E=this.targetCenter_;this.setCenterInternal([E[0]+p[0],E[1]+p[1]])}adjustResolution(p,E){E=E&&(0,r.Ad)(E,this.getProjection()),this.adjustResolutionInternal(p,E)}adjustResolutionInternal(p,E){const f=this.getAnimating()||this.getInteracting(),S=this.getViewportSize_(this.getRotation()),N=this.constraints_.resolution(this.targetResolution_*p,0,S,f);E&&(this.targetCenter_=this.calculateCenterZoom(N,E)),this.targetResolution_*=p,this.applyTargetState_()}adjustZoom(p,E){this.adjustResolution(Math.pow(this.zoomFactor_,-p),E)}adjustRotation(p,E){E&&(E=(0,r.Ad)(E,this.getProjection())),this.adjustRotationInternal(p,E)}adjustRotationInternal(p,E){const f=this.getAnimating()||this.getInteracting(),S=this.constraints_.rotation(this.targetRotation_+p,f);E&&(this.targetCenter_=this.calculateCenterRotate(S,E)),this.targetRotation_+=p,this.applyTargetState_()}setCenter(p){this.setCenterInternal(p&&(0,r.Ad)(p,this.getProjection()))}setCenterInternal(p){this.targetCenter_=p,this.applyTargetState_()}setHint(p,E){return this.hints_[p]+=E,this.changed(),this.hints_[p]}setResolution(p){this.targetResolution_=p,this.applyTargetState_()}setRotation(p){this.targetRotation_=p,this.applyTargetState_()}setZoom(p){this.setResolution(this.getResolutionForZoom(p))}applyTargetState_(p,E){const f=this.getAnimating()||this.getInteracting()||E,S=this.constraints_.rotation(this.targetRotation_,f),N=this.getViewportSize_(S),K=this.constraints_.resolution(this.targetResolution_,0,N,f),H=this.constraints_.center(this.targetCenter_,K,N,f,this.calculateCenterShift(this.targetCenter_,K,S,N));this.get(B.ROTATION)!==S&&this.set(B.ROTATION,S),this.get(B.RESOLUTION)!==K&&(this.set(B.RESOLUTION,K),this.set("zoom",this.getZoom(),!0)),(!H||!this.get(B.CENTER)||!(0,O.aI)(this.get(B.CENTER),H))&&this.set(B.CENTER,H),this.getAnimating()&&!p&&this.cancelAnimations(),this.cancelAnchor_=void 0}resolveConstraints(p,E,f){p=p!==void 0?p:200;const S=E||0,N=this.constraints_.rotation(this.targetRotation_),K=this.getViewportSize_(N),H=this.constraints_.resolution(this.targetResolution_,S,K),Y=this.constraints_.center(this.targetCenter_,H,K,!1,this.calculateCenterShift(this.targetCenter_,H,N,K));if(p===0&&!this.cancelAnchor_){this.targetResolution_=H,this.targetRotation_=N,this.targetCenter_=Y,this.applyTargetState_();return}f=f||(p===0?this.cancelAnchor_:void 0),this.cancelAnchor_=void 0,(this.getResolution()!==H||this.getRotation()!==N||!this.getCenterInternal()||!(0,O.aI)(this.getCenterInternal(),Y))&&(this.getAnimating()&&this.cancelAnimations(),this.animateInternal({rotation:N,center:Y,resolution:H,duration:p,easing:x.vT,anchor:f}))}beginInteraction(){this.resolveConstraints(0),this.setHint(y.A.INTERACTING,1)}endInteraction(p,E,f){f=f&&(0,r.Ad)(f,this.getProjection()),this.endInteractionInternal(p,E,f)}endInteractionInternal(p,E,f){this.getInteracting()&&(this.setHint(y.A.INTERACTING,-1),this.resolveConstraints(p,E,f))}getConstrainedCenter(p,E){const f=this.getViewportSize_(this.getRotation());return this.constraints_.center(p,E||this.getResolution(),f)}getConstrainedZoom(p,E){const f=this.getResolutionForZoom(p);return this.getZoomForResolution(this.getConstrainedResolution(f,E))}getConstrainedResolution(p,E){E=E||0;const f=this.getViewportSize_(this.getRotation());return this.constraints_.resolution(p,E,f)}}function m(w,p){setTimeout(function(){w(p)},0)}function R(w){if(w.extent!==void 0){const E=w.smoothExtentConstraint!==void 0?w.smoothExtentConstraint:!0;return d(w.extent,w.constrainOnlyCenter,E)}const p=(0,r.Av)(w.projection,"EPSG:3857");if(w.multiWorld!==!0&&p.isGlobal()){const E=p.getExtent().slice();return E[0]=-1/0,E[2]=1/0,d(E,!1,!1)}return A}function h(w){let p,E,f,K=w.minZoom!==void 0?w.minZoom:a,H=w.maxZoom!==void 0?w.maxZoom:28;const Y=w.zoomFactor!==void 0?w.zoomFactor:2,st=w.multiWorld!==void 0?w.multiWorld:!1,X=w.smoothResolutionConstraint!==void 0?w.smoothResolutionConstraint:!0,L=w.showFullExtent!==void 0?w.showFullExtent:!1,j=(0,r.Av)(w.projection,"EPSG:3857"),it=j.getExtent();let k=w.constrainOnlyCenter,Q=w.extent;if(!st&&!Q&&j.isGlobal()&&(k=!1,Q=it),w.resolutions!==void 0){const nt=w.resolutions;E=nt[K],f=nt[H]!==void 0?nt[H]:nt[nt.length-1],w.constrainResolution?p=u(nt,X,!k&&Q,L):p=n(E,f,X,!k&&Q,L)}else{const tt=(it?Math.max((0,M.RG)(it),(0,M.Oq)(it)):360*r.Ig.degrees/j.getMetersPerUnit())/i.R/Math.pow(2,a),at=tt/Math.pow(2,28-a);E=w.maxResolution,E!==void 0?K=0:E=tt/Math.pow(Y,K),f=w.minResolution,f===void 0&&(w.maxZoom!==void 0?w.maxResolution!==void 0?f=E/Math.pow(Y,H):f=tt/Math.pow(Y,H):f=at),H=K+Math.floor(Math.log(E/f)/Math.log(Y)),f=E/Math.pow(Y,H-K),w.constrainResolution?p=c(Y,E,f,X,!k&&Q,L):p=n(E,f,X,!k&&Q,L)}return{constraint:p,maxResolution:E,minResolution:f,minZoom:K,zoomFactor:Y}}function l(w){if(w.enableRotation!==void 0?w.enableRotation:!0){const E=w.constrainRotation;return E===void 0||E===!0?(0,e.cq)():E===!1?e.dv:typeof E=="number"?(0,e.a$)(E):e.dv}return e.b8}function _(w){return!(w.sourceCenter&&w.targetCenter&&!(0,O.aI)(w.sourceCenter,w.targetCenter)||w.sourceResolution!==w.targetResolution||w.sourceRotation!==w.targetRotation)}function I(w,p,E,f,S){const N=Math.cos(-S);let K=Math.sin(-S),H=w[0]*N-w[1]*K,Y=w[1]*N+w[0]*K;H+=(p[0]/2-E[0])*f,Y+=(E[1]-p[1]/2)*f,K=-K;const st=H*N-Y*K,X=Y*N+H*K;return[st,X]}const T=g},92780:(gt,q,o)=>{o.d(q,{A:()=>d});var b=o(24029),y=o(60764),B=o(45360);class W extends y.A{constructor(O){O=O||{};const x=Object.assign({},O),M=O.cacheSize;delete O.cacheSize,delete x.preload,delete x.useInterimTilesOnError,super(x),this.on,this.once,this.un,this.cacheSize_=M,this.setPreload(O.preload!==void 0?O.preload:0),this.setUseInterimTilesOnError(O.useInterimTilesOnError!==void 0?O.useInterimTilesOnError:!0)}getCacheSize(){return this.cacheSize_}getPreload(){return this.get(B.A.PRELOAD)}setPreload(O){this.set(B.A.PRELOAD,O)}getUseInterimTilesOnError(){return this.get(B.A.USE_INTERIM_TILES_ON_ERROR)}setUseInterimTilesOnError(O){this.set(B.A.USE_INTERIM_TILES_ON_ERROR,O)}getData(O){return super.getData(O)}}const v=W;class C extends v{constructor(O){super(O)}createRenderer(){return new b.A(this,{cacheSize:this.getCacheSize()})}}const d=C},93101:(gt,q,o)=>{o.d(q,{l:()=>b});const b=.5},93474:(gt,q,o)=>{o.d(q,{T9:()=>B,a6:()=>b,sn:()=>W,vT:()=>y});function b(C){return Math.pow(C,3)}function y(C){return 1-b(1-C)}function B(C){return 3*C*C-2*C*C*C}function W(C){return C}function v(C){return C<.5?B(2*C):1-B(2*(C-.5))}},94720:(gt,q,o)=>{o.d(q,{A:()=>Tt});var b=o(42375),y=o(89352),B=o(409),W=o(49825),v=o(43530),C=o(6782),d=o(27733),A=o(13628),O=o(49700),x=o(86936),M=o(953),t=o(29276),s=o(81426);function r(z){return!0}function P(z){const G=(0,W.SR)(),Z=u(z,G),ut=(0,B.A)();return function(ot,F){if(ut.properties=ot.getPropertiesInternal(),ut.resolution=F,G.featureId){const $=ot.getId();$!==void 0?ut.featureId=$:ut.featureId=null}return G.geometryType&&(ut.geometryType=(0,W.Ye)(ot.getGeometry())),Z(ut)}}function D(z){const G=(0,W.SR)(),Z=z.length,ut=new Array(Z);for(let $=0;$<Z;++$)ut[$]=c(z[$],G);const ot=(0,B.A)(),F=new Array(Z);return function($,et){if(ot.properties=$.getPropertiesInternal(),ot.resolution=et,G.featureId){const ct=$.getId();ct!==void 0?ot.featureId=ct:ot.featureId=null}let rt=0;for(let ct=0;ct<Z;++ct){const Et=ut[ct](ot);Et&&(F[rt]=Et,rt+=1)}return F.length=rt,F}}function u(z,G){const Z=z.length,ut=new Array(Z);for(let ot=0;ot<Z;++ot){const F=z[ot],$="filter"in F?(0,B.n)(F.filter,W.T8,G):r;let et;if(Array.isArray(F.style)){const rt=F.style.length;et=new Array(rt);for(let ct=0;ct<rt;++ct)et[ct]=c(F.style[ct],G)}else et=[c(F.style,G)];ut[ot]={filter:$,styles:et}}return function(ot){const F=[];let $=!1;for(let et=0;et<Z;++et){const rt=ut[et].filter;if(rt(ot)&&!(z[et].else&&$)){$=!0;for(const ct of ut[et].styles){const Et=ct(ot);Et&&F.push(Et)}}}return F}}function c(z,G){const Z=n(z,"",G),ut=e(z,"",G),ot=i(z,G),F=a(z,G),$=h(z,"z-index",G);if(!Z&&!ut&&!ot&&!F&&!(0,v.p)(z))throw new Error("No fill, stroke, point, or text symbolizer properties in style: "+JSON.stringify(z));const et=new t.Ay;return function(rt){let ct=!0;if(Z){const Et=Z(rt);Et&&(ct=!1),et.setFill(Et)}if(ut){const Et=ut(rt);Et&&(ct=!1),et.setStroke(Et)}if(ot){const Et=ot(rt);Et&&(ct=!1),et.setText(Et)}if(F){const Et=F(rt);Et&&(ct=!1),et.setImage(Et)}return $&&et.setZIndex($(rt)),ct?null:et}}function n(z,G,Z){let ut;if(G+"fill-pattern-src"in z)ut=_(z,G+"fill-",Z);else{if(z[G+"fill-color"]==="none")return F=>null;ut=T(z,G+"fill-color",Z)}if(!ut)return null;const ot=new A.A;return function(F){const $=ut(F);return $===y.qV?null:(ot.setColor($),ot)}}function e(z,G,Z){const ut=h(z,G+"stroke-width",Z),ot=T(z,G+"stroke-color",Z);if(!ut&&!ot)return null;const F=l(z,G+"stroke-line-cap",Z),$=l(z,G+"stroke-line-join",Z),et=w(z,G+"stroke-line-dash",Z),rt=h(z,G+"stroke-line-dash-offset",Z),ct=h(z,G+"stroke-miter-limit",Z),Et=new M.A;return function(Rt){if(ot){const _t=ot(Rt);if(_t===y.qV)return null;Et.setColor(_t)}if(ut&&Et.setWidth(ut(Rt)),F){const _t=F(Rt);if(_t!=="butt"&&_t!=="round"&&_t!=="square")throw new Error("Expected butt, round, or square line cap");Et.setLineCap(_t)}if($){const _t=$(Rt);if(_t!=="bevel"&&_t!=="round"&&_t!=="miter")throw new Error("Expected bevel, round, or miter line join");Et.setLineJoin(_t)}return et&&Et.setLineDash(et(Rt)),rt&&Et.setLineDashOffset(rt(Rt)),ct&&Et.setMiterLimit(ct(Rt)),Et}}function i(z,G){const Z="text-",ut=l(z,Z+"value",G);if(!ut)return null;const ot=n(z,Z,G),F=n(z,Z+"background-",G),$=e(z,Z,G),et=e(z,Z+"background-",G),rt=l(z,Z+"font",G),ct=h(z,Z+"max-angle",G),Et=h(z,Z+"offset-x",G),Rt=h(z,Z+"offset-y",G),_t=I(z,Z+"overflow",G),Ot=l(z,Z+"placement",G),wt=h(z,Z+"repeat",G),V=f(z,Z+"scale",G),U=I(z,Z+"rotate-with-view",G),J=h(z,Z+"rotation",G),lt=l(z,Z+"align",G),mt=l(z,Z+"justify",G),xt=l(z,Z+"baseline",G),pt=I(z,Z+"keep-upright",G),Ct=w(z,Z+"padding",G),Pt=X(z,Z+"declutter-mode"),dt=new s.A({declutterMode:Pt});return function(At){if(dt.setText(ut(At)),ot&&dt.setFill(ot(At)),F&&dt.setBackgroundFill(F(At)),$&&dt.setStroke($(At)),et&&dt.setBackgroundStroke(et(At)),rt&&dt.setFont(rt(At)),ct&&dt.setMaxAngle(ct(At)),Et&&dt.setOffsetX(Et(At)),Rt&&dt.setOffsetY(Rt(At)),_t&&dt.setOverflow(_t(At)),Ot){const yt=Ot(At);if(yt!=="point"&&yt!=="line")throw new Error("Expected point or line for text-placement");dt.setPlacement(yt)}if(wt&&dt.setRepeat(wt(At)),V&&dt.setScale(V(At)),U&&dt.setRotateWithView(U(At)),J&&dt.setRotation(J(At)),lt){const yt=lt(At);if(yt!=="left"&&yt!=="center"&&yt!=="right"&&yt!=="end"&&yt!=="start")throw new Error("Expected left, right, center, start, or end for text-align");dt.setTextAlign(yt)}if(mt){const yt=mt(At);if(yt!=="left"&&yt!=="right"&&yt!=="center")throw new Error("Expected left, right, or center for text-justify");dt.setJustify(yt)}if(xt){const yt=xt(At);if(yt!=="bottom"&&yt!=="top"&&yt!=="middle"&&yt!=="alphabetic"&&yt!=="hanging")throw new Error("Expected bottom, top, middle, alphabetic, or hanging for text-baseline");dt.setTextBaseline(yt)}return Ct&&dt.setPadding(Ct(At)),pt&&dt.setKeepUpright(pt(At)),dt}}function a(z,G){return"icon-src"in z?g(z,G):"shape-points"in z?m(z,G):"circle-radius"in z?R(z,G):null}function g(z,G){const Z="icon-",ut=Z+"src",ot=it(z[ut],ut),F=p(z,Z+"anchor",G),$=f(z,Z+"scale",G),et=h(z,Z+"opacity",G),rt=p(z,Z+"displacement",G),ct=h(z,Z+"rotation",G),Et=I(z,Z+"rotate-with-view",G),Rt=H(z,Z+"anchor-origin"),_t=Y(z,Z+"anchor-x-units"),Ot=Y(z,Z+"anchor-y-units"),wt=L(z,Z+"color"),V=K(z,Z+"cross-origin"),U=st(z,Z+"offset"),J=H(z,Z+"offset-origin"),lt=S(z,Z+"width"),mt=S(z,Z+"height"),xt=N(z,Z+"size"),pt=X(z,Z+"declutter-mode"),Ct=new O.A({src:ot,anchorOrigin:Rt,anchorXUnits:_t,anchorYUnits:Ot,color:wt,crossOrigin:V,offset:U,offsetOrigin:J,height:mt,width:lt,size:xt,declutterMode:pt});return function(Pt){return et&&Ct.setOpacity(et(Pt)),rt&&Ct.setDisplacement(rt(Pt)),ct&&Ct.setRotation(ct(Pt)),Et&&Ct.setRotateWithView(Et(Pt)),$&&Ct.setScale($(Pt)),F&&Ct.setAnchor(F(Pt)),Ct}}function m(z,G){const Z="shape-",ut=Z+"points",ot=Z+"radius",F=k(z[ut],ut),$=k(z[ot],ot),et=n(z,Z,G),rt=e(z,Z,G),ct=f(z,Z+"scale",G),Et=p(z,Z+"displacement",G),Rt=h(z,Z+"rotation",G),_t=I(z,Z+"rotate-with-view",G),Ot=S(z,Z+"radius2"),wt=S(z,Z+"angle"),V=X(z,Z+"declutter-mode"),U=new x.A({points:F,radius:$,radius2:Ot,angle:wt,declutterMode:V});return function(J){return et&&U.setFill(et(J)),rt&&U.setStroke(rt(J)),Et&&U.setDisplacement(Et(J)),Rt&&U.setRotation(Rt(J)),_t&&U.setRotateWithView(_t(J)),ct&&U.setScale(ct(J)),U}}function R(z,G){const Z="circle-",ut=n(z,Z,G),ot=e(z,Z,G),F=h(z,Z+"radius",G),$=f(z,Z+"scale",G),et=p(z,Z+"displacement",G),rt=h(z,Z+"rotation",G),ct=I(z,Z+"rotate-with-view",G),Et=X(z,Z+"declutter-mode"),Rt=new d.A({radius:5,declutterMode:Et});return function(_t){return F&&Rt.setRadius(F(_t)),ut&&Rt.setFill(ut(_t)),ot&&Rt.setStroke(ot(_t)),et&&Rt.setDisplacement(et(_t)),rt&&Rt.setRotation(rt(_t)),ct&&Rt.setRotateWithView(ct(_t)),$&&Rt.setScale($(_t)),Rt}}function h(z,G,Z){if(!(G in z))return;const ut=(0,B.n)(z[G],W.wl,Z);return function(ot){return k(ut(ot),G)}}function l(z,G,Z){if(!(G in z))return null;const ut=(0,B.n)(z[G],W.cT,Z);return function(ot){return it(ut(ot),G)}}function _(z,G,Z){const ut=l(z,G+"pattern-src",Z),ot=E(z,G+"pattern-offset",Z),F=E(z,G+"pattern-size",Z),$=T(z,G+"color",Z);return function(et){return{src:ut(et),offset:ot&&ot(et),size:F&&F(et),color:$&&$(et)}}}function I(z,G,Z){if(!(G in z))return null;const ut=(0,B.n)(z[G],W.T8,Z);return function(ot){const F=ut(ot);if(typeof F!="boolean")throw new Error(`Expected a boolean for ${G}`);return F}}function T(z,G,Z){if(!(G in z))return null;const ut=(0,B.n)(z[G],W.mE,Z);return function(ot){return Q(ut(ot),G)}}function w(z,G,Z){if(!(G in z))return null;const ut=(0,B.n)(z[G],W.Fq,Z);return function(ot){return j(ut(ot),G)}}function p(z,G,Z){if(!(G in z))return null;const ut=(0,B.n)(z[G],W.Fq,Z);return function(ot){const F=j(ut(ot),G);if(F.length!==2)throw new Error(`Expected two numbers for ${G}`);return F}}function E(z,G,Z){if(!(G in z))return null;const ut=(0,B.n)(z[G],W.Fq,Z);return function(ot){return nt(ut(ot),G)}}function f(z,G,Z){if(!(G in z))return null;const ut=(0,B.n)(z[G],W.Fq|W.wl,Z);return function(ot){return tt(ut(ot),G)}}function S(z,G){const Z=z[G];if(Z!==void 0){if(typeof Z!="number")throw new Error(`Expected a number for ${G}`);return Z}}function N(z,G){const Z=z[G];if(Z!==void 0){if(typeof Z=="number")return(0,C.xq)(Z);if(!Array.isArray(Z))throw new Error(`Expected a number or size array for ${G}`);if(Z.length!==2||typeof Z[0]!="number"||typeof Z[1]!="number")throw new Error(`Expected a number or size array for ${G}`);return Z}}function K(z,G){const Z=z[G];if(Z!==void 0){if(typeof Z!="string")throw new Error(`Expected a string for ${G}`);return Z}}function H(z,G){const Z=z[G];if(Z!==void 0){if(Z!=="bottom-left"&&Z!=="bottom-right"&&Z!=="top-left"&&Z!=="top-right")throw new Error(`Expected bottom-left, bottom-right, top-left, or top-right for ${G}`);return Z}}function Y(z,G){const Z=z[G];if(Z!==void 0){if(Z!=="pixels"&&Z!=="fraction")throw new Error(`Expected pixels or fraction for ${G}`);return Z}}function st(z,G){const Z=z[G];if(Z!==void 0)return j(Z,G)}function X(z,G){const Z=z[G];if(Z!==void 0){if(typeof Z!="string")throw new Error(`Expected a string for ${G}`);if(Z!=="declutter"&&Z!=="obstacle"&&Z!=="none")throw new Error(`Expected declutter, obstacle, or none for ${G}`);return Z}}function L(z,G){const Z=z[G];if(Z!==void 0)return Q(Z,G)}function j(z,G){if(!Array.isArray(z))throw new Error(`Expected an array for ${G}`);const Z=z.length;for(let ut=0;ut<Z;++ut)if(typeof z[ut]!="number")throw new Error(`Expected an array of numbers for ${G}`);return z}function it(z,G){if(typeof z!="string")throw new Error(`Expected a string for ${G}`);return z}function k(z,G){if(typeof z!="number")throw new Error(`Expected a number for ${G}`);return z}function Q(z,G){if(typeof z=="string")return z;const Z=j(z,G),ut=Z.length;if(ut<3||ut>4)throw new Error(`Expected a color with 3 or 4 values for ${G}`);return Z}function nt(z,G){const Z=j(z,G);if(Z.length!==2)throw new Error(`Expected an array of two numbers for ${G}`);return Z}function tt(z,G){return typeof z=="number"?z:nt(z,G)}var at=o(60764);const ht={RENDER_ORDER:"renderOrder"};class ft extends at.A{constructor(G){G=G||{};const Z=Object.assign({},G);delete Z.style,delete Z.renderBuffer,delete Z.updateWhileAnimating,delete Z.updateWhileInteracting,super(Z),this.declutter_=G.declutter?String(G.declutter):void 0,this.renderBuffer_=G.renderBuffer!==void 0?G.renderBuffer:100,this.style_=null,this.styleFunction_=void 0,this.setStyle(G.style),this.updateWhileAnimating_=G.updateWhileAnimating!==void 0?G.updateWhileAnimating:!1,this.updateWhileInteracting_=G.updateWhileInteracting!==void 0?G.updateWhileInteracting:!1}getDeclutter(){return this.declutter_}getFeatures(G){return super.getFeatures(G)}getRenderBuffer(){return this.renderBuffer_}getRenderOrder(){return this.get(ht.RENDER_ORDER)}getStyle(){return this.style_}getStyleFunction(){return this.styleFunction_}getUpdateWhileAnimating(){return this.updateWhileAnimating_}getUpdateWhileInteracting(){return this.updateWhileInteracting_}renderDeclutter(G,Z){const ut=this.getDeclutter();ut in G.declutter||(G.declutter[ut]=new b.A(9)),this.getRenderer().renderDeclutter(G,Z)}setRenderOrder(G){this.set(ht.RENDER_ORDER,G)}setStyle(G){this.style_=G===void 0?t.d1:G;const Z=vt(G);this.styleFunction_=G===null?void 0:(0,t.mC)(Z),this.changed()}setDeclutter(G){this.declutter_=G?String(G):void 0,this.changed()}}function vt(z){if(z===void 0)return t.d1;if(!z)return null;if(typeof z=="function"||z instanceof t.Ay)return z;if(!Array.isArray(z))return D([z]);if(z.length===0)return[];const G=z.length,Z=z[0];if(Z instanceof t.Ay){const ot=new Array(G);for(let F=0;F<G;++F){const $=z[F];if(!($ instanceof t.Ay))throw new Error("Expected a list of style instances");ot[F]=$}return ot}if("style"in Z){const ot=new Array(G);for(let F=0;F<G;++F){const $=z[F];if(!("style"in $))throw new Error("Expected a list of rules with a style property");ot[F]=$}return P(ot)}return D(z)}const Tt=ft},95801:(gt,q,o)=>{o.d(q,{A:()=>B});var b=o(1685);class y extends b.Ay{constructor(v,C,d){super(v),this.map=C,this.frameState=d!==void 0?d:null}}const B=y},96769:(gt,q,o)=>{o.d(q,{A:()=>r,B:()=>x});var b=o(66514),y=o(89352),B=o(68711),W=o(70915),v=o(87579),C=o(83984),d=o(40808),A=o(9703),O=o(5986);const x=[];let M=null;function t(){M=(0,B.Y)(1,1,void 0,{willReadFrequently:!0})}class s extends O.A{constructor(D){super(D),this.container=null,this.renderedResolution,this.tempTransform=(0,A.vt)(),this.pixelTransform=(0,A.vt)(),this.inversePixelTransform=(0,A.vt)(),this.context=null,this.deferredContext_=null,this.containerReused=!1,this.frameState=null}getImageData(D,u,c){M||t(),M.clearRect(0,0,1,1);let n;try{M.drawImage(D,u,c,1,1,0,0,1,1),n=M.getImageData(0,0,1,1).data}catch{return M=null,null}return n}getBackground(D){let c=this.getLayer().getBackground();return typeof c=="function"&&(c=c(D.viewState.resolution)),c||void 0}useContainer(D,u,c){const n=this.getLayer().getClassName();let e,i;if(D&&D.className===n&&(!c||D&&D.style.backgroundColor&&(0,b.aI)((0,y._j)(D.style.backgroundColor),(0,y._j)(c)))){const a=D.firstElementChild;a instanceof HTMLCanvasElement&&(i=a.getContext("2d"))}if(i&&(0,A.tI)(i.canvas.style.transform,u)?(this.container=D,this.context=i,this.containerReused=!0):this.containerReused?(this.container=null,this.context=null,this.containerReused=!1):this.container&&(this.container.style.backgroundColor=null),!this.container){e=document.createElement("div"),e.className=n;let a=e.style;a.position="absolute",a.width="100%",a.height="100%",i=(0,B.Y)();const g=i.canvas;e.appendChild(g),a=g.style,a.position="absolute",a.left="0",a.transformOrigin="top left",this.container=e,this.context=i}!this.containerReused&&c&&!this.container.style.backgroundColor&&(this.container.style.backgroundColor=c)}clipUnrotated(D,u,c){const n=(0,W.Py)(c),e=(0,W.WU)(c),i=(0,W.k_)(c),a=(0,W.R)(c);(0,A.Bb)(u.coordinateToPixelTransform,n),(0,A.Bb)(u.coordinateToPixelTransform,e),(0,A.Bb)(u.coordinateToPixelTransform,i),(0,A.Bb)(u.coordinateToPixelTransform,a);const g=this.inversePixelTransform;(0,A.Bb)(g,n),(0,A.Bb)(g,e),(0,A.Bb)(g,i),(0,A.Bb)(g,a),D.save(),D.beginPath(),D.moveTo(Math.round(n[0]),Math.round(n[1])),D.lineTo(Math.round(e[0]),Math.round(e[1])),D.lineTo(Math.round(i[0]),Math.round(i[1])),D.lineTo(Math.round(a[0]),Math.round(a[1])),D.clip()}prepareContainer(D,u){const c=D.extent,n=D.viewState.resolution,e=D.viewState.rotation,i=D.pixelRatio,a=Math.round((0,W.RG)(c)/n*i),g=Math.round((0,W.Oq)(c)/n*i);(0,A.Zz)(this.pixelTransform,D.size[0]/2,D.size[1]/2,1/i,1/i,e,-a/2,-g/2),(0,A.T9)(this.inversePixelTransform,this.pixelTransform);const m=(0,A.dI)(this.pixelTransform);if(this.useContainer(u,m,this.getBackground(D)),!this.containerReused){const R=this.context.canvas;R.width!=a||R.height!=g?(R.width=a,R.height=g):this.context.clearRect(0,0,a,g),m!==R.style.transform&&(R.style.transform=m)}}dispatchRenderEvent_(D,u,c){const n=this.getLayer();if(n.hasListener(D)){const e=new v.A(D,this.inversePixelTransform,c,u);n.dispatchEvent(e)}}preRender(D,u){this.frameState=u,!u.declutter&&this.dispatchRenderEvent_(C.A.PRERENDER,D,u)}postRender(D,u){u.declutter||this.dispatchRenderEvent_(C.A.POSTRENDER,D,u)}renderDeferredInternal(D){}getRenderContext(D){return D.declutter&&!this.deferredContext_&&(this.deferredContext_=new d.A),D.declutter?this.deferredContext_.getContext():this.context}renderDeferred(D){D.declutter&&(this.dispatchRenderEvent_(C.A.PRERENDER,this.context,D),D.declutter&&this.deferredContext_&&(this.deferredContext_.draw(this.context),this.deferredContext_.clear()),this.renderDeferredInternal(D),this.dispatchRenderEvent_(C.A.POSTRENDER,this.context,D))}getRenderTransform(D,u,c,n,e,i,a){const g=e/2,m=i/2,R=n/u,h=-R,l=-D[0]+a,_=-D[1];return(0,A.Zz)(this.tempTransform,g,m,R,h,-c,l,_)}disposeInternal(){delete this.frameState,super.disposeInternal()}}const r=s},97404:(gt,q,o)=>{o.d(q,{A:()=>t});var b=o(8143),y=o(11078),B=o(68711),W=o(6837),v=o(9438),C=o(70915),d=o(61597),A=o(33513),O=o(52913),x=o(93101);class M extends b.A{constructor(r,P,D,u,c,n,e,i,a,g,m,R){super(c,y.A.IDLE,R),this.renderEdges_=m!==void 0?m:!1,this.pixelRatio_=e,this.gutter_=i,this.canvas_=null,this.sourceTileGrid_=P,this.targetTileGrid_=u,this.wrappedTileCoord_=n||c,this.sourceTiles_=[],this.sourcesListenerKeys_=null,this.sourceZ_=0,this.clipExtent_=r.canWrapX()?r.getExtent():void 0;const h=u.getTileCoordExtent(this.wrappedTileCoord_),l=this.targetTileGrid_.getExtent();let _=this.sourceTileGrid_.getExtent();const I=l?(0,C._N)(h,l):h;if((0,C.UG)(I)===0){this.state=y.A.EMPTY;return}const T=r.getExtent();T&&(_?_=(0,C._N)(_,T):_=T);const w=u.getResolution(this.wrappedTileCoord_[0]),p=(0,A.aY)(r,D,I,w);if(!isFinite(p)||p<=0){this.state=y.A.EMPTY;return}const E=g!==void 0?g:x.l;if(this.triangulation_=new O.A(r,D,I,_,p*E,w),this.triangulation_.getTriangles().length===0){this.state=y.A.EMPTY;return}this.sourceZ_=P.getZForResolution(p);let f=this.triangulation_.calculateSourceExtent();if(_&&(r.canWrapX()?(f[1]=(0,d.qE)(f[1],_[1],_[3]),f[3]=(0,d.qE)(f[3],_[1],_[3])):f=(0,C._N)(f,_)),!(0,C.UG)(f))this.state=y.A.EMPTY;else{let S=0,N=0;r.canWrapX()&&(S=(0,C.RG)(T),N=Math.floor((f[0]-T[0])/S)),(0,C.QJ)(f.slice(),r,!0).forEach(H=>{const Y=P.getTileRangeForExtentAndZ(H,this.sourceZ_);for(let st=Y.minX;st<=Y.maxX;st++)for(let X=Y.minY;X<=Y.maxY;X++){const L=a(this.sourceZ_,st,X,e);if(L){const j=N*S;this.sourceTiles_.push({tile:L,offset:j})}}++N}),this.sourceTiles_.length===0&&(this.state=y.A.EMPTY)}}getImage(){return this.canvas_}reproject_(){const r=[];if(this.sourceTiles_.forEach(P=>{const D=P.tile;if(D&&D.getState()==y.A.LOADED){const u=this.sourceTileGrid_.getTileCoordExtent(D.tileCoord);u[0]+=P.offset,u[2]+=P.offset;const c=this.clipExtent_?.slice();c&&(c[0]+=P.offset,c[2]+=P.offset),r.push({extent:u,clipExtent:c,image:D.getImage()})}}),this.sourceTiles_.length=0,r.length===0)this.state=y.A.ERROR;else{const P=this.wrappedTileCoord_[0],D=this.targetTileGrid_.getTileSize(P),u=typeof D=="number"?D:D[0],c=typeof D=="number"?D:D[1],n=this.targetTileGrid_.getResolution(P),e=this.sourceTileGrid_.getResolution(this.sourceZ_),i=this.targetTileGrid_.getTileCoordExtent(this.wrappedTileCoord_);this.canvas_=(0,A.XX)(u,c,this.pixelRatio_,e,this.sourceTileGrid_.getExtent(),n,i,this.triangulation_,r,this.gutter_,this.renderEdges_,this.interpolate),this.state=y.A.LOADED}this.changed()}load(){if(this.state==y.A.IDLE){this.state=y.A.LOADING,this.changed();let r=0;this.sourcesListenerKeys_=[],this.sourceTiles_.forEach(({tile:P})=>{const D=P.getState();if(D==y.A.IDLE||D==y.A.LOADING){r++;const u=(0,v.KT)(P,W.A.CHANGE,c=>{const n=P.getState();(n==y.A.LOADED||n==y.A.ERROR||n==y.A.EMPTY)&&((0,v.JH)(u),r--,r===0&&(this.unlistenSources_(),this.reproject_()))});this.sourcesListenerKeys_.push(u)}}),r===0?setTimeout(this.reproject_.bind(this),0):this.sourceTiles_.forEach(function({tile:P},D,u){P.getState()==y.A.IDLE&&P.load()})}}unlistenSources_(){this.sourcesListenerKeys_.forEach(v.JH),this.sourcesListenerKeys_=null}release(){this.canvas_&&((0,B.Yg)(this.canvas_.getContext("2d")),A.BV.push(this.canvas_),this.canvas_=null),super.release()}}const t=M},97907:(gt,q,o)=>{o.d(q,{A:()=>M,J:()=>x});var b=o(43938),y=o(6141),B=o(89352),W=o(68711),v=o(6837),C=o(79332),d=o(82241);let A=null;class O extends C.A{constructor(s,r,P,D,u){super(),this.hitDetectionImage_=null,this.image_=s,this.crossOrigin_=P,this.canvas_={},this.color_=u,this.imageState_=D===void 0?y.A.IDLE:D,this.size_=s&&s.width&&s.height?[s.width,s.height]:null,this.src_=r,this.tainted_,this.ready_=null}initializeImage_(){this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_)}isTainted_(){if(this.tainted_===void 0&&this.imageState_===y.A.LOADED){A||(A=(0,W.Y)(1,1,void 0,{willReadFrequently:!0})),A.drawImage(this.image_,0,0);try{A.getImageData(0,0,1,1),this.tainted_=!1}catch{A=null,this.tainted_=!0}}return this.tainted_===!0}dispatchChangeEvent_(){this.dispatchEvent(v.A.CHANGE)}handleImageError_(){this.imageState_=y.A.ERROR,this.dispatchChangeEvent_()}handleImageLoad_(){this.imageState_=y.A.LOADED,this.size_=[this.image_.width,this.image_.height],this.dispatchChangeEvent_()}getImage(s){return this.image_||this.initializeImage_(),this.replaceColor_(s),this.canvas_[s]?this.canvas_[s]:this.image_}getPixelRatio(s){return this.replaceColor_(s),this.canvas_[s]?s:1}getImageState(){return this.imageState_}getHitDetectionImage(){if(this.image_||this.initializeImage_(),!this.hitDetectionImage_)if(this.isTainted_()){const s=this.size_[0],r=this.size_[1],P=(0,W.Y)(s,r);P.fillRect(0,0,s,r),this.hitDetectionImage_=P.canvas}else this.hitDetectionImage_=this.image_;return this.hitDetectionImage_}getSize(){return this.size_}getSrc(){return this.src_}load(){if(this.imageState_===y.A.IDLE){this.image_||this.initializeImage_(),this.imageState_=y.A.LOADING;try{this.src_!==void 0&&(this.image_.src=this.src_)}catch{this.handleImageError_()}this.image_ instanceof HTMLImageElement&&(0,b.RA)(this.image_,this.src_).then(s=>{this.image_=s,this.handleImageLoad_()}).catch(this.handleImageError_.bind(this))}}replaceColor_(s){if(!this.color_||this.canvas_[s]||this.imageState_!==y.A.LOADED)return;const r=this.image_,P=(0,W.Y)(Math.ceil(r.width*s),Math.ceil(r.height*s)),D=P.canvas;P.scale(s,s),P.drawImage(r,0,0),P.globalCompositeOperation="multiply",P.fillStyle=(0,B.oJ)(this.color_),P.fillRect(0,0,D.width/s,D.height/s),P.globalCompositeOperation="destination-in",P.drawImage(r,0,0),this.canvas_[s]=D}ready(){return this.ready_||(this.ready_=new Promise(s=>{if(this.imageState_===y.A.LOADED||this.imageState_===y.A.ERROR)s();else{const r=()=>{(this.imageState_===y.A.LOADED||this.imageState_===y.A.ERROR)&&(this.removeEventListener(v.A.CHANGE,r),s())};this.addEventListener(v.A.CHANGE,r)}})),this.ready_}}function x(t,s,r,P,D,u){let c=s===void 0?void 0:d.ue.get(s,r,D);return c||(c=new O(t,t&&"src"in t?t.src||void 0:s,r,P,D),d.ue.set(s,r,D,c,u)),u&&c&&!d.ue.getPattern(s,r,D)&&d.ue.set(s,r,D,c,u),c}const M=O},98020:(gt,q,o)=>{o.d(q,{A:()=>P});var b=o(42375),y=o(67238),B=o(6141),W=o(62703),v=o(6837),C=o(70915),d=o(34889),A=o(9703),O=o(69796),x=o(32348);class M extends O.A{constructor(u){super(u),this.vectorRenderer_=new x.A(u),this.layerImageRatio_=u.getImageRatio(),this.coordinateToVectorPixelTransform_=(0,A.vt)(),this.renderedPixelToCoordinateTransform_=null}disposeInternal(){this.vectorRenderer_.dispose(),super.disposeInternal()}getFeatures(u){if(!this.vectorRenderer_)return Promise.resolve([]);const c=(0,A.Bb)(this.coordinateToVectorPixelTransform_,(0,A.Bb)(this.renderedPixelToCoordinateTransform_,u.slice()));return this.vectorRenderer_.getFeatures(c)}handleFontsChanged(){this.vectorRenderer_.handleFontsChanged()}prepareFrame(u){const c=u.pixelRatio,n=u.viewState,e=n.resolution,i=u.viewHints,a=this.vectorRenderer_;let g=u.extent;this.layerImageRatio_!==1&&(g=g.slice(0),(0,C.Af)(g,this.layerImageRatio_));const m=(0,C.RG)(g)/e,R=(0,C.Oq)(g)/e;if(!i[W.A.ANIMATING]&&!i[W.A.INTERACTING]&&!(0,C.Im)(g)){a.useContainer(null,null);const h=a.context,l=u.layerStatesArray[u.layerIndex],_=Object.assign({},l,{opacity:1}),I=Object.assign({},u,{extent:g,size:[m,R],viewState:Object.assign({},u.viewState,{rotation:0}),layerStatesArray:[_],layerIndex:0,declutter:null}),T=this.getLayer().getDeclutter();T&&(I.declutter={[T]:new b.A(9)});const w=new y.A(g,e,c,h.canvas,function(p){a.prepareFrame(I)&&a.replayGroupChanged&&(a.clipping=!1,a.renderFrame(I,null),a.renderDeclutter(I),a.renderDeferred(I),p())});w.addEventListener(v.A.CHANGE,()=>{if(w.getState()!==B.A.LOADED)return;this.image=w;const p=w.getPixelRatio(),E=(0,d.m)(w.getResolution())*c/p;this.renderedResolution=E,this.coordinateToVectorPixelTransform_=(0,A.Zz)(this.coordinateToVectorPixelTransform_,m/2,R/2,1/E,-1/E,0,-n.center[0],-n.center[1])}),w.load()}return this.image&&(this.renderedPixelToCoordinateTransform_=u.pixelToCoordinateTransform.slice()),!this.getLayer().getSource()?.loading&&!!this.image}preRender(){}postRender(){}renderDeclutter(){}forEachFeatureAtCoordinate(u,c,n,e,i){return this.vectorRenderer_?this.vectorRenderer_.forEachFeatureAtCoordinate(u,c,n,e,i):super.forEachFeatureAtCoordinate(u,c,n,e,i)}}const t=M;var s=o(94720);class r extends s.A{constructor(u){u=u||{};const c=Object.assign({},u);delete c.imageRatio,super(c),this.imageRatio_=u.imageRatio!==void 0?u.imageRatio:1}getImageRatio(){return this.imageRatio_}createRenderer(){return new t(this)}}const P=r},99676:(gt,q,o)=>{o.d(q,{F:()=>C});var b=o(6141),y=o(89352),B=o(68711),W=o(97907),v=o(82241);function C(A){return A?Array.isArray(A)?(0,y.dI)(A):typeof A=="object"&&"src"in A?d(A):A:null}function d(A){if(!A.offset||!A.size)return v.ue.getPattern(A.src,"anonymous",A.color);const O=A.src+":"+A.offset,x=v.ue.getPattern(O,void 0,A.color);if(x)return x;const M=v.ue.get(A.src,"anonymous",null);if(M.getImageState()!==b.A.LOADED)return null;const t=(0,B.Y)(A.size[0],A.size[1]);return t.drawImage(M.getImage(1),A.offset[0],A.offset[1],A.size[0],A.size[1],0,0,A.size[0],A.size[1]),(0,W.J)(t.canvas,O,void 0,b.A.LOADED,A.color,!0),v.ue.getPattern(O,void 0,A.color)}}}]); //# sourceMappingURL=3326.cabc370d66d7ecfbd2c3.js.map
.
Edit
..
Edit
1117.145ac642f59357bc40d8.js
Edit
1117.145ac642f59357bc40d8.js.map
Edit
1118.c684d1aadf16a6c70620.js
Edit
1118.c684d1aadf16a6c70620.js.map
Edit
1122.5fbf0d7cd148c610616d.js
Edit
1122.5fbf0d7cd148c610616d.js.map
Edit
1142.a4b35a0e8699cafd901e.js
Edit
1142.a4b35a0e8699cafd901e.js.map
Edit
1162.81868b3ac499fa5ea04b.js
Edit
1162.81868b3ac499fa5ea04b.js.map
Edit
1183.7444f51e5996a7f23c7d.js
Edit
1183.7444f51e5996a7f23c7d.js.map
Edit
1282.ae38cac1b732d8ac1d96.js
Edit
1282.ae38cac1b732d8ac1d96.js.map
Edit
130.a58aaeea748f37ee6482.js
Edit
130.a58aaeea748f37ee6482.js.map
Edit
1419.59f53ae25085b28e1e11.js
Edit
1419.59f53ae25085b28e1e11.js.map
Edit
1420.e63ce495727f83b8887d.js
Edit
1420.e63ce495727f83b8887d.js.map
Edit
1438.ccdd05d7188edf4191ff.js
Edit
1438.ccdd05d7188edf4191ff.js.map
Edit
1446.fe7b1f4563629b80793f.js
Edit
1446.fe7b1f4563629b80793f.js.map
Edit
1484.3da94e44ecdadcd342d4.js
Edit
1484.3da94e44ecdadcd342d4.js.map
Edit
1492.4026c6e7130c3afdae87.js
Edit
1494.ef220afb67ff6c52c7af.js
Edit
1494.ef220afb67ff6c52c7af.js.map
Edit
1560.538cd2395be11ba4e2c9.js
Edit
1560.538cd2395be11ba4e2c9.js.map
Edit
1579.c391ef869d4f7bfc0d1c.js
Edit
1579.c391ef869d4f7bfc0d1c.js.map
Edit
1646.d7d87a40853795910533.js
Edit
1646.d7d87a40853795910533.js.map
Edit
1710.7db3f56c6714c0c340e0.js
Edit
1710.7db3f56c6714c0c340e0.js.map
Edit
1716.f71f518289da5d2229bc.js
Edit
1716.f71f518289da5d2229bc.js.map
Edit
1740.baf38e7ee007e1a6935e.js
Edit
1740.baf38e7ee007e1a6935e.js.map
Edit
1821.c9a2456dc8d78cf6b02f.js
Edit
1821.c9a2456dc8d78cf6b02f.js.map
Edit
1888.d33142738af4fbf8a230.js
Edit
1888.d33142738af4fbf8a230.js.map
Edit
1914.5f33b3c2133b5bb7ea6e.js
Edit
1914.5f33b3c2133b5bb7ea6e.js.map
Edit
198.65a768ff6c601d19ea3f.js
Edit
198.65a768ff6c601d19ea3f.js.map
Edit
1990.9171129a8deabb59bf30.js
Edit
1990.9171129a8deabb59bf30.js.map
Edit
2018.5ff00ee0456301c1cf43.js
Edit
2018.5ff00ee0456301c1cf43.js.map
Edit
205.2eb73847215c8d021cc9.js
Edit
205.2eb73847215c8d021cc9.js.map
Edit
2077.a5848ca4b4b9fdebca17.js
Edit
2077.a5848ca4b4b9fdebca17.js.map
Edit
2094.97e7f0876201e76a77fd.js
Edit
2094.97e7f0876201e76a77fd.js.map
Edit
2150.7576285186c713978b39.js
Edit
2150.7576285186c713978b39.js.map
Edit
2152.b55841e6f422682a3891.js
Edit
2152.b55841e6f422682a3891.js.map
Edit
221.0fc4d14d0a67f3a25d64.js
Edit
221.0fc4d14d0a67f3a25d64.js.map
Edit
2218.623d73bd0985ddf5f8c4.js
Edit
2218.623d73bd0985ddf5f8c4.js.map
Edit
2223.e65417164a45701ed9dc.js
Edit
2223.e65417164a45701ed9dc.js.map
Edit
2244.70c156ada2487a05595c.js
Edit
2244.70c156ada2487a05595c.js.map
Edit
2278.f887de0a65e1b784ea9f.js
Edit
2278.f887de0a65e1b784ea9f.js.map
Edit
2288.6a65ba08c6c0f4f83435.js
Edit
2288.6a65ba08c6c0f4f83435.js.map
Edit
2311.73e1a2b949d289f5d6c9.js
Edit
2311.73e1a2b949d289f5d6c9.js.map
Edit
2398.d142e32be48079fc63c0.js
Edit
2398.d142e32be48079fc63c0.js.map
Edit
2405.c1b37a7cc8182472f6a6.js
Edit
2405.c1b37a7cc8182472f6a6.js.map
Edit
2446.0418c7ea000998178d8b.js
Edit
2446.0418c7ea000998178d8b.js.map
Edit
2450.d73c024ff7273aebf911.js
Edit
2450.d73c024ff7273aebf911.js.map
Edit
2586.668c65b61e9ea31b5bca.js
Edit
2586.668c65b61e9ea31b5bca.js.map
Edit
265.ed6933785cc750cbd9ed.js
Edit
265.ed6933785cc750cbd9ed.js.map
Edit
2658.7f70ebc378803654a814.js
Edit
2658.7f70ebc378803654a814.js.map
Edit
2686.ae267304ddd1380c30c7.js
Edit
2686.ae267304ddd1380c30c7.js.map
Edit
2692.fa24ada7d987a7ee05f1.js
Edit
2692.fa24ada7d987a7ee05f1.js.map
Edit
2699.b79e57051a1a63376320.js
Edit
2699.b79e57051a1a63376320.js.map
Edit
2710.e1ac8e57578a838f5bd8.js
Edit
2710.e1ac8e57578a838f5bd8.js.map
Edit
2744.d6b14bf01022bdb8eab5.js
Edit
2744.d6b14bf01022bdb8eab5.js.map
Edit
2745.8049d948cb362dfc6cb3.js
Edit
2745.8049d948cb362dfc6cb3.js.map
Edit
2835.01beb5b1a252d779aad7.js
Edit
2835.01beb5b1a252d779aad7.js.map
Edit
2961.4b27b21453fdbb115dd4.js
Edit
2961.4b27b21453fdbb115dd4.js.map
Edit
2962.85c9dc0cca68efab5e0c.js
Edit
2962.85c9dc0cca68efab5e0c.js.map
Edit
2975.e64aaea6ff35a7d3b3fd.js
Edit
2975.e64aaea6ff35a7d3b3fd.js.map
Edit
3003.f51365051eb27cf765d8.js
Edit
3003.f51365051eb27cf765d8.js.map
Edit
3042.44bad7d2d0536000b808.js
Edit
3042.44bad7d2d0536000b808.js.map
Edit
3062.ad5844391370fcc7525a.js
Edit
3062.ad5844391370fcc7525a.js.map
Edit
3082.704af6779ad700a5fa42.js
Edit
3082.704af6779ad700a5fa42.js.map
Edit
3096.aed61083f1ba4803ae84.js
Edit
3096.aed61083f1ba4803ae84.js.map
Edit
3126.10c85e1f02105e470a69.js
Edit
3126.10c85e1f02105e470a69.js.map
Edit
3169.0b88a5a2340f70961599.js
Edit
3169.0b88a5a2340f70961599.js.map
Edit
3171.c79c28e2611563e2dbcb.js
Edit
3171.c79c28e2611563e2dbcb.js.map
Edit
3182.831f754ed3b6f10441a0.js
Edit
3182.831f754ed3b6f10441a0.js.map
Edit
3192.2cb90eadf3399270363e.js
Edit
3192.2cb90eadf3399270363e.js.map
Edit
3217.c6faaa4f5637068f90f3.js
Edit
3217.c6faaa4f5637068f90f3.js.map
Edit
3259.c8e4d6ad93201a56e49f.js
Edit
3259.c8e4d6ad93201a56e49f.js.map
Edit
3284.79c2897655286b0c1f6d.js
Edit
3284.79c2897655286b0c1f6d.js.map
Edit
3303.225dae64cff0c2280c3b.js
Edit
3303.225dae64cff0c2280c3b.js.map
Edit
3326.cabc370d66d7ecfbd2c3.js
Edit
3326.cabc370d66d7ecfbd2c3.js.map
Edit
344.85cff3029cbbb5463c7e.js
Edit
344.85cff3029cbbb5463c7e.js.map
Edit
3466.fda7da0cb4150e59da98.js
Edit
3466.fda7da0cb4150e59da98.js.map
Edit
3474.74dfd856a9528c758a57.js
Edit
3474.74dfd856a9528c758a57.js.map
Edit
348.fd20e2547f12dbed76c7.js
Edit
348.fd20e2547f12dbed76c7.js.map
Edit
3495.9c1ae6f61edf7aef207b.js
Edit
3495.9c1ae6f61edf7aef207b.js.map
Edit
3501.a0ee7c2b24136aa91eb5.js
Edit
3501.a0ee7c2b24136aa91eb5.js.map
Edit
3520.a3c2b474e2dcaf9879fc.js
Edit
3520.a3c2b474e2dcaf9879fc.js.map
Edit
3605.41e3c44dfe2ca2966198.js
Edit
3605.41e3c44dfe2ca2966198.js.map
Edit
362.e5ce68af98ee6713a4e7.js
Edit
362.e5ce68af98ee6713a4e7.js.map
Edit
3622.0b196041f825b42c5233.js
Edit
3622.0b196041f825b42c5233.js.map
Edit
3630.1ffe9229d5c27fd0823a.js
Edit
3630.1ffe9229d5c27fd0823a.js.map
Edit
3659.f5dc1bb19d36546aadb8.js
Edit
3659.f5dc1bb19d36546aadb8.js.map
Edit
3688.ec5e74c60569e9498687.js
Edit
3688.ec5e74c60569e9498687.js.map
Edit
3718.b570aa4fa35f8dfc686e.js
Edit
3718.b570aa4fa35f8dfc686e.js.map
Edit
3726.84ef8bb1304f7adbc7f3.js
Edit
3726.84ef8bb1304f7adbc7f3.js.map
Edit
398.ceeafcf522343c717c4b.js
Edit
398.ceeafcf522343c717c4b.js.map
Edit
4064.e52eb763993ad947e4a1.js
Edit
4064.e52eb763993ad947e4a1.js.map
Edit
407.594046bd73cc88c29e80.js
Edit
407.594046bd73cc88c29e80.js.map
Edit
4113.3fa5432815c4662eb03e.js
Edit
4113.3fa5432815c4662eb03e.js.map
Edit
4114.c4741f0a73781d3f87dc.js
Edit
4114.c4741f0a73781d3f87dc.js.map
Edit
4120.968e1408d894f8515330.js
Edit
4120.968e1408d894f8515330.js.map
Edit
4162.8b8a683fa98d677f9137.js
Edit
4162.8b8a683fa98d677f9137.js.map
Edit
4209.de7f2b850ee1292a67e5.js
Edit
4209.de7f2b850ee1292a67e5.js.map
Edit
4224.cc13db0c6e3f7fdb05c9.js
Edit
4224.cc13db0c6e3f7fdb05c9.js.map
Edit
4251.28e90ad13c8fe749062c.js
Edit
4251.28e90ad13c8fe749062c.js.map
Edit
4334.396d65b7ba31733108e9.js
Edit
4334.396d65b7ba31733108e9.js.map
Edit
4350.6db49924324f8061d361.js
Edit
4350.6db49924324f8061d361.js.map
Edit
4463.24a3e34bed64cbbb8b99.js
Edit
4463.24a3e34bed64cbbb8b99.js.map
Edit
4514.03e966fee9064d7305dd.js
Edit
4514.03e966fee9064d7305dd.js.map
Edit
4564.ea4a09ba96ddbf74a0ee.js
Edit
4564.ea4a09ba96ddbf74a0ee.js.map
Edit
46.7809585ddbb4791e248a.js
Edit
46.7809585ddbb4791e248a.js.map
Edit
4630.54d7f3b9d384c6b95bbc.js
Edit
4630.54d7f3b9d384c6b95bbc.js.map
Edit
4656.a07d832134b096826a58.js
Edit
4656.a07d832134b096826a58.js.map
Edit
468.d3a2ba8b0d226ca1475b.js
Edit
468.d3a2ba8b0d226ca1475b.js.map
Edit
4680.abd86af55b75e75326ab.js
Edit
4680.abd86af55b75e75326ab.js.map
Edit
4691.2f69f76af87a66a1513c.js
Edit
4691.2f69f76af87a66a1513c.js.map
Edit
4698.c9a2c562b12da12dc66e.js
Edit
4698.c9a2c562b12da12dc66e.js.map
Edit
4791.fc3ef0337811ab73b164.js
Edit
4791.fc3ef0337811ab73b164.js.map
Edit
4814.2d8cb562606e508512d8.js
Edit
4814.2d8cb562606e508512d8.js.map
Edit
4824.2da8107f19d58bf153e0.js
Edit
4824.2da8107f19d58bf153e0.js.map
Edit
4839.f4d2edd5c2678ef2b624.js
Edit
4839.f4d2edd5c2678ef2b624.js.map
Edit
4857.4971a98037d2ec3b663d.js
Edit
4857.4971a98037d2ec3b663d.js.map
Edit
4865.be02c1283a83523c4414.js
Edit
4865.be02c1283a83523c4414.js.map
Edit
494.5463fc5a297eaedd150f.js
Edit
494.5463fc5a297eaedd150f.js.map
Edit
4958.226af5f19bf47305a407.js
Edit
4958.226af5f19bf47305a407.js.map
Edit
4962.bbff24c5a85e9314600a.js
Edit
4962.bbff24c5a85e9314600a.js.map
Edit
4964.1f2cc5acc0078feb7b08.js
Edit
4964.1f2cc5acc0078feb7b08.js.map
Edit
4965.ccdc00d808390be53820.js
Edit
4965.ccdc00d808390be53820.js.map
Edit
5065.a2c71dab50ccb4174ee2.js
Edit
5065.a2c71dab50ccb4174ee2.js.map
Edit
5074.92e2d1ae98dcd913506e.js
Edit
5074.92e2d1ae98dcd913506e.js.map
Edit
5091.987ffc33b70121541e5d.js
Edit
5091.987ffc33b70121541e5d.js.map
Edit
5106.581eaf66a6592320d97a.js
Edit
5106.581eaf66a6592320d97a.js.map
Edit
5110.96d49ea826be96c65045.js
Edit
5110.96d49ea826be96c65045.js.map
Edit
5130.cbdddcd716a093bdbaac.js
Edit
5130.cbdddcd716a093bdbaac.js.map
Edit
5196.9b7364caf64a8583ad01.js
Edit
5196.9b7364caf64a8583ad01.js.map
Edit
5198.2cd64d4e16a385dd9b91.js
Edit
5198.2cd64d4e16a385dd9b91.js.map
Edit
5280.2c29942977baa2dfbe0e.js
Edit
5280.2c29942977baa2dfbe0e.js.map
Edit
5364.0288d9c98f74f26b73e7.js
Edit
5364.0288d9c98f74f26b73e7.js.map
Edit
5446.ad01d0b233122dd49849.js
Edit
5446.ad01d0b233122dd49849.js.map
Edit
5550.5bf3e7d23d6b104740fd.js
Edit
5550.5bf3e7d23d6b104740fd.js.map
Edit
5618.909592bbe054b70f2377.js
Edit
5618.909592bbe054b70f2377.js.map
Edit
5648.a1fc2b0cbbca9bfa1d94.js
Edit
5648.a1fc2b0cbbca9bfa1d94.js.map
Edit
5664.c55be32f6d459ac3f3d8.js
Edit
5664.c55be32f6d459ac3f3d8.js.map
Edit
5671.e1e396b75d7b95ef461f.js
Edit
5671.e1e396b75d7b95ef461f.js.map
Edit
5742.117597ec799ab75cb2f4.js
Edit
5742.117597ec799ab75cb2f4.js.map
Edit
5747.b9389680058c12ffba68.js
Edit
5747.b9389680058c12ffba68.js.map
Edit
5757.5a4b7f2368dd09da42be.js
Edit
5786.c45dfaf9e1d969472e5e.js
Edit
5786.c45dfaf9e1d969472e5e.js.map
Edit
5790.29b0a5797fd46e9664f5.js
Edit
5790.29b0a5797fd46e9664f5.js.map
Edit
5923.b9c876b4bf528d8511cb.js
Edit
5923.b9c876b4bf528d8511cb.js.map
Edit
5984.1efdc4bb85100bd19ca9.js
Edit
5984.1efdc4bb85100bd19ca9.js.map
Edit
5995.5c7a375f33ea1cd16daa.js
Edit
5995.5c7a375f33ea1cd16daa.js.map
Edit
6018.befdd11bf701ea71f7bf.js
Edit
6018.befdd11bf701ea71f7bf.js.map
Edit
6029.bdcbf27bcdd36812f646.js
Edit
6029.bdcbf27bcdd36812f646.js.map
Edit
6088.7f526abfdb4003574c68.js
Edit
6088.7f526abfdb4003574c68.js.map
Edit
613.084d33252856771cf6e1.js
Edit
613.084d33252856771cf6e1.js.map
Edit
6185.2a7c893c6b3f2f0dadb8.js
Edit
6185.2a7c893c6b3f2f0dadb8.js.map
Edit
6208.571f272269524cfd14e7.js
Edit
6208.571f272269524cfd14e7.js.map
Edit
6236.30d1fa6aee173c946c50.js
Edit
6236.30d1fa6aee173c946c50.js.map
Edit
6244.64f83fc5d05560979c51.js
Edit
6244.64f83fc5d05560979c51.js.map
Edit
6260.b8be95165766a81dade2.js
Edit
6260.b8be95165766a81dade2.js.map
Edit
630.56b78dcdaeeb9d9c2967.js
Edit
630.56b78dcdaeeb9d9c2967.js.map
Edit
6302.a2ffa52069511df9772f.js
Edit
6302.a2ffa52069511df9772f.js.map
Edit
6315.f4d87fc6f8ae3cb40e38.js
Edit
6315.f4d87fc6f8ae3cb40e38.js.map
Edit
6414.7520859a2d9cc0a63d7f.js
Edit
6414.7520859a2d9cc0a63d7f.js.map
Edit
6446.1d75a8140260005fffbd.js
Edit
6446.1d75a8140260005fffbd.js.map
Edit
6743.67a52a99e2fdd1ae1e10.js
Edit
6743.67a52a99e2fdd1ae1e10.js.map
Edit
6759.0454d3c1e41385379bdc.js
Edit
6759.0454d3c1e41385379bdc.js.map
Edit
6772.0d4a074848bc323be8f8.js
Edit
6772.0d4a074848bc323be8f8.js.map
Edit
680.726adca366b4ecb272db.js
Edit
680.726adca366b4ecb272db.js.map
Edit
6830.a4b0ecf3a6d784ca7609.js
Edit
6830.a4b0ecf3a6d784ca7609.js.map
Edit
6834.0c9ef40e2f2b5428983d.js
Edit
6834.0c9ef40e2f2b5428983d.js.map
Edit
6857.252a60422ee275193aa7.js
Edit
6857.252a60422ee275193aa7.js.map
Edit
6940.b6c74df14413f0188f0d.js
Edit
6940.b6c74df14413f0188f0d.js.map
Edit
6990.d663924714fc213b17c6.js
Edit
6990.d663924714fc213b17c6.js.map
Edit
7018.5a037d2577fedc8d10f1.js
Edit
7018.5a037d2577fedc8d10f1.js.map
Edit
7031.047b15171c23b248efa0.js
Edit
7031.047b15171c23b248efa0.js.map
Edit
7033.141597840e42815ef6a4.js
Edit
7033.141597840e42815ef6a4.js.map
Edit
7048.3746fc9a274bf8ff72f1.js
Edit
7048.3746fc9a274bf8ff72f1.js.map
Edit
7051.604a402d305e093c00c2.js
Edit
7051.604a402d305e093c00c2.js.map
Edit
7061.f18464bcd6c6d7455662.js
Edit
7061.f18464bcd6c6d7455662.js.map
Edit
7080.9cdd1b7a0bf62b48e1fe.js
Edit
7080.9cdd1b7a0bf62b48e1fe.js.map
Edit
7200.d4425528f6cee80f9931.js
Edit
7200.d4425528f6cee80f9931.js.map
Edit
7235.46f071d3e4d0bb976223.js
Edit
7235.46f071d3e4d0bb976223.js.map
Edit
7246.03f5a8496e53f64602e2.js
Edit
7246.03f5a8496e53f64602e2.js.map
Edit
7249.3bea4aaf890f89fdad45.js
Edit
7249.3bea4aaf890f89fdad45.js.map
Edit
7299.cdff402b076dfea09ead.js
Edit
7299.cdff402b076dfea09ead.js.map
Edit
7348.6fd722455e8c7e077815.js
Edit
7348.6fd722455e8c7e077815.js.map
Edit
7396.ded473b7a47dc42fbb59.js
Edit
7396.ded473b7a47dc42fbb59.js.map
Edit
7466.b7c17c526c7b734dd5f7.js
Edit
7466.b7c17c526c7b734dd5f7.js.map
Edit
7539.5f405cae3b15e1e2f6fa.js
Edit
7539.5f405cae3b15e1e2f6fa.js.map
Edit
7585.084552e02c66201a55be.js
Edit
7585.084552e02c66201a55be.js.map
Edit
7626.38819cc0696f2d25cf99.js
Edit
7626.38819cc0696f2d25cf99.js.map
Edit
7651.5024ed8dd1beb08d01ab.js
Edit
7651.5024ed8dd1beb08d01ab.js.map
Edit
7681.7ef7b4f86e99abd7b7e1.js
Edit
7681.7ef7b4f86e99abd7b7e1.js.map
Edit
7691.0ad86f0c686b19ce829e.js
Edit
7691.0ad86f0c686b19ce829e.js.map
Edit
7790.4c141092868e7208a087.js
Edit
7790.4c141092868e7208a087.js.map
Edit
7806.dff3509790e494ca5a45.js
Edit
7806.dff3509790e494ca5a45.js.map
Edit
7836.afe37ef4be354f0a3b91.js
Edit
7836.afe37ef4be354f0a3b91.js.map
Edit
7882.e1721e9d6ac2d421bcda.js
Edit
7882.e1721e9d6ac2d421bcda.js.map
Edit
7886.8499ded396232466be7d.js
Edit
7886.8499ded396232466be7d.js.map
Edit
7887.a6dcfd824d57598ba1c3.js
Edit
7887.a6dcfd824d57598ba1c3.js.map
Edit
7969.a048d8060cabf1aede33.js
Edit
7969.a048d8060cabf1aede33.js.map
Edit
7996.bd232896e4559d37a26f.js
Edit
7996.bd232896e4559d37a26f.js.map
Edit
8016.8145cd87abcdd0646db2.js
Edit
8016.8145cd87abcdd0646db2.js.map
Edit
8018.c31846109f2dff21d8c4.js
Edit
8018.c31846109f2dff21d8c4.js.map
Edit
8056.4e8f71ed4d507f89b487.js
Edit
8056.4e8f71ed4d507f89b487.js.map
Edit
8177.52abd0953ac914f69e26.js
Edit
8177.52abd0953ac914f69e26.js.map
Edit
8220.aeea4a8f0893b3447b56.js
Edit
8220.aeea4a8f0893b3447b56.js.map
Edit
8224.75bd73bf51ff7a2fc4a0.js
Edit
8224.75bd73bf51ff7a2fc4a0.js.map
Edit
8230.d65bce2998eec95c6082.js
Edit
8230.d65bce2998eec95c6082.js.map
Edit
8260.c1da67af19b9259d5651.js
Edit
8260.c1da67af19b9259d5651.js.map
Edit
8271.0ee36e030014244adb47.js
Edit
8271.0ee36e030014244adb47.js.map
Edit
8332.a62e8632a336661f2969.js
Edit
8332.a62e8632a336661f2969.js.map
Edit
8334.1196f5ddcef25711fc25.js
Edit
8334.1196f5ddcef25711fc25.js.map
Edit
8347.de402f9280cd7a316c57.js
Edit
8347.de402f9280cd7a316c57.js.map
Edit
8390.9de755da2e214cc845a3.js
Edit
8390.9de755da2e214cc845a3.js.map
Edit
8393.30e95ae45cbe5455dcda.js
Edit
8393.30e95ae45cbe5455dcda.js.map
Edit
8477.4dad0537d13cf9315e86.js
Edit
8477.4dad0537d13cf9315e86.js.map
Edit
8494.659892f00c9d15ae441a.js
Edit
8494.659892f00c9d15ae441a.js.map
Edit
8530.0460c988ee4a40ce7769.js
Edit
8530.0460c988ee4a40ce7769.js.map
Edit
8542.317c15ed57f68fcf0c97.js
Edit
8542.317c15ed57f68fcf0c97.js.map
Edit
8547.390120a5caf7646e0e3e.js
Edit
8547.390120a5caf7646e0e3e.js.map
Edit
8566.5c8f392bb383ab92eed0.js
Edit
8566.5c8f392bb383ab92eed0.js.map
Edit
8622.5acf73c1485a11dfb0ab.js
Edit
8622.5acf73c1485a11dfb0ab.js.map
Edit
8706.f17afa6bcdfd511d5b03.js
Edit
8706.f17afa6bcdfd511d5b03.js.map
Edit
874.d24410518317d605c708.js
Edit
874.d24410518317d605c708.js.map
Edit
8813.e5137844631f6ddedbce.js
Edit
8813.e5137844631f6ddedbce.js.map
Edit
8856.2720526447b3adb5c75f.js
Edit
8856.2720526447b3adb5c75f.js.map
Edit
886.5f3383e84b10a6530b97.js
Edit
886.5f3383e84b10a6530b97.js.map
Edit
8864.2f4ee982114c25634e55.js
Edit
8864.2f4ee982114c25634e55.js.map
Edit
8902.71f14964ec6cea84dc8e.js
Edit
8902.71f14964ec6cea84dc8e.js.map
Edit
8932.e59e50ddb63414e0f2b9.js
Edit
8932.e59e50ddb63414e0f2b9.js.map
Edit
8990.665213a5c89afd6b2f83.js
Edit
8990.665213a5c89afd6b2f83.js.map
Edit
9034.a32e36472481cbe5d72d.js
Edit
9034.a32e36472481cbe5d72d.js.map
Edit
9038.f03b25f160057d4a0bf6.js
Edit
9038.f03b25f160057d4a0bf6.js.map
Edit
904.b68cd2a0cd6d68c5f1ae.js
Edit
904.b68cd2a0cd6d68c5f1ae.js.map
Edit
9044.441f64d6d946cc93be46.js
Edit
9044.441f64d6d946cc93be46.js.map
Edit
9147.8309cadbc384209d62e5.js
Edit
9147.8309cadbc384209d62e5.js.map
Edit
9150.38487365ffd149b730af.js
Edit
9150.38487365ffd149b730af.js.map
Edit
9292.e6befb57f8f116ad95a8.js
Edit
9292.e6befb57f8f116ad95a8.js.map
Edit
9355.95d7e1782f93f339549e.js
Edit
9355.95d7e1782f93f339549e.js.map
Edit
9388.88d95a230e9432e7037b.js
Edit
9388.88d95a230e9432e7037b.js.map
Edit
9390.c72fcd228017f7647b38.js
Edit
9390.c72fcd228017f7647b38.js.map
Edit
9414.642bfe0d5eb16efd0c16.js
Edit
9414.642bfe0d5eb16efd0c16.js.map
Edit
9449.502f2a824d0203e88d4d.js
Edit
9449.502f2a824d0203e88d4d.js.map
Edit
946.48c5e8c688cf29424295.js
Edit
946.48c5e8c688cf29424295.js.map
Edit
9473.e6fc327da88d88712828.js
Edit
9473.e6fc327da88d88712828.js.map
Edit
9510.1e255e96fe40aad2ed6f.js
Edit
9510.1e255e96fe40aad2ed6f.js.map
Edit
9521.e65411d726c29d77c526.js
Edit
9521.e65411d726c29d77c526.js.map
Edit
9538.a2289ff9ad06e24e391f.js
Edit
9538.a2289ff9ad06e24e391f.js.map
Edit
957.3c35d66aa698d8bdfe05.js
Edit
957.3c35d66aa698d8bdfe05.js.map
Edit
9571.41558d40bff9ea8c0726.js
Edit
9571.41558d40bff9ea8c0726.js.map
Edit
9578.9cfae16465bb9bc1f336.js
Edit
9578.9cfae16465bb9bc1f336.js.map
Edit
968.d4b150f9211c478b7b05.js
Edit
968.d4b150f9211c478b7b05.js.map
Edit
970.46f17b76711e4961a575.js
Edit
970.46f17b76711e4961a575.js.map
Edit
9700.02180b7a06c8a1f7606b.js
Edit
9700.02180b7a06c8a1f7606b.js.map
Edit
9744.aa6baaf988a68fa6a9ba.js
Edit
9744.aa6baaf988a68fa6a9ba.js.map
Edit
9820.6b462d83575efd05c883.js
Edit
9820.6b462d83575efd05c883.js.map
Edit
9838.06bd7dfd4290786f80e3.js
Edit
9838.06bd7dfd4290786f80e3.js.map
Edit
9992.fb08517d3ff77e887443.js
Edit
9992.fb08517d3ff77e887443.js.map
Edit
9996.21c451f22ff76b4bb683.js
Edit
9996.21c451f22ff76b4bb683.js.map
Edit
AdminAuthentication.076c98c6380fd1e42f7e.js
Edit
AdminAuthentication.076c98c6380fd1e42f7e.js.map
Edit
AdminEditOrgPage.8df8167ea6ff8f4803bd.js
Edit
AdminEditOrgPage.8df8167ea6ff8f4803bd.js.map
Edit
AdminListOrgsPage.176dac9ed391bda8952b.js
Edit
AdminListOrgsPage.176dac9ed391bda8952b.js.map
Edit
AdminSettings.7373ed8fa9b943bb2098.js
Edit
AdminSettings.7373ed8fa9b943bb2098.js.map
Edit
AlertGroups.81264e6e5009c36eed6e.js
Edit
AlertGroups.81264e6e5009c36eed6e.js.map
Edit
AlertRuleListIndex.98e7328feeaa2ffe67eb.js
Edit
AlertRuleListIndex.98e7328feeaa2ffe67eb.js.map
Edit
AlertingDisabled.b2c834be0ca4666dd793.js
Edit
AlertingDisabled.b2c834be0ca4666dd793.js.map
Edit
AlertingGroupDetails.3a2c6ef8085b505852e4.js
Edit
AlertingGroupDetails.3a2c6ef8085b505852e4.js.map
Edit
AlertingGroupEdit.69cfe9d5f37a1fc65326.js
Edit
AlertingGroupEdit.69cfe9d5f37a1fc65326.js.map
Edit
AlertingHome.06f307ab9a2a5d8b7f93.js
Edit
AlertingHome.06f307ab9a2a5d8b7f93.js.map
Edit
AlertingImportFromDSRules.f1224bcb622d25e2c94f.js
Edit
AlertingImportFromDSRules.f1224bcb622d25e2c94f.js.map
Edit
AlertingRedirectToRule.9ed1d16829d6833d2827.js
Edit
AlertingRedirectToRule.9ed1d16829d6833d2827.js.map
Edit
AlertingRuleForm.2e69d3f00eb6221e7355.js
Edit
AlertingRuleForm.2e69d3f00eb6221e7355.js.map
Edit
AlertingSettings.7a5f782f877cec4790cb.js
Edit
AlertingSettings.7a5f782f877cec4790cb.js.map
Edit
AlertingTriage.1174f36b4937ad0047c1.js
Edit
AlertingTriage.1174f36b4937ad0047c1.js.map
Edit
BenchmarksPage.ef387f4598ba2b2236ad.js
Edit
BenchmarksPage.ef387f4598ba2b2236ad.js.map
Edit
BookmarksPage.8fe93eb7377073f0c985.js
Edit
BookmarksPage.8fe93eb7377073f0c985.js.map
Edit
ChangePasswordPage.f21b0b1dd107ccd33c1a.js
Edit
ChangePasswordPage.f21b0b1dd107ccd33c1a.js.map
Edit
Connections.949b6389e73bcadb2109.js
Edit
Connections.949b6389e73bcadb2109.js.map
Edit
ContactPoints.9ae2d1927d60c6169b87.js
Edit
ContactPoints.9ae2d1927d60c6169b87.js.map
Edit
CorrelationsFeatureToggle.ec2f1aefce6b456e15eb.js
Edit
CorrelationsFeatureToggle.ec2f1aefce6b456e15eb.js.map
Edit
CorrelationsPage.bd7fcd24ed0b5fe8ac3e.js
Edit
CorrelationsPage.bd7fcd24ed0b5fe8ac3e.js.map
Edit
CreateTeam.429acf93986740280312.js
Edit
CreateTeam.429acf93986740280312.js.map
Edit
DashboardImport.3e9b6f980b81d6f1c755.js
Edit
DashboardImport.3e9b6f980b81d6f1c755.js.map
Edit
DashboardListPage.abeb0c29f072f888f9fb.js
Edit
DashboardListPage.abeb0c29f072f888f9fb.js.map
Edit
DashboardPage.72557fe6dd1a022b7d48.js
Edit
DashboardPage.72557fe6dd1a022b7d48.js.map
Edit
DashboardPageProxy.80adfefad8a885d8e2ef.js
Edit
DashboardPageProxy.80adfefad8a885d8e2ef.js.map
Edit
DashboardScenePage.83fe1fa9509b50120d65.js
Edit
DashboardScenePage.83fe1fa9509b50120d65.js.map
Edit
EditContactPoint.0c33428ddc8ba974d946.js
Edit
EditContactPoint.0c33428ddc8ba974d946.js.map
Edit
EditMuteTiming.8760cc9c77560acf0cd6.js
Edit
EditMuteTiming.8760cc9c77560acf0cd6.js.map
Edit
EditRepositoryPage.d71faaab1af2c8d70a22.js
Edit
EditRepositoryPage.d71faaab1af2c8d70a22.js.map
Edit
EmbeddedDashboard.57de550bce819e3d52e6.js
Edit
EmbeddedDashboard.57de550bce819e3d52e6.js.map
Edit
FileHistoryPage.154ab77c19bbe0ebed20.js
Edit
FileHistoryPage.154ab77c19bbe0ebed20.js.map
Edit
FileStatusPage.36f58cd61202ec603d22.js
Edit
FileStatusPage.36f58cd61202ec603d22.js.map
Edit
FolderAlerting.0b9acb6c42276aaee57d.js
Edit
FolderAlerting.0b9acb6c42276aaee57d.js.map
Edit
FolderLibraryPanelsPage.44f8cabf542ec314d176.js
Edit
FolderLibraryPanelsPage.44f8cabf542ec314d176.js.map
Edit
GettingStartedPage.4bea37f1c9bdcfd0f41b.js
Edit
GettingStartedPage.4bea37f1c9bdcfd0f41b.js.map
Edit
GlobalConfig.1377596507974d18caf6.js
Edit
GlobalConfig.1377596507974d18caf6.js.map
Edit
HistoryPage.4da98f4fa313ee3676ca.js
Edit
HistoryPage.4da98f4fa313ee3676ca.js.map
Edit
LdapSettingsPage.0e9f08d5e59150ecf466.js
Edit
LdapSettingsPage.0e9f08d5e59150ecf466.js.map
Edit
LibraryPanelsPage.824580d7751526c658e2.js
Edit
LibraryPanelsPage.824580d7751526c658e2.js.map
Edit
ListPublicDashboardPage.64c26ffd3ebe6c9076f3.js
Edit
ListPublicDashboardPage.64c26ffd3ebe6c9076f3.js.map
Edit
LoginPage.db48423ed1b455431daa.js
Edit
LoginPage.db48423ed1b455431daa.js.map
Edit
MetricsDrilldownRedirect.fcad4bdff346974952f4.js
Edit
MetricsDrilldownRedirect.fcad4bdff346974952f4.js.map
Edit
MigrateToCloud.5b474ad00e8a3d979750.js
Edit
MigrateToCloud.5b474ad00e8a3d979750.js.map
Edit
NewMuteTiming.2f6302420674f1c73aba.js
Edit
NewMuteTiming.2f6302420674f1c73aba.js.map
Edit
NewOrgPage.be31eaee06e2043d609b.js
Edit
NewOrgPage.be31eaee06e2043d609b.js.map
Edit
NewReceiverView.f1d83eb66a39882b8661.js
Edit
NewReceiverView.f1d83eb66a39882b8661.js.map
Edit
NewSilencePage.2643a48031f7e5d8f376.js
Edit
NewSilencePage.2643a48031f7e5d8f376.js.map
Edit
NotificationPoliciesPage.9333d10ecad1452ebf27.js
Edit
NotificationPoliciesPage.9333d10ecad1452ebf27.js.map
Edit
NotificationsPage.57df4ff5ba1433a4345d.js
Edit
NotificationsPage.57df4ff5ba1433a4345d.js.map
Edit
OrgDetailsPage.7b5835c30585aae81343.js
Edit
OrgDetailsPage.7b5835c30585aae81343.js.map
Edit
PlaylistEditPage.8310e384af659e40c313.js
Edit
PlaylistEditPage.8310e384af659e40c313.js.map
Edit
PlaylistNewPage.f45b642a98a747e28c0d.js
Edit
PlaylistNewPage.f45b642a98a747e28c0d.js.map
Edit
PlaylistPage.9af74957a1cdfb125338.js
Edit
PlaylistPage.9af74957a1cdfb125338.js.map
Edit
PlaylistStartPage.8011a98267ac64c7fa05.js
Edit
PlaylistStartPage.8011a98267ac64c7fa05.js.map
Edit
PluginExtensionsLog.54c02047d569b0c05823.js
Edit
PluginExtensionsLog.54c02047d569b0c05823.js.map
Edit
PluginListPage.e50c18fed21c23ca4ee8.js
Edit
PluginListPage.e50c18fed21c23ca4ee8.js.map
Edit
PluginPage.ae424531bce63dd4721e.js
Edit
PluginPage.ae424531bce63dd4721e.js.map
Edit
ProfileFeatureTogglePage.27378dcbb7520611348e.js
Edit
ProfileFeatureTogglePage.27378dcbb7520611348e.js.map
Edit
ProvisioningWizardPage.c4e4a8f431b4719b0e95.js
Edit
ProvisioningWizardPage.c4e4a8f431b4719b0e95.js.map
Edit
PublicDashboardPage.33d6ec8f685f1b70b9a6.js
Edit
PublicDashboardPage.33d6ec8f685f1b70b9a6.js.map
Edit
RecentlyDeleted.5e0ec16474d939fd9683.js
Edit
RecentlyDeleted.5e0ec16474d939fd9683.js.map
Edit
RecentlyDeletedPage.1dbc2b80b28204de8237.js
Edit
RecentlyDeletedPage.1dbc2b80b28204de8237.js.map
Edit
RepositoryListPage.ec3a0af1cbe2740800bf.js
Edit
RepositoryListPage.ec3a0af1cbe2740800bf.js.map
Edit
RepositoryStatusPage.9aee60589e35a4a19ec2.js
Edit
RepositoryStatusPage.9aee60589e35a4a19ec2.js.map
Edit
SelectOrgPage.910a8d842019a6d7fe93.js
Edit
SelectOrgPage.910a8d842019a6d7fe93.js.map
Edit
SendResetMailPage.513361d6980f98ff8139.js
Edit
SendResetMailPage.513361d6980f98ff8139.js.map
Edit
ServerStats.2830ca154f465dbdecea.js
Edit
ServerStats.2830ca154f465dbdecea.js.map
Edit
ServiceAccountCreatePage.80fcbdd2b7f5aa4e2da1.js
Edit
ServiceAccountCreatePage.80fcbdd2b7f5aa4e2da1.js.map
Edit
ServiceAccountPage.48944056459bb412ff33.js
Edit
ServiceAccountPage.48944056459bb412ff33.js.map
Edit
ServiceAccountsPage.d20b1eb9f87661f10b45.js
Edit
ServiceAccountsPage.d20b1eb9f87661f10b45.js.map
Edit
SignupInvited.fe2c29f380e9888c28cf.js
Edit
SignupInvited.fe2c29f380e9888c28cf.js.map
Edit
SilencesTablePage.b998fdbdcc3d60a81739.js
Edit
SilencesTablePage.b998fdbdcc3d60a81739.js.map
Edit
SnapshotListPage.6feaf24adb92e6a302ec.js
Edit
SnapshotListPage.6feaf24adb92e6a302ec.js.map
Edit
SoloPanelPage.7fc6a934aaadf4c1f84d.js
Edit
SoloPanelPage.7fc6a934aaadf4c1f84d.js.map
Edit
SoloPanelPageOld.bde57e000dd0a0108685.js
Edit
SoloPanelPageOld.bde57e000dd0a0108685.js.map
Edit
SupportBundles.1f46603ad3494624d67a.js
Edit
SupportBundles.1f46603ad3494624d67a.js.map
Edit
SupportBundlesCreate.5eaea61a9713f057277b.js
Edit
SupportBundlesCreate.5eaea61a9713f057277b.js.map
Edit
TeamList.6b088f83e6e8cb66b21d.js
Edit
TeamList.6b088f83e6e8cb66b21d.js.map
Edit
TeamPages.9d8b5dceef8be43c6923.js
Edit
TeamPages.9d8b5dceef8be43c6923.js.map
Edit
Templates.7a02a8497ebca052dcfb.js
Edit
Templates.7a02a8497ebca052dcfb.js.map
Edit
TestStuffPage.982c641592b2f7c9db40.js
Edit
TestStuffPage.982c641592b2f7c9db40.js.map
Edit
ThemePlayground.aeeec77fd8e9c1482f55.js
Edit
ThemePlayground.aeeec77fd8e9c1482f55.js.map
Edit
UserAdminPage.fc4d562eef05d9f59aca.js
Edit
UserAdminPage.fc4d562eef05d9f59aca.js.map
Edit
UserCreatePage.b7036214c66612fb31e9.js
Edit
UserCreatePage.b7036214c66612fb31e9.js.map
Edit
UserInvitePage.4a9bcd4084d7ae454c73.js
Edit
UserInvitePage.4a9bcd4084d7ae454c73.js.map
Edit
UserListPage.a452e1153ae820f58ac9.js
Edit
UserListPage.a452e1153ae820f58ac9.js.map
Edit
UserProfileEditPage.82c11690282e669eabb1.js
Edit
UserProfileEditPage.82c11690282e669eabb1.js.map
Edit
alert-rules-drawer-content.c95bb5ddd3fc813cae92.js
Edit
alert-rules-drawer-content.c95bb5ddd3fc813cae92.js.map
Edit
alert-rules-toolbar-button.0d86c1adae7edb55ff76.js
Edit
alert-rules-toolbar-button.0d86c1adae7edb55ff76.js.map
Edit
alertListPanel.0110106a8d1ab70d65d5.js
Edit
alertListPanel.0110106a8d1ab70d65d5.js.map
Edit
alertmanagerPlugin.2b59de5e7b7a556f87f1.js
Edit
alertmanagerPlugin.2b59de5e7b7a556f87f1.js.map
Edit
annoListPanel.0005a0eab0b05e24d970.js
Edit
annoListPanel.0005a0eab0b05e24d970.js.map
Edit
app.8385deda1df49aa75ec2.js
Edit
app.8385deda1df49aa75ec2.js.map
Edit
assets-manifest.json
Edit
barChartPanel.eecdaeab7d146d477721.js
Edit
barChartPanel.eecdaeab7d146d477721.js.map
Edit
barGaugePanel.6d9e94bbb72ba92a0e9b.js
Edit
barGaugePanel.6d9e94bbb72ba92a0e9b.js.map
Edit
candlestickPanel.af0e0decd06e7b7ab286.js
Edit
candlestickPanel.af0e0decd06e7b7ab286.js.map
Edit
canvasPanel.ddab72fab6e58c3419b2.js
Edit
canvasPanel.ddab72fab6e58c3419b2.js.map
Edit
cloudwatchPlugin.06ef34f60000c4f7ea37.js
Edit
cloudwatchPlugin.06ef34f60000c4f7ea37.js.map
Edit
dark.b66fa87185b9a313ec14.js
Edit
dashListPanel.23b954da0c4888602048.js
Edit
dashListPanel.23b954da0c4888602048.js.map
Edit
dataGridPanel.bb5d4b678cba38dd380b.js
Edit
debugPanel.fff63da32084d7a2e236.js
Edit
debugPanel.fff63da32084d7a2e236.js.map
Edit
elasticsearchPlugin.3f2edb012f5162b48903.js
Edit
elasticsearchPlugin.3f2edb012f5162b48903.js.map
Edit
explore-feature-toggle-page.3de03fa91c88d05cea1c.js
Edit
explore-feature-toggle-page.3de03fa91c88d05cea1c.js.map
Edit
explore.dd32637df83326225e0d.js
Edit
explore.dd32637df83326225e0d.js.map
Edit
flamegraphPanel.cc6c5b4bcd69e406fbb7.js
Edit
flamegraphPanel.cc6c5b4bcd69e406fbb7.js.map
Edit
gaugePanel.5da3c4e39a652e281cc4.js
Edit
gaugePanel.5da3c4e39a652e281cc4.js.map
Edit
gazetteer
Edit
geomapPanel.67ebb4567e9b5fa5074b.js
Edit
gettingStartedPanel.833059170dbbf8d5c4bf.js
Edit
gettingStartedPanel.833059170dbbf8d5c4bf.js.map
Edit
grafana.1492.25120d27db88f863e058.css
Edit
grafana.4350.a45e45977094df4a0bc9.css
Edit
grafana.5790.ffb3a9cd952d3cd7471b.css
Edit
grafana.DashboardPage.a66335f88cd003e4a44f.css
Edit
grafana.DashboardPageProxy.a66335f88cd003e4a44f.css
Edit
grafana.app.1f6473bb54b1e1647be8.css
Edit
grafana.dark.1e8d85816912aadbbba5.css
Edit
grafana.dataGridPanel.c1fc5db1829b1b31eb4d.css
Edit
grafana.geomapPanel.0057d964fa972bb207ec.css
Edit
grafana.light.111a5a99fcebc0962ddc.css
Edit
grafana.livePanel.25120d27db88f863e058.css
Edit
grafana.react-monaco-editor.ffb3a9cd952d3cd7471b.css
Edit
grafana.swagger.d0a2da197b9827204ac1.css
Edit
grafana.tablePanel.25120d27db88f863e058.css
Edit
grafanaPlugin.f21cdb4b84a732cc9dd8.js
Edit
grafanaPlugin.f21cdb4b84a732cc9dd8.js.map
Edit
heatmapPanel.7834b997bc573eddba88.js
Edit
heatmapPanel.7834b997bc573eddba88.js.map
Edit
histogramPanel.9953bfeccf8774500c0c.js
Edit
histogramPanel.9953bfeccf8774500c0c.js.map
Edit
img
Edit
influxdbPlugin.7a899e63be0a65d41e13.js
Edit
influxdbPlugin.7a899e63be0a65d41e13.js.map
Edit
light.827d442410485e491818.js
Edit
livePanel.2a43f499bc746d928d45.js
Edit
livePanel.2a43f499bc746d928d45.js.map
Edit
logsPanel.a328022d248508a083c1.js
Edit
logsPanel.a328022d248508a083c1.js.map
Edit
loki-query-field.f9a0b82b636d4821760c.js
Edit
loki-query-field.f9a0b82b636d4821760c.js.map
Edit
maps
Edit
mixedPlugin.3a69de93f366afbb2f85.js
Edit
newsPanel.c17f40f7c88ea14620e7.js
Edit
newsPanel.c17f40f7c88ea14620e7.js.map
Edit
nodeGraphPanel.f717a9075d994a9a8af4.js
Edit
nodeGraphPanel.f717a9075d994a9a8af4.js.map
Edit
opentsdbPlugin.1795eab1c223ea030c2e.js
Edit
opentsdbPlugin.1795eab1c223ea030c2e.js.map
Edit
pieChartPanel.45166aa6d57d163817ea.js
Edit
pieChartPanel.45166aa6d57d163817ea.js.map
Edit
prometheusPlugin.c3a55eb5353085fc3d2b.js
Edit
prometheusPlugin.c3a55eb5353085fc3d2b.js.map
Edit
radialBarPanel.294c52d497d8f5c2bebb.js
Edit
radialBarPanel.294c52d497d8f5c2bebb.js.map
Edit
runtime.a37cc2f12a959f33871a.js
Edit
runtime.a37cc2f12a959f33871a.js.map
Edit
sql-query-editor.e767d4a2aef360034bd9.js
Edit
sql-query-editor.e767d4a2aef360034bd9.js.map
Edit
statPanel.3a7f191bfb27fd320014.js
Edit
statPanel.3a7f191bfb27fd320014.js.map
Edit
stateTimelinePanel.08d857b143ef89dc195f.js
Edit
stateTimelinePanel.08d857b143ef89dc195f.js.map
Edit
static
Edit
statusHistoryPanel.29f7b8dc01039ba795af.js
Edit
statusHistoryPanel.29f7b8dc01039ba795af.js.map
Edit
swagger.06875a6266679f54141d.js
Edit
swagger.06875a6266679f54141d.js.map
Edit
tablePanel.43861ce2a60617dcd19d.js
Edit
tablePanel.43861ce2a60617dcd19d.js.map
Edit
textPanel.867ee60d01b2039aa159.js
Edit
textPanel.867ee60d01b2039aa159.js.map
Edit
timeseriesPanel.b4a947da450030262a31.js
Edit
timeseriesPanel.b4a947da450030262a31.js.map
Edit
tracesPanel.35bfc3e5ff6bea4212a3.js
Edit
tracesPanel.35bfc3e5ff6bea4212a3.js.map
Edit
trendPanel.001aff2bd153e737c464.js
Edit
trendPanel.001aff2bd153e737c464.js.map
Edit
vis-data.b34535ebabc0fcb91557.js
Edit
vis-data.b34535ebabc0fcb91557.js.map
Edit
vis-network.1b41caf21892c9525709.js
Edit
vis-network.1b41caf21892c9525709.js.map
Edit
welcomeBanner.1a693c9dc02006be4f0b.js
Edit
welcomeBanner.1a693c9dc02006be4f0b.js.map
Edit
xychart.cb20af67a6c495ba6ccd.js
Edit
xychart.cb20af67a6c495ba6ccd.js.map
Edit