Files
tar1090/html/libs/ol-custom008.js
Matthias Wirth 15ab210ee8 vectortile stuff
2021-04-25 06:49:27 +02:00

4 lines
491 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t=t||self).ol={})}(this,(function(t){"use strict";function e(){return function(){throw new Error("Unimplemented abstract method.")}()}var i=0;function r(t){return t.ol_uid||(t.ol_uid=String(++i))}var n,o=(n=function(t,e){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),a=function(t){function e(e){var i=this,r="Assertion failed. See https://openlayers.org/en/"+("v"+"6.5.0".split("-")[0])+"/doc/errors/#"+e+" for details.";return(i=t.call(this,r)||this).code=e,i.name="AssertionError",i.message=r,i}return o(e,t),e}(Error),s=function(){function t(t){this.propagationStopped,this.type=t,this.target=null}return t.prototype.preventDefault=function(){this.propagationStopped=!0},t.prototype.stopPropagation=function(){this.propagationStopped=!0},t}(),l="propertychange",u=function(){function t(){this.disposed=!1}return t.prototype.dispose=function(){this.disposed||(this.disposed=!0,this.disposeInternal())},t.prototype.disposeInternal=function(){},t}();function h(t,e){return t>e?1:t<e?-1:0}function c(t,e){return t.indexOf(e)>=0}function p(t,e,i){var r=t.length;if(t[0]<=e)return 0;if(e<=t[r-1])return r-1;var n=void 0;if(i>0){for(n=1;n<r;++n)if(t[n]<e)return n-1}else if(i<0){for(n=1;n<r;++n)if(t[n]<=e)return n}else for(n=1;n<r;++n){if(t[n]==e)return n;if(t[n]<e)return t[n-1]-e<e-t[n]?n-1:n}return r-1}function f(t,e,i){for(;e<i;){var r=t[e];t[e]=t[i],t[i]=r,++e,--i}}function d(t,e){for(var i=Array.isArray(e)?e:[e],r=i.length,n=0;n<r;n++)t[t.length]=i[n]}function g(t,e){var i=t.length;if(i!==e.length)return!1;for(var r=0;r<i;r++)if(t[r]!==e[r])return!1;return!0}function _(){return!0}function y(){return!1}function v(){}var m="function"==typeof Object.assign?Object.assign:function(t,e){if(null==t)throw new TypeError("Cannot convert undefined or null to object");for(var i=Object(t),r=1,n=arguments.length;r<n;++r){var o=arguments[r];if(null!=o)for(var a in o)o.hasOwnProperty(a)&&(i[a]=o[a])}return i};function x(t){for(var e in t)delete t[e]}var w="function"==typeof Object.values?Object.values:function(t){var e=[];for(var i in t)e.push(t[i]);return e};function S(t){var e;for(e in t)return!1;return!e}var C=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),b=function(t){function e(e){var i=t.call(this)||this;return i.eventTarget_=e,i.pendingRemovals_=null,i.dispatching_=null,i.listeners_=null,i}return C(e,t),e.prototype.addEventListener=function(t,e){if(t&&e){var i=this.listeners_||(this.listeners_={}),r=i[t]||(i[t]=[]);-1===r.indexOf(e)&&r.push(e)}},e.prototype.dispatchEvent=function(t){var e="string"==typeof t?new s(t):t,i=e.type;e.target||(e.target=this.eventTarget_||this);var r,n=this.listeners_&&this.listeners_[i];if(n){var o=this.dispatching_||(this.dispatching_={}),a=this.pendingRemovals_||(this.pendingRemovals_={});i in o||(o[i]=0,a[i]=0),++o[i];for(var l=0,u=n.length;l<u;++l)if(!1===(r="handleEvent"in n[l]?n[l].handleEvent(e):n[l].call(this,e))||e.propagationStopped){r=!1;break}if(--o[i],0===o[i]){var h=a[i];for(delete a[i];h--;)this.removeEventListener(i,v);delete o[i]}return r}},e.prototype.disposeInternal=function(){this.listeners_&&x(this.listeners_)},e.prototype.getListeners=function(t){return this.listeners_&&this.listeners_[t]||void 0},e.prototype.hasListener=function(t){return!!this.listeners_&&(t?t in this.listeners_:Object.keys(this.listeners_).length>0)},e.prototype.removeEventListener=function(t,e){var i=this.listeners_&&this.listeners_[t];if(i){var r=i.indexOf(e);-1!==r&&(this.pendingRemovals_&&t in this.pendingRemovals_?(i[r]=v,++this.pendingRemovals_[t]):(i.splice(r,1),0===i.length&&delete this.listeners_[t]))}},e}(u),T="change",E="error",P="contextmenu",R="click",F="dblclick",O="dragenter",I="dragover",M="drop",L="keydown",A="keypress",k="load",D="resize",j="touchmove",G="wheel";function N(t,e,i,r,n){if(r&&r!==t&&(i=i.bind(r)),n){var o=i;i=function(){t.removeEventListener(e,i),o.apply(this,arguments)}}var a={target:t,type:e,listener:i};return t.addEventListener(e,i),a}function z(t,e,i,r){return N(t,e,i,r,!0)}function B(t){t&&t.target&&(t.target.removeEventListener(t.type,t.listener),x(t))}var U=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),V=function(t){function e(){var e=t.call(this)||this;return e.revision_=0,e}return U(e,t),e.prototype.changed=function(){++this.revision_,this.dispatchEvent(T)},e.prototype.getRevision=function(){return this.revision_},e.prototype.on=function(t,e){if(Array.isArray(t)){for(var i=t.length,r=new Array(i),n=0;n<i;++n)r[n]=N(this,t[n],e);return r}return N(this,t,e)},e.prototype.once=function(t,e){var i;if(Array.isArray(t)){var r=t.length;i=new Array(r);for(var n=0;n<r;++n)i[n]=z(this,t[n],e)}else i=z(this,t,e);return e.ol_key=i,i},e.prototype.un=function(t,e){var i=e.ol_key;if(i)X(i);else if(Array.isArray(t))for(var r=0,n=t.length;r<n;++r)this.removeEventListener(t[r],e);else this.removeEventListener(t,e)},e}(b);function X(t){if(Array.isArray(t))for(var e=0,i=t.length;e<i;++e)B(t[e]);else B(t)}var W=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Y=function(t){function e(e,i,r){var n=t.call(this,e)||this;return n.key=i,n.oldValue=r,n}return W(e,t),e}(s),K=function(t){function e(e){var i=t.call(this)||this;return r(i),i.values_=null,void 0!==e&&i.setProperties(e),i}return W(e,t),e.prototype.get=function(t){var e;return this.values_&&this.values_.hasOwnProperty(t)&&(e=this.values_[t]),e},e.prototype.getKeys=function(){return this.values_&&Object.keys(this.values_)||[]},e.prototype.getProperties=function(){return this.values_&&m({},this.values_)||{}},e.prototype.hasProperties=function(){return!!this.values_},e.prototype.notify=function(t,e){var i;i=H(t),this.dispatchEvent(new Y(i,t,e)),i=l,this.dispatchEvent(new Y(i,t,e))},e.prototype.set=function(t,e,i){var r=this.values_||(this.values_={});if(i)r[t]=e;else{var n=r[t];r[t]=e,n!==e&&this.notify(t,n)}},e.prototype.setProperties=function(t,e){for(var i in t)this.set(i,t[i],e)},e.prototype.applyProperties=function(t){t.values_&&m(this.values_||(this.values_={}),t.values_)},e.prototype.unset=function(t,e){if(this.values_&&t in this.values_){var i=this.values_[t];delete this.values_[t],S(this.values_)&&(this.values_=null),e||this.notify(t,i)}},e}(V),Z={};function H(t){return Z.hasOwnProperty(t)?Z[t]:Z[t]="change:"+t}var q="add",J="remove",Q=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),$="length",tt=function(t){function e(e,i,r){var n=t.call(this,e)||this;return n.element=i,n.index=r,n}return Q(e,t),e}(s),et=function(t){function e(e,i){var r=t.call(this)||this,n=i||{};if(r.unique_=!!n.unique,r.array_=e||[],r.unique_)for(var o=0,a=r.array_.length;o<a;++o)r.assertUnique_(r.array_[o],o);return r.updateLength_(),r}return Q(e,t),e.prototype.clear=function(){for(;this.getLength()>0;)this.pop()},e.prototype.extend=function(t){for(var e=0,i=t.length;e<i;++e)this.push(t[e]);return this},e.prototype.forEach=function(t){for(var e=this.array_,i=0,r=e.length;i<r;++i)t(e[i],i,e)},e.prototype.getArray=function(){return this.array_},e.prototype.item=function(t){return this.array_[t]},e.prototype.getLength=function(){return this.get($)},e.prototype.insertAt=function(t,e){this.unique_&&this.assertUnique_(e),this.array_.splice(t,0,e),this.updateLength_(),this.dispatchEvent(new tt(q,e,t))},e.prototype.pop=function(){return this.removeAt(this.getLength()-1)},e.prototype.push=function(t){this.unique_&&this.assertUnique_(t);var e=this.getLength();return this.insertAt(e,t),this.getLength()},e.prototype.remove=function(t){for(var e=this.array_,i=0,r=e.length;i<r;++i)if(e[i]===t)return this.removeAt(i)},e.prototype.removeAt=function(t){var e=this.array_[t];return this.array_.splice(t,1),this.updateLength_(),this.dispatchEvent(new tt(J,e,t)),e},e.prototype.setAt=function(t,e){var i=this.getLength();if(t<i){this.unique_&&this.assertUnique_(e,t);var r=this.array_[t];this.array_[t]=e,this.dispatchEvent(new tt(J,r,t)),this.dispatchEvent(new tt(q,e,t))}else{for(var n=i;n<t;++n)this.insertAt(n,void 0);this.insertAt(t,e)}},e.prototype.updateLength_=function(){this.set($,this.array_.length)},e.prototype.assertUnique_=function(t,e){for(var i=0,r=this.array_.length;i<r;++i)if(this.array_[i]===t&&i!==e)throw new a(58)},e}(K);function it(t,e){if(!t)throw new a(e)}var rt=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),nt=function(t){function e(e){var i=t.call(this)||this;if(i.id_=void 0,i.geometryName_="geometry",i.style_=null,i.styleFunction_=void 0,i.geometryChangeKey_=null,i.addEventListener(H(i.geometryName_),i.handleGeometryChanged_),e)if("function"==typeof e.getSimplifiedGeometry){var r=e;i.setGeometry(r)}else{var n=e;i.setProperties(n)}return i}return rt(e,t),e.prototype.clone=function(){var t=new e(this.hasProperties()?this.getProperties():null);t.setGeometryName(this.getGeometryName());var i=this.getGeometry();i&&t.setGeometry(i.clone());var r=this.getStyle();return r&&t.setStyle(r),t},e.prototype.getGeometry=function(){return this.get(this.geometryName_)},e.prototype.getId=function(){return this.id_},e.prototype.getGeometryName=function(){return this.geometryName_},e.prototype.getStyle=function(){return this.style_},e.prototype.getStyleFunction=function(){return this.styleFunction_},e.prototype.handleGeometryChange_=function(){this.changed()},e.prototype.handleGeometryChanged_=function(){this.geometryChangeKey_&&(B(this.geometryChangeKey_),this.geometryChangeKey_=null);var t=this.getGeometry();t&&(this.geometryChangeKey_=N(t,T,this.handleGeometryChange_,this)),this.changed()},e.prototype.setGeometry=function(t){this.set(this.geometryName_,t)},e.prototype.setStyle=function(t){this.style_=t,this.styleFunction_=t?function(t){if("function"==typeof t)return t;var e;Array.isArray(t)?e=t:(it("function"==typeof t.getZIndex,41),e=[t]);return function(){return e}}(t):void 0,this.changed()},e.prototype.setId=function(t){this.id_=t,this.changed()},e.prototype.setGeometryName=function(t){this.removeEventListener(H(this.geometryName_),this.handleGeometryChanged_),this.geometryName_=t,this.addEventListener(H(this.geometryName_),this.handleGeometryChanged_),this.handleGeometryChanged_()},e}(K);var ot="XY",at="XYZ",st="XYM",lt="XYZM",ut="Point",ht="LineString",ct="LinearRing",pt="Polygon",ft="MultiPoint",dt="MultiLineString",gt="MultiPolygon",_t="GeometryCollection",yt="Circle",vt="degrees",mt="ft",xt="m",wt="tile-pixels",St="us-ft",Ct={};Ct[vt]=2*Math.PI*6370997/360,Ct[mt]=.3048,Ct[xt]=1,Ct[St]=1200/3937;var bt=new Array(6);function Tt(t){return Pt(t,1,0,0,1,0,0)}function Et(t,e){var i=t[0],r=t[1],n=t[2],o=t[3],a=t[4],s=t[5],l=e[0],u=e[1],h=e[2],c=e[3],p=e[4],f=e[5];return t[0]=i*l+n*u,t[1]=r*l+o*u,t[2]=i*h+n*c,t[3]=r*h+o*c,t[4]=i*p+n*f+a,t[5]=r*p+o*f+s,t}function Pt(t,e,i,r,n,o,a){return t[0]=e,t[1]=i,t[2]=r,t[3]=n,t[4]=o,t[5]=a,t}function Rt(t,e){var i=e[0],r=e[1];return e[0]=t[0]*i+t[2]*r+t[4],e[1]=t[1]*i+t[3]*r+t[5],e}function Ft(t,e,i){return Et(t,Pt(bt,e,0,0,i,0,0))}function Ot(t,e,i,r,n,o,a,s){var l=Math.sin(o),u=Math.cos(o);return t[0]=r*u,t[1]=n*l,t[2]=-r*l,t[3]=n*u,t[4]=a*r*u-s*r*l+e,t[5]=a*n*l+s*n*u+i,t}function It(t,e){var i,r=(i=e)[0]*i[3]-i[1]*i[2];it(0!==r,32);var n=e[0],o=e[1],a=e[2],s=e[3],l=e[4],u=e[5];return t[0]=s/r,t[1]=-o/r,t[2]=-a/r,t[3]=n/r,t[4]=(a*u-s*l)/r,t[5]=-(n*u-o*l)/r,t}function Mt(t){return"matrix("+t.join(", ")+")"}var Lt="bottom-left",At="bottom-right",kt="top-left",Dt="top-right",jt=0,Gt=1,Nt=2,zt=4,Bt=8,Ut=16;function Vt(t){for(var e=Jt(),i=0,r=t.length;i<r;++i)oe(e,t[i]);return e}function Xt(t,e,i){return i?(i[0]=t[0]-e,i[1]=t[1]-e,i[2]=t[2]+e,i[3]=t[3]+e,i):[t[0]-e,t[1]-e,t[2]+e,t[3]+e]}function Wt(t,e){return e?(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e):t.slice()}function Yt(t,e,i){var r,n;return(r=e<t[0]?t[0]-e:t[2]<e?e-t[2]:0)*r+(n=i<t[1]?t[1]-i:t[3]<i?i-t[3]:0)*n}function Kt(t,e){return Ht(t,e[0],e[1])}function Zt(t,e){return t[0]<=e[0]&&e[2]<=t[2]&&t[1]<=e[1]&&e[3]<=t[3]}function Ht(t,e,i){return t[0]<=e&&e<=t[2]&&t[1]<=i&&i<=t[3]}function qt(t,e){var i=t[0],r=t[1],n=t[2],o=t[3],a=e[0],s=e[1],l=jt;return a<i?l|=Ut:a>n&&(l|=zt),s<r?l|=Bt:s>o&&(l|=Nt),l===jt&&(l=Gt),l}function Jt(){return[1/0,1/0,-1/0,-1/0]}function Qt(t,e,i,r,n){return n?(n[0]=t,n[1]=e,n[2]=i,n[3]=r,n):[t,e,i,r]}function $t(t){return Qt(1/0,1/0,-1/0,-1/0,t)}function te(t,e){var i=t[0],r=t[1];return Qt(i,r,i,r,e)}function ee(t,e){return function(t,e){for(var i=0,r=e.length;i<r;++i)oe(t,e[i]);return t}($t(e),t)}function ie(t,e,i,r,n){return ae($t(n),t,e,i,r)}function re(t,e){return t[0]==e[0]&&t[2]==e[2]&&t[1]==e[1]&&t[3]==e[3]}function ne(t,e){return e[0]<t[0]&&(t[0]=e[0]),e[2]>t[2]&&(t[2]=e[2]),e[1]<t[1]&&(t[1]=e[1]),e[3]>t[3]&&(t[3]=e[3]),t}function oe(t,e){e[0]<t[0]&&(t[0]=e[0]),e[0]>t[2]&&(t[2]=e[0]),e[1]<t[1]&&(t[1]=e[1]),e[1]>t[3]&&(t[3]=e[1])}function ae(t,e,i,r,n){for(;i<r;i+=n)se(t,e[i],e[i+1]);return t}function se(t,e,i){t[0]=Math.min(t[0],e),t[1]=Math.min(t[1],i),t[2]=Math.max(t[2],e),t[3]=Math.max(t[3],i)}function le(t,e){var i;return(i=e(he(t)))||(i=e(ce(t)))||(i=e(ve(t)))?i:(i=e(ye(t)))||!1}function ue(t){var e=0;return we(t)||(e=me(t)*ge(t)),e}function he(t){return[t[0],t[1]]}function ce(t){return[t[2],t[1]]}function pe(t){return[(t[0]+t[2])/2,(t[1]+t[3])/2]}function fe(t,e){var i;return e===Lt?i=he(t):e===At?i=ce(t):e===kt?i=ye(t):e===Dt?i=ve(t):it(!1,13),i}function de(t,e,i,r,n){var o=e*r[0]/2,a=e*r[1]/2,s=Math.cos(i),l=Math.sin(i),u=o*s,h=o*l,c=a*s,p=a*l,f=t[0],d=t[1],g=f-u+p,_=f-u-p,y=f+u-p,v=f+u+p,m=d-h-c,x=d-h+c,w=d+h+c,S=d+h-c;return Qt(Math.min(g,_,y,v),Math.min(m,x,w,S),Math.max(g,_,y,v),Math.max(m,x,w,S),n)}function ge(t){return t[3]-t[1]}function _e(t,e,i){var r=i||[1/0,1/0,-1/0,-1/0];return xe(t,e)?(t[0]>e[0]?r[0]=t[0]:r[0]=e[0],t[1]>e[1]?r[1]=t[1]:r[1]=e[1],t[2]<e[2]?r[2]=t[2]:r[2]=e[2],t[3]<e[3]?r[3]=t[3]:r[3]=e[3]):$t(r),r}function ye(t){return[t[0],t[3]]}function ve(t){return[t[2],t[3]]}function me(t){return t[2]-t[0]}function xe(t,e){return t[0]<=e[2]&&t[2]>=e[0]&&t[1]<=e[3]&&t[3]>=e[1]}function we(t){return t[2]<t[0]||t[3]<t[1]}function Se(t,e,i,r){var n=[];if(r>1)for(var o=t[2]-t[0],a=t[3]-t[1],s=0;s<r;++s)n.push(t[0]+o*s/r,t[1],t[2],t[1]+a*s/r,t[2]-o*s/r,t[3],t[0],t[3]-a*s/r);else n=[t[0],t[1],t[2],t[1],t[2],t[3],t[0],t[3]];e(n,n,2);for(var l=[],u=[],h=(s=0,n.length);s<h;s+=2)l.push(n[s]),u.push(n[s+1]);return function(t,e,i){return Qt(Math.min.apply(null,t),Math.min.apply(null,e),Math.max.apply(null,t),Math.max.apply(null,e),i)}(l,u,i)}var Ce=function(){function t(t){this.code_=t.code,this.units_=t.units,this.extent_=void 0!==t.extent?t.extent:null,this.worldExtent_=void 0!==t.worldExtent?t.worldExtent:null,this.axisOrientation_=void 0!==t.axisOrientation?t.axisOrientation:"enu",this.global_=void 0!==t.global&&t.global,this.canWrapX_=!(!this.global_||!this.extent_),this.getPointResolutionFunc_=t.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=t.metersPerUnit}return t.prototype.canWrapX=function(){return this.canWrapX_},t.prototype.getCode=function(){return this.code_},t.prototype.getExtent=function(){return this.extent_},t.prototype.getUnits=function(){return this.units_},t.prototype.getMetersPerUnit=function(){return this.metersPerUnit_||Ct[this.units_]},t.prototype.getWorldExtent=function(){return this.worldExtent_},t.prototype.getAxisOrientation=function(){return this.axisOrientation_},t.prototype.isGlobal=function(){return this.global_},t.prototype.setGlobal=function(t){this.global_=t,this.canWrapX_=!(!t||!this.extent_)},t.prototype.getDefaultTileGrid=function(){return this.defaultTileGrid_},t.prototype.setDefaultTileGrid=function(t){this.defaultTileGrid_=t},t.prototype.setExtent=function(t){this.extent_=t,this.canWrapX_=!(!this.global_||!t)},t.prototype.setWorldExtent=function(t){this.worldExtent_=t},t.prototype.setGetPointResolution=function(t){this.getPointResolutionFunc_=t},t.prototype.getPointResolutionFunc=function(){return this.getPointResolutionFunc_},t}();function be(t,e,i){return Math.min(Math.max(t,e),i)}var Te="cosh"in Math?Math.cosh:function(t){var e=Math.exp(t);return(e+1/e)/2},Ee="log2"in Math?Math.log2:function(t){return Math.log(t)*Math.LOG2E};function Pe(t,e,i,r,n,o){var a=n-i,s=o-r;if(0!==a||0!==s){var l=((t-i)*a+(e-r)*s)/(a*a+s*s);l>1?(i=n,r=o):l>0&&(i+=a*l,r+=s*l)}return Re(t,e,i,r)}function Re(t,e,i,r){var n=i-t,o=r-e;return n*n+o*o}function Fe(t){return 180*t/Math.PI}function Oe(t){return t*Math.PI/180}function Ie(t,e){var i=t%e;return i*e<0?i+e:i}function Me(t,e,i){return t+i*(e-t)}var Le=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ae=6378137*Math.PI,ke=[-Ae,-Ae,Ae,Ae],De=[-180,-85,180,85],je=6378137*Math.log(Math.tan(Math.PI/2)),Ge=function(t){function e(e){return t.call(this,{code:e,units:xt,extent:ke,global:!0,worldExtent:De,getPointResolution:function(t,e){return t/Te(e[1]/6378137)}})||this}return Le(e,t),e}(Ce),Ne=[new Ge("EPSG:3857"),new Ge("EPSG:102100"),new Ge("EPSG:102113"),new Ge("EPSG:900913"),new Ge("http://www.opengis.net/gml/srs/epsg.xml#3857")];function ze(t,e,i){var r=t.length,n=i>1?i:2,o=e;void 0===o&&(o=n>2?t.slice():new Array(r));for(var a=0;a<r;a+=n){o[a]=Ae*t[a]/180;var s=6378137*Math.log(Math.tan(Math.PI*(+t[a+1]+90)/360));s>je?s=je:s<-je&&(s=-je),o[a+1]=s}return o}function Be(t,e,i){var r=t.length,n=i>1?i:2,o=e;void 0===o&&(o=n>2?t.slice():new Array(r));for(var a=0;a<r;a+=n)o[a]=180*t[a]/Ae,o[a+1]=360*Math.atan(Math.exp(t[a+1]/6378137))/Math.PI-90;return o}var Ue=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ve=[-180,-90,180,90],Xe=6378137*Math.PI/180,We=function(t){function e(e,i){return t.call(this,{code:e,units:vt,extent:Ve,axisOrientation:i,global:!0,metersPerUnit:Xe,worldExtent:Ve})||this}return Ue(e,t),e}(Ce),Ye=[new We("CRS:84"),new We("EPSG:4326","neu"),new We("urn:ogc:def:crs:OGC:1.3:CRS84"),new We("urn:ogc:def:crs:OGC:2:84"),new We("http://www.opengis.net/gml/srs/epsg.xml#4326","neu")],Ke={};var Ze={};function He(t,e,i){var r=t.getCode(),n=e.getCode();r in Ze||(Ze[r]={}),Ze[r][n]=i}function qe(t,e,i){var r=i||6371008.8,n=Oe(t[1]),o=Oe(e[1]),a=(o-n)/2,s=Oe(e[0]-t[0])/2,l=Math.sin(a)*Math.sin(a)+Math.sin(s)*Math.sin(s)*Math.cos(n)*Math.cos(o);return 2*r*Math.atan2(Math.sqrt(l),Math.sqrt(1-l))}function Je(t,e){for(var i=0,r=0,n=t.length;r<n-1;++r)i+=qe(t[r],t[r+1],e);return i}function Qe(t,e){for(var i=0,r=t.length,n=t[r-1][0],o=t[r-1][1],a=0;a<r;a++){var s=t[a][0],l=t[a][1];i+=Oe(s-n)*(2+Math.sin(Oe(o))+Math.sin(Oe(l))),n=s,o=l}return i*e*e/2}var $e=Object.freeze({__proto__:null,DEFAULT_RADIUS:6371008.8,getDistance:qe,getLength:function t(e,i){var r=i||{},n=r.radius||6371008.8,o=r.projection||"EPSG:3857",a=e.getType();a!==_t&&(e=e.clone().transform(o,"EPSG:4326"));var s,l,u,h,c,p,f=0;switch(a){case ut:case ft:break;case ht:case ct:f=Je(s=e.getCoordinates(),n);break;case dt:case pt:for(u=0,h=(s=e.getCoordinates()).length;u<h;++u)f+=Je(s[u],n);break;case gt:for(u=0,h=(s=e.getCoordinates()).length;u<h;++u)for(c=0,p=(l=s[u]).length;c<p;++c)f+=Je(l[c],n);break;case _t:var d=e.getGeometries();for(u=0,h=d.length;u<h;++u)f+=t(d[u],i);break;default:throw new Error("Unsupported geometry type: "+a)}return f},getArea:function t(e,i){var r=i||{},n=r.radius||6371008.8,o=r.projection||"EPSG:3857",a=e.getType();a!==_t&&(e=e.clone().transform(o,"EPSG:4326"));var s,l,u,h,c,p,f=0;switch(a){case ut:case ft:case ht:case dt:case ct:break;case pt:for(s=e.getCoordinates(),f=Math.abs(Qe(s[0],n)),u=1,h=s.length;u<h;++u)f-=Math.abs(Qe(s[u],n));break;case gt:for(u=0,h=(s=e.getCoordinates()).length;u<h;++u)for(l=s[u],f+=Math.abs(Qe(l[0],n)),c=1,p=l.length;c<p;++c)f-=Math.abs(Qe(l[c],n));break;case _t:var d=e.getGeometries();for(u=0,h=d.length;u<h;++u)f+=t(d[u],i);break;default:throw new Error("Unsupported geometry type: "+a)}return f},offset:function(t,e,i,r){var n=r||6371008.8,o=Oe(t[1]),a=Oe(t[0]),s=e/n,l=Math.asin(Math.sin(o)*Math.cos(s)+Math.cos(o)*Math.sin(s)*Math.cos(i));return[Fe(a+Math.atan2(Math.sin(i)*Math.sin(s)*Math.cos(o),Math.cos(s)-Math.sin(o)*Math.sin(l))),Fe(l)]}});function ti(t,e){for(var i=(""+t).split("."),r=(""+e).split("."),n=0;n<Math.max(i.length,r.length);n++){var o=parseInt(i[n]||"0",10),a=parseInt(r[n]||"0",10);if(o>a)return 1;if(a>o)return-1}return 0}function ei(t,e){var i,r,n=t[0],o=t[1],a=e[0],s=e[1],l=a[0],u=a[1],h=s[0],c=s[1],p=h-l,f=c-u,d=0===p&&0===f?0:(p*(n-l)+f*(o-u))/(p*p+f*f||0);return d<=0?(i=l,r=u):d>=1?(i=h,r=c):(i=l+d*p,r=u+d*f),[i,r]}function ii(t,e){for(var i=!0,r=t.length-1;r>=0;--r)if(t[r]!=e[r]){i=!1;break}return i}function ri(t,e){var i=Math.cos(e),r=Math.sin(e),n=t[0]*i-t[1]*r,o=t[1]*i+t[0]*r;return t[0]=n,t[1]=o,t}function ni(t,e){var i=t[0]-e[0],r=t[1]-e[1];return i*i+r*r}function oi(t,e){return Math.sqrt(ni(t,e))}function ai(t,e){return ni(t,ei(t,e))}function si(t,e){if(e.canWrapX()){var i=me(e.getExtent()),r=function(t,e,i){var r=e.getExtent(),n=0;if(e.canWrapX()&&(t[0]<r[0]||t[0]>r[2])){var o=i||me(r);n=Math.floor((t[0]-r[0])/o)}return n}(t,e,i);r&&(t[0]-=r*i)}return t}function li(t,e,i){var r;if(void 0!==e){for(var n=0,o=t.length;n<o;++n)e[n]=t[n];r=e}else r=t.slice();return r}function ui(t,e,i){if(void 0!==e&&t!==e){for(var r=0,n=t.length;r<n;++r)e[r]=t[r];t=e}return t}function hi(t){!function(t,e){Ke[t]=e}(t.getCode(),t),He(t,t,li)}function ci(t){return"string"==typeof t?Ke[e=t]||Ke[e.replace(/urn:(x-)?ogc:def:crs:EPSG:(.*:)?(\w+)$/,"EPSG:$3")]||null:t||null;var e}function pi(t,e,i,r){var n,o=(t=ci(t)).getPointResolutionFunc();if(o){if(n=o(e,i),r&&r!==t.getUnits())(s=t.getMetersPerUnit())&&(n=n*s/Ct[r])}else{var a=t.getUnits();if(a==vt&&!r||r==vt)n=e;else{var s,l=_i(t,ci("EPSG:4326"));if(l===ui&&a!==vt)n=e*t.getMetersPerUnit();else{var u=[i[0]-e/2,i[1],i[0]+e/2,i[1],i[0],i[1]-e/2,i[0],i[1]+e/2];n=(qe((u=l(u,u,2)).slice(0,2),u.slice(2,4))+qe(u.slice(4,6),u.slice(6,8)))/2}void 0!==(s=r?Ct[r]:t.getMetersPerUnit())&&(n/=s)}}return n}function fi(t){!function(t){t.forEach(hi)}(t),t.forEach((function(e){t.forEach((function(t){e!==t&&He(e,t,li)}))}))}function di(t,e){return t?"string"==typeof t?ci(t):t:ci(e)}function gi(t,e){if(t===e)return!0;var i=t.getUnits()===e.getUnits();return(t.getCode()===e.getCode()||_i(t,e)===li)&&i}function _i(t,e){var i=function(t,e){var i;return t in Ze&&e in Ze[t]&&(i=Ze[t][e]),i}(t.getCode(),e.getCode());return i||(i=ui),i}function yi(t,e){return _i(ci(t),ci(e))}function vi(t,e,i){return yi(e,i)(t,void 0,t.length)}var mi,xi,wi;function Si(t,e){return t}function Ci(t,e){return t}function bi(t,e){return t}function Ti(t,e){return t}function Ei(t,e,i,r,n,o){for(var a=o||[],s=0,l=e;l<i;l+=r){var u=t[l],h=t[l+1];a[s++]=n[0]*u+n[2]*h+n[4],a[s++]=n[1]*u+n[3]*h+n[5]}return o&&a.length!=s&&(a.length=s),a}function Pi(t,e,i,r,n,o,a){for(var s=a||[],l=Math.cos(n),u=Math.sin(n),h=o[0],c=o[1],p=0,f=e;f<i;f+=r){var d=t[f]-h,g=t[f+1]-c;s[p++]=h+d*l-g*u,s[p++]=c+d*u+g*l;for(var _=f+2;_<f+r;++_)s[p++]=t[_]}return a&&s.length!=p&&(s.length=p),s}function Ri(t,e,i,r,n,o,a){for(var s=a||[],l=0,u=e;u<i;u+=r){s[l++]=t[u]+n,s[l++]=t[u+1]+o;for(var h=u+2;h<u+r;++h)s[l++]=t[h]}return a&&s.length!=l&&(s.length=l),s}fi(Ne),fi(Ye),mi=Ne,xi=ze,wi=Be,Ye.forEach((function(t){mi.forEach((function(e){He(t,e,xi),He(e,t,wi)}))}));var Fi=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Oi=[1,0,0,1,0,0],Ii=function(t){function i(){var e,i,r,n,o,a=t.call(this)||this;return a.extent_=[1/0,1/0,-1/0,-1/0],a.extentRevision_=-1,a.simplifiedGeometryMaxMinSquaredTolerance=0,a.simplifiedGeometryRevision=0,a.simplifyTransformedInternal=(e=function(t,e,i){if(!i)return this.getSimplifiedGeometry(e);var r=this.clone();return r.applyTransform(i),r.getSimplifiedGeometry(e)},o=!1,function(){var t=Array.prototype.slice.call(arguments);return o&&this===n&&g(t,r)||(o=!0,n=this,r=t,i=e.apply(this,arguments)),i}),a}return Fi(i,t),i.prototype.simplifyTransformed=function(t,e){return this.simplifyTransformedInternal(this.getRevision(),t,e)},i.prototype.clone=function(){return e()},i.prototype.closestPointXY=function(t,i,r,n){return e()},i.prototype.containsXY=function(t,e){var i=this.getClosestPoint([t,e]);return i[0]===t&&i[1]===e},i.prototype.getClosestPoint=function(t,e){var i=e||[NaN,NaN];return this.closestPointXY(t[0],t[1],i,1/0),i},i.prototype.intersectsCoordinate=function(t){return this.containsXY(t[0],t[1])},i.prototype.computeExtent=function(t){return e()},i.prototype.getExtent=function(t){if(this.extentRevision_!=this.getRevision()){var e=this.computeExtent(this.extent_);(isNaN(e[0])||isNaN(e[1]))&&$t(e),this.extentRevision_=this.getRevision()}return function(t,e){return e?(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e):t}(this.extent_,t)},i.prototype.rotate=function(t,i){e()},i.prototype.scale=function(t,i,r){e()},i.prototype.simplify=function(t){return this.getSimplifiedGeometry(t*t)},i.prototype.getSimplifiedGeometry=function(t){return e()},i.prototype.getType=function(){return e()},i.prototype.applyTransform=function(t){e()},i.prototype.intersectsExtent=function(t){return e()},i.prototype.translate=function(t,i){e()},i.prototype.transform=function(t,e){var i=ci(t),r=i.getUnits()==wt?function(t,r,n){var o=i.getExtent(),a=i.getWorldExtent(),s=ge(a)/ge(o);return Ot(Oi,a[0],a[3],s,-s,0,0,0),Ei(t,0,t.length,n,Oi,r),yi(i,e)(t,r,n)}:yi(i,e);return this.applyTransform(r),this},i}(K),Mi=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Li=function(t){function i(){var e=t.call(this)||this;return e.layout=ot,e.stride=2,e.flatCoordinates=null,e}return Mi(i,t),i.prototype.computeExtent=function(t){return ie(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t)},i.prototype.getCoordinates=function(){return e()},i.prototype.getFirstCoordinate=function(){return this.flatCoordinates.slice(0,this.stride)},i.prototype.getFlatCoordinates=function(){return this.flatCoordinates},i.prototype.getLastCoordinate=function(){return this.flatCoordinates.slice(this.flatCoordinates.length-this.stride)},i.prototype.getLayout=function(){return this.layout},i.prototype.getSimplifiedGeometry=function(t){if(this.simplifiedGeometryRevision!==this.getRevision()&&(this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),t<0||0!==this.simplifiedGeometryMaxMinSquaredTolerance&&t<=this.simplifiedGeometryMaxMinSquaredTolerance)return this;var e=this.getSimplifiedGeometryInternal(t);return e.getFlatCoordinates().length<this.flatCoordinates.length?e:(this.simplifiedGeometryMaxMinSquaredTolerance=t,this)},i.prototype.getSimplifiedGeometryInternal=function(t){return this},i.prototype.getStride=function(){return this.stride},i.prototype.setFlatCoordinates=function(t,e){this.stride=Ai(t),this.layout=t,this.flatCoordinates=e},i.prototype.setCoordinates=function(t,i){e()},i.prototype.setLayout=function(t,e,i){var r;if(t)r=Ai(t);else{for(var n=0;n<i;++n){if(0===e.length)return this.layout=ot,void(this.stride=2);e=e[0]}t=function(t){var e;2==t?e=ot:3==t?e=at:4==t&&(e=lt);return e}(r=e.length)}this.layout=t,this.stride=r},i.prototype.applyTransform=function(t){this.flatCoordinates&&(t(this.flatCoordinates,this.flatCoordinates,this.stride),this.changed())},i.prototype.rotate=function(t,e){var i=this.getFlatCoordinates();if(i){var r=this.getStride();Pi(i,0,i.length,r,t,e,i),this.changed()}},i.prototype.scale=function(t,e,i){var r=e;void 0===r&&(r=t);var n=i;n||(n=pe(this.getExtent()));var o=this.getFlatCoordinates();if(o){var a=this.getStride();!function(t,e,i,r,n,o,a,s){for(var l=s||[],u=a[0],h=a[1],c=0,p=e;p<i;p+=r){var f=t[p]-u,d=t[p+1]-h;l[c++]=u+n*f,l[c++]=h+o*d;for(var g=p+2;g<p+r;++g)l[c++]=t[g]}s&&l.length!=c&&(l.length=c)}(o,0,o.length,a,t,r,n,o),this.changed()}},i.prototype.translate=function(t,e){var i=this.getFlatCoordinates();if(i){var r=this.getStride();Ri(i,0,i.length,r,t,e,i),this.changed()}},i}(Ii);function Ai(t){var e;return t==ot?e=2:t==at||t==st?e=3:t==lt&&(e=4),e}function ki(t,e,i,r,n,o,a){var s,l=t[e],u=t[e+1],h=t[i]-l,c=t[i+1]-u;if(0===h&&0===c)s=e;else{var p=((n-l)*h+(o-u)*c)/(h*h+c*c);if(p>1)s=i;else{if(p>0){for(var f=0;f<r;++f)a[f]=Me(t[e+f],t[i+f],p);return void(a.length=r)}s=e}}for(f=0;f<r;++f)a[f]=t[s+f];a.length=r}function Di(t,e,i,r,n){var o=t[e],a=t[e+1];for(e+=r;e<i;e+=r){var s=t[e],l=t[e+1],u=Re(o,a,s,l);u>n&&(n=u),o=s,a=l}return n}function ji(t,e,i,r,n){for(var o=0,a=i.length;o<a;++o){var s=i[o];n=Di(t,e,s,r,n),e=s}return n}function Gi(t,e,i,r,n,o,a,s,l,u,h){if(e==i)return u;var c,p;if(0===n){if((p=Re(a,s,t[e],t[e+1]))<u){for(c=0;c<r;++c)l[c]=t[e+c];return l.length=r,p}return u}for(var f=h||[NaN,NaN],d=e+r;d<i;)if(ki(t,d-r,d,r,a,s,f),(p=Re(a,s,f[0],f[1]))<u){for(u=p,c=0;c<r;++c)l[c]=f[c];l.length=r,d+=r}else d+=r*Math.max((Math.sqrt(p)-Math.sqrt(u))/n|0,1);if(o&&(ki(t,i-r,e,r,a,s,f),(p=Re(a,s,f[0],f[1]))<u)){for(u=p,c=0;c<r;++c)l[c]=f[c];l.length=r}return u}function Ni(t,e,i,r,n,o,a,s,l,u,h){for(var c=h||[NaN,NaN],p=0,f=i.length;p<f;++p){var d=i[p];u=Gi(t,e,d,r,n,o,a,s,l,u,c),e=d}return u}function zi(t,e,i,r){for(var n=0,o=i.length;n<o;++n)t[e++]=i[n];return e}function Bi(t,e,i,r){for(var n=0,o=i.length;n<o;++n)for(var a=i[n],s=0;s<r;++s)t[e++]=a[s];return e}function Ui(t,e,i,r,n){for(var o=n||[],a=0,s=0,l=i.length;s<l;++s){var u=Bi(t,e,i[s],r);o[a++]=u,e=u}return o.length=a,o}function Vi(t,e,i,r,n,o,a){var s=(i-e)/r;if(s<3){for(;e<i;e+=r)o[a++]=t[e],o[a++]=t[e+1];return a}var l=new Array(s);l[0]=1,l[s-1]=1;for(var u=[e,i-r],h=0;u.length>0;){for(var c=u.pop(),p=u.pop(),f=0,d=t[p],g=t[p+1],_=t[c],y=t[c+1],v=p+r;v<c;v+=r){var m=Pe(t[v],t[v+1],d,g,_,y);m>f&&(h=v,f=m)}f>n&&(l[(h-e)/r]=1,p+r<h&&u.push(p,h),h+r<c&&u.push(h,c))}for(v=0;v<s;++v)l[v]&&(o[a++]=t[e+v*r],o[a++]=t[e+v*r+1]);return a}function Xi(t,e){return e*Math.round(t/e)}function Wi(t,e,i,r,n,o,a){if(e==i)return a;var s,l,u=Xi(t[e],n),h=Xi(t[e+1],n);e+=r,o[a++]=u,o[a++]=h;do{if(s=Xi(t[e],n),l=Xi(t[e+1],n),(e+=r)==i)return o[a++]=s,o[a++]=l,a}while(s==u&&l==h);for(;e<i;){var c=Xi(t[e],n),p=Xi(t[e+1],n);if(e+=r,c!=s||p!=l){var f=s-u,d=l-h,g=c-u,_=p-h;f*_==d*g&&(f<0&&g<f||f==g||f>0&&g>f)&&(d<0&&_<d||d==_||d>0&&_>d)?(s=c,l=p):(o[a++]=s,o[a++]=l,u=s,h=l,s=c,l=p)}}return o[a++]=s,o[a++]=l,a}function Yi(t,e,i,r,n,o,a,s){for(var l=0,u=i.length;l<u;++l){var h=i[l];a=Wi(t,e,h,r,n,o,a),s.push(a),e=h}return a}function Ki(t,e,i,r,n){for(var o=void 0!==n?n:[],a=0,s=e;s<i;s+=r)o[a++]=t.slice(s,s+r);return o.length=a,o}function Zi(t,e,i,r,n){for(var o=void 0!==n?n:[],a=0,s=0,l=i.length;s<l;++s){var u=i[s];o[a++]=Ki(t,e,u,r,o[a]),e=u}return o.length=a,o}function Hi(t,e,i,r,n){for(var o=void 0!==n?n:[],a=0,s=0,l=i.length;s<l;++s){var u=i[s];o[a++]=Zi(t,e,u,r,o[a]),e=u[u.length-1]}return o.length=a,o}function qi(t,e,i,r){for(var n=0,o=t[i-r],a=t[i-r+1];e<i;e+=r){var s=t[e],l=t[e+1];n+=a*s-o*l,o=s,a=l}return n/2}function Ji(t,e,i,r){for(var n=0,o=0,a=i.length;o<a;++o){var s=i[o];n+=qi(t,e,s,r),e=s}return n}var Qi=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),$i=function(t){function e(e,i){var r=t.call(this)||this;return r.maxDelta_=-1,r.maxDeltaRevision_=-1,void 0===i||Array.isArray(e[0])?r.setCoordinates(e,i):r.setFlatCoordinates(i,e),r}return Qi(e,t),e.prototype.clone=function(){return new e(this.flatCoordinates.slice(),this.layout)},e.prototype.closestPointXY=function(t,e,i,r){return r<Yt(this.getExtent(),t,e)?r:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(Di(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),Gi(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,this.maxDelta_,!0,t,e,i,r))},e.prototype.getArea=function(){return qi(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},e.prototype.getCoordinates=function(){return Ki(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},e.prototype.getSimplifiedGeometryInternal=function(t){var i=[];return i.length=Vi(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t,i,0),new e(i,ot)},e.prototype.getType=function(){return ct},e.prototype.intersectsExtent=function(t){return!1},e.prototype.setCoordinates=function(t,e){this.setLayout(e,t,1),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=Bi(this.flatCoordinates,0,t,this.stride),this.changed()},e}(Li),tr=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),er=function(t){function e(e,i){var r=t.call(this)||this;return r.setCoordinates(e,i),r}return tr(e,t),e.prototype.clone=function(){var t=new e(this.flatCoordinates.slice(),this.layout);return t.applyProperties(this),t},e.prototype.closestPointXY=function(t,e,i,r){var n=this.flatCoordinates,o=Re(t,e,n[0],n[1]);if(o<r){for(var a=this.stride,s=0;s<a;++s)i[s]=n[s];return i.length=a,o}return r},e.prototype.getCoordinates=function(){return this.flatCoordinates?this.flatCoordinates.slice():[]},e.prototype.computeExtent=function(t){return te(this.flatCoordinates,t)},e.prototype.getType=function(){return ut},e.prototype.intersectsExtent=function(t){return Ht(t,this.flatCoordinates[0],this.flatCoordinates[1])},e.prototype.setCoordinates=function(t,e){this.setLayout(e,t,0),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=zi(this.flatCoordinates,0,t,this.stride),this.changed()},e}(Li);function ir(t,e,i,r,n){return!le(n,(function(n){return!rr(t,e,i,r,n[0],n[1])}))}function rr(t,e,i,r,n,o){for(var a=0,s=t[i-r],l=t[i-r+1];e<i;e+=r){var u=t[e],h=t[e+1];l<=o?h>o&&(u-s)*(o-l)-(n-s)*(h-l)>0&&a++:h<=o&&(u-s)*(o-l)-(n-s)*(h-l)<0&&a--,s=u,l=h}return 0!==a}function nr(t,e,i,r,n,o){if(0===i.length)return!1;if(!rr(t,e,i[0],r,n,o))return!1;for(var a=1,s=i.length;a<s;++a)if(rr(t,i[a-1],i[a],r,n,o))return!1;return!0}function or(t,e,i,r,n,o,a){for(var s,l,u,c,p,f,d,g=n[o+1],_=[],y=0,v=i.length;y<v;++y){var m=i[y];for(c=t[m-r],f=t[m-r+1],s=e;s<m;s+=r)p=t[s],d=t[s+1],(g<=f&&d<=g||f<=g&&g<=d)&&(u=(g-f)/(d-f)*(p-c)+c,_.push(u)),c=p,f=d}var x=NaN,w=-1/0;for(_.sort(h),c=_[0],s=1,l=_.length;s<l;++s){p=_[s];var S=Math.abs(p-c);S>w&&nr(t,e,i,r,u=(c+p)/2,g)&&(x=u,w=S),c=p}return isNaN(x)&&(x=n[o]),a?(a.push(x,g,w),a):[x,g,w]}function ar(t,e,i,r,n){for(var o=[],a=0,s=i.length;a<s;++a){var l=i[a];o=or(t,e,l,r,n,2*a,o),e=l[l.length-1]}return o}function sr(t,e,i,r,n){for(var o,a=[t[e],t[e+1]],s=[];e+r<i;e+=r){if(s[0]=t[e+r],s[1]=t[e+r+1],o=n(a,s))return o;a[0]=s[0],a[1]=s[1]}return!1}function lr(t,e,i,r,n){var o=ae([1/0,1/0,-1/0,-1/0],t,e,i,r);return!!xe(n,o)&&(!!Zt(n,o)||(o[0]>=n[0]&&o[2]<=n[2]||(o[1]>=n[1]&&o[3]<=n[3]||sr(t,e,i,r,(function(t,e){return function(t,e,i){var r=!1,n=qt(t,e),o=qt(t,i);if(n===Gt||o===Gt)r=!0;else{var a=t[0],s=t[1],l=t[2],u=t[3],h=e[0],c=e[1],p=i[0],f=i[1],d=(f-c)/(p-h),g=void 0,_=void 0;o&Nt&&!(n&Nt)&&(r=(g=p-(f-u)/d)>=a&&g<=l),r||!(o&zt)||n&zt||(r=(_=f-(p-l)*d)>=s&&_<=u),r||!(o&Bt)||n&Bt||(r=(g=p-(f-s)/d)>=a&&g<=l),r||!(o&Ut)||n&Ut||(r=(_=f-(p-a)*d)>=s&&_<=u)}return r}(n,t,e)})))))}function ur(t,e,i,r,n){if(!function(t,e,i,r,n){return!!lr(t,e,i,r,n)||(!!rr(t,e,i,r,n[0],n[1])||(!!rr(t,e,i,r,n[0],n[3])||(!!rr(t,e,i,r,n[2],n[1])||!!rr(t,e,i,r,n[2],n[3]))))}(t,e,i[0],r,n))return!1;if(1===i.length)return!0;for(var o=1,a=i.length;o<a;++o)if(ir(t,i[o-1],i[o],r,n)&&!lr(t,i[o-1],i[o],r,n))return!1;return!0}function hr(t,e,i,r){for(;e<i-r;){for(var n=0;n<r;++n){var o=t[e+n];t[e+n]=t[i-r+n],t[i-r+n]=o}e+=r,i-=r}}function cr(t,e,i,r){for(var n=0,o=t[i-r],a=t[i-r+1];e<i;e+=r){var s=t[e],l=t[e+1];n+=(s-o)*(l+a),o=s,a=l}return 0===n?void 0:n>0}function pr(t,e,i,r,n){for(var o=void 0!==n&&n,a=0,s=i.length;a<s;++a){var l=i[a],u=cr(t,e,l,r);if(0===a){if(o&&u||!o&&!u)return!1}else if(o&&!u||!o&&u)return!1;e=l}return!0}function fr(t,e,i,r,n){for(var o=void 0!==n&&n,a=0,s=i.length;a<s;++a){var l=i[a],u=cr(t,e,l,r);(0===a?o&&u||!o&&!u:o&&!u||!o&&u)&&hr(t,e,l,r),e=l}return e}function dr(t,e,i,r,n){for(var o=0,a=i.length;o<a;++o)e=fr(t,e,i[o],r,n);return e}var gr=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),_r=function(t){function e(e,i,r){var n=t.call(this)||this;return n.ends_=[],n.flatInteriorPointRevision_=-1,n.flatInteriorPoint_=null,n.maxDelta_=-1,n.maxDeltaRevision_=-1,n.orientedRevision_=-1,n.orientedFlatCoordinates_=null,void 0!==i&&r?(n.setFlatCoordinates(i,e),n.ends_=r):n.setCoordinates(e,i),n}return gr(e,t),e.prototype.appendLinearRing=function(t){this.flatCoordinates?d(this.flatCoordinates,t.getFlatCoordinates()):this.flatCoordinates=t.getFlatCoordinates().slice(),this.ends_.push(this.flatCoordinates.length),this.changed()},e.prototype.clone=function(){var t=new e(this.flatCoordinates.slice(),this.layout,this.ends_.slice());return t.applyProperties(this),t},e.prototype.closestPointXY=function(t,e,i,r){return r<Yt(this.getExtent(),t,e)?r:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(ji(this.flatCoordinates,0,this.ends_,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),Ni(this.flatCoordinates,0,this.ends_,this.stride,this.maxDelta_,!0,t,e,i,r))},e.prototype.containsXY=function(t,e){return nr(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride,t,e)},e.prototype.getArea=function(){return Ji(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride)},e.prototype.getCoordinates=function(t){var e;return void 0!==t?fr(e=this.getOrientedFlatCoordinates().slice(),0,this.ends_,this.stride,t):e=this.flatCoordinates,Zi(e,0,this.ends_,this.stride)},e.prototype.getEnds=function(){return this.ends_},e.prototype.getFlatInteriorPoint=function(){if(this.flatInteriorPointRevision_!=this.getRevision()){var t=pe(this.getExtent());this.flatInteriorPoint_=or(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride,t,0),this.flatInteriorPointRevision_=this.getRevision()}return this.flatInteriorPoint_},e.prototype.getInteriorPoint=function(){return new er(this.getFlatInteriorPoint(),st)},e.prototype.getLinearRingCount=function(){return this.ends_.length},e.prototype.getLinearRing=function(t){return t<0||this.ends_.length<=t?null:new $i(this.flatCoordinates.slice(0===t?0:this.ends_[t-1],this.ends_[t]),this.layout)},e.prototype.getLinearRings=function(){for(var t=this.layout,e=this.flatCoordinates,i=this.ends_,r=[],n=0,o=0,a=i.length;o<a;++o){var s=i[o],l=new $i(e.slice(n,s),t);r.push(l),n=s}return r},e.prototype.getOrientedFlatCoordinates=function(){if(this.orientedRevision_!=this.getRevision()){var t=this.flatCoordinates;pr(t,0,this.ends_,this.stride)?this.orientedFlatCoordinates_=t:(this.orientedFlatCoordinates_=t.slice(),this.orientedFlatCoordinates_.length=fr(this.orientedFlatCoordinates_,0,this.ends_,this.stride)),this.orientedRevision_=this.getRevision()}return this.orientedFlatCoordinates_},e.prototype.getSimplifiedGeometryInternal=function(t){var i=[],r=[];return i.length=Yi(this.flatCoordinates,0,this.ends_,this.stride,Math.sqrt(t),i,0,r),new e(i,ot,r)},e.prototype.getType=function(){return pt},e.prototype.intersectsExtent=function(t){return ur(this.getOrientedFlatCoordinates(),0,this.ends_,this.stride,t)},e.prototype.setCoordinates=function(t,e){this.setLayout(e,t,2),this.flatCoordinates||(this.flatCoordinates=[]);var i=Ui(this.flatCoordinates,0,t,this.stride,this.ends_);this.flatCoordinates.length=0===i.length?0:i[i.length-1],this.changed()},e}(Li);function yr(t){var e=t[0],i=t[1],r=t[2],n=t[3],o=[e,i,e,n,r,n,r,i,e,i];return new _r(o,ot,[o.length])}function vr(t,e,i){for(var r=e||32,n=t.getStride(),o=t.getLayout(),a=t.getCenter(),s=n*(r+1),l=new Array(s),u=0;u<s;u+=n){l[u]=0,l[u+1]=0;for(var h=2;h<n;h++)l[u+h]=a[h]}var c=[l.length],p=new _r(l,o,c);return function(t,e,i,r){for(var n=t.getFlatCoordinates(),o=t.getStride(),a=n.length/o-1,s=r||0,l=0;l<=a;++l){var u=l*o,h=s+2*Ie(l,a)*Math.PI/a;n[u]=e[0]+i*Math.cos(h),n[u+1]=e[1]+i*Math.sin(h)}t.changed()}(p,a,t.getRadius(),i),p}var mr="prerender",xr="postrender",wr="precompose",Sr="postcompose",Cr="rendercomplete",br=function(){function t(t){var e=t||{};this.color_=void 0!==e.color?e.color:null}return t.prototype.clone=function(){var e=this.getColor();return new t({color:Array.isArray(e)?e.slice():e||void 0})},t.prototype.getColor=function(){return this.color_},t.prototype.setColor=function(t){this.color_=t},t}();function Tr(t,e,i,r,n,o,a){var s,l,u=(i-e)/r;if(1===u)s=e;else if(2===u)s=e,l=n;else if(0!==u){for(var c=t[e],p=t[e+1],f=0,d=[0],g=e+r;g<i;g+=r){var _=t[g],y=t[g+1];f+=Math.sqrt((_-c)*(_-c)+(y-p)*(y-p)),d.push(f),c=_,p=y}var v=n*f,m=function(t,e,i){for(var r,n,o=i||h,a=0,s=t.length,l=!1;a<s;)(n=+o(t[r=a+(s-a>>1)],e))<0?a=r+1:(s=r,l=!n);return l?a:~a}(d,v);m<0?(l=(v-d[-m-2])/(d[-m-1]-d[-m-2]),s=e+(-m-2)*r):s=e+m*r}var x=a>1?a:2,w=o||new Array(x);for(g=0;g<x;++g)w[g]=void 0===s?NaN:void 0===l?t[s+g]:Me(t[s+g],t[s+r+g],l);return w}function Er(t,e,i,r,n,o){if(i==e)return null;var a;if(n<t[e+r-1])return o?((a=t.slice(e,e+r))[r-1]=n,a):null;if(t[i-1]<n)return o?((a=t.slice(i-r,i))[r-1]=n,a):null;if(n==t[e+r-1])return t.slice(e,e+r);for(var s=e/r,l=i/r;s<l;){var u=s+l>>1;n<t[(u+1)*r-1]?l=u:s=u+1}var h=t[s*r-1];if(n==h)return t.slice((s-1)*r,(s-1)*r+r);var c=(n-h)/(t[(s+1)*r-1]-h);a=[];for(var p=0;p<r-1;++p)a.push(Me(t[(s-1)*r+p],t[s*r+p],c));return a.push(n),a}function Pr(t,e,i,r){for(var n=t[e],o=t[e+1],a=0,s=e+r;s<i;s+=r){var l=t[s],u=t[s+1];a+=Math.sqrt((l-n)*(l-n)+(u-o)*(u-o)),n=l,o=u}return a}var Rr=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Fr=function(t){function e(e,i){var r=t.call(this)||this;return r.flatMidpoint_=null,r.flatMidpointRevision_=-1,r.maxDelta_=-1,r.maxDeltaRevision_=-1,void 0===i||Array.isArray(e[0])?r.setCoordinates(e,i):r.setFlatCoordinates(i,e),r}return Rr(e,t),e.prototype.appendCoordinate=function(t){this.flatCoordinates?d(this.flatCoordinates,t):this.flatCoordinates=t.slice(),this.changed()},e.prototype.clone=function(){var t=new e(this.flatCoordinates.slice(),this.layout);return t.applyProperties(this),t},e.prototype.closestPointXY=function(t,e,i,r){return r<Yt(this.getExtent(),t,e)?r:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(Di(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),Gi(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,this.maxDelta_,!1,t,e,i,r))},e.prototype.forEachSegment=function(t){return sr(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t)},e.prototype.getCoordinateAtM=function(t,e){if(this.layout!=st&&this.layout!=lt)return null;var i=void 0!==e&&e;return Er(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t,i)},e.prototype.getCoordinates=function(){return Ki(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},e.prototype.getCoordinateAt=function(t,e){return Tr(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t,e,this.stride)},e.prototype.getLength=function(){return Pr(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},e.prototype.getFlatMidpoint=function(){return this.flatMidpointRevision_!=this.getRevision()&&(this.flatMidpoint_=this.getCoordinateAt(.5,this.flatMidpoint_),this.flatMidpointRevision_=this.getRevision()),this.flatMidpoint_},e.prototype.getSimplifiedGeometryInternal=function(t){var i=[];return i.length=Vi(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t,i,0),new e(i,ot)},e.prototype.getType=function(){return ht},e.prototype.intersectsExtent=function(t){return lr(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t)},e.prototype.setCoordinates=function(t,e){this.setLayout(e,t,1),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=Bi(this.flatCoordinates,0,t,this.stride),this.changed()},e}(Li),Or=function(){function t(t){var e=t||{};this.color_=void 0!==e.color?e.color:null,this.lineCap_=e.lineCap,this.lineDash_=void 0!==e.lineDash?e.lineDash:null,this.lineDashOffset_=e.lineDashOffset,this.lineJoin_=e.lineJoin,this.miterLimit_=e.miterLimit,this.width_=e.width}return t.prototype.clone=function(){var e=this.getColor();return new t({color:Array.isArray(e)?e.slice():e||void 0,lineCap:this.getLineCap(),lineDash:this.getLineDash()?this.getLineDash().slice():void 0,lineDashOffset:this.getLineDashOffset(),lineJoin:this.getLineJoin(),miterLimit:this.getMiterLimit(),width:this.getWidth()})},t.prototype.getColor=function(){return this.color_},t.prototype.getLineCap=function(){return this.lineCap_},t.prototype.getLineDash=function(){return this.lineDash_},t.prototype.getLineDashOffset=function(){return this.lineDashOffset_},t.prototype.getLineJoin=function(){return this.lineJoin_},t.prototype.getMiterLimit=function(){return this.miterLimit_},t.prototype.getWidth=function(){return this.width_},t.prototype.setColor=function(t){this.color_=t},t.prototype.setLineCap=function(t){this.lineCap_=t},t.prototype.setLineDash=function(t){this.lineDash_=t},t.prototype.setLineDashOffset=function(t){this.lineDashOffset_=t},t.prototype.setLineJoin=function(t){this.lineJoin_=t},t.prototype.setMiterLimit=function(t){this.miterLimit_=t},t.prototype.setWidth=function(t){this.width_=t},t}(),Ir=0,Mr=1,Lr=2,Ar=3,kr=4;function Dr(t,e,i){return void 0===i&&(i=[0,0]),i[0]=t[0]+2*e,i[1]=t[1]+2*e,i}function jr(t,e,i){return void 0===i&&(i=[0,0]),i[0]=t[0]*e+.5|0,i[1]=t[1]*e+.5|0,i}function Gr(t,e){return Array.isArray(t)?t:(void 0===e?e=[t,t]:(e[0]=t,e[1]=t),e)}var Nr=function(){function t(t){this.opacity_=t.opacity,this.rotateWithView_=t.rotateWithView,this.rotation_=t.rotation,this.scale_=t.scale,this.scaleArray_=Gr(t.scale),this.displacement_=t.displacement}return t.prototype.clone=function(){var e=this.getScale();return new t({opacity:this.getOpacity(),scale:Array.isArray(e)?e.slice():e,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice()})},t.prototype.getOpacity=function(){return this.opacity_},t.prototype.getRotateWithView=function(){return this.rotateWithView_},t.prototype.getRotation=function(){return this.rotation_},t.prototype.getScale=function(){return this.scale_},t.prototype.getScaleArray=function(){return this.scaleArray_},t.prototype.getDisplacement=function(){return this.displacement_},t.prototype.getAnchor=function(){return e()},t.prototype.getImage=function(t){return e()},t.prototype.getHitDetectionImage=function(){return e()},t.prototype.getPixelRatio=function(t){return 1},t.prototype.getImageState=function(){return e()},t.prototype.getImageSize=function(){return e()},t.prototype.getHitDetectionImageSize=function(){return e()},t.prototype.getOrigin=function(){return e()},t.prototype.getSize=function(){return e()},t.prototype.setOpacity=function(t){this.opacity_=t},t.prototype.setRotateWithView=function(t){this.rotateWithView_=t},t.prototype.setRotation=function(t){this.rotation_=t},t.prototype.setScale=function(t){this.scale_=t,this.scaleArray_=Gr(t)},t.prototype.listenImageChange=function(t){e()},t.prototype.load=function(){e()},t.prototype.unlistenImageChange=function(t){e()},t}(),zr=/^#([a-f0-9]{3}|[a-f0-9]{4}(?:[a-f0-9]{2}){0,2})$/i,Br=/^([a-z]*)$|^hsla?\(.*\)$/i;function Ur(t){return"string"==typeof t?t:Kr(t)}function Vr(t){var e=document.createElement("div");if(e.style.color=t,""!==e.style.color){document.body.appendChild(e);var i=getComputedStyle(e).color;return document.body.removeChild(e),i}return""}var Xr=function(){var t={},e=0;return function(i){var r;if(t.hasOwnProperty(i))r=t[i];else{if(e>=1024){var n=0;for(var o in t)0==(3&n++)&&(delete t[o],--e)}r=function(t){var e,i,r,n,o;Br.exec(t)&&(t=Vr(t));if(zr.exec(t)){var a=t.length-1,s=void 0;s=a<=4?1:2;var l=4===a||8===a;e=parseInt(t.substr(1+0*s,s),16),i=parseInt(t.substr(1+1*s,s),16),r=parseInt(t.substr(1+2*s,s),16),n=l?parseInt(t.substr(1+3*s,s),16):255,1==s&&(e=(e<<4)+e,i=(i<<4)+i,r=(r<<4)+r,l&&(n=(n<<4)+n)),o=[e,i,r,n/255]}else 0==t.indexOf("rgba(")?Yr(o=t.slice(5,-1).split(",").map(Number)):0==t.indexOf("rgb(")?((o=t.slice(4,-1).split(",").map(Number)).push(1),Yr(o)):it(!1,14);return o}(i),t[i]=r,++e}return r}}();function Wr(t){return Array.isArray(t)?t:Xr(t)}function Yr(t){return t[0]=be(t[0]+.5|0,0,255),t[1]=be(t[1]+.5|0,0,255),t[2]=be(t[2]+.5|0,0,255),t[3]=be(t[3],0,1),t}function Kr(t){var e=t[0];e!=(0|e)&&(e=e+.5|0);var i=t[1];i!=(0|i)&&(i=i+.5|0);var r=t[2];return r!=(0|r)&&(r=r+.5|0),"rgba("+e+","+i+","+r+","+(void 0===t[3]?1:t[3])+")"}function Zr(t){return Array.isArray(t)?Kr(t):t}var Hr="undefined"!=typeof navigator&&void 0!==navigator.userAgent?navigator.userAgent.toLowerCase():"",qr=-1!==Hr.indexOf("firefox"),Jr=(-1!==Hr.indexOf("safari")&&Hr.indexOf("chrom"),-1!==Hr.indexOf("webkit")&&-1==Hr.indexOf("edge")),Qr=-1!==Hr.indexOf("macintosh"),$r="undefined"!=typeof devicePixelRatio?devicePixelRatio:1,tn="undefined"!=typeof WorkerGlobalScope&&"undefined"!=typeof OffscreenCanvas&&self instanceof WorkerGlobalScope,en="undefined"!=typeof Image&&Image.prototype.decode,rn=function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("_",null,e),window.removeEventListener("_",null,e)}catch(t){}return t}();function nn(t,e,i){var r=i&&i.length?i.shift():tn?new OffscreenCanvas(t||300,e||300):document.createElement("canvas");return t&&(r.width=t),e&&(r.height=e),r.getContext("2d")}function on(t,e){var i=e.parentNode;i&&i.replaceChild(t,e)}function an(t){return t&&t.parentNode?t.parentNode.removeChild(t):null}var sn=new RegExp(["^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00 ))?)","(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?","(?:small|large)|medium|smaller|larger|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))","(?:\\s*\\/\\s*(normal|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])?))","?\\s*([-,\\\"\\'\\sa-z]+?)\\s*$"].join(""),"i"),ln=["style","variant","weight","size","lineHeight","family"],un=function(t){var e=t.match(sn);if(!e)return null;for(var i={lineHeight:"normal",size:"1.2em",style:"normal",weight:"normal",variant:"normal"},r=0,n=ln.length;r<n;++r){var o=e[r+1];void 0!==o&&(i[ln[r]]=o)}return i.families=i.family.split(/,\s?/),i},hn=[],cn=[0,0,0,0],pn=new K;(new b).setSize=function(){console.warn("labelCache is deprecated.")};var fn,dn,gn=null,_n={},yn=function(){var t,e,i=["monospace","serif"],r=i.length,n="wmytzilWMYTZIL@#/&?$%10";function o(t,o,a){for(var s=!0,l=0;l<r;++l){var u=i[l];if(e=xn(t+" "+o+" 32px "+u,n),a!=u){var h=xn(t+" "+o+" 32px "+a+","+u,n);s=s&&h!=e}}return!!s}function a(){for(var e=!0,i=pn.getKeys(),r=0,n=i.length;r<n;++r){var a=i[r];pn.get(a)<100&&(o.apply(this,a.split("\n"))?(x(_n),gn=null,fn=void 0,pn.set(a,100)):(pn.set(a,pn.get(a)+1,!0),e=!1))}e&&(clearInterval(t),t=void 0)}return function(e){var i=un(e);if(i)for(var r=i.families,n=0,s=r.length;n<s;++n){var l=r[n],u=i.style+"\n"+i.weight+"\n"+l;void 0===pn.get(u)&&(pn.set(u,100,!0),o(i.style,i.weight,l)||(pn.set(u,0,!0),void 0===t&&(t=setInterval(a,32))))}}}(),vn=function(t){var e=_n[t];if(null==e){if(tn){var i=un(t),r=mn(t,"Žg");e=(isNaN(Number(i.lineHeight))?1.2:Number(i.lineHeight))*(r.actualBoundingBoxAscent+r.actualBoundingBoxDescent)}else dn||((dn=document.createElement("div")).innerHTML="M",dn.style.margin="0 !important",dn.style.padding="0 !important",dn.style.position="absolute !important",dn.style.left="-99999px !important"),dn.style.font=t,document.body.appendChild(dn),e=dn.offsetHeight,document.body.removeChild(dn);_n[t]=e}return e};function mn(t,e){return gn||(gn=nn(1,1)),t!=fn&&(gn.font=t,fn=gn.font),gn.measureText(e)}function xn(t,e){return mn(t,e).width}function wn(t,e,i){if(e in i)return i[e];var r=xn(t,e);return i[e]=r,r}function Sn(t,e,i,r){0!==e&&(t.translate(i,r),t.rotate(e),t.translate(-i,-r))}function Cn(t,e,i,r,n,o,a,s,l,u,h){t.save(),1!==i&&(t.globalAlpha*=i),e&&t.setTransform.apply(t,e),r.contextInstructions?(t.translate(l,u),t.scale(h[0],h[1]),function(t,e){for(var i=t.contextInstructions,r=0,n=i.length;r<n;r+=2)Array.isArray(i[r+1])?e[i[r]].apply(e,i[r+1]):e[i[r]]=i[r+1]}(r,t)):h[0]<0||h[1]<0?(t.translate(l,u),t.scale(h[0],h[1]),t.drawImage(r,n,o,a,s,0,0,a,s)):t.drawImage(r,n,o,a,s,l,u,a*h[0],s*h[1]),t.restore()}var bn=null;function Tn(t){return tn?Mt(t):(bn||(bn=nn(1,1).canvas),bn.style.transform=Mt(t),bn.style.transform)}var En=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Pn=function(t){function e(e){var i=this,r=void 0!==e.rotateWithView&&e.rotateWithView;return(i=t.call(this,{opacity:1,rotateWithView:r,rotation:void 0!==e.rotation?e.rotation:0,scale:void 0!==e.scale?e.scale:1,displacement:void 0!==e.displacement?e.displacement:[0,0]})||this).canvas_={},i.hitDetectionCanvas_=null,i.fill_=void 0!==e.fill?e.fill:null,i.origin_=[0,0],i.points_=e.points,i.radius_=void 0!==e.radius?e.radius:e.radius1,i.radius2_=e.radius2,i.angle_=void 0!==e.angle?e.angle:0,i.stroke_=void 0!==e.stroke?e.stroke:null,i.anchor_=null,i.size_=null,i.imageSize_=null,i.hitDetectionImageSize_=null,i.render(),i}return En(e,t),e.prototype.clone=function(){var t=this.getScale(),i=new e({fill:this.getFill()?this.getFill().clone():void 0,points:this.getPoints(),radius:this.getRadius(),radius2:this.getRadius2(),angle:this.getAngle(),stroke:this.getStroke()?this.getStroke().clone():void 0,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),scale:Array.isArray(t)?t.slice():t,displacement:this.getDisplacement().slice()});return i.setOpacity(this.getOpacity()),i},e.prototype.getAnchor=function(){return this.anchor_},e.prototype.getAngle=function(){return this.angle_},e.prototype.getFill=function(){return this.fill_},e.prototype.getHitDetectionImage=function(){if(!this.hitDetectionCanvas_){var t=this.createRenderOptions();this.createHitDetectionCanvas_(t)}return this.hitDetectionCanvas_},e.prototype.getImage=function(t){if(!this.canvas_[t||1]){var e=this.createRenderOptions(),i=nn(e.size*t||1,e.size*t||1);this.draw_(e,i,0,0,t||1),this.canvas_[t||1]=i.canvas}return this.canvas_[t||1]},e.prototype.getPixelRatio=function(t){return t},e.prototype.getImageSize=function(){return this.imageSize_},e.prototype.getHitDetectionImageSize=function(){return this.hitDetectionImageSize_},e.prototype.getImageState=function(){return Lr},e.prototype.getOrigin=function(){return this.origin_},e.prototype.getPoints=function(){return this.points_},e.prototype.getRadius=function(){return this.radius_},e.prototype.getRadius2=function(){return this.radius2_},e.prototype.getSize=function(){return this.size_},e.prototype.getStroke=function(){return this.stroke_},e.prototype.listenImageChange=function(t){},e.prototype.load=function(){},e.prototype.unlistenImageChange=function(t){},e.prototype.createRenderOptions=function(){var t,e="round",i="round",r=0,n=null,o=0,a=0;return this.stroke_&&(null===(t=this.stroke_.getColor())&&(t="#000"),t=Zr(t),void 0===(a=this.stroke_.getWidth())&&(a=1),n=this.stroke_.getLineDash(),o=this.stroke_.getLineDashOffset(),void 0===(i=this.stroke_.getLineJoin())&&(i="round"),void 0===(e=this.stroke_.getLineCap())&&(e="round"),void 0===(r=this.stroke_.getMiterLimit())&&(r=10)),{strokeStyle:t,strokeWidth:a,size:2*(this.radius_+a)+1,lineCap:e,lineDash:n,lineDashOffset:o,lineJoin:i,miterLimit:r}},e.prototype.render=function(){var t=this.createRenderOptions(),e=nn(t.size,t.size);this.draw_(t,e,0,0,1),this.canvas_={},this.canvas_[1]=e.canvas;var i=e.canvas.width,r=i,n=this.getDisplacement();this.hitDetectionImageSize_=[t.size,t.size],this.createHitDetectionCanvas_(t),this.anchor_=[i/2-n[0],i/2+n[1]],this.size_=[i,i],this.imageSize_=[r,r]},e.prototype.draw_=function(t,e,i,r,n){var o,a,s;e.setTransform(n,0,0,n,0,0),e.translate(i,r),e.beginPath();var l=this.points_;if(l===1/0)e.arc(t.size/2,t.size/2,this.radius_,0,2*Math.PI,!0);else{var u=void 0!==this.radius2_?this.radius2_:this.radius_;for(u!==this.radius_&&(l*=2),o=0;o<=l;o++)a=2*o*Math.PI/l-Math.PI/2+this.angle_,s=o%2==0?this.radius_:u,e.lineTo(t.size/2+s*Math.cos(a),t.size/2+s*Math.sin(a))}if(this.fill_){var h=this.fill_.getColor();null===h&&(h="#000"),e.fillStyle=Zr(h),e.fill()}this.stroke_&&(e.strokeStyle=t.strokeStyle,e.lineWidth=t.strokeWidth,e.setLineDash&&t.lineDash&&(e.setLineDash(t.lineDash),e.lineDashOffset=t.lineDashOffset),e.lineCap=t.lineCap,e.lineJoin=t.lineJoin,e.miterLimit=t.miterLimit,e.stroke()),e.closePath()},e.prototype.createHitDetectionCanvas_=function(t){if(this.hitDetectionCanvas_=this.getImage(1),this.fill_){var e=this.fill_.getColor(),i=0;if("string"==typeof e&&(e=Wr(e)),null===e?i=1:Array.isArray(e)&&(i=4===e.length?e[3]:1),0===i){var r=nn(t.size,t.size);this.hitDetectionCanvas_=r.canvas,this.drawHitDetectionCanvas_(t,r,0,0)}}},e.prototype.drawHitDetectionCanvas_=function(t,e,i,r){e.translate(i,r),e.beginPath();var n=this.points_;if(n===1/0)e.arc(t.size/2,t.size/2,this.radius_,0,2*Math.PI,!0);else{var o=void 0!==this.radius2_?this.radius2_:this.radius_;o!==this.radius_&&(n*=2);var a=void 0,s=void 0,l=void 0;for(a=0;a<=n;a++)l=2*a*Math.PI/n-Math.PI/2+this.angle_,s=a%2==0?this.radius_:o,e.lineTo(t.size/2+s*Math.cos(l),t.size/2+s*Math.sin(l))}e.fillStyle="#000",e.fill(),this.stroke_&&(e.strokeStyle=t.strokeStyle,e.lineWidth=t.strokeWidth,t.lineDash&&(e.setLineDash(t.lineDash),e.lineDashOffset=t.lineDashOffset),e.stroke()),e.closePath()},e}(Nr),Rn=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Fn=function(t){function e(e){var i=e||{};return t.call(this,{points:1/0,fill:i.fill,radius:i.radius,stroke:i.stroke,scale:void 0!==i.scale?i.scale:1,rotation:void 0!==i.rotation?i.rotation:0,rotateWithView:void 0!==i.rotateWithView&&i.rotateWithView,displacement:void 0!==i.displacement?i.displacement:[0,0]})||this}return Rn(e,t),e.prototype.clone=function(){var t=this.getScale(),i=new e({fill:this.getFill()?this.getFill().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,radius:this.getRadius(),scale:Array.isArray(t)?t.slice():t,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice()});return i.setOpacity(this.getOpacity()),i},e.prototype.setRadius=function(t){this.radius_=t,this.render()},e}(Pn),On=function(){function t(t){var e=t||{};this.geometry_=null,this.geometryFunction_=An,void 0!==e.geometry&&this.setGeometry(e.geometry),this.fill_=void 0!==e.fill?e.fill:null,this.image_=void 0!==e.image?e.image:null,this.renderer_=void 0!==e.renderer?e.renderer:null,this.stroke_=void 0!==e.stroke?e.stroke:null,this.text_=void 0!==e.text?e.text:null,this.zIndex_=e.zIndex}return t.prototype.clone=function(){var e=this.getGeometry();return e&&"object"==typeof e&&(e=e.clone()),new t({geometry:e,fill:this.getFill()?this.getFill().clone():void 0,image:this.getImage()?this.getImage().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,text:this.getText()?this.getText().clone():void 0,zIndex:this.getZIndex()})},t.prototype.getRenderer=function(){return this.renderer_},t.prototype.setRenderer=function(t){this.renderer_=t},t.prototype.getGeometry=function(){return this.geometry_},t.prototype.getGeometryFunction=function(){return this.geometryFunction_},t.prototype.getFill=function(){return this.fill_},t.prototype.setFill=function(t){this.fill_=t},t.prototype.getImage=function(){return this.image_},t.prototype.setImage=function(t){this.image_=t},t.prototype.getStroke=function(){return this.stroke_},t.prototype.setStroke=function(t){this.stroke_=t},t.prototype.getText=function(){return this.text_},t.prototype.setText=function(t){this.text_=t},t.prototype.getZIndex=function(){return this.zIndex_},t.prototype.setGeometry=function(t){"function"==typeof t?this.geometryFunction_=t:"string"==typeof t?this.geometryFunction_=function(e){return e.get(t)}:t?void 0!==t&&(this.geometryFunction_=function(){return t}):this.geometryFunction_=An,this.geometry_=t},t.prototype.setZIndex=function(t){this.zIndex_=t},t}();var In=null;function Mn(t,e){if(!In){var i=new br({color:"rgba(255,255,255,0.4)"}),r=new Or({color:"#3399CC",width:1.25});In=[new On({image:new Fn({fill:i,stroke:r,radius:5}),fill:i,stroke:r})]}return In}function Ln(){var t={},e=[255,255,255,1],i=[0,153,255,1];return t[pt]=[new On({fill:new br({color:[255,255,255,.5]})})],t[gt]=t[pt],t[ht]=[new On({stroke:new Or({color:e,width:5})}),new On({stroke:new Or({color:i,width:3})})],t[dt]=t[ht],t[yt]=t[pt].concat(t[ht]),t[ut]=[new On({image:new Fn({radius:6,fill:new br({color:i}),stroke:new Or({color:e,width:1.5})}),zIndex:1/0})],t[ft]=t[ut],t[_t]=t[pt].concat(t[ht],t[ut]),t}function An(t){return t.getGeometry()}var kn="point",Dn="line",jn=function(){function t(t){var e=t||{};this.font_=e.font,this.rotation_=e.rotation,this.rotateWithView_=e.rotateWithView,this.scale_=e.scale,this.scaleArray_=Gr(void 0!==e.scale?e.scale:1),this.text_=e.text,this.textAlign_=e.textAlign,this.textBaseline_=e.textBaseline,this.fill_=void 0!==e.fill?e.fill:new br({color:"#333"}),this.maxAngle_=void 0!==e.maxAngle?e.maxAngle:Math.PI/4,this.placement_=void 0!==e.placement?e.placement:kn,this.overflow_=!!e.overflow,this.stroke_=void 0!==e.stroke?e.stroke:null,this.offsetX_=void 0!==e.offsetX?e.offsetX:0,this.offsetY_=void 0!==e.offsetY?e.offsetY:0,this.backgroundFill_=e.backgroundFill?e.backgroundFill:null,this.backgroundStroke_=e.backgroundStroke?e.backgroundStroke:null,this.padding_=void 0===e.padding?null:e.padding}return t.prototype.clone=function(){var e=this.getScale();return new t({font:this.getFont(),placement:this.getPlacement(),maxAngle:this.getMaxAngle(),overflow:this.getOverflow(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),scale:Array.isArray(e)?e.slice():e,text:this.getText(),textAlign:this.getTextAlign(),textBaseline:this.getTextBaseline(),fill:this.getFill()?this.getFill().clone():void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,offsetX:this.getOffsetX(),offsetY:this.getOffsetY(),backgroundFill:this.getBackgroundFill()?this.getBackgroundFill().clone():void 0,backgroundStroke:this.getBackgroundStroke()?this.getBackgroundStroke().clone():void 0,padding:this.getPadding()})},t.prototype.getOverflow=function(){return this.overflow_},t.prototype.getFont=function(){return this.font_},t.prototype.getMaxAngle=function(){return this.maxAngle_},t.prototype.getPlacement=function(){return this.placement_},t.prototype.getOffsetX=function(){return this.offsetX_},t.prototype.getOffsetY=function(){return this.offsetY_},t.prototype.getFill=function(){return this.fill_},t.prototype.getRotateWithView=function(){return this.rotateWithView_},t.prototype.getRotation=function(){return this.rotation_},t.prototype.getScale=function(){return this.scale_},t.prototype.getScaleArray=function(){return this.scaleArray_},t.prototype.getStroke=function(){return this.stroke_},t.prototype.getText=function(){return this.text_},t.prototype.getTextAlign=function(){return this.textAlign_},t.prototype.getTextBaseline=function(){return this.textBaseline_},t.prototype.getBackgroundFill=function(){return this.backgroundFill_},t.prototype.getBackgroundStroke=function(){return this.backgroundStroke_},t.prototype.getPadding=function(){return this.padding_},t.prototype.setOverflow=function(t){this.overflow_=t},t.prototype.setFont=function(t){this.font_=t},t.prototype.setMaxAngle=function(t){this.maxAngle_=t},t.prototype.setOffsetX=function(t){this.offsetX_=t},t.prototype.setOffsetY=function(t){this.offsetY_=t},t.prototype.setPlacement=function(t){this.placement_=t},t.prototype.setRotateWithView=function(t){this.rotateWithView_=t},t.prototype.setFill=function(t){this.fill_=t},t.prototype.setRotation=function(t){this.rotation_=t},t.prototype.setScale=function(t){this.scale_=t,this.scaleArray_=Gr(void 0!==t?t:1)},t.prototype.setStroke=function(t){this.stroke_=t},t.prototype.setText=function(t){this.text_=t},t.prototype.setTextAlign=function(t){this.textAlign_=t},t.prototype.setTextBaseline=function(t){this.textBaseline_=t},t.prototype.setBackgroundFill=function(t){this.backgroundFill_=t},t.prototype.setBackgroundStroke=function(t){this.backgroundStroke_=t},t.prototype.setPadding=function(t){this.padding_=t},t}(),Gn="opacity",Nn="visible",zn="extent",Bn="zIndex",Un="maxResolution",Vn="minResolution",Xn="maxZoom",Wn="minZoom",Yn="source",Kn=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Zn=function(t){function i(e){var i=t.call(this)||this,r=m({},e);return r[Gn]=void 0!==e.opacity?e.opacity:1,it("number"==typeof r[Gn],64),r[Nn]=void 0===e.visible||e.visible,r[Bn]=e.zIndex,r[Un]=void 0!==e.maxResolution?e.maxResolution:1/0,r[Vn]=void 0!==e.minResolution?e.minResolution:0,r[Wn]=void 0!==e.minZoom?e.minZoom:-1/0,r[Xn]=void 0!==e.maxZoom?e.maxZoom:1/0,i.className_=void 0!==r.className?e.className:"ol-layer",delete r.className,i.setProperties(r),i.state_=null,i}return Kn(i,t),i.prototype.getClassName=function(){return this.className_},i.prototype.getLayerState=function(t){var e=this.state_||{layer:this,managed:void 0===t||t},i=this.getZIndex();return e.opacity=be(Math.round(100*this.getOpacity())/100,0,1),e.sourceState=this.getSourceState(),e.visible=this.getVisible(),e.extent=this.getExtent(),e.zIndex=void 0!==i?i:!1===e.managed?1/0:0,e.maxResolution=this.getMaxResolution(),e.minResolution=Math.max(this.getMinResolution(),0),e.minZoom=this.getMinZoom(),e.maxZoom=this.getMaxZoom(),this.state_=e,e},i.prototype.getLayersArray=function(t){return e()},i.prototype.getLayerStatesArray=function(t){return e()},i.prototype.getExtent=function(){return this.get(zn)},i.prototype.getMaxResolution=function(){return this.get(Un)},i.prototype.getMinResolution=function(){return this.get(Vn)},i.prototype.getMinZoom=function(){return this.get(Wn)},i.prototype.getMaxZoom=function(){return this.get(Xn)},i.prototype.getOpacity=function(){return this.get(Gn)},i.prototype.getSourceState=function(){return e()},i.prototype.getVisible=function(){return this.get(Nn)},i.prototype.getZIndex=function(){return this.get(Bn)},i.prototype.setExtent=function(t){this.set(zn,t)},i.prototype.setMaxResolution=function(t){this.set(Un,t)},i.prototype.setMinResolution=function(t){this.set(Vn,t)},i.prototype.setMaxZoom=function(t){this.set(Xn,t)},i.prototype.setMinZoom=function(t){this.set(Wn,t)},i.prototype.setOpacity=function(t){it("number"==typeof t,64),this.set(Gn,t)},i.prototype.setVisible=function(t){this.set(Nn,t)},i.prototype.setZIndex=function(t){this.set(Bn,t)},i.prototype.disposeInternal=function(){this.state_&&(this.state_.layer=null,this.state_=null),t.prototype.disposeInternal.call(this)},i}(K),Hn="undefined",qn="loading",Jn="ready",Qn="error",$n=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),to=function(t){function e(e){var i=this,r=m({},e);delete r.source,(i=t.call(this,r)||this).mapPrecomposeKey_=null,i.mapRenderKey_=null,i.sourceChangeKey_=null,i.renderer_=null,e.render&&(i.render=e.render),e.map&&i.setMap(e.map),i.addEventListener(H(Yn),i.handleSourcePropertyChange_);var n=e.source?e.source:null;return i.setSource(n),i}return $n(e,t),e.prototype.getLayersArray=function(t){var e=t||[];return e.push(this),e},e.prototype.getLayerStatesArray=function(t){var e=t||[];return e.push(this.getLayerState()),e},e.prototype.getSource=function(){return this.get(Yn)||null},e.prototype.getSourceState=function(){var t=this.getSource();return t?t.getState():Hn},e.prototype.handleSourceChange_=function(){this.changed()},e.prototype.handleSourcePropertyChange_=function(){this.sourceChangeKey_&&(B(this.sourceChangeKey_),this.sourceChangeKey_=null);var t=this.getSource();t&&(this.sourceChangeKey_=N(t,T,this.handleSourceChange_,this)),this.changed()},e.prototype.getFeatures=function(t){return this.renderer_.getFeatures(t)},e.prototype.render=function(t,e){var i=this.getRenderer();if(i.prepareFrame(t))return i.renderFrame(t,e)},e.prototype.setMap=function(t){this.mapPrecomposeKey_&&(B(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),t||this.changed(),this.mapRenderKey_&&(B(this.mapRenderKey_),this.mapRenderKey_=null),t&&(this.mapPrecomposeKey_=N(t,wr,(function(t){var e=t.frameState.layerStatesArray,i=this.getLayerState(!1);it(!e.some((function(t){return t.layer===i.layer})),67),e.push(i)}),this),this.mapRenderKey_=N(this,T,t.render,t),this.changed())},e.prototype.setSource=function(t){this.set(Yn,t)},e.prototype.getRenderer=function(){return this.renderer_||(this.renderer_=this.createRenderer()),this.renderer_},e.prototype.hasRenderer=function(){return!!this.renderer_},e.prototype.createRenderer=function(){return null},e.prototype.disposeInternal=function(){this.setSource(null),t.prototype.disposeInternal.call(this)},e}(Zn);function eo(t,e){if(!t.visible)return!1;var i=e.resolution;if(i<t.minResolution||i>=t.maxResolution)return!1;var r=e.zoom;return r>t.minZoom&&r<=t.maxZoom}function io(t,e,i,r,n){!function t(e,i,r,n,o){for(;n>r;){if(n-r>600){var a=n-r+1,s=i-r+1,l=Math.log(a),u=.5*Math.exp(2*l/3),h=.5*Math.sqrt(l*u*(a-u)/a)*(s-a/2<0?-1:1),c=Math.max(r,Math.floor(i-s*u/a+h)),p=Math.min(n,Math.floor(i+(a-s)*u/a+h));t(e,i,c,p,o)}var f=e[i],d=r,g=n;for(ro(e,r,i),o(e[n],f)>0&&ro(e,r,n);d<g;){for(ro(e,d,g),d++,g--;o(e[d],f)<0;)d++;for(;o(e[g],f)>0;)g--}0===o(e[r],f)?ro(e,r,g):(g++,ro(e,g,n)),g<=i&&(r=g+1),i<=g&&(n=g-1)}}(t,e,i||0,r||t.length-1,n||no)}function ro(t,e,i){var r=t[e];t[e]=t[i],t[i]=r}function no(t,e){return t<e?-1:t>e?1:0}class oo{constructor(t=9){this._maxEntries=Math.max(4,t),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()}all(){return this._all(this.data,[])}search(t){let e=this.data;const i=[];if(!yo(t,e))return i;const r=this.toBBox,n=[];for(;e;){for(let o=0;o<e.children.length;o++){const a=e.children[o],s=e.leaf?r(a):a;yo(t,s)&&(e.leaf?i.push(a):_o(t,s)?this._all(a,i):n.push(a))}e=n.pop()}return i}collides(t){let e=this.data;if(!yo(t,e))return!1;const i=[];for(;e;){for(let r=0;r<e.children.length;r++){const n=e.children[r],o=e.leaf?this.toBBox(n):n;if(yo(t,o)){if(e.leaf||_o(t,o))return!0;i.push(n)}}e=i.pop()}return!1}load(t){if(!t||!t.length)return this;if(t.length<this._minEntries){for(let e=0;e<t.length;e++)this.insert(t[e]);return this}let e=this._build(t.slice(),0,t.length-1,0);if(this.data.children.length)if(this.data.height===e.height)this._splitRoot(this.data,e);else{if(this.data.height<e.height){const t=this.data;this.data=e,e=t}this._insert(e,this.data.height-e.height-1,!0)}else this.data=e;return this}insert(t){return t&&this._insert(t,this.data.height-1),this}clear(){return this.data=vo([]),this}remove(t,e){if(!t)return this;let i=this.data;const r=this.toBBox(t),n=[],o=[];let a,s,l;for(;i||n.length;){if(i||(i=n.pop(),s=n[n.length-1],a=o.pop(),l=!0),i.leaf){const r=ao(t,i.children,e);if(-1!==r)return i.children.splice(r,1),n.push(i),this._condense(n),this}l||i.leaf||!_o(i,r)?s?(a++,i=s.children[a],l=!1):i=null:(n.push(i),o.push(a),a=0,s=i,i=i.children[0])}return this}toBBox(t){return t}compareMinX(t,e){return t.minX-e.minX}compareMinY(t,e){return t.minY-e.minY}toJSON(){return this.data}fromJSON(t){return this.data=t,this}_all(t,e){const i=[];for(;t;)t.leaf?e.push(...t.children):i.push(...t.children),t=i.pop();return e}_build(t,e,i,r){const n=i-e+1;let o,a=this._maxEntries;if(n<=a)return o=vo(t.slice(e,i+1)),so(o,this.toBBox),o;r||(r=Math.ceil(Math.log(n)/Math.log(a)),a=Math.ceil(n/Math.pow(a,r-1))),o=vo([]),o.leaf=!1,o.height=r;const s=Math.ceil(n/a),l=s*Math.ceil(Math.sqrt(a));mo(t,e,i,l,this.compareMinX);for(let n=e;n<=i;n+=l){const e=Math.min(n+l-1,i);mo(t,n,e,s,this.compareMinY);for(let i=n;i<=e;i+=s){const n=Math.min(i+s-1,e);o.children.push(this._build(t,i,n,r-1))}}return so(o,this.toBBox),o}_chooseSubtree(t,e,i,r){for(;r.push(e),!e.leaf&&r.length-1!==i;){let i,r=1/0,a=1/0;for(let s=0;s<e.children.length;s++){const l=e.children[s],u=po(l),h=(n=t,o=l,(Math.max(o.maxX,n.maxX)-Math.min(o.minX,n.minX))*(Math.max(o.maxY,n.maxY)-Math.min(o.minY,n.minY))-u);h<a?(a=h,r=u<r?u:r,i=l):h===a&&u<r&&(r=u,i=l)}e=i||e.children[0]}var n,o;return e}_insert(t,e,i){const r=i?t:this.toBBox(t),n=[],o=this._chooseSubtree(r,this.data,e,n);for(o.children.push(t),uo(o,r);e>=0&&n[e].children.length>this._maxEntries;)this._split(n,e),e--;this._adjustParentBBoxes(r,n,e)}_split(t,e){const i=t[e],r=i.children.length,n=this._minEntries;this._chooseSplitAxis(i,n,r);const o=this._chooseSplitIndex(i,n,r),a=vo(i.children.splice(o,i.children.length-o));a.height=i.height,a.leaf=i.leaf,so(i,this.toBBox),so(a,this.toBBox),e?t[e-1].children.push(a):this._splitRoot(i,a)}_splitRoot(t,e){this.data=vo([t,e]),this.data.height=t.height+1,this.data.leaf=!1,so(this.data,this.toBBox)}_chooseSplitIndex(t,e,i){let r,n=1/0,o=1/0;for(let a=e;a<=i-e;a++){const e=lo(t,0,a,this.toBBox),s=lo(t,a,i,this.toBBox),l=go(e,s),u=po(e)+po(s);l<n?(n=l,r=a,o=u<o?u:o):l===n&&u<o&&(o=u,r=a)}return r||i-e}_chooseSplitAxis(t,e,i){const r=t.leaf?this.compareMinX:ho,n=t.leaf?this.compareMinY:co;this._allDistMargin(t,e,i,r)<this._allDistMargin(t,e,i,n)&&t.children.sort(r)}_allDistMargin(t,e,i,r){t.children.sort(r);const n=this.toBBox,o=lo(t,0,e,n),a=lo(t,i-e,i,n);let s=fo(o)+fo(a);for(let r=e;r<i-e;r++){const e=t.children[r];uo(o,t.leaf?n(e):e),s+=fo(o)}for(let r=i-e-1;r>=e;r--){const e=t.children[r];uo(a,t.leaf?n(e):e),s+=fo(a)}return s}_adjustParentBBoxes(t,e,i){for(let r=i;r>=0;r--)uo(e[r],t)}_condense(t){for(let e,i=t.length-1;i>=0;i--)0===t[i].children.length?i>0?(e=t[i-1].children,e.splice(e.indexOf(t[i]),1)):this.clear():so(t[i],this.toBBox)}}function ao(t,e,i){if(!i)return e.indexOf(t);for(let r=0;r<e.length;r++)if(i(t,e[r]))return r;return-1}function so(t,e){lo(t,0,t.children.length,e,t)}function lo(t,e,i,r,n){n||(n=vo(null)),n.minX=1/0,n.minY=1/0,n.maxX=-1/0,n.maxY=-1/0;for(let o=e;o<i;o++){const e=t.children[o];uo(n,t.leaf?r(e):e)}return n}function uo(t,e){return t.minX=Math.min(t.minX,e.minX),t.minY=Math.min(t.minY,e.minY),t.maxX=Math.max(t.maxX,e.maxX),t.maxY=Math.max(t.maxY,e.maxY),t}function ho(t,e){return t.minX-e.minX}function co(t,e){return t.minY-e.minY}function po(t){return(t.maxX-t.minX)*(t.maxY-t.minY)}function fo(t){return t.maxX-t.minX+(t.maxY-t.minY)}function go(t,e){const i=Math.max(t.minX,e.minX),r=Math.max(t.minY,e.minY),n=Math.min(t.maxX,e.maxX),o=Math.min(t.maxY,e.maxY);return Math.max(0,n-i)*Math.max(0,o-r)}function _o(t,e){return t.minX<=e.minX&&t.minY<=e.minY&&e.maxX<=t.maxX&&e.maxY<=t.maxY}function yo(t,e){return e.minX<=t.maxX&&e.minY<=t.maxY&&e.maxX>=t.minX&&e.maxY>=t.minY}function vo(t){return{children:t,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function mo(t,e,i,r,n){const o=[e,i];for(;o.length;){if((i=o.pop())-(e=o.pop())<=r)continue;const a=e+Math.ceil((i-e)/r/2)*r;io(t,a,e,i,n),o.push(e,a,a,i)}}var xo=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),wo="renderOrder",So=function(t){function e(e){var i=this,r=e||{},n=m({},r);return delete n.style,delete n.renderBuffer,delete n.updateWhileAnimating,delete n.updateWhileInteracting,(i=t.call(this,n)||this).declutter_=void 0!==r.declutter&&r.declutter,i.renderBuffer_=void 0!==r.renderBuffer?r.renderBuffer:100,i.style_=null,i.styleFunction_=void 0,i.setStyle(r.style),i.updateWhileAnimating_=void 0!==r.updateWhileAnimating&&r.updateWhileAnimating,i.updateWhileInteracting_=void 0!==r.updateWhileInteracting&&r.updateWhileInteracting,i}return xo(e,t),e.prototype.getDeclutter=function(){return this.declutter_},e.prototype.getFeatures=function(e){return t.prototype.getFeatures.call(this,e)},e.prototype.getRenderBuffer=function(){return this.renderBuffer_},e.prototype.getRenderOrder=function(){return this.get(wo)},e.prototype.getStyle=function(){return this.style_},e.prototype.getStyleFunction=function(){return this.styleFunction_},e.prototype.getUpdateWhileAnimating=function(){return this.updateWhileAnimating_},e.prototype.getUpdateWhileInteracting=function(){return this.updateWhileInteracting_},e.prototype.renderDeclutter=function(t){t.declutterTree||(t.declutterTree=new oo(9)),this.getRenderer().renderDeclutter(t)},e.prototype.setRenderOrder=function(t){this.set(wo,t)},e.prototype.setStyle=function(t){this.style_=void 0!==t?t:Mn,this.styleFunction_=null===t?void 0:function(t){var e;if("function"==typeof t)e=t;else{var i;if(Array.isArray(t))i=t;else it("function"==typeof t.getZIndex,41),i=[t];e=function(){return i}}return e}(this.style_),this.changed()},e}(to),Co=0,bo=1,To=2,Eo=3,Po=4,Ro=5,Fo=6,Oo=7,Io=8,Mo=9,Lo=10,Ao=11,ko=12,Do=[Io],jo=[ko],Go=[bo],No=[Eo],zo=function(){function t(){}return t.prototype.drawCustom=function(t,e,i){},t.prototype.drawGeometry=function(t){},t.prototype.setStyle=function(t){},t.prototype.drawCircle=function(t,e){},t.prototype.drawFeature=function(t,e){},t.prototype.drawGeometryCollection=function(t,e){},t.prototype.drawLineString=function(t,e){},t.prototype.drawMultiLineString=function(t,e){},t.prototype.drawMultiPoint=function(t,e){},t.prototype.drawMultiPolygon=function(t,e){},t.prototype.drawPoint=function(t,e){},t.prototype.drawPolygon=function(t,e){},t.prototype.drawText=function(t,e){},t.prototype.setFillStrokeStyle=function(t,e){},t.prototype.setImageStyle=function(t,e){},t.prototype.setTextStyle=function(t,e){},t}(),Bo=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Uo=function(t){function e(e,i,r,n){var o=t.call(this)||this;return o.tolerance=e,o.maxExtent=i,o.pixelRatio=n,o.maxLineWidth=0,o.resolution=r,o.beginGeometryInstruction1_=null,o.beginGeometryInstruction2_=null,o.bufferedMaxExtent_=null,o.instructions=[],o.coordinates=[],o.tmpCoordinate_=[],o.hitDetectionInstructions=[],o.state={},o}return Bo(e,t),e.prototype.applyPixelRatio=function(t){var e=this.pixelRatio;return 1==e?t:t.map((function(t){return t*e}))},e.prototype.appendFlatPointCoordinates=function(t,e){for(var i=this.getBufferedMaxExtent(),r=this.tmpCoordinate_,n=this.coordinates,o=n.length,a=0,s=t.length;a<s;a+=e)r[0]=t[a],r[1]=t[a+1],Kt(i,r)&&(n[o++]=r[0],n[o++]=r[1]);return o},e.prototype.appendFlatLineCoordinates=function(t,e,i,r,n,o){var a=this.coordinates,s=a.length,l=this.getBufferedMaxExtent();o&&(e+=r);var u,h,c,p=t[e],f=t[e+1],d=this.tmpCoordinate_,g=!0;for(u=e+r;u<i;u+=r)d[0]=t[u],d[1]=t[u+1],(c=qt(l,d))!==h?(g&&(a[s++]=p,a[s++]=f,g=!1),a[s++]=d[0],a[s++]=d[1]):c===Gt?(a[s++]=d[0],a[s++]=d[1],g=!1):g=!0,p=d[0],f=d[1],h=c;return(n&&g||u===e+r)&&(a[s++]=p,a[s++]=f),s},e.prototype.drawCustomCoordinates_=function(t,e,i,r,n){for(var o=0,a=i.length;o<a;++o){var s=i[o],l=this.appendFlatLineCoordinates(t,e,s,r,!1,!1);n.push(l),e=s}return e},e.prototype.drawCustom=function(t,e,i){this.beginGeometry(t,e);var r,n,o,a,s,l=t.getType(),u=t.getStride(),h=this.coordinates.length;if(l==gt){r=t.getOrientedFlatCoordinates(),a=[];var c=t.getEndss();s=0;for(var p=0,f=c.length;p<f;++p){var d=[];s=this.drawCustomCoordinates_(r,s,c[p],u,d),a.push(d)}this.instructions.push([Po,h,a,t,i,Hi])}else l==pt||l==dt?(o=[],r=l==pt?t.getOrientedFlatCoordinates():t.getFlatCoordinates(),s=this.drawCustomCoordinates_(r,0,t.getEnds(),u,o),this.instructions.push([Po,h,o,t,i,Zi])):l==ht||l==yt?(r=t.getFlatCoordinates(),n=this.appendFlatLineCoordinates(r,0,r.length,u,!1,!1),this.instructions.push([Po,h,n,t,i,Ki])):l==ft?(r=t.getFlatCoordinates(),(n=this.appendFlatPointCoordinates(r,u))>h&&this.instructions.push([Po,h,n,t,i,Ki])):l==ut&&(r=t.getFlatCoordinates(),this.coordinates.push(r[0],r[1]),n=this.coordinates.length,this.instructions.push([Po,h,n,t,i]));this.endGeometry(e)},e.prototype.beginGeometry=function(t,e){this.beginGeometryInstruction1_=[Co,e,0,t],this.instructions.push(this.beginGeometryInstruction1_),this.beginGeometryInstruction2_=[Co,e,0,t],this.hitDetectionInstructions.push(this.beginGeometryInstruction2_)},e.prototype.finish=function(){return{instructions:this.instructions,hitDetectionInstructions:this.hitDetectionInstructions,coordinates:this.coordinates}},e.prototype.reverseHitDetectionInstructions=function(){var t,e=this.hitDetectionInstructions;e.reverse();var i,r,n=e.length,o=-1;for(t=0;t<n;++t)(r=(i=e[t])[0])==Oo?o=t:r==Co&&(i[2]=t,f(this.hitDetectionInstructions,o,t),o=-1)},e.prototype.setFillStrokeStyle=function(t,e){var i=this.state;if(t){var r=t.getColor();i.fillStyle=Zr(r||"#000")}else i.fillStyle=void 0;if(e){var n=e.getColor();i.strokeStyle=Zr(n||"#000");var o=e.getLineCap();i.lineCap=void 0!==o?o:"round";var a=e.getLineDash();i.lineDash=a?a.slice():hn;var s=e.getLineDashOffset();i.lineDashOffset=s||0;var l=e.getLineJoin();i.lineJoin=void 0!==l?l:"round";var u=e.getWidth();i.lineWidth=void 0!==u?u:1;var h=e.getMiterLimit();i.miterLimit=void 0!==h?h:10,i.lineWidth>this.maxLineWidth&&(this.maxLineWidth=i.lineWidth,this.bufferedMaxExtent_=null)}else i.strokeStyle=void 0,i.lineCap=void 0,i.lineDash=null,i.lineDashOffset=void 0,i.lineJoin=void 0,i.lineWidth=void 0,i.miterLimit=void 0},e.prototype.createFill=function(t){var e=t.fillStyle,i=[Lo,e];return"string"!=typeof e&&i.push(!0),i},e.prototype.applyStroke=function(t){this.instructions.push(this.createStroke(t))},e.prototype.createStroke=function(t){return[Ao,t.strokeStyle,t.lineWidth*this.pixelRatio,t.lineCap,t.lineJoin,t.miterLimit,this.applyPixelRatio(t.lineDash),t.lineDashOffset*this.pixelRatio]},e.prototype.updateFillStyle=function(t,e){var i=t.fillStyle;"string"==typeof i&&t.currentFillStyle==i||(void 0!==i&&this.instructions.push(e.call(this,t)),t.currentFillStyle=i)},e.prototype.updateStrokeStyle=function(t,e){var i=t.strokeStyle,r=t.lineCap,n=t.lineDash,o=t.lineDashOffset,a=t.lineJoin,s=t.lineWidth,l=t.miterLimit;(t.currentStrokeStyle!=i||t.currentLineCap!=r||n!=t.currentLineDash&&!g(t.currentLineDash,n)||t.currentLineDashOffset!=o||t.currentLineJoin!=a||t.currentLineWidth!=s||t.currentMiterLimit!=l)&&(void 0!==i&&e.call(this,t),t.currentStrokeStyle=i,t.currentLineCap=r,t.currentLineDash=n,t.currentLineDashOffset=o,t.currentLineJoin=a,t.currentLineWidth=s,t.currentMiterLimit=l)},e.prototype.endGeometry=function(t){this.beginGeometryInstruction1_[2]=this.instructions.length,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_[2]=this.hitDetectionInstructions.length,this.beginGeometryInstruction2_=null;var e=[Oo,t];this.instructions.push(e),this.hitDetectionInstructions.push(e)},e.prototype.getBufferedMaxExtent=function(){if(!this.bufferedMaxExtent_&&(this.bufferedMaxExtent_=Wt(this.maxExtent),this.maxLineWidth>0)){var t=this.resolution*(this.maxLineWidth+1)/2;Xt(this.bufferedMaxExtent_,t,this.bufferedMaxExtent_)}return this.bufferedMaxExtent_},e}(zo),Vo=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Xo=function(t){function e(e,i,r,n){var o=t.call(this,e,i,r,n)||this;return o.hitDetectionImage_=null,o.image_=null,o.imagePixelRatio_=void 0,o.anchorX_=void 0,o.anchorY_=void 0,o.height_=void 0,o.opacity_=void 0,o.originX_=void 0,o.originY_=void 0,o.rotateWithView_=void 0,o.rotation_=void 0,o.scale_=void 0,o.width_=void 0,o.declutterImageWithText_=void 0,o}return Vo(e,t),e.prototype.drawPoint=function(t,e){if(this.image_){this.beginGeometry(t,e);var i=t.getFlatCoordinates(),r=t.getStride(),n=this.coordinates.length,o=this.appendFlatPointCoordinates(i,r);this.instructions.push([Fo,n,o,this.image_,this.anchorX_*this.imagePixelRatio_,this.anchorY_*this.imagePixelRatio_,Math.ceil(this.height_*this.imagePixelRatio_),this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,[this.scale_[0]*this.pixelRatio/this.imagePixelRatio_,this.scale_[1]*this.pixelRatio/this.imagePixelRatio_],Math.ceil(this.width_*this.imagePixelRatio_),this.declutterImageWithText_]),this.hitDetectionInstructions.push([Fo,n,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_,this.declutterImageWithText_]),this.endGeometry(e)}},e.prototype.drawMultiPoint=function(t,e){if(this.image_){this.beginGeometry(t,e);var i=t.getFlatCoordinates(),r=t.getStride(),n=this.coordinates.length,o=this.appendFlatPointCoordinates(i,r);this.instructions.push([Fo,n,o,this.image_,this.anchorX_*this.imagePixelRatio_,this.anchorY_*this.imagePixelRatio_,Math.ceil(this.height_*this.imagePixelRatio_),this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,[this.scale_[0]*this.pixelRatio/this.imagePixelRatio_,this.scale_[1]*this.pixelRatio/this.imagePixelRatio_],Math.ceil(this.width_*this.imagePixelRatio_),this.declutterImageWithText_]),this.hitDetectionInstructions.push([Fo,n,o,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.height_,this.opacity_,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_,this.declutterImageWithText_]),this.endGeometry(e)}},e.prototype.finish=function(){return this.reverseHitDetectionInstructions(),this.anchorX_=void 0,this.anchorY_=void 0,this.hitDetectionImage_=null,this.image_=null,this.imagePixelRatio_=void 0,this.height_=void 0,this.scale_=void 0,this.opacity_=void 0,this.originX_=void 0,this.originY_=void 0,this.rotateWithView_=void 0,this.rotation_=void 0,this.width_=void 0,t.prototype.finish.call(this)},e.prototype.setImageStyle=function(t,e){var i=t.getAnchor(),r=t.getSize(),n=t.getHitDetectionImage(),o=t.getImage(this.pixelRatio),a=t.getOrigin();this.imagePixelRatio_=t.getPixelRatio(this.pixelRatio),this.anchorX_=i[0],this.anchorY_=i[1],this.hitDetectionImage_=n,this.image_=o,this.height_=r[1],this.opacity_=t.getOpacity(),this.originX_=a[0],this.originY_=a[1],this.rotateWithView_=t.getRotateWithView(),this.rotation_=t.getRotation(),this.scale_=t.getScaleArray(),this.width_=r[0],this.declutterImageWithText_=e},e}(Uo),Wo=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Yo=function(t){function e(e,i,r,n){return t.call(this,e,i,r,n)||this}return Wo(e,t),e.prototype.drawFlatCoordinates_=function(t,e,i,r){var n=this.coordinates.length,o=this.appendFlatLineCoordinates(t,e,i,r,!1,!1),a=[Mo,n,o];return this.instructions.push(a),this.hitDetectionInstructions.push(a),i},e.prototype.drawLineString=function(t,e){var i=this.state,r=i.strokeStyle,n=i.lineWidth;if(void 0!==r&&void 0!==n){this.updateStrokeStyle(i,this.applyStroke),this.beginGeometry(t,e),this.hitDetectionInstructions.push([Ao,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset],Go);var o=t.getFlatCoordinates(),a=t.getStride();this.drawFlatCoordinates_(o,0,o.length,a),this.hitDetectionInstructions.push(jo),this.endGeometry(e)}},e.prototype.drawMultiLineString=function(t,e){var i=this.state,r=i.strokeStyle,n=i.lineWidth;if(void 0!==r&&void 0!==n){this.updateStrokeStyle(i,this.applyStroke),this.beginGeometry(t,e),this.hitDetectionInstructions.push([Ao,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset],Go);for(var o=t.getEnds(),a=t.getFlatCoordinates(),s=t.getStride(),l=0,u=0,h=o.length;u<h;++u)l=this.drawFlatCoordinates_(a,l,o[u],s);this.hitDetectionInstructions.push(jo),this.endGeometry(e)}},e.prototype.finish=function(){var e=this.state;return null!=e.lastStroke&&e.lastStroke!=this.coordinates.length&&this.instructions.push(jo),this.reverseHitDetectionInstructions(),this.state=null,t.prototype.finish.call(this)},e.prototype.applyStroke=function(e){null!=e.lastStroke&&e.lastStroke!=this.coordinates.length&&(this.instructions.push(jo),e.lastStroke=this.coordinates.length),e.lastStroke=0,t.prototype.applyStroke.call(this,e),this.instructions.push(Go)},e}(Uo),Ko=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Zo=function(t){function e(e,i,r,n){return t.call(this,e,i,r,n)||this}return Ko(e,t),e.prototype.drawFlatCoordinatess_=function(t,e,i,r){var n=this.state,o=void 0!==n.fillStyle,a=void 0!==n.strokeStyle,s=i.length;this.instructions.push(Go),this.hitDetectionInstructions.push(Go);for(var l=0;l<s;++l){var u=i[l],h=this.coordinates.length,c=this.appendFlatLineCoordinates(t,e,u,r,!0,!a),p=[Mo,h,c];this.instructions.push(p),this.hitDetectionInstructions.push(p),a&&(this.instructions.push(No),this.hitDetectionInstructions.push(No)),e=u}return o&&(this.instructions.push(Do),this.hitDetectionInstructions.push(Do)),a&&(this.instructions.push(jo),this.hitDetectionInstructions.push(jo)),e},e.prototype.drawCircle=function(t,e){var i=this.state,r=i.fillStyle,n=i.strokeStyle;if(void 0!==r||void 0!==n){this.setFillStrokeStyles_(),this.beginGeometry(t,e),void 0!==i.fillStyle&&this.hitDetectionInstructions.push([Lo,"#000"]),void 0!==i.strokeStyle&&this.hitDetectionInstructions.push([Ao,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset]);var o=t.getFlatCoordinates(),a=t.getStride(),s=this.coordinates.length;this.appendFlatLineCoordinates(o,0,o.length,a,!1,!1);var l=[To,s];this.instructions.push(Go,l),this.hitDetectionInstructions.push(Go,l),void 0!==i.fillStyle&&(this.instructions.push(Do),this.hitDetectionInstructions.push(Do)),void 0!==i.strokeStyle&&(this.instructions.push(jo),this.hitDetectionInstructions.push(jo)),this.endGeometry(e)}},e.prototype.drawPolygon=function(t,e){var i=this.state,r=i.fillStyle,n=i.strokeStyle;if(void 0!==r||void 0!==n){this.setFillStrokeStyles_(),this.beginGeometry(t,e),void 0!==i.fillStyle&&this.hitDetectionInstructions.push([Lo,"#000"]),void 0!==i.strokeStyle&&this.hitDetectionInstructions.push([Ao,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset]);var o=t.getEnds(),a=t.getOrientedFlatCoordinates(),s=t.getStride();this.drawFlatCoordinatess_(a,0,o,s),this.endGeometry(e)}},e.prototype.drawMultiPolygon=function(t,e){var i=this.state,r=i.fillStyle,n=i.strokeStyle;if(void 0!==r||void 0!==n){this.setFillStrokeStyles_(),this.beginGeometry(t,e),void 0!==i.fillStyle&&this.hitDetectionInstructions.push([Lo,"#000"]),void 0!==i.strokeStyle&&this.hitDetectionInstructions.push([Ao,i.strokeStyle,i.lineWidth,i.lineCap,i.lineJoin,i.miterLimit,i.lineDash,i.lineDashOffset]);for(var o=t.getEndss(),a=t.getOrientedFlatCoordinates(),s=t.getStride(),l=0,u=0,h=o.length;u<h;++u)l=this.drawFlatCoordinatess_(a,l,o[u],s);this.endGeometry(e)}},e.prototype.finish=function(){this.reverseHitDetectionInstructions(),this.state=null;var e=this.tolerance;if(0!==e)for(var i=this.coordinates,r=0,n=i.length;r<n;++r)i[r]=Xi(i[r],e);return t.prototype.finish.call(this)},e.prototype.setFillStrokeStyles_=function(){var t=this.state;void 0!==t.fillStyle&&this.updateFillStyle(t,this.createFill),void 0!==t.strokeStyle&&this.updateStrokeStyle(t,this.applyStroke)},e}(Uo);function Ho(t,e,i,r,n){var o,a,s,l,u,h,c,p,f,d=i,g=i,_=0,y=0,v=i;for(o=i;o<r;o+=n){var m=e[o],x=e[o+1];void 0!==l&&(p=m-l,f=x-u,s=Math.sqrt(p*p+f*f),void 0!==h&&(y+=a,Math.acos((h*p+c*f)/(a*s))>t&&(y>_&&(_=y,d=v,g=o),y=0,v=o-n)),a=s,h=p,c=f),l=m,u=x}return(y+=s)>_?[v,o]:[d,g]}var qo=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Jo={left:0,end:0,center:.5,right:1,start:1,top:0,middle:.5,hanging:.2,alphabetic:.8,ideographic:.8,bottom:1},Qo={Circle:Zo,Default:Uo,Image:Xo,LineString:Yo,Polygon:Zo,Text:function(t){function e(e,i,r,n){var o=t.call(this,e,i,r,n)||this;return o.labels_=null,o.text_="",o.textOffsetX_=0,o.textOffsetY_=0,o.textRotateWithView_=void 0,o.textRotation_=0,o.textFillState_=null,o.fillStates={},o.textStrokeState_=null,o.strokeStates={},o.textState_={},o.textStates={},o.textKey_="",o.fillKey_="",o.strokeKey_="",o.declutterImageWithText_=void 0,o}return qo(e,t),e.prototype.finish=function(){var e=t.prototype.finish.call(this);return e.textStates=this.textStates,e.fillStates=this.fillStates,e.strokeStates=this.strokeStates,e},e.prototype.drawText=function(t,e){var i=this.textFillState_,r=this.textStrokeState_,n=this.textState_;if(""!==this.text_&&n&&(i||r)){var o=this.coordinates,a=o.length,s=t.getType(),l=null,u=t.getStride();if(n.placement!==Dn||s!=ht&&s!=dt&&s!=pt&&s!=gt){var h=n.overflow?null:[];switch(s){case ut:case ft:l=t.getFlatCoordinates();break;case ht:l=t.getFlatMidpoint();break;case yt:l=t.getCenter();break;case dt:l=t.getFlatMidpoints(),u=2;break;case pt:l=t.getFlatInteriorPoint(),n.overflow||h.push(l[2]/this.resolution),u=3;break;case gt:var c=t.getFlatInteriorPoints();l=[];for(w=0,S=c.length;w<S;w+=3)n.overflow||h.push(c[w+2]/this.resolution),l.push(c[w],c[w+1]);if(0===l.length)return;u=2}if((F=this.appendFlatPointCoordinates(l,u))===a)return;this.saveTextStates_(),(n.backgroundFill||n.backgroundStroke)&&(this.setFillStrokeStyle(n.backgroundFill,n.backgroundStroke),n.backgroundFill&&(this.updateFillStyle(this.state,this.createFill),this.hitDetectionInstructions.push(this.createFill(this.state))),n.backgroundStroke&&(this.updateStrokeStyle(this.state,this.applyStroke),this.hitDetectionInstructions.push(this.createStroke(this.state)))),this.beginGeometry(t,e);var p=n.padding;if(p!=cn&&(n.scale[0]<0||n.scale[1]<0)){var f=n.padding[0],d=n.padding[1],g=n.padding[2],_=n.padding[3];n.scale[0]<0&&(d=-d,_=-_),n.scale[1]<0&&(f=-f,g=-g),p=[f,d,g,_]}var y=this.pixelRatio;this.instructions.push([Fo,a,F,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[1,1],NaN,this.declutterImageWithText_,p==cn?cn:p.map((function(t){return t*y})),!!n.backgroundFill,!!n.backgroundStroke,this.text_,this.textKey_,this.strokeKey_,this.fillKey_,this.textOffsetX_,this.textOffsetY_,h]);var v=1/y;this.hitDetectionInstructions.push([Fo,a,F,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[v,v],NaN,this.declutterImageWithText_,p,!!n.backgroundFill,!!n.backgroundStroke,this.text_,this.textKey_,this.strokeKey_,this.fillKey_,this.textOffsetX_,this.textOffsetY_,h]),this.endGeometry(e)}else{if(!xe(this.getBufferedMaxExtent(),t.getExtent()))return;var m=void 0;if(l=t.getFlatCoordinates(),s==ht)m=[l.length];else if(s==dt)m=t.getEnds();else if(s==pt)m=t.getEnds().slice(0,1);else if(s==gt){var x=t.getEndss();m=[];for(var w=0,S=x.length;w<S;++w)m.push(x[w][0])}this.beginGeometry(t,e);for(var C=n.textAlign,b=0,T=void 0,E=0,P=m.length;E<P;++E){if(null==C){var R=Ho(n.maxAngle,l,b,m[E],u);b=R[0],T=R[1]}else T=m[E];for(var w=b;w<T;w+=u)o.push(l[w],l[w+1]);var F=o.length;b=m[E],this.drawChars_(a,F),a=F}this.endGeometry(e)}}},e.prototype.saveTextStates_=function(){var t=this.textStrokeState_,e=this.textState_,i=this.textFillState_,r=this.strokeKey_;t&&(r in this.strokeStates||(this.strokeStates[r]={strokeStyle:t.strokeStyle,lineCap:t.lineCap,lineDashOffset:t.lineDashOffset,lineWidth:t.lineWidth,lineJoin:t.lineJoin,miterLimit:t.miterLimit,lineDash:t.lineDash}));var n=this.textKey_;n in this.textStates||(this.textStates[n]={font:e.font,textAlign:e.textAlign||"center",textBaseline:e.textBaseline||"middle",scale:e.scale});var o=this.fillKey_;i&&(o in this.fillStates||(this.fillStates[o]={fillStyle:i.fillStyle}))},e.prototype.drawChars_=function(t,e){var i=this.textStrokeState_,r=this.textState_,n=this.strokeKey_,o=this.textKey_,a=this.fillKey_;this.saveTextStates_();var s=this.pixelRatio,l=Jo[r.textBaseline],u=this.textOffsetY_*s,h=this.text_,c=i?i.lineWidth*Math.abs(r.scale[0])/2:0;this.instructions.push([Ro,t,e,l,r.overflow,a,r.maxAngle,s,u,n,c*s,h,o,1]),this.hitDetectionInstructions.push([Ro,t,e,l,r.overflow,a,r.maxAngle,1,u,n,c,h,o,1/s])},e.prototype.setTextStyle=function(t,e){var i,n,o;if(t){var a=t.getFill();a?((n=this.textFillState_)||(n={},this.textFillState_=n),n.fillStyle=Zr(a.getColor()||"#000")):(n=null,this.textFillState_=n);var s=t.getStroke();if(s){(o=this.textStrokeState_)||(o={},this.textStrokeState_=o);var l=s.getLineDash(),u=s.getLineDashOffset(),h=s.getWidth(),c=s.getMiterLimit();o.lineCap=s.getLineCap()||"round",o.lineDash=l?l.slice():hn,o.lineDashOffset=void 0===u?0:u,o.lineJoin=s.getLineJoin()||"round",o.lineWidth=void 0===h?1:h,o.miterLimit=void 0===c?10:c,o.strokeStyle=Zr(s.getColor()||"#000")}else o=null,this.textStrokeState_=o;i=this.textState_;var p=t.getFont()||"10px sans-serif";yn(p);var f=t.getScaleArray();i.overflow=t.getOverflow(),i.font=p,i.maxAngle=t.getMaxAngle(),i.placement=t.getPlacement(),i.textAlign=t.getTextAlign(),i.textBaseline=t.getTextBaseline()||"middle",i.backgroundFill=t.getBackgroundFill(),i.backgroundStroke=t.getBackgroundStroke(),i.padding=t.getPadding()||cn,i.scale=void 0===f?[1,1]:f;var d=t.getOffsetX(),g=t.getOffsetY(),_=t.getRotateWithView(),y=t.getRotation();this.text_=t.getText()||"",this.textOffsetX_=void 0===d?0:d,this.textOffsetY_=void 0===g?0:g,this.textRotateWithView_=void 0!==_&&_,this.textRotation_=void 0===y?0:y,this.strokeKey_=o?("string"==typeof o.strokeStyle?o.strokeStyle:r(o.strokeStyle))+o.lineCap+o.lineDashOffset+"|"+o.lineWidth+o.lineJoin+o.miterLimit+"["+o.lineDash.join()+"]":"",this.textKey_=i.font+i.scale+(i.textAlign||"?")+(i.textBaseline||"?"),this.fillKey_=n?"string"==typeof n.fillStyle?n.fillStyle:"|"+r(n.fillStyle):""}else this.text_="";this.declutterImageWithText_=e},e}(Uo)},$o=function(){function t(t,e,i,r){this.tolerance_=t,this.maxExtent_=e,this.pixelRatio_=r,this.resolution_=i,this.buildersByZIndex_={}}return t.prototype.finish=function(){var t={};for(var e in this.buildersByZIndex_){t[e]=t[e]||{};var i=this.buildersByZIndex_[e];for(var r in i){var n=i[r].finish();t[e][r]=n}}return t},t.prototype.getBuilder=function(t,e){var i=void 0!==t?t.toString():"0",r=this.buildersByZIndex_[i];void 0===r&&(r={},this.buildersByZIndex_[i]=r);var n=r[e];void 0===n&&(n=new(0,Qo[e])(this.tolerance_,this.maxExtent_,this.resolution_,this.pixelRatio_),r[e]=n);return n},t}(),ta=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ea=function(t){function i(e){var i=t.call(this)||this;return i.boundHandleImageChange_=i.handleImageChange_.bind(i),i.layer_=e,i.declutterExecutorGroup=null,i}return ta(i,t),i.prototype.getFeatures=function(t){return e()},i.prototype.prepareFrame=function(t){return e()},i.prototype.renderFrame=function(t,i){return e()},i.prototype.loadedTileCallback=function(t,e,i){t[e]||(t[e]={}),t[e][i.tileCoord.toString()]=i},i.prototype.createLoadedTileFinder=function(t,e,i){return function(r,n){var o=this.loadedTileCallback.bind(this,i,r);return t.forEachLoadedTile(e,r,n,o)}.bind(this)},i.prototype.forEachFeatureAtCoordinate=function(t,e,i,r,n){},i.prototype.getDataAtPixel=function(t,i,r){return e()},i.prototype.getLayer=function(){return this.layer_},i.prototype.handleFontsChanged=function(){},i.prototype.handleImageChange_=function(t){t.target.getState()===Lr&&this.renderIfReadyAndVisible()},i.prototype.loadImage=function(t){var e=t.getState();return e!=Lr&&e!=Ar&&t.addEventListener(T,this.boundHandleImageChange_),e==Ir&&(t.load(),e=t.getState()),e==Lr},i.prototype.renderIfReadyAndVisible=function(){var t=this.getLayer();t.getVisible()&&t.getSourceState()==Jn&&t.changed()},i}(V),ia=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ra=function(t){function e(e,i,r,n){var o=t.call(this,e)||this;return o.inversePixelTransform=i,o.frameState=r,o.context=n,o}return ia(e,t),e}(s),na=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),oa=function(t){function e(e){var i=t.call(this,e)||this;return i.container=null,i.renderedResolution,i.tempTransform=[1,0,0,1,0,0],i.pixelTransform=[1,0,0,1,0,0],i.inversePixelTransform=[1,0,0,1,0,0],i.context=null,i.containerReused=!1,i}return na(e,t),e.prototype.useContainer=function(t,e,i){var r,n,o=this.getLayer().getClassName();t&&""===t.style.opacity&&t.className===o&&((s=t.firstElementChild)instanceof HTMLCanvasElement&&(n=s.getContext("2d")));if(!n||0!==n.canvas.width&&n.canvas.style.transform!==e?this.containerReused&&(this.container=null,this.context=null,this.containerReused=!1):(this.container=t,this.context=n,this.containerReused=!0),!this.container){(r=document.createElement("div")).className=o;var a=r.style;a.position="absolute",a.width="100%",a.height="100%";var s=(n=nn()).canvas;r.appendChild(s),(a=s.style).position="absolute",a.left="0",a.transformOrigin="top left",this.container=r,this.context=n}},e.prototype.clip=function(t,e,i){var r=e.pixelRatio,n=e.size[0]*r/2,o=e.size[1]*r/2,a=e.viewState.rotation,s=ye(i),l=ve(i),u=ce(i),h=he(i);Rt(e.coordinateToPixelTransform,s),Rt(e.coordinateToPixelTransform,l),Rt(e.coordinateToPixelTransform,u),Rt(e.coordinateToPixelTransform,h),t.save(),Sn(t,-a,n,o),t.beginPath(),t.moveTo(s[0]*r,s[1]*r),t.lineTo(l[0]*r,l[1]*r),t.lineTo(u[0]*r,u[1]*r),t.lineTo(h[0]*r,h[1]*r),t.clip(),Sn(t,a,n,o)},e.prototype.clipUnrotated=function(t,e,i){var r=ye(i),n=ve(i),o=ce(i),a=he(i);Rt(e.coordinateToPixelTransform,r),Rt(e.coordinateToPixelTransform,n),Rt(e.coordinateToPixelTransform,o),Rt(e.coordinateToPixelTransform,a);var s=this.inversePixelTransform;Rt(s,r),Rt(s,n),Rt(s,o),Rt(s,a),t.save(),t.beginPath(),t.moveTo(Math.round(r[0]),Math.round(r[1])),t.lineTo(Math.round(n[0]),Math.round(n[1])),t.lineTo(Math.round(o[0]),Math.round(o[1])),t.lineTo(Math.round(a[0]),Math.round(a[1])),t.clip()},e.prototype.dispatchRenderEvent_=function(t,e,i){var r=this.getLayer();if(r.hasListener(t)){var n=new ra(t,this.inversePixelTransform,i,e);r.dispatchEvent(n)}},e.prototype.preRender=function(t,e){this.dispatchRenderEvent_(mr,t,e)},e.prototype.postRender=function(t,e){this.dispatchRenderEvent_(xr,t,e)},e.prototype.getRenderTransform=function(t,e,i,r,n,o,a){var s=n/2,l=o/2,u=r/e,h=-u,c=-t[0]+a,p=-t[1];return Ot(this.tempTransform,s,l,u,h,-i,c,p)},e.prototype.getDataAtPixel=function(t,e,i){var r,n=Rt(this.inversePixelTransform,t.slice()),o=this.context,a=this.getLayer().getExtent();if(a&&!Kt(a,Rt(e.pixelToCoordinateTransform,t.slice())))return null;try{var s=Math.round(n[0]),l=Math.round(n[1]),u=document.createElement("canvas"),h=u.getContext("2d");u.width=1,u.height=1,h.clearRect(0,0,1,1),h.drawImage(o.canvas,s,l,1,1,0,0,1,1),r=h.getImageData(0,0,1,1).data}catch(t){return"SecurityError"===t.name?new Uint8Array:r}return 0===r[3]?null:r},e}(ea),aa="Circle",sa="Default",la="Image",ua="LineString",ha="Polygon",ca="Text";function pa(t,e,i,r,n,o,a,s,l,u,h,c){var p=t[e],f=t[e+1],d=0,g=0,_=0,y=0;function v(){d=p,g=f,p=t[e+=r],f=t[e+1],y+=_,_=Math.sqrt((p-d)*(p-d)+(f-g)*(f-g))}do{v()}while(e<i-r&&y+_<o);for(var m=(o-y)/_,x=Me(d,p,m),w=Me(g,f,m),S=e-r,C=y,b=o+s*l(u,n,h);e<i-r&&y+_<b;)v();var T,E=Me(d,p,m=(b-y)/_),P=Me(g,f,m);if(c){var R=[x,w,E,P];Pi(R,0,4,2,c,R,R),T=R[0]>R[2]}else T=x>E;var F,O=Math.PI,I=[],M=S+r===e;if(_=0,y=C,p=t[e=S],f=t[e+1],M){v();var L=Math.atan2(f-g,p-d);T&&(L+=L>0?-O:O);var A=(E+x)/2,k=(P+w)/2;return I[0]=[A,k,(b-o)/2,L,n],I}for(var D=0,j=n.length;D<j;){v();var G=Math.atan2(f-g,p-d);if(T&&(G+=G>0?-O:O),void 0!==F){var N=G-F;if(N+=N>O?-2*O:N<-O?2*O:0,Math.abs(N)>a)return null}F=G;for(var z=D,B=0;D<j;++D){var U=s*l(u,n[T?j-D-1:D],h);if(e+r<i&&y+_<o+B+U/2)break;B+=U}if(D!==z){var V=T?n.substring(j-z,j-D):n.substring(z,D);A=Me(d,p,m=(o+B/2-y)/_),k=Me(g,f,m);I.push([A,k,B/2,G,V]),o+=B}}return I}var fa=[1/0,1/0,-1/0,-1/0],da=[],ga=[],_a=[],ya=[];function va(t){return t[3].declutterBox}var ma=new RegExp("["+String.fromCharCode(1425)+"-"+String.fromCharCode(2303)+String.fromCharCode(64285)+"-"+String.fromCharCode(65023)+String.fromCharCode(65136)+"-"+String.fromCharCode(65276)+String.fromCharCode(67584)+"-"+String.fromCharCode(69631)+String.fromCharCode(124928)+"-"+String.fromCharCode(126975)+"]");function xa(t,e){return"start"!==e&&"end"!==e||ma.test(t)||(e="start"===e?"left":"right"),Jo[e]}var wa=function(){function t(t,e,i,r,n){this.overlaps=i,this.pixelRatio=e,this.resolution=t,this.alignFill_,this.instructions=r.instructions,this.coordinates=r.coordinates,this.coordinateCache_={},this.renderBuffer_=n,this.renderedTransform_=[1,0,0,1,0,0],this.hitDetectionInstructions=r.hitDetectionInstructions,this.pixelCoordinates_=null,this.viewRotation_=0,this.fillStates=r.fillStates||{},this.strokeStates=r.strokeStates||{},this.textStates=r.textStates||{},this.widths_={},this.labels_={}}return t.prototype.createLabel=function(t,e,i,r){var n=t+e+i+r;if(this.labels_[n])return this.labels_[n];var o=r?this.strokeStates[r]:null,a=i?this.fillStates[i]:null,s=this.textStates[e],l=this.pixelRatio,u=[s.scale[0]*l,s.scale[1]*l],h=xa(t,s.textAlign||"center"),c=r&&o.lineWidth?o.lineWidth:0,p=t.split("\n"),f=p.length,d=[],g=function(t,e,i){for(var r=e.length,n=0,o=0;o<r;++o){var a=xn(t,e[o]);n=Math.max(n,a),i.push(a)}return n}(s.font,p,d),_=vn(s.font),y=g+c,v=[],m=(y+2)*u[0],x=(_*f+c)*u[1],w={width:m<0?Math.floor(m):Math.ceil(m),height:x<0?Math.floor(x):Math.ceil(x),contextInstructions:v};(1==u[0]&&1==u[1]||v.push("scale",u),v.push("font",s.font),r)&&(v.push("strokeStyle",o.strokeStyle),v.push("lineWidth",c),v.push("lineCap",o.lineCap),v.push("lineJoin",o.lineJoin),v.push("miterLimit",o.miterLimit),(tn?OffscreenCanvasRenderingContext2D:CanvasRenderingContext2D).prototype.setLineDash&&(v.push("setLineDash",[o.lineDash]),v.push("lineDashOffset",o.lineDashOffset)));i&&v.push("fillStyle",a.fillStyle),v.push("textBaseline","middle"),v.push("textAlign","center");var S,C=.5-h,b=h*y+C*c;if(r)for(S=0;S<f;++S)v.push("strokeText",[p[S],b+C*d[S],.5*(c+_)+S*_]);if(i)for(S=0;S<f;++S)v.push("fillText",[p[S],b+C*d[S],.5*(c+_)+S*_]);return this.labels_[n]=w,w},t.prototype.replayTextBackground_=function(t,e,i,r,n,o,a){t.beginPath(),t.moveTo.apply(t,e),t.lineTo.apply(t,i),t.lineTo.apply(t,r),t.lineTo.apply(t,n),t.lineTo.apply(t,e),o&&(this.alignFill_=o[2],this.fill_(t)),a&&(this.setStrokeStyle_(t,a),t.stroke())},t.prototype.calculateImageOrLabelDimensions_=function(t,e,i,r,n,o,a,s,l,u,h,c,p,f,d,g){var _,y=i-(a*=c[0]),v=r-(s*=c[1]),m=n+l>t?t-l:n,x=o+u>e?e-u:o,w=f[3]+m*c[0]+f[1],S=f[0]+x*c[1]+f[2],C=y-f[3],b=v-f[0];return(d||0!==h)&&(da[0]=C,ya[0]=C,da[1]=b,ga[1]=b,ga[0]=C+w,_a[0]=ga[0],_a[1]=b+S,ya[1]=_a[1]),0!==h?(Rt(_=Ot([1,0,0,1,0,0],i,r,1,1,h,-i,-r),da),Rt(_,ga),Rt(_,_a),Rt(_,ya),Qt(Math.min(da[0],ga[0],_a[0],ya[0]),Math.min(da[1],ga[1],_a[1],ya[1]),Math.max(da[0],ga[0],_a[0],ya[0]),Math.max(da[1],ga[1],_a[1],ya[1]),fa)):Qt(Math.min(C,C+w),Math.min(b,b+S),Math.max(C,C+w),Math.max(b,b+S),fa),p&&(y=Math.round(y),v=Math.round(v)),{drawImageX:y,drawImageY:v,drawImageW:m,drawImageH:x,originX:l,originY:u,declutterBox:{minX:fa[0],minY:fa[1],maxX:fa[2],maxY:fa[3],value:g},canvasTransform:_,scale:c}},t.prototype.replayImageOrLabel_=function(t,e,i,r,n,o,a){var s=!(!o&&!a),l=r.declutterBox,u=t.canvas,h=a?a[2]*r.scale[0]/2:0;return l.minX-h<=u.width/e&&l.maxX+h>=0&&l.minY-h<=u.height/e&&l.maxY+h>=0&&(s&&this.replayTextBackground_(t,da,ga,_a,ya,o,a),Cn(t,r.canvasTransform,n,i,r.originX,r.originY,r.drawImageW,r.drawImageH,r.drawImageX,r.drawImageY,r.scale)),!0},t.prototype.fill_=function(t){if(this.alignFill_){var e=Rt(this.renderedTransform_,[0,0]),i=512*this.pixelRatio;t.save(),t.translate(e[0]%i,e[1]%i),t.rotate(this.viewRotation_)}t.fill(),this.alignFill_&&t.restore()},t.prototype.setStrokeStyle_=function(t,e){t.strokeStyle=e[1],t.lineWidth=e[2],t.lineCap=e[3],t.lineJoin=e[4],t.miterLimit=e[5],t.setLineDash&&(t.lineDashOffset=e[7],t.setLineDash(e[6]))},t.prototype.drawLabelWithPointPlacement_=function(t,e,i,r){var n=this.textStates[e],o=this.createLabel(t,e,r,i),a=this.strokeStates[i],s=this.pixelRatio,l=xa(t,n.textAlign||"center"),u=Jo[n.textBaseline||"middle"],h=a&&a.lineWidth?a.lineWidth:0;return{label:o,anchorX:l*(o.width/s-2*n.scale[0])+2*(.5-l)*h,anchorY:u*o.height/s+2*(.5-u)*h}},t.prototype.execute_=function(t,e,i,r,n,o,a,s){var l,u,h;this.pixelCoordinates_&&g(i,this.renderedTransform_)?l=this.pixelCoordinates_:(this.pixelCoordinates_||(this.pixelCoordinates_=[]),l=Ei(this.coordinates,0,this.coordinates.length,2,i,this.pixelCoordinates_),u=this.renderedTransform_,h=i,u[0]=h[0],u[1]=h[1],u[2]=h[2],u[3]=h[3],u[4]=h[4],u[5]=h[5]);for(var c,p,f,d,_,y,v,m,x,w,S,C,b,T,E,P,R=0,F=r.length,O=0,I=0,M=0,L=null,A=null,k=this.coordinateCache_,D=this.viewRotation_,j=Math.round(1e12*Math.atan2(-i[1],i[0]))/1e12,G={context:t,pixelRatio:this.pixelRatio,resolution:this.resolution,rotation:D},N=this.instructions!=r||this.overlaps?0:200;R<F;){var z=r[R];switch(z[0]){case Co:b=z[1],P=z[3],b.getGeometry()?void 0===a||xe(a,P.getExtent())?++R:R=z[2]+1:R=z[2];break;case bo:I>N&&(this.fill_(t),I=0),M>N&&(t.stroke(),M=0),I||M||(t.beginPath(),d=NaN,_=NaN),++R;break;case To:var B=l[O=z[1]],U=l[O+1],V=l[O+2]-B,X=l[O+3]-U,W=Math.sqrt(V*V+X*X);t.moveTo(B+W,U),t.arc(B,U,W,0,2*Math.PI,!0),++R;break;case Eo:t.closePath(),++R;break;case Po:O=z[1],c=z[2];var Y=z[3],K=z[4],Z=6==z.length?z[5]:void 0;G.geometry=Y,G.feature=b,R in k||(k[R]=[]);var H=k[R];Z?Z(l,O,c,2,H):(H[0]=l[O],H[1]=l[O+1],H.length=2),K(H,G),++R;break;case Fo:O=z[1],c=z[2],m=z[3],p=z[4],f=z[5];var q=z[6],J=z[7],Q=z[8],$=z[9],tt=z[10],et=z[11],it=z[12],rt=z[13],nt=z[14];if(!m&&z.length>=19){x=z[18],w=z[19],S=z[20],C=z[21];var ot=this.drawLabelWithPointPlacement_(x,w,S,C);m=ot.label,z[3]=m;var at=z[22];p=(ot.anchorX-at)*this.pixelRatio,z[4]=p;var st=z[23];f=(ot.anchorY-st)*this.pixelRatio,z[5]=f,q=m.height,z[6]=q,rt=m.width,z[13]=rt}var lt=void 0;z.length>24&&(lt=z[24]);var ut=void 0,ht=void 0,ct=void 0;z.length>16?(ut=z[15],ht=z[16],ct=z[17]):(ut=cn,ht=!1,ct=!1),tt&&j?et+=D:tt||j||(et-=D);for(var pt=0;O<c;O+=2)if(!(lt&&lt[pt++]<rt/this.pixelRatio)){var ft=[t,e,m,Nt=this.calculateImageOrLabelDimensions_(m.width,m.height,l[O],l[O+1],rt,q,p,f,Q,$,et,it,n,ut,ht||ct,b),J,ht?L:null,ct?A:null],dt=void 0,gt=void 0;if(s&&nt){if(!nt[O]){nt[O]=ft;continue}if(dt=nt[O],delete nt[O],gt=va(dt),s.collides(gt))continue}s&&s.collides(Nt.declutterBox)||(dt&&(s&&s.insert(gt),this.replayImageOrLabel_.apply(this,dt)),s&&s.insert(Nt.declutterBox),this.replayImageOrLabel_.apply(this,ft))}++R;break;case Ro:var _t=z[1],yt=z[2],vt=z[3],mt=z[4];C=z[5];var xt=z[6],wt=z[7],St=z[8];S=z[9];var Ct=z[10];x=z[11],w=z[12];var bt=[z[13],z[13]],Tt=this.textStates[w],Et=Tt.font,Pt=[Tt.scale[0]*wt,Tt.scale[1]*wt],Rt=void 0;Et in this.widths_?Rt=this.widths_[Et]:(Rt={},this.widths_[Et]=Rt);var Ft=Pr(l,_t,yt,2),Ot=Math.abs(Pt[0])*wn(Et,x,Rt);if(mt||Ot<=Ft){var It=this.textStates[w].textAlign,Mt=pa(l,_t,yt,2,x,(Ft-Ot)*Jo[It],xt,Math.abs(Pt[0]),wn,Et,Rt,j?0:this.viewRotation_);t:if(Mt){var Lt=[],At=void 0,kt=void 0,Dt=void 0,jt=void 0,Gt=void 0;if(S)for(At=0,kt=Mt.length;At<kt;++At){Dt=(Gt=Mt[At])[4],jt=this.createLabel(Dt,w,"",S),p=Gt[2]+(Pt[0]<0?-Ct:Ct),f=vt*jt.height+2*(.5-vt)*Ct*Pt[1]/Pt[0]-St;var Nt=this.calculateImageOrLabelDimensions_(jt.width,jt.height,Gt[0],Gt[1],jt.width,jt.height,p,f,0,0,Gt[3],bt,!1,cn,!1,b);if(s&&s.collides(Nt.declutterBox))break t;Lt.push([t,e,jt,Nt,1,null,null])}if(C)for(At=0,kt=Mt.length;At<kt;++At){Dt=(Gt=Mt[At])[4],jt=this.createLabel(Dt,w,C,""),p=Gt[2],f=vt*jt.height-St;Nt=this.calculateImageOrLabelDimensions_(jt.width,jt.height,Gt[0],Gt[1],jt.width,jt.height,p,f,0,0,Gt[3],bt,!1,cn,!1,b);if(s&&s.collides(Nt.declutterBox))break t;Lt.push([t,e,jt,Nt,1,null,null])}s&&s.load(Lt.map(va));for(var zt=0,Bt=Lt.length;zt<Bt;++zt)this.replayImageOrLabel_.apply(this,Lt[zt])}}++R;break;case Oo:if(void 0!==o){var Ut=o(b=z[1],P);if(Ut)return Ut}++R;break;case Io:N?I++:this.fill_(t),++R;break;case Mo:for(O=z[1],c=z[2],T=l[O],v=(E=l[O+1])+.5|0,(y=T+.5|0)===d&&v===_||(t.moveTo(T,E),d=y,_=v),O+=2;O<c;O+=2)y=(T=l[O])+.5|0,v=(E=l[O+1])+.5|0,O!=c-2&&y===d&&v===_||(t.lineTo(T,E),d=y,_=v);++R;break;case Lo:L=z,this.alignFill_=z[2],I&&(this.fill_(t),I=0,M&&(t.stroke(),M=0)),t.fillStyle=z[1],++R;break;case Ao:A=z,M&&(t.stroke(),M=0),this.setStrokeStyle_(t,z),++R;break;case ko:N?M++:t.stroke(),++R;break;default:++R}}I&&this.fill_(t),M&&t.stroke()},t.prototype.execute=function(t,e,i,r,n,o){this.viewRotation_=r,this.execute_(t,e,i,this.instructions,n,void 0,void 0,o)},t.prototype.executeHitDetection=function(t,e,i,r,n){return this.viewRotation_=i,this.execute_(t,1,e,this.hitDetectionInstructions,!0,r,n)},t}(),Sa=[ha,aa,ua,la,ca,sa],Ca=function(){function t(t,e,i,r,n,o){this.maxExtent_=t,this.overlaps_=r,this.pixelRatio_=i,this.resolution_=e,this.renderBuffer_=o,this.executorsByZIndex_={},this.hitDetectionContext_=null,this.hitDetectionTransform_=[1,0,0,1,0,0],this.createExecutors_(n)}return t.prototype.clip=function(t,e){var i=this.getClipCoords(e);t.beginPath(),t.moveTo(i[0],i[1]),t.lineTo(i[2],i[3]),t.lineTo(i[4],i[5]),t.lineTo(i[6],i[7]),t.clip()},t.prototype.createExecutors_=function(t){for(var e in t){var i=this.executorsByZIndex_[e];void 0===i&&(i={},this.executorsByZIndex_[e]=i);var r=t[e],n=[this.renderBuffer_||0,this.renderBuffer_||0];for(var o in r){var a=r[o];i[o]=new wa(this.resolution_,this.pixelRatio_,this.overlaps_,a,n)}}},t.prototype.hasExecutors=function(t){for(var e in this.executorsByZIndex_)for(var i=this.executorsByZIndex_[e],r=0,n=t.length;r<n;++r)if(t[r]in i)return!0;return!1},t.prototype.forEachFeatureAtCoordinate=function(t,e,i,r,n,o){var a=2*(r=Math.round(r))+1,s=Ot(this.hitDetectionTransform_,r+.5,r+.5,1/e,-1/e,-i,-t[0],-t[1]),l=!this.hitDetectionContext_;l&&(this.hitDetectionContext_=nn(a,a));var u,c=this.hitDetectionContext_;c.canvas.width!==a||c.canvas.height!==a?(c.canvas.width=a,c.canvas.height=a):l||c.clearRect(0,0,a,a),void 0!==this.renderBuffer_&&(oe(u=[1/0,1/0,-1/0,-1/0],t),Xt(u,e*(this.renderBuffer_+r),u));var p,f=function(t){if(void 0!==ba[t])return ba[t];for(var e=2*t+1,i=t*t,r=new Array(i+1),n=0;n<=t;++n)for(var o=0;o<=t;++o){var a=n*n+o*o;if(a>i)break;var s=r[a];s||(s=[],r[a]=s),s.push(4*((t+n)*e+(t+o))+3),n>0&&s.push(4*((t-n)*e+(t+o))+3),o>0&&(s.push(4*((t+n)*e+(t-o))+3),n>0&&s.push(4*((t-n)*e+(t-o))+3))}for(var l=[],u=(n=0,r.length);n<u;++n)r[n]&&l.push.apply(l,r[n]);return ba[t]=l,l}(r);function d(t,e){for(var i=c.getImageData(0,0,a,a).data,s=0,l=f.length;s<l;s++)if(i[f[s]]>0){if(!o||p!==la&&p!==ca||-1!==o.indexOf(t)){var u=(f[s]-3)/4,h=r-u%a,d=r-(u/a|0),g=n(t,e,h*h+d*d);if(g)return g}c.clearRect(0,0,a,a);break}}var g,_,y,v,m,x=Object.keys(this.executorsByZIndex_).map(Number);for(x.sort(h),g=x.length-1;g>=0;--g){var w=x[g].toString();for(y=this.executorsByZIndex_[w],_=Sa.length-1;_>=0;--_)if(void 0!==(v=y[p=Sa[_]])&&(m=v.executeHitDetection(c,s,i,d,u)))return m}},t.prototype.getClipCoords=function(t){var e=this.maxExtent_;if(!e)return null;var i=e[0],r=e[1],n=e[2],o=e[3],a=[i,r,i,o,n,o,n,r];return Ei(a,0,8,2,t,a),a},t.prototype.isEmpty=function(){return S(this.executorsByZIndex_)},t.prototype.execute=function(t,e,i,r,n,o,a){var s=Object.keys(this.executorsByZIndex_).map(Number);s.sort(h),this.maxExtent_&&(t.save(),this.clip(t,i));var l,u,c,p,f,d,g=o||Sa;for(a&&s.reverse(),l=0,u=s.length;l<u;++l){var _=s[l].toString();for(f=this.executorsByZIndex_[_],c=0,p=g.length;c<p;++c){void 0!==(d=f[g[c]])&&d.execute(t,e,i,r,n,a)}}this.maxExtent_&&t.restore()},t}(),ba={};var Ta=0,Ea=1,Pa=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ra=function(t){function e(e,i,r,n,o,a,s){var l=t.call(this)||this;return l.context_=e,l.pixelRatio_=i,l.extent_=r,l.transform_=n,l.viewRotation_=o,l.squaredTolerance_=a,l.userTransform_=s,l.contextFillState_=null,l.contextStrokeState_=null,l.contextTextState_=null,l.fillState_=null,l.strokeState_=null,l.image_=null,l.imageAnchorX_=0,l.imageAnchorY_=0,l.imageHeight_=0,l.imageOpacity_=0,l.imageOriginX_=0,l.imageOriginY_=0,l.imageRotateWithView_=!1,l.imageRotation_=0,l.imageScale_=[0,0],l.imageWidth_=0,l.text_="",l.textOffsetX_=0,l.textOffsetY_=0,l.textRotateWithView_=!1,l.textRotation_=0,l.textScale_=[0,0],l.textFillState_=null,l.textStrokeState_=null,l.textState_=null,l.pixelCoordinates_=[],l.tmpLocalTransform_=[1,0,0,1,0,0],l}return Pa(e,t),e.prototype.drawImages_=function(t,e,i,r){if(this.image_){var n=Ei(t,e,i,2,this.transform_,this.pixelCoordinates_),o=this.context_,a=this.tmpLocalTransform_,s=o.globalAlpha;1!=this.imageOpacity_&&(o.globalAlpha=s*this.imageOpacity_);var l=this.imageRotation_;this.imageRotateWithView_&&(l+=this.viewRotation_);for(var u=0,h=n.length;u<h;u+=2){var c=n[u]-this.imageAnchorX_,p=n[u+1]-this.imageAnchorY_;if(0!==l||1!=this.imageScale_[0]||1!=this.imageScale_[1]){var f=c+this.imageAnchorX_,d=p+this.imageAnchorY_;Ot(a,f,d,1,1,l,-f,-d),o.setTransform.apply(o,a),o.translate(f,d),o.scale(this.imageScale_[0],this.imageScale_[1]),o.drawImage(this.image_,this.imageOriginX_,this.imageOriginY_,this.imageWidth_,this.imageHeight_,-this.imageAnchorX_,-this.imageAnchorY_,this.imageWidth_,this.imageHeight_),o.setTransform(1,0,0,1,0,0)}else o.drawImage(this.image_,this.imageOriginX_,this.imageOriginY_,this.imageWidth_,this.imageHeight_,c,p,this.imageWidth_,this.imageHeight_)}1!=this.imageOpacity_&&(o.globalAlpha=s)}},e.prototype.drawText_=function(t,e,i,r){if(this.textState_&&""!==this.text_){this.textFillState_&&this.setContextFillState_(this.textFillState_),this.textStrokeState_&&this.setContextStrokeState_(this.textStrokeState_),this.setContextTextState_(this.textState_);var n=Ei(t,e,i,r,this.transform_,this.pixelCoordinates_),o=this.context_,a=this.textRotation_;for(this.textRotateWithView_&&(a+=this.viewRotation_);e<i;e+=r){var s=n[e]+this.textOffsetX_,l=n[e+1]+this.textOffsetY_;if(0!==a||1!=this.textScale_[0]||1!=this.textScale_[1]){var u=Ot(this.tmpLocalTransform_,s,l,1,1,a,-s,-l);o.setTransform.apply(o,u),o.translate(s,l),o.scale(this.textScale_[0],this.textScale_[1]),this.textStrokeState_&&o.strokeText(this.text_,0,0),this.textFillState_&&o.fillText(this.text_,0,0),o.setTransform(1,0,0,1,0,0)}else this.textStrokeState_&&o.strokeText(this.text_,s,l),this.textFillState_&&o.fillText(this.text_,s,l)}}},e.prototype.moveToLineTo_=function(t,e,i,r,n){var o=this.context_,a=Ei(t,e,i,r,this.transform_,this.pixelCoordinates_);o.moveTo(a[0],a[1]);var s=a.length;n&&(s-=2);for(var l=2;l<s;l+=2)o.lineTo(a[l],a[l+1]);return n&&o.closePath(),i},e.prototype.drawRings_=function(t,e,i,r){for(var n=0,o=i.length;n<o;++n)e=this.moveToLineTo_(t,e,i[n],r,!0);return e},e.prototype.drawCircle=function(t){if(xe(this.extent_,t.getExtent())){if(this.fillState_||this.strokeState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);var e=function(t,e,i){var r=t.getFlatCoordinates();if(r){var n=t.getStride();return Ei(r,0,r.length,n,e,i)}return null}(t,this.transform_,this.pixelCoordinates_),i=e[2]-e[0],r=e[3]-e[1],n=Math.sqrt(i*i+r*r),o=this.context_;o.beginPath(),o.arc(e[0],e[1],n,0,2*Math.PI),this.fillState_&&o.fill(),this.strokeState_&&o.stroke()}""!==this.text_&&this.drawText_(t.getCenter(),0,2,2)}},e.prototype.setStyle=function(t){this.setFillStrokeStyle(t.getFill(),t.getStroke()),this.setImageStyle(t.getImage()),this.setTextStyle(t.getText())},e.prototype.setTransform=function(t){this.transform_=t},e.prototype.drawGeometry=function(t){switch(t.getType()){case ut:this.drawPoint(t);break;case ht:this.drawLineString(t);break;case pt:this.drawPolygon(t);break;case ft:this.drawMultiPoint(t);break;case dt:this.drawMultiLineString(t);break;case gt:this.drawMultiPolygon(t);break;case _t:this.drawGeometryCollection(t);break;case yt:this.drawCircle(t)}},e.prototype.drawFeature=function(t,e){var i=e.getGeometryFunction()(t);i&&xe(this.extent_,i.getExtent())&&(this.setStyle(e),this.drawGeometry(i))},e.prototype.drawGeometryCollection=function(t){for(var e=t.getGeometriesArray(),i=0,r=e.length;i<r;++i)this.drawGeometry(e[i])},e.prototype.drawPoint=function(t){this.squaredTolerance_&&(t=t.simplifyTransformed(this.squaredTolerance_,this.userTransform_));var e=t.getFlatCoordinates(),i=t.getStride();this.image_&&this.drawImages_(e,0,e.length,i),""!==this.text_&&this.drawText_(e,0,e.length,i)},e.prototype.drawMultiPoint=function(t){this.squaredTolerance_&&(t=t.simplifyTransformed(this.squaredTolerance_,this.userTransform_));var e=t.getFlatCoordinates(),i=t.getStride();this.image_&&this.drawImages_(e,0,e.length,i),""!==this.text_&&this.drawText_(e,0,e.length,i)},e.prototype.drawLineString=function(t){if(this.squaredTolerance_&&(t=t.simplifyTransformed(this.squaredTolerance_,this.userTransform_)),xe(this.extent_,t.getExtent())){if(this.strokeState_){this.setContextStrokeState_(this.strokeState_);var e=this.context_,i=t.getFlatCoordinates();e.beginPath(),this.moveToLineTo_(i,0,i.length,t.getStride(),!1),e.stroke()}if(""!==this.text_){var r=t.getFlatMidpoint();this.drawText_(r,0,2,2)}}},e.prototype.drawMultiLineString=function(t){this.squaredTolerance_&&(t=t.simplifyTransformed(this.squaredTolerance_,this.userTransform_));var e=t.getExtent();if(xe(this.extent_,e)){if(this.strokeState_){this.setContextStrokeState_(this.strokeState_);var i=this.context_,r=t.getFlatCoordinates(),n=0,o=t.getEnds(),a=t.getStride();i.beginPath();for(var s=0,l=o.length;s<l;++s)n=this.moveToLineTo_(r,n,o[s],a,!1);i.stroke()}if(""!==this.text_){var u=t.getFlatMidpoints();this.drawText_(u,0,u.length,2)}}},e.prototype.drawPolygon=function(t){if(this.squaredTolerance_&&(t=t.simplifyTransformed(this.squaredTolerance_,this.userTransform_)),xe(this.extent_,t.getExtent())){if(this.strokeState_||this.fillState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);var e=this.context_;e.beginPath(),this.drawRings_(t.getOrientedFlatCoordinates(),0,t.getEnds(),t.getStride()),this.fillState_&&e.fill(),this.strokeState_&&e.stroke()}if(""!==this.text_){var i=t.getFlatInteriorPoint();this.drawText_(i,0,2,2)}}},e.prototype.drawMultiPolygon=function(t){if(this.squaredTolerance_&&(t=t.simplifyTransformed(this.squaredTolerance_,this.userTransform_)),xe(this.extent_,t.getExtent())){if(this.strokeState_||this.fillState_){this.fillState_&&this.setContextFillState_(this.fillState_),this.strokeState_&&this.setContextStrokeState_(this.strokeState_);var e=this.context_,i=t.getOrientedFlatCoordinates(),r=0,n=t.getEndss(),o=t.getStride();e.beginPath();for(var a=0,s=n.length;a<s;++a){var l=n[a];r=this.drawRings_(i,r,l,o)}this.fillState_&&e.fill(),this.strokeState_&&e.stroke()}if(""!==this.text_){var u=t.getFlatInteriorPoints();this.drawText_(u,0,u.length,2)}}},e.prototype.setContextFillState_=function(t){var e=this.context_,i=this.contextFillState_;i?i.fillStyle!=t.fillStyle&&(i.fillStyle=t.fillStyle,e.fillStyle=t.fillStyle):(e.fillStyle=t.fillStyle,this.contextFillState_={fillStyle:t.fillStyle})},e.prototype.setContextStrokeState_=function(t){var e=this.context_,i=this.contextStrokeState_;i?(i.lineCap!=t.lineCap&&(i.lineCap=t.lineCap,e.lineCap=t.lineCap),e.setLineDash&&(g(i.lineDash,t.lineDash)||e.setLineDash(i.lineDash=t.lineDash),i.lineDashOffset!=t.lineDashOffset&&(i.lineDashOffset=t.lineDashOffset,e.lineDashOffset=t.lineDashOffset)),i.lineJoin!=t.lineJoin&&(i.lineJoin=t.lineJoin,e.lineJoin=t.lineJoin),i.lineWidth!=t.lineWidth&&(i.lineWidth=t.lineWidth,e.lineWidth=t.lineWidth),i.miterLimit!=t.miterLimit&&(i.miterLimit=t.miterLimit,e.miterLimit=t.miterLimit),i.strokeStyle!=t.strokeStyle&&(i.strokeStyle=t.strokeStyle,e.strokeStyle=t.strokeStyle)):(e.lineCap=t.lineCap,e.setLineDash&&(e.setLineDash(t.lineDash),e.lineDashOffset=t.lineDashOffset),e.lineJoin=t.lineJoin,e.lineWidth=t.lineWidth,e.miterLimit=t.miterLimit,e.strokeStyle=t.strokeStyle,this.contextStrokeState_={lineCap:t.lineCap,lineDash:t.lineDash,lineDashOffset:t.lineDashOffset,lineJoin:t.lineJoin,lineWidth:t.lineWidth,miterLimit:t.miterLimit,strokeStyle:t.strokeStyle})},e.prototype.setContextTextState_=function(t){var e=this.context_,i=this.contextTextState_,r=t.textAlign?t.textAlign:"center";i?(i.font!=t.font&&(i.font=t.font,e.font=t.font),i.textAlign!=r&&(i.textAlign=r,e.textAlign=r),i.textBaseline!=t.textBaseline&&(i.textBaseline=t.textBaseline,e.textBaseline=t.textBaseline)):(e.font=t.font,e.textAlign=r,e.textBaseline=t.textBaseline,this.contextTextState_={font:t.font,textAlign:r,textBaseline:t.textBaseline})},e.prototype.setFillStrokeStyle=function(t,e){if(t){var i=t.getColor();this.fillState_={fillStyle:Zr(i||"#000")}}else this.fillState_=null;if(e){var r=e.getColor(),n=e.getLineCap(),o=e.getLineDash(),a=e.getLineDashOffset(),s=e.getLineJoin(),l=e.getWidth(),u=e.getMiterLimit();this.strokeState_={lineCap:void 0!==n?n:"round",lineDash:o||hn,lineDashOffset:a||0,lineJoin:void 0!==s?s:"round",lineWidth:this.pixelRatio_*(void 0!==l?l:1),miterLimit:void 0!==u?u:10,strokeStyle:Zr(r||"#000")}}else this.strokeState_=null},e.prototype.setImageStyle=function(t){if(t){var e=t.getSize();if(e){var i=t.getAnchor(),r=t.getImage(1),n=t.getOrigin(),o=t.getScaleArray();this.imageAnchorX_=i[0],this.imageAnchorY_=i[1],this.imageHeight_=e[1],this.image_=r,this.imageOpacity_=t.getOpacity(),this.imageOriginX_=n[0],this.imageOriginY_=n[1],this.imageRotateWithView_=t.getRotateWithView(),this.imageRotation_=t.getRotation(),this.imageScale_=[this.pixelRatio_*o[0],this.pixelRatio_*o[1]],this.imageWidth_=e[0]}else this.image_=null}else this.image_=null},e.prototype.setTextStyle=function(t){if(t){var e=t.getFill();if(e){var i=e.getColor();this.textFillState_={fillStyle:Zr(i||"#000")}}else this.textFillState_=null;var r=t.getStroke();if(r){var n=r.getColor(),o=r.getLineCap(),a=r.getLineDash(),s=r.getLineDashOffset(),l=r.getLineJoin(),u=r.getWidth(),h=r.getMiterLimit();this.textStrokeState_={lineCap:void 0!==o?o:"round",lineDash:a||hn,lineDashOffset:s||0,lineJoin:void 0!==l?l:"round",lineWidth:void 0!==u?u:1,miterLimit:void 0!==h?h:10,strokeStyle:Zr(n||"#000")}}else this.textStrokeState_=null;var c=t.getFont(),p=t.getOffsetX(),f=t.getOffsetY(),d=t.getRotateWithView(),g=t.getRotation(),_=t.getScaleArray(),y=t.getText(),v=t.getTextAlign(),m=t.getTextBaseline();this.textState_={font:void 0!==c?c:"10px sans-serif",textAlign:void 0!==v?v:"center",textBaseline:void 0!==m?m:"middle"},this.text_=void 0!==y?y:"",this.textOffsetX_=void 0!==p?this.pixelRatio_*p:0,this.textOffsetY_=void 0!==f?this.pixelRatio_*f:0,this.textRotateWithView_=void 0!==d&&d,this.textRotation_=void 0!==g?g:0,this.textScale_=[this.pixelRatio_*_[0],this.pixelRatio_*_[1]]}else this.text_=""},e}(zo),Fa="fraction",Oa="pixels",Ia="bottom-left",Ma="bottom-right",La="top-left",Aa="top-right";function ka(t,e,i){return e+":"+t+":"+(i?Ur(i):"null")}var Da=new(function(){function t(){this.cache_={},this.cacheSize_=0,this.maxCacheSize_=32}return t.prototype.clear=function(){this.cache_={},this.cacheSize_=0},t.prototype.canExpireCache=function(){return this.cacheSize_>this.maxCacheSize_},t.prototype.expire=function(){if(this.canExpireCache()){var t=0;for(var e in this.cache_){var i=this.cache_[e];0!=(3&t++)||i.hasListener()||(delete this.cache_[e],--this.cacheSize_)}}},t.prototype.get=function(t,e,i){var r=ka(t,e,i);return r in this.cache_?this.cache_[r]:null},t.prototype.set=function(t,e,i,r){var n=ka(t,e,i);this.cache_[n]=r,++this.cacheSize_},t.prototype.setSize=function(t){this.maxCacheSize_=t,this.expire()},t}()),ja=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ga=function(t){function i(e,i,r,n){var o=t.call(this)||this;return o.extent=e,o.pixelRatio_=r,o.resolution=i,o.state=n,o}return ja(i,t),i.prototype.changed=function(){this.dispatchEvent(T)},i.prototype.getExtent=function(){return this.extent},i.prototype.getImage=function(){return e()},i.prototype.getPixelRatio=function(){return this.pixelRatio_},i.prototype.getResolution=function(){return this.resolution},i.prototype.getState=function(){return this.state},i.prototype.load=function(){e()},i}(b),Na=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),za=function(t){function e(e,i,r,n,o,a){var s=t.call(this,e,i,r,Ir)||this;return s.src_=n,s.image_=new Image,null!==o&&(s.image_.crossOrigin=o),s.unlisten_=null,s.state=Ir,s.imageLoadFunction_=a,s}return Na(e,t),e.prototype.getImage=function(){return this.image_},e.prototype.handleImageError_=function(){this.state=Ar,this.unlistenImage_(),this.changed()},e.prototype.handleImageLoad_=function(){void 0===this.resolution&&(this.resolution=ge(this.extent)/this.image_.height),this.state=Lr,this.unlistenImage_(),this.changed()},e.prototype.load=function(){this.state!=Ir&&this.state!=Ar||(this.state=Mr,this.changed(),this.imageLoadFunction_(this,this.src_),this.unlisten_=Ba(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this)))},e.prototype.setImage=function(t){this.image_=t},e.prototype.unlistenImage_=function(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)},e}(Ga);function Ba(t,e,i){var r=t;if(r.src&&en){var n=r.decode(),o=!0;return n.then((function(){o&&e()})).catch((function(t){o&&("EncodingError"===t.name&&"Invalid image type."===t.message?e():i())})),function(){o=!1}}var a=[z(r,k,e),z(r,E,i)];return function(){a.forEach(B)}}var Ua=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Va=null,Xa=function(t){function e(e,i,r,n,o,a){var s=t.call(this)||this;return s.hitDetectionImage_=null,s.image_=e||new Image,null!==n&&(s.image_.crossOrigin=n),s.canvas_={},s.color_=a,s.unlisten_=null,s.imageState_=o,s.size_=r,s.src_=i,s.tainted_,s}return Ua(e,t),e.prototype.isTainted_=function(){if(void 0===this.tainted_&&this.imageState_===Lr){Va||(Va=nn(1,1)),Va.drawImage(this.image_,0,0);try{Va.getImageData(0,0,1,1),this.tainted_=!1}catch(t){Va=null,this.tainted_=!0}}return!0===this.tainted_},e.prototype.dispatchChangeEvent_=function(){this.dispatchEvent(T)},e.prototype.handleImageError_=function(){this.imageState_=Ar,this.unlistenImage_(),this.dispatchChangeEvent_()},e.prototype.handleImageLoad_=function(){this.imageState_=Lr,this.size_?(this.image_.width=this.size_[0],this.image_.height=this.size_[1]):this.size_=[this.image_.width,this.image_.height],this.unlistenImage_(),this.dispatchChangeEvent_()},e.prototype.getImage=function(t){return this.replaceColor_(t),this.canvas_[t]?this.canvas_[t]:this.image_},e.prototype.getPixelRatio=function(t){return this.replaceColor_(t),this.canvas_[t]?t:1},e.prototype.getImageState=function(){return this.imageState_},e.prototype.getHitDetectionImage=function(){if(!this.hitDetectionImage_)if(this.isTainted_()){var t=this.size_[0],e=this.size_[1],i=nn(t,e);i.fillRect(0,0,t,e),this.hitDetectionImage_=i.canvas}else this.hitDetectionImage_=this.image_;return this.hitDetectionImage_},e.prototype.getSize=function(){return this.size_},e.prototype.getSrc=function(){return this.src_},e.prototype.load=function(){if(this.imageState_==Ir){this.imageState_=Mr;try{this.image_.src=this.src_}catch(t){this.handleImageError_()}this.unlisten_=Ba(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this))}},e.prototype.replaceColor_=function(t){if(this.color_&&!this.canvas_[t]){var e=document.createElement("canvas");this.canvas_[t]=e,e.width=Math.ceil(this.image_.width*t),e.height=Math.ceil(this.image_.height*t);var i=e.getContext("2d");if(i.scale(t,t),i.drawImage(this.image_,0,0),i.globalCompositeOperation="multiply","multiply"===i.globalCompositeOperation||this.isTainted_())i.fillStyle=Ur(this.color_),i.fillRect(0,0,e.width,e.height),i.globalCompositeOperation="destination-in",i.drawImage(this.image_,0,0);else{for(var r=i.getImageData(0,0,e.width,e.height),n=r.data,o=this.color_[0]/255,a=this.color_[1]/255,s=this.color_[2]/255,l=this.color_[3],u=0,h=n.length;u<h;u+=4)n[u]*=o,n[u+1]*=a,n[u+2]*=s,n[u+3]*=l;i.putImageData(r,0,0)}}},e.prototype.unlistenImage_=function(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)},e}(b);var Wa=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ya=function(t){function e(e){var i=this,n=e||{},o=void 0!==n.opacity?n.opacity:1,a=void 0!==n.rotation?n.rotation:0,s=void 0!==n.scale?n.scale:1,l=void 0!==n.rotateWithView&&n.rotateWithView;(i=t.call(this,{opacity:o,rotation:a,scale:s,displacement:void 0!==n.displacement?n.displacement:[0,0],rotateWithView:l})||this).anchor_=void 0!==n.anchor?n.anchor:[.5,.5],i.normalizedAnchor_=null,i.anchorOrigin_=void 0!==n.anchorOrigin?n.anchorOrigin:La,i.anchorXUnits_=void 0!==n.anchorXUnits?n.anchorXUnits:Fa,i.anchorYUnits_=void 0!==n.anchorYUnits?n.anchorYUnits:Fa,i.crossOrigin_=void 0!==n.crossOrigin?n.crossOrigin:null;var u=void 0!==n.img?n.img:null,h=void 0!==n.imgSize?n.imgSize:null,c=n.src;it(!(void 0!==c&&u),4),it(!u||u&&h,5),void 0!==c&&0!==c.length||!u||(c=u.src||r(u)),it(void 0!==c&&c.length>0,6);var p=void 0!==n.src?Ir:Lr;return i.color_=void 0!==n.color?Wr(n.color):null,i.iconImage_=function(t,e,i,r,n,o){var a=Da.get(e,r,o);return a||(a=new Xa(t,e,i,r,n,o),Da.set(e,r,o,a)),a}(u,c,h,i.crossOrigin_,p,i.color_),i.offset_=void 0!==n.offset?n.offset:[0,0],i.offsetOrigin_=void 0!==n.offsetOrigin?n.offsetOrigin:La,i.origin_=null,i.size_=void 0!==n.size?n.size:null,i}return Wa(e,t),e.prototype.clone=function(){var t=this.getScale();return new e({anchor:this.anchor_.slice(),anchorOrigin:this.anchorOrigin_,anchorXUnits:this.anchorXUnits_,anchorYUnits:this.anchorYUnits_,crossOrigin:this.crossOrigin_,color:this.color_&&this.color_.slice?this.color_.slice():this.color_||void 0,src:this.getSrc(),offset:this.offset_.slice(),offsetOrigin:this.offsetOrigin_,size:null!==this.size_?this.size_.slice():void 0,opacity:this.getOpacity(),scale:Array.isArray(t)?t.slice():t,rotation:this.getRotation(),rotateWithView:this.getRotateWithView()})},e.prototype.getAnchor=function(){if(this.normalizedAnchor_)return this.normalizedAnchor_;var t=this.anchor_,e=this.getSize();if(this.anchorXUnits_==Fa||this.anchorYUnits_==Fa){if(!e)return null;t=this.anchor_.slice(),this.anchorXUnits_==Fa&&(t[0]*=e[0]),this.anchorYUnits_==Fa&&(t[1]*=e[1])}if(this.anchorOrigin_!=La){if(!e)return null;t===this.anchor_&&(t=this.anchor_.slice()),this.anchorOrigin_!=Aa&&this.anchorOrigin_!=Ma||(t[0]=-t[0]+e[0]),this.anchorOrigin_!=Ia&&this.anchorOrigin_!=Ma||(t[1]=-t[1]+e[1])}return this.normalizedAnchor_=t,this.normalizedAnchor_},e.prototype.setAnchor=function(t){this.anchor_=t,this.normalizedAnchor_=null},e.prototype.getColor=function(){return this.color_},e.prototype.getImage=function(t){return this.iconImage_.getImage(t)},e.prototype.getPixelRatio=function(t){return this.iconImage_.getPixelRatio(t)},e.prototype.getImageSize=function(){return this.iconImage_.getSize()},e.prototype.getHitDetectionImageSize=function(){return this.getImageSize()},e.prototype.getImageState=function(){return this.iconImage_.getImageState()},e.prototype.getHitDetectionImage=function(){return this.iconImage_.getHitDetectionImage()},e.prototype.getOrigin=function(){if(this.origin_)return this.origin_;var t=this.offset_,e=this.getDisplacement();if(this.offsetOrigin_!=La){var i=this.getSize(),r=this.iconImage_.getSize();if(!i||!r)return null;t=t.slice(),this.offsetOrigin_!=Aa&&this.offsetOrigin_!=Ma||(t[0]=r[0]-i[0]-t[0]),this.offsetOrigin_!=Ia&&this.offsetOrigin_!=Ma||(t[1]=r[1]-i[1]-t[1])}return t[0]+=e[0],t[1]+=e[1],this.origin_=t,this.origin_},e.prototype.getSrc=function(){return this.iconImage_.getSrc()},e.prototype.getSize=function(){return this.size_?this.size_:this.iconImage_.getSize()},e.prototype.listenImageChange=function(t){this.iconImage_.addEventListener(T,t)},e.prototype.load=function(){this.iconImage_.load()},e.prototype.unlistenImageChange=function(t){this.iconImage_.removeEventListener(T,t)},e}(Nr);function Ka(t,e,i,r,n,o,a){var s=nn(t[0]/2,t[1]/2);s.imageSmoothingEnabled=!1;for(var l=s.canvas,u=new Ra(s,.5,n,null,a),c=i.length,p=Math.floor(16777215/c),f={},d=1;d<=c;++d){var g=i[d-1],_=g.getStyleFunction()||r;if(r){var y=_(g,o);if(y){Array.isArray(y)||(y=[y]);for(var v="#"+("000000"+(d*p).toString(16)).slice(-6),m=0,x=y.length;m<x;++m){var w=y[m],S=w.clone(),C=S.getFill();C&&C.setColor(v);var b=S.getStroke();b&&b.setColor(v),S.setText(void 0);var T=w.getImage();if(T){var E=T.getImageSize();if(!E)continue;var P=document.createElement("canvas");P.width=E[0],P.height=E[1];var R=P.getContext("2d",{alpha:!1});R.fillStyle=v;var F=R.canvas;R.fillRect(0,0,F.width,F.height),nn(E?E[0]:F.width,E?E[1]:F.height).drawImage(F,0,0),S.setImage(new Ya({img:F,imgSize:E,anchor:T.getAnchor(),anchorXUnits:Oa,anchorYUnits:Oa,offset:T.getOrigin(),size:T.getSize(),opacity:T.getOpacity(),scale:T.getScale(),rotation:T.getRotation(),rotateWithView:T.getRotateWithView()}))}var O=Number(S.getZIndex());(A=f[O])||(A={},f[O]=A,A[pt]=[],A[yt]=[],A[ht]=[],A[ut]=[]);var I=S.getGeometryFunction()(g);I&&xe(n,I.getExtent())&&A[I.getType().replace("Multi","")].push(I,S)}}}}for(var M=Object.keys(f).map(Number).sort(h),L=(d=0,M.length);d<L;++d){var A=f[M[d]];for(var k in A){var D=A[k];for(m=0,x=D.length;m<x;m+=2){u.setStyle(D[m+1]);for(var j=0,G=e.length;j<G;++j)u.setTransform(e[j]),u.drawGeometry(D[m])}}}return s.getImageData(0,0,l.width,l.height)}function Za(t,e,i){var r=[];if(i){var n=4*(Math.round(t[0]/2)+Math.round(t[1]/2)*i.width),o=i.data[n],a=i.data[n+1],s=i.data[n+2]+256*(a+256*o),l=Math.floor(16777215/e.length);s&&s%l==0&&r.push(e[s/l-1])}return r}var Ha={Point:function(t,e,i,r,n){var o,a=i.getImage(),s=i.getText();n&&(t=n,o=a&&s&&s.getText()?{}:void 0);if(a){if(a.getImageState()!=Lr)return;var l=t.getBuilder(i.getZIndex(),la);l.setImageStyle(a,o),l.drawPoint(e,r)}if(s&&s.getText()){var u=t.getBuilder(i.getZIndex(),ca);u.setTextStyle(s,o),u.drawText(e,r)}},LineString:function(t,e,i,r,n){var o=i.getStroke();if(o){var a=t.getBuilder(i.getZIndex(),ua);a.setFillStrokeStyle(null,o),a.drawLineString(e,r)}var s=i.getText();if(s&&s.getText()){var l=(n||t).getBuilder(i.getZIndex(),ca);l.setTextStyle(s),l.drawText(e,r)}},Polygon:function(t,e,i,r,n){var o=i.getFill(),a=i.getStroke();if(o||a){var s=t.getBuilder(i.getZIndex(),ha);s.setFillStrokeStyle(o,a),s.drawPolygon(e,r)}var l=i.getText();if(l&&l.getText()){var u=(n||t).getBuilder(i.getZIndex(),ca);u.setTextStyle(l),u.drawText(e,r)}},MultiPoint:function(t,e,i,r,n){var o,a=i.getImage(),s=i.getText();n&&(t=n,o=a&&s&&s.getText()?{}:void 0);if(a){if(a.getImageState()!=Lr)return;var l=t.getBuilder(i.getZIndex(),la);l.setImageStyle(a,o),l.drawMultiPoint(e,r)}if(s&&s.getText()){var u=(n||t).getBuilder(i.getZIndex(),ca);u.setTextStyle(s,o),u.drawText(e,r)}},MultiLineString:function(t,e,i,r,n){var o=i.getStroke();if(o){var a=t.getBuilder(i.getZIndex(),ua);a.setFillStrokeStyle(null,o),a.drawMultiLineString(e,r)}var s=i.getText();if(s&&s.getText()){var l=(n||t).getBuilder(i.getZIndex(),ca);l.setTextStyle(s),l.drawText(e,r)}},MultiPolygon:function(t,e,i,r,n){var o=i.getFill(),a=i.getStroke();if(a||o){var s=t.getBuilder(i.getZIndex(),ha);s.setFillStrokeStyle(o,a),s.drawMultiPolygon(e,r)}var l=i.getText();if(l&&l.getText()){var u=(n||t).getBuilder(i.getZIndex(),ca);u.setTextStyle(l),u.drawText(e,r)}},GeometryCollection:function(t,e,i,r,n){var o,a,s=e.getGeometriesArray();for(o=0,a=s.length;o<a;++o){(0,Ha[s[o].getType()])(t,s[o],i,r,n)}},Circle:function(t,e,i,r,n){var o=i.getFill(),a=i.getStroke();if(o||a){var s=t.getBuilder(i.getZIndex(),aa);s.setFillStrokeStyle(o,a),s.drawCircle(e,r)}var l=i.getText();if(l&&l.getText()){var u=(n||t).getBuilder(i.getZIndex(),ca);u.setTextStyle(l),u.drawText(e,r)}}};function qa(t,e){return parseInt(r(t),10)-parseInt(r(e),10)}function Ja(t,e){var i=Qa(t,e);return i*i}function Qa(t,e){return.5*t/e}function $a(t,e,i,r,n,o,a){var s=!1,l=i.getImage();if(l){var u=l.getImageState();u==Lr||u==Ar?l.unlistenImageChange(n):(u==Ir&&l.load(),u=l.getImageState(),l.listenImageChange(n),s=!0)}return function(t,e,i,r,n,o){var a=i.getGeometryFunction()(e);if(!a)return;var s=a.simplifyTransformed(r,n);if(i.getRenderer())!function t(e,i,r,n){if(i.getType()==_t){for(var o=i.getGeometries(),a=0,s=o.length;a<s;++a)t(e,o[a],r,n);return}e.getBuilder(r.getZIndex(),sa).drawCustom(i,n,r.getRenderer())}(t,s,i,e);else{(0,Ha[s.getType()])(t,s,i,e,o)}}(t,e,i,r,o,a),s}var ts=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),es=function(t){function e(e){var i=t.call(this,e)||this;return i.boundHandleStyleImageChange_=i.handleStyleImageChange_.bind(i),i.animatingOrInteracting_,i.dirty_=!1,i.hitDetectionImageData_=null,i.renderedFeatures_=null,i.renderedRevision_=-1,i.renderedResolution_=NaN,i.renderedExtent_=[1/0,1/0,-1/0,-1/0],i.renderedRotation_,i.renderedCenter_=null,i.renderedProjection_=null,i.renderedRenderOrder_=null,i.replayGroup_=null,i.replayGroupChanged=!0,i.declutterExecutorGroup=null,i.clipping=!0,i}return ts(e,t),e.prototype.useContainer=function(e,i,r){r<1&&(e=null),t.prototype.useContainer.call(this,e,i,r)},e.prototype.renderWorlds=function(t,e,i){var r=e.extent,n=e.viewState,o=n.center,a=n.resolution,s=n.projection,l=n.rotation,u=s.getExtent(),h=this.getLayer().getSource(),c=e.pixelRatio,p=e.viewHints,f=!(p[Ta]||p[Ea]),d=this.context,g=Math.round(e.size[0]*c),_=Math.round(e.size[1]*c),y=h.getWrapX()&&s.canWrapX(),v=y?me(u):null,m=y?Math.ceil((r[2]-u[2])/v)+1:1,x=y?Math.floor((r[0]-u[0])/v):0;do{var w=this.getRenderTransform(o,a,l,c,g,_,x*v);t.execute(d,1,w,l,f,void 0,i)}while(++x<m)},e.prototype.renderDeclutter=function(t){this.declutterExecutorGroup&&this.renderWorlds(this.declutterExecutorGroup,t,t.declutterTree)},e.prototype.renderFrame=function(t,e){var i=t.pixelRatio,r=t.layerStatesArray[t.layerIndex];!function(t,e,i){Pt(t,e,0,0,i,0,0)}(this.pixelTransform,1/i,1/i),It(this.inversePixelTransform,this.pixelTransform);var n=Mt(this.pixelTransform);this.useContainer(e,n,r.opacity);var o=this.context,a=o.canvas,s=this.replayGroup_,l=this.declutterExecutorGroup;if((!s||s.isEmpty())&&(!l||l.isEmpty()))return!this.containerReused&&a.width>0&&(a.width=0),this.container;var u=Math.round(t.size[0]*i),h=Math.round(t.size[1]*i);a.width!=u||a.height!=h?(a.width=u,a.height=h,a.style.transform!==n&&(a.style.transform=n)):this.containerReused||o.clearRect(0,0,u,h),this.preRender(o,t);var c=t.viewState,p=(c.projection,!1);if(r.extent&&this.clipping){var f=Ti(r.extent);(p=!Zt(f,t.extent)&&xe(f,t.extent))&&this.clipUnrotated(o,t,f)}this.renderWorlds(s,t),p&&o.restore(),this.postRender(o,t);var d=r.opacity,g=this.container;return d!==parseFloat(g.style.opacity)&&(g.style.opacity=1===d?"":String(d)),this.renderedRotation_!==c.rotation&&(this.renderedRotation_=c.rotation,this.hitDetectionImageData_=null),this.container},e.prototype.getFeatures=function(t){return new Promise(function(e){if(!this.hitDetectionImageData_&&!this.animatingOrInteracting_){var i=[this.context.canvas.width,this.context.canvas.height];Rt(this.pixelTransform,i);var r=this.renderedCenter_,n=this.renderedResolution_,o=this.renderedRotation_,a=this.renderedProjection_,s=this.renderedExtent_,l=this.getLayer(),u=[],h=i[0]/2,c=i[1]/2;u.push(this.getRenderTransform(r,n,o,.5,h,c,0).slice());var p=l.getSource(),f=a.getExtent();if(p.getWrapX()&&a.canWrapX()&&!Zt(f,s)){for(var d=s[0],g=me(f),_=0,y=void 0;d<f[0];)y=g*--_,u.push(this.getRenderTransform(r,n,o,.5,h,c,y).slice()),d+=g;for(_=0,d=s[2];d>f[2];)y=g*++_,u.push(this.getRenderTransform(r,n,o,.5,h,c,y).slice()),d-=g}this.hitDetectionImageData_=Ka(i,u,this.renderedFeatures_,l.getStyleFunction(),s,n,o)}e(Za(t,this.renderedFeatures_,this.hitDetectionImageData_))}.bind(this))},e.prototype.forEachFeatureAtCoordinate=function(t,e,i,n,o){var a=this;if(this.replayGroup_){var s,l=e.viewState.resolution,u=e.viewState.rotation,h=this.getLayer(),c={},p=function(t,e,i){var a=r(t),s=c[a];if(s){if(!0!==s&&i<s.distanceSq){if(0===i)return c[a]=!0,o.splice(o.lastIndexOf(s),1),n(t,h,e);s.geometry=e,s.distanceSq=i}}else{if(0===i)return c[a]=!0,n(t,h,e);o.push(c[a]={feature:t,layer:h,geometry:e,distanceSq:i,callback:n})}},f=[this.replayGroup_];return this.declutterExecutorGroup&&f.push(this.declutterExecutorGroup),f.some((function(r){return s=r.forEachFeatureAtCoordinate(t,l,u,i,p,r===a.declutterExecutorGroup?e.declutterTree.all().map((function(t){return t.value})):null)})),s}},e.prototype.handleFontsChanged=function(){var t=this.getLayer();t.getVisible()&&this.replayGroup_&&t.changed()},e.prototype.handleStyleImageChange_=function(t){this.renderIfReadyAndVisible()},e.prototype.prepareFrame=function(t){var e=this.getLayer(),i=e.getSource();if(!i)return!1;var r=t.viewHints[Ta],n=t.viewHints[Ea],o=e.getUpdateWhileAnimating(),a=e.getUpdateWhileInteracting();if(!this.dirty_&&!o&&r||!a&&n)return this.animatingOrInteracting_=!0,!0;this.animatingOrInteracting_=!1;var s=t.extent,l=t.viewState,u=l.projection,h=l.resolution,c=t.pixelRatio,p=e.getRevision(),f=e.getRenderBuffer(),d=e.getRenderOrder();void 0===d&&(d=qa);var g=l.center.slice(),_=Xt(s,f*h),y=[_.slice()],v=u.getExtent();if(i.getWrapX()&&u.canWrapX()&&!Zt(v,t.extent)){var m=me(v),x=Math.max(me(_)/2,m);_[0]=v[0]-x,_[2]=v[2]+x,si(g,u);var w=function(t,e){var i=e.getExtent(),r=pe(t);if(e.canWrapX()&&(r[0]<i[0]||r[0]>=i[2])){var n=me(i),o=Math.floor((r[0]-i[0])/n)*n;t[0]-=o,t[2]-=o}return t}(y[0],u);w[0]<v[0]&&w[2]<v[2]?y.push([w[0]+m,w[1],w[2]+m,w[3]]):w[0]>v[0]&&w[2]>v[2]&&y.push([w[0]-m,w[1],w[2]-m,w[3]])}if(!this.dirty_&&this.renderedResolution_==h&&this.renderedRevision_==p&&this.renderedRenderOrder_==d&&Zt(this.renderedExtent_,_))return this.replayGroupChanged=!1,!0;this.replayGroup_=null,this.dirty_=!1;var S,C=new $o(Qa(h,c),_,h,c);this.getLayer().getDeclutter()&&(S=new $o(Qa(h,c),_,h,c));for(var b=0,T=y.length;b<T;++b)i.loadFeatures(y[b],h,u);var E=Ja(h,c),P=function(t){var i,r=t.getStyleFunction()||e.getStyleFunction();if(r&&(i=r(t,h)),i){var n=this.renderFeature(t,E,i,C,void 0,S);this.dirty_=this.dirty_||n}}.bind(this),R=bi(_),F=i.getFeaturesInExtent(R);d&&F.sort(d);for(b=0,T=F.length;b<T;++b)P(F[b]);this.renderedFeatures_=F;var O=C.finish(),I=new Ca(_,h,c,i.getOverlaps(),O,e.getRenderBuffer());return S&&(this.declutterExecutorGroup=new Ca(_,h,c,i.getOverlaps(),S.finish(),e.getRenderBuffer())),this.renderedResolution_=h,this.renderedRevision_=p,this.renderedRenderOrder_=d,this.renderedExtent_=_,this.renderedCenter_=g,this.renderedProjection_=u,this.replayGroup_=I,this.hitDetectionImageData_=null,this.replayGroupChanged=!0,!0},e.prototype.renderFeature=function(t,e,i,r,n,o){if(!i)return!1;var a=!1;if(Array.isArray(i))for(var s=0,l=i.length;s<l;++s)a=$a(r,t,i[s],e,this.boundHandleStyleImageChange_,n,o)||a;else a=$a(r,t,i,e,this.boundHandleStyleImageChange_,n,o);return a},e}(oa),is=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),rs=function(t){function e(e){return t.call(this,e)||this}return is(e,t),e.prototype.createRenderer=function(){return new es(this)},e}(So),ns=function(){function t(t){this.rbush_=new oo(t),this.items_={}}return t.prototype.insert=function(t,e){var i={minX:t[0],minY:t[1],maxX:t[2],maxY:t[3],value:e};this.rbush_.insert(i),this.items_[r(e)]=i},t.prototype.load=function(t,e){for(var i=new Array(e.length),n=0,o=e.length;n<o;n++){var a=t[n],s=e[n],l={minX:a[0],minY:a[1],maxX:a[2],maxY:a[3],value:s};i[n]=l,this.items_[r(s)]=l}this.rbush_.load(i)},t.prototype.remove=function(t){var e=r(t),i=this.items_[e];return delete this.items_[e],null!==this.rbush_.remove(i)},t.prototype.update=function(t,e){var i=this.items_[r(e)];re([i.minX,i.minY,i.maxX,i.maxY],t)||(this.remove(e),this.insert(t,e))},t.prototype.getAll=function(){return this.rbush_.all().map((function(t){return t.value}))},t.prototype.getInExtent=function(t){var e={minX:t[0],minY:t[1],maxX:t[2],maxY:t[3]};return this.rbush_.search(e).map((function(t){return t.value}))},t.prototype.forEach=function(t){return this.forEach_(this.getAll(),t)},t.prototype.forEachInExtent=function(t,e){return this.forEach_(this.getInExtent(t),e)},t.prototype.forEach_=function(t,e){for(var i,r=0,n=t.length;r<n;r++)if(i=e(t[r]))return i;return i},t.prototype.isEmpty=function(){return S(this.items_)},t.prototype.clear=function(){this.rbush_.clear(),this.items_={}},t.prototype.getExtent=function(t){var e=this.rbush_.toJSON();return Qt(e.minX,e.minY,e.maxX,e.maxY,t)},t.prototype.concat=function(t){for(var e in this.rbush_.load(t.rbush_.all()),t.items_)this.items_[e]=t.items_[e]},t}(),os=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),as=function(t){function i(e){var i=t.call(this)||this;return i.projection_=ci(e.projection),i.attributions_=ss(e.attributions),i.attributionsCollapsible_=void 0===e.attributionsCollapsible||e.attributionsCollapsible,i.loading=!1,i.state_=void 0!==e.state?e.state:Jn,i.wrapX_=void 0!==e.wrapX&&e.wrapX,i}return os(i,t),i.prototype.getAttributions=function(){return this.attributions_},i.prototype.getAttributionsCollapsible=function(){return this.attributionsCollapsible_},i.prototype.getProjection=function(){return this.projection_},i.prototype.getResolutions=function(){return e()},i.prototype.getState=function(){return this.state_},i.prototype.getWrapX=function(){return this.wrapX_},i.prototype.getContextOptions=function(){},i.prototype.refresh=function(){this.changed()},i.prototype.setAttributions=function(t){this.attributions_=ss(t),this.changed()},i.prototype.setState=function(t){this.state_=t,this.changed()},i}(K);function ss(t){return t?Array.isArray(t)?function(e){return t}:"function"==typeof t?t:function(e){return[t]}:null}var ls="addfeature",us="changefeature",hs="clear",cs="removefeature",ps="featuresloadstart",fs="featuresloadend",ds="featuresloaderror";function gs(t,e){return[[-1/0,-1/0,1/0,1/0]]}var _s="arraybuffer",ys="json",vs="text",ms="xml";function xs(t,e,i,r,n,o,a){var s=new XMLHttpRequest;s.open("GET","function"==typeof t?t(i,r,n):t,!0),e.getType()==_s&&(s.responseType="arraybuffer"),s.withCredentials=!1,s.onload=function(t){if(!s.status||s.status>=200&&s.status<300){var r=e.getType(),l=void 0;r==ys||r==vs?l=s.responseText:r==ms?(l=s.responseXML)||(l=(new DOMParser).parseFromString(s.responseText,"application/xml")):r==_s&&(l=s.response),l?o(e.readFeatures(l,{extent:i,featureProjection:n}),e.readProjection(l)):a()}else a()},s.onerror=a,s.send()}function ws(t,e){return function(i,r,n,o,a){var s=this;xs(t,e,i,r,n,(function(t,e){void 0!==o&&o(t),s.addFeatures(t)}),a||v)}}var Ss=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Cs=function(t){function e(e,i,r){var n=t.call(this,e)||this;return n.feature=i,n.features=r,n}return Ss(e,t),e}(s),bs=function(t){function e(e){var i=this,r=e||{};(i=t.call(this,{attributions:r.attributions,projection:void 0,state:Jn,wrapX:void 0===r.wrapX||r.wrapX})||this).loader_=v,i.format_=r.format,i.overlaps_=void 0===r.overlaps||r.overlaps,i.url_=r.url,void 0!==r.loader?i.loader_=r.loader:void 0!==i.url_&&(it(i.format_,7),i.loader_=ws(i.url_,i.format_)),i.strategy_=void 0!==r.strategy?r.strategy:gs;var n,o,a=void 0===r.useSpatialIndex||r.useSpatialIndex;return i.featuresRtree_=a?new ns:null,i.loadedExtentsRtree_=new ns,i.nullGeometryFeatures_={},i.idIndex_={},i.uidIndex_={},i.featureChangeKeys_={},i.featuresCollection_=null,Array.isArray(r.features)?o=r.features:r.features&&(o=(n=r.features).getArray()),a||void 0!==n||(n=new et(o)),void 0!==o&&i.addFeaturesInternal(o),void 0!==n&&i.bindFeaturesCollection_(n),i}return Ss(e,t),e.prototype.addFeature=function(t){this.addFeatureInternal(t),this.changed()},e.prototype.addFeatureInternal=function(t){var e=r(t);if(this.addToIndex_(e,t)){this.setupChangeEvents_(e,t);var i=t.getGeometry();if(i){var n=i.getExtent();this.featuresRtree_&&this.featuresRtree_.insert(n,t)}else this.nullGeometryFeatures_[e]=t;this.dispatchEvent(new Cs(ls,t))}else this.featuresCollection_&&this.featuresCollection_.remove(t)},e.prototype.setupChangeEvents_=function(t,e){this.featureChangeKeys_[t]=[N(e,T,this.handleFeatureChange_,this),N(e,l,this.handleFeatureChange_,this)]},e.prototype.addToIndex_=function(t,e){var i=!0,r=e.getId();return void 0!==r&&(r.toString()in this.idIndex_?i=!1:this.idIndex_[r.toString()]=e),i&&(it(!(t in this.uidIndex_),30),this.uidIndex_[t]=e),i},e.prototype.addFeatures=function(t){this.addFeaturesInternal(t),this.changed()},e.prototype.addFeaturesInternal=function(t){for(var e=[],i=[],n=[],o=0,a=t.length;o<a;o++){var s=r(u=t[o]);this.addToIndex_(s,u)&&i.push(u)}o=0;for(var l=i.length;o<l;o++){var u;s=r(u=i[o]);this.setupChangeEvents_(s,u);var h=u.getGeometry();if(h){var c=h.getExtent();e.push(c),n.push(u)}else this.nullGeometryFeatures_[s]=u}this.featuresRtree_&&this.featuresRtree_.load(e,n);o=0;for(var p=i.length;o<p;o++)this.dispatchEvent(new Cs(ls,i[o]))},e.prototype.bindFeaturesCollection_=function(t){var e=!1;this.addEventListener(ls,(function(i){e||(e=!0,t.push(i.feature),e=!1)})),this.addEventListener(cs,(function(i){e||(e=!0,t.remove(i.feature),e=!1)})),t.addEventListener(q,function(t){e||(e=!0,this.addFeature(t.element),e=!1)}.bind(this)),t.addEventListener(J,function(t){e||(e=!0,this.removeFeature(t.element),e=!1)}.bind(this)),this.featuresCollection_=t},e.prototype.clear=function(t){if(t){for(var e in this.featureChangeKeys_){this.featureChangeKeys_[e].forEach(B)}this.featuresCollection_||(this.featureChangeKeys_={},this.idIndex_={},this.uidIndex_={})}else if(this.featuresRtree_)for(var i in this.featuresRtree_.forEach(this.removeFeatureInternal.bind(this)),this.nullGeometryFeatures_)this.removeFeatureInternal(this.nullGeometryFeatures_[i]);this.featuresCollection_&&this.featuresCollection_.clear(),this.featuresRtree_&&this.featuresRtree_.clear(),this.nullGeometryFeatures_={};var r=new Cs(hs);this.dispatchEvent(r),this.changed()},e.prototype.forEachFeature=function(t){if(this.featuresRtree_)return this.featuresRtree_.forEach(t);this.featuresCollection_&&this.featuresCollection_.forEach(t)},e.prototype.forEachFeatureAtCoordinateDirect=function(t,e){var i=[t[0],t[1],t[0],t[1]];return this.forEachFeatureInExtent(i,(function(i){return i.getGeometry().intersectsCoordinate(t)?e(i):void 0}))},e.prototype.forEachFeatureInExtent=function(t,e){if(this.featuresRtree_)return this.featuresRtree_.forEachInExtent(t,e);this.featuresCollection_&&this.featuresCollection_.forEach(e)},e.prototype.forEachFeatureIntersectingExtent=function(t,e){return this.forEachFeatureInExtent(t,(function(i){if(i.getGeometry().intersectsExtent(t)){var r=e(i);if(r)return r}}))},e.prototype.getFeaturesCollection=function(){return this.featuresCollection_},e.prototype.getFeatures=function(){var t;return this.featuresCollection_?t=this.featuresCollection_.getArray():this.featuresRtree_&&(t=this.featuresRtree_.getAll(),S(this.nullGeometryFeatures_)||d(t,w(this.nullGeometryFeatures_))),t},e.prototype.getFeaturesAtCoordinate=function(t){var e=[];return this.forEachFeatureAtCoordinateDirect(t,(function(t){e.push(t)})),e},e.prototype.getFeaturesInExtent=function(t){return this.featuresRtree_?this.featuresRtree_.getInExtent(t):this.featuresCollection_?this.featuresCollection_.getArray():[]},e.prototype.getClosestFeatureToCoordinate=function(t,e){var i=t[0],r=t[1],n=null,o=[NaN,NaN],a=1/0,s=[-1/0,-1/0,1/0,1/0],l=e||_;return this.featuresRtree_.forEachInExtent(s,(function(t){if(l(t)){var e=t.getGeometry(),u=a;if((a=e.closestPointXY(i,r,o,a))<u){n=t;var h=Math.sqrt(a);s[0]=i-h,s[1]=r-h,s[2]=i+h,s[3]=r+h}}})),n},e.prototype.getExtent=function(t){return this.featuresRtree_.getExtent(t)},e.prototype.getFeatureById=function(t){var e=this.idIndex_[t.toString()];return void 0!==e?e:null},e.prototype.getFeatureByUid=function(t){var e=this.uidIndex_[t];return void 0!==e?e:null},e.prototype.getFormat=function(){return this.format_},e.prototype.getOverlaps=function(){return this.overlaps_},e.prototype.getUrl=function(){return this.url_},e.prototype.handleFeatureChange_=function(t){var e=t.target,i=r(e),n=e.getGeometry();if(n){var o=n.getExtent();i in this.nullGeometryFeatures_?(delete this.nullGeometryFeatures_[i],this.featuresRtree_&&this.featuresRtree_.insert(o,e)):this.featuresRtree_&&this.featuresRtree_.update(o,e)}else i in this.nullGeometryFeatures_||(this.featuresRtree_&&this.featuresRtree_.remove(e),this.nullGeometryFeatures_[i]=e);var a=e.getId();if(void 0!==a){var s=a.toString();this.idIndex_[s]!==e&&(this.removeFromIdIndex_(e),this.idIndex_[s]=e)}else this.removeFromIdIndex_(e),this.uidIndex_[i]=e;this.changed(),this.dispatchEvent(new Cs(us,e))},e.prototype.hasFeature=function(t){var e=t.getId();return void 0!==e?e in this.idIndex_:r(t)in this.uidIndex_},e.prototype.isEmpty=function(){return this.featuresRtree_.isEmpty()&&S(this.nullGeometryFeatures_)},e.prototype.loadFeatures=function(t,e,i){var r=this.loadedExtentsRtree_,n=this.strategy_(t,e);this.loading=!1;for(var o=function(t,o){var s=n[t];r.forEachInExtent(s,(function(t){return Zt(t.extent,s)}))||(a.dispatchEvent(new Cs(ps)),a.loader_.call(a,s,e,i,function(t){this.dispatchEvent(new Cs(fs,void 0,t))}.bind(a),function(){this.dispatchEvent(new Cs(ds))}.bind(a)),r.insert(s,{extent:s.slice()}),a.loading=a.loader_!==v)},a=this,s=0,l=n.length;s<l;++s)o(s)},e.prototype.refresh=function(){this.clear(!0),this.loadedExtentsRtree_.clear(),t.prototype.refresh.call(this)},e.prototype.removeLoadedExtent=function(t){var e,i=this.loadedExtentsRtree_;i.forEachInExtent(t,(function(i){if(re(i.extent,t))return e=i,!0})),e&&i.remove(e)},e.prototype.removeFeature=function(t){var e=r(t);e in this.nullGeometryFeatures_?delete this.nullGeometryFeatures_[e]:this.featuresRtree_&&this.featuresRtree_.remove(t),this.removeFeatureInternal(t),this.changed()},e.prototype.removeFeatureInternal=function(t){var e=r(t);this.featureChangeKeys_[e].forEach(B),delete this.featureChangeKeys_[e];var i=t.getId();void 0!==i&&delete this.idIndex_[i.toString()],delete this.uidIndex_[e],this.dispatchEvent(new Cs(cs,t))},e.prototype.removeFromIdIndex_=function(t){var e=!1;for(var i in this.idIndex_)if(this.idIndex_[i]===t){delete this.idIndex_[i],e=!0;break}return e},e.prototype.setLoader=function(t){this.loader_=t},e.prototype.setUrl=function(t){it(this.format_,7),this.setLoader(ws(t,this.format_))},e}(as),Ts=0,Es=1,Ps=2,Rs=3,Fs=4;function Os(t){return Math.pow(t,3)}function Is(t){return 1-Os(1-t)}function Ms(t){return 3*t*t-2*t*t*t}function Ls(t){return t}var As=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ks=function(t){function i(e,i,r){var n=t.call(this)||this,o=r||{};return n.tileCoord=e,n.state=i,n.interimTile=null,n.hifi=!0,n.key="",n.transition_=void 0===o.transition?250:o.transition,n.transitionStarts_={},n}return As(i,t),i.prototype.changed=function(){this.dispatchEvent(T)},i.prototype.release=function(){},i.prototype.getKey=function(){return this.key+"/"+this.tileCoord},i.prototype.getInterimTile=function(){if(!this.interimTile)return this;var t=this.interimTile;do{if(t.getState()==Ps)return this.transition_=0,t;t=t.interimTile}while(t);return this},i.prototype.refreshInterimChain=function(){if(this.interimTile){var t=this.interimTile,e=this;do{if(t.getState()==Ps){t.interimTile=null;break}t.getState()==Es?e=t:t.getState()==Ts?e.interimTile=t.interimTile:e=t,t=e.interimTile}while(t)}},i.prototype.getTileCoord=function(){return this.tileCoord},i.prototype.getState=function(){return this.state},i.prototype.setState=function(t){if(this.state!==Rs&&this.state>t)throw new Error("Tile load sequence violation");this.state=t,this.changed()},i.prototype.load=function(){e()},i.prototype.getAlpha=function(t,e){if(!this.transition_)return 1;var i=this.transitionStarts_[t];if(i){if(-1===i)return 1}else i=e,this.transitionStarts_[t]=i;var r=e-i+1e3/60;return r>=this.transition_?1:Os(r/this.transition_)},i.prototype.inTransition=function(t){return!!this.transition_&&-1!==this.transitionStarts_[t]},i.prototype.endTransition=function(t){this.transition_&&(this.transitionStarts_[t]=-1)},i}(b),Ds=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),js=function(t){function e(e,i,r,n,o,a){var s=t.call(this,e,i,a)||this;return s.crossOrigin_=n,s.src_=r,s.key=r,s.image_=new Image,null!==n&&(s.image_.crossOrigin=n),s.unlisten_=null,s.tileLoadFunction_=o,s}return Ds(e,t),e.prototype.getImage=function(){return this.image_},e.prototype.handleImageError_=function(){var t;this.state=Rs,this.unlistenImage_(),this.image_=((t=nn(1,1)).fillStyle="rgba(0,0,0,0)",t.fillRect(0,0,1,1),t.canvas),this.changed()},e.prototype.handleImageLoad_=function(){var t=this.image_;t.naturalWidth&&t.naturalHeight?this.state=Ps:this.state=Fs,this.unlistenImage_(),this.changed()},e.prototype.load=function(){this.state==Rs&&(this.state=Ts,this.image_=new Image,null!==this.crossOrigin_&&(this.image_.crossOrigin=this.crossOrigin_)),this.state==Ts&&(this.state=Es,this.changed(),this.tileLoadFunction_(this,this.src_),this.unlisten_=Ba(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this)))},e.prototype.unlistenImage_=function(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)},e}(ks);var Gs=function(){function t(t,e,i){this.decay_=t,this.minVelocity_=e,this.delay_=i,this.points_=[],this.angle_=0,this.initialVelocity_=0}return t.prototype.begin=function(){this.points_.length=0,this.angle_=0,this.initialVelocity_=0},t.prototype.update=function(t,e){this.points_.push(t,e,Date.now())},t.prototype.end=function(){if(this.points_.length<6)return!1;var t=Date.now()-this.delay_,e=this.points_.length-3;if(this.points_[e+2]<t)return!1;for(var i=e-3;i>0&&this.points_[i+2]>t;)i-=3;var r=this.points_[e+2]-this.points_[i+2];if(r<1e3/60)return!1;var n=this.points_[e]-this.points_[i],o=this.points_[e+1]-this.points_[i+1];return this.angle_=Math.atan2(o,n),this.initialVelocity_=Math.sqrt(n*n+o*o)/r,this.initialVelocity_>this.minVelocity_},t.prototype.getDistance=function(){return(this.minVelocity_-this.initialVelocity_)/this.decay_},t.prototype.getAngle=function(){return this.angle_},t}(),Ns=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),zs=function(t){function i(e){var i=t.call(this)||this;return i.map_=e,i}return Ns(i,t),i.prototype.dispatchRenderEvent=function(t,i){e()},i.prototype.calculateMatrices2D=function(t){var e=t.viewState,i=t.coordinateToPixelTransform,r=t.pixelToCoordinateTransform;Ot(i,t.size[0]/2,t.size[1]/2,1/e.resolution,-1/e.resolution,-e.rotation,-e.center[0],-e.center[1]),It(r,i)},i.prototype.forEachFeatureAtCoordinate=function(t,e,i,r,n,o,a,s){var l,u=e.viewState;function h(t,e,i,r){return n.call(o,e,t?i:null,r)}var c=u.projection,p=si(t.slice(),c),f=[[0,0]];if(c.canWrapX()&&r){var d=me(c.getExtent());f.push([-d,0],[d,0])}for(var g=e.layerStatesArray,_=g.length,y=[],v=[],m=0;m<f.length;m++)for(var x=_-1;x>=0;--x){var w=g[x],S=w.layer;if(S.hasRenderer()&&eo(w,u)&&a.call(s,S)){var C=S.getRenderer(),b=S.getSource();if(C&&b){var T=b.getWrapX()?p:t,E=h.bind(null,w.managed);v[0]=T[0]+f[m][0],v[1]=T[1]+f[m][1],l=C.forEachFeatureAtCoordinate(v,e,i,E,y)}if(l)return l}}if(0!==y.length){var P=1/y.length;return y.forEach((function(t,e){return t.distanceSq+=e*P})),y.sort((function(t,e){return t.distanceSq-e.distanceSq})),y.some((function(t){return l=t.callback(t.feature,t.layer,t.geometry)})),l}},i.prototype.forEachLayerAtPixel=function(t,i,r,n,o){return e()},i.prototype.hasFeatureAtCoordinate=function(t,e,i,r,n,o){return void 0!==this.forEachFeatureAtCoordinate(t,e,i,r,_,this,n,o)},i.prototype.getMap=function(){return this.map_},i.prototype.renderFrame=function(t){e()},i.prototype.scheduleExpireIconCache=function(t){Da.canExpireCache()&&t.postRenderFunctions.push(Bs)},i}(u);function Bs(t,e){Da.expire()}var Us=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Vs=function(t){function e(e){var i=t.call(this,e)||this;i.fontChangeListenerKey_=N(pn,l,e.redrawText.bind(e)),i.element_=document.createElement("div");var r=i.element_.style;r.position="absolute",r.width="100%",r.height="100%",r.zIndex="0",i.element_.className="ol-unselectable ol-layers";var n=e.getViewport();return n.insertBefore(i.element_,n.firstChild||null),i.children_=[],i.renderedVisible_=!0,i}return Us(e,t),e.prototype.dispatchRenderEvent=function(t,e){var i=this.getMap();if(i.hasListener(t)){var r=new ra(t,void 0,e);i.dispatchEvent(r)}},e.prototype.disposeInternal=function(){B(this.fontChangeListenerKey_),this.element_.parentNode.removeChild(this.element_),t.prototype.disposeInternal.call(this)},e.prototype.renderFrame=function(t){if(t){this.calculateMatrices2D(t),this.dispatchRenderEvent(wr,t);var e=t.layerStatesArray.sort((function(t,e){return t.zIndex-e.zIndex})),i=t.viewState;this.children_.length=0;for(var r=[],n=null,o=0,a=e.length;o<a;++o){var s=e[o];if(t.layerIndex=o,eo(s,i)&&(s.sourceState==Jn||s.sourceState==Hn)){var l=s.layer,u=l.render(t,n);u&&(u!==n&&(this.children_.push(u),n=u),"getDeclutter"in l&&r.push(l))}}for(o=r.length-1;o>=0;--o)r[o].renderDeclutter(t);!function(t,e){for(var i=t.childNodes,r=0;;++r){var n=i[r],o=e[r];if(!n&&!o)break;n!==o&&(n?o?t.insertBefore(o,n):(t.removeChild(n),--r):t.appendChild(o))}}(this.element_,this.children_),this.dispatchRenderEvent(Sr,t),this.renderedVisible_||(this.element_.style.display="",this.renderedVisible_=!0),this.scheduleExpireIconCache(t)}else this.renderedVisible_&&(this.element_.style.display="none",this.renderedVisible_=!1)},e.prototype.forEachLayerAtPixel=function(t,e,i,r,n){for(var o=e.viewState,a=e.layerStatesArray,s=a.length-1;s>=0;--s){var l=a[s],u=l.layer;if(u.hasRenderer()&&eo(l,o)&&n(u)){var h=u.getRenderer().getDataAtPixel(t,e,i);if(h){var c=r(u,h);if(c)return c}}}},e}(zs),Xs=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ws="layers",Ys=function(t){function e(e){var i=this,r=e||{},n=m({},r);delete n.layers;var o=r.layers;return(i=t.call(this,n)||this).layersListenerKeys_=[],i.listenerKeys_={},i.addEventListener(H(Ws),i.handleLayersChanged_),o?Array.isArray(o)?o=new et(o.slice(),{unique:!0}):it("function"==typeof o.getArray,43):o=new et(void 0,{unique:!0}),i.setLayers(o),i}return Xs(e,t),e.prototype.handleLayerChange_=function(){this.changed()},e.prototype.handleLayersChanged_=function(){this.layersListenerKeys_.forEach(B),this.layersListenerKeys_.length=0;var t=this.getLayers();for(var e in this.layersListenerKeys_.push(N(t,q,this.handleLayersAdd_,this),N(t,J,this.handleLayersRemove_,this)),this.listenerKeys_)this.listenerKeys_[e].forEach(B);x(this.listenerKeys_);for(var i=t.getArray(),n=0,o=i.length;n<o;n++){var a=i[n];this.listenerKeys_[r(a)]=[N(a,l,this.handleLayerChange_,this),N(a,T,this.handleLayerChange_,this)]}this.changed()},e.prototype.handleLayersAdd_=function(t){var e=t.element;this.listenerKeys_[r(e)]=[N(e,l,this.handleLayerChange_,this),N(e,T,this.handleLayerChange_,this)],this.changed()},e.prototype.handleLayersRemove_=function(t){var e=r(t.element);this.listenerKeys_[e].forEach(B),delete this.listenerKeys_[e],this.changed()},e.prototype.getLayers=function(){return this.get(Ws)},e.prototype.setLayers=function(t){this.set(Ws,t)},e.prototype.getLayersArray=function(t){var e=void 0!==t?t:[];return this.getLayers().forEach((function(t){t.getLayersArray(e)})),e},e.prototype.getLayerStatesArray=function(t){var e=void 0!==t?t:[],i=e.length;this.getLayers().forEach((function(t){t.getLayerStatesArray(e)}));for(var r=this.getLayerState(),n=i,o=e.length;n<o;n++){var a=e[n];a.opacity*=r.opacity,a.visible=a.visible&&r.visible,a.maxResolution=Math.min(a.maxResolution,r.maxResolution),a.minResolution=Math.max(a.minResolution,r.minResolution),a.minZoom=Math.max(a.minZoom,r.minZoom),a.maxZoom=Math.min(a.maxZoom,r.maxZoom),void 0!==r.extent&&(void 0!==a.extent?a.extent=_e(a.extent,r.extent):a.extent=r.extent)}return e},e.prototype.getSourceState=function(){return Jn},e}(Zn),Ks=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Zs=function(t){function e(e,i,r){var n=t.call(this,e)||this;return n.map=i,n.frameState=void 0!==r?r:null,n}return Ks(e,t),e}(s),Hs=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),qs=function(t){function e(e,i,r,n,o){var a=t.call(this,e,i,o)||this;return a.originalEvent=r,a.pixel_=null,a.coordinate_=null,a.dragging=void 0!==n&&n,a}return Hs(e,t),Object.defineProperty(e.prototype,"pixel",{get:function(){return this.pixel_||(this.pixel_=this.map.getEventPixel(this.originalEvent)),this.pixel_},set:function(t){this.pixel_=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"coordinate",{get:function(){return this.coordinate_||(this.coordinate_=this.map.getCoordinateFromPixel(this.pixel)),this.coordinate_},set:function(t){this.coordinate_=t},enumerable:!1,configurable:!0}),e.prototype.preventDefault=function(){t.prototype.preventDefault.call(this),this.originalEvent.preventDefault()},e.prototype.stopPropagation=function(){t.prototype.stopPropagation.call(this),this.originalEvent.stopPropagation()},e}(Zs),Js={SINGLECLICK:"singleclick",CLICK:R,DBLCLICK:F,POINTERDRAG:"pointerdrag",POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTERUP:"pointerup",POINTEROVER:"pointerover",POINTEROUT:"pointerout",POINTERENTER:"pointerenter",POINTERLEAVE:"pointerleave",POINTERCANCEL:"pointercancel"},Qs="pointermove",$s="pointerdown",tl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),el=function(t){function e(e,i){var r=t.call(this,e)||this;r.map_=e,r.clickTimeoutId_,r.emulateClicks_=!1,r.dragging_=!1,r.dragListenerKeys_=[],r.moveTolerance_=i?i*$r:$r,r.down_=null;var n=r.map_.getViewport();return r.activePointers_=0,r.trackedTouches_={},r.element_=n,r.pointerdownListenerKey_=N(n,$s,r.handlePointerDown_,r),r.originalPointerMoveEvent_,r.relayedListenerKey_=N(n,Qs,r.relayEvent_,r),r.boundHandleTouchMove_=r.handleTouchMove_.bind(r),r.element_.addEventListener(j,r.boundHandleTouchMove_,!!rn&&{passive:!1}),r}return tl(e,t),e.prototype.emulateClick_=function(t){var e=new qs(Js.CLICK,this.map_,t);this.dispatchEvent(e),void 0!==this.clickTimeoutId_?(clearTimeout(this.clickTimeoutId_),this.clickTimeoutId_=void 0,e=new qs(Js.DBLCLICK,this.map_,t),this.dispatchEvent(e)):this.clickTimeoutId_=setTimeout(function(){this.clickTimeoutId_=void 0;var e=new qs(Js.SINGLECLICK,this.map_,t);this.dispatchEvent(e)}.bind(this),250)},e.prototype.updateActivePointers_=function(t){var e=t;e.type==Js.POINTERUP||e.type==Js.POINTERCANCEL?delete this.trackedTouches_[e.pointerId]:e.type==Js.POINTERDOWN&&(this.trackedTouches_[e.pointerId]=!0),this.activePointers_=Object.keys(this.trackedTouches_).length},e.prototype.handlePointerUp_=function(t){this.updateActivePointers_(t);var e=new qs(Js.POINTERUP,this.map_,t);this.dispatchEvent(e),this.emulateClicks_&&!e.propagationStopped&&!this.dragging_&&this.isMouseActionButton_(t)&&this.emulateClick_(this.down_),0===this.activePointers_&&(this.dragListenerKeys_.forEach(B),this.dragListenerKeys_.length=0,this.dragging_=!1,this.down_=null)},e.prototype.isMouseActionButton_=function(t){return 0===t.button},e.prototype.handlePointerDown_=function(t){this.emulateClicks_=0===this.activePointers_,this.updateActivePointers_(t);var e=new qs(Js.POINTERDOWN,this.map_,t);if(this.dispatchEvent(e),this.down_=t,0===this.dragListenerKeys_.length){var i=this.map_.getOwnerDocument();this.dragListenerKeys_.push(N(i,Js.POINTERMOVE,this.handlePointerMove_,this),N(i,Js.POINTERUP,this.handlePointerUp_,this),N(this.element_,Js.POINTERCANCEL,this.handlePointerUp_,this)),this.element_.getRootNode&&this.element_.getRootNode()!==i&&this.dragListenerKeys_.push(N(this.element_.getRootNode(),Js.POINTERUP,this.handlePointerUp_,this))}},e.prototype.handlePointerMove_=function(t){if(this.isMoving_(t)){this.dragging_=!0;var e=new qs(Js.POINTERDRAG,this.map_,t,this.dragging_);this.dispatchEvent(e)}},e.prototype.relayEvent_=function(t){this.originalPointerMoveEvent_=t;var e=!(!this.down_||!this.isMoving_(t));this.dispatchEvent(new qs(t.type,this.map_,t,e))},e.prototype.handleTouchMove_=function(t){this.originalPointerMoveEvent_&&!this.originalPointerMoveEvent_.defaultPrevented||t.preventDefault()},e.prototype.isMoving_=function(t){return this.dragging_||Math.abs(t.clientX-this.down_.clientX)>this.moveTolerance_||Math.abs(t.clientY-this.down_.clientY)>this.moveTolerance_},e.prototype.disposeInternal=function(){this.relayedListenerKey_&&(B(this.relayedListenerKey_),this.relayedListenerKey_=null),this.element_.removeEventListener(j,this.boundHandleTouchMove_),this.pointerdownListenerKey_&&(B(this.pointerdownListenerKey_),this.pointerdownListenerKey_=null),this.dragListenerKeys_.forEach(B),this.dragListenerKeys_.length=0,this.element_=null,t.prototype.disposeInternal.call(this)},e}(b),il="postrender",rl="movestart",nl="moveend",ol="layergroup",al="size",sl="target",ll="view",ul=function(){function t(t,e){this.priorityFunction_=t,this.keyFunction_=e,this.elements_=[],this.priorities_=[],this.queuedElements_={}}return t.prototype.clear=function(){this.elements_.length=0,this.priorities_.length=0,x(this.queuedElements_)},t.prototype.dequeue=function(){var t=this.elements_,e=this.priorities_,i=t[0];1==t.length?(t.length=0,e.length=0):(t[0]=t.pop(),e[0]=e.pop(),this.siftUp_(0));var r=this.keyFunction_(i);return delete this.queuedElements_[r],i},t.prototype.enqueue=function(t){it(!(this.keyFunction_(t)in this.queuedElements_),31);var e=this.priorityFunction_(t);return e!=1/0&&(this.elements_.push(t),this.priorities_.push(e),this.queuedElements_[this.keyFunction_(t)]=!0,this.siftDown_(0,this.elements_.length-1),!0)},t.prototype.getCount=function(){return this.elements_.length},t.prototype.getLeftChildIndex_=function(t){return 2*t+1},t.prototype.getRightChildIndex_=function(t){return 2*t+2},t.prototype.getParentIndex_=function(t){return t-1>>1},t.prototype.heapify_=function(){var t;for(t=(this.elements_.length>>1)-1;t>=0;t--)this.siftUp_(t)},t.prototype.isEmpty=function(){return 0===this.elements_.length},t.prototype.isKeyQueued=function(t){return t in this.queuedElements_},t.prototype.isQueued=function(t){return this.isKeyQueued(this.keyFunction_(t))},t.prototype.siftUp_=function(t){for(var e=this.elements_,i=this.priorities_,r=e.length,n=e[t],o=i[t],a=t;t<r>>1;){var s=this.getLeftChildIndex_(t),l=this.getRightChildIndex_(t),u=l<r&&i[l]<i[s]?l:s;e[t]=e[u],i[t]=i[u],t=u}e[t]=n,i[t]=o,this.siftDown_(a,t)},t.prototype.siftDown_=function(t,e){for(var i=this.elements_,r=this.priorities_,n=i[e],o=r[e];e>t;){var a=this.getParentIndex_(e);if(!(r[a]>o))break;i[e]=i[a],r[e]=r[a],e=a}i[e]=n,r[e]=o},t.prototype.reprioritize=function(){var t,e,i,r=this.priorityFunction_,n=this.elements_,o=this.priorities_,a=0,s=n.length;for(e=0;e<s;++e)(i=r(t=n[e]))==1/0?delete this.queuedElements_[this.keyFunction_(t)]:(o[a]=i,n[a++]=t);n.length=a,o.length=a,this.heapify_()},t}(),hl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),cl=function(t){function e(e,i){var r=t.call(this,(function(t){return e.apply(null,t)}),(function(t){return t[0].getKey()}))||this;return r.boundHandleTileChange_=r.handleTileChange.bind(r),r.tileChangeCallback_=i,r.tilesLoading_=0,r.tilesLoadingKeys_={},r}return hl(e,t),e.prototype.enqueue=function(e){var i=t.prototype.enqueue.call(this,e);i&&e[0].addEventListener(T,this.boundHandleTileChange_);return i},e.prototype.getTilesLoading=function(){return this.tilesLoading_},e.prototype.handleTileChange=function(t){var e=t.target,i=e.getState();if(e.hifi&&i===Ps||i===Rs||i===Fs){e.removeEventListener(T,this.boundHandleTileChange_);var r=e.getKey();r in this.tilesLoadingKeys_&&(delete this.tilesLoadingKeys_[r],--this.tilesLoading_),this.tileChangeCallback_()}},e.prototype.loadMoreTiles=function(t,e){for(var i,r,n=0;this.tilesLoading_<t&&n<e&&this.getCount()>0;)r=(i=this.dequeue()[0]).getKey(),i.getState()!==Ts||r in this.tilesLoadingKeys_||(this.tilesLoadingKeys_[r]=!0,++this.tilesLoading_,++n,i.load())},e}(ul);var pl="center",fl="resolution",dl="rotation";function gl(t,e,i){return function(r,n,o,a,s){if(r){var l=e?0:o[0]*n,u=e?0:o[1]*n,h=s?s[0]:0,c=s?s[1]:0,p=t[0]+l/2+h,f=t[2]-l/2+h,d=t[1]+u/2+c,g=t[3]-u/2+c;p>f&&(f=p=(f+p)/2),d>g&&(g=d=(g+d)/2);var _=be(r[0],p,f),y=be(r[1],d,g),v=30*n;return a&&i&&(_+=-v*Math.log(1+Math.max(0,p-r[0])/v)+v*Math.log(1+Math.max(0,r[0]-f)/v),y+=-v*Math.log(1+Math.max(0,d-r[1])/v)+v*Math.log(1+Math.max(0,r[1]-g)/v)),[_,y]}}}function _l(t){return t}function yl(t,e,i,r){var n=me(e)/i[0],o=ge(e)/i[1];return r?Math.min(t,Math.max(n,o)):Math.min(t,Math.min(n,o))}function vl(t,e,i){var r=Math.min(t,e);return r*=Math.log(1+50*Math.max(0,t/e-1))/50+1,i&&(r=Math.max(r,i),r/=Math.log(1+50*Math.max(0,i/t-1))/50+1),be(r,i/2,2*e)}function ml(t,e,i,r,n){return function(o,a,s,l){if(void 0!==o){var u=r?yl(t,r,s,n):t;return(void 0===i||i)&&l?vl(o,u,e):be(o,e,u)}}}function xl(t){return void 0!==t?0:void 0}function wl(t){return void 0!==t?t:void 0}var Sl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Cl=function(t){function e(e){var i=t.call(this)||this,r=m({},e);return i.hints_=[0,0],i.animations_=[],i.updateAnimationKey_,i.projection_=di(r.projection,"EPSG:3857"),i.viewportSize_=[100,100],i.targetCenter_=null,i.targetResolution_,i.targetRotation_,i.cancelAnchor_=void 0,r.center&&(r.center=Ci(r.center,i.projection_)),r.extent&&(r.extent=Ti(r.extent,i.projection_)),i.applyOptions_(r),i}return Sl(e,t),e.prototype.applyOptions_=function(t){var e=function(t){var e,i,r,n=void 0!==t.minZoom?t.minZoom:0,o=void 0!==t.maxZoom?t.maxZoom:28,a=void 0!==t.zoomFactor?t.zoomFactor:2,s=void 0!==t.multiWorld&&t.multiWorld,l=void 0===t.smoothResolutionConstraint||t.smoothResolutionConstraint,u=void 0!==t.showFullExtent&&t.showFullExtent,h=di(t.projection,"EPSG:3857"),c=h.getExtent(),f=t.constrainOnlyCenter,d=t.extent;s||d||!h.isGlobal()||(f=!1,d=c);if(void 0!==t.resolutions){var g=t.resolutions;i=g[n],r=void 0!==g[o]?g[o]:g[g.length-1],e=t.constrainResolution?function(t,e,i,r){return function(n,o,a,s){if(void 0!==n){var l=t[0],u=t[t.length-1],h=i?yl(l,i,a,r):l;if(s)return void 0===e||e?vl(n,h,u):be(n,u,h);var c=Math.min(h,n),f=Math.floor(p(t,c,o));return t[f]>h&&f<t.length-1?t[f+1]:t[f]}}}(g,l,!f&&d,u):ml(i,r,l,!f&&d,u)}else{var _=(c?Math.max(me(c),ge(c)):360*Ct[vt]/h.getMetersPerUnit())/256/Math.pow(2,0),y=_/Math.pow(2,28);void 0!==(i=t.maxResolution)?n=0:i=_/Math.pow(a,n),void 0===(r=t.minResolution)&&(r=void 0!==t.maxZoom?void 0!==t.maxResolution?i/Math.pow(a,o):_/Math.pow(a,o):y),o=n+Math.floor(Math.log(i/r)/Math.log(a)),r=i/Math.pow(a,o-n),e=t.constrainResolution?function(t,e,i,r,n,o){return function(a,s,l,u){if(void 0!==a){var h=n?yl(e,n,l,o):e,c=void 0!==i?i:0;if(u)return void 0===r||r?vl(a,h,c):be(a,c,h);var p=Math.ceil(Math.log(e/h)/Math.log(t)-1e-9),f=-s*(.5-1e-9)+.5,d=Math.min(h,a),g=Math.floor(Math.log(e/d)/Math.log(t)+f),_=Math.max(p,g);return be(e/Math.pow(t,_),c,h)}}}(a,i,r,l,!f&&d,u):ml(i,r,l,!f&&d,u)}return{constraint:e,maxResolution:i,minResolution:r,minZoom:n,zoomFactor:a}}(t);this.maxResolution_=e.maxResolution,this.minResolution_=e.minResolution,this.zoomFactor_=e.zoomFactor,this.resolutions_=t.resolutions,this.padding=t.padding,this.minZoom_=e.minZoom;var i=function(t){if(void 0!==t.extent){var e=void 0===t.smoothExtentConstraint||t.smoothExtentConstraint;return gl(t.extent,t.constrainOnlyCenter,e)}var i=di(t.projection,"EPSG:3857");if(!0!==t.multiWorld&&i.isGlobal()){var r=i.getExtent().slice();return r[0]=-1/0,r[2]=1/0,gl(r,!1,!1)}return _l}(t),r=e.constraint,n=function(t){if(void 0===t.enableRotation||t.enableRotation){var e=t.constrainRotation;return void 0===e||!0===e?(o=n||Oe(5),function(t,e){return e?t:void 0!==t?Math.abs(t)<=o?0:t:void 0}):!1===e?wl:"number"==typeof e?(i=e,r=2*Math.PI/i,function(t,e){return e?t:void 0!==t?t=Math.floor(t/r+.5)*r:void 0}):wl}return xl;var i,r;var n,o}(t);this.constraints_={center:i,resolution:r,rotation:n},this.setRotation(void 0!==t.rotation?t.rotation:0),this.setCenterInternal(void 0!==t.center?t.center:null),void 0!==t.resolution?this.setResolution(t.resolution):void 0!==t.zoom&&this.setZoom(t.zoom),this.setProperties({}),this.options_=t},e.prototype.getUpdatedOptions_=function(t){var e=m({},this.options_);return void 0!==e.resolution?e.resolution=this.getResolution():e.zoom=this.getZoom(),e.center=this.getCenterInternal(),e.rotation=this.getRotation(),m({},e,t)},e.prototype.animate=function(t){this.isDef()&&!this.getAnimating()&&this.resolveConstraints(0);for(var e=new Array(arguments.length),i=0;i<e.length;++i){var r=arguments[i];r.center&&((r=m({},r)).center=Ci(r.center,this.getProjection())),r.anchor&&((r=m({},r)).anchor=Ci(r.anchor,this.getProjection())),e[i]=r}this.animateInternal.apply(this,e)},e.prototype.animateInternal=function(t){var e,i=arguments.length;if(i>1&&"function"==typeof arguments[i-1]&&(e=arguments[i-1],--i),!this.isDef()){var r=arguments[i-1];return r.center&&this.setCenterInternal(r.center),void 0!==r.zoom&&this.setZoom(r.zoom),void 0!==r.rotation&&this.setRotation(r.rotation),void(e&&bl(e,!0))}for(var n=Date.now(),o=this.targetCenter_.slice(),a=this.targetResolution_,s=this.targetRotation_,l=[],u=0;u<i;++u){var h=arguments[u],c={start:n,complete:!1,anchor:h.anchor,duration:void 0!==h.duration?h.duration:1e3,easing:h.easing||Ms,callback:e};if(h.center&&(c.sourceCenter=o,c.targetCenter=h.center.slice(),o=c.targetCenter),void 0!==h.zoom?(c.sourceResolution=a,c.targetResolution=this.getResolutionForZoom(h.zoom),a=c.targetResolution):h.resolution&&(c.sourceResolution=a,c.targetResolution=h.resolution,a=c.targetResolution),void 0!==h.rotation){c.sourceRotation=s;var p=Ie(h.rotation-s+Math.PI,2*Math.PI)-Math.PI;c.targetRotation=s+p,s=c.targetRotation}Tl(c)?c.complete=!0:n+=c.duration,l.push(c)}this.animations_.push(l),this.setHint(Ta,1),this.updateAnimations_()},e.prototype.getAnimating=function(){return this.hints_[Ta]>0},e.prototype.getInteracting=function(){return this.hints_[Ea]>0},e.prototype.cancelAnimations=function(){var t;this.setHint(Ta,-this.hints_[Ta]);for(var e=0,i=this.animations_.length;e<i;++e){var r=this.animations_[e];if(r[0].callback&&bl(r[0].callback,!1),!t)for(var n=0,o=r.length;n<o;++n){var a=r[n];if(!a.complete){t=a.anchor;break}}}this.animations_.length=0,this.cancelAnchor_=t},e.prototype.updateAnimations_=function(){if(void 0!==this.updateAnimationKey_&&(cancelAnimationFrame(this.updateAnimationKey_),this.updateAnimationKey_=void 0),this.getAnimating()){for(var t=Date.now(),e=!1,i=this.animations_.length-1;i>=0;--i){for(var r=this.animations_[i],n=!0,o=0,a=r.length;o<a;++o){var s=r[o];if(!s.complete){var l=t-s.start,u=s.duration>0?l/s.duration:1;u>=1?(s.complete=!0,u=1):n=!1;var h=s.easing(u);if(s.sourceCenter){var c=s.sourceCenter[0],p=s.sourceCenter[1],f=c+h*(s.targetCenter[0]-c),d=p+h*(s.targetCenter[1]-p);this.targetCenter_=[f,d]}if(s.sourceResolution&&s.targetResolution){var g=1===h?s.targetResolution:s.sourceResolution+h*(s.targetResolution-s.sourceResolution);if(s.anchor){var _=this.getViewportSize_(this.getRotation()),y=this.constraints_.resolution(g,0,_,!0);this.targetCenter_=this.calculateCenterZoom(y,s.anchor)}this.targetResolution_=g,this.applyTargetState_(!0)}if(void 0!==s.sourceRotation&&void 0!==s.targetRotation){var v=1===h?Ie(s.targetRotation+Math.PI,2*Math.PI)-Math.PI:s.sourceRotation+h*(s.targetRotation-s.sourceRotation);if(s.anchor){var m=this.constraints_.rotation(v,!0);this.targetCenter_=this.calculateCenterRotate(m,s.anchor)}this.targetRotation_=v}if(this.applyTargetState_(!0),e=!0,!s.complete)break}}if(n){this.animations_[i]=null,this.setHint(Ta,-1);var x=r[0].callback;x&&bl(x,!0)}}this.animations_=this.animations_.filter(Boolean),e&&void 0===this.updateAnimationKey_&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_.bind(this)))}},e.prototype.calculateCenterRotate=function(t,e){var i,r,n,o=this.getCenterInternal();return void 0!==o&&(ri(i=[o[0]-e[0],o[1]-e[1]],t-this.getRotation()),n=e,(r=i)[0]+=+n[0],r[1]+=+n[1]),i},e.prototype.calculateCenterZoom=function(t,e){var i,r=this.getCenterInternal(),n=this.getResolution();void 0!==r&&void 0!==n&&(i=[e[0]-t*(e[0]-r[0])/n,e[1]-t*(e[1]-r[1])/n]);return i},e.prototype.getViewportSize_=function(t){var e=this.viewportSize_;if(t){var i=e[0],r=e[1];return[Math.abs(i*Math.cos(t))+Math.abs(r*Math.sin(t)),Math.abs(i*Math.sin(t))+Math.abs(r*Math.cos(t))]}return e},e.prototype.setViewportSize=function(t){this.viewportSize_=Array.isArray(t)?t.slice():[100,100],this.getAnimating()||this.resolveConstraints(0)},e.prototype.getCenter=function(){var t=this.getCenterInternal();return t?Si(t,this.getProjection()):t},e.prototype.getCenterInternal=function(){return this.get(pl)},e.prototype.getConstraints=function(){return this.constraints_},e.prototype.getConstrainResolution=function(){return this.options_.constrainResolution},e.prototype.getHints=function(t){return void 0!==t?(t[0]=this.hints_[0],t[1]=this.hints_[1],t):this.hints_.slice()},e.prototype.calculateExtent=function(t){return bi(this.calculateExtentInternal(t),this.getProjection())},e.prototype.calculateExtentInternal=function(t){var e=t||this.getViewportSize_(),i=this.getCenterInternal();it(i,1);var r=this.getResolution();it(void 0!==r,2);var n=this.getRotation();return it(void 0!==n,3),de(i,r,n,e)},e.prototype.getMaxResolution=function(){return this.maxResolution_},e.prototype.getMinResolution=function(){return this.minResolution_},e.prototype.getMaxZoom=function(){return this.getZoomForResolution(this.minResolution_)},e.prototype.setMaxZoom=function(t){this.applyOptions_(this.getUpdatedOptions_({maxZoom:t}))},e.prototype.getMinZoom=function(){return this.getZoomForResolution(this.maxResolution_)},e.prototype.setMinZoom=function(t){this.applyOptions_(this.getUpdatedOptions_({minZoom:t}))},e.prototype.setConstrainResolution=function(t){this.applyOptions_(this.getUpdatedOptions_({constrainResolution:t}))},e.prototype.getProjection=function(){return this.projection_},e.prototype.getResolution=function(){return this.get(fl)},e.prototype.getResolutions=function(){return this.resolutions_},e.prototype.getResolutionForExtent=function(t,e){return this.getResolutionForExtentInternal(Ti(t,this.getProjection()),e)},e.prototype.getResolutionForExtentInternal=function(t,e){var i=e||this.getViewportSize_(),r=me(t)/i[0],n=ge(t)/i[1];return Math.max(r,n)},e.prototype.getResolutionForValueFunction=function(t){var e=t||2,i=this.getConstrainedResolution(this.maxResolution_),r=this.minResolution_,n=Math.log(i/r)/Math.log(e);return function(t){return i/Math.pow(e,t*n)}},e.prototype.getRotation=function(){return this.get(dl)},e.prototype.getValueForResolutionFunction=function(t){var e=Math.log(t||2),i=this.getConstrainedResolution(this.maxResolution_),r=this.minResolution_,n=Math.log(i/r)/e;return function(t){return Math.log(i/t)/e/n}},e.prototype.getViewportSizeMinusPadding_=function(t){var e=this.getViewportSize_(t),i=this.padding;return i&&(e=[e[0]-i[1]-i[3],e[1]-i[0]-i[2]]),e},e.prototype.getState=function(){var t=this.getProjection(),e=this.getResolution(),i=this.getRotation(),r=this.getCenterInternal(),n=this.padding;if(n){var o=this.getViewportSizeMinusPadding_();r=El(r,this.getViewportSize_(),[o[0]/2+n[3],o[1]/2+n[0]],e,i)}return{center:r.slice(0),projection:void 0!==t?t:null,resolution:e,rotation:i,zoom:this.getZoom()}},e.prototype.getZoom=function(){var t,e=this.getResolution();return void 0!==e&&(t=this.getZoomForResolution(e)),t},e.prototype.getZoomForResolution=function(t){var e,i,r=this.minZoom_||0;if(this.resolutions_){var n=p(this.resolutions_,t,1);r=n,e=this.resolutions_[n],i=n==this.resolutions_.length-1?2:e/this.resolutions_[n+1]}else e=this.maxResolution_,i=this.zoomFactor_;return r+Math.log(e/t)/Math.log(i)},e.prototype.getResolutionForZoom=function(t){if(this.resolutions_){if(this.resolutions_.length<=1)return 0;var e=be(Math.floor(t),0,this.resolutions_.length-2),i=this.resolutions_[e]/this.resolutions_[e+1];return this.resolutions_[e]/Math.pow(i,be(t-e,0,1))}return this.maxResolution_/Math.pow(this.zoomFactor_,t-this.minZoom_)},e.prototype.fit=function(t,e){var i;if(it(Array.isArray(t)||"function"==typeof t.getSimplifiedGeometry,24),Array.isArray(t))it(!we(t),25),i=yr(r=Ti(t,this.getProjection()));else if(t.getType()===yt){var r;(i=yr(r=Ti(t.getExtent(),this.getProjection()))).rotate(this.getRotation(),pe(r))}else{i=t}this.fitInternal(i,e)},e.prototype.fitInternal=function(t,e){var i=e||{},r=i.size;r||(r=this.getViewportSizeMinusPadding_());var n,o=void 0!==i.padding?i.padding:[0,0,0,0],a=void 0!==i.nearest&&i.nearest;n=void 0!==i.minResolution?i.minResolution:void 0!==i.maxZoom?this.getResolutionForZoom(i.maxZoom):0;for(var s=t.getFlatCoordinates(),l=this.getRotation(),u=Math.cos(-l),h=Math.sin(-l),c=1/0,p=1/0,f=-1/0,d=-1/0,g=t.getStride(),_=0,y=s.length;_<y;_+=g){var m=s[_]*u-s[_+1]*h,x=s[_]*h+s[_+1]*u;c=Math.min(c,m),p=Math.min(p,x),f=Math.max(f,m),d=Math.max(d,x)}var w=this.getResolutionForExtentInternal([c,p,f,d],[r[0]-o[1]-o[3],r[1]-o[0]-o[2]]);w=isNaN(w)?n:Math.max(w,n),w=this.getConstrainedResolution(w,a?0:1),h=-h;var S=(c+f)/2,C=(p+d)/2,b=(S+=(o[1]-o[3])/2*w)*u-(C+=(o[0]-o[2])/2*w)*h,T=C*u+S*h,E=this.getConstrainedCenter([b,T],w),P=i.callback?i.callback:v;void 0!==i.duration?this.animateInternal({resolution:w,center:E,duration:i.duration,easing:i.easing},P):(this.targetResolution_=w,this.targetCenter_=E,this.applyTargetState_(!1,!0),bl(P,!0))},e.prototype.centerOn=function(t,e,i){this.centerOnInternal(Ci(t,this.getProjection()),e,i)},e.prototype.centerOnInternal=function(t,e,i){this.setCenterInternal(El(t,e,i,this.getResolution(),this.getRotation()))},e.prototype.calculateCenterShift=function(t,e,i,r){var n,o=this.padding;if(o&&t){var a=this.getViewportSizeMinusPadding_(-i),s=El(t,r,[a[0]/2+o[3],a[1]/2+o[0]],e,i);n=[t[0]-s[0],t[1]-s[1]]}return n},e.prototype.isDef=function(){return!!this.getCenterInternal()&&void 0!==this.getResolution()},e.prototype.adjustCenter=function(t){var e=Si(this.targetCenter_,this.getProjection());this.setCenter([e[0]+t[0],e[1]+t[1]])},e.prototype.adjustCenterInternal=function(t){var e=this.targetCenter_;this.setCenterInternal([e[0]+t[0],e[1]+t[1]])},e.prototype.adjustResolution=function(t,e){var i=e&&Ci(e,this.getProjection());this.adjustResolutionInternal(t,i)},e.prototype.adjustResolutionInternal=function(t,e){var i=this.getAnimating()||this.getInteracting(),r=this.getViewportSize_(this.getRotation()),n=this.constraints_.resolution(this.targetResolution_*t,0,r,i);e&&(this.targetCenter_=this.calculateCenterZoom(n,e)),this.targetResolution_*=t,this.applyTargetState_()},e.prototype.adjustZoom=function(t,e){this.adjustResolution(Math.pow(this.zoomFactor_,-t),e)},e.prototype.adjustRotation=function(t,e){e&&(e=Ci(e,this.getProjection())),this.adjustRotationInternal(t,e)},e.prototype.adjustRotationInternal=function(t,e){var i=this.getAnimating()||this.getInteracting(),r=this.constraints_.rotation(this.targetRotation_+t,i);e&&(this.targetCenter_=this.calculateCenterRotate(r,e)),this.targetRotation_+=t,this.applyTargetState_()},e.prototype.setCenter=function(t){this.setCenterInternal(Ci(t,this.getProjection()))},e.prototype.setCenterInternal=function(t){this.targetCenter_=t,this.applyTargetState_()},e.prototype.setHint=function(t,e){return this.hints_[t]+=e,this.changed(),this.hints_[t]},e.prototype.setResolution=function(t){this.targetResolution_=t,this.applyTargetState_()},e.prototype.setRotation=function(t){this.targetRotation_=t,this.applyTargetState_()},e.prototype.setZoom=function(t){this.setResolution(this.getResolutionForZoom(t))},e.prototype.applyTargetState_=function(t,e){var i=this.getAnimating()||this.getInteracting()||e,r=this.constraints_.rotation(this.targetRotation_,i),n=this.getViewportSize_(r),o=this.constraints_.resolution(this.targetResolution_,0,n,i),a=this.constraints_.center(this.targetCenter_,o,n,i,this.calculateCenterShift(this.targetCenter_,o,r,n));this.get(dl)!==r&&this.set(dl,r),this.get(fl)!==o&&this.set(fl,o),this.get(pl)&&ii(this.get(pl),a)||this.set(pl,a),this.getAnimating()&&!t&&this.cancelAnimations(),this.cancelAnchor_=void 0},e.prototype.resolveConstraints=function(t,e,i){var r=void 0!==t?t:200,n=e||0,o=this.constraints_.rotation(this.targetRotation_),a=this.getViewportSize_(o),s=this.constraints_.resolution(this.targetResolution_,n,a),l=this.constraints_.center(this.targetCenter_,s,a,!1,this.calculateCenterShift(this.targetCenter_,s,o,a));if(0===r&&!this.cancelAnchor_)return this.targetResolution_=s,this.targetRotation_=o,this.targetCenter_=l,void this.applyTargetState_();var u=i||(0===r?this.cancelAnchor_:void 0);this.cancelAnchor_=void 0,this.getResolution()===s&&this.getRotation()===o&&this.getCenterInternal()&&ii(this.getCenterInternal(),l)||(this.getAnimating()&&this.cancelAnimations(),this.animateInternal({rotation:o,center:l,resolution:s,duration:r,easing:Is,anchor:u}))},e.prototype.beginInteraction=function(){this.resolveConstraints(0),this.setHint(Ea,1)},e.prototype.endInteraction=function(t,e,i){var r=i&&Ci(i,this.getProjection());this.endInteractionInternal(t,e,r)},e.prototype.endInteractionInternal=function(t,e,i){this.setHint(Ea,-1),this.resolveConstraints(t,e,i)},e.prototype.getConstrainedCenter=function(t,e){var i=this.getViewportSize_(this.getRotation());return this.constraints_.center(t,e||this.getResolution(),i)},e.prototype.getConstrainedZoom=function(t,e){var i=this.getResolutionForZoom(t);return this.getZoomForResolution(this.getConstrainedResolution(i,e))},e.prototype.getConstrainedResolution=function(t,e){var i=e||0,r=this.getViewportSize_(this.getRotation());return this.constraints_.resolution(t,i,r)},e}(K);function bl(t,e){setTimeout((function(){t(e)}),0)}function Tl(t){return!(t.sourceCenter&&t.targetCenter&&!ii(t.sourceCenter,t.targetCenter))&&(t.sourceResolution===t.targetResolution&&t.sourceRotation===t.targetRotation)}function El(t,e,i,r,n){var o=Math.cos(-n),a=Math.sin(-n),s=t[0]*o-t[1]*a,l=t[1]*o+t[0]*a;return[(s+=(e[0]/2-i[0])*r)*o-(l+=(i[1]-e[1]/2)*r)*(a=-a),l*o+s*a]}var Pl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Rl=function(t){function e(e){var i=t.call(this)||this,r=function(t){var e=null;void 0!==t.keyboardEventTarget&&(e="string"==typeof t.keyboardEventTarget?document.getElementById(t.keyboardEventTarget):t.keyboardEventTarget);var i,r,n,o={},a=t.layers&&"function"==typeof t.layers.getLayers?t.layers:new Ys({layers:t.layers});o[ol]=a,o[sl]=t.target,o[ll]=void 0!==t.view?t.view:new Cl,void 0!==t.controls&&(Array.isArray(t.controls)?i=new et(t.controls.slice()):(it("function"==typeof t.controls.getArray,47),i=t.controls));void 0!==t.interactions&&(Array.isArray(t.interactions)?r=new et(t.interactions.slice()):(it("function"==typeof t.interactions.getArray,48),r=t.interactions));void 0!==t.overlays?Array.isArray(t.overlays)?n=new et(t.overlays.slice()):(it("function"==typeof t.overlays.getArray,49),n=t.overlays):n=new et;return{controls:i,interactions:r,keyboardEventTarget:e,overlays:n,values:o}}(e);return i.boundHandleBrowserEvent_=i.handleBrowserEvent.bind(i),i.maxTilesLoading_=void 0!==e.maxTilesLoading?e.maxTilesLoading:16,i.pixelRatio_=void 0!==e.pixelRatio?e.pixelRatio:$r,i.postRenderTimeoutHandle_,i.animationDelayKey_,i.animationDelay_=function(){this.animationDelayKey_=void 0,this.renderFrame_(Date.now())}.bind(i),i.coordinateToPixelTransform_=[1,0,0,1,0,0],i.pixelToCoordinateTransform_=[1,0,0,1,0,0],i.frameIndex_=0,i.frameState_=null,i.previousExtent_=null,i.viewPropertyListenerKey_=null,i.viewChangeListenerKey_=null,i.layerGroupPropertyListenerKeys_=null,i.viewport_=document.createElement("div"),i.viewport_.className="ol-viewport"+("ontouchstart"in window?" ol-touch":""),i.viewport_.style.position="relative",i.viewport_.style.overflow="hidden",i.viewport_.style.width="100%",i.viewport_.style.height="100%",i.overlayContainer_=document.createElement("div"),i.overlayContainer_.style.position="absolute",i.overlayContainer_.style.zIndex="0",i.overlayContainer_.style.width="100%",i.overlayContainer_.style.height="100%",i.overlayContainer_.style.pointerEvents="none",i.overlayContainer_.className="ol-overlaycontainer",i.viewport_.appendChild(i.overlayContainer_),i.overlayContainerStopEvent_=document.createElement("div"),i.overlayContainerStopEvent_.style.position="absolute",i.overlayContainerStopEvent_.style.zIndex="0",i.overlayContainerStopEvent_.style.width="100%",i.overlayContainerStopEvent_.style.height="100%",i.overlayContainerStopEvent_.style.pointerEvents="none",i.overlayContainerStopEvent_.className="ol-overlaycontainer-stopevent",i.viewport_.appendChild(i.overlayContainerStopEvent_),i.mapBrowserEventHandler_=null,i.moveTolerance_=e.moveTolerance,i.keyboardEventTarget_=r.keyboardEventTarget,i.keyHandlerKeys_=null,i.controls=r.controls||new et,i.interactions=r.interactions||new et,i.overlays_=r.overlays,i.overlayIdIndex_={},i.renderer_=null,i.handleResize_,i.postRenderFunctions_=[],i.tileQueue_=new cl(i.getTilePriority.bind(i),i.handleTileChange_.bind(i)),i.addEventListener(H(ol),i.handleLayerGroupChanged_),i.addEventListener(H(ll),i.handleViewChanged_),i.addEventListener(H(al),i.handleSizeChanged_),i.addEventListener(H(sl),i.handleTargetChanged_),i.setProperties(r.values),i.controls.forEach(function(t){t.setMap(this)}.bind(i)),i.controls.addEventListener(q,function(t){t.element.setMap(this)}.bind(i)),i.controls.addEventListener(J,function(t){t.element.setMap(null)}.bind(i)),i.interactions.forEach(function(t){t.setMap(this)}.bind(i)),i.interactions.addEventListener(q,function(t){t.element.setMap(this)}.bind(i)),i.interactions.addEventListener(J,function(t){t.element.setMap(null)}.bind(i)),i.overlays_.forEach(i.addOverlayInternal_.bind(i)),i.overlays_.addEventListener(q,function(t){this.addOverlayInternal_(t.element)}.bind(i)),i.overlays_.addEventListener(J,function(t){var e=t.element.getId();void 0!==e&&delete this.overlayIdIndex_[e.toString()],t.element.setMap(null)}.bind(i)),i}return Pl(e,t),e.prototype.createRenderer=function(){throw new Error("Use a map type that has a createRenderer method")},e.prototype.addControl=function(t){this.getControls().push(t)},e.prototype.addInteraction=function(t){this.getInteractions().push(t)},e.prototype.addLayer=function(t){this.getLayerGroup().getLayers().push(t)},e.prototype.addOverlay=function(t){this.getOverlays().push(t)},e.prototype.addOverlayInternal_=function(t){var e=t.getId();void 0!==e&&(this.overlayIdIndex_[e.toString()]=t),t.setMap(this)},e.prototype.disposeInternal=function(){this.setTarget(null),t.prototype.disposeInternal.call(this)},e.prototype.forEachFeatureAtPixel=function(t,e,i){if(this.frameState_){var r=this.getCoordinateFromPixelInternal(t),n=void 0!==(i=void 0!==i?i:{}).hitTolerance?i.hitTolerance:0,o=void 0!==i.layerFilter?i.layerFilter:_,a=!1!==i.checkWrapped;return this.renderer_.forEachFeatureAtCoordinate(r,this.frameState_,n,a,e,null,o,null)}},e.prototype.getFeaturesAtPixel=function(t,e){var i=[];return this.forEachFeatureAtPixel(t,(function(t){i.push(t)}),e),i},e.prototype.forEachLayerAtPixel=function(t,e,i){if(this.frameState_){var r=i||{},n=void 0!==r.hitTolerance?r.hitTolerance:0,o=r.layerFilter||_;return this.renderer_.forEachLayerAtPixel(t,this.frameState_,n,e,o)}},e.prototype.hasFeatureAtPixel=function(t,e){if(!this.frameState_)return!1;var i=this.getCoordinateFromPixelInternal(t),r=void 0!==(e=void 0!==e?e:{}).layerFilter?e.layerFilter:_,n=void 0!==e.hitTolerance?e.hitTolerance:0,o=!1!==e.checkWrapped;return this.renderer_.hasFeatureAtCoordinate(i,this.frameState_,n,o,r,null)},e.prototype.getEventCoordinate=function(t){return this.getCoordinateFromPixel(this.getEventPixel(t))},e.prototype.getEventCoordinateInternal=function(t){return this.getCoordinateFromPixelInternal(this.getEventPixel(t))},e.prototype.getEventPixel=function(t){var e=this.viewport_.getBoundingClientRect(),i="changedTouches"in t?t.changedTouches[0]:t;return[i.clientX-e.left,i.clientY-e.top]},e.prototype.getTarget=function(){return this.get(sl)},e.prototype.getTargetElement=function(){var t=this.getTarget();return void 0!==t?"string"==typeof t?document.getElementById(t):t:null},e.prototype.getCoordinateFromPixel=function(t){return Si(this.getCoordinateFromPixelInternal(t),this.getView().getProjection())},e.prototype.getCoordinateFromPixelInternal=function(t){var e=this.frameState_;return e?Rt(e.pixelToCoordinateTransform,t.slice()):null},e.prototype.getControls=function(){return this.controls},e.prototype.getOverlays=function(){return this.overlays_},e.prototype.getOverlayById=function(t){var e=this.overlayIdIndex_[t.toString()];return void 0!==e?e:null},e.prototype.getInteractions=function(){return this.interactions},e.prototype.getLayerGroup=function(){return this.get(ol)},e.prototype.getLayers=function(){return this.getLayerGroup().getLayers()},e.prototype.getLoading=function(){for(var t=this.getLayerGroup().getLayerStatesArray(),e=0,i=t.length;e<i;++e){var r=t[e].layer.getSource();if(r&&r.loading)return!0}return!1},e.prototype.getPixelFromCoordinate=function(t){var e=Ci(t,this.getView().getProjection());return this.getPixelFromCoordinateInternal(e)},e.prototype.getPixelFromCoordinateInternal=function(t){var e=this.frameState_;return e?Rt(e.coordinateToPixelTransform,t.slice(0,2)):null},e.prototype.getRenderer=function(){return this.renderer_},e.prototype.getSize=function(){return this.get(al)},e.prototype.getView=function(){return this.get(ll)},e.prototype.getViewport=function(){return this.viewport_},e.prototype.getOverlayContainer=function(){return this.overlayContainer_},e.prototype.getOverlayContainerStopEvent=function(){return this.overlayContainerStopEvent_},e.prototype.getOwnerDocument=function(){return this.getTargetElement()?this.getTargetElement().ownerDocument:document},e.prototype.getTilePriority=function(t,e,i,r){return function(t,e,i,r,n){if(!t||!(i in t.wantedTiles))return 1/0;if(!t.wantedTiles[i][e.getKey()])return 1/0;var o=t.viewState.center,a=r[0]-o[0],s=r[1]-o[1];return 65536*Math.log(n)+Math.sqrt(a*a+s*s)/n}(this.frameState_,t,e,i,r)},e.prototype.handleBrowserEvent=function(t,e){var i=e||t.type,r=new qs(i,this,t);this.handleMapBrowserEvent(r)},e.prototype.handleMapBrowserEvent=function(t){if(this.frameState_){var e=t.originalEvent,i=e.type;if(i===$s||i===G||i===L){var r=this.getOwnerDocument(),n=this.viewport_.getRootNode?this.viewport_.getRootNode():r,o="host"in n?n.elementFromPoint(e.clientX,e.clientY):e.target;if(this.overlayContainerStopEvent_.contains(o)||!(n===r?r.documentElement:n).contains(o))return}if(t.frameState=this.frameState_,!1!==this.dispatchEvent(t))for(var a=this.getInteractions().getArray().slice(),s=a.length-1;s>=0;s--){var l=a[s];if(l.getMap()===this&&l.getActive()&&this.getTargetElement())if(!l.handleEvent(t)||t.propagationStopped)break}}},e.prototype.handlePostRender=function(){var t=this.frameState_,e=this.tileQueue_;if(!e.isEmpty()){var i=this.maxTilesLoading_,r=i;if(t){var n=t.viewHints;if(n[Ta]||n[Ea]){var o=!en&&Date.now()-t.time>8;i=o?0:8,r=o?0:2}}e.getTilesLoading()<i&&(e.reprioritize(),e.loadMoreTiles(i,r))}!t||!this.hasListener(Cr)||t.animate||this.tileQueue_.getTilesLoading()||this.getLoading()||this.renderer_.dispatchRenderEvent(Cr,t);for(var a=this.postRenderFunctions_,s=0,l=a.length;s<l;++s)a[s](this,t);a.length=0},e.prototype.handleSizeChanged_=function(){this.getView()&&!this.getView().getAnimating()&&this.getView().resolveConstraints(0),this.render()},e.prototype.handleTargetChanged_=function(){var t;if(this.getTarget()&&(t=this.getTargetElement()),this.mapBrowserEventHandler_){for(var e=0,i=this.keyHandlerKeys_.length;e<i;++e)B(this.keyHandlerKeys_[e]);this.keyHandlerKeys_=null,this.viewport_.removeEventListener(P,this.boundHandleBrowserEvent_),this.viewport_.removeEventListener(G,this.boundHandleBrowserEvent_),void 0!==this.handleResize_&&(removeEventListener(D,this.handleResize_,!1),this.handleResize_=void 0),this.mapBrowserEventHandler_.dispose(),this.mapBrowserEventHandler_=null,an(this.viewport_)}if(t){for(var r in t.appendChild(this.viewport_),this.renderer_||(this.renderer_=this.createRenderer()),this.mapBrowserEventHandler_=new el(this,this.moveTolerance_),Js)this.mapBrowserEventHandler_.addEventListener(Js[r],this.handleMapBrowserEvent.bind(this));this.viewport_.addEventListener(P,this.boundHandleBrowserEvent_,!1),this.viewport_.addEventListener(G,this.boundHandleBrowserEvent_,!!rn&&{passive:!1});var n=this.keyboardEventTarget_?this.keyboardEventTarget_:t;this.keyHandlerKeys_=[N(n,L,this.handleBrowserEvent,this),N(n,A,this.handleBrowserEvent,this)],this.handleResize_||(this.handleResize_=this.updateSize.bind(this),window.addEventListener(D,this.handleResize_,!1))}else this.renderer_&&(clearTimeout(this.postRenderTimeoutHandle_),this.postRenderTimeoutHandle_=void 0,this.postRenderFunctions_.length=0,this.renderer_.dispose(),this.renderer_=null),this.animationDelayKey_&&(cancelAnimationFrame(this.animationDelayKey_),this.animationDelayKey_=void 0);this.updateSize()},e.prototype.handleTileChange_=function(){this.render()},e.prototype.handleViewPropertyChanged_=function(){this.render()},e.prototype.handleViewChanged_=function(){this.viewPropertyListenerKey_&&(B(this.viewPropertyListenerKey_),this.viewPropertyListenerKey_=null),this.viewChangeListenerKey_&&(B(this.viewChangeListenerKey_),this.viewChangeListenerKey_=null);var t=this.getView();t&&(this.updateViewportSize_(),this.viewPropertyListenerKey_=N(t,l,this.handleViewPropertyChanged_,this),this.viewChangeListenerKey_=N(t,T,this.handleViewPropertyChanged_,this),t.resolveConstraints(0)),this.render()},e.prototype.handleLayerGroupChanged_=function(){this.layerGroupPropertyListenerKeys_&&(this.layerGroupPropertyListenerKeys_.forEach(B),this.layerGroupPropertyListenerKeys_=null);var t=this.getLayerGroup();t&&(this.layerGroupPropertyListenerKeys_=[N(t,l,this.render,this),N(t,T,this.render,this)]),this.render()},e.prototype.isRendered=function(){return!!this.frameState_},e.prototype.renderSync=function(){this.animationDelayKey_&&cancelAnimationFrame(this.animationDelayKey_),this.animationDelay_()},e.prototype.redrawText=function(){for(var t=this.getLayerGroup().getLayerStatesArray(),e=0,i=t.length;e<i;++e){var r=t[e].layer;r.hasRenderer()&&r.getRenderer().handleFontsChanged()}},e.prototype.render=function(){this.renderer_&&void 0===this.animationDelayKey_&&(this.animationDelayKey_=requestAnimationFrame(this.animationDelay_))},e.prototype.removeControl=function(t){return this.getControls().remove(t)},e.prototype.removeInteraction=function(t){return this.getInteractions().remove(t)},e.prototype.removeLayer=function(t){return this.getLayerGroup().getLayers().remove(t)},e.prototype.removeOverlay=function(t){return this.getOverlays().remove(t)},e.prototype.renderFrame_=function(t){var e=this,i=this.getSize(),r=this.getView(),n=this.frameState_,o=null;if(void 0!==i&&function(t){return t[0]>0&&t[1]>0}(i)&&r&&r.isDef()){var a=r.getHints(this.frameState_?this.frameState_.viewHints:void 0),s=r.getState();o={animate:!1,coordinateToPixelTransform:this.coordinateToPixelTransform_,declutterTree:null,extent:de(s.center,s.resolution,s.rotation,i),index:this.frameIndex_++,layerIndex:0,layerStatesArray:this.getLayerGroup().getLayerStatesArray(),pixelRatio:this.pixelRatio_,pixelToCoordinateTransform:this.pixelToCoordinateTransform_,postRenderFunctions:[],size:i,tileQueue:this.tileQueue_,time:t,usedTiles:{},viewState:s,viewHints:a,wantedTiles:{}}}if(this.frameState_=o,this.renderer_.renderFrame(o),o){if(o.animate&&this.render(),Array.prototype.push.apply(this.postRenderFunctions_,o.postRenderFunctions),n)(!this.previousExtent_||!we(this.previousExtent_)&&!re(o.extent,this.previousExtent_))&&(this.dispatchEvent(new Zs(rl,this,n)),this.previousExtent_=$t(this.previousExtent_));this.previousExtent_&&!o.viewHints[Ta]&&!o.viewHints[Ea]&&!re(o.extent,this.previousExtent_)&&(this.dispatchEvent(new Zs(nl,this,o)),Wt(o.extent,this.previousExtent_))}this.dispatchEvent(new Zs(il,this,o)),this.postRenderTimeoutHandle_||(this.postRenderTimeoutHandle_=setTimeout((function(){e.postRenderTimeoutHandle_=void 0,e.handlePostRender()}),0))},e.prototype.setLayerGroup=function(t){this.set(ol,t)},e.prototype.setSize=function(t){this.set(al,t)},e.prototype.setTarget=function(t){this.set(sl,t)},e.prototype.setView=function(t){this.set(ll,t)},e.prototype.updateSize=function(){var t=this.getTargetElement();if(t){var e=getComputedStyle(t);this.setSize([t.offsetWidth-parseFloat(e.borderLeftWidth)-parseFloat(e.paddingLeft)-parseFloat(e.paddingRight)-parseFloat(e.borderRightWidth),t.offsetHeight-parseFloat(e.borderTopWidth)-parseFloat(e.paddingTop)-parseFloat(e.paddingBottom)-parseFloat(e.borderBottomWidth)])}else this.setSize(void 0);this.updateViewportSize_()},e.prototype.updateViewportSize_=function(){var t=this.getView();if(t){var e=void 0,i=getComputedStyle(this.viewport_);i.width&&i.height&&(e=[parseInt(i.width,10),parseInt(i.height,10)]),t.setViewportSize(e)}},e}(K);var Fl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ol=function(t){function e(e){var i=t.call(this)||this,r=e.element;return!r||e.target||r.style.pointerEvents||(r.style.pointerEvents="auto"),i.element=r||null,i.target_=null,i.map_=null,i.listenerKeys=[],e.render&&(i.render=e.render),e.target&&i.setTarget(e.target),i}return Fl(e,t),e.prototype.disposeInternal=function(){an(this.element),t.prototype.disposeInternal.call(this)},e.prototype.getMap=function(){return this.map_},e.prototype.setMap=function(t){this.map_&&an(this.element);for(var e=0,i=this.listenerKeys.length;e<i;++e)B(this.listenerKeys[e]);(this.listenerKeys.length=0,this.map_=t,this.map_)&&((this.target_?this.target_:t.getOverlayContainerStopEvent()).appendChild(this.element),this.render!==v&&this.listenerKeys.push(N(t,il,this.render,this)),t.render())},e.prototype.render=function(t){},e.prototype.setTarget=function(t){this.target_="string"==typeof t?document.getElementById(t):t},e}(K),Il=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ml=function(t){function e(e){var i=this,r=e||{};(i=t.call(this,{element:document.createElement("div"),render:r.render,target:r.target})||this).ulElement_=document.createElement("ul"),i.collapsed_=void 0===r.collapsed||r.collapsed,i.userCollapsed_=i.collapsed_,i.overrideCollapsible_=void 0!==r.collapsible,i.collapsible_=void 0===r.collapsible||r.collapsible,i.collapsible_||(i.collapsed_=!1);var n=void 0!==r.className?r.className:"ol-attribution",o=void 0!==r.tipLabel?r.tipLabel:"Attributions",a=void 0!==r.expandClassName?r.expandClassName:n+"-expand",s=void 0!==r.collapseLabel?r.collapseLabel:"»",l=void 0!==r.collapseClassName?r.collapseClassName:n+"-collpase";"string"==typeof s?(i.collapseLabel_=document.createElement("span"),i.collapseLabel_.textContent=s,i.collapseLabel_.className=l):i.collapseLabel_=s;var u=void 0!==r.label?r.label:"i";"string"==typeof u?(i.label_=document.createElement("span"),i.label_.textContent=u,i.label_.className=a):i.label_=u;var h=i.collapsible_&&!i.collapsed_?i.collapseLabel_:i.label_,c=document.createElement("button");c.setAttribute("type","button"),c.title=o,c.appendChild(h),c.addEventListener(R,i.handleClick_.bind(i),!1);var p=n+" ol-unselectable ol-control"+(i.collapsed_&&i.collapsible_?" ol-collapsed":"")+(i.collapsible_?"":" ol-uncollapsible"),f=i.element;return f.className=p,f.appendChild(i.ulElement_),f.appendChild(c),i.renderedAttributions_=[],i.renderedVisible_=!0,i}return Il(e,t),e.prototype.collectSourceAttributions_=function(t){for(var e={},i=[],r=!0,n=t.layerStatesArray,o=0,a=n.length;o<a;++o){var s=n[o];if(eo(s,t.viewState)){var l=s.layer.getSource();if(l){var u=l.getAttributions();if(u){var h=u(t);if(h)if(r=r&&!1!==l.getAttributionsCollapsible(),Array.isArray(h))for(var c=0,p=h.length;c<p;++c)h[c]in e||(i.push(h[c]),e[h[c]]=!0);else h in e||(i.push(h),e[h]=!0)}}}}return this.overrideCollapsible_||this.setCollapsible(r),i},e.prototype.updateElement_=function(t){if(t){var e=this.collectSourceAttributions_(t),i=e.length>0;if(this.renderedVisible_!=i&&(this.element.style.display=i?"":"none",this.renderedVisible_=i),!g(e,this.renderedAttributions_)){!function(t){for(;t.lastChild;)t.removeChild(t.lastChild)}(this.ulElement_);for(var r=0,n=e.length;r<n;++r){var o=document.createElement("li");o.innerHTML=e[r],this.ulElement_.appendChild(o)}this.renderedAttributions_=e}}else this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1)},e.prototype.handleClick_=function(t){t.preventDefault(),this.handleToggle_(),this.userCollapsed_=this.collapsed_},e.prototype.handleToggle_=function(){this.element.classList.toggle("ol-collapsed"),this.collapsed_?on(this.collapseLabel_,this.label_):on(this.label_,this.collapseLabel_),this.collapsed_=!this.collapsed_},e.prototype.getCollapsible=function(){return this.collapsible_},e.prototype.setCollapsible=function(t){this.collapsible_!==t&&(this.collapsible_=t,this.element.classList.toggle("ol-uncollapsible"),this.userCollapsed_&&this.handleToggle_())},e.prototype.setCollapsed=function(t){this.userCollapsed_=t,this.collapsible_&&this.collapsed_!==t&&this.handleToggle_()},e.prototype.getCollapsed=function(){return this.collapsed_},e.prototype.render=function(t){this.updateElement_(t.frameState)},e}(Ol),Ll=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Al=function(t){function e(e){var i=this,r=e||{};i=t.call(this,{element:document.createElement("div"),render:r.render,target:r.target})||this;var n=void 0!==r.className?r.className:"ol-rotate",o=void 0!==r.label?r.label:"⇧",a=void 0!==r.compassClassName?r.compassClassName:"ol-compass";i.label_=null,"string"==typeof o?(i.label_=document.createElement("span"),i.label_.className=a,i.label_.textContent=o):(i.label_=o,i.label_.classList.add(a));var s=r.tipLabel?r.tipLabel:"Reset rotation",l=document.createElement("button");l.className=n+"-reset",l.setAttribute("type","button"),l.title=s,l.appendChild(i.label_),l.addEventListener(R,i.handleClick_.bind(i),!1);var u=n+" ol-unselectable ol-control",h=i.element;return h.className=u,h.appendChild(l),i.callResetNorth_=r.resetNorth?r.resetNorth:void 0,i.duration_=void 0!==r.duration?r.duration:250,i.autoHide_=void 0===r.autoHide||r.autoHide,i.rotation_=void 0,i.autoHide_&&i.element.classList.add("ol-hidden"),i}return Ll(e,t),e.prototype.handleClick_=function(t){t.preventDefault(),void 0!==this.callResetNorth_?this.callResetNorth_():this.resetNorth_()},e.prototype.resetNorth_=function(){var t=this.getMap().getView();if(t){var e=t.getRotation();void 0!==e&&(this.duration_>0&&e%(2*Math.PI)!=0?t.animate({rotation:0,duration:this.duration_,easing:Is}):t.setRotation(0))}},e.prototype.render=function(t){var e=t.frameState;if(e){var i=e.viewState.rotation;if(i!=this.rotation_){var r="rotate("+i+"rad)";if(this.autoHide_){var n=this.element.classList.contains("ol-hidden");n||0!==i?n&&0!==i&&this.element.classList.remove("ol-hidden"):this.element.classList.add("ol-hidden")}this.label_.style.transform=r}this.rotation_=i}},e}(Ol),kl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Dl=function(t){function e(e){var i=this,r=e||{};i=t.call(this,{element:document.createElement("div"),target:r.target})||this;var n=void 0!==r.className?r.className:"ol-zoom",o=void 0!==r.delta?r.delta:1,a=void 0!==r.zoomInClassName?r.zoomInClassName:n+"-in",s=void 0!==r.zoomOutClassName?r.zoomOutClassName:n+"-out",l=void 0!==r.zoomInLabel?r.zoomInLabel:"+",u=void 0!==r.zoomOutLabel?r.zoomOutLabel:"",h=void 0!==r.zoomInTipLabel?r.zoomInTipLabel:"Zoom in",c=void 0!==r.zoomOutTipLabel?r.zoomOutTipLabel:"Zoom out",p=document.createElement("button");p.className=a,p.setAttribute("type","button"),p.title=h,p.appendChild("string"==typeof l?document.createTextNode(l):l),p.addEventListener(R,i.handleClick_.bind(i,o),!1);var f=document.createElement("button");f.className=s,f.setAttribute("type","button"),f.title=c,f.appendChild("string"==typeof u?document.createTextNode(u):u),f.addEventListener(R,i.handleClick_.bind(i,-o),!1);var d=n+" ol-unselectable ol-control",g=i.element;return g.className=d,g.appendChild(p),g.appendChild(f),i.duration_=void 0!==r.duration?r.duration:250,i}return kl(e,t),e.prototype.handleClick_=function(t,e){e.preventDefault(),this.zoomByDelta_(t)},e.prototype.zoomByDelta_=function(t){var e=this.getMap().getView();if(e){var i=e.getZoom();if(void 0!==i){var r=e.getConstrainedZoom(i+t);this.duration_>0?(e.getAnimating()&&e.cancelAnimations(),e.animate({zoom:r,duration:this.duration_,easing:Is})):e.setZoom(r)}}},e}(Ol),jl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Gl="degrees",Nl="imperial",zl="nautical",Bl="metric",Ul="us",Vl=[1,2,5],Xl=function(t){function e(e){var i=this,r=e||{},n=void 0!==r.className?r.className:r.bar?"ol-scale-bar":"ol-scale-line";return(i=t.call(this,{element:document.createElement("div"),render:r.render,target:r.target})||this).innerElement_=document.createElement("div"),i.innerElement_.className=n+"-inner",i.element.className=n+" ol-unselectable",i.element.appendChild(i.innerElement_),i.viewState_=null,i.minWidth_=void 0!==r.minWidth?r.minWidth:64,i.renderedVisible_=!1,i.renderedWidth_=void 0,i.renderedHTML_="",i.addEventListener(H("units"),i.handleUnitsChanged_),i.setUnits(r.units||Bl),i.scaleBar_=r.bar||!1,i.scaleBarSteps_=r.steps||4,i.scaleBarText_=r.text||!1,i.dpi_=r.dpi||void 0,i}return jl(e,t),e.prototype.getUnits=function(){return this.get("units")},e.prototype.handleUnitsChanged_=function(){this.updateElement_()},e.prototype.setUnits=function(t){this.set("units",t)},e.prototype.setDpi=function(t){this.dpi_=t},e.prototype.updateElement_=function(){var t=this.viewState_;if(t){var e=t.center,i=t.projection,r=this.getUnits(),n=r==Gl?vt:xt,o=pi(i,t.resolution,e,n),a=this.minWidth_*(this.dpi_||25.4/.28)/(25.4/.28),s=a*o,l="";if(r==Gl){var u=Ct[vt];(s*=u)<u/60?(l="″",o*=3600):s<u?(l="",o*=60):l="°"}else r==Nl?s<.9144?(l="in",o/=.0254):s<1609.344?(l="ft",o/=.3048):(l="mi",o/=1609.344):r==zl?(o/=1852,l="nm"):r==Bl?s<.001?(l="μm",o*=1e6):s<1?(l="mm",o*=1e3):s<1e3?l="m":(l="km",o/=1e3):r==Ul?s<.9144?(l="in",o*=39.37):s<1609.344?(l="ft",o/=.30480061):(l="mi",o/=1609.3472):it(!1,33);for(var h,c,p,f,d=3*Math.floor(Math.log(a*o)/Math.log(10));;){p=Math.floor(d/3);var g=Math.pow(10,p);if(h=Vl[(d%3+3)%3]*g,c=Math.round(h/o),isNaN(c))return this.element.style.display="none",void(this.renderedVisible_=!1);if(c>=a)break;++d}f=this.scaleBar_?this.createScaleBar(c,h,l):h.toFixed(p<0?-p:0)+" "+l,this.renderedHTML_!=f&&(this.innerElement_.innerHTML=f,this.renderedHTML_=f),this.renderedWidth_!=c&&(this.innerElement_.style.width=c+"px",this.renderedWidth_=c),this.renderedVisible_||(this.element.style.display="",this.renderedVisible_=!0)}else this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1)},e.prototype.createScaleBar=function(t,e,i){for(var r="1 : "+Math.round(this.getScaleForResolution()).toLocaleString(),n=[],o=t/this.scaleBarSteps_,a="#ffffff",s=0;s<this.scaleBarSteps_;s++)0===s&&n.push(this.createMarker("absolute",s)),n.push('<div><div class="ol-scale-singlebar" style="width: '+o+"px;background-color: "+a+';"></div>'+this.createMarker("relative",s)+(s%2==0||2===this.scaleBarSteps_?this.createStepText(s,t,!1,e,i):"")+"</div>"),s===this.scaleBarSteps_-1&&n.push(this.createStepText(s+1,t,!0,e,i)),a="#ffffff"===a?"#000000":"#ffffff";return'<div style="display: flex;">'+(this.scaleBarText_?'<div class="ol-scale-text" style="width: '+t+'px;">'+r+"</div>":"")+n.join("")+"</div>"},e.prototype.createMarker=function(t,e){return'<div class="ol-scale-step-marker" style="position: '+t+";top: "+("absolute"===t?3:-10)+'px;"></div>'},e.prototype.createStepText=function(t,e,i,r,n){var o=(0===t?0:Math.round(r/this.scaleBarSteps_*t*100)/100)+(0===t?"":" "+n);return'<div class="ol-scale-step-text" style="margin-left: '+(0===t?-3:e/this.scaleBarSteps_*-1)+"px;text-align: "+(0===t?"left":"center")+"; min-width: "+(0===t?0:e/this.scaleBarSteps_*2)+"px;left: "+(i?e+"px":"unset")+';">'+o+"</div>"},e.prototype.getScaleForResolution=function(){var t=pi(this.viewState_.projection,this.viewState_.resolution,this.viewState_.center),e=this.dpi_||25.4/.28,i=this.viewState_.projection.getMetersPerUnit();return parseFloat(t.toString())*i*(1e3/25.4)*e},e.prototype.render=function(t){var e=t.frameState;this.viewState_=e?e.viewState:null,this.updateElement_()},e}(Ol);var Wl="active",Yl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Kl=function(t){function e(e){var i=t.call(this)||this;return e&&e.handleEvent&&(i.handleEvent=e.handleEvent),i.map_=null,i.setActive(!0),i}return Yl(e,t),e.prototype.getActive=function(){return this.get(Wl)},e.prototype.getMap=function(){return this.map_},e.prototype.handleEvent=function(t){return!0},e.prototype.setActive=function(t){this.set(Wl,t)},e.prototype.setMap=function(t){this.map_=t},e}(K);function Zl(t,e,i,r){var n=t.getZoom();if(void 0!==n){var o=t.getConstrainedZoom(n+e),a=t.getResolutionForZoom(o);t.getAnimating()&&t.cancelAnimations(),t.animate({resolution:a,anchor:i,duration:void 0!==r?r:250,easing:Is})}}var Hl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ql=function(t){function e(e){var i=t.call(this)||this,r=e||{};return i.delta_=r.delta?r.delta:1,i.duration_=void 0!==r.duration?r.duration:250,i}return Hl(e,t),e.prototype.handleEvent=function(t){var e=!1;if(t.type==Js.DBLCLICK){var i=t.originalEvent,r=t.map,n=t.coordinate,o=i.shiftKey?-this.delta_:this.delta_;Zl(r.getView(),o,n,this.duration_),i.preventDefault(),e=!0}return!e},e}(Kl),Jl=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ql=function(t){function e(e){var i=this,r=e||{};return i=t.call(this,r)||this,r.handleDownEvent&&(i.handleDownEvent=r.handleDownEvent),r.handleDragEvent&&(i.handleDragEvent=r.handleDragEvent),r.handleMoveEvent&&(i.handleMoveEvent=r.handleMoveEvent),r.handleUpEvent&&(i.handleUpEvent=r.handleUpEvent),r.stopDown&&(i.stopDown=r.stopDown),i.handlingDownUpSequence=!1,i.trackedPointers_={},i.targetPointers=[],i}return Jl(e,t),e.prototype.getPointerCount=function(){return this.targetPointers.length},e.prototype.handleDownEvent=function(t){return!1},e.prototype.handleDragEvent=function(t){},e.prototype.handleEvent=function(t){if(!t.originalEvent)return!0;var e=!1;if(this.updateTrackedPointers_(t),this.handlingDownUpSequence){if(t.type==Js.POINTERDRAG)this.handleDragEvent(t),t.originalEvent.preventDefault();else if(t.type==Js.POINTERUP){var i=this.handleUpEvent(t);this.handlingDownUpSequence=i&&this.targetPointers.length>0}}else if(t.type==Js.POINTERDOWN){var r=this.handleDownEvent(t);this.handlingDownUpSequence=r,e=this.stopDown(r)}else t.type==Js.POINTERMOVE&&this.handleMoveEvent(t);return!e},e.prototype.handleMoveEvent=function(t){},e.prototype.handleUpEvent=function(t){return!1},e.prototype.stopDown=function(t){return t},e.prototype.updateTrackedPointers_=function(t){if(function(t){var e=t.type;return e===Js.POINTERDOWN||e===Js.POINTERDRAG||e===Js.POINTERUP}(t)){var e=t.originalEvent,i=e.pointerId.toString();t.type==Js.POINTERUP?delete this.trackedPointers_[i]:(t.type==Js.POINTERDOWN||i in this.trackedPointers_)&&(this.trackedPointers_[i]=e),this.targetPointers=w(this.trackedPointers_)}},e}(Kl);function $l(t){for(var e=t.length,i=0,r=0,n=0;n<e;n++)i+=t[n].clientX,r+=t[n].clientY;return[i/e,r/e]}function tu(t){var e=arguments;return function(t){for(var i=!0,r=0,n=e.length;r<n&&(i=i&&e[r](t));++r);return i}}var eu=function(t){var e=t.originalEvent;return e.altKey&&!(e.metaKey||e.ctrlKey)&&e.shiftKey},iu=function(t){return!t.map.getTargetElement().hasAttribute("tabindex")||function(t){return t.target.getTargetElement().contains(document.activeElement)}(t)},ru=_,nu=function(t){var e=t.originalEvent;return 0==e.button&&!(Jr&&Qr&&e.ctrlKey)},ou=y,au=function(t){return t.type==Js.SINGLECLICK},su=function(t){var e=t.originalEvent;return!e.altKey&&!(e.metaKey||e.ctrlKey)&&!e.shiftKey},lu=function(t){var e=t.originalEvent;return!e.altKey&&!(e.metaKey||e.ctrlKey)&&e.shiftKey},uu=function(t){var e=t.originalEvent.target.tagName;return"INPUT"!==e&&"SELECT"!==e&&"TEXTAREA"!==e},hu=function(t){var e=t.originalEvent;return it(void 0!==e,56),"mouse"==e.pointerType},cu=function(t){var e=t.originalEvent;return it(void 0!==e,56),e.isPrimary&&0===e.button},pu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),fu=function(t){function e(e){var i=t.call(this,{stopDown:y})||this,r=e||{};i.kinetic_=r.kinetic,i.lastCentroid=null,i.lastPointersCount_,i.panning_=!1;var n=r.condition?r.condition:tu(su,cu);return i.condition_=r.onFocusOnly?tu(iu,n):n,i.noKinetic_=!1,i}return pu(e,t),e.prototype.handleDragEvent=function(t){this.panning_||(this.panning_=!0,this.getMap().getView().beginInteraction());var e=this.targetPointers,i=$l(e);if(e.length==this.lastPointersCount_){if(this.kinetic_&&this.kinetic_.update(i[0],i[1]),this.lastCentroid){var r=[this.lastCentroid[0]-i[0],i[1]-this.lastCentroid[1]],n=t.map.getView();!function(t,e){t[0]*=e,t[1]*=e}(r,n.getResolution()),ri(r,n.getRotation()),n.adjustCenterInternal(r)}}else this.kinetic_&&this.kinetic_.begin();this.lastCentroid=i,this.lastPointersCount_=e.length,t.originalEvent.preventDefault()},e.prototype.handleUpEvent=function(t){var e=t.map,i=e.getView();if(0===this.targetPointers.length){if(!this.noKinetic_&&this.kinetic_&&this.kinetic_.end()){var r=this.kinetic_.getDistance(),n=this.kinetic_.getAngle(),o=i.getCenterInternal(),a=e.getPixelFromCoordinateInternal(o),s=e.getCoordinateFromPixelInternal([a[0]-r*Math.cos(n),a[1]-r*Math.sin(n)]);i.animateInternal({center:i.getConstrainedCenter(s),duration:500,easing:Is})}return this.panning_&&(this.panning_=!1,i.endInteraction()),!1}return this.kinetic_&&this.kinetic_.begin(),this.lastCentroid=null,!0},e.prototype.handleDownEvent=function(t){if(this.targetPointers.length>0&&this.condition_(t)){var e=t.map.getView();return this.lastCentroid=null,e.getAnimating()&&e.cancelAnimations(),this.kinetic_&&this.kinetic_.begin(),this.noKinetic_=this.targetPointers.length>1,!0}return!1},e}(Ql),du=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),gu=function(t){function e(e){var i=this,r=e||{};return(i=t.call(this,{stopDown:y})||this).condition_=r.condition?r.condition:eu,i.lastAngle_=void 0,i.duration_=void 0!==r.duration?r.duration:250,i}return du(e,t),e.prototype.handleDragEvent=function(t){if(hu(t)){var e=t.map,i=e.getView();if(i.getConstraints().rotation!==xl){var r=e.getSize(),n=t.pixel,o=Math.atan2(r[1]/2-n[1],n[0]-r[0]/2);if(void 0!==this.lastAngle_){var a=o-this.lastAngle_;i.adjustRotationInternal(-a)}this.lastAngle_=o}}},e.prototype.handleUpEvent=function(t){return!hu(t)||(t.map.getView().endInteraction(this.duration_),!1)},e.prototype.handleDownEvent=function(t){return!!hu(t)&&(!(!nu(t)||!this.condition_(t))&&(t.map.getView().beginInteraction(),this.lastAngle_=void 0,!0))},e}(Ql),_u=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),yu=function(t){function e(e){var i=t.call(this)||this;return i.geometry_=null,i.element_=document.createElement("div"),i.element_.style.position="absolute",i.element_.style.pointerEvents="auto",i.element_.className="ol-box "+e,i.map_=null,i.startPixel_=null,i.endPixel_=null,i}return _u(e,t),e.prototype.disposeInternal=function(){this.setMap(null)},e.prototype.render_=function(){var t=this.startPixel_,e=this.endPixel_,i=this.element_.style;i.left=Math.min(t[0],e[0])+"px",i.top=Math.min(t[1],e[1])+"px",i.width=Math.abs(e[0]-t[0])+"px",i.height=Math.abs(e[1]-t[1])+"px"},e.prototype.setMap=function(t){if(this.map_){this.map_.getOverlayContainer().removeChild(this.element_);var e=this.element_.style;e.left="inherit",e.top="inherit",e.width="inherit",e.height="inherit"}this.map_=t,this.map_&&this.map_.getOverlayContainer().appendChild(this.element_)},e.prototype.setPixels=function(t,e){this.startPixel_=t,this.endPixel_=e,this.createOrUpdateGeometry(),this.render_()},e.prototype.createOrUpdateGeometry=function(){var t=this.startPixel_,e=this.endPixel_,i=[t,[t[0],e[1]],e,[e[0],t[1]]].map(this.map_.getCoordinateFromPixelInternal,this.map_);i[4]=i[0].slice(),this.geometry_?this.geometry_.setCoordinates([i]):this.geometry_=new _r([i])},e.prototype.getGeometry=function(){return this.geometry_},e}(u),vu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),mu="boxstart",xu="boxdrag",wu="boxend",Su="boxcancel",Cu=function(t){function e(e,i,r){var n=t.call(this,e)||this;return n.coordinate=i,n.mapBrowserEvent=r,n}return vu(e,t),e}(s),bu=function(t){function e(e){var i=t.call(this)||this,r=e||{};return i.box_=new yu(r.className||"ol-dragbox"),i.minArea_=void 0!==r.minArea?r.minArea:64,r.onBoxEnd&&(i.onBoxEnd=r.onBoxEnd),i.startPixel_=null,i.condition_=r.condition?r.condition:nu,i.boxEndCondition_=r.boxEndCondition?r.boxEndCondition:i.defaultBoxEndCondition,i}return vu(e,t),e.prototype.defaultBoxEndCondition=function(t,e,i){var r=i[0]-e[0],n=i[1]-e[1];return r*r+n*n>=this.minArea_},e.prototype.getGeometry=function(){return this.box_.getGeometry()},e.prototype.handleDragEvent=function(t){this.box_.setPixels(this.startPixel_,t.pixel),this.dispatchEvent(new Cu(xu,t.coordinate,t))},e.prototype.handleUpEvent=function(t){this.box_.setMap(null);var e=this.boxEndCondition_(t,this.startPixel_,t.pixel);return e&&this.onBoxEnd(t),this.dispatchEvent(new Cu(e?wu:Su,t.coordinate,t)),!1},e.prototype.handleDownEvent=function(t){return!!this.condition_(t)&&(this.startPixel_=t.pixel,this.box_.setMap(t.map),this.box_.setPixels(this.startPixel_,this.startPixel_),this.dispatchEvent(new Cu(mu,t.coordinate,t)),!0)},e.prototype.onBoxEnd=function(t){},e}(Ql),Tu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Eu=function(t){function e(e){var i=this,r=e||{},n=r.condition?r.condition:lu;return(i=t.call(this,{condition:n,className:r.className||"ol-dragzoom",minArea:r.minArea})||this).duration_=void 0!==r.duration?r.duration:200,i.out_=void 0!==r.out&&r.out,i}return Tu(e,t),e.prototype.onBoxEnd=function(t){var e=this.getMap(),i=e.getView(),r=e.getSize(),n=this.getGeometry().getExtent();if(this.out_){var o=i.calculateExtentInternal(r),a=ee([e.getPixelFromCoordinateInternal(he(n)),e.getPixelFromCoordinateInternal(ve(n))]);!function(t,e){var i=(t[2]-t[0])/2*(e-1),r=(t[3]-t[1])/2*(e-1);t[0]-=i,t[2]+=i,t[1]-=r,t[3]+=r}(o,1/i.getResolutionForExtentInternal(a,r)),n=o}var s=i.getConstrainedResolution(i.getResolutionForExtentInternal(n,r)),l=i.getConstrainedCenter(pe(n),s);i.animateInternal({resolution:s,center:l,duration:this.duration_,easing:Is})},e}(bu),Pu=37,Ru=38,Fu=39,Ou=40,Iu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Mu=function(t){function e(e){var i=t.call(this)||this,r=e||{};return i.defaultCondition_=function(t){return su(t)&&uu(t)},i.condition_=void 0!==r.condition?r.condition:i.defaultCondition_,i.duration_=void 0!==r.duration?r.duration:100,i.pixelDelta_=void 0!==r.pixelDelta?r.pixelDelta:128,i}return Iu(e,t),e.prototype.handleEvent=function(t){var e=!1;if(t.type==L){var i=t.originalEvent,r=i.keyCode;if(this.condition_(t)&&(r==Ou||r==Pu||r==Fu||r==Ru)){var n=t.map.getView(),o=n.getResolution()*this.pixelDelta_,a=0,s=0;r==Ou?s=-o:r==Pu?a=-o:r==Fu?a=o:s=o;var l=[a,s];ri(l,n.getRotation()),function(t,e,i){var r=t.getCenterInternal();if(r){var n=[r[0]+e[0],r[1]+e[1]];t.animateInternal({duration:void 0!==i?i:250,easing:Ls,center:t.getConstrainedCenter(n)})}}(n,l,this.duration_),i.preventDefault(),e=!0}}return!e},e}(Kl),Lu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Au=function(t){function e(e){var i=t.call(this)||this,r=e||{};return i.condition_=r.condition?r.condition:uu,i.delta_=r.delta?r.delta:1,i.duration_=void 0!==r.duration?r.duration:100,i}return Lu(e,t),e.prototype.handleEvent=function(t){var e=!1;if(t.type==L||t.type==A){var i=t.originalEvent,r=i.charCode;if(this.condition_(t)&&(r=="+".charCodeAt(0)||r=="-".charCodeAt(0))){var n=t.map,o=r=="+".charCodeAt(0)?this.delta_:-this.delta_;Zl(n.getView(),o,void 0,this.duration_),i.preventDefault(),e=!0}}return!e},e}(Kl),ku=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Du="trackpad",ju="wheel",Gu=function(t){function e(e){var i=this,r=e||{};(i=t.call(this,r)||this).totalDelta_=0,i.lastDelta_=0,i.maxDelta_=void 0!==r.maxDelta?r.maxDelta:1,i.duration_=void 0!==r.duration?r.duration:250,i.timeout_=void 0!==r.timeout?r.timeout:80,i.useAnchor_=void 0===r.useAnchor||r.useAnchor,i.constrainResolution_=void 0!==r.constrainResolution&&r.constrainResolution;var n=r.condition?r.condition:ru;return i.condition_=r.onFocusOnly?tu(iu,n):n,i.lastAnchor_=null,i.startTime_=void 0,i.timeoutId_,i.mode_=void 0,i.trackpadEventGap_=400,i.trackpadTimeoutId_,i.deltaPerZoom_=300,i}return ku(e,t),e.prototype.endInteraction_=function(){this.trackpadTimeoutId_=void 0,this.getMap().getView().endInteraction(void 0,this.lastDelta_?this.lastDelta_>0?1:-1:0,this.lastAnchor_)},e.prototype.handleEvent=function(t){if(!this.condition_(t))return!0;if(t.type!==G)return!0;var e,i=t.map,r=t.originalEvent;if(r.preventDefault(),this.useAnchor_&&(this.lastAnchor_=t.coordinate),t.type==G&&(e=r.deltaY,qr&&r.deltaMode===WheelEvent.DOM_DELTA_PIXEL&&(e/=$r),r.deltaMode===WheelEvent.DOM_DELTA_LINE&&(e*=40)),0===e)return!1;this.lastDelta_=e;var n=Date.now();void 0===this.startTime_&&(this.startTime_=n),(!this.mode_||n-this.startTime_>this.trackpadEventGap_)&&(this.mode_=Math.abs(e)<4?Du:ju);var o=i.getView();if(this.mode_===Du&&!o.getConstrainResolution()&&!this.constrainResolution_)return this.trackpadTimeoutId_?clearTimeout(this.trackpadTimeoutId_):(o.getAnimating()&&o.cancelAnimations(),o.beginInteraction()),this.trackpadTimeoutId_=setTimeout(this.endInteraction_.bind(this),this.timeout_),o.adjustZoom(-e/this.deltaPerZoom_,this.lastAnchor_),this.startTime_=n,!1;this.totalDelta_+=e;var a=Math.max(this.timeout_-(n-this.startTime_),0);return clearTimeout(this.timeoutId_),this.timeoutId_=setTimeout(this.handleWheelZoom_.bind(this,i),a),!1},e.prototype.handleWheelZoom_=function(t){var e=t.getView();e.getAnimating()&&e.cancelAnimations();var i=-be(this.totalDelta_,-this.maxDelta_*this.deltaPerZoom_,this.maxDelta_*this.deltaPerZoom_)/this.deltaPerZoom_;(e.getConstrainResolution()||this.constrainResolution_)&&(i=i?i>0?1:-1:0),Zl(e,i,this.lastAnchor_,this.duration_),this.mode_=void 0,this.totalDelta_=0,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_=void 0},e.prototype.setMouseAnchor=function(t){this.useAnchor_=t,t||(this.lastAnchor_=null)},e}(Kl),Nu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),zu=function(t){function e(e){var i=this,r=e||{},n=r;return n.stopDown||(n.stopDown=y),(i=t.call(this,n)||this).anchor_=null,i.lastAngle_=void 0,i.rotating_=!1,i.rotationDelta_=0,i.threshold_=void 0!==r.threshold?r.threshold:.3,i.duration_=void 0!==r.duration?r.duration:250,i}return Nu(e,t),e.prototype.handleDragEvent=function(t){var e=0,i=this.targetPointers[0],r=this.targetPointers[1],n=Math.atan2(r.clientY-i.clientY,r.clientX-i.clientX);if(void 0!==this.lastAngle_){var o=n-this.lastAngle_;this.rotationDelta_+=o,!this.rotating_&&Math.abs(this.rotationDelta_)>this.threshold_&&(this.rotating_=!0),e=o}this.lastAngle_=n;var a=t.map,s=a.getView();if(s.getConstraints().rotation!==xl){var l=a.getViewport().getBoundingClientRect(),u=$l(this.targetPointers);u[0]-=l.left,u[1]-=l.top,this.anchor_=a.getCoordinateFromPixelInternal(u),this.rotating_&&(a.render(),s.adjustRotationInternal(e,this.anchor_))}},e.prototype.handleUpEvent=function(t){return!(this.targetPointers.length<2)||(t.map.getView().endInteraction(this.duration_),!1)},e.prototype.handleDownEvent=function(t){if(this.targetPointers.length>=2){var e=t.map;return this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.handlingDownUpSequence||e.getView().beginInteraction(),!0}return!1},e}(Ql),Bu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Uu=function(t){function e(e){var i=this,r=e||{},n=r;return n.stopDown||(n.stopDown=y),(i=t.call(this,n)||this).anchor_=null,i.duration_=void 0!==r.duration?r.duration:400,i.lastDistance_=void 0,i.lastScaleDelta_=1,i}return Bu(e,t),e.prototype.handleDragEvent=function(t){var e=1,i=this.targetPointers[0],r=this.targetPointers[1],n=i.clientX-r.clientX,o=i.clientY-r.clientY,a=Math.sqrt(n*n+o*o);void 0!==this.lastDistance_&&(e=this.lastDistance_/a),this.lastDistance_=a;var s=t.map,l=s.getView();1!=e&&(this.lastScaleDelta_=e);var u=s.getViewport().getBoundingClientRect(),h=$l(this.targetPointers);h[0]-=u.left,h[1]-=u.top,this.anchor_=s.getCoordinateFromPixelInternal(h),s.render(),l.adjustResolutionInternal(e,this.anchor_)},e.prototype.handleUpEvent=function(t){if(this.targetPointers.length<2){var e=t.map.getView(),i=this.lastScaleDelta_>1?1:-1;return e.endInteraction(this.duration_,i),!1}return!0},e.prototype.handleDownEvent=function(t){if(this.targetPointers.length>=2){var e=t.map;return this.anchor_=null,this.lastDistance_=void 0,this.lastScaleDelta_=1,this.handlingDownUpSequence||e.getView().beginInteraction(),!0}return!1},e}(Ql),Vu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Xu="addfeatures",Wu=function(t){function e(e,i,r,n){var o=t.call(this,e)||this;return o.features=r,o.file=i,o.projection=n,o}return Vu(e,t),e}(s),Yu=function(t){function e(e){var i=this,r=e||{};(i=t.call(this,{handleEvent:_})||this).readAsBuffer_=!1,i.formats_=[];for(var n=r.formatConstructors?r.formatConstructors:[],o=0,a=n.length;o<a;++o){var s=n[o];"function"==typeof s&&(s=new s),i.formats_.push(s),i.readAsBuffer_=i.readAsBuffer_||s.getType()===_s}return i.projection_=r.projection?ci(r.projection):null,i.dropListenKeys_=null,i.source_=r.source||null,i.target=r.target?r.target:null,i}return Vu(e,t),e.prototype.handleResult_=function(t,e){var i,r=e.target.result,n=this.getMap(),o=this.projection_;o||(o=n.getView().getProjection());for(var a=this.formats_,s=0,l=a.length;s<l;++s){var u=a[s],h=r;this.readAsBuffer_&&u.getType()!==_s&&(void 0===i&&(i=(new TextDecoder).decode(r)),h=i);var c=this.tryReadFeatures_(u,h,{featureProjection:o});if(c&&c.length>0){this.source_&&(this.source_.clear(),this.source_.addFeatures(c)),this.dispatchEvent(new Wu(Xu,t,c,o));break}}},e.prototype.registerListeners_=function(){var t=this.getMap();if(t){var e=this.target?this.target:t.getViewport();this.dropListenKeys_=[N(e,M,this.handleDrop,this),N(e,O,this.handleStop,this),N(e,I,this.handleStop,this),N(e,M,this.handleStop,this)]}},e.prototype.setActive=function(e){!this.getActive()&&e&&this.registerListeners_(),this.getActive()&&!e&&this.unregisterListeners_(),t.prototype.setActive.call(this,e)},e.prototype.setMap=function(e){this.unregisterListeners_(),t.prototype.setMap.call(this,e),this.getActive()&&this.registerListeners_()},e.prototype.tryReadFeatures_=function(t,e,i){try{return t.readFeatures(e,i)}catch(t){return null}},e.prototype.unregisterListeners_=function(){this.dropListenKeys_&&(this.dropListenKeys_.forEach(B),this.dropListenKeys_=null)},e.prototype.handleDrop=function(t){for(var e=t.dataTransfer.files,i=0,r=e.length;i<r;++i){var n=e.item(i),o=new FileReader;o.addEventListener(k,this.handleResult_.bind(this,n)),this.readAsBuffer_?o.readAsArrayBuffer(n):o.readAsText(n)}},e.prototype.handleStop=function(t){t.stopPropagation(),t.preventDefault(),t.dataTransfer.dropEffect="copy"},e}(Kl),Ku=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Zu=function(t){function e(e){var i=this,r=e||{};return(i=t.call(this,r)||this).condition_=r.condition?r.condition:lu,i.lastAngle_=void 0,i.lastMagnitude_=void 0,i.lastScaleDelta_=0,i.duration_=void 0!==r.duration?r.duration:400,i}return Ku(e,t),e.prototype.handleDragEvent=function(t){if(hu(t)){var e=t.map,i=e.getSize(),r=t.pixel,n=r[0]-i[0]/2,o=i[1]/2-r[1],a=Math.atan2(o,n),s=Math.sqrt(n*n+o*o),l=e.getView();if(void 0!==this.lastAngle_){var u=this.lastAngle_-a;l.adjustRotationInternal(u)}this.lastAngle_=a,void 0!==this.lastMagnitude_&&l.adjustResolutionInternal(this.lastMagnitude_/s),void 0!==this.lastMagnitude_&&(this.lastScaleDelta_=this.lastMagnitude_/s),this.lastMagnitude_=s}},e.prototype.handleUpEvent=function(t){if(!hu(t))return!0;var e=t.map.getView(),i=this.lastScaleDelta_>1?1:-1;return e.endInteraction(this.duration_,i),this.lastScaleDelta_=0,!1},e.prototype.handleDownEvent=function(t){return!!hu(t)&&(!!this.condition_(t)&&(t.map.getView().beginInteraction(),this.lastAngle_=void 0,this.lastMagnitude_=void 0,!0))},e}(Ql),Hu=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),qu=function(t){function e(e,i,r){var n=t.call(this)||this;if(void 0!==r&&void 0===i)n.setFlatCoordinates(r,e);else{var o=i||0;n.setCenterAndRadius(e,o,r)}return n}return Hu(e,t),e.prototype.clone=function(){var t=new e(this.flatCoordinates.slice(),void 0,this.layout);return t.applyProperties(this),t},e.prototype.closestPointXY=function(t,e,i,r){var n=this.flatCoordinates,o=t-n[0],a=e-n[1],s=o*o+a*a;if(s<r){if(0===s)for(var l=0;l<this.stride;++l)i[l]=n[l];else{var u=this.getRadius()/Math.sqrt(s);i[0]=n[0]+u*o,i[1]=n[1]+u*a;for(l=2;l<this.stride;++l)i[l]=n[l]}return i.length=this.stride,s}return r},e.prototype.containsXY=function(t,e){var i=this.flatCoordinates,r=t-i[0],n=e-i[1];return r*r+n*n<=this.getRadiusSquared_()},e.prototype.getCenter=function(){return this.flatCoordinates.slice(0,this.stride)},e.prototype.computeExtent=function(t){var e=this.flatCoordinates,i=e[this.stride]-e[0];return Qt(e[0]-i,e[1]-i,e[0]+i,e[1]+i,t)},e.prototype.getRadius=function(){return Math.sqrt(this.getRadiusSquared_())},e.prototype.getRadiusSquared_=function(){var t=this.flatCoordinates[this.stride]-this.flatCoordinates[0],e=this.flatCoordinates[this.stride+1]-this.flatCoordinates[1];return t*t+e*e},e.prototype.getType=function(){return yt},e.prototype.intersectsExtent=function(t){if(xe(t,this.getExtent())){var e=this.getCenter();return t[0]<=e[0]&&t[2]>=e[0]||(t[1]<=e[1]&&t[3]>=e[1]||le(t,this.intersectsCoordinate.bind(this)))}return!1},e.prototype.setCenter=function(t){var e=this.stride,i=this.flatCoordinates[e]-this.flatCoordinates[0],r=t.slice();r[e]=r[0]+i;for(var n=1;n<e;++n)r[e+n]=t[n];this.setFlatCoordinates(this.layout,r),this.changed()},e.prototype.setCenterAndRadius=function(t,e,i){this.setLayout(i,t,0),this.flatCoordinates||(this.flatCoordinates=[]);var r=this.flatCoordinates,n=zi(r,0,t,this.stride);r[n++]=r[0]+e;for(var o=1,a=this.stride;o<a;++o)r[n++]=r[o];r.length=n,this.changed()},e.prototype.getCoordinates=function(){return null},e.prototype.setCoordinates=function(t,e){},e.prototype.setRadius=function(t){this.flatCoordinates[this.stride]=this.flatCoordinates[0]+t,this.changed()},e.prototype.rotate=function(t,e){var i=this.getCenter(),r=this.getStride();this.setCenter(Pi(i,0,i.length,r,t,e,i)),this.changed()},e.prototype.translate=function(t,e){var i=this.getCenter(),r=this.getStride();this.setCenter(Ri(i,0,i.length,r,t,e,i)),this.changed()},e}(Li);qu.prototype.transform;var Ju=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Qu=function(t){function e(e,i,r){var n=t.call(this)||this;if(n.ends_=[],n.maxDelta_=-1,n.maxDeltaRevision_=-1,Array.isArray(e[0]))n.setCoordinates(e,i);else if(void 0!==i&&r)n.setFlatCoordinates(i,e),n.ends_=r;else{for(var o=n.getLayout(),a=e,s=[],l=[],u=0,h=a.length;u<h;++u){var c=a[u];0===u&&(o=c.getLayout()),d(s,c.getFlatCoordinates()),l.push(s.length)}n.setFlatCoordinates(o,s),n.ends_=l}return n}return Ju(e,t),e.prototype.appendLineString=function(t){this.flatCoordinates?d(this.flatCoordinates,t.getFlatCoordinates().slice()):this.flatCoordinates=t.getFlatCoordinates().slice(),this.ends_.push(this.flatCoordinates.length),this.changed()},e.prototype.clone=function(){var t=new e(this.flatCoordinates.slice(),this.layout,this.ends_.slice());return t.applyProperties(this),t},e.prototype.closestPointXY=function(t,e,i,r){return r<Yt(this.getExtent(),t,e)?r:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(ji(this.flatCoordinates,0,this.ends_,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),Ni(this.flatCoordinates,0,this.ends_,this.stride,this.maxDelta_,!1,t,e,i,r))},e.prototype.getCoordinateAtM=function(t,e,i){if(this.layout!=st&&this.layout!=lt||0===this.flatCoordinates.length)return null;var r=void 0!==e&&e,n=void 0!==i&&i;return function(t,e,i,r,n,o,a){if(a)return Er(t,e,i[i.length-1],r,n,o);var s;if(n<t[r-1])return o?((s=t.slice(0,r))[r-1]=n,s):null;if(t[t.length-1]<n)return o?((s=t.slice(t.length-r))[r-1]=n,s):null;for(var l=0,u=i.length;l<u;++l){var h=i[l];if(e!=h){if(n<t[e+r-1])return null;if(n<=t[h-1])return Er(t,e,h,r,n,!1);e=h}}return null}(this.flatCoordinates,0,this.ends_,this.stride,t,r,n)},e.prototype.getCoordinates=function(){return Zi(this.flatCoordinates,0,this.ends_,this.stride)},e.prototype.getEnds=function(){return this.ends_},e.prototype.getLineString=function(t){return t<0||this.ends_.length<=t?null:new Fr(this.flatCoordinates.slice(0===t?0:this.ends_[t-1],this.ends_[t]),this.layout)},e.prototype.getLineStrings=function(){for(var t=this.flatCoordinates,e=this.ends_,i=this.layout,r=[],n=0,o=0,a=e.length;o<a;++o){var s=e[o],l=new Fr(t.slice(n,s),i);r.push(l),n=s}return r},e.prototype.getFlatMidpoints=function(){for(var t=[],e=this.flatCoordinates,i=0,r=this.ends_,n=this.stride,o=0,a=r.length;o<a;++o){var s=r[o];d(t,Tr(e,i,s,n,.5)),i=s}return t},e.prototype.getSimplifiedGeometryInternal=function(t){var i=[],r=[];return i.length=function(t,e,i,r,n,o,a,s){for(var l=0,u=i.length;l<u;++l){var h=i[l];a=Vi(t,e,h,r,n,o,a),s.push(a),e=h}return a}(this.flatCoordinates,0,this.ends_,this.stride,t,i,0,r),new e(i,ot,r)},e.prototype.getType=function(){return dt},e.prototype.intersectsExtent=function(t){return function(t,e,i,r,n){for(var o=0,a=i.length;o<a;++o){if(lr(t,e,i[o],r,n))return!0;e=i[o]}return!1}(this.flatCoordinates,0,this.ends_,this.stride,t)},e.prototype.setCoordinates=function(t,e){this.setLayout(e,t,2),this.flatCoordinates||(this.flatCoordinates=[]);var i=Ui(this.flatCoordinates,0,t,this.stride,this.ends_);this.flatCoordinates.length=0===i.length?0:i[i.length-1],this.changed()},e}(Li),$u=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),th=function(t){function e(e,i){var r=t.call(this)||this;return i&&!Array.isArray(e[0])?r.setFlatCoordinates(i,e):r.setCoordinates(e,i),r}return $u(e,t),e.prototype.appendPoint=function(t){this.flatCoordinates?d(this.flatCoordinates,t.getFlatCoordinates()):this.flatCoordinates=t.getFlatCoordinates().slice(),this.changed()},e.prototype.clone=function(){var t=new e(this.flatCoordinates.slice(),this.layout);return t.applyProperties(this),t},e.prototype.closestPointXY=function(t,e,i,r){if(r<Yt(this.getExtent(),t,e))return r;for(var n=this.flatCoordinates,o=this.stride,a=0,s=n.length;a<s;a+=o){var l=Re(t,e,n[a],n[a+1]);if(l<r){r=l;for(var u=0;u<o;++u)i[u]=n[a+u];i.length=o}}return r},e.prototype.getCoordinates=function(){return Ki(this.flatCoordinates,0,this.flatCoordinates.length,this.stride)},e.prototype.getPoint=function(t){var e=this.flatCoordinates?this.flatCoordinates.length/this.stride:0;return t<0||e<=t?null:new er(this.flatCoordinates.slice(t*this.stride,(t+1)*this.stride),this.layout)},e.prototype.getPoints=function(){for(var t=this.flatCoordinates,e=this.layout,i=this.stride,r=[],n=0,o=t.length;n<o;n+=i){var a=new er(t.slice(n,n+i),e);r.push(a)}return r},e.prototype.getType=function(){return ft},e.prototype.intersectsExtent=function(t){for(var e=this.flatCoordinates,i=this.stride,r=0,n=e.length;r<n;r+=i){if(Ht(t,e[r],e[r+1]))return!0}return!1},e.prototype.setCoordinates=function(t,e){this.setLayout(e,t,1),this.flatCoordinates||(this.flatCoordinates=[]),this.flatCoordinates.length=Bi(this.flatCoordinates,0,t,this.stride),this.changed()},e}(Li);function eh(t,e,i,r){for(var n=[],o=[1/0,1/0,-1/0,-1/0],a=0,s=i.length;a<s;++a){var l=i[a];o=ie(t,e,l[0],r),n.push((o[0]+o[2])/2,(o[1]+o[3])/2),e=l[l.length-1]}return n}var ih=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),rh=function(t){function e(e,i,r){var n=t.call(this)||this;if(n.endss_=[],n.flatInteriorPointsRevision_=-1,n.flatInteriorPoints_=null,n.maxDelta_=-1,n.maxDeltaRevision_=-1,n.orientedRevision_=-1,n.orientedFlatCoordinates_=null,!r&&!Array.isArray(e[0])){for(var o=n.getLayout(),a=e,s=[],l=[],u=0,h=a.length;u<h;++u){var c=a[u];0===u&&(o=c.getLayout());for(var p=s.length,f=c.getEnds(),g=0,_=f.length;g<_;++g)f[g]+=p;d(s,c.getFlatCoordinates()),l.push(f)}i=o,e=s,r=l}return void 0!==i&&r?(n.setFlatCoordinates(i,e),n.endss_=r):n.setCoordinates(e,i),n}return ih(e,t),e.prototype.appendPolygon=function(t){var e;if(this.flatCoordinates){var i=this.flatCoordinates.length;d(this.flatCoordinates,t.getFlatCoordinates());for(var r=0,n=(e=t.getEnds().slice()).length;r<n;++r)e[r]+=i}else this.flatCoordinates=t.getFlatCoordinates().slice(),e=t.getEnds().slice(),this.endss_.push();this.endss_.push(e),this.changed()},e.prototype.clone=function(){for(var t=this.endss_.length,i=new Array(t),r=0;r<t;++r)i[r]=this.endss_[r].slice();var n=new e(this.flatCoordinates.slice(),this.layout,i);return n.applyProperties(this),n},e.prototype.closestPointXY=function(t,e,i,r){return r<Yt(this.getExtent(),t,e)?r:(this.maxDeltaRevision_!=this.getRevision()&&(this.maxDelta_=Math.sqrt(function(t,e,i,r,n){for(var o=0,a=i.length;o<a;++o){var s=i[o];n=ji(t,e,s,r,n),e=s[s.length-1]}return n}(this.flatCoordinates,0,this.endss_,this.stride,0)),this.maxDeltaRevision_=this.getRevision()),function(t,e,i,r,n,o,a,s,l,u,h){for(var c=h||[NaN,NaN],p=0,f=i.length;p<f;++p){var d=i[p];u=Ni(t,e,d,r,n,o,a,s,l,u,c),e=d[d.length-1]}return u}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,this.maxDelta_,!0,t,e,i,r))},e.prototype.containsXY=function(t,e){return function(t,e,i,r,n,o){if(0===i.length)return!1;for(var a=0,s=i.length;a<s;++a){var l=i[a];if(nr(t,e,l,r,n,o))return!0;e=l[l.length-1]}return!1}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,t,e)},e.prototype.getArea=function(){return function(t,e,i,r){for(var n=0,o=0,a=i.length;o<a;++o){var s=i[o];n+=Ji(t,e,s,r),e=s[s.length-1]}return n}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride)},e.prototype.getCoordinates=function(t){var e;return void 0!==t?dr(e=this.getOrientedFlatCoordinates().slice(),0,this.endss_,this.stride,t):e=this.flatCoordinates,Hi(e,0,this.endss_,this.stride)},e.prototype.getEndss=function(){return this.endss_},e.prototype.getFlatInteriorPoints=function(){if(this.flatInteriorPointsRevision_!=this.getRevision()){var t=eh(this.flatCoordinates,0,this.endss_,this.stride);this.flatInteriorPoints_=ar(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,t),this.flatInteriorPointsRevision_=this.getRevision()}return this.flatInteriorPoints_},e.prototype.getInteriorPoints=function(){return new th(this.getFlatInteriorPoints().slice(),st)},e.prototype.getOrientedFlatCoordinates=function(){if(this.orientedRevision_!=this.getRevision()){var t=this.flatCoordinates;!function(t,e,i,r,n){for(var o=0,a=i.length;o<a;++o){var s=i[o];if(!pr(t,e,s,r,n))return!1;s.length&&(e=s[s.length-1])}return!0}(t,0,this.endss_,this.stride)?(this.orientedFlatCoordinates_=t.slice(),this.orientedFlatCoordinates_.length=dr(this.orientedFlatCoordinates_,0,this.endss_,this.stride)):this.orientedFlatCoordinates_=t,this.orientedRevision_=this.getRevision()}return this.orientedFlatCoordinates_},e.prototype.getSimplifiedGeometryInternal=function(t){var i=[],r=[];return i.length=function(t,e,i,r,n,o,a,s){for(var l=0,u=i.length;l<u;++l){var h=i[l],c=[];a=Yi(t,e,h,r,n,o,a,c),s.push(c),e=h[h.length-1]}return a}(this.flatCoordinates,0,this.endss_,this.stride,Math.sqrt(t),i,0,r),new e(i,ot,r)},e.prototype.getPolygon=function(t){if(t<0||this.endss_.length<=t)return null;var e;if(0===t)e=0;else{var i=this.endss_[t-1];e=i[i.length-1]}var r=this.endss_[t].slice(),n=r[r.length-1];if(0!==e)for(var o=0,a=r.length;o<a;++o)r[o]-=e;return new _r(this.flatCoordinates.slice(e,n),this.layout,r)},e.prototype.getPolygons=function(){for(var t=this.layout,e=this.flatCoordinates,i=this.endss_,r=[],n=0,o=0,a=i.length;o<a;++o){var s=i[o].slice(),l=s[s.length-1];if(0!==n)for(var u=0,h=s.length;u<h;++u)s[u]-=n;var c=new _r(e.slice(n,l),t,s);r.push(c),n=l}return r},e.prototype.getType=function(){return gt},e.prototype.intersectsExtent=function(t){return function(t,e,i,r,n){for(var o=0,a=i.length;o<a;++o){var s=i[o];if(ur(t,e,s,r,n))return!0;e=s[s.length-1]}return!1}(this.getOrientedFlatCoordinates(),0,this.endss_,this.stride,t)},e.prototype.setCoordinates=function(t,e){this.setLayout(e,t,3),this.flatCoordinates||(this.flatCoordinates=[]);var i=function(t,e,i,r,n){for(var o=n||[],a=0,s=0,l=i.length;s<l;++s){var u=Ui(t,e,i[s],r,o[a]);o[a++]=u,e=u[u.length-1]}return o.length=a,o}(this.flatCoordinates,0,t,this.stride,this.endss_);if(0===i.length)this.flatCoordinates.length=0;else{var r=i[i.length-1];this.flatCoordinates.length=0===r.length?0:r[r.length-1]}this.changed()},e}(Li),nh=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),oh="Point",ah="LineString",sh="Polygon",lh="Circle",uh="drawstart",hh="drawend",ch="drawabort",ph=function(t){function e(e,i){var r=t.call(this,e)||this;return r.feature=i,r}return nh(e,t),e}(s),fh=function(t){function e(e){var i=this,r=e;r.stopDown||(r.stopDown=y),(i=t.call(this,r)||this).shouldHandle_=!1,i.downPx_=null,i.downTimeout_,i.lastDragTime_,i.pointerType_,i.freehand_=!1,i.source_=e.source?e.source:null,i.features_=e.features?e.features:null,i.snapTolerance_=e.snapTolerance?e.snapTolerance:12,i.type_=e.type,i.mode_=function(t){var e;t===ut||t===ft?e=oh:t===ht||t===dt?e=ah:t===pt||t===gt?e=sh:t===yt&&(e=lh);return e}(i.type_),i.stopClick_=!!e.stopClick,i.minPoints_=e.minPoints?e.minPoints:i.mode_===sh?3:2,i.maxPoints_=i.mode_===lh?2:e.maxPoints?e.maxPoints:1/0,i.finishCondition_=e.finishCondition?e.finishCondition:_;var n,o=e.geometryFunction;if(!o){var a,s=i.mode_;if(s===lh)o=function(t,e,i){var r=e||new qu([NaN,NaN]),n=Ci(t[0]),o=ni(n,Ci(t[t.length-1]));return r.setCenterAndRadius(n,Math.sqrt(o)),r};else s===oh?a=er:s===ah?a=Fr:s===sh&&(a=_r),o=function(t,e,i){return e?s===sh?t[0].length?e.setCoordinates([t[0].concat([t[0][0]])]):e.setCoordinates([]):e.setCoordinates(t):e=new a(t),e}}return i.geometryFunction_=o,i.dragVertexDelay_=void 0!==e.dragVertexDelay?e.dragVertexDelay:500,i.finishCoordinate_=null,i.sketchFeature_=null,i.sketchPoint_=null,i.sketchCoords_=null,i.sketchLine_=null,i.sketchLineCoords_=null,i.squaredClickTolerance_=e.clickTolerance?e.clickTolerance*e.clickTolerance:36,i.overlay_=new rs({source:new bs({useSpatialIndex:!1,wrapX:!!e.wrapX&&e.wrapX}),style:e.style?e.style:(n=Ln(),function(t,e){return n[t.getGeometry().getType()]}),updateWhileInteracting:!0}),i.geometryName_=e.geometryName,i.condition_=e.condition?e.condition:su,i.freehandCondition_,e.freehand?i.freehandCondition_=ru:i.freehandCondition_=e.freehandCondition?e.freehandCondition:lu,i.addEventListener(H(Wl),i.updateState_),i}return nh(e,t),e.prototype.setMap=function(e){t.prototype.setMap.call(this,e),this.updateState_()},e.prototype.getOverlay=function(){return this.overlay_},e.prototype.handleEvent=function(e){e.originalEvent.type===P&&e.originalEvent.preventDefault(),this.freehand_=this.mode_!==oh&&this.freehandCondition_(e);var i=e.type===Js.POINTERMOVE,r=!0;!this.freehand_&&this.lastDragTime_&&e.type===Js.POINTERDRAG&&(Date.now()-this.lastDragTime_>=this.dragVertexDelay_?(this.downPx_=e.pixel,this.shouldHandle_=!this.freehand_,i=!0):this.lastDragTime_=void 0,this.shouldHandle_&&void 0!==this.downTimeout_&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0));return this.freehand_&&e.type===Js.POINTERDRAG&&null!==this.sketchFeature_?(this.addToDrawing_(e.coordinate),r=!1):this.freehand_&&e.type===Js.POINTERDOWN?r=!1:i&&this.getPointerCount()<2?(r=e.type===Js.POINTERMOVE)&&this.freehand_?(this.handlePointerMove_(e),this.shouldHandle_&&e.originalEvent.preventDefault()):("mouse"===e.originalEvent.pointerType||e.type===Js.POINTERDRAG&&void 0===this.downTimeout_)&&this.handlePointerMove_(e):e.type===Js.DBLCLICK&&(r=!1),t.prototype.handleEvent.call(this,e)&&r},e.prototype.handleDownEvent=function(t){return this.shouldHandle_=!this.freehand_,this.freehand_?(this.downPx_=t.pixel,this.finishCoordinate_||this.startDrawing_(t.coordinate),!0):this.condition_(t)?(this.lastDragTime_=Date.now(),this.downTimeout_=setTimeout(function(){this.handlePointerMove_(new qs(Js.POINTERMOVE,t.map,t.originalEvent,!1,t.frameState))}.bind(this),this.dragVertexDelay_),this.downPx_=t.pixel,!0):(this.lastDragTime_=void 0,!1)},e.prototype.handleUpEvent=function(t){var e=!0;if(0===this.getPointerCount())if(this.downTimeout_&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0),this.handlePointerMove_(t),this.shouldHandle_){switch(!0){case!this.finishCoordinate_:if(this.startDrawing_(t.coordinate),this.mode_!==oh)break;case this.freehand_||this.atFinish_(t.pixel)&&this.finishCondition_(t):this.finishDrawing();break;case!this.freehand_:this.addToDrawing_(t.coordinate)}e=!1}else this.freehand_&&this.abortDrawing();return!e&&this.stopClick_&&t.originalEvent.stopPropagation(),e},e.prototype.handlePointerMove_=function(t){if(this.pointerType_=t.originalEvent.pointerType,this.downPx_&&(!this.freehand_&&this.shouldHandle_||this.freehand_&&!this.shouldHandle_)){var e=this.downPx_,i=t.pixel,r=e[0]-i[0],n=e[1]-i[1],o=r*r+n*n;if(this.shouldHandle_=this.freehand_?o>this.squaredClickTolerance_:o<=this.squaredClickTolerance_,!this.shouldHandle_)return}this.finishCoordinate_?this.modifyDrawing_(t.coordinate):this.createOrUpdateSketchPoint_(t)},e.prototype.atFinish_=function(t){var e=!1;if(this.sketchFeature_){var i=!1,r=[this.finishCoordinate_],n=this.mode_;if(n===oh)e=!0;else if(n===lh)e=2===this.sketchCoords_.length;else if(n===ah)i=this.sketchCoords_.length>this.minPoints_;else if(n===sh){var o=this.sketchCoords_;i=o[0].length>this.minPoints_,r=[o[0][0],o[0][o[0].length-2]]}if(i)for(var a=this.getMap(),s=0,l=r.length;s<l;s++){var u=r[s],h=a.getPixelFromCoordinate(u),c=t[0]-h[0],p=t[1]-h[1],f=this.freehand_?1:this.snapTolerance_;if(e=Math.sqrt(c*c+p*p)<=f){this.finishCoordinate_=u;break}}}return e},e.prototype.createOrUpdateSketchPoint_=function(t){var e=t.coordinate.slice();this.sketchPoint_?this.sketchPoint_.getGeometry().setCoordinates(e):(this.sketchPoint_=new nt(new er(e)),this.updateSketchFeatures_())},e.prototype.createOrUpdateCustomSketchLine_=function(t){this.sketchLine_||(this.sketchLine_=new nt);var e=t.getLinearRing(0),i=this.sketchLine_.getGeometry();i?(i.setFlatCoordinates(e.getLayout(),e.getFlatCoordinates()),i.changed()):(i=new Fr(e.getFlatCoordinates(),e.getLayout()),this.sketchLine_.setGeometry(i))},e.prototype.startDrawing_=function(t){var e=this.getMap().getView().getProjection();this.finishCoordinate_=t,this.mode_===oh?this.sketchCoords_=t.slice():this.mode_===sh?(this.sketchCoords_=[[t.slice(),t.slice()]],this.sketchLineCoords_=this.sketchCoords_[0]):this.sketchCoords_=[t.slice(),t.slice()],this.sketchLineCoords_&&(this.sketchLine_=new nt(new Fr(this.sketchLineCoords_)));var i=this.geometryFunction_(this.sketchCoords_,void 0,e);this.sketchFeature_=new nt,this.geometryName_&&this.sketchFeature_.setGeometryName(this.geometryName_),this.sketchFeature_.setGeometry(i),this.updateSketchFeatures_(),this.dispatchEvent(new ph(uh,this.sketchFeature_))},e.prototype.modifyDrawing_=function(t){var e,i,r=this.getMap(),n=this.sketchFeature_.getGeometry(),o=r.getView().getProjection();(this.mode_===oh?i=this.sketchCoords_:this.mode_===sh?(i=(e=this.sketchCoords_[0])[e.length-1],this.atFinish_(r.getPixelFromCoordinate(t))&&(t=this.finishCoordinate_.slice())):i=(e=this.sketchCoords_)[e.length-1],i[0]=t[0],i[1]=t[1],this.geometryFunction_(this.sketchCoords_,n,o),this.sketchPoint_)&&this.sketchPoint_.getGeometry().setCoordinates(t);if(n.getType()===pt&&this.mode_!==sh)this.createOrUpdateCustomSketchLine_(n);else if(this.sketchLineCoords_){this.sketchLine_.getGeometry().setCoordinates(this.sketchLineCoords_)}this.updateSketchFeatures_()},e.prototype.addToDrawing_=function(t){var e,i,r=this.sketchFeature_.getGeometry(),n=this.getMap().getView().getProjection(),o=this.mode_;o===ah||o===lh?(this.finishCoordinate_=t.slice(),(i=this.sketchCoords_).length>=this.maxPoints_&&(this.freehand_?i.pop():e=!0),i.push(t.slice()),this.geometryFunction_(i,r,n)):o===sh&&((i=this.sketchCoords_[0]).length>=this.maxPoints_&&(this.freehand_?i.pop():e=!0),i.push(t.slice()),e&&(this.finishCoordinate_=i[0]),this.geometryFunction_(this.sketchCoords_,r,n)),this.updateSketchFeatures_(),e&&this.finishDrawing()},e.prototype.removeLastPoint=function(){if(this.sketchFeature_){var t,e=this.sketchFeature_.getGeometry(),i=this.getMap().getView().getProjection(),r=this.mode_;if(r===ah||r===lh){if((t=this.sketchCoords_).splice(-2,1),t.length>=2){this.finishCoordinate_=t[t.length-2].slice();var n=this.finishCoordinate_.slice();t[t.length-1]=n,this.sketchPoint_.setGeometry(new er(n))}this.geometryFunction_(t,e,i),e.getType()===pt&&this.sketchLine_&&this.createOrUpdateCustomSketchLine_(e)}else if(r===sh){(t=this.sketchCoords_[0]).splice(-2,1);var o=this.sketchLine_.getGeometry();if(t.length>=2){n=t[t.length-2].slice();t[t.length-1]=n,this.sketchPoint_.setGeometry(new er(n))}o.setCoordinates(t),this.geometryFunction_(this.sketchCoords_,e,i)}1===t.length&&this.abortDrawing(),this.updateSketchFeatures_()}},e.prototype.finishDrawing=function(){var t=this.abortDrawing_();if(t){var e=this.sketchCoords_,i=t.getGeometry(),r=this.getMap().getView().getProjection();this.mode_===ah?(e.pop(),this.geometryFunction_(e,i,r)):this.mode_===sh&&(e[0].pop(),this.geometryFunction_(e,i,r),e=i.getCoordinates()),this.type_===ft?t.setGeometry(new th([e])):this.type_===dt?t.setGeometry(new Qu([e])):this.type_===gt&&t.setGeometry(new rh([e])),this.dispatchEvent(new ph(hh,t)),this.features_&&this.features_.push(t),this.source_&&this.source_.addFeature(t)}},e.prototype.abortDrawing_=function(){this.finishCoordinate_=null;var t=this.sketchFeature_;return this.sketchFeature_=null,this.sketchPoint_=null,this.sketchLine_=null,this.overlay_.getSource().clear(!0),t},e.prototype.abortDrawing=function(){var t=this.abortDrawing_();t&&this.dispatchEvent(new ph(ch,t))},e.prototype.appendCoordinates=function(t){var e,i=this.mode_,r=!this.sketchFeature_;if(r&&this.startDrawing_(t[0]),i===ah||i===lh)e=this.sketchCoords_;else{if(i!==sh)return;e=this.sketchCoords_&&this.sketchCoords_.length?this.sketchCoords_[0]:[]}r&&e.shift(),e.pop();for(var n=0;n<t.length;n++)this.addToDrawing_(t[n]);var o=t[t.length-1];this.addToDrawing_(o),this.modifyDrawing_(o)},e.prototype.extend=function(t){var e=t.getGeometry();this.sketchFeature_=t,this.sketchCoords_=e.getCoordinates();var i=this.sketchCoords_[this.sketchCoords_.length-1];this.finishCoordinate_=i.slice(),this.sketchCoords_.push(i.slice()),this.sketchPoint_=new nt(new er(i)),this.updateSketchFeatures_(),this.dispatchEvent(new ph(uh,this.sketchFeature_))},e.prototype.updateSketchFeatures_=function(){var t=[];this.sketchFeature_&&t.push(this.sketchFeature_),this.sketchLine_&&t.push(this.sketchLine_),this.sketchPoint_&&t.push(this.sketchPoint_);var e=this.overlay_.getSource();e.clear(!0),e.addFeatures(t)},e.prototype.updateState_=function(){var t=this.getMap(),e=this.getActive();t&&e||this.abortDrawing(),this.overlay_.setMap(e?t:null)},e}(Ql);var dh=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),gh="extentchanged",_h=function(t){function e(e){var i=t.call(this,gh)||this;return i.extent=e,i}return dh(e,t),e}(s),yh=function(t){function e(e){var i=this,r=e||{};return(i=t.call(this,r)||this).condition_=r.condition?r.condition:ru,i.extent_=null,i.pointerHandler_=null,i.pixelTolerance_=void 0!==r.pixelTolerance?r.pixelTolerance:10,i.snappedToVertex_=!1,i.extentFeature_=null,i.vertexFeature_=null,e||(e={}),i.extentOverlay_=new rs({source:new bs({useSpatialIndex:!1,wrapX:!!e.wrapX}),style:e.boxStyle?e.boxStyle:vh(),updateWhileAnimating:!0,updateWhileInteracting:!0}),i.vertexOverlay_=new rs({source:new bs({useSpatialIndex:!1,wrapX:!!e.wrapX}),style:e.pointerStyle?e.pointerStyle:mh(),updateWhileAnimating:!0,updateWhileInteracting:!0}),e.extent&&i.setExtent(e.extent),i}return dh(e,t),e.prototype.snapToVertex_=function(t,e){var i=e.getCoordinateFromPixelInternal(t),r=this.getExtentInternal();if(r){var n=function(t){return[[[t[0],t[1]],[t[0],t[3]]],[[t[0],t[3]],[t[2],t[3]]],[[t[2],t[3]],[t[2],t[1]]],[[t[2],t[1]],[t[0],t[1]]]]}(r);n.sort((function(t,e){return ai(i,t)-ai(i,e)}));var o=n[0],a=ei(i,o),s=e.getPixelFromCoordinateInternal(a);if(oi(t,s)<=this.pixelTolerance_){var l=e.getPixelFromCoordinateInternal(o[0]),u=e.getPixelFromCoordinateInternal(o[1]),h=ni(s,l),c=ni(s,u),p=Math.sqrt(Math.min(h,c));return this.snappedToVertex_=p<=this.pixelTolerance_,this.snappedToVertex_&&(a=h>c?o[1]:o[0]),a}}return null},e.prototype.handlePointerMove_=function(t){var e=t.pixel,i=t.map,r=this.snapToVertex_(e,i);r||(r=i.getCoordinateFromPixelInternal(e)),this.createOrUpdatePointerFeature_(r)},e.prototype.createOrUpdateExtentFeature_=function(t){var e=this.extentFeature_;return e?t?e.setGeometry(yr(t)):e.setGeometry(void 0):(e=new nt(t?yr(t):{}),this.extentFeature_=e,this.extentOverlay_.getSource().addFeature(e)),e},e.prototype.createOrUpdatePointerFeature_=function(t){var e=this.vertexFeature_;e?e.getGeometry().setCoordinates(t):(e=new nt(new er(t)),this.vertexFeature_=e,this.vertexOverlay_.getSource().addFeature(e));return e},e.prototype.handleEvent=function(e){return!e.originalEvent||!this.condition_(e)||(e.type!=Js.POINTERMOVE||this.handlingDownUpSequence||this.handlePointerMove_(e),t.prototype.handleEvent.call(this,e),!1)},e.prototype.handleDownEvent=function(t){var e=t.pixel,i=t.map,r=this.getExtentInternal(),n=this.snapToVertex_(e,i),o=function(t){var e=null,i=null;return t[0]==r[0]?e=r[2]:t[0]==r[2]&&(e=r[0]),t[1]==r[1]?i=r[3]:t[1]==r[3]&&(i=r[1]),null!==e&&null!==i?[e,i]:null};if(n&&r){var a=n[0]==r[0]||n[0]==r[2]?n[0]:null,s=n[1]==r[1]||n[1]==r[3]?n[1]:null;null!==a&&null!==s?this.pointerHandler_=xh(o(n)):null!==a?this.pointerHandler_=wh(o([a,r[1]]),o([a,r[3]])):null!==s&&(this.pointerHandler_=wh(o([r[0],s]),o([r[2],s])))}else n=i.getCoordinateFromPixelInternal(e),this.setExtent([n[0],n[1],n[0],n[1]]),this.pointerHandler_=xh(n);return!0},e.prototype.handleDragEvent=function(t){if(this.pointerHandler_){var e=t.coordinate;this.setExtent(this.pointerHandler_(e)),this.createOrUpdatePointerFeature_(e)}},e.prototype.handleUpEvent=function(t){this.pointerHandler_=null;var e=this.getExtentInternal();return e&&0!==ue(e)||this.setExtent(null),!1},e.prototype.setMap=function(e){this.extentOverlay_.setMap(e),this.vertexOverlay_.setMap(e),t.prototype.setMap.call(this,e)},e.prototype.getExtent=function(){return bi(this.getExtentInternal(),this.getMap().getView().getProjection())},e.prototype.getExtentInternal=function(){return this.extent_},e.prototype.setExtent=function(t){this.extent_=t||null,this.createOrUpdateExtentFeature_(t),this.dispatchEvent(new _h(this.extent_))},e}(Ql);function vh(){var t=Ln();return function(e,i){return t[pt]}}function mh(){var t=Ln();return function(e,i){return t[ut]}}function xh(t){return function(e){return Vt([t,e])}}function wh(t,e){return t[0]==e[0]?function(i){return Vt([t,[i[0],e[1]]])}:t[1]==e[1]?function(i){return Vt([t,[e[0],i[1]]])}:null}var Sh=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ch=[0,0,0,0],bh=[],Th="modifystart",Eh="modifyend",Ph=function(t){function e(e,i,r){var n=t.call(this,e)||this;return n.features=i,n.mapBrowserEvent=r,n}return Sh(e,t),e}(s),Rh=function(t){function e(e){var i,r=t.call(this,e)||this;if(r.boundHandleFeatureChange_=r.handleFeatureChange_.bind(r),r.condition_=e.condition?e.condition:cu,r.defaultDeleteCondition_=function(t){return function(t){var e=t.originalEvent;return e.altKey&&!(e.metaKey||e.ctrlKey)&&!e.shiftKey}(t)&&au(t)},r.deleteCondition_=e.deleteCondition?e.deleteCondition:r.defaultDeleteCondition_,r.insertVertexCondition_=e.insertVertexCondition?e.insertVertexCondition:ru,r.vertexFeature_=null,r.vertexSegments_=null,r.lastPixel_=[0,0],r.ignoreNextSingleClick_=!1,r.featuresBeingModified_=null,r.rBush_=new ns,r.pixelTolerance_=void 0!==e.pixelTolerance?e.pixelTolerance:10,r.snappedToVertex_=!1,r.changingFeature_=!1,r.dragSegments_=[],r.overlay_=new rs({source:new bs({useSpatialIndex:!1,wrapX:!!e.wrapX}),style:e.style?e.style:Mh(),updateWhileAnimating:!0,updateWhileInteracting:!0}),r.SEGMENT_WRITERS_={Point:r.writePointGeometry_.bind(r),LineString:r.writeLineStringGeometry_.bind(r),LinearRing:r.writeLineStringGeometry_.bind(r),Polygon:r.writePolygonGeometry_.bind(r),MultiPoint:r.writeMultiPointGeometry_.bind(r),MultiLineString:r.writeMultiLineStringGeometry_.bind(r),MultiPolygon:r.writeMultiPolygonGeometry_.bind(r),Circle:r.writeCircleGeometry_.bind(r),GeometryCollection:r.writeGeometryCollectionGeometry_.bind(r)},r.source_=null,r.hitDetection_=null,e.features?i=e.features:e.source&&(r.source_=e.source,i=new et(r.source_.getFeatures()),r.source_.addEventListener(ls,r.handleSourceAdd_.bind(r)),r.source_.addEventListener(cs,r.handleSourceRemove_.bind(r))),!i)throw new Error("The modify interaction requires features, a source or a layer");return e.hitDetection&&(r.hitDetection_=e.hitDetection),r.features_=i,r.features_.forEach(r.addFeature_.bind(r)),r.features_.addEventListener(q,r.handleFeatureAdd_.bind(r)),r.features_.addEventListener(J,r.handleFeatureRemove_.bind(r)),r.lastPointerEvent_=null,r.delta_=[0,0],r}return Sh(e,t),e.prototype.addFeature_=function(t){var e=t.getGeometry();if(e){var i=this.SEGMENT_WRITERS_[e.getType()];i&&i(t,e)}var r=this.getMap();r&&r.isRendered()&&this.getActive()&&this.handlePointerAtPixel_(this.lastPixel_,r),t.addEventListener(T,this.boundHandleFeatureChange_)},e.prototype.willModifyFeatures_=function(t,e){if(!this.featuresBeingModified_){this.featuresBeingModified_=new et;for(var i=this.featuresBeingModified_.getArray(),r=0,n=e.length;r<n;++r){var o=e[r][0].feature;-1===i.indexOf(o)&&this.featuresBeingModified_.push(o)}this.dispatchEvent(new Ph(Th,this.featuresBeingModified_,t))}},e.prototype.removeFeature_=function(t){this.removeFeatureSegmentData_(t),this.vertexFeature_&&0===this.features_.getLength()&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),t.removeEventListener(T,this.boundHandleFeatureChange_)},e.prototype.removeFeatureSegmentData_=function(t){var e=this.rBush_,i=[];e.forEach((function(e){t===e.feature&&i.push(e)}));for(var r=i.length-1;r>=0;--r){for(var n=i[r],o=this.dragSegments_.length-1;o>=0;--o)this.dragSegments_[o][0]===n&&this.dragSegments_.splice(o,1);e.remove(n)}},e.prototype.setActive=function(e){this.vertexFeature_&&!e&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),t.prototype.setActive.call(this,e)},e.prototype.setMap=function(e){this.overlay_.setMap(e),t.prototype.setMap.call(this,e)},e.prototype.getOverlay=function(){return this.overlay_},e.prototype.handleSourceAdd_=function(t){t.feature&&this.features_.push(t.feature)},e.prototype.handleSourceRemove_=function(t){t.feature&&this.features_.remove(t.feature)},e.prototype.handleFeatureAdd_=function(t){this.addFeature_(t.element)},e.prototype.handleFeatureChange_=function(t){if(!this.changingFeature_){var e=t.target;this.removeFeature_(e),this.addFeature_(e)}},e.prototype.handleFeatureRemove_=function(t){var e=t.element;this.removeFeature_(e)},e.prototype.writePointGeometry_=function(t,e){var i=e.getCoordinates(),r={feature:t,geometry:e,segment:[i,i]};this.rBush_.insert(e.getExtent(),r)},e.prototype.writeMultiPointGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r){var o=i[r],a={feature:t,geometry:e,depth:[r],index:r,segment:[o,o]};this.rBush_.insert(e.getExtent(),a)}},e.prototype.writeLineStringGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length-1;r<n;++r){var o=i.slice(r,r+2),a={feature:t,geometry:e,index:r,segment:o};this.rBush_.insert(Vt(o),a)}},e.prototype.writeMultiLineStringGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r)for(var o=i[r],a=0,s=o.length-1;a<s;++a){var l=o.slice(a,a+2),u={feature:t,geometry:e,depth:[r],index:a,segment:l};this.rBush_.insert(Vt(l),u)}},e.prototype.writePolygonGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r)for(var o=i[r],a=0,s=o.length-1;a<s;++a){var l=o.slice(a,a+2),u={feature:t,geometry:e,depth:[r],index:a,segment:l};this.rBush_.insert(Vt(l),u)}},e.prototype.writeMultiPolygonGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r)for(var o=i[r],a=0,s=o.length;a<s;++a)for(var l=o[a],u=0,h=l.length-1;u<h;++u){var c=l.slice(u,u+2),p={feature:t,geometry:e,depth:[a,r],index:u,segment:c};this.rBush_.insert(Vt(c),p)}},e.prototype.writeCircleGeometry_=function(t,e){var i=e.getCenter(),r={feature:t,geometry:e,index:0,segment:[i,i]},n={feature:t,geometry:e,index:1,segment:[i,i]},o=[r,n];r.featureSegments=o,n.featureSegments=o,this.rBush_.insert(te(i),r);var a=e;this.rBush_.insert(a.getExtent(),n)},e.prototype.writeGeometryCollectionGeometry_=function(t,e){for(var i=e.getGeometriesArray(),r=0;r<i.length;++r){var n=i[r];(0,this.SEGMENT_WRITERS_[n.getType()])(t,n)}},e.prototype.createOrUpdateVertexFeature_=function(t,e,i){var r=this.vertexFeature_;r?r.getGeometry().setCoordinates(t):(r=new nt(new er(t)),this.vertexFeature_=r,this.overlay_.getSource().addFeature(r));return r.set("features",e),r.set("geometries",i),r},e.prototype.handleEvent=function(e){return!e.originalEvent||(this.lastPointerEvent_=e,e.map.getView().getInteracting()||e.type!=Js.POINTERMOVE||this.handlingDownUpSequence||this.handlePointerMove_(e),this.vertexFeature_&&this.deleteCondition_(e)&&(i=!(e.type!=Js.SINGLECLICK||!this.ignoreNextSingleClick_)||this.removePoint()),e.type==Js.SINGLECLICK&&(this.ignoreNextSingleClick_=!1),t.prototype.handleEvent.call(this,e)&&!i);var i},e.prototype.handleDragEvent=function(t){this.ignoreNextSingleClick_=!1,this.willModifyFeatures_(t,this.dragSegments_);for(var e=[t.coordinate[0]+this.delta_[0],t.coordinate[1]+this.delta_[1]],i=[],r=[],n=0,o=this.dragSegments_.length;n<o;++n){var a=this.dragSegments_[n],s=a[0],l=s.feature;-1===i.indexOf(l)&&i.push(l);var u=s.geometry;-1===r.indexOf(u)&&r.push(u);for(var h=s.depth,c=void 0,p=s.segment,f=a[1];e.length<u.getStride();)e.push(p[f][e.length]);switch(u.getType()){case ut:c=e,p[0]=e,p[1]=e;break;case ft:(c=u.getCoordinates())[s.index]=e,p[0]=e,p[1]=e;break;case ht:(c=u.getCoordinates())[s.index+f]=e,p[f]=e;break;case dt:case pt:(c=u.getCoordinates())[h[0]][s.index+f]=e,p[f]=e;break;case gt:(c=u.getCoordinates())[h[1]][h[0]][s.index+f]=e,p[f]=e;break;case yt:if(p[0]=e,p[1]=e,0===s.index)this.changingFeature_=!0,u.setCenter(e),this.changingFeature_=!1;else{this.changingFeature_=!0;t.map.getView().getProjection();var d=oi(Ci(u.getCenter()),Ci(e));u.setRadius(d),this.changingFeature_=!1}}c&&this.setGeometryCoordinates_(u,c)}this.createOrUpdateVertexFeature_(e,i,r)},e.prototype.handleDownEvent=function(t){if(!this.condition_(t))return!1;var e=t.coordinate;this.handlePointerAtPixel_(t.pixel,t.map,e),this.dragSegments_.length=0,this.featuresBeingModified_=null;var i=this.vertexFeature_;if(i){var n=t.map.getView().getProjection(),o=[],a=i.getGeometry().getCoordinates(),s=Vt([a]),l=this.rBush_.getInExtent(s),u={};l.sort(Fh);for(var h=0,c=l.length;h<c;++h){var p=l[h],f=p.segment,d=r(p.geometry),g=p.depth;if(g&&(d+="-"+g.join("-")),u[d]||(u[d]=new Array(2)),p.geometry.getType()!==yt||1!==p.index)if(!ii(f[0],a)||u[d][0])if(!ii(f[1],a)||u[d][1])r(f)in this.vertexSegments_&&!u[d][0]&&!u[d][1]&&this.insertVertexCondition_(t)&&o.push(p);else{if((p.geometry.getType()===ht||p.geometry.getType()===dt)&&u[d][0]&&0===u[d][0].index)continue;this.dragSegments_.push([p,1]),u[d][1]=p}else this.dragSegments_.push([p,0]),u[d][0]=p;else ii(Ih(e,p,n),a)&&!u[d][0]&&(this.dragSegments_.push([p,0]),u[d][0]=p)}o.length&&this.willModifyFeatures_(t,[o]);for(var _=o.length-1;_>=0;--_)this.insertVertex_(o[_],a)}return!!this.vertexFeature_},e.prototype.handleUpEvent=function(t){for(var e=this.dragSegments_.length-1;e>=0;--e){var i=this.dragSegments_[e][0],r=i.geometry;if(r.getType()===yt){var n=r.getCenter(),o=i.featureSegments[0],a=i.featureSegments[1];o.segment[0]=n,o.segment[1]=n,a.segment[0]=n,a.segment[1]=n,this.rBush_.update(te(n),o);var s=r;this.rBush_.update(s.getExtent(),a)}else this.rBush_.update(Vt(i.segment),i)}return this.featuresBeingModified_&&(this.dispatchEvent(new Ph(Eh,this.featuresBeingModified_,t)),this.featuresBeingModified_=null),!1},e.prototype.handlePointerMove_=function(t){this.lastPixel_=t.pixel,this.handlePointerAtPixel_(t.pixel,t.map,t.coordinate)},e.prototype.handlePointerAtPixel_=function(t,e,i){var n,o,a=this,s=i||e.getCoordinateFromPixel(t),l=e.getView().getProjection();if(this.hitDetection_){var u="object"==typeof this.hitDetection_?function(t){return t===a.hitDetection_}:void 0;e.forEachFeatureAtPixel(t,(function(t,e,i){if((i=i||t.getGeometry()).getType()===ut){o=i;var r=i.getCoordinates();n=[{feature:t,geometry:i,segment:[r,r]}]}return!0}),{layerFilter:u})}if(!n){var h=bi(Xt(Ti(te(s,Ch)),e.getView().getResolution()*this.pixelTolerance_,Ch));n=this.rBush_.getInExtent(h)}if(n&&n.length>0){var c=n.sort((function(t,e){return Oh(s,t,l)-Oh(s,e,l)}))[0],p=c.segment,f=Ih(s,c,l),d=e.getPixelFromCoordinate(f),g=oi(t,d);if(o||g<=this.pixelTolerance_){var _={};if(_[r(p)]=!0,this.delta_[0]=f[0]-s[0],this.delta_[1]=f[1]-s[1],c.geometry.getType()===yt&&1===c.index)this.snappedToVertex_=!0,this.createOrUpdateVertexFeature_(f,[c.feature],[c.geometry]);else{var y=e.getPixelFromCoordinate(p[0]),v=e.getPixelFromCoordinate(p[1]),m=ni(d,y),x=ni(d,v);g=Math.sqrt(Math.min(m,x)),this.snappedToVertex_=g<=this.pixelTolerance_,this.snappedToVertex_&&(f=m>x?p[1]:p[0]),this.createOrUpdateVertexFeature_(f,[c.feature],[c.geometry]);var w={};w[r(c.geometry)]=!0;for(var S=1,C=n.length;S<C;++S){var b=n[S].segment;if(!(ii(p[0],b[0])&&ii(p[1],b[1])||ii(p[0],b[1])&&ii(p[1],b[0])))break;var T=r(n[S].geometry);T in w||(w[T]=!0,_[r(b)]=!0)}}return void(this.vertexSegments_=_)}}this.vertexFeature_&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null)},e.prototype.insertVertex_=function(t,e){for(var i,r=t.segment,n=t.feature,o=t.geometry,a=t.depth,s=t.index;e.length<o.getStride();)e.push(0);switch(o.getType()){case dt:case pt:(i=o.getCoordinates())[a[0]].splice(s+1,0,e);break;case gt:(i=o.getCoordinates())[a[1]][a[0]].splice(s+1,0,e);break;case ht:(i=o.getCoordinates()).splice(s+1,0,e);break;default:return}this.setGeometryCoordinates_(o,i);var l=this.rBush_;l.remove(t),this.updateSegmentIndices_(o,s,a,1);var u={segment:[r[0],e],feature:n,geometry:o,depth:a,index:s};l.insert(Vt(u.segment),u),this.dragSegments_.push([u,1]);var h={segment:[e,r[1]],feature:n,geometry:o,depth:a,index:s+1};l.insert(Vt(h.segment),h),this.dragSegments_.push([h,0]),this.ignoreNextSingleClick_=!0},e.prototype.removePoint=function(){if(this.lastPointerEvent_&&this.lastPointerEvent_.type!=Js.POINTERDRAG){var t=this.lastPointerEvent_;this.willModifyFeatures_(t,this.dragSegments_);var e=this.removeVertex_();return this.dispatchEvent(new Ph(Eh,this.featuresBeingModified_,t)),this.featuresBeingModified_=null,e}return!1},e.prototype.removeVertex_=function(){var t,e,i,n,o,a,s,l,u,h,c,p=this.dragSegments_,f={},d=!1;for(o=p.length-1;o>=0;--o)c=r((h=(i=p[o])[0]).feature),h.depth&&(c+="-"+h.depth.join("-")),c in f||(f[c]={}),0===i[1]?(f[c].right=h,f[c].index=h.index):1==i[1]&&(f[c].left=h,f[c].index=h.index+1);for(c in f){switch(u=f[c].right,s=f[c].left,(l=(a=f[c].index)-1)<0&&(l=0),t=e=(n=(h=void 0!==s?s:u).geometry).getCoordinates(),d=!1,n.getType()){case dt:e[h.depth[0]].length>2&&(e[h.depth[0]].splice(a,1),d=!0);break;case ht:e.length>2&&(e.splice(a,1),d=!0);break;case gt:t=t[h.depth[1]];case pt:(t=t[h.depth[0]]).length>4&&(a==t.length-1&&(a=0),t.splice(a,1),d=!0,0===a&&(t.pop(),t.push(t[0]),l=t.length-1))}if(d){this.setGeometryCoordinates_(n,e);var g=[];if(void 0!==s&&(this.rBush_.remove(s),g.push(s.segment[0])),void 0!==u&&(this.rBush_.remove(u),g.push(u.segment[1])),void 0!==s&&void 0!==u){var _={depth:h.depth,feature:h.feature,geometry:h.geometry,index:l,segment:g};this.rBush_.insert(Vt(_.segment),_)}this.updateSegmentIndices_(n,a,h.depth,-1),this.vertexFeature_&&(this.overlay_.getSource().removeFeature(this.vertexFeature_),this.vertexFeature_=null),p.length=0}}return d},e.prototype.setGeometryCoordinates_=function(t,e){this.changingFeature_=!0,t.setCoordinates(e),this.changingFeature_=!1},e.prototype.updateSegmentIndices_=function(t,e,i,r){this.rBush_.forEachInExtent(t.getExtent(),(function(n){n.geometry===t&&(void 0===i||void 0===n.depth||g(n.depth,i))&&n.index>e&&(n.index+=r)}))},e}(Ql);function Fh(t,e){return t.index-e.index}function Oh(t,e,i){var r=e.geometry;if(r.getType()===yt){var n=r;if(1===e.index){null;var o=ni(n.getCenter(),Ci(t)),a=Math.sqrt(o)-n.getRadius();return a*a}}var s=Ci(t);return bh[0]=Ci(e.segment[0]),bh[1]=Ci(e.segment[1]),ai(s,bh)}function Ih(t,e,i){var r=e.geometry;if(r.getType()===yt&&1===e.index){var n=r;return Si(n.getClosestPoint(Ci(t)))}var o=Ci(t);return bh[0]=Ci(e.segment[0]),bh[1]=Ci(e.segment[1]),Si(ei(o,bh))}function Mh(){var t=Ln();return function(e,i){return t[ut]}}var Lh=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ah="select",kh=function(t){function e(e,i,r,n){var o=t.call(this,e)||this;return o.selected=i,o.deselected=r,o.mapBrowserEvent=n,o}return Lh(e,t),e}(s),Dh={},jh=function(t){function e(e){var i,r,n=t.call(this)||this,o=e||{};if(n.boundAddFeature_=n.addFeature_.bind(n),n.boundRemoveFeature_=n.removeFeature_.bind(n),n.condition_=o.condition?o.condition:au,n.addCondition_=o.addCondition?o.addCondition:ou,n.removeCondition_=o.removeCondition?o.removeCondition:ou,n.toggleCondition_=o.toggleCondition?o.toggleCondition:lu,n.multi_=!!o.multi&&o.multi,n.filter_=o.filter?o.filter:_,n.hitTolerance_=o.hitTolerance?o.hitTolerance:0,n.style_=void 0!==o.style?o.style:(d((i=Ln())[pt],i[ht]),d(i[_t],i[ht]),function(t){return t.getGeometry()?i[t.getGeometry().getType()]:null}),n.features_=o.features||new et,o.layers)if("function"==typeof o.layers)r=o.layers;else{var a=o.layers;r=function(t){return c(a,t)}}else r=_;return n.layerFilter_=r,n.featureLayerAssociation_={},n}return Lh(e,t),e.prototype.addFeatureLayerAssociation_=function(t,e){this.featureLayerAssociation_[r(t)]=e},e.prototype.getFeatures=function(){return this.features_},e.prototype.getHitTolerance=function(){return this.hitTolerance_},e.prototype.getLayer=function(t){return this.featureLayerAssociation_[r(t)]},e.prototype.setHitTolerance=function(t){this.hitTolerance_=t},e.prototype.setMap=function(e){this.getMap()&&this.style_&&this.features_.forEach(this.restorePreviousStyle_.bind(this)),t.prototype.setMap.call(this,e),e?(this.features_.addEventListener(q,this.boundAddFeature_),this.features_.addEventListener(J,this.boundRemoveFeature_),this.style_&&this.features_.forEach(this.applySelectedStyle_.bind(this))):(this.features_.removeEventListener(q,this.boundAddFeature_),this.features_.removeEventListener(J,this.boundRemoveFeature_))},e.prototype.addFeature_=function(t){var e=t.element;this.style_&&this.applySelectedStyle_(e)},e.prototype.removeFeature_=function(t){var e=t.element;this.style_&&this.restorePreviousStyle_(e)},e.prototype.getStyle=function(){return this.style_},e.prototype.applySelectedStyle_=function(t){var e=r(t);e in Dh||(Dh[e]=t.getStyle()),t.setStyle(this.style_)},e.prototype.restorePreviousStyle_=function(t){for(var i=this.getMap().getInteractions().getArray(),n=i.length-1;n>=0;--n){var o=i[n];if(o!==this&&o instanceof e&&o.getStyle()&&-1!==o.getFeatures().getArray().lastIndexOf(t))return void t.setStyle(o.getStyle())}var a=r(t);t.setStyle(Dh[a]),delete Dh[a]},e.prototype.removeFeatureLayerAssociation_=function(t){delete this.featureLayerAssociation_[r(t)]},e.prototype.handleEvent=function(t){if(!this.condition_(t))return!0;var e=this.addCondition_(t),i=this.removeCondition_(t),r=this.toggleCondition_(t),n=!e&&!i&&!r,o=t.map,a=this.getFeatures(),s=[],l=[];if(n){x(this.featureLayerAssociation_),o.forEachFeatureAtPixel(t.pixel,function(t,e){if(this.filter_(t,e))return l.push(t),this.addFeatureLayerAssociation_(t,e),!this.multi_}.bind(this),{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(var u=a.getLength()-1;u>=0;--u){var h=a.item(u),p=l.indexOf(h);p>-1?l.splice(p,1):(a.remove(h),s.push(h))}0!==l.length&&a.extend(l)}else{o.forEachFeatureAtPixel(t.pixel,function(t,n){if(this.filter_(t,n))return!e&&!r||c(a.getArray(),t)?(i||r)&&c(a.getArray(),t)&&(s.push(t),this.removeFeatureLayerAssociation_(t)):(l.push(t),this.addFeatureLayerAssociation_(t,n)),!this.multi_}.bind(this),{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_});for(var f=s.length-1;f>=0;--f)a.remove(s[f]);a.extend(l)}return(l.length>0||s.length>0)&&this.dispatchEvent(new kh(Ah,l,s,t)),!0},e}(Kl);var Gh=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}();function Nh(t){return t.feature?t.feature:t.element?t.element:void 0}var zh=[],Bh=function(t){function e(e){var i=this,r=e||{},n=r;return n.handleDownEvent||(n.handleDownEvent=_),n.stopDown||(n.stopDown=y),(i=t.call(this,n)||this).source_=r.source?r.source:null,i.vertex_=void 0===r.vertex||r.vertex,i.edge_=void 0===r.edge||r.edge,i.features_=r.features?r.features:null,i.featuresListenerKeys_=[],i.featureChangeListenerKeys_={},i.indexedFeaturesExtents_={},i.pendingFeatures_={},i.pixelTolerance_=void 0!==r.pixelTolerance?r.pixelTolerance:10,i.rBush_=new ns,i.SEGMENT_WRITERS_={Point:i.writePointGeometry_.bind(i),LineString:i.writeLineStringGeometry_.bind(i),LinearRing:i.writeLineStringGeometry_.bind(i),Polygon:i.writePolygonGeometry_.bind(i),MultiPoint:i.writeMultiPointGeometry_.bind(i),MultiLineString:i.writeMultiLineStringGeometry_.bind(i),MultiPolygon:i.writeMultiPolygonGeometry_.bind(i),GeometryCollection:i.writeGeometryCollectionGeometry_.bind(i),Circle:i.writeCircleGeometry_.bind(i)},i}return Gh(e,t),e.prototype.addFeature=function(t,e){var i=void 0===e||e,n=r(t),o=t.getGeometry();if(o){var a=this.SEGMENT_WRITERS_[o.getType()];a&&(this.indexedFeaturesExtents_[n]=o.getExtent([1/0,1/0,-1/0,-1/0]),a(t,o))}i&&(this.featureChangeListenerKeys_[n]=N(t,T,this.handleFeatureChange_,this))},e.prototype.forEachFeatureAdd_=function(t){this.addFeature(t)},e.prototype.forEachFeatureRemove_=function(t){this.removeFeature(t)},e.prototype.getFeatures_=function(){var t;return this.features_?t=this.features_:this.source_&&(t=this.source_.getFeatures()),t},e.prototype.handleEvent=function(e){var i=this.snapTo(e.pixel,e.coordinate,e.map);return i.snapped&&(e.coordinate=i.vertex.slice(0,2),e.pixel=i.vertexPixel),t.prototype.handleEvent.call(this,e)},e.prototype.handleFeatureAdd_=function(t){var e=Nh(t);this.addFeature(e)},e.prototype.handleFeatureRemove_=function(t){var e=Nh(t);this.removeFeature(e)},e.prototype.handleFeatureChange_=function(t){var e=t.target;if(this.handlingDownUpSequence){var i=r(e);i in this.pendingFeatures_||(this.pendingFeatures_[i]=e)}else this.updateFeature_(e)},e.prototype.handleUpEvent=function(t){var e=w(this.pendingFeatures_);return e.length&&(e.forEach(this.updateFeature_.bind(this)),this.pendingFeatures_={}),!1},e.prototype.removeFeature=function(t,e){var i=void 0===e||e,n=r(t),o=this.indexedFeaturesExtents_[n];if(o){var a=this.rBush_,s=[];a.forEachInExtent(o,(function(e){t===e.feature&&s.push(e)}));for(var l=s.length-1;l>=0;--l)a.remove(s[l])}i&&(B(this.featureChangeListenerKeys_[n]),delete this.featureChangeListenerKeys_[n])},e.prototype.setMap=function(e){var i=this.getMap(),r=this.featuresListenerKeys_,n=this.getFeatures_();i&&(r.forEach(B),r.length=0,n.forEach(this.forEachFeatureRemove_.bind(this))),t.prototype.setMap.call(this,e),e&&(this.features_?r.push(N(this.features_,q,this.handleFeatureAdd_,this),N(this.features_,J,this.handleFeatureRemove_,this)):this.source_&&r.push(N(this.source_,ls,this.handleFeatureAdd_,this),N(this.source_,cs,this.handleFeatureRemove_,this)),n.forEach(this.forEachFeatureAdd_.bind(this)))},e.prototype.snapTo=function(t,e,i){var r=Vt([i.getCoordinateFromPixel([t[0]-this.pixelTolerance_,t[1]+this.pixelTolerance_]),i.getCoordinateFromPixel([t[0]+this.pixelTolerance_,t[1]-this.pixelTolerance_])]),n=this.rBush_.getInExtent(r);this.vertex_&&!this.edge_&&(n=n.filter((function(t){return t.feature.getGeometry().getType()!==yt})));var o=!1,a=null,s=null;if(0===n.length)return{snapped:o,vertex:a,vertexPixel:s};i.getView().getProjection();for(var l,u=Ci(e),h=1/0,c=0;c<n.length;++c){var p=n[c];zh[0]=Ci(p.segment[0]),zh[1]=Ci(p.segment[1]);var f=ai(u,zh);f<h&&(l=p,h=f)}var d=l.segment;if(this.vertex_&&!this.edge_){var g=i.getPixelFromCoordinate(d[0]),_=i.getPixelFromCoordinate(d[1]),y=ni(t,g),v=ni(t,_);Math.sqrt(Math.min(y,v))<=this.pixelTolerance_&&(o=!0,a=y>v?d[1]:d[0],s=i.getPixelFromCoordinate(a))}else if(this.edge_){var m=l.feature.getGeometry().getType()===yt;if(m){var x=l.feature.getGeometry();null,a=Si(function(t,e){var i=e.getRadius(),r=e.getCenter(),n=r[0],o=r[1],a=t[0]-n,s=t[1]-o;0===a&&0===s&&(a=1);var l=Math.sqrt(a*a+s*s);return[n+i*a/l,o+i*s/l]}(u,x))}else zh[0]=Ci(d[0]),zh[1]=Ci(d[1]),a=Si(ei(u,zh));if(oi(t,s=i.getPixelFromCoordinate(a))<=this.pixelTolerance_&&(o=!0,this.vertex_&&!m)){g=i.getPixelFromCoordinate(d[0]),_=i.getPixelFromCoordinate(d[1]),y=ni(s,g),v=ni(s,_);Math.sqrt(Math.min(y,v))<=this.pixelTolerance_&&(a=y>v?d[1]:d[0],s=i.getPixelFromCoordinate(a))}}return o&&(s=[Math.round(s[0]),Math.round(s[1])]),{snapped:o,vertex:a,vertexPixel:s}},e.prototype.updateFeature_=function(t){this.removeFeature(t,!1),this.addFeature(t,!1)},e.prototype.writeCircleGeometry_=function(t,e){this.getMap().getView().getProjection();for(var i=vr(e).getCoordinates()[0],r=0,n=i.length-1;r<n;++r){var o=i.slice(r,r+2),a={feature:t,segment:o};this.rBush_.insert(Vt(o),a)}},e.prototype.writeGeometryCollectionGeometry_=function(t,e){for(var i=e.getGeometriesArray(),r=0;r<i.length;++r){var n=this.SEGMENT_WRITERS_[i[r].getType()];n&&n(t,i[r])}},e.prototype.writeLineStringGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length-1;r<n;++r){var o=i.slice(r,r+2),a={feature:t,segment:o};this.rBush_.insert(Vt(o),a)}},e.prototype.writeMultiLineStringGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r)for(var o=i[r],a=0,s=o.length-1;a<s;++a){var l=o.slice(a,a+2),u={feature:t,segment:l};this.rBush_.insert(Vt(l),u)}},e.prototype.writeMultiPointGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r){var o=i[r],a={feature:t,segment:[o,o]};this.rBush_.insert(e.getExtent(),a)}},e.prototype.writeMultiPolygonGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r)for(var o=i[r],a=0,s=o.length;a<s;++a)for(var l=o[a],u=0,h=l.length-1;u<h;++u){var c=l.slice(u,u+2),p={feature:t,segment:c};this.rBush_.insert(Vt(c),p)}},e.prototype.writePointGeometry_=function(t,e){var i=e.getCoordinates(),r={feature:t,segment:[i,i]};this.rBush_.insert(e.getExtent(),r)},e.prototype.writePolygonGeometry_=function(t,e){for(var i=e.getCoordinates(),r=0,n=i.length;r<n;++r)for(var o=i[r],a=0,s=o.length-1;a<s;++a){var l=o.slice(a,a+2),u={feature:t,segment:l};this.rBush_.insert(Vt(l),u)}},e}(Ql),Uh=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Vh="translatestart",Xh="translating",Wh="translateend",Yh=function(t){function e(e,i,r,n,o){var a=t.call(this,e)||this;return a.features=i,a.coordinate=r,a.startCoordinate=n,a.mapBrowserEvent=o,a}return Uh(e,t),e}(s),Kh=function(t){function e(e){var i,r=this,n=e||{};if((r=t.call(this,n)||this).lastCoordinate_=null,r.startCoordinate_=null,r.features_=void 0!==n.features?n.features:null,n.layers)if("function"==typeof n.layers)i=n.layers;else{var o=n.layers;i=function(t){return c(o,t)}}else i=_;return r.layerFilter_=i,r.filter_=n.filter?n.filter:_,r.hitTolerance_=n.hitTolerance?n.hitTolerance:0,r.lastFeature_=null,r.addEventListener(H(Wl),r.handleActiveChanged_),r}return Uh(e,t),e.prototype.handleDownEvent=function(t){if(this.lastFeature_=this.featuresAtPixel_(t.pixel,t.map),!this.lastCoordinate_&&this.lastFeature_){this.startCoordinate_=t.coordinate,this.lastCoordinate_=t.coordinate,this.handleMoveEvent(t);var e=this.features_||new et([this.lastFeature_]);return this.dispatchEvent(new Yh(Vh,e,t.coordinate,this.startCoordinate_,t)),!0}return!1},e.prototype.handleUpEvent=function(t){if(this.lastCoordinate_){this.lastCoordinate_=null,this.handleMoveEvent(t);var e=this.features_||new et([this.lastFeature_]);return this.dispatchEvent(new Yh(Wh,e,t.coordinate,this.startCoordinate_,t)),this.startCoordinate_=null,!0}return!1},e.prototype.handleDragEvent=function(t){if(this.lastCoordinate_){var e=t.coordinate,i=e[0]-this.lastCoordinate_[0],r=e[1]-this.lastCoordinate_[1],n=this.features_||new et([this.lastFeature_]);n.forEach((function(t){var e=t.getGeometry();e.translate(i,r),t.setGeometry(e)})),this.lastCoordinate_=e,this.dispatchEvent(new Yh(Xh,n,e,this.startCoordinate_,t))}},e.prototype.handleMoveEvent=function(t){var e=t.map.getViewport();this.featuresAtPixel_(t.pixel,t.map)?(e.classList.remove(this.lastCoordinate_?"ol-grab":"ol-grabbing"),e.classList.add(this.lastCoordinate_?"ol-grabbing":"ol-grab")):e.classList.remove("ol-grab","ol-grabbing")},e.prototype.featuresAtPixel_=function(t,e){return e.forEachFeatureAtPixel(t,function(t,e){if(this.filter_(t,e)&&(!this.features_||c(this.features_.getArray(),t)))return t}.bind(this),{layerFilter:this.layerFilter_,hitTolerance:this.hitTolerance_})},e.prototype.getHitTolerance=function(){return this.hitTolerance_},e.prototype.setHitTolerance=function(t){this.hitTolerance_=t},e.prototype.setMap=function(e){var i=this.getMap();t.prototype.setMap.call(this,e),this.updateState_(i)},e.prototype.handleActiveChanged_=function(){this.updateState_(null)},e.prototype.updateState_=function(t){var e=this.getMap(),i=this.getActive();e&&i||(e=e||t)&&e.getViewport().classList.remove("ol-grab","ol-grabbing")},e}(Ql);function Zh(t){var e=t||{},i=new et,r=new Gs(-.005,.05,100);return(void 0===e.altShiftDragRotate||e.altShiftDragRotate)&&i.push(new gu),(void 0===e.doubleClickZoom||e.doubleClickZoom)&&i.push(new ql({delta:e.zoomDelta,duration:e.zoomDuration})),(void 0===e.dragPan||e.dragPan)&&i.push(new fu({onFocusOnly:e.onFocusOnly,kinetic:r})),(void 0===e.pinchRotate||e.pinchRotate)&&i.push(new zu),(void 0===e.pinchZoom||e.pinchZoom)&&i.push(new Uu({duration:e.zoomDuration})),(void 0===e.keyboard||e.keyboard)&&(i.push(new Mu),i.push(new Au({delta:e.zoomDelta,duration:e.zoomDuration}))),(void 0===e.mouseWheelZoom||e.mouseWheelZoom)&&i.push(new Gu({onFocusOnly:e.onFocusOnly,duration:e.zoomDuration})),(void 0===e.shiftDragZoom||e.shiftDragZoom)&&i.push(new Eu({duration:e.zoomDuration})),i}var Hh=Object.freeze({__proto__:null,defaults:Zh,DoubleClickZoom:ql,DragAndDrop:Yu,DragBox:bu,DragPan:fu,DragRotate:gu,DragRotateAndZoom:Zu,DragZoom:Eu,Draw:fh,Extent:yh,Interaction:Kl,KeyboardPan:Mu,KeyboardZoom:Au,Modify:Rh,MouseWheelZoom:Gu,PinchRotate:zu,PinchZoom:Uu,Pointer:Ql,Select:jh,Snap:Bh,Translate:Kh}),qh=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Jh=function(t){function e(e){return(e=m({},e)).controls||(e.controls=function(t){var e=t||{},i=new et;return(void 0===e.zoom||e.zoom)&&i.push(new Dl(e.zoomOptions)),(void 0===e.rotate||e.rotate)&&i.push(new Al(e.rotateOptions)),(void 0===e.attribution||e.attribution)&&i.push(new Ml(e.attributionOptions)),i}()),e.interactions||(e.interactions=Zh({onFocusOnly:!0})),t.call(this,e)||this}return qh(e,t),e.prototype.createRenderer=function(){return new Vs(this)},e}(Rl),Qh=function(){function t(t){this.highWaterMark=void 0!==t?t:2048,this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null}return t.prototype.canExpireCache=function(){return this.highWaterMark>0&&this.getCount()>this.highWaterMark},t.prototype.clear=function(){this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null},t.prototype.containsKey=function(t){return this.entries_.hasOwnProperty(t)},t.prototype.forEach=function(t){for(var e=this.oldest_;e;)t(e.value_,e.key_,this),e=e.newer},t.prototype.get=function(t,e){var i=this.entries_[t];return it(void 0!==i,15),i===this.newest_||(i===this.oldest_?(this.oldest_=this.oldest_.newer,this.oldest_.older=null):(i.newer.older=i.older,i.older.newer=i.newer),i.newer=null,i.older=this.newest_,this.newest_.newer=i,this.newest_=i),i.value_},t.prototype.remove=function(t){var e=this.entries_[t];return it(void 0!==e,15),e===this.newest_?(this.newest_=e.older,this.newest_&&(this.newest_.newer=null)):e===this.oldest_?(this.oldest_=e.newer,this.oldest_&&(this.oldest_.older=null)):(e.newer.older=e.older,e.older.newer=e.newer),delete this.entries_[t],--this.count_,e.value_},t.prototype.getCount=function(){return this.count_},t.prototype.getKeys=function(){var t,e=new Array(this.count_),i=0;for(t=this.newest_;t;t=t.older)e[i++]=t.key_;return e},t.prototype.getValues=function(){var t,e=new Array(this.count_),i=0;for(t=this.newest_;t;t=t.older)e[i++]=t.value_;return e},t.prototype.peekLast=function(){return this.oldest_.value_},t.prototype.peekLastKey=function(){return this.oldest_.key_},t.prototype.peekFirstKey=function(){return this.newest_.key_},t.prototype.pop=function(){var t=this.oldest_;return delete this.entries_[t.key_],t.newer&&(t.newer.older=null),this.oldest_=t.newer,this.oldest_||(this.newest_=null),--this.count_,t.value_},t.prototype.replace=function(t,e){this.get(t),this.entries_[t].value_=e},t.prototype.set=function(t,e){it(!(t in this.entries_),16);var i={key_:t,newer:null,older:this.newest_,value_:e};this.newest_?this.newest_.newer=i:this.oldest_=i,this.newest_=i,this.entries_[t]=i,++this.count_},t.prototype.setSize=function(t){this.highWaterMark=t},t}();function $h(t,e,i,r){return void 0!==r?(r[0]=t,r[1]=e,r[2]=i,r):[t,e,i]}function tc(t,e,i){return t+"/"+e+"/"+i}function ec(t){return tc(t[0],t[1],t[2])}function ic(t){return t.split("/").map(Number)}function rc(t){return(t[1]<<t[0])+t[2]}var nc=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),oc=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return nc(e,t),e.prototype.expireCache=function(t){for(;this.canExpireCache();){if(this.peekLast().getKey()in t)break;this.pop().release()}},e.prototype.pruneExceptNewestZ=function(){if(0!==this.getCount()){var t=ic(this.peekFirstKey())[0];this.forEach(function(e){e.tileCoord[0]!==t&&(this.remove(ec(e.tileCoord)),e.release())}.bind(this))}},e}(Qh),ac=function(){function t(t,e,i,r){this.minX=t,this.maxX=e,this.minY=i,this.maxY=r}return t.prototype.contains=function(t){return this.containsXY(t[1],t[2])},t.prototype.containsTileRange=function(t){return this.minX<=t.minX&&t.maxX<=this.maxX&&this.minY<=t.minY&&t.maxY<=this.maxY},t.prototype.containsXY=function(t,e){return this.minX<=t&&t<=this.maxX&&this.minY<=e&&e<=this.maxY},t.prototype.equals=function(t){return this.minX==t.minX&&this.minY==t.minY&&this.maxX==t.maxX&&this.maxY==t.maxY},t.prototype.extend=function(t){t.minX<this.minX&&(this.minX=t.minX),t.maxX>this.maxX&&(this.maxX=t.maxX),t.minY<this.minY&&(this.minY=t.minY),t.maxY>this.maxY&&(this.maxY=t.maxY)},t.prototype.getHeight=function(){return this.maxY-this.minY+1},t.prototype.getSize=function(){return[this.getWidth(),this.getHeight()]},t.prototype.getWidth=function(){return this.maxX-this.minX+1},t.prototype.intersects=function(t){return this.minX<=t.maxX&&this.maxX>=t.minX&&this.minY<=t.maxY&&this.maxY>=t.minY},t}();function sc(t,e,i,r,n){return void 0!==n?(n.minX=t,n.maxX=e,n.minY=i,n.maxY=r,n):new ac(t,e,i,r)}var lc=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),uc=[],hc=function(t){function e(e,i,r,n){var o=t.call(this,e,i,{transition:0})||this;return o.context_={},o.executorGroups={},o.declutterExecutorGroups={},o.loadingSourceTiles=0,o.errorSourceTileKeys={},o.hitDetectionImageData={},o.replayState_={},o.sourceTiles=null,o.wantedResolution,o.getSourceTiles=n.bind(void 0,o),o.sourceZ=-1,o.hifi=!1,o.wrappedTileCoord=r,o}return lc(e,t),e.prototype.getContext=function(t){var e=r(t);return e in this.context_||(this.context_[e]=nn(1,1,uc)),this.context_[e]},e.prototype.hasContext=function(t){return r(t)in this.context_},e.prototype.getImage=function(t){return this.hasContext(t)?this.getContext(t).canvas:null},e.prototype.getReplayState=function(t){var e=r(t);return e in this.replayState_||(this.replayState_[e]={dirty:!1,renderedRenderOrder:null,renderedResolution:NaN,renderedRevision:-1,renderedTileResolution:NaN,renderedTileRevision:-1,renderedZ:-1,renderedTileZ:-1}),this.replayState_[e]},e.prototype.load=function(){this.getSourceTiles()},e.prototype.release=function(){for(var e in this.context_)uc.push(this.context_[e].canvas),delete this.context_[e];t.prototype.release.call(this)},e}(ks),cc=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),pc=function(t){function e(e,i,r,n,o,a){var s=t.call(this,e,i,a)||this;return s.extent=null,s.format_=n,s.features_=null,s.loader_,s.projection=null,s.resolution,s.tileLoadFunction_=o,s.url_=r,s.key=r,s}return cc(e,t),e.prototype.getFormat=function(){return this.format_},e.prototype.getFeatures=function(){return this.features_},e.prototype.load=function(){this.state==Ts&&(this.setState(Es),this.tileLoadFunction_(this,this.url_),this.loader_&&this.loader_(this.extent,this.resolution,this.projection))},e.prototype.onLoad=function(t,e){this.setFeatures(t)},e.prototype.onError=function(){this.setState(Rs)},e.prototype.setFeatures=function(t){this.features_=t,this.setState(Ps)},e.prototype.setLoader=function(t){this.loader_=t},e}(ks);"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var fc=function(t,e){return t(e={exports:{}},e.exports),e.exports}((function(t,e){t.exports=function(t,e,i){t="default"in t?t.default:t,i="default"in i?i.default:i;var r=function(){function t(t,e){for(var i=0;i<e.length;i++){var r=e[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,i,r){return i&&t(e.prototype,i),r&&t(e,r),e}}(),n="layer-switcher-",o=function(t){function o(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,o);var e=Object.assign({},t),i=e.tipLabel?e.tipLabel:"Legend",r=e.collapseTipLabel?e.collapseTipLabel:"Collapse legend",a=document.createElement("div"),s=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}(this,(o.__proto__||Object.getPrototypeOf(o)).call(this,{element:a,target:e.target}));s.activationMode=e.activationMode||"mouseover",s.startActive=!0===e.startActive;var l=void 0!==e.label?e.label:"",u=void 0!==e.collapseLabel?e.collapseLabel:"»";s.groupSelectStyle=o.getGroupSelectStyle(e.groupSelectStyle),s.reverse=!1!==e.reverse,s.mapListeners=[],s.hiddenClassName="ol-unselectable ol-control layer-switcher",o.isTouchDevice_()&&(s.hiddenClassName+=" touch"),s.shownClassName="shown",a.className=s.hiddenClassName;var h=document.createElement("button");return h.setAttribute("title",i),h.setAttribute("aria-label",i),a.appendChild(h),s.panel=document.createElement("div"),s.panel.className="panel",a.appendChild(s.panel),o.enableTouchScroll_(s.panel),h.textContent=l,a.classList.add(n+"group-select-style-"+s.groupSelectStyle),a.classList.add(n+"activation-mode-"+s.activationMode),"click"===s.activationMode?(a.classList.add("activationModeClick"),s.startActive&&(h.textContent=u,h.setAttribute("title",r),h.setAttribute("aria-label",r)),h.onclick=function(t){var e=t||window.event;s.element.classList.contains(s.shownClassName)?(s.hidePanel(),h.textContent=l,h.setAttribute("title",i),h.setAttribute("aria-label",i)):(s.showPanel(),h.textContent=u,h.setAttribute("title",r),h.setAttribute("aria-label",r)),e.preventDefault()}):(h.onmouseover=function(){s.showPanel()},h.onclick=function(t){var e=t||window.event;s.showPanel(),e.preventDefault()},s.panel.onmouseout=function(t){s.panel.contains(t.relatedTarget)||s.hidePanel()}),s}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}(o,t),r(o,[{key:"setMap",value:function(t){for(var i=this,r=0;r<this.mapListeners.length;r++)e.unByKey(this.mapListeners[r]);this.mapListeners.length=0,function t(e,i,r){null===e&&(e=Function.prototype);var n=Object.getOwnPropertyDescriptor(e,i);if(void 0===n){var o=Object.getPrototypeOf(e);return null===o?void 0:t(o,i,r)}if("value"in n)return n.value;var a=n.get;return void 0!==a?a.call(r):void 0}(o.prototype.__proto__||Object.getPrototypeOf(o.prototype),"setMap",this).call(this,t),t&&(this.startActive?this.showPanel():this.renderPanel(),"click"!==this.activationMode&&this.mapListeners.push(t.on("pointerdown",(function(){i.hidePanel()}))))}},{key:"showPanel",value:function(){this.element.classList.contains(this.shownClassName)||(this.element.classList.add(this.shownClassName),this.renderPanel())}},{key:"hidePanel",value:function(){this.element.classList.contains(this.shownClassName)&&this.element.classList.remove(this.shownClassName)}},{key:"renderPanel",value:function(){this.dispatchEvent("render"),o.renderPanel(this.getMap(),this.panel,{groupSelectStyle:this.groupSelectStyle,reverse:this.reverse}),this.dispatchEvent("rendercomplete")}}],[{key:"renderPanel",value:function(t,e,i){var r=new Event("render");for(e.dispatchEvent(r),(i=i||{}).groupSelectStyle=o.getGroupSelectStyle(i.groupSelectStyle),o.ensureTopVisibleBaseLayerShown(t,i.groupSelectStyle);e.firstChild;)e.removeChild(e.firstChild);o.forEachRecursive(t,(function(t,e,i){t.set("indeterminate",!1)})),"children"===i.groupSelectStyle||"none"===i.groupSelectStyle?o.setGroupVisibility(t):"group"===i.groupSelectStyle&&o.setChildVisibility(t);var n=document.createElement("ul");e.appendChild(n),o.renderLayers_(t,t,n,i,(function(r){o.renderPanel(t,e,i)}));var a=new Event("rendercomplete");e.dispatchEvent(a)}},{key:"isBaseGroup",value:function(t){if(t instanceof i){var e=t.getLayers().getArray();return e.length&&"base"===e[0].get("type")}return!1}},{key:"setGroupVisibility",value:function(t){o.getGroupsAndLayers(t,(function(t){return t instanceof i&&!t.get("combine")&&!o.isBaseGroup(t)})).reverse().forEach((function(t){var e=t.getLayersArray().map((function(t){return t.getVisible()}));e.every((function(t){return!0===t}))?(t.setVisible(!0),t.set("indeterminate",!1)):e.every((function(t){return!1===t}))?(t.setVisible(!1),t.set("indeterminate",!1)):(t.setVisible(!0),t.set("indeterminate",!0))}))}},{key:"setChildVisibility",value:function(t){o.getGroupsAndLayers(t,(function(t){return t instanceof i&&!t.get("combine")&&!o.isBaseGroup(t)})).forEach((function(t){var e=t,i=e.getVisible(),r=e.get("indeterminate");e.getLayers().getArray().forEach((function(t){t.set("indeterminate",!1),i&&!r||!t.getVisible()||t.set("indeterminate",!0)}))}))}},{key:"ensureTopVisibleBaseLayerShown",value:function(t,e){var i=void 0;o.forEachRecursive(t,(function(t,e,r){"base"===t.get("type")&&t.getVisible()&&(i=t)})),i&&o.setVisible_(t,i,!0,e)}},{key:"getGroupsAndLayers",value:function(t,e){var i=[];return e=e||function(t,e,i){return!0},o.forEachRecursive(t,(function(t,r,n){t.get("title")&&e(t,r,n)&&i.push(t)})),i}},{key:"setVisible_",value:function(t,e,r,n){e.setVisible(r),r&&"base"===e.get("type")&&o.forEachRecursive(t,(function(t,i,r){t!=e&&"base"===t.get("type")&&t.setVisible(!1)})),e instanceof i&&!e.get("combine")&&"children"===n&&e.getLayers().forEach((function(i){o.setVisible_(t,i,e.getVisible(),n)}))}},{key:"renderLayer_",value:function(t,e,r,a,s){var l=document.createElement("li"),u=e.get("title"),h=o.uuid(),c=document.createElement("label");if(e instanceof i&&!e.get("combine")){var p=o.isBaseGroup(e);if(l.classList.add("group"),p&&l.classList.add(n+"base-group"),e.get("fold")){l.classList.add(n+"fold"),l.classList.add(n+e.get("fold"));var f=document.createElement("button");f.onclick=function(t){var i=t||window.event;o.toggleFold_(e,l),i.preventDefault()},l.appendChild(f)}if(!p&&"none"!=a.groupSelectStyle){var d=document.createElement("input");d.type="checkbox",d.id=h,d.checked=e.getVisible(),d.indeterminate=e.get("indeterminate"),d.onchange=function(i){var r=i.target;o.setVisible_(t,e,r.checked,a.groupSelectStyle),s(e)},l.appendChild(d),c.htmlFor=h}c.innerHTML=u,l.appendChild(c);var g=document.createElement("ul");l.appendChild(g),o.renderLayers_(t,e,g,a,s)}else{l.className="layer";var _=document.createElement("input");"base"===e.get("type")?(_.type="radio",_.name="base"):_.type="checkbox",_.id=h,_.checked=e.get("visible"),_.indeterminate=e.get("indeterminate"),_.onchange=function(i){var r=i.target;o.setVisible_(t,e,r.checked,a.groupSelectStyle),s(e)},l.appendChild(_),c.htmlFor=h,c.innerHTML=u;var y=t.getView().getResolution();(y>e.getMaxResolution()||y<e.getMinResolution())&&(c.className+=" disabled"),l.appendChild(c)}return l}},{key:"renderLayers_",value:function(t,e,i,r,n){var a=e.getLayers().getArray().slice();r.reverse&&(a=a.reverse());for(var s,l=0;l<a.length;l++)(s=a[l]).get("title")&&i.appendChild(o.renderLayer_(t,s,l,r,n))}},{key:"forEachRecursive",value:function(t,e){t.getLayers().forEach((function(t,r,n){e(t,r,n),t instanceof i&&o.forEachRecursive(t,e)}))}},{key:"uuid",value:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}},{key:"enableTouchScroll_",value:function(t){if(o.isTouchDevice_()){var e=0;t.addEventListener("touchstart",(function(t){e=this.scrollTop+t.touches[0].pageY}),!1),t.addEventListener("touchmove",(function(t){this.scrollTop=e-t.touches[0].pageY}),!1)}}},{key:"isTouchDevice_",value:function(){try{return document.createEvent("TouchEvent"),!0}catch(t){return!1}}},{key:"toggleFold_",value:function(t,e){e.classList.remove(n+t.get("fold")),t.set("fold","open"===t.get("fold")?"close":"open"),e.classList.add(n+t.get("fold"))}},{key:"getGroupSelectStyle",value:function(t){return["none","children","group"].indexOf(t)>=0?t:"children"}}]),o}(t);return window.ol&&window.ol.control&&(window.ol.control.LayerSwitcher=o),o}(Ol,V,Ys)})),dc=function(){function t(){this.dataProjection=null,this.defaultFeatureProjection=null}return t.prototype.getReadOptions=function(t,e){var i;if(e){var r=e.dataProjection?ci(e.dataProjection):this.readProjection(t);e.extent&&r&&r.getUnits()===wt&&(r=ci(r)).setWorldExtent(e.extent),i={dataProjection:r,featureProjection:e.featureProjection}}return this.adaptOptions(i)},t.prototype.adaptOptions=function(t){return m({dataProjection:this.dataProjection,featureProjection:this.defaultFeatureProjection},t)},t.prototype.getType=function(){return e()},t.prototype.readFeature=function(t,i){return e()},t.prototype.readFeatures=function(t,i){return e()},t.prototype.readGeometry=function(t,i){return e()},t.prototype.readProjection=function(t){return e()},t.prototype.writeFeature=function(t,i){return e()},t.prototype.writeFeatures=function(t,i){return e()},t.prototype.writeGeometry=function(t,i){return e()},t}();function gc(t,e,i){var r,n=i?ci(i.featureProjection):null,o=i?ci(i.dataProjection):null;if(r=n&&o&&!gi(n,o)?(e?t.clone():t).transform(e?n:o,e?o:n):t,e&&i&&void 0!==i.decimals){var a=Math.pow(10,i.decimals);r===t&&(r=t.clone()),r.applyTransform((function(t){for(var e=0,i=t.length;e<i;++e)t[e]=Math.round(t[e]*a)/a;return t}))}return r}var _c=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),yc=function(t){function i(){return t.call(this)||this}return _c(i,t),i.prototype.getType=function(){return ys},i.prototype.readFeature=function(t,e){return this.readFeatureFromObject(vc(t),this.getReadOptions(t,e))},i.prototype.readFeatures=function(t,e){return this.readFeaturesFromObject(vc(t),this.getReadOptions(t,e))},i.prototype.readFeatureFromObject=function(t,i){return e()},i.prototype.readFeaturesFromObject=function(t,i){return e()},i.prototype.readGeometry=function(t,e){return this.readGeometryFromObject(vc(t),this.getReadOptions(t,e))},i.prototype.readGeometryFromObject=function(t,i){return e()},i.prototype.readProjection=function(t){return this.readProjectionFromObject(vc(t))},i.prototype.readProjectionFromObject=function(t){return e()},i.prototype.writeFeature=function(t,e){return JSON.stringify(this.writeFeatureObject(t,e))},i.prototype.writeFeatureObject=function(t,i){return e()},i.prototype.writeFeatures=function(t,e){return JSON.stringify(this.writeFeaturesObject(t,e))},i.prototype.writeFeaturesObject=function(t,i){return e()},i.prototype.writeGeometry=function(t,e){return JSON.stringify(this.writeGeometryObject(t,e))},i.prototype.writeGeometryObject=function(t,i){return e()},i}(dc);function vc(t){if("string"==typeof t){var e=JSON.parse(t);return e||null}return null!==t?t:null}var mc=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),xc=function(t){function e(e){var i=t.call(this)||this;return i.geometries_=e||null,i.changeEventsKeys_=[],i.listenGeometriesChange_(),i}return mc(e,t),e.prototype.unlistenGeometriesChange_=function(){this.changeEventsKeys_.forEach(B),this.changeEventsKeys_.length=0},e.prototype.listenGeometriesChange_=function(){if(this.geometries_)for(var t=0,e=this.geometries_.length;t<e;++t)this.changeEventsKeys_.push(N(this.geometries_[t],T,this.changed,this))},e.prototype.clone=function(){var t=new e(null);return t.setGeometries(this.geometries_),t.applyProperties(this),t},e.prototype.closestPointXY=function(t,e,i,r){if(r<Yt(this.getExtent(),t,e))return r;for(var n=this.geometries_,o=0,a=n.length;o<a;++o)r=n[o].closestPointXY(t,e,i,r);return r},e.prototype.containsXY=function(t,e){for(var i=this.geometries_,r=0,n=i.length;r<n;++r)if(i[r].containsXY(t,e))return!0;return!1},e.prototype.computeExtent=function(t){$t(t);for(var e=this.geometries_,i=0,r=e.length;i<r;++i)ne(t,e[i].getExtent());return t},e.prototype.getGeometries=function(){return wc(this.geometries_)},e.prototype.getGeometriesArray=function(){return this.geometries_},e.prototype.getGeometriesArrayRecursive=function(){for(var t=[],e=this.geometries_,i=0,r=e.length;i<r;++i)e[i].getType()===this.getType()?t=t.concat(e[i].getGeometriesArrayRecursive()):t.push(e[i]);return t},e.prototype.getSimplifiedGeometry=function(t){if(this.simplifiedGeometryRevision!==this.getRevision()&&(this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),t<0||0!==this.simplifiedGeometryMaxMinSquaredTolerance&&t<this.simplifiedGeometryMaxMinSquaredTolerance)return this;for(var i=[],r=this.geometries_,n=!1,o=0,a=r.length;o<a;++o){var s=r[o],l=s.getSimplifiedGeometry(t);i.push(l),l!==s&&(n=!0)}if(n){var u=new e(null);return u.setGeometriesArray(i),u}return this.simplifiedGeometryMaxMinSquaredTolerance=t,this},e.prototype.getType=function(){return _t},e.prototype.intersectsExtent=function(t){for(var e=this.geometries_,i=0,r=e.length;i<r;++i)if(e[i].intersectsExtent(t))return!0;return!1},e.prototype.isEmpty=function(){return 0===this.geometries_.length},e.prototype.rotate=function(t,e){for(var i=this.geometries_,r=0,n=i.length;r<n;++r)i[r].rotate(t,e);this.changed()},e.prototype.scale=function(t,e,i){var r=i;r||(r=pe(this.getExtent()));for(var n=this.geometries_,o=0,a=n.length;o<a;++o)n[o].scale(t,e,r);this.changed()},e.prototype.setGeometries=function(t){this.setGeometriesArray(wc(t))},e.prototype.setGeometriesArray=function(t){this.unlistenGeometriesChange_(),this.geometries_=t,this.listenGeometriesChange_(),this.changed()},e.prototype.applyTransform=function(t){for(var e=this.geometries_,i=0,r=e.length;i<r;++i)e[i].applyTransform(t);this.changed()},e.prototype.translate=function(t,e){for(var i=this.geometries_,r=0,n=i.length;r<n;++r)i[r].translate(t,e);this.changed()},e.prototype.disposeInternal=function(){this.unlistenGeometriesChange_(),t.prototype.disposeInternal.call(this)},e}(Ii);function wc(t){for(var e=[],i=0,r=t.length;i<r;++i)e.push(t[i].clone());return e}var Sc=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Cc=function(t){function e(e){var i=this,r=e||{};return(i=t.call(this)||this).dataProjection=ci(r.dataProjection?r.dataProjection:"EPSG:4326"),r.featureProjection&&(i.defaultFeatureProjection=ci(r.featureProjection)),i.geometryName_=r.geometryName,i.extractGeometryName_=r.extractGeometryName,i}return Sc(e,t),e.prototype.readFeatureFromObject=function(t,e){var i=null,r=bc((i="Feature"===t.type?t:{type:"Feature",geometry:t,properties:null}).geometry,e),n=new nt;return this.geometryName_?n.setGeometryName(this.geometryName_):this.extractGeometryName_&&"geometry_name"in i!==void 0&&n.setGeometryName(i.geometry_name),n.setGeometry(r),"id"in i&&n.setId(i.id),i.properties&&n.setProperties(i.properties,!0),n},e.prototype.readFeaturesFromObject=function(t,e){var i=null;if("FeatureCollection"===t.type){i=[];for(var r=t.features,n=0,o=r.length;n<o;++n)i.push(this.readFeatureFromObject(r[n],e))}else i=[this.readFeatureFromObject(t,e)];return i},e.prototype.readGeometryFromObject=function(t,e){return bc(t,e)},e.prototype.readProjectionFromObject=function(t){var e,i=t.crs;return i?"name"==i.type?e=ci(i.properties.name):"EPSG"===i.type?e=ci("EPSG:"+i.properties.code):it(!1,36):e=this.dataProjection,e},e.prototype.writeFeatureObject=function(t,e){e=this.adaptOptions(e);var i={type:"Feature",geometry:null,properties:null},r=t.getId();if(void 0!==r&&(i.id=r),!t.hasProperties())return i;var n=t.getProperties(),o=t.getGeometry();return o&&(i.geometry=Tc(o,e),delete n[t.getGeometryName()]),S(n)||(i.properties=n),i},e.prototype.writeFeaturesObject=function(t,e){e=this.adaptOptions(e);for(var i=[],r=0,n=t.length;r<n;++r)i.push(this.writeFeatureObject(t[r],e));return{type:"FeatureCollection",features:i}},e.prototype.writeGeometryObject=function(t,e){return Tc(t,this.adaptOptions(e))},e}(yc);function bc(t,e){if(!t)return null;var i;switch(t.type){case ut:i=function(t){return new er(t.coordinates)}(t);break;case ht:i=function(t){return new Fr(t.coordinates)}(t);break;case pt:i=function(t){return new _r(t.coordinates)}(t);break;case ft:i=function(t){return new th(t.coordinates)}(t);break;case dt:i=function(t){return new Qu(t.coordinates)}(t);break;case gt:i=function(t){return new rh(t.coordinates)}(t);break;case _t:i=function(t,e){var i=t.geometries.map((function(t){return bc(t,e)}));return new xc(i)}(t);break;default:throw new Error("Unsupported GeoJSON type: "+t.type)}return gc(i,!1,e)}function Tc(t,e){var i,r=(t=gc(t,!0,e)).getType();switch(r){case ut:i=function(t,e){return{type:"Point",coordinates:t.getCoordinates()}}(t);break;case ht:i=function(t,e){return{type:"LineString",coordinates:t.getCoordinates()}}(t);break;case pt:i=function(t,e){var i;e&&(i=e.rightHanded);return{type:"Polygon",coordinates:t.getCoordinates(i)}}(t,e);break;case ft:i=function(t,e){return{type:"MultiPoint",coordinates:t.getCoordinates()}}(t);break;case dt:i=function(t,e){return{type:"MultiLineString",coordinates:t.getCoordinates()}}(t);break;case gt:i=function(t,e){var i;e&&(i=e.rightHanded);return{type:"MultiPolygon",coordinates:t.getCoordinates(i)}}(t,e);break;case _t:i=function(t,e){return{type:"GeometryCollection",geometries:t.getGeometriesArray().map((function(t){var i=m({},e);return delete i.featureProjection,Tc(t,i)}))}}(t,e);break;case yt:i={type:"GeometryCollection",geometries:[]};break;default:throw new Error("Unsupported geometry type: "+r)}return i}function Ec(t,e){return Xc().createElementNS(t,e)}function Pc(t,e){return function t(e,i,r){if(e.nodeType==Node.CDATA_SECTION_NODE||e.nodeType==Node.TEXT_NODE)i?r.push(String(e.nodeValue).replace(/(\r\n|\r|\n)/g,"")):r.push(e.nodeValue);else{var n=void 0;for(n=e.firstChild;n;n=n.nextSibling)t(n,i,r)}return r}(t,e,[]).join("")}function Rc(t){return"documentElement"in t}function Fc(t){return(new DOMParser).parseFromString(t,"application/xml")}function Oc(t,e){return function(i,r){var n=t.call(void 0!==e?e:this,i,r);void 0!==n&&d(r[r.length-1],n)}}function Ic(t,e){return function(i,r){var n=t.call(void 0!==e?e:this,i,r);void 0!==n&&r[r.length-1].push(n)}}function Mc(t,e){return function(i,r){var n=t.call(void 0!==e?e:this,i,r);void 0!==n&&(r[r.length-1]=n)}}function Lc(t,e,i){return function(r,n){var o=t.call(void 0!==i?i:this,r,n);void 0!==o&&(n[n.length-1][void 0!==e?e:r.localName]=o)}}function Ac(t,e){return function(i,r,n){t.call(void 0!==e?e:this,i,r,n),n[n.length-1].node.appendChild(i)}}function kc(t,e){var i=t;return function(t,r,n){var o=r[r.length-1].node,a=i;return void 0===a&&(a=n),Ec(void 0!==e?e:o.namespaceURI,a)}}var Dc=kc();function jc(t,e){for(var i=e.length,r=new Array(i),n=0;n<i;++n)r[n]=t[e[n]];return r}function Gc(t,e,i){var r,n,o=void 0!==i?i:{};for(r=0,n=t.length;r<n;++r)o[t[r]]=e;return o}function Nc(t,e,i,r){var n;for(n=e.firstElementChild;n;n=n.nextElementSibling){var o=t[n.namespaceURI];if(void 0!==o){var a=o[n.localName];void 0!==a&&a.call(r,n,i)}}}function zc(t,e,i,r,n){return r.push(t),Nc(e,i,r,n),r.pop()}function Bc(t,e,i,r,n,o,a){return n.push(t),function(t,e,i,r,n,o){for(var a,s,l=(void 0!==n?n:i).length,u=0;u<l;++u)void 0!==(a=i[u])&&void 0!==(s=e.call(void 0!==o?o:this,a,r,void 0!==n?n[u]:void 0))&&t[s.namespaceURI][s.localName].call(o,s,a,r)}(e,i,r,n,o,a),n.pop()}var Uc=void 0;var Vc=void 0;function Xc(){return void 0===Vc&&"undefined"!=typeof document&&(Vc=document.implementation.createDocument("","",null)),Vc}var Wc=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Yc=function(t){function i(){var e=t.call(this)||this;return e.xmlSerializer_=(void 0===Uc&&"undefined"!=typeof XMLSerializer&&(Uc=new XMLSerializer),Uc),e}return Wc(i,t),i.prototype.getType=function(){return ms},i.prototype.readFeature=function(t,e){if(t){if("string"==typeof t){var i=Fc(t);return this.readFeatureFromDocument(i,e)}return Rc(t)?this.readFeatureFromDocument(t,e):this.readFeatureFromNode(t,e)}return null},i.prototype.readFeatureFromDocument=function(t,e){var i=this.readFeaturesFromDocument(t,e);return i.length>0?i[0]:null},i.prototype.readFeatureFromNode=function(t,e){return null},i.prototype.readFeatures=function(t,e){if(t){if("string"==typeof t){var i=Fc(t);return this.readFeaturesFromDocument(i,e)}return Rc(t)?this.readFeaturesFromDocument(t,e):this.readFeaturesFromNode(t,e)}return[]},i.prototype.readFeaturesFromDocument=function(t,e){for(var i=[],r=t.firstChild;r;r=r.nextSibling)r.nodeType==Node.ELEMENT_NODE&&d(i,this.readFeaturesFromNode(r,e));return i},i.prototype.readFeaturesFromNode=function(t,i){return e()},i.prototype.readGeometry=function(t,e){if(t){if("string"==typeof t){var i=Fc(t);return this.readGeometryFromDocument(i,e)}return Rc(t)?this.readGeometryFromDocument(t,e):this.readGeometryFromNode(t,e)}return null},i.prototype.readGeometryFromDocument=function(t,e){return null},i.prototype.readGeometryFromNode=function(t,e){return null},i.prototype.readProjection=function(t){if(t){if("string"==typeof t){var e=Fc(t);return this.readProjectionFromDocument(e)}return Rc(t)?this.readProjectionFromDocument(t):this.readProjectionFromNode(t)}return null},i.prototype.readProjectionFromDocument=function(t){return this.dataProjection},i.prototype.readProjectionFromNode=function(t){return this.dataProjection},i.prototype.writeFeature=function(t,e){var i=this.writeFeatureNode(t,e);return this.xmlSerializer_.serializeToString(i)},i.prototype.writeFeatureNode=function(t,e){return null},i.prototype.writeFeatures=function(t,e){var i=this.writeFeaturesNode(t,e);return this.xmlSerializer_.serializeToString(i)},i.prototype.writeFeaturesNode=function(t,e){return null},i.prototype.writeGeometry=function(t,e){var i=this.writeGeometryNode(t,e);return this.xmlSerializer_.serializeToString(i)},i.prototype.writeGeometryNode=function(t,e){return null},i}(dc);function Kc(t){var e,i=Pc(t,!1);return(e=/^\s*(true|1)|(false|0)\s*$/.exec(i))?void 0!==e[1]||!1:void 0}function Zc(t){var e,i=Pc(t,!1);return(e=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)\s*$/i.exec(i))?parseFloat(e[1]):void 0}function Hc(t){return Pc(t,!1).trim()}function qc(t,e){Qc(t,e?"1":"0")}function Jc(t,e){var i=e.toPrecision();t.appendChild(Xc().createTextNode(i))}function Qc(t,e){t.appendChild(Xc().createTextNode(e))}var $c,tp,ep,ip,rp,np,op,ap,sp,lp,up=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),hp=["http://www.google.com/kml/ext/2.2"],cp=[null,"http://earth.google.com/kml/2.0","http://earth.google.com/kml/2.1","http://earth.google.com/kml/2.2","http://www.opengis.net/kml/2.2"],pp={fraction:Fa,pixels:Oa,insetPixels:Oa},fp=Gc(cp,{ExtendedData:af,Region:sf,MultiGeometry:Lc(qp,"geometry"),LineString:Lc(Kp,"geometry"),LinearRing:Lc(Zp,"geometry"),Point:Lc(Jp,"geometry"),Polygon:Lc($p,"geometry"),Style:Lc(ef),StyleMap:function(t,e){var i=Lp.call(this,t,e);if(!i)return;var r=e[e.length-1];Array.isArray(i)?r.Style=i:"string"==typeof i?r.styleUrl=i:it(!1,38)},address:Lc(Hc),description:Lc(Hc),name:Lc(Hc),open:Lc(Kc),phoneNumber:Lc(Hc),styleUrl:Lc(Op),visibility:Lc(Kc)},Gc(hp,{MultiTrack:Lc((function(t,e){var i=zc([],zp,t,e);if(!i)return;return new Qu(i)}),"geometry"),Track:Lc(Up,"geometry")})),dp=Gc(cp,{ExtendedData:af,Region:sf,Link:function(t,e){Nc(gp,t,e)},address:Lc(Hc),description:Lc(Hc),name:Lc(Hc),open:Lc(Kc),phoneNumber:Lc(Hc),visibility:Lc(Kc)}),gp=Gc(cp,{href:Lc(Fp)}),_p=Gc(cp,{LatLonAltBox:function(t,e){var i=zc({},hf,t,e);if(!i)return;var r=e[e.length-1],n=[parseFloat(i.west),parseFloat(i.south),parseFloat(i.east),parseFloat(i.north)];r.extent=n,r.altitudeMode=i.altitudeMode,r.minAltitude=parseFloat(i.minAltitude),r.maxAltitude=parseFloat(i.maxAltitude)},Lod:function(t,e){var i=zc({},cf,t,e);if(!i)return;var r=e[e.length-1];r.minLodPixels=parseFloat(i.minLodPixels),r.maxLodPixels=parseFloat(i.maxLodPixels),r.minFadeExtent=parseFloat(i.minFadeExtent),r.maxFadeExtent=parseFloat(i.maxFadeExtent)}}),yp=Gc(cp,["Document","Placemark"]),vp=Gc(cp,{Document:Ac((function(t,e,i){Bc({node:t},_f,yf,e,i,void 0,this)})),Placemark:Ac(Bf)}),mp=null,xp=null,wp=null,Sp=null,Cp=null,bp=null;function Tp(t){return t}var Ep=function(t){function e(e){var i=t.call(this)||this,r=e||{};return bp||(mp=new br({color:$c=[255,255,255,1]}),xp=new Ya({anchor:tp=[20,2],anchorOrigin:Ia,anchorXUnits:ep=Oa,anchorYUnits:ip=Oa,crossOrigin:"anonymous",rotation:0,scale:op=.5,size:rp=[64,64],src:np="https://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png"}),ap="NO_IMAGE",wp=new Or({color:$c,width:1}),sp=new Or({color:[51,51,51,1],width:2}),Sp=new jn({font:"bold 16px Helvetica",fill:mp,stroke:sp,scale:.8}),Cp=new On({fill:mp,image:xp,text:Sp,stroke:wp,zIndex:0}),bp=[Cp]),i.dataProjection=ci("EPSG:4326"),i.defaultStyle_=r.defaultStyle?r.defaultStyle:bp,i.extractStyles_=void 0===r.extractStyles||r.extractStyles,i.writeStyles_=void 0===r.writeStyles||r.writeStyles,i.sharedStyles_={},i.showPointNames_=void 0===r.showPointNames||r.showPointNames,i.crossOrigin_=void 0!==r.crossOrigin?r.crossOrigin:"anonymous",i.iconUrlFunction_=r.iconUrlFunction?r.iconUrlFunction:Tp,i}return up(e,t),e.prototype.readDocumentOrFolder_=function(t,e){var i=zc([],Gc(cp,{Document:Oc(this.readDocumentOrFolder_,this),Folder:Oc(this.readDocumentOrFolder_,this),Placemark:Ic(this.readPlacemark_,this),Style:this.readSharedStyle_.bind(this),StyleMap:this.readSharedStyleMap_.bind(this)}),t,e,this);return i||void 0},e.prototype.readPlacemark_=function(t,e){var i=zc({geometry:null},fp,t,e,this);if(i){var r=new nt,n=t.getAttribute("id");null!==n&&r.setId(n);var o=e[0],a=i.geometry;if(a&&gc(a,!1,o),r.setGeometry(a),delete i.geometry,this.extractStyles_){var s=function(t,e,i,r,n){return function(o,a){var s=n,l="",u=[];if(s){var h=o.getGeometry();if(h){var c=h.getType();s=c===_t?(u=h.getGeometriesArrayRecursive().filter((function(t){var e=t.getType();return e===ut||e===ft}))).length>0:c===ut||c===ft}}s&&(l=o.get("name"),(s=s&&!!l)&&l.search(/&[^&]+;/)>-1&&(lp||(lp=document.createElement("textarea")),lp.innerHTML=l,l=lp.value));var p=i;if(t?p=t:e&&(p=function t(e,i,r){return Array.isArray(e)?e:"string"==typeof e?t(r[e],i,r):i}(e,i,r)),s){var f=function(t,e){var i=[0,0],r="start",n=t.getImage();if(n){var o=n.getImageSize();if(null===o&&(o=rp),2==o.length){var a=n.getScaleArray();i[0]=a[0]*o[0]/2,i[1]=-a[1]*o[1]/2,r="left"}}var s=t.getText();s?((s=s.clone()).setFont(s.getFont()||Sp.getFont()),s.setScale(s.getScale()||Sp.getScale()),s.setFill(s.getFill()||Sp.getFill()),s.setStroke(s.getStroke()||sp)):s=Sp.clone();return s.setText(e),s.setOffsetX(i[0]),s.setOffsetY(i[1]),s.setTextAlign(r),new On({image:n,text:s})}(p[0],l);return u.length>0?(f.setGeometry(new xc(u)),[f,new On({geometry:p[0].getGeometry(),image:null,fill:p[0].getFill(),stroke:p[0].getStroke(),text:null})].concat(p.slice(1))):f}return p}}(i.Style,i.styleUrl,this.defaultStyle_,this.sharedStyles_,this.showPointNames_);r.setStyle(s)}return delete i.Style,r.setProperties(i,!0),r}},e.prototype.readSharedStyle_=function(t,e){var i=t.getAttribute("id");if(null!==i){var r=ef.call(this,t,e);if(r){var n=void 0,o=t.baseURI;if(o&&"about:blank"!=o||(o=window.location.href),o)n=new URL("#"+i,o).href;else n="#"+i;this.sharedStyles_[n]=r}}},e.prototype.readSharedStyleMap_=function(t,e){var i=t.getAttribute("id");if(null!==i){var r=Lp.call(this,t,e);if(r){var n,o=t.baseURI;if(o&&"about:blank"!=o||(o=window.location.href),o)n=new URL("#"+i,o).href;else n="#"+i;this.sharedStyles_[n]=r}}},e.prototype.readFeatureFromNode=function(t,e){if(!c(cp,t.namespaceURI))return null;var i=this.readPlacemark_(t,[this.getReadOptions(t,e)]);return i||null},e.prototype.readFeaturesFromNode=function(t,e){if(!c(cp,t.namespaceURI))return[];var i,r=t.localName;if("Document"==r||"Folder"==r)return(i=this.readDocumentOrFolder_(t,[this.getReadOptions(t,e)]))||[];if("Placemark"==r){var n=this.readPlacemark_(t,[this.getReadOptions(t,e)]);return n?[n]:[]}if("kml"==r){i=[];for(var o=t.firstElementChild;o;o=o.nextElementSibling){var a=this.readFeaturesFromNode(o,e);a&&d(i,a)}return i}return[]},e.prototype.readName=function(t){if(t){if("string"==typeof t){var e=Fc(t);return this.readNameFromDocument(e)}return Rc(t)?this.readNameFromDocument(t):this.readNameFromNode(t)}},e.prototype.readNameFromDocument=function(t){for(var e=t.firstChild;e;e=e.nextSibling)if(e.nodeType==Node.ELEMENT_NODE){var i=this.readNameFromNode(e);if(i)return i}},e.prototype.readNameFromNode=function(t){for(var e=t.firstElementChild;e;e=e.nextElementSibling)if(c(cp,e.namespaceURI)&&"name"==e.localName)return Hc(e);for(e=t.firstElementChild;e;e=e.nextElementSibling){var i=e.localName;if(c(cp,e.namespaceURI)&&("Document"==i||"Folder"==i||"Placemark"==i||"kml"==i)){var r=this.readNameFromNode(e);if(r)return r}}},e.prototype.readNetworkLinks=function(t){var e=[];if("string"==typeof t){var i=Fc(t);d(e,this.readNetworkLinksFromDocument(i))}else Rc(t)?d(e,this.readNetworkLinksFromDocument(t)):d(e,this.readNetworkLinksFromNode(t));return e},e.prototype.readNetworkLinksFromDocument=function(t){for(var e=[],i=t.firstChild;i;i=i.nextSibling)i.nodeType==Node.ELEMENT_NODE&&d(e,this.readNetworkLinksFromNode(i));return e},e.prototype.readNetworkLinksFromNode=function(t){for(var e=[],i=t.firstElementChild;i;i=i.nextElementSibling)if(c(cp,i.namespaceURI)&&"NetworkLink"==i.localName){var r=zc({},dp,i,[]);e.push(r)}for(i=t.firstElementChild;i;i=i.nextElementSibling){var n=i.localName;!c(cp,i.namespaceURI)||"Document"!=n&&"Folder"!=n&&"kml"!=n||d(e,this.readNetworkLinksFromNode(i))}return e},e.prototype.readRegion=function(t){var e=[];if("string"==typeof t){var i=Fc(t);d(e,this.readRegionFromDocument(i))}else Rc(t)?d(e,this.readRegionFromDocument(t)):d(e,this.readRegionFromNode(t));return e},e.prototype.readRegionFromDocument=function(t){for(var e=[],i=t.firstChild;i;i=i.nextSibling)i.nodeType==Node.ELEMENT_NODE&&d(e,this.readRegionFromNode(i));return e},e.prototype.readRegionFromNode=function(t){for(var e=[],i=t.firstElementChild;i;i=i.nextElementSibling)if(c(cp,i.namespaceURI)&&"Region"==i.localName){var r=zc({},_p,i,[]);e.push(r)}for(i=t.firstElementChild;i;i=i.nextElementSibling){var n=i.localName;!c(cp,i.namespaceURI)||"Document"!=n&&"Folder"!=n&&"kml"!=n||d(e,this.readRegionFromNode(i))}return e},e.prototype.writeFeaturesNode=function(t,e){e=this.adaptOptions(e);var i=Ec(cp[4],"kml"),r="http://www.w3.org/2000/xmlns/";i.setAttributeNS(r,"xmlns:gx",hp[0]),i.setAttributeNS(r,"xmlns:xsi","http://www.w3.org/2001/XMLSchema-instance"),i.setAttributeNS("http://www.w3.org/2001/XMLSchema-instance","xsi:schemaLocation","http://www.opengis.net/kml/2.2 https://developers.google.com/kml/schema/kml22gx.xsd");var n={node:i},o={};t.length>1?o.Document=t:1==t.length&&(o.Placemark=t[0]);var a=yp[i.namespaceURI],s=jc(o,a);return Bc(n,vp,Dc,s,[e],a,this),i},e}(Yc);function Pp(t){var e=Pc(t,!1),i=/^\s*#?\s*([0-9A-Fa-f]{8})\s*$/.exec(e);if(i){var r=i[1];return[parseInt(r.substr(6,2),16),parseInt(r.substr(4,2),16),parseInt(r.substr(2,2),16),parseInt(r.substr(0,2),16)/255]}}function Rp(t){var e=Pc(t,!1),i=[];e=e.replace(/\s*,\s*/g,",");for(var r,n=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?),([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)(?:\s+|,|$)(?:([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)(?:\s+|$))?\s*/i;r=n.exec(e);){var o=parseFloat(r[1]),a=parseFloat(r[2]),s=r[3]?parseFloat(r[3]):0;i.push(o,a,s),e=e.substr(r[0].length)}if(""===e)return i}function Fp(t){var e=Pc(t,!1).trim(),i=t.baseURI;return i&&"about:blank"!=i||(i=window.location.href),i?new URL(e,i).href:e}function Op(t){var e=Pc(t,!1).trim().replace(/^(?!.*#)/,"#"),i=t.baseURI;return i&&"about:blank"!=i||(i=window.location.href),i?new URL(e,i).href:e}function Ip(t){return Zc(t)}var Mp=Gc(cp,{Pair:function(t,e){var i=zc({},lf,t,e,this);if(!i)return;var r=i.key;if(r&&"normal"==r){var n=i.styleUrl;n&&(e[e.length-1]=n);var o=i.Style;o&&(e[e.length-1]=o)}}});function Lp(t,e){return zc(void 0,Mp,t,e,this)}var Ap=Gc(cp,{Icon:Lc((function(t,e){var i=zc({},Vp,t,e);return i||null})),color:Lc(Pp),heading:Lc(Zc),hotSpot:Lc((function(t){var e,i=t.getAttribute("xunits"),r=t.getAttribute("yunits");return e="insetPixels"!==i?"insetPixels"!==r?Ia:La:"insetPixels"!==r?Ma:Aa,{x:parseFloat(t.getAttribute("x")),xunits:pp[i],y:parseFloat(t.getAttribute("y")),yunits:pp[r],origin:e}})),scale:Lc(Ip)});var kp=Gc(cp,{color:Lc(Pp),scale:Lc(Ip)});var Dp=Gc(cp,{color:Lc(Pp),width:Lc(Zc)});var jp=Gc(cp,{color:Lc(Pp),fill:Lc(Kc),outline:Lc(Kc)});var Gp=Gc(cp,{coordinates:Mc(Rp)});function Np(t,e){return zc(null,Gp,t,e)}var zp=Gc(hp,{Track:Ic(Up)});var Bp=Gc(cp,{when:function(t,e){var i=e[e.length-1].whens,r=Pc(t,!1),n=Date.parse(r);i.push(isNaN(n)?0:n)}},Gc(hp,{coord:function(t,e){var i=e[e.length-1].flatCoordinates,r=Pc(t,!1),n=/^\s*([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s*$/i.exec(r);if(n){var o=parseFloat(n[1]),a=parseFloat(n[2]),s=parseFloat(n[3]);i.push(o,a,s,0)}else i.push(0,0,0,0)}}));function Up(t,e){var i=zc({flatCoordinates:[],whens:[]},Bp,t,e);if(i){for(var r=i.flatCoordinates,n=i.whens,o=0,a=Math.min(r.length,n.length);o<a;++o)r[4*o+3]=n[o];return new Fr(r,lt)}}var Vp=Gc(cp,{href:Lc(Fp)},Gc(hp,{x:Lc(Zc),y:Lc(Zc),w:Lc(Zc),h:Lc(Zc)}));var Xp=Gc(cp,{coordinates:Mc(Rp)});function Wp(t,e){return zc(null,Xp,t,e)}var Yp=Gc(cp,{extrude:Lc(Kc),tessellate:Lc(Kc),altitudeMode:Lc(Hc)});function Kp(t,e){var i=zc({},Yp,t,e),r=Wp(t,e);if(r){var n=new Fr(r,at);return n.setProperties(i,!0),n}}function Zp(t,e){var i=zc({},Yp,t,e),r=Wp(t,e);if(r){var n=new _r(r,at,[r.length]);return n.setProperties(i,!0),n}}var Hp=Gc(cp,{LineString:Ic(Kp),LinearRing:Ic(Zp),MultiGeometry:Ic(qp),Point:Ic(Jp),Polygon:Ic($p)});function qp(t,e){var i,r=zc([],Hp,t,e);if(!r)return null;if(0===r.length)return new xc(r);for(var n=!0,o=r[0].getType(),a=1,s=r.length;a<s;++a)if(r[a].getType()!=o){n=!1;break}if(n){var l=void 0,u=void 0;if(o==ut){var h=r[0];l=h.getLayout(),u=h.getFlatCoordinates();for(a=1,s=r.length;a<s;++a)d(u,r[a].getFlatCoordinates());rf(i=new th(u,l),r)}else o==ht?rf(i=new Qu(r),r):o==pt?rf(i=new rh(r),r):o==_t?i=new xc(r):it(!1,37)}else i=new xc(r);return i}function Jp(t,e){var i=zc({},Yp,t,e),r=Wp(t,e);if(r){var n=new er(r,at);return n.setProperties(i,!0),n}}var Qp=Gc(cp,{innerBoundaryIs:function(t,e){var i=zc(void 0,pf,t,e);if(i){e[e.length-1].push(i)}},outerBoundaryIs:function(t,e){var i=zc(void 0,ff,t,e);if(i){e[e.length-1][0]=i}}});function $p(t,e){var i=zc({},Yp,t,e),r=zc([null],Qp,t,e);if(r&&r[0]){for(var n=r[0],o=[n.length],a=1,s=r.length;a<s;++a)d(n,r[a]),o.push(n.length);var l=new _r(n,at,o);return l.setProperties(i,!0),l}}var tf=Gc(cp,{IconStyle:function(t,e){var i=zc({},Ap,t,e);if(i){var r,n,o,a,s=e[e.length-1],l="Icon"in i?i.Icon:{},u=!("Icon"in i)||Object.keys(l).length>0,h=l.href;h?r=h:u&&(r=np);var c,p=Ia,f=i.hotSpot;f?(n=[f.x,f.y],o=f.xunits,a=f.yunits,p=f.origin):r===np?(n=tp,o=ep,a=ip):/^http:\/\/maps\.(?:google|gstatic)\.com\//.test(r)&&(n=[.5,0],o=Fa,a=Fa);var d,g=l.x,_=l.y;void 0!==g&&void 0!==_&&(c=[g,_]);var y,v=l.w,m=l.h;void 0!==v&&void 0!==m&&(d=[v,m]);var x=i.heading;void 0!==x&&(y=Oe(x));var w=i.scale,S=i.color;if(u){r==np&&(d=rp,void 0===w&&(w=op));var C=new Ya({anchor:n,anchorOrigin:p,anchorXUnits:o,anchorYUnits:a,crossOrigin:this.crossOrigin_,offset:c,offsetOrigin:Ia,rotation:y,scale:w,size:d,src:this.iconUrlFunction_(r),color:S});s.imageStyle=C}else s.imageStyle=ap}},LabelStyle:function(t,e){var i=zc({},kp,t,e);if(i){var r=e[e.length-1],n=new jn({fill:new br({color:"color"in i?i.color:$c}),scale:i.scale});r.textStyle=n}},LineStyle:function(t,e){var i=zc({},Dp,t,e);if(i){var r=e[e.length-1],n=new Or({color:"color"in i?i.color:$c,width:"width"in i?i.width:1});r.strokeStyle=n}},PolyStyle:function(t,e){var i=zc({},jp,t,e);if(i){var r=e[e.length-1],n=new br({color:"color"in i?i.color:$c});r.fillStyle=n;var o=i.fill;void 0!==o&&(r.fill=o);var a=i.outline;void 0!==a&&(r.outline=a)}}});function ef(t,e){var i=zc({},tf,t,e,this);if(!i)return null;var r,n="fillStyle"in i?i.fillStyle:mp,o=i.fill;void 0===o||o||(n=null),"imageStyle"in i?i.imageStyle!=ap&&(r=i.imageStyle):r=xp;var a="textStyle"in i?i.textStyle:Sp,s="strokeStyle"in i?i.strokeStyle:wp,l=i.outline;return void 0===l||l?[new On({fill:n,image:r,stroke:s,text:a,zIndex:void 0})]:[new On({geometry:function(t){var e=t.getGeometry(),i=e.getType();return i===_t?new xc(e.getGeometriesArrayRecursive().filter((function(t){var e=t.getType();return e!==pt&&e!==gt}))):i!==pt&&i!==gt?e:void 0},fill:n,image:r,stroke:s,text:a,zIndex:void 0}),new On({geometry:function(t){var e=t.getGeometry(),i=e.getType();return i===_t?new xc(e.getGeometriesArrayRecursive().filter((function(t){var e=t.getType();return e===pt||e===gt}))):i===pt||i===gt?e:void 0},fill:n,stroke:null,zIndex:void 0})]}function rf(t,e){var i,r,n,o=e.length,a=new Array(e.length),s=new Array(e.length),l=new Array(e.length);i=!1,r=!1,n=!1;for(var u=0;u<o;++u){var h=e[u];a[u]=h.get("extrude"),s[u]=h.get("tessellate"),l[u]=h.get("altitudeMode"),i=i||void 0!==a[u],r=r||void 0!==s[u],n=n||l[u]}i&&t.set("extrude",a),r&&t.set("tessellate",s),n&&t.set("altitudeMode",l)}var nf=Gc(cp,{displayName:Lc(Hc),value:Lc(Hc)});var of=Gc(cp,{Data:function(t,e){var i=t.getAttribute("name");Nc(nf,t,e);var r=e[e.length-1];i&&r.displayName?r[i]={value:r.value,displayName:r.displayName,toString:function(){return r.value}}:null!==i?r[i]=r.value:null!==r.displayName&&(r[r.displayName]=r.value),delete r.value},SchemaData:function(t,e){Nc(uf,t,e)}});function af(t,e){Nc(of,t,e)}function sf(t,e){Nc(_p,t,e)}var lf=Gc(cp,{Style:Lc(ef),key:Lc(Hc),styleUrl:Lc(Op)});var uf=Gc(cp,{SimpleData:function(t,e){var i=t.getAttribute("name");if(null!==i){var r=Hc(t);e[e.length-1][i]=r}}});var hf=Gc(cp,{altitudeMode:Lc(Hc),minAltitude:Lc(Zc),maxAltitude:Lc(Zc),north:Lc(Zc),south:Lc(Zc),east:Lc(Zc),west:Lc(Zc)});var cf=Gc(cp,{minLodPixels:Lc(Zc),maxLodPixels:Lc(Zc),minFadeExtent:Lc(Zc),maxFadeExtent:Lc(Zc)});var pf=Gc(cp,{LinearRing:Mc(Np)});var ff=Gc(cp,{LinearRing:Mc(Np)});function df(t,e){for(var i=Wr(e),r=[255*(4==i.length?i[3]:1),i[2],i[1],i[0]],n=0;n<4;++n){var o=Math.floor(r[n]).toString(16);r[n]=1==o.length?"0"+o:o}Qc(t,r.join(""))}var gf=Gc(cp,{Data:Ac((function(t,e,i){t.setAttribute("name",e.name);var r={node:t},n=e.value;"object"==typeof n?(null!==n&&n.displayName&&Bc(r,gf,Dc,[n.displayName],i,["displayName"]),null!==n&&n.value&&Bc(r,gf,Dc,[n.value],i,["value"])):Bc(r,gf,Dc,[n],i,["value"])})),value:Ac((function(t,e){Qc(t,e)})),displayName:Ac((function(t,e){!function(t,e){t.appendChild(Xc().createCDATASection(e))}(t,e)}))});var _f=Gc(cp,{Placemark:Ac(Bf)}),yf=function(t,e,i){return Ec(e[e.length-1].node.namespaceURI,"Placemark")};var vf=kc("Data");var mf=Gc(cp,["href"],Gc(hp,["x","y","w","h"])),xf=Gc(cp,{href:Ac(Qc)},Gc(hp,{x:Ac(Jc),y:Ac(Jc),w:Ac(Jc),h:Ac(Jc)})),wf=function(t,e,i){return Ec(hp[0],"gx:"+i)};var Sf=Gc(cp,["scale","heading","Icon","color","hotSpot"]),Cf=Gc(cp,{Icon:Ac((function(t,e,i){var r={node:t},n=i[i.length-1].node,o=mf[n.namespaceURI],a=jc(e,o);Bc(r,xf,Dc,a,i,o),a=jc(e,o=mf[hp[0]]),Bc(r,xf,wf,a,i,o)})),color:Ac(df),heading:Ac(Jc),hotSpot:Ac((function(t,e){t.setAttribute("x",String(e.x)),t.setAttribute("y",String(e.y)),t.setAttribute("xunits",e.xunits),t.setAttribute("yunits",e.yunits)}
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */)),scale:Ac(Jf)});var bf=Gc(cp,["color","scale"]),Tf=Gc(cp,{color:Ac(df),scale:Ac(Jf)});var Ef=Gc(cp,["color","width"]),Pf=Gc(cp,{color:Ac(df),width:Ac(Jc)});var Rf={Point:"Point",LineString:"LineString",LinearRing:"LinearRing",Polygon:"Polygon",MultiPoint:"MultiGeometry",MultiLineString:"MultiGeometry",MultiPolygon:"MultiGeometry",GeometryCollection:"MultiGeometry"},Ff=function(t,e,i){if(t)return Ec(e[e.length-1].node.namespaceURI,Rf[t.getType()])},Of=kc("Point"),If=kc("LineString"),Mf=kc("LinearRing"),Lf=kc("Polygon"),Af=Gc(cp,{LineString:Ac(Xf),Point:Ac(Xf),Polygon:Ac(Hf),GeometryCollection:Ac(kf)});function kf(t,e,i){var r,n={node:t},o=e.getType(),a=[];o===_t?(e.getGeometriesArrayRecursive().forEach((function(t){var e=t.getType();e===ft?a=a.concat(t.getPoints()):e===dt?a=a.concat(t.getLineStrings()):e===gt?a=a.concat(t.getPolygons()):e===ut||e===ht||e===pt?a.push(t):it(!1,39)})),r=Ff):o===ft?(a=e.getPoints(),r=Of):o===dt?(a=e.getLineStrings(),r=If):o===gt?(a=e.getPolygons(),r=Lf):it(!1,39),Bc(n,Af,r,a,i)}var Df=Gc(cp,{LinearRing:Ac(Xf)});function jf(t,e,i){Bc({node:t},Df,Mf,[e],i)}var Gf=Gc(cp,{ExtendedData:Ac((function(t,e,i){for(var r={node:t},n=e.names,o=e.values,a=n.length,s=0;s<a;s++)Bc(r,gf,vf,[{name:n[s],value:o[s]}],i)})),MultiGeometry:Ac(kf),LineString:Ac(Xf),LinearRing:Ac(Xf),Point:Ac(Xf),Polygon:Ac(Hf),Style:Ac((function(t,e,i){var r={node:t},n={};if(e.pointStyles.length){var o=e.pointStyles[0].getText();o&&(n.LabelStyle=o);var a=e.pointStyles[0].getImage();a&&"function"==typeof a.getSrc&&(n.IconStyle=a)}if(e.lineStyles.length){(s=e.lineStyles[0].getStroke())&&(n.LineStyle=s)}if(e.polyStyles.length){var s;(s=e.polyStyles[0].getStroke())&&!n.LineStyle&&(n.LineStyle=s),n.PolyStyle=e.polyStyles[0]}var l=i[i.length-1].node,u=Qf[l.namespaceURI],h=jc(n,u);Bc(r,$f,Dc,h,i,u)})),address:Ac(Qc),description:Ac(Qc),name:Ac(Qc),open:Ac(qc),phoneNumber:Ac(Qc),styleUrl:Ac(Qc),visibility:Ac(qc)}),Nf=Gc(cp,["name","open","visibility","address","phoneNumber","description","styleUrl","Style"]),zf=kc("ExtendedData");function Bf(t,e,i){var r={node:t};e.getId()&&t.setAttribute("id",e.getId());var n=e.getProperties(),o={address:1,description:1,name:1,open:1,phoneNumber:1,styleUrl:1,visibility:1};o[e.getGeometryName()]=1;var a=Object.keys(n||{}).sort().filter((function(t){return!o[t]})),s=e.getStyleFunction();if(s){var l=s(e,0);if(l){var u=Array.isArray(l)?l:[l],h=u;if(e.getGeometry()&&(h=u.filter((function(t){var i=t.getGeometryFunction()(e);if(i){var r=i.getType();return r===_t?i.getGeometriesArrayRecursive().filter((function(t){var e=t.getType();return e===ut||e===ft})).length:r===ut||r===ft}}))),this.writeStyles_){var c=u,p=u;e.getGeometry()&&(c=u.filter((function(t){var i=t.getGeometryFunction()(e);if(i){var r=i.getType();return r===_t?i.getGeometriesArrayRecursive().filter((function(t){var e=t.getType();return e===ht||e===dt})).length:r===ht||r===dt}})),p=u.filter((function(t){var i=t.getGeometryFunction()(e);if(i){var r=i.getType();return r===_t?i.getGeometriesArrayRecursive().filter((function(t){var e=t.getType();return e===pt||e===gt})).length:r===pt||r===gt}}))),n.Style={pointStyles:h,lineStyles:c,polyStyles:p}}if(h.length&&void 0===n.name){var f=h[0].getText();f&&(n.name=f.getText())}}}var d=i[i.length-1].node,g=Nf[d.namespaceURI],_=jc(n,g);if(Bc(r,Gf,Dc,_,i,g),a.length>0){var y=jc(n,a);Bc(r,Gf,zf,[{names:a,values:y}],i)}var v=i[0],m=e.getGeometry();m&&(m=gc(m,!0,v)),Bc(r,Gf,Ff,[m],i)}var Uf=Gc(cp,["extrude","tessellate","altitudeMode","coordinates"]),Vf=Gc(cp,{extrude:Ac(qc),tessellate:Ac(qc),altitudeMode:Ac(Qc),coordinates:Ac((function(t,e,i){var r,n=i[i.length-1],o=n.layout,a=n.stride;o==ot||o==st?r=2:o==at||o==lt?r=3:it(!1,34);var s=e.length,l="";if(s>0){l+=e[0];for(var u=1;u<r;++u)l+=","+e[u];for(var h=a;h<s;h+=a){l+=" "+e[h];for(u=1;u<r;++u)l+=","+e[h+u]}}Qc(t,l)}))});function Xf(t,e,i){var r=e.getFlatCoordinates(),n={node:t};n.layout=e.getLayout(),n.stride=e.getStride();var o=e.getProperties();o.coordinates=r;var a=i[i.length-1].node,s=Uf[a.namespaceURI],l=jc(o,s);Bc(n,Vf,Dc,l,i,s)}var Wf=Gc(cp,["color","fill","outline"]),Yf=Gc(cp,{outerBoundaryIs:Ac(jf),innerBoundaryIs:Ac(jf)}),Kf=kc("innerBoundaryIs"),Zf=kc("outerBoundaryIs");function Hf(t,e,i){var r=e.getLinearRings(),n=r.shift(),o={node:t};Bc(o,Yf,Kf,r,i),Bc(o,Yf,Zf,[n],i)}var qf=Gc(cp,{color:Ac(df),fill:Ac(qc),outline:Ac(qc)});function Jf(t,e){Jc(t,Math.round(1e6*e)/1e6)}var Qf=Gc(cp,["IconStyle","LabelStyle","LineStyle","PolyStyle"]),$f=Gc(cp,{IconStyle:Ac((function(t,e,i){var r={node:t},n={},o=e.getSrc(),a=e.getSize(),s=e.getImageSize(),l={href:o};if(a){l.w=a[0],l.h=a[1];var u=e.getAnchor(),h=e.getOrigin();if(h&&s&&0!==h[0]&&h[1]!==a[1]&&(l.x=h[0],l.y=s[1]-(h[1]+a[1])),u&&(u[0]!==a[0]/2||u[1]!==a[1]/2)){var c={x:u[0],xunits:Oa,y:a[1]-u[1],yunits:Oa};n.hotSpot=c}}n.Icon=l;var p=e.getScale();1!==p&&(n.scale=p);var f=e.getRotation();0!==f&&(n.heading=f);var d=e.getColor();d&&(n.color=d);var g=i[i.length-1].node,_=Sf[g.namespaceURI],y=jc(n,_);Bc(r,Cf,Dc,y,i,_)})),LabelStyle:Ac((function(t,e,i){var r={node:t},n={},o=e.getFill();o&&(n.color=o.getColor());var a=e.getScale();a&&1!==a&&(n.scale=a);var s=i[i.length-1].node,l=bf[s.namespaceURI],u=jc(n,l);Bc(r,Tf,Dc,u,i,l)})),LineStyle:Ac((function(t,e,i){var r={node:t},n={color:e.getColor(),width:Number(e.getWidth())||1},o=i[i.length-1].node,a=Ef[o.namespaceURI],s=jc(n,a);Bc(r,Pf,Dc,s,i,a)})),PolyStyle:Ac((function(t,e,i){var r={node:t},n=e.getFill(),o=e.getStroke(),a={color:n?n.getColor():void 0,fill:!!n&&void 0,outline:!!o&&void 0},s=i[i.length-1].node,l=Wf[s.namespaceURI],u=jc(a,l);Bc(r,qf,Dc,u,i,l)}))});var td=function(t,e,i,r,n){var o,a,s=8*n-r-1,l=(1<<s)-1,u=l>>1,h=-7,c=i?n-1:0,p=i?-1:1,f=t[e+c];for(c+=p,o=f&(1<<-h)-1,f>>=-h,h+=s;h>0;o=256*o+t[e+c],c+=p,h-=8);for(a=o&(1<<-h)-1,o>>=-h,h+=r;h>0;a=256*a+t[e+c],c+=p,h-=8);if(0===o)o=1-u;else{if(o===l)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,r),o-=u}return(f?-1:1)*a*Math.pow(2,o-r)},ed=function(t,e,i,r,n,o){var a,s,l,u=8*o-n-1,h=(1<<u)-1,c=h>>1,p=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,f=r?0:o-1,d=r?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=h):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),(e+=a+c>=1?p/l:p*Math.pow(2,1-c))*l>=2&&(a++,l/=2),a+c>=h?(s=0,a=h):a+c>=1?(s=(e*l-1)*Math.pow(2,n),a+=c):(s=e*Math.pow(2,c-1)*Math.pow(2,n),a=0));n>=8;t[i+f]=255&s,f+=d,s/=256,n-=8);for(a=a<<n|s,u+=n;u>0;t[i+f]=255&a,f+=d,a/=256,u-=8);t[i+f-d]|=128*g},id=rd;function rd(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}rd.Varint=0,rd.Fixed64=1,rd.Bytes=2,rd.Fixed32=5;var nd="undefined"==typeof TextDecoder?null:new TextDecoder("utf8");function od(t){return t.type===rd.Bytes?t.readVarint()+t.pos:t.pos+1}function ad(t,e,i){return i?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function sd(t,e,i){var r=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));i.realloc(r);for(var n=i.pos-1;n>=t;n--)i.buf[n+r]=i.buf[n]}function ld(t,e){for(var i=0;i<t.length;i++)e.writeVarint(t[i])}function ud(t,e){for(var i=0;i<t.length;i++)e.writeSVarint(t[i])}function hd(t,e){for(var i=0;i<t.length;i++)e.writeFloat(t[i])}function cd(t,e){for(var i=0;i<t.length;i++)e.writeDouble(t[i])}function pd(t,e){for(var i=0;i<t.length;i++)e.writeBoolean(t[i])}function fd(t,e){for(var i=0;i<t.length;i++)e.writeFixed32(t[i])}function dd(t,e){for(var i=0;i<t.length;i++)e.writeSFixed32(t[i])}function gd(t,e){for(var i=0;i<t.length;i++)e.writeFixed64(t[i])}function _d(t,e){for(var i=0;i<t.length;i++)e.writeSFixed64(t[i])}function yd(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+16777216*t[e+3]}function vd(t,e,i){t[i]=e,t[i+1]=e>>>8,t[i+2]=e>>>16,t[i+3]=e>>>24}function md(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}rd.prototype={destroy:function(){this.buf=null},readFields:function(t,e,i){for(i=i||this.length;this.pos<i;){var r=this.readVarint(),n=r>>3,o=this.pos;this.type=7&r,t(n,e,this),this.pos===o&&this.skip(r)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=yd(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=md(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=yd(this.buf,this.pos)+4294967296*yd(this.buf,this.pos+4);return this.pos+=8,t},readSFixed64:function(){var t=yd(this.buf,this.pos)+4294967296*md(this.buf,this.pos+4);return this.pos+=8,t},readFloat:function(){var t=td(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=td(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,i,r=this.buf;return e=127&(i=r[this.pos++]),i<128?e:(e|=(127&(i=r[this.pos++]))<<7,i<128?e:(e|=(127&(i=r[this.pos++]))<<14,i<128?e:(e|=(127&(i=r[this.pos++]))<<21,i<128?e:function(t,e,i){var r,n,o=i.buf;if(n=o[i.pos++],r=(112&n)>>4,n<128)return ad(t,r,e);if(n=o[i.pos++],r|=(127&n)<<3,n<128)return ad(t,r,e);if(n=o[i.pos++],r|=(127&n)<<10,n<128)return ad(t,r,e);if(n=o[i.pos++],r|=(127&n)<<17,n<128)return ad(t,r,e);if(n=o[i.pos++],r|=(127&n)<<24,n<128)return ad(t,r,e);if(n=o[i.pos++],r|=(1&n)<<31,n<128)return ad(t,r,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(i=r[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&nd?function(t,e,i){return nd.decode(t.subarray(e,i))}(this.buf,e,t):function(t,e,i){var r="",n=e;for(;n<i;){var o,a,s,l=t[n],u=null,h=l>239?4:l>223?3:l>191?2:1;if(n+h>i)break;1===h?l<128&&(u=l):2===h?128==(192&(o=t[n+1]))&&(u=(31&l)<<6|63&o)<=127&&(u=null):3===h?(o=t[n+1],a=t[n+2],128==(192&o)&&128==(192&a)&&((u=(15&l)<<12|(63&o)<<6|63&a)<=2047||u>=55296&&u<=57343)&&(u=null)):4===h&&(o=t[n+1],a=t[n+2],s=t[n+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&((u=(15&l)<<18|(63&o)<<12|(63&a)<<6|63&s)<=65535||u>=1114112)&&(u=null)),null===u?(u=65533,h=1):u>65535&&(u-=65536,r+=String.fromCharCode(u>>>10&1023|55296),u=56320|1023&u),r+=String.fromCharCode(u),n+=h}return r}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==rd.Bytes)return t.push(this.readVarint(e));var i=od(this);for(t=t||[];this.pos<i;)t.push(this.readVarint(e));return t},readPackedSVarint:function(t){if(this.type!==rd.Bytes)return t.push(this.readSVarint());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readSVarint());return t},readPackedBoolean:function(t){if(this.type!==rd.Bytes)return t.push(this.readBoolean());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readBoolean());return t},readPackedFloat:function(t){if(this.type!==rd.Bytes)return t.push(this.readFloat());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readFloat());return t},readPackedDouble:function(t){if(this.type!==rd.Bytes)return t.push(this.readDouble());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readDouble());return t},readPackedFixed32:function(t){if(this.type!==rd.Bytes)return t.push(this.readFixed32());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readFixed32());return t},readPackedSFixed32:function(t){if(this.type!==rd.Bytes)return t.push(this.readSFixed32());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed32());return t},readPackedFixed64:function(t){if(this.type!==rd.Bytes)return t.push(this.readFixed64());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readFixed64());return t},readPackedSFixed64:function(t){if(this.type!==rd.Bytes)return t.push(this.readSFixed64());var e=od(this);for(t=t||[];this.pos<e;)t.push(this.readSFixed64());return t},skip:function(t){var e=7&t;if(e===rd.Varint)for(;this.buf[this.pos++]>127;);else if(e===rd.Bytes)this.pos=this.readVarint()+this.pos;else if(e===rd.Fixed32)this.pos+=4;else{if(e!==rd.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e<this.pos+t;)e*=2;if(e!==this.length){var i=new Uint8Array(e);i.set(this.buf),this.buf=i,this.length=e}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(t){this.realloc(4),vd(this.buf,t,this.pos),this.pos+=4},writeSFixed32:function(t){this.realloc(4),vd(this.buf,t,this.pos),this.pos+=4},writeFixed64:function(t){this.realloc(8),vd(this.buf,-1&t,this.pos),vd(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeSFixed64:function(t){this.realloc(8),vd(this.buf,-1&t,this.pos),vd(this.buf,Math.floor(t*(1/4294967296)),this.pos+4),this.pos+=8},writeVarint:function(t){(t=+t||0)>268435455||t<0?function(t,e){var i,r;t>=0?(i=t%4294967296|0,r=t/4294967296|0):(r=~(-t/4294967296),4294967295^(i=~(-t%4294967296))?i=i+1|0:(i=0,r=r+1|0));if(t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),function(t,e,i){i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos]=127&t}(i,0,e),function(t,e){var i=(7&t)<<4;if(e.buf[e.pos++]|=i|((t>>>=3)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;if(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),!t)return;e.buf[e.pos++]=127&t}(r,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,i){for(var r,n,o=0;o<e.length;o++){if((r=e.charCodeAt(o))>55295&&r<57344){if(!n){r>56319||o+1===e.length?(t[i++]=239,t[i++]=191,t[i++]=189):n=r;continue}if(r<56320){t[i++]=239,t[i++]=191,t[i++]=189,n=r;continue}r=n-55296<<10|r-56320|65536,n=null}else n&&(t[i++]=239,t[i++]=191,t[i++]=189,n=null);r<128?t[i++]=r:(r<2048?t[i++]=r>>6|192:(r<65536?t[i++]=r>>12|224:(t[i++]=r>>18|240,t[i++]=r>>12&63|128),t[i++]=r>>6&63|128),t[i++]=63&r|128)}return i}(this.buf,t,this.pos);var i=this.pos-e;i>=128&&sd(e,i,this),this.pos=e-1,this.writeVarint(i),this.pos+=i},writeFloat:function(t){this.realloc(4),ed(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),ed(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var i=0;i<e;i++)this.buf[this.pos++]=t[i]},writeRawMessage:function(t,e){this.pos++;var i=this.pos;t(e,this);var r=this.pos-i;r>=128&&sd(i,r,this),this.pos=i-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,e,i){this.writeTag(t,rd.Bytes),this.writeRawMessage(e,i)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,ld,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,ud,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,pd,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,hd,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,cd,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,fd,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,dd,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,gd,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,_d,e)},writeBytesField:function(t,e){this.writeTag(t,rd.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,rd.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,rd.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,rd.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,rd.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,rd.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,rd.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,rd.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,rd.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,rd.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};var xd=[1,0,0,1,0,0],wd=function(){function t(t,e,i,r,n){this.extent_,this.id_=n,this.type_=t,this.flatCoordinates_=e,this.flatInteriorPoints_=null,this.flatMidpoints_=null,this.ends_=i,this.properties_=r}return t.prototype.get=function(t){return this.properties_[t]},t.prototype.getExtent=function(){return this.extent_||(this.extent_=this.type_===ut?te(this.flatCoordinates_):ie(this.flatCoordinates_,0,this.flatCoordinates_.length,2)),this.extent_},t.prototype.getFlatInteriorPoint=function(){if(!this.flatInteriorPoints_){var t=pe(this.getExtent());this.flatInteriorPoints_=or(this.flatCoordinates_,0,this.ends_,2,t,0)}return this.flatInteriorPoints_},t.prototype.getFlatInteriorPoints=function(){if(!this.flatInteriorPoints_){var t=eh(this.flatCoordinates_,0,this.ends_,2);this.flatInteriorPoints_=ar(this.flatCoordinates_,0,this.ends_,2,t)}return this.flatInteriorPoints_},t.prototype.getFlatMidpoint=function(){return this.flatMidpoints_||(this.flatMidpoints_=Tr(this.flatCoordinates_,0,this.flatCoordinates_.length,2,.5)),this.flatMidpoints_},t.prototype.getFlatMidpoints=function(){if(!this.flatMidpoints_){this.flatMidpoints_=[];for(var t=this.flatCoordinates_,e=0,i=this.ends_,r=0,n=i.length;r<n;++r){var o=i[r],a=Tr(t,e,o,2,.5);d(this.flatMidpoints_,a),e=o}}return this.flatMidpoints_},t.prototype.getId=function(){return this.id_},t.prototype.getOrientedFlatCoordinates=function(){return this.flatCoordinates_},t.prototype.getGeometry=function(){return this},t.prototype.getSimplifiedGeometry=function(t){return this},t.prototype.simplifyTransformed=function(t,e){return this},t.prototype.getProperties=function(){return this.properties_},t.prototype.getStride=function(){return 2},t.prototype.getStyleFunction=function(){},t.prototype.getType=function(){return this.type_},t.prototype.transform=function(t){var e=(t=ci(t)).getExtent(),i=t.getWorldExtent();if(e&&i){var r=ge(i)/ge(e);Ot(xd,i[0],i[3],r,-r,0,0,0),Ei(this.flatCoordinates_,0,this.flatCoordinates_.length,2,xd,this.flatCoordinates_)}},t.prototype.getEnds=function(){return this.ends_},t}();wd.prototype.getEndss=wd.prototype.getEnds,wd.prototype.getFlatCoordinates=wd.prototype.getOrientedFlatCoordinates;var Sd=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Cd=function(t){function e(e){var i=t.call(this)||this,r=e||{};return i.dataProjection=new Ce({code:"",units:wt}),i.featureClass_=r.featureClass?r.featureClass:wd,i.geometryName_=r.geometryName,i.layerName_=r.layerName?r.layerName:"layer",i.layers_=r.layers?r.layers:null,i.idProperty_=r.idProperty,i}return Sd(e,t),e.prototype.readRawGeometry_=function(t,e,i,r){t.pos=e.geometry;for(var n=t.readVarint()+t.pos,o=1,a=0,s=0,l=0,u=0,h=0;t.pos<n;){if(!a){var c=t.readVarint();o=7&c,a=c>>3}a--,1===o||2===o?(s+=t.readSVarint(),l+=t.readSVarint(),1===o&&u>h&&(r.push(u),h=u),i.push(s,l),u+=2):7===o?u>h&&(i.push(i[h],i[h+1]),u+=2):it(!1,59)}u>h&&(r.push(u),h=u)},e.prototype.createFeature_=function(t,e,i){var r,n=e.type;if(0===n)return null;var o,a=e.properties;this.idProperty_?(o=a[this.idProperty_],delete a[this.idProperty_]):o=e.id,a[this.layerName_]=e.layer.name;var s=[],l=[];this.readRawGeometry_(t,e,s,l);var u=function(t,e){var i;1===t?i=1===e?ut:ft:2===t?i=1===e?ht:dt:3===t&&(i=pt);return i}(n,l.length);if(this.featureClass_===wd)(r=new this.featureClass_(u,s,l,a,o)).transform(i.dataProjection);else{var h=void 0;if(u==pt){for(var c=[],p=0,f=0,d=0,g=l.length;d<g;++d){var _=l[d];if(cr(s,p,_,2)){if(0===c.length)continue;c[c.length-1].push(l[f])}else c.push(l.slice(f,d+1));f=d+1,p=_}h=c.length>1?new rh(s,ot,c):new _r(s,ot,l)}else h=u===ut?new er(s,ot):u===ht?new Fr(s,ot):u===pt?new _r(s,ot,l):u===ft?new th(s,ot):u===dt?new Qu(s,ot,l):null;r=new(0,this.featureClass_),this.geometryName_&&r.setGeometryName(this.geometryName_);var y=gc(h,!1,i);r.setGeometry(y),r.setId(o),r.setProperties(a,!0)}return r},e.prototype.getType=function(){return _s},e.prototype.readFeatures=function(t,e){var i=this.layers_,r=this.adaptOptions(e),n=ci(r.dataProjection);n.setWorldExtent(r.extent),r.dataProjection=n;var o=new id(t),a=o.readFields(bd,{}),s=[];for(var l in a)if(!i||-1!=i.indexOf(l)){var u=a[l],h=u?[0,0,u.extent,u.extent]:null;n.setExtent(h);for(var c=0,p=u.length;c<p;++c){var f=Pd(o,u,c);s.push(this.createFeature_(o,f,r))}}return s},e.prototype.readProjection=function(t){return this.dataProjection},e.prototype.setLayers=function(t){this.layers_=t},e}(dc);function bd(t,e,i){if(3===t){var r={keys:[],values:[],features:[]},n=i.readVarint()+i.pos;i.readFields(Td,r,n),r.length=r.features.length,r.length&&(e[r.name]=r)}}function Td(t,e,i){if(15===t)e.version=i.readVarint();else if(1===t)e.name=i.readString();else if(5===t)e.extent=i.readVarint();else if(2===t)e.features.push(i.pos);else if(3===t)e.keys.push(i.readString());else if(4===t){for(var r=null,n=i.readVarint()+i.pos;i.pos<n;)r=1===(t=i.readVarint()>>3)?i.readString():2===t?i.readFloat():3===t?i.readDouble():4===t?i.readVarint64():5===t?i.readVarint():6===t?i.readSVarint():7===t?i.readBoolean():null;e.values.push(r)}}function Ed(t,e,i){if(1==t)e.id=i.readVarint();else if(2==t)for(var r=i.readVarint()+i.pos;i.pos<r;){var n=e.layer.keys[i.readVarint()],o=e.layer.values[i.readVarint()];e.properties[n]=o}else 3==t?e.type=i.readVarint():4==t&&(e.geometry=i.pos)}function Pd(t,e,i){t.pos=e.features[i];var r=t.readVarint()+t.pos,n={layer:e,type:0,properties:{}};return t.readFields(Ed,n,r),n}var Rd,Fd=["experimental-webgl","webgl","webkit-3d","moz-webgl"];function Od(t,e){for(var i=Fd.length,r=0;r<i;++r)try{var n=t.getContext(Fd[r],e);if(n)return n}catch(t){}return null}var Id=35044,Md=function(){function t(t,e){this.array=null,this.type=t,it(34962===t||34963===t,62),this.usage=void 0!==e?e:Id}return t.prototype.ofSize=function(t){this.array=new(Ld(this.type))(t)},t.prototype.fromArray=function(t){this.array=Ld(this.type).from(t)},t.prototype.fromArrayBuffer=function(t){this.array=new(Ld(this.type))(t)},t.prototype.getType=function(){return this.type},t.prototype.getArray=function(){return this.array},t.prototype.getUsage=function(){return this.usage},t.prototype.getSize=function(){return this.array?this.array.length:0},t}();function Ld(t){switch(t){case 34962:return Float32Array;case 34963:return Uint32Array;default:return Float32Array}}var Ad="webglcontextlost",kd="webglcontextrestored",Dd=function(){function t(t){this.gl_=t.webGlContext;var e=this.gl_;this.scaleRatio_=t.scaleRatio||1,this.renderTargetTexture_=e.createTexture(),this.renderTargetTextureSize_=null,this.frameBuffer_=e.createFramebuffer();var i=e.createShader(e.VERTEX_SHADER);e.shaderSource(i,t.vertexShader||"\n precision mediump float;\n \n attribute vec2 a_position;\n varying vec2 v_texCoord;\n varying vec2 v_screenCoord;\n \n uniform vec2 u_screenSize;\n \n void main() {\n v_texCoord = a_position * 0.5 + 0.5;\n v_screenCoord = v_texCoord * u_screenSize;\n gl_Position = vec4(a_position, 0.0, 1.0);\n }\n"),e.compileShader(i);var r=e.createShader(e.FRAGMENT_SHADER);e.shaderSource(r,t.fragmentShader||"\n precision mediump float;\n \n uniform sampler2D u_image;\n \n varying vec2 v_texCoord;\n \n void main() {\n gl_FragColor = texture2D(u_image, v_texCoord);\n }\n"),e.compileShader(r),this.renderTargetProgram_=e.createProgram(),e.attachShader(this.renderTargetProgram_,i),e.attachShader(this.renderTargetProgram_,r),e.linkProgram(this.renderTargetProgram_),this.renderTargetVerticesBuffer_=e.createBuffer();e.bindBuffer(e.ARRAY_BUFFER,this.renderTargetVerticesBuffer_),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,-1,1,1,-1,1]),e.STATIC_DRAW),this.renderTargetAttribLocation_=e.getAttribLocation(this.renderTargetProgram_,"a_position"),this.renderTargetUniformLocation_=e.getUniformLocation(this.renderTargetProgram_,"u_screenSize"),this.renderTargetTextureLocation_=e.getUniformLocation(this.renderTargetProgram_,"u_image"),this.uniforms_=[],t.uniforms&&Object.keys(t.uniforms).forEach(function(i){this.uniforms_.push({value:t.uniforms[i],location:e.getUniformLocation(this.renderTargetProgram_,i)})}.bind(this))}return t.prototype.getGL=function(){return this.gl_},t.prototype.init=function(t){var e=this.getGL(),i=[e.drawingBufferWidth*this.scaleRatio_,e.drawingBufferHeight*this.scaleRatio_];if(e.bindFramebuffer(e.FRAMEBUFFER,this.getFrameBuffer()),e.viewport(0,0,i[0],i[1]),!this.renderTargetTextureSize_||this.renderTargetTextureSize_[0]!==i[0]||this.renderTargetTextureSize_[1]!==i[1]){this.renderTargetTextureSize_=i;var r=e.RGBA,n=e.RGBA,o=e.UNSIGNED_BYTE;e.bindTexture(e.TEXTURE_2D,this.renderTargetTexture_),e.texImage2D(e.TEXTURE_2D,0,r,i[0],i[1],0,n,o,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.renderTargetTexture_,0)}},t.prototype.apply=function(t,e){var i=this.getGL(),r=t.size;i.bindFramebuffer(i.FRAMEBUFFER,e?e.getFrameBuffer():null),i.activeTexture(i.TEXTURE0),i.bindTexture(i.TEXTURE_2D,this.renderTargetTexture_),i.clearColor(0,0,0,0),i.clear(i.COLOR_BUFFER_BIT),i.enable(i.BLEND),i.blendFunc(i.ONE,i.ONE_MINUS_SRC_ALPHA),i.viewport(0,0,i.drawingBufferWidth,i.drawingBufferHeight),i.bindBuffer(i.ARRAY_BUFFER,this.renderTargetVerticesBuffer_),i.useProgram(this.renderTargetProgram_),i.enableVertexAttribArray(this.renderTargetAttribLocation_),i.vertexAttribPointer(this.renderTargetAttribLocation_,2,i.FLOAT,!1,0,0),i.uniform2f(this.renderTargetUniformLocation_,r[0],r[1]),i.uniform1i(this.renderTargetTextureLocation_,0),this.applyUniforms(t),i.drawArrays(i.TRIANGLES,0,6)},t.prototype.getFrameBuffer=function(){return this.frameBuffer_},t.prototype.applyUniforms=function(t){var e,i=this.getGL(),r=1;this.uniforms_.forEach((function(n){if((e="function"==typeof n.value?n.value(t):n.value)instanceof HTMLCanvasElement||e instanceof ImageData)n.texture||(n.texture=i.createTexture()),i.activeTexture(i["TEXTURE"+r]),i.bindTexture(i.TEXTURE_2D,n.texture),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,i.CLAMP_TO_EDGE),e instanceof ImageData?i.texImage2D(i.TEXTURE_2D,0,i.RGBA,i.RGBA,e.width,e.height,0,i.UNSIGNED_BYTE,new Uint8Array(e.data)):i.texImage2D(i.TEXTURE_2D,0,i.RGBA,i.RGBA,i.UNSIGNED_BYTE,e),i.uniform1i(n.location,r++);else if(Array.isArray(e))switch(e.length){case 2:return void i.uniform2f(n.location,e[0],e[1]);case 3:return void i.uniform3f(n.location,e[0],e[1],e[2]);case 4:return void i.uniform4f(n.location,e[0],e[1],e[2],e[3]);default:return}else"number"==typeof e&&i.uniform1f(n.location,e)}))},t}();function jd(t,e){return t[0]=e[0],t[1]=e[1],t[4]=e[2],t[5]=e[3],t[12]=e[4],t[13]=e[5],t}var Gd=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Nd="u_projectionMatrix",zd="u_offsetScaleMatrix",Bd="u_offsetRotateMatrix",Ud="u_time",Vd="u_zoom",Xd="u_resolution",Wd={UNSIGNED_BYTE:5121,UNSIGNED_SHORT:5123,UNSIGNED_INT:5125,FLOAT:5126},Yd=function(t){function e(e){var i=t.call(this)||this,r=e||{};i.boundHandleWebGLContextLost_=i.handleWebGLContextLost.bind(i),i.boundHandleWebGLContextRestored_=i.handleWebGLContextRestored.bind(i),i.canvas_=document.createElement("canvas"),i.canvas_.style.position="absolute",i.canvas_.style.left="0",i.gl_=Od(i.canvas_);var n=i.getGL();if(i.bufferCache_={},i.currentProgram_=null,it(c(function(){if(!Rd){var t=Od(document.createElement("canvas"));t&&(Rd=t.getSupportedExtensions())}return Rd}(),"OES_element_index_uint"),63),n.getExtension("OES_element_index_uint"),i.canvas_.addEventListener(Ad,i.boundHandleWebGLContextLost_),i.canvas_.addEventListener(kd,i.boundHandleWebGLContextRestored_),i.offsetRotateMatrix_=[1,0,0,1,0,0],i.offsetScaleMatrix_=[1,0,0,1,0,0],i.tmpMat4_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],i.uniformLocations_={},i.attribLocations_={},i.uniforms_=[],r.uniforms)for(var o in r.uniforms)i.uniforms_.push({name:o,value:r.uniforms[o]});return i.postProcessPasses_=r.postProcesses?r.postProcesses.map((function(t){return new Dd({webGlContext:n,scaleRatio:t.scaleRatio,vertexShader:t.vertexShader,fragmentShader:t.fragmentShader,uniforms:t.uniforms})})):[new Dd({webGlContext:n})],i.shaderCompileErrors_=null,i.startTime_=Date.now(),i}return Gd(e,t),e.prototype.bindBuffer=function(t){var e=this.getGL(),i=r(t),n=this.bufferCache_[i];n||(n={buffer:t,webGlBuffer:e.createBuffer()},this.bufferCache_[i]=n);e.bindBuffer(t.getType(),n.webGlBuffer)},e.prototype.flushBufferData=function(t){var e=this.getGL();this.bindBuffer(t),e.bufferData(t.getType(),t.getArray(),t.getUsage())},e.prototype.deleteBuffer=function(t){var e=this.getGL(),i=r(t),n=this.bufferCache_[i];e.isContextLost()||e.deleteBuffer(n.buffer),delete this.bufferCache_[i]},e.prototype.disposeInternal=function(){this.canvas_.removeEventListener(Ad,this.boundHandleWebGLContextLost_),this.canvas_.removeEventListener(kd,this.boundHandleWebGLContextRestored_)},e.prototype.prepareDraw=function(t){var e=this.getGL(),i=this.getCanvas(),r=t.size,n=t.pixelRatio;i.width=r[0]*n,i.height=r[1]*n,i.style.width=r[0]+"px",i.style.height=r[1]+"px",e.useProgram(this.currentProgram_);for(var o=this.postProcessPasses_.length-1;o>=0;o--)this.postProcessPasses_[o].init(t);e.bindTexture(e.TEXTURE_2D,null),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),e.useProgram(this.currentProgram_),this.applyFrameState(t),this.applyUniforms(t)},e.prototype.prepareDrawToRenderTarget=function(t,e,i){var r=this.getGL(),n=e.getSize();r.bindFramebuffer(r.FRAMEBUFFER,e.getFramebuffer()),r.viewport(0,0,n[0],n[1]),r.bindTexture(r.TEXTURE_2D,e.getTexture()),r.clearColor(0,0,0,0),r.clear(r.COLOR_BUFFER_BIT),r.enable(r.BLEND),r.blendFunc(r.ONE,i?r.ZERO:r.ONE_MINUS_SRC_ALPHA),r.useProgram(this.currentProgram_),this.applyFrameState(t),this.applyUniforms(t)},e.prototype.drawElements=function(t,e){var i=this.getGL(),r=i.UNSIGNED_INT,n=e-t,o=4*t;i.drawElements(i.TRIANGLES,n,r,o)},e.prototype.finalizeDraw=function(t){for(var e=0;e<this.postProcessPasses_.length;e++)this.postProcessPasses_[e].apply(t,this.postProcessPasses_[e+1]||null)},e.prototype.getCanvas=function(){return this.canvas_},e.prototype.getGL=function(){return this.gl_},e.prototype.applyFrameState=function(t){var e=t.size,i=t.viewState.rotation,r=Tt(this.offsetScaleMatrix_);Ft(r,2/e[0],2/e[1]);var n=Tt(this.offsetRotateMatrix_);0!==i&&function(t,e){var i=Math.cos(e),r=Math.sin(e);Et(t,Pt(bt,i,r,-r,i,0,0))}(n,-i),this.setUniformMatrixValue(zd,jd(this.tmpMat4_,r)),this.setUniformMatrixValue(Bd,jd(this.tmpMat4_,n)),this.setUniformFloatValue(Ud,.001*(Date.now()-this.startTime_)),this.setUniformFloatValue(Vd,t.viewState.zoom),this.setUniformFloatValue(Xd,t.viewState.resolution)},e.prototype.applyUniforms=function(t){var e,i=this.getGL(),r=0;this.uniforms_.forEach(function(n){if((e="function"==typeof n.value?n.value(t):n.value)instanceof HTMLCanvasElement||e instanceof HTMLImageElement||e instanceof ImageData)n.texture||(n.prevValue=void 0,n.texture=i.createTexture()),i.activeTexture(i["TEXTURE"+r]),i.bindTexture(i.TEXTURE_2D,n.texture),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,i.CLAMP_TO_EDGE),(!(e instanceof HTMLImageElement)||e.complete)&&n.prevValue!==e&&(n.prevValue=e,i.texImage2D(i.TEXTURE_2D,0,i.RGBA,i.RGBA,i.UNSIGNED_BYTE,e)),i.uniform1i(this.getUniformLocation(n.name),r++);else if(Array.isArray(e)&&6===e.length)this.setUniformMatrixValue(n.name,jd(this.tmpMat4_,e));else if(Array.isArray(e)&&e.length<=4)switch(e.length){case 2:return void i.uniform2f(this.getUniformLocation(n.name),e[0],e[1]);case 3:return void i.uniform3f(this.getUniformLocation(n.name),e[0],e[1],e[2]);case 4:return void i.uniform4f(this.getUniformLocation(n.name),e[0],e[1],e[2],e[3]);default:return}else"number"==typeof e&&i.uniform1f(this.getUniformLocation(n.name),e)}.bind(this))},e.prototype.useProgram=function(t){return t!=this.currentProgram_&&(this.getGL().useProgram(t),this.currentProgram_=t,this.uniformLocations_={},this.attribLocations_={},!0)},e.prototype.compileShader=function(t,e){var i=this.getGL(),r=i.createShader(e);return i.shaderSource(r,t),i.compileShader(r),r},e.prototype.getProgram=function(t,e){var i=this.getGL(),r=this.compileShader(t,i.FRAGMENT_SHADER),n=this.compileShader(e,i.VERTEX_SHADER);this.shaderCompileErrors_=null,i.getShaderInfoLog(r)&&(this.shaderCompileErrors_="Fragment shader compilation failed:\n"+i.getShaderInfoLog(r)),i.getShaderInfoLog(n)&&(this.shaderCompileErrors_=(this.shaderCompileErrors_||"")+"Vertex shader compilation failed:\n"+i.getShaderInfoLog(n));var o=i.createProgram();return i.attachShader(o,r),i.attachShader(o,n),i.linkProgram(o),o},e.prototype.getShaderCompileErrors=function(){return this.shaderCompileErrors_},e.prototype.getUniformLocation=function(t){return void 0===this.uniformLocations_[t]&&(this.uniformLocations_[t]=this.getGL().getUniformLocation(this.currentProgram_,t)),this.uniformLocations_[t]},e.prototype.getAttributeLocation=function(t){return void 0===this.attribLocations_[t]&&(this.attribLocations_[t]=this.getGL().getAttribLocation(this.currentProgram_,t)),this.attribLocations_[t]},e.prototype.makeProjectionTransform=function(t,e){var i=t.size,r=t.viewState.rotation,n=t.viewState.resolution,o=t.viewState.center;return Tt(e),Ot(e,0,0,2/(n*i[0]),2/(n*i[1]),-r,-o[0],-o[1]),e},e.prototype.setUniformFloatValue=function(t,e){this.getGL().uniform1f(this.getUniformLocation(t),e)},e.prototype.setUniformMatrixValue=function(t,e){this.getGL().uniformMatrix4fv(this.getUniformLocation(t),!1,e)},e.prototype.enableAttributeArray_=function(t,e,i,r,n){var o=this.getAttributeLocation(t);o<0||(this.getGL().enableVertexAttribArray(o),this.getGL().vertexAttribPointer(o,e,i,!1,r,n))},e.prototype.enableAttributes=function(t){for(var e=function(t){for(var e=0,i=0;i<t.length;i++){var r=t[i];e+=r.size*Kd(r.type)}return e}(t),i=0,r=0;r<t.length;r++){var n=t[r];this.enableAttributeArray_(n.name,n.size,n.type||5126,e,i),i+=n.size*Kd(n.type)}},e.prototype.handleWebGLContextLost=function(){x(this.bufferCache_),this.currentProgram_=null},e.prototype.handleWebGLContextRestored=function(){},e.prototype.createTexture=function(t,e,i){var r=this.getGL(),n=i||r.createTexture(),o=r.RGBA,a=r.RGBA,s=r.UNSIGNED_BYTE;return r.bindTexture(r.TEXTURE_2D,n),e?r.texImage2D(r.TEXTURE_2D,0,o,a,s,e):r.texImage2D(r.TEXTURE_2D,0,o,t[0],t[1],0,a,s,null),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),n},e}(u);function Kd(t){switch(t){case Wd.UNSIGNED_BYTE:return Uint8Array.BYTES_PER_ELEMENT;case Wd.UNSIGNED_SHORT:return Uint16Array.BYTES_PER_ELEMENT;case Wd.UNSIGNED_INT:return Uint32Array.BYTES_PER_ELEMENT;case Wd.FLOAT:default:return Float32Array.BYTES_PER_ELEMENT}}var Zd=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Hd="GENERATE_BUFFERS",qd=function(t){function e(e,i){var r=t.call(this,e)||this,n=i||{};return r.helper=new Yd({postProcesses:n.postProcesses,uniforms:n.uniforms}),void 0!==n.className&&(r.helper.getCanvas().className=n.className),r}return Zd(e,t),e.prototype.disposeInternal=function(){this.helper.dispose(),t.prototype.disposeInternal.call(this)},e.prototype.getShaderCompileErrors=function(){return this.helper.getShaderCompileErrors()},e.prototype.dispatchRenderEvent_=function(t,e){var i=this.getLayer();if(i.hasListener(t)){var r=new ra(t,null,e,null);i.dispatchEvent(r)}},e.prototype.preRender=function(t){this.dispatchRenderEvent_(mr,t)},e.prototype.postRender=function(t){this.dispatchRenderEvent_(xr,t)},e}(ea);var Jd=new Uint8Array(4),Qd=function(){function t(t,e){this.helper_=t;var i=t.getGL();this.texture_=i.createTexture(),this.framebuffer_=i.createFramebuffer(),this.size_=e||[1,1],this.data_=new Uint8Array(0),this.dataCacheDirty_=!0,this.updateSize_()}return t.prototype.setSize=function(t){g(t,this.size_)||(this.size_[0]=t[0],this.size_[1]=t[1],this.updateSize_())},t.prototype.getSize=function(){return this.size_},t.prototype.clearCachedData=function(){this.dataCacheDirty_=!0},t.prototype.readAll=function(){if(this.dataCacheDirty_){var t=this.size_,e=this.helper_.getGL();e.bindFramebuffer(e.FRAMEBUFFER,this.framebuffer_),e.readPixels(0,0,t[0],t[1],e.RGBA,e.UNSIGNED_BYTE,this.data_),this.dataCacheDirty_=!1}return this.data_},t.prototype.readPixel=function(t,e){if(t<0||e<0||t>this.size_[0]||e>=this.size_[1])return Jd[0]=0,Jd[1]=0,Jd[2]=0,Jd[3]=0,Jd;this.readAll();var i=Math.floor(t)+(this.size_[1]-Math.floor(e)-1)*this.size_[0];return Jd[0]=this.data_[4*i],Jd[1]=this.data_[4*i+1],Jd[2]=this.data_[4*i+2],Jd[3]=this.data_[4*i+3],Jd},t.prototype.getTexture=function(){return this.texture_},t.prototype.getFramebuffer=function(){return this.framebuffer_},t.prototype.updateSize_=function(){var t=this.size_,e=this.helper_.getGL();this.texture_=this.helper_.createTexture(t,null,this.texture_),e.bindFramebuffer(e.FRAMEBUFFER,this.framebuffer_),e.viewport(0,0,t[0],t[1]),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,this.texture_,0),this.data_=new Uint8Array(t[0]*t[1]*4)},t}(),$d=new Blob(['var e="function"==typeof Object.assign?Object.assign:function(e,n){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),r=1,o=arguments.length;r<o;++r){var i=arguments[r];if(null!=i)for(var f in i)i.hasOwnProperty(f)&&(t[f]=i[f])}return t},n="GENERATE_BUFFERS",t=[],r={vertexPosition:0,indexPosition:0};function o(e,n,t,r,o){e[n+0]=t,e[n+1]=r,e[n+2]=o}function i(e,n,i,f,s,u){var a=3+s,l=e[n+0],v=e[n+1],c=t;c.length=s;for(var g=0;g<c.length;g++)c[g]=e[n+2+g];var b=u?u.vertexPosition:0,h=u?u.indexPosition:0,d=b/a;return o(i,b,l,v,0),c.length&&i.set(c,b+3),o(i,b+=a,l,v,1),c.length&&i.set(c,b+3),o(i,b+=a,l,v,2),c.length&&i.set(c,b+3),o(i,b+=a,l,v,3),c.length&&i.set(c,b+3),b+=a,f[h++]=d,f[h++]=d+1,f[h++]=d+3,f[h++]=d+1,f[h++]=d+2,f[h++]=d+3,r.vertexPosition=b,r.indexPosition=h,r}var f=self;f.onmessage=function(t){var r=t.data;if(r.type===n){for(var o=r.customAttributesCount,s=2+o,u=new Float32Array(r.renderInstructions),a=u.length/s,l=4*a*(o+3),v=new Uint32Array(6*a),c=new Float32Array(l),g=null,b=0;b<u.length;b+=s)g=i(u,b,c,v,o,g);var h=e({vertexBuffer:c.buffer,indexBuffer:v.buffer,renderInstructions:u.buffer},r);f.postMessage(h,[c.buffer,v.buffer,u.buffer])}};'],{type:"application/javascript"}),tg=URL.createObjectURL($d);var eg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ig=function(t){function e(e,i){var n=this,o=i.uniforms||{},a=[1,0,0,1,0,0];o[Nd]=a,(n=t.call(this,e,{className:i.className,uniforms:o,postProcesses:i.postProcesses})||this).sourceRevision_=-1,n.verticesBuffer_=new Md(34962,35048),n.hitVerticesBuffer_=new Md(34962,35048),n.indicesBuffer_=new Md(34963,35048),n.program_=n.helper.getProgram(i.fragmentShader,i.vertexShader),n.hitDetectionEnabled_=!(!i.hitFragmentShader||!i.hitVertexShader),n.hitProgram_=n.hitDetectionEnabled_&&n.helper.getProgram(i.hitFragmentShader,i.hitVertexShader);var s=i.attributes?i.attributes.map((function(t){return{name:"a_"+t.name,size:1,type:Wd.FLOAT}})):[];n.attributes=[{name:"a_position",size:2,type:Wd.FLOAT},{name:"a_index",size:1,type:Wd.FLOAT}].concat(s),n.hitDetectionAttributes=[{name:"a_position",size:2,type:Wd.FLOAT},{name:"a_index",size:1,type:Wd.FLOAT},{name:"a_hitColor",size:4,type:Wd.FLOAT},{name:"a_featureUid",size:1,type:Wd.FLOAT}].concat(s),n.customAttributes=i.attributes?i.attributes:[],n.previousExtent_=[1/0,1/0,-1/0,-1/0],n.currentTransform_=a,n.renderTransform_=[1,0,0,1,0,0],n.invertRenderTransform_=[1,0,0,1,0,0],n.renderInstructions_=new Float32Array(0),n.hitRenderInstructions_=new Float32Array(0),n.hitRenderTarget_=n.hitDetectionEnabled_&&new Qd(n.helper),n.worker_=new Worker(tg),n.worker_.addEventListener("message",function(t){var e=t.data;if(e.type===Hd){var i=e.projectionTransform;e.hitDetection?(this.hitVerticesBuffer_.fromArrayBuffer(e.vertexBuffer),this.helper.flushBufferData(this.hitVerticesBuffer_)):(this.verticesBuffer_.fromArrayBuffer(e.vertexBuffer),this.helper.flushBufferData(this.verticesBuffer_)),this.indicesBuffer_.fromArrayBuffer(e.indexBuffer),this.helper.flushBufferData(this.indicesBuffer_),this.renderTransform_=i,It(this.invertRenderTransform_,this.renderTransform_),e.hitDetection?this.hitRenderInstructions_=new Float32Array(t.data.renderInstructions):this.renderInstructions_=new Float32Array(t.data.renderInstructions),this.getLayer().changed()}}.bind(n)),n.featureCache_={},n.featureCount_=0;var l=n.getLayer().getSource();return n.sourceListenKeys_=[N(l,ls,n.handleSourceFeatureAdded_,n),N(l,us,n.handleSourceFeatureChanged_,n),N(l,cs,n.handleSourceFeatureDelete_,n),N(l,hs,n.handleSourceFeatureClear_,n)],l.forEachFeature(function(t){this.featureCache_[r(t)]={feature:t,properties:t.getProperties(),geometry:t.getGeometry()},this.featureCount_++}.bind(n)),n}return eg(e,t),e.prototype.handleSourceFeatureAdded_=function(t){var e=t.feature;this.featureCache_[r(e)]={feature:e,properties:e.getProperties(),geometry:e.getGeometry()},this.featureCount_++},e.prototype.handleSourceFeatureChanged_=function(t){var e=t.feature;this.featureCache_[r(e)]={feature:e,properties:e.getProperties(),geometry:e.getGeometry()}},e.prototype.handleSourceFeatureDelete_=function(t){var e=t.feature;delete this.featureCache_[r(e)],this.featureCount_--},e.prototype.handleSourceFeatureClear_=function(){this.featureCache_={},this.featureCount_=0},e.prototype.renderFrame=function(t){this.preRender(t);var e=this.indicesBuffer_.getSize();this.helper.drawElements(0,e),this.helper.finalizeDraw(t);var i=this.helper.getCanvas(),r=t.layerStatesArray[t.layerIndex].opacity;return r!==parseFloat(i.style.opacity)&&(i.style.opacity=String(r)),this.hitDetectionEnabled_&&(this.renderHitDetection(t),this.hitRenderTarget_.clearCachedData()),this.postRender(t),i},e.prototype.prepareFrame=function(t){var e=this.getLayer(),i=e.getSource(),r=t.viewState,n=!t.viewHints[Ta]&&!t.viewHints[Ea],o=!re(this.previousExtent_,t.extent),a=this.sourceRevision_<i.getRevision();if(a&&(this.sourceRevision_=i.getRevision()),n&&(o||a)){var s=r.projection,l=r.resolution,u=e instanceof So?e.getRenderBuffer():0,h=Xt(t.extent,u*l);i.loadFeatures(h,l,s),this.rebuildBuffers_(t),this.previousExtent_=t.extent.slice()}return this.helper.makeProjectionTransform(t,this.currentTransform_),Et(this.currentTransform_,this.invertRenderTransform_),this.helper.useProgram(this.program_),this.helper.prepareDraw(t),this.helper.bindBuffer(this.verticesBuffer_),this.helper.bindBuffer(this.indicesBuffer_),this.helper.enableAttributes(this.attributes),!0},e.prototype.rebuildBuffers_=function(t){var e=[1,0,0,1,0,0];this.helper.makeProjectionTransform(t,e);var i,r,n=(2+this.customAttributes.length)*this.featureCount_;if(this.renderInstructions_&&this.renderInstructions_.length===n||(this.renderInstructions_=new Float32Array(n)),this.hitDetectionEnabled_){var o=(7+this.customAttributes.length)*this.featureCount_;this.hitRenderInstructions_&&this.hitRenderInstructions_.length===o||(this.hitRenderInstructions_=new Float32Array(o))}var a,s,l,u=[],h=[],c=0,p=0;for(var f in this.featureCache_)if((r=(i=this.featureCache_[f]).geometry)&&r.getType()===ut){u[0]=r.getFlatCoordinates()[0],u[1]=r.getFlatCoordinates()[1],Rt(e,u),s=p+6,l=void 0,(l=h||[])[0]=Math.floor(s/256/256/256)/255,l[1]=Math.floor(s/256/256)%256/255,l[2]=Math.floor(s/256)%256/255,l[3]=s%256/255,a=l,this.renderInstructions_[c++]=u[0],this.renderInstructions_[c++]=u[1],this.hitDetectionEnabled_&&(this.hitRenderInstructions_[p++]=u[0],this.hitRenderInstructions_[p++]=u[1],this.hitRenderInstructions_[p++]=a[0],this.hitRenderInstructions_[p++]=a[1],this.hitRenderInstructions_[p++]=a[2],this.hitRenderInstructions_[p++]=a[3],this.hitRenderInstructions_[p++]=Number(f));for(var d=void 0,g=0;g<this.customAttributes.length;g++)d=this.customAttributes[g].callback(i.feature,i.properties),this.renderInstructions_[c++]=d,this.hitDetectionEnabled_&&(this.hitRenderInstructions_[p++]=d)}var _={type:Hd,renderInstructions:this.renderInstructions_.buffer,customAttributesCount:this.customAttributes.length};if(_.projectionTransform=e,this.worker_.postMessage(_,[this.renderInstructions_.buffer]),this.renderInstructions_=null,this.hitDetectionEnabled_){var y={type:Hd,renderInstructions:this.hitRenderInstructions_.buffer,customAttributesCount:5+this.customAttributes.length};y.projectionTransform=e,y.hitDetection=!0,this.worker_.postMessage(y,[this.hitRenderInstructions_.buffer]),this.hitRenderInstructions_=null}},e.prototype.forEachFeatureAtCoordinate=function(t,e,i,r,n){if(it(this.hitDetectionEnabled_,66),this.hitRenderInstructions_){var o=Rt(e.coordinateToPixelTransform,t.slice()),a=this.hitRenderTarget_.readPixel(o[0]/2,o[1]/2),s=function(t){var e=0;return e+=Math.round(256*t[0]*256*256*255),e+=Math.round(256*t[1]*256*255),e+=Math.round(256*t[2]*255),e+=Math.round(255*t[3])}([a[0]/255,a[1]/255,a[2]/255,a[3]/255]),l=this.hitRenderInstructions_[s],u=Math.floor(l).toString(),h=this.getLayer().getSource().getFeatureByUid(u);return h?r(h,this.getLayer(),null):void 0}},e.prototype.renderHitDetection=function(t){if(this.hitVerticesBuffer_.getSize()){this.hitRenderTarget_.setSize([Math.floor(t.size[0]/2),Math.floor(t.size[1]/2)]),this.helper.useProgram(this.hitProgram_),this.helper.prepareDrawToRenderTarget(t,this.hitRenderTarget_,!0),this.helper.bindBuffer(this.hitVerticesBuffer_),this.helper.bindBuffer(this.indicesBuffer_),this.helper.enableAttributes(this.hitDetectionAttributes);var e=this.indicesBuffer_.getSize();this.helper.drawElements(0,e)}},e.prototype.disposeInternal=function(){this.worker_.terminate(),this.layer_=null,this.sourceListenKeys_.forEach((function(t){B(t)})),this.sourceListenKeys_=null,t.prototype.disposeInternal.call(this)},e}(qd),rg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ng="blur",og="gradient",ag="radius",sg=["#00f","#0ff","#0f0","#ff0","#f00"],lg=function(t){function e(e){var i=this,r=e||{},n=m({},r);delete n.gradient,delete n.radius,delete n.blur,delete n.weight,(i=t.call(this,n)||this).gradient_=null,i.addEventListener(H(og),i.handleGradientChanged_),i.setGradient(r.gradient?r.gradient:sg),i.setBlur(void 0!==r.blur?r.blur:15),i.setRadius(void 0!==r.radius?r.radius:8);var o=r.weight?r.weight:"weight";return i.weightFunction_="string"==typeof o?function(t){return t.get(o)}:o,i.setRenderOrder(null),i}return rg(e,t),e.prototype.getBlur=function(){return this.get(ng)},e.prototype.getGradient=function(){return this.get(og)},e.prototype.getRadius=function(){return this.get(ag)},e.prototype.handleGradientChanged_=function(){this.gradient_=function(t){for(var e=nn(1,256),i=e.createLinearGradient(0,0,1,256),r=1/(t.length-1),n=0,o=t.length;n<o;++n)i.addColorStop(n*r,t[n]);return e.fillStyle=i,e.fillRect(0,0,1,256),e.canvas}(this.getGradient())},e.prototype.setBlur=function(t){this.set(ng,t)},e.prototype.setGradient=function(t){this.set(og,t)},e.prototype.setRadius=function(t){this.set(ag,t)},e.prototype.createRenderer=function(){return new ig(this,{className:this.getClassName(),attributes:[{name:"weight",callback:function(t){var e=this.weightFunction_(t);return void 0!==e?be(e,0,1):1}.bind(this)}],vertexShader:"\n precision mediump float;\n uniform mat4 u_projectionMatrix;\n uniform mat4 u_offsetScaleMatrix;\n uniform float u_size;\n attribute vec2 a_position;\n attribute float a_index;\n attribute float a_weight;\n\n varying vec2 v_texCoord;\n varying float v_weight;\n\n void main(void) {\n mat4 offsetMatrix = u_offsetScaleMatrix;\n float offsetX = a_index == 0.0 || a_index == 3.0 ? -u_size / 2.0 : u_size / 2.0;\n float offsetY = a_index == 0.0 || a_index == 1.0 ? -u_size / 2.0 : u_size / 2.0;\n vec4 offsets = offsetMatrix * vec4(offsetX, offsetY, 0.0, 0.0);\n gl_Position = u_projectionMatrix * vec4(a_position, 0.0, 1.0) + offsets;\n float u = a_index == 0.0 || a_index == 3.0 ? 0.0 : 1.0;\n float v = a_index == 0.0 || a_index == 1.0 ? 0.0 : 1.0;\n v_texCoord = vec2(u, v);\n v_weight = a_weight;\n }",fragmentShader:"\n precision mediump float;\n uniform float u_blurSlope;\n\n varying vec2 v_texCoord;\n varying float v_weight;\n\n void main(void) {\n vec2 texCoord = v_texCoord * 2.0 - vec2(1.0, 1.0);\n float sqRadius = texCoord.x * texCoord.x + texCoord.y * texCoord.y;\n float value = (1.0 - sqrt(sqRadius)) * u_blurSlope;\n float alpha = smoothstep(0.0, 1.0, value) * v_weight;\n gl_FragColor = vec4(alpha, alpha, alpha, alpha);\n }",hitVertexShader:"\n precision mediump float;\n uniform mat4 u_projectionMatrix;\n uniform mat4 u_offsetScaleMatrix;\n uniform float u_size;\n attribute vec2 a_position;\n attribute float a_index;\n attribute float a_weight;\n attribute vec4 a_hitColor;\n\n varying vec2 v_texCoord;\n varying float v_weight;\n varying vec4 v_hitColor;\n\n void main(void) {\n mat4 offsetMatrix = u_offsetScaleMatrix;\n float offsetX = a_index == 0.0 || a_index == 3.0 ? -u_size / 2.0 : u_size / 2.0;\n float offsetY = a_index == 0.0 || a_index == 1.0 ? -u_size / 2.0 : u_size / 2.0;\n vec4 offsets = offsetMatrix * vec4(offsetX, offsetY, 0.0, 0.0);\n gl_Position = u_projectionMatrix * vec4(a_position, 0.0, 1.0) + offsets;\n float u = a_index == 0.0 || a_index == 3.0 ? 0.0 : 1.0;\n float v = a_index == 0.0 || a_index == 1.0 ? 0.0 : 1.0;\n v_texCoord = vec2(u, v);\n v_hitColor = a_hitColor;\n v_weight = a_weight;\n }",hitFragmentShader:"\n precision mediump float;\n uniform float u_blurSlope;\n\n varying vec2 v_texCoord;\n varying float v_weight;\n varying vec4 v_hitColor;\n\n void main(void) {\n vec2 texCoord = v_texCoord * 2.0 - vec2(1.0, 1.0);\n float sqRadius = texCoord.x * texCoord.x + texCoord.y * texCoord.y;\n float value = (1.0 - sqrt(sqRadius)) * u_blurSlope;\n float alpha = smoothstep(0.0, 1.0, value) * v_weight;\n if (alpha < 0.05) {\n discard;\n }\n\n gl_FragColor = v_hitColor;\n }",uniforms:{u_size:function(){return 2*(this.get(ag)+this.get(ng))}.bind(this),u_blurSlope:function(){return this.get(ag)/Math.max(1,this.get(ng))}.bind(this)},postProcesses:[{fragmentShader:"\n precision mediump float;\n\n uniform sampler2D u_image;\n uniform sampler2D u_gradientTexture;\n\n varying vec2 v_texCoord;\n\n void main() {\n vec4 color = texture2D(u_image, v_texCoord);\n gl_FragColor.a = color.a;\n gl_FragColor.rgb = texture2D(u_gradientTexture, vec2(0.5, color.a)).rgb;\n gl_FragColor.rgb *= gl_FragColor.a;\n }",uniforms:{u_gradientTexture:function(){return this.gradient_}.bind(this)}}]})},e.prototype.renderDeclutter=function(){},e}(rs);var ug=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),hg=function(t){function e(e){var i=e||{};return t.call(this,i)||this}return ug(e,t),e}(to),cg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),pg=function(t){function e(e){var i=t.call(this,e)||this;return i.image_=null,i}return cg(e,t),e.prototype.getImage=function(){return this.image_?this.image_.getImage():null},e.prototype.prepareFrame=function(t){var e=t.layerStatesArray[t.layerIndex],i=t.pixelRatio,r=t.viewState,n=r.resolution,o=this.getLayer().getSource(),a=t.viewHints,s=t.extent;if(void 0!==e.extent&&(s=_e(s,Ti(e.extent,r.projection))),!a[Ta]&&!a[Ea]&&!we(s))if(o){var l=r.projection,u=o.getImage(s,n,i,l);u&&this.loadImage(u)&&(this.image_=u)}else this.image_=null;return!!this.image_},e.prototype.renderFrame=function(t,e){var i=this.image_,r=i.getExtent(),n=i.getResolution(),o=i.getPixelRatio(),a=t.layerStatesArray[t.layerIndex],s=t.pixelRatio,l=t.viewState,u=l.center,h=l.resolution,c=t.size,p=s*n/(h*o),f=Math.round(c[0]*s),d=Math.round(c[1]*s),g=l.rotation;if(g){var _=Math.round(Math.sqrt(f*f+d*d));f=_,d=_}Ot(this.pixelTransform,t.size[0]/2,t.size[1]/2,1/s,1/s,g,-f/2,-d/2),It(this.inversePixelTransform,this.pixelTransform);var y=Tn(this.pixelTransform);this.useContainer(e,y,a.opacity);var v=this.context,x=v.canvas;x.width!=f||x.height!=d?(x.width=f,x.height=d):this.containerReused||v.clearRect(0,0,f,d);var w=!1;if(a.extent){var S=Ti(a.extent,l.projection);(w=!Zt(S,t.extent)&&xe(S,t.extent))&&this.clipUnrotated(v,t,S)}var C=i.getImage(),b=Ot(this.tempTransform,f/2,d/2,p,p,0,o*(r[0]-u[0])/n,o*(u[1]-r[3])/n);this.renderedResolution=n*s/o;var T=b[4],E=b[5],P=C.width*b[0],R=C.height*b[3];if(m(v,this.getLayer().getSource().getContextOptions()),this.preRender(v,t),P>=.5&&R>=.5){var F=a.opacity,O=void 0;1!==F&&(O=this.context.globalAlpha,this.context.globalAlpha=F),this.context.drawImage(C,0,0,+C.width,+C.height,Math.round(T),Math.round(E),Math.round(P),Math.round(R)),1!==F&&(this.context.globalAlpha=O)}return this.postRender(v,t),w&&v.restore(),y!==x.style.transform&&(x.style.transform=y),this.container},e}(oa),fg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),dg=function(t){function e(e){return t.call(this,e)||this}return fg(e,t),e.prototype.createRenderer=function(){return new pg(this)},e}(hg),gg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),_g=function(t){function e(e){var i=t.call(this,e)||this;return i.extentChanged=!0,i.renderedExtent_=null,i.renderedPixelRatio,i.renderedProjection=null,i.renderedRevision,i.renderedTiles=[],i.newTiles_=!1,i.tmpExtent=[1/0,1/0,-1/0,-1/0],i.tmpTileRange_=new ac(0,0,0,0),i}return gg(e,t),e.prototype.isDrawableTile=function(t){var e=this.getLayer(),i=t.getState(),r=e.getUseInterimTilesOnError();return i==Ps||i==Fs||i==Rs&&!r},e.prototype.getTile=function(t,e,i,r){var n=r.pixelRatio,o=r.viewState.projection,a=this.getLayer(),s=a.getSource().getTile(t,e,i,n,o);return s.getState()==Rs&&(a.getUseInterimTilesOnError()?a.getPreload()>0&&(this.newTiles_=!0):s.setState(Ps)),this.isDrawableTile(s)||(s=s.getInterimTile()),s},e.prototype.loadedTileCallback=function(e,i,r){return!!this.isDrawableTile(r)&&t.prototype.loadedTileCallback.call(this,e,i,r)},e.prototype.prepareFrame=function(t){return!!this.getLayer().getSource()},e.prototype.renderFrame=function(t,e){var i=t.layerStatesArray[t.layerIndex],n=t.viewState,o=n.projection,a=n.resolution,s=n.center,l=n.rotation,u=t.pixelRatio,c=this.getLayer(),p=c.getSource(),f=p.getRevision(),d=p.getTileGridForProjection(o),g=d.getZForResolution(a,p.zDirection),_=d.getResolution(g),y=t.extent,v=i.extent&&Ti(i.extent);v&&(y=_e(y,Ti(i.extent)));var x=p.getTilePixelRatio(u),w=Math.round(t.size[0]*x),S=Math.round(t.size[1]*x);if(l){var C=Math.round(Math.sqrt(w*w+S*S));w=C,S=C}var b=_*w/2/x,T=_*S/2/x,E=[s[0]-b,s[1]-T,s[0]+b,s[1]+T],P=d.getTileRangeForExtentAndZ(y,g),R={};R[g]={};var F=this.createLoadedTileFinder(p,o,R),O=this.tmpExtent,I=this.tmpTileRange_;this.newTiles_=!1;for(var M=P.minX;M<=P.maxX;++M)for(var L=P.minY;L<=P.maxY;++L){var A=this.getTile(g,M,L,t);if(this.isDrawableTile(A)){var k=r(this);if(A.getState()==Ps){R[g][A.tileCoord.toString()]=A;var D=A.inTransition(k);this.newTiles_||!D&&-1!==this.renderedTiles.indexOf(A)||(this.newTiles_=!0)}if(1===A.getAlpha(k,t.time))continue}var j=d.getTileCoordChildTileRange(A.tileCoord,I,O),G=!1;j&&(G=F(g+1,j)),G||d.forEachTileCoordParentTileRange(A.tileCoord,F,I,O)}var N=_/a;Ot(this.pixelTransform,t.size[0]/2,t.size[1]/2,1/x,1/x,l,-w/2,-S/2);var z=Tn(this.pixelTransform);this.useContainer(e,z,i.opacity);var B=this.context,U=B.canvas;It(this.inversePixelTransform,this.pixelTransform),Ot(this.tempTransform,w/2,S/2,N,N,0,-w/2,-S/2),U.width!=w||U.height!=S?(U.width=w,U.height=S):this.containerReused||B.clearRect(0,0,w,S),v&&this.clipUnrotated(B,t,v),m(B,p.getContextOptions()),this.preRender(B,t),this.renderedTiles.length=0;var V,X,W,Y=Object.keys(R).map(Number);Y.sort(h),1!==i.opacity||this.containerReused&&!p.getOpaque(t.viewState.projection)?(V=[],X=[]):Y=Y.reverse();for(var K=Y.length-1;K>=0;--K){var Z=Y[K],H=p.getTilePixelSize(Z,u,o),q=d.getResolution(Z)/_,J=H[0]*q*N,Q=H[1]*q*N,$=d.getTileCoordForCoordAndZ(ye(E),Z),tt=d.getTileCoordExtent($),et=Rt(this.tempTransform,[x*(tt[0]-E[0])/_,x*(E[3]-tt[3])/_]),it=x*p.getGutterForProjection(o),rt=R[Z];for(var nt in rt){var ot=(A=rt[nt]).tileCoord,at=et[0]-($[1]-ot[1])*J,st=Math.round(at+J),lt=et[1]-($[2]-ot[2])*Q,ut=Math.round(lt+Q),ht=st-(M=Math.round(at)),ct=ut-(L=Math.round(lt)),pt=g===Z;if(!(D=pt&&1!==A.getAlpha(r(this),t.time)))if(V){B.save(),W=[M,L,M+ht,L,M+ht,L+ct,M,L+ct];for(var ft=0,dt=V.length;ft<dt;++ft)if(g!==Z&&Z<X[ft]){var gt=V[ft];B.beginPath(),B.moveTo(W[0],W[1]),B.lineTo(W[2],W[3]),B.lineTo(W[4],W[5]),B.lineTo(W[6],W[7]),B.moveTo(gt[6],gt[7]),B.lineTo(gt[4],gt[5]),B.lineTo(gt[2],gt[3]),B.lineTo(gt[0],gt[1]),B.clip()}V.push(W),X.push(Z)}else B.clearRect(M,L,ht,ct);this.drawTileImage(A,t,M,L,ht,ct,it,pt,i.opacity),V&&!D&&B.restore(),this.renderedTiles.push(A),this.updateUsedTiles(t.usedTiles,p,A)}}return this.renderedRevision=f,this.renderedResolution=_,this.extentChanged=!this.renderedExtent_||!re(this.renderedExtent_,E),this.renderedExtent_=E,this.renderedPixelRatio=u,this.renderedProjection=o,this.manageTilePyramid(t,p,d,u,o,y,g,c.getPreload()),this.scheduleExpireCache(t,p),this.postRender(B,t),i.extent&&B.restore(),z!==U.style.transform&&(U.style.transform=z),this.container},e.prototype.drawTileImage=function(t,e,i,n,o,a,s,l,u){var h=this.getTileImage(t);if(h){var c=r(this),p=l?t.getAlpha(c,e.time):1,f=u*p,d=f!==this.context.globalAlpha;d&&(this.context.save(),this.context.globalAlpha=f),this.context.drawImage(h,s,s,h.width-2*s,h.height-2*s,i,n,o,a),d&&this.context.restore(),1!==p?e.animate=!0:l&&t.endTransition(c)}},e.prototype.getImage=function(){var t=this.context;return t?t.canvas:null},e.prototype.getTileImage=function(t){return t.getImage()},e.prototype.scheduleExpireCache=function(t,e){if(e.canExpireCache()){var i=function(t,e,i){var n=r(t);n in i.usedTiles&&t.expireCache(i.viewState.projection,i.usedTiles[n])}.bind(null,e);t.postRenderFunctions.push(i)}},e.prototype.updateUsedTiles=function(t,e,i){var n=r(e);n in t||(t[n]={}),t[n][i.getKey()]=!0},e.prototype.manageTilePyramid=function(t,e,i,n,o,a,s,l,u){var h=r(e);h in t.wantedTiles||(t.wantedTiles[h]={});var c,p,f,d,g,_,y=t.wantedTiles[h],v=t.tileQueue,m=0;for(_=i.getMinZoom();_<=s;++_)for(p=i.getTileRangeForExtentAndZ(a,_,p),f=i.getResolution(_),d=p.minX;d<=p.maxX;++d)for(g=p.minY;g<=p.maxY;++g)s-_<=l?(++m,(c=e.getTile(_,d,g,n,o)).getState()==Ts&&(y[c.getKey()]=!0,v.isKeyQueued(c.getKey())||v.enqueue([c,h,i.getTileCoordCenter(c.tileCoord),f])),void 0!==u&&u(c)):e.useTile(_,d,g,o);e.updateCacheSize(m,o)},e}(oa);_g.prototype.getLayer;var yg="image",vg="hybrid",mg="vector",xg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),wg={image:[ha,aa,ua,la,ca],hybrid:[ha,ua],vector:[]},Sg={image:[sa],hybrid:[la,ca,sa],vector:[ha,aa,ua,la,ca,sa]},Cg=function(t){function e(e){var i=t.call(this,e)||this;return i.boundHandleStyleImageChange_=i.handleStyleImageChange_.bind(i),i.dirty_=!1,i.renderedLayerRevision_,i.renderedPixelToCoordinateTransform_=null,i.renderedRotation_,i.renderTileImageQueue_={},i.tileListenerKeys_={},i.tmpTransform_=[1,0,0,1,0,0],i}return xg(e,t),e.prototype.prepareTile=function(t,e,i,n){var o,a=r(t),s=t.getState();return(s===Ps&&t.hifi||s===Rs)&&a in this.tileListenerKeys_&&(B(this.tileListenerKeys_[a]),delete this.tileListenerKeys_[a]),s!==Ps&&s!==Rs||(this.updateExecutorGroup_(t,e,i),this.tileImageNeedsRender_(t,e,i)&&(o=!0,n&&(this.renderTileImageQueue_[a]=t))),o},e.prototype.getTile=function(e,i,n,o){var a=o.pixelRatio,s=o.viewState,l=s.resolution,u=s.projection,h=this.getLayer(),c=h.getSource().getTile(e,i,n,a,u);if(c.getState()<Ps){c.wantedResolution=l;var p=r(c);if(!(p in this.tileListenerKeys_)){var f=N(c,T,this.prepareTile.bind(this,c,a,u,!0));this.tileListenerKeys_[p]=f}}else{var d=o.viewHints;!!(d[Ta]||d[Ea])&&c.wantedResolution||(c.wantedResolution=l),this.prepareTile(c,a,u,!1)&&h.getRenderMode()!==mg&&this.renderTileImage_(c,o)}return t.prototype.getTile.call(this,e,i,n,o)},e.prototype.isDrawableTile=function(e){var i=this.getLayer();return t.prototype.isDrawableTile.call(this,e)&&(i.getRenderMode()===mg?r(i)in e.executorGroups:e.hasContext(i))},e.prototype.getTileImage=function(t){return t.getImage(this.getLayer())},e.prototype.prepareFrame=function(e){var i=this.getLayer().getRevision();return this.renderedLayerRevision_!=i&&(this.renderedTiles.length=0),this.renderedLayerRevision_=i,t.prototype.prepareFrame.call(this,e)},e.prototype.updateExecutorGroup_=function(t,e,i){var n=this.getLayer(),o=n.getRevision(),a=n.getRenderOrder()||null,s=t.wantedResolution,l=t.getReplayState(n);if(l.dirty||l.renderedResolution!==s||l.renderedRevision!=o||l.renderedRenderOrder!=a||l.renderedZ!==t.sourceZ){var u=n.getSource(),h=n.getDeclutter(),c=u.getTileGrid(),p=u.getTileGridForProjection(i).getTileCoordExtent(t.wrappedTileCoord),f=u.getSourceTiles(e,i,t),d=r(n);delete t.hitDetectionImageData[d],t.executorGroups[d]=[],h&&(t.declutterExecutorGroups[d]=[]);for(var g=function(i,r){var o=f[i];if(o.getState()!=Ps)return"continue";var g=o.tileCoord,y=c.getTileCoordExtent(g),v=_e(p,y),m=re(y,v)?null:Xt(v,n.getRenderBuffer()*s,_.tmpExtent);l.dirty=!1;var x=new $o(0,v,s,e),w=h?new $o(0,v,s,e):void 0,S=Ja(s,e),C=function(t){var e,i=t.getStyleFunction()||n.getStyleFunction();if(i&&(e=i(t,s)),e){var r=this.renderFeature(t,S,e,x,w);this.dirty_=this.dirty_||r,l.dirty=l.dirty||r}},b=o.getFeatures();a&&a!==l.renderedRenderOrder&&b.sort(a);for(var T=0,E=b.length;T<E;++T){var P=b[T];m&&!xe(m,P.getGeometry().getExtent())||C.call(_,P)}var R=x.finish(),F=n.getRenderMode()!==mg&&h&&1===f.length?null:v,O=new Ca(F,s,e,u.getOverlaps(),R,n.getRenderBuffer());if(t.executorGroups[d].push(O),w){var I=new Ca(F,s,e,u.getOverlaps(),w.finish(),n.getRenderBuffer());t.declutterExecutorGroups[d].push(I)}},_=this,y=0,v=f.length;y<v;++y)g(y);l.renderedRevision=o,l.renderedZ=t.sourceZ,l.renderedRenderOrder=a,l.renderedResolution=s}},e.prototype.forEachFeatureAtCoordinate=function(t,e,i,n,o){var a=e.viewState.resolution,s=e.viewState.rotation;i=null==i?0:i;var l=this.getLayer(),u=l.getSource().getTileGridForProjection(e.viewState.projection),h=Vt([t]);Xt(h,a*i,h);for(var c,p={},f=function(t,e,i){var a=t.getId();void 0===a&&(a=r(t));var s=p[a];if(s){if(!0!==s&&i<s.distanceSq){if(0===i)return p[a]=!0,o.splice(o.lastIndexOf(s),1),n(t,l,e);s.geometry=e,s.distanceSq=i}}else{if(0===i)return p[a]=!0,n(t,l,e);o.push(p[a]={feature:t,layer:l,geometry:e,distanceSq:i,callback:n})}},d=this.renderedTiles,g=function(n,o){var p=d[n];if(!xe(u.getTileCoordExtent(p.wrappedTileCoord),h))return"continue";var g=r(l),_=[p.executorGroups[g]],y=p.declutterExecutorGroups[g];y&&_.push(y),_.some((function(r){for(var n=r===y?e.declutterTree.all().map((function(t){return t.value})):null,o=0,l=r.length;o<l;++o){var u=r[o];if(c=u.forEachFeatureAtCoordinate(t,a,s,i,f,n))return!0}}))},_=0,y=d.length;!c&&_<y;++_)g(_);return c},e.prototype.getFeatures=function(t){return new Promise(function(e,i){for(var n,o=this.getLayer(),a=r(o),s=o.getSource(),l=this.renderedProjection,u=l.getExtent(),h=this.renderedResolution,c=s.getTileGridForProjection(l),p=Rt(this.renderedPixelToCoordinateTransform_,t.slice()),f=c.getTileCoordForCoordAndResolution(p,h),d=0,g=this.renderedTiles.length;d<g;++d)if(f.toString()===this.renderedTiles[d].tileCoord.toString()){if((n=this.renderedTiles[d]).getState()===Ps&&n.hifi){var _=c.getTileCoordExtent(n.tileCoord);s.getWrapX()&&l.canWrapX()&&!Zt(u,_)&&si(p,l);break}n=void 0}if(!n||n.loadingSourceTiles>0)e([]);else{var y=ye(c.getTileCoordExtent(n.wrappedTileCoord)),v=[(p[0]-y[0])/h,(y[1]-p[1])/h],m=n.getSourceTiles().reduce((function(t,e){return t.concat(e.getFeatures())}),[]),x=n.hitDetectionImageData[a];if(!x&&!this.animatingOrInteracting_){var w=Gr(c.getTileSize(c.getZForResolution(h))),S=[w[0]/2,w[1]/2],C=this.renderedRotation_;x=Ka(w,[this.getRenderTransform(c.getTileCoordCenter(n.wrappedTileCoord),h,0,.5,S[0],S[1],0)],m,o.getStyleFunction(),c.getTileCoordExtent(n.wrappedTileCoord),n.getReplayState(o).renderedResolution,C),n.hitDetectionImageData[a]=x}e(Za(v,m,x))}}.bind(this))},e.prototype.handleFontsChanged=function(){x(this.renderTileImageQueue_);var t=this.getLayer();t.getVisible()&&void 0!==this.renderedLayerRevision_&&t.changed()},e.prototype.handleStyleImageChange_=function(t){this.renderIfReadyAndVisible()},e.prototype.renderDeclutter=function(t){for(var e=t.viewHints,i=!(e[Ta]||e[Ea]),n=this.renderedTiles,o=0,a=n.length;o<a;++o){var s=n[o],l=s.declutterExecutorGroups[r(this.getLayer())];if(l)for(var u=l.length-1;u>=0;--u)l[u].execute(this.context,1,this.getTileRenderTransform(s,t),t.viewState.rotation,i,void 0,t.declutterTree)}},e.prototype.getTileRenderTransform=function(t,e){var i=e.pixelRatio,r=e.viewState,n=r.center,o=r.resolution,a=r.rotation,s=e.size,l=Math.round(s[0]*i),u=Math.round(s[1]*i),h=this.getLayer().getSource().getTileGridForProjection(e.viewState.projection),c=t.tileCoord,p=h.getTileCoordExtent(t.wrappedTileCoord),f=h.getTileCoordExtent(c,this.tmpExtent)[0]-p[0];return Et(Ft(this.inversePixelTransform.slice(),1/i,1/i),this.getRenderTransform(n,o,a,i,l,u,f))},e.prototype.renderFrame=function(e,i){var n=e.viewHints,o=!(n[Ta]||n[Ea]);this.renderQueuedTileImages_(o,e),t.prototype.renderFrame.call(this,e,i),this.renderedPixelToCoordinateTransform_=e.pixelToCoordinateTransform.slice(),this.renderedRotation_=e.viewState.rotation;var a=this.getLayer(),s=a.getRenderMode();if(s===yg)return this.container;var l=a.getSource(),u=e.usedTiles[r(l)];for(var h in this.renderTileImageQueue_)u&&h in u||delete this.renderTileImageQueue_[h];for(var c=this.context,p=Sg[s],f=e.viewState.rotation,d=this.renderedTiles,g=[],_=[],y=d.length-1;y>=0;--y)for(var v=d[y],m=this.getTileRenderTransform(v,e),x=v.executorGroups[r(a)],w=!1,S=0,C=x.length;S<C;++S){var b=x[S];if(b.hasExecutors(p)){var T=v.tileCoord[0],E=void 0;if(!w&&(E=b.getClipCoords(m))){c.save();for(var P=0,R=g.length;P<R;++P){var F=g[P];T<_[P]&&(c.beginPath(),c.moveTo(E[0],E[1]),c.lineTo(E[2],E[3]),c.lineTo(E[4],E[5]),c.lineTo(E[6],E[7]),c.moveTo(F[6],F[7]),c.lineTo(F[4],F[5]),c.lineTo(F[2],F[3]),c.lineTo(F[0],F[1]),c.clip())}}b.execute(c,1,m,f,o,p),!w&&E&&(c.restore(),g.push(E),_.push(T),w=!0)}}return this.container},e.prototype.renderQueuedTileImages_=function(t,e){for(var i in this.renderTileImageQueue_){if(!t&&Date.now()-e.time>8){e.animate=!0;break}var r=this.renderTileImageQueue_[i];delete this.renderTileImageQueue_[i],this.renderTileImage_(r,e)}},e.prototype.renderFeature=function(t,e,i,r,n){if(!i)return!1;var o=!1;if(Array.isArray(i))for(var a=0,s=i.length;a<s;++a)o=$a(r,t,i[a],e,this.boundHandleStyleImageChange_,void 0,n)||o;else o=$a(r,t,i,e,this.boundHandleStyleImageChange_,void 0,n);return o},e.prototype.tileImageNeedsRender_=function(t,e,i){var r=this.getLayer(),n=t.getReplayState(r),o=r.getRevision(),a=t.sourceZ,s=t.wantedResolution;return n.renderedTileResolution!==s||n.renderedTileRevision!==o||n.renderedTileZ!==a},e.prototype.renderTileImage_=function(t,e){var i=this.getLayer(),n=t.getReplayState(i),o=i.getRevision(),a=t.executorGroups[r(i)];n.renderedTileRevision=o,n.renderedTileZ=t.sourceZ;var s=t.wrappedTileCoord,l=s[0],u=i.getSource(),h=e.pixelRatio,c=e.viewState.projection,p=u.getTileGridForProjection(c),f=p.getResolution(t.tileCoord[0]),d=e.pixelRatio/t.wantedResolution*f,g=p.getResolution(l),_=t.getContext(i);h=Math.round(Math.max(h,d/h));var y=u.getTilePixelSize(l,h,c);_.canvas.width=y[0],_.canvas.height=y[1];var v=h/d;if(1!==v){var m=Tt(this.tmpTransform_);Ft(m,v,v),_.setTransform.apply(_,m)}var x=p.getTileCoordExtent(s,this.tmpExtent),w=d/g,S=Tt(this.tmpTransform_);Ft(S,w,-w),function(t,e,i){Et(t,Pt(bt,1,0,0,1,e,i))}(S,-x[0],-x[3]);for(var C=0,b=a.length;C<b;++C){a[C].execute(_,v,S,0,!0,wg[i.getRenderMode()])}n.renderedTileResolution=t.wantedResolution},e}(_g),bg="preload",Tg="useInterimTilesOnError",Eg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Pg=function(t){function e(e){var i=this,r=e||{},n=m({},r);delete n.preload,delete n.useInterimTilesOnError,i=t.call(this,n)||this;var o=r.renderMode||vg;return it(null==o||o==yg||o==vg||o==mg,28),i.renderMode_=o,i.setPreload(r.preload?r.preload:0),i.setUseInterimTilesOnError(void 0===r.useInterimTilesOnError||r.useInterimTilesOnError),i}return Eg(e,t),e.prototype.createRenderer=function(){return new Cg(this)},e.prototype.getFeatures=function(e){return t.prototype.getFeatures.call(this,e)},e.prototype.getRenderMode=function(){return this.renderMode_},e.prototype.getPreload=function(){return this.get(bg)},e.prototype.getUseInterimTilesOnError=function(){return this.get(Tg)},e.prototype.setPreload=function(t){this.set(bg,t)},e.prototype.setUseInterimTilesOnError=function(t){this.set(Tg,t)},e}(So),Rg="tileloadstart",Fg="tileloadend",Og="tileloaderror",Ig=[0,0,0],Mg=function(){function t(t){var e,i,r,n;if(this.minZoom=void 0!==t.minZoom?t.minZoom:0,this.resolutions_=t.resolutions,it((e=this.resolutions_,i=!0,r=function(t,e){return e-t}||h,e.every((function(t,n){if(0===n)return!0;var o=r(e[n-1],t);return!(o>0||i&&0===o)}))),17),!t.origins)for(var o=0,a=this.resolutions_.length-1;o<a;++o)if(n){if(this.resolutions_[o]/this.resolutions_[o+1]!==n){n=void 0;break}}else n=this.resolutions_[o]/this.resolutions_[o+1];this.zoomFactor_=n,this.maxZoom=this.resolutions_.length-1,this.origin_=void 0!==t.origin?t.origin:null,this.origins_=null,void 0!==t.origins&&(this.origins_=t.origins,it(this.origins_.length==this.resolutions_.length,20));var s=t.extent;void 0===s||this.origin_||this.origins_||(this.origin_=ye(s)),it(!this.origin_&&this.origins_||this.origin_&&!this.origins_,18),this.tileSizes_=null,void 0!==t.tileSizes&&(this.tileSizes_=t.tileSizes,it(this.tileSizes_.length==this.resolutions_.length,19)),this.tileSize_=void 0!==t.tileSize?t.tileSize:this.tileSizes_?null:256,it(!this.tileSize_&&this.tileSizes_||this.tileSize_&&!this.tileSizes_,22),this.extent_=void 0!==s?s:null,this.fullTileRanges_=null,this.tmpSize_=[0,0],void 0!==t.sizes?this.fullTileRanges_=t.sizes.map((function(t,e){var i=new ac(Math.min(0,t[0]),Math.max(t[0]-1,-1),Math.min(0,t[1]),Math.max(t[1]-1,-1));if(s){var r=this.getTileRangeForExtentAndZ(s,e);i.minX=Math.max(r.minX,i.minX),i.maxX=Math.min(r.maxX,i.maxX),i.minY=Math.max(r.minY,i.minY),i.maxY=Math.min(r.maxY,i.maxY)}return i}),this):s&&this.calculateTileRanges_(s)}return t.prototype.forEachTileCoord=function(t,e,i){for(var r=this.getTileRangeForExtentAndZ(t,e),n=r.minX,o=r.maxX;n<=o;++n)for(var a=r.minY,s=r.maxY;a<=s;++a)i([e,n,a])},t.prototype.forEachTileCoordParentTileRange=function(t,e,i,r){var n,o,a=null,s=t[0]-1;for(2===this.zoomFactor_?(n=t[1],o=t[2]):a=this.getTileCoordExtent(t,r);s>=this.minZoom;){if(e(s,2===this.zoomFactor_?sc(n=Math.floor(n/2),n,o=Math.floor(o/2),o,i):this.getTileRangeForExtentAndZ(a,s,i)))return!0;--s}return!1},t.prototype.getExtent=function(){return this.extent_},t.prototype.getMaxZoom=function(){return this.maxZoom},t.prototype.getMinZoom=function(){return this.minZoom},t.prototype.getOrigin=function(t){return this.origin_?this.origin_:this.origins_[t]},t.prototype.getResolution=function(t){return this.resolutions_[t]},t.prototype.getResolutions=function(){return this.resolutions_},t.prototype.getTileCoordChildTileRange=function(t,e,i){if(t[0]<this.maxZoom){if(2===this.zoomFactor_){var r=2*t[1],n=2*t[2];return sc(r,r+1,n,n+1,e)}var o=this.getTileCoordExtent(t,i);return this.getTileRangeForExtentAndZ(o,t[0]+1,e)}return null},t.prototype.getTileRangeExtent=function(t,e,i){var r=this.getOrigin(t),n=this.getResolution(t),o=Gr(this.getTileSize(t),this.tmpSize_),a=r[0]+e.minX*o[0]*n,s=r[0]+(e.maxX+1)*o[0]*n;return Qt(a,r[1]+e.minY*o[1]*n,s,r[1]+(e.maxY+1)*o[1]*n,i)},t.prototype.getTileRangeForExtentAndZ=function(t,e,i){var r=Ig;this.getTileCoordForXYAndZ_(t[0],t[3],e,!1,r);var n=r[1],o=r[2];return this.getTileCoordForXYAndZ_(t[2],t[1],e,!0,r),sc(n,r[1],o,r[2],i)},t.prototype.getTileCoordCenter=function(t){var e=this.getOrigin(t[0]),i=this.getResolution(t[0]),r=Gr(this.getTileSize(t[0]),this.tmpSize_);return[e[0]+(t[1]+.5)*r[0]*i,e[1]-(t[2]+.5)*r[1]*i]},t.prototype.getTileCoordExtent=function(t,e){var i=this.getOrigin(t[0]),r=this.getResolution(t[0]),n=Gr(this.getTileSize(t[0]),this.tmpSize_),o=i[0]+t[1]*n[0]*r,a=i[1]-(t[2]+1)*n[1]*r;return Qt(o,a,o+n[0]*r,a+n[1]*r,e)},t.prototype.getTileCoordForCoordAndResolution=function(t,e,i){return this.getTileCoordForXYAndResolution_(t[0],t[1],e,!1,i)},t.prototype.getTileCoordForXYAndResolution_=function(t,e,i,r,n){var o=this.getZForResolution(i),a=i/this.getResolution(o),s=this.getOrigin(o),l=Gr(this.getTileSize(o),this.tmpSize_),u=r?.5:0,h=r?.5:0,c=Math.floor((t-s[0])/i+u),p=Math.floor((s[1]-e)/i+h),f=a*c/l[0],d=a*p/l[1];return r?(f=Math.ceil(f)-1,d=Math.ceil(d)-1):(f=Math.floor(f),d=Math.floor(d)),$h(o,f,d,n)},t.prototype.getTileCoordForXYAndZ_=function(t,e,i,r,n){var o=this.getOrigin(i),a=this.getResolution(i),s=Gr(this.getTileSize(i),this.tmpSize_),l=r?.5:0,u=r?.5:0,h=Math.floor((t-o[0])/a+l),c=Math.floor((o[1]-e)/a+u),p=h/s[0],f=c/s[1];return r?(p=Math.ceil(p)-1,f=Math.ceil(f)-1):(p=Math.floor(p),f=Math.floor(f)),$h(i,p,f,n)},t.prototype.getTileCoordForCoordAndZ=function(t,e,i){return this.getTileCoordForXYAndZ_(t[0],t[1],e,!1,i)},t.prototype.getTileCoordResolution=function(t){return this.resolutions_[t[0]]},t.prototype.getTileSize=function(t){return this.tileSize_?this.tileSize_:this.tileSizes_[t]},t.prototype.getFullTileRange=function(t){return this.fullTileRanges_?this.fullTileRanges_[t]:this.extent_?this.getTileRangeForExtentAndZ(this.extent_,t):null},t.prototype.getZForResolution=function(t,e){return be(p(this.resolutions_,t,e||0),this.minZoom,this.maxZoom)},t.prototype.calculateTileRanges_=function(t){for(var e=this.resolutions_.length,i=new Array(e),r=this.minZoom;r<e;++r)i[r]=this.getTileRangeForExtentAndZ(t,r);this.fullTileRanges_=i},t}();function Lg(t){var e=t.getDefaultTileGrid();return e||(e=Dg(t),t.setDefaultTileGrid(e)),e}function Ag(t){var e=t||{},i=e.extent||ci("EPSG:3857").getExtent(),r={extent:i,minZoom:e.minZoom,tileSize:e.tileSize,resolutions:kg(i,e.maxZoom,e.tileSize,e.maxResolution)};return new Mg(r)}function kg(t,e,i,r){for(var n=void 0!==e?e:42,o=ge(t),a=me(t),s=Gr(void 0!==i?i:256),l=r>0?r:Math.max(a/s[0],o/s[1]),u=n+1,h=new Array(u),c=0;c<u;++c)h[c]=l/Math.pow(2,c);return h}function Dg(t,e,i,r){return function(t,e,i,r){var n=void 0!==r?r:kt,o=kg(t,e,i);return new Mg({extent:t,origin:fe(t,n),resolutions:o,tileSize:i})}(jg(t),e,i,r)}function jg(t){var e=(t=ci(t)).getExtent();if(!e){var i=180*Ct[vt]/t.getMetersPerUnit();e=Qt(-i,-i,i,i)}return e}var Gg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Ng=function(t){function i(e){var i=t.call(this,{attributions:e.attributions,attributionsCollapsible:e.attributionsCollapsible,projection:e.projection,state:e.state,wrapX:e.wrapX})||this;i.opaque_=void 0!==e.opaque&&e.opaque,i.tilePixelRatio_=void 0!==e.tilePixelRatio?e.tilePixelRatio:1,i.tileGrid=void 0!==e.tileGrid?e.tileGrid:null;var r=e.tileGrid;return r&&Gr(r.getTileSize(r.getMinZoom()),[256,256]),i.tileCache=new oc(e.cacheSize||0),i.tmpSize=[0,0],i.key_=e.key||"",i.tileOptions={transition:e.transition},i.zDirection=e.zDirection?e.zDirection:0,i}return Gg(i,t),i.prototype.canExpireCache=function(){return this.tileCache.canExpireCache()},i.prototype.expireCache=function(t,e){var i=this.getTileCacheForProjection(t);i&&i.expireCache(e)},i.prototype.forEachLoadedTile=function(t,e,i,r){var n=this.getTileCacheForProjection(t);if(!n)return!1;for(var o,a,s,l=!0,u=i.minX;u<=i.maxX;++u)for(var h=i.minY;h<=i.maxY;++h)a=tc(e,u,h),s=!1,n.containsKey(a)&&(s=(o=n.get(a)).getState()===Ps)&&(s=!1!==r(o)),s||(l=!1);return l},i.prototype.getGutterForProjection=function(t){return 0},i.prototype.getKey=function(){return this.key_},i.prototype.setKey=function(t){this.key_!==t&&(this.key_=t,this.changed())},i.prototype.getOpaque=function(t){return this.opaque_},i.prototype.getResolutions=function(){return this.tileGrid.getResolutions()},i.prototype.getTile=function(t,i,r,n,o){return e()},i.prototype.getTileGrid=function(){return this.tileGrid},i.prototype.getTileGridForProjection=function(t){return this.tileGrid?this.tileGrid:Lg(t)},i.prototype.getTileCacheForProjection=function(t){return it(gi(this.getProjection(),t),68),this.tileCache},i.prototype.getTilePixelRatio=function(t){return this.tilePixelRatio_},i.prototype.getTilePixelSize=function(t,e,i){var r=this.getTileGridForProjection(i),n=this.getTilePixelRatio(e),o=Gr(r.getTileSize(t),this.tmpSize);return 1==n?o:jr(o,n,this.tmpSize)},i.prototype.getTileCoordForTileUrlFunction=function(t,e){var i=void 0!==e?e:this.getProjection(),r=this.getTileGridForProjection(i);return this.getWrapX()&&i.isGlobal()&&(t=function(t,e,i){var r=e[0],n=t.getTileCoordCenter(e),o=jg(i);if(Kt(o,n))return e;var a=me(o),s=Math.ceil((o[0]-n[0])/a);return n[0]+=a*s,t.getTileCoordForCoordAndZ(n,r)}(r,t,i)),function(t,e){var i=t[0],r=t[1],n=t[2];if(e.getMinZoom()>i||i>e.getMaxZoom())return!1;var o=e.getFullTileRange(i);return!o||o.containsXY(r,n)}(t,r)?t:null},i.prototype.clear=function(){this.tileCache.clear()},i.prototype.refresh=function(){this.clear(),t.prototype.refresh.call(this)},i.prototype.updateCacheSize=function(t,e){var i=this.getTileCacheForProjection(e);t>i.highWaterMark&&(i.highWaterMark=t)},i.prototype.useTile=function(t,e,i,r){},i}(as),zg=function(t){function e(e,i){var r=t.call(this,e)||this;return r.tile=i,r}return Gg(e,t),e}(s);function Bg(t,e){var i=/\{z\}/g,r=/\{x\}/g,n=/\{y\}/g,o=/\{-y\}/g;return function(a,s,l){return a?t.replace(i,a[0].toString()).replace(r,a[1].toString()).replace(n,a[2].toString()).replace(o,(function(){var t=a[0],i=e.getFullTileRange(t);return it(i,55),(i.getHeight()-a[2]-1).toString()})):void 0}}function Ug(t){return 1===t.length?t[0]:function(e,i,r){if(e){var n=Ie(rc(e),t.length);return t[n](e,i,r)}}}var Vg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Xg=function(t){function e(i){var r=t.call(this,{attributions:i.attributions,cacheSize:i.cacheSize,opaque:i.opaque,projection:i.projection,state:i.state,tileGrid:i.tileGrid,tilePixelRatio:i.tilePixelRatio,wrapX:i.wrapX,transition:i.transition,key:i.key,attributionsCollapsible:i.attributionsCollapsible,zDirection:i.zDirection})||this;return r.generateTileUrlFunction_=r.tileUrlFunction===e.prototype.tileUrlFunction,r.tileLoadFunction=i.tileLoadFunction,i.tileUrlFunction&&(r.tileUrlFunction=i.tileUrlFunction),r.urls=null,i.urls?r.setUrls(i.urls):i.url&&r.setUrl(i.url),r.tileLoadingKeys_={},r}return Vg(e,t),e.prototype.getTileLoadFunction=function(){return this.tileLoadFunction},e.prototype.getTileUrlFunction=function(){return Object.getPrototypeOf(this).tileUrlFunction===this.tileUrlFunction?this.tileUrlFunction.bind(this):this.tileUrlFunction},e.prototype.getUrls=function(){return this.urls},e.prototype.handleTileChange=function(t){var e,i=t.target,n=r(i),o=i.getState();o==Es?(this.tileLoadingKeys_[n]=!0,e=Rg):n in this.tileLoadingKeys_&&(delete this.tileLoadingKeys_[n],e=o==Rs?Og:o==Ps?Fg:void 0),null!=e&&this.dispatchEvent(new zg(e,i))},e.prototype.setTileLoadFunction=function(t){this.tileCache.clear(),this.tileLoadFunction=t,this.changed()},e.prototype.setTileUrlFunction=function(t,e){this.tileUrlFunction=t,this.tileCache.pruneExceptNewestZ(),void 0!==e?this.setKey(e):this.changed()},e.prototype.setUrl=function(t){var e=function(t){var e=[],i=/\{([a-z])-([a-z])\}/.exec(t);if(i){var r=i[1].charCodeAt(0),n=i[2].charCodeAt(0),o=void 0;for(o=r;o<=n;++o)e.push(t.replace(i[0],String.fromCharCode(o)));return e}if(i=/\{(\d+)-(\d+)\}/.exec(t)){for(var a=parseInt(i[2],10),s=parseInt(i[1],10);s<=a;s++)e.push(t.replace(i[0],s.toString()));return e}return e.push(t),e}(t);this.urls=e,this.setUrls(e)},e.prototype.setUrls=function(t){this.urls=t;var e=t.join("\n");this.generateTileUrlFunction_?this.setTileUrlFunction(function(t,e){for(var i=t.length,r=new Array(i),n=0;n<i;++n)r[n]=Bg(t[n],e);return Ug(r)}(t,this.tileGrid),e):this.setKey(e)},e.prototype.tileUrlFunction=function(t,e,i){},e.prototype.useTile=function(t,e,i){var r=tc(t,e,i);this.tileCache.containsKey(r)&&this.tileCache.get(r)},e}(Ng),Wg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Yg=function(t){function e(e){var i=this,r=e.projection||"EPSG:3857",n=e.extent||jg(r),o=e.tileGrid||Ag({extent:n,maxResolution:e.maxResolution,maxZoom:void 0!==e.maxZoom?e.maxZoom:22,minZoom:e.minZoom,tileSize:e.tileSize||512});return(i=t.call(this,{attributions:e.attributions,attributionsCollapsible:e.attributionsCollapsible,cacheSize:e.cacheSize,opaque:!1,projection:r,state:e.state,tileGrid:o,tileLoadFunction:e.tileLoadFunction?e.tileLoadFunction:Kg,tileUrlFunction:e.tileUrlFunction,url:e.url,urls:e.urls,wrapX:void 0===e.wrapX||e.wrapX,transition:e.transition,zDirection:void 0===e.zDirection?1:e.zDirection})||this).format_=e.format?e.format:null,i.loadingTiles_={},i.sourceTileCache=new oc(i.tileCache.highWaterMark),i.overlaps_=null==e.overlaps||e.overlaps,i.tileClass=e.tileClass?e.tileClass:pc,i.tileGrids_={},i}return Wg(e,t),e.prototype.getFeaturesInExtent=function(t){var e=[],i=this.tileCache;if(0===i.getCount())return e;var r=ic(i.peekFirstKey())[0],n=this.tileGrid;return i.forEach((function(i){if(i.tileCoord[0]===r&&i.getState()===Ps)for(var o=i.getSourceTiles(),a=0,s=o.length;a<s;++a){var l=o[a],u=l.tileCoord;if(xe(t,n.getTileCoordExtent(u))){var h=l.getFeatures();if(h)for(var c=0,p=h.length;c<p;++c){var f=h[c],d=f.getGeometry();xe(t,d.getExtent())&&e.push(f)}}}})),e},e.prototype.getOverlaps=function(){return this.overlaps_},e.prototype.clear=function(){this.tileCache.clear(),this.sourceTileCache.clear()},e.prototype.expireCache=function(e,i){t.prototype.expireCache.call(this,e,i),this.sourceTileCache.expireCache({})},e.prototype.getSourceTiles=function(t,e,i){var r=i.wrappedTileCoord,n=this.getTileGridForProjection(e),o=n.getTileCoordExtent(r),a=r[0],s=n.getResolution(a);Xt(o,-s,o);var l=this.tileGrid,u=l.getExtent();u&&_e(o,u,o);var h,c,p,f=l.getZForResolution(s,1),d=l.getMinZoom(),_=i.sourceTiles;if(_&&_.length>0&&_[0].tileCoord[0]===f)h=_,c=!0,p=f;else{h=[],p=f+1;do{--p,c=!0,l.forEachTileCoord(o,p,function(r){var n,o=this.tileUrlFunction(r,t,e);if(void 0!==o)if(this.sourceTileCache.containsKey(o)){var a=(n=this.sourceTileCache.get(o)).getState();if(a===Ps||a===Rs||a===Fs)return void h.push(n)}else p===f&&((n=new this.tileClass(r,Ts,o,this.format_,this.tileLoadFunction)).extent=l.getTileCoordExtent(r),n.projection=e,n.resolution=l.getResolution(r[0]),this.sourceTileCache.set(o,n),n.addEventListener(T,this.handleTileChange.bind(this)),n.load());c=c&&n&&n.getState()===Ps,n&&n.getState()!==Fs&&i.getState()===Ts&&(i.loadingSourceTiles++,n.addEventListener(T,(function t(){var e=n.getState(),r=n.getKey();if(e===Ps||e===Rs){e===Ps?(n.removeEventListener(T,t),i.loadingSourceTiles--,delete i.errorSourceTileKeys[r]):e===Rs&&(i.errorSourceTileKeys[r]=!0);var o=Object.keys(i.errorSourceTileKeys).length;i.loadingSourceTiles-o==0&&(i.hifi=0===o,i.sourceZ=f,i.setState(Ps))}})))}.bind(this)),c||(h.length=0)}while(!c&&p>d)}return i.getState()===Ts&&i.setState(Es),c&&(i.hifi=f===p,i.sourceZ=p,i.getState()<Ps?i.setState(Ps):_&&g(h,_)||(i.sourceTiles=h)),h},e.prototype.getTile=function(t,e,i,r,n){var o,a=tc(t,e,i),s=this.getKey();if(this.tileCache.containsKey(a)&&(o=this.tileCache.get(a)).key===s)return o;var l=[t,e,i],u=this.getTileCoordForTileUrlFunction(l,n),h=this.getTileGrid().getExtent(),c=this.getTileGridForProjection(n);if(u&&h){var p=c.getTileCoordExtent(u);Xt(p,-c.getResolution(t),p),xe(h,p)||(u=null)}var f=!0;if(null!==u){var d=this.tileGrid,g=c.getResolution(t),_=d.getZForResolution(g,1),y=c.getTileCoordExtent(u);Xt(y,-g,y),d.forEachTileCoord(y,_,function(t){f=f&&!this.tileUrlFunction(t,r,n)}.bind(this))}var v=new hc(l,f?Fs:Ts,u,this.getSourceTiles.bind(this,r,n));return v.key=s,o?(v.interimTile=o,v.refreshInterimChain(),this.tileCache.replace(a,v)):this.tileCache.set(a,v),v},e.prototype.getTileGridForProjection=function(t){var e=t.getCode(),i=this.tileGrids_[e];if(!i){var r=this.tileGrid;i=Dg(t,void 0,r?r.getTileSize(r.getMinZoom()):void 0),this.tileGrids_[e]=i}return i},e.prototype.getTilePixelRatio=function(t){return t},e.prototype.getTilePixelSize=function(t,e,i){var r=Gr(this.getTileGridForProjection(i).getTileSize(t),this.tmpSize);return[Math.round(r[0]*e),Math.round(r[1]*e)]},e.prototype.updateCacheSize=function(e,i){t.prototype.updateCacheSize.call(this,2*e,i)},e}(Xg);function Kg(t,e){t.setLoader((function(i,r,n){xs(e,t.getFormat(),i,r,n,t.onLoad.bind(t),t.onError.bind(t))}))}var Zg,Hg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),qg=function(t){function e(e){var i=this,r=e||{},n=m({},r);return delete n.preload,delete n.useInterimTilesOnError,(i=t.call(this,n)||this).setPreload(void 0!==r.preload?r.preload:0),i.setUseInterimTilesOnError(void 0===r.useInterimTilesOnError||r.useInterimTilesOnError),i}return Hg(e,t),e.prototype.getPreload=function(){return this.get(bg)},e.prototype.setPreload=function(t){this.set(bg,t)},e.prototype.getUseInterimTilesOnError=function(){return this.get(Tg)},e.prototype.setUseInterimTilesOnError=function(t){this.set(Tg,t)},e}(to),Jg=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),Qg=function(t){function e(e){return t.call(this,e)||this}return Jg(e,t),e.prototype.createRenderer=function(){return new _g(this)},e}(qg),$g=function(){function t(t,e,i,r,n,o){this.sourceProj_=t,this.targetProj_=e;var a={},s=yi(this.targetProj_,this.sourceProj_);this.transformInv_=function(t){var e=t[0]+"/"+t[1];return a[e]||(a[e]=s(t)),a[e]},this.maxSourceExtent_=r,this.errorThresholdSquared_=n*n,this.triangles_=[],this.wrapsXInSource_=!1,this.canWrapXInSource_=this.sourceProj_.canWrapX()&&!!r&&!!this.sourceProj_.getExtent()&&me(r)==me(this.sourceProj_.getExtent()),this.sourceWorldWidth_=this.sourceProj_.getExtent()?me(this.sourceProj_.getExtent()):null,this.targetWorldWidth_=this.targetProj_.getExtent()?me(this.targetProj_.getExtent()):null;var l=ye(i),u=ve(i),h=ce(i),c=he(i),p=this.transformInv_(l),f=this.transformInv_(u),d=this.transformInv_(h),g=this.transformInv_(c),_=10+(o?Math.max(0,Math.ceil(Ee(ue(i)/(o*o*256*256)))):0);if(this.addQuad_(l,u,h,c,p,f,d,g,_),this.wrapsXInSource_){var y=1/0;this.triangles_.forEach((function(t,e,i){y=Math.min(y,t.source[0][0],t.source[1][0],t.source[2][0])})),this.triangles_.forEach(function(t){if(Math.max(t.source[0][0],t.source[1][0],t.source[2][0])-y>this.sourceWorldWidth_/2){var e=[[t.source[0][0],t.source[0][1]],[t.source[1][0],t.source[1][1]],[t.source[2][0],t.source[2][1]]];e[0][0]-y>this.sourceWorldWidth_/2&&(e[0][0]-=this.sourceWorldWidth_),e[1][0]-y>this.sourceWorldWidth_/2&&(e[1][0]-=this.sourceWorldWidth_),e[2][0]-y>this.sourceWorldWidth_/2&&(e[2][0]-=this.sourceWorldWidth_);var i=Math.min(e[0][0],e[1][0],e[2][0]);Math.max(e[0][0],e[1][0],e[2][0])-i<this.sourceWorldWidth_/2&&(t.source=e)}}.bind(this))}a={}}return t.prototype.addTriangle_=function(t,e,i,r,n,o){this.triangles_.push({source:[r,n,o],target:[t,e,i]})},t.prototype.addQuad_=function(t,e,i,r,n,o,a,s,l){var u=Vt([n,o,a,s]),h=this.sourceWorldWidth_?me(u)/this.sourceWorldWidth_:null,c=this.sourceWorldWidth_,p=this.sourceProj_.canWrapX()&&h>.5&&h<1,f=!1;if(l>0){if(this.targetProj_.isGlobal()&&this.targetWorldWidth_)f=me(Vt([t,e,i,r]))/this.targetWorldWidth_>.25||f;!p&&this.sourceProj_.isGlobal()&&h&&(f=h>.25||f)}if(!(!f&&this.maxSourceExtent_&&isFinite(u[0])&&isFinite(u[1])&&isFinite(u[2])&&isFinite(u[3]))||xe(u,this.maxSourceExtent_)){var d=0;if(!(f||isFinite(n[0])&&isFinite(n[1])&&isFinite(o[0])&&isFinite(o[1])&&isFinite(a[0])&&isFinite(a[1])&&isFinite(s[0])&&isFinite(s[1])))if(l>0)f=!0;else if(1!=(d=(isFinite(n[0])&&isFinite(n[1])?0:8)+(isFinite(o[0])&&isFinite(o[1])?0:4)+(isFinite(a[0])&&isFinite(a[1])?0:2)+(isFinite(s[0])&&isFinite(s[1])?0:1))&&2!=d&&4!=d&&8!=d)return;if(l>0){if(!f){var g=[(t[0]+i[0])/2,(t[1]+i[1])/2],_=this.transformInv_(g),y=void 0;if(p)y=(Ie(n[0],c)+Ie(a[0],c))/2-Ie(_[0],c);else y=(n[0]+a[0])/2-_[0];var v=(n[1]+a[1])/2-_[1];f=y*y+v*v>this.errorThresholdSquared_}if(f){if(Math.abs(t[0]-i[0])<=Math.abs(t[1]-i[1])){var m=[(e[0]+i[0])/2,(e[1]+i[1])/2],x=this.transformInv_(m),w=[(r[0]+t[0])/2,(r[1]+t[1])/2],S=this.transformInv_(w);this.addQuad_(t,e,m,w,n,o,x,S,l-1),this.addQuad_(w,m,i,r,S,x,a,s,l-1)}else{var C=[(t[0]+e[0])/2,(t[1]+e[1])/2],b=this.transformInv_(C),T=[(i[0]+r[0])/2,(i[1]+r[1])/2],E=this.transformInv_(T);this.addQuad_(t,C,T,r,n,b,E,s,l-1),this.addQuad_(C,e,i,T,b,o,a,E,l-1)}return}}if(p){if(!this.canWrapXInSource_)return;this.wrapsXInSource_=!0}0==(11&d)&&this.addTriangle_(t,i,r,n,a,s),0==(14&d)&&this.addTriangle_(t,i,e,n,a,o),d&&(0==(13&d)&&this.addTriangle_(e,r,t,o,s,n),0==(7&d)&&this.addTriangle_(e,r,i,o,s,a))}},t.prototype.calculateSourceExtent=function(){var t=[1/0,1/0,-1/0,-1/0];return this.triangles_.forEach((function(e,i,r){var n=e.source;oe(t,n[0]),oe(t,n[1]),oe(t,n[2])})),t},t.prototype.getTriangles=function(){return this.triangles_},t}(),t_={imageSmoothingEnabled:!1,msImageSmoothingEnabled:!1};function e_(t,e,i,r,n){t.beginPath(),t.moveTo(0,0),t.lineTo(e,i),t.lineTo(r,n),t.closePath(),t.save(),t.clip(),t.fillRect(0,0,Math.max(e,r)+1,Math.max(i,n)),t.restore()}function i_(t,e){return Math.abs(t[4*e]-210)>2||Math.abs(t[4*e+3]-191.25)>2}function r_(t,e,i,r){var n=vi(i,e,t),o=pi(e,r,i),a=e.getMetersPerUnit();void 0!==a&&(o*=a);var s=t.getMetersPerUnit();void 0!==s&&(o/=s);var l=t.getExtent();if(!l||Kt(l,n)){var u=pi(t,o,n)/o;isFinite(u)&&u>0&&(o/=u)}return o}function n_(t,e,i,r,n,o,a,s,l,u,h,c){var p=nn(Math.round(i*t),Math.round(i*e));if(m(p,c),0===l.length)return p.canvas;function f(t){return Math.round(t*i)/i}p.scale(i,i),p.globalCompositeOperation="lighter";var d=[1/0,1/0,-1/0,-1/0];l.forEach((function(t,e,i){ne(d,t.extent)}));var g=me(d),_=ge(d),y=nn(Math.round(i*g/r),Math.round(i*_/r));m(y,c);var v=i/r;l.forEach((function(t,e,i){var r=t.extent[0]-d[0],n=-(t.extent[3]-d[3]),o=me(t.extent),a=ge(t.extent);t.image.width>0&&t.image.height>0&&y.drawImage(t.image,u,u,t.image.width-2*u,t.image.height-2*u,r*v,n*v,o*v,a*v)}));var x=ye(a);return s.getTriangles().forEach((function(t,e,n){var a=t.source,s=t.target,l=a[0][0],u=a[0][1],h=a[1][0],g=a[1][1],_=a[2][0],v=a[2][1],m=f((s[0][0]-x[0])/o),w=f(-(s[0][1]-x[1])/o),S=f((s[1][0]-x[0])/o),C=f(-(s[1][1]-x[1])/o),b=f((s[2][0]-x[0])/o),T=f(-(s[2][1]-x[1])/o),E=l,P=u;l=0,u=0;var R=function(t){for(var e=t.length,i=0;i<e;i++){for(var r=i,n=Math.abs(t[i][i]),o=i+1;o<e;o++){var a=Math.abs(t[o][i]);a>n&&(n=a,r=o)}if(0===n)return null;var s=t[r];t[r]=t[i],t[i]=s;for(var l=i+1;l<e;l++)for(var u=-t[l][i]/t[i][i],h=i;h<e+1;h++)i==h?t[l][h]=0:t[l][h]+=u*t[i][h]}for(var c=new Array(e),p=e-1;p>=0;p--){c[p]=t[p][e]/t[p][p];for(var f=p-1;f>=0;f--)t[f][e]-=t[f][p]*c[p]}return c}([[h-=E,g-=P,0,0,S-m],[_-=E,v-=P,0,0,b-m],[0,0,h,g,C-w],[0,0,_,v,T-w]]);if(R){if(p.save(),p.beginPath(),function(){if(void 0===Zg){var t=document.createElement("canvas").getContext("2d");t.globalCompositeOperation="lighter",t.fillStyle="rgba(210, 0, 0, 0.75)",e_(t,4,5,4,0),e_(t,4,5,0,5);var e=t.getImageData(0,0,3,3).data;Zg=i_(e,0)||i_(e,4)||i_(e,8)}return Zg}()||c===t_){p.moveTo(S,C);for(var F=m-S,O=w-C,I=0;I<4;I++)p.lineTo(S+f((I+1)*F/4),C+f(I*O/3)),3!=I&&p.lineTo(S+f((I+1)*F/4),C+f((I+1)*O/3));p.lineTo(b,T)}else p.moveTo(S,C),p.lineTo(m,w),p.lineTo(b,T);p.clip(),p.transform(R[0],R[2],R[1],R[3],m,w),p.translate(d[0]-E,d[3]-P),p.scale(r/i,-r/i),p.drawImage(y.canvas,0,0),p.restore()}})),h&&(p.save(),p.globalCompositeOperation="source-over",p.strokeStyle="black",p.lineWidth=1,s.getTriangles().forEach((function(t,e,i){var r=t.target,n=(r[0][0]-x[0])/o,a=-(r[0][1]-x[1])/o,s=(r[1][0]-x[0])/o,l=-(r[1][1]-x[1])/o,u=(r[2][0]-x[0])/o,h=-(r[2][1]-x[1])/o;p.beginPath(),p.moveTo(s,l),p.lineTo(n,a),p.lineTo(u,h),p.closePath(),p.stroke()})),p.restore()),p.canvas}var o_=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),a_=function(t){function e(e,i,r,n,o,a,s,l,u,h,c,p){var f=t.call(this,o,Ts)||this;f.renderEdges_=void 0!==c&&c,f.contextOptions_=p,f.pixelRatio_=s,f.gutter_=l,f.canvas_=null,f.sourceTileGrid_=i,f.targetTileGrid_=n,f.wrappedTileCoord_=a||o,f.sourceTiles_=[],f.sourcesListenerKeys_=null,f.sourceZ_=0;var d=n.getTileCoordExtent(f.wrappedTileCoord_),g=f.targetTileGrid_.getExtent(),_=f.sourceTileGrid_.getExtent(),y=g?_e(d,g):d;if(0===ue(y))return f.state=Fs,f;var v=e.getExtent();v&&(_=_?_e(_,v):v);var m=n.getResolution(f.wrappedTileCoord_[0]),x=function(t,e,i,r){var n=pe(i),o=r_(t,e,n,r);return(!isFinite(o)||o<=0)&&le(i,(function(i){return o=r_(t,e,i,r),isFinite(o)&&o>0})),o}(e,r,y,m);if(!isFinite(x)||x<=0)return f.state=Fs,f;var w=void 0!==h?h:.5;if(f.triangulation_=new $g(e,r,y,_,x*w,m),0===f.triangulation_.getTriangles().length)return f.state=Fs,f;f.sourceZ_=i.getZForResolution(x);var S=f.triangulation_.calculateSourceExtent();if(_&&(e.canWrapX()?(S[1]=be(S[1],_[1],_[3]),S[3]=be(S[3],_[1],_[3])):S=_e(S,_)),ue(S)){for(var C=i.getTileRangeForExtentAndZ(S,f.sourceZ_),b=C.minX;b<=C.maxX;b++)for(var T=C.minY;T<=C.maxY;T++){var E=u(f.sourceZ_,b,T,s);E&&f.sourceTiles_.push(E)}0===f.sourceTiles_.length&&(f.state=Fs)}else f.state=Fs;return f}return o_(e,t),e.prototype.getImage=function(){return this.canvas_},e.prototype.reproject_=function(){var t=[];if(this.sourceTiles_.forEach(function(e,i,r){e&&e.getState()==Ps&&t.push({extent:this.sourceTileGrid_.getTileCoordExtent(e.tileCoord),image:e.getImage()})}.bind(this)),this.sourceTiles_.length=0,0===t.length)this.state=Rs;else{var e=this.wrappedTileCoord_[0],i=this.targetTileGrid_.getTileSize(e),r="number"==typeof i?i:i[0],n="number"==typeof i?i:i[1],o=this.targetTileGrid_.getResolution(e),a=this.sourceTileGrid_.getResolution(this.sourceZ_),s=this.targetTileGrid_.getTileCoordExtent(this.wrappedTileCoord_);this.canvas_=n_(r,n,this.pixelRatio_,a,this.sourceTileGrid_.getExtent(),o,s,this.triangulation_,t,this.gutter_,this.renderEdges_,this.contextOptions_),this.state=Ps}this.changed()},e.prototype.load=function(){if(this.state==Ts){this.state=Es,this.changed();var t=0;this.sourcesListenerKeys_=[],this.sourceTiles_.forEach(function(e,i,r){var n=e.getState();if(n==Ts||n==Es){t++;var o=N(e,T,(function(i){var r=e.getState();r!=Ps&&r!=Rs&&r!=Fs||(B(o),0===--t&&(this.unlistenSources_(),this.reproject_()))}),this);this.sourcesListenerKeys_.push(o)}}.bind(this)),this.sourceTiles_.forEach((function(t,e,i){t.getState()==Ts&&t.load()})),0===t&&setTimeout(this.reproject_.bind(this),0)}},e.prototype.unlistenSources_=function(){this.sourcesListenerKeys_.forEach(B),this.sourcesListenerKeys_=null},e}(ks),s_=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),l_=function(t){function e(e){var i=t.call(this,{attributions:e.attributions,cacheSize:e.cacheSize,opaque:e.opaque,projection:e.projection,state:e.state,tileGrid:e.tileGrid,tileLoadFunction:e.tileLoadFunction?e.tileLoadFunction:u_,tilePixelRatio:e.tilePixelRatio,tileUrlFunction:e.tileUrlFunction,url:e.url,urls:e.urls,wrapX:e.wrapX,transition:e.transition,key:e.key,attributionsCollapsible:e.attributionsCollapsible,zDirection:e.zDirection})||this;return i.crossOrigin=void 0!==e.crossOrigin?e.crossOrigin:null,i.tileClass=void 0!==e.tileClass?e.tileClass:js,i.tileCacheForProjection={},i.tileGridForProjection={},i.reprojectionErrorThreshold_=e.reprojectionErrorThreshold,i.contextOptions_=!1===e.imageSmoothing?t_:void 0,i.renderReprojectionEdges_=!1,i}return s_(e,t),e.prototype.canExpireCache=function(){if(this.tileCache.canExpireCache())return!0;for(var t in this.tileCacheForProjection)if(this.tileCacheForProjection[t].canExpireCache())return!0;return!1},e.prototype.expireCache=function(t,e){var i=this.getTileCacheForProjection(t);for(var r in this.tileCache.expireCache(this.tileCache==i?e:{}),this.tileCacheForProjection){var n=this.tileCacheForProjection[r];n.expireCache(n==i?e:{})}},e.prototype.getContextOptions=function(){return this.contextOptions_},e.prototype.getGutterForProjection=function(t){return this.getProjection()&&t&&!gi(this.getProjection(),t)?0:this.getGutter()},e.prototype.getGutter=function(){return 0},e.prototype.getKey=function(){return t.prototype.getKey.call(this)+(this.contextOptions_?"\n"+JSON.stringify(this.contextOptions_):"")},e.prototype.getOpaque=function(e){return!(this.getProjection()&&e&&!gi(this.getProjection(),e))&&t.prototype.getOpaque.call(this,e)},e.prototype.getTileGridForProjection=function(t){var e=this.getProjection();if(!this.tileGrid||e&&!gi(e,t)){var i=r(t);return i in this.tileGridForProjection||(this.tileGridForProjection[i]=Lg(t)),this.tileGridForProjection[i]}return this.tileGrid},e.prototype.getTileCacheForProjection=function(t){var e=this.getProjection();if(!e||gi(e,t))return this.tileCache;var i=r(t);return i in this.tileCacheForProjection||(this.tileCacheForProjection[i]=new oc(this.tileCache.highWaterMark)),this.tileCacheForProjection[i]},e.prototype.createTile_=function(t,e,i,r,n,o){var a=[t,e,i],s=this.getTileCoordForTileUrlFunction(a,n),l=s?this.tileUrlFunction(s,r,n):void 0,u=new this.tileClass(a,void 0!==l?Ts:Fs,void 0!==l?l:"",this.crossOrigin,this.tileLoadFunction,this.tileOptions);return u.key=o,u.addEventListener(T,this.handleTileChange.bind(this)),u},e.prototype.getTile=function(t,e,i,r,n){var o=this.getProjection();if(o&&n&&!gi(o,n)){var a=this.getTileCacheForProjection(n),s=[t,e,i],l=void 0,u=ec(s);a.containsKey(u)&&(l=a.get(u));var h=this.getKey();if(l&&l.key==h)return l;var c=this.getTileGridForProjection(o),p=this.getTileGridForProjection(n),f=this.getTileCoordForTileUrlFunction(s,n),d=new a_(o,c,n,p,s,f,this.getTilePixelRatio(r),this.getGutter(),function(t,e,i,r){return this.getTileInternal(t,e,i,r,o)}.bind(this),this.reprojectionErrorThreshold_,this.renderReprojectionEdges_,this.contextOptions_);return d.key=h,l?(d.interimTile=l,d.refreshInterimChain(),a.replace(u,d)):a.set(u,d),d}return this.getTileInternal(t,e,i,r,o||n)},e.prototype.getTileInternal=function(t,e,i,r,n){var o=null,a=tc(t,e,i),s=this.getKey();if(this.tileCache.containsKey(a)){if((o=this.tileCache.get(a)).key!=s){var l=o;o=this.createTile_(t,e,i,r,n,s),l.getState()==Ts?o.interimTile=l.interimTile:o.interimTile=l,o.refreshInterimChain(),this.tileCache.replace(a,o)}}else o=this.createTile_(t,e,i,r,n,s),this.tileCache.set(a,o);return o},e.prototype.setRenderReprojectionEdges=function(t){if(this.renderReprojectionEdges_!=t){for(var e in this.renderReprojectionEdges_=t,this.tileCacheForProjection)this.tileCacheForProjection[e].clear();this.changed()}},e.prototype.setTileGridForProjection=function(t,e){var i=ci(t);if(i){var n=r(i);n in this.tileGridForProjection||(this.tileGridForProjection[n]=e)}},e}(Xg);function u_(t,e){t.getImage().src=e}var h_=1,c_=2,p_=4,f_=8,d_=16,g_=31,__={};function y_(t){if("number"==typeof t)return h_;if("boolean"==typeof t)return f_;if("string"==typeof t)return e=t,Br.test(e)&&(e=Vr(e)),zr.test(e)||0===e.indexOf("rgba(")||0===e.indexOf("rgb(")?p_|c_:c_;var e;if(!Array.isArray(t))throw new Error("Unhandled value type: "+JSON.stringify(t));var i=t;if(i.every((function(t){return"number"==typeof t})))return 3===i.length||4===i.length?p_|d_:d_;if("string"!=typeof i[0])throw new Error("Expected an expression operator but received: "+JSON.stringify(i));var r=__[i[0]];if(void 0===r)throw new Error("Unrecognized expression operator: "+JSON.stringify(i));return r.getReturnType(i.slice(1))}function v_(t){var e=t.toString();return-1===e.indexOf(".")?e+".0":e}function m_(t){if(t.length<2||t.length>4)throw new Error("`formatArray` can only output `vec2`, `vec3` or `vec4` arrays.");return"vec"+t.length+"("+t.map(v_).join(", ")+")"}function x_(t,e){return void 0===t.stringLiteralsMap[e]&&(t.stringLiteralsMap[e]=Object.keys(t.stringLiteralsMap).length),t.stringLiteralsMap[e]}function w_(t,e,i){if(Array.isArray(e)&&"string"==typeof e[0]){var r=__[e[0]];if(void 0===r)throw new Error("Unrecognized expression operator: "+JSON.stringify(e));return r.toGlsl(t,e.slice(1),i)}var n,o=y_(e);return(o&h_)>0?v_(e):(o&f_)>0?e.toString():(o&c_)>0&&(void 0===i||i==c_)?function(t,e){return v_(x_(t,e))}(t,e.toString()):(o&p_)>0&&(void 0===i||i==p_)?((n=Wr(e).slice()).length<4&&n.push(1),m_(n.map((function(t,e){return e<3?t/255:t})))):(o&d_)>0?m_(e):void 0}function S_(t){if(!(y_(t)&h_))throw new Error("A numeric value was expected, got "+JSON.stringify(t)+" instead")}function C_(t){for(var e=0;e<t.length;e++)S_(t[e])}function b_(t){if(!(y_(t)&c_))throw new Error("A string value was expected, got "+JSON.stringify(t)+" instead")}function T_(t){if(!(y_(t)&f_))throw new Error("A boolean value was expected, got "+JSON.stringify(t)+" instead")}function E_(t,e){if(t.length!==e)throw new Error("Exactly "+e+" arguments were expected, got "+t.length+" instead")}function P_(t,e){if(t.length<e)throw new Error("At least "+e+" arguments were expected, got "+t.length+" instead")}function R_(t,e){if(t.length>e)throw new Error("At most "+e+" arguments were expected, got "+t.length+" instead")}function F_(t){if(t.length%2!=0)throw new Error("An even amount of arguments was expected, got "+t+" instead")}function O_(t,e){if(i=e,Math.log2(i)%1!=0)throw new Error("Could not infer only one type from the following expression: "+JSON.stringify(t));var i}function I_(t){return{getReturnType:function(t){return f_},toGlsl:function(e,i){E_(i,2);for(var r=g_,n=0;n<i.length;n++)r&=y_(i[n]);if(0===r)throw new Error("All arguments should be of compatible type, got "+JSON.stringify(i)+" instead");return"("+w_(e,i[0],r)+" "+t+" "+w_(e,i[1],r)+")"}}}function M_(t){return{getReturnType:function(t){return f_},toGlsl:function(e,i){P_(i,2);for(var r=0;r<i.length;r++)T_(i[r]);return"("+i.map((function(t){return w_(e,t)})).join(" "+t+" ")+")"}}}__.get={getReturnType:function(t){return g_},toGlsl:function(t,e){E_(e,1),b_(e[0]);var i=e[0].toString();return-1===t.attributes.indexOf(i)&&t.attributes.push(i),(t.inFragmentShader?"v_":"a_")+i}},__.var={getReturnType:function(t){return g_},toGlsl:function(t,e){E_(e,1),b_(e[0]);var i=e[0].toString();return-1===t.variables.indexOf(i)&&t.variables.push(i),"u_"+i}},__.time={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,0),"u_time"}},__.zoom={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,0),"u_zoom"}},__.resolution={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,0),"u_resolution"}},__["*"]={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" * "+w_(t,e[1])+")"}},__["/"]={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" / "+w_(t,e[1])+")"}},__["+"]={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" + "+w_(t,e[1])+")"}},__["-"]={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" - "+w_(t,e[1])+")"}},__.clamp={getReturnType:function(t){return h_},toGlsl:function(t,e){E_(e,3),C_(e);var i=w_(t,e[1]),r=w_(t,e[2]);return"clamp("+w_(t,e[0])+", "+i+", "+r+")"}},__["%"]={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,2),C_(e),"mod("+w_(t,e[0])+", "+w_(t,e[1])+")"}},__["^"]={getReturnType:function(t){return h_},toGlsl:function(t,e){return E_(e,2),C_(e),"pow("+w_(t,e[0])+", "+w_(t,e[1])+")"}},__[">"]={getReturnType:function(t){return f_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" > "+w_(t,e[1])+")"}},__[">="]={getReturnType:function(t){return f_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" >= "+w_(t,e[1])+")"}},__["<"]={getReturnType:function(t){return f_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" < "+w_(t,e[1])+")"}},__["<="]={getReturnType:function(t){return f_},toGlsl:function(t,e){return E_(e,2),C_(e),"("+w_(t,e[0])+" <= "+w_(t,e[1])+")"}},__["=="]=I_("=="),__["!="]=I_("!="),__["!"]={getReturnType:function(t){return f_},toGlsl:function(t,e){return E_(e,1),T_(e[0]),"(!"+w_(t,e[0])+")"}},__.all=M_("&&"),__.any=M_("||"),__.between={getReturnType:function(t){return f_},toGlsl:function(t,e){E_(e,3),C_(e);var i=w_(t,e[1]),r=w_(t,e[2]),n=w_(t,e[0]);return"("+n+" >= "+i+" && "+n+" <= "+r+")"}},__.array={getReturnType:function(t){return d_},toGlsl:function(t,e){P_(e,2),R_(e,4),C_(e);var i=e.map((function(e){return w_(t,e,h_)}));return"vec"+e.length+"("+i.join(", ")+")"}},__.color={getReturnType:function(t){return p_},toGlsl:function(t,e){P_(e,3),R_(e,4),C_(e);var i=e;3===e.length&&i.push(1);var r=e.map((function(e,i){return w_(t,e,h_)+(i<3?" / 255.0":"")}));return"vec"+e.length+"("+r.join(", ")+")"}},__.interpolate={getReturnType:function(t){for(var e=p_|h_,i=3;i<t.length;i+=2)e&=y_(t[i]);return e},toGlsl:function(t,e,i){F_(e),P_(e,6);var r,n=e[0];switch(n[0]){case"linear":r=1;break;case"exponential":r=n[1];break;default:r=null}if(!r)throw new Error('Invalid interpolation type for "interpolate" operator, received: '+JSON.stringify(n));var o=void 0!==i?i:g_,a=__.interpolate.getReturnType(e)&o;O_(e,a);for(var s=w_(t,e[1]),l=null,u=2;u<e.length-2;u+=2){var h=w_(t,e[u]),c=w_(t,e[u+1],a),p=w_(t,e[u+2]);l="mix("+(l||c)+", "+w_(t,e[u+3],a)+", pow(clamp(("+s+" - "+h+") / ("+p+" - "+h+"), 0.0, 1.0), "+v_(r)+"))"}return l}},__.match={getReturnType:function(t){for(var e=g_,i=2;i<t.length;i+=2)e&=y_(t[i]);return e&=y_(t[t.length-1])},toGlsl:function(t,e,i){F_(e),P_(e,4);var r=void 0!==i?i:g_,n=__.match.getReturnType(e)&r;O_(e,n);for(var o=w_(t,e[0]),a=w_(t,e[e.length-1],n),s=null,l=e.length-3;l>=1;l-=2){s="("+o+" == "+w_(t,e[l])+" ? "+w_(t,e[l+1],n)+" : "+(s||a)+")"}return s}},__.case={getReturnType:function(t){for(var e=g_,i=1;i<t.length;i+=2)e&=y_(t[i]);return e&=y_(t[t.length-1])},toGlsl:function(t,e,i){!function(t){if(t.length%2==0)throw new Error("An odd amount of arguments was expected, got "+t+" instead")}(e),P_(e,3);var r=void 0!==i?i:g_,n=__.case.getReturnType(e)&r;O_(e,n);for(var o=0;o<e.length-1;o+=2)T_(e[o]);var a=w_(t,e[e.length-1],n),s=null;for(o=e.length-3;o>=0;o-=2){s="("+w_(t,e[o])+" ? "+w_(t,e[o+1],n)+" : "+(s||a)+")"}return s}};var L_=function(){function t(){this.uniforms=[],this.attributes=[],this.varyings=[],this.sizeExpression="vec2(1.0)",this.rotationExpression="0.0",this.offsetExpression="vec2(0.0)",this.colorExpression="vec4(1.0)",this.texCoordExpression="vec4(0.0, 0.0, 1.0, 1.0)",this.discardExpression="false",this.rotateWithView=!1}return t.prototype.addUniform=function(t){return this.uniforms.push(t),this},t.prototype.addAttribute=function(t){return this.attributes.push(t),this},t.prototype.addVarying=function(t,e,i){return this.varyings.push({name:t,type:e,expression:i}),this},t.prototype.setSizeExpression=function(t){return this.sizeExpression=t,this},t.prototype.setRotationExpression=function(t){return this.rotationExpression=t,this},t.prototype.setSymbolOffsetExpression=function(t){return this.offsetExpression=t,this},t.prototype.setColorExpression=function(t){return this.colorExpression=t,this},t.prototype.setTextureCoordinateExpression=function(t){return this.texCoordExpression=t,this},t.prototype.setFragmentDiscardExpression=function(t){return this.discardExpression=t,this},t.prototype.setSymbolRotateWithView=function(t){return this.rotateWithView=t,this},t.prototype.getSizeExpression=function(){return this.sizeExpression},t.prototype.getOffsetExpression=function(){return this.offsetExpression},t.prototype.getColorExpression=function(){return this.colorExpression},t.prototype.getTextureCoordinateExpression=function(){return this.texCoordExpression},t.prototype.getFragmentDiscardExpression=function(){return this.discardExpression},t.prototype.getSymbolVertexShader=function(t){var e=this.rotateWithView?"u_offsetScaleMatrix * u_offsetRotateMatrix":"u_offsetScaleMatrix",i=this.attributes,r=this.varyings;return t&&(i=i.concat("vec4 a_hitColor"),r=r.concat({name:"v_hitColor",type:"vec4",expression:"a_hitColor"})),"precision mediump float;\nuniform mat4 u_projectionMatrix;\nuniform mat4 u_offsetScaleMatrix;\nuniform mat4 u_offsetRotateMatrix;\nuniform float u_time;\nuniform float u_zoom;\nuniform float u_resolution;\n"+this.uniforms.map((function(t){return"uniform "+t+";"})).join("\n")+"\nattribute vec2 a_position;\nattribute float a_index;\n"+i.map((function(t){return"attribute "+t+";"})).join("\n")+"\nvarying vec2 v_texCoord;\nvarying vec2 v_quadCoord;\n"+r.map((function(t){return"varying "+t.type+" "+t.name+";"})).join("\n")+"\nvoid main(void) {\n mat4 offsetMatrix = "+e+";\n vec2 halfSize = "+this.sizeExpression+" * 0.5;\n vec2 offset = "+this.offsetExpression+";\n float angle = "+this.rotationExpression+";\n float offsetX;\n float offsetY;\n if (a_index == 0.0) {\n offsetX = (offset.x - halfSize.x) * cos(angle) + (offset.y - halfSize.y) * sin(angle);\n offsetY = (offset.y - halfSize.y) * cos(angle) - (offset.x - halfSize.x) * sin(angle);\n } else if (a_index == 1.0) {\n offsetX = (offset.x + halfSize.x) * cos(angle) + (offset.y - halfSize.y) * sin(angle);\n offsetY = (offset.y - halfSize.y) * cos(angle) - (offset.x + halfSize.x) * sin(angle);\n } else if (a_index == 2.0) {\n offsetX = (offset.x + halfSize.x) * cos(angle) + (offset.y + halfSize.y) * sin(angle);\n offsetY = (offset.y + halfSize.y) * cos(angle) - (offset.x + halfSize.x) * sin(angle);\n } else {\n offsetX = (offset.x - halfSize.x) * cos(angle) + (offset.y + halfSize.y) * sin(angle);\n offsetY = (offset.y + halfSize.y) * cos(angle) - (offset.x - halfSize.x) * sin(angle);\n }\n vec4 offsets = offsetMatrix * vec4(offsetX, offsetY, 0.0, 0.0);\n gl_Position = u_projectionMatrix * vec4(a_position, 0.0, 1.0) + offsets;\n vec4 texCoord = "+this.texCoordExpression+";\n float u = a_index == 0.0 || a_index == 3.0 ? texCoord.s : texCoord.p;\n float v = a_index == 2.0 || a_index == 3.0 ? texCoord.t : texCoord.q;\n v_texCoord = vec2(u, v);\n u = a_index == 0.0 || a_index == 3.0 ? 0.0 : 1.0;\n v = a_index == 2.0 || a_index == 3.0 ? 0.0 : 1.0;\n v_quadCoord = vec2(u, v);\n"+r.map((function(t){return" "+t.name+" = "+t.expression+";"})).join("\n")+"\n}"},t.prototype.getSymbolFragmentShader=function(t){var e=t?" if (gl_FragColor.a < 0.1) { discard; } gl_FragColor = v_hitColor;":"",i=this.varyings;return t&&(i=i.concat({name:"v_hitColor",type:"vec4",expression:"a_hitColor"})),"precision mediump float;\nuniform float u_time;\nuniform float u_zoom;\nuniform float u_resolution;\n"+this.uniforms.map((function(t){return"uniform "+t+";"})).join("\n")+"\nvarying vec2 v_texCoord;\nvarying vec2 v_quadCoord;\n"+i.map((function(t){return"varying "+t.type+" "+t.name+";"})).join("\n")+"\nvoid main(void) {\n if ("+this.discardExpression+") { discard; }\n gl_FragColor = "+this.colorExpression+";\n gl_FragColor.rgb *= gl_FragColor.a;\n"+e+"\n}"},t}();var A_=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),k_=function(t){function e(e){var i=this,r=m({},e);return(i=t.call(this,r)||this).parseResult_=function(t){var e=t.symbol,i=void 0!==e.size?e.size:1,r=e.color||"white",n=e.textureCoord||[0,0,1,1],o=e.offset||[0,0],a=void 0!==e.opacity?e.opacity:1,s=void 0!==e.rotation?e.rotation:0,l={inFragmentShader:!1,variables:[],attributes:[],stringLiteralsMap:{}},u=w_(l,i,d_|h_),h=w_(l,o,d_),c=w_(l,n,d_),p=w_(l,s,h_),f={inFragmentShader:!0,variables:l.variables,attributes:[],stringLiteralsMap:l.stringLiteralsMap},d=w_(f,r,p_),g=w_(f,a,h_),_="1.0",y="vec2("+w_(f,i,d_|h_)+").x";switch(e.symbolType){case"square":case"image":break;case"circle":_="(1.0-smoothstep(1.-4./"+y+",1.,dot(v_quadCoord-.5,v_quadCoord-.5)*4.))";break;case"triangle":var v="(v_quadCoord*2.-1.)",m="(atan("+v+".x,"+v+".y))";_="(1.0-smoothstep(.5-3./"+y+",.5,cos(floor(.5+"+m+"/2.094395102)*2.094395102-"+m+")*length("+v+")))";break;default:throw new Error("Unexpected symbol type: "+e.symbolType)}var x=(new L_).setSizeExpression("vec2("+u+")").setRotationExpression(p).setSymbolOffsetExpression(h).setTextureCoordinateExpression(c).setSymbolRotateWithView(!!e.rotateWithView).setColorExpression("vec4("+d+".rgb, "+d+".a * "+g+" * "+_+")");if(t.filter){var w=w_(f,t.filter,f_);x.setFragmentDiscardExpression("!"+w)}var S={};if(f.variables.forEach((function(e){x.addUniform("float u_"+e),S["u_"+e]=function(){if(!t.variables||void 0===t.variables[e])throw new Error("The following variable is missing from the style: "+e);var i=t.variables[e];return"string"==typeof i&&(i=x_(l,i)),void 0!==i?i:-9999999}})),"image"===e.symbolType&&e.src){var C=new Image;C.src=e.src,x.addUniform("sampler2D u_texture").setColorExpression(x.getColorExpression()+" * texture2D(u_texture, v_texCoord)"),S.u_texture=C}return f.attributes.forEach((function(t){-1===l.attributes.indexOf(t)&&l.attributes.push(t),x.addVarying("v_"+t,"float","a_"+t)})),l.attributes.forEach((function(t){x.addAttribute("float a_"+t)})),{builder:x,attributes:l.attributes.map((function(t){return{name:t,callback:function(e,i){var r=i[t];return"string"==typeof r&&(r=x_(l,r)),void 0!==r?r:-9999999}}})),uniforms:S}}(e.style),i.hitDetectionDisabled_=!!e.disableHitDetection,i}return A_(e,t),e.prototype.createRenderer=function(){return new ig(this,{className:this.getClassName(),vertexShader:this.parseResult_.builder.getSymbolVertexShader(),fragmentShader:this.parseResult_.builder.getSymbolFragmentShader(),hitVertexShader:!this.hitDetectionDisabled_&&this.parseResult_.builder.getSymbolVertexShader(!0),hitFragmentShader:!this.hitDetectionDisabled_&&this.parseResult_.builder.getSymbolFragmentShader(!0),uniforms:this.parseResult_.uniforms,attributes:this.parseResult_.attributes})},e.prototype.disposeInternal=function(){this.getRenderer().disposeInternal(),t.prototype.disposeInternal.call(this)},e}(to),D_=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}();var j_=function(t){function e(e){var i=this,n=void 0!==e.hidpi&&e.hidpi;return(i=t.call(this,{cacheSize:e.cacheSize,crossOrigin:"anonymous",imageSmoothing:e.imageSmoothing,opaque:!0,projection:ci("EPSG:3857"),reprojectionErrorThreshold:e.reprojectionErrorThreshold,state:qn,tileLoadFunction:e.tileLoadFunction,tilePixelRatio:n?2:1,wrapX:void 0===e.wrapX||e.wrapX,transition:e.transition})||this).hidpi_=n,i.culture_=void 0!==e.culture?e.culture:"en-us",i.maxZoom_=void 0!==e.maxZoom?e.maxZoom:-1,i.apiKey_=e.key,i.imagerySet_=e.imagerySet,function(t,e,i,n){var o=document.createElement("script"),a="olc_"+r(e);function s(){delete window[a],o.parentNode.removeChild(o)}o.async=!0,o.src=t+(-1==t.indexOf("?")?"?":"&")+(n||"callback")+"="+a;var l=setTimeout((function(){s(),i&&i()}),1e4);window[a]=function(t){clearTimeout(l),s(),e(t)},document.getElementsByTagName("head")[0].appendChild(o)}("https://dev.virtualearth.net/REST/v1/Imagery/Metadata/"+i.imagerySet_+"?uriScheme=https&include=ImageryProviders&key="+i.apiKey_+"&c="+i.culture_,i.handleImageryMetadataResponse.bind(i),void 0,"jsonp"),i}return D_(e,t),e.prototype.getApiKey=function(){return this.apiKey_},e.prototype.getImagerySet=function(){return this.imagerySet_},e.prototype.handleImageryMetadataResponse=function(t){if(200==t.statusCode&&"OK"==t.statusDescription&&"ValidCredentials"==t.authenticationResultCode&&1==t.resourceSets.length&&1==t.resourceSets[0].resources.length){var e=t.resourceSets[0].resources[0],i=-1==this.maxZoom_?e.zoomMax:this.maxZoom_,r=jg(this.getProjection()),n=this.hidpi_?2:1,o=e.imageWidth==e.imageHeight?e.imageWidth/n:[e.imageWidth/n,e.imageHeight/n],a=Ag({extent:r,minZoom:e.zoomMin,maxZoom:i,tileSize:o});this.tileGrid=a;var s=this.culture_,l=this.hidpi_;if(this.tileUrlFunction=Ug(e.imageUrlSubdomains.map((function(t){var i=[0,0,0],r=e.imageUrl.replace("{subdomain}",t).replace("{culture}",s);return function(t,e,n){if(t){$h(t[0],t[1],t[2],i);var o=r;return l&&(o+="&dpi=d1&device=mobile"),o.replace("{quadkey}",function(t){var e,i,r=t[0],n=new Array(r),o=1<<r-1;for(e=0;e<r;++e)i=48,t[1]&o&&(i+=1),t[2]&o&&(i+=2),n[e]=String.fromCharCode(i),o>>=1;return n.join("")}(i))}}}))),e.imageryProviders){var u=_i(ci("EPSG:4326"),this.getProjection());this.setAttributions(function(t){var i=[],r=t.viewState,n=this.getTileGrid(),o=n.getZForResolution(r.resolution,this.zDirection),a=n.getTileCoordForCoordAndZ(r.center,o)[0];return e.imageryProviders.map((function(e){for(var r=!1,n=e.coverageAreas,o=0,s=n.length;o<s;++o){var l=n[o];if(a>=l.zoomMin&&a<=l.zoomMax){var h=l.bbox;if(xe(Se([h[1],h[0],h[3],h[2]],u),t.extent)){r=!0;break}}}r&&i.push(e.attribution)})),i.push('<a class="ol-attribution-bing-tos" href="https://www.microsoft.com/maps/product/terms.html" target="_blank">Terms of Use</a>'),i}.bind(this))}this.setState(Jn)}else this.setState(Qn)},e}(l_),G_=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),N_=function(t){function e(e){var i=e||{},r=void 0!==i.projection?i.projection:"EPSG:3857",n=void 0!==i.tileGrid?i.tileGrid:Ag({extent:jg(r),maxResolution:i.maxResolution,maxZoom:i.maxZoom,minZoom:i.minZoom,tileSize:i.tileSize});return t.call(this,{attributions:i.attributions,cacheSize:i.cacheSize,crossOrigin:i.crossOrigin,imageSmoothing:i.imageSmoothing,opaque:i.opaque,projection:r,reprojectionErrorThreshold:i.reprojectionErrorThreshold,tileGrid:n,tileLoadFunction:i.tileLoadFunction,tilePixelRatio:i.tilePixelRatio,tileUrlFunction:i.tileUrlFunction,url:i.url,urls:i.urls,wrapX:void 0===i.wrapX||i.wrapX,transition:i.transition,attributionsCollapsible:i.attributionsCollapsible,zDirection:i.zDirection})||this}return G_(e,t),e}(l_),z_=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),B_=function(t){function e(e,i,r,n,o,a,s){var l=this,u=e.getExtent(),h=i.getExtent(),c=h?_e(r,h):r,p=r_(e,i,pe(c),n),f=new $g(e,i,c,u,.5*p,n),d=a(f.calculateSourceExtent(),p,o),g=d?Ir:kr,_=d?d.getPixelRatio():1;return(l=t.call(this,r,n,_,g)||this).targetProj_=i,l.maxSourceExtent_=u,l.triangulation_=f,l.targetResolution_=n,l.targetExtent_=r,l.sourceImage_=d,l.sourcePixelRatio_=_,l.contextOptions_=s,l.canvas_=null,l.sourceListenerKey_=null,l}return z_(e,t),e.prototype.disposeInternal=function(){this.state==Mr&&this.unlistenSource_(),t.prototype.disposeInternal.call(this)},e.prototype.getImage=function(){return this.canvas_},e.prototype.getProjection=function(){return this.targetProj_},e.prototype.reproject_=function(){var t=this.sourceImage_.getState();if(t==Lr){var e=me(this.targetExtent_)/this.targetResolution_,i=ge(this.targetExtent_)/this.targetResolution_;this.canvas_=n_(e,i,this.sourcePixelRatio_,this.sourceImage_.getResolution(),this.maxSourceExtent_,this.targetResolution_,this.targetExtent_,this.triangulation_,[{extent:this.sourceImage_.getExtent(),image:this.sourceImage_.getImage()}],0,void 0,this.contextOptions_)}this.state=t,this.changed()},e.prototype.load=function(){if(this.state==Ir){this.state=Mr,this.changed();var t=this.sourceImage_.getState();t==Lr||t==Ar?this.reproject_():(this.sourceListenerKey_=N(this.sourceImage_,T,(function(t){var e=this.sourceImage_.getState();e!=Lr&&e!=Ar||(this.unlistenSource_(),this.reproject_())}),this),this.sourceImage_.load())}},e.prototype.unlistenSource_=function(){B(this.sourceListenerKey_),this.sourceListenerKey_=null},e}(Ga),U_=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),V_="imageloadstart",X_="imageloadend",W_="imageloaderror",Y_=function(t){function e(e,i){var r=t.call(this,e)||this;return r.image=i,r}return U_(e,t),e}(s),K_=function(t){function i(e){var i=t.call(this,{attributions:e.attributions,projection:e.projection,state:e.state})||this;return i.resolutions_=void 0!==e.resolutions?e.resolutions:null,i.reprojectedImage_=null,i.reprojectedRevision_=0,i.contextOptions_=!1===e.imageSmoothing?t_:void 0,i}return U_(i,t),i.prototype.getResolutions=function(){return this.resolutions_},i.prototype.getContextOptions=function(){return this.contextOptions_},i.prototype.findNearestResolution=function(t){if(this.resolutions_){var e=p(this.resolutions_,t,0);t=this.resolutions_[e]}return t},i.prototype.getImage=function(t,e,i,r){var n=this.getProjection();if(n&&r&&!gi(n,r)){if(this.reprojectedImage_){if(this.reprojectedRevision_==this.getRevision()&&gi(this.reprojectedImage_.getProjection(),r)&&this.reprojectedImage_.getResolution()==e&&re(this.reprojectedImage_.getExtent(),t))return this.reprojectedImage_;this.reprojectedImage_.dispose(),this.reprojectedImage_=null}return this.reprojectedImage_=new B_(n,r,t,e,i,function(t,e,i){return this.getImageInternal(t,e,i,n)}.bind(this),this.contextOptions_),this.reprojectedRevision_=this.getRevision(),this.reprojectedImage_}return n&&(r=n),this.getImageInternal(t,e,i,r)},i.prototype.getImageInternal=function(t,i,r,n){return e()},i.prototype.handleImageChange=function(t){var e=t.target;switch(e.getState()){case Mr:this.loading=!0,this.dispatchEvent(new Y_(V_,e));break;case Lr:this.loading=!1,this.dispatchEvent(new Y_(X_,e));break;case Ar:this.loading=!1,this.dispatchEvent(new Y_(W_,e))}},i}(as);function Z_(t,e){t.getImage().src=e}function H_(t,e){var i=[];Object.keys(e).forEach((function(t){null!==e[t]&&void 0!==e[t]&&i.push(t+"="+encodeURIComponent(e[t]))}));var r=i.join("&");return(t=-1===(t=t.replace(/[?&]$/,"")).indexOf("?")?t+"?":t+"&")+r}var q_="carmentaserver",J_="geoserver",Q_="mapserver",$_="qgis",ty=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ey=[101,101],iy=function(t){function e(e){var i=this,r=e||{};return(i=t.call(this,{attributions:r.attributions,imageSmoothing:r.imageSmoothing,projection:r.projection,resolutions:r.resolutions})||this).crossOrigin_=void 0!==r.crossOrigin?r.crossOrigin:null,i.url_=r.url,i.imageLoadFunction_=void 0!==r.imageLoadFunction?r.imageLoadFunction:Z_,i.params_=r.params||{},i.v13_=!0,i.updateV13_(),i.serverType_=r.serverType,i.hidpi_=void 0===r.hidpi||r.hidpi,i.image_=null,i.imageSize_=[0,0],i.renderedRevision_=0,i.ratio_=void 0!==r.ratio?r.ratio:1.5,i}return ty(e,t),e.prototype.getFeatureInfoUrl=function(t,e,i,r){if(void 0!==this.url_){var n=ci(i),o=this.getProjection();o&&o!==n&&(e=r_(o,n,t,e),t=vi(t,n,o));var a=de(t,e,0,ey),s={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetFeatureInfo",FORMAT:"image/png",TRANSPARENT:!0,QUERY_LAYERS:this.params_.LAYERS};m(s,this.params_,r);var l=Math.floor((t[0]-a[0])/e),u=Math.floor((a[3]-t[1])/e);return s[this.v13_?"I":"X"]=l,s[this.v13_?"J":"Y"]=u,this.getRequestUrl_(a,ey,1,o||n,s)}},e.prototype.getLegendUrl=function(t,e){if(void 0!==this.url_){var i={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetLegendGraphic",FORMAT:"image/png"};if(void 0===e||void 0===e.LAYER){var r=this.params_.LAYERS;if(!(!Array.isArray(r)||1===r.length))return;i.LAYER=r}if(void 0!==t){var n=this.getProjection()?this.getProjection().getMetersPerUnit():1;i.SCALE=t*n/28e-5}return m(i,e),H_(this.url_,i)}},e.prototype.getParams=function(){return this.params_},e.prototype.getImageInternal=function(t,e,i,r){if(void 0===this.url_)return null;e=this.findNearestResolution(e),1==i||this.hidpi_&&void 0!==this.serverType_||(i=1);var n=e/i,o=pe(t),a=de(o,n,0,[Math.ceil(me(t)/n),Math.ceil(ge(t)/n)]),s=de(o,n,0,[Math.ceil(this.ratio_*me(t)/n),Math.ceil(this.ratio_*ge(t)/n)]),l=this.image_;if(l&&this.renderedRevision_==this.getRevision()&&l.getResolution()==e&&l.getPixelRatio()==i&&Zt(l.getExtent(),a))return l;var u={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetMap",FORMAT:"image/png",TRANSPARENT:!0};m(u,this.params_),this.imageSize_[0]=Math.round(me(s)/n),this.imageSize_[1]=Math.round(ge(s)/n);var h=this.getRequestUrl_(s,this.imageSize_,i,r,u);return this.image_=new za(s,e,i,h,this.crossOrigin_,this.imageLoadFunction_),this.renderedRevision_=this.getRevision(),this.image_.addEventListener(T,this.handleImageChange.bind(this)),this.image_},e.prototype.getImageLoadFunction=function(){return this.imageLoadFunction_},e.prototype.getRequestUrl_=function(t,e,i,r,n){if(it(void 0!==this.url_,9),n[this.v13_?"CRS":"SRS"]=r.getCode(),"STYLES"in this.params_||(n.STYLES=""),1!=i)switch(this.serverType_){case J_:var o=90*i+.5|0;"FORMAT_OPTIONS"in n?n.FORMAT_OPTIONS+=";dpi:"+o:n.FORMAT_OPTIONS="dpi:"+o;break;case Q_:n.MAP_RESOLUTION=90*i;break;case q_:case $_:n.DPI=90*i;break;default:it(!1,8)}n.WIDTH=e[0],n.HEIGHT=e[1];var a,s=r.getAxisOrientation();return a=this.v13_&&"ne"==s.substr(0,2)?[t[1],t[0],t[3],t[2]]:t,n.BBOX=a.join(","),H_(this.url_,n)},e.prototype.getUrl=function(){return this.url_},e.prototype.setImageLoadFunction=function(t){this.image_=null,this.imageLoadFunction_=t,this.changed()},e.prototype.setUrl=function(t){t!=this.url_&&(this.url_=t,this.image_=null,this.changed())},e.prototype.updateParams=function(t){m(this.params_,t),this.updateV13_(),this.image_=null,this.changed()},e.prototype.updateV13_=function(){var t=this.params_.VERSION||"1.3.0";this.v13_=ti(t,"1.3")>=0},e}(K_),ry=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ny=function(t){function e(e){var i,r=e||{};i=void 0!==r.attributions?r.attributions:['&#169; <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a> contributors.'];var n=void 0!==r.crossOrigin?r.crossOrigin:"anonymous",o=void 0!==r.url?r.url:"https://{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png";return t.call(this,{attributions:i,attributionsCollapsible:!1,cacheSize:r.cacheSize,crossOrigin:n,imageSmoothing:r.imageSmoothing,maxZoom:void 0!==r.maxZoom?r.maxZoom:19,opaque:void 0===r.opaque||r.opaque,reprojectionErrorThreshold:r.reprojectionErrorThreshold,tileLoadFunction:r.tileLoadFunction,transition:r.transition,url:o,wrapX:r.wrapX})||this}return ry(e,t),e}(N_),oy=function(){var t=function(e,i){return(t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(e,i)};return function(e,i){function r(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(r.prototype=i.prototype,new r)}}(),ay=function(t){function e(e){var i=this,r=e||{},n=r.params||{},o=!("TRANSPARENT"in n)||n.TRANSPARENT;return(i=t.call(this,{attributions:r.attributions,cacheSize:r.cacheSize,crossOrigin:r.crossOrigin,imageSmoothing:r.imageSmoothing,opaque:!o,projection:r.projection,reprojectionErrorThreshold:r.reprojectionErrorThreshold,tileClass:r.tileClass,tileGrid:r.tileGrid,tileLoadFunction:r.tileLoadFunction,url:r.url,urls:r.urls,wrapX:void 0===r.wrapX||r.wrapX,transition:r.transition})||this).gutter_=void 0!==r.gutter?r.gutter:0,i.params_=n,i.v13_=!0,i.serverType_=r.serverType,i.hidpi_=void 0===r.hidpi||r.hidpi,i.tmpExtent_=[1/0,1/0,-1/0,-1/0],i.updateV13_(),i.setKey(i.getKeyForParams_()),i}return oy(e,t),e.prototype.getFeatureInfoUrl=function(t,e,i,r){var n=ci(i),o=this.getProjection(),a=this.getTileGrid();a||(a=this.getTileGridForProjection(n));var s=a.getZForResolution(e,this.zDirection),l=a.getTileCoordForCoordAndZ(t,s);if(!(a.getResolutions().length<=l[0])){var u=a.getResolution(l[0]),h=a.getTileCoordExtent(l,this.tmpExtent_),c=Gr(a.getTileSize(l[0]),this.tmpSize),p=this.gutter_;0!==p&&(c=Dr(c,p,this.tmpSize),h=Xt(h,u*p,h)),o&&o!==n&&(u=r_(o,n,t,u),h=function(t,e,i,r){return Se(t,yi(e,i),void 0,r)}(h,n,o),t=vi(t,n,o));var f={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetFeatureInfo",FORMAT:"image/png",TRANSPARENT:!0,QUERY_LAYERS:this.params_.LAYERS};m(f,this.params_,r);var d=Math.floor((t[0]-h[0])/u),g=Math.floor((h[3]-t[1])/u);return f[this.v13_?"I":"X"]=d,f[this.v13_?"J":"Y"]=g,this.getRequestUrl_(l,c,h,1,o||n,f)}},e.prototype.getLegendUrl=function(t,e){if(void 0!==this.urls[0]){var i={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetLegendGraphic",FORMAT:"image/png"};if(void 0===e||void 0===e.LAYER){var r=this.params_.LAYERS;if(!(!Array.isArray(r)||1===r.length))return;i.LAYER=r}if(void 0!==t){var n=this.getProjection()?this.getProjection().getMetersPerUnit():1;i.SCALE=t*n/28e-5}return m(i,e),H_(this.urls[0],i)}},e.prototype.getGutter=function(){return this.gutter_},e.prototype.getParams=function(){return this.params_},e.prototype.getRequestUrl_=function(t,e,i,r,n,o){var a=this.urls;if(a){if(o.WIDTH=e[0],o.HEIGHT=e[1],o[this.v13_?"CRS":"SRS"]=n.getCode(),"STYLES"in this.params_||(o.STYLES=""),1!=r)switch(this.serverType_){case J_:var s=90*r+.5|0;"FORMAT_OPTIONS"in o?o.FORMAT_OPTIONS+=";dpi:"+s:o.FORMAT_OPTIONS="dpi:"+s;break;case Q_:o.MAP_RESOLUTION=90*r;break;case q_:case $_:o.DPI=90*r;break;default:it(!1,52)}var l,u=n.getAxisOrientation(),h=i;if(this.v13_&&"ne"==u.substr(0,2)){var c=void 0;c=i[0],h[0]=i[1],h[1]=c,c=i[2],h[2]=i[3],h[3]=c}if(o.BBOX=h.join(","),1==a.length)l=a[0];else l=a[Ie(rc(t),a.length)];return H_(l,o)}},e.prototype.getTilePixelRatio=function(t){return this.hidpi_&&void 0!==this.serverType_?t:1},e.prototype.getKeyForParams_=function(){var t=0,e=[];for(var i in this.params_)e[t++]=i+"-"+this.params_[i];return e.join("/")},e.prototype.updateParams=function(t){m(this.params_,t),this.updateV13_(),this.setKey(this.getKeyForParams_())},e.prototype.updateV13_=function(){var t=this.params_.VERSION||"1.3.0";this.v13_=ti(t,"1.3")>=0},e.prototype.tileUrlFunction=function(t,e,i){var r=this.getTileGrid();if(r||(r=this.getTileGridForProjection(i)),!(r.getResolutions().length<=t[0])){1==e||this.hidpi_&&void 0!==this.serverType_||(e=1);var n=r.getResolution(t[0]),o=r.getTileCoordExtent(t,this.tmpExtent_),a=Gr(r.getTileSize(t[0]),this.tmpSize),s=this.gutter_;0!==s&&(a=Dr(a,s,this.tmpSize),o=Xt(o,n*s,o)),1!=e&&(a=jr(a,e,this.tmpSize));var l={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetMap",FORMAT:"image/png",TRANSPARENT:!0};return m(l,this.params_),this.getRequestUrl_(t,a,o,e,i,l)}},e}(l_);V.unByKey=X;let sy={Control:Ol,Zoom:Dl,Attribution:Ml,ScaleLine:Xl,LayerSwitcher:fc},ly={GeoJSON:Cc,KML:Ep,MVT:Cd},uy={Group:Ys,Tile:Qg,Vector:rs,VectorTile:Pg,WebGLPoints:k_,Heatmap:lg,Image:dg},hy={toLonLat:function(t,e){var i=vi(t,void 0!==e?e:"EPSG:3857","EPSG:4326"),r=i[0];return(r<-180||r>180)&&(i[0]=Ie(r+180,360)-180),i},fromLonLat:function(t,e){return vi(t,"EPSG:4326",void 0!==e?e:"EPSG:3857")}},cy={LineString:Fr,Point:er,MultiPoint:th},py={Icon:Ya,Style:On,Text:jn,Stroke:Or,Fill:br,Circle:Fn},fy={OSM:ny,XYZ:N_,TileWMS:ay,BingMaps:j_,Vector:bs,VectorTile:Yg,ImageWMS:iy};t.Collection=et,t.Feature=nt,t.Map=Jh,t.Observable=V,t.View=Cl,t.control=sy,t.format=ly,t.geom=cy,t.interaction=Hh,t.layer=uy,t.proj=hy,t.source=fy,t.sphere=$e,t.style=py,Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=ol-custom.js.map