@sjvair/monitor-map 2.8.0 → 2.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/sjvairMonitorMap.js
CHANGED
|
@@ -35,7 +35,7 @@ const sa=/#/g,ra=/&/g,aa=/\//g,la=/=/g,ca=/\?/g,ua=/\+/g,ha=/%5B/g,da=/%5D/g,pa=
|
|
|
35
35
|
/* @preserve
|
|
36
36
|
* Leaflet 1.9.4, a JS library for interactive maps. https://leafletjs.com
|
|
37
37
|
* (c) 2010-2023 Vladimir Agafonkin, (c) 2010-2011 CloudMade
|
|
38
|
-
*/var hu=(cu||(cu=1,function(t){var e="1.9.4";function n(t){var e,n,i,o;for(n=1,i=arguments.length;n<i;n++)for(e in o=arguments[n])t[e]=o[e];return t}var i=Object.create||function(){function t(){}return function(e){return t.prototype=e,new t}}();function o(t,e){var n=Array.prototype.slice;if(t.bind)return t.bind.apply(t,n.call(arguments,1));var i=n.call(arguments,2);return function(){return t.apply(e,i.length?i.concat(n.call(arguments)):arguments)}}var s=0;function r(t){return"_leaflet_id"in t||(t._leaflet_id=++s),t._leaflet_id}function a(t,e,n){var i,o,s,r;return r=function(){i=!1,o&&(s.apply(n,o),o=!1)},s=function(){i?o=arguments:(t.apply(n,arguments),setTimeout(r,e),i=!0)},s}function l(t,e,n){var i=e[1],o=e[0],s=i-o;return t===i&&n?t:((t-o)%s+s)%s+o}function c(){return!1}function u(t,e){if(!1===e)return t;var n=Math.pow(10,void 0===e?6:e);return Math.round(t*n)/n}function h(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function d(t){return h(t).split(/\s+/)}function p(t,e){for(var n in Object.prototype.hasOwnProperty.call(t,"options")||(t.options=t.options?i(t.options):{}),e)t.options[n]=e[n];return t.options}function f(t,e,n){var i=[];for(var o in t)i.push(encodeURIComponent(n?o.toUpperCase():o)+"="+encodeURIComponent(t[o]));return(e&&-1!==e.indexOf("?")?"&":"?")+i.join("&")}var _=/\{ *([\w_ -]+) *\}/g;function m(t,e){return t.replace(_,function(t,n){var i=e[n];if(void 0===i)throw new Error("No value provided for variable "+t);return"function"==typeof i&&(i=i(e)),i})}var g=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)};function v(t,e){for(var n=0;n<t.length;n++)if(t[n]===e)return n;return-1}var y="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=";function b(t){return window["webkit"+t]||window["moz"+t]||window["ms"+t]}var w=0;function x(t){var e=+new Date,n=Math.max(0,16-(e-w));return w=e+n,window.setTimeout(t,n)}var P=window.requestAnimationFrame||b("RequestAnimationFrame")||x,C=window.cancelAnimationFrame||b("CancelAnimationFrame")||b("CancelRequestAnimationFrame")||function(t){window.clearTimeout(t)};function M(t,e,n){if(!n||P!==x)return P.call(window,o(t,e));t.call(e)}function T(t){t&&C.call(window,t)}var k={__proto__:null,extend:n,create:i,bind:o,get lastId(){return s},stamp:r,throttle:a,wrapNum:l,falseFn:c,formatNum:u,trim:h,splitWords:d,setOptions:p,getParamString:f,template:m,isArray:g,indexOf:v,emptyImageUrl:y,requestFn:P,cancelFn:C,requestAnimFrame:M,cancelAnimFrame:T};function S(){}function A(t){if("undefined"!=typeof L&&L&&L.Mixin){t=g(t)?t:[t];for(var e=0;e<t.length;e++)t[e]===L.Mixin.Events&&console.warn("Deprecated include of L.Mixin.Events: this property will be removed in future releases, please inherit from L.Evented instead.",(new Error).stack)}}S.extend=function(t){var e=function(){p(this),this.initialize&&this.initialize.apply(this,arguments),this.callInitHooks()},o=e.__super__=this.prototype,s=i(o);for(var r in s.constructor=e,e.prototype=s,this)Object.prototype.hasOwnProperty.call(this,r)&&"prototype"!==r&&"__super__"!==r&&(e[r]=this[r]);return t.statics&&n(e,t.statics),t.includes&&(A(t.includes),n.apply(null,[s].concat(t.includes))),n(s,t),delete s.statics,delete s.includes,s.options&&(s.options=o.options?i(o.options):{},n(s.options,t.options)),s._initHooks=[],s.callInitHooks=function(){if(!this._initHooksCalled){o.callInitHooks&&o.callInitHooks.call(this),this._initHooksCalled=!0;for(var t=0,e=s._initHooks.length;t<e;t++)s._initHooks[t].call(this)}},e},S.include=function(t){var e=this.prototype.options;return n(this.prototype,t),t.options&&(this.prototype.options=e,this.mergeOptions(t.options)),this},S.mergeOptions=function(t){return n(this.prototype.options,t),this},S.addInitHook=function(t){var e=Array.prototype.slice.call(arguments,1),n="function"==typeof t?t:function(){this[t].apply(this,e)};return this.prototype._initHooks=this.prototype._initHooks||[],this.prototype._initHooks.push(n),this};var E={on:function(t,e,n){if("object"==typeof t)for(var i in t)this._on(i,t[i],e);else for(var o=0,s=(t=d(t)).length;o<s;o++)this._on(t[o],e,n);return this},off:function(t,e,n){if(arguments.length)if("object"==typeof t)for(var i in t)this._off(i,t[i],e);else{t=d(t);for(var o=1===arguments.length,s=0,r=t.length;s<r;s++)o?this._off(t[s]):this._off(t[s],e,n)}else delete this._events;return this},_on:function(t,e,n,i){if("function"==typeof e){if(!1===this._listens(t,e,n)){n===this&&(n=void 0);var o={fn:e,ctx:n};i&&(o.once=!0),this._events=this._events||{},this._events[t]=this._events[t]||[],this._events[t].push(o)}}else console.warn("wrong listener type: "+typeof e)},_off:function(t,e,n){var i,o,s;if(this._events&&(i=this._events[t]))if(1!==arguments.length)if("function"==typeof e){var r=this._listens(t,e,n);if(!1!==r){var a=i[r];this._firingCount&&(a.fn=c,this._events[t]=i=i.slice()),i.splice(r,1)}}else console.warn("wrong listener type: "+typeof e);else{if(this._firingCount)for(o=0,s=i.length;o<s;o++)i[o].fn=c;delete this._events[t]}},fire:function(t,e,i){if(!this.listens(t,i))return this;var o=n({},e,{type:t,target:this,sourceTarget:e&&e.sourceTarget||this});if(this._events){var s=this._events[t];if(s){this._firingCount=this._firingCount+1||1;for(var r=0,a=s.length;r<a;r++){var l=s[r],c=l.fn;l.once&&this.off(t,c,l.ctx),c.call(l.ctx||this,o)}this._firingCount--}}return i&&this._propagateEvent(o),this},listens:function(t,e,n,i){"string"!=typeof t&&console.warn('"string" type argument expected');var o=e;"function"!=typeof e&&(i=!!e,o=void 0,n=void 0);var s=this._events&&this._events[t];if(s&&s.length&&!1!==this._listens(t,o,n))return!0;if(i)for(var r in this._eventParents)if(this._eventParents[r].listens(t,e,n,i))return!0;return!1},_listens:function(t,e,n){if(!this._events)return!1;var i=this._events[t]||[];if(!e)return!!i.length;n===this&&(n=void 0);for(var o=0,s=i.length;o<s;o++)if(i[o].fn===e&&i[o].ctx===n)return o;return!1},once:function(t,e,n){if("object"==typeof t)for(var i in t)this._on(i,t[i],e,!0);else for(var o=0,s=(t=d(t)).length;o<s;o++)this._on(t[o],e,n,!0);return this},addEventParent:function(t){return this._eventParents=this._eventParents||{},this._eventParents[r(t)]=t,this},removeEventParent:function(t){return this._eventParents&&delete this._eventParents[r(t)],this},_propagateEvent:function(t){for(var e in this._eventParents)this._eventParents[e].fire(t.type,n({layer:t.target,propagatedFrom:t.target},t),!0)}};E.addEventListener=E.on,E.removeEventListener=E.clearAllEventListeners=E.off,E.addOneTimeEventListener=E.once,E.fireEvent=E.fire,E.hasEventListeners=E.listens;var O=S.extend(E);function z(t,e,n){this.x=n?Math.round(t):t,this.y=n?Math.round(e):e}var I=Math.trunc||function(t){return t>0?Math.floor(t):Math.ceil(t)};function B(t,e,n){return t instanceof z?t:g(t)?new z(t[0],t[1]):null==t?t:"object"==typeof t&&"x"in t&&"y"in t?new z(t.x,t.y):new z(t,e,n)}function Z(t,e){if(t)for(var n=e?[t,e]:t,i=0,o=n.length;i<o;i++)this.extend(n[i])}function R(t,e){return!t||t instanceof Z?t:new Z(t,e)}function D(t,e){if(t)for(var n=e?[t,e]:t,i=0,o=n.length;i<o;i++)this.extend(n[i])}function N(t,e){return t instanceof D?t:new D(t,e)}function j(t,e,n){if(isNaN(t)||isNaN(e))throw new Error("Invalid LatLng object: ("+t+", "+e+")");this.lat=+t,this.lng=+e,void 0!==n&&(this.alt=+n)}function F(t,e,n){return t instanceof j?t:g(t)&&"object"!=typeof t[0]?3===t.length?new j(t[0],t[1],t[2]):2===t.length?new j(t[0],t[1]):null:null==t?t:"object"==typeof t&&"lat"in t?new j(t.lat,"lng"in t?t.lng:t.lon,t.alt):void 0===e?null:new j(t,e,n)}z.prototype={clone:function(){return new z(this.x,this.y)},add:function(t){return this.clone()._add(B(t))},_add:function(t){return this.x+=t.x,this.y+=t.y,this},subtract:function(t){return this.clone()._subtract(B(t))},_subtract:function(t){return this.x-=t.x,this.y-=t.y,this},divideBy:function(t){return this.clone()._divideBy(t)},_divideBy:function(t){return this.x/=t,this.y/=t,this},multiplyBy:function(t){return this.clone()._multiplyBy(t)},_multiplyBy:function(t){return this.x*=t,this.y*=t,this},scaleBy:function(t){return new z(this.x*t.x,this.y*t.y)},unscaleBy:function(t){return new z(this.x/t.x,this.y/t.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=I(this.x),this.y=I(this.y),this},distanceTo:function(t){var e=(t=B(t)).x-this.x,n=t.y-this.y;return Math.sqrt(e*e+n*n)},equals:function(t){return(t=B(t)).x===this.x&&t.y===this.y},contains:function(t){return t=B(t),Math.abs(t.x)<=Math.abs(this.x)&&Math.abs(t.y)<=Math.abs(this.y)},toString:function(){return"Point("+u(this.x)+", "+u(this.y)+")"}},Z.prototype={extend:function(t){var e,n;if(!t)return this;if(t instanceof z||"number"==typeof t[0]||"x"in t)e=n=B(t);else if(e=(t=R(t)).min,n=t.max,!e||!n)return this;return this.min||this.max?(this.min.x=Math.min(e.x,this.min.x),this.max.x=Math.max(n.x,this.max.x),this.min.y=Math.min(e.y,this.min.y),this.max.y=Math.max(n.y,this.max.y)):(this.min=e.clone(),this.max=n.clone()),this},getCenter:function(t){return B((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,t)},getBottomLeft:function(){return B(this.min.x,this.max.y)},getTopRight:function(){return B(this.max.x,this.min.y)},getTopLeft:function(){return this.min},getBottomRight:function(){return this.max},getSize:function(){return this.max.subtract(this.min)},contains:function(t){var e,n;return(t="number"==typeof t[0]||t instanceof z?B(t):R(t))instanceof Z?(e=t.min,n=t.max):e=n=t,e.x>=this.min.x&&n.x<=this.max.x&&e.y>=this.min.y&&n.y<=this.max.y},intersects:function(t){t=R(t);var e=this.min,n=this.max,i=t.min,o=t.max,s=o.x>=e.x&&i.x<=n.x,r=o.y>=e.y&&i.y<=n.y;return s&&r},overlaps:function(t){t=R(t);var e=this.min,n=this.max,i=t.min,o=t.max,s=o.x>e.x&&i.x<n.x,r=o.y>e.y&&i.y<n.y;return s&&r},isValid:function(){return!(!this.min||!this.max)},pad:function(t){var e=this.min,n=this.max,i=Math.abs(e.x-n.x)*t,o=Math.abs(e.y-n.y)*t;return R(B(e.x-i,e.y-o),B(n.x+i,n.y+o))},equals:function(t){return!!t&&(t=R(t),this.min.equals(t.getTopLeft())&&this.max.equals(t.getBottomRight()))}},D.prototype={extend:function(t){var e,n,i=this._southWest,o=this._northEast;if(t instanceof j)e=t,n=t;else{if(!(t instanceof D))return t?this.extend(F(t)||N(t)):this;if(e=t._southWest,n=t._northEast,!e||!n)return this}return i||o?(i.lat=Math.min(e.lat,i.lat),i.lng=Math.min(e.lng,i.lng),o.lat=Math.max(n.lat,o.lat),o.lng=Math.max(n.lng,o.lng)):(this._southWest=new j(e.lat,e.lng),this._northEast=new j(n.lat,n.lng)),this},pad:function(t){var e=this._southWest,n=this._northEast,i=Math.abs(e.lat-n.lat)*t,o=Math.abs(e.lng-n.lng)*t;return new D(new j(e.lat-i,e.lng-o),new j(n.lat+i,n.lng+o))},getCenter:function(){return new j((this._southWest.lat+this._northEast.lat)/2,(this._southWest.lng+this._northEast.lng)/2)},getSouthWest:function(){return this._southWest},getNorthEast:function(){return this._northEast},getNorthWest:function(){return new j(this.getNorth(),this.getWest())},getSouthEast:function(){return new j(this.getSouth(),this.getEast())},getWest:function(){return this._southWest.lng},getSouth:function(){return this._southWest.lat},getEast:function(){return this._northEast.lng},getNorth:function(){return this._northEast.lat},contains:function(t){t="number"==typeof t[0]||t instanceof j||"lat"in t?F(t):N(t);var e,n,i=this._southWest,o=this._northEast;return t instanceof D?(e=t.getSouthWest(),n=t.getNorthEast()):e=n=t,e.lat>=i.lat&&n.lat<=o.lat&&e.lng>=i.lng&&n.lng<=o.lng},intersects:function(t){t=N(t);var e=this._southWest,n=this._northEast,i=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>=e.lat&&i.lat<=n.lat,r=o.lng>=e.lng&&i.lng<=n.lng;return s&&r},overlaps:function(t){t=N(t);var e=this._southWest,n=this._northEast,i=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>e.lat&&i.lat<n.lat,r=o.lng>e.lng&&i.lng<n.lng;return s&&r},toBBoxString:function(){return[this.getWest(),this.getSouth(),this.getEast(),this.getNorth()].join(",")},equals:function(t,e){return!!t&&(t=N(t),this._southWest.equals(t.getSouthWest(),e)&&this._northEast.equals(t.getNorthEast(),e))},isValid:function(){return!(!this._southWest||!this._northEast)}},j.prototype={equals:function(t,e){return!!t&&(t=F(t),Math.max(Math.abs(this.lat-t.lat),Math.abs(this.lng-t.lng))<=(void 0===e?1e-9:e))},toString:function(t){return"LatLng("+u(this.lat,t)+", "+u(this.lng,t)+")"},distanceTo:function(t){return H.distance(this,F(t))},wrap:function(){return H.wrapLatLng(this)},toBounds:function(t){var e=180*t/40075017,n=e/Math.cos(Math.PI/180*this.lat);return N([this.lat-e,this.lng-n],[this.lat+e,this.lng+n])},clone:function(){return new j(this.lat,this.lng,this.alt)}};var U,G={latLngToPoint:function(t,e){var n=this.projection.project(t),i=this.scale(e);return this.transformation._transform(n,i)},pointToLatLng:function(t,e){var n=this.scale(e),i=this.transformation.untransform(t,n);return this.projection.unproject(i)},project:function(t){return this.projection.project(t)},unproject:function(t){return this.projection.unproject(t)},scale:function(t){return 256*Math.pow(2,t)},zoom:function(t){return Math.log(t/256)/Math.LN2},getProjectedBounds:function(t){if(this.infinite)return null;var e=this.projection.bounds,n=this.scale(t);return new Z(this.transformation.transform(e.min,n),this.transformation.transform(e.max,n))},infinite:!1,wrapLatLng:function(t){var e=this.wrapLng?l(t.lng,this.wrapLng,!0):t.lng;return new j(this.wrapLat?l(t.lat,this.wrapLat,!0):t.lat,e,t.alt)},wrapLatLngBounds:function(t){var e=t.getCenter(),n=this.wrapLatLng(e),i=e.lat-n.lat,o=e.lng-n.lng;if(0===i&&0===o)return t;var s=t.getSouthWest(),r=t.getNorthEast();return new D(new j(s.lat-i,s.lng-o),new j(r.lat-i,r.lng-o))}},H=n({},G,{wrapLng:[-180,180],R:6371e3,distance:function(t,e){var n=Math.PI/180,i=t.lat*n,o=e.lat*n,s=Math.sin((e.lat-t.lat)*n/2),r=Math.sin((e.lng-t.lng)*n/2),a=s*s+Math.cos(i)*Math.cos(o)*r*r,l=2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a));return this.R*l}}),$=6378137,V={R:$,MAX_LATITUDE:85.0511287798,project:function(t){var e=Math.PI/180,n=this.MAX_LATITUDE,i=Math.max(Math.min(n,t.lat),-n),o=Math.sin(i*e);return new z(this.R*t.lng*e,this.R*Math.log((1+o)/(1-o))/2)},unproject:function(t){var e=180/Math.PI;return new j((2*Math.atan(Math.exp(t.y/this.R))-Math.PI/2)*e,t.x*e/this.R)},bounds:(U=$*Math.PI,new Z([-U,-U],[U,U]))};function W(t,e,n,i){if(g(t))return this._a=t[0],this._b=t[1],this._c=t[2],void(this._d=t[3]);this._a=t,this._b=e,this._c=n,this._d=i}function q(t,e,n,i){return new W(t,e,n,i)}W.prototype={transform:function(t,e){return this._transform(t.clone(),e)},_transform:function(t,e){return e=e||1,t.x=e*(this._a*t.x+this._b),t.y=e*(this._c*t.y+this._d),t},untransform:function(t,e){return e=e||1,new z((t.x/e-this._b)/this._a,(t.y/e-this._d)/this._c)}};var Y=n({},H,{code:"EPSG:3857",projection:V,transformation:function(){var t=.5/(Math.PI*V.R);return q(t,.5,-t,.5)}()}),K=n({},Y,{code:"EPSG:900913"});function J(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}function X(t,e){var n,i,o,s,r,a,l="";for(n=0,o=t.length;n<o;n++){for(i=0,s=(r=t[n]).length;i<s;i++)l+=(i?"L":"M")+(a=r[i]).x+" "+a.y;l+=e?Dt.svg?"z":"x":""}return l||"M0 0"}var Q,tt=document.documentElement.style,et="ActiveXObject"in window,nt=et&&!document.addEventListener,it="msLaunchUri"in navigator&&!("documentMode"in document),ot=Rt("webkit"),st=Rt("android"),rt=Rt("android 2")||Rt("android 3"),at=parseInt(/WebKit\/([0-9]+)|$/.exec(navigator.userAgent)[1],10),lt=st&&Rt("Google")&&at<537&&!("AudioNode"in window),ct=!!window.opera,ut=!it&&Rt("chrome"),ht=Rt("gecko")&&!ot&&!ct&&!et,dt=!ut&&Rt("safari"),pt=Rt("phantom"),ft="OTransition"in tt,_t=0===navigator.platform.indexOf("Win"),mt=et&&"transition"in tt,gt="WebKitCSSMatrix"in window&&"m11"in new window.WebKitCSSMatrix&&!rt,vt="MozPerspective"in tt,yt=!window.L_DISABLE_3D&&(mt||gt||vt)&&!ft&&!pt,bt="undefined"!=typeof orientation||Rt("mobile"),wt=bt&&ot,xt=bt&>,Lt=!window.PointerEvent&&window.MSPointerEvent,Pt=!(!window.PointerEvent&&!Lt),Ct="ontouchstart"in window||!!window.TouchEvent,Mt=!window.L_NO_TOUCH&&(Ct||Pt),Tt=bt&&ct,kt=bt&&ht,St=(window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI)>1,At=function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("testPassiveEventSupport",c,e),window.removeEventListener("testPassiveEventSupport",c,e)}catch(vc){}return t}(),Et=!!document.createElement("canvas").getContext,Ot=!(!document.createElementNS||!J("svg").createSVGRect),zt=!!Ot&&((Q=document.createElement("div")).innerHTML="<svg/>","http://www.w3.org/2000/svg"===(Q.firstChild&&Q.firstChild.namespaceURI)),It=!Ot&&function(){try{var t=document.createElement("div");t.innerHTML='<v:shape adj="1"/>';var e=t.firstChild;return e.style.behavior="url(#default#VML)",e&&"object"==typeof e.adj}catch(vc){return!1}}(),Bt=0===navigator.platform.indexOf("Mac"),Zt=0===navigator.platform.indexOf("Linux");function Rt(t){return navigator.userAgent.toLowerCase().indexOf(t)>=0}var Dt={ie:et,ielt9:nt,edge:it,webkit:ot,android:st,android23:rt,androidStock:lt,opera:ct,chrome:ut,gecko:ht,safari:dt,phantom:pt,opera12:ft,win:_t,ie3d:mt,webkit3d:gt,gecko3d:vt,any3d:yt,mobile:bt,mobileWebkit:wt,mobileWebkit3d:xt,msPointer:Lt,pointer:Pt,touch:Mt,touchNative:Ct,mobileOpera:Tt,mobileGecko:kt,retina:St,passiveEvents:At,canvas:Et,svg:Ot,vml:It,inlineSvg:zt,mac:Bt,linux:Zt},Nt=Dt.msPointer?"MSPointerDown":"pointerdown",jt=Dt.msPointer?"MSPointerMove":"pointermove",Ft=Dt.msPointer?"MSPointerUp":"pointerup",Ut=Dt.msPointer?"MSPointerCancel":"pointercancel",Gt={touchstart:Nt,touchmove:jt,touchend:Ft,touchcancel:Ut},Ht={touchstart:te,touchmove:Qt,touchend:Qt,touchcancel:Qt},$t={},Vt=!1;function Wt(t,e,n){return"touchstart"===e&&Xt(),Ht[e]?(n=Ht[e].bind(this,n),t.addEventListener(Gt[e],n,!1),n):(console.warn("wrong event specified:",e),c)}function qt(t,e,n){Gt[e]?t.removeEventListener(Gt[e],n,!1):console.warn("wrong event specified:",e)}function Yt(t){$t[t.pointerId]=t}function Kt(t){$t[t.pointerId]&&($t[t.pointerId]=t)}function Jt(t){delete $t[t.pointerId]}function Xt(){Vt||(document.addEventListener(Nt,Yt,!0),document.addEventListener(jt,Kt,!0),document.addEventListener(Ft,Jt,!0),document.addEventListener(Ut,Jt,!0),Vt=!0)}function Qt(t,e){if(e.pointerType!==(e.MSPOINTER_TYPE_MOUSE||"mouse")){for(var n in e.touches=[],$t)e.touches.push($t[n]);e.changedTouches=[e],t(e)}}function te(t,e){e.MSPOINTER_TYPE_TOUCH&&e.pointerType===e.MSPOINTER_TYPE_TOUCH&&Ye(e),Qt(t,e)}function ee(t){var e,n,i={};for(n in t)e=t[n],i[n]=e&&e.bind?e.bind(t):e;return t=i,i.type="dblclick",i.detail=2,i.isTrusted=!1,i._simulated=!0,i}var ne=200;function ie(t,e){t.addEventListener("dblclick",e);var n,i=0;function o(t){if(1===t.detail){if("mouse"!==t.pointerType&&(!t.sourceCapabilities||t.sourceCapabilities.firesTouchEvents)){var o=Je(t);if(!o.some(function(t){return t instanceof HTMLLabelElement&&t.attributes.for})||o.some(function(t){return t instanceof HTMLInputElement||t instanceof HTMLSelectElement})){var s=Date.now();s-i<=ne?2===++n&&e(ee(t)):n=1,i=s}}}else n=t.detail}return t.addEventListener("click",o),{dblclick:e,simDblclick:o}}function oe(t,e){t.removeEventListener("dblclick",e.dblclick),t.removeEventListener("click",e.simDblclick)}var se,re,ae,le,ce,ue=Te(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),he=Te(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),de="webkitTransition"===he||"OTransition"===he?he+"End":"transitionend";function pe(t){return"string"==typeof t?document.getElementById(t):t}function fe(t,e){var n=t.style[e]||t.currentStyle&&t.currentStyle[e];if((!n||"auto"===n)&&document.defaultView){var i=document.defaultView.getComputedStyle(t,null);n=i?i[e]:null}return"auto"===n?null:n}function _e(t,e,n){var i=document.createElement(t);return i.className=e||"",n&&n.appendChild(i),i}function me(t){var e=t.parentNode;e&&e.removeChild(t)}function ge(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function ve(t){var e=t.parentNode;e&&e.lastChild!==t&&e.appendChild(t)}function ye(t){var e=t.parentNode;e&&e.firstChild!==t&&e.insertBefore(t,e.firstChild)}function be(t,e){if(void 0!==t.classList)return t.classList.contains(e);var n=Pe(t);return n.length>0&&new RegExp("(^|\\s)"+e+"(\\s|$)").test(n)}function we(t,e){if(void 0!==t.classList)for(var n=d(e),i=0,o=n.length;i<o;i++)t.classList.add(n[i]);else if(!be(t,e)){var s=Pe(t);Le(t,(s?s+" ":"")+e)}}function xe(t,e){void 0!==t.classList?t.classList.remove(e):Le(t,h((" "+Pe(t)+" ").replace(" "+e+" "," ")))}function Le(t,e){void 0===t.className.baseVal?t.className=e:t.className.baseVal=e}function Pe(t){return t.correspondingElement&&(t=t.correspondingElement),void 0===t.className.baseVal?t.className:t.className.baseVal}function Ce(t,e){"opacity"in t.style?t.style.opacity=e:"filter"in t.style&&Me(t,e)}function Me(t,e){var n=!1,i="DXImageTransform.Microsoft.Alpha";try{n=t.filters.item(i)}catch(vc){if(1===e)return}e=Math.round(100*e),n?(n.Enabled=100!==e,n.Opacity=e):t.style.filter+=" progid:"+i+"(opacity="+e+")"}function Te(t){for(var e=document.documentElement.style,n=0;n<t.length;n++)if(t[n]in e)return t[n];return!1}function ke(t,e,n){var i=e||new z(0,0);t.style[ue]=(Dt.ie3d?"translate("+i.x+"px,"+i.y+"px)":"translate3d("+i.x+"px,"+i.y+"px,0)")+(n?" scale("+n+")":"")}function Se(t,e){t._leaflet_pos=e,Dt.any3d?ke(t,e):(t.style.left=e.x+"px",t.style.top=e.y+"px")}function Ae(t){return t._leaflet_pos||new z(0,0)}if("onselectstart"in document)se=function(){Ne(window,"selectstart",Ye)},re=function(){Fe(window,"selectstart",Ye)};else{var Ee=Te(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]);se=function(){if(Ee){var t=document.documentElement.style;ae=t[Ee],t[Ee]="none"}},re=function(){Ee&&(document.documentElement.style[Ee]=ae,ae=void 0)}}function Oe(){Ne(window,"dragstart",Ye)}function ze(){Fe(window,"dragstart",Ye)}function Ie(t){for(;-1===t.tabIndex;)t=t.parentNode;t.style&&(Be(),le=t,ce=t.style.outlineStyle,t.style.outlineStyle="none",Ne(window,"keydown",Be))}function Be(){le&&(le.style.outlineStyle=ce,le=void 0,ce=void 0,Fe(window,"keydown",Be))}function Ze(t){do{t=t.parentNode}while(!(t.offsetWidth&&t.offsetHeight||t===document.body));return t}function Re(t){var e=t.getBoundingClientRect();return{x:e.width/t.offsetWidth||1,y:e.height/t.offsetHeight||1,boundingClientRect:e}}var De={__proto__:null,TRANSFORM:ue,TRANSITION:he,TRANSITION_END:de,get:pe,getStyle:fe,create:_e,remove:me,empty:ge,toFront:ve,toBack:ye,hasClass:be,addClass:we,removeClass:xe,setClass:Le,getClass:Pe,setOpacity:Ce,testProp:Te,setTransform:ke,setPosition:Se,getPosition:Ae,get disableTextSelection(){return se},get enableTextSelection(){return re},disableImageDrag:Oe,enableImageDrag:ze,preventOutline:Ie,restoreOutline:Be,getSizedParentNode:Ze,getScale:Re};function Ne(t,e,n,i){if(e&&"object"==typeof e)for(var o in e)He(t,o,e[o],n);else for(var s=0,r=(e=d(e)).length;s<r;s++)He(t,e[s],n,i);return this}var je="_leaflet_events";function Fe(t,e,n,i){if(1===arguments.length)Ue(t),delete t[je];else if(e&&"object"==typeof e)for(var o in e)$e(t,o,e[o],n);else if(e=d(e),2===arguments.length)Ue(t,function(t){return-1!==v(e,t)});else for(var s=0,r=e.length;s<r;s++)$e(t,e[s],n,i);return this}function Ue(t,e){for(var n in t[je]){var i=n.split(/\d/)[0];e&&!e(i)||$e(t,i,null,null,n)}}var Ge={mouseenter:"mouseover",mouseleave:"mouseout",wheel:!("onwheel"in window)&&"mousewheel"};function He(t,e,n,i){var o=e+r(n)+(i?"_"+r(i):"");if(t[je]&&t[je][o])return this;var s=function(e){return n.call(i||t,e||window.event)},a=s;!Dt.touchNative&&Dt.pointer&&0===e.indexOf("touch")?s=Wt(t,e,s):Dt.touch&&"dblclick"===e?s=ie(t,s):"addEventListener"in t?"touchstart"===e||"touchmove"===e||"wheel"===e||"mousewheel"===e?t.addEventListener(Ge[e]||e,s,!!Dt.passiveEvents&&{passive:!1}):"mouseenter"===e||"mouseleave"===e?(s=function(e){e=e||window.event,en(t,e)&&a(e)},t.addEventListener(Ge[e],s,!1)):t.addEventListener(e,a,!1):t.attachEvent("on"+e,s),t[je]=t[je]||{},t[je][o]=s}function $e(t,e,n,i,o){o=o||e+r(n)+(i?"_"+r(i):"");var s=t[je]&&t[je][o];if(!s)return this;!Dt.touchNative&&Dt.pointer&&0===e.indexOf("touch")?qt(t,e,s):Dt.touch&&"dblclick"===e?oe(t,s):"removeEventListener"in t?t.removeEventListener(Ge[e]||e,s,!1):t.detachEvent("on"+e,s),t[je][o]=null}function Ve(t){return t.stopPropagation?t.stopPropagation():t.originalEvent?t.originalEvent._stopped=!0:t.cancelBubble=!0,this}function We(t){return He(t,"wheel",Ve),this}function qe(t){return Ne(t,"mousedown touchstart dblclick contextmenu",Ve),t._leaflet_disable_click=!0,this}function Ye(t){return t.preventDefault?t.preventDefault():t.returnValue=!1,this}function Ke(t){return Ye(t),Ve(t),this}function Je(t){if(t.composedPath)return t.composedPath();for(var e=[],n=t.target;n;)e.push(n),n=n.parentNode;return e}function Xe(t,e){if(!e)return new z(t.clientX,t.clientY);var n=Re(e),i=n.boundingClientRect;return new z((t.clientX-i.left)/n.x-e.clientLeft,(t.clientY-i.top)/n.y-e.clientTop)}var Qe=Dt.linux&&Dt.chrome?window.devicePixelRatio:Dt.mac?3*window.devicePixelRatio:window.devicePixelRatio>0?2*window.devicePixelRatio:1;function tn(t){return Dt.edge?t.wheelDeltaY/2:t.deltaY&&0===t.deltaMode?-t.deltaY/Qe:t.deltaY&&1===t.deltaMode?20*-t.deltaY:t.deltaY&&2===t.deltaMode?60*-t.deltaY:t.deltaX||t.deltaZ?0:t.wheelDelta?(t.wheelDeltaY||t.wheelDelta)/2:t.detail&&Math.abs(t.detail)<32765?20*-t.detail:t.detail?t.detail/-32765*60:0}function en(t,e){var n=e.relatedTarget;if(!n)return!0;try{for(;n&&n!==t;)n=n.parentNode}catch(i){return!1}return n!==t}var nn={__proto__:null,on:Ne,off:Fe,stopPropagation:Ve,disableScrollPropagation:We,disableClickPropagation:qe,preventDefault:Ye,stop:Ke,getPropagationPath:Je,getMousePosition:Xe,getWheelDelta:tn,isExternalTarget:en,addListener:Ne,removeListener:Fe},on=O.extend({run:function(t,e,n,i){this.stop(),this._el=t,this._inProgress=!0,this._duration=n||.25,this._easeOutPower=1/Math.max(i||.5,.2),this._startPos=Ae(t),this._offset=e.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=M(this._animate,this),this._step()},_step:function(t){var e=+new Date-this._startTime,n=1e3*this._duration;e<n?this._runFrame(this._easeOut(e/n),t):(this._runFrame(1),this._complete())},_runFrame:function(t,e){var n=this._startPos.add(this._offset.multiplyBy(t));e&&n._round(),Se(this._el,n),this.fire("step")},_complete:function(){T(this._animId),this._inProgress=!1,this.fire("end")},_easeOut:function(t){return 1-Math.pow(1-t,this._easeOutPower)}}),sn=O.extend({options:{crs:Y,center:void 0,zoom:void 0,minZoom:void 0,maxZoom:void 0,layers:[],maxBounds:void 0,renderer:void 0,zoomAnimation:!0,zoomAnimationThreshold:4,fadeAnimation:!0,markerZoomAnimation:!0,transform3DLimit:8388608,zoomSnap:1,zoomDelta:1,trackResize:!0},initialize:function(t,e){e=p(this,e),this._handlers=[],this._layers={},this._zoomBoundLayers={},this._sizeChanged=!0,this._initContainer(t),this._initLayout(),this._onResize=o(this._onResize,this),this._initEvents(),e.maxBounds&&this.setMaxBounds(e.maxBounds),void 0!==e.zoom&&(this._zoom=this._limitZoom(e.zoom)),e.center&&void 0!==e.zoom&&this.setView(F(e.center),e.zoom,{reset:!0}),this.callInitHooks(),this._zoomAnimated=he&&Dt.any3d&&!Dt.mobileOpera&&this.options.zoomAnimation,this._zoomAnimated&&(this._createAnimProxy(),Ne(this._proxy,de,this._catchTransitionEnd,this)),this._addLayers(this.options.layers)},setView:function(t,e,i){return e=void 0===e?this._zoom:this._limitZoom(e),t=this._limitCenter(F(t),e,this.options.maxBounds),i=i||{},this._stop(),this._loaded&&!i.reset&&!0!==i&&(void 0!==i.animate&&(i.zoom=n({animate:i.animate},i.zoom),i.pan=n({animate:i.animate,duration:i.duration},i.pan)),this._zoom!==e?this._tryAnimatedZoom&&this._tryAnimatedZoom(t,e,i.zoom):this._tryAnimatedPan(t,i.pan))?(clearTimeout(this._sizeTimer),this):(this._resetView(t,e,i.pan&&i.pan.noMoveStart),this)},setZoom:function(t,e){return this._loaded?this.setView(this.getCenter(),t,{zoom:e}):(this._zoom=t,this)},zoomIn:function(t,e){return t=t||(Dt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom+t,e)},zoomOut:function(t,e){return t=t||(Dt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom-t,e)},setZoomAround:function(t,e,n){var i=this.getZoomScale(e),o=this.getSize().divideBy(2),s=(t instanceof z?t:this.latLngToContainerPoint(t)).subtract(o).multiplyBy(1-1/i),r=this.containerPointToLatLng(o.add(s));return this.setView(r,e,{zoom:n})},_getBoundsCenterZoom:function(t,e){e=e||{},t=t.getBounds?t.getBounds():N(t);var n=B(e.paddingTopLeft||e.padding||[0,0]),i=B(e.paddingBottomRight||e.padding||[0,0]),o=this.getBoundsZoom(t,!1,n.add(i));if((o="number"==typeof e.maxZoom?Math.min(e.maxZoom,o):o)===1/0)return{center:t.getCenter(),zoom:o};var s=i.subtract(n).divideBy(2),r=this.project(t.getSouthWest(),o),a=this.project(t.getNorthEast(),o);return{center:this.unproject(r.add(a).divideBy(2).add(s),o),zoom:o}},fitBounds:function(t,e){if(!(t=N(t)).isValid())throw new Error("Bounds are not valid.");var n=this._getBoundsCenterZoom(t,e);return this.setView(n.center,n.zoom,e)},fitWorld:function(t){return this.fitBounds([[-90,-180],[90,180]],t)},panTo:function(t,e){return this.setView(t,this._zoom,{pan:e})},panBy:function(t,e){if(e=e||{},!(t=B(t).round()).x&&!t.y)return this.fire("moveend");if(!0!==e.animate&&!this.getSize().contains(t))return this._resetView(this.unproject(this.project(this.getCenter()).add(t)),this.getZoom()),this;if(this._panAnim||(this._panAnim=new on,this._panAnim.on({step:this._onPanTransitionStep,end:this._onPanTransitionEnd},this)),e.noMoveStart||this.fire("movestart"),!1!==e.animate){we(this._mapPane,"leaflet-pan-anim");var n=this._getMapPanePos().subtract(t).round();this._panAnim.run(this._mapPane,n,e.duration||.25,e.easeLinearity)}else this._rawPanBy(t),this.fire("move").fire("moveend");return this},flyTo:function(t,e,n){if(!1===(n=n||{}).animate||!Dt.any3d)return this.setView(t,e,n);this._stop();var i=this.project(this.getCenter()),o=this.project(t),s=this.getSize(),r=this._zoom;t=F(t),e=void 0===e?r:e;var a=Math.max(s.x,s.y),l=a*this.getZoomScale(r,e),c=o.distanceTo(i)||1,u=1.42,h=u*u;function d(t){var e=(l*l-a*a+(t?-1:1)*h*h*c*c)/(2*(t?l:a)*h*c),n=Math.sqrt(e*e+1)-e;return n<1e-9?-18:Math.log(n)}function p(t){return(Math.exp(t)-Math.exp(-t))/2}function f(t){return(Math.exp(t)+Math.exp(-t))/2}function _(t){return p(t)/f(t)}var m=d(0);function g(t){return a*(f(m)/f(m+u*t))}function v(t){return a*(f(m)*_(m+u*t)-p(m))/h}function y(t){return 1-Math.pow(1-t,1.5)}var b=Date.now(),w=(d(1)-m)/u,x=n.duration?1e3*n.duration:1e3*w*.8;function L(){var n=(Date.now()-b)/x,s=y(n)*w;n<=1?(this._flyToFrame=M(L,this),this._move(this.unproject(i.add(o.subtract(i).multiplyBy(v(s)/c)),r),this.getScaleZoom(a/g(s),r),{flyTo:!0})):this._move(t,e)._moveEnd(!0)}return this._moveStart(!0,n.noMoveStart),L.call(this),this},flyToBounds:function(t,e){var n=this._getBoundsCenterZoom(t,e);return this.flyTo(n.center,n.zoom,e)},setMaxBounds:function(t){return t=N(t),this.listens("moveend",this._panInsideMaxBounds)&&this.off("moveend",this._panInsideMaxBounds),t.isValid()?(this.options.maxBounds=t,this._loaded&&this._panInsideMaxBounds(),this.on("moveend",this._panInsideMaxBounds)):(this.options.maxBounds=null,this)},setMinZoom:function(t){var e=this.options.minZoom;return this.options.minZoom=t,this._loaded&&e!==t&&(this.fire("zoomlevelschange"),this.getZoom()<this.options.minZoom)?this.setZoom(t):this},setMaxZoom:function(t){var e=this.options.maxZoom;return this.options.maxZoom=t,this._loaded&&e!==t&&(this.fire("zoomlevelschange"),this.getZoom()>this.options.maxZoom)?this.setZoom(t):this},panInsideBounds:function(t,e){this._enforcingBounds=!0;var n=this.getCenter(),i=this._limitCenter(n,this._zoom,N(t));return n.equals(i)||this.panTo(i,e),this._enforcingBounds=!1,this},panInside:function(t,e){var n=B((e=e||{}).paddingTopLeft||e.padding||[0,0]),i=B(e.paddingBottomRight||e.padding||[0,0]),o=this.project(this.getCenter()),s=this.project(t),r=this.getPixelBounds(),a=R([r.min.add(n),r.max.subtract(i)]),l=a.getSize();if(!a.contains(s)){this._enforcingBounds=!0;var c=s.subtract(a.getCenter()),u=a.extend(s).getSize().subtract(l);o.x+=c.x<0?-u.x:u.x,o.y+=c.y<0?-u.y:u.y,this.panTo(this.unproject(o),e),this._enforcingBounds=!1}return this},invalidateSize:function(t){if(!this._loaded)return this;t=n({animate:!1,pan:!0},!0===t?{animate:!0}:t);var e=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var i=this.getSize(),s=e.divideBy(2).round(),r=i.divideBy(2).round(),a=s.subtract(r);return a.x||a.y?(t.animate&&t.pan?this.panBy(a):(t.pan&&this._rawPanBy(a),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(o(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:e,newSize:i})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(t){if(t=this._locateOptions=n({timeout:1e4,watch:!1},t),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var e=o(this._handleGeolocationResponse,this),i=o(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(e,i,t):navigator.geolocation.getCurrentPosition(e,i,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){if(this._container._leaflet_id){var e=t.code,n=t.message||(1===e?"permission denied":2===e?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:e,message:"Geolocation error: "+n+"."})}},_handleGeolocationResponse:function(t){if(this._container._leaflet_id){var e=new j(t.coords.latitude,t.coords.longitude),n=e.toBounds(2*t.coords.accuracy),i=this._locateOptions;if(i.setView){var o=this.getBoundsZoom(n);this.setView(e,i.maxZoom?Math.min(o,i.maxZoom):o)}var s={latlng:e,bounds:n,timestamp:t.timestamp};for(var r in t.coords)"number"==typeof t.coords[r]&&(s[r]=t.coords[r]);this.fire("locationfound",s)}},addHandler:function(t,e){if(!e)return this;var n=this[t]=new e(this);return this._handlers.push(n),this.options[t]&&n.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch(vc){this._container._leaflet_id=void 0,this._containerId=void 0}var t;for(t in void 0!==this._locationWatchId&&this.stopLocate(),this._stop(),me(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(T(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload"),this._layers)this._layers[t].remove();for(t in this._panes)me(this._panes[t]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(t,e){var n=_e("div","leaflet-pane"+(t?" leaflet-"+t.replace("Pane","")+"-pane":""),e||this._mapPane);return t&&(this._panes[t]=n),n},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds();return new D(this.unproject(t.getBottomLeft()),this.unproject(t.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,e,n){t=N(t),n=B(n||[0,0]);var i=this.getZoom()||0,o=this.getMinZoom(),s=this.getMaxZoom(),r=t.getNorthWest(),a=t.getSouthEast(),l=this.getSize().subtract(n),c=R(this.project(a,i),this.project(r,i)).getSize(),u=Dt.any3d?this.options.zoomSnap:1,h=l.x/c.x,d=l.y/c.y,p=e?Math.max(h,d):Math.min(h,d);return i=this.getScaleZoom(p,i),u&&(i=Math.round(i/(u/100))*(u/100),i=e?Math.ceil(i/u)*u:Math.floor(i/u)*u),Math.max(o,Math.min(s,i))},getSize:function(){return this._size&&!this._sizeChanged||(this._size=new z(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(t,e){var n=this._getTopLeftPoint(t,e);return new Z(n,n.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(t){return this.options.crs.getProjectedBounds(void 0===t?this.getZoom():t)},getPane:function(t){return"string"==typeof t?this._panes[t]:t},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t,e){var n=this.options.crs;return e=void 0===e?this._zoom:e,n.scale(t)/n.scale(e)},getScaleZoom:function(t,e){var n=this.options.crs;e=void 0===e?this._zoom:e;var i=n.zoom(t*n.scale(e));return isNaN(i)?1/0:i},project:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.latLngToPoint(F(t),e)},unproject:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.pointToLatLng(B(t),e)},layerPointToLatLng:function(t){var e=B(t).add(this.getPixelOrigin());return this.unproject(e)},latLngToLayerPoint:function(t){return this.project(F(t))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(t){return this.options.crs.wrapLatLng(F(t))},wrapLatLngBounds:function(t){return this.options.crs.wrapLatLngBounds(N(t))},distance:function(t,e){return this.options.crs.distance(F(t),F(e))},containerPointToLayerPoint:function(t){return B(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return B(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var e=this.containerPointToLayerPoint(B(t));return this.layerPointToLatLng(e)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(F(t)))},mouseEventToContainerPoint:function(t){return Xe(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var e=this._container=pe(t);if(!e)throw new Error("Map container not found.");if(e._leaflet_id)throw new Error("Map container is already initialized.");Ne(e,"scroll",this._onScroll,this),this._containerId=r(e)},_initLayout:function(){var t=this._container;this._fadeAnimated=this.options.fadeAnimation&&Dt.any3d,we(t,"leaflet-container"+(Dt.touch?" leaflet-touch":"")+(Dt.retina?" leaflet-retina":"")+(Dt.ielt9?" leaflet-oldie":"")+(Dt.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var e=fe(t,"position");"absolute"!==e&&"relative"!==e&&"fixed"!==e&&"sticky"!==e&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),Se(this._mapPane,new z(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(we(t.markerPane,"leaflet-zoom-hide"),we(t.shadowPane,"leaflet-zoom-hide"))},_resetView:function(t,e,n){Se(this._mapPane,new z(0,0));var i=!this._loaded;this._loaded=!0,e=this._limitZoom(e),this.fire("viewprereset");var o=this._zoom!==e;this._moveStart(o,n)._move(t,e)._moveEnd(o),this.fire("viewreset"),i&&this.fire("load")},_moveStart:function(t,e){return t&&this.fire("zoomstart"),e||this.fire("movestart"),this},_move:function(t,e,n,i){void 0===e&&(e=this._zoom);var o=this._zoom!==e;return this._zoom=e,this._lastCenter=t,this._pixelOrigin=this._getNewPixelOrigin(t),i?n&&n.pinch&&this.fire("zoom",n):((o||n&&n.pinch)&&this.fire("zoom",n),this.fire("move",n)),this},_moveEnd:function(t){return t&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return T(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(t){Se(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(t){this._targets={},this._targets[r(this._container)]=this;var e=t?Fe:Ne;e(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&e(window,"resize",this._onResize,this),Dt.any3d&&this.options.transform3DLimit&&(t?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){T(this._resizeRequest),this._resizeRequest=M(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var t=this._getMapPanePos();Math.max(Math.abs(t.x),Math.abs(t.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(t,e){for(var n,i=[],o="mouseout"===e||"mouseover"===e,s=t.target||t.srcElement,a=!1;s;){if((n=this._targets[r(s)])&&("click"===e||"preclick"===e)&&this._draggableMoved(n)){a=!0;break}if(n&&n.listens(e,!0)){if(o&&!en(s,t))break;if(i.push(n),o)break}if(s===this._container)break;s=s.parentNode}return i.length||a||o||!this.listens(e,!0)||(i=[this]),i},_isClickDisabled:function(t){for(;t&&t!==this._container;){if(t._leaflet_disable_click)return!0;t=t.parentNode}},_handleDOMEvent:function(t){var e=t.target||t.srcElement;if(!(!this._loaded||e._leaflet_disable_events||"click"===t.type&&this._isClickDisabled(e))){var n=t.type;"mousedown"===n&&Ie(e),this._fireDOMEvent(t,n)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(t,e,i){if("click"===t.type){var o=n({},t);o.type="preclick",this._fireDOMEvent(o,o.type,i)}var s=this._findEventTargets(t,e);if(i){for(var r=[],a=0;a<i.length;a++)i[a].listens(e,!0)&&r.push(i[a]);s=r.concat(s)}if(s.length){"contextmenu"===e&&Ye(t);var l=s[0],c={originalEvent:t};if("keypress"!==t.type&&"keydown"!==t.type&&"keyup"!==t.type){var u=l.getLatLng&&(!l._radius||l._radius<=10);c.containerPoint=u?this.latLngToContainerPoint(l.getLatLng()):this.mouseEventToContainerPoint(t),c.layerPoint=this.containerPointToLayerPoint(c.containerPoint),c.latlng=u?l.getLatLng():this.layerPointToLatLng(c.layerPoint)}for(a=0;a<s.length;a++)if(s[a].fire(e,c,!0),c.originalEvent._stopped||!1===s[a].options.bubblingMouseEvents&&-1!==v(this._mouseEvents,e))return}},_draggableMoved:function(t){return(t=t.dragging&&t.dragging.enabled()?t:this).dragging&&t.dragging.moved()||this.boxZoom&&this.boxZoom.moved()},_clearHandlers:function(){for(var t=0,e=this._handlers.length;t<e;t++)this._handlers[t].disable()},whenReady:function(t,e){return this._loaded?t.call(e||this,{target:this}):this.on("load",t,e),this},_getMapPanePos:function(){return Ae(this._mapPane)||new z(0,0)},_moved:function(){var t=this._getMapPanePos();return t&&!t.equals([0,0])},_getTopLeftPoint:function(t,e){return(t&&void 0!==e?this._getNewPixelOrigin(t,e):this.getPixelOrigin()).subtract(this._getMapPanePos())},_getNewPixelOrigin:function(t,e){var n=this.getSize()._divideBy(2);return this.project(t,e)._subtract(n)._add(this._getMapPanePos())._round()},_latLngToNewLayerPoint:function(t,e,n){var i=this._getNewPixelOrigin(n,e);return this.project(t,e)._subtract(i)},_latLngBoundsToNewLayerBounds:function(t,e,n){var i=this._getNewPixelOrigin(n,e);return R([this.project(t.getSouthWest(),e)._subtract(i),this.project(t.getNorthWest(),e)._subtract(i),this.project(t.getSouthEast(),e)._subtract(i),this.project(t.getNorthEast(),e)._subtract(i)])},_getCenterLayerPoint:function(){return this.containerPointToLayerPoint(this.getSize()._divideBy(2))},_getCenterOffset:function(t){return this.latLngToLayerPoint(t).subtract(this._getCenterLayerPoint())},_limitCenter:function(t,e,n){if(!n)return t;var i=this.project(t,e),o=this.getSize().divideBy(2),s=new Z(i.subtract(o),i.add(o)),r=this._getBoundsOffset(s,n,e);return Math.abs(r.x)<=1&&Math.abs(r.y)<=1?t:this.unproject(i.add(r),e)},_limitOffset:function(t,e){if(!e)return t;var n=this.getPixelBounds(),i=new Z(n.min.add(t),n.max.add(t));return t.add(this._getBoundsOffset(i,e))},_getBoundsOffset:function(t,e,n){var i=R(this.project(e.getNorthEast(),n),this.project(e.getSouthWest(),n)),o=i.min.subtract(t.min),s=i.max.subtract(t.max);return new z(this._rebound(o.x,-s.x),this._rebound(o.y,-s.y))},_rebound:function(t,e){return t+e>0?Math.round(t-e)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(e))},_limitZoom:function(t){var e=this.getMinZoom(),n=this.getMaxZoom(),i=Dt.any3d?this.options.zoomSnap:1;return i&&(t=Math.round(t/i)*i),Math.max(e,Math.min(n,t))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){xe(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,e){var n=this._getCenterOffset(t)._trunc();return!(!0!==(e&&e.animate)&&!this.getSize().contains(n)||(this.panBy(n,e),0))},_createAnimProxy:function(){var t=this._proxy=_e("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(t),this.on("zoomanim",function(t){var e=ue,n=this._proxy.style[e];ke(this._proxy,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1)),n===this._proxy.style[e]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){me(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var t=this.getCenter(),e=this.getZoom();ke(this._proxy,this.project(t,e),this.getZoomScale(e,1))},_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,e,n){if(this._animatingZoom)return!0;if(n=n||{},!this._zoomAnimated||!1===n.animate||this._nothingToAnimate()||Math.abs(e-this._zoom)>this.options.zoomAnimationThreshold)return!1;var i=this.getZoomScale(e),o=this._getCenterOffset(t)._divideBy(1-1/i);return!(!0!==n.animate&&!this.getSize().contains(o)||(M(function(){this._moveStart(!0,n.noMoveStart||!1)._animateZoom(t,e,!0)},this),0))},_animateZoom:function(t,e,n,i){this._mapPane&&(n&&(this._animatingZoom=!0,this._animateToCenter=t,this._animateToZoom=e,we(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:t,zoom:e,noUpdate:i}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(o(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&xe(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});function rn(t,e){return new sn(t,e)}var an=S.extend({options:{position:"topright"},initialize:function(t){p(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var e=this._map;return e&&e.removeControl(this),this.options.position=t,e&&e.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var e=this._container=this.onAdd(t),n=this.getPosition(),i=t._controlCorners[n];return we(e,"leaflet-control"),-1!==n.indexOf("bottom")?i.insertBefore(e,i.firstChild):i.appendChild(e),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(me(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}}),ln=function(t){return new an(t)};sn.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){var t=this._controlCorners={},e="leaflet-",n=this._controlContainer=_e("div",e+"control-container",this._container);function i(i,o){var s=e+i+" "+e+o;t[i+o]=_e("div",s,n)}i("top","left"),i("top","right"),i("bottom","left"),i("bottom","right")},_clearControlPos:function(){for(var t in this._controlCorners)me(this._controlCorners[t]);me(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var cn=an.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(t,e,n,i){return n<i?-1:i<n?1:0}},initialize:function(t,e,n){for(var i in p(this,n),this._layerControlInputs=[],this._layers=[],this._lastZIndex=0,this._handlingClick=!1,this._preventClick=!1,t)this._addLayer(t[i],i);for(i in e)this._addLayer(e[i],i,!0)},onAdd:function(t){this._initLayout(),this._update(),this._map=t,t.on("zoomend",this._checkDisabledLayers,this);for(var e=0;e<this._layers.length;e++)this._layers[e].layer.on("add remove",this._onLayerChange,this);return this._container},addTo:function(t){return an.prototype.addTo.call(this,t),this._expandIfNotCollapsed()},onRemove:function(){this._map.off("zoomend",this._checkDisabledLayers,this);for(var t=0;t<this._layers.length;t++)this._layers[t].layer.off("add remove",this._onLayerChange,this)},addBaseLayer:function(t,e){return this._addLayer(t,e),this._map?this._update():this},addOverlay:function(t,e){return this._addLayer(t,e,!0),this._map?this._update():this},removeLayer:function(t){t.off("add remove",this._onLayerChange,this);var e=this._getLayer(r(t));return e&&this._layers.splice(this._layers.indexOf(e),1),this._map?this._update():this},expand:function(){we(this._container,"leaflet-control-layers-expanded"),this._section.style.height=null;var t=this._map.getSize().y-(this._container.offsetTop+50);return t<this._section.clientHeight?(we(this._section,"leaflet-control-layers-scrollbar"),this._section.style.height=t+"px"):xe(this._section,"leaflet-control-layers-scrollbar"),this._checkDisabledLayers(),this},collapse:function(){return xe(this._container,"leaflet-control-layers-expanded"),this},_initLayout:function(){var t="leaflet-control-layers",e=this._container=_e("div",t),n=this.options.collapsed;e.setAttribute("aria-haspopup",!0),qe(e),We(e);var i=this._section=_e("section",t+"-list");n&&(this._map.on("click",this.collapse,this),Ne(e,{mouseenter:this._expandSafely,mouseleave:this.collapse},this));var o=this._layersLink=_e("a",t+"-toggle",e);o.href="#",o.title="Layers",o.setAttribute("role","button"),Ne(o,{keydown:function(t){13===t.keyCode&&this._expandSafely()},click:function(t){Ye(t),this._expandSafely()}},this),n||this.expand(),this._baseLayersList=_e("div",t+"-base",i),this._separator=_e("div",t+"-separator",i),this._overlaysList=_e("div",t+"-overlays",i),e.appendChild(i)},_getLayer:function(t){for(var e=0;e<this._layers.length;e++)if(this._layers[e]&&r(this._layers[e].layer)===t)return this._layers[e]},_addLayer:function(t,e,n){this._map&&t.on("add remove",this._onLayerChange,this),this._layers.push({layer:t,name:e,overlay:n}),this.options.sortLayers&&this._layers.sort(o(function(t,e){return this.options.sortFunction(t.layer,e.layer,t.name,e.name)},this)),this.options.autoZIndex&&t.setZIndex&&(this._lastZIndex++,t.setZIndex(this._lastZIndex)),this._expandIfNotCollapsed()},_update:function(){if(!this._container)return this;ge(this._baseLayersList),ge(this._overlaysList),this._layerControlInputs=[];var t,e,n,i,o=0;for(n=0;n<this._layers.length;n++)i=this._layers[n],this._addItem(i),e=e||i.overlay,t=t||!i.overlay,o+=i.overlay?0:1;return this.options.hideSingleBase&&(t=t&&o>1,this._baseLayersList.style.display=t?"":"none"),this._separator.style.display=e&&t?"":"none",this},_onLayerChange:function(t){this._handlingClick||this._update();var e=this._getLayer(r(t.target)),n=e.overlay?"add"===t.type?"overlayadd":"overlayremove":"add"===t.type?"baselayerchange":null;n&&this._map.fire(n,e)},_createRadioElement:function(t,e){var n='<input type="radio" class="leaflet-control-layers-selector" name="'+t+'"'+(e?' checked="checked"':"")+"/>",i=document.createElement("div");return i.innerHTML=n,i.firstChild},_addItem:function(t){var e,n=document.createElement("label"),i=this._map.hasLayer(t.layer);t.overlay?((e=document.createElement("input")).type="checkbox",e.className="leaflet-control-layers-selector",e.defaultChecked=i):e=this._createRadioElement("leaflet-base-layers_"+r(this),i),this._layerControlInputs.push(e),e.layerId=r(t.layer),Ne(e,"click",this._onInputClick,this);var o=document.createElement("span");o.innerHTML=" "+t.name;var s=document.createElement("span");return n.appendChild(s),s.appendChild(e),s.appendChild(o),(t.overlay?this._overlaysList:this._baseLayersList).appendChild(n),this._checkDisabledLayers(),n},_onInputClick:function(){if(!this._preventClick){var t,e,n=this._layerControlInputs,i=[],o=[];this._handlingClick=!0;for(var s=n.length-1;s>=0;s--)t=n[s],e=this._getLayer(t.layerId).layer,t.checked?i.push(e):t.checked||o.push(e);for(s=0;s<o.length;s++)this._map.hasLayer(o[s])&&this._map.removeLayer(o[s]);for(s=0;s<i.length;s++)this._map.hasLayer(i[s])||this._map.addLayer(i[s]);this._handlingClick=!1,this._refocusOnMap()}},_checkDisabledLayers:function(){for(var t,e,n=this._layerControlInputs,i=this._map.getZoom(),o=n.length-1;o>=0;o--)t=n[o],e=this._getLayer(t.layerId).layer,t.disabled=void 0!==e.options.minZoom&&i<e.options.minZoom||void 0!==e.options.maxZoom&&i>e.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var t=this._section;this._preventClick=!0,Ne(t,"click",Ye),this.expand();var e=this;setTimeout(function(){Fe(t,"click",Ye),e._preventClick=!1})}}),un=function(t,e,n){return new cn(t,e,n)},hn=an.extend({options:{position:"topleft",zoomInText:'<span aria-hidden="true">+</span>',zoomInTitle:"Zoom in",zoomOutText:'<span aria-hidden="true">−</span>',zoomOutTitle:"Zoom out"},onAdd:function(t){var e="leaflet-control-zoom",n=_e("div",e+" leaflet-bar"),i=this.options;return this._zoomInButton=this._createButton(i.zoomInText,i.zoomInTitle,e+"-in",n,this._zoomIn),this._zoomOutButton=this._createButton(i.zoomOutText,i.zoomOutTitle,e+"-out",n,this._zoomOut),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),n},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(t){!this._disabled&&this._map._zoom<this._map.getMaxZoom()&&this._map.zoomIn(this._map.options.zoomDelta*(t.shiftKey?3:1))},_zoomOut:function(t){!this._disabled&&this._map._zoom>this._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(t.shiftKey?3:1))},_createButton:function(t,e,n,i,o){var s=_e("a",n,i);return s.innerHTML=t,s.href="#",s.title=e,s.setAttribute("role","button"),s.setAttribute("aria-label",e),qe(s),Ne(s,"click",Ke),Ne(s,"click",o,this),Ne(s,"click",this._refocusOnMap,this),s},_updateDisabled:function(){var t=this._map,e="leaflet-disabled";xe(this._zoomInButton,e),xe(this._zoomOutButton,e),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||t._zoom===t.getMinZoom())&&(we(this._zoomOutButton,e),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||t._zoom===t.getMaxZoom())&&(we(this._zoomInButton,e),this._zoomInButton.setAttribute("aria-disabled","true"))}});sn.mergeOptions({zoomControl:!0}),sn.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new hn,this.addControl(this.zoomControl))});var dn=function(t){return new hn(t)},pn=an.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(t){var e="leaflet-control-scale",n=_e("div",e),i=this.options;return this._addScales(i,e+"-line",n),t.on(i.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),n},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,e,n){t.metric&&(this._mScale=_e("div",e,n)),t.imperial&&(this._iScale=_e("div",e,n))},_update:function(){var t=this._map,e=t.getSize().y/2,n=t.distance(t.containerPointToLatLng([0,e]),t.containerPointToLatLng([this.options.maxWidth,e]));this._updateScales(n)},_updateScales:function(t){this.options.metric&&t&&this._updateMetric(t),this.options.imperial&&t&&this._updateImperial(t)},_updateMetric:function(t){var e=this._getRoundNum(t),n=e<1e3?e+" m":e/1e3+" km";this._updateScale(this._mScale,n,e/t)},_updateImperial:function(t){var e,n,i,o=3.2808399*t;o>5280?(e=o/5280,n=this._getRoundNum(e),this._updateScale(this._iScale,n+" mi",n/e)):(i=this._getRoundNum(o),this._updateScale(this._iScale,i+" ft",i/o))},_updateScale:function(t,e,n){t.style.width=Math.round(this.options.maxWidth*n)+"px",t.innerHTML=e},_getRoundNum:function(t){var e=Math.pow(10,(Math.floor(t)+"").length-1),n=t/e;return e*(n=n>=10?10:n>=5?5:n>=3?3:n>=2?2:1)}}),fn=function(t){return new pn(t)},_n='<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8" class="leaflet-attribution-flag"><path fill="#4C7BE1" d="M0 0h12v4H0z"/><path fill="#FFD500" d="M0 4h12v3H0z"/><path fill="#E0BC00" d="M0 7h12v1H0z"/></svg>',mn=an.extend({options:{position:"bottomright",prefix:'<a href="https://leafletjs.com" title="A JavaScript library for interactive maps">'+(Dt.inlineSvg?_n+" ":"")+"Leaflet</a>"},initialize:function(t){p(this,t),this._attributions={}},onAdd:function(t){for(var e in t.attributionControl=this,this._container=_e("div","leaflet-control-attribution"),qe(this._container),t._layers)t._layers[e].getAttribution&&this.addAttribution(t._layers[e].getAttribution());return this._update(),t.on("layeradd",this._addAttribution,this),this._container},onRemove:function(t){t.off("layeradd",this._addAttribution,this)},_addAttribution:function(t){t.layer.getAttribution&&(this.addAttribution(t.layer.getAttribution()),t.layer.once("remove",function(){this.removeAttribution(t.layer.getAttribution())},this))},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t?(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update(),this):this},removeAttribution:function(t){return t?(this._attributions[t]&&(this._attributions[t]--,this._update()),this):this},_update:function(){if(this._map){var t=[];for(var e in this._attributions)this._attributions[e]&&t.push(e);var n=[];this.options.prefix&&n.push(this.options.prefix),t.length&&n.push(t.join(", ")),this._container.innerHTML=n.join(' <span aria-hidden="true">|</span> ')}}});sn.mergeOptions({attributionControl:!0}),sn.addInitHook(function(){this.options.attributionControl&&(new mn).addTo(this)});var gn=function(t){return new mn(t)};an.Layers=cn,an.Zoom=hn,an.Scale=pn,an.Attribution=mn,ln.layers=un,ln.zoom=dn,ln.scale=fn,ln.attribution=gn;var vn=S.extend({initialize:function(t){this._map=t},enable:function(){return this._enabled||(this._enabled=!0,this.addHooks()),this},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});vn.addTo=function(t,e){return t.addHandler(e,this),this};var yn={Events:E},bn=Dt.touch?"touchstart mousedown":"mousedown",wn=O.extend({options:{clickTolerance:3},initialize:function(t,e,n,i){p(this,i),this._element=t,this._dragStartTarget=e||t,this._preventOutline=n},enable:function(){this._enabled||(Ne(this._dragStartTarget,bn,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(wn._dragging===this&&this.finishDrag(!0),Fe(this._dragStartTarget,bn,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(t){if(this._enabled&&(this._moved=!1,!be(this._element,"leaflet-zoom-anim")))if(t.touches&&1!==t.touches.length)wn._dragging===this&&this.finishDrag();else if(!(wn._dragging||t.shiftKey||1!==t.which&&1!==t.button&&!t.touches||(wn._dragging=this,this._preventOutline&&Ie(this._element),Oe(),se(),this._moving))){this.fire("down");var e=t.touches?t.touches[0]:t,n=Ze(this._element);this._startPoint=new z(e.clientX,e.clientY),this._startPos=Ae(this._element),this._parentScale=Re(n);var i="mousedown"===t.type;Ne(document,i?"mousemove":"touchmove",this._onMove,this),Ne(document,i?"mouseup":"touchend touchcancel",this._onUp,this)}},_onMove:function(t){if(this._enabled)if(t.touches&&t.touches.length>1)this._moved=!0;else{var e=t.touches&&1===t.touches.length?t.touches[0]:t,n=new z(e.clientX,e.clientY)._subtract(this._startPoint);(n.x||n.y)&&(Math.abs(n.x)+Math.abs(n.y)<this.options.clickTolerance||(n.x/=this._parentScale.x,n.y/=this._parentScale.y,Ye(t),this._moved||(this.fire("dragstart"),this._moved=!0,we(document.body,"leaflet-dragging"),this._lastTarget=t.target||t.srcElement,window.SVGElementInstance&&this._lastTarget instanceof window.SVGElementInstance&&(this._lastTarget=this._lastTarget.correspondingUseElement),we(this._lastTarget,"leaflet-drag-target")),this._newPos=this._startPos.add(n),this._moving=!0,this._lastEvent=t,this._updatePosition()))}},_updatePosition:function(){var t={originalEvent:this._lastEvent};this.fire("predrag",t),Se(this._element,this._newPos),this.fire("drag",t)},_onUp:function(){this._enabled&&this.finishDrag()},finishDrag:function(t){xe(document.body,"leaflet-dragging"),this._lastTarget&&(xe(this._lastTarget,"leaflet-drag-target"),this._lastTarget=null),Fe(document,"mousemove touchmove",this._onMove,this),Fe(document,"mouseup touchend touchcancel",this._onUp,this),ze(),re();var e=this._moved&&this._moving;this._moving=!1,wn._dragging=!1,e&&this.fire("dragend",{noInertia:t,distance:this._newPos.distanceTo(this._startPos)})}});function xn(t,e,n){var i,o,s,r,a,l,c,u,h,d=[1,4,2,8];for(o=0,c=t.length;o<c;o++)t[o]._code=Bn(t[o],e);for(r=0;r<4;r++){for(u=d[r],i=[],o=0,s=(c=t.length)-1;o<c;s=o++)a=t[o],l=t[s],a._code&u?l._code&u||((h=In(l,a,u,e,n))._code=Bn(h,e),i.push(h)):(l._code&u&&((h=In(l,a,u,e,n))._code=Bn(h,e),i.push(h)),i.push(a));t=i}return t}function Ln(t,e){var n,i,o,s,r,a,l,c,u;if(!t||0===t.length)throw new Error("latlngs not passed");Dn(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var h=F([0,0]),d=N(t);d.getNorthWest().distanceTo(d.getSouthWest())*d.getNorthEast().distanceTo(d.getNorthWest())<1700&&(h=Pn(t));var p=t.length,f=[];for(n=0;n<p;n++){var _=F(t[n]);f.push(e.project(F([_.lat-h.lat,_.lng-h.lng])))}for(a=l=c=0,n=0,i=p-1;n<p;i=n++)o=f[n],s=f[i],r=o.y*s.x-s.y*o.x,l+=(o.x+s.x)*r,c+=(o.y+s.y)*r,a+=3*r;u=0===a?f[0]:[l/a,c/a];var m=e.unproject(B(u));return F([m.lat+h.lat,m.lng+h.lng])}function Pn(t){for(var e=0,n=0,i=0,o=0;o<t.length;o++){var s=F(t[o]);e+=s.lat,n+=s.lng,i++}return F([e/i,n/i])}var Cn,Mn={__proto__:null,clipPolygon:xn,polygonCenter:Ln,centroid:Pn};function Tn(t,e){if(!e||!t.length)return t.slice();var n=e*e;return t=An(t=On(t,n),n)}function kn(t,e,n){return Math.sqrt(Rn(t,e,n,!0))}function Sn(t,e,n){return Rn(t,e,n)}function An(t,e){var n=t.length,i=new(typeof Uint8Array!=void 0+""?Uint8Array:Array)(n);i[0]=i[n-1]=1,En(t,i,e,0,n-1);var o,s=[];for(o=0;o<n;o++)i[o]&&s.push(t[o]);return s}function En(t,e,n,i,o){var s,r,a,l=0;for(r=i+1;r<=o-1;r++)(a=Rn(t[r],t[i],t[o],!0))>l&&(s=r,l=a);l>n&&(e[s]=1,En(t,e,n,i,s),En(t,e,n,s,o))}function On(t,e){for(var n=[t[0]],i=1,o=0,s=t.length;i<s;i++)Zn(t[i],t[o])>e&&(n.push(t[i]),o=i);return o<s-1&&n.push(t[s-1]),n}function zn(t,e,n,i,o){var s,r,a,l=i?Cn:Bn(t,n),c=Bn(e,n);for(Cn=c;;){if(!(l|c))return[t,e];if(l&c)return!1;a=Bn(r=In(t,e,s=l||c,n,o),n),s===l?(t=r,l=a):(e=r,c=a)}}function In(t,e,n,i,o){var s,r,a=e.x-t.x,l=e.y-t.y,c=i.min,u=i.max;return 8&n?(s=t.x+a*(u.y-t.y)/l,r=u.y):4&n?(s=t.x+a*(c.y-t.y)/l,r=c.y):2&n?(s=u.x,r=t.y+l*(u.x-t.x)/a):1&n&&(s=c.x,r=t.y+l*(c.x-t.x)/a),new z(s,r,o)}function Bn(t,e){var n=0;return t.x<e.min.x?n|=1:t.x>e.max.x&&(n|=2),t.y<e.min.y?n|=4:t.y>e.max.y&&(n|=8),n}function Zn(t,e){var n=e.x-t.x,i=e.y-t.y;return n*n+i*i}function Rn(t,e,n,i){var o,s=e.x,r=e.y,a=n.x-s,l=n.y-r,c=a*a+l*l;return c>0&&((o=((t.x-s)*a+(t.y-r)*l)/c)>1?(s=n.x,r=n.y):o>0&&(s+=a*o,r+=l*o)),a=t.x-s,l=t.y-r,i?a*a+l*l:new z(s,r)}function Dn(t){return!g(t[0])||"object"!=typeof t[0][0]&&void 0!==t[0][0]}function Nn(t){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Dn(t)}function jn(t,e){var n,i,o,s,r,a,l,c;if(!t||0===t.length)throw new Error("latlngs not passed");Dn(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var u=F([0,0]),h=N(t);h.getNorthWest().distanceTo(h.getSouthWest())*h.getNorthEast().distanceTo(h.getNorthWest())<1700&&(u=Pn(t));var d=t.length,p=[];for(n=0;n<d;n++){var f=F(t[n]);p.push(e.project(F([f.lat-u.lat,f.lng-u.lng])))}for(n=0,i=0;n<d-1;n++)i+=p[n].distanceTo(p[n+1])/2;if(0===i)c=p[0];else for(n=0,s=0;n<d-1;n++)if(r=p[n],a=p[n+1],(s+=o=r.distanceTo(a))>i){l=(s-i)/o,c=[a.x-l*(a.x-r.x),a.y-l*(a.y-r.y)];break}var _=e.unproject(B(c));return F([_.lat+u.lat,_.lng+u.lng])}var Fn={__proto__:null,simplify:Tn,pointToSegmentDistance:kn,closestPointOnSegment:Sn,clipSegment:zn,_getEdgeIntersection:In,_getBitCode:Bn,_sqClosestPointOnSegment:Rn,isFlat:Dn,_flat:Nn,polylineCenter:jn},Un={project:function(t){return new z(t.lng,t.lat)},unproject:function(t){return new j(t.y,t.x)},bounds:new Z([-180,-90],[180,90])},Gn={R:6378137,R_MINOR:6356752.314245179,bounds:new Z([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(t){var e=Math.PI/180,n=this.R,i=t.lat*e,o=this.R_MINOR/n,s=Math.sqrt(1-o*o),r=s*Math.sin(i),a=Math.tan(Math.PI/4-i/2)/Math.pow((1-r)/(1+r),s/2);return i=-n*Math.log(Math.max(a,1e-10)),new z(t.lng*e*n,i)},unproject:function(t){for(var e,n=180/Math.PI,i=this.R,o=this.R_MINOR/i,s=Math.sqrt(1-o*o),r=Math.exp(-t.y/i),a=Math.PI/2-2*Math.atan(r),l=0,c=.1;l<15&&Math.abs(c)>1e-7;l++)e=s*Math.sin(a),e=Math.pow((1-e)/(1+e),s/2),a+=c=Math.PI/2-2*Math.atan(r*e)-a;return new j(a*n,t.x*n/i)}},Hn={__proto__:null,LonLat:Un,Mercator:Gn,SphericalMercator:V},$n=n({},H,{code:"EPSG:3395",projection:Gn,transformation:function(){var t=.5/(Math.PI*Gn.R);return q(t,.5,-t,.5)}()}),Vn=n({},H,{code:"EPSG:4326",projection:Un,transformation:q(1/180,1,-1/180,.5)}),Wn=n({},G,{projection:Un,transformation:q(1,0,-1,0),scale:function(t){return Math.pow(2,t)},zoom:function(t){return Math.log(t)/Math.LN2},distance:function(t,e){var n=e.lng-t.lng,i=e.lat-t.lat;return Math.sqrt(n*n+i*i)},infinite:!0});G.Earth=H,G.EPSG3395=$n,G.EPSG3857=Y,G.EPSG900913=K,G.EPSG4326=Vn,G.Simple=Wn;var qn=O.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(t){return t.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(t){return t&&t.removeLayer(this),this},getPane:function(t){return this._map.getPane(t?this.options[t]||t:this.options.pane)},addInteractiveTarget:function(t){return this._map._targets[r(t)]=this,this},removeInteractiveTarget:function(t){return delete this._map._targets[r(t)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(t){var e=t.target;if(e.hasLayer(this)){if(this._map=e,this._zoomAnimated=e._zoomAnimated,this.getEvents){var n=this.getEvents();e.on(n,this),this.once("remove",function(){e.off(n,this)},this)}this.onAdd(e),this.fire("add"),e.fire("layeradd",{layer:this})}}});sn.include({addLayer:function(t){if(!t._layerAdd)throw new Error("The provided object is not a Layer.");var e=r(t);return this._layers[e]||(this._layers[e]=t,t._mapToAdd=this,t.beforeAdd&&t.beforeAdd(this),this.whenReady(t._layerAdd,t)),this},removeLayer:function(t){var e=r(t);return this._layers[e]?(this._loaded&&t.onRemove(this),delete this._layers[e],this._loaded&&(this.fire("layerremove",{layer:t}),t.fire("remove")),t._map=t._mapToAdd=null,this):this},hasLayer:function(t){return r(t)in this._layers},eachLayer:function(t,e){for(var n in this._layers)t.call(e,this._layers[n]);return this},_addLayers:function(t){for(var e=0,n=(t=t?g(t)?t:[t]:[]).length;e<n;e++)this.addLayer(t[e])},_addZoomLimit:function(t){isNaN(t.options.maxZoom)&&isNaN(t.options.minZoom)||(this._zoomBoundLayers[r(t)]=t,this._updateZoomLevels())},_removeZoomLimit:function(t){var e=r(t);this._zoomBoundLayers[e]&&(delete this._zoomBoundLayers[e],this._updateZoomLevels())},_updateZoomLevels:function(){var t=1/0,e=-1/0,n=this._getZoomSpan();for(var i in this._zoomBoundLayers){var o=this._zoomBoundLayers[i].options;t=void 0===o.minZoom?t:Math.min(t,o.minZoom),e=void 0===o.maxZoom?e:Math.max(e,o.maxZoom)}this._layersMaxZoom=e===-1/0?void 0:e,this._layersMinZoom=t===1/0?void 0:t,n!==this._getZoomSpan()&&this.fire("zoomlevelschange"),void 0===this.options.maxZoom&&this._layersMaxZoom&&this.getZoom()>this._layersMaxZoom&&this.setZoom(this._layersMaxZoom),void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()<this._layersMinZoom&&this.setZoom(this._layersMinZoom)}});var Yn=qn.extend({initialize:function(t,e){var n,i;if(p(this,e),this._layers={},t)for(n=0,i=t.length;n<i;n++)this.addLayer(t[n])},addLayer:function(t){var e=this.getLayerId(t);return this._layers[e]=t,this._map&&this._map.addLayer(t),this},removeLayer:function(t){var e=t in this._layers?t:this.getLayerId(t);return this._map&&this._layers[e]&&this._map.removeLayer(this._layers[e]),delete this._layers[e],this},hasLayer:function(t){return("number"==typeof t?t:this.getLayerId(t))in this._layers},clearLayers:function(){return this.eachLayer(this.removeLayer,this)},invoke:function(t){var e,n,i=Array.prototype.slice.call(arguments,1);for(e in this._layers)(n=this._layers[e])[t]&&n[t].apply(n,i);return this},onAdd:function(t){this.eachLayer(t.addLayer,t)},onRemove:function(t){this.eachLayer(t.removeLayer,t)},eachLayer:function(t,e){for(var n in this._layers)t.call(e,this._layers[n]);return this},getLayer:function(t){return this._layers[t]},getLayers:function(){var t=[];return this.eachLayer(t.push,t),t},setZIndex:function(t){return this.invoke("setZIndex",t)},getLayerId:function(t){return r(t)}}),Kn=function(t,e){return new Yn(t,e)},Jn=Yn.extend({addLayer:function(t){return this.hasLayer(t)?this:(t.addEventParent(this),Yn.prototype.addLayer.call(this,t),this.fire("layeradd",{layer:t}))},removeLayer:function(t){return this.hasLayer(t)?(t in this._layers&&(t=this._layers[t]),t.removeEventParent(this),Yn.prototype.removeLayer.call(this,t),this.fire("layerremove",{layer:t})):this},setStyle:function(t){return this.invoke("setStyle",t)},bringToFront:function(){return this.invoke("bringToFront")},bringToBack:function(){return this.invoke("bringToBack")},getBounds:function(){var t=new D;for(var e in this._layers){var n=this._layers[e];t.extend(n.getBounds?n.getBounds():n.getLatLng())}return t}}),Xn=function(t,e){return new Jn(t,e)},Qn=S.extend({options:{popupAnchor:[0,0],tooltipAnchor:[0,0],crossOrigin:!1},initialize:function(t){p(this,t)},createIcon:function(t){return this._createIcon("icon",t)},createShadow:function(t){return this._createIcon("shadow",t)},_createIcon:function(t,e){var n=this._getIconUrl(t);if(!n){if("icon"===t)throw new Error("iconUrl not set in Icon options (see the docs).");return null}var i=this._createImg(n,e&&"IMG"===e.tagName?e:null);return this._setIconStyles(i,t),(this.options.crossOrigin||""===this.options.crossOrigin)&&(i.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),i},_setIconStyles:function(t,e){var n=this.options,i=n[e+"Size"];"number"==typeof i&&(i=[i,i]);var o=B(i),s=B("shadow"===e&&n.shadowAnchor||n.iconAnchor||o&&o.divideBy(2,!0));t.className="leaflet-marker-"+e+" "+(n.className||""),s&&(t.style.marginLeft=-s.x+"px",t.style.marginTop=-s.y+"px"),o&&(t.style.width=o.x+"px",t.style.height=o.y+"px")},_createImg:function(t,e){return(e=e||document.createElement("img")).src=t,e},_getIconUrl:function(t){return Dt.retina&&this.options[t+"RetinaUrl"]||this.options[t+"Url"]}});function ti(t){return new Qn(t)}var ei=Qn.extend({options:{iconUrl:"marker-icon.png",iconRetinaUrl:"marker-icon-2x.png",shadowUrl:"marker-shadow.png",iconSize:[25,41],iconAnchor:[12,41],popupAnchor:[1,-34],tooltipAnchor:[16,-28],shadowSize:[41,41]},_getIconUrl:function(t){return"string"!=typeof ei.imagePath&&(ei.imagePath=this._detectIconPath()),(this.options.imagePath||ei.imagePath)+Qn.prototype._getIconUrl.call(this,t)},_stripUrl:function(t){var e=function(t,e,n){var i=e.exec(t);return i&&i[n]};return(t=e(t,/^url\((['"])?(.+)\1\)$/,2))&&e(t,/^(.*)marker-icon\.png$/,1)},_detectIconPath:function(){var t=_e("div","leaflet-default-icon-path",document.body),e=fe(t,"background-image")||fe(t,"backgroundImage");if(document.body.removeChild(t),e=this._stripUrl(e))return e;var n=document.querySelector('link[href$="leaflet.css"]');return n?n.href.substring(0,n.href.length-11-1):""}}),ni=vn.extend({initialize:function(t){this._marker=t},addHooks:function(){var t=this._marker._icon;this._draggable||(this._draggable=new wn(t,t,!0)),this._draggable.on({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).enable(),we(t,"leaflet-marker-draggable")},removeHooks:function(){this._draggable.off({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).disable(),this._marker._icon&&xe(this._marker._icon,"leaflet-marker-draggable")},moved:function(){return this._draggable&&this._draggable._moved},_adjustPan:function(t){var e=this._marker,n=e._map,i=this._marker.options.autoPanSpeed,o=this._marker.options.autoPanPadding,s=Ae(e._icon),r=n.getPixelBounds(),a=n.getPixelOrigin(),l=R(r.min._subtract(a).add(o),r.max._subtract(a).subtract(o));if(!l.contains(s)){var c=B((Math.max(l.max.x,s.x)-l.max.x)/(r.max.x-l.max.x)-(Math.min(l.min.x,s.x)-l.min.x)/(r.min.x-l.min.x),(Math.max(l.max.y,s.y)-l.max.y)/(r.max.y-l.max.y)-(Math.min(l.min.y,s.y)-l.min.y)/(r.min.y-l.min.y)).multiplyBy(i);n.panBy(c,{animate:!1}),this._draggable._newPos._add(c),this._draggable._startPos._add(c),Se(e._icon,this._draggable._newPos),this._onDrag(t),this._panRequest=M(this._adjustPan.bind(this,t))}},_onDragStart:function(){this._oldLatLng=this._marker.getLatLng(),this._marker.closePopup&&this._marker.closePopup(),this._marker.fire("movestart").fire("dragstart")},_onPreDrag:function(t){this._marker.options.autoPan&&(T(this._panRequest),this._panRequest=M(this._adjustPan.bind(this,t)))},_onDrag:function(t){var e=this._marker,n=e._shadow,i=Ae(e._icon),o=e._map.layerPointToLatLng(i);n&&Se(n,i),e._latlng=o,t.latlng=o,t.oldLatLng=this._oldLatLng,e.fire("move",t).fire("drag",t)},_onDragEnd:function(t){T(this._panRequest),delete this._oldLatLng,this._marker.fire("moveend").fire("dragend",t)}}),ii=qn.extend({options:{icon:new ei,interactive:!0,keyboard:!0,title:"",alt:"Marker",zIndexOffset:0,opacity:1,riseOnHover:!1,riseOffset:250,pane:"markerPane",shadowPane:"shadowPane",bubblingMouseEvents:!1,autoPanOnFocus:!0,draggable:!1,autoPan:!1,autoPanPadding:[50,50],autoPanSpeed:10},initialize:function(t,e){p(this,e),this._latlng=F(t)},onAdd:function(t){this._zoomAnimated=this._zoomAnimated&&t.options.markerZoomAnimation,this._zoomAnimated&&t.on("zoomanim",this._animateZoom,this),this._initIcon(),this.update()},onRemove:function(t){this.dragging&&this.dragging.enabled()&&(this.options.draggable=!0,this.dragging.removeHooks()),delete this.dragging,this._zoomAnimated&&t.off("zoomanim",this._animateZoom,this),this._removeIcon(),this._removeShadow()},getEvents:function(){return{zoom:this.update,viewreset:this.update}},getLatLng:function(){return this._latlng},setLatLng:function(t){var e=this._latlng;return this._latlng=F(t),this.update(),this.fire("move",{oldLatLng:e,latlng:this._latlng})},setZIndexOffset:function(t){return this.options.zIndexOffset=t,this.update()},getIcon:function(){return this.options.icon},setIcon:function(t){return this.options.icon=t,this._map&&(this._initIcon(),this.update()),this._popup&&this.bindPopup(this._popup,this._popup.options),this},getElement:function(){return this._icon},update:function(){if(this._icon&&this._map){var t=this._map.latLngToLayerPoint(this._latlng).round();this._setPos(t)}return this},_initIcon:function(){var t=this.options,e="leaflet-zoom-"+(this._zoomAnimated?"animated":"hide"),n=t.icon.createIcon(this._icon),i=!1;n!==this._icon&&(this._icon&&this._removeIcon(),i=!0,t.title&&(n.title=t.title),"IMG"===n.tagName&&(n.alt=t.alt||"")),we(n,e),t.keyboard&&(n.tabIndex="0",n.setAttribute("role","button")),this._icon=n,t.riseOnHover&&this.on({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&Ne(n,"focus",this._panOnFocus,this);var o=t.icon.createShadow(this._shadow),s=!1;o!==this._shadow&&(this._removeShadow(),s=!0),o&&(we(o,e),o.alt=""),this._shadow=o,t.opacity<1&&this._updateOpacity(),i&&this.getPane().appendChild(this._icon),this._initInteraction(),o&&s&&this.getPane(t.shadowPane).appendChild(this._shadow)},_removeIcon:function(){this.options.riseOnHover&&this.off({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&Fe(this._icon,"focus",this._panOnFocus,this),me(this._icon),this.removeInteractiveTarget(this._icon),this._icon=null},_removeShadow:function(){this._shadow&&me(this._shadow),this._shadow=null},_setPos:function(t){this._icon&&Se(this._icon,t),this._shadow&&Se(this._shadow,t),this._zIndex=t.y+this.options.zIndexOffset,this._resetZIndex()},_updateZIndex:function(t){this._icon&&(this._icon.style.zIndex=this._zIndex+t)},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center).round();this._setPos(e)},_initInteraction:function(){if(this.options.interactive&&(we(this._icon,"leaflet-interactive"),this.addInteractiveTarget(this._icon),ni)){var t=this.options.draggable;this.dragging&&(t=this.dragging.enabled(),this.dragging.disable()),this.dragging=new ni(this),t&&this.dragging.enable()}},setOpacity:function(t){return this.options.opacity=t,this._map&&this._updateOpacity(),this},_updateOpacity:function(){var t=this.options.opacity;this._icon&&Ce(this._icon,t),this._shadow&&Ce(this._shadow,t)},_bringToFront:function(){this._updateZIndex(this.options.riseOffset)},_resetZIndex:function(){this._updateZIndex(0)},_panOnFocus:function(){var t=this._map;if(t){var e=this.options.icon.options,n=e.iconSize?B(e.iconSize):B(0,0),i=e.iconAnchor?B(e.iconAnchor):B(0,0);t.panInside(this._latlng,{paddingTopLeft:i,paddingBottomRight:n.subtract(i)})}},_getPopupAnchor:function(){return this.options.icon.options.popupAnchor},_getTooltipAnchor:function(){return this.options.icon.options.tooltipAnchor}});function oi(t,e){return new ii(t,e)}var si=qn.extend({options:{stroke:!0,color:"#3388ff",weight:3,opacity:1,lineCap:"round",lineJoin:"round",dashArray:null,dashOffset:null,fill:!1,fillColor:null,fillOpacity:.2,fillRule:"evenodd",interactive:!0,bubblingMouseEvents:!0},beforeAdd:function(t){this._renderer=t.getRenderer(this)},onAdd:function(){this._renderer._initPath(this),this._reset(),this._renderer._addPath(this)},onRemove:function(){this._renderer._removePath(this)},redraw:function(){return this._map&&this._renderer._updatePath(this),this},setStyle:function(t){return p(this,t),this._renderer&&(this._renderer._updateStyle(this),this.options.stroke&&t&&Object.prototype.hasOwnProperty.call(t,"weight")&&this._updateBounds()),this},bringToFront:function(){return this._renderer&&this._renderer._bringToFront(this),this},bringToBack:function(){return this._renderer&&this._renderer._bringToBack(this),this},getElement:function(){return this._path},_reset:function(){this._project(),this._update()},_clickTolerance:function(){return(this.options.stroke?this.options.weight/2:0)+(this._renderer.options.tolerance||0)}}),ri=si.extend({options:{fill:!0,radius:10},initialize:function(t,e){p(this,e),this._latlng=F(t),this._radius=this.options.radius},setLatLng:function(t){var e=this._latlng;return this._latlng=F(t),this.redraw(),this.fire("move",{oldLatLng:e,latlng:this._latlng})},getLatLng:function(){return this._latlng},setRadius:function(t){return this.options.radius=this._radius=t,this.redraw()},getRadius:function(){return this._radius},setStyle:function(t){var e=t&&t.radius||this._radius;return si.prototype.setStyle.call(this,t),this.setRadius(e),this},_project:function(){this._point=this._map.latLngToLayerPoint(this._latlng),this._updateBounds()},_updateBounds:function(){var t=this._radius,e=this._radiusY||t,n=this._clickTolerance(),i=[t+n,e+n];this._pxBounds=new Z(this._point.subtract(i),this._point.add(i))},_update:function(){this._map&&this._updatePath()},_updatePath:function(){this._renderer._updateCircle(this)},_empty:function(){return this._radius&&!this._renderer._bounds.intersects(this._pxBounds)},_containsPoint:function(t){return t.distanceTo(this._point)<=this._radius+this._clickTolerance()}});function ai(t,e){return new ri(t,e)}var li=ri.extend({initialize:function(t,e,i){if("number"==typeof e&&(e=n({},i,{radius:e})),p(this,e),this._latlng=F(t),isNaN(this.options.radius))throw new Error("Circle radius cannot be NaN");this._mRadius=this.options.radius},setRadius:function(t){return this._mRadius=t,this.redraw()},getRadius:function(){return this._mRadius},getBounds:function(){var t=[this._radius,this._radiusY||this._radius];return new D(this._map.layerPointToLatLng(this._point.subtract(t)),this._map.layerPointToLatLng(this._point.add(t)))},setStyle:si.prototype.setStyle,_project:function(){var t=this._latlng.lng,e=this._latlng.lat,n=this._map,i=n.options.crs;if(i.distance===H.distance){var o=Math.PI/180,s=this._mRadius/H.R/o,r=n.project([e+s,t]),a=n.project([e-s,t]),l=r.add(a).divideBy(2),c=n.unproject(l).lat,u=Math.acos((Math.cos(s*o)-Math.sin(e*o)*Math.sin(c*o))/(Math.cos(e*o)*Math.cos(c*o)))/o;(isNaN(u)||0===u)&&(u=s/Math.cos(Math.PI/180*e)),this._point=l.subtract(n.getPixelOrigin()),this._radius=isNaN(u)?0:l.x-n.project([c,t-u]).x,this._radiusY=l.y-r.y}else{var h=i.unproject(i.project(this._latlng).subtract([this._mRadius,0]));this._point=n.latLngToLayerPoint(this._latlng),this._radius=this._point.x-n.latLngToLayerPoint(h).x}this._updateBounds()}});function ci(t,e,n){return new li(t,e,n)}var ui=si.extend({options:{smoothFactor:1,noClip:!1},initialize:function(t,e){p(this,e),this._setLatLngs(t)},getLatLngs:function(){return this._latlngs},setLatLngs:function(t){return this._setLatLngs(t),this.redraw()},isEmpty:function(){return!this._latlngs.length},closestLayerPoint:function(t){for(var e,n,i=1/0,o=null,s=Rn,r=0,a=this._parts.length;r<a;r++)for(var l=this._parts[r],c=1,u=l.length;c<u;c++){var h=s(t,e=l[c-1],n=l[c],!0);h<i&&(i=h,o=s(t,e,n))}return o&&(o.distance=Math.sqrt(i)),o},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return jn(this._defaultShape(),this._map.options.crs)},getBounds:function(){return this._bounds},addLatLng:function(t,e){return e=e||this._defaultShape(),t=F(t),e.push(t),this._bounds.extend(t),this.redraw()},_setLatLngs:function(t){this._bounds=new D,this._latlngs=this._convertLatLngs(t)},_defaultShape:function(){return Dn(this._latlngs)?this._latlngs:this._latlngs[0]},_convertLatLngs:function(t){for(var e=[],n=Dn(t),i=0,o=t.length;i<o;i++)n?(e[i]=F(t[i]),this._bounds.extend(e[i])):e[i]=this._convertLatLngs(t[i]);return e},_project:function(){var t=new Z;this._rings=[],this._projectLatlngs(this._latlngs,this._rings,t),this._bounds.isValid()&&t.isValid()&&(this._rawPxBounds=t,this._updateBounds())},_updateBounds:function(){var t=this._clickTolerance(),e=new z(t,t);this._rawPxBounds&&(this._pxBounds=new Z([this._rawPxBounds.min.subtract(e),this._rawPxBounds.max.add(e)]))},_projectLatlngs:function(t,e,n){var i,o,s=t[0]instanceof j,r=t.length;if(s){for(o=[],i=0;i<r;i++)o[i]=this._map.latLngToLayerPoint(t[i]),n.extend(o[i]);e.push(o)}else for(i=0;i<r;i++)this._projectLatlngs(t[i],e,n)},_clipPoints:function(){var t=this._renderer._bounds;if(this._parts=[],this._pxBounds&&this._pxBounds.intersects(t))if(this.options.noClip)this._parts=this._rings;else{var e,n,i,o,s,r,a,l=this._parts;for(e=0,i=0,o=this._rings.length;e<o;e++)for(n=0,s=(a=this._rings[e]).length;n<s-1;n++)(r=zn(a[n],a[n+1],t,n,!0))&&(l[i]=l[i]||[],l[i].push(r[0]),r[1]===a[n+1]&&n!==s-2||(l[i].push(r[1]),i++))}},_simplifyPoints:function(){for(var t=this._parts,e=this.options.smoothFactor,n=0,i=t.length;n<i;n++)t[n]=Tn(t[n],e)},_update:function(){this._map&&(this._clipPoints(),this._simplifyPoints(),this._updatePath())},_updatePath:function(){this._renderer._updatePoly(this)},_containsPoint:function(t,e){var n,i,o,s,r,a,l=this._clickTolerance();if(!this._pxBounds||!this._pxBounds.contains(t))return!1;for(n=0,s=this._parts.length;n<s;n++)for(i=0,o=(r=(a=this._parts[n]).length)-1;i<r;o=i++)if((e||0!==i)&&kn(t,a[o],a[i])<=l)return!0;return!1}});function hi(t,e){return new ui(t,e)}ui._flat=Nn;var di=ui.extend({options:{fill:!0},isEmpty:function(){return!this._latlngs.length||!this._latlngs[0].length},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return Ln(this._defaultShape(),this._map.options.crs)},_convertLatLngs:function(t){var e=ui.prototype._convertLatLngs.call(this,t),n=e.length;return n>=2&&e[0]instanceof j&&e[0].equals(e[n-1])&&e.pop(),e},_setLatLngs:function(t){ui.prototype._setLatLngs.call(this,t),Dn(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return Dn(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var t=this._renderer._bounds,e=this.options.weight,n=new z(e,e);if(t=new Z(t.min.subtract(n),t.max.add(n)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(t))if(this.options.noClip)this._parts=this._rings;else for(var i,o=0,s=this._rings.length;o<s;o++)(i=xn(this._rings[o],t,!0)).length&&this._parts.push(i)},_updatePath:function(){this._renderer._updatePoly(this,!0)},_containsPoint:function(t){var e,n,i,o,s,r,a,l,c=!1;if(!this._pxBounds||!this._pxBounds.contains(t))return!1;for(o=0,a=this._parts.length;o<a;o++)for(s=0,r=(l=(e=this._parts[o]).length)-1;s<l;r=s++)n=e[s],i=e[r],n.y>t.y!=i.y>t.y&&t.x<(i.x-n.x)*(t.y-n.y)/(i.y-n.y)+n.x&&(c=!c);return c||ui.prototype._containsPoint.call(this,t,!0)}});function pi(t,e){return new di(t,e)}var fi=Jn.extend({initialize:function(t,e){p(this,e),this._layers={},t&&this.addData(t)},addData:function(t){var e,n,i,o=g(t)?t:t.features;if(o){for(e=0,n=o.length;e<n;e++)((i=o[e]).geometries||i.geometry||i.features||i.coordinates)&&this.addData(i);return this}var s=this.options;if(s.filter&&!s.filter(t))return this;var r=_i(t,s);return r?(r.feature=xi(t),r.defaultOptions=r.options,this.resetStyle(r),s.onEachFeature&&s.onEachFeature(t,r),this.addLayer(r)):this},resetStyle:function(t){return void 0===t?this.eachLayer(this.resetStyle,this):(t.options=n({},t.defaultOptions),this._setLayerStyle(t,this.options.style),this)},setStyle:function(t){return this.eachLayer(function(e){this._setLayerStyle(e,t)},this)},_setLayerStyle:function(t,e){t.setStyle&&("function"==typeof e&&(e=e(t.feature)),t.setStyle(e))}});function _i(t,e){var n,i,o,s,r="Feature"===t.type?t.geometry:t,a=r?r.coordinates:null,l=[],c=e&&e.pointToLayer,u=e&&e.coordsToLatLng||gi;if(!a&&!r)return null;switch(r.type){case"Point":return mi(c,t,n=u(a),e);case"MultiPoint":for(o=0,s=a.length;o<s;o++)n=u(a[o]),l.push(mi(c,t,n,e));return new Jn(l);case"LineString":case"MultiLineString":return i=vi(a,"LineString"===r.type?0:1,u),new ui(i,e);case"Polygon":case"MultiPolygon":return i=vi(a,"Polygon"===r.type?1:2,u),new di(i,e);case"GeometryCollection":for(o=0,s=r.geometries.length;o<s;o++){var h=_i({geometry:r.geometries[o],type:"Feature",properties:t.properties},e);h&&l.push(h)}return new Jn(l);case"FeatureCollection":for(o=0,s=r.features.length;o<s;o++){var d=_i(r.features[o],e);d&&l.push(d)}return new Jn(l);default:throw new Error("Invalid GeoJSON object.")}}function mi(t,e,n,i){return t?t(e,n):new ii(n,i&&i.markersInheritOptions&&i)}function gi(t){return new j(t[1],t[0],t[2])}function vi(t,e,n){for(var i,o=[],s=0,r=t.length;s<r;s++)i=e?vi(t[s],e-1,n):(n||gi)(t[s]),o.push(i);return o}function yi(t,e){return void 0!==(t=F(t)).alt?[u(t.lng,e),u(t.lat,e),u(t.alt,e)]:[u(t.lng,e),u(t.lat,e)]}function bi(t,e,n,i){for(var o=[],s=0,r=t.length;s<r;s++)o.push(e?bi(t[s],Dn(t[s])?0:e-1,n,i):yi(t[s],i));return!e&&n&&o.length>0&&o.push(o[0].slice()),o}function wi(t,e){return t.feature?n({},t.feature,{geometry:e}):xi(e)}function xi(t){return"Feature"===t.type||"FeatureCollection"===t.type?t:{type:"Feature",properties:{},geometry:t}}var Li={toGeoJSON:function(t){return wi(this,{type:"Point",coordinates:yi(this.getLatLng(),t)})}};function Pi(t,e){return new fi(t,e)}ii.include(Li),li.include(Li),ri.include(Li),ui.include({toGeoJSON:function(t){var e=!Dn(this._latlngs);return wi(this,{type:(e?"Multi":"")+"LineString",coordinates:bi(this._latlngs,e?1:0,!1,t)})}}),di.include({toGeoJSON:function(t){var e=!Dn(this._latlngs),n=e&&!Dn(this._latlngs[0]),i=bi(this._latlngs,n?2:e?1:0,!0,t);return e||(i=[i]),wi(this,{type:(n?"Multi":"")+"Polygon",coordinates:i})}}),Yn.include({toMultiPoint:function(t){var e=[];return this.eachLayer(function(n){e.push(n.toGeoJSON(t).geometry.coordinates)}),wi(this,{type:"MultiPoint",coordinates:e})},toGeoJSON:function(t){var e=this.feature&&this.feature.geometry&&this.feature.geometry.type;if("MultiPoint"===e)return this.toMultiPoint(t);var n="GeometryCollection"===e,i=[];return this.eachLayer(function(e){if(e.toGeoJSON){var o=e.toGeoJSON(t);if(n)i.push(o.geometry);else{var s=xi(o);"FeatureCollection"===s.type?i.push.apply(i,s.features):i.push(s)}}}),n?wi(this,{geometries:i,type:"GeometryCollection"}):{type:"FeatureCollection",features:i}}});var Ci=Pi,Mi=qn.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(t,e,n){this._url=t,this._bounds=N(e),p(this,n)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(we(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){me(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(t){return this.options.opacity=t,this._image&&this._updateOpacity(),this},setStyle:function(t){return t.opacity&&this.setOpacity(t.opacity),this},bringToFront:function(){return this._map&&ve(this._image),this},bringToBack:function(){return this._map&&ye(this._image),this},setUrl:function(t){return this._url=t,this._image&&(this._image.src=t),this},setBounds:function(t){return this._bounds=N(t),this._map&&this._reset(),this},getEvents:function(){var t={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var t="IMG"===this._url.tagName,e=this._image=t?this._url:_e("img");we(e,"leaflet-image-layer"),this._zoomAnimated&&we(e,"leaflet-zoom-animated"),this.options.className&&we(e,this.options.className),e.onselectstart=c,e.onmousemove=c,e.onload=o(this.fire,this,"load"),e.onerror=o(this._overlayOnError,this,"error"),(this.options.crossOrigin||""===this.options.crossOrigin)&&(e.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),t?this._url=e.src:(e.src=this._url,e.alt=this.options.alt)},_animateZoom:function(t){var e=this._map.getZoomScale(t.zoom),n=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;ke(this._image,n,e)},_reset:function(){var t=this._image,e=new Z(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),n=e.getSize();Se(t,e.min),t.style.width=n.x+"px",t.style.height=n.y+"px"},_updateOpacity:function(){Ce(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var t=this.options.errorOverlayUrl;t&&this._url!==t&&(this._url=t,this._image.src=t)},getCenter:function(){return this._bounds.getCenter()}}),Ti=function(t,e,n){return new Mi(t,e,n)},ki=Mi.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var t="VIDEO"===this._url.tagName,e=this._image=t?this._url:_e("video");if(we(e,"leaflet-image-layer"),this._zoomAnimated&&we(e,"leaflet-zoom-animated"),this.options.className&&we(e,this.options.className),e.onselectstart=c,e.onmousemove=c,e.onloadeddata=o(this.fire,this,"load"),t){for(var n=e.getElementsByTagName("source"),i=[],s=0;s<n.length;s++)i.push(n[s].src);this._url=n.length>0?i:[e.src]}else{g(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(e.style,"objectFit")&&(e.style.objectFit="fill"),e.autoplay=!!this.options.autoplay,e.loop=!!this.options.loop,e.muted=!!this.options.muted,e.playsInline=!!this.options.playsInline;for(var r=0;r<this._url.length;r++){var a=_e("source");a.src=this._url[r],e.appendChild(a)}}}});function Si(t,e,n){return new ki(t,e,n)}var Ai=Mi.extend({_initImage:function(){var t=this._image=this._url;we(t,"leaflet-image-layer"),this._zoomAnimated&&we(t,"leaflet-zoom-animated"),this.options.className&&we(t,this.options.className),t.onselectstart=c,t.onmousemove=c}});function Ei(t,e,n){return new Ai(t,e,n)}var Oi=qn.extend({options:{interactive:!1,offset:[0,0],className:"",pane:void 0,content:""},initialize:function(t,e){t&&(t instanceof j||g(t))?(this._latlng=F(t),p(this,e)):(p(this,t),this._source=e),this.options.content&&(this._content=this.options.content)},openOn:function(t){return(t=arguments.length?t:this._source._map).hasLayer(this)||t.addLayer(this),this},close:function(){return this._map&&this._map.removeLayer(this),this},toggle:function(t){return this._map?this.close():(arguments.length?this._source=t:t=this._source,this._prepareOpen(),this.openOn(t._map)),this},onAdd:function(t){this._zoomAnimated=t._zoomAnimated,this._container||this._initLayout(),t._fadeAnimated&&Ce(this._container,0),clearTimeout(this._removeTimeout),this.getPane().appendChild(this._container),this.update(),t._fadeAnimated&&Ce(this._container,1),this.bringToFront(),this.options.interactive&&(we(this._container,"leaflet-interactive"),this.addInteractiveTarget(this._container))},onRemove:function(t){t._fadeAnimated?(Ce(this._container,0),this._removeTimeout=setTimeout(o(me,void 0,this._container),200)):me(this._container),this.options.interactive&&(xe(this._container,"leaflet-interactive"),this.removeInteractiveTarget(this._container))},getLatLng:function(){return this._latlng},setLatLng:function(t){return this._latlng=F(t),this._map&&(this._updatePosition(),this._adjustPan()),this},getContent:function(){return this._content},setContent:function(t){return this._content=t,this.update(),this},getElement:function(){return this._container},update:function(){this._map&&(this._container.style.visibility="hidden",this._updateContent(),this._updateLayout(),this._updatePosition(),this._container.style.visibility="",this._adjustPan())},getEvents:function(){var t={zoom:this._updatePosition,viewreset:this._updatePosition};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},isOpen:function(){return!!this._map&&this._map.hasLayer(this)},bringToFront:function(){return this._map&&ve(this._container),this},bringToBack:function(){return this._map&&ye(this._container),this},_prepareOpen:function(t){var e=this._source;if(!e._map)return!1;if(e instanceof Jn){e=null;var n=this._source._layers;for(var i in n)if(n[i]._map){e=n[i];break}if(!e)return!1;this._source=e}if(!t)if(e.getCenter)t=e.getCenter();else if(e.getLatLng)t=e.getLatLng();else{if(!e.getBounds)throw new Error("Unable to get source layer LatLng.");t=e.getBounds().getCenter()}return this.setLatLng(t),this._map&&this.update(),!0},_updateContent:function(){if(this._content){var t=this._contentNode,e="function"==typeof this._content?this._content(this._source||this):this._content;if("string"==typeof e)t.innerHTML=e;else{for(;t.hasChildNodes();)t.removeChild(t.firstChild);t.appendChild(e)}this.fire("contentupdate")}},_updatePosition:function(){if(this._map){var t=this._map.latLngToLayerPoint(this._latlng),e=B(this.options.offset),n=this._getAnchor();this._zoomAnimated?Se(this._container,t.add(n)):e=e.add(t).add(n);var i=this._containerBottom=-e.y,o=this._containerLeft=-Math.round(this._containerWidth/2)+e.x;this._container.style.bottom=i+"px",this._container.style.left=o+"px"}},_getAnchor:function(){return[0,0]}});sn.include({_initOverlay:function(t,e,n,i){var o=e;return o instanceof t||(o=new t(i).setContent(e)),n&&o.setLatLng(n),o}}),qn.include({_initOverlay:function(t,e,n,i){var o=n;return o instanceof t?(p(o,i),o._source=this):(o=e&&!i?e:new t(i,this)).setContent(n),o}});var zi=Oi.extend({options:{pane:"popupPane",offset:[0,7],maxWidth:300,minWidth:50,maxHeight:null,autoPan:!0,autoPanPaddingTopLeft:null,autoPanPaddingBottomRight:null,autoPanPadding:[5,5],keepInView:!1,closeButton:!0,autoClose:!0,closeOnEscapeKey:!0,className:""},openOn:function(t){return!(t=arguments.length?t:this._source._map).hasLayer(this)&&t._popup&&t._popup.options.autoClose&&t.removeLayer(t._popup),t._popup=this,Oi.prototype.openOn.call(this,t)},onAdd:function(t){Oi.prototype.onAdd.call(this,t),t.fire("popupopen",{popup:this}),this._source&&(this._source.fire("popupopen",{popup:this},!0),this._source instanceof si||this._source.on("preclick",Ve))},onRemove:function(t){Oi.prototype.onRemove.call(this,t),t.fire("popupclose",{popup:this}),this._source&&(this._source.fire("popupclose",{popup:this},!0),this._source instanceof si||this._source.off("preclick",Ve))},getEvents:function(){var t=Oi.prototype.getEvents.call(this);return(void 0!==this.options.closeOnClick?this.options.closeOnClick:this._map.options.closePopupOnClick)&&(t.preclick=this.close),this.options.keepInView&&(t.moveend=this._adjustPan),t},_initLayout:function(){var t="leaflet-popup",e=this._container=_e("div",t+" "+(this.options.className||"")+" leaflet-zoom-animated"),n=this._wrapper=_e("div",t+"-content-wrapper",e);if(this._contentNode=_e("div",t+"-content",n),qe(e),We(this._contentNode),Ne(e,"contextmenu",Ve),this._tipContainer=_e("div",t+"-tip-container",e),this._tip=_e("div",t+"-tip",this._tipContainer),this.options.closeButton){var i=this._closeButton=_e("a",t+"-close-button",e);i.setAttribute("role","button"),i.setAttribute("aria-label","Close popup"),i.href="#close",i.innerHTML='<span aria-hidden="true">×</span>',Ne(i,"click",function(t){Ye(t),this.close()},this)}},_updateLayout:function(){var t=this._contentNode,e=t.style;e.width="",e.whiteSpace="nowrap";var n=t.offsetWidth;n=Math.min(n,this.options.maxWidth),n=Math.max(n,this.options.minWidth),e.width=n+1+"px",e.whiteSpace="",e.height="";var i=t.offsetHeight,o=this.options.maxHeight,s="leaflet-popup-scrolled";o&&i>o?(e.height=o+"px",we(t,s)):xe(t,s),this._containerWidth=this._container.offsetWidth},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center),n=this._getAnchor();Se(this._container,e.add(n))},_adjustPan:function(){if(this.options.autoPan)if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning)this._autopanning=!1;else{var t=this._map,e=parseInt(fe(this._container,"marginBottom"),10)||0,n=this._container.offsetHeight+e,i=this._containerWidth,o=new z(this._containerLeft,-n-this._containerBottom);o._add(Ae(this._container));var s=t.layerPointToContainerPoint(o),r=B(this.options.autoPanPadding),a=B(this.options.autoPanPaddingTopLeft||r),l=B(this.options.autoPanPaddingBottomRight||r),c=t.getSize(),u=0,h=0;s.x+i+l.x>c.x&&(u=s.x+i-c.x+l.x),s.x-u-a.x<0&&(u=s.x-a.x),s.y+n+l.y>c.y&&(h=s.y+n-c.y+l.y),s.y-h-a.y<0&&(h=s.y-a.y),(u||h)&&(this.options.keepInView&&(this._autopanning=!0),t.fire("autopanstart").panBy([u,h]))}},_getAnchor:function(){return B(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),Ii=function(t,e){return new zi(t,e)};sn.mergeOptions({closePopupOnClick:!0}),sn.include({openPopup:function(t,e,n){return this._initOverlay(zi,t,e,n).openOn(this),this},closePopup:function(t){return(t=arguments.length?t:this._popup)&&t.close(),this}}),qn.include({bindPopup:function(t,e){return this._popup=this._initOverlay(zi,this._popup,t,e),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(t){return this._popup&&(this instanceof Jn||(this._popup._source=this),this._popup._prepareOpen(t||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return!!this._popup&&this._popup.isOpen()},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},getPopup:function(){return this._popup},_openPopup:function(t){if(this._popup&&this._map){Ke(t);var e=t.layer||t.target;this._popup._source!==e||e instanceof si?(this._popup._source=e,this.openPopup(t.latlng)):this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(t.latlng)}},_movePopup:function(t){this._popup.setLatLng(t.latlng)},_onKeyPress:function(t){13===t.originalEvent.keyCode&&this._openPopup(t)}});var Bi=Oi.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(t){Oi.prototype.onAdd.call(this,t),this.setOpacity(this.options.opacity),t.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(t){Oi.prototype.onRemove.call(this,t),t.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var t=Oi.prototype.getEvents.call(this);return this.options.permanent||(t.preclick=this.close),t},_initLayout:function(){var t="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=_e("div",t),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+r(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(t){var e,n,i=this._map,o=this._container,s=i.latLngToContainerPoint(i.getCenter()),r=i.layerPointToContainerPoint(t),a=this.options.direction,l=o.offsetWidth,c=o.offsetHeight,u=B(this.options.offset),h=this._getAnchor();"top"===a?(e=l/2,n=c):"bottom"===a?(e=l/2,n=0):"center"===a?(e=l/2,n=c/2):"right"===a?(e=0,n=c/2):"left"===a?(e=l,n=c/2):r.x<s.x?(a="right",e=0,n=c/2):(a="left",e=l+2*(u.x+h.x),n=c/2),t=t.subtract(B(e,n,!0)).add(u).add(h),xe(o,"leaflet-tooltip-right"),xe(o,"leaflet-tooltip-left"),xe(o,"leaflet-tooltip-top"),xe(o,"leaflet-tooltip-bottom"),we(o,"leaflet-tooltip-"+a),Se(o,t)},_updatePosition:function(){var t=this._map.latLngToLayerPoint(this._latlng);this._setPosition(t)},setOpacity:function(t){this.options.opacity=t,this._container&&Ce(this._container,t)},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center);this._setPosition(e)},_getAnchor:function(){return B(this._source&&this._source._getTooltipAnchor&&!this.options.sticky?this._source._getTooltipAnchor():[0,0])}}),Zi=function(t,e){return new Bi(t,e)};sn.include({openTooltip:function(t,e,n){return this._initOverlay(Bi,t,e,n).openOn(this),this},closeTooltip:function(t){return t.close(),this}}),qn.include({bindTooltip:function(t,e){return this._tooltip&&this.isTooltipOpen()&&this.unbindTooltip(),this._tooltip=this._initOverlay(Bi,this._tooltip,t,e),this._initTooltipInteractions(),this._tooltip.options.permanent&&this._map&&this._map.hasLayer(this)&&this.openTooltip(),this},unbindTooltip:function(){return this._tooltip&&(this._initTooltipInteractions(!0),this.closeTooltip(),this._tooltip=null),this},_initTooltipInteractions:function(t){if(t||!this._tooltipHandlersAdded){var e=t?"off":"on",n={remove:this.closeTooltip,move:this._moveTooltip};this._tooltip.options.permanent?n.add=this._openTooltip:(n.mouseover=this._openTooltip,n.mouseout=this.closeTooltip,n.click=this._openTooltip,this._map?this._addFocusListeners():n.add=this._addFocusListeners),this._tooltip.options.sticky&&(n.mousemove=this._moveTooltip),this[e](n),this._tooltipHandlersAdded=!t}},openTooltip:function(t){return this._tooltip&&(this instanceof Jn||(this._tooltip._source=this),this._tooltip._prepareOpen(t)&&(this._tooltip.openOn(this._map),this.getElement?this._setAriaDescribedByOnLayer(this):this.eachLayer&&this.eachLayer(this._setAriaDescribedByOnLayer,this))),this},closeTooltip:function(){if(this._tooltip)return this._tooltip.close()},toggleTooltip:function(){return this._tooltip&&this._tooltip.toggle(this),this},isTooltipOpen:function(){return this._tooltip.isOpen()},setTooltipContent:function(t){return this._tooltip&&this._tooltip.setContent(t),this},getTooltip:function(){return this._tooltip},_addFocusListeners:function(){this.getElement?this._addFocusListenersOnLayer(this):this.eachLayer&&this.eachLayer(this._addFocusListenersOnLayer,this)},_addFocusListenersOnLayer:function(t){var e="function"==typeof t.getElement&&t.getElement();e&&(Ne(e,"focus",function(){this._tooltip._source=t,this.openTooltip()},this),Ne(e,"blur",this.closeTooltip,this))},_setAriaDescribedByOnLayer:function(t){var e="function"==typeof t.getElement&&t.getElement();e&&e.setAttribute("aria-describedby",this._tooltip._container.id)},_openTooltip:function(t){if(this._tooltip&&this._map)if(this._map.dragging&&this._map.dragging.moving()&&!this._openOnceFlag){this._openOnceFlag=!0;var e=this;this._map.once("moveend",function(){e._openOnceFlag=!1,e._openTooltip(t)})}else this._tooltip._source=t.layer||t.target,this.openTooltip(this._tooltip.options.sticky?t.latlng:void 0)},_moveTooltip:function(t){var e,n,i=t.latlng;this._tooltip.options.sticky&&t.originalEvent&&(e=this._map.mouseEventToContainerPoint(t.originalEvent),n=this._map.containerPointToLayerPoint(e),i=this._map.layerPointToLatLng(n)),this._tooltip.setLatLng(i)}});var Ri=Qn.extend({options:{iconSize:[12,12],html:!1,bgPos:null,className:"leaflet-div-icon"},createIcon:function(t){var e=t&&"DIV"===t.tagName?t:document.createElement("div"),n=this.options;if(n.html instanceof Element?(ge(e),e.appendChild(n.html)):e.innerHTML=!1!==n.html?n.html:"",n.bgPos){var i=B(n.bgPos);e.style.backgroundPosition=-i.x+"px "+-i.y+"px"}return this._setIconStyles(e,"icon"),e},createShadow:function(){return null}});function Di(t){return new Ri(t)}Qn.Default=ei;var Ni=qn.extend({options:{tileSize:256,opacity:1,updateWhenIdle:Dt.mobile,updateWhenZooming:!0,updateInterval:200,zIndex:1,bounds:null,minZoom:0,maxZoom:void 0,maxNativeZoom:void 0,minNativeZoom:void 0,noWrap:!1,pane:"tilePane",className:"",keepBuffer:2},initialize:function(t){p(this,t)},onAdd:function(){this._initContainer(),this._levels={},this._tiles={},this._resetView()},beforeAdd:function(t){t._addZoomLimit(this)},onRemove:function(t){this._removeAllTiles(),me(this._container),t._removeZoomLimit(this),this._container=null,this._tileZoom=void 0},bringToFront:function(){return this._map&&(ve(this._container),this._setAutoZIndex(Math.max)),this},bringToBack:function(){return this._map&&(ye(this._container),this._setAutoZIndex(Math.min)),this},getContainer:function(){return this._container},setOpacity:function(t){return this.options.opacity=t,this._updateOpacity(),this},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},isLoading:function(){return this._loading},redraw:function(){if(this._map){this._removeAllTiles();var t=this._clampZoom(this._map.getZoom());t!==this._tileZoom&&(this._tileZoom=t,this._updateLevels()),this._update()}return this},getEvents:function(){var t={viewprereset:this._invalidateAll,viewreset:this._resetView,zoom:this._resetView,moveend:this._onMoveEnd};return this.options.updateWhenIdle||(this._onMove||(this._onMove=a(this._onMoveEnd,this.options.updateInterval,this)),t.move=this._onMove),this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},createTile:function(){return document.createElement("div")},getTileSize:function(){var t=this.options.tileSize;return t instanceof z?t:new z(t,t)},_updateZIndex:function(){this._container&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._container.style.zIndex=this.options.zIndex)},_setAutoZIndex:function(t){for(var e,n=this.getPane().children,i=-t(-1/0,1/0),o=0,s=n.length;o<s;o++)e=n[o].style.zIndex,n[o]!==this._container&&e&&(i=t(i,+e));isFinite(i)&&(this.options.zIndex=i+t(-1,1),this._updateZIndex())},_updateOpacity:function(){if(this._map&&!Dt.ielt9){Ce(this._container,this.options.opacity);var t=+new Date,e=!1,n=!1;for(var i in this._tiles){var o=this._tiles[i];if(o.current&&o.loaded){var s=Math.min(1,(t-o.loaded)/200);Ce(o.el,s),s<1?e=!0:(o.active?n=!0:this._onOpaqueTile(o),o.active=!0)}}n&&!this._noPrune&&this._pruneTiles(),e&&(T(this._fadeFrame),this._fadeFrame=M(this._updateOpacity,this))}},_onOpaqueTile:c,_initContainer:function(){this._container||(this._container=_e("div","leaflet-layer "+(this.options.className||"")),this._updateZIndex(),this.options.opacity<1&&this._updateOpacity(),this.getPane().appendChild(this._container))},_updateLevels:function(){var t=this._tileZoom,e=this.options.maxZoom;if(void 0!==t){for(var n in this._levels)n=Number(n),this._levels[n].el.children.length||n===t?(this._levels[n].el.style.zIndex=e-Math.abs(t-n),this._onUpdateLevel(n)):(me(this._levels[n].el),this._removeTilesAtZoom(n),this._onRemoveLevel(n),delete this._levels[n]);var i=this._levels[t],o=this._map;return i||((i=this._levels[t]={}).el=_e("div","leaflet-tile-container leaflet-zoom-animated",this._container),i.el.style.zIndex=e,i.origin=o.project(o.unproject(o.getPixelOrigin()),t).round(),i.zoom=t,this._setZoomTransform(i,o.getCenter(),o.getZoom()),c(i.el.offsetWidth),this._onCreateLevel(i)),this._level=i,i}},_onUpdateLevel:c,_onRemoveLevel:c,_onCreateLevel:c,_pruneTiles:function(){if(this._map){var t,e,n=this._map.getZoom();if(n>this.options.maxZoom||n<this.options.minZoom)this._removeAllTiles();else{for(t in this._tiles)(e=this._tiles[t]).retain=e.current;for(t in this._tiles)if((e=this._tiles[t]).current&&!e.active){var i=e.coords;this._retainParent(i.x,i.y,i.z,i.z-5)||this._retainChildren(i.x,i.y,i.z,i.z+2)}for(t in this._tiles)this._tiles[t].retain||this._removeTile(t)}}},_removeTilesAtZoom:function(t){for(var e in this._tiles)this._tiles[e].coords.z===t&&this._removeTile(e)},_removeAllTiles:function(){for(var t in this._tiles)this._removeTile(t)},_invalidateAll:function(){for(var t in this._levels)me(this._levels[t].el),this._onRemoveLevel(Number(t)),delete this._levels[t];this._removeAllTiles(),this._tileZoom=void 0},_retainParent:function(t,e,n,i){var o=Math.floor(t/2),s=Math.floor(e/2),r=n-1,a=new z(+o,+s);a.z=+r;var l=this._tileCoordsToKey(a),c=this._tiles[l];return c&&c.active?(c.retain=!0,!0):(c&&c.loaded&&(c.retain=!0),r>i&&this._retainParent(o,s,r,i))},_retainChildren:function(t,e,n,i){for(var o=2*t;o<2*t+2;o++)for(var s=2*e;s<2*e+2;s++){var r=new z(o,s);r.z=n+1;var a=this._tileCoordsToKey(r),l=this._tiles[a];l&&l.active?l.retain=!0:(l&&l.loaded&&(l.retain=!0),n+1<i&&this._retainChildren(o,s,n+1,i))}},_resetView:function(t){var e=t&&(t.pinch||t.flyTo);this._setView(this._map.getCenter(),this._map.getZoom(),e,e)},_animateZoom:function(t){this._setView(t.center,t.zoom,!0,t.noUpdate)},_clampZoom:function(t){var e=this.options;return void 0!==e.minNativeZoom&&t<e.minNativeZoom?e.minNativeZoom:void 0!==e.maxNativeZoom&&e.maxNativeZoom<t?e.maxNativeZoom:t},_setView:function(t,e,n,i){var o=Math.round(e);o=void 0!==this.options.maxZoom&&o>this.options.maxZoom||void 0!==this.options.minZoom&&o<this.options.minZoom?void 0:this._clampZoom(o);var s=this.options.updateWhenZooming&&o!==this._tileZoom;i&&!s||(this._tileZoom=o,this._abortLoading&&this._abortLoading(),this._updateLevels(),this._resetGrid(),void 0!==o&&this._update(t),n||this._pruneTiles(),this._noPrune=!!n),this._setZoomTransforms(t,e)},_setZoomTransforms:function(t,e){for(var n in this._levels)this._setZoomTransform(this._levels[n],t,e)},_setZoomTransform:function(t,e,n){var i=this._map.getZoomScale(n,t.zoom),o=t.origin.multiplyBy(i).subtract(this._map._getNewPixelOrigin(e,n)).round();Dt.any3d?ke(t.el,o,i):Se(t.el,o)},_resetGrid:function(){var t=this._map,e=t.options.crs,n=this._tileSize=this.getTileSize(),i=this._tileZoom,o=this._map.getPixelWorldBounds(this._tileZoom);o&&(this._globalTileRange=this._pxBoundsToTileRange(o)),this._wrapX=e.wrapLng&&!this.options.noWrap&&[Math.floor(t.project([0,e.wrapLng[0]],i).x/n.x),Math.ceil(t.project([0,e.wrapLng[1]],i).x/n.y)],this._wrapY=e.wrapLat&&!this.options.noWrap&&[Math.floor(t.project([e.wrapLat[0],0],i).y/n.x),Math.ceil(t.project([e.wrapLat[1],0],i).y/n.y)]},_onMoveEnd:function(){this._map&&!this._map._animatingZoom&&this._update()},_getTiledPixelBounds:function(t){var e=this._map,n=e._animatingZoom?Math.max(e._animateToZoom,e.getZoom()):e.getZoom(),i=e.getZoomScale(n,this._tileZoom),o=e.project(t,this._tileZoom).floor(),s=e.getSize().divideBy(2*i);return new Z(o.subtract(s),o.add(s))},_update:function(t){var e=this._map;if(e){var n=this._clampZoom(e.getZoom());if(void 0===t&&(t=e.getCenter()),void 0!==this._tileZoom){var i=this._getTiledPixelBounds(t),o=this._pxBoundsToTileRange(i),s=o.getCenter(),r=[],a=this.options.keepBuffer,l=new Z(o.getBottomLeft().subtract([a,-a]),o.getTopRight().add([a,-a]));if(!(isFinite(o.min.x)&&isFinite(o.min.y)&&isFinite(o.max.x)&&isFinite(o.max.y)))throw new Error("Attempted to load an infinite number of tiles");for(var c in this._tiles){var u=this._tiles[c].coords;u.z===this._tileZoom&&l.contains(new z(u.x,u.y))||(this._tiles[c].current=!1)}if(Math.abs(n-this._tileZoom)>1)this._setView(t,n);else{for(var h=o.min.y;h<=o.max.y;h++)for(var d=o.min.x;d<=o.max.x;d++){var p=new z(d,h);if(p.z=this._tileZoom,this._isValidTile(p)){var f=this._tiles[this._tileCoordsToKey(p)];f?f.current=!0:r.push(p)}}if(r.sort(function(t,e){return t.distanceTo(s)-e.distanceTo(s)}),0!==r.length){this._loading||(this._loading=!0,this.fire("loading"));var _=document.createDocumentFragment();for(d=0;d<r.length;d++)this._addTile(r[d],_);this._level.el.appendChild(_)}}}}},_isValidTile:function(t){var e=this._map.options.crs;if(!e.infinite){var n=this._globalTileRange;if(!e.wrapLng&&(t.x<n.min.x||t.x>n.max.x)||!e.wrapLat&&(t.y<n.min.y||t.y>n.max.y))return!1}if(!this.options.bounds)return!0;var i=this._tileCoordsToBounds(t);return N(this.options.bounds).overlaps(i)},_keyToBounds:function(t){return this._tileCoordsToBounds(this._keyToTileCoords(t))},_tileCoordsToNwSe:function(t){var e=this._map,n=this.getTileSize(),i=t.scaleBy(n),o=i.add(n);return[e.unproject(i,t.z),e.unproject(o,t.z)]},_tileCoordsToBounds:function(t){var e=this._tileCoordsToNwSe(t),n=new D(e[0],e[1]);return this.options.noWrap||(n=this._map.wrapLatLngBounds(n)),n},_tileCoordsToKey:function(t){return t.x+":"+t.y+":"+t.z},_keyToTileCoords:function(t){var e=t.split(":"),n=new z(+e[0],+e[1]);return n.z=+e[2],n},_removeTile:function(t){var e=this._tiles[t];e&&(me(e.el),delete this._tiles[t],this.fire("tileunload",{tile:e.el,coords:this._keyToTileCoords(t)}))},_initTile:function(t){we(t,"leaflet-tile");var e=this.getTileSize();t.style.width=e.x+"px",t.style.height=e.y+"px",t.onselectstart=c,t.onmousemove=c,Dt.ielt9&&this.options.opacity<1&&Ce(t,this.options.opacity)},_addTile:function(t,e){var n=this._getTilePos(t),i=this._tileCoordsToKey(t),s=this.createTile(this._wrapCoords(t),o(this._tileReady,this,t));this._initTile(s),this.createTile.length<2&&M(o(this._tileReady,this,t,null,s)),Se(s,n),this._tiles[i]={el:s,coords:t,current:!0},e.appendChild(s),this.fire("tileloadstart",{tile:s,coords:t})},_tileReady:function(t,e,n){e&&this.fire("tileerror",{error:e,tile:n,coords:t});var i=this._tileCoordsToKey(t);(n=this._tiles[i])&&(n.loaded=+new Date,this._map._fadeAnimated?(Ce(n.el,0),T(this._fadeFrame),this._fadeFrame=M(this._updateOpacity,this)):(n.active=!0,this._pruneTiles()),e||(we(n.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:n.el,coords:t})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),Dt.ielt9||!this._map._fadeAnimated?M(this._pruneTiles,this):setTimeout(o(this._pruneTiles,this),250)))},_getTilePos:function(t){return t.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(t){var e=new z(this._wrapX?l(t.x,this._wrapX):t.x,this._wrapY?l(t.y,this._wrapY):t.y);return e.z=t.z,e},_pxBoundsToTileRange:function(t){var e=this.getTileSize();return new Z(t.min.unscaleBy(e).floor(),t.max.unscaleBy(e).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var t in this._tiles)if(!this._tiles[t].loaded)return!1;return!0}});function ji(t){return new Ni(t)}var Fi=Ni.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(t,e){this._url=t,(e=p(this,e)).detectRetina&&Dt.retina&&e.maxZoom>0?(e.tileSize=Math.floor(e.tileSize/2),e.zoomReverse?(e.zoomOffset--,e.minZoom=Math.min(e.maxZoom,e.minZoom+1)):(e.zoomOffset++,e.maxZoom=Math.max(e.minZoom,e.maxZoom-1)),e.minZoom=Math.max(0,e.minZoom)):e.zoomReverse?e.minZoom=Math.min(e.maxZoom,e.minZoom):e.maxZoom=Math.max(e.minZoom,e.maxZoom),"string"==typeof e.subdomains&&(e.subdomains=e.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(t,e){return this._url===t&&void 0===e&&(e=!0),this._url=t,e||this.redraw(),this},createTile:function(t,e){var n=document.createElement("img");return Ne(n,"load",o(this._tileOnLoad,this,e,n)),Ne(n,"error",o(this._tileOnError,this,e,n)),(this.options.crossOrigin||""===this.options.crossOrigin)&&(n.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),"string"==typeof this.options.referrerPolicy&&(n.referrerPolicy=this.options.referrerPolicy),n.alt="",n.src=this.getTileUrl(t),n},getTileUrl:function(t){var e={r:Dt.retina?"@2x":"",s:this._getSubdomain(t),x:t.x,y:t.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var i=this._globalTileRange.max.y-t.y;this.options.tms&&(e.y=i),e["-y"]=i}return m(this._url,n(e,this.options))},_tileOnLoad:function(t,e){Dt.ielt9?setTimeout(o(t,this,null,e),0):t(null,e)},_tileOnError:function(t,e,n){var i=this.options.errorTileUrl;i&&e.getAttribute("src")!==i&&(e.src=i),t(n,e)},_onTileRemove:function(t){t.tile.onload=null},_getZoomForUrl:function(){var t=this._tileZoom,e=this.options.maxZoom;return this.options.zoomReverse&&(t=e-t),t+this.options.zoomOffset},_getSubdomain:function(t){var e=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[e]},_abortLoading:function(){var t,e;for(t in this._tiles)if(this._tiles[t].coords.z!==this._tileZoom&&((e=this._tiles[t].el).onload=c,e.onerror=c,!e.complete)){e.src=y;var n=this._tiles[t].coords;me(e),delete this._tiles[t],this.fire("tileabort",{tile:e,coords:n})}},_removeTile:function(t){var e=this._tiles[t];if(e)return e.el.setAttribute("src",y),Ni.prototype._removeTile.call(this,t)},_tileReady:function(t,e,n){if(this._map&&(!n||n.getAttribute("src")!==y))return Ni.prototype._tileReady.call(this,t,e,n)}});function Ui(t,e){return new Fi(t,e)}var Gi=Fi.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(t,e){this._url=t;var i=n({},this.defaultWmsParams);for(var o in e)o in this.options||(i[o]=e[o]);var s=(e=p(this,e)).detectRetina&&Dt.retina?2:1,r=this.getTileSize();i.width=r.x*s,i.height=r.y*s,this.wmsParams=i},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var e=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[e]=this._crs.code,Fi.prototype.onAdd.call(this,t)},getTileUrl:function(t){var e=this._tileCoordsToNwSe(t),n=this._crs,i=R(n.project(e[0]),n.project(e[1])),o=i.min,s=i.max,r=(this._wmsVersion>=1.3&&this._crs===Vn?[o.y,o.x,s.y,s.x]:[o.x,o.y,s.x,s.y]).join(","),a=Fi.prototype.getTileUrl.call(this,t);return a+f(this.wmsParams,a,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+r},setParams:function(t,e){return n(this.wmsParams,t),e||this.redraw(),this}});function Hi(t,e){return new Gi(t,e)}Fi.WMS=Gi,Ui.wms=Hi;var $i=qn.extend({options:{padding:.1},initialize:function(t){p(this,t),r(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),we(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var t={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(t.zoomanim=this._onAnimZoom),t},_onAnimZoom:function(t){this._updateTransform(t.center,t.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(t,e){var n=this._map.getZoomScale(e,this._zoom),i=this._map.getSize().multiplyBy(.5+this.options.padding),o=this._map.project(this._center,e),s=i.multiplyBy(-n).add(o).subtract(this._map._getNewPixelOrigin(t,e));Dt.any3d?ke(this._container,s,n):Se(this._container,s)},_reset:function(){for(var t in this._update(),this._updateTransform(this._center,this._zoom),this._layers)this._layers[t]._reset()},_onZoomEnd:function(){for(var t in this._layers)this._layers[t]._project()},_updatePaths:function(){for(var t in this._layers)this._layers[t]._update()},_update:function(){var t=this.options.padding,e=this._map.getSize(),n=this._map.containerPointToLayerPoint(e.multiplyBy(-t)).round();this._bounds=new Z(n,n.add(e.multiplyBy(1+2*t)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),Vi=$i.extend({options:{tolerance:0},getEvents:function(){var t=$i.prototype.getEvents.call(this);return t.viewprereset=this._onViewPreReset,t},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){$i.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var t=this._container=document.createElement("canvas");Ne(t,"mousemove",this._onMouseMove,this),Ne(t,"click dblclick mousedown mouseup contextmenu",this._onClick,this),Ne(t,"mouseout",this._handleMouseOut,this),t._leaflet_disable_events=!0,this._ctx=t.getContext("2d")},_destroyContainer:function(){T(this._redrawRequest),delete this._ctx,me(this._container),Fe(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){for(var t in this._redrawBounds=null,this._layers)this._layers[t]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){$i.prototype._update.call(this);var t=this._bounds,e=this._container,n=t.getSize(),i=Dt.retina?2:1;Se(e,t.min),e.width=i*n.x,e.height=i*n.y,e.style.width=n.x+"px",e.style.height=n.y+"px",Dt.retina&&this._ctx.scale(2,2),this._ctx.translate(-t.min.x,-t.min.y),this.fire("update")}},_reset:function(){$i.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(t){this._updateDashArray(t),this._layers[r(t)]=t;var e=t._order={layer:t,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=e),this._drawLast=e,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(t){this._requestRedraw(t)},_removePath:function(t){var e=t._order,n=e.next,i=e.prev;n?n.prev=i:this._drawLast=i,i?i.next=n:this._drawFirst=n,delete t._order,delete this._layers[r(t)],this._requestRedraw(t)},_updatePath:function(t){this._extendRedrawBounds(t),t._project(),t._update(),this._requestRedraw(t)},_updateStyle:function(t){this._updateDashArray(t),this._requestRedraw(t)},_updateDashArray:function(t){if("string"==typeof t.options.dashArray){var e,n,i=t.options.dashArray.split(/[, ]+/),o=[];for(n=0;n<i.length;n++){if(e=Number(i[n]),isNaN(e))return;o.push(e)}t.options._dashArray=o}else t.options._dashArray=t.options.dashArray},_requestRedraw:function(t){this._map&&(this._extendRedrawBounds(t),this._redrawRequest=this._redrawRequest||M(this._redraw,this))},_extendRedrawBounds:function(t){if(t._pxBounds){var e=(t.options.weight||0)+1;this._redrawBounds=this._redrawBounds||new Z,this._redrawBounds.extend(t._pxBounds.min.subtract([e,e])),this._redrawBounds.extend(t._pxBounds.max.add([e,e]))}},_redraw:function(){this._redrawRequest=null,this._redrawBounds&&(this._redrawBounds.min._floor(),this._redrawBounds.max._ceil()),this._clear(),this._draw(),this._redrawBounds=null},_clear:function(){var t=this._redrawBounds;if(t){var e=t.getSize();this._ctx.clearRect(t.min.x,t.min.y,e.x,e.y)}else this._ctx.save(),this._ctx.setTransform(1,0,0,1,0,0),this._ctx.clearRect(0,0,this._container.width,this._container.height),this._ctx.restore()},_draw:function(){var t,e=this._redrawBounds;if(this._ctx.save(),e){var n=e.getSize();this._ctx.beginPath(),this._ctx.rect(e.min.x,e.min.y,n.x,n.y),this._ctx.clip()}this._drawing=!0;for(var i=this._drawFirst;i;i=i.next)t=i.layer,(!e||t._pxBounds&&t._pxBounds.intersects(e))&&t._updatePath();this._drawing=!1,this._ctx.restore()},_updatePoly:function(t,e){if(this._drawing){var n,i,o,s,r=t._parts,a=r.length,l=this._ctx;if(a){for(l.beginPath(),n=0;n<a;n++){for(i=0,o=r[n].length;i<o;i++)s=r[n][i],l[i?"lineTo":"moveTo"](s.x,s.y);e&&l.closePath()}this._fillStroke(l,t)}}},_updateCircle:function(t){if(this._drawing&&!t._empty()){var e=t._point,n=this._ctx,i=Math.max(Math.round(t._radius),1),o=(Math.max(Math.round(t._radiusY),1)||i)/i;1!==o&&(n.save(),n.scale(1,o)),n.beginPath(),n.arc(e.x,e.y/o,i,0,2*Math.PI,!1),1!==o&&n.restore(),this._fillStroke(n,t)}},_fillStroke:function(t,e){var n=e.options;n.fill&&(t.globalAlpha=n.fillOpacity,t.fillStyle=n.fillColor||n.color,t.fill(n.fillRule||"evenodd")),n.stroke&&0!==n.weight&&(t.setLineDash&&t.setLineDash(e.options&&e.options._dashArray||[]),t.globalAlpha=n.opacity,t.lineWidth=n.weight,t.strokeStyle=n.color,t.lineCap=n.lineCap,t.lineJoin=n.lineJoin,t.stroke())},_onClick:function(t){for(var e,n,i=this._map.mouseEventToLayerPoint(t),o=this._drawFirst;o;o=o.next)(e=o.layer).options.interactive&&e._containsPoint(i)&&("click"!==t.type&&"preclick"!==t.type||!this._map._draggableMoved(e))&&(n=e);this._fireEvent(!!n&&[n],t)},_onMouseMove:function(t){if(this._map&&!this._map.dragging.moving()&&!this._map._animatingZoom){var e=this._map.mouseEventToLayerPoint(t);this._handleMouseHover(t,e)}},_handleMouseOut:function(t){var e=this._hoveredLayer;e&&(xe(this._container,"leaflet-interactive"),this._fireEvent([e],t,"mouseout"),this._hoveredLayer=null,this._mouseHoverThrottled=!1)},_handleMouseHover:function(t,e){if(!this._mouseHoverThrottled){for(var n,i,s=this._drawFirst;s;s=s.next)(n=s.layer).options.interactive&&n._containsPoint(e)&&(i=n);i!==this._hoveredLayer&&(this._handleMouseOut(t),i&&(we(this._container,"leaflet-interactive"),this._fireEvent([i],t,"mouseover"),this._hoveredLayer=i)),this._fireEvent(!!this._hoveredLayer&&[this._hoveredLayer],t),this._mouseHoverThrottled=!0,setTimeout(o(function(){this._mouseHoverThrottled=!1},this),32)}},_fireEvent:function(t,e,n){this._map._fireDOMEvent(e,n||e.type,t)},_bringToFront:function(t){var e=t._order;if(e){var n=e.next,i=e.prev;n&&(n.prev=i,i?i.next=n:n&&(this._drawFirst=n),e.prev=this._drawLast,this._drawLast.next=e,e.next=null,this._drawLast=e,this._requestRedraw(t))}},_bringToBack:function(t){var e=t._order;if(e){var n=e.next,i=e.prev;i&&(i.next=n,n?n.prev=i:i&&(this._drawLast=i),e.prev=null,e.next=this._drawFirst,this._drawFirst.prev=e,this._drawFirst=e,this._requestRedraw(t))}}});function Wi(t){return Dt.canvas?new Vi(t):null}var qi=function(){try{return document.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(t){return document.createElement("<lvml:"+t+' class="lvml">')}}catch(vc){}return function(t){return document.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),Yi={_initContainer:function(){this._container=_e("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||($i.prototype._update.call(this),this.fire("update"))},_initPath:function(t){var e=t._container=qi("shape");we(e,"leaflet-vml-shape "+(this.options.className||"")),e.coordsize="1 1",t._path=qi("path"),e.appendChild(t._path),this._updateStyle(t),this._layers[r(t)]=t},_addPath:function(t){var e=t._container;this._container.appendChild(e),t.options.interactive&&t.addInteractiveTarget(e)},_removePath:function(t){var e=t._container;me(e),t.removeInteractiveTarget(e),delete this._layers[r(t)]},_updateStyle:function(t){var e=t._stroke,n=t._fill,i=t.options,o=t._container;o.stroked=!!i.stroke,o.filled=!!i.fill,i.stroke?(e||(e=t._stroke=qi("stroke")),o.appendChild(e),e.weight=i.weight+"px",e.color=i.color,e.opacity=i.opacity,i.dashArray?e.dashStyle=g(i.dashArray)?i.dashArray.join(" "):i.dashArray.replace(/( *, *)/g," "):e.dashStyle="",e.endcap=i.lineCap.replace("butt","flat"),e.joinstyle=i.lineJoin):e&&(o.removeChild(e),t._stroke=null),i.fill?(n||(n=t._fill=qi("fill")),o.appendChild(n),n.color=i.fillColor||i.color,n.opacity=i.fillOpacity):n&&(o.removeChild(n),t._fill=null)},_updateCircle:function(t){var e=t._point.round(),n=Math.round(t._radius),i=Math.round(t._radiusY||n);this._setPath(t,t._empty()?"M0 0":"AL "+e.x+","+e.y+" "+n+","+i+" 0,23592600")},_setPath:function(t,e){t._path.v=e},_bringToFront:function(t){ve(t._container)},_bringToBack:function(t){ye(t._container)}},Ki=Dt.vml?qi:J,Ji=$i.extend({_initContainer:function(){this._container=Ki("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=Ki("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){me(this._container),Fe(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!this._map._animatingZoom||!this._bounds){$i.prototype._update.call(this);var t=this._bounds,e=t.getSize(),n=this._container;this._svgSize&&this._svgSize.equals(e)||(this._svgSize=e,n.setAttribute("width",e.x),n.setAttribute("height",e.y)),Se(n,t.min),n.setAttribute("viewBox",[t.min.x,t.min.y,e.x,e.y].join(" ")),this.fire("update")}},_initPath:function(t){var e=t._path=Ki("path");t.options.className&&we(e,t.options.className),t.options.interactive&&we(e,"leaflet-interactive"),this._updateStyle(t),this._layers[r(t)]=t},_addPath:function(t){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(t._path),t.addInteractiveTarget(t._path)},_removePath:function(t){me(t._path),t.removeInteractiveTarget(t._path),delete this._layers[r(t)]},_updatePath:function(t){t._project(),t._update()},_updateStyle:function(t){var e=t._path,n=t.options;e&&(n.stroke?(e.setAttribute("stroke",n.color),e.setAttribute("stroke-opacity",n.opacity),e.setAttribute("stroke-width",n.weight),e.setAttribute("stroke-linecap",n.lineCap),e.setAttribute("stroke-linejoin",n.lineJoin),n.dashArray?e.setAttribute("stroke-dasharray",n.dashArray):e.removeAttribute("stroke-dasharray"),n.dashOffset?e.setAttribute("stroke-dashoffset",n.dashOffset):e.removeAttribute("stroke-dashoffset")):e.setAttribute("stroke","none"),n.fill?(e.setAttribute("fill",n.fillColor||n.color),e.setAttribute("fill-opacity",n.fillOpacity),e.setAttribute("fill-rule",n.fillRule||"evenodd")):e.setAttribute("fill","none"))},_updatePoly:function(t,e){this._setPath(t,X(t._parts,e))},_updateCircle:function(t){var e=t._point,n=Math.max(Math.round(t._radius),1),i="a"+n+","+(Math.max(Math.round(t._radiusY),1)||n)+" 0 1,0 ",o=t._empty()?"M0 0":"M"+(e.x-n)+","+e.y+i+2*n+",0 "+i+2*-n+",0 ";this._setPath(t,o)},_setPath:function(t,e){t._path.setAttribute("d",e)},_bringToFront:function(t){ve(t._path)},_bringToBack:function(t){ye(t._path)}});function Xi(t){return Dt.svg||Dt.vml?new Ji(t):null}Dt.vml&&Ji.include(Yi),sn.include({getRenderer:function(t){var e=t.options.renderer||this._getPaneRenderer(t.options.pane)||this.options.renderer||this._renderer;return e||(e=this._renderer=this._createRenderer()),this.hasLayer(e)||this.addLayer(e),e},_getPaneRenderer:function(t){if("overlayPane"===t||void 0===t)return!1;var e=this._paneRenderers[t];return void 0===e&&(e=this._createRenderer({pane:t}),this._paneRenderers[t]=e),e},_createRenderer:function(t){return this.options.preferCanvas&&Wi(t)||Xi(t)}});var Qi=di.extend({initialize:function(t,e){di.prototype.initialize.call(this,this._boundsToLatLngs(t),e)},setBounds:function(t){return this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return[(t=N(t)).getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}});function to(t,e){return new Qi(t,e)}Ji.create=Ki,Ji.pointsToPath=X,fi.geometryToLayer=_i,fi.coordsToLatLng=gi,fi.coordsToLatLngs=vi,fi.latLngToCoords=yi,fi.latLngsToCoords=bi,fi.getFeature=wi,fi.asFeature=xi,sn.mergeOptions({boxZoom:!0});var eo=vn.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._resetStateTimeout=0,t.on("unload",this._destroy,this)},addHooks:function(){Ne(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Fe(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){me(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(t){if(!t.shiftKey||1!==t.which&&1!==t.button)return!1;this._clearDeferredResetState(),this._resetState(),se(),Oe(),this._startPoint=this._map.mouseEventToContainerPoint(t),Ne(document,{contextmenu:Ke,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(t){this._moved||(this._moved=!0,this._box=_e("div","leaflet-zoom-box",this._container),we(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(t);var e=new Z(this._point,this._startPoint),n=e.getSize();Se(this._box,e.min),this._box.style.width=n.x+"px",this._box.style.height=n.y+"px"},_finish:function(){this._moved&&(me(this._box),xe(this._container,"leaflet-crosshair")),re(),ze(),Fe(document,{contextmenu:Ke,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(t){if((1===t.which||1===t.button)&&(this._finish(),this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(o(this._resetState,this),0);var e=new D(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(e).fire("boxzoomend",{boxZoomBounds:e})}},_onKeyDown:function(t){27===t.keyCode&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});sn.addInitHook("addHandler","boxZoom",eo),sn.mergeOptions({doubleClickZoom:!0});var no=vn.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var e=this._map,n=e.getZoom(),i=e.options.zoomDelta,o=t.originalEvent.shiftKey?n-i:n+i;"center"===e.options.doubleClickZoom?e.setZoom(o):e.setZoomAround(t.containerPoint,o)}});sn.addInitHook("addHandler","doubleClickZoom",no),sn.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var io=vn.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new wn(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),t.on("zoomend",this._onZoomEnd,this),t.whenReady(this._onZoomEnd,this))}we(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){xe(this._map._container,"leaflet-grab"),xe(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var t=this._map;if(t._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var e=N(this._map.options.maxBounds);this._offsetLimit=R(this._map.latLngToContainerPoint(e.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(e.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(t){if(this._map.options.inertia){var e=this._lastTime=+new Date,n=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(n),this._times.push(e),this._prunePositions(e)}this._map.fire("move",t).fire("drag",t)},_prunePositions:function(t){for(;this._positions.length>1&&t-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var t=this._map.getSize().divideBy(2),e=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=e.subtract(t).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(t,e){return t-(t-e)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var t=this._draggable._newPos.subtract(this._draggable._startPos),e=this._offsetLimit;t.x<e.min.x&&(t.x=this._viscousLimit(t.x,e.min.x)),t.y<e.min.y&&(t.y=this._viscousLimit(t.y,e.min.y)),t.x>e.max.x&&(t.x=this._viscousLimit(t.x,e.max.x)),t.y>e.max.y&&(t.y=this._viscousLimit(t.y,e.max.y)),this._draggable._newPos=this._draggable._startPos.add(t)}},_onPreDragWrap:function(){var t=this._worldWidth,e=Math.round(t/2),n=this._initialWorldOffset,i=this._draggable._newPos.x,o=(i-e+n)%t+e-n,s=(i+e+n)%t-e-n,r=Math.abs(o+n)<Math.abs(s+n)?o:s;this._draggable._absPos=this._draggable._newPos.clone(),this._draggable._newPos.x=r},_onDragEnd:function(t){var e=this._map,n=e.options,i=!n.inertia||t.noInertia||this._times.length<2;if(e.fire("dragend",t),i)e.fire("moveend");else{this._prunePositions(+new Date);var o=this._lastPos.subtract(this._positions[0]),s=(this._lastTime-this._times[0])/1e3,r=n.easeLinearity,a=o.multiplyBy(r/s),l=a.distanceTo([0,0]),c=Math.min(n.inertiaMaxSpeed,l),u=a.multiplyBy(c/l),h=c/(n.inertiaDeceleration*r),d=u.multiplyBy(-h/2).round();d.x||d.y?(d=e._limitOffset(d,e.options.maxBounds),M(function(){e.panBy(d,{duration:h,easeLinearity:r,noMoveStart:!0,animate:!0})})):e.fire("moveend")}}});sn.addInitHook("addHandler","dragging",io),sn.mergeOptions({keyboard:!0,keyboardPanDelta:80});var oo=vn.extend({keyCodes:{left:[37],right:[39],down:[40],up:[38],zoomIn:[187,107,61,171],zoomOut:[189,109,54,173]},initialize:function(t){this._map=t,this._setPanDelta(t.options.keyboardPanDelta),this._setZoomDelta(t.options.zoomDelta)},addHooks:function(){var t=this._map._container;t.tabIndex<=0&&(t.tabIndex="0"),Ne(t,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.on({focus:this._addHooks,blur:this._removeHooks},this)},removeHooks:function(){this._removeHooks(),Fe(this._map._container,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.off({focus:this._addHooks,blur:this._removeHooks},this)},_onMouseDown:function(){if(!this._focused){var t=document.body,e=document.documentElement,n=t.scrollTop||e.scrollTop,i=t.scrollLeft||e.scrollLeft;this._map._container.focus(),window.scrollTo(i,n)}},_onFocus:function(){this._focused=!0,this._map.fire("focus")},_onBlur:function(){this._focused=!1,this._map.fire("blur")},_setPanDelta:function(t){var e,n,i=this._panKeys={},o=this.keyCodes;for(e=0,n=o.left.length;e<n;e++)i[o.left[e]]=[-1*t,0];for(e=0,n=o.right.length;e<n;e++)i[o.right[e]]=[t,0];for(e=0,n=o.down.length;e<n;e++)i[o.down[e]]=[0,t];for(e=0,n=o.up.length;e<n;e++)i[o.up[e]]=[0,-1*t]},_setZoomDelta:function(t){var e,n,i=this._zoomKeys={},o=this.keyCodes;for(e=0,n=o.zoomIn.length;e<n;e++)i[o.zoomIn[e]]=t;for(e=0,n=o.zoomOut.length;e<n;e++)i[o.zoomOut[e]]=-t},_addHooks:function(){Ne(document,"keydown",this._onKeyDown,this)},_removeHooks:function(){Fe(document,"keydown",this._onKeyDown,this)},_onKeyDown:function(t){if(!(t.altKey||t.ctrlKey||t.metaKey)){var e,n=t.keyCode,i=this._map;if(n in this._panKeys){if(!i._panAnim||!i._panAnim._inProgress)if(e=this._panKeys[n],t.shiftKey&&(e=B(e).multiplyBy(3)),i.options.maxBounds&&(e=i._limitOffset(B(e),i.options.maxBounds)),i.options.worldCopyJump){var o=i.wrapLatLng(i.unproject(i.project(i.getCenter()).add(e)));i.panTo(o)}else i.panBy(e)}else if(n in this._zoomKeys)i.setZoom(i.getZoom()+(t.shiftKey?3:1)*this._zoomKeys[n]);else{if(27!==n||!i._popup||!i._popup.options.closeOnEscapeKey)return;i.closePopup()}Ke(t)}}});sn.addInitHook("addHandler","keyboard",oo),sn.mergeOptions({scrollWheelZoom:!0,wheelDebounceTime:40,wheelPxPerZoomLevel:60});var so=vn.extend({addHooks:function(){Ne(this._map._container,"wheel",this._onWheelScroll,this),this._delta=0},removeHooks:function(){Fe(this._map._container,"wheel",this._onWheelScroll,this)},_onWheelScroll:function(t){var e=tn(t),n=this._map.options.wheelDebounceTime;this._delta+=e,this._lastMousePos=this._map.mouseEventToContainerPoint(t),this._startTime||(this._startTime=+new Date);var i=Math.max(n-(+new Date-this._startTime),0);clearTimeout(this._timer),this._timer=setTimeout(o(this._performZoom,this),i),Ke(t)},_performZoom:function(){var t=this._map,e=t.getZoom(),n=this._map.options.zoomSnap||0;t._stop();var i=this._delta/(4*this._map.options.wheelPxPerZoomLevel),o=4*Math.log(2/(1+Math.exp(-Math.abs(i))))/Math.LN2,s=n?Math.ceil(o/n)*n:o,r=t._limitZoom(e+(this._delta>0?s:-s))-e;this._delta=0,this._startTime=null,r&&("center"===t.options.scrollWheelZoom?t.setZoom(e+r):t.setZoomAround(this._lastMousePos,e+r))}});sn.addInitHook("addHandler","scrollWheelZoom",so);var ro=600;sn.mergeOptions({tapHold:Dt.touchNative&&Dt.safari&&Dt.mobile,tapTolerance:15});var ao=vn.extend({addHooks:function(){Ne(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Fe(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(clearTimeout(this._holdTimeout),1===t.touches.length){var e=t.touches[0];this._startPos=this._newPos=new z(e.clientX,e.clientY),this._holdTimeout=setTimeout(o(function(){this._cancel(),this._isTapValid()&&(Ne(document,"touchend",Ye),Ne(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",e))},this),ro),Ne(document,"touchend touchcancel contextmenu",this._cancel,this),Ne(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function t(){Fe(document,"touchend",Ye),Fe(document,"touchend touchcancel",t)},_cancel:function(){clearTimeout(this._holdTimeout),Fe(document,"touchend touchcancel contextmenu",this._cancel,this),Fe(document,"touchmove",this._onMove,this)},_onMove:function(t){var e=t.touches[0];this._newPos=new z(e.clientX,e.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(t,e){var n=new MouseEvent(t,{bubbles:!0,cancelable:!0,view:window,screenX:e.screenX,screenY:e.screenY,clientX:e.clientX,clientY:e.clientY});n._simulated=!0,e.target.dispatchEvent(n)}});sn.addInitHook("addHandler","tapHold",ao),sn.mergeOptions({touchZoom:Dt.touch,bounceAtZoomLimits:!0});var lo=vn.extend({addHooks:function(){we(this._map._container,"leaflet-touch-zoom"),Ne(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){xe(this._map._container,"leaflet-touch-zoom"),Fe(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var e=this._map;if(t.touches&&2===t.touches.length&&!e._animatingZoom&&!this._zooming){var n=e.mouseEventToContainerPoint(t.touches[0]),i=e.mouseEventToContainerPoint(t.touches[1]);this._centerPoint=e.getSize()._divideBy(2),this._startLatLng=e.containerPointToLatLng(this._centerPoint),"center"!==e.options.touchZoom&&(this._pinchStartLatLng=e.containerPointToLatLng(n.add(i)._divideBy(2))),this._startDist=n.distanceTo(i),this._startZoom=e.getZoom(),this._moved=!1,this._zooming=!0,e._stop(),Ne(document,"touchmove",this._onTouchMove,this),Ne(document,"touchend touchcancel",this._onTouchEnd,this),Ye(t)}},_onTouchMove:function(t){if(t.touches&&2===t.touches.length&&this._zooming){var e=this._map,n=e.mouseEventToContainerPoint(t.touches[0]),i=e.mouseEventToContainerPoint(t.touches[1]),s=n.distanceTo(i)/this._startDist;if(this._zoom=e.getScaleZoom(s,this._startZoom),!e.options.bounceAtZoomLimits&&(this._zoom<e.getMinZoom()&&s<1||this._zoom>e.getMaxZoom()&&s>1)&&(this._zoom=e._limitZoom(this._zoom)),"center"===e.options.touchZoom){if(this._center=this._startLatLng,1===s)return}else{var r=n._add(i)._divideBy(2)._subtract(this._centerPoint);if(1===s&&0===r.x&&0===r.y)return;this._center=e.unproject(e.project(this._pinchStartLatLng,this._zoom).subtract(r),this._zoom)}this._moved||(e._moveStart(!0,!1),this._moved=!0),T(this._animRequest);var a=o(e._move,e,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=M(a,this,!0),Ye(t)}},_onTouchEnd:function(){this._moved&&this._zooming?(this._zooming=!1,T(this._animRequest),Fe(document,"touchmove",this._onTouchMove,this),Fe(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))):this._zooming=!1}});sn.addInitHook("addHandler","touchZoom",lo),sn.BoxZoom=eo,sn.DoubleClickZoom=no,sn.Drag=io,sn.Keyboard=oo,sn.ScrollWheelZoom=so,sn.TapHold=ao,sn.TouchZoom=lo,t.Bounds=Z,t.Browser=Dt,t.CRS=G,t.Canvas=Vi,t.Circle=li,t.CircleMarker=ri,t.Class=S,t.Control=an,t.DivIcon=Ri,t.DivOverlay=Oi,t.DomEvent=nn,t.DomUtil=De,t.Draggable=wn,t.Evented=O,t.FeatureGroup=Jn,t.GeoJSON=fi,t.GridLayer=Ni,t.Handler=vn,t.Icon=Qn,t.ImageOverlay=Mi,t.LatLng=j,t.LatLngBounds=D,t.Layer=qn,t.LayerGroup=Yn,t.LineUtil=Fn,t.Map=sn,t.Marker=ii,t.Mixin=yn,t.Path=si,t.Point=z,t.PolyUtil=Mn,t.Polygon=di,t.Polyline=ui,t.Popup=zi,t.PosAnimation=on,t.Projection=Hn,t.Rectangle=Qi,t.Renderer=$i,t.SVG=Ji,t.SVGOverlay=Ai,t.TileLayer=Fi,t.Tooltip=Bi,t.Transformation=W,t.Util=k,t.VideoOverlay=ki,t.bind=o,t.bounds=R,t.canvas=Wi,t.circle=ci,t.circleMarker=ai,t.control=ln,t.divIcon=Di,t.extend=n,t.featureGroup=Xn,t.geoJSON=Pi,t.geoJson=Ci,t.gridLayer=ji,t.icon=ti,t.imageOverlay=Ti,t.latLng=F,t.latLngBounds=N,t.layerGroup=Kn,t.map=rn,t.marker=oi,t.point=B,t.polygon=pi,t.polyline=hi,t.popup=Ii,t.rectangle=to,t.setOptions=p,t.stamp=r,t.svg=Xi,t.svgOverlay=Ei,t.tileLayer=Ui,t.tooltip=Zi,t.transformation=q,t.version=e,t.videoOverlay=Si;var co=window.L;t.noConflict=function(){return window.L=co,this},window.L=t}(uu.exports)),uu.exports);const du=rc(hu);var pu;pu=function(){L.ShapeMarker=L.CircleMarker.extend({options:{fill:!0,shape:"triangle",radius:10,rotation:0},setRadius:function(t){return this.options.radius=t,this.redraw()},getRadius:function(){return this.options.radius},setRotation:function(t){return this.options.rotation=t,this.redraw()},getRotation:function(){return this.options.rotation},_updatePath:function(){this._renderer._updateShape(this)},toGeoJSON:function(){return L.GeoJSON.getFeature(this,{type:"Point",coordinates:L.GeoJSON.latLngToCoords(this.getLatLng())})}}),L.shapeMarker=function(t,e){return new L.ShapeMarker(t,e)},L.SVG.include({_updateShape:function(t){var e=t._point,n=t.options.radius,i=t.options.shape,o=t.options.rotation;if(t._path.setAttribute("transform",`rotate(${o},${e.x},${e.y})`),"diamond"===i){var s="M"+(e.x-Math.sqrt(2)*n)+" "+e.y+" L "+e.x+" "+(e.y-Math.sqrt(2)*n)+" L"+(e.x+Math.sqrt(2)*n)+" "+e.y+" L"+e.x+" "+(e.y+Math.sqrt(2)*n)+" L"+(e.x-Math.sqrt(2)*n)+" "+e.y;this._setPath(t,s)}if("square"===i&&(s="M"+(e.x-n)+" "+(e.y-n)+" L "+(e.x+n)+" "+(e.y-n)+" L"+(e.x+n)+" "+(e.y+n)+" L"+(e.x-n)+" "+(e.y+n)+" L"+(e.x-n)+" "+(e.y-n),this._setPath(t,s)),"triangle"!==i&&"triangle-up"!==i||(s="M"+(e.x-1.3*n)+" "+(e.y+.75*n)+" L"+e.x+" "+(e.y-1.5*n)+" L"+(e.x+1.3*n)+" "+(e.y+.75*n)+" Z",this._setPath(t,s)),"triangle-down"===i&&(s="M"+(e.x-1.3*n)+" "+(e.y-.75*n)+" L"+e.x+" "+(e.y+1.5*n)+" L"+(e.x+1.3*n)+" "+(e.y-.75*n)+" Z",this._setPath(t,s)),"arrowhead"!==i&&"arrowhead-up"!==i||(s="M "+(e.x+1.3*n)+" "+(e.y+1.3*n)+" L "+e.x+" "+(e.y-1.3*n)+" L "+(e.x-1.3*n)+" "+(e.y+1.3*n)+" L "+e.x+" "+(e.y+.5*n)+" L "+(e.x+1.3*n)+" "+(e.y+1.3*n)+" Z",this._setPath(t,s)),"arrowhead-down"===i&&(s="M "+(e.x-1.3*n)+" "+(e.y-1.3*n)+" L "+e.x+" "+(e.y+1.3*n)+" L "+(e.x+1.3*n)+" "+(e.y-1.3*n)+" L "+e.x+" "+(e.y-.5*n)+" L "+(e.x-1.3*n)+" "+(e.y-1.3*n)+" Z",this._setPath(t,s)),"circle"===i&&this._updateCircle(t),i.startsWith("star")){var r=i.split(/[^0-9a-z]/gi,2),a=parseInt(r[1]);if("star"===r[0]&&!isNaN(a)&&a>2)var l=a;else l=5;for(var c=.5*(1+Math.sqrt(5))+1,u=[],h=0;h<l;h++)u.push(e.x+n/c*Math.sin(2*Math.PI/l*h)+","+(e.y+n/c*Math.cos(2*Math.PI/l*h))),u.push(e.x+n*Math.sin(1/l*Math.PI+2*Math.PI/l*h)+","+(e.y+n*Math.cos(1/l*Math.PI+2*Math.PI/l*h)));s="M"+u.join("L")+"Z",this._setPath(t,s)}"x"===i&&(n/=2,s="M"+(e.x+n)+","+(e.y+n)+"L"+(e.x-n)+","+(e.y-n)+"M"+(e.x-n)+","+(e.y+n)+"L"+(e.x+n)+","+(e.y-n),this._setPath(t,s))}})},"function"==typeof define&&define.amd?define(pu):pu();var fu,_u={exports:{}};fu||(fu=1,function(t){var e=L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,clusterPane:L.Marker.prototype.options.pane,spiderfyOnEveryZoom:!1,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animate:!0,animateAddingMarkers:!1,spiderfyShapePositions:null,spiderfyDistanceMultiplier:1,spiderLegPolylineOptions:{weight:1.5,color:"#222",opacity:.5},chunkedLoading:!1,chunkInterval:200,chunkDelay:50,chunkProgress:null,polygonOptions:{}},initialize:function(t){L.Util.setOptions(this,t),this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIconCreateFunction),this._featureGroup=L.featureGroup(),this._featureGroup.addEventParent(this),this._nonPointGroup=L.featureGroup(),this._nonPointGroup.addEventParent(this),this._inZoomAnimation=0,this._needsClustering=[],this._needsRemoving=[],this._currentShownBounds=null,this._queue=[],this._childMarkerEventHandlers={dragstart:this._childMarkerDragStart,move:this._childMarkerMoved,dragend:this._childMarkerDragEnd};var e=L.DomUtil.TRANSITION&&this.options.animate;L.extend(this,e?this._withAnimation:this._noAnimation),this._markerCluster=e?L.MarkerCluster:L.MarkerClusterNonAnimated},addLayer:function(t){if(t instanceof L.LayerGroup)return this.addLayers([t]);if(!t.getLatLng)return this._nonPointGroup.addLayer(t),this.fire("layeradd",{layer:t}),this;if(!this._map)return this._needsClustering.push(t),this.fire("layeradd",{layer:t}),this;if(this.hasLayer(t))return this;this._unspiderfy&&this._unspiderfy(),this._addLayer(t,this._maxZoom),this.fire("layeradd",{layer:t}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons();var e=t,n=this._zoom;if(t.__parent)for(;e.__parent._zoom>=n;)e=e.__parent;return this._currentShownBounds.contains(e.getLatLng())&&(this.options.animateAddingMarkers?this._animationAddLayer(t,e):this._animationAddLayerNonAnimated(t,e)),this},removeLayer:function(t){return t instanceof L.LayerGroup?this.removeLayers([t]):t.getLatLng?this._map?t.__parent?(this._unspiderfy&&(this._unspiderfy(),this._unspiderfyLayer(t)),this._removeLayer(t,!0),this.fire("layerremove",{layer:t}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),t.off(this._childMarkerEventHandlers,this),this._featureGroup.hasLayer(t)&&(this._featureGroup.removeLayer(t),t.clusterShow&&t.clusterShow()),this):this:(!this._arraySplice(this._needsClustering,t)&&this.hasLayer(t)&&this._needsRemoving.push({layer:t,latlng:t._latlng}),this.fire("layerremove",{layer:t}),this):(this._nonPointGroup.removeLayer(t),this.fire("layerremove",{layer:t}),this)},addLayers:function(t,e){if(!L.Util.isArray(t))return this.addLayer(t);var n,i=this._featureGroup,o=this._nonPointGroup,s=this.options.chunkedLoading,r=this.options.chunkInterval,a=this.options.chunkProgress,l=t.length,c=0,u=!0;if(this._map){var h=(new Date).getTime(),d=L.bind(function(){var p=(new Date).getTime();for(this._map&&this._unspiderfy&&this._unspiderfy();c<l&&!(s&&c%200==0&&(new Date).getTime()-p>r);c++)if((n=t[c])instanceof L.LayerGroup)u&&(t=t.slice(),u=!1),this._extractNonGroupLayers(n,t),l=t.length;else if(n.getLatLng){if(!this.hasLayer(n)&&(this._addLayer(n,this._maxZoom),e||this.fire("layeradd",{layer:n}),n.__parent&&2===n.__parent.getChildCount())){var f=n.__parent.getAllChildMarkers(),_=f[0]===n?f[1]:f[0];i.removeLayer(_)}}else o.addLayer(n),e||this.fire("layeradd",{layer:n});a&&a(c,l,(new Date).getTime()-h),c===l?(this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)):setTimeout(d,this.options.chunkDelay)},this);d()}else for(var p=this._needsClustering;c<l;c++)(n=t[c])instanceof L.LayerGroup?(u&&(t=t.slice(),u=!1),this._extractNonGroupLayers(n,t),l=t.length):n.getLatLng?this.hasLayer(n)||p.push(n):o.addLayer(n);return this},removeLayers:function(t){var e,n,i=t.length,o=this._featureGroup,s=this._nonPointGroup,r=!0;if(!this._map){for(e=0;e<i;e++)(n=t[e])instanceof L.LayerGroup?(r&&(t=t.slice(),r=!1),this._extractNonGroupLayers(n,t),i=t.length):(this._arraySplice(this._needsClustering,n),s.removeLayer(n),this.hasLayer(n)&&this._needsRemoving.push({layer:n,latlng:n._latlng}),this.fire("layerremove",{layer:n}));return this}if(this._unspiderfy){this._unspiderfy();var a=t.slice(),l=i;for(e=0;e<l;e++)(n=a[e])instanceof L.LayerGroup?(this._extractNonGroupLayers(n,a),l=a.length):this._unspiderfyLayer(n)}for(e=0;e<i;e++)(n=t[e])instanceof L.LayerGroup?(r&&(t=t.slice(),r=!1),this._extractNonGroupLayers(n,t),i=t.length):n.__parent?(this._removeLayer(n,!0,!0),this.fire("layerremove",{layer:n}),o.hasLayer(n)&&(o.removeLayer(n),n.clusterShow&&n.clusterShow())):(s.removeLayer(n),this.fire("layerremove",{layer:n}));return this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds),this},clearLayers:function(){return this._map||(this._needsClustering=[],this._needsRemoving=[],delete this._gridClusters,delete this._gridUnclustered),this._noanimationUnspiderfy&&this._noanimationUnspiderfy(),this._featureGroup.clearLayers(),this._nonPointGroup.clearLayers(),this.eachLayer(function(t){t.off(this._childMarkerEventHandlers,this),delete t.__parent},this),this._map&&this._generateInitialClusters(),this},getBounds:function(){var t=new L.LatLngBounds;this._topClusterLevel&&t.extend(this._topClusterLevel._bounds);for(var e=this._needsClustering.length-1;e>=0;e--)t.extend(this._needsClustering[e].getLatLng());return t.extend(this._nonPointGroup.getBounds()),t},eachLayer:function(t,e){var n,i,o,s=this._needsClustering.slice(),r=this._needsRemoving;for(this._topClusterLevel&&this._topClusterLevel.getAllChildMarkers(s),i=s.length-1;i>=0;i--){for(n=!0,o=r.length-1;o>=0;o--)if(r[o].layer===s[i]){n=!1;break}n&&t.call(e,s[i])}this._nonPointGroup.eachLayer(t,e)},getLayers:function(){var t=[];return this.eachLayer(function(e){t.push(e)}),t},getLayer:function(t){var e=null;return t=parseInt(t,10),this.eachLayer(function(n){L.stamp(n)===t&&(e=n)}),e},hasLayer:function(t){if(!t)return!1;var e,n=this._needsClustering;for(e=n.length-1;e>=0;e--)if(n[e]===t)return!0;for(e=(n=this._needsRemoving).length-1;e>=0;e--)if(n[e].layer===t)return!1;return!(!t.__parent||t.__parent._group!==this)||this._nonPointGroup.hasLayer(t)},zoomToShowLayer:function(t,e){var n=this._map;"function"!=typeof e&&(e=function(){});var i=function(){!n.hasLayer(t)&&!n.hasLayer(t.__parent)||this._inZoomAnimation||(this._map.off("moveend",i,this),this.off("animationend",i,this),n.hasLayer(t)?e():t.__parent._icon&&(this.once("spiderfied",e,this),t.__parent.spiderfy()))};t._icon&&this._map.getBounds().contains(t.getLatLng())?e():t.__parent._zoom<Math.round(this._map._zoom)?(this._map.on("moveend",i,this),this._map.panTo(t.getLatLng())):(this._map.on("moveend",i,this),this.on("animationend",i,this),t.__parent.zoomToBounds())},onAdd:function(t){var e,n,i;if(this._map=t,!isFinite(this._map.getMaxZoom()))throw"Map has no maxZoom specified";for(this._featureGroup.addTo(t),this._nonPointGroup.addTo(t),this._gridClusters||this._generateInitialClusters(),this._maxLat=t.options.crs.projection.MAX_LATITUDE,e=0,n=this._needsRemoving.length;e<n;e++)(i=this._needsRemoving[e]).newlatlng=i.layer._latlng,i.layer._latlng=i.latlng;for(e=0,n=this._needsRemoving.length;e<n;e++)i=this._needsRemoving[e],this._removeLayer(i.layer,!0),i.layer._latlng=i.newlatlng;this._needsRemoving=[],this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds(),this._map.on("zoomend",this._zoomEnd,this),this._map.on("moveend",this._moveEnd,this),this._spiderfierOnAdd&&this._spiderfierOnAdd(),this._bindEvents(),n=this._needsClustering,this._needsClustering=[],this.addLayers(n,!0)},onRemove:function(t){t.off("zoomend",this._zoomEnd,this),t.off("moveend",this._moveEnd,this),this._unbindEvents(),this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim",""),this._spiderfierOnRemove&&this._spiderfierOnRemove(),delete this._maxLat,this._hideCoverage(),this._featureGroup.remove(),this._nonPointGroup.remove(),this._featureGroup.clearLayers(),this._map=null},getVisibleParent:function(t){for(var e=t;e&&!e._icon;)e=e.__parent;return e||null},_arraySplice:function(t,e){for(var n=t.length-1;n>=0;n--)if(t[n]===e)return t.splice(n,1),!0},_removeFromGridUnclustered:function(t,e){for(var n=this._map,i=this._gridUnclustered,o=Math.floor(this._map.getMinZoom());e>=o&&i[e].removeObject(t,n.project(t.getLatLng(),e));e--);},_childMarkerDragStart:function(t){t.target.__dragStart=t.target._latlng},_childMarkerMoved:function(t){if(!this._ignoreMove&&!t.target.__dragStart){var e=t.target._popup&&t.target._popup.isOpen();this._moveChild(t.target,t.oldLatLng,t.latlng),e&&t.target.openPopup()}},_moveChild:function(t,e,n){t._latlng=e,this.removeLayer(t),t._latlng=n,this.addLayer(t)},_childMarkerDragEnd:function(t){var e=t.target.__dragStart;delete t.target.__dragStart,e&&this._moveChild(t.target,e,t.target._latlng)},_removeLayer:function(t,e,n){var i=this._gridClusters,o=this._gridUnclustered,s=this._featureGroup,r=this._map,a=Math.floor(this._map.getMinZoom());e&&this._removeFromGridUnclustered(t,this._maxZoom);var l,c=t.__parent,u=c._markers;for(this._arraySplice(u,t);c&&(c._childCount--,c._boundsNeedUpdate=!0,!(c._zoom<a));)e&&c._childCount<=1?(l=c._markers[0]===t?c._markers[1]:c._markers[0],i[c._zoom].removeObject(c,r.project(c._cLatLng,c._zoom)),o[c._zoom].addObject(l,r.project(l.getLatLng(),c._zoom)),this._arraySplice(c.__parent._childClusters,c),c.__parent._markers.push(l),l.__parent=c.__parent,c._icon&&(s.removeLayer(c),n||s.addLayer(l))):c._iconNeedsUpdate=!0,c=c.__parent;delete t.__parent},_isOrIsParent:function(t,e){for(;e;){if(t===e)return!0;e=e.parentNode}return!1},fire:function(t,e,n){if(e&&e.layer instanceof L.MarkerCluster){if(e.originalEvent&&this._isOrIsParent(e.layer._icon,e.originalEvent.relatedTarget))return;t="cluster"+t}L.FeatureGroup.prototype.fire.call(this,t,e,n)},listens:function(t,e){return L.FeatureGroup.prototype.listens.call(this,t,e)||L.FeatureGroup.prototype.listens.call(this,"cluster"+t,e)},_defaultIconCreateFunction:function(t){var e=t.getChildCount(),n=" marker-cluster-";return n+=e<10?"small":e<100?"medium":"large",new L.DivIcon({html:"<div><span>"+e+"</span></div>",className:"marker-cluster"+n,iconSize:new L.Point(40,40)})},_bindEvents:function(){var t=this._map,e=this.options.spiderfyOnMaxZoom,n=this.options.showCoverageOnHover,i=this.options.zoomToBoundsOnClick,o=this.options.spiderfyOnEveryZoom;(e||i||o)&&this.on("clusterclick clusterkeypress",this._zoomOrSpiderfy,this),n&&(this.on("clustermouseover",this._showCoverage,this),this.on("clustermouseout",this._hideCoverage,this),t.on("zoomend",this._hideCoverage,this))},_zoomOrSpiderfy:function(t){var e=t.layer,n=e;if("clusterkeypress"!==t.type||!t.originalEvent||13===t.originalEvent.keyCode){for(;1===n._childClusters.length;)n=n._childClusters[0];n._zoom===this._maxZoom&&n._childCount===e._childCount&&this.options.spiderfyOnMaxZoom?e.spiderfy():this.options.zoomToBoundsOnClick&&e.zoomToBounds(),this.options.spiderfyOnEveryZoom&&e.spiderfy(),t.originalEvent&&13===t.originalEvent.keyCode&&this._map._container.focus()}},_showCoverage:function(t){var e=this._map;this._inZoomAnimation||(this._shownPolygon&&e.removeLayer(this._shownPolygon),t.layer.getChildCount()>2&&t.layer!==this._spiderfied&&(this._shownPolygon=new L.Polygon(t.layer.getConvexHull(),this.options.polygonOptions),e.addLayer(this._shownPolygon)))},_hideCoverage:function(){this._shownPolygon&&(this._map.removeLayer(this._shownPolygon),this._shownPolygon=null)},_unbindEvents:function(){var t=this.options.spiderfyOnMaxZoom,e=this.options.showCoverageOnHover,n=this.options.zoomToBoundsOnClick,i=this.options.spiderfyOnEveryZoom,o=this._map;(t||n||i)&&this.off("clusterclick clusterkeypress",this._zoomOrSpiderfy,this),e&&(this.off("clustermouseover",this._showCoverage,this),this.off("clustermouseout",this._hideCoverage,this),o.off("zoomend",this._hideCoverage,this))},_zoomEnd:function(){this._map&&(this._mergeSplitClusters(),this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds())},_moveEnd:function(){if(!this._inZoomAnimation){var t=this._getExpandedVisibleBounds();this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,Math.round(this._map._zoom),t),this._currentShownBounds=t}},_generateInitialClusters:function(){var t=Math.ceil(this._map.getMaxZoom()),e=Math.floor(this._map.getMinZoom()),n=this.options.maxClusterRadius,i=n;"function"!=typeof n&&(i=function(){return n}),null!==this.options.disableClusteringAtZoom&&(t=this.options.disableClusteringAtZoom-1),this._maxZoom=t,this._gridClusters={},this._gridUnclustered={};for(var o=t;o>=e;o--)this._gridClusters[o]=new L.DistanceGrid(i(o)),this._gridUnclustered[o]=new L.DistanceGrid(i(o));this._topClusterLevel=new this._markerCluster(this,e-1)},_addLayer:function(t,e){var n,i,o=this._gridClusters,s=this._gridUnclustered,r=Math.floor(this._map.getMinZoom());for(this.options.singleMarkerMode&&this._overrideMarkerIcon(t),t.on(this._childMarkerEventHandlers,this);e>=r;e--){n=this._map.project(t.getLatLng(),e);var a=o[e].getNearObject(n);if(a)return a._addChild(t),void(t.__parent=a);if(a=s[e].getNearObject(n)){var l=a.__parent;l&&this._removeLayer(a,!1);var c=new this._markerCluster(this,e,a,t);o[e].addObject(c,this._map.project(c._cLatLng,e)),a.__parent=c,t.__parent=c;var u=c;for(i=e-1;i>l._zoom;i--)u=new this._markerCluster(this,i,u),o[i].addObject(u,this._map.project(a.getLatLng(),i));return l._addChild(u),void this._removeFromGridUnclustered(a,e)}s[e].addObject(t,n)}this._topClusterLevel._addChild(t),t.__parent=this._topClusterLevel},_refreshClustersIcons:function(){this._featureGroup.eachLayer(function(t){t instanceof L.MarkerCluster&&t._iconNeedsUpdate&&t._updateIcon()})},_enqueue:function(t){this._queue.push(t),this._queueTimeout||(this._queueTimeout=setTimeout(L.bind(this._processQueue,this),300))},_processQueue:function(){for(var t=0;t<this._queue.length;t++)this._queue[t].call(this);this._queue.length=0,clearTimeout(this._queueTimeout),this._queueTimeout=null},_mergeSplitClusters:function(){var t=Math.round(this._map._zoom);this._processQueue(),this._zoom<t&&this._currentShownBounds.intersects(this._getExpandedVisibleBounds())?(this._animationStart(),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,this._getExpandedVisibleBounds()),this._animationZoomIn(this._zoom,t)):this._zoom>t?(this._animationStart(),this._animationZoomOut(this._zoom,t)):this._moveEnd()},_getExpandedVisibleBounds:function(){return this.options.removeOutsideVisibleBounds?L.Browser.mobile?this._checkBoundsMaxLat(this._map.getBounds()):this._checkBoundsMaxLat(this._map.getBounds().pad(1)):this._mapBoundsInfinite},_checkBoundsMaxLat:function(t){var e=this._maxLat;return void 0!==e&&(t.getNorth()>=e&&(t._northEast.lat=1/0),t.getSouth()<=-e&&(t._southWest.lat=-1/0)),t},_animationAddLayerNonAnimated:function(t,e){if(e===t)this._featureGroup.addLayer(t);else if(2===e._childCount){e._addToMap();var n=e.getAllChildMarkers();this._featureGroup.removeLayer(n[0]),this._featureGroup.removeLayer(n[1])}else e._updateIcon()},_extractNonGroupLayers:function(t,e){var n,i=t.getLayers(),o=0;for(e=e||[];o<i.length;o++)(n=i[o])instanceof L.LayerGroup?this._extractNonGroupLayers(n,e):e.push(n);return e},_overrideMarkerIcon:function(t){return t.options.icon=this.options.iconCreateFunction({getChildCount:function(){return 1},getAllChildMarkers:function(){return[t]}})}});L.MarkerClusterGroup.include({_mapBoundsInfinite:new L.LatLngBounds(new L.LatLng(-1/0,-1/0),new L.LatLng(1/0,1/0))}),L.MarkerClusterGroup.include({_noAnimation:{_animationStart:function(){},_animationZoomIn:function(t,e){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),t),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds()),this.fire("animationend")},_animationZoomOut:function(t,e){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),t),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds()),this.fire("animationend")},_animationAddLayer:function(t,e){this._animationAddLayerNonAnimated(t,e)}},_withAnimation:{_animationStart:function(){this._map._mapPane.className+=" leaflet-cluster-anim",this._inZoomAnimation++},_animationZoomIn:function(t,e){var n,i=this._getExpandedVisibleBounds(),o=this._featureGroup,s=Math.floor(this._map.getMinZoom());this._ignoreMove=!0,this._topClusterLevel._recursively(i,t,s,function(s){var r,a=s._latlng,l=s._markers;for(i.contains(a)||(a=null),s._isSingleParent()&&t+1===e?(o.removeLayer(s),s._recursivelyAddChildrenToMap(null,e,i)):(s.clusterHide(),s._recursivelyAddChildrenToMap(a,e,i)),n=l.length-1;n>=0;n--)r=l[n],i.contains(r._latlng)||o.removeLayer(r)}),this._forceLayout(),this._topClusterLevel._recursivelyBecomeVisible(i,e),o.eachLayer(function(t){t instanceof L.MarkerCluster||!t._icon||t.clusterShow()}),this._topClusterLevel._recursively(i,t,e,function(t){t._recursivelyRestoreChildPositions(e)}),this._ignoreMove=!1,this._enqueue(function(){this._topClusterLevel._recursively(i,t,s,function(t){o.removeLayer(t),t.clusterShow()}),this._animationEnd()})},_animationZoomOut:function(t,e){this._animationZoomOutSingle(this._topClusterLevel,t-1,e),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds()),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),t,this._getExpandedVisibleBounds())},_animationAddLayer:function(t,e){var n=this,i=this._featureGroup;i.addLayer(t),e!==t&&(e._childCount>2?(e._updateIcon(),this._forceLayout(),this._animationStart(),t._setPos(this._map.latLngToLayerPoint(e.getLatLng())),t.clusterHide(),this._enqueue(function(){i.removeLayer(t),t.clusterShow(),n._animationEnd()})):(this._forceLayout(),n._animationStart(),n._animationZoomOutSingle(e,this._map.getMaxZoom(),this._zoom)))}},_animationZoomOutSingle:function(t,e,n){var i=this._getExpandedVisibleBounds(),o=Math.floor(this._map.getMinZoom());t._recursivelyAnimateChildrenInAndAddSelfToMap(i,o,e+1,n);var s=this;this._forceLayout(),t._recursivelyBecomeVisible(i,n),this._enqueue(function(){if(1===t._childCount){var r=t._markers[0];this._ignoreMove=!0,r.setLatLng(r.getLatLng()),this._ignoreMove=!1,r.clusterShow&&r.clusterShow()}else t._recursively(i,n,o,function(t){t._recursivelyRemoveChildrenFromMap(i,o,e+1)});s._animationEnd()})},_animationEnd:function(){this._map&&(this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim","")),this._inZoomAnimation--,this.fire("animationend")},_forceLayout:function(){L.Util.falseFn(document.body.offsetWidth)}}),L.markerClusterGroup=function(t){return new L.MarkerClusterGroup(t)};var n=L.MarkerCluster=L.Marker.extend({options:L.Icon.prototype.options,initialize:function(t,e,n,i){L.Marker.prototype.initialize.call(this,n?n._cLatLng||n.getLatLng():new L.LatLng(0,0),{icon:this,pane:t.options.clusterPane}),this._group=t,this._zoom=e,this._markers=[],this._childClusters=[],this._childCount=0,this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._bounds=new L.LatLngBounds,n&&this._addChild(n),i&&this._addChild(i)},getAllChildMarkers:function(t,e){t=t||[];for(var n=this._childClusters.length-1;n>=0;n--)this._childClusters[n].getAllChildMarkers(t,e);for(var i=this._markers.length-1;i>=0;i--)e&&this._markers[i].__dragStart||t.push(this._markers[i]);return t},getChildCount:function(){return this._childCount},zoomToBounds:function(t){for(var e,n=this._childClusters.slice(),i=this._group._map,o=i.getBoundsZoom(this._bounds),s=this._zoom+1,r=i.getZoom();n.length>0&&o>s;){s++;var a=[];for(e=0;e<n.length;e++)a=a.concat(n[e]._childClusters);n=a}o>s?this._group._map.setView(this._latlng,s):o<=r?this._group._map.setView(this._latlng,r+1):this._group._map.fitBounds(this._bounds,t)},getBounds:function(){var t=new L.LatLngBounds;return t.extend(this._bounds),t},_updateIcon:function(){this._iconNeedsUpdate=!0,this._icon&&this.setIcon(this)},createIcon:function(){return this._iconNeedsUpdate&&(this._iconObj=this._group.options.iconCreateFunction(this),this._iconNeedsUpdate=!1),this._iconObj.createIcon()},createShadow:function(){return this._iconObj.createShadow()},_addChild:function(t,e){this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._setClusterCenter(t),t instanceof L.MarkerCluster?(e||(this._childClusters.push(t),t.__parent=this),this._childCount+=t._childCount):(e||this._markers.push(t),this._childCount++),this.__parent&&this.__parent._addChild(t,!0)},_setClusterCenter:function(t){this._cLatLng||(this._cLatLng=t._cLatLng||t._latlng)},_resetBounds:function(){var t=this._bounds;t._southWest&&(t._southWest.lat=1/0,t._southWest.lng=1/0),t._northEast&&(t._northEast.lat=-1/0,t._northEast.lng=-1/0)},_recalculateBounds:function(){var t,e,n,i,o=this._markers,s=this._childClusters,r=0,a=0,l=this._childCount;if(0!==l){for(this._resetBounds(),t=0;t<o.length;t++)n=o[t]._latlng,this._bounds.extend(n),r+=n.lat,a+=n.lng;for(t=0;t<s.length;t++)(e=s[t])._boundsNeedUpdate&&e._recalculateBounds(),this._bounds.extend(e._bounds),n=e._wLatLng,i=e._childCount,r+=n.lat*i,a+=n.lng*i;this._latlng=this._wLatLng=new L.LatLng(r/l,a/l),this._boundsNeedUpdate=!1}},_addToMap:function(t){t&&(this._backupLatlng=this._latlng,this.setLatLng(t)),this._group._featureGroup.addLayer(this)},_recursivelyAnimateChildrenIn:function(t,e,n){this._recursively(t,this._group._map.getMinZoom(),n-1,function(t){var n,i,o=t._markers;for(n=o.length-1;n>=0;n--)(i=o[n])._icon&&(i._setPos(e),i.clusterHide())},function(t){var n,i,o=t._childClusters;for(n=o.length-1;n>=0;n--)(i=o[n])._icon&&(i._setPos(e),i.clusterHide())})},_recursivelyAnimateChildrenInAndAddSelfToMap:function(t,e,n,i){this._recursively(t,i,e,function(o){o._recursivelyAnimateChildrenIn(t,o._group._map.latLngToLayerPoint(o.getLatLng()).round(),n),o._isSingleParent()&&n-1===i?(o.clusterShow(),o._recursivelyRemoveChildrenFromMap(t,e,n)):o.clusterHide(),o._addToMap()})},_recursivelyBecomeVisible:function(t,e){this._recursively(t,this._group._map.getMinZoom(),e,null,function(t){t.clusterShow()})},_recursivelyAddChildrenToMap:function(t,e,n){this._recursively(n,this._group._map.getMinZoom()-1,e,function(i){if(e!==i._zoom)for(var o=i._markers.length-1;o>=0;o--){var s=i._markers[o];n.contains(s._latlng)&&(t&&(s._backupLatlng=s.getLatLng(),s.setLatLng(t),s.clusterHide&&s.clusterHide()),i._group._featureGroup.addLayer(s))}},function(e){e._addToMap(t)})},_recursivelyRestoreChildPositions:function(t){for(var e=this._markers.length-1;e>=0;e--){var n=this._markers[e];n._backupLatlng&&(n.setLatLng(n._backupLatlng),delete n._backupLatlng)}if(t-1===this._zoom)for(var i=this._childClusters.length-1;i>=0;i--)this._childClusters[i]._restorePosition();else for(var o=this._childClusters.length-1;o>=0;o--)this._childClusters[o]._recursivelyRestoreChildPositions(t)},_restorePosition:function(){this._backupLatlng&&(this.setLatLng(this._backupLatlng),delete this._backupLatlng)},_recursivelyRemoveChildrenFromMap:function(t,e,n,i){var o,s;this._recursively(t,e-1,n-1,function(t){for(s=t._markers.length-1;s>=0;s--)o=t._markers[s],i&&i.contains(o._latlng)||(t._group._featureGroup.removeLayer(o),o.clusterShow&&o.clusterShow())},function(t){for(s=t._childClusters.length-1;s>=0;s--)o=t._childClusters[s],i&&i.contains(o._latlng)||(t._group._featureGroup.removeLayer(o),o.clusterShow&&o.clusterShow())})},_recursively:function(t,e,n,i,o){var s,r,a=this._childClusters,l=this._zoom;if(e<=l&&(i&&i(this),o&&l===n&&o(this)),l<e||l<n)for(s=a.length-1;s>=0;s--)(r=a[s])._boundsNeedUpdate&&r._recalculateBounds(),t.intersects(r._bounds)&&r._recursively(t,e,n,i,o)},_isSingleParent:function(){return this._childClusters.length>0&&this._childClusters[0]._childCount===this._childCount}});L.Marker.include({clusterHide:function(){var t=this.options.opacity;return this.setOpacity(0),this.options.opacity=t,this},clusterShow:function(){return this.setOpacity(this.options.opacity)}}),L.DistanceGrid=function(t){this._cellSize=t,this._sqCellSize=t*t,this._grid={},this._objectPoint={}},L.DistanceGrid.prototype={addObject:function(t,e){var n=this._getCoord(e.x),i=this._getCoord(e.y),o=this._grid,s=o[i]=o[i]||{},r=s[n]=s[n]||[],a=L.Util.stamp(t);this._objectPoint[a]=e,r.push(t)},updateObject:function(t,e){this.removeObject(t),this.addObject(t,e)},removeObject:function(t,e){var n,i,o=this._getCoord(e.x),s=this._getCoord(e.y),r=this._grid,a=r[s]=r[s]||{},l=a[o]=a[o]||[];for(delete this._objectPoint[L.Util.stamp(t)],n=0,i=l.length;n<i;n++)if(l[n]===t)return l.splice(n,1),1===i&&delete a[o],!0},eachObject:function(t,e){var n,i,o,s,r,a,l=this._grid;for(n in l)for(i in r=l[n])for(o=0,s=(a=r[i]).length;o<s;o++)t.call(e,a[o])&&(o--,s--)},getNearObject:function(t){var e,n,i,o,s,r,a,l,c=this._getCoord(t.x),u=this._getCoord(t.y),h=this._objectPoint,d=this._sqCellSize,p=null;for(e=u-1;e<=u+1;e++)if(o=this._grid[e])for(n=c-1;n<=c+1;n++)if(s=o[n])for(i=0,r=s.length;i<r;i++)a=s[i],((l=this._sqDist(h[L.Util.stamp(a)],t))<d||l<=d&&null===p)&&(d=l,p=a);return p},_getCoord:function(t){var e=Math.floor(t/this._cellSize);return isFinite(e)?e:t},_sqDist:function(t,e){var n=e.x-t.x,i=e.y-t.y;return n*n+i*i}},L.QuickHull={getDistant:function(t,e){var n=e[1].lat-e[0].lat;return(e[0].lng-e[1].lng)*(t.lat-e[0].lat)+n*(t.lng-e[0].lng)},findMostDistantPointFromBaseLine:function(t,e){var n,i,o,s=0,r=null,a=[];for(n=e.length-1;n>=0;n--)i=e[n],(o=this.getDistant(i,t))>0&&(a.push(i),o>s&&(s=o,r=i));return{maxPoint:r,newPoints:a}},buildConvexHull:function(t,e){var n=[],i=this.findMostDistantPointFromBaseLine(t,e);return i.maxPoint?n=(n=n.concat(this.buildConvexHull([t[0],i.maxPoint],i.newPoints))).concat(this.buildConvexHull([i.maxPoint,t[1]],i.newPoints)):[t[0]]},getConvexHull:function(t){var e,n=!1,i=!1,o=!1,s=!1,r=null,a=null,l=null,c=null,u=null,h=null;for(e=t.length-1;e>=0;e--){var d=t[e];(!1===n||d.lat>n)&&(r=d,n=d.lat),(!1===i||d.lat<i)&&(a=d,i=d.lat),(!1===o||d.lng>o)&&(l=d,o=d.lng),(!1===s||d.lng<s)&&(c=d,s=d.lng)}return i!==n?(h=a,u=r):(h=c,u=l),[].concat(this.buildConvexHull([h,u],t),this.buildConvexHull([u,h],t))}},L.MarkerCluster.include({getConvexHull:function(){var t,e,n=this.getAllChildMarkers(),i=[];for(e=n.length-1;e>=0;e--)t=n[e].getLatLng(),i.push(t);return L.QuickHull.getConvexHull(i)}}),L.MarkerCluster.include({_2PI:2*Math.PI,_circleFootSeparation:25,_circleStartAngle:0,_spiralFootSeparation:28,_spiralLengthStart:11,_spiralLengthFactor:5,_circleSpiralSwitchover:9,spiderfy:function(){if(this._group._spiderfied!==this&&!this._group._inZoomAnimation){var t,e=this.getAllChildMarkers(null,!0),n=this._group._map.latLngToLayerPoint(this._latlng);this._group._unspiderfy(),this._group._spiderfied=this,this._group.options.spiderfyShapePositions?t=this._group.options.spiderfyShapePositions(e.length,n):e.length>=this._circleSpiralSwitchover?t=this._generatePointsSpiral(e.length,n):(n.y+=10,t=this._generatePointsCircle(e.length,n)),this._animationSpiderfy(e,t)}},unspiderfy:function(t){this._group._inZoomAnimation||(this._animationUnspiderfy(t),this._group._spiderfied=null)},_generatePointsCircle:function(t,e){var n,i,o=this._group.options.spiderfyDistanceMultiplier*this._circleFootSeparation*(2+t)/this._2PI,s=this._2PI/t,r=[];for(o=Math.max(o,35),r.length=t,n=0;n<t;n++)i=this._circleStartAngle+n*s,r[n]=new L.Point(e.x+o*Math.cos(i),e.y+o*Math.sin(i))._round();return r},_generatePointsSpiral:function(t,e){var n,i=this._group.options.spiderfyDistanceMultiplier,o=i*this._spiralLengthStart,s=i*this._spiralFootSeparation,r=i*this._spiralLengthFactor*this._2PI,a=0,l=[];for(l.length=t,n=t;n>=0;n--)n<t&&(l[n]=new L.Point(e.x+o*Math.cos(a),e.y+o*Math.sin(a))._round()),o+=r/(a+=s/o+5e-4*n);return l},_noanimationUnspiderfy:function(){var t,e,n=this._group,i=n._map,o=n._featureGroup,s=this.getAllChildMarkers(null,!0);for(n._ignoreMove=!0,this.setOpacity(1),e=s.length-1;e>=0;e--)t=s[e],o.removeLayer(t),t._preSpiderfyLatlng&&(t.setLatLng(t._preSpiderfyLatlng),delete t._preSpiderfyLatlng),t.setZIndexOffset&&t.setZIndexOffset(0),t._spiderLeg&&(i.removeLayer(t._spiderLeg),delete t._spiderLeg);n.fire("unspiderfied",{cluster:this,markers:s}),n._ignoreMove=!1,n._spiderfied=null}}),L.MarkerClusterNonAnimated=L.MarkerCluster.extend({_animationSpiderfy:function(t,e){var n,i,o,s,r=this._group,a=r._map,l=r._featureGroup,c=this._group.options.spiderLegPolylineOptions;for(r._ignoreMove=!0,n=0;n<t.length;n++)s=a.layerPointToLatLng(e[n]),i=t[n],o=new L.Polyline([this._latlng,s],c),a.addLayer(o),i._spiderLeg=o,i._preSpiderfyLatlng=i._latlng,i.setLatLng(s),i.setZIndexOffset&&i.setZIndexOffset(1e6),l.addLayer(i);this.setOpacity(.3),r._ignoreMove=!1,r.fire("spiderfied",{cluster:this,markers:t})},_animationUnspiderfy:function(){this._noanimationUnspiderfy()}}),L.MarkerCluster.include({_animationSpiderfy:function(t,e){var n,i,o,s,r,a,l=this,c=this._group,u=c._map,h=c._featureGroup,d=this._latlng,p=u.latLngToLayerPoint(d),f=L.Path.SVG,_=L.extend({},this._group.options.spiderLegPolylineOptions),m=_.opacity;for(void 0===m&&(m=L.MarkerClusterGroup.prototype.options.spiderLegPolylineOptions.opacity),f?(_.opacity=0,_.className=(_.className||"")+" leaflet-cluster-spider-leg"):_.opacity=m,c._ignoreMove=!0,n=0;n<t.length;n++)i=t[n],a=u.layerPointToLatLng(e[n]),o=new L.Polyline([d,a],_),u.addLayer(o),i._spiderLeg=o,f&&(r=(s=o._path).getTotalLength()+.1,s.style.strokeDasharray=r,s.style.strokeDashoffset=r),i.setZIndexOffset&&i.setZIndexOffset(1e6),i.clusterHide&&i.clusterHide(),h.addLayer(i),i._setPos&&i._setPos(p);for(c._forceLayout(),c._animationStart(),n=t.length-1;n>=0;n--)a=u.layerPointToLatLng(e[n]),(i=t[n])._preSpiderfyLatlng=i._latlng,i.setLatLng(a),i.clusterShow&&i.clusterShow(),f&&((s=(o=i._spiderLeg)._path).style.strokeDashoffset=0,o.setStyle({opacity:m}));this.setOpacity(.3),c._ignoreMove=!1,setTimeout(function(){c._animationEnd(),c.fire("spiderfied",{cluster:l,markers:t})},200)},_animationUnspiderfy:function(t){var e,n,i,o,s,r,a=this,l=this._group,c=l._map,u=l._featureGroup,h=t?c._latLngToNewLayerPoint(this._latlng,t.zoom,t.center):c.latLngToLayerPoint(this._latlng),d=this.getAllChildMarkers(null,!0),p=L.Path.SVG;for(l._ignoreMove=!0,l._animationStart(),this.setOpacity(1),n=d.length-1;n>=0;n--)(e=d[n])._preSpiderfyLatlng&&(e.closePopup(),e.setLatLng(e._preSpiderfyLatlng),delete e._preSpiderfyLatlng,r=!0,e._setPos&&(e._setPos(h),r=!1),e.clusterHide&&(e.clusterHide(),r=!1),r&&u.removeLayer(e),p&&(s=(o=(i=e._spiderLeg)._path).getTotalLength()+.1,o.style.strokeDashoffset=s,i.setStyle({opacity:0})));l._ignoreMove=!1,setTimeout(function(){var t=0;for(n=d.length-1;n>=0;n--)(e=d[n])._spiderLeg&&t++;for(n=d.length-1;n>=0;n--)(e=d[n])._spiderLeg&&(e.clusterShow&&e.clusterShow(),e.setZIndexOffset&&e.setZIndexOffset(0),t>1&&u.removeLayer(e),c.removeLayer(e._spiderLeg),delete e._spiderLeg);l._animationEnd(),l.fire("unspiderfied",{cluster:a,markers:d})},200)}}),L.MarkerClusterGroup.include({_spiderfied:null,unspiderfy:function(){this._unspiderfy.apply(this,arguments)},_spiderfierOnAdd:function(){this._map.on("click",this._unspiderfyWrapper,this),this._map.options.zoomAnimation&&this._map.on("zoomstart",this._unspiderfyZoomStart,this),this._map.on("zoomend",this._noanimationUnspiderfy,this),L.Browser.touch||this._map.getRenderer(this)},_spiderfierOnRemove:function(){this._map.off("click",this._unspiderfyWrapper,this),this._map.off("zoomstart",this._unspiderfyZoomStart,this),this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._map.off("zoomend",this._noanimationUnspiderfy,this),this._noanimationUnspiderfy()},_unspiderfyZoomStart:function(){this._map&&this._map.on("zoomanim",this._unspiderfyZoomAnim,this)},_unspiderfyZoomAnim:function(t){L.DomUtil.hasClass(this._map._mapPane,"leaflet-touching")||(this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy(t))},_unspiderfyWrapper:function(){this._unspiderfy()},_unspiderfy:function(t){this._spiderfied&&this._spiderfied.unspiderfy(t)},_noanimationUnspiderfy:function(){this._spiderfied&&this._spiderfied._noanimationUnspiderfy()},_unspiderfyLayer:function(t){t._spiderLeg&&(this._featureGroup.removeLayer(t),t.clusterShow&&t.clusterShow(),t.setZIndexOffset&&t.setZIndexOffset(0),this._map.removeLayer(t._spiderLeg),delete t._spiderLeg)}}),L.MarkerClusterGroup.include({refreshClusters:function(t){return t?t instanceof L.MarkerClusterGroup?t=t._topClusterLevel.getAllChildMarkers():t instanceof L.LayerGroup?t=t._layers:t instanceof L.MarkerCluster?t=t.getAllChildMarkers():t instanceof L.Marker&&(t=[t]):t=this._topClusterLevel.getAllChildMarkers(),this._flagParentsIconsNeedUpdate(t),this._refreshClustersIcons(),this.options.singleMarkerMode&&this._refreshSingleMarkerModeMarkers(t),this},_flagParentsIconsNeedUpdate:function(t){var e,n;for(e in t)for(n=t[e].__parent;n;)n._iconNeedsUpdate=!0,n=n.__parent},_refreshSingleMarkerModeMarkers:function(t){var e,n;for(e in t)n=t[e],this.hasLayer(n)&&n.setIcon(this._overrideMarkerIcon(n))}}),L.Marker.include({refreshIconOptions:function(t,e){var n=this.options.icon;return L.setOptions(n,t),this.setIcon(n),e&&this.__parent&&this.__parent._group.refreshClusters(this),this}}),t.MarkerClusterGroup=e,t.MarkerCluster=n,Object.defineProperty(t,"__esModule",{value:!0})}(_u.exports));const mu="hmsfire",gu=new du.FeatureGroup,vu=Al.defineOptions({fire:{label:"HMS Fire",model:!0,icon:{id:"emergency_heat"}}}),yu=Mc(async t=>{const{map:e}=await $u();let n=[];e.createPane(mu).style.zIndex="601",n=await bu(),gu.addTo(e),wn(()=>vu.fire.model.value,async t=>{t?(n.length||(n=await bu()),gu.addTo(e)):gu.remove()}),t(vu)});async function bu(){const t=await async function(){return await Zc({url:"hms/fire"})}();return t.filter(t=>null!==t.frp).forEach(t=>{(function(t,e){const[n,i]=t.geometry.coordinates;new du.Point(0,0);const o=du.divIcon({html:`<span translate="no" class="material-symbols-outlined ${wu(t.frp)}">emergency_heat</span>`,className:"leaflet-fire-icon fill-material-icon",iconSize:[30,30]}),s=du.marker([i,n],{icon:o,pane:e});return s})(t,mu).addTo(gu)}),t}function wu(t){return t>0&&t<10?"sm":t>=10&&t<=49?"md":t>=50&&t<=149?"lg":t>=150&&t<=349?"xl":t>349?"xxl":void 0}const xu={key:0,class:"fire-legend-container card is-flex is-flex-direction-column"},Lu=Pl(Kn({__name:"FireLegend",async setup(t){let e,n;const i=([e,n]=Bi(()=>yu()),e=await e,n(),e),o=Ss(()=>i.fire.model.value&&gu.getLayers().length>0);return(t,e)=>o.value?(Ho(),Yo("div",xu,[...e[0]||(e[0]=[rs('<h3 class="has-text-centered has-text-wrap-nowrap has-font-weight-semibold" data-v-0a25d560> Fire Points </h3><div data-v-0a25d560><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="sm material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560><10 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="md material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>10-49 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="lg material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>50-149 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="xl material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>150-349 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="xxl material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>≥350 MW</p></div></div>',2)])])):as("",!0)}}),[["__scopeId","data-v-0a25d560"]]),Pu="geolocation"in navigator,Cu={latitude:36.76272911677402,longitude:-119.7989545249089};async function Mu(t){return new Promise(e=>{if(Pu)return navigator.geolocation.getCurrentPosition(e,console.error,t);e({timestamp:Date.now(),coords:{accuracy:0,altitude:0,altitudeAccuracy:0,heading:0,speed:0,...Cu}})})}const Tu="/static/monitor-map/airgradient-blue.svg",ku="data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMpaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzUgV2luZG93cyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyMTZFNDM2OTMyNjUxMUUyOTFBMkZCRkM2NjEwQUMxOSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyMTZFNDM2QTMyNjUxMUUyOTFBMkZCRkM2NjEwQUMxOSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjIxNkU0MzY3MzI2NTExRTI5MUEyRkJGQzY2MTBBQzE5IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjIxNkU0MzY4MzI2NTExRTI5MUEyRkJGQzY2MTBBQzE5Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoKDBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgANgBlAwERAAIRAQMRAf/EAKgAAAICAwEBAAAAAAAAAAAAAAAFBAYDBwgBAgEAAgMBAQAAAAAAAAAAAAAAAAMBAgQFBhAAAQMDAwEFBQMKBwAAAAAAAgEDBBEFBgAhEgcxQSITFFFxgXIVYZEyoUJSYqIjM1MWCJKyc9MklJURAAEDAQUCCgcHBQAAAAAAAAEAAgMRITESEwRBUWFxgZGxwdEiMgXwoeFCUpLSYqIjMxQVFvGC8jQG/9oADAMBAAIRAxEAPwDqnQhGhCT5Nl+N4xC9ZfJ7cNoq+WJKquGqdzbY1MvgmnwaaSU0YKqj5GtFSVS4XUzMsqXlhWMqluVVQL1eTViOtFpUGm6m4Pyl76a3O0MUP5r+98LbSkiZzvCLN5TuNi+eS/Fe8tcZEtyi2iKxHFPsR58ZDqp92kO1EI8EfzEn1CgVwx5vdzJg1hEBKLIuV3kmi15FcpjW/wAsdxkfhSmlHVHYGD+0dYKtljeedSf6Utf8+4f+lcP9/Vf1Dtzflb2KcA4ecrKmPwx3B+aJIiIhetlHTitfwm4Qr9tU31XOO4cw7FOALIzbZTTgF9TlG2Kp+5NI6iqIvYpeUh/tV1BeD7o9fainCp+lqyNCEaEI0IRoQqB1c6qRMGtQBHEJN9movoopKvEQTZXnKb8UXZE/OX3LTpeXeXnUOtsYL+xZ558A4VT+mfSibkD4Zt1CM7lPl0dhW+RuAgu4m6FET5G0Tiidqdybdd5gIxkwd0C8jq7UqGAu7z7VuOXaY0ryxcN4GWh4gyw84wHx8kgVdtqKtPs1xGyEbunpWstqobuG4i8KpIssGRVKET8dp0i+YjElX46uNTKLnOHKoy27ksm9McUdFSt7T1jkp/Dk2l5yGQe4GlRpfcQLprddIPFR4+0K+1VMLdlnEqnLyjqJgF0YYyBs8pxiUfBi7RmaTWP1XgbTiVE/xdvL83WxsEGpaSz8OQbCbDxJJe+M295q2hBmxp0NmZFPnHfBHGiVFFVQkruJIhIvtRUqmuS9paaG8LUDUVWfVVKNCEaEI0IRoQjQhcuWFtepfXV6RO/fWuM84/5RJUfSQ14stqPZQy4cvmXXrpj+l0dB4j0m9ctv4ktty6jRKbJ2a8iuotc9Yepd3w5i3R7FGYmXaar7xsvg44IxYzam6fFs2ySnbWvYha6nluhbOSXkhopzlZ9RMWUperfi+QN5Bi9vvcVBrOji6gV8IuKlDBV3/CaKOsU8OXIWHYU1j8TQUnwPJrzLxZ265c9bYrzcgwV6HIbOMLfhQObiOOAJKRUpz7Kd+nauBgkwxBxs2i1UieS2rqLNmWaRrVjF6uFolRJlztUdJCxVNHePNU4K6DZiaCXduldV02lL5GtcCGuKmSSjSReEr6R9TRzezOrMbbi3yGqesitoQgrbniadbE1IuJDt2rv7007zHQ5DrLWG7sVYJsYtvUvpvmd0yf8AqD17TDX0q6PwI/kCY8mmqcVPmZ1LfelE+zVNbpmxYMNe80FTDIXVrsKsH9TY39R+m/Vof1GtPReoa8+taU8vlz/JrNkSYcWE4d9LEzG2tK2qUdxt4TggHKZGc4HmNxFcFHSBK+IW68lTwrvTu1TA6mKlm9TUVovQuEA5pwQktFNbFHHIqGKuiC0oRBXkibpvTRgNK0sRUVosSXqzLJKKk+OsoHBZNhHQ8xHCRVEFGteSoKqiduy6tlOpWhooxDepmlqy5n/tsbS39RrxbZScJjcJ5mipReTMhtDH37V+GvV+dnFA1wuqOgrm6Ox5C6Y15RdJaIduuRX3q7fb1Z8bTJoFkYWyNtFLZiACnVHS5PckPkvmj4U/Cu+vQiNkemaxz8suOK4niu5FhxF0hIGKlicf2+3CfBYvmFXVkok+ySfOaiuGLhAzI3UEIfCSCacuSbLz0nzhgcWytNQ4dHp6lfSkirTsVMxYUX+2bJEVEVPVku/tRyMqa3aj/fZxdqQz8gq2ScLsOPdCblKgMUn3K0sv3CYSkpvG4guLWqqiIimtETWJuqfJrACbGvNAnGMNiNNoSm5Wm4YrYsN6m2FojWParfHyOIG3nxSjtjzX3JQVXu8Jdy6eyRsz5NO/a52E7jU+nOqFpaGvG4VULH8hlMdKOo96srpg4/d3DjPhUTFqS40JGneKo24q17tXmhB1MLH/AAdFVVj/AMNxG9O53Tbp810RW6BFaGcFqG4N3av78pStI4KeZXsJ1eHH4dukM10x1eGtmKlNlP6JhhZlV4EvmTrlHsXTHqHONVkQ3RgXWSX4iivqTYuGv+mJbr2qWmNY0vmgFxtHGFUk0Y8pfZ79Lt2bxuqc15RsOQ3KbbDItkGGACEUlX5mVr8n3NkhDoTpx42Na7l29PrVWuo7MNxJC8C1XcOlbvUIRpdnsgbyNxO9WWXTZAPlQniP5V0GRv6jI93LwdfUjCcvHtxVXR+vLrorn/qfj90wLqJF6kWeOT9qeeQ7o0GyA44nlvCXsF4SVUJew/hr0mgmbqIDA496lnVzdCwTMMb8YuW8bLerZfbSxdLXIR+FLDk08FKpXtRUWtCFdlRexdeflidG4tcLQtrXBwqFAw3CrNiNtet9qV025D5yX3ZBo46bhoiKpEiD3Cmm6nVPmdidsFFWOMMFAvkMHsreaOZg0Tzd2ej+lfETRGXG0RETmPGtfAPf3JoOqeYso+GtUZQxYtqWwOlOMQsKmYeyclbTOcV14icFXuSqC+E+FE/hp3aa/wAwkdKJTTEFUQNDcOxT8htGON4WVhusg49mWO3BVzlRzgIoIoioK+Kg/o6yO1uS/ON9a3E38AVnNGGhuWO1XHDgsMWwsPLLtrUYLeAONuGhtACMoJrwQVqKUXXPl87hxmQuINcXhdx7lLACA0cShYrhWE41ZZ9lhI6/bbkZHKYlITqEhgjZB+AfDxTv1XUf9fp5Xh5f3m7mP+lMZoi0EAWHhCpw9NulfEYp3m8uWYHfOCxm7IWChVrsCMofx51+3XR/l0d9W4viwOr0Jv7FLus3Ym9qf5PknSq74+9i1wkutW9BbZRpiJKFWkYIVBG1RkhTjwRNu7S9P5q1rxK028R2rd/HdU9lMAoftM+pKLrdeis3DY2HSJ0oLVERryFbizEdQmlrz5+nVORVXlt3rrZD5i/MMzfEUiXyGdowOb95vanI5t0rLEHLIkx36G1HC1mPpJnJG3GjAE/g1VVBsvFTt+Gl5zszM96tVH7VNTBh2fE3tWxNJWNY5UWNLjOxpTQPxnhUHmXBQwMSSiiQrVFRdS1xBqL1BFVrxrpdd8YnOzun11G3syC5ybDcEN+AZe0SFfNa96VX7aba6Z17ZRSdtae8LHdhWfILTVh5NisMXIMyaDjcsWccdHbnbZcV4CX2p6o4ZImszoYj4X/MD1YkwPdtHp6lPC73l7wtWOQya0oUt6KDfxJh2SX7GlZbB7w5AesBWxHckuU9TbDiMIzyKQyNzKqsWqEavvEip4U8SNqlf0iEU1o0+hfMe4Dh3mwKj5gwW3rWIYfnvVy9s3fJwcsOKMLWFAWqOkC7+ACRPEafidNPlSm2usdTDo2YY+/Ibz6dCzZb5TV1jVvS02m3Wi2x7bbWBjQYoI2wwCbCib/FVXdVXdV3156SRz3FzjUlbmtAFApeqKUaEI0IRoQjQhLvKyId/UxHf1PIda/a85z/AC6bVm48/sVbV8lIydBLjAhESU4VmOii+2v/ABSp+XU0j3nmH1Iq7d6cywlKzGi8bXblKmyLcH0Sv/SXU4Yvid8o+pRV24c/sUV1zqM8lGY9nhKveb8qYifBGYdfv1cCAXl55AOsqO/wJFe8cyl2Kb2QZfObhLucXH4BMmntRDaSZJVNaIp4waMjbX7bv8QluY7a48gS3p+30LbuShYHYz18E1RXbgjqTSdruoesEC5V/lppusOsLe/XBwXfd61WLKrZetpa5C1I0IRoQjQhGhCNCEaEL//Z",Su="/static/monitor-map/carb-compact.jpg",Au="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAACXBIWXMAAAsSAAALEgHS3X78AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAxLTA2VDIxOjUyOjI5KzAwOjAwSQXdiwAAArVQTFRF////mDOP6dPnxYzAmzmS6tXouHOymDSPmjeRt3GxnT2U8+jymjaRnT6Vo0mb9ev0mziSnDqTw4i+/v3+zJnHypbF3LrZ69fpnDuTnkCWoUWZ5MrimTWQp1CfyJPEzZzJyZXF8uXxwIK6/vz+pk+e9OnzuXWzsWWq8eTw5c3j8OHvy5nHypfG1avRtW2vzp/K79/unDyUmzqTrl+n/fv9qlejpEucnTyUnT2Vokea+fP4mjiRn0GX7t7tmTaRtGuumjiSp1Gf/Pn8yZTE3bzapk6e6dToyJHDuXSzsmarzJvIwIO76NHmrV2mzJrHqFKgy5jGsmis0aTNv4C56dTnpEqc48fgoUaZ37/cvXy38OLvvn64yJLDvHq2+vX64sXf1KrQ06nQ8ePw/v7+s2mt2rXW7dzs4cPe2bXWvn+5xIq/+fT5x5DCxo7B8OHuu3i148nhpUyduHKxzp7K4sbgqFOhune0mTaQ3r3b9/D3+vb6nj+WoEKXn0KX9ez0mTSQ5czj+PD3vHu3pU2dz6DLr2CowYW85MnhsmersWWroEOY9u313bva79/tvHu2o0qb/Pj70KPN6tbpnj6V48jh/fz9sGOq7dvrqVWi7tzs1KrRtGyu16/T7Nrr7+Du58/lypXFypbGoUSZ9+/2xIu/+PH4sGOpp1Kgv4G6n0CWy5fG4MLe+/f7+PH3woa9r2Kp06jP8ubx3LnZs2msune1x5HC+fP5z5/KsWSqw4i9zZzIokaa9Orzy5jH1KvRpU6dz6HLt3Cw1azS17DU7NnqtGutsGSqtGqtxY3AtWyu3r/cxo/B3r7ctW6v2LHU38Dd0aPN9ez117DTpEydtm+w8+fy0qbOwoe9mDSQs2isvX24x5HD69jpoEOXuna05cvj//7/uHKysGKpu3m2/Pr8u3m1wIG6s+L4kwAAAjpJREFUSMdjYBgFdAQGPkwGykSrNklsrTG3qPUNmkCcettl1jySfHySHBzG04lRH7XcYREzax2/uLslh+tMIjTYc6hoQlisMzimTcWveP4CoRUrbeJhXKZwhzl4PevNJcPOwhKLEBGSmY1PQxsPb0ewumwIQmSKeT/zxAZc4evGy1sMpOKQhBQlBWXqDY0rsGtQ4OjEEJP3aAqU4jCUw6JcsU+KJxp7vJRJsMhjiE6S5eAyLcHhWCEjGyY0oUZTAcceYZzB4VkeiSbizGMmjif8XIyaK1EEqkoFWvAFOLclLyuKgHh1Vy8+DVYqgtIoAtISfPz4NPDzcaH6mnWyVBI+DRGCZt2oVsqyJOBNwXZqaCJL7Pw34lYvJ2HRjh4Mriy+PriCSInLmhlDNGw3x90ruQoBIn5eXn4iItp7A1bpLBRVcI5h3hIqwKKExZwQdcEbjIzsqIARCNgF/Gdhtzr+9i01Nk4IKHrIBgQeaveeRueKbaNKyXUxPz8WOfYzUsFUeqTyE9E4bBq0Luddu3lHI1szquCM5qmEBzo6DIfFGBiKuAoYErnvb1qMoUFj/6VMpeuHjpy8UHjuWNYJIX39nJ16+67q6T5LfhQRHrMUU0OoiK5wVoYWW9BphrN52YGiojvk3HUPqDwuTEo5vxmLk+Y5ArPPdnXvg/o5DEeDM7fuktdex+yyXoxbT/u4WAoWDU5MyUBiNavWHkUGzw1hwqqqDOnSa9wYGFTT0tbOJRBiqfyj9d2wAwA8Loee6z0+HQAAAABJRU5ErkJggg==",Eu="/static/monitor-map/icon-128.webp";class Ou{constructor(t){this.data=t,this.logo=function(t){switch(t.data.data_source.name){case"AQview":return{url:Su,alt:"AQview"};case"AirNow.gov":return{url:ku,alt:"AirNow.gov"};case"PurpleAir":return{url:Au,alt:"PurpleAir"};case"Central California Asthma Collaborative":return{url:Eu,alt:"Central California Asthma Collaborative"};case"AirGradient":return{url:Tu,alt:"PurpleAir"};default:return{url:"",alt:""}}}(t)}logo}class zu{constructor(t){this.data=t}}const Iu={class:"results-list"},Bu={class:"result-item"},Zu=["onClick"],Ru={class:"geocode-data"},Du=["onClick"],Nu=["src","alt"],ju=Kn({__name:"MonitorSearch",async setup(t){let e,n;const{map:i,recenter:o}=([e,n]=Bi(()=>$u()),e=await e,n(),e),{activeMonitor:s}=([e,n]=Bi(()=>eu()),e=await e,n(),e),r=ke(!0),a=ke(null),l=ke(""),c=ke([]),u=ke(),h=oa(),d=du.divIcon({html:'<span class="location-icon material-symbols-outlined"> location_on </span>',pane:"selectedMarker",className:"location-icon-container",iconAnchor:[10,10]});function p(){r.value||_()}function f(){setTimeout(()=>{l.value="",c.value=[],u.value?.remove()},0)}function _(){r.value=!0,a.value.blur()}function m(){r.value&&(r.value=!1,l.value.length||a.value.focus())}const g=function(t,e){let n=0;return function(i){clearTimeout(n),n=setTimeout(()=>{t(i)},e)}}(async function(t){const e=await async function(t){const{monitors:e}=await eu(),n=[],i=t.toLowerCase();let o;for(o in e.value){const t=e.value[o],s=t.data.name.toLowerCase();s!==i?(s.startsWith(i)||s.includes(i))&&n.push(t):n.push(t)}return n.map(t=>new Ou(t)).slice(0,4)}(l.value);l.value.length?!e.length&&l.value.length>4?c.value=await async function(t){const{coords:{latitude:e,longitude:n}}=await Mu(),i=new URL(`https://api.maptiler.com/geocoding/${encodeURIComponent(t)}.json`);return i.searchParams.append("country","us"),i.searchParams.append("fuzzyMatch","true"),i.searchParams.append("key","1ZwL7YJSSN42A678HHPn"),i.searchParams.append("limit","4"),i.searchParams.append("proximity",`${n},${e}`),await fetch(i).then(async t=>await t.json()).then(t=>t.features.length?t.features.map(t=>new zu(t)):[]).catch(t=>(console.error("Failed to geocode location:",t),[]))}(l.value):e.length&&(c.value=e):(c.value=[],u.value&&u.value.remove())},500);return(t,e)=>mn((Ho(),Yo("div",{class:$(["search-component",{collapsed:r.value,results:c.value.length}])},[es("div",{class:$(["search-header",{collapsed:r.value,results:c.value.length}])},[es("div",{class:"search-icon-container",onClickCapture:m},[...e[2]||(e[2]=[es("span",{class:"material-symbols-outlined search-icon"}," search ",-1)])],32),es("span",{class:$(["search-input-container",{collapsed:r.value}])},[mn(es("input",{ref_key:"searchInput",ref:a,type:"text","onUpdate:modelValue":e[0]||(e[0]=t=>l.value=t),onInput:e[1]||(e[1]=(...t)=>Oe(g)&&Oe(g)(...t))},null,544),[[kr,l.value]]),l.value.length&&!r.value?(Ho(),Yo("span",{key:0,onClick:f,class:"clear-btn material-symbols-outlined"}," clear ")):as("",!0)],2)],2),es("div",{class:$(["search-results",{collapsed:!c.value.length||r.value}])},[es("div",Iu,[(Ho(!0),Yo(Do,null,Pi(c.value,t=>(Ho(),Yo("div",Bu,[t instanceof Oe(zu)?(Ho(),Yo("div",{key:0,onClick:e=>async function(t){if("Point"===t.geometry.type){u.value&&u.value.remove();const e=t.geometry.coordinates.toReversed();u.value=du.marker(e,{icon:d,pane:"selectedMarker"}).addTo(i),"address"===t.place_type[0]?o(e,16):o(e)}}(t.data),class:"geocode-result"},[e[3]||(e[3]=es("span",{class:"location-icon material-symbols-outlined"}," location_on ",-1)),es("div",Ru,[es("p",null,X(t.data.place_name.substring(0,t.data.place_name.indexOf(","))),1),es("p",null,X(t.data.place_name.substring(t.data.place_name.indexOf(",")+1)),1)])],8,Zu)):t instanceof Oe(Ou)?(Ho(),Yo("div",{key:1,onClick:e=>async function(t){_(),s.value=t,h.push({name:"details",params:{monitorId:t.data.id}})}(t.data),class:"monitor-result"},[es("img",{src:t.logo.url,alt:t.logo.alt},null,8,Nu),es("p",null,X(t.data.data.name),1)],8,Du)):as("",!0)]))),256))])],2)],2)),[[Oe(kl),p]])}}),Fu=Pl(ju,[["__scopeId","data-v-3a88abc4"]]),Uu={center:du.latLng(36.76272911677402,-119.7989545249089),zoom:8,maxZoom:18},Gu={animate:!0,duration:.5};let Hu;const $u=Mc(async t=>{const e=new ResizeObserver(()=>Hu.invalidateSize()),n=document.createElement("div");Hu=du.map(n,Uu),n.style.flex="1",e.observe(n);const i=function(t){const e=()=>{document.removeEventListener("visibilitychange",i)};if(document.body.getAttribute("cacheOnLeave"))return e;const n={center:t.getCenter(),zoom:t.getZoom()};function i(){switch(document.visibilityState){case"hidden":n.center=t.getCenter(),n.zoom=t.getZoom();break;case"visible":t.setView(n.center,n.zoom)}}return document.addEventListener("visibilitychange",i),document.body.setAttribute("cacheOnLeave","true"),e}(Hu);Hu.addEventListener("click",Vu),_i(()=>{i(),e.disconnect(),Hu.removeEventListener("click",Vu)}),t({map:Hu,mapContainer:n,focusAssertion:qu,recenter:Yu})});function Vu(t){const{originalEvent:{ctrlKey:e},latlng:n,sourceTarget:i}=t;if(e){const t=function(t){const e=du.divIcon({className:"is-flex is-justify-content-center is-align-items-center",iconAnchor:new du.Point(5,10),html:'<span class="material-symbols-outlined is-size-3 has-text-info fill-material-icon"> pin_drop </span>'});return du.marker(t,{icon:e})}(n),e=function(t){return function(){t.remove()}}(t);t.bindPopup(function(t){return`\n <p class="m-0">Lat: <span id="dropPointLat">${t.lat.toFixed(6)}</span></p>\n <p class="m-0">Lng: <span id="dropPointLng">${t.lng.toFixed(6)}</span></p>\n <div class="mt-1">\n <button id="dropPointPopupCopy">Copy</button>\n <button id="dropPointPopupRemove">Remove</button>\n </div>\n`}(n)),t.addEventListener("popupopen",()=>{const t=document.getElementById("dropPointPopupCopy"),n=document.getElementById("dropPointPopupRemove");t?.addEventListener("click",Wu),n?.addEventListener("click",e)}),t.addEventListener("popupclose",()=>{const t=document.getElementById("dropPointPopupCopy"),n=document.getElementById("dropPointPopupRemove");t?.removeEventListener("click",Wu),n?.removeEventListener("click",e)}),t.addTo(i)}}async function Wu(){const t=document.getElementById("dropPointLat")?.textContent,e=document.getElementById("dropPointLng")?.textContent;await navigator.clipboard.writeText(`${t},${e}`).then(()=>{const t=document.createElement("div");t.innerText="Coordinates copied to clipboard!",t.style.position="absolute",t.style.left="50%",t.style.top="5%",t.style.backgroundColor="rgba(255, 255, 255, 0.8)",t.style.padding="10px",t.style.fontSize="18px",t.style.fontWeight="bold",t.style.zIndex="1000",document.body.appendChild(t),setTimeout(()=>{t.remove()},3e3)})}function qu(t){if(null==t.data.position)return;const[e,n]=t.data.position.coordinates,{lng:i,lat:o}=Hu.getCenter();if(e!==i||n!==o){Yu(du.latLng(n,e))}}function Yu(t,e){if(t){const n=e??Math.max(Hu.getZoom(),10);Hu.flyTo(t,n,Gu)}else{const t=Hu.getBounds().getCenter();Hu.setView(t,Uu.zoom,Gu)}}const Ku=Kn({__name:"Geolocate",async setup(t){let e,n;const{recenter:i}=([e,n]=Bi(()=>$u()),e=await e,n(),e);async function o(){const{coords:{latitude:t,longitude:e}}=await Mu();i(du.latLng(t,e))}return(t,e)=>(Ho(),Yo("div",{onClick:o,class:"locate"},[...e[0]||(e[0]=[es("span",{class:"material-symbols-outlined"}," my_location ",-1)])]))}}),Ju=Pl(Ku,[["__scopeId","data-v-d6ffe8a7"]]),Xu={class:"map-footer"},Qu={class:"legend-container"},th=Pl(Kn({__name:"Map",async setup(t){let e,n;const i=ke(),{mapContainer:o}=([e,n]=Bi(()=>$u()),e=await e,n(),e);return di(async()=>{i.value.appendChild(o)}),(t,e)=>(Ho(),Yo("div",{ref_key:"mapTarget",ref:i,class:"map section is-paddingless"},[ns(Fu,{class:"monitor-search"}),es("div",Xu,[es("div",Qu,[ns(Lu,{class:"fire-legend"}),ns(lu,{class:"marker-legend"})]),ns(Ju,{class:"geolocate"})])],512))}}),[["__scopeId","data-v-33f323fe"]]);const eh=new Vc(new function(t){return new Worker("/static/monitor-map/assets/CalibratorsWorker-BJ43xm7L.js",{type:"module",name:t?.name})});const nh=ke([]);async function ih(){return{calibrators:nh,fetchCalibrators:oh}}async function oh(){nh.value.length||await async function(){return await eh.run("fetchCalibrators")}().then(t=>{nh.value=t.length?t:[]}).catch(()=>console.error("Failed to fetch Calibrators."))}function sh(t){return nh.value.find(e=>e.reference_id===t)}function rh(t){return"string"==typeof t?nh.value.some(e=>e.id===t):nh.value.some(e=>e.id===t.data.id)}function ah(t){return"string"==typeof t?nh.value.some(e=>e.reference_id===t):nh.value.some(e=>e.reference_id===t.data.id)}const lh=new Map,ch=new du.FeatureGroup,uh=new du.FeatureGroup,hh=Al.defineOptions({SJVAirPurpleAir:{containerClass:"has-text-success",icon:{id:"circle"},model:!0,label:"SJVAir non-FEM"},SJVAirBAM:{containerClass:"has-text-success",icon:{id:"change_history"},model:!0,label:"SJVAir FEM"},AirNow:{containerClass:"has-text-success",icon:{id:"change_history"},model:!0,label:"AirNow FEM"},AQview:{containerClass:"has-text-success",icon:{id:"change_history"},model:!0,label:"AQview FEM"},PurpleAir:{containerClass:"has-text-success",icon:{id:"square"},model:!0,label:"Private PurpleAir"},displayInactive:{containerClass:"has-text-grey-light",icon:{id:"square"},model:!1,label:"Inactive monitors"},PurpleAirInside:{containerClass:"icon-border has-text-success",icon:{id:"square"},model:!1,label:"Inside monitors"},Calibrators:{label:"Collocation Sites",model:!1,svg:"crosshairs-svg"}}),dh=Mc(async t=>{const e=oa(),{map:n}=await $u(),{monitors:i}=await eu(),{fetchCalibrators:o}=await ih();await o();const s=Object.values(hh).map(t=>()=>t.model.value);ch.addTo(n),n.createPane("purpleAir").style.zIndex="603",n.createPane("airNow").style.zIndex="604",n.createPane("aqview").style.zIndex="605",n.createPane("sjvAirPurpleAir").style.zIndex="606",n.createPane("sjvAirBam").style.zIndex="607",n.createPane("calibrators").style.zIndex="608",n.createPane("selectedMarker").style.zIndex="625",uh.options.pane="selectedMarkerGroup",uh.addTo(n),wn(i,()=>{!function(t,e){ch.clearLayers(),lh.clear();for(let n in e.value){const i=e.value[n];if(!i.data.latest||null===i.data.position)continue;const o=_h(i);if(o.addEventListener("click",()=>{t.push({name:"details",params:{monitorId:i.data.id}})}),o&&(lh.set(n,o),ph(i)&&(ch.addLayer(o),i.data.id===t.currentRoute.value.params.monitorId&&new gh(o)),ah(i))){const t=sh(i.data.id),e=fh(t);e.addEventListener("mouseover",()=>o.openTooltip()),e.addEventListener("mouseout",()=>o.closeTooltip()),e.addEventListener("click",()=>o.fire("click")),lh.has(t.id)&&(ch.removeLayer(lh.get(t.id).remove()),lh.delete(t.id)),lh.set(t.id,e),ph(t)&&ch.addLayer(e)}}}(e,i)},{immediate:!0}),wn(s,()=>{lh.forEach((t,e)=>{ph(rh(e)?function(t){return nh.value.find(e=>e.id===t)}(e):i.value[e])?ch.addLayer(t):ch.removeLayer(t)})}),t({monitorMarkers:ch,displayOptions:{label:"Air Monitors",options:hh}})});function ph(t){if("data"in t){if(hh.Calibrators.model.value&&ah(t))return!0;if(!hh.displayInactive.model.value&&!t.data.is_active)return!1;switch(t.data.data_source.name){case"AirGradient":case"PurpleAir":const e=hh.PurpleAirInside.model.value||"outside"===t.data.location;return(t.data.is_sjvair?hh.SJVAirPurpleAir.model.value:hh.PurpleAir.model.value)&&e;case"Central California Asthma Collaborative":return ah(t)&&hh.Calibrators.model.value||hh.SJVAirBAM.model.value;case"AirNow.gov":return ah(t)&&hh.Calibrators.model.value||hh.AirNow.model.value;case"AQview":return ah(t)&&hh.Calibrators.model.value||hh.AQview.model.value}}else if("id"in t&&rh(t.id))return hh.Calibrators.model.value;return!1}function fh(t){const e=ou(t.reference_id),[n,i]=t.position.coordinates,o=du.divIcon({className:"is-flex is-justify-content-center is-align-items-center",iconAnchor:new du.Point(6,11),html:`<div class='crosshairs-svg-lg ${e.data.is_active?"":"disabled-monitor"} is-flex-grow-0 is-flex-shrink-0'>Hello</div>`});return du.marker(du.latLng(i,n),{icon:o,pane:"calibrators"})}function _h(t){const e="pm25"===t.data.latest.entry_type,n=t.displayField||new Tc("pm25","PM 2.5","60",t.data),[i,o]=t.data.position.coordinates,s=e?"PM 2.5":"Ozone",r=e?`<p>(${parseInt(n.updateDuration,10)} min avg)</p>`:"",a={offset:new du.Point(10,0),opacity:1},l=du.shapeMarker(du.latLng(o,i),{className:"sjvair-map-marker",color:t.markerParams.border_color,weight:t.markerParams.border_size,fillColor:t.markerParams.fill_color,fillOpacity:1,radius:t.markerParams.size,shape:t.markerParams.shape,pane:mh(t)});return l.bindTooltip(`\n <div class="is-flex is-flex-direction-row is-flex-wrap-nowrap">\n <div class="mr-2 px-1"\n style="background-color: ${t.markerParams.value_color}; color: ${nc(t.markerParams.value_color)}; border: solid ${ic(Ql(t.markerParams.value_color,.1))}; border-radius: 5px">\n <p translate="no" class="is-size-6 has-text-centered">${s}</p>\n <p translate="no" class="is-size-2 has-text-centered has-text-weight-semibold is-flex-grow-1 px-2">\n ${Math.round(+t.data.latest.value)}\n </p>\n ${r}\n </div>\n\n <div class="is-flex is-flex-direction-column">\n <p>${Cc.$prettyPrint(t.data.latest.timestamp)}</p>\n <p translate="no" class="is-size-5 has-text-weight-bold is-underlined">${t.data.name}</p>\n <p class="is-size-6">Last updated:</p>\n <p class="is-size-6">About ${t.lastUpdated}</p>\n </div>\n\n </div>\n `,a),l}function mh(t){if(!("data"in t))return"calibrators";switch(t.data.data_source.name){case"AirNow.gov":return"airNow";case"AQview":return"aqview";case"Central California Asthma Collaborative":return"sjvAirBam";case"AirGradient":case"PurpleAir":return t.data.is_sjvair?"sjvAirPurpleAir":"purpleAir";default:return"marker"}}class gh{static _current=ke();static get current(){return gh._current.value}static set current(t){gh._current.value=t}el;marker;returnPane;constructor(t){this.marker="string"==typeof t?lh.get(t):t,this.marker&&(this.returnPane=this.marker.options.pane,gh.current&&gh.current.marker!==this.marker&&gh.current.clear(),gh.current||(this.marker.remove(),ch.removeLayer(this.marker),this.marker.options.pane="selectedMarker",uh.addLayer(this.marker),this.el=this.marker.getElement(),this.el.classList.add("marker-selected"),gh.current=this))}clear(){if(gh.current){gh.current.el.classList.remove("marker-selected"),gh.current.marker.remove(),uh.removeLayer(gh.current.marker);const t=Object.keys(hh).filter(t=>t.toLowerCase()===this.returnPane.toLowerCase())[0];hh[t].model.value&&(gh.current.marker.options.pane=this.returnPane,ch.addLayer(gh.current.marker)),gh.current=void 0}}}const vh=new du.FeatureGroup,yh=Al.defineOptions({smoke:{label:"HMS Smoke",model:!0,icon:{id:"heat"}}}),bh=Mc(async t=>{const{map:e}=await $u();let n=[];e.createPane("hmssmoke").style.zIndex="601",n=await wh(),vh.addTo(e),wn(()=>yh.smoke.model.value,async t=>{t?(n.length||(n=await wh()),vh.addTo(e)):vh.remove()}),t(yh)});async function wh(){const t=await async function(){return await Zc({url:"hms/smoke"})}();return t.forEach(t=>{du.geoJson(t.geometry,{style:xh(t.density)}).addTo(vh)}),t}function xh(t){switch(t){case"light":return{color:"#bfc8c3",fillOpacity:.2};case"medium":return{color:"#757b78",fillOpacity:.3};case"heavy":return{color:"#333634",fillOpacity:.4}}}const Lh=new du.FeatureGroup,Ph=Al.defineOptions({methane:{label:"Methane Plumes",model:!1,icon:{id:"airwave"}}}),Ch=Mc(async t=>{const{map:e}=await $u();let n;e.createPane("carbon-mapper-methane").style.zIndex="602",Lh.addTo(e),wn(()=>Ph.methane.model.value,async t=>{t?(n||(n=await async function(){const t=await async function(){return await fetch("/static/monitor-map/carbon-mapper-methane-ca.geojson").then(t=>t.json())}();for(const e of t.features){du.geoJSON(e,{style:{fillColor:"#800080",color:"#301934",fillOpacity:.3,opacity:.4,weight:2}}).addTo(Lh)}return t}()),Lh.addTo(e)):Lh.remove()},{immediate:!0}),t(Ph)});function Mh(t,e){const{longitude:n,latitude:i}=t,o="lvl2evStations"===e?"light":"",s={offset:new du.Point(0,0),opacity:1,className:"leaflet-ev-tooltip"},r=du.divIcon({html:'<span translate="no" class="material-symbols-outlined">ev_station</span>',className:"leaflet-ev-icon".concat(` ${o}`),iconSize:[30,30]}),a=du.marker([i,n],{icon:r,pane:e});return a.bindPopup(`\n <p class="is-size-5 has-text-weight-bold has-text-centered has-text-white tooltip-header px-2 mb-1">${t.station_name}</p>\n\n <div class="leaflet-ev-tooltip-body p-1">\n <div class="ev-details is-flex is-align-items-center is-justify-content-space-around mb-3">\n ${function(t){return Th(t.facility_type,()=>`<span class="tag is-info">${t.facility_type}</span>`)}(t)}\n ${function(t){return Th(t.ev_network,()=>`<span class="tag is-info">${t.ev_network}</span>`)}(t)}\n </div>\n <div class="ev-details is-flex is-justify-content-space-around mb-2">\n <div class="ev-contact">\n <p>${function(t){return Th(t.station_phone,()=>`<a href="tel:+1${t.station_phone}">${t.station_phone}</a>`)}(t)}</p>\n <p>${function(t){return Th(t.street_address&&t.city&&t.state&&t.zip,()=>`\n <a href="https://maps.google.com/?q=${`${t.street_address}+${t.city},+${t.state}+${t.zip}`}" target="_blank">\n ${t.street_address}\n <br/>\n ${t.city}, ${t.state} ${t.zip}\n </a>\n `)}(t)}</p>\n\n </div>\n <div class="ev-hours mb-1">\n ${function(t){return Th(t.access_days_time,()=>{const e=t.access_days_time.includes("|")?"|":";";return t.access_days_time.split(e).map(t=>`<p>${(t=t.trim()).charAt(0).toUpperCase()+t.slice(1)}</p>`).join("")})}(t)}\n </div>\n </div>\n\n <div class="ev-access mb-1">\n ${function(t){return Th(t.access_detail_code,()=>`<p class="tag is-danger mb-2">${t.access_detail_code}</p>`)}(t)}\n ${function(t){return Th(t.cards_accepted,()=>`<div>${t.cards_accepted.split(",").map(t=>`\n <span class="tag">\n <span translate="no" class="material-symbols-outlined is-size-5">\n credit_card\n </span>\n ${t.trim()}\n </span>\n `).join("")}</div>`)}(t)}\n ${function(t){return Th(t.ev_pricing,()=>`\n <div class="ev-pricing p-1">\n ${t.ev_pricing?.split(";").map(t=>(t=t.trim()).split("and").map(t=>`<p>${t.trim()}</p>`).join("")).join("")}\n </div>\n `)}(t)}\n ${function(t){return Th(t.ev_connector_types,()=>`<div>${t.ev_connector_types.map(t=>`\n <span class="tag is-success has-text-weight-semibold">\n <span translate="no" class="material-symbols-outlined is-size-5">\n electrical_services\n </span>\n ${t.trim()}\n </span>\n `).join("")}</div>`)}(t)}\n </div>\n </div>\n `,s),a}function Th(t,e){return t?e():""}const kh=ke([]),Sh=ke([]);let Ah;async function Eh(t){return Ah||(Ah=await Tl(()=>import("./assets/BackgroundRequests-C4x4yv3l.js"),[])),{...Ah,fetchLvl2Stations:async function(){return await Oh(kh,Ah.fetchLvl2Stations)},fetchLvl3Stations:async function(){return await Oh(Sh,Ah.fetchLvl3Stations)},lvl2EVStations:kh,lvl3EVStations:Sh}}async function Oh(t,e){t.value.length||await e().then(e=>{t.value=e}).catch(()=>console.error("Failed to fetch EV charging stations."))}const zh="lvl2evStations",Ih="lvl3evStations",Bh=du.markerClusterGroup({clusterPane:zh}),Zh=du.markerClusterGroup({clusterPane:Ih}),Rh=Al.defineOptions({lvl2:{label:"Level 2",model:!1,icon:{id:"ev_station",class:"ev-icon light"}},lvl3:{label:"Level 3",model:!1,icon:{id:"ev_station",class:"ev-icon"}}}),Dh=Mc(async t=>{const[{map:e},{fetchLvl2Stations:n,fetchLvl3Stations:i,lvl2EVStations:o,lvl3EVStations:s}]=await Promise.all([$u(),Eh()]);e.createPane(zh).style.zIndex="608",e.createPane(Ih).style.zIndex="609",Bh.addTo(e),Zh.addTo(e),wn(()=>Rh.lvl2.model.value,t=>{Nh(t,o,Bh,zh,n)}),wn(()=>Rh.lvl3.model.value,t=>{Nh(t,s,Zh,Ih,i)}),t({label:"EV Stations",options:Rh})});async function Nh(t,e,n,i,o){if(t){e.value.length||await o();for(let t of e.value)n.addLayer(Mh(t,i))}else n.clearLayers()}const jh=class extends Al{options;urlTemplate;constructor(t){super(t),this.options=t.options,this.urlTemplate=t.urlTemplate}}.defineOptions({wind:{containerClass:"has-text-info",icon:{id:"air"},model:!1,label:"Wind",urlTemplate:"https://{s}.tile.openweathermap.org/map/wind/{z}/{x}/{y}.png?appid={apiKey}",options:{maxZoom:19,attribution:'Map data © <a href="http://openweathermap.org">OpenWeatherMap</a>',apiKey:"09b21cd89a07eaa465d3d9c2b2a6d0c3",opacity:.3,zIndex:12}},clouds:{containerClass:"has-text-grey-light",icon:{id:"cloud"},model:!1,label:"Clouds",urlTemplate:"https://{s}.tile.openweathermap.org/map/clouds/{z}/{x}/{y}.png?appid={apiKey}",options:{maxZoom:19,attribution:'Map data © <a href="http://openweathermap.org">OpenWeatherMap</a>',apiKey:"09b21cd89a07eaa465d3d9c2b2a6d0c3",opacity:.5,zIndex:13}}}),Fh=Mc(async t=>{const{map:e}=await $u(),n=new Map;wn(Object.values(jh).map(t=>()=>t.model.value),()=>{const t=Object.values(jh).filter(t=>!0===t.model.value&&!n.has(t.label)),i=Object.values(jh).filter(t=>!1===t.model.value&&n.has(t.label));t.forEach(t=>{const i=du.tileLayer(t.urlTemplate,t.options).addTo(e);n.set(t.label,i)}),i.forEach(t=>{n.get(t.label).remove(),n.delete(t.label)})}),t({activeOverlays:n,displayOptions:{label:"Map Overlays",options:jh}})});const Uh=class extends El{options;urlTemplate;constructor(t,e,n){super(t,e,n),this.options=n.options,this.urlTemplate=n.urlTemplate}}.defineOptions({streets:{label:"Streets",isDefault:!0,svg:"road-svg",urlTemplate:"https://api.maptiler.com/maps/streets/256/{z}/{x}/{y}.png?key={apiKey}",options:{maxZoom:19,apiKey:"1ZwL7YJSSN42A678HHPn",attribution:'<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>'}},satellite:{label:"Satellite Hybrid",urlTemplate:"https://api.maptiler.com/maps/hybrid/{z}/{x}/{y}.jpg?key={apiKey}",icon:{id:"satellite_alt"},containerClass:"has-text-silver",options:{maxZoom:19,apiKey:"1ZwL7YJSSN42A678HHPn",attribution:'<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>'}},topographique:{label:"Topographique",icon:{id:"landscape"},containerClass:"has-text-success",urlTemplate:"https://api.maptiler.com/maps/topographique/{z}/{x}/{y}.png?key={apiKey}",options:{maxZoom:19,apiKey:"1ZwL7YJSSN42A678HHPn",attribution:'<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>'}}}),Gh=Mc(async t=>{const[{map:e},{activeOverlays:n}]=await Promise.all([$u(),Fh()]),{streets:i}=Uh;let o=du.tileLayer(i.urlTemplate,i.options).addTo(e);wn(()=>Object.values(Uh)[0].model.value,t=>{window.requestAnimationFrame(()=>{const i=Uh[t];if(o.remove(),o=du.tileLayer(i.urlTemplate,i.options).addTo(e),n.size)for(let t of n.values())t.redraw()})}),t({label:"Map Tiles",options:Uh})}),Hh={class:"dropdown-trigger"},$h={class:"icon is-small"},Vh={class:"dropdown-menu",id:"dropdown-display",role:"menu"},Wh={class:"dropdown-content"},qh={class:"columns"},Yh={class:"column"},Kh={class:"control is-unselectable display-item is-flex is-flex-direction-column"},Jh={class:"radio option-label has-text-black pollutant-label"},Xh={class:"radio option-label has-text-black pollutant-label"},Qh={class:"column"},td=Kn({__name:"DisplayOptions",async setup(t){let e,n;const i=ke(!1),{displayOptions:o}=([e,n]=Bi(()=>dh()),e=await e,n(),e),s=([e,n]=Bi(()=>Dh()),e=await e,n(),e),r=([e,n]=Bi(()=>bh()),e=await e,n(),e),a=([e,n]=Bi(()=>yu()),e=await e,n(),e),l=([e,n]=Bi(()=>Ch()),e=await e,n(),e),c=([e,n]=Bi(()=>Gh()),e=await e,n(),e),u={label:"Map Layers",options:{...r,...a,...l}},h=Ss(()=>{if("pm25"===Jc.value)return o;{const{label:t,options:{SJVAirPurpleAir:e,PurpleAir:n,displayInactive:i,PurpleAirInside:s,...r}}=o;return{label:t,options:r}}});function d(){i.value=!i.value}function p(){i.value=!1}return wn(Jc,async()=>{await iu()}),(t,e)=>mn((Ho(),Yo("div",{class:$(["dropdown",i.value?"is-active":""])},[es("div",Hh,[es("button",{class:"button","aria-haspopup":"true","aria-controls":"dropdown-display",onClick:d},[e[2]||(e[2]=es("span",{class:"icon"},[es("span",{translate:"no",class:"material-symbols-outlined"}," settings ")],-1)),e[3]||(e[3]=es("span",{class:"is-size-7"},"Display Options",-1)),es("span",$h,[es("span",{class:$(["fas",i.value?"fa-angle-up":"fa-angle-down"]),"aria-hidden":"true"},null,2)])])]),es("div",Vh,[es("div",Wh,[es("div",qh,[es("div",Yh,[es("div",Kh,[e[6]||(e[6]=es("h3",{class:"display-group-label"},"Pollutant",-1)),es("label",Jh,[mn(es("input",{type:"radio",name:"pollutant",value:"pm25","onUpdate:modelValue":e[0]||(e[0]=t=>Te(Jc)?Jc.value=t:null)},null,512),[[Er,Oe(Jc)]]),e[4]||(e[4]=ss(" PM 2.5 ",-1))]),es("label",Xh,[mn(es("input",{type:"radio",name:"pollutant",value:"o3","onUpdate:modelValue":e[1]||(e[1]=t=>Te(Jc)?Jc.value=t:null)},null,512),[[Er,Oe(Jc)]]),e[5]||(e[5]=ss(" Ozone ",-1))])]),ns(Dl,{props:h.value},null,8,["props"])]),es("div",Qh,[ns(Dl,{props:Oe(s)},null,8,["props"]),ns(Dl,{props:u}),ns(Dl,{props:Oe(c)},null,8,["props"])])])])])],2)),[[Oe(kl),p]])}}),ed=Pl(td,[["__scopeId","data-v-e8813d54"]]),nd=Kn({__name:"MonitorMap",async setup(t){let e,n,i;const{updateMonitors:o}=([e,n]=Bi(()=>eu()),e=await e,n(),e);return hi(async()=>{(!i||i<=0)&&(i=window.setInterval(async()=>await o(),12e4))}),_i(()=>{clearInterval(i),i=0}),(t,e)=>(Ho(),Yo(Do,null,[ns(Oe(th)),ns(Oe(ed),{class:"display-options"}),ns(Oe(xl),null,{default:_n(({Component:t})=>[t?(Ho(),Ko(zo,{key:0},{fallback:_n(()=>[...e[0]||(e[0]=[es("div",null,null,-1)])]),default:_n(()=>[(Ho(),Ko(xi(t)))]),_:2},1024)):as("",!0)]),_:1})],64))}}),id=Pl(nd,[["__scopeId","data-v-1b335598"]]),od=()=>Tl(()=>import("./assets/MonitorDetails-iQQ4NK2T.js"),__vite__mapDeps([0,1])),sd=function(t){const e=ul(t.routes,t),n=t.parseQuery||Ua,i=t.stringifyQuery||Ga,o=t.history,s=$a(),r=$a(),a=$a(),l=Se(Ea);let c=Ea;Ur&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=$r.bind(null,t=>""+t),h=$r.bind(null,xa),d=$r.bind(null,La);function p(t,s){if(s=Hr({},s||l.value),"string"==typeof t){const i=Ca(n,t,s.path),r=e.resolve({path:i.path},s),a=o.createHref(i.fullPath);return Hr(i,r,{params:d(r.params),hash:La(i.hash),redirectedFrom:void 0,href:a})}let r;if(null!=t.path)r=Hr({},t,{path:Ca(n,t.path,s.path).path});else{const e=Hr({},t.params);for(const t in e)null==e[t]&&delete e[t];r=Hr({},t,{params:h(e)}),s.params=h(s.params)}const a=e.resolve(r,s),c=t.hash||"";a.params=u(d(a.params));const p=function(t,e){const n=e.query?t(e.query):"";return e.path+(n&&"?")+n+(e.hash||"")}(i,Hr({},t,{hash:(f=c,ya(f).replace(_a,"{").replace(ga,"}").replace(pa,"^")),path:a.path}));var f;const _=o.createHref(p);return Hr({fullPath:p,hash:c,query:i===Ga?Ha(t.query):t.query||{}},a,{redirectedFrom:void 0,href:_})}function f(t){return"string"==typeof t?Ca(n,t,l.value.path):Hr({},t)}function _(t,e){if(c!==t)return Jr(Yr.NAVIGATION_CANCELLED,{from:e,to:t})}function m(t){return v(t)}function g(t,e){const n=t.matched[t.matched.length-1];if(n&&n.redirect){const{redirect:i}=n;let o="function"==typeof i?i(t,e):i;return"string"==typeof o&&(o=o.includes("?")||o.includes("#")?o=f(o):{path:o},o.params={}),Hr({query:t.query,hash:t.hash,params:null!=o.path?{}:t.params},o)}}function v(t,e){const n=c=p(t),o=l.value,s=t.state,r=t.force,a=!0===t.replace,u=g(n,o);if(u)return v(Hr(f(u),{state:"object"==typeof u?Hr({},s,u.state):s,force:r,replace:a}),e||n);const h=n;let d;return h.redirectedFrom=e,!r&&function(t,e,n){const i=e.matched.length-1,o=n.matched.length-1;return i>-1&&i===o&&Ta(e.matched[i],n.matched[o])&&ka(e.params,n.params)&&t(e.query)===t(n.query)&&e.hash===n.hash}(i,o,n)&&(d=Jr(Yr.NAVIGATION_DUPLICATED,{to:h,from:o}),E(o,o,!0,!1)),(d?Promise.resolve(d):w(h,o)).catch(t=>Xr(t)?Xr(t,Yr.NAVIGATION_GUARD_REDIRECT)?t:A(t):S(t,h,o)).then(t=>{if(t){if(Xr(t,Yr.NAVIGATION_GUARD_REDIRECT))return v(Hr({replace:a},f(t.to),{state:"object"==typeof t.to?Hr({},s,t.to.state):s,force:r}),e||h)}else t=L(h,o,!0,a,s);return x(h,o,t),t})}function y(t,e){const n=_(t,e);return n?Promise.reject(n):Promise.resolve()}function b(t){const e=I.values().next().value;return e&&"function"==typeof e.runWithContext?e.runWithContext(t):t()}function w(t,e){let n;const[i,o,a]=function(t,e){const n=[],i=[],o=[],s=Math.max(e.matched.length,t.matched.length);for(let r=0;r<s;r++){const s=e.matched[r];s&&(t.matched.find(t=>Ta(t,s))?i.push(s):n.push(s));const a=t.matched[r];a&&(e.matched.find(t=>Ta(t,a))||o.push(a))}return[n,i,o]}
|
|
38
|
+
*/var hu=(cu||(cu=1,function(t){var e="1.9.4";function n(t){var e,n,i,o;for(n=1,i=arguments.length;n<i;n++)for(e in o=arguments[n])t[e]=o[e];return t}var i=Object.create||function(){function t(){}return function(e){return t.prototype=e,new t}}();function o(t,e){var n=Array.prototype.slice;if(t.bind)return t.bind.apply(t,n.call(arguments,1));var i=n.call(arguments,2);return function(){return t.apply(e,i.length?i.concat(n.call(arguments)):arguments)}}var s=0;function r(t){return"_leaflet_id"in t||(t._leaflet_id=++s),t._leaflet_id}function a(t,e,n){var i,o,s,r;return r=function(){i=!1,o&&(s.apply(n,o),o=!1)},s=function(){i?o=arguments:(t.apply(n,arguments),setTimeout(r,e),i=!0)},s}function l(t,e,n){var i=e[1],o=e[0],s=i-o;return t===i&&n?t:((t-o)%s+s)%s+o}function c(){return!1}function u(t,e){if(!1===e)return t;var n=Math.pow(10,void 0===e?6:e);return Math.round(t*n)/n}function h(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function d(t){return h(t).split(/\s+/)}function p(t,e){for(var n in Object.prototype.hasOwnProperty.call(t,"options")||(t.options=t.options?i(t.options):{}),e)t.options[n]=e[n];return t.options}function f(t,e,n){var i=[];for(var o in t)i.push(encodeURIComponent(n?o.toUpperCase():o)+"="+encodeURIComponent(t[o]));return(e&&-1!==e.indexOf("?")?"&":"?")+i.join("&")}var _=/\{ *([\w_ -]+) *\}/g;function m(t,e){return t.replace(_,function(t,n){var i=e[n];if(void 0===i)throw new Error("No value provided for variable "+t);return"function"==typeof i&&(i=i(e)),i})}var g=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)};function v(t,e){for(var n=0;n<t.length;n++)if(t[n]===e)return n;return-1}var y="data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=";function b(t){return window["webkit"+t]||window["moz"+t]||window["ms"+t]}var w=0;function x(t){var e=+new Date,n=Math.max(0,16-(e-w));return w=e+n,window.setTimeout(t,n)}var P=window.requestAnimationFrame||b("RequestAnimationFrame")||x,C=window.cancelAnimationFrame||b("CancelAnimationFrame")||b("CancelRequestAnimationFrame")||function(t){window.clearTimeout(t)};function M(t,e,n){if(!n||P!==x)return P.call(window,o(t,e));t.call(e)}function T(t){t&&C.call(window,t)}var k={__proto__:null,extend:n,create:i,bind:o,get lastId(){return s},stamp:r,throttle:a,wrapNum:l,falseFn:c,formatNum:u,trim:h,splitWords:d,setOptions:p,getParamString:f,template:m,isArray:g,indexOf:v,emptyImageUrl:y,requestFn:P,cancelFn:C,requestAnimFrame:M,cancelAnimFrame:T};function S(){}function A(t){if("undefined"!=typeof L&&L&&L.Mixin){t=g(t)?t:[t];for(var e=0;e<t.length;e++)t[e]===L.Mixin.Events&&console.warn("Deprecated include of L.Mixin.Events: this property will be removed in future releases, please inherit from L.Evented instead.",(new Error).stack)}}S.extend=function(t){var e=function(){p(this),this.initialize&&this.initialize.apply(this,arguments),this.callInitHooks()},o=e.__super__=this.prototype,s=i(o);for(var r in s.constructor=e,e.prototype=s,this)Object.prototype.hasOwnProperty.call(this,r)&&"prototype"!==r&&"__super__"!==r&&(e[r]=this[r]);return t.statics&&n(e,t.statics),t.includes&&(A(t.includes),n.apply(null,[s].concat(t.includes))),n(s,t),delete s.statics,delete s.includes,s.options&&(s.options=o.options?i(o.options):{},n(s.options,t.options)),s._initHooks=[],s.callInitHooks=function(){if(!this._initHooksCalled){o.callInitHooks&&o.callInitHooks.call(this),this._initHooksCalled=!0;for(var t=0,e=s._initHooks.length;t<e;t++)s._initHooks[t].call(this)}},e},S.include=function(t){var e=this.prototype.options;return n(this.prototype,t),t.options&&(this.prototype.options=e,this.mergeOptions(t.options)),this},S.mergeOptions=function(t){return n(this.prototype.options,t),this},S.addInitHook=function(t){var e=Array.prototype.slice.call(arguments,1),n="function"==typeof t?t:function(){this[t].apply(this,e)};return this.prototype._initHooks=this.prototype._initHooks||[],this.prototype._initHooks.push(n),this};var E={on:function(t,e,n){if("object"==typeof t)for(var i in t)this._on(i,t[i],e);else for(var o=0,s=(t=d(t)).length;o<s;o++)this._on(t[o],e,n);return this},off:function(t,e,n){if(arguments.length)if("object"==typeof t)for(var i in t)this._off(i,t[i],e);else{t=d(t);for(var o=1===arguments.length,s=0,r=t.length;s<r;s++)o?this._off(t[s]):this._off(t[s],e,n)}else delete this._events;return this},_on:function(t,e,n,i){if("function"==typeof e){if(!1===this._listens(t,e,n)){n===this&&(n=void 0);var o={fn:e,ctx:n};i&&(o.once=!0),this._events=this._events||{},this._events[t]=this._events[t]||[],this._events[t].push(o)}}else console.warn("wrong listener type: "+typeof e)},_off:function(t,e,n){var i,o,s;if(this._events&&(i=this._events[t]))if(1!==arguments.length)if("function"==typeof e){var r=this._listens(t,e,n);if(!1!==r){var a=i[r];this._firingCount&&(a.fn=c,this._events[t]=i=i.slice()),i.splice(r,1)}}else console.warn("wrong listener type: "+typeof e);else{if(this._firingCount)for(o=0,s=i.length;o<s;o++)i[o].fn=c;delete this._events[t]}},fire:function(t,e,i){if(!this.listens(t,i))return this;var o=n({},e,{type:t,target:this,sourceTarget:e&&e.sourceTarget||this});if(this._events){var s=this._events[t];if(s){this._firingCount=this._firingCount+1||1;for(var r=0,a=s.length;r<a;r++){var l=s[r],c=l.fn;l.once&&this.off(t,c,l.ctx),c.call(l.ctx||this,o)}this._firingCount--}}return i&&this._propagateEvent(o),this},listens:function(t,e,n,i){"string"!=typeof t&&console.warn('"string" type argument expected');var o=e;"function"!=typeof e&&(i=!!e,o=void 0,n=void 0);var s=this._events&&this._events[t];if(s&&s.length&&!1!==this._listens(t,o,n))return!0;if(i)for(var r in this._eventParents)if(this._eventParents[r].listens(t,e,n,i))return!0;return!1},_listens:function(t,e,n){if(!this._events)return!1;var i=this._events[t]||[];if(!e)return!!i.length;n===this&&(n=void 0);for(var o=0,s=i.length;o<s;o++)if(i[o].fn===e&&i[o].ctx===n)return o;return!1},once:function(t,e,n){if("object"==typeof t)for(var i in t)this._on(i,t[i],e,!0);else for(var o=0,s=(t=d(t)).length;o<s;o++)this._on(t[o],e,n,!0);return this},addEventParent:function(t){return this._eventParents=this._eventParents||{},this._eventParents[r(t)]=t,this},removeEventParent:function(t){return this._eventParents&&delete this._eventParents[r(t)],this},_propagateEvent:function(t){for(var e in this._eventParents)this._eventParents[e].fire(t.type,n({layer:t.target,propagatedFrom:t.target},t),!0)}};E.addEventListener=E.on,E.removeEventListener=E.clearAllEventListeners=E.off,E.addOneTimeEventListener=E.once,E.fireEvent=E.fire,E.hasEventListeners=E.listens;var O=S.extend(E);function z(t,e,n){this.x=n?Math.round(t):t,this.y=n?Math.round(e):e}var I=Math.trunc||function(t){return t>0?Math.floor(t):Math.ceil(t)};function B(t,e,n){return t instanceof z?t:g(t)?new z(t[0],t[1]):null==t?t:"object"==typeof t&&"x"in t&&"y"in t?new z(t.x,t.y):new z(t,e,n)}function Z(t,e){if(t)for(var n=e?[t,e]:t,i=0,o=n.length;i<o;i++)this.extend(n[i])}function R(t,e){return!t||t instanceof Z?t:new Z(t,e)}function D(t,e){if(t)for(var n=e?[t,e]:t,i=0,o=n.length;i<o;i++)this.extend(n[i])}function N(t,e){return t instanceof D?t:new D(t,e)}function j(t,e,n){if(isNaN(t)||isNaN(e))throw new Error("Invalid LatLng object: ("+t+", "+e+")");this.lat=+t,this.lng=+e,void 0!==n&&(this.alt=+n)}function F(t,e,n){return t instanceof j?t:g(t)&&"object"!=typeof t[0]?3===t.length?new j(t[0],t[1],t[2]):2===t.length?new j(t[0],t[1]):null:null==t?t:"object"==typeof t&&"lat"in t?new j(t.lat,"lng"in t?t.lng:t.lon,t.alt):void 0===e?null:new j(t,e,n)}z.prototype={clone:function(){return new z(this.x,this.y)},add:function(t){return this.clone()._add(B(t))},_add:function(t){return this.x+=t.x,this.y+=t.y,this},subtract:function(t){return this.clone()._subtract(B(t))},_subtract:function(t){return this.x-=t.x,this.y-=t.y,this},divideBy:function(t){return this.clone()._divideBy(t)},_divideBy:function(t){return this.x/=t,this.y/=t,this},multiplyBy:function(t){return this.clone()._multiplyBy(t)},_multiplyBy:function(t){return this.x*=t,this.y*=t,this},scaleBy:function(t){return new z(this.x*t.x,this.y*t.y)},unscaleBy:function(t){return new z(this.x/t.x,this.y/t.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=I(this.x),this.y=I(this.y),this},distanceTo:function(t){var e=(t=B(t)).x-this.x,n=t.y-this.y;return Math.sqrt(e*e+n*n)},equals:function(t){return(t=B(t)).x===this.x&&t.y===this.y},contains:function(t){return t=B(t),Math.abs(t.x)<=Math.abs(this.x)&&Math.abs(t.y)<=Math.abs(this.y)},toString:function(){return"Point("+u(this.x)+", "+u(this.y)+")"}},Z.prototype={extend:function(t){var e,n;if(!t)return this;if(t instanceof z||"number"==typeof t[0]||"x"in t)e=n=B(t);else if(e=(t=R(t)).min,n=t.max,!e||!n)return this;return this.min||this.max?(this.min.x=Math.min(e.x,this.min.x),this.max.x=Math.max(n.x,this.max.x),this.min.y=Math.min(e.y,this.min.y),this.max.y=Math.max(n.y,this.max.y)):(this.min=e.clone(),this.max=n.clone()),this},getCenter:function(t){return B((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,t)},getBottomLeft:function(){return B(this.min.x,this.max.y)},getTopRight:function(){return B(this.max.x,this.min.y)},getTopLeft:function(){return this.min},getBottomRight:function(){return this.max},getSize:function(){return this.max.subtract(this.min)},contains:function(t){var e,n;return(t="number"==typeof t[0]||t instanceof z?B(t):R(t))instanceof Z?(e=t.min,n=t.max):e=n=t,e.x>=this.min.x&&n.x<=this.max.x&&e.y>=this.min.y&&n.y<=this.max.y},intersects:function(t){t=R(t);var e=this.min,n=this.max,i=t.min,o=t.max,s=o.x>=e.x&&i.x<=n.x,r=o.y>=e.y&&i.y<=n.y;return s&&r},overlaps:function(t){t=R(t);var e=this.min,n=this.max,i=t.min,o=t.max,s=o.x>e.x&&i.x<n.x,r=o.y>e.y&&i.y<n.y;return s&&r},isValid:function(){return!(!this.min||!this.max)},pad:function(t){var e=this.min,n=this.max,i=Math.abs(e.x-n.x)*t,o=Math.abs(e.y-n.y)*t;return R(B(e.x-i,e.y-o),B(n.x+i,n.y+o))},equals:function(t){return!!t&&(t=R(t),this.min.equals(t.getTopLeft())&&this.max.equals(t.getBottomRight()))}},D.prototype={extend:function(t){var e,n,i=this._southWest,o=this._northEast;if(t instanceof j)e=t,n=t;else{if(!(t instanceof D))return t?this.extend(F(t)||N(t)):this;if(e=t._southWest,n=t._northEast,!e||!n)return this}return i||o?(i.lat=Math.min(e.lat,i.lat),i.lng=Math.min(e.lng,i.lng),o.lat=Math.max(n.lat,o.lat),o.lng=Math.max(n.lng,o.lng)):(this._southWest=new j(e.lat,e.lng),this._northEast=new j(n.lat,n.lng)),this},pad:function(t){var e=this._southWest,n=this._northEast,i=Math.abs(e.lat-n.lat)*t,o=Math.abs(e.lng-n.lng)*t;return new D(new j(e.lat-i,e.lng-o),new j(n.lat+i,n.lng+o))},getCenter:function(){return new j((this._southWest.lat+this._northEast.lat)/2,(this._southWest.lng+this._northEast.lng)/2)},getSouthWest:function(){return this._southWest},getNorthEast:function(){return this._northEast},getNorthWest:function(){return new j(this.getNorth(),this.getWest())},getSouthEast:function(){return new j(this.getSouth(),this.getEast())},getWest:function(){return this._southWest.lng},getSouth:function(){return this._southWest.lat},getEast:function(){return this._northEast.lng},getNorth:function(){return this._northEast.lat},contains:function(t){t="number"==typeof t[0]||t instanceof j||"lat"in t?F(t):N(t);var e,n,i=this._southWest,o=this._northEast;return t instanceof D?(e=t.getSouthWest(),n=t.getNorthEast()):e=n=t,e.lat>=i.lat&&n.lat<=o.lat&&e.lng>=i.lng&&n.lng<=o.lng},intersects:function(t){t=N(t);var e=this._southWest,n=this._northEast,i=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>=e.lat&&i.lat<=n.lat,r=o.lng>=e.lng&&i.lng<=n.lng;return s&&r},overlaps:function(t){t=N(t);var e=this._southWest,n=this._northEast,i=t.getSouthWest(),o=t.getNorthEast(),s=o.lat>e.lat&&i.lat<n.lat,r=o.lng>e.lng&&i.lng<n.lng;return s&&r},toBBoxString:function(){return[this.getWest(),this.getSouth(),this.getEast(),this.getNorth()].join(",")},equals:function(t,e){return!!t&&(t=N(t),this._southWest.equals(t.getSouthWest(),e)&&this._northEast.equals(t.getNorthEast(),e))},isValid:function(){return!(!this._southWest||!this._northEast)}},j.prototype={equals:function(t,e){return!!t&&(t=F(t),Math.max(Math.abs(this.lat-t.lat),Math.abs(this.lng-t.lng))<=(void 0===e?1e-9:e))},toString:function(t){return"LatLng("+u(this.lat,t)+", "+u(this.lng,t)+")"},distanceTo:function(t){return H.distance(this,F(t))},wrap:function(){return H.wrapLatLng(this)},toBounds:function(t){var e=180*t/40075017,n=e/Math.cos(Math.PI/180*this.lat);return N([this.lat-e,this.lng-n],[this.lat+e,this.lng+n])},clone:function(){return new j(this.lat,this.lng,this.alt)}};var U,G={latLngToPoint:function(t,e){var n=this.projection.project(t),i=this.scale(e);return this.transformation._transform(n,i)},pointToLatLng:function(t,e){var n=this.scale(e),i=this.transformation.untransform(t,n);return this.projection.unproject(i)},project:function(t){return this.projection.project(t)},unproject:function(t){return this.projection.unproject(t)},scale:function(t){return 256*Math.pow(2,t)},zoom:function(t){return Math.log(t/256)/Math.LN2},getProjectedBounds:function(t){if(this.infinite)return null;var e=this.projection.bounds,n=this.scale(t);return new Z(this.transformation.transform(e.min,n),this.transformation.transform(e.max,n))},infinite:!1,wrapLatLng:function(t){var e=this.wrapLng?l(t.lng,this.wrapLng,!0):t.lng;return new j(this.wrapLat?l(t.lat,this.wrapLat,!0):t.lat,e,t.alt)},wrapLatLngBounds:function(t){var e=t.getCenter(),n=this.wrapLatLng(e),i=e.lat-n.lat,o=e.lng-n.lng;if(0===i&&0===o)return t;var s=t.getSouthWest(),r=t.getNorthEast();return new D(new j(s.lat-i,s.lng-o),new j(r.lat-i,r.lng-o))}},H=n({},G,{wrapLng:[-180,180],R:6371e3,distance:function(t,e){var n=Math.PI/180,i=t.lat*n,o=e.lat*n,s=Math.sin((e.lat-t.lat)*n/2),r=Math.sin((e.lng-t.lng)*n/2),a=s*s+Math.cos(i)*Math.cos(o)*r*r,l=2*Math.atan2(Math.sqrt(a),Math.sqrt(1-a));return this.R*l}}),$=6378137,V={R:$,MAX_LATITUDE:85.0511287798,project:function(t){var e=Math.PI/180,n=this.MAX_LATITUDE,i=Math.max(Math.min(n,t.lat),-n),o=Math.sin(i*e);return new z(this.R*t.lng*e,this.R*Math.log((1+o)/(1-o))/2)},unproject:function(t){var e=180/Math.PI;return new j((2*Math.atan(Math.exp(t.y/this.R))-Math.PI/2)*e,t.x*e/this.R)},bounds:(U=$*Math.PI,new Z([-U,-U],[U,U]))};function W(t,e,n,i){if(g(t))return this._a=t[0],this._b=t[1],this._c=t[2],void(this._d=t[3]);this._a=t,this._b=e,this._c=n,this._d=i}function q(t,e,n,i){return new W(t,e,n,i)}W.prototype={transform:function(t,e){return this._transform(t.clone(),e)},_transform:function(t,e){return e=e||1,t.x=e*(this._a*t.x+this._b),t.y=e*(this._c*t.y+this._d),t},untransform:function(t,e){return e=e||1,new z((t.x/e-this._b)/this._a,(t.y/e-this._d)/this._c)}};var Y=n({},H,{code:"EPSG:3857",projection:V,transformation:function(){var t=.5/(Math.PI*V.R);return q(t,.5,-t,.5)}()}),K=n({},Y,{code:"EPSG:900913"});function J(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}function X(t,e){var n,i,o,s,r,a,l="";for(n=0,o=t.length;n<o;n++){for(i=0,s=(r=t[n]).length;i<s;i++)l+=(i?"L":"M")+(a=r[i]).x+" "+a.y;l+=e?Dt.svg?"z":"x":""}return l||"M0 0"}var Q,tt=document.documentElement.style,et="ActiveXObject"in window,nt=et&&!document.addEventListener,it="msLaunchUri"in navigator&&!("documentMode"in document),ot=Rt("webkit"),st=Rt("android"),rt=Rt("android 2")||Rt("android 3"),at=parseInt(/WebKit\/([0-9]+)|$/.exec(navigator.userAgent)[1],10),lt=st&&Rt("Google")&&at<537&&!("AudioNode"in window),ct=!!window.opera,ut=!it&&Rt("chrome"),ht=Rt("gecko")&&!ot&&!ct&&!et,dt=!ut&&Rt("safari"),pt=Rt("phantom"),ft="OTransition"in tt,_t=0===navigator.platform.indexOf("Win"),mt=et&&"transition"in tt,gt="WebKitCSSMatrix"in window&&"m11"in new window.WebKitCSSMatrix&&!rt,vt="MozPerspective"in tt,yt=!window.L_DISABLE_3D&&(mt||gt||vt)&&!ft&&!pt,bt="undefined"!=typeof orientation||Rt("mobile"),wt=bt&&ot,xt=bt&>,Lt=!window.PointerEvent&&window.MSPointerEvent,Pt=!(!window.PointerEvent&&!Lt),Ct="ontouchstart"in window||!!window.TouchEvent,Mt=!window.L_NO_TOUCH&&(Ct||Pt),Tt=bt&&ct,kt=bt&&ht,St=(window.devicePixelRatio||window.screen.deviceXDPI/window.screen.logicalXDPI)>1,At=function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("testPassiveEventSupport",c,e),window.removeEventListener("testPassiveEventSupport",c,e)}catch(vc){}return t}(),Et=!!document.createElement("canvas").getContext,Ot=!(!document.createElementNS||!J("svg").createSVGRect),zt=!!Ot&&((Q=document.createElement("div")).innerHTML="<svg/>","http://www.w3.org/2000/svg"===(Q.firstChild&&Q.firstChild.namespaceURI)),It=!Ot&&function(){try{var t=document.createElement("div");t.innerHTML='<v:shape adj="1"/>';var e=t.firstChild;return e.style.behavior="url(#default#VML)",e&&"object"==typeof e.adj}catch(vc){return!1}}(),Bt=0===navigator.platform.indexOf("Mac"),Zt=0===navigator.platform.indexOf("Linux");function Rt(t){return navigator.userAgent.toLowerCase().indexOf(t)>=0}var Dt={ie:et,ielt9:nt,edge:it,webkit:ot,android:st,android23:rt,androidStock:lt,opera:ct,chrome:ut,gecko:ht,safari:dt,phantom:pt,opera12:ft,win:_t,ie3d:mt,webkit3d:gt,gecko3d:vt,any3d:yt,mobile:bt,mobileWebkit:wt,mobileWebkit3d:xt,msPointer:Lt,pointer:Pt,touch:Mt,touchNative:Ct,mobileOpera:Tt,mobileGecko:kt,retina:St,passiveEvents:At,canvas:Et,svg:Ot,vml:It,inlineSvg:zt,mac:Bt,linux:Zt},Nt=Dt.msPointer?"MSPointerDown":"pointerdown",jt=Dt.msPointer?"MSPointerMove":"pointermove",Ft=Dt.msPointer?"MSPointerUp":"pointerup",Ut=Dt.msPointer?"MSPointerCancel":"pointercancel",Gt={touchstart:Nt,touchmove:jt,touchend:Ft,touchcancel:Ut},Ht={touchstart:te,touchmove:Qt,touchend:Qt,touchcancel:Qt},$t={},Vt=!1;function Wt(t,e,n){return"touchstart"===e&&Xt(),Ht[e]?(n=Ht[e].bind(this,n),t.addEventListener(Gt[e],n,!1),n):(console.warn("wrong event specified:",e),c)}function qt(t,e,n){Gt[e]?t.removeEventListener(Gt[e],n,!1):console.warn("wrong event specified:",e)}function Yt(t){$t[t.pointerId]=t}function Kt(t){$t[t.pointerId]&&($t[t.pointerId]=t)}function Jt(t){delete $t[t.pointerId]}function Xt(){Vt||(document.addEventListener(Nt,Yt,!0),document.addEventListener(jt,Kt,!0),document.addEventListener(Ft,Jt,!0),document.addEventListener(Ut,Jt,!0),Vt=!0)}function Qt(t,e){if(e.pointerType!==(e.MSPOINTER_TYPE_MOUSE||"mouse")){for(var n in e.touches=[],$t)e.touches.push($t[n]);e.changedTouches=[e],t(e)}}function te(t,e){e.MSPOINTER_TYPE_TOUCH&&e.pointerType===e.MSPOINTER_TYPE_TOUCH&&Ye(e),Qt(t,e)}function ee(t){var e,n,i={};for(n in t)e=t[n],i[n]=e&&e.bind?e.bind(t):e;return t=i,i.type="dblclick",i.detail=2,i.isTrusted=!1,i._simulated=!0,i}var ne=200;function ie(t,e){t.addEventListener("dblclick",e);var n,i=0;function o(t){if(1===t.detail){if("mouse"!==t.pointerType&&(!t.sourceCapabilities||t.sourceCapabilities.firesTouchEvents)){var o=Je(t);if(!o.some(function(t){return t instanceof HTMLLabelElement&&t.attributes.for})||o.some(function(t){return t instanceof HTMLInputElement||t instanceof HTMLSelectElement})){var s=Date.now();s-i<=ne?2===++n&&e(ee(t)):n=1,i=s}}}else n=t.detail}return t.addEventListener("click",o),{dblclick:e,simDblclick:o}}function oe(t,e){t.removeEventListener("dblclick",e.dblclick),t.removeEventListener("click",e.simDblclick)}var se,re,ae,le,ce,ue=Te(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),he=Te(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),de="webkitTransition"===he||"OTransition"===he?he+"End":"transitionend";function pe(t){return"string"==typeof t?document.getElementById(t):t}function fe(t,e){var n=t.style[e]||t.currentStyle&&t.currentStyle[e];if((!n||"auto"===n)&&document.defaultView){var i=document.defaultView.getComputedStyle(t,null);n=i?i[e]:null}return"auto"===n?null:n}function _e(t,e,n){var i=document.createElement(t);return i.className=e||"",n&&n.appendChild(i),i}function me(t){var e=t.parentNode;e&&e.removeChild(t)}function ge(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function ve(t){var e=t.parentNode;e&&e.lastChild!==t&&e.appendChild(t)}function ye(t){var e=t.parentNode;e&&e.firstChild!==t&&e.insertBefore(t,e.firstChild)}function be(t,e){if(void 0!==t.classList)return t.classList.contains(e);var n=Pe(t);return n.length>0&&new RegExp("(^|\\s)"+e+"(\\s|$)").test(n)}function we(t,e){if(void 0!==t.classList)for(var n=d(e),i=0,o=n.length;i<o;i++)t.classList.add(n[i]);else if(!be(t,e)){var s=Pe(t);Le(t,(s?s+" ":"")+e)}}function xe(t,e){void 0!==t.classList?t.classList.remove(e):Le(t,h((" "+Pe(t)+" ").replace(" "+e+" "," ")))}function Le(t,e){void 0===t.className.baseVal?t.className=e:t.className.baseVal=e}function Pe(t){return t.correspondingElement&&(t=t.correspondingElement),void 0===t.className.baseVal?t.className:t.className.baseVal}function Ce(t,e){"opacity"in t.style?t.style.opacity=e:"filter"in t.style&&Me(t,e)}function Me(t,e){var n=!1,i="DXImageTransform.Microsoft.Alpha";try{n=t.filters.item(i)}catch(vc){if(1===e)return}e=Math.round(100*e),n?(n.Enabled=100!==e,n.Opacity=e):t.style.filter+=" progid:"+i+"(opacity="+e+")"}function Te(t){for(var e=document.documentElement.style,n=0;n<t.length;n++)if(t[n]in e)return t[n];return!1}function ke(t,e,n){var i=e||new z(0,0);t.style[ue]=(Dt.ie3d?"translate("+i.x+"px,"+i.y+"px)":"translate3d("+i.x+"px,"+i.y+"px,0)")+(n?" scale("+n+")":"")}function Se(t,e){t._leaflet_pos=e,Dt.any3d?ke(t,e):(t.style.left=e.x+"px",t.style.top=e.y+"px")}function Ae(t){return t._leaflet_pos||new z(0,0)}if("onselectstart"in document)se=function(){Ne(window,"selectstart",Ye)},re=function(){Fe(window,"selectstart",Ye)};else{var Ee=Te(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]);se=function(){if(Ee){var t=document.documentElement.style;ae=t[Ee],t[Ee]="none"}},re=function(){Ee&&(document.documentElement.style[Ee]=ae,ae=void 0)}}function Oe(){Ne(window,"dragstart",Ye)}function ze(){Fe(window,"dragstart",Ye)}function Ie(t){for(;-1===t.tabIndex;)t=t.parentNode;t.style&&(Be(),le=t,ce=t.style.outlineStyle,t.style.outlineStyle="none",Ne(window,"keydown",Be))}function Be(){le&&(le.style.outlineStyle=ce,le=void 0,ce=void 0,Fe(window,"keydown",Be))}function Ze(t){do{t=t.parentNode}while(!(t.offsetWidth&&t.offsetHeight||t===document.body));return t}function Re(t){var e=t.getBoundingClientRect();return{x:e.width/t.offsetWidth||1,y:e.height/t.offsetHeight||1,boundingClientRect:e}}var De={__proto__:null,TRANSFORM:ue,TRANSITION:he,TRANSITION_END:de,get:pe,getStyle:fe,create:_e,remove:me,empty:ge,toFront:ve,toBack:ye,hasClass:be,addClass:we,removeClass:xe,setClass:Le,getClass:Pe,setOpacity:Ce,testProp:Te,setTransform:ke,setPosition:Se,getPosition:Ae,get disableTextSelection(){return se},get enableTextSelection(){return re},disableImageDrag:Oe,enableImageDrag:ze,preventOutline:Ie,restoreOutline:Be,getSizedParentNode:Ze,getScale:Re};function Ne(t,e,n,i){if(e&&"object"==typeof e)for(var o in e)He(t,o,e[o],n);else for(var s=0,r=(e=d(e)).length;s<r;s++)He(t,e[s],n,i);return this}var je="_leaflet_events";function Fe(t,e,n,i){if(1===arguments.length)Ue(t),delete t[je];else if(e&&"object"==typeof e)for(var o in e)$e(t,o,e[o],n);else if(e=d(e),2===arguments.length)Ue(t,function(t){return-1!==v(e,t)});else for(var s=0,r=e.length;s<r;s++)$e(t,e[s],n,i);return this}function Ue(t,e){for(var n in t[je]){var i=n.split(/\d/)[0];e&&!e(i)||$e(t,i,null,null,n)}}var Ge={mouseenter:"mouseover",mouseleave:"mouseout",wheel:!("onwheel"in window)&&"mousewheel"};function He(t,e,n,i){var o=e+r(n)+(i?"_"+r(i):"");if(t[je]&&t[je][o])return this;var s=function(e){return n.call(i||t,e||window.event)},a=s;!Dt.touchNative&&Dt.pointer&&0===e.indexOf("touch")?s=Wt(t,e,s):Dt.touch&&"dblclick"===e?s=ie(t,s):"addEventListener"in t?"touchstart"===e||"touchmove"===e||"wheel"===e||"mousewheel"===e?t.addEventListener(Ge[e]||e,s,!!Dt.passiveEvents&&{passive:!1}):"mouseenter"===e||"mouseleave"===e?(s=function(e){e=e||window.event,en(t,e)&&a(e)},t.addEventListener(Ge[e],s,!1)):t.addEventListener(e,a,!1):t.attachEvent("on"+e,s),t[je]=t[je]||{},t[je][o]=s}function $e(t,e,n,i,o){o=o||e+r(n)+(i?"_"+r(i):"");var s=t[je]&&t[je][o];if(!s)return this;!Dt.touchNative&&Dt.pointer&&0===e.indexOf("touch")?qt(t,e,s):Dt.touch&&"dblclick"===e?oe(t,s):"removeEventListener"in t?t.removeEventListener(Ge[e]||e,s,!1):t.detachEvent("on"+e,s),t[je][o]=null}function Ve(t){return t.stopPropagation?t.stopPropagation():t.originalEvent?t.originalEvent._stopped=!0:t.cancelBubble=!0,this}function We(t){return He(t,"wheel",Ve),this}function qe(t){return Ne(t,"mousedown touchstart dblclick contextmenu",Ve),t._leaflet_disable_click=!0,this}function Ye(t){return t.preventDefault?t.preventDefault():t.returnValue=!1,this}function Ke(t){return Ye(t),Ve(t),this}function Je(t){if(t.composedPath)return t.composedPath();for(var e=[],n=t.target;n;)e.push(n),n=n.parentNode;return e}function Xe(t,e){if(!e)return new z(t.clientX,t.clientY);var n=Re(e),i=n.boundingClientRect;return new z((t.clientX-i.left)/n.x-e.clientLeft,(t.clientY-i.top)/n.y-e.clientTop)}var Qe=Dt.linux&&Dt.chrome?window.devicePixelRatio:Dt.mac?3*window.devicePixelRatio:window.devicePixelRatio>0?2*window.devicePixelRatio:1;function tn(t){return Dt.edge?t.wheelDeltaY/2:t.deltaY&&0===t.deltaMode?-t.deltaY/Qe:t.deltaY&&1===t.deltaMode?20*-t.deltaY:t.deltaY&&2===t.deltaMode?60*-t.deltaY:t.deltaX||t.deltaZ?0:t.wheelDelta?(t.wheelDeltaY||t.wheelDelta)/2:t.detail&&Math.abs(t.detail)<32765?20*-t.detail:t.detail?t.detail/-32765*60:0}function en(t,e){var n=e.relatedTarget;if(!n)return!0;try{for(;n&&n!==t;)n=n.parentNode}catch(i){return!1}return n!==t}var nn={__proto__:null,on:Ne,off:Fe,stopPropagation:Ve,disableScrollPropagation:We,disableClickPropagation:qe,preventDefault:Ye,stop:Ke,getPropagationPath:Je,getMousePosition:Xe,getWheelDelta:tn,isExternalTarget:en,addListener:Ne,removeListener:Fe},on=O.extend({run:function(t,e,n,i){this.stop(),this._el=t,this._inProgress=!0,this._duration=n||.25,this._easeOutPower=1/Math.max(i||.5,.2),this._startPos=Ae(t),this._offset=e.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=M(this._animate,this),this._step()},_step:function(t){var e=+new Date-this._startTime,n=1e3*this._duration;e<n?this._runFrame(this._easeOut(e/n),t):(this._runFrame(1),this._complete())},_runFrame:function(t,e){var n=this._startPos.add(this._offset.multiplyBy(t));e&&n._round(),Se(this._el,n),this.fire("step")},_complete:function(){T(this._animId),this._inProgress=!1,this.fire("end")},_easeOut:function(t){return 1-Math.pow(1-t,this._easeOutPower)}}),sn=O.extend({options:{crs:Y,center:void 0,zoom:void 0,minZoom:void 0,maxZoom:void 0,layers:[],maxBounds:void 0,renderer:void 0,zoomAnimation:!0,zoomAnimationThreshold:4,fadeAnimation:!0,markerZoomAnimation:!0,transform3DLimit:8388608,zoomSnap:1,zoomDelta:1,trackResize:!0},initialize:function(t,e){e=p(this,e),this._handlers=[],this._layers={},this._zoomBoundLayers={},this._sizeChanged=!0,this._initContainer(t),this._initLayout(),this._onResize=o(this._onResize,this),this._initEvents(),e.maxBounds&&this.setMaxBounds(e.maxBounds),void 0!==e.zoom&&(this._zoom=this._limitZoom(e.zoom)),e.center&&void 0!==e.zoom&&this.setView(F(e.center),e.zoom,{reset:!0}),this.callInitHooks(),this._zoomAnimated=he&&Dt.any3d&&!Dt.mobileOpera&&this.options.zoomAnimation,this._zoomAnimated&&(this._createAnimProxy(),Ne(this._proxy,de,this._catchTransitionEnd,this)),this._addLayers(this.options.layers)},setView:function(t,e,i){return e=void 0===e?this._zoom:this._limitZoom(e),t=this._limitCenter(F(t),e,this.options.maxBounds),i=i||{},this._stop(),this._loaded&&!i.reset&&!0!==i&&(void 0!==i.animate&&(i.zoom=n({animate:i.animate},i.zoom),i.pan=n({animate:i.animate,duration:i.duration},i.pan)),this._zoom!==e?this._tryAnimatedZoom&&this._tryAnimatedZoom(t,e,i.zoom):this._tryAnimatedPan(t,i.pan))?(clearTimeout(this._sizeTimer),this):(this._resetView(t,e,i.pan&&i.pan.noMoveStart),this)},setZoom:function(t,e){return this._loaded?this.setView(this.getCenter(),t,{zoom:e}):(this._zoom=t,this)},zoomIn:function(t,e){return t=t||(Dt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom+t,e)},zoomOut:function(t,e){return t=t||(Dt.any3d?this.options.zoomDelta:1),this.setZoom(this._zoom-t,e)},setZoomAround:function(t,e,n){var i=this.getZoomScale(e),o=this.getSize().divideBy(2),s=(t instanceof z?t:this.latLngToContainerPoint(t)).subtract(o).multiplyBy(1-1/i),r=this.containerPointToLatLng(o.add(s));return this.setView(r,e,{zoom:n})},_getBoundsCenterZoom:function(t,e){e=e||{},t=t.getBounds?t.getBounds():N(t);var n=B(e.paddingTopLeft||e.padding||[0,0]),i=B(e.paddingBottomRight||e.padding||[0,0]),o=this.getBoundsZoom(t,!1,n.add(i));if((o="number"==typeof e.maxZoom?Math.min(e.maxZoom,o):o)===1/0)return{center:t.getCenter(),zoom:o};var s=i.subtract(n).divideBy(2),r=this.project(t.getSouthWest(),o),a=this.project(t.getNorthEast(),o);return{center:this.unproject(r.add(a).divideBy(2).add(s),o),zoom:o}},fitBounds:function(t,e){if(!(t=N(t)).isValid())throw new Error("Bounds are not valid.");var n=this._getBoundsCenterZoom(t,e);return this.setView(n.center,n.zoom,e)},fitWorld:function(t){return this.fitBounds([[-90,-180],[90,180]],t)},panTo:function(t,e){return this.setView(t,this._zoom,{pan:e})},panBy:function(t,e){if(e=e||{},!(t=B(t).round()).x&&!t.y)return this.fire("moveend");if(!0!==e.animate&&!this.getSize().contains(t))return this._resetView(this.unproject(this.project(this.getCenter()).add(t)),this.getZoom()),this;if(this._panAnim||(this._panAnim=new on,this._panAnim.on({step:this._onPanTransitionStep,end:this._onPanTransitionEnd},this)),e.noMoveStart||this.fire("movestart"),!1!==e.animate){we(this._mapPane,"leaflet-pan-anim");var n=this._getMapPanePos().subtract(t).round();this._panAnim.run(this._mapPane,n,e.duration||.25,e.easeLinearity)}else this._rawPanBy(t),this.fire("move").fire("moveend");return this},flyTo:function(t,e,n){if(!1===(n=n||{}).animate||!Dt.any3d)return this.setView(t,e,n);this._stop();var i=this.project(this.getCenter()),o=this.project(t),s=this.getSize(),r=this._zoom;t=F(t),e=void 0===e?r:e;var a=Math.max(s.x,s.y),l=a*this.getZoomScale(r,e),c=o.distanceTo(i)||1,u=1.42,h=u*u;function d(t){var e=(l*l-a*a+(t?-1:1)*h*h*c*c)/(2*(t?l:a)*h*c),n=Math.sqrt(e*e+1)-e;return n<1e-9?-18:Math.log(n)}function p(t){return(Math.exp(t)-Math.exp(-t))/2}function f(t){return(Math.exp(t)+Math.exp(-t))/2}function _(t){return p(t)/f(t)}var m=d(0);function g(t){return a*(f(m)/f(m+u*t))}function v(t){return a*(f(m)*_(m+u*t)-p(m))/h}function y(t){return 1-Math.pow(1-t,1.5)}var b=Date.now(),w=(d(1)-m)/u,x=n.duration?1e3*n.duration:1e3*w*.8;function L(){var n=(Date.now()-b)/x,s=y(n)*w;n<=1?(this._flyToFrame=M(L,this),this._move(this.unproject(i.add(o.subtract(i).multiplyBy(v(s)/c)),r),this.getScaleZoom(a/g(s),r),{flyTo:!0})):this._move(t,e)._moveEnd(!0)}return this._moveStart(!0,n.noMoveStart),L.call(this),this},flyToBounds:function(t,e){var n=this._getBoundsCenterZoom(t,e);return this.flyTo(n.center,n.zoom,e)},setMaxBounds:function(t){return t=N(t),this.listens("moveend",this._panInsideMaxBounds)&&this.off("moveend",this._panInsideMaxBounds),t.isValid()?(this.options.maxBounds=t,this._loaded&&this._panInsideMaxBounds(),this.on("moveend",this._panInsideMaxBounds)):(this.options.maxBounds=null,this)},setMinZoom:function(t){var e=this.options.minZoom;return this.options.minZoom=t,this._loaded&&e!==t&&(this.fire("zoomlevelschange"),this.getZoom()<this.options.minZoom)?this.setZoom(t):this},setMaxZoom:function(t){var e=this.options.maxZoom;return this.options.maxZoom=t,this._loaded&&e!==t&&(this.fire("zoomlevelschange"),this.getZoom()>this.options.maxZoom)?this.setZoom(t):this},panInsideBounds:function(t,e){this._enforcingBounds=!0;var n=this.getCenter(),i=this._limitCenter(n,this._zoom,N(t));return n.equals(i)||this.panTo(i,e),this._enforcingBounds=!1,this},panInside:function(t,e){var n=B((e=e||{}).paddingTopLeft||e.padding||[0,0]),i=B(e.paddingBottomRight||e.padding||[0,0]),o=this.project(this.getCenter()),s=this.project(t),r=this.getPixelBounds(),a=R([r.min.add(n),r.max.subtract(i)]),l=a.getSize();if(!a.contains(s)){this._enforcingBounds=!0;var c=s.subtract(a.getCenter()),u=a.extend(s).getSize().subtract(l);o.x+=c.x<0?-u.x:u.x,o.y+=c.y<0?-u.y:u.y,this.panTo(this.unproject(o),e),this._enforcingBounds=!1}return this},invalidateSize:function(t){if(!this._loaded)return this;t=n({animate:!1,pan:!0},!0===t?{animate:!0}:t);var e=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var i=this.getSize(),s=e.divideBy(2).round(),r=i.divideBy(2).round(),a=s.subtract(r);return a.x||a.y?(t.animate&&t.pan?this.panBy(a):(t.pan&&this._rawPanBy(a),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(o(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:e,newSize:i})):this},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(t){if(t=this._locateOptions=n({timeout:1e4,watch:!1},t),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var e=o(this._handleGeolocationResponse,this),i=o(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(e,i,t):navigator.geolocation.getCurrentPosition(e,i,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){if(this._container._leaflet_id){var e=t.code,n=t.message||(1===e?"permission denied":2===e?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:e,message:"Geolocation error: "+n+"."})}},_handleGeolocationResponse:function(t){if(this._container._leaflet_id){var e=new j(t.coords.latitude,t.coords.longitude),n=e.toBounds(2*t.coords.accuracy),i=this._locateOptions;if(i.setView){var o=this.getBoundsZoom(n);this.setView(e,i.maxZoom?Math.min(o,i.maxZoom):o)}var s={latlng:e,bounds:n,timestamp:t.timestamp};for(var r in t.coords)"number"==typeof t.coords[r]&&(s[r]=t.coords[r]);this.fire("locationfound",s)}},addHandler:function(t,e){if(!e)return this;var n=this[t]=new e(this);return this._handlers.push(n),this.options[t]&&n.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch(vc){this._container._leaflet_id=void 0,this._containerId=void 0}var t;for(t in void 0!==this._locationWatchId&&this.stopLocate(),this._stop(),me(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(T(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload"),this._layers)this._layers[t].remove();for(t in this._panes)me(this._panes[t]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(t,e){var n=_e("div","leaflet-pane"+(t?" leaflet-"+t.replace("Pane","")+"-pane":""),e||this._mapPane);return t&&(this._panes[t]=n),n},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds();return new D(this.unproject(t.getBottomLeft()),this.unproject(t.getTopRight()))},getMinZoom:function(){return void 0===this.options.minZoom?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return void 0===this.options.maxZoom?void 0===this._layersMaxZoom?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,e,n){t=N(t),n=B(n||[0,0]);var i=this.getZoom()||0,o=this.getMinZoom(),s=this.getMaxZoom(),r=t.getNorthWest(),a=t.getSouthEast(),l=this.getSize().subtract(n),c=R(this.project(a,i),this.project(r,i)).getSize(),u=Dt.any3d?this.options.zoomSnap:1,h=l.x/c.x,d=l.y/c.y,p=e?Math.max(h,d):Math.min(h,d);return i=this.getScaleZoom(p,i),u&&(i=Math.round(i/(u/100))*(u/100),i=e?Math.ceil(i/u)*u:Math.floor(i/u)*u),Math.max(o,Math.min(s,i))},getSize:function(){return this._size&&!this._sizeChanged||(this._size=new z(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(t,e){var n=this._getTopLeftPoint(t,e);return new Z(n,n.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(t){return this.options.crs.getProjectedBounds(void 0===t?this.getZoom():t)},getPane:function(t){return"string"==typeof t?this._panes[t]:t},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t,e){var n=this.options.crs;return e=void 0===e?this._zoom:e,n.scale(t)/n.scale(e)},getScaleZoom:function(t,e){var n=this.options.crs;e=void 0===e?this._zoom:e;var i=n.zoom(t*n.scale(e));return isNaN(i)?1/0:i},project:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.latLngToPoint(F(t),e)},unproject:function(t,e){return e=void 0===e?this._zoom:e,this.options.crs.pointToLatLng(B(t),e)},layerPointToLatLng:function(t){var e=B(t).add(this.getPixelOrigin());return this.unproject(e)},latLngToLayerPoint:function(t){return this.project(F(t))._round()._subtract(this.getPixelOrigin())},wrapLatLng:function(t){return this.options.crs.wrapLatLng(F(t))},wrapLatLngBounds:function(t){return this.options.crs.wrapLatLngBounds(N(t))},distance:function(t,e){return this.options.crs.distance(F(t),F(e))},containerPointToLayerPoint:function(t){return B(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return B(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var e=this.containerPointToLayerPoint(B(t));return this.layerPointToLatLng(e)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(F(t)))},mouseEventToContainerPoint:function(t){return Xe(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var e=this._container=pe(t);if(!e)throw new Error("Map container not found.");if(e._leaflet_id)throw new Error("Map container is already initialized.");Ne(e,"scroll",this._onScroll,this),this._containerId=r(e)},_initLayout:function(){var t=this._container;this._fadeAnimated=this.options.fadeAnimation&&Dt.any3d,we(t,"leaflet-container"+(Dt.touch?" leaflet-touch":"")+(Dt.retina?" leaflet-retina":"")+(Dt.ielt9?" leaflet-oldie":"")+(Dt.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var e=fe(t,"position");"absolute"!==e&&"relative"!==e&&"fixed"!==e&&"sticky"!==e&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),Se(this._mapPane,new z(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(we(t.markerPane,"leaflet-zoom-hide"),we(t.shadowPane,"leaflet-zoom-hide"))},_resetView:function(t,e,n){Se(this._mapPane,new z(0,0));var i=!this._loaded;this._loaded=!0,e=this._limitZoom(e),this.fire("viewprereset");var o=this._zoom!==e;this._moveStart(o,n)._move(t,e)._moveEnd(o),this.fire("viewreset"),i&&this.fire("load")},_moveStart:function(t,e){return t&&this.fire("zoomstart"),e||this.fire("movestart"),this},_move:function(t,e,n,i){void 0===e&&(e=this._zoom);var o=this._zoom!==e;return this._zoom=e,this._lastCenter=t,this._pixelOrigin=this._getNewPixelOrigin(t),i?n&&n.pinch&&this.fire("zoom",n):((o||n&&n.pinch)&&this.fire("zoom",n),this.fire("move",n)),this},_moveEnd:function(t){return t&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return T(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(t){Se(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(t){this._targets={},this._targets[r(this._container)]=this;var e=t?Fe:Ne;e(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&e(window,"resize",this._onResize,this),Dt.any3d&&this.options.transform3DLimit&&(t?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){T(this._resizeRequest),this._resizeRequest=M(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var t=this._getMapPanePos();Math.max(Math.abs(t.x),Math.abs(t.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(t,e){for(var n,i=[],o="mouseout"===e||"mouseover"===e,s=t.target||t.srcElement,a=!1;s;){if((n=this._targets[r(s)])&&("click"===e||"preclick"===e)&&this._draggableMoved(n)){a=!0;break}if(n&&n.listens(e,!0)){if(o&&!en(s,t))break;if(i.push(n),o)break}if(s===this._container)break;s=s.parentNode}return i.length||a||o||!this.listens(e,!0)||(i=[this]),i},_isClickDisabled:function(t){for(;t&&t!==this._container;){if(t._leaflet_disable_click)return!0;t=t.parentNode}},_handleDOMEvent:function(t){var e=t.target||t.srcElement;if(!(!this._loaded||e._leaflet_disable_events||"click"===t.type&&this._isClickDisabled(e))){var n=t.type;"mousedown"===n&&Ie(e),this._fireDOMEvent(t,n)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(t,e,i){if("click"===t.type){var o=n({},t);o.type="preclick",this._fireDOMEvent(o,o.type,i)}var s=this._findEventTargets(t,e);if(i){for(var r=[],a=0;a<i.length;a++)i[a].listens(e,!0)&&r.push(i[a]);s=r.concat(s)}if(s.length){"contextmenu"===e&&Ye(t);var l=s[0],c={originalEvent:t};if("keypress"!==t.type&&"keydown"!==t.type&&"keyup"!==t.type){var u=l.getLatLng&&(!l._radius||l._radius<=10);c.containerPoint=u?this.latLngToContainerPoint(l.getLatLng()):this.mouseEventToContainerPoint(t),c.layerPoint=this.containerPointToLayerPoint(c.containerPoint),c.latlng=u?l.getLatLng():this.layerPointToLatLng(c.layerPoint)}for(a=0;a<s.length;a++)if(s[a].fire(e,c,!0),c.originalEvent._stopped||!1===s[a].options.bubblingMouseEvents&&-1!==v(this._mouseEvents,e))return}},_draggableMoved:function(t){return(t=t.dragging&&t.dragging.enabled()?t:this).dragging&&t.dragging.moved()||this.boxZoom&&this.boxZoom.moved()},_clearHandlers:function(){for(var t=0,e=this._handlers.length;t<e;t++)this._handlers[t].disable()},whenReady:function(t,e){return this._loaded?t.call(e||this,{target:this}):this.on("load",t,e),this},_getMapPanePos:function(){return Ae(this._mapPane)||new z(0,0)},_moved:function(){var t=this._getMapPanePos();return t&&!t.equals([0,0])},_getTopLeftPoint:function(t,e){return(t&&void 0!==e?this._getNewPixelOrigin(t,e):this.getPixelOrigin()).subtract(this._getMapPanePos())},_getNewPixelOrigin:function(t,e){var n=this.getSize()._divideBy(2);return this.project(t,e)._subtract(n)._add(this._getMapPanePos())._round()},_latLngToNewLayerPoint:function(t,e,n){var i=this._getNewPixelOrigin(n,e);return this.project(t,e)._subtract(i)},_latLngBoundsToNewLayerBounds:function(t,e,n){var i=this._getNewPixelOrigin(n,e);return R([this.project(t.getSouthWest(),e)._subtract(i),this.project(t.getNorthWest(),e)._subtract(i),this.project(t.getSouthEast(),e)._subtract(i),this.project(t.getNorthEast(),e)._subtract(i)])},_getCenterLayerPoint:function(){return this.containerPointToLayerPoint(this.getSize()._divideBy(2))},_getCenterOffset:function(t){return this.latLngToLayerPoint(t).subtract(this._getCenterLayerPoint())},_limitCenter:function(t,e,n){if(!n)return t;var i=this.project(t,e),o=this.getSize().divideBy(2),s=new Z(i.subtract(o),i.add(o)),r=this._getBoundsOffset(s,n,e);return Math.abs(r.x)<=1&&Math.abs(r.y)<=1?t:this.unproject(i.add(r),e)},_limitOffset:function(t,e){if(!e)return t;var n=this.getPixelBounds(),i=new Z(n.min.add(t),n.max.add(t));return t.add(this._getBoundsOffset(i,e))},_getBoundsOffset:function(t,e,n){var i=R(this.project(e.getNorthEast(),n),this.project(e.getSouthWest(),n)),o=i.min.subtract(t.min),s=i.max.subtract(t.max);return new z(this._rebound(o.x,-s.x),this._rebound(o.y,-s.y))},_rebound:function(t,e){return t+e>0?Math.round(t-e)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(e))},_limitZoom:function(t){var e=this.getMinZoom(),n=this.getMaxZoom(),i=Dt.any3d?this.options.zoomSnap:1;return i&&(t=Math.round(t/i)*i),Math.max(e,Math.min(n,t))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){xe(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,e){var n=this._getCenterOffset(t)._trunc();return!(!0!==(e&&e.animate)&&!this.getSize().contains(n)||(this.panBy(n,e),0))},_createAnimProxy:function(){var t=this._proxy=_e("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(t),this.on("zoomanim",function(t){var e=ue,n=this._proxy.style[e];ke(this._proxy,this.project(t.center,t.zoom),this.getZoomScale(t.zoom,1)),n===this._proxy.style[e]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){me(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var t=this.getCenter(),e=this.getZoom();ke(this._proxy,this.project(t,e),this.getZoomScale(e,1))},_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,e,n){if(this._animatingZoom)return!0;if(n=n||{},!this._zoomAnimated||!1===n.animate||this._nothingToAnimate()||Math.abs(e-this._zoom)>this.options.zoomAnimationThreshold)return!1;var i=this.getZoomScale(e),o=this._getCenterOffset(t)._divideBy(1-1/i);return!(!0!==n.animate&&!this.getSize().contains(o)||(M(function(){this._moveStart(!0,n.noMoveStart||!1)._animateZoom(t,e,!0)},this),0))},_animateZoom:function(t,e,n,i){this._mapPane&&(n&&(this._animatingZoom=!0,this._animateToCenter=t,this._animateToZoom=e,we(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:t,zoom:e,noUpdate:i}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(o(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&xe(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});function rn(t,e){return new sn(t,e)}var an=S.extend({options:{position:"topright"},initialize:function(t){p(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var e=this._map;return e&&e.removeControl(this),this.options.position=t,e&&e.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this.remove(),this._map=t;var e=this._container=this.onAdd(t),n=this.getPosition(),i=t._controlCorners[n];return we(e,"leaflet-control"),-1!==n.indexOf("bottom")?i.insertBefore(e,i.firstChild):i.appendChild(e),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(me(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(t){this._map&&t&&t.screenX>0&&t.screenY>0&&this._map.getContainer().focus()}}),ln=function(t){return new an(t)};sn.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.remove(),this},_initControlPos:function(){var t=this._controlCorners={},e="leaflet-",n=this._controlContainer=_e("div",e+"control-container",this._container);function i(i,o){var s=e+i+" "+e+o;t[i+o]=_e("div",s,n)}i("top","left"),i("top","right"),i("bottom","left"),i("bottom","right")},_clearControlPos:function(){for(var t in this._controlCorners)me(this._controlCorners[t]);me(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var cn=an.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(t,e,n,i){return n<i?-1:i<n?1:0}},initialize:function(t,e,n){for(var i in p(this,n),this._layerControlInputs=[],this._layers=[],this._lastZIndex=0,this._handlingClick=!1,this._preventClick=!1,t)this._addLayer(t[i],i);for(i in e)this._addLayer(e[i],i,!0)},onAdd:function(t){this._initLayout(),this._update(),this._map=t,t.on("zoomend",this._checkDisabledLayers,this);for(var e=0;e<this._layers.length;e++)this._layers[e].layer.on("add remove",this._onLayerChange,this);return this._container},addTo:function(t){return an.prototype.addTo.call(this,t),this._expandIfNotCollapsed()},onRemove:function(){this._map.off("zoomend",this._checkDisabledLayers,this);for(var t=0;t<this._layers.length;t++)this._layers[t].layer.off("add remove",this._onLayerChange,this)},addBaseLayer:function(t,e){return this._addLayer(t,e),this._map?this._update():this},addOverlay:function(t,e){return this._addLayer(t,e,!0),this._map?this._update():this},removeLayer:function(t){t.off("add remove",this._onLayerChange,this);var e=this._getLayer(r(t));return e&&this._layers.splice(this._layers.indexOf(e),1),this._map?this._update():this},expand:function(){we(this._container,"leaflet-control-layers-expanded"),this._section.style.height=null;var t=this._map.getSize().y-(this._container.offsetTop+50);return t<this._section.clientHeight?(we(this._section,"leaflet-control-layers-scrollbar"),this._section.style.height=t+"px"):xe(this._section,"leaflet-control-layers-scrollbar"),this._checkDisabledLayers(),this},collapse:function(){return xe(this._container,"leaflet-control-layers-expanded"),this},_initLayout:function(){var t="leaflet-control-layers",e=this._container=_e("div",t),n=this.options.collapsed;e.setAttribute("aria-haspopup",!0),qe(e),We(e);var i=this._section=_e("section",t+"-list");n&&(this._map.on("click",this.collapse,this),Ne(e,{mouseenter:this._expandSafely,mouseleave:this.collapse},this));var o=this._layersLink=_e("a",t+"-toggle",e);o.href="#",o.title="Layers",o.setAttribute("role","button"),Ne(o,{keydown:function(t){13===t.keyCode&&this._expandSafely()},click:function(t){Ye(t),this._expandSafely()}},this),n||this.expand(),this._baseLayersList=_e("div",t+"-base",i),this._separator=_e("div",t+"-separator",i),this._overlaysList=_e("div",t+"-overlays",i),e.appendChild(i)},_getLayer:function(t){for(var e=0;e<this._layers.length;e++)if(this._layers[e]&&r(this._layers[e].layer)===t)return this._layers[e]},_addLayer:function(t,e,n){this._map&&t.on("add remove",this._onLayerChange,this),this._layers.push({layer:t,name:e,overlay:n}),this.options.sortLayers&&this._layers.sort(o(function(t,e){return this.options.sortFunction(t.layer,e.layer,t.name,e.name)},this)),this.options.autoZIndex&&t.setZIndex&&(this._lastZIndex++,t.setZIndex(this._lastZIndex)),this._expandIfNotCollapsed()},_update:function(){if(!this._container)return this;ge(this._baseLayersList),ge(this._overlaysList),this._layerControlInputs=[];var t,e,n,i,o=0;for(n=0;n<this._layers.length;n++)i=this._layers[n],this._addItem(i),e=e||i.overlay,t=t||!i.overlay,o+=i.overlay?0:1;return this.options.hideSingleBase&&(t=t&&o>1,this._baseLayersList.style.display=t?"":"none"),this._separator.style.display=e&&t?"":"none",this},_onLayerChange:function(t){this._handlingClick||this._update();var e=this._getLayer(r(t.target)),n=e.overlay?"add"===t.type?"overlayadd":"overlayremove":"add"===t.type?"baselayerchange":null;n&&this._map.fire(n,e)},_createRadioElement:function(t,e){var n='<input type="radio" class="leaflet-control-layers-selector" name="'+t+'"'+(e?' checked="checked"':"")+"/>",i=document.createElement("div");return i.innerHTML=n,i.firstChild},_addItem:function(t){var e,n=document.createElement("label"),i=this._map.hasLayer(t.layer);t.overlay?((e=document.createElement("input")).type="checkbox",e.className="leaflet-control-layers-selector",e.defaultChecked=i):e=this._createRadioElement("leaflet-base-layers_"+r(this),i),this._layerControlInputs.push(e),e.layerId=r(t.layer),Ne(e,"click",this._onInputClick,this);var o=document.createElement("span");o.innerHTML=" "+t.name;var s=document.createElement("span");return n.appendChild(s),s.appendChild(e),s.appendChild(o),(t.overlay?this._overlaysList:this._baseLayersList).appendChild(n),this._checkDisabledLayers(),n},_onInputClick:function(){if(!this._preventClick){var t,e,n=this._layerControlInputs,i=[],o=[];this._handlingClick=!0;for(var s=n.length-1;s>=0;s--)t=n[s],e=this._getLayer(t.layerId).layer,t.checked?i.push(e):t.checked||o.push(e);for(s=0;s<o.length;s++)this._map.hasLayer(o[s])&&this._map.removeLayer(o[s]);for(s=0;s<i.length;s++)this._map.hasLayer(i[s])||this._map.addLayer(i[s]);this._handlingClick=!1,this._refocusOnMap()}},_checkDisabledLayers:function(){for(var t,e,n=this._layerControlInputs,i=this._map.getZoom(),o=n.length-1;o>=0;o--)t=n[o],e=this._getLayer(t.layerId).layer,t.disabled=void 0!==e.options.minZoom&&i<e.options.minZoom||void 0!==e.options.maxZoom&&i>e.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var t=this._section;this._preventClick=!0,Ne(t,"click",Ye),this.expand();var e=this;setTimeout(function(){Fe(t,"click",Ye),e._preventClick=!1})}}),un=function(t,e,n){return new cn(t,e,n)},hn=an.extend({options:{position:"topleft",zoomInText:'<span aria-hidden="true">+</span>',zoomInTitle:"Zoom in",zoomOutText:'<span aria-hidden="true">−</span>',zoomOutTitle:"Zoom out"},onAdd:function(t){var e="leaflet-control-zoom",n=_e("div",e+" leaflet-bar"),i=this.options;return this._zoomInButton=this._createButton(i.zoomInText,i.zoomInTitle,e+"-in",n,this._zoomIn),this._zoomOutButton=this._createButton(i.zoomOutText,i.zoomOutTitle,e+"-out",n,this._zoomOut),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),n},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(t){!this._disabled&&this._map._zoom<this._map.getMaxZoom()&&this._map.zoomIn(this._map.options.zoomDelta*(t.shiftKey?3:1))},_zoomOut:function(t){!this._disabled&&this._map._zoom>this._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(t.shiftKey?3:1))},_createButton:function(t,e,n,i,o){var s=_e("a",n,i);return s.innerHTML=t,s.href="#",s.title=e,s.setAttribute("role","button"),s.setAttribute("aria-label",e),qe(s),Ne(s,"click",Ke),Ne(s,"click",o,this),Ne(s,"click",this._refocusOnMap,this),s},_updateDisabled:function(){var t=this._map,e="leaflet-disabled";xe(this._zoomInButton,e),xe(this._zoomOutButton,e),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||t._zoom===t.getMinZoom())&&(we(this._zoomOutButton,e),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||t._zoom===t.getMaxZoom())&&(we(this._zoomInButton,e),this._zoomInButton.setAttribute("aria-disabled","true"))}});sn.mergeOptions({zoomControl:!0}),sn.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new hn,this.addControl(this.zoomControl))});var dn=function(t){return new hn(t)},pn=an.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(t){var e="leaflet-control-scale",n=_e("div",e),i=this.options;return this._addScales(i,e+"-line",n),t.on(i.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),n},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,e,n){t.metric&&(this._mScale=_e("div",e,n)),t.imperial&&(this._iScale=_e("div",e,n))},_update:function(){var t=this._map,e=t.getSize().y/2,n=t.distance(t.containerPointToLatLng([0,e]),t.containerPointToLatLng([this.options.maxWidth,e]));this._updateScales(n)},_updateScales:function(t){this.options.metric&&t&&this._updateMetric(t),this.options.imperial&&t&&this._updateImperial(t)},_updateMetric:function(t){var e=this._getRoundNum(t),n=e<1e3?e+" m":e/1e3+" km";this._updateScale(this._mScale,n,e/t)},_updateImperial:function(t){var e,n,i,o=3.2808399*t;o>5280?(e=o/5280,n=this._getRoundNum(e),this._updateScale(this._iScale,n+" mi",n/e)):(i=this._getRoundNum(o),this._updateScale(this._iScale,i+" ft",i/o))},_updateScale:function(t,e,n){t.style.width=Math.round(this.options.maxWidth*n)+"px",t.innerHTML=e},_getRoundNum:function(t){var e=Math.pow(10,(Math.floor(t)+"").length-1),n=t/e;return e*(n=n>=10?10:n>=5?5:n>=3?3:n>=2?2:1)}}),fn=function(t){return new pn(t)},_n='<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8" class="leaflet-attribution-flag"><path fill="#4C7BE1" d="M0 0h12v4H0z"/><path fill="#FFD500" d="M0 4h12v3H0z"/><path fill="#E0BC00" d="M0 7h12v1H0z"/></svg>',mn=an.extend({options:{position:"bottomright",prefix:'<a href="https://leafletjs.com" title="A JavaScript library for interactive maps">'+(Dt.inlineSvg?_n+" ":"")+"Leaflet</a>"},initialize:function(t){p(this,t),this._attributions={}},onAdd:function(t){for(var e in t.attributionControl=this,this._container=_e("div","leaflet-control-attribution"),qe(this._container),t._layers)t._layers[e].getAttribution&&this.addAttribution(t._layers[e].getAttribution());return this._update(),t.on("layeradd",this._addAttribution,this),this._container},onRemove:function(t){t.off("layeradd",this._addAttribution,this)},_addAttribution:function(t){t.layer.getAttribution&&(this.addAttribution(t.layer.getAttribution()),t.layer.once("remove",function(){this.removeAttribution(t.layer.getAttribution())},this))},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t?(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update(),this):this},removeAttribution:function(t){return t?(this._attributions[t]&&(this._attributions[t]--,this._update()),this):this},_update:function(){if(this._map){var t=[];for(var e in this._attributions)this._attributions[e]&&t.push(e);var n=[];this.options.prefix&&n.push(this.options.prefix),t.length&&n.push(t.join(", ")),this._container.innerHTML=n.join(' <span aria-hidden="true">|</span> ')}}});sn.mergeOptions({attributionControl:!0}),sn.addInitHook(function(){this.options.attributionControl&&(new mn).addTo(this)});var gn=function(t){return new mn(t)};an.Layers=cn,an.Zoom=hn,an.Scale=pn,an.Attribution=mn,ln.layers=un,ln.zoom=dn,ln.scale=fn,ln.attribution=gn;var vn=S.extend({initialize:function(t){this._map=t},enable:function(){return this._enabled||(this._enabled=!0,this.addHooks()),this},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});vn.addTo=function(t,e){return t.addHandler(e,this),this};var yn={Events:E},bn=Dt.touch?"touchstart mousedown":"mousedown",wn=O.extend({options:{clickTolerance:3},initialize:function(t,e,n,i){p(this,i),this._element=t,this._dragStartTarget=e||t,this._preventOutline=n},enable:function(){this._enabled||(Ne(this._dragStartTarget,bn,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(wn._dragging===this&&this.finishDrag(!0),Fe(this._dragStartTarget,bn,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(t){if(this._enabled&&(this._moved=!1,!be(this._element,"leaflet-zoom-anim")))if(t.touches&&1!==t.touches.length)wn._dragging===this&&this.finishDrag();else if(!(wn._dragging||t.shiftKey||1!==t.which&&1!==t.button&&!t.touches||(wn._dragging=this,this._preventOutline&&Ie(this._element),Oe(),se(),this._moving))){this.fire("down");var e=t.touches?t.touches[0]:t,n=Ze(this._element);this._startPoint=new z(e.clientX,e.clientY),this._startPos=Ae(this._element),this._parentScale=Re(n);var i="mousedown"===t.type;Ne(document,i?"mousemove":"touchmove",this._onMove,this),Ne(document,i?"mouseup":"touchend touchcancel",this._onUp,this)}},_onMove:function(t){if(this._enabled)if(t.touches&&t.touches.length>1)this._moved=!0;else{var e=t.touches&&1===t.touches.length?t.touches[0]:t,n=new z(e.clientX,e.clientY)._subtract(this._startPoint);(n.x||n.y)&&(Math.abs(n.x)+Math.abs(n.y)<this.options.clickTolerance||(n.x/=this._parentScale.x,n.y/=this._parentScale.y,Ye(t),this._moved||(this.fire("dragstart"),this._moved=!0,we(document.body,"leaflet-dragging"),this._lastTarget=t.target||t.srcElement,window.SVGElementInstance&&this._lastTarget instanceof window.SVGElementInstance&&(this._lastTarget=this._lastTarget.correspondingUseElement),we(this._lastTarget,"leaflet-drag-target")),this._newPos=this._startPos.add(n),this._moving=!0,this._lastEvent=t,this._updatePosition()))}},_updatePosition:function(){var t={originalEvent:this._lastEvent};this.fire("predrag",t),Se(this._element,this._newPos),this.fire("drag",t)},_onUp:function(){this._enabled&&this.finishDrag()},finishDrag:function(t){xe(document.body,"leaflet-dragging"),this._lastTarget&&(xe(this._lastTarget,"leaflet-drag-target"),this._lastTarget=null),Fe(document,"mousemove touchmove",this._onMove,this),Fe(document,"mouseup touchend touchcancel",this._onUp,this),ze(),re();var e=this._moved&&this._moving;this._moving=!1,wn._dragging=!1,e&&this.fire("dragend",{noInertia:t,distance:this._newPos.distanceTo(this._startPos)})}});function xn(t,e,n){var i,o,s,r,a,l,c,u,h,d=[1,4,2,8];for(o=0,c=t.length;o<c;o++)t[o]._code=Bn(t[o],e);for(r=0;r<4;r++){for(u=d[r],i=[],o=0,s=(c=t.length)-1;o<c;s=o++)a=t[o],l=t[s],a._code&u?l._code&u||((h=In(l,a,u,e,n))._code=Bn(h,e),i.push(h)):(l._code&u&&((h=In(l,a,u,e,n))._code=Bn(h,e),i.push(h)),i.push(a));t=i}return t}function Ln(t,e){var n,i,o,s,r,a,l,c,u;if(!t||0===t.length)throw new Error("latlngs not passed");Dn(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var h=F([0,0]),d=N(t);d.getNorthWest().distanceTo(d.getSouthWest())*d.getNorthEast().distanceTo(d.getNorthWest())<1700&&(h=Pn(t));var p=t.length,f=[];for(n=0;n<p;n++){var _=F(t[n]);f.push(e.project(F([_.lat-h.lat,_.lng-h.lng])))}for(a=l=c=0,n=0,i=p-1;n<p;i=n++)o=f[n],s=f[i],r=o.y*s.x-s.y*o.x,l+=(o.x+s.x)*r,c+=(o.y+s.y)*r,a+=3*r;u=0===a?f[0]:[l/a,c/a];var m=e.unproject(B(u));return F([m.lat+h.lat,m.lng+h.lng])}function Pn(t){for(var e=0,n=0,i=0,o=0;o<t.length;o++){var s=F(t[o]);e+=s.lat,n+=s.lng,i++}return F([e/i,n/i])}var Cn,Mn={__proto__:null,clipPolygon:xn,polygonCenter:Ln,centroid:Pn};function Tn(t,e){if(!e||!t.length)return t.slice();var n=e*e;return t=An(t=On(t,n),n)}function kn(t,e,n){return Math.sqrt(Rn(t,e,n,!0))}function Sn(t,e,n){return Rn(t,e,n)}function An(t,e){var n=t.length,i=new(typeof Uint8Array!=void 0+""?Uint8Array:Array)(n);i[0]=i[n-1]=1,En(t,i,e,0,n-1);var o,s=[];for(o=0;o<n;o++)i[o]&&s.push(t[o]);return s}function En(t,e,n,i,o){var s,r,a,l=0;for(r=i+1;r<=o-1;r++)(a=Rn(t[r],t[i],t[o],!0))>l&&(s=r,l=a);l>n&&(e[s]=1,En(t,e,n,i,s),En(t,e,n,s,o))}function On(t,e){for(var n=[t[0]],i=1,o=0,s=t.length;i<s;i++)Zn(t[i],t[o])>e&&(n.push(t[i]),o=i);return o<s-1&&n.push(t[s-1]),n}function zn(t,e,n,i,o){var s,r,a,l=i?Cn:Bn(t,n),c=Bn(e,n);for(Cn=c;;){if(!(l|c))return[t,e];if(l&c)return!1;a=Bn(r=In(t,e,s=l||c,n,o),n),s===l?(t=r,l=a):(e=r,c=a)}}function In(t,e,n,i,o){var s,r,a=e.x-t.x,l=e.y-t.y,c=i.min,u=i.max;return 8&n?(s=t.x+a*(u.y-t.y)/l,r=u.y):4&n?(s=t.x+a*(c.y-t.y)/l,r=c.y):2&n?(s=u.x,r=t.y+l*(u.x-t.x)/a):1&n&&(s=c.x,r=t.y+l*(c.x-t.x)/a),new z(s,r,o)}function Bn(t,e){var n=0;return t.x<e.min.x?n|=1:t.x>e.max.x&&(n|=2),t.y<e.min.y?n|=4:t.y>e.max.y&&(n|=8),n}function Zn(t,e){var n=e.x-t.x,i=e.y-t.y;return n*n+i*i}function Rn(t,e,n,i){var o,s=e.x,r=e.y,a=n.x-s,l=n.y-r,c=a*a+l*l;return c>0&&((o=((t.x-s)*a+(t.y-r)*l)/c)>1?(s=n.x,r=n.y):o>0&&(s+=a*o,r+=l*o)),a=t.x-s,l=t.y-r,i?a*a+l*l:new z(s,r)}function Dn(t){return!g(t[0])||"object"!=typeof t[0][0]&&void 0!==t[0][0]}function Nn(t){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Dn(t)}function jn(t,e){var n,i,o,s,r,a,l,c;if(!t||0===t.length)throw new Error("latlngs not passed");Dn(t)||(console.warn("latlngs are not flat! Only the first ring will be used"),t=t[0]);var u=F([0,0]),h=N(t);h.getNorthWest().distanceTo(h.getSouthWest())*h.getNorthEast().distanceTo(h.getNorthWest())<1700&&(u=Pn(t));var d=t.length,p=[];for(n=0;n<d;n++){var f=F(t[n]);p.push(e.project(F([f.lat-u.lat,f.lng-u.lng])))}for(n=0,i=0;n<d-1;n++)i+=p[n].distanceTo(p[n+1])/2;if(0===i)c=p[0];else for(n=0,s=0;n<d-1;n++)if(r=p[n],a=p[n+1],(s+=o=r.distanceTo(a))>i){l=(s-i)/o,c=[a.x-l*(a.x-r.x),a.y-l*(a.y-r.y)];break}var _=e.unproject(B(c));return F([_.lat+u.lat,_.lng+u.lng])}var Fn={__proto__:null,simplify:Tn,pointToSegmentDistance:kn,closestPointOnSegment:Sn,clipSegment:zn,_getEdgeIntersection:In,_getBitCode:Bn,_sqClosestPointOnSegment:Rn,isFlat:Dn,_flat:Nn,polylineCenter:jn},Un={project:function(t){return new z(t.lng,t.lat)},unproject:function(t){return new j(t.y,t.x)},bounds:new Z([-180,-90],[180,90])},Gn={R:6378137,R_MINOR:6356752.314245179,bounds:new Z([-20037508.34279,-15496570.73972],[20037508.34279,18764656.23138]),project:function(t){var e=Math.PI/180,n=this.R,i=t.lat*e,o=this.R_MINOR/n,s=Math.sqrt(1-o*o),r=s*Math.sin(i),a=Math.tan(Math.PI/4-i/2)/Math.pow((1-r)/(1+r),s/2);return i=-n*Math.log(Math.max(a,1e-10)),new z(t.lng*e*n,i)},unproject:function(t){for(var e,n=180/Math.PI,i=this.R,o=this.R_MINOR/i,s=Math.sqrt(1-o*o),r=Math.exp(-t.y/i),a=Math.PI/2-2*Math.atan(r),l=0,c=.1;l<15&&Math.abs(c)>1e-7;l++)e=s*Math.sin(a),e=Math.pow((1-e)/(1+e),s/2),a+=c=Math.PI/2-2*Math.atan(r*e)-a;return new j(a*n,t.x*n/i)}},Hn={__proto__:null,LonLat:Un,Mercator:Gn,SphericalMercator:V},$n=n({},H,{code:"EPSG:3395",projection:Gn,transformation:function(){var t=.5/(Math.PI*Gn.R);return q(t,.5,-t,.5)}()}),Vn=n({},H,{code:"EPSG:4326",projection:Un,transformation:q(1/180,1,-1/180,.5)}),Wn=n({},G,{projection:Un,transformation:q(1,0,-1,0),scale:function(t){return Math.pow(2,t)},zoom:function(t){return Math.log(t)/Math.LN2},distance:function(t,e){var n=e.lng-t.lng,i=e.lat-t.lat;return Math.sqrt(n*n+i*i)},infinite:!0});G.Earth=H,G.EPSG3395=$n,G.EPSG3857=Y,G.EPSG900913=K,G.EPSG4326=Vn,G.Simple=Wn;var qn=O.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(t){return t.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(t){return t&&t.removeLayer(this),this},getPane:function(t){return this._map.getPane(t?this.options[t]||t:this.options.pane)},addInteractiveTarget:function(t){return this._map._targets[r(t)]=this,this},removeInteractiveTarget:function(t){return delete this._map._targets[r(t)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(t){var e=t.target;if(e.hasLayer(this)){if(this._map=e,this._zoomAnimated=e._zoomAnimated,this.getEvents){var n=this.getEvents();e.on(n,this),this.once("remove",function(){e.off(n,this)},this)}this.onAdd(e),this.fire("add"),e.fire("layeradd",{layer:this})}}});sn.include({addLayer:function(t){if(!t._layerAdd)throw new Error("The provided object is not a Layer.");var e=r(t);return this._layers[e]||(this._layers[e]=t,t._mapToAdd=this,t.beforeAdd&&t.beforeAdd(this),this.whenReady(t._layerAdd,t)),this},removeLayer:function(t){var e=r(t);return this._layers[e]?(this._loaded&&t.onRemove(this),delete this._layers[e],this._loaded&&(this.fire("layerremove",{layer:t}),t.fire("remove")),t._map=t._mapToAdd=null,this):this},hasLayer:function(t){return r(t)in this._layers},eachLayer:function(t,e){for(var n in this._layers)t.call(e,this._layers[n]);return this},_addLayers:function(t){for(var e=0,n=(t=t?g(t)?t:[t]:[]).length;e<n;e++)this.addLayer(t[e])},_addZoomLimit:function(t){isNaN(t.options.maxZoom)&&isNaN(t.options.minZoom)||(this._zoomBoundLayers[r(t)]=t,this._updateZoomLevels())},_removeZoomLimit:function(t){var e=r(t);this._zoomBoundLayers[e]&&(delete this._zoomBoundLayers[e],this._updateZoomLevels())},_updateZoomLevels:function(){var t=1/0,e=-1/0,n=this._getZoomSpan();for(var i in this._zoomBoundLayers){var o=this._zoomBoundLayers[i].options;t=void 0===o.minZoom?t:Math.min(t,o.minZoom),e=void 0===o.maxZoom?e:Math.max(e,o.maxZoom)}this._layersMaxZoom=e===-1/0?void 0:e,this._layersMinZoom=t===1/0?void 0:t,n!==this._getZoomSpan()&&this.fire("zoomlevelschange"),void 0===this.options.maxZoom&&this._layersMaxZoom&&this.getZoom()>this._layersMaxZoom&&this.setZoom(this._layersMaxZoom),void 0===this.options.minZoom&&this._layersMinZoom&&this.getZoom()<this._layersMinZoom&&this.setZoom(this._layersMinZoom)}});var Yn=qn.extend({initialize:function(t,e){var n,i;if(p(this,e),this._layers={},t)for(n=0,i=t.length;n<i;n++)this.addLayer(t[n])},addLayer:function(t){var e=this.getLayerId(t);return this._layers[e]=t,this._map&&this._map.addLayer(t),this},removeLayer:function(t){var e=t in this._layers?t:this.getLayerId(t);return this._map&&this._layers[e]&&this._map.removeLayer(this._layers[e]),delete this._layers[e],this},hasLayer:function(t){return("number"==typeof t?t:this.getLayerId(t))in this._layers},clearLayers:function(){return this.eachLayer(this.removeLayer,this)},invoke:function(t){var e,n,i=Array.prototype.slice.call(arguments,1);for(e in this._layers)(n=this._layers[e])[t]&&n[t].apply(n,i);return this},onAdd:function(t){this.eachLayer(t.addLayer,t)},onRemove:function(t){this.eachLayer(t.removeLayer,t)},eachLayer:function(t,e){for(var n in this._layers)t.call(e,this._layers[n]);return this},getLayer:function(t){return this._layers[t]},getLayers:function(){var t=[];return this.eachLayer(t.push,t),t},setZIndex:function(t){return this.invoke("setZIndex",t)},getLayerId:function(t){return r(t)}}),Kn=function(t,e){return new Yn(t,e)},Jn=Yn.extend({addLayer:function(t){return this.hasLayer(t)?this:(t.addEventParent(this),Yn.prototype.addLayer.call(this,t),this.fire("layeradd",{layer:t}))},removeLayer:function(t){return this.hasLayer(t)?(t in this._layers&&(t=this._layers[t]),t.removeEventParent(this),Yn.prototype.removeLayer.call(this,t),this.fire("layerremove",{layer:t})):this},setStyle:function(t){return this.invoke("setStyle",t)},bringToFront:function(){return this.invoke("bringToFront")},bringToBack:function(){return this.invoke("bringToBack")},getBounds:function(){var t=new D;for(var e in this._layers){var n=this._layers[e];t.extend(n.getBounds?n.getBounds():n.getLatLng())}return t}}),Xn=function(t,e){return new Jn(t,e)},Qn=S.extend({options:{popupAnchor:[0,0],tooltipAnchor:[0,0],crossOrigin:!1},initialize:function(t){p(this,t)},createIcon:function(t){return this._createIcon("icon",t)},createShadow:function(t){return this._createIcon("shadow",t)},_createIcon:function(t,e){var n=this._getIconUrl(t);if(!n){if("icon"===t)throw new Error("iconUrl not set in Icon options (see the docs).");return null}var i=this._createImg(n,e&&"IMG"===e.tagName?e:null);return this._setIconStyles(i,t),(this.options.crossOrigin||""===this.options.crossOrigin)&&(i.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),i},_setIconStyles:function(t,e){var n=this.options,i=n[e+"Size"];"number"==typeof i&&(i=[i,i]);var o=B(i),s=B("shadow"===e&&n.shadowAnchor||n.iconAnchor||o&&o.divideBy(2,!0));t.className="leaflet-marker-"+e+" "+(n.className||""),s&&(t.style.marginLeft=-s.x+"px",t.style.marginTop=-s.y+"px"),o&&(t.style.width=o.x+"px",t.style.height=o.y+"px")},_createImg:function(t,e){return(e=e||document.createElement("img")).src=t,e},_getIconUrl:function(t){return Dt.retina&&this.options[t+"RetinaUrl"]||this.options[t+"Url"]}});function ti(t){return new Qn(t)}var ei=Qn.extend({options:{iconUrl:"marker-icon.png",iconRetinaUrl:"marker-icon-2x.png",shadowUrl:"marker-shadow.png",iconSize:[25,41],iconAnchor:[12,41],popupAnchor:[1,-34],tooltipAnchor:[16,-28],shadowSize:[41,41]},_getIconUrl:function(t){return"string"!=typeof ei.imagePath&&(ei.imagePath=this._detectIconPath()),(this.options.imagePath||ei.imagePath)+Qn.prototype._getIconUrl.call(this,t)},_stripUrl:function(t){var e=function(t,e,n){var i=e.exec(t);return i&&i[n]};return(t=e(t,/^url\((['"])?(.+)\1\)$/,2))&&e(t,/^(.*)marker-icon\.png$/,1)},_detectIconPath:function(){var t=_e("div","leaflet-default-icon-path",document.body),e=fe(t,"background-image")||fe(t,"backgroundImage");if(document.body.removeChild(t),e=this._stripUrl(e))return e;var n=document.querySelector('link[href$="leaflet.css"]');return n?n.href.substring(0,n.href.length-11-1):""}}),ni=vn.extend({initialize:function(t){this._marker=t},addHooks:function(){var t=this._marker._icon;this._draggable||(this._draggable=new wn(t,t,!0)),this._draggable.on({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).enable(),we(t,"leaflet-marker-draggable")},removeHooks:function(){this._draggable.off({dragstart:this._onDragStart,predrag:this._onPreDrag,drag:this._onDrag,dragend:this._onDragEnd},this).disable(),this._marker._icon&&xe(this._marker._icon,"leaflet-marker-draggable")},moved:function(){return this._draggable&&this._draggable._moved},_adjustPan:function(t){var e=this._marker,n=e._map,i=this._marker.options.autoPanSpeed,o=this._marker.options.autoPanPadding,s=Ae(e._icon),r=n.getPixelBounds(),a=n.getPixelOrigin(),l=R(r.min._subtract(a).add(o),r.max._subtract(a).subtract(o));if(!l.contains(s)){var c=B((Math.max(l.max.x,s.x)-l.max.x)/(r.max.x-l.max.x)-(Math.min(l.min.x,s.x)-l.min.x)/(r.min.x-l.min.x),(Math.max(l.max.y,s.y)-l.max.y)/(r.max.y-l.max.y)-(Math.min(l.min.y,s.y)-l.min.y)/(r.min.y-l.min.y)).multiplyBy(i);n.panBy(c,{animate:!1}),this._draggable._newPos._add(c),this._draggable._startPos._add(c),Se(e._icon,this._draggable._newPos),this._onDrag(t),this._panRequest=M(this._adjustPan.bind(this,t))}},_onDragStart:function(){this._oldLatLng=this._marker.getLatLng(),this._marker.closePopup&&this._marker.closePopup(),this._marker.fire("movestart").fire("dragstart")},_onPreDrag:function(t){this._marker.options.autoPan&&(T(this._panRequest),this._panRequest=M(this._adjustPan.bind(this,t)))},_onDrag:function(t){var e=this._marker,n=e._shadow,i=Ae(e._icon),o=e._map.layerPointToLatLng(i);n&&Se(n,i),e._latlng=o,t.latlng=o,t.oldLatLng=this._oldLatLng,e.fire("move",t).fire("drag",t)},_onDragEnd:function(t){T(this._panRequest),delete this._oldLatLng,this._marker.fire("moveend").fire("dragend",t)}}),ii=qn.extend({options:{icon:new ei,interactive:!0,keyboard:!0,title:"",alt:"Marker",zIndexOffset:0,opacity:1,riseOnHover:!1,riseOffset:250,pane:"markerPane",shadowPane:"shadowPane",bubblingMouseEvents:!1,autoPanOnFocus:!0,draggable:!1,autoPan:!1,autoPanPadding:[50,50],autoPanSpeed:10},initialize:function(t,e){p(this,e),this._latlng=F(t)},onAdd:function(t){this._zoomAnimated=this._zoomAnimated&&t.options.markerZoomAnimation,this._zoomAnimated&&t.on("zoomanim",this._animateZoom,this),this._initIcon(),this.update()},onRemove:function(t){this.dragging&&this.dragging.enabled()&&(this.options.draggable=!0,this.dragging.removeHooks()),delete this.dragging,this._zoomAnimated&&t.off("zoomanim",this._animateZoom,this),this._removeIcon(),this._removeShadow()},getEvents:function(){return{zoom:this.update,viewreset:this.update}},getLatLng:function(){return this._latlng},setLatLng:function(t){var e=this._latlng;return this._latlng=F(t),this.update(),this.fire("move",{oldLatLng:e,latlng:this._latlng})},setZIndexOffset:function(t){return this.options.zIndexOffset=t,this.update()},getIcon:function(){return this.options.icon},setIcon:function(t){return this.options.icon=t,this._map&&(this._initIcon(),this.update()),this._popup&&this.bindPopup(this._popup,this._popup.options),this},getElement:function(){return this._icon},update:function(){if(this._icon&&this._map){var t=this._map.latLngToLayerPoint(this._latlng).round();this._setPos(t)}return this},_initIcon:function(){var t=this.options,e="leaflet-zoom-"+(this._zoomAnimated?"animated":"hide"),n=t.icon.createIcon(this._icon),i=!1;n!==this._icon&&(this._icon&&this._removeIcon(),i=!0,t.title&&(n.title=t.title),"IMG"===n.tagName&&(n.alt=t.alt||"")),we(n,e),t.keyboard&&(n.tabIndex="0",n.setAttribute("role","button")),this._icon=n,t.riseOnHover&&this.on({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&Ne(n,"focus",this._panOnFocus,this);var o=t.icon.createShadow(this._shadow),s=!1;o!==this._shadow&&(this._removeShadow(),s=!0),o&&(we(o,e),o.alt=""),this._shadow=o,t.opacity<1&&this._updateOpacity(),i&&this.getPane().appendChild(this._icon),this._initInteraction(),o&&s&&this.getPane(t.shadowPane).appendChild(this._shadow)},_removeIcon:function(){this.options.riseOnHover&&this.off({mouseover:this._bringToFront,mouseout:this._resetZIndex}),this.options.autoPanOnFocus&&Fe(this._icon,"focus",this._panOnFocus,this),me(this._icon),this.removeInteractiveTarget(this._icon),this._icon=null},_removeShadow:function(){this._shadow&&me(this._shadow),this._shadow=null},_setPos:function(t){this._icon&&Se(this._icon,t),this._shadow&&Se(this._shadow,t),this._zIndex=t.y+this.options.zIndexOffset,this._resetZIndex()},_updateZIndex:function(t){this._icon&&(this._icon.style.zIndex=this._zIndex+t)},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center).round();this._setPos(e)},_initInteraction:function(){if(this.options.interactive&&(we(this._icon,"leaflet-interactive"),this.addInteractiveTarget(this._icon),ni)){var t=this.options.draggable;this.dragging&&(t=this.dragging.enabled(),this.dragging.disable()),this.dragging=new ni(this),t&&this.dragging.enable()}},setOpacity:function(t){return this.options.opacity=t,this._map&&this._updateOpacity(),this},_updateOpacity:function(){var t=this.options.opacity;this._icon&&Ce(this._icon,t),this._shadow&&Ce(this._shadow,t)},_bringToFront:function(){this._updateZIndex(this.options.riseOffset)},_resetZIndex:function(){this._updateZIndex(0)},_panOnFocus:function(){var t=this._map;if(t){var e=this.options.icon.options,n=e.iconSize?B(e.iconSize):B(0,0),i=e.iconAnchor?B(e.iconAnchor):B(0,0);t.panInside(this._latlng,{paddingTopLeft:i,paddingBottomRight:n.subtract(i)})}},_getPopupAnchor:function(){return this.options.icon.options.popupAnchor},_getTooltipAnchor:function(){return this.options.icon.options.tooltipAnchor}});function oi(t,e){return new ii(t,e)}var si=qn.extend({options:{stroke:!0,color:"#3388ff",weight:3,opacity:1,lineCap:"round",lineJoin:"round",dashArray:null,dashOffset:null,fill:!1,fillColor:null,fillOpacity:.2,fillRule:"evenodd",interactive:!0,bubblingMouseEvents:!0},beforeAdd:function(t){this._renderer=t.getRenderer(this)},onAdd:function(){this._renderer._initPath(this),this._reset(),this._renderer._addPath(this)},onRemove:function(){this._renderer._removePath(this)},redraw:function(){return this._map&&this._renderer._updatePath(this),this},setStyle:function(t){return p(this,t),this._renderer&&(this._renderer._updateStyle(this),this.options.stroke&&t&&Object.prototype.hasOwnProperty.call(t,"weight")&&this._updateBounds()),this},bringToFront:function(){return this._renderer&&this._renderer._bringToFront(this),this},bringToBack:function(){return this._renderer&&this._renderer._bringToBack(this),this},getElement:function(){return this._path},_reset:function(){this._project(),this._update()},_clickTolerance:function(){return(this.options.stroke?this.options.weight/2:0)+(this._renderer.options.tolerance||0)}}),ri=si.extend({options:{fill:!0,radius:10},initialize:function(t,e){p(this,e),this._latlng=F(t),this._radius=this.options.radius},setLatLng:function(t){var e=this._latlng;return this._latlng=F(t),this.redraw(),this.fire("move",{oldLatLng:e,latlng:this._latlng})},getLatLng:function(){return this._latlng},setRadius:function(t){return this.options.radius=this._radius=t,this.redraw()},getRadius:function(){return this._radius},setStyle:function(t){var e=t&&t.radius||this._radius;return si.prototype.setStyle.call(this,t),this.setRadius(e),this},_project:function(){this._point=this._map.latLngToLayerPoint(this._latlng),this._updateBounds()},_updateBounds:function(){var t=this._radius,e=this._radiusY||t,n=this._clickTolerance(),i=[t+n,e+n];this._pxBounds=new Z(this._point.subtract(i),this._point.add(i))},_update:function(){this._map&&this._updatePath()},_updatePath:function(){this._renderer._updateCircle(this)},_empty:function(){return this._radius&&!this._renderer._bounds.intersects(this._pxBounds)},_containsPoint:function(t){return t.distanceTo(this._point)<=this._radius+this._clickTolerance()}});function ai(t,e){return new ri(t,e)}var li=ri.extend({initialize:function(t,e,i){if("number"==typeof e&&(e=n({},i,{radius:e})),p(this,e),this._latlng=F(t),isNaN(this.options.radius))throw new Error("Circle radius cannot be NaN");this._mRadius=this.options.radius},setRadius:function(t){return this._mRadius=t,this.redraw()},getRadius:function(){return this._mRadius},getBounds:function(){var t=[this._radius,this._radiusY||this._radius];return new D(this._map.layerPointToLatLng(this._point.subtract(t)),this._map.layerPointToLatLng(this._point.add(t)))},setStyle:si.prototype.setStyle,_project:function(){var t=this._latlng.lng,e=this._latlng.lat,n=this._map,i=n.options.crs;if(i.distance===H.distance){var o=Math.PI/180,s=this._mRadius/H.R/o,r=n.project([e+s,t]),a=n.project([e-s,t]),l=r.add(a).divideBy(2),c=n.unproject(l).lat,u=Math.acos((Math.cos(s*o)-Math.sin(e*o)*Math.sin(c*o))/(Math.cos(e*o)*Math.cos(c*o)))/o;(isNaN(u)||0===u)&&(u=s/Math.cos(Math.PI/180*e)),this._point=l.subtract(n.getPixelOrigin()),this._radius=isNaN(u)?0:l.x-n.project([c,t-u]).x,this._radiusY=l.y-r.y}else{var h=i.unproject(i.project(this._latlng).subtract([this._mRadius,0]));this._point=n.latLngToLayerPoint(this._latlng),this._radius=this._point.x-n.latLngToLayerPoint(h).x}this._updateBounds()}});function ci(t,e,n){return new li(t,e,n)}var ui=si.extend({options:{smoothFactor:1,noClip:!1},initialize:function(t,e){p(this,e),this._setLatLngs(t)},getLatLngs:function(){return this._latlngs},setLatLngs:function(t){return this._setLatLngs(t),this.redraw()},isEmpty:function(){return!this._latlngs.length},closestLayerPoint:function(t){for(var e,n,i=1/0,o=null,s=Rn,r=0,a=this._parts.length;r<a;r++)for(var l=this._parts[r],c=1,u=l.length;c<u;c++){var h=s(t,e=l[c-1],n=l[c],!0);h<i&&(i=h,o=s(t,e,n))}return o&&(o.distance=Math.sqrt(i)),o},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return jn(this._defaultShape(),this._map.options.crs)},getBounds:function(){return this._bounds},addLatLng:function(t,e){return e=e||this._defaultShape(),t=F(t),e.push(t),this._bounds.extend(t),this.redraw()},_setLatLngs:function(t){this._bounds=new D,this._latlngs=this._convertLatLngs(t)},_defaultShape:function(){return Dn(this._latlngs)?this._latlngs:this._latlngs[0]},_convertLatLngs:function(t){for(var e=[],n=Dn(t),i=0,o=t.length;i<o;i++)n?(e[i]=F(t[i]),this._bounds.extend(e[i])):e[i]=this._convertLatLngs(t[i]);return e},_project:function(){var t=new Z;this._rings=[],this._projectLatlngs(this._latlngs,this._rings,t),this._bounds.isValid()&&t.isValid()&&(this._rawPxBounds=t,this._updateBounds())},_updateBounds:function(){var t=this._clickTolerance(),e=new z(t,t);this._rawPxBounds&&(this._pxBounds=new Z([this._rawPxBounds.min.subtract(e),this._rawPxBounds.max.add(e)]))},_projectLatlngs:function(t,e,n){var i,o,s=t[0]instanceof j,r=t.length;if(s){for(o=[],i=0;i<r;i++)o[i]=this._map.latLngToLayerPoint(t[i]),n.extend(o[i]);e.push(o)}else for(i=0;i<r;i++)this._projectLatlngs(t[i],e,n)},_clipPoints:function(){var t=this._renderer._bounds;if(this._parts=[],this._pxBounds&&this._pxBounds.intersects(t))if(this.options.noClip)this._parts=this._rings;else{var e,n,i,o,s,r,a,l=this._parts;for(e=0,i=0,o=this._rings.length;e<o;e++)for(n=0,s=(a=this._rings[e]).length;n<s-1;n++)(r=zn(a[n],a[n+1],t,n,!0))&&(l[i]=l[i]||[],l[i].push(r[0]),r[1]===a[n+1]&&n!==s-2||(l[i].push(r[1]),i++))}},_simplifyPoints:function(){for(var t=this._parts,e=this.options.smoothFactor,n=0,i=t.length;n<i;n++)t[n]=Tn(t[n],e)},_update:function(){this._map&&(this._clipPoints(),this._simplifyPoints(),this._updatePath())},_updatePath:function(){this._renderer._updatePoly(this)},_containsPoint:function(t,e){var n,i,o,s,r,a,l=this._clickTolerance();if(!this._pxBounds||!this._pxBounds.contains(t))return!1;for(n=0,s=this._parts.length;n<s;n++)for(i=0,o=(r=(a=this._parts[n]).length)-1;i<r;o=i++)if((e||0!==i)&&kn(t,a[o],a[i])<=l)return!0;return!1}});function hi(t,e){return new ui(t,e)}ui._flat=Nn;var di=ui.extend({options:{fill:!0},isEmpty:function(){return!this._latlngs.length||!this._latlngs[0].length},getCenter:function(){if(!this._map)throw new Error("Must add layer to map before using getCenter()");return Ln(this._defaultShape(),this._map.options.crs)},_convertLatLngs:function(t){var e=ui.prototype._convertLatLngs.call(this,t),n=e.length;return n>=2&&e[0]instanceof j&&e[0].equals(e[n-1])&&e.pop(),e},_setLatLngs:function(t){ui.prototype._setLatLngs.call(this,t),Dn(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return Dn(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var t=this._renderer._bounds,e=this.options.weight,n=new z(e,e);if(t=new Z(t.min.subtract(n),t.max.add(n)),this._parts=[],this._pxBounds&&this._pxBounds.intersects(t))if(this.options.noClip)this._parts=this._rings;else for(var i,o=0,s=this._rings.length;o<s;o++)(i=xn(this._rings[o],t,!0)).length&&this._parts.push(i)},_updatePath:function(){this._renderer._updatePoly(this,!0)},_containsPoint:function(t){var e,n,i,o,s,r,a,l,c=!1;if(!this._pxBounds||!this._pxBounds.contains(t))return!1;for(o=0,a=this._parts.length;o<a;o++)for(s=0,r=(l=(e=this._parts[o]).length)-1;s<l;r=s++)n=e[s],i=e[r],n.y>t.y!=i.y>t.y&&t.x<(i.x-n.x)*(t.y-n.y)/(i.y-n.y)+n.x&&(c=!c);return c||ui.prototype._containsPoint.call(this,t,!0)}});function pi(t,e){return new di(t,e)}var fi=Jn.extend({initialize:function(t,e){p(this,e),this._layers={},t&&this.addData(t)},addData:function(t){var e,n,i,o=g(t)?t:t.features;if(o){for(e=0,n=o.length;e<n;e++)((i=o[e]).geometries||i.geometry||i.features||i.coordinates)&&this.addData(i);return this}var s=this.options;if(s.filter&&!s.filter(t))return this;var r=_i(t,s);return r?(r.feature=xi(t),r.defaultOptions=r.options,this.resetStyle(r),s.onEachFeature&&s.onEachFeature(t,r),this.addLayer(r)):this},resetStyle:function(t){return void 0===t?this.eachLayer(this.resetStyle,this):(t.options=n({},t.defaultOptions),this._setLayerStyle(t,this.options.style),this)},setStyle:function(t){return this.eachLayer(function(e){this._setLayerStyle(e,t)},this)},_setLayerStyle:function(t,e){t.setStyle&&("function"==typeof e&&(e=e(t.feature)),t.setStyle(e))}});function _i(t,e){var n,i,o,s,r="Feature"===t.type?t.geometry:t,a=r?r.coordinates:null,l=[],c=e&&e.pointToLayer,u=e&&e.coordsToLatLng||gi;if(!a&&!r)return null;switch(r.type){case"Point":return mi(c,t,n=u(a),e);case"MultiPoint":for(o=0,s=a.length;o<s;o++)n=u(a[o]),l.push(mi(c,t,n,e));return new Jn(l);case"LineString":case"MultiLineString":return i=vi(a,"LineString"===r.type?0:1,u),new ui(i,e);case"Polygon":case"MultiPolygon":return i=vi(a,"Polygon"===r.type?1:2,u),new di(i,e);case"GeometryCollection":for(o=0,s=r.geometries.length;o<s;o++){var h=_i({geometry:r.geometries[o],type:"Feature",properties:t.properties},e);h&&l.push(h)}return new Jn(l);case"FeatureCollection":for(o=0,s=r.features.length;o<s;o++){var d=_i(r.features[o],e);d&&l.push(d)}return new Jn(l);default:throw new Error("Invalid GeoJSON object.")}}function mi(t,e,n,i){return t?t(e,n):new ii(n,i&&i.markersInheritOptions&&i)}function gi(t){return new j(t[1],t[0],t[2])}function vi(t,e,n){for(var i,o=[],s=0,r=t.length;s<r;s++)i=e?vi(t[s],e-1,n):(n||gi)(t[s]),o.push(i);return o}function yi(t,e){return void 0!==(t=F(t)).alt?[u(t.lng,e),u(t.lat,e),u(t.alt,e)]:[u(t.lng,e),u(t.lat,e)]}function bi(t,e,n,i){for(var o=[],s=0,r=t.length;s<r;s++)o.push(e?bi(t[s],Dn(t[s])?0:e-1,n,i):yi(t[s],i));return!e&&n&&o.length>0&&o.push(o[0].slice()),o}function wi(t,e){return t.feature?n({},t.feature,{geometry:e}):xi(e)}function xi(t){return"Feature"===t.type||"FeatureCollection"===t.type?t:{type:"Feature",properties:{},geometry:t}}var Li={toGeoJSON:function(t){return wi(this,{type:"Point",coordinates:yi(this.getLatLng(),t)})}};function Pi(t,e){return new fi(t,e)}ii.include(Li),li.include(Li),ri.include(Li),ui.include({toGeoJSON:function(t){var e=!Dn(this._latlngs);return wi(this,{type:(e?"Multi":"")+"LineString",coordinates:bi(this._latlngs,e?1:0,!1,t)})}}),di.include({toGeoJSON:function(t){var e=!Dn(this._latlngs),n=e&&!Dn(this._latlngs[0]),i=bi(this._latlngs,n?2:e?1:0,!0,t);return e||(i=[i]),wi(this,{type:(n?"Multi":"")+"Polygon",coordinates:i})}}),Yn.include({toMultiPoint:function(t){var e=[];return this.eachLayer(function(n){e.push(n.toGeoJSON(t).geometry.coordinates)}),wi(this,{type:"MultiPoint",coordinates:e})},toGeoJSON:function(t){var e=this.feature&&this.feature.geometry&&this.feature.geometry.type;if("MultiPoint"===e)return this.toMultiPoint(t);var n="GeometryCollection"===e,i=[];return this.eachLayer(function(e){if(e.toGeoJSON){var o=e.toGeoJSON(t);if(n)i.push(o.geometry);else{var s=xi(o);"FeatureCollection"===s.type?i.push.apply(i,s.features):i.push(s)}}}),n?wi(this,{geometries:i,type:"GeometryCollection"}):{type:"FeatureCollection",features:i}}});var Ci=Pi,Mi=qn.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(t,e,n){this._url=t,this._bounds=N(e),p(this,n)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(we(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){me(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(t){return this.options.opacity=t,this._image&&this._updateOpacity(),this},setStyle:function(t){return t.opacity&&this.setOpacity(t.opacity),this},bringToFront:function(){return this._map&&ve(this._image),this},bringToBack:function(){return this._map&&ye(this._image),this},setUrl:function(t){return this._url=t,this._image&&(this._image.src=t),this},setBounds:function(t){return this._bounds=N(t),this._map&&this._reset(),this},getEvents:function(){var t={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var t="IMG"===this._url.tagName,e=this._image=t?this._url:_e("img");we(e,"leaflet-image-layer"),this._zoomAnimated&&we(e,"leaflet-zoom-animated"),this.options.className&&we(e,this.options.className),e.onselectstart=c,e.onmousemove=c,e.onload=o(this.fire,this,"load"),e.onerror=o(this._overlayOnError,this,"error"),(this.options.crossOrigin||""===this.options.crossOrigin)&&(e.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),t?this._url=e.src:(e.src=this._url,e.alt=this.options.alt)},_animateZoom:function(t){var e=this._map.getZoomScale(t.zoom),n=this._map._latLngBoundsToNewLayerBounds(this._bounds,t.zoom,t.center).min;ke(this._image,n,e)},_reset:function(){var t=this._image,e=new Z(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),n=e.getSize();Se(t,e.min),t.style.width=n.x+"px",t.style.height=n.y+"px"},_updateOpacity:function(){Ce(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var t=this.options.errorOverlayUrl;t&&this._url!==t&&(this._url=t,this._image.src=t)},getCenter:function(){return this._bounds.getCenter()}}),Ti=function(t,e,n){return new Mi(t,e,n)},ki=Mi.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var t="VIDEO"===this._url.tagName,e=this._image=t?this._url:_e("video");if(we(e,"leaflet-image-layer"),this._zoomAnimated&&we(e,"leaflet-zoom-animated"),this.options.className&&we(e,this.options.className),e.onselectstart=c,e.onmousemove=c,e.onloadeddata=o(this.fire,this,"load"),t){for(var n=e.getElementsByTagName("source"),i=[],s=0;s<n.length;s++)i.push(n[s].src);this._url=n.length>0?i:[e.src]}else{g(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(e.style,"objectFit")&&(e.style.objectFit="fill"),e.autoplay=!!this.options.autoplay,e.loop=!!this.options.loop,e.muted=!!this.options.muted,e.playsInline=!!this.options.playsInline;for(var r=0;r<this._url.length;r++){var a=_e("source");a.src=this._url[r],e.appendChild(a)}}}});function Si(t,e,n){return new ki(t,e,n)}var Ai=Mi.extend({_initImage:function(){var t=this._image=this._url;we(t,"leaflet-image-layer"),this._zoomAnimated&&we(t,"leaflet-zoom-animated"),this.options.className&&we(t,this.options.className),t.onselectstart=c,t.onmousemove=c}});function Ei(t,e,n){return new Ai(t,e,n)}var Oi=qn.extend({options:{interactive:!1,offset:[0,0],className:"",pane:void 0,content:""},initialize:function(t,e){t&&(t instanceof j||g(t))?(this._latlng=F(t),p(this,e)):(p(this,t),this._source=e),this.options.content&&(this._content=this.options.content)},openOn:function(t){return(t=arguments.length?t:this._source._map).hasLayer(this)||t.addLayer(this),this},close:function(){return this._map&&this._map.removeLayer(this),this},toggle:function(t){return this._map?this.close():(arguments.length?this._source=t:t=this._source,this._prepareOpen(),this.openOn(t._map)),this},onAdd:function(t){this._zoomAnimated=t._zoomAnimated,this._container||this._initLayout(),t._fadeAnimated&&Ce(this._container,0),clearTimeout(this._removeTimeout),this.getPane().appendChild(this._container),this.update(),t._fadeAnimated&&Ce(this._container,1),this.bringToFront(),this.options.interactive&&(we(this._container,"leaflet-interactive"),this.addInteractiveTarget(this._container))},onRemove:function(t){t._fadeAnimated?(Ce(this._container,0),this._removeTimeout=setTimeout(o(me,void 0,this._container),200)):me(this._container),this.options.interactive&&(xe(this._container,"leaflet-interactive"),this.removeInteractiveTarget(this._container))},getLatLng:function(){return this._latlng},setLatLng:function(t){return this._latlng=F(t),this._map&&(this._updatePosition(),this._adjustPan()),this},getContent:function(){return this._content},setContent:function(t){return this._content=t,this.update(),this},getElement:function(){return this._container},update:function(){this._map&&(this._container.style.visibility="hidden",this._updateContent(),this._updateLayout(),this._updatePosition(),this._container.style.visibility="",this._adjustPan())},getEvents:function(){var t={zoom:this._updatePosition,viewreset:this._updatePosition};return this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},isOpen:function(){return!!this._map&&this._map.hasLayer(this)},bringToFront:function(){return this._map&&ve(this._container),this},bringToBack:function(){return this._map&&ye(this._container),this},_prepareOpen:function(t){var e=this._source;if(!e._map)return!1;if(e instanceof Jn){e=null;var n=this._source._layers;for(var i in n)if(n[i]._map){e=n[i];break}if(!e)return!1;this._source=e}if(!t)if(e.getCenter)t=e.getCenter();else if(e.getLatLng)t=e.getLatLng();else{if(!e.getBounds)throw new Error("Unable to get source layer LatLng.");t=e.getBounds().getCenter()}return this.setLatLng(t),this._map&&this.update(),!0},_updateContent:function(){if(this._content){var t=this._contentNode,e="function"==typeof this._content?this._content(this._source||this):this._content;if("string"==typeof e)t.innerHTML=e;else{for(;t.hasChildNodes();)t.removeChild(t.firstChild);t.appendChild(e)}this.fire("contentupdate")}},_updatePosition:function(){if(this._map){var t=this._map.latLngToLayerPoint(this._latlng),e=B(this.options.offset),n=this._getAnchor();this._zoomAnimated?Se(this._container,t.add(n)):e=e.add(t).add(n);var i=this._containerBottom=-e.y,o=this._containerLeft=-Math.round(this._containerWidth/2)+e.x;this._container.style.bottom=i+"px",this._container.style.left=o+"px"}},_getAnchor:function(){return[0,0]}});sn.include({_initOverlay:function(t,e,n,i){var o=e;return o instanceof t||(o=new t(i).setContent(e)),n&&o.setLatLng(n),o}}),qn.include({_initOverlay:function(t,e,n,i){var o=n;return o instanceof t?(p(o,i),o._source=this):(o=e&&!i?e:new t(i,this)).setContent(n),o}});var zi=Oi.extend({options:{pane:"popupPane",offset:[0,7],maxWidth:300,minWidth:50,maxHeight:null,autoPan:!0,autoPanPaddingTopLeft:null,autoPanPaddingBottomRight:null,autoPanPadding:[5,5],keepInView:!1,closeButton:!0,autoClose:!0,closeOnEscapeKey:!0,className:""},openOn:function(t){return!(t=arguments.length?t:this._source._map).hasLayer(this)&&t._popup&&t._popup.options.autoClose&&t.removeLayer(t._popup),t._popup=this,Oi.prototype.openOn.call(this,t)},onAdd:function(t){Oi.prototype.onAdd.call(this,t),t.fire("popupopen",{popup:this}),this._source&&(this._source.fire("popupopen",{popup:this},!0),this._source instanceof si||this._source.on("preclick",Ve))},onRemove:function(t){Oi.prototype.onRemove.call(this,t),t.fire("popupclose",{popup:this}),this._source&&(this._source.fire("popupclose",{popup:this},!0),this._source instanceof si||this._source.off("preclick",Ve))},getEvents:function(){var t=Oi.prototype.getEvents.call(this);return(void 0!==this.options.closeOnClick?this.options.closeOnClick:this._map.options.closePopupOnClick)&&(t.preclick=this.close),this.options.keepInView&&(t.moveend=this._adjustPan),t},_initLayout:function(){var t="leaflet-popup",e=this._container=_e("div",t+" "+(this.options.className||"")+" leaflet-zoom-animated"),n=this._wrapper=_e("div",t+"-content-wrapper",e);if(this._contentNode=_e("div",t+"-content",n),qe(e),We(this._contentNode),Ne(e,"contextmenu",Ve),this._tipContainer=_e("div",t+"-tip-container",e),this._tip=_e("div",t+"-tip",this._tipContainer),this.options.closeButton){var i=this._closeButton=_e("a",t+"-close-button",e);i.setAttribute("role","button"),i.setAttribute("aria-label","Close popup"),i.href="#close",i.innerHTML='<span aria-hidden="true">×</span>',Ne(i,"click",function(t){Ye(t),this.close()},this)}},_updateLayout:function(){var t=this._contentNode,e=t.style;e.width="",e.whiteSpace="nowrap";var n=t.offsetWidth;n=Math.min(n,this.options.maxWidth),n=Math.max(n,this.options.minWidth),e.width=n+1+"px",e.whiteSpace="",e.height="";var i=t.offsetHeight,o=this.options.maxHeight,s="leaflet-popup-scrolled";o&&i>o?(e.height=o+"px",we(t,s)):xe(t,s),this._containerWidth=this._container.offsetWidth},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center),n=this._getAnchor();Se(this._container,e.add(n))},_adjustPan:function(){if(this.options.autoPan)if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning)this._autopanning=!1;else{var t=this._map,e=parseInt(fe(this._container,"marginBottom"),10)||0,n=this._container.offsetHeight+e,i=this._containerWidth,o=new z(this._containerLeft,-n-this._containerBottom);o._add(Ae(this._container));var s=t.layerPointToContainerPoint(o),r=B(this.options.autoPanPadding),a=B(this.options.autoPanPaddingTopLeft||r),l=B(this.options.autoPanPaddingBottomRight||r),c=t.getSize(),u=0,h=0;s.x+i+l.x>c.x&&(u=s.x+i-c.x+l.x),s.x-u-a.x<0&&(u=s.x-a.x),s.y+n+l.y>c.y&&(h=s.y+n-c.y+l.y),s.y-h-a.y<0&&(h=s.y-a.y),(u||h)&&(this.options.keepInView&&(this._autopanning=!0),t.fire("autopanstart").panBy([u,h]))}},_getAnchor:function(){return B(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),Ii=function(t,e){return new zi(t,e)};sn.mergeOptions({closePopupOnClick:!0}),sn.include({openPopup:function(t,e,n){return this._initOverlay(zi,t,e,n).openOn(this),this},closePopup:function(t){return(t=arguments.length?t:this._popup)&&t.close(),this}}),qn.include({bindPopup:function(t,e){return this._popup=this._initOverlay(zi,this._popup,t,e),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(t){return this._popup&&(this instanceof Jn||(this._popup._source=this),this._popup._prepareOpen(t||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return!!this._popup&&this._popup.isOpen()},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},getPopup:function(){return this._popup},_openPopup:function(t){if(this._popup&&this._map){Ke(t);var e=t.layer||t.target;this._popup._source!==e||e instanceof si?(this._popup._source=e,this.openPopup(t.latlng)):this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(t.latlng)}},_movePopup:function(t){this._popup.setLatLng(t.latlng)},_onKeyPress:function(t){13===t.originalEvent.keyCode&&this._openPopup(t)}});var Bi=Oi.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(t){Oi.prototype.onAdd.call(this,t),this.setOpacity(this.options.opacity),t.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(t){Oi.prototype.onRemove.call(this,t),t.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var t=Oi.prototype.getEvents.call(this);return this.options.permanent||(t.preclick=this.close),t},_initLayout:function(){var t="leaflet-tooltip "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=_e("div",t),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+r(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(t){var e,n,i=this._map,o=this._container,s=i.latLngToContainerPoint(i.getCenter()),r=i.layerPointToContainerPoint(t),a=this.options.direction,l=o.offsetWidth,c=o.offsetHeight,u=B(this.options.offset),h=this._getAnchor();"top"===a?(e=l/2,n=c):"bottom"===a?(e=l/2,n=0):"center"===a?(e=l/2,n=c/2):"right"===a?(e=0,n=c/2):"left"===a?(e=l,n=c/2):r.x<s.x?(a="right",e=0,n=c/2):(a="left",e=l+2*(u.x+h.x),n=c/2),t=t.subtract(B(e,n,!0)).add(u).add(h),xe(o,"leaflet-tooltip-right"),xe(o,"leaflet-tooltip-left"),xe(o,"leaflet-tooltip-top"),xe(o,"leaflet-tooltip-bottom"),we(o,"leaflet-tooltip-"+a),Se(o,t)},_updatePosition:function(){var t=this._map.latLngToLayerPoint(this._latlng);this._setPosition(t)},setOpacity:function(t){this.options.opacity=t,this._container&&Ce(this._container,t)},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center);this._setPosition(e)},_getAnchor:function(){return B(this._source&&this._source._getTooltipAnchor&&!this.options.sticky?this._source._getTooltipAnchor():[0,0])}}),Zi=function(t,e){return new Bi(t,e)};sn.include({openTooltip:function(t,e,n){return this._initOverlay(Bi,t,e,n).openOn(this),this},closeTooltip:function(t){return t.close(),this}}),qn.include({bindTooltip:function(t,e){return this._tooltip&&this.isTooltipOpen()&&this.unbindTooltip(),this._tooltip=this._initOverlay(Bi,this._tooltip,t,e),this._initTooltipInteractions(),this._tooltip.options.permanent&&this._map&&this._map.hasLayer(this)&&this.openTooltip(),this},unbindTooltip:function(){return this._tooltip&&(this._initTooltipInteractions(!0),this.closeTooltip(),this._tooltip=null),this},_initTooltipInteractions:function(t){if(t||!this._tooltipHandlersAdded){var e=t?"off":"on",n={remove:this.closeTooltip,move:this._moveTooltip};this._tooltip.options.permanent?n.add=this._openTooltip:(n.mouseover=this._openTooltip,n.mouseout=this.closeTooltip,n.click=this._openTooltip,this._map?this._addFocusListeners():n.add=this._addFocusListeners),this._tooltip.options.sticky&&(n.mousemove=this._moveTooltip),this[e](n),this._tooltipHandlersAdded=!t}},openTooltip:function(t){return this._tooltip&&(this instanceof Jn||(this._tooltip._source=this),this._tooltip._prepareOpen(t)&&(this._tooltip.openOn(this._map),this.getElement?this._setAriaDescribedByOnLayer(this):this.eachLayer&&this.eachLayer(this._setAriaDescribedByOnLayer,this))),this},closeTooltip:function(){if(this._tooltip)return this._tooltip.close()},toggleTooltip:function(){return this._tooltip&&this._tooltip.toggle(this),this},isTooltipOpen:function(){return this._tooltip.isOpen()},setTooltipContent:function(t){return this._tooltip&&this._tooltip.setContent(t),this},getTooltip:function(){return this._tooltip},_addFocusListeners:function(){this.getElement?this._addFocusListenersOnLayer(this):this.eachLayer&&this.eachLayer(this._addFocusListenersOnLayer,this)},_addFocusListenersOnLayer:function(t){var e="function"==typeof t.getElement&&t.getElement();e&&(Ne(e,"focus",function(){this._tooltip._source=t,this.openTooltip()},this),Ne(e,"blur",this.closeTooltip,this))},_setAriaDescribedByOnLayer:function(t){var e="function"==typeof t.getElement&&t.getElement();e&&e.setAttribute("aria-describedby",this._tooltip._container.id)},_openTooltip:function(t){if(this._tooltip&&this._map)if(this._map.dragging&&this._map.dragging.moving()&&!this._openOnceFlag){this._openOnceFlag=!0;var e=this;this._map.once("moveend",function(){e._openOnceFlag=!1,e._openTooltip(t)})}else this._tooltip._source=t.layer||t.target,this.openTooltip(this._tooltip.options.sticky?t.latlng:void 0)},_moveTooltip:function(t){var e,n,i=t.latlng;this._tooltip.options.sticky&&t.originalEvent&&(e=this._map.mouseEventToContainerPoint(t.originalEvent),n=this._map.containerPointToLayerPoint(e),i=this._map.layerPointToLatLng(n)),this._tooltip.setLatLng(i)}});var Ri=Qn.extend({options:{iconSize:[12,12],html:!1,bgPos:null,className:"leaflet-div-icon"},createIcon:function(t){var e=t&&"DIV"===t.tagName?t:document.createElement("div"),n=this.options;if(n.html instanceof Element?(ge(e),e.appendChild(n.html)):e.innerHTML=!1!==n.html?n.html:"",n.bgPos){var i=B(n.bgPos);e.style.backgroundPosition=-i.x+"px "+-i.y+"px"}return this._setIconStyles(e,"icon"),e},createShadow:function(){return null}});function Di(t){return new Ri(t)}Qn.Default=ei;var Ni=qn.extend({options:{tileSize:256,opacity:1,updateWhenIdle:Dt.mobile,updateWhenZooming:!0,updateInterval:200,zIndex:1,bounds:null,minZoom:0,maxZoom:void 0,maxNativeZoom:void 0,minNativeZoom:void 0,noWrap:!1,pane:"tilePane",className:"",keepBuffer:2},initialize:function(t){p(this,t)},onAdd:function(){this._initContainer(),this._levels={},this._tiles={},this._resetView()},beforeAdd:function(t){t._addZoomLimit(this)},onRemove:function(t){this._removeAllTiles(),me(this._container),t._removeZoomLimit(this),this._container=null,this._tileZoom=void 0},bringToFront:function(){return this._map&&(ve(this._container),this._setAutoZIndex(Math.max)),this},bringToBack:function(){return this._map&&(ye(this._container),this._setAutoZIndex(Math.min)),this},getContainer:function(){return this._container},setOpacity:function(t){return this.options.opacity=t,this._updateOpacity(),this},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},isLoading:function(){return this._loading},redraw:function(){if(this._map){this._removeAllTiles();var t=this._clampZoom(this._map.getZoom());t!==this._tileZoom&&(this._tileZoom=t,this._updateLevels()),this._update()}return this},getEvents:function(){var t={viewprereset:this._invalidateAll,viewreset:this._resetView,zoom:this._resetView,moveend:this._onMoveEnd};return this.options.updateWhenIdle||(this._onMove||(this._onMove=a(this._onMoveEnd,this.options.updateInterval,this)),t.move=this._onMove),this._zoomAnimated&&(t.zoomanim=this._animateZoom),t},createTile:function(){return document.createElement("div")},getTileSize:function(){var t=this.options.tileSize;return t instanceof z?t:new z(t,t)},_updateZIndex:function(){this._container&&void 0!==this.options.zIndex&&null!==this.options.zIndex&&(this._container.style.zIndex=this.options.zIndex)},_setAutoZIndex:function(t){for(var e,n=this.getPane().children,i=-t(-1/0,1/0),o=0,s=n.length;o<s;o++)e=n[o].style.zIndex,n[o]!==this._container&&e&&(i=t(i,+e));isFinite(i)&&(this.options.zIndex=i+t(-1,1),this._updateZIndex())},_updateOpacity:function(){if(this._map&&!Dt.ielt9){Ce(this._container,this.options.opacity);var t=+new Date,e=!1,n=!1;for(var i in this._tiles){var o=this._tiles[i];if(o.current&&o.loaded){var s=Math.min(1,(t-o.loaded)/200);Ce(o.el,s),s<1?e=!0:(o.active?n=!0:this._onOpaqueTile(o),o.active=!0)}}n&&!this._noPrune&&this._pruneTiles(),e&&(T(this._fadeFrame),this._fadeFrame=M(this._updateOpacity,this))}},_onOpaqueTile:c,_initContainer:function(){this._container||(this._container=_e("div","leaflet-layer "+(this.options.className||"")),this._updateZIndex(),this.options.opacity<1&&this._updateOpacity(),this.getPane().appendChild(this._container))},_updateLevels:function(){var t=this._tileZoom,e=this.options.maxZoom;if(void 0!==t){for(var n in this._levels)n=Number(n),this._levels[n].el.children.length||n===t?(this._levels[n].el.style.zIndex=e-Math.abs(t-n),this._onUpdateLevel(n)):(me(this._levels[n].el),this._removeTilesAtZoom(n),this._onRemoveLevel(n),delete this._levels[n]);var i=this._levels[t],o=this._map;return i||((i=this._levels[t]={}).el=_e("div","leaflet-tile-container leaflet-zoom-animated",this._container),i.el.style.zIndex=e,i.origin=o.project(o.unproject(o.getPixelOrigin()),t).round(),i.zoom=t,this._setZoomTransform(i,o.getCenter(),o.getZoom()),c(i.el.offsetWidth),this._onCreateLevel(i)),this._level=i,i}},_onUpdateLevel:c,_onRemoveLevel:c,_onCreateLevel:c,_pruneTiles:function(){if(this._map){var t,e,n=this._map.getZoom();if(n>this.options.maxZoom||n<this.options.minZoom)this._removeAllTiles();else{for(t in this._tiles)(e=this._tiles[t]).retain=e.current;for(t in this._tiles)if((e=this._tiles[t]).current&&!e.active){var i=e.coords;this._retainParent(i.x,i.y,i.z,i.z-5)||this._retainChildren(i.x,i.y,i.z,i.z+2)}for(t in this._tiles)this._tiles[t].retain||this._removeTile(t)}}},_removeTilesAtZoom:function(t){for(var e in this._tiles)this._tiles[e].coords.z===t&&this._removeTile(e)},_removeAllTiles:function(){for(var t in this._tiles)this._removeTile(t)},_invalidateAll:function(){for(var t in this._levels)me(this._levels[t].el),this._onRemoveLevel(Number(t)),delete this._levels[t];this._removeAllTiles(),this._tileZoom=void 0},_retainParent:function(t,e,n,i){var o=Math.floor(t/2),s=Math.floor(e/2),r=n-1,a=new z(+o,+s);a.z=+r;var l=this._tileCoordsToKey(a),c=this._tiles[l];return c&&c.active?(c.retain=!0,!0):(c&&c.loaded&&(c.retain=!0),r>i&&this._retainParent(o,s,r,i))},_retainChildren:function(t,e,n,i){for(var o=2*t;o<2*t+2;o++)for(var s=2*e;s<2*e+2;s++){var r=new z(o,s);r.z=n+1;var a=this._tileCoordsToKey(r),l=this._tiles[a];l&&l.active?l.retain=!0:(l&&l.loaded&&(l.retain=!0),n+1<i&&this._retainChildren(o,s,n+1,i))}},_resetView:function(t){var e=t&&(t.pinch||t.flyTo);this._setView(this._map.getCenter(),this._map.getZoom(),e,e)},_animateZoom:function(t){this._setView(t.center,t.zoom,!0,t.noUpdate)},_clampZoom:function(t){var e=this.options;return void 0!==e.minNativeZoom&&t<e.minNativeZoom?e.minNativeZoom:void 0!==e.maxNativeZoom&&e.maxNativeZoom<t?e.maxNativeZoom:t},_setView:function(t,e,n,i){var o=Math.round(e);o=void 0!==this.options.maxZoom&&o>this.options.maxZoom||void 0!==this.options.minZoom&&o<this.options.minZoom?void 0:this._clampZoom(o);var s=this.options.updateWhenZooming&&o!==this._tileZoom;i&&!s||(this._tileZoom=o,this._abortLoading&&this._abortLoading(),this._updateLevels(),this._resetGrid(),void 0!==o&&this._update(t),n||this._pruneTiles(),this._noPrune=!!n),this._setZoomTransforms(t,e)},_setZoomTransforms:function(t,e){for(var n in this._levels)this._setZoomTransform(this._levels[n],t,e)},_setZoomTransform:function(t,e,n){var i=this._map.getZoomScale(n,t.zoom),o=t.origin.multiplyBy(i).subtract(this._map._getNewPixelOrigin(e,n)).round();Dt.any3d?ke(t.el,o,i):Se(t.el,o)},_resetGrid:function(){var t=this._map,e=t.options.crs,n=this._tileSize=this.getTileSize(),i=this._tileZoom,o=this._map.getPixelWorldBounds(this._tileZoom);o&&(this._globalTileRange=this._pxBoundsToTileRange(o)),this._wrapX=e.wrapLng&&!this.options.noWrap&&[Math.floor(t.project([0,e.wrapLng[0]],i).x/n.x),Math.ceil(t.project([0,e.wrapLng[1]],i).x/n.y)],this._wrapY=e.wrapLat&&!this.options.noWrap&&[Math.floor(t.project([e.wrapLat[0],0],i).y/n.x),Math.ceil(t.project([e.wrapLat[1],0],i).y/n.y)]},_onMoveEnd:function(){this._map&&!this._map._animatingZoom&&this._update()},_getTiledPixelBounds:function(t){var e=this._map,n=e._animatingZoom?Math.max(e._animateToZoom,e.getZoom()):e.getZoom(),i=e.getZoomScale(n,this._tileZoom),o=e.project(t,this._tileZoom).floor(),s=e.getSize().divideBy(2*i);return new Z(o.subtract(s),o.add(s))},_update:function(t){var e=this._map;if(e){var n=this._clampZoom(e.getZoom());if(void 0===t&&(t=e.getCenter()),void 0!==this._tileZoom){var i=this._getTiledPixelBounds(t),o=this._pxBoundsToTileRange(i),s=o.getCenter(),r=[],a=this.options.keepBuffer,l=new Z(o.getBottomLeft().subtract([a,-a]),o.getTopRight().add([a,-a]));if(!(isFinite(o.min.x)&&isFinite(o.min.y)&&isFinite(o.max.x)&&isFinite(o.max.y)))throw new Error("Attempted to load an infinite number of tiles");for(var c in this._tiles){var u=this._tiles[c].coords;u.z===this._tileZoom&&l.contains(new z(u.x,u.y))||(this._tiles[c].current=!1)}if(Math.abs(n-this._tileZoom)>1)this._setView(t,n);else{for(var h=o.min.y;h<=o.max.y;h++)for(var d=o.min.x;d<=o.max.x;d++){var p=new z(d,h);if(p.z=this._tileZoom,this._isValidTile(p)){var f=this._tiles[this._tileCoordsToKey(p)];f?f.current=!0:r.push(p)}}if(r.sort(function(t,e){return t.distanceTo(s)-e.distanceTo(s)}),0!==r.length){this._loading||(this._loading=!0,this.fire("loading"));var _=document.createDocumentFragment();for(d=0;d<r.length;d++)this._addTile(r[d],_);this._level.el.appendChild(_)}}}}},_isValidTile:function(t){var e=this._map.options.crs;if(!e.infinite){var n=this._globalTileRange;if(!e.wrapLng&&(t.x<n.min.x||t.x>n.max.x)||!e.wrapLat&&(t.y<n.min.y||t.y>n.max.y))return!1}if(!this.options.bounds)return!0;var i=this._tileCoordsToBounds(t);return N(this.options.bounds).overlaps(i)},_keyToBounds:function(t){return this._tileCoordsToBounds(this._keyToTileCoords(t))},_tileCoordsToNwSe:function(t){var e=this._map,n=this.getTileSize(),i=t.scaleBy(n),o=i.add(n);return[e.unproject(i,t.z),e.unproject(o,t.z)]},_tileCoordsToBounds:function(t){var e=this._tileCoordsToNwSe(t),n=new D(e[0],e[1]);return this.options.noWrap||(n=this._map.wrapLatLngBounds(n)),n},_tileCoordsToKey:function(t){return t.x+":"+t.y+":"+t.z},_keyToTileCoords:function(t){var e=t.split(":"),n=new z(+e[0],+e[1]);return n.z=+e[2],n},_removeTile:function(t){var e=this._tiles[t];e&&(me(e.el),delete this._tiles[t],this.fire("tileunload",{tile:e.el,coords:this._keyToTileCoords(t)}))},_initTile:function(t){we(t,"leaflet-tile");var e=this.getTileSize();t.style.width=e.x+"px",t.style.height=e.y+"px",t.onselectstart=c,t.onmousemove=c,Dt.ielt9&&this.options.opacity<1&&Ce(t,this.options.opacity)},_addTile:function(t,e){var n=this._getTilePos(t),i=this._tileCoordsToKey(t),s=this.createTile(this._wrapCoords(t),o(this._tileReady,this,t));this._initTile(s),this.createTile.length<2&&M(o(this._tileReady,this,t,null,s)),Se(s,n),this._tiles[i]={el:s,coords:t,current:!0},e.appendChild(s),this.fire("tileloadstart",{tile:s,coords:t})},_tileReady:function(t,e,n){e&&this.fire("tileerror",{error:e,tile:n,coords:t});var i=this._tileCoordsToKey(t);(n=this._tiles[i])&&(n.loaded=+new Date,this._map._fadeAnimated?(Ce(n.el,0),T(this._fadeFrame),this._fadeFrame=M(this._updateOpacity,this)):(n.active=!0,this._pruneTiles()),e||(we(n.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:n.el,coords:t})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),Dt.ielt9||!this._map._fadeAnimated?M(this._pruneTiles,this):setTimeout(o(this._pruneTiles,this),250)))},_getTilePos:function(t){return t.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(t){var e=new z(this._wrapX?l(t.x,this._wrapX):t.x,this._wrapY?l(t.y,this._wrapY):t.y);return e.z=t.z,e},_pxBoundsToTileRange:function(t){var e=this.getTileSize();return new Z(t.min.unscaleBy(e).floor(),t.max.unscaleBy(e).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var t in this._tiles)if(!this._tiles[t].loaded)return!1;return!0}});function ji(t){return new Ni(t)}var Fi=Ni.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(t,e){this._url=t,(e=p(this,e)).detectRetina&&Dt.retina&&e.maxZoom>0?(e.tileSize=Math.floor(e.tileSize/2),e.zoomReverse?(e.zoomOffset--,e.minZoom=Math.min(e.maxZoom,e.minZoom+1)):(e.zoomOffset++,e.maxZoom=Math.max(e.minZoom,e.maxZoom-1)),e.minZoom=Math.max(0,e.minZoom)):e.zoomReverse?e.minZoom=Math.min(e.maxZoom,e.minZoom):e.maxZoom=Math.max(e.minZoom,e.maxZoom),"string"==typeof e.subdomains&&(e.subdomains=e.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(t,e){return this._url===t&&void 0===e&&(e=!0),this._url=t,e||this.redraw(),this},createTile:function(t,e){var n=document.createElement("img");return Ne(n,"load",o(this._tileOnLoad,this,e,n)),Ne(n,"error",o(this._tileOnError,this,e,n)),(this.options.crossOrigin||""===this.options.crossOrigin)&&(n.crossOrigin=!0===this.options.crossOrigin?"":this.options.crossOrigin),"string"==typeof this.options.referrerPolicy&&(n.referrerPolicy=this.options.referrerPolicy),n.alt="",n.src=this.getTileUrl(t),n},getTileUrl:function(t){var e={r:Dt.retina?"@2x":"",s:this._getSubdomain(t),x:t.x,y:t.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var i=this._globalTileRange.max.y-t.y;this.options.tms&&(e.y=i),e["-y"]=i}return m(this._url,n(e,this.options))},_tileOnLoad:function(t,e){Dt.ielt9?setTimeout(o(t,this,null,e),0):t(null,e)},_tileOnError:function(t,e,n){var i=this.options.errorTileUrl;i&&e.getAttribute("src")!==i&&(e.src=i),t(n,e)},_onTileRemove:function(t){t.tile.onload=null},_getZoomForUrl:function(){var t=this._tileZoom,e=this.options.maxZoom;return this.options.zoomReverse&&(t=e-t),t+this.options.zoomOffset},_getSubdomain:function(t){var e=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[e]},_abortLoading:function(){var t,e;for(t in this._tiles)if(this._tiles[t].coords.z!==this._tileZoom&&((e=this._tiles[t].el).onload=c,e.onerror=c,!e.complete)){e.src=y;var n=this._tiles[t].coords;me(e),delete this._tiles[t],this.fire("tileabort",{tile:e,coords:n})}},_removeTile:function(t){var e=this._tiles[t];if(e)return e.el.setAttribute("src",y),Ni.prototype._removeTile.call(this,t)},_tileReady:function(t,e,n){if(this._map&&(!n||n.getAttribute("src")!==y))return Ni.prototype._tileReady.call(this,t,e,n)}});function Ui(t,e){return new Fi(t,e)}var Gi=Fi.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(t,e){this._url=t;var i=n({},this.defaultWmsParams);for(var o in e)o in this.options||(i[o]=e[o]);var s=(e=p(this,e)).detectRetina&&Dt.retina?2:1,r=this.getTileSize();i.width=r.x*s,i.height=r.y*s,this.wmsParams=i},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var e=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[e]=this._crs.code,Fi.prototype.onAdd.call(this,t)},getTileUrl:function(t){var e=this._tileCoordsToNwSe(t),n=this._crs,i=R(n.project(e[0]),n.project(e[1])),o=i.min,s=i.max,r=(this._wmsVersion>=1.3&&this._crs===Vn?[o.y,o.x,s.y,s.x]:[o.x,o.y,s.x,s.y]).join(","),a=Fi.prototype.getTileUrl.call(this,t);return a+f(this.wmsParams,a,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+r},setParams:function(t,e){return n(this.wmsParams,t),e||this.redraw(),this}});function Hi(t,e){return new Gi(t,e)}Fi.WMS=Gi,Ui.wms=Hi;var $i=qn.extend({options:{padding:.1},initialize:function(t){p(this,t),r(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),we(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var t={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(t.zoomanim=this._onAnimZoom),t},_onAnimZoom:function(t){this._updateTransform(t.center,t.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(t,e){var n=this._map.getZoomScale(e,this._zoom),i=this._map.getSize().multiplyBy(.5+this.options.padding),o=this._map.project(this._center,e),s=i.multiplyBy(-n).add(o).subtract(this._map._getNewPixelOrigin(t,e));Dt.any3d?ke(this._container,s,n):Se(this._container,s)},_reset:function(){for(var t in this._update(),this._updateTransform(this._center,this._zoom),this._layers)this._layers[t]._reset()},_onZoomEnd:function(){for(var t in this._layers)this._layers[t]._project()},_updatePaths:function(){for(var t in this._layers)this._layers[t]._update()},_update:function(){var t=this.options.padding,e=this._map.getSize(),n=this._map.containerPointToLayerPoint(e.multiplyBy(-t)).round();this._bounds=new Z(n,n.add(e.multiplyBy(1+2*t)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),Vi=$i.extend({options:{tolerance:0},getEvents:function(){var t=$i.prototype.getEvents.call(this);return t.viewprereset=this._onViewPreReset,t},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){$i.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var t=this._container=document.createElement("canvas");Ne(t,"mousemove",this._onMouseMove,this),Ne(t,"click dblclick mousedown mouseup contextmenu",this._onClick,this),Ne(t,"mouseout",this._handleMouseOut,this),t._leaflet_disable_events=!0,this._ctx=t.getContext("2d")},_destroyContainer:function(){T(this._redrawRequest),delete this._ctx,me(this._container),Fe(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){for(var t in this._redrawBounds=null,this._layers)this._layers[t]._update();this._redraw()}},_update:function(){if(!this._map._animatingZoom||!this._bounds){$i.prototype._update.call(this);var t=this._bounds,e=this._container,n=t.getSize(),i=Dt.retina?2:1;Se(e,t.min),e.width=i*n.x,e.height=i*n.y,e.style.width=n.x+"px",e.style.height=n.y+"px",Dt.retina&&this._ctx.scale(2,2),this._ctx.translate(-t.min.x,-t.min.y),this.fire("update")}},_reset:function(){$i.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(t){this._updateDashArray(t),this._layers[r(t)]=t;var e=t._order={layer:t,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=e),this._drawLast=e,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(t){this._requestRedraw(t)},_removePath:function(t){var e=t._order,n=e.next,i=e.prev;n?n.prev=i:this._drawLast=i,i?i.next=n:this._drawFirst=n,delete t._order,delete this._layers[r(t)],this._requestRedraw(t)},_updatePath:function(t){this._extendRedrawBounds(t),t._project(),t._update(),this._requestRedraw(t)},_updateStyle:function(t){this._updateDashArray(t),this._requestRedraw(t)},_updateDashArray:function(t){if("string"==typeof t.options.dashArray){var e,n,i=t.options.dashArray.split(/[, ]+/),o=[];for(n=0;n<i.length;n++){if(e=Number(i[n]),isNaN(e))return;o.push(e)}t.options._dashArray=o}else t.options._dashArray=t.options.dashArray},_requestRedraw:function(t){this._map&&(this._extendRedrawBounds(t),this._redrawRequest=this._redrawRequest||M(this._redraw,this))},_extendRedrawBounds:function(t){if(t._pxBounds){var e=(t.options.weight||0)+1;this._redrawBounds=this._redrawBounds||new Z,this._redrawBounds.extend(t._pxBounds.min.subtract([e,e])),this._redrawBounds.extend(t._pxBounds.max.add([e,e]))}},_redraw:function(){this._redrawRequest=null,this._redrawBounds&&(this._redrawBounds.min._floor(),this._redrawBounds.max._ceil()),this._clear(),this._draw(),this._redrawBounds=null},_clear:function(){var t=this._redrawBounds;if(t){var e=t.getSize();this._ctx.clearRect(t.min.x,t.min.y,e.x,e.y)}else this._ctx.save(),this._ctx.setTransform(1,0,0,1,0,0),this._ctx.clearRect(0,0,this._container.width,this._container.height),this._ctx.restore()},_draw:function(){var t,e=this._redrawBounds;if(this._ctx.save(),e){var n=e.getSize();this._ctx.beginPath(),this._ctx.rect(e.min.x,e.min.y,n.x,n.y),this._ctx.clip()}this._drawing=!0;for(var i=this._drawFirst;i;i=i.next)t=i.layer,(!e||t._pxBounds&&t._pxBounds.intersects(e))&&t._updatePath();this._drawing=!1,this._ctx.restore()},_updatePoly:function(t,e){if(this._drawing){var n,i,o,s,r=t._parts,a=r.length,l=this._ctx;if(a){for(l.beginPath(),n=0;n<a;n++){for(i=0,o=r[n].length;i<o;i++)s=r[n][i],l[i?"lineTo":"moveTo"](s.x,s.y);e&&l.closePath()}this._fillStroke(l,t)}}},_updateCircle:function(t){if(this._drawing&&!t._empty()){var e=t._point,n=this._ctx,i=Math.max(Math.round(t._radius),1),o=(Math.max(Math.round(t._radiusY),1)||i)/i;1!==o&&(n.save(),n.scale(1,o)),n.beginPath(),n.arc(e.x,e.y/o,i,0,2*Math.PI,!1),1!==o&&n.restore(),this._fillStroke(n,t)}},_fillStroke:function(t,e){var n=e.options;n.fill&&(t.globalAlpha=n.fillOpacity,t.fillStyle=n.fillColor||n.color,t.fill(n.fillRule||"evenodd")),n.stroke&&0!==n.weight&&(t.setLineDash&&t.setLineDash(e.options&&e.options._dashArray||[]),t.globalAlpha=n.opacity,t.lineWidth=n.weight,t.strokeStyle=n.color,t.lineCap=n.lineCap,t.lineJoin=n.lineJoin,t.stroke())},_onClick:function(t){for(var e,n,i=this._map.mouseEventToLayerPoint(t),o=this._drawFirst;o;o=o.next)(e=o.layer).options.interactive&&e._containsPoint(i)&&("click"!==t.type&&"preclick"!==t.type||!this._map._draggableMoved(e))&&(n=e);this._fireEvent(!!n&&[n],t)},_onMouseMove:function(t){if(this._map&&!this._map.dragging.moving()&&!this._map._animatingZoom){var e=this._map.mouseEventToLayerPoint(t);this._handleMouseHover(t,e)}},_handleMouseOut:function(t){var e=this._hoveredLayer;e&&(xe(this._container,"leaflet-interactive"),this._fireEvent([e],t,"mouseout"),this._hoveredLayer=null,this._mouseHoverThrottled=!1)},_handleMouseHover:function(t,e){if(!this._mouseHoverThrottled){for(var n,i,s=this._drawFirst;s;s=s.next)(n=s.layer).options.interactive&&n._containsPoint(e)&&(i=n);i!==this._hoveredLayer&&(this._handleMouseOut(t),i&&(we(this._container,"leaflet-interactive"),this._fireEvent([i],t,"mouseover"),this._hoveredLayer=i)),this._fireEvent(!!this._hoveredLayer&&[this._hoveredLayer],t),this._mouseHoverThrottled=!0,setTimeout(o(function(){this._mouseHoverThrottled=!1},this),32)}},_fireEvent:function(t,e,n){this._map._fireDOMEvent(e,n||e.type,t)},_bringToFront:function(t){var e=t._order;if(e){var n=e.next,i=e.prev;n&&(n.prev=i,i?i.next=n:n&&(this._drawFirst=n),e.prev=this._drawLast,this._drawLast.next=e,e.next=null,this._drawLast=e,this._requestRedraw(t))}},_bringToBack:function(t){var e=t._order;if(e){var n=e.next,i=e.prev;i&&(i.next=n,n?n.prev=i:i&&(this._drawLast=i),e.prev=null,e.next=this._drawFirst,this._drawFirst.prev=e,this._drawFirst=e,this._requestRedraw(t))}}});function Wi(t){return Dt.canvas?new Vi(t):null}var qi=function(){try{return document.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(t){return document.createElement("<lvml:"+t+' class="lvml">')}}catch(vc){}return function(t){return document.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),Yi={_initContainer:function(){this._container=_e("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||($i.prototype._update.call(this),this.fire("update"))},_initPath:function(t){var e=t._container=qi("shape");we(e,"leaflet-vml-shape "+(this.options.className||"")),e.coordsize="1 1",t._path=qi("path"),e.appendChild(t._path),this._updateStyle(t),this._layers[r(t)]=t},_addPath:function(t){var e=t._container;this._container.appendChild(e),t.options.interactive&&t.addInteractiveTarget(e)},_removePath:function(t){var e=t._container;me(e),t.removeInteractiveTarget(e),delete this._layers[r(t)]},_updateStyle:function(t){var e=t._stroke,n=t._fill,i=t.options,o=t._container;o.stroked=!!i.stroke,o.filled=!!i.fill,i.stroke?(e||(e=t._stroke=qi("stroke")),o.appendChild(e),e.weight=i.weight+"px",e.color=i.color,e.opacity=i.opacity,i.dashArray?e.dashStyle=g(i.dashArray)?i.dashArray.join(" "):i.dashArray.replace(/( *, *)/g," "):e.dashStyle="",e.endcap=i.lineCap.replace("butt","flat"),e.joinstyle=i.lineJoin):e&&(o.removeChild(e),t._stroke=null),i.fill?(n||(n=t._fill=qi("fill")),o.appendChild(n),n.color=i.fillColor||i.color,n.opacity=i.fillOpacity):n&&(o.removeChild(n),t._fill=null)},_updateCircle:function(t){var e=t._point.round(),n=Math.round(t._radius),i=Math.round(t._radiusY||n);this._setPath(t,t._empty()?"M0 0":"AL "+e.x+","+e.y+" "+n+","+i+" 0,23592600")},_setPath:function(t,e){t._path.v=e},_bringToFront:function(t){ve(t._container)},_bringToBack:function(t){ye(t._container)}},Ki=Dt.vml?qi:J,Ji=$i.extend({_initContainer:function(){this._container=Ki("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=Ki("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){me(this._container),Fe(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!this._map._animatingZoom||!this._bounds){$i.prototype._update.call(this);var t=this._bounds,e=t.getSize(),n=this._container;this._svgSize&&this._svgSize.equals(e)||(this._svgSize=e,n.setAttribute("width",e.x),n.setAttribute("height",e.y)),Se(n,t.min),n.setAttribute("viewBox",[t.min.x,t.min.y,e.x,e.y].join(" ")),this.fire("update")}},_initPath:function(t){var e=t._path=Ki("path");t.options.className&&we(e,t.options.className),t.options.interactive&&we(e,"leaflet-interactive"),this._updateStyle(t),this._layers[r(t)]=t},_addPath:function(t){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(t._path),t.addInteractiveTarget(t._path)},_removePath:function(t){me(t._path),t.removeInteractiveTarget(t._path),delete this._layers[r(t)]},_updatePath:function(t){t._project(),t._update()},_updateStyle:function(t){var e=t._path,n=t.options;e&&(n.stroke?(e.setAttribute("stroke",n.color),e.setAttribute("stroke-opacity",n.opacity),e.setAttribute("stroke-width",n.weight),e.setAttribute("stroke-linecap",n.lineCap),e.setAttribute("stroke-linejoin",n.lineJoin),n.dashArray?e.setAttribute("stroke-dasharray",n.dashArray):e.removeAttribute("stroke-dasharray"),n.dashOffset?e.setAttribute("stroke-dashoffset",n.dashOffset):e.removeAttribute("stroke-dashoffset")):e.setAttribute("stroke","none"),n.fill?(e.setAttribute("fill",n.fillColor||n.color),e.setAttribute("fill-opacity",n.fillOpacity),e.setAttribute("fill-rule",n.fillRule||"evenodd")):e.setAttribute("fill","none"))},_updatePoly:function(t,e){this._setPath(t,X(t._parts,e))},_updateCircle:function(t){var e=t._point,n=Math.max(Math.round(t._radius),1),i="a"+n+","+(Math.max(Math.round(t._radiusY),1)||n)+" 0 1,0 ",o=t._empty()?"M0 0":"M"+(e.x-n)+","+e.y+i+2*n+",0 "+i+2*-n+",0 ";this._setPath(t,o)},_setPath:function(t,e){t._path.setAttribute("d",e)},_bringToFront:function(t){ve(t._path)},_bringToBack:function(t){ye(t._path)}});function Xi(t){return Dt.svg||Dt.vml?new Ji(t):null}Dt.vml&&Ji.include(Yi),sn.include({getRenderer:function(t){var e=t.options.renderer||this._getPaneRenderer(t.options.pane)||this.options.renderer||this._renderer;return e||(e=this._renderer=this._createRenderer()),this.hasLayer(e)||this.addLayer(e),e},_getPaneRenderer:function(t){if("overlayPane"===t||void 0===t)return!1;var e=this._paneRenderers[t];return void 0===e&&(e=this._createRenderer({pane:t}),this._paneRenderers[t]=e),e},_createRenderer:function(t){return this.options.preferCanvas&&Wi(t)||Xi(t)}});var Qi=di.extend({initialize:function(t,e){di.prototype.initialize.call(this,this._boundsToLatLngs(t),e)},setBounds:function(t){return this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return[(t=N(t)).getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}});function to(t,e){return new Qi(t,e)}Ji.create=Ki,Ji.pointsToPath=X,fi.geometryToLayer=_i,fi.coordsToLatLng=gi,fi.coordsToLatLngs=vi,fi.latLngToCoords=yi,fi.latLngsToCoords=bi,fi.getFeature=wi,fi.asFeature=xi,sn.mergeOptions({boxZoom:!0});var eo=vn.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._resetStateTimeout=0,t.on("unload",this._destroy,this)},addHooks:function(){Ne(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Fe(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){me(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){0!==this._resetStateTimeout&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(t){if(!t.shiftKey||1!==t.which&&1!==t.button)return!1;this._clearDeferredResetState(),this._resetState(),se(),Oe(),this._startPoint=this._map.mouseEventToContainerPoint(t),Ne(document,{contextmenu:Ke,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(t){this._moved||(this._moved=!0,this._box=_e("div","leaflet-zoom-box",this._container),we(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(t);var e=new Z(this._point,this._startPoint),n=e.getSize();Se(this._box,e.min),this._box.style.width=n.x+"px",this._box.style.height=n.y+"px"},_finish:function(){this._moved&&(me(this._box),xe(this._container,"leaflet-crosshair")),re(),ze(),Fe(document,{contextmenu:Ke,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(t){if((1===t.which||1===t.button)&&(this._finish(),this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(o(this._resetState,this),0);var e=new D(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(e).fire("boxzoomend",{boxZoomBounds:e})}},_onKeyDown:function(t){27===t.keyCode&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});sn.addInitHook("addHandler","boxZoom",eo),sn.mergeOptions({doubleClickZoom:!0});var no=vn.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var e=this._map,n=e.getZoom(),i=e.options.zoomDelta,o=t.originalEvent.shiftKey?n-i:n+i;"center"===e.options.doubleClickZoom?e.setZoom(o):e.setZoomAround(t.containerPoint,o)}});sn.addInitHook("addHandler","doubleClickZoom",no),sn.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var io=vn.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new wn(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),t.on("zoomend",this._onZoomEnd,this),t.whenReady(this._onZoomEnd,this))}we(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){xe(this._map._container,"leaflet-grab"),xe(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var t=this._map;if(t._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var e=N(this._map.options.maxBounds);this._offsetLimit=R(this._map.latLngToContainerPoint(e.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(e.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(t){if(this._map.options.inertia){var e=this._lastTime=+new Date,n=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(n),this._times.push(e),this._prunePositions(e)}this._map.fire("move",t).fire("drag",t)},_prunePositions:function(t){for(;this._positions.length>1&&t-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var t=this._map.getSize().divideBy(2),e=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=e.subtract(t).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(t,e){return t-(t-e)*this._viscosity},_onPreDragLimit:function(){if(this._viscosity&&this._offsetLimit){var t=this._draggable._newPos.subtract(this._draggable._startPos),e=this._offsetLimit;t.x<e.min.x&&(t.x=this._viscousLimit(t.x,e.min.x)),t.y<e.min.y&&(t.y=this._viscousLimit(t.y,e.min.y)),t.x>e.max.x&&(t.x=this._viscousLimit(t.x,e.max.x)),t.y>e.max.y&&(t.y=this._viscousLimit(t.y,e.max.y)),this._draggable._newPos=this._draggable._startPos.add(t)}},_onPreDragWrap:function(){var t=this._worldWidth,e=Math.round(t/2),n=this._initialWorldOffset,i=this._draggable._newPos.x,o=(i-e+n)%t+e-n,s=(i+e+n)%t-e-n,r=Math.abs(o+n)<Math.abs(s+n)?o:s;this._draggable._absPos=this._draggable._newPos.clone(),this._draggable._newPos.x=r},_onDragEnd:function(t){var e=this._map,n=e.options,i=!n.inertia||t.noInertia||this._times.length<2;if(e.fire("dragend",t),i)e.fire("moveend");else{this._prunePositions(+new Date);var o=this._lastPos.subtract(this._positions[0]),s=(this._lastTime-this._times[0])/1e3,r=n.easeLinearity,a=o.multiplyBy(r/s),l=a.distanceTo([0,0]),c=Math.min(n.inertiaMaxSpeed,l),u=a.multiplyBy(c/l),h=c/(n.inertiaDeceleration*r),d=u.multiplyBy(-h/2).round();d.x||d.y?(d=e._limitOffset(d,e.options.maxBounds),M(function(){e.panBy(d,{duration:h,easeLinearity:r,noMoveStart:!0,animate:!0})})):e.fire("moveend")}}});sn.addInitHook("addHandler","dragging",io),sn.mergeOptions({keyboard:!0,keyboardPanDelta:80});var oo=vn.extend({keyCodes:{left:[37],right:[39],down:[40],up:[38],zoomIn:[187,107,61,171],zoomOut:[189,109,54,173]},initialize:function(t){this._map=t,this._setPanDelta(t.options.keyboardPanDelta),this._setZoomDelta(t.options.zoomDelta)},addHooks:function(){var t=this._map._container;t.tabIndex<=0&&(t.tabIndex="0"),Ne(t,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.on({focus:this._addHooks,blur:this._removeHooks},this)},removeHooks:function(){this._removeHooks(),Fe(this._map._container,{focus:this._onFocus,blur:this._onBlur,mousedown:this._onMouseDown},this),this._map.off({focus:this._addHooks,blur:this._removeHooks},this)},_onMouseDown:function(){if(!this._focused){var t=document.body,e=document.documentElement,n=t.scrollTop||e.scrollTop,i=t.scrollLeft||e.scrollLeft;this._map._container.focus(),window.scrollTo(i,n)}},_onFocus:function(){this._focused=!0,this._map.fire("focus")},_onBlur:function(){this._focused=!1,this._map.fire("blur")},_setPanDelta:function(t){var e,n,i=this._panKeys={},o=this.keyCodes;for(e=0,n=o.left.length;e<n;e++)i[o.left[e]]=[-1*t,0];for(e=0,n=o.right.length;e<n;e++)i[o.right[e]]=[t,0];for(e=0,n=o.down.length;e<n;e++)i[o.down[e]]=[0,t];for(e=0,n=o.up.length;e<n;e++)i[o.up[e]]=[0,-1*t]},_setZoomDelta:function(t){var e,n,i=this._zoomKeys={},o=this.keyCodes;for(e=0,n=o.zoomIn.length;e<n;e++)i[o.zoomIn[e]]=t;for(e=0,n=o.zoomOut.length;e<n;e++)i[o.zoomOut[e]]=-t},_addHooks:function(){Ne(document,"keydown",this._onKeyDown,this)},_removeHooks:function(){Fe(document,"keydown",this._onKeyDown,this)},_onKeyDown:function(t){if(!(t.altKey||t.ctrlKey||t.metaKey)){var e,n=t.keyCode,i=this._map;if(n in this._panKeys){if(!i._panAnim||!i._panAnim._inProgress)if(e=this._panKeys[n],t.shiftKey&&(e=B(e).multiplyBy(3)),i.options.maxBounds&&(e=i._limitOffset(B(e),i.options.maxBounds)),i.options.worldCopyJump){var o=i.wrapLatLng(i.unproject(i.project(i.getCenter()).add(e)));i.panTo(o)}else i.panBy(e)}else if(n in this._zoomKeys)i.setZoom(i.getZoom()+(t.shiftKey?3:1)*this._zoomKeys[n]);else{if(27!==n||!i._popup||!i._popup.options.closeOnEscapeKey)return;i.closePopup()}Ke(t)}}});sn.addInitHook("addHandler","keyboard",oo),sn.mergeOptions({scrollWheelZoom:!0,wheelDebounceTime:40,wheelPxPerZoomLevel:60});var so=vn.extend({addHooks:function(){Ne(this._map._container,"wheel",this._onWheelScroll,this),this._delta=0},removeHooks:function(){Fe(this._map._container,"wheel",this._onWheelScroll,this)},_onWheelScroll:function(t){var e=tn(t),n=this._map.options.wheelDebounceTime;this._delta+=e,this._lastMousePos=this._map.mouseEventToContainerPoint(t),this._startTime||(this._startTime=+new Date);var i=Math.max(n-(+new Date-this._startTime),0);clearTimeout(this._timer),this._timer=setTimeout(o(this._performZoom,this),i),Ke(t)},_performZoom:function(){var t=this._map,e=t.getZoom(),n=this._map.options.zoomSnap||0;t._stop();var i=this._delta/(4*this._map.options.wheelPxPerZoomLevel),o=4*Math.log(2/(1+Math.exp(-Math.abs(i))))/Math.LN2,s=n?Math.ceil(o/n)*n:o,r=t._limitZoom(e+(this._delta>0?s:-s))-e;this._delta=0,this._startTime=null,r&&("center"===t.options.scrollWheelZoom?t.setZoom(e+r):t.setZoomAround(this._lastMousePos,e+r))}});sn.addInitHook("addHandler","scrollWheelZoom",so);var ro=600;sn.mergeOptions({tapHold:Dt.touchNative&&Dt.safari&&Dt.mobile,tapTolerance:15});var ao=vn.extend({addHooks:function(){Ne(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Fe(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(clearTimeout(this._holdTimeout),1===t.touches.length){var e=t.touches[0];this._startPos=this._newPos=new z(e.clientX,e.clientY),this._holdTimeout=setTimeout(o(function(){this._cancel(),this._isTapValid()&&(Ne(document,"touchend",Ye),Ne(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",e))},this),ro),Ne(document,"touchend touchcancel contextmenu",this._cancel,this),Ne(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function t(){Fe(document,"touchend",Ye),Fe(document,"touchend touchcancel",t)},_cancel:function(){clearTimeout(this._holdTimeout),Fe(document,"touchend touchcancel contextmenu",this._cancel,this),Fe(document,"touchmove",this._onMove,this)},_onMove:function(t){var e=t.touches[0];this._newPos=new z(e.clientX,e.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(t,e){var n=new MouseEvent(t,{bubbles:!0,cancelable:!0,view:window,screenX:e.screenX,screenY:e.screenY,clientX:e.clientX,clientY:e.clientY});n._simulated=!0,e.target.dispatchEvent(n)}});sn.addInitHook("addHandler","tapHold",ao),sn.mergeOptions({touchZoom:Dt.touch,bounceAtZoomLimits:!0});var lo=vn.extend({addHooks:function(){we(this._map._container,"leaflet-touch-zoom"),Ne(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){xe(this._map._container,"leaflet-touch-zoom"),Fe(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var e=this._map;if(t.touches&&2===t.touches.length&&!e._animatingZoom&&!this._zooming){var n=e.mouseEventToContainerPoint(t.touches[0]),i=e.mouseEventToContainerPoint(t.touches[1]);this._centerPoint=e.getSize()._divideBy(2),this._startLatLng=e.containerPointToLatLng(this._centerPoint),"center"!==e.options.touchZoom&&(this._pinchStartLatLng=e.containerPointToLatLng(n.add(i)._divideBy(2))),this._startDist=n.distanceTo(i),this._startZoom=e.getZoom(),this._moved=!1,this._zooming=!0,e._stop(),Ne(document,"touchmove",this._onTouchMove,this),Ne(document,"touchend touchcancel",this._onTouchEnd,this),Ye(t)}},_onTouchMove:function(t){if(t.touches&&2===t.touches.length&&this._zooming){var e=this._map,n=e.mouseEventToContainerPoint(t.touches[0]),i=e.mouseEventToContainerPoint(t.touches[1]),s=n.distanceTo(i)/this._startDist;if(this._zoom=e.getScaleZoom(s,this._startZoom),!e.options.bounceAtZoomLimits&&(this._zoom<e.getMinZoom()&&s<1||this._zoom>e.getMaxZoom()&&s>1)&&(this._zoom=e._limitZoom(this._zoom)),"center"===e.options.touchZoom){if(this._center=this._startLatLng,1===s)return}else{var r=n._add(i)._divideBy(2)._subtract(this._centerPoint);if(1===s&&0===r.x&&0===r.y)return;this._center=e.unproject(e.project(this._pinchStartLatLng,this._zoom).subtract(r),this._zoom)}this._moved||(e._moveStart(!0,!1),this._moved=!0),T(this._animRequest);var a=o(e._move,e,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=M(a,this,!0),Ye(t)}},_onTouchEnd:function(){this._moved&&this._zooming?(this._zooming=!1,T(this._animRequest),Fe(document,"touchmove",this._onTouchMove,this),Fe(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))):this._zooming=!1}});sn.addInitHook("addHandler","touchZoom",lo),sn.BoxZoom=eo,sn.DoubleClickZoom=no,sn.Drag=io,sn.Keyboard=oo,sn.ScrollWheelZoom=so,sn.TapHold=ao,sn.TouchZoom=lo,t.Bounds=Z,t.Browser=Dt,t.CRS=G,t.Canvas=Vi,t.Circle=li,t.CircleMarker=ri,t.Class=S,t.Control=an,t.DivIcon=Ri,t.DivOverlay=Oi,t.DomEvent=nn,t.DomUtil=De,t.Draggable=wn,t.Evented=O,t.FeatureGroup=Jn,t.GeoJSON=fi,t.GridLayer=Ni,t.Handler=vn,t.Icon=Qn,t.ImageOverlay=Mi,t.LatLng=j,t.LatLngBounds=D,t.Layer=qn,t.LayerGroup=Yn,t.LineUtil=Fn,t.Map=sn,t.Marker=ii,t.Mixin=yn,t.Path=si,t.Point=z,t.PolyUtil=Mn,t.Polygon=di,t.Polyline=ui,t.Popup=zi,t.PosAnimation=on,t.Projection=Hn,t.Rectangle=Qi,t.Renderer=$i,t.SVG=Ji,t.SVGOverlay=Ai,t.TileLayer=Fi,t.Tooltip=Bi,t.Transformation=W,t.Util=k,t.VideoOverlay=ki,t.bind=o,t.bounds=R,t.canvas=Wi,t.circle=ci,t.circleMarker=ai,t.control=ln,t.divIcon=Di,t.extend=n,t.featureGroup=Xn,t.geoJSON=Pi,t.geoJson=Ci,t.gridLayer=ji,t.icon=ti,t.imageOverlay=Ti,t.latLng=F,t.latLngBounds=N,t.layerGroup=Kn,t.map=rn,t.marker=oi,t.point=B,t.polygon=pi,t.polyline=hi,t.popup=Ii,t.rectangle=to,t.setOptions=p,t.stamp=r,t.svg=Xi,t.svgOverlay=Ei,t.tileLayer=Ui,t.tooltip=Zi,t.transformation=q,t.version=e,t.videoOverlay=Si;var co=window.L;t.noConflict=function(){return window.L=co,this},window.L=t}(uu.exports)),uu.exports);const du=rc(hu);var pu;pu=function(){L.ShapeMarker=L.CircleMarker.extend({options:{fill:!0,shape:"triangle",radius:10,rotation:0},setRadius:function(t){return this.options.radius=t,this.redraw()},getRadius:function(){return this.options.radius},setRotation:function(t){return this.options.rotation=t,this.redraw()},getRotation:function(){return this.options.rotation},_updatePath:function(){this._renderer._updateShape(this)},toGeoJSON:function(){return L.GeoJSON.getFeature(this,{type:"Point",coordinates:L.GeoJSON.latLngToCoords(this.getLatLng())})}}),L.shapeMarker=function(t,e){return new L.ShapeMarker(t,e)},L.SVG.include({_updateShape:function(t){var e=t._point,n=t.options.radius,i=t.options.shape,o=t.options.rotation;if(t._path.setAttribute("transform",`rotate(${o},${e.x},${e.y})`),"diamond"===i){var s="M"+(e.x-Math.sqrt(2)*n)+" "+e.y+" L "+e.x+" "+(e.y-Math.sqrt(2)*n)+" L"+(e.x+Math.sqrt(2)*n)+" "+e.y+" L"+e.x+" "+(e.y+Math.sqrt(2)*n)+" L"+(e.x-Math.sqrt(2)*n)+" "+e.y;this._setPath(t,s)}if("square"===i&&(s="M"+(e.x-n)+" "+(e.y-n)+" L "+(e.x+n)+" "+(e.y-n)+" L"+(e.x+n)+" "+(e.y+n)+" L"+(e.x-n)+" "+(e.y+n)+" L"+(e.x-n)+" "+(e.y-n),this._setPath(t,s)),"triangle"!==i&&"triangle-up"!==i||(s="M"+(e.x-1.3*n)+" "+(e.y+.75*n)+" L"+e.x+" "+(e.y-1.5*n)+" L"+(e.x+1.3*n)+" "+(e.y+.75*n)+" Z",this._setPath(t,s)),"triangle-down"===i&&(s="M"+(e.x-1.3*n)+" "+(e.y-.75*n)+" L"+e.x+" "+(e.y+1.5*n)+" L"+(e.x+1.3*n)+" "+(e.y-.75*n)+" Z",this._setPath(t,s)),"arrowhead"!==i&&"arrowhead-up"!==i||(s="M "+(e.x+1.3*n)+" "+(e.y+1.3*n)+" L "+e.x+" "+(e.y-1.3*n)+" L "+(e.x-1.3*n)+" "+(e.y+1.3*n)+" L "+e.x+" "+(e.y+.5*n)+" L "+(e.x+1.3*n)+" "+(e.y+1.3*n)+" Z",this._setPath(t,s)),"arrowhead-down"===i&&(s="M "+(e.x-1.3*n)+" "+(e.y-1.3*n)+" L "+e.x+" "+(e.y+1.3*n)+" L "+(e.x+1.3*n)+" "+(e.y-1.3*n)+" L "+e.x+" "+(e.y-.5*n)+" L "+(e.x-1.3*n)+" "+(e.y-1.3*n)+" Z",this._setPath(t,s)),"circle"===i&&this._updateCircle(t),i.startsWith("star")){var r=i.split(/[^0-9a-z]/gi,2),a=parseInt(r[1]);if("star"===r[0]&&!isNaN(a)&&a>2)var l=a;else l=5;for(var c=.5*(1+Math.sqrt(5))+1,u=[],h=0;h<l;h++)u.push(e.x+n/c*Math.sin(2*Math.PI/l*h)+","+(e.y+n/c*Math.cos(2*Math.PI/l*h))),u.push(e.x+n*Math.sin(1/l*Math.PI+2*Math.PI/l*h)+","+(e.y+n*Math.cos(1/l*Math.PI+2*Math.PI/l*h)));s="M"+u.join("L")+"Z",this._setPath(t,s)}"x"===i&&(n/=2,s="M"+(e.x+n)+","+(e.y+n)+"L"+(e.x-n)+","+(e.y-n)+"M"+(e.x-n)+","+(e.y+n)+"L"+(e.x+n)+","+(e.y-n),this._setPath(t,s))}})},"function"==typeof define&&define.amd?define(pu):pu();var fu,_u={exports:{}};fu||(fu=1,function(t){var e=L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,clusterPane:L.Marker.prototype.options.pane,spiderfyOnEveryZoom:!1,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animate:!0,animateAddingMarkers:!1,spiderfyShapePositions:null,spiderfyDistanceMultiplier:1,spiderLegPolylineOptions:{weight:1.5,color:"#222",opacity:.5},chunkedLoading:!1,chunkInterval:200,chunkDelay:50,chunkProgress:null,polygonOptions:{}},initialize:function(t){L.Util.setOptions(this,t),this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIconCreateFunction),this._featureGroup=L.featureGroup(),this._featureGroup.addEventParent(this),this._nonPointGroup=L.featureGroup(),this._nonPointGroup.addEventParent(this),this._inZoomAnimation=0,this._needsClustering=[],this._needsRemoving=[],this._currentShownBounds=null,this._queue=[],this._childMarkerEventHandlers={dragstart:this._childMarkerDragStart,move:this._childMarkerMoved,dragend:this._childMarkerDragEnd};var e=L.DomUtil.TRANSITION&&this.options.animate;L.extend(this,e?this._withAnimation:this._noAnimation),this._markerCluster=e?L.MarkerCluster:L.MarkerClusterNonAnimated},addLayer:function(t){if(t instanceof L.LayerGroup)return this.addLayers([t]);if(!t.getLatLng)return this._nonPointGroup.addLayer(t),this.fire("layeradd",{layer:t}),this;if(!this._map)return this._needsClustering.push(t),this.fire("layeradd",{layer:t}),this;if(this.hasLayer(t))return this;this._unspiderfy&&this._unspiderfy(),this._addLayer(t,this._maxZoom),this.fire("layeradd",{layer:t}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons();var e=t,n=this._zoom;if(t.__parent)for(;e.__parent._zoom>=n;)e=e.__parent;return this._currentShownBounds.contains(e.getLatLng())&&(this.options.animateAddingMarkers?this._animationAddLayer(t,e):this._animationAddLayerNonAnimated(t,e)),this},removeLayer:function(t){return t instanceof L.LayerGroup?this.removeLayers([t]):t.getLatLng?this._map?t.__parent?(this._unspiderfy&&(this._unspiderfy(),this._unspiderfyLayer(t)),this._removeLayer(t,!0),this.fire("layerremove",{layer:t}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),t.off(this._childMarkerEventHandlers,this),this._featureGroup.hasLayer(t)&&(this._featureGroup.removeLayer(t),t.clusterShow&&t.clusterShow()),this):this:(!this._arraySplice(this._needsClustering,t)&&this.hasLayer(t)&&this._needsRemoving.push({layer:t,latlng:t._latlng}),this.fire("layerremove",{layer:t}),this):(this._nonPointGroup.removeLayer(t),this.fire("layerremove",{layer:t}),this)},addLayers:function(t,e){if(!L.Util.isArray(t))return this.addLayer(t);var n,i=this._featureGroup,o=this._nonPointGroup,s=this.options.chunkedLoading,r=this.options.chunkInterval,a=this.options.chunkProgress,l=t.length,c=0,u=!0;if(this._map){var h=(new Date).getTime(),d=L.bind(function(){var p=(new Date).getTime();for(this._map&&this._unspiderfy&&this._unspiderfy();c<l&&!(s&&c%200==0&&(new Date).getTime()-p>r);c++)if((n=t[c])instanceof L.LayerGroup)u&&(t=t.slice(),u=!1),this._extractNonGroupLayers(n,t),l=t.length;else if(n.getLatLng){if(!this.hasLayer(n)&&(this._addLayer(n,this._maxZoom),e||this.fire("layeradd",{layer:n}),n.__parent&&2===n.__parent.getChildCount())){var f=n.__parent.getAllChildMarkers(),_=f[0]===n?f[1]:f[0];i.removeLayer(_)}}else o.addLayer(n),e||this.fire("layeradd",{layer:n});a&&a(c,l,(new Date).getTime()-h),c===l?(this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)):setTimeout(d,this.options.chunkDelay)},this);d()}else for(var p=this._needsClustering;c<l;c++)(n=t[c])instanceof L.LayerGroup?(u&&(t=t.slice(),u=!1),this._extractNonGroupLayers(n,t),l=t.length):n.getLatLng?this.hasLayer(n)||p.push(n):o.addLayer(n);return this},removeLayers:function(t){var e,n,i=t.length,o=this._featureGroup,s=this._nonPointGroup,r=!0;if(!this._map){for(e=0;e<i;e++)(n=t[e])instanceof L.LayerGroup?(r&&(t=t.slice(),r=!1),this._extractNonGroupLayers(n,t),i=t.length):(this._arraySplice(this._needsClustering,n),s.removeLayer(n),this.hasLayer(n)&&this._needsRemoving.push({layer:n,latlng:n._latlng}),this.fire("layerremove",{layer:n}));return this}if(this._unspiderfy){this._unspiderfy();var a=t.slice(),l=i;for(e=0;e<l;e++)(n=a[e])instanceof L.LayerGroup?(this._extractNonGroupLayers(n,a),l=a.length):this._unspiderfyLayer(n)}for(e=0;e<i;e++)(n=t[e])instanceof L.LayerGroup?(r&&(t=t.slice(),r=!1),this._extractNonGroupLayers(n,t),i=t.length):n.__parent?(this._removeLayer(n,!0,!0),this.fire("layerremove",{layer:n}),o.hasLayer(n)&&(o.removeLayer(n),n.clusterShow&&n.clusterShow())):(s.removeLayer(n),this.fire("layerremove",{layer:n}));return this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds),this},clearLayers:function(){return this._map||(this._needsClustering=[],this._needsRemoving=[],delete this._gridClusters,delete this._gridUnclustered),this._noanimationUnspiderfy&&this._noanimationUnspiderfy(),this._featureGroup.clearLayers(),this._nonPointGroup.clearLayers(),this.eachLayer(function(t){t.off(this._childMarkerEventHandlers,this),delete t.__parent},this),this._map&&this._generateInitialClusters(),this},getBounds:function(){var t=new L.LatLngBounds;this._topClusterLevel&&t.extend(this._topClusterLevel._bounds);for(var e=this._needsClustering.length-1;e>=0;e--)t.extend(this._needsClustering[e].getLatLng());return t.extend(this._nonPointGroup.getBounds()),t},eachLayer:function(t,e){var n,i,o,s=this._needsClustering.slice(),r=this._needsRemoving;for(this._topClusterLevel&&this._topClusterLevel.getAllChildMarkers(s),i=s.length-1;i>=0;i--){for(n=!0,o=r.length-1;o>=0;o--)if(r[o].layer===s[i]){n=!1;break}n&&t.call(e,s[i])}this._nonPointGroup.eachLayer(t,e)},getLayers:function(){var t=[];return this.eachLayer(function(e){t.push(e)}),t},getLayer:function(t){var e=null;return t=parseInt(t,10),this.eachLayer(function(n){L.stamp(n)===t&&(e=n)}),e},hasLayer:function(t){if(!t)return!1;var e,n=this._needsClustering;for(e=n.length-1;e>=0;e--)if(n[e]===t)return!0;for(e=(n=this._needsRemoving).length-1;e>=0;e--)if(n[e].layer===t)return!1;return!(!t.__parent||t.__parent._group!==this)||this._nonPointGroup.hasLayer(t)},zoomToShowLayer:function(t,e){var n=this._map;"function"!=typeof e&&(e=function(){});var i=function(){!n.hasLayer(t)&&!n.hasLayer(t.__parent)||this._inZoomAnimation||(this._map.off("moveend",i,this),this.off("animationend",i,this),n.hasLayer(t)?e():t.__parent._icon&&(this.once("spiderfied",e,this),t.__parent.spiderfy()))};t._icon&&this._map.getBounds().contains(t.getLatLng())?e():t.__parent._zoom<Math.round(this._map._zoom)?(this._map.on("moveend",i,this),this._map.panTo(t.getLatLng())):(this._map.on("moveend",i,this),this.on("animationend",i,this),t.__parent.zoomToBounds())},onAdd:function(t){var e,n,i;if(this._map=t,!isFinite(this._map.getMaxZoom()))throw"Map has no maxZoom specified";for(this._featureGroup.addTo(t),this._nonPointGroup.addTo(t),this._gridClusters||this._generateInitialClusters(),this._maxLat=t.options.crs.projection.MAX_LATITUDE,e=0,n=this._needsRemoving.length;e<n;e++)(i=this._needsRemoving[e]).newlatlng=i.layer._latlng,i.layer._latlng=i.latlng;for(e=0,n=this._needsRemoving.length;e<n;e++)i=this._needsRemoving[e],this._removeLayer(i.layer,!0),i.layer._latlng=i.newlatlng;this._needsRemoving=[],this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds(),this._map.on("zoomend",this._zoomEnd,this),this._map.on("moveend",this._moveEnd,this),this._spiderfierOnAdd&&this._spiderfierOnAdd(),this._bindEvents(),n=this._needsClustering,this._needsClustering=[],this.addLayers(n,!0)},onRemove:function(t){t.off("zoomend",this._zoomEnd,this),t.off("moveend",this._moveEnd,this),this._unbindEvents(),this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim",""),this._spiderfierOnRemove&&this._spiderfierOnRemove(),delete this._maxLat,this._hideCoverage(),this._featureGroup.remove(),this._nonPointGroup.remove(),this._featureGroup.clearLayers(),this._map=null},getVisibleParent:function(t){for(var e=t;e&&!e._icon;)e=e.__parent;return e||null},_arraySplice:function(t,e){for(var n=t.length-1;n>=0;n--)if(t[n]===e)return t.splice(n,1),!0},_removeFromGridUnclustered:function(t,e){for(var n=this._map,i=this._gridUnclustered,o=Math.floor(this._map.getMinZoom());e>=o&&i[e].removeObject(t,n.project(t.getLatLng(),e));e--);},_childMarkerDragStart:function(t){t.target.__dragStart=t.target._latlng},_childMarkerMoved:function(t){if(!this._ignoreMove&&!t.target.__dragStart){var e=t.target._popup&&t.target._popup.isOpen();this._moveChild(t.target,t.oldLatLng,t.latlng),e&&t.target.openPopup()}},_moveChild:function(t,e,n){t._latlng=e,this.removeLayer(t),t._latlng=n,this.addLayer(t)},_childMarkerDragEnd:function(t){var e=t.target.__dragStart;delete t.target.__dragStart,e&&this._moveChild(t.target,e,t.target._latlng)},_removeLayer:function(t,e,n){var i=this._gridClusters,o=this._gridUnclustered,s=this._featureGroup,r=this._map,a=Math.floor(this._map.getMinZoom());e&&this._removeFromGridUnclustered(t,this._maxZoom);var l,c=t.__parent,u=c._markers;for(this._arraySplice(u,t);c&&(c._childCount--,c._boundsNeedUpdate=!0,!(c._zoom<a));)e&&c._childCount<=1?(l=c._markers[0]===t?c._markers[1]:c._markers[0],i[c._zoom].removeObject(c,r.project(c._cLatLng,c._zoom)),o[c._zoom].addObject(l,r.project(l.getLatLng(),c._zoom)),this._arraySplice(c.__parent._childClusters,c),c.__parent._markers.push(l),l.__parent=c.__parent,c._icon&&(s.removeLayer(c),n||s.addLayer(l))):c._iconNeedsUpdate=!0,c=c.__parent;delete t.__parent},_isOrIsParent:function(t,e){for(;e;){if(t===e)return!0;e=e.parentNode}return!1},fire:function(t,e,n){if(e&&e.layer instanceof L.MarkerCluster){if(e.originalEvent&&this._isOrIsParent(e.layer._icon,e.originalEvent.relatedTarget))return;t="cluster"+t}L.FeatureGroup.prototype.fire.call(this,t,e,n)},listens:function(t,e){return L.FeatureGroup.prototype.listens.call(this,t,e)||L.FeatureGroup.prototype.listens.call(this,"cluster"+t,e)},_defaultIconCreateFunction:function(t){var e=t.getChildCount(),n=" marker-cluster-";return n+=e<10?"small":e<100?"medium":"large",new L.DivIcon({html:"<div><span>"+e+"</span></div>",className:"marker-cluster"+n,iconSize:new L.Point(40,40)})},_bindEvents:function(){var t=this._map,e=this.options.spiderfyOnMaxZoom,n=this.options.showCoverageOnHover,i=this.options.zoomToBoundsOnClick,o=this.options.spiderfyOnEveryZoom;(e||i||o)&&this.on("clusterclick clusterkeypress",this._zoomOrSpiderfy,this),n&&(this.on("clustermouseover",this._showCoverage,this),this.on("clustermouseout",this._hideCoverage,this),t.on("zoomend",this._hideCoverage,this))},_zoomOrSpiderfy:function(t){var e=t.layer,n=e;if("clusterkeypress"!==t.type||!t.originalEvent||13===t.originalEvent.keyCode){for(;1===n._childClusters.length;)n=n._childClusters[0];n._zoom===this._maxZoom&&n._childCount===e._childCount&&this.options.spiderfyOnMaxZoom?e.spiderfy():this.options.zoomToBoundsOnClick&&e.zoomToBounds(),this.options.spiderfyOnEveryZoom&&e.spiderfy(),t.originalEvent&&13===t.originalEvent.keyCode&&this._map._container.focus()}},_showCoverage:function(t){var e=this._map;this._inZoomAnimation||(this._shownPolygon&&e.removeLayer(this._shownPolygon),t.layer.getChildCount()>2&&t.layer!==this._spiderfied&&(this._shownPolygon=new L.Polygon(t.layer.getConvexHull(),this.options.polygonOptions),e.addLayer(this._shownPolygon)))},_hideCoverage:function(){this._shownPolygon&&(this._map.removeLayer(this._shownPolygon),this._shownPolygon=null)},_unbindEvents:function(){var t=this.options.spiderfyOnMaxZoom,e=this.options.showCoverageOnHover,n=this.options.zoomToBoundsOnClick,i=this.options.spiderfyOnEveryZoom,o=this._map;(t||n||i)&&this.off("clusterclick clusterkeypress",this._zoomOrSpiderfy,this),e&&(this.off("clustermouseover",this._showCoverage,this),this.off("clustermouseout",this._hideCoverage,this),o.off("zoomend",this._hideCoverage,this))},_zoomEnd:function(){this._map&&(this._mergeSplitClusters(),this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds())},_moveEnd:function(){if(!this._inZoomAnimation){var t=this._getExpandedVisibleBounds();this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,Math.round(this._map._zoom),t),this._currentShownBounds=t}},_generateInitialClusters:function(){var t=Math.ceil(this._map.getMaxZoom()),e=Math.floor(this._map.getMinZoom()),n=this.options.maxClusterRadius,i=n;"function"!=typeof n&&(i=function(){return n}),null!==this.options.disableClusteringAtZoom&&(t=this.options.disableClusteringAtZoom-1),this._maxZoom=t,this._gridClusters={},this._gridUnclustered={};for(var o=t;o>=e;o--)this._gridClusters[o]=new L.DistanceGrid(i(o)),this._gridUnclustered[o]=new L.DistanceGrid(i(o));this._topClusterLevel=new this._markerCluster(this,e-1)},_addLayer:function(t,e){var n,i,o=this._gridClusters,s=this._gridUnclustered,r=Math.floor(this._map.getMinZoom());for(this.options.singleMarkerMode&&this._overrideMarkerIcon(t),t.on(this._childMarkerEventHandlers,this);e>=r;e--){n=this._map.project(t.getLatLng(),e);var a=o[e].getNearObject(n);if(a)return a._addChild(t),void(t.__parent=a);if(a=s[e].getNearObject(n)){var l=a.__parent;l&&this._removeLayer(a,!1);var c=new this._markerCluster(this,e,a,t);o[e].addObject(c,this._map.project(c._cLatLng,e)),a.__parent=c,t.__parent=c;var u=c;for(i=e-1;i>l._zoom;i--)u=new this._markerCluster(this,i,u),o[i].addObject(u,this._map.project(a.getLatLng(),i));return l._addChild(u),void this._removeFromGridUnclustered(a,e)}s[e].addObject(t,n)}this._topClusterLevel._addChild(t),t.__parent=this._topClusterLevel},_refreshClustersIcons:function(){this._featureGroup.eachLayer(function(t){t instanceof L.MarkerCluster&&t._iconNeedsUpdate&&t._updateIcon()})},_enqueue:function(t){this._queue.push(t),this._queueTimeout||(this._queueTimeout=setTimeout(L.bind(this._processQueue,this),300))},_processQueue:function(){for(var t=0;t<this._queue.length;t++)this._queue[t].call(this);this._queue.length=0,clearTimeout(this._queueTimeout),this._queueTimeout=null},_mergeSplitClusters:function(){var t=Math.round(this._map._zoom);this._processQueue(),this._zoom<t&&this._currentShownBounds.intersects(this._getExpandedVisibleBounds())?(this._animationStart(),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,this._getExpandedVisibleBounds()),this._animationZoomIn(this._zoom,t)):this._zoom>t?(this._animationStart(),this._animationZoomOut(this._zoom,t)):this._moveEnd()},_getExpandedVisibleBounds:function(){return this.options.removeOutsideVisibleBounds?L.Browser.mobile?this._checkBoundsMaxLat(this._map.getBounds()):this._checkBoundsMaxLat(this._map.getBounds().pad(1)):this._mapBoundsInfinite},_checkBoundsMaxLat:function(t){var e=this._maxLat;return void 0!==e&&(t.getNorth()>=e&&(t._northEast.lat=1/0),t.getSouth()<=-e&&(t._southWest.lat=-1/0)),t},_animationAddLayerNonAnimated:function(t,e){if(e===t)this._featureGroup.addLayer(t);else if(2===e._childCount){e._addToMap();var n=e.getAllChildMarkers();this._featureGroup.removeLayer(n[0]),this._featureGroup.removeLayer(n[1])}else e._updateIcon()},_extractNonGroupLayers:function(t,e){var n,i=t.getLayers(),o=0;for(e=e||[];o<i.length;o++)(n=i[o])instanceof L.LayerGroup?this._extractNonGroupLayers(n,e):e.push(n);return e},_overrideMarkerIcon:function(t){return t.options.icon=this.options.iconCreateFunction({getChildCount:function(){return 1},getAllChildMarkers:function(){return[t]}})}});L.MarkerClusterGroup.include({_mapBoundsInfinite:new L.LatLngBounds(new L.LatLng(-1/0,-1/0),new L.LatLng(1/0,1/0))}),L.MarkerClusterGroup.include({_noAnimation:{_animationStart:function(){},_animationZoomIn:function(t,e){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),t),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds()),this.fire("animationend")},_animationZoomOut:function(t,e){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),t),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds()),this.fire("animationend")},_animationAddLayer:function(t,e){this._animationAddLayerNonAnimated(t,e)}},_withAnimation:{_animationStart:function(){this._map._mapPane.className+=" leaflet-cluster-anim",this._inZoomAnimation++},_animationZoomIn:function(t,e){var n,i=this._getExpandedVisibleBounds(),o=this._featureGroup,s=Math.floor(this._map.getMinZoom());this._ignoreMove=!0,this._topClusterLevel._recursively(i,t,s,function(s){var r,a=s._latlng,l=s._markers;for(i.contains(a)||(a=null),s._isSingleParent()&&t+1===e?(o.removeLayer(s),s._recursivelyAddChildrenToMap(null,e,i)):(s.clusterHide(),s._recursivelyAddChildrenToMap(a,e,i)),n=l.length-1;n>=0;n--)r=l[n],i.contains(r._latlng)||o.removeLayer(r)}),this._forceLayout(),this._topClusterLevel._recursivelyBecomeVisible(i,e),o.eachLayer(function(t){t instanceof L.MarkerCluster||!t._icon||t.clusterShow()}),this._topClusterLevel._recursively(i,t,e,function(t){t._recursivelyRestoreChildPositions(e)}),this._ignoreMove=!1,this._enqueue(function(){this._topClusterLevel._recursively(i,t,s,function(t){o.removeLayer(t),t.clusterShow()}),this._animationEnd()})},_animationZoomOut:function(t,e){this._animationZoomOutSingle(this._topClusterLevel,t-1,e),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds()),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),t,this._getExpandedVisibleBounds())},_animationAddLayer:function(t,e){var n=this,i=this._featureGroup;i.addLayer(t),e!==t&&(e._childCount>2?(e._updateIcon(),this._forceLayout(),this._animationStart(),t._setPos(this._map.latLngToLayerPoint(e.getLatLng())),t.clusterHide(),this._enqueue(function(){i.removeLayer(t),t.clusterShow(),n._animationEnd()})):(this._forceLayout(),n._animationStart(),n._animationZoomOutSingle(e,this._map.getMaxZoom(),this._zoom)))}},_animationZoomOutSingle:function(t,e,n){var i=this._getExpandedVisibleBounds(),o=Math.floor(this._map.getMinZoom());t._recursivelyAnimateChildrenInAndAddSelfToMap(i,o,e+1,n);var s=this;this._forceLayout(),t._recursivelyBecomeVisible(i,n),this._enqueue(function(){if(1===t._childCount){var r=t._markers[0];this._ignoreMove=!0,r.setLatLng(r.getLatLng()),this._ignoreMove=!1,r.clusterShow&&r.clusterShow()}else t._recursively(i,n,o,function(t){t._recursivelyRemoveChildrenFromMap(i,o,e+1)});s._animationEnd()})},_animationEnd:function(){this._map&&(this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim","")),this._inZoomAnimation--,this.fire("animationend")},_forceLayout:function(){L.Util.falseFn(document.body.offsetWidth)}}),L.markerClusterGroup=function(t){return new L.MarkerClusterGroup(t)};var n=L.MarkerCluster=L.Marker.extend({options:L.Icon.prototype.options,initialize:function(t,e,n,i){L.Marker.prototype.initialize.call(this,n?n._cLatLng||n.getLatLng():new L.LatLng(0,0),{icon:this,pane:t.options.clusterPane}),this._group=t,this._zoom=e,this._markers=[],this._childClusters=[],this._childCount=0,this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._bounds=new L.LatLngBounds,n&&this._addChild(n),i&&this._addChild(i)},getAllChildMarkers:function(t,e){t=t||[];for(var n=this._childClusters.length-1;n>=0;n--)this._childClusters[n].getAllChildMarkers(t,e);for(var i=this._markers.length-1;i>=0;i--)e&&this._markers[i].__dragStart||t.push(this._markers[i]);return t},getChildCount:function(){return this._childCount},zoomToBounds:function(t){for(var e,n=this._childClusters.slice(),i=this._group._map,o=i.getBoundsZoom(this._bounds),s=this._zoom+1,r=i.getZoom();n.length>0&&o>s;){s++;var a=[];for(e=0;e<n.length;e++)a=a.concat(n[e]._childClusters);n=a}o>s?this._group._map.setView(this._latlng,s):o<=r?this._group._map.setView(this._latlng,r+1):this._group._map.fitBounds(this._bounds,t)},getBounds:function(){var t=new L.LatLngBounds;return t.extend(this._bounds),t},_updateIcon:function(){this._iconNeedsUpdate=!0,this._icon&&this.setIcon(this)},createIcon:function(){return this._iconNeedsUpdate&&(this._iconObj=this._group.options.iconCreateFunction(this),this._iconNeedsUpdate=!1),this._iconObj.createIcon()},createShadow:function(){return this._iconObj.createShadow()},_addChild:function(t,e){this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._setClusterCenter(t),t instanceof L.MarkerCluster?(e||(this._childClusters.push(t),t.__parent=this),this._childCount+=t._childCount):(e||this._markers.push(t),this._childCount++),this.__parent&&this.__parent._addChild(t,!0)},_setClusterCenter:function(t){this._cLatLng||(this._cLatLng=t._cLatLng||t._latlng)},_resetBounds:function(){var t=this._bounds;t._southWest&&(t._southWest.lat=1/0,t._southWest.lng=1/0),t._northEast&&(t._northEast.lat=-1/0,t._northEast.lng=-1/0)},_recalculateBounds:function(){var t,e,n,i,o=this._markers,s=this._childClusters,r=0,a=0,l=this._childCount;if(0!==l){for(this._resetBounds(),t=0;t<o.length;t++)n=o[t]._latlng,this._bounds.extend(n),r+=n.lat,a+=n.lng;for(t=0;t<s.length;t++)(e=s[t])._boundsNeedUpdate&&e._recalculateBounds(),this._bounds.extend(e._bounds),n=e._wLatLng,i=e._childCount,r+=n.lat*i,a+=n.lng*i;this._latlng=this._wLatLng=new L.LatLng(r/l,a/l),this._boundsNeedUpdate=!1}},_addToMap:function(t){t&&(this._backupLatlng=this._latlng,this.setLatLng(t)),this._group._featureGroup.addLayer(this)},_recursivelyAnimateChildrenIn:function(t,e,n){this._recursively(t,this._group._map.getMinZoom(),n-1,function(t){var n,i,o=t._markers;for(n=o.length-1;n>=0;n--)(i=o[n])._icon&&(i._setPos(e),i.clusterHide())},function(t){var n,i,o=t._childClusters;for(n=o.length-1;n>=0;n--)(i=o[n])._icon&&(i._setPos(e),i.clusterHide())})},_recursivelyAnimateChildrenInAndAddSelfToMap:function(t,e,n,i){this._recursively(t,i,e,function(o){o._recursivelyAnimateChildrenIn(t,o._group._map.latLngToLayerPoint(o.getLatLng()).round(),n),o._isSingleParent()&&n-1===i?(o.clusterShow(),o._recursivelyRemoveChildrenFromMap(t,e,n)):o.clusterHide(),o._addToMap()})},_recursivelyBecomeVisible:function(t,e){this._recursively(t,this._group._map.getMinZoom(),e,null,function(t){t.clusterShow()})},_recursivelyAddChildrenToMap:function(t,e,n){this._recursively(n,this._group._map.getMinZoom()-1,e,function(i){if(e!==i._zoom)for(var o=i._markers.length-1;o>=0;o--){var s=i._markers[o];n.contains(s._latlng)&&(t&&(s._backupLatlng=s.getLatLng(),s.setLatLng(t),s.clusterHide&&s.clusterHide()),i._group._featureGroup.addLayer(s))}},function(e){e._addToMap(t)})},_recursivelyRestoreChildPositions:function(t){for(var e=this._markers.length-1;e>=0;e--){var n=this._markers[e];n._backupLatlng&&(n.setLatLng(n._backupLatlng),delete n._backupLatlng)}if(t-1===this._zoom)for(var i=this._childClusters.length-1;i>=0;i--)this._childClusters[i]._restorePosition();else for(var o=this._childClusters.length-1;o>=0;o--)this._childClusters[o]._recursivelyRestoreChildPositions(t)},_restorePosition:function(){this._backupLatlng&&(this.setLatLng(this._backupLatlng),delete this._backupLatlng)},_recursivelyRemoveChildrenFromMap:function(t,e,n,i){var o,s;this._recursively(t,e-1,n-1,function(t){for(s=t._markers.length-1;s>=0;s--)o=t._markers[s],i&&i.contains(o._latlng)||(t._group._featureGroup.removeLayer(o),o.clusterShow&&o.clusterShow())},function(t){for(s=t._childClusters.length-1;s>=0;s--)o=t._childClusters[s],i&&i.contains(o._latlng)||(t._group._featureGroup.removeLayer(o),o.clusterShow&&o.clusterShow())})},_recursively:function(t,e,n,i,o){var s,r,a=this._childClusters,l=this._zoom;if(e<=l&&(i&&i(this),o&&l===n&&o(this)),l<e||l<n)for(s=a.length-1;s>=0;s--)(r=a[s])._boundsNeedUpdate&&r._recalculateBounds(),t.intersects(r._bounds)&&r._recursively(t,e,n,i,o)},_isSingleParent:function(){return this._childClusters.length>0&&this._childClusters[0]._childCount===this._childCount}});L.Marker.include({clusterHide:function(){var t=this.options.opacity;return this.setOpacity(0),this.options.opacity=t,this},clusterShow:function(){return this.setOpacity(this.options.opacity)}}),L.DistanceGrid=function(t){this._cellSize=t,this._sqCellSize=t*t,this._grid={},this._objectPoint={}},L.DistanceGrid.prototype={addObject:function(t,e){var n=this._getCoord(e.x),i=this._getCoord(e.y),o=this._grid,s=o[i]=o[i]||{},r=s[n]=s[n]||[],a=L.Util.stamp(t);this._objectPoint[a]=e,r.push(t)},updateObject:function(t,e){this.removeObject(t),this.addObject(t,e)},removeObject:function(t,e){var n,i,o=this._getCoord(e.x),s=this._getCoord(e.y),r=this._grid,a=r[s]=r[s]||{},l=a[o]=a[o]||[];for(delete this._objectPoint[L.Util.stamp(t)],n=0,i=l.length;n<i;n++)if(l[n]===t)return l.splice(n,1),1===i&&delete a[o],!0},eachObject:function(t,e){var n,i,o,s,r,a,l=this._grid;for(n in l)for(i in r=l[n])for(o=0,s=(a=r[i]).length;o<s;o++)t.call(e,a[o])&&(o--,s--)},getNearObject:function(t){var e,n,i,o,s,r,a,l,c=this._getCoord(t.x),u=this._getCoord(t.y),h=this._objectPoint,d=this._sqCellSize,p=null;for(e=u-1;e<=u+1;e++)if(o=this._grid[e])for(n=c-1;n<=c+1;n++)if(s=o[n])for(i=0,r=s.length;i<r;i++)a=s[i],((l=this._sqDist(h[L.Util.stamp(a)],t))<d||l<=d&&null===p)&&(d=l,p=a);return p},_getCoord:function(t){var e=Math.floor(t/this._cellSize);return isFinite(e)?e:t},_sqDist:function(t,e){var n=e.x-t.x,i=e.y-t.y;return n*n+i*i}},L.QuickHull={getDistant:function(t,e){var n=e[1].lat-e[0].lat;return(e[0].lng-e[1].lng)*(t.lat-e[0].lat)+n*(t.lng-e[0].lng)},findMostDistantPointFromBaseLine:function(t,e){var n,i,o,s=0,r=null,a=[];for(n=e.length-1;n>=0;n--)i=e[n],(o=this.getDistant(i,t))>0&&(a.push(i),o>s&&(s=o,r=i));return{maxPoint:r,newPoints:a}},buildConvexHull:function(t,e){var n=[],i=this.findMostDistantPointFromBaseLine(t,e);return i.maxPoint?n=(n=n.concat(this.buildConvexHull([t[0],i.maxPoint],i.newPoints))).concat(this.buildConvexHull([i.maxPoint,t[1]],i.newPoints)):[t[0]]},getConvexHull:function(t){var e,n=!1,i=!1,o=!1,s=!1,r=null,a=null,l=null,c=null,u=null,h=null;for(e=t.length-1;e>=0;e--){var d=t[e];(!1===n||d.lat>n)&&(r=d,n=d.lat),(!1===i||d.lat<i)&&(a=d,i=d.lat),(!1===o||d.lng>o)&&(l=d,o=d.lng),(!1===s||d.lng<s)&&(c=d,s=d.lng)}return i!==n?(h=a,u=r):(h=c,u=l),[].concat(this.buildConvexHull([h,u],t),this.buildConvexHull([u,h],t))}},L.MarkerCluster.include({getConvexHull:function(){var t,e,n=this.getAllChildMarkers(),i=[];for(e=n.length-1;e>=0;e--)t=n[e].getLatLng(),i.push(t);return L.QuickHull.getConvexHull(i)}}),L.MarkerCluster.include({_2PI:2*Math.PI,_circleFootSeparation:25,_circleStartAngle:0,_spiralFootSeparation:28,_spiralLengthStart:11,_spiralLengthFactor:5,_circleSpiralSwitchover:9,spiderfy:function(){if(this._group._spiderfied!==this&&!this._group._inZoomAnimation){var t,e=this.getAllChildMarkers(null,!0),n=this._group._map.latLngToLayerPoint(this._latlng);this._group._unspiderfy(),this._group._spiderfied=this,this._group.options.spiderfyShapePositions?t=this._group.options.spiderfyShapePositions(e.length,n):e.length>=this._circleSpiralSwitchover?t=this._generatePointsSpiral(e.length,n):(n.y+=10,t=this._generatePointsCircle(e.length,n)),this._animationSpiderfy(e,t)}},unspiderfy:function(t){this._group._inZoomAnimation||(this._animationUnspiderfy(t),this._group._spiderfied=null)},_generatePointsCircle:function(t,e){var n,i,o=this._group.options.spiderfyDistanceMultiplier*this._circleFootSeparation*(2+t)/this._2PI,s=this._2PI/t,r=[];for(o=Math.max(o,35),r.length=t,n=0;n<t;n++)i=this._circleStartAngle+n*s,r[n]=new L.Point(e.x+o*Math.cos(i),e.y+o*Math.sin(i))._round();return r},_generatePointsSpiral:function(t,e){var n,i=this._group.options.spiderfyDistanceMultiplier,o=i*this._spiralLengthStart,s=i*this._spiralFootSeparation,r=i*this._spiralLengthFactor*this._2PI,a=0,l=[];for(l.length=t,n=t;n>=0;n--)n<t&&(l[n]=new L.Point(e.x+o*Math.cos(a),e.y+o*Math.sin(a))._round()),o+=r/(a+=s/o+5e-4*n);return l},_noanimationUnspiderfy:function(){var t,e,n=this._group,i=n._map,o=n._featureGroup,s=this.getAllChildMarkers(null,!0);for(n._ignoreMove=!0,this.setOpacity(1),e=s.length-1;e>=0;e--)t=s[e],o.removeLayer(t),t._preSpiderfyLatlng&&(t.setLatLng(t._preSpiderfyLatlng),delete t._preSpiderfyLatlng),t.setZIndexOffset&&t.setZIndexOffset(0),t._spiderLeg&&(i.removeLayer(t._spiderLeg),delete t._spiderLeg);n.fire("unspiderfied",{cluster:this,markers:s}),n._ignoreMove=!1,n._spiderfied=null}}),L.MarkerClusterNonAnimated=L.MarkerCluster.extend({_animationSpiderfy:function(t,e){var n,i,o,s,r=this._group,a=r._map,l=r._featureGroup,c=this._group.options.spiderLegPolylineOptions;for(r._ignoreMove=!0,n=0;n<t.length;n++)s=a.layerPointToLatLng(e[n]),i=t[n],o=new L.Polyline([this._latlng,s],c),a.addLayer(o),i._spiderLeg=o,i._preSpiderfyLatlng=i._latlng,i.setLatLng(s),i.setZIndexOffset&&i.setZIndexOffset(1e6),l.addLayer(i);this.setOpacity(.3),r._ignoreMove=!1,r.fire("spiderfied",{cluster:this,markers:t})},_animationUnspiderfy:function(){this._noanimationUnspiderfy()}}),L.MarkerCluster.include({_animationSpiderfy:function(t,e){var n,i,o,s,r,a,l=this,c=this._group,u=c._map,h=c._featureGroup,d=this._latlng,p=u.latLngToLayerPoint(d),f=L.Path.SVG,_=L.extend({},this._group.options.spiderLegPolylineOptions),m=_.opacity;for(void 0===m&&(m=L.MarkerClusterGroup.prototype.options.spiderLegPolylineOptions.opacity),f?(_.opacity=0,_.className=(_.className||"")+" leaflet-cluster-spider-leg"):_.opacity=m,c._ignoreMove=!0,n=0;n<t.length;n++)i=t[n],a=u.layerPointToLatLng(e[n]),o=new L.Polyline([d,a],_),u.addLayer(o),i._spiderLeg=o,f&&(r=(s=o._path).getTotalLength()+.1,s.style.strokeDasharray=r,s.style.strokeDashoffset=r),i.setZIndexOffset&&i.setZIndexOffset(1e6),i.clusterHide&&i.clusterHide(),h.addLayer(i),i._setPos&&i._setPos(p);for(c._forceLayout(),c._animationStart(),n=t.length-1;n>=0;n--)a=u.layerPointToLatLng(e[n]),(i=t[n])._preSpiderfyLatlng=i._latlng,i.setLatLng(a),i.clusterShow&&i.clusterShow(),f&&((s=(o=i._spiderLeg)._path).style.strokeDashoffset=0,o.setStyle({opacity:m}));this.setOpacity(.3),c._ignoreMove=!1,setTimeout(function(){c._animationEnd(),c.fire("spiderfied",{cluster:l,markers:t})},200)},_animationUnspiderfy:function(t){var e,n,i,o,s,r,a=this,l=this._group,c=l._map,u=l._featureGroup,h=t?c._latLngToNewLayerPoint(this._latlng,t.zoom,t.center):c.latLngToLayerPoint(this._latlng),d=this.getAllChildMarkers(null,!0),p=L.Path.SVG;for(l._ignoreMove=!0,l._animationStart(),this.setOpacity(1),n=d.length-1;n>=0;n--)(e=d[n])._preSpiderfyLatlng&&(e.closePopup(),e.setLatLng(e._preSpiderfyLatlng),delete e._preSpiderfyLatlng,r=!0,e._setPos&&(e._setPos(h),r=!1),e.clusterHide&&(e.clusterHide(),r=!1),r&&u.removeLayer(e),p&&(s=(o=(i=e._spiderLeg)._path).getTotalLength()+.1,o.style.strokeDashoffset=s,i.setStyle({opacity:0})));l._ignoreMove=!1,setTimeout(function(){var t=0;for(n=d.length-1;n>=0;n--)(e=d[n])._spiderLeg&&t++;for(n=d.length-1;n>=0;n--)(e=d[n])._spiderLeg&&(e.clusterShow&&e.clusterShow(),e.setZIndexOffset&&e.setZIndexOffset(0),t>1&&u.removeLayer(e),c.removeLayer(e._spiderLeg),delete e._spiderLeg);l._animationEnd(),l.fire("unspiderfied",{cluster:a,markers:d})},200)}}),L.MarkerClusterGroup.include({_spiderfied:null,unspiderfy:function(){this._unspiderfy.apply(this,arguments)},_spiderfierOnAdd:function(){this._map.on("click",this._unspiderfyWrapper,this),this._map.options.zoomAnimation&&this._map.on("zoomstart",this._unspiderfyZoomStart,this),this._map.on("zoomend",this._noanimationUnspiderfy,this),L.Browser.touch||this._map.getRenderer(this)},_spiderfierOnRemove:function(){this._map.off("click",this._unspiderfyWrapper,this),this._map.off("zoomstart",this._unspiderfyZoomStart,this),this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._map.off("zoomend",this._noanimationUnspiderfy,this),this._noanimationUnspiderfy()},_unspiderfyZoomStart:function(){this._map&&this._map.on("zoomanim",this._unspiderfyZoomAnim,this)},_unspiderfyZoomAnim:function(t){L.DomUtil.hasClass(this._map._mapPane,"leaflet-touching")||(this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy(t))},_unspiderfyWrapper:function(){this._unspiderfy()},_unspiderfy:function(t){this._spiderfied&&this._spiderfied.unspiderfy(t)},_noanimationUnspiderfy:function(){this._spiderfied&&this._spiderfied._noanimationUnspiderfy()},_unspiderfyLayer:function(t){t._spiderLeg&&(this._featureGroup.removeLayer(t),t.clusterShow&&t.clusterShow(),t.setZIndexOffset&&t.setZIndexOffset(0),this._map.removeLayer(t._spiderLeg),delete t._spiderLeg)}}),L.MarkerClusterGroup.include({refreshClusters:function(t){return t?t instanceof L.MarkerClusterGroup?t=t._topClusterLevel.getAllChildMarkers():t instanceof L.LayerGroup?t=t._layers:t instanceof L.MarkerCluster?t=t.getAllChildMarkers():t instanceof L.Marker&&(t=[t]):t=this._topClusterLevel.getAllChildMarkers(),this._flagParentsIconsNeedUpdate(t),this._refreshClustersIcons(),this.options.singleMarkerMode&&this._refreshSingleMarkerModeMarkers(t),this},_flagParentsIconsNeedUpdate:function(t){var e,n;for(e in t)for(n=t[e].__parent;n;)n._iconNeedsUpdate=!0,n=n.__parent},_refreshSingleMarkerModeMarkers:function(t){var e,n;for(e in t)n=t[e],this.hasLayer(n)&&n.setIcon(this._overrideMarkerIcon(n))}}),L.Marker.include({refreshIconOptions:function(t,e){var n=this.options.icon;return L.setOptions(n,t),this.setIcon(n),e&&this.__parent&&this.__parent._group.refreshClusters(this),this}}),t.MarkerClusterGroup=e,t.MarkerCluster=n,Object.defineProperty(t,"__esModule",{value:!0})}(_u.exports));const mu="hmsfire",gu=new du.FeatureGroup,vu=Al.defineOptions({fire:{label:"HMS Fire",model:!0,icon:{id:"emergency_heat"}}}),yu=Mc(async t=>{const{map:e}=await $u();let n=[];e.createPane(mu).style.zIndex="610",n=await bu(),gu.addTo(e),wn(()=>vu.fire.model.value,async t=>{t?(n.length||(n=await bu()),gu.addTo(e)):gu.remove()}),t(vu)});async function bu(){const t=await async function(){return await Zc({url:"hms/fire"})}();return t.filter(t=>null!==t.frp).forEach(t=>{(function(t,e){const[n,i]=t.geometry.coordinates;new du.Point(0,0);const o=du.divIcon({html:`<span translate="no" class="material-symbols-outlined ${wu(t.frp)}">emergency_heat</span>`,className:"leaflet-fire-icon fill-material-icon",iconSize:[30,30]}),s=du.marker([i,n],{icon:o,pane:e});return s})(t,mu).addTo(gu)}),t}function wu(t){return t>0&&t<10?"sm":t>=10&&t<=49?"md":t>=50&&t<=149?"lg":t>=150&&t<=349?"xl":t>349?"xxl":void 0}const xu={key:0,class:"fire-legend-container card is-flex is-flex-direction-column"},Lu=Pl(Kn({__name:"FireLegend",async setup(t){let e,n;const i=([e,n]=Bi(()=>yu()),e=await e,n(),e),o=Ss(()=>i.fire.model.value&&gu.getLayers().length>0);return(t,e)=>o.value?(Ho(),Yo("div",xu,[...e[0]||(e[0]=[rs('<h3 class="has-text-centered has-text-wrap-nowrap has-font-weight-semibold" data-v-0a25d560> Fire Points </h3><div data-v-0a25d560><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="sm material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560><10 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="md material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>10-49 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="lg material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>50-149 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="xl material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>150-349 MW</p></div><div class="is-flex" data-v-0a25d560><div class="leaflet-fire-icon" data-v-0a25d560><span class="xxl material-symbols-outlined" data-v-0a25d560>emergency_heat</span></div><p data-v-0a25d560>≥350 MW</p></div></div>',2)])])):as("",!0)}}),[["__scopeId","data-v-0a25d560"]]),Pu="geolocation"in navigator,Cu={latitude:36.76272911677402,longitude:-119.7989545249089};async function Mu(t){return new Promise(e=>{if(Pu)return navigator.geolocation.getCurrentPosition(e,console.error,t);e({timestamp:Date.now(),coords:{accuracy:0,altitude:0,altitudeAccuracy:0,heading:0,speed:0,...Cu}})})}const Tu="/static/monitor-map/airgradient-blue.svg",ku="data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMpaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQ3NzcsIDIwMTAvMDIvMTItMTc6MzI6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzUgV2luZG93cyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyMTZFNDM2OTMyNjUxMUUyOTFBMkZCRkM2NjEwQUMxOSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyMTZFNDM2QTMyNjUxMUUyOTFBMkZCRkM2NjEwQUMxOSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjIxNkU0MzY3MzI2NTExRTI5MUEyRkJGQzY2MTBBQzE5IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjIxNkU0MzY4MzI2NTExRTI5MUEyRkJGQzY2MTBBQzE5Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoKDBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgANgBlAwERAAIRAQMRAf/EAKgAAAICAwEBAAAAAAAAAAAAAAAFBAYDBwgBAgEAAgMBAQAAAAAAAAAAAAAAAAMBAgQFBhAAAQMDAwEFBQMKBwAAAAAAAgEDBBEFBgAhEgcxQSITFFFxgXIVYZEyoUJSYqIjM1MWCJKyc9MklJURAAEDAQUCCgcHBQAAAAAAAAEAAgMRITESEwRBUWFxgZGxwdEiMgXwoeFCUpLSYqIjMxQVFvGC8jQG/9oADAMBAAIRAxEAPwDqnQhGhCT5Nl+N4xC9ZfJ7cNoq+WJKquGqdzbY1MvgmnwaaSU0YKqj5GtFSVS4XUzMsqXlhWMqluVVQL1eTViOtFpUGm6m4Pyl76a3O0MUP5r+98LbSkiZzvCLN5TuNi+eS/Fe8tcZEtyi2iKxHFPsR58ZDqp92kO1EI8EfzEn1CgVwx5vdzJg1hEBKLIuV3kmi15FcpjW/wAsdxkfhSmlHVHYGD+0dYKtljeedSf6Utf8+4f+lcP9/Vf1Dtzflb2KcA4ecrKmPwx3B+aJIiIhetlHTitfwm4Qr9tU31XOO4cw7FOALIzbZTTgF9TlG2Kp+5NI6iqIvYpeUh/tV1BeD7o9fainCp+lqyNCEaEI0IRoQqB1c6qRMGtQBHEJN9movoopKvEQTZXnKb8UXZE/OX3LTpeXeXnUOtsYL+xZ558A4VT+mfSibkD4Zt1CM7lPl0dhW+RuAgu4m6FET5G0Tiidqdybdd5gIxkwd0C8jq7UqGAu7z7VuOXaY0ryxcN4GWh4gyw84wHx8kgVdtqKtPs1xGyEbunpWstqobuG4i8KpIssGRVKET8dp0i+YjElX46uNTKLnOHKoy27ksm9McUdFSt7T1jkp/Dk2l5yGQe4GlRpfcQLprddIPFR4+0K+1VMLdlnEqnLyjqJgF0YYyBs8pxiUfBi7RmaTWP1XgbTiVE/xdvL83WxsEGpaSz8OQbCbDxJJe+M295q2hBmxp0NmZFPnHfBHGiVFFVQkruJIhIvtRUqmuS9paaG8LUDUVWfVVKNCEaEI0IRoQjQhcuWFtepfXV6RO/fWuM84/5RJUfSQ14stqPZQy4cvmXXrpj+l0dB4j0m9ctv4ktty6jRKbJ2a8iuotc9Yepd3w5i3R7FGYmXaar7xsvg44IxYzam6fFs2ySnbWvYha6nluhbOSXkhopzlZ9RMWUperfi+QN5Bi9vvcVBrOji6gV8IuKlDBV3/CaKOsU8OXIWHYU1j8TQUnwPJrzLxZ265c9bYrzcgwV6HIbOMLfhQObiOOAJKRUpz7Kd+nauBgkwxBxs2i1UieS2rqLNmWaRrVjF6uFolRJlztUdJCxVNHePNU4K6DZiaCXduldV02lL5GtcCGuKmSSjSReEr6R9TRzezOrMbbi3yGqesitoQgrbniadbE1IuJDt2rv7007zHQ5DrLWG7sVYJsYtvUvpvmd0yf8AqD17TDX0q6PwI/kCY8mmqcVPmZ1LfelE+zVNbpmxYMNe80FTDIXVrsKsH9TY39R+m/Vof1GtPReoa8+taU8vlz/JrNkSYcWE4d9LEzG2tK2qUdxt4TggHKZGc4HmNxFcFHSBK+IW68lTwrvTu1TA6mKlm9TUVovQuEA5pwQktFNbFHHIqGKuiC0oRBXkibpvTRgNK0sRUVosSXqzLJKKk+OsoHBZNhHQ8xHCRVEFGteSoKqiduy6tlOpWhooxDepmlqy5n/tsbS39RrxbZScJjcJ5mipReTMhtDH37V+GvV+dnFA1wuqOgrm6Ox5C6Y15RdJaIduuRX3q7fb1Z8bTJoFkYWyNtFLZiACnVHS5PckPkvmj4U/Cu+vQiNkemaxz8suOK4niu5FhxF0hIGKlicf2+3CfBYvmFXVkok+ySfOaiuGLhAzI3UEIfCSCacuSbLz0nzhgcWytNQ4dHp6lfSkirTsVMxYUX+2bJEVEVPVku/tRyMqa3aj/fZxdqQz8gq2ScLsOPdCblKgMUn3K0sv3CYSkpvG4guLWqqiIimtETWJuqfJrACbGvNAnGMNiNNoSm5Wm4YrYsN6m2FojWParfHyOIG3nxSjtjzX3JQVXu8Jdy6eyRsz5NO/a52E7jU+nOqFpaGvG4VULH8hlMdKOo96srpg4/d3DjPhUTFqS40JGneKo24q17tXmhB1MLH/AAdFVVj/AMNxG9O53Tbp810RW6BFaGcFqG4N3av78pStI4KeZXsJ1eHH4dukM10x1eGtmKlNlP6JhhZlV4EvmTrlHsXTHqHONVkQ3RgXWSX4iivqTYuGv+mJbr2qWmNY0vmgFxtHGFUk0Y8pfZ79Lt2bxuqc15RsOQ3KbbDItkGGACEUlX5mVr8n3NkhDoTpx42Na7l29PrVWuo7MNxJC8C1XcOlbvUIRpdnsgbyNxO9WWXTZAPlQniP5V0GRv6jI93LwdfUjCcvHtxVXR+vLrorn/qfj90wLqJF6kWeOT9qeeQ7o0GyA44nlvCXsF4SVUJew/hr0mgmbqIDA496lnVzdCwTMMb8YuW8bLerZfbSxdLXIR+FLDk08FKpXtRUWtCFdlRexdeflidG4tcLQtrXBwqFAw3CrNiNtet9qV025D5yX3ZBo46bhoiKpEiD3Cmm6nVPmdidsFFWOMMFAvkMHsreaOZg0Tzd2ej+lfETRGXG0RETmPGtfAPf3JoOqeYso+GtUZQxYtqWwOlOMQsKmYeyclbTOcV14icFXuSqC+E+FE/hp3aa/wAwkdKJTTEFUQNDcOxT8htGON4WVhusg49mWO3BVzlRzgIoIoioK+Kg/o6yO1uS/ON9a3E38AVnNGGhuWO1XHDgsMWwsPLLtrUYLeAONuGhtACMoJrwQVqKUXXPl87hxmQuINcXhdx7lLACA0cShYrhWE41ZZ9lhI6/bbkZHKYlITqEhgjZB+AfDxTv1XUf9fp5Xh5f3m7mP+lMZoi0EAWHhCpw9NulfEYp3m8uWYHfOCxm7IWChVrsCMofx51+3XR/l0d9W4viwOr0Jv7FLus3Ym9qf5PknSq74+9i1wkutW9BbZRpiJKFWkYIVBG1RkhTjwRNu7S9P5q1rxK028R2rd/HdU9lMAoftM+pKLrdeis3DY2HSJ0oLVERryFbizEdQmlrz5+nVORVXlt3rrZD5i/MMzfEUiXyGdowOb95vanI5t0rLEHLIkx36G1HC1mPpJnJG3GjAE/g1VVBsvFTt+Gl5zszM96tVH7VNTBh2fE3tWxNJWNY5UWNLjOxpTQPxnhUHmXBQwMSSiiQrVFRdS1xBqL1BFVrxrpdd8YnOzun11G3syC5ybDcEN+AZe0SFfNa96VX7aba6Z17ZRSdtae8LHdhWfILTVh5NisMXIMyaDjcsWccdHbnbZcV4CX2p6o4ZImszoYj4X/MD1YkwPdtHp6lPC73l7wtWOQya0oUt6KDfxJh2SX7GlZbB7w5AesBWxHckuU9TbDiMIzyKQyNzKqsWqEavvEip4U8SNqlf0iEU1o0+hfMe4Dh3mwKj5gwW3rWIYfnvVy9s3fJwcsOKMLWFAWqOkC7+ACRPEafidNPlSm2usdTDo2YY+/Ibz6dCzZb5TV1jVvS02m3Wi2x7bbWBjQYoI2wwCbCib/FVXdVXdV3156SRz3FzjUlbmtAFApeqKUaEI0IRoQjQhLvKyId/UxHf1PIda/a85z/AC6bVm48/sVbV8lIydBLjAhESU4VmOii+2v/ABSp+XU0j3nmH1Iq7d6cywlKzGi8bXblKmyLcH0Sv/SXU4Yvid8o+pRV24c/sUV1zqM8lGY9nhKveb8qYifBGYdfv1cCAXl55AOsqO/wJFe8cyl2Kb2QZfObhLucXH4BMmntRDaSZJVNaIp4waMjbX7bv8QluY7a48gS3p+30LbuShYHYz18E1RXbgjqTSdruoesEC5V/lppusOsLe/XBwXfd61WLKrZetpa5C1I0IRoQjQhGhCNCEaEL//Z",Su="/static/monitor-map/carb-compact.jpg",Au="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAACXBIWXMAAAsSAAALEgHS3X78AAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTAxLTA2VDIxOjUyOjI5KzAwOjAwSQXdiwAAArVQTFRF////mDOP6dPnxYzAmzmS6tXouHOymDSPmjeRt3GxnT2U8+jymjaRnT6Vo0mb9ev0mziSnDqTw4i+/v3+zJnHypbF3LrZ69fpnDuTnkCWoUWZ5MrimTWQp1CfyJPEzZzJyZXF8uXxwIK6/vz+pk+e9OnzuXWzsWWq8eTw5c3j8OHvy5nHypfG1avRtW2vzp/K79/unDyUmzqTrl+n/fv9qlejpEucnTyUnT2Vokea+fP4mjiRn0GX7t7tmTaRtGuumjiSp1Gf/Pn8yZTE3bzapk6e6dToyJHDuXSzsmarzJvIwIO76NHmrV2mzJrHqFKgy5jGsmis0aTNv4C56dTnpEqc48fgoUaZ37/cvXy38OLvvn64yJLDvHq2+vX64sXf1KrQ06nQ8ePw/v7+s2mt2rXW7dzs4cPe2bXWvn+5xIq/+fT5x5DCxo7B8OHuu3i148nhpUyduHKxzp7K4sbgqFOhune0mTaQ3r3b9/D3+vb6nj+WoEKXn0KX9ez0mTSQ5czj+PD3vHu3pU2dz6DLr2CowYW85MnhsmersWWroEOY9u313bva79/tvHu2o0qb/Pj70KPN6tbpnj6V48jh/fz9sGOq7dvrqVWi7tzs1KrRtGyu16/T7Nrr7+Du58/lypXFypbGoUSZ9+/2xIu/+PH4sGOpp1Kgv4G6n0CWy5fG4MLe+/f7+PH3woa9r2Kp06jP8ubx3LnZs2msune1x5HC+fP5z5/KsWSqw4i9zZzIokaa9Orzy5jH1KvRpU6dz6HLt3Cw1azS17DU7NnqtGutsGSqtGqtxY3AtWyu3r/cxo/B3r7ctW6v2LHU38Dd0aPN9ez117DTpEydtm+w8+fy0qbOwoe9mDSQs2isvX24x5HD69jpoEOXuna05cvj//7/uHKysGKpu3m2/Pr8u3m1wIG6s+L4kwAAAjpJREFUSMdjYBgFdAQGPkwGykSrNklsrTG3qPUNmkCcettl1jySfHySHBzG04lRH7XcYREzax2/uLslh+tMIjTYc6hoQlisMzimTcWveP4CoRUrbeJhXKZwhzl4PevNJcPOwhKLEBGSmY1PQxsPb0ewumwIQmSKeT/zxAZc4evGy1sMpOKQhBQlBWXqDY0rsGtQ4OjEEJP3aAqU4jCUw6JcsU+KJxp7vJRJsMhjiE6S5eAyLcHhWCEjGyY0oUZTAcceYZzB4VkeiSbizGMmjif8XIyaK1EEqkoFWvAFOLclLyuKgHh1Vy8+DVYqgtIoAtISfPz4NPDzcaH6mnWyVBI+DRGCZt2oVsqyJOBNwXZqaCJL7Pw34lYvJ2HRjh4Mriy+PriCSInLmhlDNGw3x90ruQoBIn5eXn4iItp7A1bpLBRVcI5h3hIqwKKExZwQdcEbjIzsqIARCNgF/Gdhtzr+9i01Nk4IKHrIBgQeaveeRueKbaNKyXUxPz8WOfYzUsFUeqTyE9E4bBq0Luddu3lHI1szquCM5qmEBzo6DIfFGBiKuAoYErnvb1qMoUFj/6VMpeuHjpy8UHjuWNYJIX39nJ16+67q6T5LfhQRHrMUU0OoiK5wVoYWW9BphrN52YGiojvk3HUPqDwuTEo5vxmLk+Y5ArPPdnXvg/o5DEeDM7fuktdex+yyXoxbT/u4WAoWDU5MyUBiNavWHkUGzw1hwqqqDOnSa9wYGFTT0tbOJRBiqfyj9d2wAwA8Loee6z0+HQAAAABJRU5ErkJggg==",Eu="/static/monitor-map/icon-128.webp";class Ou{constructor(t){this.data=t,this.logo=function(t){switch(t.data.data_source.name){case"AQview":return{url:Su,alt:"AQview"};case"AirNow.gov":return{url:ku,alt:"AirNow.gov"};case"PurpleAir":return{url:Au,alt:"PurpleAir"};case"Central California Asthma Collaborative":return{url:Eu,alt:"Central California Asthma Collaborative"};case"AirGradient":return{url:Tu,alt:"PurpleAir"};default:return{url:"",alt:""}}}(t)}logo}class zu{constructor(t){this.data=t}}const Iu={class:"results-list"},Bu={class:"result-item"},Zu=["onClick"],Ru={class:"geocode-data"},Du=["onClick"],Nu=["src","alt"],ju=Kn({__name:"MonitorSearch",async setup(t){let e,n;const{map:i,recenter:o}=([e,n]=Bi(()=>$u()),e=await e,n(),e),{activeMonitor:s}=([e,n]=Bi(()=>eu()),e=await e,n(),e),r=ke(!0),a=ke(null),l=ke(""),c=ke([]),u=ke(),h=oa(),d=du.divIcon({html:'<span class="location-icon material-symbols-outlined"> location_on </span>',pane:"selectedMarker",className:"location-icon-container",iconAnchor:[10,10]});function p(){r.value||_()}function f(){setTimeout(()=>{l.value="",c.value=[],u.value?.remove()},0)}function _(){r.value=!0,a.value.blur()}function m(){r.value&&(r.value=!1,l.value.length||a.value.focus())}const g=function(t,e){let n=0;return function(i){clearTimeout(n),n=setTimeout(()=>{t(i)},e)}}(async function(t){const e=await async function(t){const{monitors:e}=await eu(),n=[],i=t.toLowerCase();let o;for(o in e.value){const t=e.value[o],s=t.data.name.toLowerCase();s!==i?(s.startsWith(i)||s.includes(i))&&n.push(t):n.push(t)}return n.map(t=>new Ou(t)).slice(0,4)}(l.value);l.value.length?!e.length&&l.value.length>4?c.value=await async function(t){const{coords:{latitude:e,longitude:n}}=await Mu(),i=new URL(`https://api.maptiler.com/geocoding/${encodeURIComponent(t)}.json`);return i.searchParams.append("country","us"),i.searchParams.append("fuzzyMatch","true"),i.searchParams.append("key","1ZwL7YJSSN42A678HHPn"),i.searchParams.append("limit","4"),i.searchParams.append("proximity",`${n},${e}`),await fetch(i).then(async t=>await t.json()).then(t=>t.features.length?t.features.map(t=>new zu(t)):[]).catch(t=>(console.error("Failed to geocode location:",t),[]))}(l.value):e.length&&(c.value=e):(c.value=[],u.value&&u.value.remove())},500);return(t,e)=>mn((Ho(),Yo("div",{class:$(["search-component",{collapsed:r.value,results:c.value.length}])},[es("div",{class:$(["search-header",{collapsed:r.value,results:c.value.length}])},[es("div",{class:"search-icon-container",onClickCapture:m},[...e[2]||(e[2]=[es("span",{class:"material-symbols-outlined search-icon"}," search ",-1)])],32),es("span",{class:$(["search-input-container",{collapsed:r.value}])},[mn(es("input",{ref_key:"searchInput",ref:a,type:"text","onUpdate:modelValue":e[0]||(e[0]=t=>l.value=t),onInput:e[1]||(e[1]=(...t)=>Oe(g)&&Oe(g)(...t))},null,544),[[kr,l.value]]),l.value.length&&!r.value?(Ho(),Yo("span",{key:0,onClick:f,class:"clear-btn material-symbols-outlined"}," clear ")):as("",!0)],2)],2),es("div",{class:$(["search-results",{collapsed:!c.value.length||r.value}])},[es("div",Iu,[(Ho(!0),Yo(Do,null,Pi(c.value,t=>(Ho(),Yo("div",Bu,[t instanceof Oe(zu)?(Ho(),Yo("div",{key:0,onClick:e=>async function(t){if("Point"===t.geometry.type){u.value&&u.value.remove();const e=t.geometry.coordinates.toReversed();u.value=du.marker(e,{icon:d,pane:"selectedMarker"}).addTo(i),"address"===t.place_type[0]?o(e,16):o(e)}}(t.data),class:"geocode-result"},[e[3]||(e[3]=es("span",{class:"location-icon material-symbols-outlined"}," location_on ",-1)),es("div",Ru,[es("p",null,X(t.data.place_name.substring(0,t.data.place_name.indexOf(","))),1),es("p",null,X(t.data.place_name.substring(t.data.place_name.indexOf(",")+1)),1)])],8,Zu)):t instanceof Oe(Ou)?(Ho(),Yo("div",{key:1,onClick:e=>async function(t){_(),s.value=t,h.push({name:"details",params:{monitorId:t.data.id}})}(t.data),class:"monitor-result"},[es("img",{src:t.logo.url,alt:t.logo.alt},null,8,Nu),es("p",null,X(t.data.data.name),1)],8,Du)):as("",!0)]))),256))])],2)],2)),[[Oe(kl),p]])}}),Fu=Pl(ju,[["__scopeId","data-v-3a88abc4"]]),Uu={center:du.latLng(36.76272911677402,-119.7989545249089),zoom:8,maxZoom:18},Gu={animate:!0,duration:.5};let Hu;const $u=Mc(async t=>{const e=new ResizeObserver(()=>Hu.invalidateSize()),n=document.createElement("div");Hu=du.map(n,Uu),n.style.flex="1",e.observe(n);const i=function(t){const e=()=>{document.removeEventListener("visibilitychange",i)};if(document.body.getAttribute("cacheOnLeave"))return e;const n={center:t.getCenter(),zoom:t.getZoom()};function i(){switch(document.visibilityState){case"hidden":n.center=t.getCenter(),n.zoom=t.getZoom();break;case"visible":t.setView(n.center,n.zoom)}}return document.addEventListener("visibilitychange",i),document.body.setAttribute("cacheOnLeave","true"),e}(Hu);Hu.addEventListener("click",Vu),_i(()=>{i(),e.disconnect(),Hu.removeEventListener("click",Vu)}),t({map:Hu,mapContainer:n,focusAssertion:qu,recenter:Yu})});function Vu(t){const{originalEvent:{ctrlKey:e},latlng:n,sourceTarget:i}=t;if(e){const t=function(t){const e=du.divIcon({className:"is-flex is-justify-content-center is-align-items-center",iconAnchor:new du.Point(5,10),html:'<span class="material-symbols-outlined is-size-3 has-text-info fill-material-icon"> pin_drop </span>'});return du.marker(t,{icon:e})}(n),e=function(t){return function(){t.remove()}}(t);t.bindPopup(function(t){return`\n <p class="m-0">Lat: <span id="dropPointLat">${t.lat.toFixed(6)}</span></p>\n <p class="m-0">Lng: <span id="dropPointLng">${t.lng.toFixed(6)}</span></p>\n <div class="mt-1">\n <button id="dropPointPopupCopy">Copy</button>\n <button id="dropPointPopupRemove">Remove</button>\n </div>\n`}(n)),t.addEventListener("popupopen",()=>{const t=document.getElementById("dropPointPopupCopy"),n=document.getElementById("dropPointPopupRemove");t?.addEventListener("click",Wu),n?.addEventListener("click",e)}),t.addEventListener("popupclose",()=>{const t=document.getElementById("dropPointPopupCopy"),n=document.getElementById("dropPointPopupRemove");t?.removeEventListener("click",Wu),n?.removeEventListener("click",e)}),t.addTo(i)}}async function Wu(){const t=document.getElementById("dropPointLat")?.textContent,e=document.getElementById("dropPointLng")?.textContent;await navigator.clipboard.writeText(`${t},${e}`).then(()=>{const t=document.createElement("div");t.innerText="Coordinates copied to clipboard!",t.style.position="absolute",t.style.left="50%",t.style.top="5%",t.style.backgroundColor="rgba(255, 255, 255, 0.8)",t.style.padding="10px",t.style.fontSize="18px",t.style.fontWeight="bold",t.style.zIndex="1000",document.body.appendChild(t),setTimeout(()=>{t.remove()},3e3)})}function qu(t){if(null==t.data.position)return;const[e,n]=t.data.position.coordinates,{lng:i,lat:o}=Hu.getCenter();if(e!==i||n!==o){Yu(du.latLng(n,e))}}function Yu(t,e){if(t){const n=e??Math.max(Hu.getZoom(),10);Hu.flyTo(t,n,Gu)}else{const t=Hu.getBounds().getCenter();Hu.setView(t,Uu.zoom,Gu)}}const Ku=Kn({__name:"Geolocate",async setup(t){let e,n;const{recenter:i}=([e,n]=Bi(()=>$u()),e=await e,n(),e);async function o(){const{coords:{latitude:t,longitude:e}}=await Mu();i(du.latLng(t,e))}return(t,e)=>(Ho(),Yo("div",{onClick:o,class:"locate"},[...e[0]||(e[0]=[es("span",{class:"material-symbols-outlined"}," my_location ",-1)])]))}}),Ju=Pl(Ku,[["__scopeId","data-v-d6ffe8a7"]]),Xu={class:"map-footer"},Qu={class:"legend-container"},th=Pl(Kn({__name:"Map",async setup(t){let e,n;const i=ke(),{mapContainer:o}=([e,n]=Bi(()=>$u()),e=await e,n(),e);return di(async()=>{i.value.appendChild(o)}),(t,e)=>(Ho(),Yo("div",{ref_key:"mapTarget",ref:i,class:"map section is-paddingless"},[ns(Fu,{class:"monitor-search"}),es("div",Xu,[es("div",Qu,[ns(Lu,{class:"fire-legend"}),ns(lu,{class:"marker-legend"})]),ns(Ju,{class:"geolocate"})])],512))}}),[["__scopeId","data-v-a59f1178"]]);const eh=new Vc(new function(t){return new Worker("/static/monitor-map/assets/CalibratorsWorker-BJ43xm7L.js",{type:"module",name:t?.name})});const nh=ke([]);async function ih(){return{calibrators:nh,fetchCalibrators:oh}}async function oh(){nh.value.length||await async function(){return await eh.run("fetchCalibrators")}().then(t=>{nh.value=t.length?t:[]}).catch(()=>console.error("Failed to fetch Calibrators."))}function sh(t){return nh.value.find(e=>e.reference_id===t)}function rh(t){return"string"==typeof t?nh.value.some(e=>e.id===t):nh.value.some(e=>e.id===t.data.id)}function ah(t){return"string"==typeof t?nh.value.some(e=>e.reference_id===t):nh.value.some(e=>e.reference_id===t.data.id)}const lh=new Map,ch=new du.FeatureGroup,uh=new du.FeatureGroup,hh=Al.defineOptions({SJVAirPurpleAir:{containerClass:"has-text-success",icon:{id:"circle"},model:!0,label:"SJVAir non-FEM"},SJVAirBAM:{containerClass:"has-text-success",icon:{id:"change_history"},model:!0,label:"SJVAir FEM"},AirNow:{containerClass:"has-text-success",icon:{id:"change_history"},model:!0,label:"AirNow FEM"},AQview:{containerClass:"has-text-success",icon:{id:"change_history"},model:!0,label:"AQview FEM"},PurpleAir:{containerClass:"has-text-success",icon:{id:"square"},model:!0,label:"Private PurpleAir"},displayInactive:{containerClass:"has-text-grey-light",icon:{id:"square"},model:!1,label:"Inactive monitors"},PurpleAirInside:{containerClass:"icon-border has-text-success",icon:{id:"square"},model:!1,label:"Inside monitors"},Calibrators:{label:"Collocation Sites",model:!1,svg:"crosshairs-svg"}}),dh=Mc(async t=>{const e=oa(),{map:n}=await $u(),{monitors:i}=await eu(),{fetchCalibrators:o}=await ih();await o();const s=Object.values(hh).map(t=>()=>t.model.value);ch.addTo(n),n.createPane("purpleAir").style.zIndex="603",n.createPane("airNow").style.zIndex="604",n.createPane("aqview").style.zIndex="605",n.createPane("sjvAirPurpleAir").style.zIndex="606",n.createPane("sjvAirBam").style.zIndex="607",n.createPane("calibrators").style.zIndex="608",n.createPane("selectedMarker").style.zIndex="625",uh.options.pane="selectedMarkerGroup",uh.addTo(n),wn(i,()=>{!function(t,e){ch.clearLayers(),lh.clear();for(let n in e.value){const i=e.value[n];if(!i.data.latest||null===i.data.position)continue;const o=_h(i);if(o.addEventListener("click",()=>{t.push({name:"details",params:{monitorId:i.data.id}})}),o&&(lh.set(n,o),ph(i)&&(ch.addLayer(o),i.data.id===t.currentRoute.value.params.monitorId&&new gh(o)),ah(i))){const t=sh(i.data.id),e=fh(t);e.addEventListener("mouseover",()=>o.openTooltip()),e.addEventListener("mouseout",()=>o.closeTooltip()),e.addEventListener("click",()=>o.fire("click")),lh.has(t.id)&&(ch.removeLayer(lh.get(t.id).remove()),lh.delete(t.id)),lh.set(t.id,e),ph(t)&&ch.addLayer(e)}}}(e,i)},{immediate:!0}),wn(s,()=>{lh.forEach((t,e)=>{ph(rh(e)?function(t){return nh.value.find(e=>e.id===t)}(e):i.value[e])?ch.addLayer(t):ch.removeLayer(t)})}),t({monitorMarkers:ch,displayOptions:{label:"Air Monitors",options:hh}})});function ph(t){if("data"in t){if(hh.Calibrators.model.value&&ah(t))return!0;if(!hh.displayInactive.model.value&&!t.data.is_active)return!1;switch(t.data.data_source.name){case"AirGradient":case"PurpleAir":const e=hh.PurpleAirInside.model.value||"outside"===t.data.location;return(t.data.is_sjvair?hh.SJVAirPurpleAir.model.value:hh.PurpleAir.model.value)&&e;case"Central California Asthma Collaborative":return ah(t)&&hh.Calibrators.model.value||hh.SJVAirBAM.model.value;case"AirNow.gov":return ah(t)&&hh.Calibrators.model.value||hh.AirNow.model.value;case"AQview":return ah(t)&&hh.Calibrators.model.value||hh.AQview.model.value}}else if("id"in t&&rh(t.id))return hh.Calibrators.model.value;return!1}function fh(t){const e=ou(t.reference_id),[n,i]=t.position.coordinates,o=du.divIcon({className:"is-flex is-justify-content-center is-align-items-center",iconAnchor:new du.Point(6,11),html:`<div class='crosshairs-svg-lg ${e.data.is_active?"":"disabled-monitor"} is-flex-grow-0 is-flex-shrink-0'>Hello</div>`});return du.marker(du.latLng(i,n),{icon:o,pane:"calibrators"})}function _h(t){const e="pm25"===t.data.latest.entry_type,n=t.displayField||new Tc("pm25","PM 2.5","60",t.data),[i,o]=t.data.position.coordinates,s=e?"PM 2.5":"Ozone",r=e?`<p>(${parseInt(n.updateDuration,10)} min avg)</p>`:"",a={offset:new du.Point(10,0),opacity:1},l=du.shapeMarker(du.latLng(o,i),{className:"sjvair-map-marker",color:t.markerParams.border_color,weight:t.markerParams.border_size,fillColor:t.markerParams.fill_color,fillOpacity:1,radius:t.markerParams.size,shape:t.markerParams.shape,pane:mh(t)});return l.bindTooltip(`\n <div class="is-flex is-flex-direction-row is-flex-wrap-nowrap">\n <div class="mr-2 px-1"\n style="background-color: ${t.markerParams.value_color}; color: ${nc(t.markerParams.value_color)}; border: solid ${ic(Ql(t.markerParams.value_color,.1))}; border-radius: 5px">\n <p translate="no" class="is-size-6 has-text-centered">${s}</p>\n <p translate="no" class="is-size-2 has-text-centered has-text-weight-semibold is-flex-grow-1 px-2">\n ${Math.round(+t.data.latest.value)}\n </p>\n ${r}\n </div>\n\n <div class="is-flex is-flex-direction-column">\n <p>${Cc.$prettyPrint(t.data.latest.timestamp)}</p>\n <p translate="no" class="is-size-5 has-text-weight-bold is-underlined">${t.data.name}</p>\n <p class="is-size-6">Last updated:</p>\n <p class="is-size-6">About ${t.lastUpdated}</p>\n </div>\n\n </div>\n `,a),l}function mh(t){if(!("data"in t))return"calibrators";switch(t.data.data_source.name){case"AirNow.gov":return"airNow";case"AQview":return"aqview";case"Central California Asthma Collaborative":return"sjvAirBam";case"AirGradient":case"PurpleAir":return t.data.is_sjvair?"sjvAirPurpleAir":"purpleAir";default:return"marker"}}class gh{static _current=ke();static get current(){return gh._current.value}static set current(t){gh._current.value=t}el;marker;returnPane;constructor(t){this.marker="string"==typeof t?lh.get(t):t,this.marker&&(this.returnPane=this.marker.options.pane,gh.current&&gh.current.marker!==this.marker&&gh.current.clear(),gh.current||(this.marker.remove(),ch.removeLayer(this.marker),this.marker.options.pane="selectedMarker",uh.addLayer(this.marker),this.el=this.marker.getElement(),this.el.classList.add("marker-selected"),gh.current=this))}clear(){if(gh.current){gh.current.el.classList.remove("marker-selected"),gh.current.marker.remove(),uh.removeLayer(gh.current.marker);const t=Object.keys(hh).filter(t=>t.toLowerCase()===this.returnPane.toLowerCase())[0];hh[t].model.value&&(gh.current.marker.options.pane=this.returnPane,ch.addLayer(gh.current.marker)),gh.current=void 0}}}const vh=new du.FeatureGroup,yh=Al.defineOptions({smoke:{label:"HMS Smoke",model:!0,icon:{id:"heat"}}}),bh=Mc(async t=>{const{map:e}=await $u();let n=[];e.createPane("hmssmoke").style.zIndex="601",n=await wh(),vh.addTo(e),wn(()=>yh.smoke.model.value,async t=>{t?(n.length||(n=await wh()),vh.addTo(e)):vh.remove()}),t(yh)});async function wh(){const t=await async function(){return await Zc({url:"hms/smoke"})}();return t.forEach(t=>{du.geoJson(t.geometry,{style:xh(t.density)}).addTo(vh)}),t}function xh(t){switch(t){case"light":return{color:"#bfc8c3",fillOpacity:.2};case"medium":return{color:"#757b78",fillOpacity:.3};case"heavy":return{color:"#333634",fillOpacity:.4}}}const Lh=new du.FeatureGroup,Ph=Al.defineOptions({methane:{label:"Methane Plumes",model:!1,icon:{id:"airwave"}}}),Ch=Mc(async t=>{const{map:e}=await $u();let n;e.createPane("carbon-mapper-methane").style.zIndex="602",Lh.addTo(e),wn(()=>Ph.methane.model.value,async t=>{t?(n||(n=await async function(){const t=await async function(){return await fetch("/static/monitor-map/carbon-mapper-methane-ca.geojson").then(t=>t.json())}();for(const e of t.features){du.geoJSON(e,{style:{fillColor:"#800080",color:"#301934",fillOpacity:.3,opacity:.4,weight:2}}).addTo(Lh)}return t}()),Lh.addTo(e)):Lh.remove()},{immediate:!0}),t(Ph)});function Mh(t,e){const{longitude:n,latitude:i}=t,o="lvl2evStations"===e?"light":"",s={offset:new du.Point(0,0),opacity:1,className:"leaflet-ev-tooltip"},r=du.divIcon({html:'<span translate="no" class="material-symbols-outlined">ev_station</span>',className:"leaflet-ev-icon".concat(` ${o}`),iconSize:[30,30]}),a=du.marker([i,n],{icon:r,pane:e});return a.bindPopup(`\n <p class="is-size-5 has-text-weight-bold has-text-centered has-text-white tooltip-header px-2 mb-1">${t.station_name}</p>\n\n <div class="leaflet-ev-tooltip-body p-1">\n <div class="ev-details is-flex is-align-items-center is-justify-content-space-around mb-3">\n ${function(t){return Th(t.facility_type,()=>`<span class="tag is-info">${t.facility_type}</span>`)}(t)}\n ${function(t){return Th(t.ev_network,()=>`<span class="tag is-info">${t.ev_network}</span>`)}(t)}\n </div>\n <div class="ev-details is-flex is-justify-content-space-around mb-2">\n <div class="ev-contact">\n <p>${function(t){return Th(t.station_phone,()=>`<a href="tel:+1${t.station_phone}">${t.station_phone}</a>`)}(t)}</p>\n <p>${function(t){return Th(t.street_address&&t.city&&t.state&&t.zip,()=>`\n <a href="https://maps.google.com/?q=${`${t.street_address}+${t.city},+${t.state}+${t.zip}`}" target="_blank">\n ${t.street_address}\n <br/>\n ${t.city}, ${t.state} ${t.zip}\n </a>\n `)}(t)}</p>\n\n </div>\n <div class="ev-hours mb-1">\n ${function(t){return Th(t.access_days_time,()=>{const e=t.access_days_time.includes("|")?"|":";";return t.access_days_time.split(e).map(t=>`<p>${(t=t.trim()).charAt(0).toUpperCase()+t.slice(1)}</p>`).join("")})}(t)}\n </div>\n </div>\n\n <div class="ev-access mb-1">\n ${function(t){return Th(t.access_detail_code,()=>`<p class="tag is-danger mb-2">${t.access_detail_code}</p>`)}(t)}\n ${function(t){return Th(t.cards_accepted,()=>`<div>${t.cards_accepted.split(",").map(t=>`\n <span class="tag">\n <span translate="no" class="material-symbols-outlined is-size-5">\n credit_card\n </span>\n ${t.trim()}\n </span>\n `).join("")}</div>`)}(t)}\n ${function(t){return Th(t.ev_pricing,()=>`\n <div class="ev-pricing p-1">\n ${t.ev_pricing?.split(";").map(t=>(t=t.trim()).split("and").map(t=>`<p>${t.trim()}</p>`).join("")).join("")}\n </div>\n `)}(t)}\n ${function(t){return Th(t.ev_connector_types,()=>`<div>${t.ev_connector_types.map(t=>`\n <span class="tag is-success has-text-weight-semibold">\n <span translate="no" class="material-symbols-outlined is-size-5">\n electrical_services\n </span>\n ${t.trim()}\n </span>\n `).join("")}</div>`)}(t)}\n </div>\n </div>\n `,s),a}function Th(t,e){return t?e():""}const kh=ke([]),Sh=ke([]);let Ah;async function Eh(t){return Ah||(Ah=await Tl(()=>import("./assets/BackgroundRequests-C4x4yv3l.js"),[])),{...Ah,fetchLvl2Stations:async function(){return await Oh(kh,Ah.fetchLvl2Stations)},fetchLvl3Stations:async function(){return await Oh(Sh,Ah.fetchLvl3Stations)},lvl2EVStations:kh,lvl3EVStations:Sh}}async function Oh(t,e){t.value.length||await e().then(e=>{t.value=e}).catch(()=>console.error("Failed to fetch EV charging stations."))}const zh="lvl2evStations",Ih="lvl3evStations",Bh=du.markerClusterGroup({clusterPane:zh}),Zh=du.markerClusterGroup({clusterPane:Ih}),Rh=Al.defineOptions({lvl2:{label:"Level 2",model:!1,icon:{id:"ev_station",class:"ev-icon light"}},lvl3:{label:"Level 3",model:!1,icon:{id:"ev_station",class:"ev-icon"}}}),Dh=Mc(async t=>{const[{map:e},{fetchLvl2Stations:n,fetchLvl3Stations:i,lvl2EVStations:o,lvl3EVStations:s}]=await Promise.all([$u(),Eh()]);e.createPane(zh).style.zIndex="608",e.createPane(Ih).style.zIndex="609",Bh.addTo(e),Zh.addTo(e),wn(()=>Rh.lvl2.model.value,t=>{Nh(t,o,Bh,zh,n)}),wn(()=>Rh.lvl3.model.value,t=>{Nh(t,s,Zh,Ih,i)}),t({label:"EV Stations",options:Rh})});async function Nh(t,e,n,i,o){if(t){e.value.length||await o();for(let t of e.value)n.addLayer(Mh(t,i))}else n.clearLayers()}const jh=class extends Al{options;urlTemplate;constructor(t){super(t),this.options=t.options,this.urlTemplate=t.urlTemplate}}.defineOptions({wind:{containerClass:"has-text-info",icon:{id:"air"},model:!1,label:"Wind",urlTemplate:"https://{s}.tile.openweathermap.org/map/wind/{z}/{x}/{y}.png?appid={apiKey}",options:{maxZoom:19,attribution:'Map data © <a href="http://openweathermap.org">OpenWeatherMap</a>',apiKey:"09b21cd89a07eaa465d3d9c2b2a6d0c3",opacity:.3,zIndex:12}},clouds:{containerClass:"has-text-grey-light",icon:{id:"cloud"},model:!1,label:"Clouds",urlTemplate:"https://{s}.tile.openweathermap.org/map/clouds/{z}/{x}/{y}.png?appid={apiKey}",options:{maxZoom:19,attribution:'Map data © <a href="http://openweathermap.org">OpenWeatherMap</a>',apiKey:"09b21cd89a07eaa465d3d9c2b2a6d0c3",opacity:.5,zIndex:13}}}),Fh=Mc(async t=>{const{map:e}=await $u(),n=new Map;wn(Object.values(jh).map(t=>()=>t.model.value),()=>{const t=Object.values(jh).filter(t=>!0===t.model.value&&!n.has(t.label)),i=Object.values(jh).filter(t=>!1===t.model.value&&n.has(t.label));t.forEach(t=>{const i=du.tileLayer(t.urlTemplate,t.options).addTo(e);n.set(t.label,i)}),i.forEach(t=>{n.get(t.label).remove(),n.delete(t.label)})}),t({activeOverlays:n,displayOptions:{label:"Map Overlays",options:jh}})});const Uh=class extends El{options;urlTemplate;constructor(t,e,n){super(t,e,n),this.options=n.options,this.urlTemplate=n.urlTemplate}}.defineOptions({streets:{label:"Streets",isDefault:!0,svg:"road-svg",urlTemplate:"https://api.maptiler.com/maps/streets/256/{z}/{x}/{y}.png?key={apiKey}",options:{maxZoom:19,apiKey:"1ZwL7YJSSN42A678HHPn",attribution:'<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>'}},satellite:{label:"Satellite Hybrid",urlTemplate:"https://api.maptiler.com/maps/hybrid/{z}/{x}/{y}.jpg?key={apiKey}",icon:{id:"satellite_alt"},containerClass:"has-text-silver",options:{maxZoom:19,apiKey:"1ZwL7YJSSN42A678HHPn",attribution:'<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>'}},topographique:{label:"Topographique",icon:{id:"landscape"},containerClass:"has-text-success",urlTemplate:"https://api.maptiler.com/maps/topographique/{z}/{x}/{y}.png?key={apiKey}",options:{maxZoom:19,apiKey:"1ZwL7YJSSN42A678HHPn",attribution:'<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>'}}}),Gh=Mc(async t=>{const[{map:e},{activeOverlays:n}]=await Promise.all([$u(),Fh()]),{streets:i}=Uh;let o=du.tileLayer(i.urlTemplate,i.options).addTo(e);wn(()=>Object.values(Uh)[0].model.value,t=>{window.requestAnimationFrame(()=>{const i=Uh[t];if(o.remove(),o=du.tileLayer(i.urlTemplate,i.options).addTo(e),n.size)for(let t of n.values())t.redraw()})}),t({label:"Map Tiles",options:Uh})}),Hh={class:"dropdown-trigger"},$h={class:"icon is-small"},Vh={class:"dropdown-menu",id:"dropdown-display",role:"menu"},Wh={class:"dropdown-content"},qh={class:"columns"},Yh={class:"column"},Kh={class:"control is-unselectable display-item is-flex is-flex-direction-column"},Jh={class:"radio option-label has-text-black pollutant-label"},Xh={class:"radio option-label has-text-black pollutant-label"},Qh={class:"column"},td=Kn({__name:"DisplayOptions",async setup(t){let e,n;const i=ke(!1),{displayOptions:o}=([e,n]=Bi(()=>dh()),e=await e,n(),e),s=([e,n]=Bi(()=>Dh()),e=await e,n(),e),r=([e,n]=Bi(()=>bh()),e=await e,n(),e),a=([e,n]=Bi(()=>yu()),e=await e,n(),e),l=([e,n]=Bi(()=>Ch()),e=await e,n(),e),c=([e,n]=Bi(()=>Gh()),e=await e,n(),e),u={label:"Map Layers",options:{...r,...a,...l}},h=Ss(()=>{if("pm25"===Jc.value)return o;{const{label:t,options:{SJVAirPurpleAir:e,PurpleAir:n,displayInactive:i,PurpleAirInside:s,...r}}=o;return{label:t,options:r}}});function d(){i.value=!i.value}function p(){i.value=!1}return wn(Jc,async()=>{await iu()}),(t,e)=>mn((Ho(),Yo("div",{class:$(["dropdown",i.value?"is-active":""])},[es("div",Hh,[es("button",{class:"button","aria-haspopup":"true","aria-controls":"dropdown-display",onClick:d},[e[2]||(e[2]=es("span",{class:"icon"},[es("span",{translate:"no",class:"material-symbols-outlined"}," settings ")],-1)),e[3]||(e[3]=es("span",{class:"is-size-7"},"Display Options",-1)),es("span",$h,[es("span",{class:$(["fas",i.value?"fa-angle-up":"fa-angle-down"]),"aria-hidden":"true"},null,2)])])]),es("div",Vh,[es("div",Wh,[es("div",qh,[es("div",Yh,[es("div",Kh,[e[6]||(e[6]=es("h3",{class:"display-group-label"},"Pollutant",-1)),es("label",Jh,[mn(es("input",{type:"radio",name:"pollutant",value:"pm25","onUpdate:modelValue":e[0]||(e[0]=t=>Te(Jc)?Jc.value=t:null)},null,512),[[Er,Oe(Jc)]]),e[4]||(e[4]=ss(" PM 2.5 ",-1))]),es("label",Xh,[mn(es("input",{type:"radio",name:"pollutant",value:"o3","onUpdate:modelValue":e[1]||(e[1]=t=>Te(Jc)?Jc.value=t:null)},null,512),[[Er,Oe(Jc)]]),e[5]||(e[5]=ss(" Ozone ",-1))])]),ns(Dl,{props:h.value},null,8,["props"])]),es("div",Qh,[ns(Dl,{props:Oe(s)},null,8,["props"]),ns(Dl,{props:u}),ns(Dl,{props:Oe(c)},null,8,["props"])])])])])],2)),[[Oe(kl),p]])}}),ed=Pl(td,[["__scopeId","data-v-e8813d54"]]),nd=Kn({__name:"MonitorMap",async setup(t){let e,n,i;const{updateMonitors:o}=([e,n]=Bi(()=>eu()),e=await e,n(),e);return hi(async()=>{(!i||i<=0)&&(i=window.setInterval(async()=>await o(),12e4))}),_i(()=>{clearInterval(i),i=0}),(t,e)=>(Ho(),Yo(Do,null,[ns(Oe(th)),ns(Oe(ed),{class:"display-options"}),ns(Oe(xl),null,{default:_n(({Component:t})=>[t?(Ho(),Ko(zo,{key:0},{fallback:_n(()=>[...e[0]||(e[0]=[es("div",null,null,-1)])]),default:_n(()=>[(Ho(),Ko(xi(t)))]),_:2},1024)):as("",!0)]),_:1})],64))}}),id=Pl(nd,[["__scopeId","data-v-1b335598"]]),od=()=>Tl(()=>import("./assets/MonitorDetails-iQQ4NK2T.js"),__vite__mapDeps([0,1])),sd=function(t){const e=ul(t.routes,t),n=t.parseQuery||Ua,i=t.stringifyQuery||Ga,o=t.history,s=$a(),r=$a(),a=$a(),l=Se(Ea);let c=Ea;Ur&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=$r.bind(null,t=>""+t),h=$r.bind(null,xa),d=$r.bind(null,La);function p(t,s){if(s=Hr({},s||l.value),"string"==typeof t){const i=Ca(n,t,s.path),r=e.resolve({path:i.path},s),a=o.createHref(i.fullPath);return Hr(i,r,{params:d(r.params),hash:La(i.hash),redirectedFrom:void 0,href:a})}let r;if(null!=t.path)r=Hr({},t,{path:Ca(n,t.path,s.path).path});else{const e=Hr({},t.params);for(const t in e)null==e[t]&&delete e[t];r=Hr({},t,{params:h(e)}),s.params=h(s.params)}const a=e.resolve(r,s),c=t.hash||"";a.params=u(d(a.params));const p=function(t,e){const n=e.query?t(e.query):"";return e.path+(n&&"?")+n+(e.hash||"")}(i,Hr({},t,{hash:(f=c,ya(f).replace(_a,"{").replace(ga,"}").replace(pa,"^")),path:a.path}));var f;const _=o.createHref(p);return Hr({fullPath:p,hash:c,query:i===Ga?Ha(t.query):t.query||{}},a,{redirectedFrom:void 0,href:_})}function f(t){return"string"==typeof t?Ca(n,t,l.value.path):Hr({},t)}function _(t,e){if(c!==t)return Jr(Yr.NAVIGATION_CANCELLED,{from:e,to:t})}function m(t){return v(t)}function g(t,e){const n=t.matched[t.matched.length-1];if(n&&n.redirect){const{redirect:i}=n;let o="function"==typeof i?i(t,e):i;return"string"==typeof o&&(o=o.includes("?")||o.includes("#")?o=f(o):{path:o},o.params={}),Hr({query:t.query,hash:t.hash,params:null!=o.path?{}:t.params},o)}}function v(t,e){const n=c=p(t),o=l.value,s=t.state,r=t.force,a=!0===t.replace,u=g(n,o);if(u)return v(Hr(f(u),{state:"object"==typeof u?Hr({},s,u.state):s,force:r,replace:a}),e||n);const h=n;let d;return h.redirectedFrom=e,!r&&function(t,e,n){const i=e.matched.length-1,o=n.matched.length-1;return i>-1&&i===o&&Ta(e.matched[i],n.matched[o])&&ka(e.params,n.params)&&t(e.query)===t(n.query)&&e.hash===n.hash}(i,o,n)&&(d=Jr(Yr.NAVIGATION_DUPLICATED,{to:h,from:o}),E(o,o,!0,!1)),(d?Promise.resolve(d):w(h,o)).catch(t=>Xr(t)?Xr(t,Yr.NAVIGATION_GUARD_REDIRECT)?t:A(t):S(t,h,o)).then(t=>{if(t){if(Xr(t,Yr.NAVIGATION_GUARD_REDIRECT))return v(Hr({replace:a},f(t.to),{state:"object"==typeof t.to?Hr({},s,t.to.state):s,force:r}),e||h)}else t=L(h,o,!0,a,s);return x(h,o,t),t})}function y(t,e){const n=_(t,e);return n?Promise.reject(n):Promise.resolve()}function b(t){const e=I.values().next().value;return e&&"function"==typeof e.runWithContext?e.runWithContext(t):t()}function w(t,e){let n;const[i,o,a]=function(t,e){const n=[],i=[],o=[],s=Math.max(e.matched.length,t.matched.length);for(let r=0;r<s;r++){const s=e.matched[r];s&&(t.matched.find(t=>Ta(t,s))?i.push(s):n.push(s));const a=t.matched[r];a&&(e.matched.find(t=>Ta(t,a))||o.push(a))}return[n,i,o]}
|
|
39
39
|
/*!
|
|
40
40
|
* vue-router v5.0.3
|
|
41
41
|
* (c) 2026 Eduardo San Martin Morote
|