openlayers
Version:
Build tools and sources for developing OpenLayers based mapping applications
103 lines (102 loc) • 503 kB
JavaScript
// OpenLayers. See https://openlayers.org/
// License: https://raw.githubusercontent.com/openlayers/openlayers/master/LICENSE.md
// Version: v4.0.0
;(function (root, factory) {
if (typeof exports === "object") {
module.exports = factory();
} else if (typeof define === "function" && define.amd) {
define([], factory);
} else {
root.ol = factory();
}
}(this, function () {
var OPENLAYERS = {};
var k,aa=this;function t(a,b){var c=OPENLAYERS,d=a.split("."),c=c||aa;d[0]in c||!c.execScript||c.execScript("var "+d[0]);for(var e;d.length&&(e=d.shift());)d.length||void 0===b?c[e]?c=c[e]:c=c[e]={}:c[e]=b};var ba,ca;function da(a,b){return a>b?1:a<b?-1:0}function ea(a,b){return 0<=a.indexOf(b)}function fa(a,b,c){var d=a.length;if(a[0]<=b)return 0;if(!(b<=a[d-1]))if(0<c)for(c=1;c<d;++c){if(a[c]<b)return c-1}else if(0>c)for(c=1;c<d;++c){if(a[c]<=b)return c}else for(c=1;c<d;++c){if(a[c]==b)return c;if(a[c]<b)return a[c-1]-b<b-a[c]?c-1:c}return d-1}function ga(a,b){var c,d=Array.isArray(b)?b:[b],e=d.length;for(c=0;c<e;c++)a[a.length]=d[c]}
function ha(a,b){for(var c=a.length>>>0,d,e=0;e<c;e++)if(d=a[e],b(d,e,a))return d;return null}function ia(a,b){var c=a.length;if(c!==b.length)return!1;for(var d=0;d<c;d++)if(a[d]!==b[d])return!1;return!0}function ja(a){var b=ka,c=a.length,d=Array(a.length),e;for(e=0;e<c;e++)d[e]={index:e,value:a[e]};d.sort(function(a,c){return b(a.value,c.value)||a.index-c.index});for(e=0;e<a.length;e++)a[e]=d[e].value}function la(a,b){var c;return a.every(function(d,e){c=e;return!b(d,e,a)})?-1:c}
function ma(a,b){var c=b||da;return a.every(function(b,e){if(!e)return!0;var d=c(a[e-1],b);return!(0<d||0===d)})};function u(a,b){a.prototype=Object.create(b.prototype);a.prototype.constructor=a}function na(){}function w(a){return a.ko||(a.ko=++oa)}var oa=0;function pa(a){this.message="Assertion failed. See https://openlayers.org/en/v4.0.0/doc/errors/#"+a+" for details.";this.code=a;this.name="AssertionError"}u(pa,Error);function qa(a,b){if(!a)throw new pa(b);};function sa(a,b,c,d){this.da=a;this.ba=b;this.fa=c;this.ja=d}function ta(a,b,c){return a.da<=b&&b<=a.ba&&a.fa<=c&&c<=a.ja}function ua(a,b){return a.da==b.da&&a.fa==b.fa&&a.ba==b.ba&&a.ja==b.ja}function va(a,b){return a.da<=b.ba&&a.ba>=b.da&&a.fa<=b.ja&&a.ja>=b.fa};function wa(a,b,c){return Math.min(Math.max(a,b),c)}var xa=function(){var a;"cosh"in Math?a=Math.cosh:a=function(a){a=Math.exp(a);return(a+1/a)/2};return a}();function ya(a){qa(0<a,29);return Math.pow(2,Math.ceil(Math.log(a)/Math.LN2))}function za(a,b,c,d,e,f){var g=e-c,h=f-d;if(g||h){var l=((a-c)*g+(b-d)*h)/(g*g+h*h);1<l?(c=e,d=f):0<l&&(c+=g*l,d+=h*l)}return Aa(a,b,c,d)}function Aa(a,b,c,d){a=c-a;b=d-b;return a*a+b*b}function Ba(a){return a*Math.PI/180}
function Ca(a,b){var c=a%b;return 0>c*b?c+b:c}function Da(a,b,c){return a+c*(b-a)};function Ea(a,b,c){void 0===c&&(c=[0,0]);c[0]=a[0]+2*b;c[1]=a[1]+2*b;return c}function Fa(a,b,c){void 0===c&&(c=[0,0]);c[0]=a[0]*b+.5|0;c[1]=a[1]*b+.5|0;return c}function Ga(a,b){if(Array.isArray(a))return a;void 0===b?b=[a,a]:b[0]=b[1]=a;return b};function Ha(a){for(var b=Ia(),c=0,d=a.length;c<d;++c)Ja(b,a[c]);return b}function Ka(a,b,c){return c?(c[0]=a[0]-b,c[1]=a[1]-b,c[2]=a[2]+b,c[3]=a[3]+b,c):[a[0]-b,a[1]-b,a[2]+b,a[3]+b]}function Na(a,b){return b?(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b):a.slice()}function Oa(a,b,c){b=b<a[0]?a[0]-b:a[2]<b?b-a[2]:0;a=c<a[1]?a[1]-c:a[3]<c?c-a[3]:0;return b*b+a*a}function Qa(a,b){return Sa(a,b[0],b[1])}function Ta(a,b){return a[0]<=b[0]&&b[2]<=a[2]&&a[1]<=b[1]&&b[3]<=a[3]}
function Sa(a,b,c){return a[0]<=b&&b<=a[2]&&a[1]<=c&&c<=a[3]}function Ua(a,b){var c=a[1],d=a[2],e=a[3],f=b[0],g=b[1],h=0;f<a[0]?h|=16:f>d&&(h|=4);g<c?h|=8:g>e&&(h|=2);h||(h=1);return h}function Ia(){return[Infinity,Infinity,-Infinity,-Infinity]}function Va(a,b,c,d,e){return e?(e[0]=a,e[1]=b,e[2]=c,e[3]=d,e):[a,b,c,d]}function Wa(a,b){var c=a[0],d=a[1];return Va(c,d,c,d,b)}function Xa(a,b,c,d,e){e=Va(Infinity,Infinity,-Infinity,-Infinity,e);return Ya(e,a,b,c,d)}
function Za(a,b){return a[0]==b[0]&&a[2]==b[2]&&a[1]==b[1]&&a[3]==b[3]}function $a(a,b){b[0]<a[0]&&(a[0]=b[0]);b[2]>a[2]&&(a[2]=b[2]);b[1]<a[1]&&(a[1]=b[1]);b[3]>a[3]&&(a[3]=b[3]);return a}function Ja(a,b){b[0]<a[0]&&(a[0]=b[0]);b[0]>a[2]&&(a[2]=b[0]);b[1]<a[1]&&(a[1]=b[1]);b[1]>a[3]&&(a[3]=b[1])}function Ya(a,b,c,d,e){for(;c<d;c+=e){var f=a,g=b[c],h=b[c+1];f[0]=Math.min(f[0],g);f[1]=Math.min(f[1],h);f[2]=Math.max(f[2],g);f[3]=Math.max(f[3],h)}return a}
function ab(a,b,c){var d;return(d=b.call(c,bb(a)))||(d=b.call(c,cb(a)))||(d=b.call(c,db(a)))?d:(d=b.call(c,eb(a)))?d:!1}function fb(a){var b=0;gb(a)||(b=hb(a)*ib(a));return b}function bb(a){return[a[0],a[1]]}function cb(a){return[a[2],a[1]]}function jb(a){return[(a[0]+a[2])/2,(a[1]+a[3])/2]}
function kb(a,b,c,d,e){var f=b*d[0]/2;d=b*d[1]/2;b=Math.cos(c);var g=Math.sin(c);c=f*b;f*=g;b*=d;var h=d*g,l=a[0],m=a[1];a=l-c+h;d=l-c-h;g=l+c-h;c=l+c+h;var h=m-f-b,l=m-f+b,p=m+f+b,f=m+f-b;return Va(Math.min(a,d,g,c),Math.min(h,l,p,f),Math.max(a,d,g,c),Math.max(h,l,p,f),e)}function ib(a){return a[3]-a[1]}function lb(a,b,c){c=c?c:Ia();mb(a,b)&&(c[0]=a[0]>b[0]?a[0]:b[0],c[1]=a[1]>b[1]?a[1]:b[1],c[2]=a[2]<b[2]?a[2]:b[2],c[3]=a[3]<b[3]?a[3]:b[3]);return c}function eb(a){return[a[0],a[3]]}
function db(a){return[a[2],a[3]]}function hb(a){return a[2]-a[0]}function mb(a,b){return a[0]<=b[2]&&a[2]>=b[0]&&a[1]<=b[3]&&a[3]>=b[1]}function gb(a){return a[2]<a[0]||a[3]<a[1]}function nb(a,b){var c=(a[2]-a[0])/2*(b-1),d=(a[3]-a[1])/2*(b-1);a[0]-=c;a[2]+=c;a[1]-=d;a[3]+=d}
function ob(a,b,c){a=[a[0],a[1],a[0],a[3],a[2],a[1],a[2],a[3]];b(a,a,2);var d=[a[0],a[2],a[4],a[6]],e=[a[1],a[3],a[5],a[7]];b=Math.min.apply(null,d);a=Math.min.apply(null,e);d=Math.max.apply(null,d);e=Math.max.apply(null,e);return Va(b,a,d,e,c)};var pb="function"===typeof Object.assign?Object.assign:function(a,b){if(!a||null===a)throw new TypeError("Cannot convert undefined or null to object");for(var c=Object(a),d=1,e=arguments.length;d<e;++d){var f=arguments[d];if(void 0!==f&&null!==f)for(var g in f)f.hasOwnProperty(g)&&(c[g]=f[g])}return c};function qb(a){for(var b in a)delete a[b]}function rb(a){var b=[],c;for(c in a)b.push(a[c]);return b}function sb(a){for(var b in a)return!1;return!b};/*
Latitude/longitude spherical geodesy formulae taken from
http://www.movable-type.co.uk/scripts/latlong.html
Licensed under CC-BY-3.0.
*/
function tb(a){this.radius=a}tb.prototype.a=function(a){for(var b=0,c=a.length,d=a[c-1][0],e=a[c-1][1],f=0;f<c;f++)var g=a[f][0],h=a[f][1],b=b+Ba(g-d)*(2+Math.sin(Ba(e))+Math.sin(Ba(h))),d=g,e=h;return b*this.radius*this.radius/2};tb.prototype.b=function(a,b){var c=Ba(a[1]),d=Ba(b[1]),e=(d-c)/2,f=Ba(b[0]-a[0])/2,c=Math.sin(e)*Math.sin(e)+Math.sin(f)*Math.sin(f)*Math.cos(c)*Math.cos(d);return 2*this.radius*Math.atan2(Math.sqrt(c),Math.sqrt(1-c))};
tb.prototype.offset=function(a,b,c){var d=Ba(a[1]);b/=this.radius;var e=Math.asin(Math.sin(d)*Math.cos(b)+Math.cos(d)*Math.sin(b)*Math.cos(c));return[180*(Ba(a[0])+Math.atan2(Math.sin(c)*Math.sin(b)*Math.cos(d),Math.cos(b)-Math.sin(d)*Math.sin(e)))/Math.PI,180*e/Math.PI]};var ub=new tb(6370997);var vb={};vb.degrees=2*Math.PI*ub.radius/360;vb.ft=.3048;vb.m=1;vb["us-ft"]=1200/3937;var wb=null;function yb(a){this.nb=a.code;this.i=a.units;this.c=void 0!==a.extent?a.extent:null;this.g=void 0!==a.worldExtent?a.worldExtent:null;this.b=void 0!==a.axisOrientation?a.axisOrientation:"enu";this.f=void 0!==a.global?a.global:!1;this.a=!(!this.f||!this.c);this.j=a.getPointResolution;this.l=null;this.o=a.metersPerUnit;var b=a.code,c=wb||window.proj4;"function"==typeof c&&(b=c.defs(b),void 0!==b&&(void 0!==b.axis&&void 0===a.axisOrientation&&(this.b=b.axis),void 0===a.metersPerUnit&&(this.o=b.to_meter),
void 0===a.units&&(this.i=b.units)))}k=yb.prototype;k.nk=function(){return this.nb};k.D=function(){return this.c};k.Jb=function(){return this.i};k.sc=function(){return this.o||vb[this.i]};k.Zk=function(){return this.g};k.Kl=function(){return this.f};k.pp=function(a){this.f=a;this.a=!(!a||!this.c)};k.ln=function(a){this.c=a;this.a=!(!this.f||!a)};k.xp=function(a){this.g=a};k.op=function(a){this.j=a};var zb={};var Ab={};function Bb(a,b,c){a=a.nb;b=b.nb;a in Ab||(Ab[a]={});Ab[a][b]=c}function Db(a,b){var c;a in Ab&&b in Ab[a]&&(c=Ab[a][b]);return c};function Eb(a,b,c){var d=a.j;d?b=d(b,c):"degrees"!=a.Jb()&&(d=Fb(a,Gb("EPSG:4326")),b=[c[0]-b/2,c[1],c[0]+b/2,c[1],c[0],c[1]-b/2,c[0],c[1]+b/2],b=d(b,b,2),b=(ub.b(b.slice(0,2),b.slice(2,4))+ub.b(b.slice(4,6),b.slice(6,8)))/2,a=a.sc(),void 0!==a&&(b/=a));return b}function Hb(a){Ib(a);a.forEach(function(b){a.forEach(function(a){b!==a&&Bb(b,a,Jb)})})}function Kb(){var a=Lb,b=Mb,c=Nb;Ob.forEach(function(d){a.forEach(function(a){Bb(d,a,b);Bb(a,d,c)})})}function Pb(a){zb[a.nb]=a;Bb(a,a,Jb)}
function Ib(a){var b=[];a.forEach(function(a){b.push(Pb(a))})}function Qb(a){return a?"string"===typeof a?Gb(a):a:Gb("EPSG:3857")}function Rb(a,b,c,d){a=Gb(a);b=Gb(b);Bb(a,b,Sb(c));Bb(b,a,Sb(d))}function Sb(a){return function(b,c,d){var e=b.length;d=void 0!==d?d:2;c=void 0!==c?c:Array(e);var f,g;for(g=0;g<e;g+=d)for(f=a([b[g],b[g+1]]),c[g]=f[0],c[g+1]=f[1],f=d-1;2<=f;--f)c[g+f]=b[g+f];return c}}
function Gb(a){var b=null;if(a instanceof yb)b=a;else if("string"===typeof a){var b=zb[a]||null,c=wb||window.proj4;b||"function"!=typeof c||void 0===c.defs(a)||(b=new yb({code:a}),Pb(b))}return b}function Tb(a,b){if(a===b)return!0;var c=a.Jb()===b.Jb();return a.nb===b.nb?c:Fb(a,b)===Jb&&c}function Ub(a,b){var c=Gb(a),d=Gb(b);return Fb(c,d)}
function Fb(a,b){var c=a.nb,d=b.nb,e=Db(c,d);if(!e){var f=wb||window.proj4;if("function"==typeof f){var g=f.defs(c),h=f.defs(d);void 0!==g&&void 0!==h&&(g===h?Hb([b,a]):(e=f(d,c),Rb(b,a,e.forward,e.inverse)),e=Db(c,d))}}e||(e=Vb);return e}function Vb(a,b){if(void 0!==b&&a!==b){for(var c=0,d=a.length;c<d;++c)b[c]=a[c];a=b}return a}function Jb(a,b){var c;if(void 0!==b){c=0;for(var d=a.length;c<d;++c)b[c]=a[c];c=b}else c=a.slice();return c}function Wb(a,b,c){return Ub(b,c)(a,void 0,a.length)}
function Xb(a,b,c){b=Ub(b,c);return ob(a,b)};function Yb(a,b,c,d){return void 0!==d?(d[0]=a,d[1]=b,d[2]=c,d):[a,b,c]}function Zb(a){var b=a[0],c=Array(b),d=1<<b-1,e,f;for(e=0;e<b;++e)f=48,a[1]&d&&(f+=1),a[2]&d&&(f+=2),c[e]=String.fromCharCode(f),d>>=1;return c.join("")};function $b(a){this.minZoom=void 0!==a.minZoom?a.minZoom:0;this.b=a.resolutions;qa(ma(this.b,function(a,b){return b-a}),17);this.maxZoom=this.b.length-1;this.f=void 0!==a.origin?a.origin:null;this.c=null;void 0!==a.origins&&(this.c=a.origins,qa(this.c.length==this.b.length,20));var b=a.extent;void 0===b||this.f||this.c||(this.f=eb(b));qa(!this.f&&this.c||this.f&&!this.c,18);this.i=null;void 0!==a.tileSizes&&(this.i=a.tileSizes,qa(this.i.length==this.b.length,19));this.g=void 0!==a.tileSize?a.tileSize:
this.i?null:256;qa(!this.g&&this.i||this.g&&!this.i,22);this.v=void 0!==b?b:null;this.a=null;this.l=[0,0];void 0!==a.sizes?this.a=a.sizes.map(function(a){return new sa(Math.min(0,a[0]),Math.max(a[0]-1,-1),Math.min(0,a[1]),Math.max(a[1]-1,-1))},this):b&&ac(this,b)}var bc=[0,0,0];k=$b.prototype;k.eh=function(a,b,c){a=cc(this,a,b);for(var d=a.da,e=a.ba;d<=e;++d)for(var f=a.fa,g=a.ja;f<=g;++f)c([b,d,f])};
function ec(a,b,c,d,e){e=a.Ta(b,e);for(b=b[0]-1;b>=a.minZoom;){if(c.call(null,b,cc(a,e,b,d)))return!0;--b}return!1}k.D=function(){return this.v};k.oh=function(){return this.maxZoom};k.ph=function(){return this.minZoom};k.Qc=function(a){return this.f?this.f:this.c[a]};k.La=function(a){return this.b[a]};k.oi=function(){return this.b};function fc(a,b,c,d){return b[0]<a.maxZoom?(d=a.Ta(b,d),cc(a,d,b[0]+1,c)):null}
function gc(a,b,c,d){hc(a,b[0],b[1],c,!1,bc);var e=bc[1],f=bc[2];hc(a,b[2],b[3],c,!0,bc);a=bc[1];b=bc[2];void 0!==d?(d.da=e,d.ba=a,d.fa=f,d.ja=b):d=new sa(e,a,f,b);return d}function cc(a,b,c,d){return gc(a,b,a.La(c),d)}function ic(a,b){var c=a.Qc(b[0]),d=a.La(b[0]),e=Ga(a.fb(b[0]),a.l);return[c[0]+(b[1]+.5)*e[0]*d,c[1]+(b[2]+.5)*e[1]*d]}k.Ta=function(a,b){var c=this.Qc(a[0]),d=this.La(a[0]),e=Ga(this.fb(a[0]),this.l),f=c[0]+a[1]*e[0]*d,c=c[1]+a[2]*e[1]*d;return Va(f,c,f+e[0]*d,c+e[1]*d,b)};
k.we=function(a,b,c){return hc(this,a[0],a[1],b,!1,c)};function hc(a,b,c,d,e,f){var g=a.Mc(d),h=d/a.La(g),l=a.Qc(g);a=Ga(a.fb(g),a.l);b=h*Math.floor((b-l[0])/d+(e?.5:0))/a[0];c=h*Math.floor((c-l[1])/d+(e?0:.5))/a[1];e?(b=Math.ceil(b)-1,c=Math.ceil(c)-1):(b=Math.floor(b),c=Math.floor(c));return Yb(g,b,c,f)}k.Pf=function(a,b,c){return hc(this,a[0],a[1],this.La(b),!1,c)};k.fb=function(a){return this.g?this.g:this.i[a]};k.Mc=function(a,b){return wa(fa(this.b,a,b||0),this.minZoom,this.maxZoom)};
function ac(a,b){for(var c=a.b.length,d=Array(c),e=a.minZoom;e<c;++e)d[e]=cc(a,b,e);a.a=d};function jc(a){var b=a.l;if(!b){var b=kc(a),c=lc(b,void 0,void 0),b=new $b({extent:b,origin:eb(b),resolutions:c,tileSize:void 0});a.l=b}return b}function mc(a){var b={};pb(b,a?a:{});void 0===b.extent&&(b.extent=Gb("EPSG:3857").D());b.resolutions=lc(b.extent,b.maxZoom,b.tileSize);delete b.maxZoom;return new $b(b)}function lc(a,b,c){b=void 0!==b?b:42;var d=ib(a);a=hb(a);c=Ga(void 0!==c?c:256);c=Math.max(a/c[0],d/c[1]);b+=1;d=Array(b);for(a=0;a<b;++a)d[a]=c/Math.pow(2,a);return d}
function kc(a){a=Gb(a);var b=a.D();b||(a=180*vb.degrees/a.sc(),b=Va(-a,-a,a,a));return b};function nc(a){this.b=a.html;this.a=a.tileRanges?a.tileRanges:null}nc.prototype.f=function(){return this.b};function oc(a){return function(b){if(b)return[wa(b[0],a[0],a[2]),wa(b[1],a[1],a[3])]}}function pc(a){return a};function qc(a){function b(b){var c=a.listener,e=a.Vg||a.target;a.Xg&&rc(a);return c.call(e,b)}return a.Wg=b}function sc(a,b,c,d){for(var e,f=0,g=a.length;f<g;++f)if(e=a[f],e.listener===b&&e.Vg===c)return d&&(e.deleteIndex=f),e}function tc(a,b){var c=a.eb;return c?c[b]:void 0}function uc(a){var b=a.eb;b||(b=a.eb={});return b}
function vc(a,b){var c=tc(a,b);if(c){for(var d=0,e=c.length;d<e;++d)a.removeEventListener(b,c[d].Wg),qb(c[d]);c.length=0;if(c=a.eb)delete c[b],Object.keys(c).length||delete a.eb}}function B(a,b,c,d,e){var f=uc(a),g=f[b];g||(g=f[b]=[]);(f=sc(g,c,d,!1))?e||(f.Xg=!1):(f={Vg:d,Xg:!!e,listener:c,target:a,type:b},a.addEventListener(b,qc(f)),g.push(f));return f}function wc(a,b,c,d){return B(a,b,c,d,!0)}function xc(a,b,c,d){(a=tc(a,b))&&(c=sc(a,c,d,!0))&&rc(c)}
function rc(a){if(a&&a.target){a.target.removeEventListener(a.type,a.Wg);var b=tc(a.target,a.type);if(b){var c="deleteIndex"in a?a.deleteIndex:b.indexOf(a);-1!==c&&b.splice(c,1);b.length||vc(a.target,a.type)}qb(a)}}function yc(a){var b=uc(a),c;for(c in b)vc(a,c)};function zc(){}zc.prototype.Zb=!1;function Ac(a){a.Zb||(a.Zb=!0,a.ra())}zc.prototype.ra=na;function Bc(a){this.type=a;this.target=null}Bc.prototype.preventDefault=Bc.prototype.stopPropagation=function(){this.Fo=!0};function Cc(a){a.stopPropagation()};function Dc(){this.$a={};this.ta={};this.qa={}}u(Dc,zc);Dc.prototype.addEventListener=function(a,b){var c=this.qa[a];c||(c=this.qa[a]=[]);-1===c.indexOf(b)&&c.push(b)};
Dc.prototype.b=function(a){var b="string"===typeof a?new Bc(a):a;a=b.type;b.target=this;var c=this.qa[a],d;if(c){a in this.ta||(this.ta[a]=0,this.$a[a]=0);++this.ta[a];for(var e=0,f=c.length;e<f;++e)if(!1===c[e].call(this,b)||b.Fo){d=!1;break}--this.ta[a];if(!this.ta[a]){b=this.$a[a];for(delete this.$a[a];b--;)this.removeEventListener(a,na);delete this.ta[a]}return d}};Dc.prototype.ra=function(){yc(this)};function Ec(a,b){return b?b in a.qa:0<Object.keys(a.qa).length}
Dc.prototype.removeEventListener=function(a,b){var c=this.qa[a];if(c){var d=c.indexOf(b);a in this.$a?(c[d]=na,++this.$a[a]):(c.splice(d,1),c.length||delete this.qa[a])}};function Fc(){Dc.call(this);this.f=0}u(Fc,Dc);k=Fc.prototype;k.s=function(){++this.f;this.b("change")};k.L=function(){return this.f};k.J=function(a,b,c){if(Array.isArray(a)){for(var d=a.length,e=Array(d),f=0;f<d;++f)e[f]=B(this,a[f],b,c);return e}return B(this,a,b,c)};k.once=function(a,b,c){if(Array.isArray(a)){for(var d=a.length,e=Array(d),f=0;f<d;++f)e[f]=wc(this,a[f],b,c);return e}return wc(this,a,b,c)};
k.K=function(a,b,c){if(Array.isArray(a))for(var d=0,e=a.length;d<e;++d)xc(this,a[d],b,c);else xc(this,a,b,c)};function Gc(a){Fc.call(this);w(this);this.I={};void 0!==a&&this.H(a)}u(Gc,Fc);var Hc={};function Ic(a){return Hc.hasOwnProperty(a)?Hc[a]:Hc[a]="change:"+a}k=Gc.prototype;k.get=function(a){var b;this.I.hasOwnProperty(a)&&(b=this.I[a]);return b};k.O=function(){return Object.keys(this.I)};k.N=function(){return pb({},this.I)};function Jc(a,b,c){var d;d=Ic(b);a.b(new Kc(d,b,c));a.b(new Kc("propertychange",b,c))}k.set=function(a,b,c){c?this.I[a]=b:(c=this.I[a],this.I[a]=b,c!==b&&Jc(this,a,c))};
k.H=function(a,b){for(var c in a)this.set(c,a[c],b)};k.P=function(a,b){if(a in this.I){var c=this.I[a];delete this.I[a];b||Jc(this,a,c)}};function Kc(a,b,c){Bc.call(this,a);this.key=b;this.oldValue=c}u(Kc,Bc);function D(a){Gc.call(this);this.a=a?a:[];Lc(this)}u(D,Gc);k=D.prototype;k.clear=function(){for(;0<this.ec();)this.pop()};k.Tf=function(a){var b,c;b=0;for(c=a.length;b<c;++b)this.push(a[b]);return this};k.forEach=function(a,b){this.a.forEach(a,b)};k.am=function(){return this.a};k.item=function(a){return this.a[a]};k.ec=function(){return this.get(Mc)};k.Be=function(a,b){this.a.splice(a,0,b);Lc(this);this.b(new Nc("add",b))};k.pop=function(){return this.tg(this.ec()-1)};
k.push=function(a){var b=this.ec();this.Be(b,a);return this.ec()};k.remove=function(a){var b=this.a,c,d;c=0;for(d=b.length;c<d;++c)if(b[c]===a)return this.tg(c)};k.tg=function(a){var b=this.a[a];this.a.splice(a,1);Lc(this);this.b(new Nc("remove",b));return b};k.mp=function(a,b){var c=this.ec();if(a<c)c=this.a[a],this.a[a]=b,this.b(new Nc("remove",c)),this.b(new Nc("add",b));else{for(;c<a;++c)this.Be(c,void 0);this.Be(a,b)}};function Lc(a){a.set(Mc,a.a.length)}var Mc="length";
function Nc(a,b){Bc.call(this,a);this.element=b}u(Nc,Bc);var Oc=/^#(?:[0-9a-f]{3}){1,2}$/i,Pc=/^([a-z]*)$/i;function Qc(a){return Array.isArray(a)?a:Rc(a)}function Sc(a){if("string"!==typeof a){var b=a[0];b!=(b|0)&&(b=b+.5|0);var c=a[1];c!=(c|0)&&(c=c+.5|0);var d=a[2];d!=(d|0)&&(d=d+.5|0);a="rgba("+b+","+c+","+d+","+(void 0===a[3]?1:a[3])+")"}return a}
var Rc=function(){var a={},b=0;return function(c){var d;if(a.hasOwnProperty(c))d=a[c];else{if(1024<=b){d=0;for(var e in a)d++&3||(delete a[e],--b)}d=c;var f;Pc.exec(d)&&(e=document.createElement("div"),e.style.color=d,document.body.appendChild(e),d=getComputedStyle(e).color,document.body.removeChild(e));if(Oc.exec(d)){f=d.length-1;qa(3==f||6==f,54);var g=3==f?1:2;f=parseInt(d.substr(1+0*g,g),16);e=parseInt(d.substr(1+1*g,g),16);d=parseInt(d.substr(1+2*g,g),16);1==g&&(f=(f<<4)+f,e=(e<<4)+e,d=(d<<4)+
d);f=[f,e,d,1]}else d.indexOf("rgba(")?d.indexOf("rgb(")?qa(!1,14):(d=d.slice(4,-1).split(",").map(Number),d.push(1),f=Uc(d)):(d=d.slice(5,-1).split(",").map(Number),f=Uc(d));d=f;a[c]=d;++b}return d}}();function Uc(a){var b=[];b[0]=wa(a[0]+.5|0,0,255);b[1]=wa(a[1]+.5|0,0,255);b[2]=wa(a[2]+.5|0,0,255);b[3]=wa(a[3],0,1);return b};function Vc(a){return"string"===typeof a||a instanceof CanvasPattern||a instanceof CanvasGradient?a:Sc(a)};function Wc(a,b,c){this.center=a;this.resolution=b;this.rotation=c};function Xc(a,b){var c=document.createElement("CANVAS");a&&(c.width=a);b&&(c.height=b);return c.getContext("2d")}function Yc(a,b){var c=b.parentNode;c&&c.replaceChild(a,b)}function Zc(a){a&&a.parentNode&&a.parentNode.removeChild(a)};function ad(a){Gc.call(this);this.element=a.element?a.element:null;this.a=this.S=null;this.v=[];this.render=a.render?a.render:na;a.target&&this.i(a.target)}u(ad,Gc);ad.prototype.ra=function(){Zc(this.element);Gc.prototype.ra.call(this)};ad.prototype.g=function(){return this.a};
ad.prototype.setMap=function(a){this.a&&Zc(this.element);for(var b=0,c=this.v.length;b<c;++b)rc(this.v[b]);this.v.length=0;if(this.a=a)(this.S?this.S:a.u).appendChild(this.element),this.render!==na&&this.v.push(B(a,"postrender",this.render,this)),a.render()};ad.prototype.i=function(a){this.S="string"===typeof a?document.getElementById(a):a};function bd(a){a=a?a:{};this.R=document.createElement("UL");this.u=document.createElement("LI");this.R.appendChild(this.u);this.u.style.display="none";this.c=void 0!==a.collapsed?a.collapsed:!0;this.j=void 0!==a.collapsible?a.collapsible:!0;this.j||(this.c=!1);var b=void 0!==a.className?a.className:"ol-attribution",c=void 0!==a.tipLabel?a.tipLabel:"Attributions",d=void 0!==a.collapseLabel?a.collapseLabel:"\u00bb";"string"===typeof d?(this.A=document.createElement("span"),this.A.textContent=d):this.A=
d;d=void 0!==a.label?a.label:"i";"string"===typeof d?(this.C=document.createElement("span"),this.C.textContent=d):this.C=d;var e=this.j&&!this.c?this.A:this.C,d=document.createElement("button");d.setAttribute("type","button");d.title=c;d.appendChild(e);B(d,"click",this.ym,this);c=document.createElement("div");c.className=b+" ol-unselectable ol-control"+(this.c&&this.j?" ol-collapsed":"")+(this.j?"":" ol-uncollapsible");c.appendChild(this.R);c.appendChild(d);ad.call(this,{element:c,render:a.render?
a.render:cd,target:a.target});this.G=!0;this.o={};this.l={};this.Y={}}u(bd,ad);
function cd(a){if(a=a.frameState){var b,c,d,e,f,g,h,l,m,p,n,q=a.layerStatesArray,r=pb({},a.attributions),v={},x={},y=a.viewState.projection;c=0;for(b=q.length;c<b;c++)if(g=q[c].layer.la())if(p=w(g).toString(),m=g.l)for(d=0,e=m.length;d<e;d++)if(h=m[d],l=w(h).toString(),!(l in r)){if(f=a.usedTiles[p]){var z=g.Ib(y);a:{n=void 0;var A,V,Pa=h,ra=z,La=y;if(Pa.a){for(n in f)if(n in Pa.a){var z=f[n],C;V=0;for(A=Pa.a[n].length;V<A;++V){C=Pa.a[n][V];if(va(C,z)){n=!0;break a}var Ma=cc(ra,kc(La),parseInt(n,
10)),xb=Ma.ba-Ma.da+1;if(z.da<Ma.da||z.ba>Ma.ba)if(va(C,new sa(Ca(z.da,xb),Ca(z.ba,xb),z.fa,z.ja))||z.ba-z.da+1>xb&&va(C,Ma)){n=!0;break a}}}n=!1}else n=!0}}else n=!1;n?(l in v&&delete v[l],n=h.b,n in x||(x[n]=!0,r[l]=h)):v[l]=h}b=[r,v];c=b[0];b=b[1];for(var Z in this.o)Z in c?(this.l[Z]||(this.o[Z].style.display="",this.l[Z]=!0),delete c[Z]):Z in b?(this.l[Z]&&(this.o[Z].style.display="none",delete this.l[Z]),delete b[Z]):(Zc(this.o[Z]),delete this.o[Z],delete this.l[Z]);for(Z in c)d=document.createElement("LI"),
d.innerHTML=c[Z].b,this.R.appendChild(d),this.o[Z]=d,this.l[Z]=!0;for(Z in b)d=document.createElement("LI"),d.innerHTML=b[Z].b,d.style.display="none",this.R.appendChild(d),this.o[Z]=d;Z=!sb(this.l)||!sb(a.logos);this.G!=Z&&(this.element.style.display=Z?"":"none",this.G=Z);Z&&sb(this.l)?this.element.classList.add("ol-logo-only"):this.element.classList.remove("ol-logo-only");var Ra;a=a.logos;Z=this.Y;for(Ra in Z)Ra in a||(Zc(Z[Ra]),delete Z[Ra]);for(var Cb in a)b=a[Cb],b instanceof HTMLElement&&(this.u.appendChild(b),
Z[Cb]=b),Cb in Z||(Ra=new Image,Ra.src=Cb,""===b?c=Ra:(c=document.createElement("a"),c.href=b,c.appendChild(Ra)),this.u.appendChild(c),Z[Cb]=c);this.u.style.display=sb(a)?"none":""}else this.G&&(this.element.style.display="none",this.G=!1)}k=bd.prototype;k.ym=function(a){a.preventDefault();dd(this)};function dd(a){a.element.classList.toggle("ol-collapsed");a.c?Yc(a.A,a.C):Yc(a.C,a.A);a.c=!a.c}k.xm=function(){return this.j};
k.Am=function(a){this.j!==a&&(this.j=a,this.element.classList.toggle("ol-uncollapsible"),!a&&this.c&&dd(this))};k.zm=function(a){this.j&&this.c!==a&&dd(this)};k.wm=function(){return this.c};function ed(a){return Math.pow(a,3)}function fd(a){return 1-ed(1-a)}function gd(a){return 3*a*a-2*a*a*a}function hd(a){return a};function id(a){a=a?a:{};var b=void 0!==a.className?a.className:"ol-rotate",c=void 0!==a.label?a.label:"\u21e7";this.c=null;"string"===typeof c?(this.c=document.createElement("span"),this.c.className="ol-compass",this.c.textContent=c):(this.c=c,this.c.classList.add("ol-compass"));var d=a.tipLabel?a.tipLabel:"Reset rotation",c=document.createElement("button");c.className=b+"-reset";c.setAttribute("type","button");c.title=d;c.appendChild(this.c);B(c,"click",id.prototype.A,this);d=document.createElement("div");
d.className=b+" ol-unselectable ol-control";d.appendChild(c);b=a.render?a.render:jd;this.j=a.resetNorth?a.resetNorth:void 0;ad.call(this,{element:d,render:b,target:a.target});this.o=void 0!==a.duration?a.duration:250;this.l=void 0!==a.autoHide?a.autoHide:!0;this.u=void 0;this.l&&this.element.classList.add("ol-hidden")}u(id,ad);
id.prototype.A=function(a){a.preventDefault();if(this.j)this.j();else if(a=this.a.$()){var b=a.Va();void 0!==b&&(0<this.o?(b%=2*Math.PI,a.animate({rotation:0,duration:this.o,easing:fd})):a.He(0))}};
function jd(a){if(a=a.frameState){a=a.viewState.rotation;if(a!=this.u){var b="rotate("+a+"rad)";if(this.l){var c=this.element.classList.contains("ol-hidden");c||a?c&&a&&this.element.classList.remove("ol-hidden"):this.element.classList.add("ol-hidden")}this.c.style.msTransform=b;this.c.style.webkitTransform=b;this.c.style.transform=b}this.u=a}};function kd(a){a=a?a:{};var b=void 0!==a.className?a.className:"ol-zoom",c=void 0!==a.delta?a.delta:1,d=void 0!==a.zoomInLabel?a.zoomInLabel:"+",e=void 0!==a.zoomOutLabel?a.zoomOutLabel:"\u2212",f=void 0!==a.zoomInTipLabel?a.zoomInTipLabel:"Zoom in",g=void 0!==a.zoomOutTipLabel?a.zoomOutTipLabel:"Zoom out",h=document.createElement("button");h.className=b+"-in";h.setAttribute("type","button");h.title=f;h.appendChild("string"===typeof d?document.createTextNode(d):d);B(h,"click",kd.prototype.l.bind(this,
c));d=document.createElement("button");d.className=b+"-out";d.setAttribute("type","button");d.title=g;d.appendChild("string"===typeof e?document.createTextNode(e):e);B(d,"click",kd.prototype.l.bind(this,-c));c=document.createElement("div");c.className=b+" ol-unselectable ol-control";c.appendChild(h);c.appendChild(d);ad.call(this,{element:c,target:a.target});this.c=void 0!==a.duration?a.duration:250}u(kd,ad);
kd.prototype.l=function(a,b){b.preventDefault();var c=this.a.$();if(c){var d=c.Ua();d&&(d=c.constrainResolution(d,a),0<this.c?(0<ld(c)[0]&&md(c),c.animate({resolution:d,duration:this.c,easing:fd})):c.Xc(d))}};function nd(a){a=a?a:{};var b=new D;(void 0!==a.zoom?a.zoom:1)&&b.push(new kd(a.zoomOptions));(void 0!==a.rotate?a.rotate:1)&&b.push(new id(a.rotateOptions));(void 0!==a.attribution?a.attribution:1)&&b.push(new bd(a.attributionOptions));return b};function od(a){a=a?a:{};this.c=void 0!==a.className?a.className:"ol-full-screen";var b=void 0!==a.label?a.label:"\u2922";this.j="string"===typeof b?document.createTextNode(b):b;b=void 0!==a.labelActive?a.labelActive:"\u00d7";this.o="string"===typeof b?document.createTextNode(b):b;var c=a.tipLabel?a.tipLabel:"Toggle full-screen",b=document.createElement("button");b.className=this.c+"-"+pd();b.setAttribute("type","button");b.title=c;b.appendChild(this.j);B(b,"click",this.C,this);c=document.createElement("div");
c.className=this.c+" ol-unselectable ol-control "+(qd()?"":"ol-unsupported");c.appendChild(b);ad.call(this,{element:c,target:a.target});this.A=void 0!==a.keys?a.keys:!1;this.l=a.source}u(od,ad);
od.prototype.C=function(a){a.preventDefault();qd()&&(a=this.a)&&(pd()?document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen&&document.webkitExitFullscreen():(a=this.l?"string"===typeof this.l?document.getElementById(this.l):this.l:a.Kc(),this.A?a.mozRequestFullScreenWithKeys?a.mozRequestFullScreenWithKeys():a.webkitRequestFullscreen?a.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):
rd(a):rd(a)))};od.prototype.u=function(){var a=this.element.firstElementChild,b=this.a;pd()?(a.className=this.c+"-true",Yc(this.o,this.j)):(a.className=this.c+"-false",Yc(this.j,this.o));b&&b.xd()};od.prototype.setMap=function(a){ad.prototype.setMap.call(this,a);a&&this.v.push(B(document,sd(),this.u,this))};
function qd(){var a=document.body;return!!(a.webkitRequestFullscreen||a.mozRequestFullScreen&&document.mozFullScreenEnabled||a.msRequestFullscreen&&document.msFullscreenEnabled||a.requestFullscreen&&document.fullscreenEnabled)}function pd(){return!!(document.webkitIsFullScreen||document.mozFullScreen||document.msFullscreenElement||document.fullscreenElement)}
function rd(a){a.requestFullscreen?a.requestFullscreen():a.msRequestFullscreen?a.msRequestFullscreen():a.mozRequestFullScreen?a.mozRequestFullScreen():a.webkitRequestFullscreen&&a.webkitRequestFullscreen()}var sd=function(){var a;return function(){if(!a){var b=document.body;b.webkitRequestFullscreen?a="webkitfullscreenchange":b.mozRequestFullScreen?a="mozfullscreenchange":b.msRequestFullscreen?a="MSFullscreenChange":b.requestFullscreen&&(a="fullscreenchange")}return a}}();function td(a){a=a?a:{};var b=document.createElement("DIV");b.className=void 0!==a.className?a.className:"ol-mouse-position";ad.call(this,{element:b,render:a.render?a.render:ud,target:a.target});B(this,Ic(vd),this.Bm,this);a.coordinateFormat&&this.Fi(a.coordinateFormat);a.projection&&this.Mh(Gb(a.projection));this.u=void 0!==a.undefinedHTML?a.undefinedHTML:"";this.o=b.innerHTML;this.j=this.l=this.c=null}u(td,ad);
function ud(a){a=a.frameState;a?this.c!=a.viewState.projection&&(this.c=a.viewState.projection,this.l=null):this.c=null;wd(this,this.j)}k=td.prototype;k.Bm=function(){this.l=null};k.ih=function(){return this.get(xd)};k.Lh=function(){return this.get(vd)};k.rl=function(a){this.j=this.a.te(a);wd(this,this.j)};k.sl=function(){wd(this,null);this.j=null};k.setMap=function(a){ad.prototype.setMap.call(this,a);a&&(a=a.c,this.v.push(B(a,"mousemove",this.rl,this),B(a,"mouseout",this.sl,this)))};
k.Fi=function(a){this.set(xd,a)};k.Mh=function(a){this.set(vd,a)};function wd(a,b){var c=a.u;if(b&&a.c){if(!a.l){var d=a.Lh();a.l=d?Fb(a.c,d):Vb}if(d=a.a.Za(b))a.l(d,d),c=(c=a.ih())?c(d):d.toString()}a.o&&c==a.o||(a.element.innerHTML=c,a.o=c)}var vd="projection",xd="coordinateFormat";function yd(a,b,c){Bc.call(this,a);this.map=b;this.frameState=void 0!==c?c:null}u(yd,Bc);function zd(a,b,c,d,e){yd.call(this,a,b,e);this.originalEvent=c;this.pixel=b.te(c);this.coordinate=b.Za(this.pixel);this.dragging=void 0!==d?d:!1}u(zd,yd);zd.prototype.preventDefault=function(){yd.prototype.preventDefault.call(this);this.originalEvent.preventDefault()};zd.prototype.stopPropagation=function(){yd.prototype.stopPropagation.call(this);this.originalEvent.stopPropagation()};var Ad={Xp:"singleclick",Mp:"click",Np:"dblclick",Qp:"pointerdrag",Tp:"pointermove",Pp:"pointerdown",Wp:"pointerup",Vp:"pointerover",Up:"pointerout",Rp:"pointerenter",Sp:"pointerleave",Op:"pointercancel"};function Bd(a,b,c,d,e){zd.call(this,a,b,c.b,d,e);this.b=c}u(Bd,zd);var Cd=["experimental-webgl","webgl","webkit-3d","moz-webgl"];function Dd(a,b){var c,d,e=Cd.length;for(d=0;d<e;++d)try{if(c=a.getContext(Cd[d],b))return c}catch(f){}return null};var Ed,Fd="undefined"!==typeof navigator?navigator.userAgent.toLowerCase():"",Gd=-1!==Fd.indexOf("firefox"),Hd=-1!==Fd.indexOf("safari")&&-1==Fd.indexOf("chrom"),Id=-1!==Fd.indexOf("webkit")&&-1==Fd.indexOf("edge"),Jd=-1!==Fd.indexOf("macintosh"),Kd=window.devicePixelRatio||1,Ld=!1,Md=function(){if(!("HTMLCanvasElement"in window))return!1;try{var a=document.createElement("CANVAS").getContext("2d");return a?(void 0!==a.setLineDash&&(Ld=!0),!0):!1}catch(b){return!1}}(),Nd="DeviceOrientationEvent"in
window,Od="geolocation"in navigator,Pd="ontouchstart"in window,Qd="PointerEvent"in window,Rd=!!navigator.msPointerEnabled,Sd=!1,Td,Ud=[];if("WebGLRenderingContext"in window)try{var Vd=Dd(document.createElement("CANVAS"),{failIfMajorPerformanceCaveat:!0});Vd&&(Sd=!0,Td=Vd.getParameter(Vd.MAX_TEXTURE_SIZE),Ud=Vd.getSupportedExtensions())}catch(a){}Ed=Sd;ca=Ud;ba=Td;function Wd(a,b){this.b=a;this.i=b};function Xd(a){Wd.call(this,a,{mousedown:this.Ml,mousemove:this.Nl,mouseup:this.Ql,mouseover:this.Pl,mouseout:this.Ol});this.a=a.f;this.f=[]}u(Xd,Wd);function Yd(a,b){for(var c=a.f,d=b.clientX,e=b.clientY,f=0,g=c.length,h;f<g&&(h=c[f]);f++){var l=Math.abs(e-h[1]);if(25>=Math.abs(d-h[0])&&25>=l)return!0}return!1}function Zd(a){var b=ae(a,a),c=b.preventDefault;b.preventDefault=function(){a.preventDefault();c()};b.pointerId=1;b.isPrimary=!0;b.pointerType="mouse";return b}k=Xd.prototype;
k.Ml=function(a){if(!Yd(this,a)){(1).toString()in this.a&&this.cancel(a);var b=Zd(a);this.a[(1).toString()]=a;be(this.b,"pointerdown",b,a)}};k.Nl=function(a){if(!Yd(this,a)){var b=Zd(a);be(this.b,"pointermove",b,a)}};k.Ql=function(a){if(!Yd(this,a)){var b=this.a[(1).toString()];b&&b.button===a.button&&(b=Zd(a),be(this.b,"pointerup",b,a),delete this.a[(1).toString()])}};k.Pl=function(a){if(!Yd(this,a)){var b=Zd(a);ce(this.b,b,a)}};k.Ol=function(a){if(!Yd(this,a)){var b=Zd(a);de(this.b,b,a)}};
k.cancel=function(a){var b=Zd(a);this.b.cancel(b,a);delete this.a[(1).toString()]};function ee(a){Wd.call(this,a,{MSPointerDown:this.Vl,MSPointerMove:this.Wl,MSPointerUp:this.Zl,MSPointerOut:this.Xl,MSPointerOver:this.Yl,MSPointerCancel:this.Ul,MSGotPointerCapture:this.Sl,MSLostPointerCapture:this.Tl});this.a=a.f;this.f=["","unavailable","touch","pen","mouse"]}u(ee,Wd);function fe(a,b){var c=b;"number"===typeof b.pointerType&&(c=ae(b,b),c.pointerType=a.f[b.pointerType]);return c}k=ee.prototype;
k.Vl=function(a){this.a[a.pointerId.toString()]=a;var b=fe(this,a);be(this.b,"pointerdown",b,a)};k.Wl=function(a){var b=fe(this,a);be(this.b,"pointermove",b,a)};k.Zl=function(a){var b=fe(this,a);be(this.b,"pointerup",b,a);delete this.a[a.pointerId.toString()]};k.Xl=function(a){var b=fe(this,a);de(this.b,b,a)};k.Yl=function(a){var b=fe(this,a);ce(this.b,b,a)};k.Ul=function(a){var b=fe(this,a);this.b.cancel(b,a);delete this.a[a.pointerId.toString()]};
k.Tl=function(a){this.b.b(new ge("lostpointercapture",a,a))};k.Sl=function(a){this.b.b(new ge("gotpointercapture",a,a))};function he(a){Wd.call(this,a,{pointerdown:this.xo,pointermove:this.yo,pointerup:this.Bo,pointerout:this.zo,pointerover:this.Ao,pointercancel:this.wo,gotpointercapture:this.al,lostpointercapture:this.Ll})}u(he,Wd);k=he.prototype;k.xo=function(a){ie(this.b,a)};k.yo=function(a){ie(this.b,a)};k.Bo=function(a){ie(this.b,a)};k.zo=function(a){ie(this.b,a)};k.Ao=function(a){ie(this.b,a)};k.wo=function(a){ie(this.b,a)};k.Ll=function(a){ie(this.b,a)};k.al=function(a){ie(this.b,a)};function ge(a,b,c){Bc.call(this,a);this.b=b;a=c?c:{};this.buttons=je(a);this.pressure=ke(a,this.buttons);this.bubbles="bubbles"in a?a.bubbles:!1;this.cancelable="cancelable"in a?a.cancelable:!1;this.view="view"in a?a.view:null;this.detail="detail"in a?a.detail:null;this.screenX="screenX"in a?a.screenX:0;this.screenY="screenY"in a?a.screenY:0;this.clientX="clientX"in a?a.clientX:0;this.clientY="clientY"in a?a.clientY:0;this.button="button"in a?a.button:0;this.relatedTarget="relatedTarget"in a?a.relatedTarget:
null;this.pointerId="pointerId"in a?a.pointerId:0;this.width="width"in a?a.width:0;this.height="height"in a?a.height:0;this.pointerType="pointerType"in a?a.pointerType:"";this.isPrimary="isPrimary"in a?a.isPrimary:!1;b.preventDefault&&(this.preventDefault=function(){b.preventDefault()})}u(ge,Bc);function je(a){if(a.buttons||le)a=a.buttons;else switch(a.which){case 1:a=1;break;case 2:a=4;break;case 3:a=2;break;default:a=0}return a}
function ke(a,b){var c=0;a.pressure?c=a.pressure:c=b?.5:0;return c}var le=!1;try{le=1===(new MouseEvent("click",{buttons:1})).buttons}catch(a){};function me(a,b){Wd.call(this,a,{touchstart:this.Dp,touchmove:this.Cp,touchend:this.Bp,touchcancel:this.Ap});this.a=a.f;this.l=b;this.f=void 0;this.g=0;this.c=void 0}u(me,Wd);k=me.prototype;k.Di=function(){this.g=0;this.c=void 0};
function ne(a,b,c){b=ae(b,c);b.pointerId=c.identifier+2;b.bubbles=!0;b.cancelable=!0;b.detail=a.g;b.button=0;b.buttons=1;b.width=c.webkitRadiusX||c.radiusX||0;b.height=c.webkitRadiusY||c.radiusY||0;b.pressure=c.webkitForce||c.force||.5;b.isPrimary=a.f===c.identifier;b.pointerType="touch";b.clientX=c.clientX;b.clientY=c.clientY;b.screenX=c.screenX;b.screenY=c.screenY;return b}
function oe(a,b,c){function d(){b.preventDefault()}var e=Array.prototype.slice.call(b.changedTouches),f=e.length,g,h;for(g=0;g<f;++g)h=ne(a,b,e[g]),h.preventDefault=d,c.call(a,b,h)}
k.Dp=function(a){var b=a.touches,c=Object.keys(this.a),d=c.length;if(d>=b.length){var e=[],f,g,h;for(f=0;f<d;++f){g=c[f];h=this.a[g];var l;if(!(l=1==g))a:{for(var m=b.length,p=0;p<m;p++)if(l=b[p],l.identifier===g-2){l=!0;break a}l=!1}l||e.push(h.out)}for(f=0;f<e.length;++f)this.zf(a,e[f])}b=a.changedTouches[0];c=Object.keys(this.a).length;if(!c||1===c&&(1).toString()in this.a)this.f=b.identifier,void 0!==this.c&&clearTimeout(this.c);pe(this,a);this.g++;oe(this,a,this.so)};
k.so=function(a,b){this.a[b.pointerId]={target:b.target,out:b,pi:b.target};var c=this.b;b.bubbles=!0;be(c,"pointerover",b,a);c=this.b;b.bubbles=!1;be(c,"pointerenter",b,a);be(this.b,"pointerdown",b,a)};k.Cp=function(a){a.preventDefault();oe(this,a,this.Rl)};
k.Rl=function(a,b){var c=this.a[b.pointerId];if(c){var d=c.out,e=c.pi;be(this.b,"pointermove",b,a);d&&e!==b.target&&(d.relatedTarget=b.target,b.relatedTarget=e,d.target=e,b.target?(de(this.b,d,a),ce(this.b,b,a)):(b.target=e,b.relatedTarget=null,this.zf(a,b)));c.out=b;c.pi=b.target}};k.Bp=function(a){pe(this,a);oe(this,a,this.Ep)};
k.Ep=function(a,b){be(this.b,"pointerup",b,a);this.b.out(b,a);qe(this.b,b,a);delete this.a[b.pointerId];b.isPrimary&&(this.f=void 0,this.c=setTimeout(this.Di.bind(this),200))};k.Ap=function(a){oe(this,a,this.zf)};k.zf=function(a,b){this.b.cancel(b,a);this.b.out(b,a);qe(this.b,b,a);delete this.a[b.pointerId];b.isPrimary&&(this.f=void 0,this.c=setTimeout(this.Di.bind(this),200))};
function pe(a,b){var c=a.l.f,d=b.changedTouches[0];if(a.f===d.identifier){var e=[d.clientX,d.clientY];c.push(e);setTimeout(function(){var a=c.indexOf(e);-1<a&&c.splice(a,1)},2500)}};function re(a){Dc.call(this);this.g=a;this.f={};this.i={};this.a=[];Qd?se(this,new he(this)):Rd?se(this,new ee(this)):(a=new Xd(this),se(this,a),Pd&&se(this,new me(this,a)));a=this.a.length;for(var b,c=0;c<a;c++)b=this.a[c],te(this,Object.keys(b.i))}u(re,Dc);function se(a,b){var c=Object.keys(b.i);c&&(c.forEach(function(a){var c=b.i[a];c&&(this.i[a]=c.bind(b))},a),a.a.push(b))}re.prototype.c=function(a){var b=this.i[a.type];b&&b(a)};
function te(a,b){b.forEach(function(a){B(this.g,a,this.c,this)},a)}function ve(a,b){b.forEach(function(a){xc(this.g,a,this.c,this)},a)}function ae(a,b){for(var c={},d,e=0,f=we.length;e<f;e++)d=we[e][0],c[d]=a[d]||b[d]||we[e][1];return c}function qe(a,b,c){b.bubbles=!1;be(a,"pointerleave",b,c)}re.prototype.out=function(a,b){a.bubbles=!0;be(this,"pointerout",a,b)};re.prototype.cancel=function(a,b){be(this,"pointercancel",a,b)};
function de(a,b,c){a.out(b,c);var d=b.target,e=b.relatedTarget;d&&e&&d.contains(e)||qe(a,b,c)}function ce(a,b,c){b.bubbles=!0;be(a,"pointerover",b,c);var d=b.target,e=b.relatedTarget;d&&e&&d.contains(e)||(b.bubbles=!1,be(a,"pointerenter",b,c))}function be(a,b,c,d){a.b(new ge(b,d,c))}function ie(a,b){a.b(new ge(b.type,b,b))}re.prototype.ra=function(){for(var a=this.a.length,b,c=0;c<a;c++)b=this.a[c],ve(this,Object.keys(b.i));Dc.prototype.ra.call(this)};
var we=[["bubbles",!1],["cancelable",!1],["view",null],["detail",null],["screenX",0],["screenY",0],["clientX",0],["clientY",0],["ctrlKey",!1],["altKey",!1],["shiftKey",!1],["metaKey",!1],["button",0],["relatedTarget",null],["buttons",0],["pointerId",0],["width",0],["height",0],["pressure",0],["tiltX",0],["tiltY",0],["pointerType",""],["hwTimestamp",0],["isPrimary",!1],["type",""],["target",null],["currentTarget",null],["which",0]];function xe(a){Dc.call(this);this.c=a;this.l=0;this.j=!1;this.i=[];this.f=null;a=this.c.c;this.u=0;this.I={};this.g=new re(a);this.a=null;this.o=B(this.g,"pointerdown",this.ul,this);this.v=B(this.g,"pointermove",this.$o,this)}u(xe,Dc);function ye(a,b){var c=new Bd("click",a.c,b);a.b(c);a.l?(clearTimeout(a.l),a.l=0,c=new Bd("dblclick",a.c,b),a.b(c)):a.l=setTimeout(function(){this.l=0;var a=new Bd("singleclick",this.c,b);this.b(a)}.bind(a),250)}
function ze(a,b){"pointerup"==b.type||"pointercancel"==b.type?delete a.I[b.pointerId]:"pointerdown"==b.type&&(a.I[b.pointerId]=!0);a.u=Object.keys(a.I).length}k=xe.prototype;k.vh=function(a){ze(this,a);var b=new Bd("pointerup",this.c,a);this.b(b);this.j||a.button||ye(this,this.f);this.u||(this.i.forEach(rc),this.i.length=0,this.j=!1,this.f=null,Ac(this.a),this.a=null)};
k.ul=function(a){ze(this,a);var b=new Bd("pointerdown",this.c,a);this.b(b);this.f=a;this.i.length||(this.a=new re(document),this.i.push(B(this.a,"pointermove",this.om,this),B(this.a,"pointerup",this.vh,this),B(this.g,"pointercancel",this.vh,this)))};k.om=function(a){if(a.clientX!=this.f.clientX||a.clientY!=this.f.clientY){this.j=!0;var b=new Bd("pointerdrag",this.c,a,this.j);this.b(b)}a.preventDefault()};
k.$o=function(a){this.b(new Bd(a.type,this.c,a,!(!this.f||a.clientX==this.f.clientX&&a.clientY==this.f.clientY)))};k.ra=function(){this.v&&(rc(this.v),this.v=null);this.o&&(rc(this.o),this.o=null);this.i.forEach(rc);this.i.length=0;this.a&&(Ac(this.a),this.a=null);this.g&&(Ac(this.g),this.g=null);Dc.prototype.ra.call(this)};function Ae(a,b){this.o=a;this.c=b;this.b=[];this.f=[];this.a={}}Ae.prototype.clear=function(){this.b.length=0;this.f.length=0;qb(this.a)};function Be(a){var b=a.b,c=a.f,d=b[0];1==b.length?(b.length=0,c.length=0):(b[0]=b.pop(),c[0]=c.pop(),Ce(a,0));b=a.c(d);delete a.a[b];return d}Ae.prototype.i=function(a){qa(!(this.c(a)in this.a),31);var b=this.o(a);return Infinity!=b?(this.b.push(a),this.f.push(b),this.a[this.c(a)]=!0,De(this,0,this.b.length-1),!0):!1};
function Ce(a,b){for(var c=a.b,d=a.f,e=c.length,f=c[b],g=d[b],h=b;b<e>>1;){var l=2*b+1,m=2*b+2,l=m<e&&d[m]<d[l]?m:l;c[b]=c[l];d[b]=d[l];b=l}c[b]=f;d[b]=g;De(a,h,b)}function De(a,b,c){var d=a.b;a=a.f;for(var e=d[c],f=a[c];c>b;){var g=c-1>>1;if(a[g]>f)d[c]=d[g],a[c]=a[g],c=g;else break}d[c]=e;a[c]=f}function Ee(a){var b=a.o,c=a.b,d=a.f,e=0,f=c.length,g,h,l;for(h=0;h<f;++h)g=c[h],l=b(g),Infinity==l?delete a.a[a.c(g)]:(d[e]=l,c[e++]=g);c.length=e;d.length=e;for(b=(a.b.length>>1)-1;0<=b;b--)Ce(a,b)};function Fe(a,b){Ae.call(this,function(b){return a.apply(null,b)},function(a){return a[0].ib()});this.v=b;this.l=0;this.g={}}u(Fe,Ae);Fe.prototype.i=function(a){var b=Ae.prototype.i.call(this,a);b&&B(a[0],"change",this.j,this);return b};Fe.prototype.j=function(a){a=a.target;var b=a.V();if(2===b||3===b||4===b||5===b)xc(a,"change",this.j,this),a=a.ib(),a in this.g&&(delete this.g[a],--this.l),this.v()};
function Ge(a,b,c){for(var d=0,e,f;a.l<b&&d<c&&0<a.b.length;)e=Be(a)[0],f=e.ib(),0!==e.V()||f in a.g||(a.g[f]=!0,++a.l,++d,e.load())};function He(a){return function(b,c,d){if(void 0!==b)return b=fa(a,b,d),b=wa(b+c,0,a.length-1),c=Math.floor(b),b!=c&&c<a.length-1?a[c]/Math.pow(a[c]/a[c+1],b-c):a[c]}}function Ie(a,b,c){return function(d,e,f){if(void 0!==d)return d=Math.max(Math.floor(Math.log(b/d)/Math.log(a)+(-f/2+.5))+e,0),void 0!==c&&(d=Math.min(d,c)),b/Math.pow(a,d)}};function Ke(a){if(void 0!==a)return 0}function Le(a,b){if(void 0!==a)return a+b}function Me(a){var b=2*Math.PI/a;return function(a,d){if(void 0!==a)return a=Math.floor((a+d)/b+.5)*b}}function Ne(){var a=Ba(5);return function(b,c){if(void 0!==b)return Math.abs(b+c)<=a?0:b+c}};function Oe(a,b){var c=void 0!==b?a.toFixed(b):""+a,d=c.indexOf("."),d=-1===d?c.length:d;return 2<d?c:Array(3-d).join("0")+c}function Pe(a){a=(""+a).split(".");for(var b=["1","3"],c=0;c<Math.max(a.length,b.length);c++){var d=parseInt(a[c]||"0",10),e=parseInt(b[c]||"0",10);if(d>e)return 1;if(e>d)return-1}return 0};function Qe(a,b){a[0]+=b[0];a[1]+=b[1];return a}function Re(a,b){var c=a[0],d=a[1],e=b[0],f=b[1],g=e[0],e=e[1],h=f[0],f=f[1],l=h-g,m=f-e,c=l||m?(l*(c-g)+m*(d-e))/(l*l+m*m||0):0;0>=c||(1<=c?(g=h,e=f):(g+=c*l,e+=c*m));return[g,e]}
function Se(a,b,c){a=Ca(a+180,360)-180;var d=Math.abs(3600*a);c=c||0;var e=Math.pow(10,c),f=Math.floor(d/3600),g=Math.floor((d-3600*f)/60),d=Math.ceil((d-3600*f-60*g)*e)/e;60<=d&&(d=0,g+=1);60<=g&&(g=0,f+=1);return f+"\u00b0 "+Oe(g)+"\u2032 "+Oe(d,c)+"\u2033 "+b.charAt(0>a?1:0)}function Te(a,b,c){return a?b.replace("{x}",a[0].toFixed(c)).replace("{y}",a[1].toFixed(c)):""}function Ue(a,b){for(var c=!0,d=a.length-1;0<=d;--d)if(a[d]!=b[d]){c=!1;break}return c}
function Ve(a,b){var c=Math.cos(b),d=Math.sin(b),e=a[1]*c+a[0]*d;a[0]=a[0]*c-a[1]*d;a[1]=e;return a}function We(a,b){a[0]*=b;a[1]*=b}function Xe(a,b){var c=a[0]-b[0],d=a[1]-b[1];return c*c+d*d}function Ye(a,b){return Math.sqrt(Xe(a,b))}function Ze(a,b){return Xe(a,Re(a,b))}function $e(a,b){return Te(a,"{x}, {y}",b)};function af(){return!0}function bf(){return!1};function cf(){Gc.call(this);this.o=Ia();this.v=-1;this.i={};this.j=this.g=0}u(cf,Gc);k=cf.prototype;k.Ab=function(a,b){var c=b?b:[NaN,NaN];this.Gb(a[0],a[1],c,Infinity);return c};k.sb=function(a){return this.Oc(a[0],a[1])};k.Oc=bf;k.D=function(a){this.v!=this.f&&(this.o=this.ne(this.o),this.v=this.f);var b=this.o;a?(a[0]=b[0],a[1]=b[1],a[2]=b[2],a[3]=b[3]):a=b;return a};k.Pb=function(a){return this.Qd(a*a)};k.tb=function(a,b){this.Dc(Ub(a,b));return this};function df(a,b,c,d,e,f){for(var g=f?f:[],h=0;b<c;b+=d){var l=a[b],m=a[b+1];g[h++]=e[0]*l+e[2]*m+e[4];g[h++]=e[1]*l+e[3]*m+e[5]}f&&g.length!=h&&(g.length=h);return g}function ef(a,b,c,d,e,f){var g=f?f:[],h=0,l,m;for(l=0;l<b;l+=c)for(g[h++]=a[l]+d,g[h++]=a[l+1]+e,m=l+2;m<l+c;++m)g[h++]=a[m];f&&g.length!=h&&(g.length=h);return g};function ff(){cf.call(this);this.ka="XY";this.a=2;this.B=null}u(ff,cf);function gf(a){var b;"XY"==a?b=2:"XYZ"==a||"XYM"==a?b=3:"XYZM"==a&&(b=4);return b}k=ff.prototype;k.Oc=bf;k.ne=function(a){return Xa(this.B,0,this.B.length,this.a,a)};k.bc=function(){return this.B.slice(0,this.a)};k.ha=function(){return this.B};k.cc=function(){return this.B.slice(this.B.length-this.a)};k.dc=function(){return this.ka};
k.Qd=function(a){this.j!=this.f&&(qb(this.i),this.g=0,this.j=this.f);if(0>a||this.g&&a<=this.g)return this;var b=a.toString();if(this.i.hasOwnProperty(b))return this.i[b];var c=this.kd(a);if(c.ha().length<this.B.length)return this.i[b]=c;this.g=a;return this};k.kd=function(){return this};k.sa=function(){return this.a};function hf(a,b,c){a.a=gf(b);a.ka=b;a.B=c}
function jf(a,b,c,d){if(b)c=gf(b);else{for(b=0;b<d;++b)if(c.length)c=c[0];else{a.ka="XY";a.a=2;return}c=c.length;var e;2==c?e="XY":3==c?e="XYZ":4==c&&(e="XYZM");b=e}a.ka=b;a.a=c}k.Dc=function(a){this.B&&(a(this.B,this.B,this.a),this.s())};
k.rotate=function(a,b){var c=this.ha();if(c){for(var d=c.length,e=this.sa(),f=c?c:[],g=Math.cos(a),h=Math.sin(a),l=b[0],m=b[1],p=0,n=0;n<d;n+=e){var q=c[n]-l,r=c[n+1]-m;f[p++]=l+q*g-r*h;f[p++]=m+q*h+r*g;for(q=n+2;q<n+e;++q)f[p++]=c[q]}c&&f.length!=p&&(f.length=p);this.s()}};
k.scale=function(a,b,c){var d=b;void 0===d&&(d=a);var e=c;e||(e=jb(this.D()));if(c=this.ha()){b=c.length;for(var f=this.sa(),g=c?c:[],h=e[0],e=e[1],l=0,m=0;m<b;m+=f){var p=c[m]-h,n=c[m+1]-e;g[l++]=h+a*p;g[l++]=e+d*n;for(p=m+2;p<m+f;++p)g[l++]=c[p]}c&&g.length!=l&&(g.length=l);this.s()}};k.translate=function(a,b){var c=this.ha();c&&(ef(c,c.length,this.sa(),a,b,c),this.s())};function kf(a,b,c,d){for(var e=0,f=a[c-d],g=a[c-d+1];b<c;b+=d)var h=a[b],l=a[b+1],e=e+(g*h-f*l),f=h,g=l;return e/2}function lf(a,b,c,d){var e=0,f,g;f=0;for(g=c.length;f<g;++f){var h=c[f],e=e+kf(a,b,h,d);b=h}return e};function mf(a,b,c,d,e,f,g){var h=a[b],l=a[b+1],m=a[c]-h,p=a[c+1]-l;if(m||p)if(f=((e-h)*m+(f-l)*p)/(m*m+p*p),1<f)b=c;else if(0<f){for(e=0;e<d;++e)g[e]=Da(a[b+e],a[c+e],f);g.length=d;return}for(e=0;e<d;++e)g[e]=a[b+e];g.length=d}function nf(a,b,c,d,e){var f=a[b],g=a[b+1];for(b+=d;b<c;b+=d){var h=a[b],l=a[b+1],f=Aa(f,g,h,l);f>e&&(e=f);f=h;g=l}return e}function of(a,b,c,d,e){var f,g;f=0;for(g=c.length;f<g;++f){var h=c[f];e=nf(a,b,h,d,e);b=h}return e}
function pf(a,b,c,d,e,f,g,h,l,m,p){if(b==c)return m;var n;if(!e){n=Aa(g,h,a[b],a[b+1]);if(n<m){for(p=0;p<d;++p)l[p]=a[b+p];l.length=d;return n}return m}for(var q=p?p:[NaN,NaN],r=b+d;r<c;)if(mf(a,r-d,r,d,g,h,q),n=Aa(g,h,q[0],q[1]),n<m){m=n;for(p=0;p<d;++p)l[p]=q[p];l.length=d;r+=d}else r+=d*Math.max((Math.sqrt(n)-Math.sqrt(m))/e|0,1);if(f&&(mf(a,c-d,b,d,g,h,q),n=Aa(g,h,q[0],q[1]),n<m)){m=n;for(p=0;p<d;++p)l[p]=q[p];l.length=d}return m}
function qf(a,b,c,d,e,f,g,h,l,m,p){p=p?p:[NaN,NaN];var n,q;n=0;for(q=c.length;n<q;++n){var r=c[n];m=pf(a,b,r,d,e,f,g,h,l,m,p);b=r}return m};function rf(a,b){var c=0,d,e;d=0;for(e=b.length;d<e;++d)a[c++]=b[d];return c}function sf(a,b,c,d){var e,f;e=0;for(f=c.length;e<f;++e){var g=c[e],h;for(h=0;h<d;++h)a[b++]=g[h]}return b}function tf(a,b,c,d,e){e=e?e:[];var f=0,g,h;g=0;for(h=c.length;g<h;++g)b=sf(a,b,c[g],d),e[f++]=b;e.length=f;return e};function uf(a,b,c,d,e){e=void 0!==e?e:[];for(var f=0;b<c;b+=d)e[f++]=a.slice(b,b+d);e.length=f;return e}function vf(a,b,c,d,e){e=void 0!==e?e:[];var f=0,g,h;g=0;for(h=c.length;g<h;++g){var l=c[g];e[f++]=uf(a,b,l,d,e[f]);b=l}e.length=f;return e};function wf(a,b,c,d,e,f,g){var h=(c-b)/d;if(3>h){for(;b<c;b+=d)f[g++]=a[b],f[g++]=a[b+1];return g}var l=Array(h);l[0]=1;l[h-1]=1;c=[b,c-d];for(var m=0,p;0<c.length;){var n=c.pop(),q=c.pop(),r=0,v=a[q],x=a[q+1],y=a[n],z=a[n+1];for(p=q+d;p<n;p+=d){var A=za(a[p],a[p+1],v,x,y,z);A>r&&(m=p,r=A)}r>e&&(l[(m-b)/d]=1,q+d<m&&c.push(q,m),m+d<n&&c.push(m,n))}for(p=0;p<h;++p)l[p]&&(f[g++]=a[b+p*d],f[g++]=a[b+p*d+1]);return g}
function xf(a,b,c,d,e,f,g,h){var l,m;l=0;for(m=c.length;l<m;++l){var p=c[l];a:{var n,q=a,r=p,v=d,x=e,y=f,z=g;if(b!=r){var A=x*Math.round(q[b]/x),V=x*Math.round(q[b+1]/x);b+=v;y[z++]=A;y[z++]=V;do if(n=x*Math.round(q[b]/x),g=x*Math.round(q[b+1]/x),b+=v,b==r){y[z++]=n;y[z++]=g;g=z;break a}while(n==A&&g==V);for(;b<r;){var Pa,ra;Pa=x*Math.round(q[b]/x);ra=x*Math.round(q[b+1]/x);b+=v;if(Pa!=n||ra!=g){var La=n-A,C=g-V,Ma=Pa-A,xb=ra-V;La*xb==C*Ma&&(0>La&&Ma<La||La==Ma||0<La&&Ma>La)&&(0>C&&xb<C||C==xb||0<
C&&xb>C)||(y[z++]=n,y[z++]=g,A=n,V=g);n=Pa;g=ra}}y[z++]=n;y[z++]=g}g=z}h.push(g);b=p}return g};function yf(a,b){ff.call(this);this.c=this.l=-1;this.pa(a,b)}u(yf,ff);k=yf.prototype;k.clone=function(){var a=new yf(null);zf(a,this.ka,this.B.slice());return a};k.Gb=function(a,b,c,d){if(d<Oa(this.D(),a,b))return d;this.c!=this.f&&(this.l=Math.sqrt(nf(this.B,0,this.B.length,this.a,0)),this.c=this.f);return pf(this.B,0,this.B.length,t