Skip to content

Instantly share code, notes, and snippets.

@pgiraud
Last active August 29, 2015 13:56
Show Gist options
  • Select an option

  • Save pgiraud/9207024 to your computer and use it in GitHub Desktop.

Select an option

Save pgiraud/9207024 to your computer and use it in GitHub Desktop.
OL3 Mobile orientation
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
<title>Mobile Geolocation Tracking with Orientation</title>
<style type="text/css">
html, body, .map {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
}
#info {
position: absolute;
font-size: 0.7em;
top: 10px;
right: 10px;
background-color: lightgrey;
padding: 4px;
}
.button {
position: absolute;
bottom: 40px;
left: 10px;
}
</style>
<link href="ol.css" rel='stylesheet' type='text/css' />
</head>
<body>
<div id="map" class="map"></div>
<div id="info"></div>
<img id="geolocation_marker" src="geolocation_marker_heading.png" />
<img id="camptocamp_marker" src="camptocamp.png" />
<div class="button">
<button id="geolocate">Geolocate Me!</button>
<button id="simulate">Simulate</button>
</div>
<script src="ol.js" type="text/javascript"></script>
<script src="index.js" type="text/javascript"></script>
<script src="simulationData.js" type="text/javascript"></script>
</body>
</html>
var c2cPostition = ol.proj.transform([5.8713, 45.6452], 'EPSG:4326', 'EPSG:3857');
// creating the view
var view = new ol.View2D({
center: c2cPostition,
zoom: 19
});
// creating the map
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})
],
target: 'map',
view: view
});
// Geolocation marker
var markerEl = document.getElementById('geolocation_marker');
var marker = new ol.Overlay({
positioning: 'center-center',
element: markerEl,
stopEvent: false
});
map.addOverlay(marker);
// LineString to store the different geolocation positions. This LineString
// is time aware.
// The Z dimension is actually used to store the rotation (heading).
var positions = new ol.geom.LineString([], "XYZM");
// Geolocation Control
var geolocation = new ol.Geolocation({
trackingOptions: {
maximumAge: 10000,
enableHighAccuracy: true,
timeout: 600000
}
});
geolocation.bindTo('projection', view);
var deltaMean = 500; // the geolocation sampling period mean in ms
// Listen to position changes
geolocation.on('change:position', function(evt) {
var position = geolocation.getPosition(),
accuracy = geolocation.getAccuracy(),
heading = geolocation.getHeading() || 0,
speed = geolocation.getSpeed() || 0,
m = Date.now();
addPosition(position, heading, m, speed);
var coords = positions.getCoordinates(),
len = coords.length;
if (len >= 2) {
deltaMean = (coords[len - 1][3] - coords[0][3]) / (len - 1);
}
var html = [
"Position: " + position[0].toFixed(2) + ', ' + position[1].toFixed(2),
"Accuracy: " + accuracy,
"Heading: " + Math.round(radToDeg(heading)) + "°",
"Speed: " + (speed * 3.6).toFixed(1) + " km/h",
"Delta: " + Math.round(deltaMean) + "ms"
].join('<br />');
document.getElementById('info').innerHTML = html;
});
geolocation.on('error', function() {
alert("geolocation error");
// FIXME we should remove the coordinates in positions
});
var π = Math.PI;
// convert radians to degrees
function radToDeg(rad) {
return rad * 360 / (π * 2);
}
// convert degrees to radians
function degToRad(deg) {
return deg * π * 2 / 360;
}
function addPosition(position, heading, m, speed) {
var x = position[0],
y = position[1],
fCoords = positions.getCoordinates(),
previous = fCoords[fCoords.length - 1],
prevHeading = previous && previous[2];
if (prevHeading) {
// modulo for negative values
function mod(n) {
return ((n % (2 * π)) + (2 * π)) % (2 * π);
}
var headingDiff = heading - mod(prevHeading);
if (Math.abs(headingDiff) > π) { // force the rotation change to be less than 180°
var sign = (headingDiff >= 0) ? 1 : -1;
headingDiff = - sign * (2 * π - Math.abs(headingDiff));
}
heading = prevHeading + headingDiff;
}
positions.appendCoordinate([x, y, heading, m]);
positions.setCoordinates(positions.getCoordinates().slice(-20)); // only keep the 20 last coordinates
positions.dispatchChangeEvent(); // Because we modified flatCoordinates directly
// FIXME use speed instead
if (heading && speed) {
markerEl.src = "geolocation_marker_heading.png";
} else {
markerEl.src = "geolocation_marker.png";
}
}
var previousM = 0;
// change center and rotation before render
map.beforeRender(function(map, frameState) {
if (frameState !== null) {
var m = frameState.time - deltaMean * 1.5; // use sampling period to get a smooth transition
m = Math.max(m, previousM);
previousM = m;
var c = positions.getCoordinateAtM(m, true); // interpolate position along positions LineString
var view = frameState.view2DState;
if (c) {
view.center = getCenterWithHeading(c, -c[2], view.resolution);
view.rotation = -c[2];
marker.setPosition(c);
}
}
return true; // Force animation to continue
});
// recenters the view by putting the given coordinates at 3/4 from the top or
// the screen
function getCenterWithHeading(position, rotation, resolution) {
var size = map.getSize(),
width = size[0],
height = size[1];
return [
position[0] - Math.sin(rotation) * height * resolution * 1/4,
position[1] + Math.cos(rotation) * height * resolution * 1/4
];
}
// postcompose callback
function render() {
map.render();
}
// geolocate device
var geolocateBtn = document.getElementById('geolocate');
geolocateBtn.addEventListener('click', function() {
geolocation.setTracking(true); // Start position tracking
map.on('postcompose', render);
map.render();
disableButtons();
});
// simulate device move
var simulateBtn = document.getElementById('simulate');
simulateBtn.addEventListener('click', function() {
var coordinates = simulationData;
var first = coordinates.shift();
simulatePositionChange(first);
var prevDate = first.timestamp;
function geolocate() {
var position = coordinates.shift();
if (!position) {
return;
}
var newDate = position.timestamp;
simulatePositionChange(position);
window.setTimeout(function() {
prevDate = newDate;
geolocate();
}, (newDate - prevDate) / 2);
}
geolocate();
map.on('postcompose', render);
map.render();
disableButtons();
});
function simulatePositionChange(position) {
var coords = position.coords;
geolocation.set('accuracy', coords.accuracy);
geolocation.set('heading', degToRad(coords.heading));
var position_ = [coords.longitude, coords.latitude];
var projectedPosition = ol.proj.transform(position_, 'EPSG:4326',
'EPSG:3857');
geolocation.set('position', projectedPosition);
geolocation.set('speed', coords.speed);
}
function disableButtons() {
geolocateBtn.disabled = "disabled";
simulateBtn.disabled = "disabled";
}
// Camptocamp marker
var c2c = new ol.Overlay({
position: c2cPostition,
positioning: 'center-center',
element: document.getElementById('camptocamp_marker'),
stopEvent: false
});
map.addOverlay(c2c);
.ol-attribution{position:absolute;text-align:right;bottom:0;right:0;padding:6px;color:#000;color:rgba(238,238,238,1);background:rgba(0,60,136,0.3)}.ol-attribution a{text-decoration:none;color:#7b98bc;color:rgba(255,255,255,1)}.ol-attribution ul{margin:0;padding:0;font-size:10px;line-height:12px}.ol-attribution li{display:inline;list-style:none;line-height:inherit}.ol-attribution li:not(:last-child):after{content:"\002003"}.ol-attribution-bing-tos{float:right;padding-top:2px;white-space:nowrap}.ol-logo{bottom:0;left:0;padding:2px;position:absolute}.ol-logo ul{margin:0;padding:0}.ol-logo ul li{display:inline;list-style:none}.ol-mouse-position{top:8px;right:8px;position:absolute}.ol-scale-line{background:#95b9e6;background:rgba(0,60,136,0.3);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid #eee;border-top:none;color:#eee;font-size:10px;text-align:center;margin:1px;padding:0 2px}.ol-unsupported{display:none}.ol-viewport .ol-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.ol-zoom,.ol-zoom-extent,.ol-full-screen{position:absolute;background-color:#eee;background-color:rgba(255,255,255,0.4);border-radius:4px;padding:2px}.ol-zoom:hover,.ol-zoom-extent:hover,.ol-full-screen:hover{background-color:rgba(255,255,255,0.6)}.ol-zoom{top:.5em;left:.5em}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{right:.5em;top:.5em}@media print{.ol-zoom,.ol-zoom-extent,.ol-full-screen{display:none}}.ol-zoom button,.ol-zoom-extent button,.ol-full-screen button{display:block;margin:1px;padding:0;color:white;font-size:1.14em;font-weight:bold;text-decoration:none;text-align:center;height:1.375em;width:1.375em;line-height:.4em;background-color:#7b98bc;background-color:rgba(0,60,136,0.5);border:none}.ol-zoom button::-moz-focus-inner,.ol-zoom-extent button::-moz-focus-inner,.ol-full-screen button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-touch .ol-zoom button,.ol-touch .ol-full-screen button,.ol-touch .ol-zoom-extent button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-zoom button:hover,.ol-zoom button:focus,.ol-zoom-extent button:hover,.ol-zoom-extent button:focus,.ol-full-screen button:hover,.ol-full-screen button:focus{text-decoration:none;background-color:#4c6079;background-color:rgba(0,60,136,0.7)}.ol-zoom-extent button:after{content:"E"}.ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom-out{border-radius:0 0 2px 2px}button.ol-full-screen-false:after{content:"\002194"}button.ol-full-screen-true:after{content:"\0000d7"}.ol-has-tooltip [role=tooltip]{position:absolute;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden;font-weight:normal;font-size:14px;text-shadow:0 0 2px #fff}.ol-has-tooltip:hover [role=tooltip],.ol-has-tooltip:focus [role=tooltip]{-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;clip:auto;padding:0 .4em;font-size:.8em;height:1.2em;width:auto;line-height:1.2em;z-index:1100;max-height:100px;white-space:nowrap;display:inline-block;background:#fff;background:rgba(255,255,255,0.6);color:#000;border:3px solid rgba(255,255,255,0);border-left-width:0;border-radius:0 4px 4px 0;bottom:.3em;left:2.2em}.ol-touch .ol-has-tooltip:hover [role=tooltip],.ol-touch .ol-has-tooltip:focus [role=tooltip]{display:none}.ol-zoom .ol-has-tooltip:hover [role=tooltip],.ol-zoom .ol-has-tooltip:focus [role=tooltip]{bottom:1.1em}.ol-full-screen .ol-has-tooltip:hover [role=tooltip],.ol-full-screen .ol-has-tooltip:focus [role=tooltip]{right:2.2em;left:auto;border-radius:4px 0 0 4px}.ol-zoomslider{position:absolute;top:67px;left:8px;background:#eee;background:rgba(255,255,255,0.4);border-radius:4px;width:28px;height:200px;outline:none;overflow:hidden;padding:0;margin:0}.ol-zoomslider-thumb{position:absolute;display:block;padding:0;margin:2px;background:#7b98bc;background:rgba(0,60,136,0.5);border-radius:2px;outline:none;overflow:hidden;height:20px;width:24px}.ol-zoom-extent button,.ol-attribution,.ol-full-screen button,.ol-scale-line-inner,.ol-zoom button,.ol-has-tooltip [role=tooltip]{font-family:'Lucida Grande',Verdana,Geneva,Lucida,Arial,Helvetica,sans-serif}
// OpenLayers 3. see http://ol3js.org/
(function(){function ba(){return function(){}}function k(a){return function(){return this[a]}}function ca(a){return function(){return a}}var l,da=da||{},s=this;function ea(){}function fa(a){a.Fa=function(){return a.Sd?a.Sd:a.Sd=new a}}
function ga(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function t(a){return void 0!==a}function ha(a){return null===a}function ja(a){return"array"==ga(a)}function ka(a){var b=ga(a);return"array"==b||"object"==b&&"number"==typeof a.length}function la(a){return"string"==typeof a}function ma(a){return"number"==typeof a}function na(a){return"function"==ga(a)}function oa(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function v(a){return a[pa]||(a[pa]=++sa)}
var pa="closure_uid_"+(1E9*Math.random()>>>0),sa=0;function ta(a,b,c){return a.call.apply(a.bind,arguments)}function va(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}}
function B(a,b,c){B=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?ta:va;return B.apply(null,arguments)}function wa(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=Array.prototype.slice.call(arguments);b.unshift.apply(b,c);return a.apply(this,b)}}var xa=Date.now||function(){return+new Date};
function C(a,b){var c=a.split("."),d=s;c[0]in d||!d.execScript||d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());)c.length||void 0===b?d=d[e]?d[e]:d[e]={}:d[e]=b}function E(a,b){function c(){}c.prototype=b.prototype;a.D=b.prototype;a.prototype=new c};function ya(a){Error.captureStackTrace?Error.captureStackTrace(this,ya):this.stack=Error().stack||"";a&&(this.message=String(a))}E(ya,Error);ya.prototype.name="CustomError";function za(a,b){for(var c=a.split("%s"),d="",e=Array.prototype.slice.call(arguments,1);e.length&&1<c.length;)d+=c.shift()+e.shift();return d+c.join("%s")}function Aa(a){return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")}function Ba(a){if(!Ca.test(a))return a;-1!=a.indexOf("\x26")&&(a=a.replace(Da,"\x26amp;"));-1!=a.indexOf("\x3c")&&(a=a.replace(Ea,"\x26lt;"));-1!=a.indexOf("\x3e")&&(a=a.replace(Fa,"\x26gt;"));-1!=a.indexOf('"')&&(a=a.replace(Ga,"\x26quot;"));return a}
var Da=/&/g,Ea=/</g,Fa=/>/g,Ga=/\"/g,Ca=/[&<>\"]/;function Ha(a){a=t(void 0)?a.toFixed(void 0):String(a);var b=a.indexOf(".");-1==b&&(b=a.length);b=Math.max(0,2-b);return Array(b+1).join("0")+a}
function Ia(a,b){for(var c=0,d=Aa(String(a)).split("."),e=Aa(String(b)).split("."),f=Math.max(d.length,e.length),g=0;0==c&&g<f;g++){var h=d[g]||"",m=e[g]||"",n=RegExp("(\\d*)(\\D*)","g"),p=RegExp("(\\d*)(\\D*)","g");do{var r=n.exec(h)||["","",""],q=p.exec(m)||["","",""];if(0==r[0].length&&0==q[0].length)break;c=((0==r[1].length?0:parseInt(r[1],10))<(0==q[1].length?0:parseInt(q[1],10))?-1:(0==r[1].length?0:parseInt(r[1],10))>(0==q[1].length?0:parseInt(q[1],10))?1:0)||((0==r[2].length)<(0==q[2].length)?
-1:(0==r[2].length)>(0==q[2].length)?1:0)||(r[2]<q[2]?-1:r[2]>q[2]?1:0)}while(0==c)}return c};var Ja=Array.prototype,Ka=Ja.indexOf?function(a,b,c){return Ja.indexOf.call(a,b,c)}:function(a,b,c){c=null==c?0:0>c?Math.max(0,a.length+c):c;if(la(a))return la(b)&&1==b.length?a.indexOf(b,c):-1;for(;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},La=Ja.forEach?function(a,b,c){Ja.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=la(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)},Ma=Ja.map?function(a,b,c){return Ja.map.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=Array(d),
f=la(a)?a.split(""):a,g=0;g<d;g++)g in f&&(e[g]=b.call(c,f[g],g,a));return e},Na=Ja.some?function(a,b,c){return Ja.some.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=la(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&b.call(c,e[f],f,a))return!0;return!1};function Oa(a,b){var c=Pa(a,b,void 0);return 0>c?null:la(a)?a.charAt(c):a[c]}function Pa(a,b,c){for(var d=a.length,e=la(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&b.call(c,e[f],f,a))return f;return-1}
function Qa(a,b){var c=Ka(a,b),d;(d=0<=c)&&Ja.splice.call(a,c,1);return d}function Ra(a){return Ja.concat.apply(Ja,arguments)}function Sa(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]}function Ta(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c],e;if(ja(d)||(e=ka(d))&&Object.prototype.hasOwnProperty.call(d,"callee"))a.push.apply(a,d);else if(e)for(var f=a.length,g=d.length,h=0;h<g;h++)a[f+h]=d[h];else a.push(d)}}
function Ua(a,b,c,d){Ja.splice.apply(a,Va(arguments,1))}function Va(a,b,c){return 2>=arguments.length?Ja.slice.call(a,b):Ja.slice.call(a,b,c)}function Wa(a,b){Ja.sort.call(a,b||Xa)}function Ya(a,b){if(!ka(a)||!ka(b)||a.length!=b.length)return!1;for(var c=a.length,d=Za,e=0;e<c;e++)if(!d(a[e],b[e]))return!1;return!0}function Xa(a,b){return a>b?1:a<b?-1:0}function Za(a,b){return a===b}
function $a(a){for(var b=[],c=0;c<arguments.length;c++){var d=arguments[c];ja(d)?b.push.apply(b,$a.apply(null,d)):b.push(d)}return b};function ab(a,b,c){this.a=a;this.x=b;this.y=c}function bb(a,b,c,d){return t(d)?(d.a=a,d.x=b,d.y=c,d):new ab(a,b,c)}function cb(a,b,c){return a+"/"+b+"/"+c}ab.prototype.c=function(a){return t(a)?(a[0]=this.a,a[1]=this.x,a[2]=this.y,a):[this.a,this.x,this.y]};function db(a){var b=Array(a.a),c=1<<a.a-1,d,e;for(d=0;d<a.a;++d)e=48,a.x&c&&(e+=1),a.y&c&&(e+=2),b[d]=String.fromCharCode(e),c>>=1;return b.join("")}ab.prototype.toString=function(){return cb(this.a,this.x,this.y)};function eb(a,b,c,d){this.a=a;this.d=b;this.b=c;this.c=d}function fb(a,b,c,d,e){return t(e)?(e.a=a,e.d=b,e.b=c,e.c=d,e):new eb(a,b,c,d)}eb.prototype.contains=function(a){return this.a<=a.x&&a.x<=this.d&&this.b<=a.y&&a.y<=this.c};function gb(a){this.c=a.html;this.a=t(a.tileRanges)?a.tileRanges:null};var hb,ib,jb,kb,lb,mb,nb;function pb(){return s.navigator?s.navigator.userAgent:null}function qb(){return s.navigator}kb=jb=ib=hb=!1;var rb;if(rb=pb()){var sb=qb();hb=0==rb.lastIndexOf("Opera",0);ib=!hb&&(-1!=rb.indexOf("MSIE")||-1!=rb.indexOf("Trident"));jb=!hb&&-1!=rb.indexOf("WebKit");kb=!hb&&!jb&&!ib&&"Gecko"==sb.product}var tb=hb,F=ib,ub=kb,vb=jb,wb,xb=qb();wb=xb&&xb.platform||"";lb=-1!=wb.indexOf("Mac");mb=-1!=wb.indexOf("Win");nb=-1!=wb.indexOf("Linux");
var yb=!!qb()&&-1!=(qb().appVersion||"").indexOf("X11");function Ab(){var a=s.document;return a?a.documentMode:void 0}var Bb;a:{var Cb="",Db;if(tb&&s.opera)var Eb=s.opera.version,Cb="function"==typeof Eb?Eb():Eb;else if(ub?Db=/rv\:([^\);]+)(\)|;)/:F?Db=/\b(?:MSIE|rv)\s+([^\);]+)(\)|;)/:vb&&(Db=/WebKit\/(\S+)/),Db)var Fb=Db.exec(pb()),Cb=Fb?Fb[1]:"";if(F){var Gb=Ab();if(Gb>parseFloat(Cb)){Bb=String(Gb);break a}}Bb=Cb}var Hb={};function Ib(a){return Hb[a]||(Hb[a]=0<=Ia(Bb,a))}
var Jb=s.document,Kb=Jb&&F?Ab()||("CSS1Compat"==Jb.compatMode?parseInt(Bb,10):5):void 0;var Lb,Mb=!F||F&&9<=Kb;!ub&&!F||F&&F&&9<=Kb||ub&&Ib("1.9.1");F&&Ib("9");function Nb(a){a=a.className;return la(a)&&a.match(/\S+/g)||[]}function Ob(a,b){for(var c=Nb(a),d=Va(arguments,1),e=c.length+d.length,f=c,g=0;g<d.length;g++)0<=Ka(f,d[g])||f.push(d[g]);a.className=c.join(" ");return c.length==e}function Pb(a,b,c){for(var d=Nb(a),e=!1,f=0;f<d.length;f++)d[f]==b&&(Ua(d,f--,1),e=!0);e&&(d.push(c),a.className=d.join(" "))};function Qb(a,b,c){return Math.min(Math.max(a,b),c)}function Rb(a,b){var c=a%b;return 0>c*b?c+b:c}function Sb(a){return a*Math.PI/180};function Tb(a,b){this.x=t(a)?a:0;this.y=t(b)?b:0}l=Tb.prototype;l.I=function(){return new Tb(this.x,this.y)};l.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};l.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};l.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this};l.scale=function(a,b){var c=ma(b)?b:a;this.x*=a;this.y*=c;return this};function Vb(a,b){this.width=a;this.height=b}l=Vb.prototype;l.I=function(){return new Vb(this.width,this.height)};l.Y=function(){return!(this.width*this.height)};l.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};l.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};l.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};
l.scale=function(a,b){var c=ma(b)?b:a;this.width*=a;this.height*=c;return this};function Wb(a,b,c){for(var d in a)b.call(c,a[d],d,a)}function Xb(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return!0;return!1}function Yb(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b}function Zb(a){var b=[],c=0,d;for(d in a)b[c++]=d;return b}function $b(a){for(var b in a)return!1;return!0}function ac(a){for(var b in a)delete a[b]}function bc(a,b){b in a&&delete a[b]}function G(a,b,c){return b in a?a[b]:c}function cc(a,b){var c=[];return b in a?a[b]:a[b]=c}
function dc(a){var b={},c;for(c in a)b[c]=a[c];return b}var ec="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");function fc(a,b){for(var c,d,e=1;e<arguments.length;e++){d=arguments[e];for(c in d)a[c]=d[c];for(var f=0;f<ec.length;f++)c=ec[f],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}};function gc(a){return a?new hc(ic(a)):Lb||(Lb=new hc)}function jc(a){return la(a)?document.getElementById(a):a}function kc(a,b){Wb(b,function(b,d){"style"==d?a.style.cssText=b:"class"==d?a.className=b:"for"==d?a.htmlFor=b:d in lc?a.setAttribute(lc[d],b):0==d.lastIndexOf("aria-",0)||0==d.lastIndexOf("data-",0)?a.setAttribute(d,b):a[d]=b})}
var lc={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"};function mc(a){a=a.document.documentElement;return new Vb(a.clientWidth,a.clientHeight)}
function nc(a,b,c){var d=arguments,e=document,f=d[0],g=d[1];if(!Mb&&g&&(g.name||g.type)){f=["\x3c",f];g.name&&f.push(' name\x3d"',Ba(g.name),'"');if(g.type){f.push(' type\x3d"',Ba(g.type),'"');var h={};fc(h,g);delete h.type;g=h}f.push("\x3e");f=f.join("")}f=e.createElement(f);g&&(la(g)?f.className=g:ja(g)?Ob.apply(null,[f].concat(g)):kc(f,g));2<d.length&&oc(e,f,d,2);return f}
function oc(a,b,c,d){function e(c){c&&b.appendChild(la(c)?a.createTextNode(c):c)}for(;d<c.length;d++){var f=c[d];!ka(f)||oa(f)&&0<f.nodeType?e(f):La(pc(f)?Sa(f):f,e)}}function qc(a){return document.createElement(a)}function rc(a,b){oc(ic(a),a,arguments,1)}function sc(a){for(var b;b=a.firstChild;)a.removeChild(b)}function tc(a,b){b.parentNode&&b.parentNode.insertBefore(a,b.nextSibling)}function uc(a,b,c){a.insertBefore(b,a.childNodes[c]||null)}
function vc(a){a&&a.parentNode&&a.parentNode.removeChild(a)}function wc(a){if(void 0!=a.firstElementChild)a=a.firstElementChild;else for(a=a.firstChild;a&&1!=a.nodeType;)a=a.nextSibling;return a}function xc(a,b){if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||Boolean(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a}function ic(a){return 9==a.nodeType?a:a.ownerDocument||a.document}
function pc(a){if(a&&"number"==typeof a.length){if(oa(a))return"function"==typeof a.item||"string"==typeof a.item;if(na(a))return"function"==typeof a.item}return!1}function hc(a){this.a=a||s.document||document}function yc(a){var b=a.a;a=vb?b.body:b.documentElement;b=b.parentWindow||b.defaultView;return F&&Ib("10")&&b.pageYOffset!=a.scrollTop?new Tb(a.scrollLeft,a.scrollTop):new Tb(b.pageXOffset||a.scrollLeft,b.pageYOffset||a.scrollTop)}hc.prototype.appendChild=function(a,b){a.appendChild(b)};
hc.prototype.contains=xc;var zc=["experimental-webgl","webgl","webkit-3d","moz-webgl"];function Ac(a,b){var c,d,e=zc.length;for(d=0;d<e;++d)try{if(c=a.getContext(zc[d],b),null!==c)return c}catch(f){}return null};var Bc={},Cc=F&&!Ib("9.0")&&""!==Bb;Bc.pd=s.devicePixelRatio||1;Bc.qd="ArrayBuffer"in s;Bc.Xb=!1;Bc.rd=function(){if(!("HTMLCanvasElement"in s))return!1;try{var a=qc("CANVAS").getContext("2d");if(null===a)return!1;t(a.setLineDash)&&(Bc.Xb=!0);return!0}catch(b){return!1}}();Bc.sd="DeviceOrientationEvent"in s;Bc.ze=!0;Bc.td="geolocation"in s.navigator;Bc.ud=s.document&&"ontouchstart"in s.document.documentElement||!!s.navigator.msPointerEnabled;
Bc.vd=function(){if(!("WebGLRenderingContext"in s))return!1;try{var a=qc("CANVAS");return!ha(Ac(a,{Te:!0}))}catch(b){return!1}}();function Dc(){0!=Ec&&(this.ki=Error().stack,Fc[v(this)]=this)}var Ec=0,Fc={};Dc.prototype.S=!1;Dc.prototype.Fb=function(){if(!this.S&&(this.S=!0,this.w(),0!=Ec)){var a=v(this);delete Fc[a]}};function Gc(a,b){var c=wa(Hc,b);a.P||(a.P=[]);a.P.push(B(c,void 0))}Dc.prototype.w=function(){if(this.P)for(;this.P.length;)this.P.shift()()};function Hc(a){a&&"function"==typeof a.Fb&&a.Fb()};function Ic(a,b){this.type=a;this.c=this.target=b}l=Ic.prototype;l.Fb=ba();l.Ka=!1;l.Df=!1;l.me=!0;l.Aa=function(){this.Ka=!0};l.L=function(){this.Df=!0;this.me=!1};function Jc(a){a.Aa()}function Kc(a){a.L()};var Lc=!F||F&&9<=Kb,Mc=!F||F&&9<=Kb,Nc=F&&!Ib("9");!vb||Ib("528");ub&&Ib("1.9b")||F&&Ib("8")||tb&&Ib("9.5")||vb&&Ib("528");ub&&!Ib("8")||F&&Ib("9");var Oc=F?"focusout":"DOMFocusOut";function Pc(a){Pc[" "](a);return a}Pc[" "]=ea;function Qc(a,b){a&&Rc(this,a,b)}E(Qc,Ic);var Sc=[1,4,2];l=Qc.prototype;l.target=null;l.Cf=null;l.offsetX=0;l.offsetY=0;l.clientX=0;l.clientY=0;l.Pc=0;l.Qc=0;l.Bf=0;l.ya=0;l.Nc=0;l.Ob=!1;l.ba=!1;l.za=!1;l.Oc=!1;l.rb=!1;l.O=null;
function Rc(a,b,c){var d=a.type=b.type;Ic.call(a,d);a.target=b.target||b.srcElement;a.c=c;if(c=b.relatedTarget){if(ub){var e;a:{try{Pc(c.nodeName);e=!0;break a}catch(f){}e=!1}e||(c=null)}}else"mouseover"==d?c=b.fromElement:"mouseout"==d&&(c=b.toElement);a.Cf=c;a.offsetX=vb||void 0!==b.offsetX?b.offsetX:b.layerX;a.offsetY=vb||void 0!==b.offsetY?b.offsetY:b.layerY;a.clientX=void 0!==b.clientX?b.clientX:b.pageX;a.clientY=void 0!==b.clientY?b.clientY:b.pageY;a.Pc=b.screenX||0;a.Qc=b.screenY||0;a.Bf=b.button;
a.ya=b.keyCode||0;a.Nc=b.charCode||("keypress"==d?b.keyCode:0);a.Ob=b.ctrlKey;a.ba=b.altKey;a.za=b.shiftKey;a.Oc=b.metaKey;a.rb=lb?b.metaKey:b.ctrlKey;a.state=b.state;a.O=b;b.defaultPrevented&&a.L();delete a.Ka}function Tc(a){return(Lc?0==a.O.button:"click"==a.type?!0:!!(a.O.button&Sc[0]))&&!(vb&&lb&&a.Ob)}l.Aa=function(){Qc.D.Aa.call(this);this.O.stopPropagation?this.O.stopPropagation():this.O.cancelBubble=!0};
l.L=function(){Qc.D.L.call(this);var a=this.O;if(a.preventDefault)a.preventDefault();else if(a.returnValue=!1,Nc)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=-1}catch(b){}};l.Xe=k("O");var Uc="closure_listenable_"+(1E6*Math.random()|0);function Vc(a){return!(!a||!a[Uc])}var Wc=0;function Xc(a,b,c,d,e,f){this.ta=a;this.a=b;this.src=c;this.type=d;this.capture=!!e;this.Ya=f;this.key=++Wc;this.Ca=this.eb=!1}function Yc(a){a.Ca=!0;a.ta=null;a.a=null;a.src=null;a.Ya=null};var Zc={},$c={},ad={},bd={};function H(a,b,c,d,e){if(ja(b)){for(var f=0;f<b.length;f++)H(a,b[f],c,d,e);return null}c=cd(c);return Vc(a)?a.ca(b,c,d,e):dd(a,b,c,!1,d,e)}
function dd(a,b,c,d,e,f){if(!b)throw Error("Invalid event type");e=!!e;var g=$c;b in g||(g[b]={F:0});g=g[b];e in g||(g[e]={F:0},g.F++);var g=g[e],h=v(a),m;if(g[h]){m=g[h];for(var n=0;n<m.length;n++)if(g=m[n],g.ta==c&&g.Ya==f){if(g.Ca)break;d||(m[n].eb=!1);return m[n]}}else m=g[h]=[],g.F++;n=ed();g=new Xc(c,n,a,b,e,f);g.eb=d;n.src=a;n.ta=g;m.push(g);ad[h]||(ad[h]=[]);ad[h].push(g);a.addEventListener?a.addEventListener(b,n,e):a.attachEvent(b in bd?bd[b]:bd[b]="on"+b,n);return Zc[g.key]=g}
function ed(){var a=fd,b=Mc?function(c){return a.call(b.src,b.ta,c)}:function(c){c=a.call(b.src,b.ta,c);if(!c)return c};return b}function gd(a,b,c,d,e){if(ja(b)){for(var f=0;f<b.length;f++)gd(a,b[f],c,d,e);return null}c=cd(c);return Vc(a)?a.V.add(b,c,!0,d,e):dd(a,b,c,!0,d,e)}function hd(a,b,c,d,e){if(ja(b))for(var f=0;f<b.length;f++)hd(a,b[f],c,d,e);else if(c=cd(c),Vc(a))a.gd(b,c,d,e);else if(d=!!d,a=id(a,b,d))for(f=0;f<a.length;f++)if(a[f].ta==c&&a[f].capture==d&&a[f].Ya==e){K(a[f]);break}}
function K(a){if(ma(a)||!a||a.Ca)return!1;var b=a.src;if(Vc(b))return jd(b.V,a);var c=a.type,d=a.a,e=a.capture;b.removeEventListener?b.removeEventListener(c,d,e):b.detachEvent&&b.detachEvent(c in bd?bd[c]:bd[c]="on"+c,d);b=v(b);ad[b]&&(d=ad[b],Qa(d,a),0==d.length&&delete ad[b]);Yc(a);if(d=$c[c][e][b])Qa(d,a),0==d.length&&(delete $c[c][e][b],$c[c][e].F--),0==$c[c][e].F&&(delete $c[c][e],$c[c].F--),0==$c[c].F&&delete $c[c];delete Zc[a.key];return!0}
function id(a,b,c){var d=$c;return b in d&&(d=d[b],c in d&&(d=d[c],a=v(a),d[a]))?d[a]:null}function kd(a){if(Vc(a))return ld(a.V,void 0);a=v(a);var b=ad[a];if(b){var c=t(void 0),d=t(void 0);return c&&d?(b=$c[void 0],!!b&&!!b[void 0]&&a in b[void 0]):c||d?Na(b,function(a){return c&&void 0==a.type||d&&void 0==a.capture}):!0}return!1}function md(a,b,c){var d=1;b=v(b);if(a[b])for(a=Sa(a[b]),b=0;b<a.length;b++){var e=a[b];e&&!e.Ca&&(d&=!1!==nd(e,c))}return Boolean(d)}
function nd(a,b){var c=a.ta,d=a.Ya||a.src;a.eb&&K(a);return c.call(d,b)}
function fd(a,b){if(a.Ca)return!0;var c=a.type,d=$c;if(!(c in d))return!0;var d=d[c],e,f;if(!Mc){if(!(c=b))a:{for(var c=["window","event"],g=s;e=c.shift();)if(null!=g[e])g=g[e];else{c=null;break a}c=g}e=c;c=!0 in d;g=!1 in d;if(c){if(0>e.keyCode||void 0!=e.returnValue)return!0;a:{var h=!1;if(0==e.keyCode)try{e.keyCode=-1;break a}catch(m){h=!0}if(h||void 0==e.returnValue)e.returnValue=!0}}h=new Qc;Rc(h,e,this);e=!0;try{if(c){for(var n=[],p=h.c;p;p=p.parentNode)n.push(p);f=d[!0];for(var r=n.length-
1;!h.Ka&&0<=r;r--)h.c=n[r],e&=md(f,n[r],h);if(g)for(f=d[!1],r=0;!h.Ka&&r<n.length;r++)h.c=n[r],e&=md(f,n[r],h)}else e=nd(a,h)}finally{n&&(n.length=0)}return e}d=new Qc(b,this);return e=nd(a,d)}var od="__closure_events_fn_"+(1E9*Math.random()>>>0);function cd(a){return na(a)?a:a[od]||(a[od]=function(b){return a.handleEvent(b)})};function pd(a){return function(){return a}}var qd=pd(!1),rd=pd(!0);function sd(a){return a}function td(a){return function(){throw a;}}function ud(a){var b;b=b||0;return function(){return a.apply(this,Array.prototype.slice.call(arguments,0,b))}}function vd(a){var b=arguments,c=b.length;return function(){for(var a=0;a<c;a++)if(!b[a].apply(this,arguments))return!1;return!0}};function wd(a){this.src=a;this.a={};this.c=0}wd.prototype.add=function(a,b,c,d,e){var f=this.a[a];f||(f=this.a[a]=[],this.c++);var g=xd(f,b,d,e);-1<g?(a=f[g],c||(a.eb=!1)):(a=new Xc(b,null,this.src,a,!!d,e),a.eb=c,f.push(a));return a};wd.prototype.remove=function(a,b,c,d){if(!(a in this.a))return!1;var e=this.a[a];b=xd(e,b,c,d);return-1<b?(Yc(e[b]),Ja.splice.call(e,b,1),0==e.length&&(delete this.a[a],this.c--),!0):!1};
function jd(a,b){var c=b.type;if(!(c in a.a))return!1;var d=Qa(a.a[c],b);d&&(Yc(b),0==a.a[c].length&&(delete a.a[c],a.c--));return d}function ld(a,b){var c=t(b),d=t(void 0);return Xb(a.a,function(a){for(var f=0;f<a.length;++f)if(!(c&&a[f].type!=b||d&&void 0!=a[f].capture))return!0;return!1})}function xd(a,b,c,d){for(var e=0;e<a.length;++e){var f=a[e];if(!f.Ca&&f.ta==b&&f.capture==!!c&&f.Ya==d)return e}return-1};function yd(){Dc.call(this);this.V=new wd(this);this.Yb=this}E(yd,Dc);yd.prototype[Uc]=!0;l=yd.prototype;l.$c=null;l.addEventListener=function(a,b,c,d){H(this,a,b,c,d)};l.removeEventListener=function(a,b,c,d){hd(this,a,b,c,d)};
function L(a,b){var c,d=a.$c;if(d)for(c=[];d;d=d.$c)c.push(d);var d=a.Yb,e=b,f=e.type||e;if(la(e))e=new Ic(e,d);else if(e instanceof Ic)e.target=e.target||d;else{var g=e,e=new Ic(f,d);fc(e,g)}var g=!0,h;if(c)for(var m=c.length-1;!e.Ka&&0<=m;m--)h=e.c=c[m],g=zd(h,f,!0,e)&&g;e.Ka||(h=e.c=d,g=zd(h,f,!0,e)&&g,e.Ka||(g=zd(h,f,!1,e)&&g));if(c)for(m=0;!e.Ka&&m<c.length;m++)h=e.c=c[m],g=zd(h,f,!1,e)&&g;return g}
l.w=function(){yd.D.w.call(this);if(this.V){var a=this.V,b=0,c;for(c in a.a){for(var d=a.a[c],e=0;e<d.length;e++)++b,d[e].Ca=!0;delete a.a[c];a.c--}}this.$c=null};l.ca=function(a,b,c,d){return this.V.add(a,b,!1,c,d)};l.gd=function(a,b,c,d){return this.V.remove(a,b,c,d)};function zd(a,b,c,d){b=a.V.a[b];if(!b)return!0;b=Sa(b);for(var e=!0,f=0;f<b.length;++f){var g=b[f];if(g&&!g.Ca&&g.capture==c){var h=g.ta,m=g.Ya||g.src;g.eb&&jd(a.V,g);e=!1!==h.call(m,d)&&e}}return e&&!1!=d.me};function Ad(){yd.call(this);this.c=0}E(Ad,yd);l=Ad.prototype;l.u=function(){++this.c;L(this,"change")};l.ph=function(a,b,c){return H(this,a,b,!1,c)};l.vh=function(a,b,c){return gd(this,a,b,!1,c)};l.Ph=function(a,b,c){hd(this,a,b,!1,c)};l.Qh=function(a){K(a)};function Bd(a,b){Ic.call(this,a);this.key=b}E(Bd,Ic);function Cd(a,b){this.target=a;this.key=b;this.c=this.a=sd}Cd.prototype.transform=function(a,b){this.a=a;this.c=b;this.target.Tc(this.key)};function M(a){Ad.call(this);this.e={};this.i={};this.X={};this.fa={};t(a)&&this.W(a)}E(M,Ad);var Dd={},Ed={},Fd={};function Gd(a){return Dd.hasOwnProperty(a)?Dd[a]:Dd[a]="change:"+a.toLowerCase()}l=M.prototype;
l.Oe=function(a,b,c){c=c||a;this.fd(a);var d=Gd(c);this.fa[a]=H(b,d,function(){Hd(this,a)},void 0,this);this.X[a]=H(b,"beforepropertychange",Id(a,c),void 0,this);b=new Cd(b,c);this.i[a]=b;Hd(this,a);return b};function Id(a,b){return function(c){c.key===b&&L(this,new Bd("beforepropertychange",a))}}
l.r=function(a){var b,c=this.i;if(c.hasOwnProperty(a)){a=c[a];b=a.target;var c=a.key,d=Ed.hasOwnProperty(c)?Ed[c]:Ed[c]="get"+(c.substr(0,1).toUpperCase()+c.substr(1)),d=G(b,d);b=t(d)?d.call(b):b.r(c);b=a.c(b)}else this.e.hasOwnProperty(a)&&(b=this.e[a]);return b};l.sa=function(){var a=this.i,b;if($b(this.e)){if($b(a))return[];b=a}else if($b(a))b=this.e;else{b={};for(var c in this.e)b[c]=!0;for(c in a)b[c]=!0}return Zb(b)};
l.gb=function(){var a={},b;for(b in this.e)a[b]=this.e[b];for(b in this.i)a[b]=this.r(b);return a};l.Tc=function(a){var b=this.i;b.hasOwnProperty(a)?(a=b[a],a.target.Tc(a.key)):Hd(this,a)};function Hd(a,b){var c=Gd(b);L(a,c);L(a,new Bd("propertychange",b))}
l.t=function(a,b){L(this,new Bd("beforepropertychange",a));var c=this.i;if(c.hasOwnProperty(a)){var d=c[a],c=d.target,e=d.key;b=d.a(b);d=Fd.hasOwnProperty(e)?Fd[e]:Fd[e]="set"+(e.substr(0,1).toUpperCase()+e.substr(1));d=G(c,d);t(d)?d.call(c,b):c.t(e,b)}else this.e[a]=b,Hd(this,a)};l.W=function(a){for(var b in a)this.t(b,a[b])};l.fd=function(a){var b=this.fa,c=b[a];c&&(delete b[a],K(c),b=this.r(a),delete this.i[a],this.e[a]=b);if(b=this.X[a])K(b),delete this.X[a]};l.Rh=function(){for(var a in this.fa)this.fd(a)};function Jd(a,b,c){Ic.call(this,a,c);this.element=b}E(Jd,Ic);function N(a){M.call(this);this.a=a||[];Kd(this)}E(N,M);l=N.prototype;l.clear=function(){for(;0<this.Ia();)this.Xd()};l.mg=function(a){var b,c;b=0;for(c=a.length;b<c;++b)this.push(a[b]);return this};l.forEach=function(a,b){La(this.a,a,b)};l.ng=k("a");l.Fd=function(a){return this.a[a]};l.Ia=function(){return this.r("length")};l.mc=function(a,b){Ua(this.a,a,0,b);Kd(this);L(this,new Jd("add",b,this))};
l.Xd=function(){return this.cd(this.Ia()-1)};l.push=function(a){var b=this.a.length;this.mc(b,a);return b};l.remove=function(a){var b=this.a,c,d;c=0;for(d=b.length;c<d;++c)if(b[c]===a)return this.cd(c)};l.cd=function(a){var b=this.a[a];Ja.splice.call(this.a,a,1);Kd(this);L(this,new Jd("remove",b,this));return b};l.oe=function(a,b){var c=this.Ia();if(a<c)c=this.a[a],this.a[a]=b,L(this,new Jd("remove",c,this)),L(this,new Jd("add",b,this));else{for(;c<a;++c)this.mc(c,void 0);this.mc(a,b)}};
function Kd(a){a.t("length",a.a.length)};function Ld(a){M.call(this);a=t(a)?a:{};this.a=null;H(this,Gd("tracking"),this.l,!1,this);this.b(t(a.tracking)?a.tracking:!1)}E(Ld,M);Ld.prototype.w=function(){this.b(!1);Ld.D.w.call(this)};
Ld.prototype.n=function(a){a=a.O;if(null!=a.alpha){var b=Sb(a.alpha);this.t("alpha",b);"boolean"==typeof a.absolute&&a.absolute?this.t("heading",b):null!=a.webkitCompassHeading&&(null!=a.webkitCompassAccuracy&&-1!=a.webkitCompassAccuracy)&&this.t("heading",Sb(a.webkitCompassHeading))}null!=a.beta&&this.t("beta",Sb(a.beta));null!=a.gamma&&this.t("gamma",Sb(a.gamma))};Ld.prototype.f=function(){return this.r("alpha")};Ld.prototype.getAlpha=Ld.prototype.f;Ld.prototype.g=function(){return this.r("beta")};
Ld.prototype.getBeta=Ld.prototype.g;Ld.prototype.j=function(){return this.r("gamma")};Ld.prototype.getGamma=Ld.prototype.j;Ld.prototype.k=function(){return this.r("heading")};Ld.prototype.getHeading=Ld.prototype.k;Ld.prototype.d=function(){return this.r("tracking")};Ld.prototype.getTracking=Ld.prototype.d;Ld.prototype.l=function(){if(Bc.sd){var a=this.d();a&&null===this.a?this.a=H(s,"deviceorientation",this.n,!1,this):a||null===this.a||(K(this.a),this.a=null)}};
Ld.prototype.b=function(a){this.t("tracking",a)};Ld.prototype.setTracking=Ld.prototype.b;function Md(){Ad.call(this);this.extent=void 0;this.e=-1;this.f={};this.j=this.g=0}E(Md,Ad);Md.prototype.s=function(a,b){var c=t(b)?b:[NaN,NaN];this.ha(a[0],a[1],c,Infinity);return c};Md.prototype.Qa=qd;var Nd={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",
darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",
ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",
lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",
moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",
seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function Od(a){this.length=a.length||a;for(var b=0;b<this.length;b++)this[b]=a[b]||0}Od.prototype.a=4;Od.prototype.c=function(a,b){b=b||0;for(var c=0;c<a.length&&b+c<this.length;c++)this[b+c]=a[c]};Od.prototype.toString=Array.prototype.join;"undefined"==typeof Float32Array&&(Od.BYTES_PER_ELEMENT=4,Od.prototype.BYTES_PER_ELEMENT=Od.prototype.a,Od.prototype.set=Od.prototype.c,Od.prototype.toString=Od.prototype.toString,C("Float32Array",Od));function Pd(a){this.length=a.length||a;for(var b=0;b<this.length;b++)this[b]=a[b]||0}Pd.prototype.a=8;Pd.prototype.c=function(a,b){b=b||0;for(var c=0;c<a.length&&b+c<this.length;c++)this[b+c]=a[c]};Pd.prototype.toString=Array.prototype.join;if("undefined"==typeof Float64Array){try{Pd.BYTES_PER_ELEMENT=8}catch(Rd){}Pd.prototype.BYTES_PER_ELEMENT=Pd.prototype.a;Pd.prototype.set=Pd.prototype.c;Pd.prototype.toString=Pd.prototype.toString;C("Float64Array",Pd)};function Sd(a,b,c,d,e){a[0]=b;a[1]=c;a[2]=d;a[3]=e};function Td(){var a=Array(16);Ud(a,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return a}function Vd(){var a=Array(16);Ud(a,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);return a}function Ud(a,b,c,d,e,f,g,h,m,n,p,r,q,u,y,x,w){a[0]=b;a[1]=c;a[2]=d;a[3]=e;a[4]=f;a[5]=g;a[6]=h;a[7]=m;a[8]=n;a[9]=p;a[10]=r;a[11]=q;a[12]=u;a[13]=y;a[14]=x;a[15]=w}
function Wd(a,b){a[0]=b[0];a[1]=b[1];a[2]=b[2];a[3]=b[3];a[4]=b[4];a[5]=b[5];a[6]=b[6];a[7]=b[7];a[8]=b[8];a[9]=b[9];a[10]=b[10];a[11]=b[11];a[12]=b[12];a[13]=b[13];a[14]=b[14];a[15]=b[15]}function Xd(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1}
function Yd(a,b,c){var d=a[0],e=a[1],f=a[2],g=a[3],h=a[4],m=a[5],n=a[6],p=a[7],r=a[8],q=a[9],u=a[10],y=a[11],x=a[12],w=a[13],z=a[14];a=a[15];var A=b[0],D=b[1],I=b[2],P=b[3],J=b[4],U=b[5],aa=b[6],ua=b[7],ra=b[8],Q=b[9],qa=b[10],ia=b[11],Ub=b[12],ob=b[13],zb=b[14];b=b[15];c[0]=d*A+h*D+r*I+x*P;c[1]=e*A+m*D+q*I+w*P;c[2]=f*A+n*D+u*I+z*P;c[3]=g*A+p*D+y*I+a*P;c[4]=d*J+h*U+r*aa+x*ua;c[5]=e*J+m*U+q*aa+w*ua;c[6]=f*J+n*U+u*aa+z*ua;c[7]=g*J+p*U+y*aa+a*ua;c[8]=d*ra+h*Q+r*qa+x*ia;c[9]=e*ra+m*Q+q*qa+w*ia;c[10]=
f*ra+n*Q+u*qa+z*ia;c[11]=g*ra+p*Q+y*qa+a*ia;c[12]=d*Ub+h*ob+r*zb+x*b;c[13]=e*Ub+m*ob+q*zb+w*b;c[14]=f*Ub+n*ob+u*zb+z*b;c[15]=g*Ub+p*ob+y*zb+a*b}function Zd(a,b,c){var d=a[1]*b+a[5]*c+0*a[9]+a[13],e=a[2]*b+a[6]*c+0*a[10]+a[14],f=a[3]*b+a[7]*c+0*a[11]+a[15];a[12]=a[0]*b+a[4]*c+0*a[8]+a[12];a[13]=d;a[14]=e;a[15]=f}function $d(a,b,c){Ud(a,a[0]*b,a[1]*b,a[2]*b,a[3]*b,a[4]*c,a[5]*c,a[6]*c,a[7]*c,1*a[8],1*a[9],1*a[10],1*a[11],a[12],a[13],a[14],a[15])}
function ae(a,b){var c=a[0],d=a[1],e=a[2],f=a[3],g=a[4],h=a[5],m=a[6],n=a[7],p=Math.cos(b),r=Math.sin(b);a[0]=c*p+g*r;a[1]=d*p+h*r;a[2]=e*p+m*r;a[3]=f*p+n*r;a[4]=c*-r+g*p;a[5]=d*-r+h*p;a[6]=e*-r+m*p;a[7]=f*-r+n*p}new Float64Array(3);new Float64Array(3);new Float64Array(4);new Float64Array(4);new Float64Array(4);new Float64Array(16);var be=/^#(?:[0-9a-f]{3}){1,2}$/i,ce=/^(?:rgb)?\((0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2})\)$/i,de=/^(?:rgba)?\((0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2}),\s?(0|1|0\.\d{0,10})\)$/i;function ee(a){if(!la(a)){var b=a[0];b!=(b|0)&&(b=b+0.5|0);var c=a[1];c!=(c|0)&&(c=c+0.5|0);var d=a[2];d!=(d|0)&&(d=d+0.5|0);a="rgba("+b+","+c+","+d+","+a[3]+")"}return a}
var ge=function(){var a={},b=0;return function(c,d){var e;if(a.hasOwnProperty(c))e=a[c];else{if(1024<=b){e=0;for(var f in a)0===(e++&3)&&(delete a[f],--b)}e=fe(c);a[c]=e;++b}t(d)&&(d[0]=e[0],d[1]=e[1],d[2]=e[2],d[3]=e[3],e=d);return e}}();
function fe(a){var b=!1;Nd.hasOwnProperty(a)&&(a=Nd[a],b=!0);var c,d;if(b||be.exec(a))return d=3==a.length-1?1:2,b=parseInt(a.substr(1+0*d,d),16),c=parseInt(a.substr(1+1*d,d),16),a=parseInt(a.substr(1+2*d,d),16),1==d&&(b=(b<<4)+b,c=(c<<4)+c,a=(a<<4)+a),b=[b,c,a,1];if(d=de.exec(a))return b=Number(d[1]),c=Number(d[2]),a=Number(d[3]),d=Number(d[4]),b=[b,c,a,d],he(b,b);if(d=ce.exec(a))return b=Number(d[1]),c=Number(d[2]),a=Number(d[3]),b=[b,c,a,1],he(b,b);throw Error(a+" is not a valid color");}
function he(a,b){var c=t(b)?b:[];c[0]=Qb(a[0]+0.5|0,0,255);c[1]=Qb(a[1]+0.5|0,0,255);c[2]=Qb(a[2]+0.5|0,0,255);c[3]=Qb(a[3],0,1);return c};var ie=ge("black"),je=[],ke=[0,0,0,1];function le(a){a=t(a)?a:{};this.a=t(a.color)?a.color:null}le.prototype.c=k("a");function me(a){this.j=a.opacity;this.k=a.rotateWithView;this.e=a.rotation;this.f=a.scale;this.l=a.te}me.prototype.P=k("e");me.prototype.o=k("f");function ne(a){a=t(a)?a:{};this.a=t(a.color)?a.color:null;this.b=a.lineCap;this.d=t(a.lineDash)?a.lineDash:null;this.e=a.lineJoin;this.f=a.miterLimit;this.c=a.width}l=ne.prototype;l.$g=k("a");l.lf=k("b");l.ah=k("d");l.mf=k("e");l.qf=k("f");l.bh=k("c");function oe(a){a=t(a)?a:{};this.g=qc("CANVAS");this.c=null;this.b=t(a.fill)?a.fill:null;this.d=a.radius;this.a=t(a.stroke)?a.stroke:null;a=this.g;var b,c;null===this.a?c=0:(b=ee(this.a.a),c=this.a.c,t(c)||(c=1));var d=2*(this.d+c)+1;a.height=d;a.width=d;var e=a.getContext("2d");e.arc(d/2,d/2,this.d,0,2*Math.PI,!0);null!==this.b&&(e.fillStyle=ee(this.b.a),e.fill());null!==this.a&&(e.strokeStyle=b,e.lineWidth=c,e.stroke());null===this.b?(a=this.c=qc("CANVAS"),a.height=d,a.width=d,e=a.getContext("2d"),
e.arc(d/2,d/2,this.d,0,2*Math.PI,!0),e.fillStyle=ie,e.fill(),null!==this.a&&(e.strokeStyle=b,e.lineWidth=c,e.stroke())):this.c=a;this.i=[d/2,d/2];this.n=[d,d];me.call(this,{opacity:1,rotateWithView:!1,rotation:0,scale:1,te:void 0})}E(oe,me);l=oe.prototype;l.Mb=k("i");l.Wg=k("b");l.ee=k("c");l.Rb=k("g");l.fe=ca(2);l.Xg=k("d");l.qb=k("n");l.Yg=k("a");l.Td=ea;l.ge=ea;l.ve=ea;function pe(a){a=t(a)?a:{};this.d=t(a.fill)?a.fill:null;this.e=t(a.image)?a.image:null;this.b=t(a.stroke)?a.stroke:null;this.c=t(a.text)?a.text:null;this.a=a.zIndex}l=pe.prototype;l.dh=k("d");l.eh=k("e");l.fh=k("b");l.gh=k("c");l.zf=k("a");function O(a){M.call(this);this.R=void 0;this.a="geometry";this.g=null;this.f=void 0;this.d=null;H(this,Gd(this.a),this.lc,!1,this);null!=a?a instanceof Md?this.ab(a):this.W(a):this.ab(null)}E(O,M);O.prototype.K=function(){return this.r(this.a)};O.prototype.getGeometry=O.prototype.K;l=O.prototype;l.ef=k("R");l.df=k("a");l.tg=k("g");l.ug=k("f");l.Jf=function(){this.u()};l.lc=function(){null!==this.d&&(K(this.d),this.d=null);var a=this.K();null!=a&&(this.d=H(a,"change",this.Jf,!1,this))};
l.ab=function(a){this.t(this.a,a)};O.prototype.setGeometry=O.prototype.ab;O.prototype.j=function(a){this.g=a;na(a)||(a=ja(a)?a:[a],a=pd(a));this.f=a;this.u()};O.prototype.b=function(a){this.R=a};O.prototype.k=function(a){hd(this,Gd(this.a),this.lc,!1,this);this.a=a;H(this,Gd(this.a),this.lc,!1,this);this.lc()};var qe=function(){var a=new le({color:"rgba(255,255,255,0.4)"}),b=new ne({color:"#3399CC",width:1.25}),c=[new pe({image:new oe({fill:a,stroke:b,radius:5}),fill:a,stroke:b})];return function(){return c}}();
function re(a,b){var c=a.f;t(c)||(c=qe);return c.call(a,b)}function se(a){na(a)||(a=ja(a)?a:[a],a=pd(a));return a};function te(a,b,c,d,e,f){Ic.call(this,a,b);this.vectorContext=c;this.frameState=d;this.context=e;this.glContext=f}E(te,Ic);function ue(a){a=t(a)?a:{};this.g=this.d=this.e=this.c=this.b=this.a=null;this.f=t(a.style)?se(a.style):void 0;t(a.features)?ja(a.features)?this.Tb(new N(Sa(a.features))):this.Tb(a.features):this.Tb(new N);t(a.map)&&this.setMap(a.map)}l=ue.prototype;l.Yd=function(a){this.a.push(a)};l.og=k("a");l.Zd=function(){ve(this)};l.Hf=function(a){a=a.element;this.c[v(a).toString()]=H(a,"change",this.Zd,!1,this);ve(this)};l.If=function(a){a=v(a.element).toString();K(this.c[a]);delete this.c[a];ve(this)};
l.rg=function(a){if(null!==this.a){var b=this.f;t(b)||(b=re);var c=a.frameState.view2DState.resolution,d=a.vectorContext,e,f,g;this.a.forEach(function(a){g=b(a,c);if(null!=g)for(f=g.length,e=0;e<f;++e)d.Hc(a,g[e])},this)}};l.Uc=function(a){this.a.remove(a)};function ve(a){null===a.e||a.e.H()}
l.Tb=function(a){null!==this.b&&(La(this.b,K),this.b=null);null!==this.c&&(La(Yb(this.c),K),this.c=null);this.a=a;if(null!==a){this.b=[H(a,"add",this.Hf,!1,this),H(a,"remove",this.If,!1,this)];this.c={};a=a.a;var b,c=a.length,d;for(b=0;b<c;++b)d=a[b],this.c[v(d).toString()]=H(d,"change",this.Zd,!1,this)}ve(this)};l.setMap=function(a){null!==this.d&&(K(this.d),this.d=null);ve(this);this.e=a;null!==a&&(this.d=H(a,"postcompose",this.rg,!1,this),a.H())};l.sg=function(a){this.g=a;this.f=se(a);ve(this)};
l.pg=k("g");l.qg=k("f");function we(a,b){a[0]+=b[0];a[1]+=b[1]}function xe(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],m=h-g,n=f-e,c=0==m&&0==n?0:(m*(c-g)+n*(d-e))/(m*m+n*n||0);0>=c||(1<=c?(g=h,e=f):(g+=c*m,e+=c*n));return[g,e]}function ye(a,b){var c=Rb(a+180,360)-180,d=Math.abs(Math.round(3600*c));return Math.floor(d/3600)+"\u00b0 "+Math.floor(d/60%60)+"\u2032 "+Math.floor(d%60)+"\u2033 "+b.charAt(0>c?1:0)}
function ze(a,b,c){return t(a)?b.replace("{x}",a[0].toFixed(c)).replace("{y}",a[1].toFixed(c)):""}function Ae(a,b){for(var c=!0,d=a.length-1;0<=d;--d)if(a[d]!=b[d]){c=!1;break}return c}function Be(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 Ce(a,b){var c=a[0]-b[0],d=a[1]-b[1];return c*c+d*d}function De(a,b){return ze(a,"{x}, {y}",b)};function Ee(a){for(var b=Fe(),c=0,d=a.length;c<d;++c){var e=b,f=a[c];f[0]<e[0]&&(e[0]=f[0]);f[0]>e[2]&&(e[2]=f[0]);f[1]<e[1]&&(e[1]=f[1]);f[1]>e[3]&&(e[3]=f[1])}return b}function Ge(a,b,c){var d=Math.min.apply(null,a),e=Math.min.apply(null,b);a=Math.max.apply(null,a);b=Math.max.apply(null,b);return He(d,e,a,b,c)}function Ie(a,b,c){return t(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 Je(a,b){return t(b)?(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b):a.slice()}function Ke(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 Le(a,b){return a[0]<=b[0]&&b[2]<=a[2]&&a[1]<=b[1]&&b[3]<=a[3]}function Fe(){return[Infinity,Infinity,-Infinity,-Infinity]}function He(a,b,c,d,e){return t(e)?(e[0]=a,e[1]=b,e[2]=c,e[3]=d,e):[a,b,c,d]}function Me(a){return He(Infinity,Infinity,-Infinity,-Infinity,a)}
function Ne(a,b){return a[0]==b[0]&&a[2]==b[2]&&a[1]==b[1]&&a[3]==b[3]}function Oe(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 Pe(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 Qe(a){return[a[0],a[1]]}function Re(a){return[(a[0]+a[2])/2,(a[1]+a[3])/2]}
function Se(a,b,c,d){var e=b*d[0]/2;d=b*d[1]/2;b=Math.cos(c);c=Math.sin(c);e=[-e,-e,e,e];d=[-d,d,-d,d];var f,g,h;for(f=0;4>f;++f)g=e[f],h=d[f],e[f]=a[0]+g*b-h*c,d[f]=a[1]+g*c+h*b;return Ge(e,d,void 0)}function Te(a){return a[3]-a[1]}function Ue(a){return[a[0],a[3]]}function Ve(a){return a[2]-a[0]}function We(a,b){return a[0]<=b[2]&&a[2]>=b[0]&&a[1]<=b[3]&&a[3]>=b[1]}function Xe(a){return a[2]<a[0]||a[3]<a[1]}function Ye(a,b){return t(b)?(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b):a}
function Ze(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 $e(a,b){return We(a,b)&&(a[0]==b[2]||a[2]==b[0]||a[1]==b[3]||a[3]==b[1])}function af(a,b,c){a=[a[0],a[1],a[0],a[3],a[2],a[1],a[2],a[3]];b(a,a,2);return Ge([a[0],a[2],a[4],a[6]],[a[1],a[3],a[5],a[7]],c)};function bf(a,b,c,d){var e=c[0],f=c[1],g=c[4],h=c[5],m=c[12];c=c[13];var n=t(d)?d:[],p=0,r,q;r=0;for(q=a.length;r<q;r+=b){var u=a[r],y=a[r+1];n[p++]=e*u+g*y+m;n[p++]=f*u+h*y+c}t(d)&&n.length!=p&&(n.length=p);return n};function cf(){Md.call(this);this.b="XY";this.a=2;this.h=null}E(cf,Md);function df(a){if("XY"==a)return 2;if("XYZ"==a||"XYM"==a)return 3;if("XYZM"==a)return 4;throw Error("unsupported layout: "+a);}l=cf.prototype;l.Qa=qd;l.p=function(a){if(this.e!=this.c){var b=this.h,c=this.h.length,d=this.a,e=Me(this.extent);this.extent=Pe(e,b,0,c,d);this.e=this.c}return Ye(this.extent,a)};l.af=function(){return this.h.slice(0,this.a)};l.jf=function(){return this.h.slice(this.h.length-this.a)};l.kf=k("b");
l.Ua=function(a){this.j!=this.c&&(ac(this.f),this.g=0,this.j=this.c);if(0>a||0!==this.g&&a<=this.g)return this;var b=a.toString();if(this.f.hasOwnProperty(b))return this.f[b];var c=this.hb(a);if(c.h.length<this.h.length)return this.f[b]=c;this.g=a;return this};l.hb=function(){return this};function ef(a,b,c){a.a=df(b);a.b=b;a.h=c}
function ff(a,b,c,d){if(t(b))c=df(b);else{for(b=0;b<d;++b){if(0===c.length){a.b="XY";a.a=2;return}c=c[0]}c=c.length;if(2==c)b="XY";else if(3==c)b="XYZ";else if(4==c)b="XYZM";else throw Error("unsupported stride: "+c);}a.b=b;a.a=c}l.transform=function(a){null!==this.h&&(a(this.h,this.h,this.a),this.u())};function gf(a,b,c){var d=a.h;return null===d?null:bf(d,a.a,b,c)};function hf(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],m=a[b+1],e=e+(g*h-f*m),f=h,g=m;return e/2}function jf(a,b,c,d){var e=0,f,g;f=0;for(g=c.length;f<g;++f){var h=c[f],e=e+hf(a,b,h,d);b=h}return e};function kf(a,b,c,d){a=c-a;b=d-b;return a*a+b*b};function lf(a,b,c,d,e,f,g){var h=a[b],m=a[b+1],n=a[c]-h,p=a[c+1]-m;if(0!==n||0!==p)if(f=((e-h)*n+(f-m)*p)/(n*n+p*p),1<f)b=c;else if(0<f){for(e=0;e<d;++e)g[e]=a[b+e]+f*(a[c+e]-a[b+e]);g.length=d;return}for(e=0;e<d;++e)g[e]=a[b+e];g.length=d}function mf(a,b,c,d,e){var f=a[b],g=a[b+1];for(b+=d;b<c;b+=d){var h=a[b],m=a[b+1],f=kf(f,g,h,m);f>e&&(e=f);f=h;g=m}return e}function nf(a,b,c,d,e){var f,g;f=0;for(g=c.length;f<g;++f){var h=c[f];e=mf(a,b,h,d,e);b=h}return e}
function of(a,b,c,d,e,f,g,h,m,n,p){if(b==c)return n;var r;if(0===e){r=kf(g,h,a[b],a[b+1]);if(r<n){for(p=0;p<d;++p)m[p]=a[b+p];m.length=d;return r}return n}for(var q=t(p)?p:[NaN,NaN],u=b+d;u<c;)if(lf(a,u-d,u,d,g,h,q),r=kf(g,h,q[0],q[1]),r<n){n=r;for(p=0;p<d;++p)m[p]=q[p];m.length=d;u+=d}else u+=d*Math.max((Math.sqrt(r)-Math.sqrt(n))/e|0,1);if(f&&(lf(a,c-d,b,d,g,h,q),r=kf(g,h,q[0],q[1]),r<n)){n=r;for(p=0;p<d;++p)m[p]=q[p];m.length=d}return n}
function pf(a,b,c,d,e,f,g,h,m,n,p){p=t(p)?p:[NaN,NaN];var r,q;r=0;for(q=c.length;r<q;++r){var u=c[r];n=of(a,b,u,d,e,f,g,h,m,n,p);b=u}return n};function qf(a,b){var c=0,d,e;d=0;for(e=b.length;d<e;++d)a[c++]=b[d];return c}function rf(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 sf(a,b,c,d,e){e=t(e)?e:[];var f=0,g,h;g=0;for(h=c.length;g<h;++g)b=rf(a,b,c[g],d),e[f++]=b;e.length=f;return e};function tf(a,b,c,d,e){e=t(e)?e:[];for(var f=0;b<c;b+=d)e[f++]=a.slice(b,b+d);e.length=f;return e}function uf(a,b,c,d,e){e=t(e)?e:[];var f=0,g,h;g=0;for(h=c.length;g<h;++g){var m=c[g];e[f++]=tf(a,b,m,d,e[f]);b=m}e.length=f;return e};function vf(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 m=Array(h);m[0]=1;m[h-1]=1;c=[b,c-d];for(var n=0,p;0<c.length;){var r=c.pop(),q=c.pop(),u=0,y=a[q],x=a[q+1],w=a[r],z=a[r+1];for(p=q+d;p<r;p+=d){var A;A=a[p];var D=a[p+1],I=y,P=x,J=w-I,U=z-P;if(0!==J||0!==U){var aa=((A-I)*J+(D-P)*U)/(J*J+U*U);1<aa?(I=w,P=z):0<aa&&(I+=J*aa,P+=U*aa)}A=kf(A,D,I,P);A>u&&(n=p,u=A)}u>e&&(m[(n-b)/d]=1,q+d<n&&c.push(q,n),n+d<r&&c.push(n,r))}for(p=0;p<h;++p)m[p]&&(f[g++]=a[b+
p*d],f[g++]=a[b+p*d+1]);return g}
function wf(a,b,c,d,e,f,g,h){var m,n;m=0;for(n=c.length;m<n;++m){var p=c[m];a:{var r=a,q=p,u=d,y=e,x=f;if(b!=q){var w=y*Math.round(r[b]/y),z=y*Math.round(r[b+1]/y);b+=u;x[g++]=w;x[g++]=z;var A=void 0,D=void 0;do if(A=y*Math.round(r[b]/y),D=y*Math.round(r[b+1]/y),b+=u,b==q){x[g++]=A;x[g++]=D;break a}while(A==w&&D==z);for(;b<q;){var I,P;I=y*Math.round(r[b]/y);P=y*Math.round(r[b+1]/y);b+=u;if(I!=A||P!=D){var J=A-w,U=D-z,aa=I-w,ua=P-z;J*ua==U*aa&&(0>J&&aa<J||J==aa||0<J&&aa>J)&&(0>U&&ua<U||U==ua||0<U&&
ua>U)||(x[g++]=A,x[g++]=D,w=A,z=D);A=I;D=P}}x[g++]=A;x[g++]=D}}h.push(g);b=p}return g};function xf(a,b){cf.call(this);this.d=this.i=-1;this.J(a,b)}E(xf,cf);l=xf.prototype;l.I=function(){var a=new xf(null);yf(a,this.b,this.h.slice());return a};l.ha=function(a,b,c,d){if(d<Ke(this.p(),a,b))return d;this.d!=this.c&&(this.i=Math.sqrt(mf(this.h,0,this.h.length,this.a,0)),this.d=this.c);return of(this.h,0,this.h.length,this.a,this.i,!0,a,b,c,d)};l.Cg=function(){return hf(this.h,0,this.h.length,this.a)};l.v=function(){return tf(this.h,0,this.h.length,this.a)};
l.hb=function(a){var b=[];b.length=vf(this.h,0,this.h.length,this.a,a,b,0);a=new xf(null);yf(a,"XY",b);return a};l.C=ca("LinearRing");l.J=function(a,b){null===a?yf(this,"XY",null):(ff(this,b,a,1),null===this.h&&(this.h=[]),this.h.length=rf(this.h,0,a,this.a),this.u())};function yf(a,b,c){ef(a,b,c);a.u()};function zf(a,b){cf.call(this);this.J(a,b)}E(zf,cf);l=zf.prototype;l.I=function(){var a=new zf(null);Af(a,this.b,this.h.slice());return a};l.ha=function(a,b,c,d){var e=this.h;a=kf(a,b,e[0],e[1]);if(a<d){d=this.a;for(b=0;b<d;++b)c[b]=e[b];c.length=d;return a}return d};l.v=function(){return this.h.slice()};l.p=function(a){if(this.e!=this.c){var b=this.h,c=b[0],b=b[1];this.extent=He(c,b,c,b,this.extent);this.e=this.c}return Ye(this.extent,a)};l.C=ca("Point");
l.J=function(a,b){null===a?Af(this,"XY",null):(ff(this,b,a,0),null===this.h&&(this.h=[]),this.h.length=qf(this.h,a),this.u())};function Af(a,b,c){ef(a,b,c);a.u()};function Bf(a,b,c,d,e,f){for(var g=!1,h=a[c-d],m=a[c-d+1];b<c;b+=d){var n=a[b],p=a[b+1];m>f!=p>f&&e<(n-h)*(f-m)/(p-m)+h&&(g=!g);h=n;m=p}return g}function Cf(a,b,c,d,e,f){if(0===c.length||!Bf(a,b,c[0],d,e,f))return!1;var g;b=1;for(g=c.length;b<g;++b)if(Bf(a,c[b-1],c[b],d,e,f))return!1;return!0};function Df(a,b,c,d,e,f,g){var h,m,n,p,r,q=e[f+1],u=[],y=c[0];n=a[y-d];r=a[y-d+1];for(h=b;h<y;h+=d){p=a[h];m=a[h+1];if(q<=r&&m<=q||r<=q&&q<=m)n=(q-r)/(m-r)*(p-n)+n,u.push(n);n=p;r=m}y=NaN;r=-Infinity;u.sort();n=u[0];h=1;for(m=u.length;h<m;++h){p=u[h];var x=Math.abs(p-n);x>r&&(n=(n+p)/2,Cf(a,b,c,d,n,q)&&(y=n,r=x));n=p}isNaN(y)&&(y=e[f]);return t(g)?(g.push(y,q),g):[y,q]};function Ef(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],m=a[b+1],e=e+(h-f)*(m+g),f=h,g=m;return 0<e}function Ff(a,b,c){var d=0,e,f;e=0;for(f=b.length;e<f;++e){var g=b[e],d=Ef(a,d,g,c);if(0===e?!d:d)return!1;d=g}return!0}function Gf(a,b,c,d){var e,f;e=0;for(f=c.length;e<f;++e){var g=c[e],h=Ef(a,b,g,d);if(0===e?!h:h)for(var h=a,m=g,n=d;b<m-n;){var p;for(p=0;p<n;++p){var r=h[b+p];h[b+p]=h[m-n+p];h[m-n+p]=r}b+=n;m-=n}b=g}return b};function Hf(a,b){cf.call(this);this.d=[];this.k=-1;this.l=null;this.q=this.n=this.o=-1;this.i=null;this.J(a,b)}E(Hf,cf);l=Hf.prototype;l.Le=function(a){null===this.h?this.h=a.h.slice():Ta(this.h,a.h);this.d.push(this.h.length);this.u()};l.I=function(){var a=new Hf(null);If(a,this.b,this.h.slice(),this.d.slice());return a};
l.ha=function(a,b,c,d){if(d<Ke(this.p(),a,b))return d;this.n!=this.c&&(this.o=Math.sqrt(nf(this.h,0,this.d,this.a,0)),this.n=this.c);return pf(this.h,0,this.d,this.a,this.o,!0,a,b,c,d)};l.Qa=function(a,b){return Cf(Jf(this),0,this.d,this.a,a,b)};l.Fg=function(){return jf(Jf(this),0,this.d,this.a)};l.v=function(){return uf(this.h,0,this.d,this.a)};function Kf(a){if(a.k!=a.c){var b=Re(a.p());a.l=Df(Jf(a),0,a.d,a.a,b,0);a.k=a.c}return a.l}l.gf=function(){return new zf(Kf(this))};
l.of=function(a){if(0>a||this.d.length<=a)return null;var b=new xf(null);yf(b,this.b,this.h.slice(0===a?0:this.d[a-1],this.d[a]));return b};l.Hd=function(){var a=this.b,b=this.h,c=this.d,d=[],e=0,f,g;f=0;for(g=c.length;f<g;++f){var h=c[f],m=new xf(null);yf(m,a,b.slice(e,h));d.push(m);e=h}return d};function Jf(a){if(a.q!=a.c){var b=a.h;Ff(b,a.d,a.a)?a.i=b:(a.i=b.slice(),a.i.length=Gf(a.i,0,a.d,a.a));a.q=a.c}return a.i}
l.hb=function(a){var b=[],c=[];b.length=wf(this.h,0,this.d,this.a,Math.sqrt(a),b,0,c);a=new Hf(null);If(a,"XY",b,c);return a};l.C=ca("Polygon");l.J=function(a,b){if(null===a)If(this,"XY",null,this.d);else{ff(this,b,a,2);null===this.h&&(this.h=[]);var c=sf(this.h,0,a,this.a,this.d);this.h.length=0===c.length?0:c[c.length-1];this.u()}};function If(a,b,c,d){ef(a,b,c);a.d=d;a.u()};/*
Latitude/longitude spherical geodesy formulae taken from
http://www.movable-type.co.uk/scripts/latlong.html
Licenced under CC-BY-3.0.
*/
function Lf(a){this.radius=a}function Mf(a,b,c){var d=Sb(b[1]),e=Sb(c[1]),f=(e-d)/2;b=Sb(c[0]-b[0])/2;d=Math.sin(f)*Math.sin(f)+Math.sin(b)*Math.sin(b)*Math.cos(d)*Math.cos(e);return 2*a.radius*Math.atan2(Math.sqrt(d),Math.sqrt(1-d))};var Nf=new Lf(6370997);var Of={},Qf="object"==typeof Proj4js;Of.degrees=2*Math.PI*Nf.radius/360;Of.ft=0.3048;Of.m=1;function Rf(a){this.a=a.code;this.oa=a.units;this.k=t(a.extent)?a.extent:null;this.c=t(a.axisOrientation)?a.axisOrientation:"enu";this.j=t(a.global)?a.global:!1;this.f=null}Rf.prototype.i=k("a");Rf.prototype.p=k("k");Rf.prototype.l=k("oa");Rf.prototype.b=function(){return Of[this.oa]};function Sf(a){return a.c}
function Tf(a,b){var c={units:a.units,axisOrientation:a.axis};fc(c,b);Rf.call(this,c);this.g=a;this.e=null}E(Tf,Rf);Tf.prototype.b=function(){var a=this.g.to_meter;t(a)||(a=Of[this.oa]);return a};
Tf.prototype.d=function(a,b){if("degrees"==this.oa)return a;null===this.e&&(this.e=Uf(this,Vf({code:"EPSG:4326",extent:null})));var c=[b[0]-a/2,b[1],b[0]+a/2,b[1],b[0],b[1]-a/2,b[0],b[1]+a/2],c=this.e(c,c,2),d=Mf(Nf,c.slice(0,2),c.slice(2,4)),c=Mf(Nf,c.slice(4,6),c.slice(6,8)),d=(d+c)/2;"ft"==this.oa&&(d/=0.3048);return d};function Wf(a){return a.g}var Xf={},Yf={},Zf={};function $f(a){ag(a);La(a,function(b){La(a,function(a){b!==a&&bg(b,a,cg)})})}
function dg(){var a=eg,b=fg,c=gg;La(hg,function(d){La(a,function(a){bg(d,a,b);bg(a,d,c)})})}function ig(a){Yf[a.a]=a;bg(a,a,cg)}function ag(a){La(a,function(a){ig(a)})}function jg(a){return null!=a?la(a)?kg(a):a:kg("EPSG:3857")}function bg(a,b,c){a=a.a;b=b.a;a in Zf||(Zf[a]={});Zf[a][b]=c}function kg(a){var b;a instanceof Rf?b=a:la(a)?(b=Yf[a],Qf&&!t(b)&&(b=Vf({code:a,extent:null})),t(b)||(b=null)):b=null;return b}
function Vf(a){var b=a.code,c=Xf[b];if(!t(c)){var d=new Proj4js.Proj(b),e=d.srsCode,c=Xf[e];t(c)||(a=dc(a),a.code=e,c=new Tf(d,a),Xf[e]=c);Xf[b]=c}return c}function lg(a,b){var c=kg(a),d=kg(b);return Uf(c,d)}
function Uf(a,b){var c=a.a,d=b.a,e;c in Zf&&d in Zf[c]&&(e=Zf[c][d]);if(Qf&&!t(e)){var f=Wf(a instanceof Tf?a:Vf({code:c,extent:null})),g=Wf(b instanceof Tf?b:Vf({code:d,extent:null}));e=function(a,b,c){var d=a.length;c=1<c?c:2;t(b)||(b=2<c?a.slice():Array(d));for(var e,q=0;q<d;q+=c)e=new Proj4js.Point(a[q],a[q+1]),e=Proj4js.transform(f,g,e),b[q]=e.x,b[q+1]=e.y;return b};bg(a,b,e)}t(e)||(e=mg);return e}function mg(a,b){if(t(b)&&a!==b){for(var c=0,d=a.length;c<d;++c)b[c]=a[c];a=b}return a}
function cg(a,b){var c;if(t(b)){c=0;for(var d=a.length;c<d;++c)b[c]=a[c];c=b}else c=a.slice();return c};var ng=new Lf(6378137);function R(a){M.call(this);a=t(a)?a:{};this.a=null;this.d=mg;this.b=void 0;H(this,Gd("projection"),this.vg,!1,this);H(this,Gd("tracking"),this.wg,!1,this);t(a.projection)&&this.l(kg(a.projection));t(a.trackingOptions)&&this.n(a.trackingOptions);this.f(t(a.tracking)?a.tracking:!1)}E(R,M);l=R.prototype;l.w=function(){this.f(!1);R.D.w.call(this)};l.vg=function(){var a=this.j();null!=a&&(this.d=Uf(kg("EPSG:4326"),a),null===this.a||this.t("position",this.d(this.a)))};
l.wg=function(){if(Bc.td){var a=this.k();a&&!t(this.b)?this.b=s.navigator.geolocation.watchPosition(B(this.wh,this),B(this.xh,this),this.g()):!a&&t(this.b)&&(s.navigator.geolocation.clearWatch(this.b),this.b=void 0)}};
l.wh=function(a){var b=a.coords;this.t("accuracy",b.accuracy);this.t("altitude",null===b.altitude?void 0:b.altitude);this.t("altitudeAccuracy",null===b.altitudeAccuracy?void 0:b.altitudeAccuracy);this.t("heading",null===b.heading?void 0:Sb(b.heading));null===this.a?this.a=[b.longitude,b.latitude]:(this.a[0]=b.longitude,this.a[1]=b.latitude);a=this.d(this.a);this.t("position",a);this.t("speed",null===b.speed?void 0:b.speed);a=this.a;var c=b.accuracy,d=t(void 0)?void 0:32,b=[],e;for(e=0;e<d;++e){var f=
2*Math.PI*e/d,g=Sb(a[1]),h=c/ng.radius,m=Math.asin(Math.sin(g)*Math.cos(h)+Math.cos(g)*Math.sin(h)*Math.cos(f));Ta(b,[180*(Sb(a[0])+Math.atan2(Math.sin(f)*Math.sin(h)*Math.cos(g),Math.cos(h)-Math.sin(g)*Math.sin(m)))/Math.PI,180*m/Math.PI])}b.push(b[0],b[1]);a=new Hf(null);If(a,"XY",b,[b.length]);a.transform(this.d);this.t("accuracyGeometry",a)};l.xh=function(a){a.type="error";L(this,a)};l.We=function(){return this.r("accuracy")};R.prototype.getAccuracy=R.prototype.We;
R.prototype.o=function(){return this.r("accuracyGeometry")||null};R.prototype.getAccuracyGeometry=R.prototype.o;R.prototype.q=function(){return this.r("altitude")};R.prototype.getAltitude=R.prototype.q;R.prototype.s=function(){return this.r("altitudeAccuracy")};R.prototype.getAltitudeAccuracy=R.prototype.s;R.prototype.G=function(){return this.r("heading")};R.prototype.getHeading=R.prototype.G;R.prototype.N=function(){return this.r("position")};R.prototype.getPosition=R.prototype.N;R.prototype.j=function(){return this.r("projection")};
R.prototype.getProjection=R.prototype.j;R.prototype.A=function(){return this.r("speed")};R.prototype.getSpeed=R.prototype.A;R.prototype.k=function(){return this.r("tracking")};R.prototype.getTracking=R.prototype.k;R.prototype.g=function(){return this.r("trackingOptions")};R.prototype.getTrackingOptions=R.prototype.g;R.prototype.l=function(a){this.t("projection",a)};R.prototype.setProjection=R.prototype.l;R.prototype.f=function(a){this.t("tracking",a)};R.prototype.setTracking=R.prototype.f;
R.prototype.n=function(a){this.t("trackingOptions",a)};R.prototype.setTrackingOptions=R.prototype.n;function og(a,b){yd.call(this);this.a=a;this.state=b}E(og,yd);og.prototype.d=function(){return v(this).toString()};og.prototype.j=k("a");function pg(a,b,c,d,e){og.call(this,a,b);this.i=c;this.c=new Image;null!==d&&(this.c.crossOrigin=d);this.f={};this.e=null;this.n=e}E(pg,og);pg.prototype.b=function(a){if(t(a)){var b=v(a);if(b in this.f)return this.f[b];a=$b(this.f)?this.c:this.c.cloneNode(!1);return this.f[b]=a}return this.c};pg.prototype.d=k("i");pg.prototype.k=function(){this.state=3;La(this.e,K);this.e=null;L(this,"change")};
pg.prototype.l=function(){t(this.c.naturalWidth)||(this.c.naturalWidth=this.c.width,this.c.naturalHeight=this.c.height);this.state=this.c.naturalWidth&&this.c.naturalHeight?2:4;La(this.e,K);this.e=null;L(this,"change")};function qg(){M.call(this);this.k=[0,0]}E(qg,M);qg.prototype.M=ca(null);qg.prototype.Vc=ca(!1);function rg(a,b){a.k[1]+=b};function sg(a){return 1-Math.pow(1-a,3)};function tg(a){return 3*a*a-2*a*a*a}function ug(a){return a}function vg(a){return 0.5>a?tg(2*a):1-tg(2*(a-0.5))};function wg(a){var b=a.source,c=t(a.start)?a.start:xa(),d=b[0],e=b[1],f=t(a.duration)?a.duration:1E3,g=t(a.easing)?a.easing:tg;return function(a,b){if(b.time<c)return b.animate=!0,b.viewHints[0]+=1,!0;if(b.time<c+f){var n=1-g((b.time-c)/f),p=d-b.view2DState.center[0],r=e-b.view2DState.center[1];b.animate=!0;b.view2DState.center[0]+=n*p;b.view2DState.center[1]+=n*r;b.viewHints[0]+=1;return!0}return!1}}
function xg(a){var b=a.rotation,c=t(a.start)?a.start:xa(),d=t(a.duration)?a.duration:1E3,e=t(a.easing)?a.easing:tg;return function(a,g){if(g.time<c)return g.animate=!0,g.viewHints[0]+=1,!0;if(g.time<c+d){var h=1-e((g.time-c)/d),m=b-g.view2DState.rotation;g.animate=!0;g.view2DState.rotation+=h*m;g.viewHints[0]+=1;return!0}return!1}}
function yg(a){var b=a.resolution,c=t(a.start)?a.start:xa(),d=t(a.duration)?a.duration:1E3,e=t(a.easing)?a.easing:tg;return function(a,g){if(g.time<c)return g.animate=!0,g.viewHints[0]+=1,!0;if(g.time<c+d){var h=1-e((g.time-c)/d),m=b-g.view2DState.resolution;g.animate=!0;g.view2DState.resolution+=h*m;g.viewHints[0]+=1;return!0}return!1}};function zg(a,b,c){this.e=a;this.d=b;this.f=c;this.a=[];this.c=this.b=0}zg.prototype.update=function(a,b){this.a.push(a,b,xa())};function Ag(a){var b=xa()-a.f,c=a.a.length-3;if(a.a[c+2]<b)return!1;for(var d=c-3;0<=d&&a.a[d+2]>b;)d-=3;if(0<=d){var b=a.a[c+2]-a.a[d+2],e=a.a[c]-a.a[d],c=a.a[c+1]-a.a[d+1];a.b=Math.atan2(c,e);a.c=Math.sqrt(e*e+c*c)/b;return a.c>a.d}return!1}
function Bg(a,b){var c=a.e,d=a.c,e=a.d,f=Math.log(a.d/a.c)/a.e;return wg({source:b,duration:f,easing:function(a){return d*(Math.exp(c*a*f)-1)/(e-d)}})};function Cg(a){if("function"==typeof a.xa)return a.xa();if(la(a))return a.split("");if(ka(a)){for(var b=[],c=a.length,d=0;d<c;d++)b.push(a[d]);return b}return Yb(a)}function Dg(a,b,c){if("function"==typeof a.forEach)a.forEach(b,c);else if(ka(a)||la(a))La(a,b,c);else{var d;if("function"==typeof a.sa)d=a.sa();else if("function"!=typeof a.xa)if(ka(a)||la(a)){d=[];for(var e=a.length,f=0;f<e;f++)d.push(f)}else d=Zb(a);else d=void 0;for(var e=Cg(a),f=e.length,g=0;g<f;g++)b.call(c,e[g],d&&d[g],a)}};function Eg(a,b){this.c={};this.a=[];var c=arguments.length;if(1<c){if(c%2)throw Error("Uneven number of arguments");for(var d=0;d<c;d+=2)Fg(this,arguments[d],arguments[d+1])}else if(a){a instanceof Eg?(c=a.sa(),d=a.xa()):(c=Zb(a),d=Yb(a));for(var e=0;e<c.length;e++)Fg(this,c[e],d[e])}}l=Eg.prototype;l.F=0;l.kd=0;l.ra=k("F");l.xa=function(){Gg(this);for(var a=[],b=0;b<this.a.length;b++)a.push(this.c[this.a[b]]);return a};l.sa=function(){Gg(this);return this.a.concat()};l.Y=function(){return 0==this.F};
l.clear=function(){this.c={};this.kd=this.F=this.a.length=0};l.remove=function(a){return Hg(this.c,a)?(delete this.c[a],this.F--,this.kd++,this.a.length>2*this.F&&Gg(this),!0):!1};function Gg(a){if(a.F!=a.a.length){for(var b=0,c=0;b<a.a.length;){var d=a.a[b];Hg(a.c,d)&&(a.a[c++]=d);b++}a.a.length=c}if(a.F!=a.a.length){for(var e={},c=b=0;b<a.a.length;)d=a.a[b],Hg(e,d)||(a.a[c++]=d,e[d]=1),b++;a.a.length=c}}function Ig(a,b){return Hg(a.c,b)?a.c[b]:void 0}
function Fg(a,b,c){Hg(a.c,b)||(a.F++,a.a.push(b),a.kd++);a.c[b]=c}l.I=function(){return new Eg(this)};function Hg(a,b){return Object.prototype.hasOwnProperty.call(a,b)};var Jg=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^/?#]*)@)?([^/#?]*?)(?::([0-9]+))?(?\x3d[/#?]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#(.*))?$");function Kg(a){if(Lg){Lg=!1;var b=s.location;if(b){var c=b.href;if(c&&(c=(c=Kg(c)[3]||null)&&decodeURIComponent(c))&&c!=b.hostname)throw Lg=!0,Error();}}return a.match(Jg)}var Lg=vb;function Mg(a){if(a[1]){var b=a[0],c=b.indexOf("#");0<=c&&(a.push(b.substr(c)),a[0]=b=b.substr(0,c));c=b.indexOf("?");0>c?a[1]="?":c==b.length-1&&(a[1]=void 0)}return a.join("")}
function Ng(a,b,c){if(ja(b))for(var d=0;d<b.length;d++)Ng(a,String(b[d]),c);else null!=b&&c.push("\x26",a,""===b?"":"\x3d",encodeURIComponent(String(b)))}function Og(a,b){for(var c in b)Ng(c,b[c],a);return a};function Pg(a,b){var c;if(a instanceof Pg)this.Va=t(b)?b:a.Va,Qg(this,a.La),c=a.cb,Rg(this),this.cb=c,c=a.wa,Rg(this),this.wa=c,Sg(this,a.sb),c=a.ua,Rg(this),this.ua=c,Tg(this,a.a.I()),c=a.Ra,Rg(this),this.Ra=c;else if(a&&(c=Kg(String(a)))){this.Va=!!b;Qg(this,c[1]||"",!0);var d=c[2]||"";Rg(this);this.cb=d?decodeURIComponent(d):"";d=c[3]||"";Rg(this);this.wa=d?decodeURIComponent(d):"";Sg(this,c[4]);d=c[5]||"";Rg(this);this.ua=d?decodeURIComponent(d):"";Tg(this,c[6]||"",!0);c=c[7]||"";Rg(this);this.Ra=
c?decodeURIComponent(c):""}else this.Va=!!b,this.a=new Ug(null,0,this.Va)}l=Pg.prototype;l.La="";l.cb="";l.wa="";l.sb=null;l.ua="";l.Ra="";l.kg=!1;l.Va=!1;
l.toString=function(){var a=[],b=this.La;b&&a.push(Vg(b,Wg),":");if(b=this.wa){a.push("//");var c=this.cb;c&&a.push(Vg(c,Wg),"@");a.push(encodeURIComponent(String(b)));b=this.sb;null!=b&&a.push(":",String(b))}if(b=this.ua)this.wa&&"/"!=b.charAt(0)&&a.push("/"),a.push(Vg(b,"/"==b.charAt(0)?Xg:Yg));(b=this.a.toString())&&a.push("?",b);(b=this.Ra)&&a.push("#",Vg(b,Zg));return a.join("")};l.I=function(){return new Pg(this)};
function Qg(a,b,c){Rg(a);a.La=c?b?decodeURIComponent(b):"":b;a.La&&(a.La=a.La.replace(/:$/,""))}function Sg(a,b){Rg(a);if(b){b=Number(b);if(isNaN(b)||0>b)throw Error("Bad port number "+b);a.sb=b}else a.sb=null}function Tg(a,b,c){Rg(a);b instanceof Ug?(a.a=b,$g(a.a,a.Va)):(c||(b=Vg(b,ah)),a.a=new Ug(b,0,a.Va))}function bh(a,b,c){Rg(a);ja(c)||(c=[String(c)]);ch(a.a,b,c)}function Rg(a){if(a.kg)throw Error("Tried to modify a read-only Uri");}
function eh(a){return a instanceof Pg?a.I():new Pg(a,void 0)}
function fh(a,b){a instanceof Pg||(a=eh(a));b instanceof Pg||(b=eh(b));var c=a,d=b,e=c.I(),f=!!d.La;f?Qg(e,d.La):f=!!d.cb;if(f){var g=d.cb;Rg(e);e.cb=g}else f=!!d.wa;f?(g=d.wa,Rg(e),e.wa=g):f=null!=d.sb;g=d.ua;if(f)Sg(e,d.sb);else if(f=!!d.ua)if("/"!=g.charAt(0)&&(c.wa&&!c.ua?g="/"+g:(c=e.ua.lastIndexOf("/"),-1!=c&&(g=e.ua.substr(0,c+1)+g))),".."==g||"."==g)g="";else if(-1!=g.indexOf("./")||-1!=g.indexOf("/.")){for(var c=0==g.lastIndexOf("/",0),g=g.split("/"),h=[],m=0;m<g.length;){var n=g[m++];"."==
n?c&&m==g.length&&h.push(""):".."==n?((1<h.length||1==h.length&&""!=h[0])&&h.pop(),c&&m==g.length&&h.push("")):(h.push(n),c=!0)}g=h.join("/")}f?(c=g,Rg(e),e.ua=c):f=""!==d.a.toString();f?Tg(e,d.a.toString()?decodeURIComponent(d.a.toString()):""):f=!!d.Ra;f&&(d=d.Ra,Rg(e),e.Ra=d);return e}function Vg(a,b){return la(a)?encodeURI(a).replace(b,gh):null}function gh(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)}var Wg=/[#\/\?@]/g,Yg=/[\#\?:]/g,Xg=/[\#\?]/g,ah=/[\#\?@]/g,Zg=/#/g;
function Ug(a,b,c){this.a=a||null;this.c=!!c}function hh(a){if(!a.Q&&(a.Q=new Eg,a.F=0,a.a))for(var b=a.a.split("\x26"),c=0;c<b.length;c++){var d=b[c].indexOf("\x3d"),e=null,f=null;0<=d?(e=b[c].substring(0,d),f=b[c].substring(d+1)):e=b[c];e=decodeURIComponent(e.replace(/\+/g," "));e=ih(a,e);a.add(e,f?decodeURIComponent(f.replace(/\+/g," ")):"")}}l=Ug.prototype;l.Q=null;l.F=null;l.ra=function(){hh(this);return this.F};
l.add=function(a,b){hh(this);this.a=null;a=ih(this,a);var c=Ig(this.Q,a);c||Fg(this.Q,a,c=[]);c.push(b);this.F++;return this};l.remove=function(a){hh(this);a=ih(this,a);return Hg(this.Q.c,a)?(this.a=null,this.F-=Ig(this.Q,a).length,this.Q.remove(a)):!1};l.clear=function(){this.Q=this.a=null;this.F=0};l.Y=function(){hh(this);return 0==this.F};l.sa=function(){hh(this);for(var a=this.Q.xa(),b=this.Q.sa(),c=[],d=0;d<b.length;d++)for(var e=a[d],f=0;f<e.length;f++)c.push(b[d]);return c};
l.xa=function(a){hh(this);var b=[];if(a){var c=a;hh(this);c=ih(this,c);Hg(this.Q.c,c)&&(b=Ra(b,Ig(this.Q,ih(this,a))))}else for(a=this.Q.xa(),c=0;c<a.length;c++)b=Ra(b,a[c]);return b};function ch(a,b,c){a.remove(b);0<c.length&&(a.a=null,Fg(a.Q,ih(a,b),Sa(c)),a.F+=c.length)}
l.toString=function(){if(this.a)return this.a;if(!this.Q)return"";for(var a=[],b=this.Q.sa(),c=0;c<b.length;c++)for(var d=b[c],e=encodeURIComponent(String(d)),d=this.xa(d),f=0;f<d.length;f++){var g=e;""!==d[f]&&(g+="\x3d"+encodeURIComponent(String(d[f])));a.push(g)}return this.a=a.join("\x26")};l.I=function(){var a=new Ug;a.a=this.a;this.Q&&(a.Q=this.Q.I(),a.F=this.F);return a};function ih(a,b){var c=String(b);a.c&&(c=c.toLowerCase());return c}
function $g(a,b){b&&!a.c&&(hh(a),a.a=null,Dg(a.Q,function(a,b){var e=b.toLowerCase();b!=e&&(this.remove(b),ch(this,e,a))},a));a.c=b};function jh(a,b,c){Dc.call(this);this.d=a;this.b=c;this.a=b||window;this.c=B(this.Bd,this)}E(jh,Dc);l=jh.prototype;l.R=null;l.jd=!1;l.start=function(){kh(this);this.jd=!1;var a=lh(this),b=mh(this);a&&!b&&this.a.mozRequestAnimationFrame?(this.R=H(this.a,"MozBeforePaint",this.c),this.a.mozRequestAnimationFrame(null),this.jd=!0):this.R=a&&b?a.call(this.a,this.c):this.a.setTimeout(ud(this.c),20)};
function kh(a){if(null!=a.R){var b=lh(a),c=mh(a);b&&!c&&a.a.mozRequestAnimationFrame?K(a.R):b&&c?c.call(a.a,a.R):a.a.clearTimeout(a.R)}a.R=null}l.Bd=function(){this.jd&&this.R&&K(this.R);this.R=null;this.d.call(this.b,xa())};l.w=function(){kh(this);jh.D.w.call(this)};function lh(a){a=a.a;return a.requestAnimationFrame||a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame||a.msRequestAnimationFrame||null}
function mh(a){a=a.a;return a.cancelRequestAnimationFrame||a.webkitCancelRequestAnimationFrame||a.mozCancelRequestAnimationFrame||a.oCancelRequestAnimationFrame||a.msCancelRequestAnimationFrame||null};var nh;
function oh(){var a=s.MessageChannel;"undefined"===typeof a&&("undefined"!==typeof window&&window.postMessage&&window.addEventListener)&&(a=function(){var a=document.createElement("iframe");a.style.display="none";a.src="";document.body.appendChild(a);var b=a.contentWindow,a=b.document;a.open();a.write("");a.close();var c="callImmediate"+Math.random(),d=b.location.protocol+"//"+b.location.host,a=B(function(a){if(a.origin==d||a.data==c)this.port1.onmessage()},this);b.addEventListener("message",a,!1);
this.port1={};this.port2={postMessage:function(){b.postMessage(c,d)}}});if("undefined"!==typeof a){var b=new a,c={},d=c;b.port1.onmessage=function(){c=c.next;var a=c.xd;c.xd=null;a()};return function(a){d.next={xd:a};d=d.next;b.port2.postMessage(0)}}return"undefined"!==typeof document&&"onreadystatechange"in document.createElement("script")?function(a){var b=document.createElement("script");b.onreadystatechange=function(){b.onreadystatechange=null;b.parentNode.removeChild(b);b=null;a();a=null};document.documentElement.appendChild(b)}:
function(a){s.setTimeout(a,0)}};function ph(a){yd.call(this);this.Wb=a||window;this.kc=H(this.Wb,"resize",this.Zf,!1,this);this.Wa=mc(this.Wb||window)}E(ph,yd);l=ph.prototype;l.kc=null;l.Wb=null;l.Wa=null;l.w=function(){ph.D.w.call(this);this.kc&&(K(this.kc),this.kc=null);this.Wa=this.Wb=null};l.Zf=function(){var a=mc(this.Wb||window);a==this.Wa||a&&this.Wa&&a.width==this.Wa.width&&a.height==this.Wa.height||(this.Wa=a,L(this,"resize"))};function qh(a,b,c,d,e){if(!(F||vb&&Ib("525")))return!0;if(lb&&e)return rh(a);if(e&&!d||!c&&(17==b||18==b||lb&&91==b))return!1;if(vb&&d&&c)switch(a){case 220:case 219:case 221:case 192:case 186:case 189:case 187:case 188:case 190:case 191:case 192:case 222:return!1}if(F&&d&&b==a)return!1;switch(a){case 13:return!(F&&F&&9<=Kb);case 27:return!vb}return rh(a)}
function rh(a){if(48<=a&&57>=a||96<=a&&106>=a||65<=a&&90>=a||vb&&0==a)return!0;switch(a){case 32:case 63:case 107:case 109:case 110:case 111:case 186:case 59:case 189:case 187:case 61:case 188:case 190:case 191:case 192:case 222:case 219:case 220:case 221:return!0;default:return!1}}function sh(a){switch(a){case 61:return 187;case 59:return 186;case 224:return 91;case 0:return 224;default:return a}};function th(a,b){yd.call(this);a&&uh(this,a,b)}E(th,yd);l=th.prototype;l.Pb=null;l.nc=null;l.Rc=null;l.oc=null;l.Z=-1;l.Ha=-1;l.Fc=!1;
var vh={3:13,12:144,63232:38,63233:40,63234:37,63235:39,63236:112,63237:113,63238:114,63239:115,63240:116,63241:117,63242:118,63243:119,63244:120,63245:121,63246:122,63247:123,63248:44,63272:46,63273:36,63275:35,63276:33,63277:34,63289:144,63302:45},wh={Up:38,Down:40,Left:37,Right:39,Enter:13,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,"U+007F":46,Home:36,End:35,PageUp:33,PageDown:34,Insert:45},xh=F||vb&&Ib("525"),yh=lb&&ub;
th.prototype.a=function(a){vb&&(17==this.Z&&!a.Ob||18==this.Z&&!a.ba||lb&&91==this.Z&&!a.Oc)&&(this.Ha=this.Z=-1);-1==this.Z&&(a.Ob&&17!=a.ya?this.Z=17:a.ba&&18!=a.ya?this.Z=18:a.Oc&&91!=a.ya&&(this.Z=91));xh&&!qh(a.ya,this.Z,a.za,a.Ob,a.ba)?this.handleEvent(a):(this.Ha=ub?sh(a.ya):a.ya,yh&&(this.Fc=a.ba))};th.prototype.c=function(a){this.Ha=this.Z=-1;this.Fc=a.ba};
th.prototype.handleEvent=function(a){var b=a.O,c,d,e=b.altKey;F&&"keypress"==a.type?(c=this.Ha,d=13!=c&&27!=c?b.keyCode:0):vb&&"keypress"==a.type?(c=this.Ha,d=0<=b.charCode&&63232>b.charCode&&rh(c)?b.charCode:0):tb?(c=this.Ha,d=rh(c)?b.keyCode:0):(c=b.keyCode||this.Ha,d=b.charCode||0,yh&&(e=this.Fc),lb&&(63==d&&224==c)&&(c=191));var f=c,g=b.keyIdentifier;c?63232<=c&&c in vh?f=vh[c]:25==c&&a.za&&(f=9):g&&g in wh&&(f=wh[g]);a=f==this.Z;this.Z=f;b=new zh(f,d,a,b);b.ba=e;L(this,b)};
function uh(a,b,c){a.oc&&Ah(a);a.Pb=b;a.nc=H(a.Pb,"keypress",a,c);a.Rc=H(a.Pb,"keydown",a.a,c,a);a.oc=H(a.Pb,"keyup",a.c,c,a)}function Ah(a){a.nc&&(K(a.nc),K(a.Rc),K(a.oc),a.nc=null,a.Rc=null,a.oc=null);a.Pb=null;a.Z=-1;a.Ha=-1}th.prototype.w=function(){th.D.w.call(this);Ah(this)};function zh(a,b,c,d){d&&Rc(this,d,void 0);this.type="key";this.ya=a;this.Nc=b;this.a=c}E(zh,Qc);function Bh(a,b,c,d){this.top=a;this.right=b;this.bottom=c;this.left=d}l=Bh.prototype;l.I=function(){return new Bh(this.top,this.right,this.bottom,this.left)};l.contains=function(a){return this&&a?a instanceof Bh?a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom:!1};
l.ceil=function(){this.top=Math.ceil(this.top);this.right=Math.ceil(this.right);this.bottom=Math.ceil(this.bottom);this.left=Math.ceil(this.left);return this};l.floor=function(){this.top=Math.floor(this.top);this.right=Math.floor(this.right);this.bottom=Math.floor(this.bottom);this.left=Math.floor(this.left);return this};l.round=function(){this.top=Math.round(this.top);this.right=Math.round(this.right);this.bottom=Math.round(this.bottom);this.left=Math.round(this.left);return this};
l.scale=function(a,b){var c=ma(b)?b:a;this.left*=a;this.right*=a;this.top*=c;this.bottom*=c;return this};function Ch(a,b,c,d){this.left=a;this.top=b;this.width=c;this.height=d}l=Ch.prototype;l.I=function(){return new Ch(this.left,this.top,this.width,this.height)};l.contains=function(a){return a instanceof Ch?this.left<=a.left&&this.left+this.width>=a.left+a.width&&this.top<=a.top&&this.top+this.height>=a.top+a.height:a.x>=this.left&&a.x<=this.left+this.width&&a.y>=this.top&&a.y<=this.top+this.height};
l.ceil=function(){this.left=Math.ceil(this.left);this.top=Math.ceil(this.top);this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};l.floor=function(){this.left=Math.floor(this.left);this.top=Math.floor(this.top);this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};l.round=function(){this.left=Math.round(this.left);this.top=Math.round(this.top);this.width=Math.round(this.width);this.height=Math.round(this.height);return this};
l.scale=function(a,b){var c=ma(b)?b:a;this.left*=a;this.width*=a;this.top*=c;this.height*=c;return this};function Dh(a,b){var c=ic(a);return c.defaultView&&c.defaultView.getComputedStyle&&(c=c.defaultView.getComputedStyle(a,null))?c[b]||c.getPropertyValue(b)||"":""}function Eh(a,b){return Dh(a,b)||(a.currentStyle?a.currentStyle[b]:null)||a.style&&a.style[b]}function Fh(a,b,c){var d,e=ub&&(lb||yb)&&Ib("1.9");b instanceof Tb?(d=b.x,b=b.y):(d=b,b=c);a.style.left=Gh(d,e);a.style.top=Gh(b,e)}
function Hh(a){var b;try{b=a.getBoundingClientRect()}catch(c){return{left:0,top:0,right:0,bottom:0}}F&&(a=a.ownerDocument,b.left-=a.documentElement.clientLeft+a.body.clientLeft,b.top-=a.documentElement.clientTop+a.body.clientTop);return b}
function Ih(a){if(F&&!(F&&8<=Kb))return a.offsetParent;var b=ic(a),c=Eh(a,"position"),d="fixed"==c||"absolute"==c;for(a=a.parentNode;a&&a!=b;a=a.parentNode)if(c=Eh(a,"position"),d=d&&"static"==c&&a!=b.documentElement&&a!=b.body,!d&&(a.scrollWidth>a.clientWidth||a.scrollHeight>a.clientHeight||"fixed"==c||"absolute"==c||"relative"==c))return a;return null}
function Jh(a){var b,c=ic(a),d=Eh(a,"position"),e=ub&&c.getBoxObjectFor&&!a.getBoundingClientRect&&"absolute"==d&&(b=c.getBoxObjectFor(a))&&(0>b.screenX||0>b.screenY),f=new Tb(0,0),g;b=c?ic(c):document;(g=!F)||(g=F&&9<=Kb)||(gc(b),g=!0);g=g?b.documentElement:b.body;if(a==g)return f;if(a.getBoundingClientRect)b=Hh(a),a=yc(gc(c)),f.x=b.left+a.x,f.y=b.top+a.y;else if(c.getBoxObjectFor&&!e)b=c.getBoxObjectFor(a),a=c.getBoxObjectFor(g),f.x=b.screenX-a.screenX,f.y=b.screenY-a.screenY;else{e=a;do{f.x+=e.offsetLeft;
f.y+=e.offsetTop;e!=a&&(f.x+=e.clientLeft||0,f.y+=e.clientTop||0);if(vb&&"fixed"==Eh(e,"position")){f.x+=c.body.scrollLeft;f.y+=c.body.scrollTop;break}e=e.offsetParent}while(e&&e!=a);if(tb||vb&&"absolute"==d)f.y-=c.body.offsetTop;for(e=a;(e=Ih(e))&&e!=c.body&&e!=g;)f.x-=e.scrollLeft,tb&&"TR"==e.tagName||(f.y-=e.scrollTop)}return f}function Kh(a,b){var c=Lh(a),d=Lh(b);return new Tb(c.x-d.x,c.y-d.y)}
function Lh(a){if(1==a.nodeType){var b;if(a.getBoundingClientRect)b=Hh(a),b=new Tb(b.left,b.top);else{b=yc(gc(a));var c=Jh(a);b=new Tb(c.x-b.x,c.y-b.y)}if(ub&&!Ib(12)){var d;F?d="-ms-transform":vb?d="-webkit-transform":tb?d="-o-transform":ub&&(d="-moz-transform");var e;d&&(e=Eh(a,d));e||(e=Eh(a,"transform"));a=e?(a=e.match(Mh))?new Tb(parseFloat(a[1]),parseFloat(a[2])):new Tb(0,0):new Tb(0,0);a=new Tb(b.x+a.x,b.y+a.y)}else a=b;return a}d=na(a.Xe);e=a;a.targetTouches?e=a.targetTouches[0]:d&&a.O.targetTouches&&
(e=a.O.targetTouches[0]);return new Tb(e.clientX,e.clientY)}function Gh(a,b){"number"==typeof a&&(a=(b?Math.round(a):a)+"px");return a}function Nh(a){var b=Oh;if("none"!=Eh(a,"display"))return b(a);var c=a.style,d=c.display,e=c.visibility,f=c.position;c.visibility="hidden";c.position="absolute";c.display="inline";a=b(a);c.display=d;c.position=f;c.visibility=e;return a}
function Oh(a){var b=a.offsetWidth,c=a.offsetHeight,d=vb&&!b&&!c;return t(b)&&!d||!a.getBoundingClientRect?new Vb(b,c):(a=Hh(a),new Vb(a.right-a.left,a.bottom-a.top))}function Ph(a,b){var c=a.style;"opacity"in c?c.opacity=b:"MozOpacity"in c?c.MozOpacity=b:"filter"in c&&(c.filter=""===b?"":"alpha(opacity\x3d"+100*b+")")}function Qh(a,b){a.style.display=b?"":"none"}function Rh(a){return"rtl"==Eh(a,"direction")}
function Sh(a){var b=ic(a),c=F&&a.currentStyle,d;if(d=c)gc(b),d="auto"!=c.width&&"auto"!=c.height&&!c.boxSizing;if(d)return b=Th(a,c.width,"width","pixelWidth"),a=Th(a,c.height,"height","pixelHeight"),new Vb(b,a);c=new Vb(a.offsetWidth,a.offsetHeight);b=Uh(a,"padding");a=Vh(a);return new Vb(c.width-a.left-b.left-b.right-a.right,c.height-a.top-b.top-b.bottom-a.bottom)}
function Th(a,b,c,d){if(/^\d+px?$/.test(b))return parseInt(b,10);var e=a.style[c],f=a.runtimeStyle[c];a.runtimeStyle[c]=a.currentStyle[c];a.style[c]=b;b=a.style[d];a.style[c]=e;a.runtimeStyle[c]=f;return b}function Wh(a,b){var c=a.currentStyle?a.currentStyle[b]:null;return c?Th(a,c,"left","pixelLeft"):0}
function Uh(a,b){if(F){var c=Wh(a,b+"Left"),d=Wh(a,b+"Right"),e=Wh(a,b+"Top"),f=Wh(a,b+"Bottom");return new Bh(e,d,f,c)}c=Dh(a,b+"Left");d=Dh(a,b+"Right");e=Dh(a,b+"Top");f=Dh(a,b+"Bottom");return new Bh(parseFloat(e),parseFloat(d),parseFloat(f),parseFloat(c))}var Xh={thin:2,medium:4,thick:6};function Yh(a,b){if("none"==(a.currentStyle?a.currentStyle[b+"Style"]:null))return 0;var c=a.currentStyle?a.currentStyle[b+"Width"]:null;return c in Xh?Xh[c]:Th(a,c,"left","pixelLeft")}
function Vh(a){if(F){var b=Yh(a,"borderLeft"),c=Yh(a,"borderRight"),d=Yh(a,"borderTop");a=Yh(a,"borderBottom");return new Bh(d,c,a,b)}b=Dh(a,"borderLeftWidth");c=Dh(a,"borderRightWidth");d=Dh(a,"borderTopWidth");a=Dh(a,"borderBottomWidth");return new Bh(parseFloat(d),parseFloat(c),parseFloat(a),parseFloat(b))}var Mh=/matrix\([0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, ([0-9\.\-]+)p?x?, ([0-9\.\-]+)p?x?\)/;function Zh(a,b){yd.call(this);this.a=a;var c=oa(this.a)&&1==this.a.nodeType?this.a:this.a?this.a.body:null;this.e=!!c&&Rh(c);this.c=H(this.a,ub?"DOMMouseScroll":"mousewheel",this,b)}E(Zh,yd);
Zh.prototype.handleEvent=function(a){var b=0,c=0,d=0;a=a.O;if("mousewheel"==a.type){c=1;if(F||vb&&(mb||Ib("532.0")))c=40;d=$h(-a.wheelDelta,c);t(a.wheelDeltaX)?(b=$h(-a.wheelDeltaX,c),c=$h(-a.wheelDeltaY,c)):c=d}else d=a.detail,100<d?d=3:-100>d&&(d=-3),t(a.axis)&&a.axis===a.HORIZONTAL_AXIS?b=d:c=d;ma(this.b)&&(b=Qb(b,-this.b,this.b));ma(this.d)&&(c=Qb(c,-this.d,this.d));this.e&&(b=-b);b=new ai(d,a,b,c);L(this,b)};function $h(a,b){return vb&&(lb||nb)&&0!=a%b?a:a/b}
Zh.prototype.w=function(){Zh.D.w.call(this);K(this.c);this.c=null};function ai(a,b,c,d){b&&Rc(this,b,void 0);this.type="mousewheel";this.d=a;this.b=c;this.a=d}E(ai,Qc);function bi(a,b,c){Ic.call(this,a);this.map=b;this.b=t(c)?c:null}E(bi,Ic);function ci(a,b,c,d){bi.call(this,a,b,d);this.a=c;this.originalEvent=c.O;this.coordinate=b.Gd(this.originalEvent);this.pixel=b.hc(this.originalEvent)}E(ci,bi);ci.prototype.L=function(){ci.D.L.call(this);this.a.L()};ci.prototype.Aa=function(){ci.D.Aa.call(this);this.a.Aa()};
function di(a){yd.call(this);this.a=a;this.g=0;this.b=!1;this.qa=this.f=this.e=this.d=this.c=null;a=this.a.b;this.i=[H(a,"mousemove",this.le,!1,this),H(a,"click",this.le,!1,this)];this.d=H(a,"mousedown",this.Rf,!1,this);this.e=H(a,"MSPointerDown",this.Tf,!1,this);this.f=H(a,"touchstart",this.fg,!1,this)}E(di,yd);function ei(a,b){if(0!==a.g){s.clearTimeout(a.g);a.g=0;var c=new ci(fi,a.a,b);L(a,c)}else a.g=s.setTimeout(B(function(){this.g=0;var a=new ci(gi,this.a,b);L(this,a)},a),250)}l=di.prototype;
l.Sf=function(a){this.qa&&(La(this.c,K),this.c=null,this.b?(a=new ci(hi,this.a,a),L(this,a)):Tc(a)&&ei(this,a))};l.Rf=function(a){null!==this.e&&(K(this.e),this.e=null,K(this.f),this.f=null);var b=new ci(ii,this.a,a);L(this,b);this.qa=a;this.b=!1;this.c=[H(s.document,"mousemove",this.xg,!1,this),H(s.document,"mouseup",this.Sf,!1,this)];a.L()};l.xg=function(a){var b;this.b||(this.b=!0,b=new ci(ji,this.a,this.qa),L(this,b));b=new ci(ki,this.a,a);L(this,b)};
l.Tf=function(a){null!==this.d&&(K(this.d),this.d=null,K(this.f),this.f=null);var b=new ci(li,this.a,a);L(this,b);this.qa=a;this.b=!1;this.c=[H(s.document,"MSPointerMove",this.Uf,!1,this),H(s.document,"MSPointerUp",this.Vf,!1,this)];a.L()};l.Uf=function(a){if(a.clientX!=this.qa.clientX||a.clientY!=this.qa.clientY)this.b=!0,a=new ci(mi,this.a,a),L(this,a)};l.Vf=function(a){var b=new ci(ni,this.a,a);L(this,b);La(this.c,K);!this.b&&Tc(a)&&ei(this,this.qa)};
l.fg=function(a){null!==this.d&&(K(this.d),this.d=null,K(this.e),this.e=null);var b=new ci(li,this.a,a);L(this,b);this.qa=a;this.b=!1;null===this.c&&(this.c=[H(s.document,"touchmove",this.eg,!1,this),H(s.document,"touchend",this.dg,!1,this)]);a.L()};l.eg=function(a){this.b=!0;var b=new ci(mi,this.a,a);L(this,b);a.L()};l.dg=function(a){var b=new ci(ni,this.a,a);L(this,b);0===a.O.targetTouches.length&&(La(this.c,K),this.c=null);this.b||ei(this,this.qa)};
l.w=function(){null!==this.i&&(La(this.i,K),this.i=null);null!==this.d&&(K(this.d),this.d=null);null!==this.e&&(K(this.e),this.e=null);null!==this.f&&(K(this.f),this.f=null);null!==this.c&&(La(this.c,K),this.c=null);di.D.w.call(this)};l.le=function(a){L(this,new ci(a.type,this.a,a))};var fi="dblclick",ii="down",ji="dragstart",ki="drag",hi="dragend",gi="singleclick",li="touchstart",mi="touchmove",ni="touchend",oi={ci:"click",di:fi,ii:"mousemove",ei:ii,hi:ji,fi:ki,gi:hi,ji:gi,ni:li,mi:mi,li:ni};function pi(a,b){this.f=a;this.e=b;this.a=[];this.c=[];this.b={}}pi.prototype.clear=function(){this.a.length=0;this.c.length=0;ac(this.b)};function qi(a){var b=a.a,c=a.c,d=b[0];1==b.length?(b.length=0,c.length=0):(b[0]=b.pop(),c[0]=c.pop(),ri(a,0));b=a.e(d);delete a.b[b];return d}function si(a,b){var c=a.f(b);Infinity!=c&&(a.a.push(b),a.c.push(c),a.b[a.e(b)]=!0,ti(a,0,a.a.length-1))}pi.prototype.ra=function(){return this.a.length};pi.prototype.Y=function(){return 0===this.a.length};
function ri(a,b){for(var c=a.a,d=a.c,e=c.length,f=c[b],g=d[b],h=b;b<e>>1;){var m=2*b+1,n=2*b+2,m=n<e&&d[n]<d[m]?n:m;c[b]=c[m];d[b]=d[m];b=m}c[b]=f;d[b]=g;ti(a,h,b)}function ti(a,b,c){var d=a.a;a=a.c;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 ui(a){var b=a.f,c=a.a,d=a.c,e=0,f=c.length,g,h,m;for(h=0;h<f;++h)g=c[h],m=b(g),Infinity==m?delete a.b[a.e(g)]:(d[e]=m,c[e++]=g);c.length=e;d.length=e;for(b=(a.a.length>>1)-1;0<=b;b--)ri(a,b)};function vi(a,b){pi.call(this,function(b){return a.apply(null,b)},function(a){return a[0].d()});this.i=b;this.d=0}E(vi,pi);vi.prototype.g=function(){--this.d;this.i()};function wi(a){return function(b){if(t(b))return[Qb(b[0],a[0],a[2]),Qb(b[1],a[1],a[3])]}}function xi(a){return a};function yi(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 zi(a){return function(b,c,d){if(t(b))return b=yi(a,b,d),b=Qb(b+c,0,a.length-1),a[b]}}function Ai(a,b,c){return function(d,e,f){if(t(d))return f=0<f?0:0>f?1:0.5,d=Math.floor(Math.log(b/d)/Math.log(a)+f),e=Math.max(d+e,0),t(c)&&(e=Math.min(e,c)),b/Math.pow(a,e)}};function Bi(a){if(t(a))return 0}function Ci(a,b){if(t(a))return a+b}function Di(a){var b=2*Math.PI/a;return function(a,d){if(t(a))return a=Math.floor((a+d)/b+0.5)*b}}function Ei(){var a=Sb(5);return function(b,c){if(t(b))return Math.abs(b+c)<=a?0:b+c}};function Fi(a,b,c){this.center=a;this.resolution=b;this.rotation=c};function S(a){qg.call(this);a=a||{};var b={};b.center=t(a.center)?a.center:null;b.projection=jg(a.projection);var c,d,e;if(t(a.resolutions))c=a.resolutions,d=c[0],e=c[c.length-1],c=zi(c);else{d=a.maxResolution;t(d)||(d=a.projection,e=jg(d).p(),d=(null===e?360*Of.degrees/Of[d.oa]:Math.max(e[2]-e[0],e[3]-e[1]))/256);c=a.maxZoom;t(c)||(c=28);var f=a.zoomFactor;t(f)||(f=2);e=d/Math.pow(f,c);c=Ai(f,d,c)}this.j=d;this.n=e;(t(a.enableRotation)?a.enableRotation:1)?(d=a.constrainRotation,d=t(d)&&!0!==d?!1===
d?Ci:ma(d)?Di(d):Ci:Ei()):d=Bi;this.f=new Fi(t(a.extent)?wi(a.extent):xi,c,d);t(a.resolution)?b.resolution=a.resolution:t(a.zoom)&&(b.resolution=this.constrainResolution(this.j,a.zoom));b.rotation=t(a.rotation)?a.rotation:0;this.W(b)}E(S,qg);S.prototype.constrainResolution=function(a,b,c){return this.f.resolution(a,b||0,c||0)};S.prototype.constrainRotation=function(a,b){return this.f.rotation(a,b||0)};S.prototype.a=function(){return this.r("center")};S.prototype.getCenter=S.prototype.a;
S.prototype.q=function(a){var b=this.a(),c=this.b();return[b[0]-c*a[0]/2,b[1]-c*a[1]/2,b[0]+c*a[0]/2,b[1]+c*a[1]/2]};S.prototype.l=function(){return this.r("projection")};S.prototype.getProjection=S.prototype.l;S.prototype.b=function(){return this.r("resolution")};S.prototype.getResolution=S.prototype.b;function Gi(a,b){return Math.max((a[2]-a[0])/b[0],(a[3]-a[1])/b[1])}function Hi(a){var b=a.j,c=Math.log(b/a.n)/Math.log(2);return function(a){return b/Math.pow(2,a*c)}}S.prototype.g=function(){return this.r("rotation")};
S.prototype.getRotation=S.prototype.g;function Ii(a){var b=a.j,c=Math.log(b/a.n)/Math.log(2);return function(a){return Math.log(b/a)/Math.log(2)/c}}l=S.prototype;l.M=function(){return this};function Ji(a){var b=a.a(),c=a.l(),d=a.b();a=a.g();return{center:b.slice(),projection:t(c)?c:null,resolution:d,rotation:t(a)?a:0}}l.Af=function(){var a,b=this.b();if(t(b)){var c,d=0;do{c=this.constrainResolution(this.j,d);if(c==b){a=d;break}++d}while(c>this.n)}return a};
l.Ed=function(a,b){if(!Xe(a)){this.$(Re(a));var c=Gi(a,b),d=this.constrainResolution(c,0,0);d<c&&(d=this.constrainResolution(d,-1,0));this.d(d)}};
l.Ue=function(a,b,c){var d=t(c)?c:{};c=t(d.padding)?d.padding:[0,0,0,0];var e=t(d.constrainResolution)?d.constrainResolution:!0,f=t(d.nearest)?d.nearest:!1,g=t(d.minResolution)?d.minResolution:0,h=a.h,m=this.g(),d=Math.cos(-m),m=Math.sin(-m),n=Infinity,p=Infinity,r=-Infinity,q=-Infinity;a=a.a;for(var u=0,y=h.length;u<y;u+=a)var x=h[u]*d-h[u+1]*m,w=h[u]*m+h[u+1]*d,n=Math.min(n,x),p=Math.min(p,w),r=Math.max(r,x),q=Math.max(q,w);b=Gi([n,p,r,q],[b[0]-c[1]-c[3],b[1]-c[0]-c[2]]);b=isNaN(b)?g:Math.max(b,
g);e&&(e=this.constrainResolution(b,0,0),!f&&e<b&&(e=this.constrainResolution(e,-1,0)),b=e);this.d(b);m=-m;f=(n+r)/2+(c[1]-c[3])/2*b;c=(p+q)/2+(c[0]-c[2])/2*b;this.$([f*d-c*m,c*d+f*m])};l.Re=function(a,b,c){var d=this.g(),e=Math.cos(-d),d=Math.sin(-d),f=a[0]*e-a[1]*d;a=a[1]*e+a[0]*d;var g=this.b(),f=f+(b[0]/2-c[0])*g;a+=(c[1]-b[1]/2)*g;d=-d;this.$([f*e-a*d,a*e+f*d])};l.Vc=function(){return null!=this.a()&&t(this.b())};l.$=function(a){this.t("center",a)};S.prototype.setCenter=S.prototype.$;
S.prototype.s=function(a){this.t("projection",a)};S.prototype.setProjection=S.prototype.s;S.prototype.d=function(a){this.t("resolution",a)};S.prototype.setResolution=S.prototype.d;S.prototype.o=function(a){this.t("rotation",a)};S.prototype.setRotation=S.prototype.o;S.prototype.A=function(a){a=this.constrainResolution(this.j,a,0);this.d(a)};function Ki(a){M.call(this);this.element=t(a.element)?a.element:null;this.o=t(a.target)?jc(a.target):null;this.a=null;this.g=[]}E(Ki,M);Ki.prototype.w=function(){vc(this.element);Ki.D.w.call(this)};Ki.prototype.U=k("a");Ki.prototype.f=ea;Ki.prototype.setMap=function(a){null===this.a||vc(this.element);0!=this.g.length&&(La(this.g,K),this.g.length=0);this.a=a;null!==this.a&&((null===this.o?a.A:this.o).appendChild(this.element),this.f!==ea&&this.g.push(H(a,"postrender",this.f,!1,this)),a.H())};function Li(a){a=t(a)?a:{};this.k=qc("UL");var b=nc("DIV",{"class":(t(a.className)?a.className:"ol-attribution")+" ol-unselectable"},this.k);Ki.call(this,{element:b,target:a.target});this.j=!0;this.d={};this.b={}}E(Li,Ki);
Li.prototype.f=function(a){a=a.b;if(null===a)this.j&&(Qh(this.element,!1),this.j=!1);else{var b,c,d,e,f,g,h,m,n,p=a.layersArray,r=dc(a.attributions),q={};b=0;for(c=p.length;b<c;b++)if(d=p[b].a,n=v(d).toString(),m=d.d,null!==m)for(d=0,e=m.length;d<e;d++)if(g=m[d],h=v(g).toString(),!(h in r)){f=a.usedTiles[n];var u;if(u=t(f))a:if(null===g.a)u=!0;else{var y=u=void 0,x=void 0,w=void 0;for(w in f)if(w in g.a)for(x=f[w],u=0,y=g.a[w].length;u<y;++u)if(g.a[w][u].a<=x.d&&g.a[w][u].d>=x.a&&g.a[w][u].b<=x.c&&
g.a[w][u].c>=x.b){u=!0;break a}u=!1}u?(h in q&&delete q[h],r[h]=g):q[h]=g}b=[r,q];a=b[0];b=b[1];for(var z in this.d)z in a?(this.b[z]||(Qh(this.d[z],!0),this.b[z]=!0),delete a[z]):z in b?(this.b[z]&&(Qh(this.d[z],!1),delete this.b[z]),delete b[z]):(vc(this.d[z]),delete this.d[z],delete this.b[z]);for(z in a)c=qc("LI"),c.innerHTML=a[z].c,this.k.appendChild(c),this.d[z]=c,this.b[z]=!0;for(z in b)c=qc("LI"),c.innerHTML=b[z].c,Qh(c,!1),this.k.appendChild(c),this.d[z]=c;z=!$b(this.b);this.j!=z&&(Qh(this.element,
z),this.j=z)}};function Mi(a){a=t(a)?a:{};this.d=qc("UL");var b=nc("DIV",{"class":(t(a.className)?a.className:"ol-logo")+" ol-unselectable"},this.d);Ki.call(this,{element:b,target:a.target});this.b=!0;this.j={}}E(Mi,Ki);
Mi.prototype.f=function(a){a=a.b;if(null===a)this.b&&(Qh(this.element,!1),this.b=!1);else{var b;a=a.logos;var c=this.j;for(b in c)b in a||(vc(c[b]),delete c[b]);for(var d in a)if(!(d in c)){b=new Image;b.src=d;var e=a[d];""===e?e=b:(e=nc("A",{href:e,target:"_blank"}),e.appendChild(b));b=nc("LI",void 0,e);this.d.appendChild(b);c[d]=b}d=!$b(a);this.b!=d&&(Qh(this.element,d),this.b=d)}};function Ni(a){a=t(a)?a:{};var b=t(a.className)?a.className:"ol-zoom",c=t(a.delta)?a.delta:1,d=t(a.zoomInLabel)?a.zoomInLabel:"+",e=t(a.zoomOutLabel)?a.zoomOutLabel:"\u2212",f=t(a.zoomOutTipLabel)?a.zoomOutTipLabel:"Zoom out",g=nc("SPAN",{role:"tooltip"},t(a.zoomInTipLabel)?a.zoomInTipLabel:"Zoom in"),d=nc("BUTTON",{"class":b+"-in ol-has-tooltip",name:"ZoomIn",type:"button"},g,d);H(d,["touchend","click"],wa(Ni.prototype.d,c),!1,this);H(d,["mouseout",Oc],function(){this.blur()},!1);f=nc("SPAN",{role:"tooltip",
type:"button"},f);e=nc("BUTTON",{"class":b+"-out ol-has-tooltip",name:"ZoomOut"},f,e);H(e,["touchend","click"],wa(Ni.prototype.d,-c),!1,this);H(e,["mouseout",Oc],function(){this.blur()},!1);b=nc("DIV",b+" ol-unselectable",d,e);Ki.call(this,{element:b,target:a.target});this.b=t(a.duration)?a.duration:250}E(Ni,Ki);Ni.prototype.d=function(a,b){b.L();var c=this.a,d=c.a().M(),e=d.b();t(e)&&(0<this.b&&c.ga(yg({resolution:e,duration:this.b,easing:sg})),c=d.constrainResolution(e,a),d.d(c))};function Oi(a){a=t(a)?a:{};var b=new N;(t(a.zoom)?a.zoom:1)&&b.push(new Ni(t(a.zoomOptions)?a.zoomOptions:void 0));(t(a.attribution)?a.attribution:1)&&b.push(new Li(t(a.attributionOptions)?a.attributionOptions:void 0));(t(a.logo)?a.logo:1)&&b.push(new Mi(t(a.logoOptions)?a.logoOptions:void 0));return b};function Pi(){Ad.call(this);this.k=null}E(Pi,Ad);Pi.prototype.setMap=function(a){this.k=a};function Qi(a,b,c,d,e){if(null!=c){var f=b.g(),g=b.a();t(f)&&(t(g)&&t(e)&&0<e)&&(a.ga(xg({rotation:f,duration:e,easing:sg})),t(d)&&a.ga(wg({source:g,duration:e,easing:sg})));if(null!=d){var h;a=b.a();t(a)&&(h=[a[0]-d[0],a[1]-d[1]],Be(h,c-b.g()),we(h,d));b.$(h)}b.o(c)}}function Ri(a,b,c,d,e){var f=b.b();c=b.constrainResolution(f,c,0);Si(a,b,c,d,e)}
function Si(a,b,c,d,e){if(null!=c){var f=b.b(),g=b.a();t(f)&&(t(g)&&t(e)&&0<e)&&(a.ga(yg({resolution:f,duration:e,easing:sg})),t(d)&&a.ga(wg({source:g,duration:e,easing:sg})));if(null!=d){var h;a=b.a();e=b.b();t(a)&&t(e)&&(h=[d[0]-c*(d[0]-a[0])/e,d[1]-c*(d[1]-a[1])/e]);b.$(h)}b.d(c)}};function Ti(a){a=t(a)?a:{};this.a=t(a.delta)?a.delta:1;Pi.call(this);this.b=t(a.duration)?a.duration:250}E(Ti,Pi);Ti.prototype.la=function(a){var b=!1,c=a.a;if(a.type==fi){var b=a.map,d=a.coordinate,c=c.za?-this.a:this.a,e=b.a().M();Ri(b,e,c,d,this.b);a.L();b=!0}return!b};function Ui(a){a=a.a;return a.ba&&!a.rb&&a.za}function Vi(a){return a.type==gi}function Wi(a){a=a.a;return!a.ba&&!a.rb&&!a.za}function Xi(a){a=a.a;return!a.ba&&!a.rb&&a.za}function Yi(a){a=a.a.target.tagName;return"INPUT"!==a&&"SELECT"!==a&&"TEXTAREA"!==a};function Zi(){Pi.call(this);this.j=!1;this.f=this.e=this.q=this.o=0;this.N=this.G=null}E(Zi,Pi);l=Zi.prototype;l.lb=ea;l.mb=ea;l.nb=qd;l.Pd=ea;
l.la=function(a){var b=a.map;if(!$i(b))return!0;var c=!1,d=b.a(),b=a.a;a.type==ii&&this.Pd(a);this.j?a.type==ki?(this.e=b.clientX-this.o,this.f=b.clientY-this.q,this.lb(a)):a.type==hi&&(this.e=b.clientX-this.o,this.f=b.clientY-this.q,this.j=!1,this.mb(a)):a.type==ji&&(d=Ji(d.M()),this.o=b.clientX,this.q=b.clientY,this.f=this.e=0,this.G=d.center,this.N=a.coordinate,this.nb(a)&&(this.j=!0,a.L(),c=!0));return!c};function aj(a){Zi.call(this);a=t(a)?a:{};this.d=t(a.condition)?a.condition:Wi;this.a=a.kinetic;this.b=null}E(aj,Zi);aj.prototype.lb=function(a){this.a&&this.a.update(a.a.clientX,a.a.clientY);a=a.map;var b=a.a(),c=Ji(b),d=[-c.resolution*this.e,c.resolution*this.f];Be(d,c.rotation);we(d,this.G);d=b.f.center(d);a.H();b.$(d)};
aj.prototype.mb=function(a){a=a.map;var b=a.a();rg(b,-1);if(this.a&&Ag(this.a)){var b=b.M(),c=Ji(b),d=(this.a.d-this.a.c)/this.a.e,e=this.a.b;this.b=Bg(this.a,c.center);a.ga(this.b);c=a.f(c.center);d=a.aa([c[0]-d*Math.cos(e),c[1]-d*Math.sin(e)]);d=b.f.center(d);b.$(d)}a.H()};aj.prototype.nb=function(a){var b=a.a;if(Tc(b)&&this.d(a)){if(this.a){var c=this.a;c.a.length=0;c.b=0;c.c=0;this.a.update(b.clientX,b.clientY)}a=a.map;rg(a.a(),1);a.H();return!0}return!1};
aj.prototype.Pd=function(a){var b=a.map,c=b.a();null!==this.b&&Qa(b.o,this.b)&&(b.H(),c.$(a.b.view2DState.center),this.b=null)};function bj(a){a=t(a)?a:{};Zi.call(this);this.b=t(a.condition)?a.condition:Ui;this.a=void 0}E(bj,Zi);bj.prototype.lb=function(a){var b=a.map,c=b.g();a=a.pixel;c=Math.atan2(c[1]/2-a[1],a[0]-c[0]/2);if(t(this.a)){a=c-this.a;var d=b.a().M(),e=Ji(d);b.H();Qi(b,d,e.rotation-a)}this.a=c};bj.prototype.mb=function(a){a=a.map;var b=a.a();rg(b,-1);var b=b.M(),c=Ji(b).rotation,c=b.constrainRotation(c,0);Qi(a,b,c,void 0,250)};
bj.prototype.nb=function(a){return Tc(a.a)&&this.b(a)?(a=a.map,rg(a.a(),1),a.H(),this.a=void 0,!0):!1};function cj(a){this.b=this.c=this.e=this.d=this.a=null;this.f=a}E(cj,Dc);function dj(a){var b=a.e,c=a.c;a=Ma([b,[b[0],c[1]],c,[c[0],b[1]]],a.a.aa,a.a);a[4]=a[0].slice();return new Hf([a])}cj.prototype.w=function(){this.setMap(null)};cj.prototype.g=function(a){var b=this.b,c=this.f;a.vectorContext.bc(Infinity,function(a){a.na(c.d,c.b);a.da(c.c);a.fb(b,null)})};cj.prototype.K=k("b");function ej(a){null===a.a||(null===a.e||null===a.c)||a.a.H()}
cj.prototype.setMap=function(a){null!==this.d&&(K(this.d),this.d=null,this.a.H(),this.a=null);this.a=a;null!==this.a&&(this.d=H(a,"postcompose",this.g,!1,this),ej(this))};function fj(a,b){Ic.call(this,a);this.coordinate=b}E(fj,Ic);function gj(a){Zi.call(this);a=t(a)?a:{};this.a=new cj(t(a.style)?a.style:null);this.b=null;this.d=t(a.condition)?a.condition:rd}E(gj,Zi);l=gj.prototype;l.lb=function(a){var b=this.a;a=a.pixel;b.e=this.b;b.c=a;b.b=dj(b);ej(b)};l.K=function(){return this.a.K()};l.he=ea;l.mb=function(a){this.a.setMap(null);64<=this.e*this.e+this.f*this.f&&(this.he(a),L(this,new fj("boxend",a.coordinate)))};
l.nb=function(a){if(Tc(a.a)&&this.d(a)){this.b=a.pixel;this.a.setMap(a.map);var b=this.a,c=this.b;b.e=this.b;b.c=c;b.b=dj(b);ej(b);L(this,new fj("boxstart",a.coordinate));return!0}return!1};function hj(a){a=t(a)?a:{};gj.call(this,{condition:t(a.condition)?a.condition:Xi,style:t(a.style)?a.style:new pe({stroke:new ne({color:[0,0,255,1]})})})}E(hj,gj);hj.prototype.he=function(){var a=this.k,b=a.a().M(),c=this.K().p(),d=Re(c),c=Gi(c,a.g()),c=b.constrainResolution(c,0,void 0);Si(a,b,c,d,200)};function ij(a){Pi.call(this);a=t(a)?a:{};this.a=t(a.condition)?a.condition:vd(Wi,Yi);this.b=t(a.pixelDelta)?a.pixelDelta:128}E(ij,Pi);ij.prototype.la=function(a){var b=!1;if("key"==a.type){var c=a.a.ya;if(this.a(a)&&(40==c||37==c||39==c||38==c)){var d=a.map,b=d.a(),e=Ji(b),f=e.resolution*this.b,g=0,h=0;40==c?h=-f:37==c?g=-f:39==c?g=f:h=f;c=[g,h];Be(c,e.rotation);e=b.a();t(e)&&(t(100)&&d.ga(wg({source:e,duration:100,easing:ug})),d=b.f.center([e[0]+c[0],e[1]+c[1]]),b.$(d));a.L();b=!0}}return!b};function jj(a){Pi.call(this);a=t(a)?a:{};this.b=t(a.condition)?a.condition:Yi;this.a=t(a.delta)?a.delta:1;this.d=t(a.duration)?a.duration:100}E(jj,Pi);jj.prototype.la=function(a){var b=!1;if("key"==a.type){var c=a.a.Nc;if(this.b(a)&&(43==c||45==c)){b=a.map;c=43==c?this.a:-this.a;b.H();var d=b.a().M();Ri(b,d,c,void 0,this.d);a.L();b=!0}}return!b};function kj(a){a=t(a)?a:{};Pi.call(this);this.a=0;this.g=t(a.duration)?a.duration:250;this.d=null;this.e=this.b=void 0}E(kj,Pi);kj.prototype.la=function(a){var b=!1;if("mousewheel"==a.type){var b=a.map,c=a.a;this.d=a.coordinate;this.a+=c.a/3;t(this.b)||(this.b=xa());c=Math.max(80-(xa()-this.b),0);s.clearTimeout(this.e);this.e=s.setTimeout(B(this.f,this,b),c);a.L();b=!0}return!b};
kj.prototype.f=function(a){var b=Qb(this.a,-1,1),c=a.a().M();a.H();Ri(a,c,-b,this.d,this.g);this.a=0;this.d=null;this.e=this.b=void 0};function lj(){Pi.call(this);this.d=!1;this.l={};this.targetTouches=[]}E(lj,Pi);function mj(a){for(var b=a.length,c=0,d=0,e=0;e<b;e++)c+=a[e].clientX,d+=a[e].clientY;return[c/b,d/b]}lj.prototype.g=ea;lj.prototype.f=qd;lj.prototype.i=qd;
lj.prototype.la=function(a){var b=a.map.a(),c=a.type;if(c===li||c===mi||c===ni)c=a.originalEvent,t(c.targetTouches)?this.targetTouches=c.targetTouches:t(c.pointerId)&&(a.type==ni?delete this.l[c.pointerId]:this.l[c.pointerId]=c,this.targetTouches=Yb(this.l));this.d&&(a.type==mi?this.g(a):a.type==ni&&((this.d=this.f(a))||rg(b,-1)));a.type==li&&(a=this.i(a),!this.d&&a&&rg(b,1),this.d=a);return!0};function nj(a){lj.call(this);this.a=(t(a)?a:{}).kinetic;this.b=this.e=null;this.j=!1}E(nj,lj);nj.prototype.g=function(a){var b=mj(this.targetTouches);if(null!==this.b){this.a&&this.a.update(b[0],b[1]);var c=this.b[0]-b[0],d=b[1]-this.b[1];a=a.map;var e=a.a().M(),f=Ji(e),d=c=[c,d],g=f.resolution;d[0]*=g;d[1]*=g;Be(c,f.rotation);we(c,f.center);c=e.f.center(c);a.H();e.$(c)}this.b=b};
nj.prototype.f=function(a){a=a.map;var b=a.a().M();if(0===this.targetTouches.length){if(!this.j&&this.a&&Ag(this.a)){var c=(this.a.d-this.a.c)/this.a.e,d=this.a.b,e=b.a();this.e=Bg(this.a,e);a.ga(this.e);e=a.f(e);c=a.aa([e[0]-c*Math.cos(d),e[1]-c*Math.sin(d)]);c=b.f.center(c);b.$(c)}a.H();return!1}this.b=null;return!0};
nj.prototype.i=function(a){if(0<this.targetTouches.length){var b=a.map,c=b.a().M();this.b=null;b.H();null!==this.e&&Qa(b.o,this.e)&&(c.$(a.b.view2DState.center),this.e=null);this.a&&(a=this.a,a.a.length=0,a.b=0,a.c=0);this.j=1<this.targetTouches.length;return!0}return!1};function oj(a){lj.call(this);a=t(a)?a:{};this.b=null;this.e=void 0;this.a=!1;this.j=0;this.n=t(a.threshold)?a.threshold:0.3}E(oj,lj);oj.prototype.g=function(a){var b=0,c=this.targetTouches[0],d=this.targetTouches[1],c=Math.atan2(d.clientY-c.clientY,d.clientX-c.clientX);t(this.e)&&(b=c-this.e,this.j+=b,!this.a&&Math.abs(this.j)>this.n&&(this.a=!0));this.e=c;a=a.map;c=Lh(a.b);d=mj(this.targetTouches);d[0]-=c.x;d[1]-=c.y;this.b=a.aa(d);this.a&&(c=a.a().M(),d=Ji(c),a.H(),Qi(a,c,d.rotation+b,this.b))};
oj.prototype.f=function(a){if(2>this.targetTouches.length){a=a.map;var b=a.a().M(),c=Ji(b);if(this.a){var c=c.rotation,d=this.b,c=b.constrainRotation(c,0);Qi(a,b,c,d,250)}return!1}return!0};oj.prototype.i=function(a){return 2<=this.targetTouches.length?(a=a.map,this.b=null,this.e=void 0,this.a=!1,this.j=0,a.H(),!0):!1};function pj(a){a=t(a)?a:{};lj.call(this);this.b=null;this.j=t(a.duration)?a.duration:400;this.a=void 0;this.e=1}E(pj,lj);pj.prototype.g=function(a){var b=1,c=this.targetTouches[0],d=this.targetTouches[1],e=c.clientX-d.clientX,c=c.clientY-d.clientY,e=Math.sqrt(e*e+c*c);t(this.a)&&(b=this.a/e);this.a=e;1!=b&&(this.e=b);a=a.map;var e=a.a().M(),c=Ji(e),d=Lh(a.b),f=mj(this.targetTouches);f[0]-=d.x;f[1]-=d.y;this.b=a.aa(f);a.H();Si(a,e,c.resolution*b,this.b)};
pj.prototype.f=function(a){if(2>this.targetTouches.length){a=a.map;var b=a.a().M(),c=Ji(b).resolution,d=this.b,e=this.j,c=b.constrainResolution(c,0,this.e-1);Si(a,b,c,d,e);return!1}return!0};pj.prototype.i=function(a){return 2<=this.targetTouches.length?(a=a.map,this.b=null,this.a=void 0,this.e=1,a.H(),!0):!1};function qj(a){a=t(a)?a:{};var b=new N,c=new zg(-0.005,0.05,100);(t(a.altShiftDragRotate)?a.altShiftDragRotate:1)&&b.push(new bj);(t(a.doubleClickZoom)?a.doubleClickZoom:1)&&b.push(new Ti({delta:a.zoomDelta,duration:a.zoomDuration}));(t(a.touchPan)?a.touchPan:1)&&b.push(new nj({kinetic:c}));(t(a.touchRotate)?a.touchRotate:1)&&b.push(new oj);(t(a.touchZoom)?a.touchZoom:1)&&b.push(new pj({duration:a.zoomDuration}));(t(a.dragPan)?a.dragPan:1)&&b.push(new aj({kinetic:c}));if(t(a.keyboard)?a.keyboard:
1)b.push(new ij),b.push(new jj({delta:a.zoomDelta,duration:a.zoomDuration}));(t(a.mouseWheelZoom)?a.mouseWheelZoom:1)&&b.push(new kj({duration:a.zoomDuration}));(t(a.shiftDragZoom)?a.shiftDragZoom:1)&&b.push(new hj);return b};function sj(a){Ad.call(this);this.l=kg(a.projection);this.N=t(a.extent)?a.extent:t(a.projection)?this.l.p():null;this.d=t(a.attributions)?a.attributions:null;this.q=a.logo;this.f=t(a.state)?a.state:1}E(sj,Ad);sj.prototype.k=ea;sj.prototype.p=k("N");sj.prototype.U=k("f");function tj(a,b){a.f=b;a.u()};function T(a){M.call(this);a=dc(a);a.brightness=t(a.brightness)?a.brightness:0;a.contrast=t(a.contrast)?a.contrast:1;a.hue=t(a.hue)?a.hue:0;a.opacity=t(a.opacity)?a.opacity:1;a.saturation=t(a.saturation)?a.saturation:1;a.visible=t(a.visible)?a.visible:!0;a.maxResolution=t(a.maxResolution)?a.maxResolution:Infinity;a.minResolution=t(a.minResolution)?a.minResolution:0;this.W(a)}E(T,M);T.prototype.j=function(){return this.r("brightness")};T.prototype.getBrightness=T.prototype.j;T.prototype.k=function(){return this.r("contrast")};
T.prototype.getContrast=T.prototype.k;T.prototype.n=function(){return this.r("hue")};T.prototype.getHue=T.prototype.n;function uj(a){var b=a.j(),c=a.k(),d=a.n(),e=a.G(),f=a.A(),g=a.Mc(),h=a.b(),m=a.o();a=a.q();return{brightness:t(b)?Qb(b,-1,1):0,contrast:t(c)?Math.max(c,0):1,hue:t(d)?d:0,opacity:t(e)?Qb(e,0,1):1,saturation:t(f)?Math.max(f,0):1,ed:g,visible:t(h)?!!h:!0,maxResolution:t(m)?m:Infinity,minResolution:t(a)?Math.max(a,0):0}}T.prototype.o=function(){return this.r("maxResolution")};
T.prototype.getMaxResolution=T.prototype.o;T.prototype.q=function(){return this.r("minResolution")};T.prototype.getMinResolution=T.prototype.q;T.prototype.G=function(){return this.r("opacity")};T.prototype.getOpacity=T.prototype.G;T.prototype.A=function(){return this.r("saturation")};T.prototype.getSaturation=T.prototype.A;T.prototype.b=function(){return this.r("visible")};T.prototype.getVisible=T.prototype.b;T.prototype.Oa=function(a){this.t("brightness",a)};T.prototype.setBrightness=T.prototype.Oa;
T.prototype.Pa=function(a){this.t("contrast",a)};T.prototype.setContrast=T.prototype.Pa;T.prototype.xb=function(a){this.t("hue",a)};T.prototype.setHue=T.prototype.xb;T.prototype.zc=function(a){this.t("maxResolution",a)};T.prototype.setMaxResolution=T.prototype.zc;T.prototype.Ac=function(a){this.t("minResolution",a)};T.prototype.setMinResolution=T.prototype.Ac;T.prototype.Bc=function(a){this.t("opacity",a)};T.prototype.setOpacity=T.prototype.Bc;T.prototype.Dc=function(a){this.t("saturation",a)};
T.prototype.setSaturation=T.prototype.Dc;T.prototype.Ec=function(a){this.t("visible",a)};T.prototype.setVisible=T.prototype.Ec;function vj(a){var b=t(a)?a:{};a=dc(b);delete a.layers;b=b.layers;T.call(this,a);this.a=null;H(this,Gd("layers"),this.Of,!1,this);t(b)?ja(b)&&(b=new N(Sa(b))):b=new N;this.d(b)}E(vj,T);l=vj.prototype;l.Qd=function(){this.b()&&this.u()};
l.Of=function(){null!==this.a&&(La(Yb(this.a),K),this.a=null);var a=this.Za();if(null!=a){this.a={add:H(a,"add",this.Nf,!1,this),remove:H(a,"remove",this.Pf,!1,this)};var a=a.a,b,c,d;b=0;for(c=a.length;b<c;b++)d=a[b],this.a[v(d).toString()]=H(d,["propertychange","change"],this.Qd,!1,this)}this.u()};l.Nf=function(a){a=a.element;this.a[v(a).toString()]=H(a,["propertychange","change"],this.Qd,!1,this);this.u()};l.Pf=function(a){a=v(a.element).toString();K(this.a[a]);delete this.a[a];this.u()};l.Za=function(){return this.r("layers")};
vj.prototype.getLayers=vj.prototype.Za;vj.prototype.d=function(a){this.t("layers",a)};vj.prototype.setLayers=vj.prototype.d;vj.prototype.Kc=function(a){var b=t(a)?a:[];this.Za().forEach(function(a){a.Kc(b)});return b};
vj.prototype.Jc=function(a){var b=t(a)?a:{layers:[],layerStates:[]},c=b.layers.length;this.Za().forEach(function(a){a.Jc(b)});a=uj(this);var d,e;for(d=b.layerStates.length;c<d;c++)e=b.layerStates[c],e.brightness=Qb(e.brightness+a.brightness,-1,1),e.contrast*=a.contrast,e.hue+=a.hue,e.opacity*=a.opacity,e.saturation*=a.saturation,e.visible=e.visible&&a.visible,e.maxResolution=Math.min(e.maxResolution,a.maxResolution),e.minResolution=Math.max(e.minResolution,a.minResolution);return b};
vj.prototype.Mc=ca(1);function wj(a){Rf.call(this,{code:a,units:"m",extent:xj,global:!0})}E(wj,Rf);var yj=6378137*Math.PI,xj=[-yj,-yj,yj,yj],eg=Ma(["EPSG:3857","EPSG:102100","EPSG:102113","EPSG:900913","urn:ogc:def:crs:EPSG:6.18:3:3857"],function(a){return new wj(a)});function fg(a,b,c){var d=a.length;c=1<c?c:2;t(b)||(b=2<c?a.slice():Array(d));for(var e=0;e<d;e+=c)b[e]=6378137*Math.PI*a[e]/180,b[e+1]=6378137*Math.log(Math.tan(Math.PI*(a[e+1]+90)/360));return b}
function gg(a,b,c){var d=a.length;c=1<c?c:2;t(b)||(b=2<c?a.slice():Array(d));for(var e=0;e<d;e+=c)b[e]=180*a[e]/(6378137*Math.PI),b[e+1]=360*Math.atan(Math.exp(a[e+1]/6378137))/Math.PI-90;return b}wj.prototype.d=function(a,b){return a/((Math.exp(b[1]/6378137)+Math.exp(-(b[1]/6378137)))/2)};function zj(a,b){Rf.call(this,{code:a,units:"degrees",extent:Aj,axisOrientation:b,global:!0})}E(zj,Rf);var Aj=[-180,-90,180,90],hg=[new zj("CRS:84"),new zj("EPSG:4326","neu"),new zj("urn:ogc:def:crs:EPSG:6.6:4326","neu"),new zj("urn:ogc:def:crs:OGC:1.3:CRS84"),new zj("urn:ogc:def:crs:OGC:2:84"),new zj("http://www.opengis.net/gml/srs/epsg.xml#4326","neu"),new zj("urn:x-ogc:def:crs:EPSG:4326","neu")];zj.prototype.d=function(a){return a};function Bj(){$f(eg);$f(hg);dg()};function Cj(a){var b=dc(a);delete b.source;T.call(this,b);this.a=a.source;H(this.a,"change",this.Hg,!1,this)}E(Cj,T);l=Cj.prototype;l.Kc=function(a){a=t(a)?a:[];a.push(this);return a};l.Jc=function(a){a=t(a)?a:{layers:[],layerStates:[]};a.layers.push(this);a.layerStates.push(uj(this));return a};l.Gg=k("a");l.Mc=function(){return this.a.f};l.Hg=function(){this.u()};function Dj(a,b,c,d,e){yd.call(this);this.g=e;this.j=a;this.b=c;this.d=b;this.state=d}E(Dj,yd);Dj.prototype.p=k("j");function Ej(a,b,c,d,e,f){Dj.call(this,a,b,c,0,d);this.i=e;this.a=new Image;null!==f&&(this.a.crossOrigin=f);this.f={};this.c=null;this.state=0}E(Ej,Dj);Ej.prototype.e=function(a){if(t(a)){var b=v(a);if(b in this.f)return this.f[b];a=$b(this.f)?this.a:this.a.cloneNode(!1);return this.f[b]=a}return this.a};Ej.prototype.k=function(){this.state=3;La(this.c,K);this.c=null;L(this,"change")};Ej.prototype.l=function(){this.state=2;La(this.c,K);this.c=null;L(this,"change")};
function Fj(a){0==a.state&&(a.state=1,a.c=[gd(a.a,"error",a.k,!1,a),gd(a.a,"load",a.l,!1,a)],a.a.src=a.i)};function Gj(a){this.minZoom=t(a.minZoom)?a.minZoom:0;this.a=a.resolutions;this.maxZoom=this.a.length-1;this.d=t(a.origin)?a.origin:null;this.f=null;t(a.origins)&&(this.f=a.origins);this.b=null;t(a.tileSizes)&&(this.b=a.tileSizes);this.e=t(a.tileSize)?a.tileSize:null===this.b?256:void 0}var Hj=new ab(0,0,0);l=Gj.prototype;l.gc=function(a,b,c,d,e){e=Ij(this,a,e);for(a=a.a-1;a>=this.minZoom;){if(b.call(c,a,Jj(this,e,a,d)))return!0;--a}return!1};l.pf=k("minZoom");
l.Sb=function(a){return null===this.d?this.f[a]:this.d};l.Ta=k("a");l.jc=function(a,b,c){return a.a<this.maxZoom?(c=Ij(this,a,c),Jj(this,c,a.a+1,b)):null};function Kj(a,b,c,d){Lj(a,b[0],b[1],c,!1,Hj);var e=Hj.x,f=Hj.y;Lj(a,b[2],b[3],c,!0,Hj);return fb(e,Hj.x,f,Hj.y,d)}function Jj(a,b,c,d){return Kj(a,b,a.a[c],d)}function Mj(a,b){var c=a.Sb(b.a),d=a.a[b.a],e=a.ja(b.a);return[c[0]+(b.x+0.5)*e*d,c[1]+(b.y+0.5)*e*d]}
function Ij(a,b,c){var d=a.Sb(b.a),e=a.a[b.a];a=a.ja(b.a);var f=d[0]+b.x*a*e;b=d[1]+b.y*a*e;return He(f,b,f+a*e,b+a*e,c)}function Lj(a,b,c,d,e,f){var g=yi(a.a,d,0),h=d/a.a[g],m=a.Sb(g);a=a.ja(g);b=h*(b-m[0])/(d*a);c=h*(c-m[1])/(d*a);e?(b=Math.ceil(b)-1,c=Math.ceil(c)-1):(b=Math.floor(b),c=Math.floor(c));return bb(g,b,c,f)}l.ja=function(a){return t(this.e)?this.e:this.b[a]};function Nj(a){sj.call(this,{attributions:a.attributions,extent:a.extent,logo:a.logo,projection:a.projection});this.G=t(a.opaque)?a.opaque:!1;this.tileGrid=t(a.tileGrid)?a.tileGrid:null}E(Nj,sj);l=Nj.prototype;l.Yc=qd;l.Ic=function(a,b,c,d){var e=!0,f,g,h,m;for(h=d.a;h<=d.d;++h)for(m=d.b;m<=d.c;++m)g=this.Ga(c,h,m),a[c]&&a[c][g]||(f=b(c,h,m),null===f?e=!1:(a[c]||(a[c]={}),a[c][g]=f));return e};l.ic=ca(0);l.Ga=cb;l.Ta=function(){return this.tileGrid.Ta()};l.wf=k("tileGrid");
function Oj(a,b){var c;if(null===a.tileGrid){if(c=b.f,null===c){c=b.p();for(var d=null===c?360*Of.degrees/b.b():Math.max(c[2]-c[0],c[3]-c[1]),e=t(void 0)?void 0:256,f=Array((t(void 0)?NaN:42)+1),d=d/e,g=0,h=f.length;g<h;++g)f[g]=d/Math.pow(2,g);c=new Gj({origin:null===c?[0,0]:Qe(c),resolutions:f,tileSize:e});b.f=c}}else c=a.tileGrid;return c}l.Nb=function(a,b,c){return Oj(this,c).ja(a)};l.we=ea;function Pj(a,b){Dc.call(this);this.d=a;this.a=b}E(Pj,Dc);Pj.prototype.f=ea;Pj.prototype.l=function(a){2===a.target.state&&Qj(this)};function Qj(a){var b=a.a;b.b()&&1==b.Mc()&&a.d.f.H()}function Rj(a,b){b.Yc()&&a.postRenderFunctions.push(wa(function(a,b,e){b=v(a).toString();a.be(e.usedTiles[b])},b))}function Sj(a,b){if(null!=b){var c,d,e;d=0;for(e=b.length;d<e;++d)c=b[d],a[v(c).toString()]=c}}function Tj(a,b){var c=b.q;t(c)&&(a.logos[c]="")}
function Uj(a,b,c,d){b=v(b).toString();c=c.toString();b in a?c in a[b]?(a=a[b][c],d.a<a.a&&(a.a=d.a),d.d>a.d&&(a.d=d.d),d.b<a.b&&(a.b=d.b),d.c>a.c&&(a.c=d.c)):a[b][c]=d:(a[b]={},a[b][c]=d)}function Vj(a,b,c,d){return function(e,f,g){e=b.ib(e,f,g,c,d);return a(e)?e:null}}function Wj(a,b,c){return[b*(Math.round(a[0]/b)+c[0]%2/2),b*(Math.round(a[1]/b)+c[1]%2/2)]}
function Xj(a,b,c,d,e,f,g,h,m,n){var p=v(b).toString();p in a.wantedTiles||(a.wantedTiles[p]={});var r=a.wantedTiles[p];a=a.tileQueue;var q=c.minZoom,u,y,x,w,z,A;t(h)||(h=0);for(A=g;A>=q;--A)for(y=Jj(c,f,A),x=c.a[A],w=y.a;w<=y.d;++w)for(z=y.b;z<=y.c;++z)g-A<=h?(u=b.ib(A,w,z,d,e),0==u.state&&(r[u.a.toString()]=!0,u.d()in a.b||si(a,[u,p,Mj(c,u.a),x])),t(m)&&m.call(n,u)):b.we(A,w,z)};function Yj(a){a=t(a)?a:{};this.b=t(a.anchor)?a.anchor:[0.5,0.5];this.c=t(a.anchorOrigin)?a.anchorOrigin:"top-left";this.d=t(a.anchorXUnits)?a.anchorXUnits:"fraction";this.g=t(a.anchorYUnits)?a.anchorYUnits:"fraction";var b=a.src,c=t(a.crossOrigin)?a.crossOrigin:null,d=Zj.Fa(),e;e=c+":"+b;e=e in d.a?d.a[e]:null;null===e&&(e=new ak(b,c),d.a[c+":"+b]=e,++d.c);this.a=e;this.i=t(a.size)?a.size:null;me.call(this,{opacity:t(a.opacity)?a.opacity:1,rotation:t(a.rotation)?a.rotation:0,scale:t(a.scale)?a.scale:
1,te:void 0,rotateWithView:t(a.rotateWithView)?a.rotateWithView:!1})}E(Yj,me);l=Yj.prototype;l.Mb=function(){var a=this.b,b=this.qb();if("fraction"==this.d||"fraction"==this.g){if(null===b)return null;a=this.b.slice();"fraction"==this.d&&(a[0]*=b[0]);"fraction"==this.g&&(a[1]*=b[1])}if("top-left"!=this.c){if(null===b)return null;a===this.b&&(a=this.b.slice());if("top-right"==this.c||"bottom-right"==this.c)a[0]=-a[0]+b[0];if("bottom-left"==this.c||"bottom-right"==this.c)a[1]=-a[1]+b[1]}return a};
l.Rb=function(){return this.a.a};l.fe=function(){return this.a.c};l.ee=function(){var a=this.a;if(null===a.d)if(a.i){var b=qc("CANVAS"),c=a.e[0],d=a.e[1];b.width=c;b.height=d;b.getContext("2d").fillRect(0,0,c,d);a.d=b}else a.d=a.a;return a.d};l.Zg=function(){return this.a.f};l.qb=function(){return null===this.i?this.a.e:this.i};l.Td=function(a,b){return H(this.a,"change",a,!1,b)};l.ge=function(){var a=this.a;if(0==a.c){a.c=1;a.b=[gd(a.a,"error",a.g,!1,a),gd(a.a,"load",a.j,!1,a)];try{a.a.src=a.f}catch(b){a.g()}}};
l.ve=function(a,b){hd(this.a,"change",a,!1,b)};function ak(a,b){yd.call(this);this.d=null;this.a=new Image;null!==b&&(this.a.crossOrigin=b);this.b=null;this.c=0;this.e=null;this.f=a;this.i=!1}E(ak,yd);ak.prototype.g=function(){this.c=3;La(this.b,K);this.b=null;L(this,"change")};
ak.prototype.j=function(){this.c=2;this.e=[this.a.width,this.a.height];La(this.b,K);this.b=null;var a=qc("CANVAS");a.width=1;a.height=1;a=a.getContext("2d");a.drawImage(this.a,0,0);try{a.getImageData(0,0,1,1)}catch(b){this.i=!0}L(this,"change")};function Zj(){this.a={};this.c=0;this.b=32}fa(Zj);Zj.prototype.clear=function(){this.a={};this.c=0};function bk(a,b,c,d,e,f,g,h){Xd(a);0===b&&0===c||Zd(a,b,c);1==d&&1==e||$d(a,d,e);0!==f&&ae(a,f);0===g&&0===h||Zd(a,g,h);return a}function ck(a,b){return a[0]==b[0]&&a[1]==b[1]&&a[4]==b[4]&&a[5]==b[5]&&a[12]==b[12]&&a[13]==b[13]}function dk(a,b,c){var d=a[1],e=a[5],f=a[13],g=b[0];b=b[1];c[0]=a[0]*g+a[4]*b+a[12];c[1]=d*g+e*b+f;return c};function ek(a,b){Dc.call(this);this.f=b;this.b={}}E(ek,Dc);
function fk(a){var b=a.view2DState,c=a.coordinateToPixelMatrix;bk(c,a.size[0]/2,a.size[1]/2,1/b.resolution,-1/b.resolution,-b.rotation,-b.center[0],-b.center[1]);a=a.pixelToCoordinateMatrix;var b=c[0],d=c[1],e=c[2],f=c[3],g=c[4],h=c[5],m=c[6],n=c[7],p=c[8],r=c[9],q=c[10],u=c[11],y=c[12],x=c[13],w=c[14],c=c[15],z=b*h-d*g,A=b*m-e*g,D=b*n-f*g,I=d*m-e*h,P=d*n-f*h,J=e*n-f*m,U=p*x-r*y,aa=p*w-q*y,ua=p*c-u*y,ra=r*w-q*x,Q=r*c-u*x,qa=q*c-u*w,ia=z*qa-A*Q+D*ra+I*ua-P*aa+J*U;0!=ia&&(ia=1/ia,a[0]=(h*qa-m*Q+n*ra)*
ia,a[1]=(-d*qa+e*Q-f*ra)*ia,a[2]=(x*J-w*P+c*I)*ia,a[3]=(-r*J+q*P-u*I)*ia,a[4]=(-g*qa+m*ua-n*aa)*ia,a[5]=(b*qa-e*ua+f*aa)*ia,a[6]=(-y*J+w*D-c*A)*ia,a[7]=(p*J-q*D+u*A)*ia,a[8]=(g*Q-h*ua+n*U)*ia,a[9]=(-b*Q+d*ua-f*U)*ia,a[10]=(y*P-x*D+c*z)*ia,a[11]=(-p*P+r*D-u*z)*ia,a[12]=(-g*ra+h*aa-m*U)*ia,a[13]=(b*ra-d*aa+e*U)*ia,a[14]=(-y*I+x*A-w*z)*ia,a[15]=(p*I-r*A+q*z)*ia)}ek.prototype.$b=function(a){return new Pj(this,a)};ek.prototype.w=function(){Wb(this.b,function(a){Hc(a)});ek.D.w.call(this)};
function gk(a,b){var c=v(b).toString();if(c in a.b)return a.b[c];var d=a.$b(b);return a.b[c]=d}ek.prototype.vc=ea;ek.prototype.s=function(a,b){for(var c in this.b)if(!(null!==b&&c in b.layerStates)){var d=this.b[c];delete this.b[c];Hc(d)}};function hk(a){a.postRenderFunctions.push(function(){var a=Zj.Fa();if(a.c>a.b){var c=0,d,e;for(d in a.a)e=a.a[d],0!==(c++&3)||kd(e)||(delete a.a[d],--a.c)}})}
function ik(a,b){for(var c in a.b)if(!(c in b.layerStates)){b.postRenderFunctions.push(B(a.s,a));break}};function jk(a){Cj.call(this,a)}E(jk,Cj);function kk(a){Cj.call(this,a)}E(kk,Cj);kk.prototype.d=function(){return this.r("preload")};kk.prototype.getPreload=kk.prototype.d;kk.prototype.g=function(a){this.t("preload",a)};kk.prototype.setPreload=kk.prototype.g;kk.prototype.f=function(){return this.r("useInterimTilesOnError")};kk.prototype.getUseInterimTilesOnError=kk.prototype.f;kk.prototype.l=function(a){this.t("useInterimTilesOnError",a)};kk.prototype.setUseInterimTilesOnError=kk.prototype.l;function lk(a){a=t(a)?a:{};var b=dc(a);delete b.style;Cj.call(this,b);this.N=null;this.f=void 0;t(a.style)&&this.g(a.style)}E(lk,Cj);lk.prototype.s=function(){return this.r("renderGeometryFunctions")};lk.prototype.getRenderGeometryFunctions=lk.prototype.s;lk.prototype.Ma=k("N");lk.prototype.Na=k("f");lk.prototype.Cc=function(a){this.t("renderGeometryFunctions",a)};lk.prototype.setRenderGeometryFunctions=lk.prototype.Cc;lk.prototype.g=function(a){this.N=a;this.f=se(a);this.u()};function mk(a,b,c,d,e){this.P={};this.b=a;this.A=b;this.g=c;this.f=d;this.xb=e;this.i=this.a=this.c=this.fa=this.X=this.N=null;this.o=this.U=this.s=this.S=0;this.pa=!1;this.j=this.Da=0;this.Ma=!1;this.Na=0;this.d="";this.l=this.q=this.Pa=this.Oa=0;this.G=this.n=this.k=null;this.e=[];this.Yb=Td()}
function nk(a,b){if(null!==a.i){var c=bf(b,2,a.f,a.e),d=a.b,e=a.Yb,f=d.globalAlpha;1!=a.o&&(d.globalAlpha=f*a.o);var g=a.Da;a.pa&&(g+=a.xb);var h,m;h=0;for(m=c.length;h<m;h+=2){var n=c[h]-a.S,p=c[h+1]-a.s;a.Ma&&(n=n+0.5|0,p=p+0.5|0);if(0!==g||1!=a.j){var r=n+a.S,q=p+a.s;bk(e,r,q,a.j,a.j,g,-r,-q);d.setTransform(e[0],e[1],e[4],e[5],e[12],e[13])}d.drawImage(a.i,n,p,a.Na,a.U)}0===g&&1==a.j||d.setTransform(1,0,0,1,0,0);1!=a.o&&(d.globalAlpha=f)}}
function ok(a,b,c,d){var e=0;if(null!==a.G&&""!==a.d){null===a.k||pk(a,a.k);null===a.n||qk(a,a.n);var f=a.G,g=a.b,h=a.fa;null===h?(g.font=f.font,g.textAlign=f.textAlign,g.textBaseline=f.textBaseline,a.fa={font:f.font,textAlign:f.textAlign,textBaseline:f.textBaseline}):(h.font!=f.font&&(h.font=g.font=f.font),h.textAlign!=f.textAlign&&(h.textAlign=g.textAlign=f.textAlign),h.textBaseline!=f.textBaseline&&(h.textBaseline=g.textBaseline=f.textBaseline));b=bf(b,d,a.f,a.e);for(f=a.b;e<c;e+=d){g=b[e]+a.Oa;
h=b[e+1]+a.Pa;if(0!==a.q||1!=a.l){var m=bk(a.Yb,g,h,a.l,a.l,a.q,-g,-h);f.setTransform(m[0],m[1],m[4],m[5],m[12],m[13])}null===a.n||f.strokeText(a.d,g,h);null===a.k||f.fillText(a.d,g,h)}0===a.q&&1==a.l||f.setTransform(1,0,0,1,0,0)}}function rk(a,b,c,d,e){a=a.b;a.moveTo(b[c],b[c+1]);var f;for(f=c+2;f<d;f+=2)a.lineTo(b[f],b[f+1]);e&&a.lineTo(b[c],b[c+1]);return d}function sk(a,b,c,d){var e=a.b,f,g;f=0;for(g=d.length;f<g;++f)c=rk(a,b,c,d[f],!0),e.closePath();return c}l=mk.prototype;
l.bc=function(a,b){var c=a.toString(),d=this.P[c];t(d)?d.push(b):this.P[c]=[b]};l.Hb=function(a){if(We(this.g,a.p())){if(null!==this.c||null!==this.a){null===this.c||pk(this,this.c);null===this.a||qk(this,this.a);var b=gf(a,this.f,this.e),c=b[2]-b[0],d=b[3]-b[1],c=Math.sqrt(c*c+d*d),d=this.b;d.beginPath();d.arc(b[0],b[1],c,0,2*Math.PI);null===this.c||d.fill();null===this.a||d.stroke()}""!==this.d&&ok(this,a.Xc(),2,2)}};
l.Hc=function(a,b){var c=a.K();if(null!==c&&We(this.g,c.p())){var d=b.a;t(d)||(d=0);this.bc(d,function(a){a.na(b.d,b.b);a.vb(b.e);a.da(b.c);tk[c.C()].call(a,c,null)})}};l.Cd=function(a,b){var c=a.a,d,e;d=0;for(e=c.length;d<e;++d){var f=c[d];tk[f.C()].call(this,f,b)}};l.Lb=function(a){var b=a.h;a=a.a;null===this.i||nk(this,b);""!==this.d&&ok(this,b,b.length,a)};l.Kb=function(a){var b=a.h;a=a.a;null===this.i||nk(this,b);""!==this.d&&ok(this,b,b.length,a)};
l.Ib=function(a){if(We(this.g,a.p())){if(null!==this.a){qk(this,this.a);var b=gf(a,this.f,this.e),c=this.b;c.beginPath();rk(this,b,0,b.length,!1);c.stroke()}""!==this.d&&(a=uk(a),ok(this,a,2,2))}};l.Jb=function(a){var b=a.p();if(We(this.g,b)){if(null!==this.a){qk(this,this.a);var b=gf(a,this.f,this.e),c=this.b;c.beginPath();var d=a.d,e=0,f,g;f=0;for(g=d.length;f<g;++f)e=rk(this,b,e,d[f],!1);c.stroke()}""!==this.d&&(a=vk(a),ok(this,a,a.length,2))}};
l.fb=function(a){if(We(this.g,a.p())){var b;if(null!==this.a||null!==this.c){null===this.c||pk(this,this.c);null===this.a||qk(this,this.a);b=gf(a,this.f,this.e);var c=this.b;c.beginPath();sk(this,b,0,a.d);null===this.c||c.fill();null===this.a||c.stroke()}""!==this.d&&(a=Kf(a),ok(this,a,2,2))}};
l.cc=function(a){if(We(this.g,a.p())){var b;if(null!==this.a||null!==this.c){null===this.c||pk(this,this.c);null===this.a||qk(this,this.a);b=gf(a,this.f,this.e);var c=this.b,d=a.d,e=0,f,g;f=0;for(g=d.length;f<g;++f){var h=d[f];c.beginPath();e=sk(this,b,e,h);null===this.c||c.fill();null===this.a||c.stroke()}}""!==this.d&&(a=wk(a),ok(this,a,a.length,2))}};
function xk(a){var b=Ma(Zb(a.P),Number);Wa(b);var c,d,e,f,g;c=0;for(d=b.length;c<d;++c)for(e=a.P[b[c].toString()],f=0,g=e.length;f<g;++f)e[f](a)}function pk(a,b){var c=a.b,d=a.N;null===d?(c.fillStyle=b.fillStyle,a.N={fillStyle:b.fillStyle}):d.fillStyle!=b.fillStyle&&(d.fillStyle=c.fillStyle=b.fillStyle)}
function qk(a,b){var c=a.b,d=a.X;null===d?(c.lineCap=b.lineCap,Bc.Xb&&c.setLineDash(b.lineDash),c.lineJoin=b.lineJoin,c.lineWidth=b.lineWidth,c.miterLimit=b.miterLimit,c.strokeStyle=b.strokeStyle,a.X={lineCap:b.lineCap,lineDash:b.lineDash,lineJoin:b.lineJoin,lineWidth:b.lineWidth,miterLimit:b.miterLimit,strokeStyle:b.strokeStyle}):(d.lineCap!=b.lineCap&&(d.lineCap=c.lineCap=b.lineCap),Bc.Xb&&!Ya(d.lineDash,b.lineDash)&&c.setLineDash(d.lineDash=b.lineDash),d.lineJoin!=b.lineJoin&&(d.lineJoin=c.lineJoin=
b.lineJoin),d.lineWidth!=b.lineWidth&&(d.lineWidth=c.lineWidth=b.lineWidth),d.miterLimit!=b.miterLimit&&(d.miterLimit=c.miterLimit=b.miterLimit),d.strokeStyle!=b.strokeStyle&&(d.strokeStyle=c.strokeStyle=b.strokeStyle))}
l.na=function(a,b){if(null===a)this.c=null;else{var c=a.a;this.c={fillStyle:ee(null===c?ie:c)}}if(null===b)this.a=null;else{var c=b.a,d=b.b,e=b.d,f=b.e,g=b.c,h=b.f;this.a={lineCap:t(d)?d:"round",lineDash:null!=e?e:je,lineJoin:t(f)?f:"round",lineWidth:this.A*(t(g)?g:1),miterLimit:t(h)?h:10,strokeStyle:ee(null===c?ke:c)}}};
l.vb=function(a){if(null===a)this.i=null;else{var b=a.Mb(),c=a.Rb(1),d=a.j,e=a.k,f=a.e,g=a.f,h=a.qb();a=a.l;this.S=b[0];this.s=b[1];this.U=h[1];this.i=c;this.o=t(d)?d:1;this.pa=t(e)?e:!1;this.Da=t(f)?f:0;this.j=t(g)?g:1;this.Ma=t(a)?a:!1;this.Na=h[0]}};
l.da=function(a){if(null===a)this.d="";else{var b=a.c;null===b?this.k=null:(b=b.a,this.k={fillStyle:ee(null===b?ie:b)});var c=a.e;if(null===c)this.n=null;else{var b=c.a,d=c.b,e=c.d,f=c.e,g=c.c,c=c.f;this.n={lineCap:t(d)?d:"round",lineDash:null!=e?e:je,lineJoin:t(f)?f:"round",lineWidth:this.A*(t(g)?g:1),miterLimit:t(c)?c:10,strokeStyle:ee(null===b?ke:b)}}var b=a.a,d=a.j,e=a.k,f=a.b,g=a.d,c=a.f,h=a.g;a=a.i;this.G={font:t(b)?b:"10px sans-serif",textAlign:t(h)?h:"center",textBaseline:t(a)?a:"middle"};
this.d=t(c)?c:"";this.Oa=t(d)?d:0;this.Pa=t(e)?e:0;this.q=t(f)?f:0;this.l=this.A*(t(g)?g:1)}};var tk={Point:mk.prototype.Lb,LineString:mk.prototype.Ib,Polygon:mk.prototype.fb,MultiPoint:mk.prototype.Kb,MultiLineString:mk.prototype.Jb,MultiPolygon:mk.prototype.cc,GeometryCollection:mk.prototype.Cd,Circle:mk.prototype.Hb};function yk(a,b){Pj.call(this,a,b);this.A=Td()}E(yk,Pj);yk.prototype.k=function(a,b,c){zk(this,"precompose",c,a,void 0);var d=this.n();if(null!==d){var e=this.j();c.globalAlpha=b.opacity;if(0===a.view2DState.rotation){b=e[13];var f=d.width*e[0],g=d.height*e[5];c.drawImage(d,0,0,+d.width,+d.height,Math.round(e[12]),Math.round(b),Math.round(f),Math.round(g))}else c.setTransform(e[0],e[1],e[4],e[5],e[12],e[13]),c.drawImage(d,0,0),c.setTransform(1,0,0,1,0,0)}zk(this,"postcompose",c,a,void 0)};
function zk(a,b,c,d,e){var f=a.a;ld(f.V,b)&&(a=t(e)?e:Ak(a,d),a=new mk(c,d.pixelRatio,d.extent,a,d.view2DState.rotation),L(f,new te(b,f,a,d,c,null)),xk(a))}function Ak(a,b){var c=b.view2DState,d=b.pixelRatio;return bk(a.A,d*b.size[0]/2,d*b.size[1]/2,d/c.resolution,-d/c.resolution,-c.rotation,-c.center[0],-c.center[1])};function Bk(a){sj.call(this,{attributions:a.attributions,extent:a.extent,logo:a.logo,projection:a.projection,state:a.state});this.j=t(a.resolutions)?a.resolutions:null}E(Bk,sj);Bk.prototype.Ta=k("j");function Ck(a,b){null===a.j||(b=a.j[yi(a.j,b,0)]);return b};function Dk(a,b){yk.call(this,a,b);this.c=null;this.e=Td()}E(Dk,yk);Dk.prototype.f=function(a,b,c,d){var e=this.a;return e.a.k(b.extent,b.view2DState.resolution,b.view2DState.rotation,a,function(a){return c.call(d,a,e)})};Dk.prototype.n=function(){return null===this.c?null:this.c.e()};Dk.prototype.j=k("e");
Dk.prototype.b=function(a){var b=a.pixelRatio,c=a.view2DState,d=c.center,e=c.resolution,f=c.rotation,g=this.a.a,h=a.viewHints;h[0]||h[1]||(c=g.pb(a.extent,e,b,c.projection),null!==c&&(h=c.state,0==h?(gd(c,"change",this.l,!1,this),Fj(c)):2==h&&(this.c=c)));if(null!==this.c){var c=this.c,h=c.p(),m=c.d,n=c.b,e=b*m/(e*n);bk(this.e,b*a.size[0]/2,b*a.size[1]/2,e,e,f,n*(h[0]-d[0])/m,n*(d[1]-h[3])/m);Sj(a.attributions,c.g);Tj(a,g)}};function Ek(a,b){yk.call(this,a,b);this.o=this.e=this.g=null;this.q=Td();this.s=NaN;this.i=this.c=null}E(Ek,yk);Ek.prototype.n=k("g");Ek.prototype.j=k("q");
Ek.prototype.b=function(a){var b=a.pixelRatio,c=a.view2DState,d=c.projection,e=this.a,f=e.a,g=Oj(f,d),h=f.ic(),m=yi(g.a,c.resolution,0),n=f.Nb(m,a.pixelRatio,d),p=g.a[m],r=p/(n/g.ja(m)),q=c.center,u;p==c.resolution?(q=Wj(q,p,a.size),u=Se(q,p,c.rotation,a.size)):u=a.extent;var y=Kj(g,u,p),x=n*(y.d-y.a+1),w=n*(y.c-y.b+1),z,A;null===this.g?(z=qc("CANVAS"),z.width=x,z.height=w,A=z.getContext("2d"),this.g=z,this.e=[x,w],this.o=A):(z=this.g,A=this.o,this.e[0]<x||this.e[1]<w?(z.width=x,z.height=w,this.e=
[x,w],this.c=null):(x=this.e[0],w=this.e[1],m==this.s&&this.c.a<=y.a&&y.d<=this.c.d&&this.c.b<=y.b&&y.c<=this.c.c||(this.c=null)));var D,I;null===this.c?(x/=n,w/=n,D=y.a-Math.floor((x-(y.d-y.a+1))/2),I=y.b-Math.floor((w-(y.c-y.b+1))/2),this.s=m,this.c=new eb(D,D+x-1,I,I+w-1),this.i=Array(x*w),w=this.c):(w=this.c,x=w.d-w.a+1);z={};z[m]={};var P=[],J=B(f.Ic,f,z,Vj(function(a){return null!==a&&2==a.state},f,b,d)),U=e.f();t(U)||(U=!0);var aa=Fe(),ua=new eb(0,0,0,0),ra,Q,qa;for(I=y.a;I<=y.d;++I)for(qa=
y.b;qa<=y.c;++qa)Q=f.ib(m,I,qa,b,d),D=Q.state,2==D||4==D||3==D&&!U?z[m][Q.a.toString()]=Q:(ra=g.gc(Q.a,J,null,ua,aa),ra||(P.push(Q),ra=g.jc(Q.a,ua,aa),null===ra||J(m+1,ra)));J=0;for(ra=P.length;J<ra;++J)Q=P[J],I=n*(Q.a.x-w.a),qa=n*(w.c-Q.a.y),A.clearRect(I,qa,n,n);P=Ma(Zb(z),Number);Wa(P);var ia=f.G,Ub=Ue(Ij(g,new ab(m,w.a,w.c),aa)),ob,zb,dh,Pf,Qd,rj,J=0;for(ra=P.length;J<ra;++J)if(ob=P[J],n=f.Nb(ob,b,d),Pf=z[ob],ob==m)for(dh in Pf)Q=Pf[dh],zb=(Q.a.y-w.b)*x+(Q.a.x-w.a),this.i[zb]!=Q&&(I=n*(Q.a.x-
w.a),qa=n*(w.c-Q.a.y),D=Q.state,4!=D&&(3!=D||U)&&ia||A.clearRect(I,qa,n,n),2==D&&A.drawImage(Q.b(),h,h,n,n,I,qa,n,n),this.i[zb]=Q);else for(dh in ob=g.a[ob]/p,Pf)for(Q=Pf[dh],zb=Ij(g,Q.a,aa),I=(zb[0]-Ub[0])/r,qa=(Ub[1]-zb[3])/r,rj=ob*n,Qd=ob*n,D=Q.state,4!=D&&ia||A.clearRect(I,qa,rj,Qd),2==D&&A.drawImage(Q.b(),h,h,n,n,I,qa,rj,Qd),Q=Jj(g,zb,m,ua),D=Math.max(Q.a,w.a),qa=Math.min(Q.d,w.d),I=Math.max(Q.b,w.b),Q=Math.min(Q.c,w.c);D<=qa;++D)for(Qd=I;Qd<=Q;++Qd)zb=(Qd-w.b)*x+(D-w.a),this.i[zb]=void 0;Uj(a.usedTiles,
f,m,y);Xj(a,f,g,b,d,u,m,e.d());Rj(a,f);Tj(a,f);bk(this.q,b*a.size[0]/2,b*a.size[1]/2,b*r/c.resolution,b*r/c.resolution,c.rotation,(Ub[0]-q[0])/r,(q[1]-Ub[1])/r)};var Fk=["Polygon","LineString","Image","Text"];function Gk(a,b){this.X=a;this.G=b;this.q=this.o=null;this.c=[];this.coordinates=[];this.A=Td();this.a=[];this.s=[];this.d=Fe();this.N=Td()}
function Hk(a,b,c,d,e,f){var g=a.coordinates.length,h=a.G,m=[b[c],b[c+1]],n=[NaN,NaN],p=!0,r,q,u;for(r=c+e;r<d;r+=e){n[0]=b[r];n[1]=b[r+1];u=h[1];var y=h[2],x=h[3],w=n[0],z=n[1],A=0;w<h[0]?A=A|16:w>y&&(A=A|4);z<u?A|=8:z>x&&(A|=2);0===A&&(A=1);u=A;u!==q?(p&&(a.coordinates[g++]=m[0],a.coordinates[g++]=m[1]),a.coordinates[g++]=n[0],a.coordinates[g++]=n[1],p=!1):1===u?(a.coordinates[g++]=n[0],a.coordinates[g++]=n[1],p=!1):p=!0;m[0]=n[0];m[1]=n[1];q=u}r===c+e&&(a.coordinates[g++]=m[0],a.coordinates[g++]=
m[1]);f&&(a.coordinates[g++]=b[c],a.coordinates[g++]=b[c+1]);return g}function Ik(a,b){a.o=[0,b,0];a.c.push(a.o);a.q=[0,b,0];a.a.push(a.q)}
function Jk(a,b,c,d,e,f,g,h){var m;ck(d,a.A)?m=a.s:(m=bf(a.coordinates,2,d,a.s),Wd(a.A,d));d=0;var n=g.length,p=0,r;for(a=a.N;d<n;){var q=g[d],u,y,x,w;switch(q[0]){case 0:r=q[1];f(r)?++d:d=q[2];break;case 1:b.beginPath();++d;break;case 2:r=m[p];var z=m[p+1],A=m[p+2]-r,q=m[p+3]-z;b.arc(r,z,Math.sqrt(A*A+q*q),0,2*Math.PI,!0);p+=4;++d;break;case 3:b.closePath();++d;break;case 4:p=q[1];r=q[2];u=q[3];x=q[4]*c;var D=q[5]*c,I=q[6]*c;y=q[7];var z=q[9],A=q[10],P=q[11],J=q[12]*c;for(q[8]&&(z+=e);p<r;p+=2){q=
m[p]-x;w=m[p+1]-D;P&&(q=q+0.5|0,w=w+0.5|0);if(1!=A||0!==z){var U=q+x,aa=w+D;bk(a,U,aa,A,A,z,-U,-aa);b.setTransform(a[0],a[1],a[4],a[5],a[12],a[13])}U=b.globalAlpha;1!=y&&(b.globalAlpha=U*y);b.drawImage(u,q,w,J,I);1!=y&&(b.globalAlpha=U);1==A&&0===z||b.setTransform(1,0,0,1,0,0)}++d;break;case 5:p=q[1];r=q[2];x=q[3];D=q[4];I=q[5];z=q[6];A=q[7]*c;u=q[8];for(y=q[9];p<r;p+=2){q=m[p]+D;w=m[p+1]+I;if(1!=A||0!==z)bk(a,q,w,A,A,z,-q,-w),b.setTransform(a[0],a[1],a[4],a[5],a[12],a[13]);y&&b.strokeText(x,q,w);
u&&b.fillText(x,q,w);1==A&&0===z||b.setTransform(1,0,0,1,0,0)}++d;break;case 6:if(t(h)&&(r=q[1],r=h(r,q[2])))return r;++d;break;case 7:b.fill();++d;break;case 8:p=q[1];r=q[2];b.moveTo(m[p],m[p+1]);for(p+=2;p<r;p+=2)b.lineTo(m[p],m[p+1]);++d;break;case 9:b.fillStyle=q[1];++d;break;case 10:b.strokeStyle=q[1];b.lineWidth=q[2]*c;b.lineCap=q[3];b.lineJoin=q[4];b.miterLimit=q[5];Bc.Xb&&b.setLineDash(q[6]);++d;break;case 11:b.font=q[1];b.textAlign=q[2];b.textBaseline=q[3];++d;break;case 12:b.stroke();++d;
break;default:++d}}}function Kk(a){var b=a.a;b.reverse();var c,d=b.length,e,f,g=-1;for(c=0;c<d;++c)if(e=b[c],f=e[0],6==f)g=c;else if(0==f){e[2]=c;e=a.a;for(f=c;g<f;){var h=e[g];e[g]=e[f];e[f]=h;++g;--f}g=-1}}function Lk(a,b,c){a.o[2]=a.c.length;a.o=null;a.q[2]=a.a.length;a.q=null;b=[6,b,c];a.c.push(b);a.a.push(b)}Gk.prototype.sc=ea;Gk.prototype.p=k("d");function Mk(a,b){Gk.call(this,a,b);this.g=this.S=null;this.P=this.n=this.l=this.k=this.j=this.i=this.f=this.e=this.b=void 0}E(Mk,Gk);
Mk.prototype.Lb=function(a,b){if(null!==this.g){Oe(this.d,a.p());Ik(this,a);var c=a.h,d=this.coordinates.length,c=Hk(this,c,0,c.length,a.a,!1);this.c.push([4,d,c,this.g,this.b,this.e,this.f,this.i,this.j,this.k,this.l,this.n,this.P]);this.a.push([4,d,c,this.S,this.b,this.e,this.f,this.i,this.j,this.k,this.l,this.n,this.P]);Lk(this,a,b)}};
Mk.prototype.Kb=function(a,b){if(null!==this.g){Oe(this.d,a.p());Ik(this,a);var c=a.h,d=this.coordinates.length,c=Hk(this,c,0,c.length,a.a,!1);this.c.push([4,d,c,this.g,this.b,this.e,this.f,this.i,this.j,this.k,this.l,this.n,this.P]);this.a.push([4,d,c,this.S,this.b,this.e,this.f,this.i,this.j,this.k,this.l,this.n,this.P]);Lk(this,a,b)}};Mk.prototype.sc=function(){Kk(this);this.e=this.b=void 0;this.g=this.S=null;this.P=this.n=this.k=this.j=this.i=this.l=this.f=void 0};
Mk.prototype.vb=function(a){var b=a.Mb(),c=a.qb(),d=a.ee(1),e=a.Rb(1);this.b=b[0];this.e=b[1];this.S=d;this.g=e;this.f=c[1];this.i=a.j;this.j=a.k;this.k=a.e;this.l=a.f;this.n=a.l;this.P=c[0]};function Nk(a,b){Gk.call(this,a,b);this.b={Db:void 0,yb:void 0,zb:null,Ab:void 0,Bb:void 0,Cb:void 0,Sc:0,strokeStyle:void 0,lineCap:void 0,lineDash:null,lineJoin:void 0,lineWidth:void 0,miterLimit:void 0}}E(Nk,Gk);
function Ok(a,b,c,d,e){var f=a.coordinates.length;b=Hk(a,b,c,d,e,!1);f=[8,f,b];a.c.push(f);a.a.push(f);return d}function Pk(a){var b=a.b,c=b.strokeStyle,d=b.lineCap,e=b.lineDash,f=b.lineJoin,g=b.lineWidth,h=b.miterLimit;b.Db==c&&b.yb==d&&Ya(b.zb,e)&&b.Ab==f&&b.Bb==g&&b.Cb==h||(b.Sc!=a.coordinates.length&&(a.c.push([12]),b.Sc=a.coordinates.length),a.c.push([10,c,g,d,f,h,e],[1]),b.Db=c,b.yb=d,b.zb=e,b.Ab=f,b.Bb=g,b.Cb=h)}
Nk.prototype.Ib=function(a,b){var c=this.b,d=c.lineWidth;t(c.strokeStyle)&&t(d)&&(Oe(this.d,a.p()),Pk(this),Ik(this,a),this.a.push([10,c.strokeStyle,c.lineWidth,c.lineCap,c.lineJoin,c.miterLimit,c.lineDash],[1]),c=a.h,Ok(this,c,0,c.length,a.a),this.a.push([12]),Lk(this,a,b))};
Nk.prototype.Jb=function(a,b){var c=this.b,d=c.lineWidth;if(t(c.strokeStyle)&&t(d)){Oe(this.d,a.p());Pk(this);Ik(this,a);this.a.push([10,c.strokeStyle,c.lineWidth,c.lineCap,c.lineJoin,c.miterLimit,c.lineDash],[1]);var c=a.d,d=a.h,e=a.a,f=0,g,h;g=0;for(h=c.length;g<h;++g)f=Ok(this,d,f,c[g],e);this.a.push([12]);Lk(this,a,b)}};Nk.prototype.sc=function(){this.b.Sc!=this.coordinates.length&&this.c.push([12]);Kk(this);this.b=null};
Nk.prototype.na=function(a,b){var c=b.a;this.b.strokeStyle=ee(null===c?ke:c);c=b.b;this.b.lineCap=t(c)?c:"round";c=b.d;this.b.lineDash=null===c?je:c;c=b.e;this.b.lineJoin=t(c)?c:"round";c=b.c;this.b.lineWidth=t(c)?c:1;c=b.f;this.b.miterLimit=t(c)?c:10};function Qk(a,b){Gk.call(this,a,b);this.b={Ad:void 0,Db:void 0,yb:void 0,zb:null,Ab:void 0,Bb:void 0,Cb:void 0,fillStyle:void 0,strokeStyle:void 0,lineCap:void 0,lineDash:null,lineJoin:void 0,lineWidth:void 0,miterLimit:void 0}}E(Qk,Gk);
function Rk(a,b,c,d,e){var f=a.b,g=[1];a.c.push(g);a.a.push(g);var h,g=0;for(h=d.length;g<h;++g){var m=d[g],n=a.coordinates.length;c=Hk(a,b,c,m,e,!0);c=[8,n,c];n=[3];a.c.push(c,n);a.a.push(c,n);c=m}b=[7];a.a.push(b);t(f.fillStyle)&&a.c.push(b);t(f.strokeStyle)&&(f=[12],a.c.push(f),a.a.push(f));return c}l=Qk.prototype;
l.Hb=function(a,b){var c=this.b,d=c.strokeStyle;if(t(c.fillStyle)||t(d)){Oe(this.d,a.p());Sk(this);Ik(this,a);this.a.push([9,ee(ie)]);t(c.strokeStyle)&&this.a.push([10,c.strokeStyle,c.lineWidth,c.lineCap,c.lineJoin,c.miterLimit,c.lineDash]);d=a.h;Hk(this,d,0,d.length,a.a,!1);var d=[1],e=[2];this.c.push(d,e);this.a.push(d,e);Lk(this,a,b);d=[7];this.a.push(d);t(c.fillStyle)&&this.c.push(d);t(c.strokeStyle)&&(c=[12],this.c.push(c),this.a.push(c))}};
l.fb=function(a,b){var c=this.b,d=c.strokeStyle;if(t(c.fillStyle)||t(d))Oe(this.d,a.p()),Sk(this),Ik(this,a),this.a.push([9,ee(ie)]),t(c.strokeStyle)&&this.a.push([10,c.strokeStyle,c.lineWidth,c.lineCap,c.lineJoin,c.miterLimit,c.lineDash]),c=a.d,d=Jf(a),Rk(this,d,0,c,a.a),Lk(this,a,b)};
l.cc=function(a,b){var c=this.b,d=c.strokeStyle;if(t(c.fillStyle)||t(d)){Oe(this.d,a.p());Sk(this);Ik(this,a);this.a.push([9,ee(ie)]);t(c.strokeStyle)&&this.a.push([10,c.strokeStyle,c.lineWidth,c.lineCap,c.lineJoin,c.miterLimit,c.lineDash]);var c=a.d,d=Tk(a),e=a.a,f=0,g,h;g=0;for(h=c.length;g<h;++g)f=Rk(this,d,f,c[g],e);Lk(this,a,b)}};l.sc=function(){Kk(this);this.b=null;var a=this.X;if(0!==a){var b=this.coordinates,c,d;c=0;for(d=b.length;c<d;++c)b[c]=a*Math.round(b[c]/a)}};
l.na=function(a,b){var c=this.b;if(null===a)c.fillStyle=void 0;else{var d=a.a;c.fillStyle=ee(null===d?ie:d)}null===b?(c.strokeStyle=void 0,c.lineCap=void 0,c.lineDash=null,c.lineJoin=void 0,c.lineWidth=void 0,c.miterLimit=void 0):(d=b.a,c.strokeStyle=ee(null===d?ke:d),d=b.b,c.lineCap=t(d)?d:"round",d=b.d,c.lineDash=null===d?je:d.slice(),d=b.e,c.lineJoin=t(d)?d:"round",d=b.c,c.lineWidth=t(d)?d:1,d=b.f,c.miterLimit=t(d)?d:10)};
function Sk(a){var b=a.b,c=b.fillStyle,d=b.strokeStyle,e=b.lineCap,f=b.lineDash,g=b.lineJoin,h=b.lineWidth,m=b.miterLimit;t(c)&&b.Ad!=c&&(a.c.push([9,c]),b.Ad=b.fillStyle);!t(d)||b.Db==d&&b.yb==e&&b.zb==f&&b.Ab==g&&b.Bb==h&&b.Cb==m||(a.c.push([10,d,h,e,g,m,f]),b.Db=d,b.yb=e,b.zb=f,b.Ab=g,b.Bb=h,b.Cb=m)}function Uk(a,b){Gk.call(this,a,b);this.S=this.P=this.n=null;this.g="";this.l=this.k=this.j=this.i=0;this.f=this.e=this.b=null}E(Uk,Gk);
Uk.prototype.Ea=function(a,b,c,d,e,f){if(""!==this.g&&null!==this.f&&(null!==this.b||null!==this.e)){Pe(this.d,a,b,c,d);if(null!==this.b){var g=this.b,h=this.n;if(null===h||h.fillStyle!=g.fillStyle){var m=[9,g.fillStyle];this.c.push(m);this.a.push(m);null===h?this.n={fillStyle:g.fillStyle}:h.fillStyle=g.fillStyle}}null!==this.e&&(g=this.e,h=this.P,null===h||h.lineCap!=g.lineCap||h.lineDash!=g.lineDash||h.lineJoin!=g.lineJoin||h.lineWidth!=g.lineWidth||h.miterLimit!=g.miterLimit||h.strokeStyle!=g.strokeStyle)&&
(m=[10,g.strokeStyle,g.lineWidth,g.lineCap,g.lineJoin,g.miterLimit,g.lineDash],this.c.push(m),this.a.push(m),null===h?this.P={lineCap:g.lineCap,lineDash:g.lineDash,lineJoin:g.lineJoin,lineWidth:g.lineWidth,miterLimit:g.miterLimit,strokeStyle:g.strokeStyle}:(h.lineCap=g.lineCap,h.lineDash=g.lineDash,h.lineJoin=g.lineJoin,h.lineWidth=g.lineWidth,h.miterLimit=g.miterLimit,h.strokeStyle=g.strokeStyle));g=this.f;h=this.S;if(null===h||h.font!=g.font||h.textAlign!=g.textAlign||h.textBaseline!=g.textBaseline)m=
[11,g.font,g.textAlign,g.textBaseline],this.c.push(m),this.a.push(m),null===h?this.S={font:g.font,textAlign:g.textAlign,textBaseline:g.textBaseline}:(h.font=g.font,h.textAlign=g.textAlign,h.textBaseline=g.textBaseline);Ik(this,e);g=this.coordinates.length;a=Hk(this,a,b,c,d,!1);a=[5,g,a,this.g,this.i,this.j,this.k,this.l,null!==this.b,null!==this.e];this.c.push(a);this.a.push(a);Lk(this,e,f)}};
Uk.prototype.da=function(a){if(null===a)this.g="";else{var b=a.c;null===b?this.b=null:(b=b.a,b=ee(null===b?ie:b),null===this.b?this.b={fillStyle:b}:this.b.fillStyle=b);var c=a.e;if(null===c)this.e=null;else{var b=c.a,d=c.b,e=c.d,f=c.e,g=c.c,c=c.f,d=t(d)?d:"round",e=null!=e?e.slice():je,f=t(f)?f:"round",g=t(g)?g:1,c=t(c)?c:10,b=ee(null===b?ke:b);if(null===this.e)this.e={lineCap:d,lineDash:e,lineJoin:f,lineWidth:g,miterLimit:c,strokeStyle:b};else{var h=this.e;h.lineCap=d;h.lineDash=e;h.lineJoin=f;h.lineWidth=
g;h.miterLimit=c;h.strokeStyle=b}}var m=a.a,b=a.j,d=a.k,e=a.b,g=a.d,c=a.f,f=a.g,h=a.i;a=t(m)?m:"10px sans-serif";f=t(f)?f:"center";h=t(h)?h:"middle";null===this.f?this.f={font:a,textAlign:f,textBaseline:h}:(m=this.f,m.font=a,m.textAlign=f,m.textBaseline=h);this.g=t(c)?c:"";this.i=t(b)?b:0;this.j=t(d)?d:0;this.k=t(e)?e:0;this.l=t(g)?g:1}};function Vk(a,b){this.e=a;this.c=b;this.a={};var c=qc("CANVAS");c.width=1;c.height=1;this.b=c.getContext("2d");this.d=Td()}
function Wk(a,b,c,d,e,f,g){var h=Ma(Zb(a.a),Number);Wa(h);a:{var m=a.c,n=m[0],p=m[1],r=m[2],m=m[3],n=bf([n,p,n,m,r,m,r,p],2,e);b.save();b.beginPath();b.moveTo(n[0],n[1]);b.lineTo(n[2],n[3]);b.lineTo(n[4],n[5]);b.lineTo(n[6],n[7]);b.closePath();b.clip();for(var q,u,n=0,p=h.length;n<p;++n)for(q=a.a[h[n].toString()],r=0,m=Fk.length;r<m;++r)if(u=q[Fk[r]],t(u)&&We(c,u.p())&&(u=Jk(u,b,d,e,f,g,u.c,void 0)))break a;b.restore()}}
function Xk(a,b,c,d,e,f,g,h){var m,n,p,r,q;m=0;for(n=b.length;m<n;++m)for(r in p=a.a[b[m].toString()],p)if(q=p[r],We(d,q.p())&&(q=Jk(q,c,1,e,f,g,q.a,h)))return q}function Yk(a,b,c,d,e,f,g){var h=a.d;bk(h,0.5,0.5,1/c,-1/c,-d,-e[0],-e[1]);c=Ma(Zb(a.a),Number);Wa(c,function(a,b){return b-a});var m=a.b;m.clearRect(0,0,1,1);return Xk(a,c,m,b,h,d,f,function(a,b){if(0<m.getImageData(0,0,1,1).data[3]){var c=g(a,b);if(c)return c;m.clearRect(0,0,1,1)}})}
function Zk(a){for(var b in a.a){var c=a.a[b],d;for(d in c)c[d].sc()}}function $k(a,b,c){var d=t(b)?b.toString():"0";b=a.a[d];t(b)||(b={},a.a[d]=b);d=b[c];t(d)||(d=new al[c](a.e,a.c),b[c]=d);return d}Vk.prototype.Y=function(){return $b(this.a)};var al={Image:Mk,LineString:Nk,Polygon:Qk,Text:Uk};function bl(a,b,c){cf.call(this);this.pe(a,t(b)?b:0,c)}E(bl,cf);l=bl.prototype;l.I=function(){var a=new bl(null),b=this.h.slice();ef(a,this.b,b);a.u();return a};l.ha=function(a,b,c,d){var e=this.h;a-=e[0];var f=b-e[1];b=a*a+f*f;if(b<d){if(0===b)for(d=0;d<this.a;++d)c[d]=e[d];else for(d=this.ae()/Math.sqrt(b),c[0]=e[0]+d*a,c[1]=e[1]+d*f,d=2;d<this.a;++d)c[d]=e[d];c.length=this.a;return b}return d};l.Qa=function(a,b){var c=this.h,d=a-c[0],c=b-c[1];return d*d+c*c<=cl(this)};
l.Xc=function(){return this.h.slice(0,this.a)};l.p=function(a){if(this.e!=this.c){var b=this.h,c=b[this.a]-b[0];this.extent=He(b[0]-c,b[1]-c,b[0]+c,b[1]+c,this.extent);this.e=this.c}return Ye(this.extent,a)};l.ae=function(){return Math.sqrt(cl(this))};function cl(a){var b=a.h[a.a]-a.h[0];a=a.h[a.a+1]-a.h[1];return b*b+a*a}l.Ua=function(){return this};l.C=ca("Circle");l.zg=function(a){var b=this.a,c=this.h[b]-this.h[0],d=a.slice();d[b]=d[0]+c;for(c=1;c<b;++c)d[b+c]=a[c];ef(this,this.b,d);this.u()};
l.pe=function(a,b,c){if(null===a)ef(this,"XY",null);else{ff(this,c,a,0);null===this.h&&(this.h=[]);c=this.h;a=qf(c,a);c[a++]=c[0]+b;var d;b=1;for(d=this.a;b<d;++b)c[a++]=c[b];c.length=a}this.u()};l.Lh=function(a){this.h[this.a]=this.h[0]+a;this.u()};function dl(a){Md.call(this);this.a=t(a)?a:null;el(this)}E(dl,Md);function fl(a){var b=[],c,d;c=0;for(d=a.length;c<d;++c)b.push(a[c].I());return b}function gl(a){var b,c;if(null!==a.a)for(b=0,c=a.a.length;b<c;++b)hd(a.a[b],"change",a.u,!1,a)}function el(a){var b,c;if(null!==a.a)for(b=0,c=a.a.length;b<c;++b)H(a.a[b],"change",a.u,!1,a)}l=dl.prototype;l.I=function(){var a=new dl(null);a.re(this.a);return a};
l.ha=function(a,b,c,d){if(d<Ke(this.p(),a,b))return d;var e=this.a,f,g;f=0;for(g=e.length;f<g;++f)d=e[f].ha(a,b,c,d);return d};l.Qa=function(a,b){var c=this.a,d,e;d=0;for(e=c.length;d<e;++d)if(c[d].Qa(a,b))return!0;return!1};l.p=function(a){if(this.e!=this.c){var b=Me(this.extent),c=this.a,d,e;d=0;for(e=c.length;d<e;++d)Oe(b,c[d].p());this.extent=b;this.e=this.c}return Ye(this.extent,a)};l.cf=function(){return fl(this.a)};
l.Ua=function(a){this.j!=this.c&&(ac(this.f),this.g=0,this.j=this.c);if(0>a||0!==this.g&&a<this.g)return this;var b=a.toString();if(this.f.hasOwnProperty(b))return this.f[b];var c=[],d=this.a,e=!1,f,g;f=0;for(g=d.length;f<g;++f){var h=d[f],m=h.Ua(a);c.push(m);m!==h&&(e=!0)}if(e)return a=new dl(null),gl(a),a.a=c,el(a),a.u(),this.f[b]=a;this.g=a;return this};l.C=ca("GeometryCollection");l.Y=function(){return 0==this.a.length};l.re=function(a){a=fl(a);gl(this);this.a=a;el(this);this.u()};
l.transform=function(a){var b=this.a,c,d;c=0;for(d=b.length;c<d;++c)b[c].transform(a);this.u()};l.w=function(){gl(this);dl.D.w.call(this)};function hl(a,b,c,d,e){var f=NaN,g=NaN,h=(c-b)/d;if(0!==h)if(1==h)f=a[b],g=a[b+1];else if(2==h)f=0.5*a[b]+0.5*a[b+d],g=0.5*a[b+1]+0.5*a[b+d+1];else{var g=a[b],h=a[b+1],m=0,f=[0],n;for(n=b+d;n<c;n+=d){var p=a[n],r=a[n+1],m=m+Math.sqrt((p-g)*(p-g)+(r-h)*(r-h));f.push(m);g=p;h=r}c=0.5*m;for(var q,g=Xa,h=0,m=f.length;h<m;)n=h+m>>1,p=g(c,f[n]),0<p?h=n+1:(m=n,q=!p);q=q?h:~h;0>q?(c=(c-f[-q-2])/(f[-q-1]-f[-q-2]),b+=(-q-2)*d,f=a[b]+c*(a[b+d]-a[b]),g=a[b+1]+c*(a[b+d+1]-a[b+1])):(f=a[b+q*d],g=a[b+q*d+1])}return null!=
e?(e.push(f,g),e):[f,g]}function il(a,b,c,d,e,f){if(c==b)return null;if(e<a[b+d-1])return f?(c=a.slice(b,b+d),c[d-1]=e,c):null;if(a[c-1]<e)return f?(c=a.slice(c-d,c),c[d-1]=e,c):null;if(e==a[b+d-1])return a.slice(b,b+d);b/=d;for(c/=d;b<c;)f=b+c>>1,e<a[(f+1)*d-1]?c=f:b=f+1;c=a[b*d-1];if(e==c)return a.slice((b-1)*d,(b-1)*d+d);f=(e-c)/(a[(b+1)*d-1]-c);c=[];var g;for(g=0;g<d-1;++g)c.push(a[(b-1)*d+g]+f*(a[b*d+g]-a[(b-1)*d+g]));c.push(e);return c}
function jl(a,b,c,d,e,f){var g=0;if(f)return il(a,g,b[b.length-1],c,d,e);if(d<a[c-1])return e?(a=a.slice(0,c),a[c-1]=d,a):null;if(a[a.length-1]<d)return e?(a=a.slice(a.length-c),a[c-1]=d,a):null;e=0;for(f=b.length;e<f;++e){var h=b[e];if(g!=h){if(d<a[g+c-1])break;else if(d<=a[h-1])return il(a,g,h,c,d,!1);g=h}}return null};function kl(a,b){cf.call(this);this.d=null;this.k=this.l=this.i=-1;this.J(a,b)}E(kl,cf);l=kl.prototype;l.Je=function(a){null===this.h?this.h=a.slice():Ta(this.h,a);this.u()};l.I=function(){var a=new kl(null);ll(a,this.b,this.h.slice());return a};l.ha=function(a,b,c,d){if(d<Ke(this.p(),a,b))return d;this.k!=this.c&&(this.l=Math.sqrt(mf(this.h,0,this.h.length,this.a,0)),this.k=this.c);return of(this.h,0,this.h.length,this.a,this.l,!1,a,b,c,d)};
l.Ag=function(a,b){return"XYM"!=this.b&&"XYZM"!=this.b?null:il(this.h,0,this.h.length,this.a,a,t(b)?b:!1)};l.v=function(){return tf(this.h,0,this.h.length,this.a)};l.Bg=function(){var a=this.h,b=this.a,c=a[0],d=a[1],e=0,f;for(f=0+b;f<this.h.length;f+=b)var g=a[f],h=a[f+1],e=e+Math.sqrt((g-c)*(g-c)+(h-d)*(h-d)),c=g,d=h;return e};function uk(a){a.i!=a.c&&(a.d=hl(a.h,0,a.h.length,a.a,a.d),a.i=a.c);return a.d}
l.hb=function(a){var b=[];b.length=vf(this.h,0,this.h.length,this.a,a,b,0);a=new kl(null);ll(a,"XY",b);return a};l.C=ca("LineString");l.J=function(a,b){null===a?ll(this,"XY",null):(ff(this,b,a,1),null===this.h&&(this.h=[]),this.h.length=rf(this.h,0,a,this.a),this.u())};function ll(a,b,c){ef(a,b,c);a.u()};function ml(a,b){cf.call(this);this.d=[];this.i=this.k=-1;this.J(a,b)}E(ml,cf);l=ml.prototype;l.Ke=function(a){null===this.h?this.h=a.h.slice():Ta(this.h,a.h.slice());this.d.push(this.h.length);this.u()};l.I=function(){var a=new ml(null);nl(a,this.b,this.h.slice(),this.d.slice());return a};l.ha=function(a,b,c,d){if(d<Ke(this.p(),a,b))return d;this.i!=this.c&&(this.k=Math.sqrt(nf(this.h,0,this.d,this.a,0)),this.i=this.c);return pf(this.h,0,this.d,this.a,this.k,!1,a,b,c,d)};
l.Dg=function(a,b,c){return"XYM"!=this.b&&"XYZM"!=this.b||0===this.h.length?null:jl(this.h,this.d,this.a,a,t(b)?b:!1,t(c)?c:!1)};l.v=function(){return uf(this.h,0,this.d,this.a)};l.nf=function(a){if(0>a||this.d.length<=a)return null;var b=new kl(null);ll(b,this.b,this.h.slice(0===a?0:this.d[a-1],this.d[a]));return b};l.Lc=function(){var a=this.h,b=this.d,c=this.b,d=[],e=0,f,g;f=0;for(g=b.length;f<g;++f){var h=b[f],m=new kl(null);ll(m,c,a.slice(e,h));d.push(m);e=h}return d};
function vk(a){var b=[],c=a.h,d=0,e=a.d;a=a.a;var f,g;f=0;for(g=e.length;f<g;++f){var h=e[f],d=hl(c,d,h,a);Ta(b,d);d=h}return b}l.hb=function(a){var b=[],c=[],d=this.h,e=this.d,f=this.a,g=0,h=0,m,n;m=0;for(n=e.length;m<n;++m){var p=e[m],h=vf(d,g,p,f,a,b,h);c.push(h);g=p}b.length=h;a=new ml(null);nl(a,"XY",b,c);return a};l.C=ca("MultiLineString");
l.J=function(a,b){if(null===a)nl(this,"XY",null,this.d);else{ff(this,b,a,2);null===this.h&&(this.h=[]);var c=sf(this.h,0,a,this.a,this.d);this.h.length=0===c.length?0:c[c.length-1];this.u()}};function nl(a,b,c,d){ef(a,b,c);a.d=d;a.u()}function pl(a,b){var c="XY",d=[],e=[],f,g;f=0;for(g=b.length;f<g;++f){var h=b[f];0===f&&(c=h.b);Ta(d,h.h);e.push(d.length)}nl(a,c,d,e)};function ql(a,b){cf.call(this);this.J(a,b)}E(ql,cf);l=ql.prototype;l.Me=function(a){null===this.h?this.h=a.h.slice():Ta(this.h,a.h);this.u()};l.I=function(){var a=new ql(null),b=this.h.slice();ef(a,this.b,b);a.u();return a};l.ha=function(a,b,c,d){if(d<Ke(this.p(),a,b))return d;var e=this.h,f=this.a,g,h,m;g=0;for(h=e.length;g<h;g+=f)if(m=kf(a,b,e[g],e[g+1]),m<d){d=m;for(m=0;m<f;++m)c[m]=e[g+m];c.length=f}return d};l.v=function(){return tf(this.h,0,this.h.length,this.a)};
l.sf=function(a){var b=null===this.h?0:this.h.length/this.a;if(0>a||b<=a)return null;b=new zf(null);Af(b,this.b,this.h.slice(a*this.a,(a+1)*this.a));return b};l.Id=function(){var a=this.h,b=this.b,c=this.a,d=[],e,f;e=0;for(f=a.length;e<f;e+=c){var g=new zf(null);Af(g,b,a.slice(e,e+c));d.push(g)}return d};l.C=ca("MultiPoint");l.J=function(a,b){null===a?ef(this,"XY",null):(ff(this,b,a,1),null===this.h&&(this.h=[]),this.h.length=rf(this.h,0,a,this.a));this.u()};function rl(a,b){cf.call(this);this.d=[];this.k=-1;this.l=null;this.q=this.n=this.o=-1;this.i=null;this.J(a,b)}E(rl,cf);l=rl.prototype;l.Ne=function(a){if(null===this.h)this.h=a.h.slice(),a=a.d.slice(),this.d.push();else{var b=this.h.length;Ta(this.h,a.h);a=a.d.slice();var c,d;c=0;for(d=a.length;c<d;++c)a[c]+=b}this.d.push(a);this.u()};l.I=function(){var a=new rl(null);sl(a,this.b,this.h.slice(),this.d.slice());return a};
l.ha=function(a,b,c,d){if(d<Ke(this.p(),a,b))return d;if(this.n!=this.c){var e=this.d,f=0,g=0,h,m;h=0;for(m=e.length;h<m;++h)var n=e[h],g=nf(this.h,f,n,this.a,g),f=n[n.length-1];this.o=Math.sqrt(g);this.n=this.c}e=Tk(this);f=this.d;g=this.a;h=this.o;m=0;var n=t(void 0)?void 0:[NaN,NaN],p,r;p=0;for(r=f.length;p<r;++p){var q=f[p];d=pf(e,m,q,g,h,!0,a,b,c,d,n);m=q[q.length-1]}return d};
l.Qa=function(a,b){var c;a:{c=Tk(this);var d=this.d,e=0;if(0!==d.length){var f,g;f=0;for(g=d.length;f<g;++f){var h=d[f];if(Cf(c,e,h,this.a,a,b)){c=!0;break a}e=h[h.length-1]}}c=!1}return c};l.Eg=function(){var a=Tk(this),b=this.d,c=0,d=0,e,f;e=0;for(f=b.length;e<f;++e)var g=b[e],d=d+jf(a,c,g,this.a),c=g[g.length-1];return d};l.v=function(){var a=this.h,b=this.d,c=this.a,d=0,e=t(void 0)?void 0:[],f=0,g,h;g=0;for(h=b.length;g<h;++g){var m=b[g];e[f++]=uf(a,d,m,c,e[f]);d=m[m.length-1]}e.length=f;return e};
function wk(a){if(a.k!=a.c){var b=a.h,c=a.d,d=a.a,e=0,f=[],g,h,m=Fe();g=0;for(h=c.length;g<h;++g){var n=c[g],m=b,p=n[0],r=d,q=Me(void 0),m=Pe(q,m,e,p,r);f.push((m[0]+m[2])/2,(m[1]+m[3])/2);e=n[n.length-1]}b=Tk(a);c=a.d;d=a.a;g=0;h=[];n=0;for(m=c.length;n<m;++n)e=c[n],h=Df(b,g,e,d,f,2*n,h),g=e[e.length-1];a.l=h;a.k=a.c}return a.l}l.hf=function(){var a=new ql(null),b=wk(this).slice();ef(a,"XY",b);a.u();return a};
function Tk(a){if(a.q!=a.c){var b=a.h,c;a:{c=a.d;var d,e;d=0;for(e=c.length;d<e;++d)if(!Ff(b,c[d],a.a)){c=!1;break a}c=!0}if(c)a.i=b;else{a.i=b.slice();c=b=a.i;d=a.d;e=a.a;var f=0,g,h;g=0;for(h=d.length;g<h;++g)f=Gf(c,f,d[g],e);b.length=f}a.q=a.c}return a.i}l.hb=function(a){var b=[],c=[],d=this.h,e=this.d,f=this.a;a=Math.sqrt(a);var g=0,h=0,m,n;m=0;for(n=e.length;m<n;++m){var p=e[m],r=[],h=wf(d,g,p,f,a,b,h,r);c.push(r);g=p[p.length-1]}b.length=h;d=new rl(null);sl(d,"XY",b,c);return d};
l.tf=function(a){if(0>a||this.d.length<=a)return null;var b;0===a?b=0:(b=this.d[a-1],b=b[b.length-1]);a=this.d[a].slice();var c=a[a.length-1];if(0!==b){var d,e;d=0;for(e=a.length;d<e;++d)a[d]-=b}d=new Hf(null);If(d,this.b,this.h.slice(b,c),a);return d};l.Jd=function(){var a=this.b,b=this.h,c=this.d,d=[],e=0,f,g,h,m;f=0;for(g=c.length;f<g;++f){var n=c[f].slice(),p=n[n.length-1];if(0!==e)for(h=0,m=n.length;h<m;++h)n[h]-=e;h=new Hf(null);If(h,a,b.slice(e,p),n);d.push(h);e=p}return d};l.C=ca("MultiPolygon");
l.J=function(a,b){if(null===a)sl(this,"XY",null,this.d);else{ff(this,b,a,3);null===this.h&&(this.h=[]);var c=this.h,d=this.a,e=this.d,f=0,e=t(e)?e:[],g=0,h,m;h=0;for(m=a.length;h<m;++h)f=sf(c,f,a[h],d,e[g]),e[g++]=f,f=f[f.length-1];e.length=g;c=e[e.length-1];this.h.length=0===c.length?0:c[c.length-1];this.u()}};function sl(a,b,c,d){ef(a,b,c);a.d=d;a.u()}
function tl(a,b){var c="XY",d=[],e=[],f,g,h;f=0;for(g=b.length;f<g;++f){var m=b[f];0===f&&(c=m.b);var n=d.length;h=m.d;var p,r;p=0;for(r=h.length;p<r;++p)h[p]+=n;Ta(d,m.h);e.push(h)}sl(a,c,d,e)};function ul(a,b,c,d,e,f,g){var h=!1,m,n;m=c.e;null===m?vl(a,b,c,d,e):(n=m.fe(),2==n||3==n?(m.ve(f,g),2==n&&vl(a,b,c,d,e)):(0==n&&m.ge(),m.Td(f,g),h=!0));return h}function vl(a,b,c,d,e){b=b.K();null!==b&&(d=b.Ua(d),(0,wl[d.C()])(a,d,c,e))}
var wl={Point:function(a,b,c,d){var e=c.e;if(null!==e){var f=$k(a,c.a,"Image");f.vb(e);f.Lb(b,d)}e=c.c;null!==e&&(a=$k(a,c.a,"Text"),a.da(e),a.Ea(b.v(),0,2,2,b,d))},LineString:function(a,b,c,d){var e=c.b;if(null!==e){var f=$k(a,c.a,"LineString");f.na(null,e);f.Ib(b,d)}e=c.c;null!==e&&(a=$k(a,c.a,"Text"),a.da(e),a.Ea(uk(b),0,2,2,b,d))},Polygon:function(a,b,c,d){var e=c.d,f=c.b;if(null!==e||null!==f){var g=$k(a,c.a,"Polygon");g.na(e,f);g.fb(b,d)}e=c.c;null!==e&&(a=$k(a,c.a,"Text"),a.da(e),a.Ea(Kf(b),
0,2,2,b,d))},MultiPoint:function(a,b,c,d){var e=c.e;if(null!==e){var f=$k(a,c.a,"Image");f.vb(e);f.Kb(b,d)}e=c.c;null!==e&&(a=$k(a,c.a,"Text"),a.da(e),c=b.h,a.Ea(c,0,c.length,b.a,b,d))},MultiLineString:function(a,b,c,d){var e=c.b;if(null!==e){var f=$k(a,c.a,"LineString");f.na(null,e);f.Jb(b,d)}e=c.c;null!==e&&(a=$k(a,c.a,"Text"),a.da(e),c=vk(b),a.Ea(c,0,c.length,2,b,d))},MultiPolygon:function(a,b,c,d){var e=c.d,f=c.b;if(null!==f||null!==e){var g=$k(a,c.a,"Polygon");g.na(e,f);g.cc(b,d)}e=c.c;null!==
e&&(a=$k(a,c.a,"Text"),a.da(e),c=wk(b),a.Ea(c,0,c.length,2,b,d))},GeometryCollection:function(a,b,c,d){b=b.a;var e,f;e=0;for(f=b.length;e<f;++e)(0,wl[b[e].C()])(a,b[e],c,d)},Circle:function(a,b,c,d){var e=c.d,f=c.b;if(null!==e||null!==f){var g=$k(a,c.a,"Polygon");g.na(e,f);g.Hb(b,d)}e=c.c;null!==e&&(a=$k(a,c.a,"Text"),a.da(e),a.Ea(b.Xc(),0,2,2,b,d))}};function xl(a,b,c,d){this.extent=a;this.height=b;this.a=c;this.value=d}function yl(a,b){return a.extent[0]-b.extent[0]}function zl(a,b){return a.extent[1]-b.extent[1]}function Al(a,b,c,d){a=a.a;for(d=Me(d);b<c;++b)Oe(d,a[b].extent);return d}xl.prototype.remove=function(a,b,c){var d=this.a,e=d.length,f,g;if(1==this.height)for(g=0;g<e;++g){if(f=d[g],f.value===b)return Ja.splice.call(d,g,1),!0}else for(g=0;g<e;++g)if(f=d[g],Le(f.extent,a)){c.push(f);if(f.remove(a,b,c))return!0;c.pop()}return!1};
function Bl(a){var b=Me(a.extent);a=a.a;var c,d;c=0;for(d=a.length;c<d;++c)Oe(b,a[c].extent)}function Cl(a){this.b=Math.max(4,t(a)?a:9);this.d=Math.max(2,Math.ceil(0.4*this.b));this.a=new xl(Fe(),1,[],null);this.c={}}function Dl(a,b,c){var d=b.a;a=a.d;var e=d.length;Wa(d,c);c=Al(b,0,a);var f=Al(b,e-a,e),g=Ve(c)+Te(c)+(Ve(f)+Te(f));for(b=a;b<e-a;++b)Oe(c,d[b].extent),g+=Ve(c)+Te(c);for(b=e-a-1;b>=a;--b)Oe(f,d[b].extent),g+=Ve(f)+Te(f);return g}l=Cl.prototype;
l.clear=function(){var a=this.a;a.extent=Me(this.a.extent);a.height=1;a.a.length=0;a.value=null;ac(this.c)};l.forEach=function(a,b){return El(this.a,a,b)};function El(a,b,c){for(var d=[a],e,f,g;0<d.length;)if(a=d.pop(),e=a.a,1==a.height)for(a=0,f=e.length;a<f;++a){if(g=b.call(c,e[a].value))return g}else d.push.apply(d,e)}function Fl(a,b,c){Gl(a,b,c,void 0)}
function Gl(a,b,c,d){a=[a.a];for(var e;0<a.length;)if(e=a.pop(),We(b,e.extent))if(null===e.a){if(e=c.call(d,e.value))return e}else if(Le(b,e.extent)){if(e=El(e,c,d))return e}else a.push.apply(a,e.a)}function Hl(a){var b=[];a.forEach(function(a){b.push(a)});return b}function Il(a,b){var c=[];Gl(a,b,function(a){c.push(a)},void 0);return c}l.p=function(a){return Ye(this.a.extent,a)};function Jl(a,b,c){var d=v(c).toString();Kl(a,b,c,a.a.height-1);a.c[d]=Je(b)}
function Kl(a,b,c,d){for(var e=[a.a],f=a.a;null!==f.a&&e.length-1!=d;){var g=Infinity,h=Infinity,f=f.a,m=null,n,p;n=0;for(p=f.length;n<p;++n){var r=f[n],q=Ve(r.extent)*Te(r.extent),u=r.extent,y=b,x=Math.min(u[0],y[0]),w=Math.min(u[1],y[1]),z=Math.max(u[2],y[2]),u=Math.max(u[3],y[3]),x=(z-x)*(u-w)-q;x<h?(h=x,g=Math.min(q,g),m=r):x==h&&q<g&&(g=q,m=r)}f=m;e.push(f)}d=f;d.a.push(new xl(b,0,null,c));Oe(d.extent,b);for(c=e.length-1;0<=c;--c)if(e[c].a.length>a.b){g=a;h=e;f=c;d=h[f];p=g;m=d;n=Dl(p,m,yl);
p=Dl(p,m,zl);n<p&&Wa(m.a,yl);m=d;n=g.d;p=m.a.length;q=r=Infinity;x=Fe();w=Fe();z=0;u=void 0;for(u=n;u<=p-n;++u){var x=Al(m,0,u,x),w=Al(m,u,p,w),A=x,D=w,y=Math.max(A[0],D[0]),I=Math.max(A[1],D[1]),P=Math.min(A[2],D[2]),A=Math.min(A[3],D[3]),y=Math.max(0,P-y)*Math.max(0,A-I),I=Ve(x)*Te(x)+Ve(w)*Te(w);y<r?(r=y,q=Math.min(I,q),z=u):y==r&&I<q&&(q=I,z=u)}m=d.a.splice(z);m=new xl(Fe(),d.height,m,null);Bl(d);Bl(m);f?h[f-1].a.push(m):(h=m,f=d.height+1,m=Oe(d.extent.slice(),h.extent),g.a=new xl(m,f,[d,h],null))}else break;
for(;0<=c;--c)Oe(e[c].extent,b)}l.Y=function(){return 0===this.a.a.length};l.remove=function(a){var b=v(a).toString(),c=this.c[b];delete this.c[b];return Ll(this,c,a)};function Ll(a,b,c){var d=a.a,e=[d];if(b=d.remove(b,c,e))for(c=e.length-1;0<=c;--c)d=e[c],0===d.a.length?0<c?Qa(e[c-1].a,d):a.clear():Bl(d);return b}l.update=function(a,b){var c=v(b).toString(),d=this.c[c];Ne(d,a)||(Ll(this,d,b),Kl(this,a,b,this.a.height-1),this.c[c]=Je(a,d))};function Ml(a){a=t(a)?a:{};sj.call(this,{attributions:a.attributions,extent:a.extent,logo:a.logo,projection:a.projection,state:a.state});this.a=new Cl;this.b={};this.e={};t(a.features)&&Nl(this,a.features)}E(Ml,sj);l=Ml.prototype;l.ce=function(a){Ol(this,a);this.u()};function Ol(a,b){var c=v(b).toString();a.e[c]=[H(b,"change",a.de,!1,a),H(b,"propertychange",a.de,!1,a)];c=b.K();null===c?a.b[v(b).toString()]=b:(c=c.p(),Jl(a.a,c,b));L(a,new Pl("addfeature",b))}l.Fe=function(a){Nl(this,a);this.u()};
function Nl(a,b){var c,d;c=0;for(d=b.length;c<d;++c)Ol(a,b[c])}l.clear=function(){this.a.forEach(this.dd,this);this.a.clear();Wb(this.b,this.dd,this);ac(this.b);this.u()};l.Ve=function(a,b){return this.a.forEach(a,b)};function Ql(a,b,c){a.fc([b[0],b[1],b[0],b[1]],function(a){if(a.K().Qa(b[0],b[1]))return c.call(void 0,a)})}l.fc=function(a,b,c){return Gl(this.a,a,b,c)};l.Ug=function(){var a=Hl(this.a);$b(this.b)||Ta(a,Yb(this.b));return a};
l.$e=function(a){var b=[];Ql(this,a,function(a){b.push(a)});return b};l.Ye=function(a){var b=a[0],c=a[1],d=null,e=[NaN,NaN],f=Infinity,g=[-Infinity,-Infinity,Infinity,Infinity];Gl(this.a,g,function(a){var m=a.K(),n=f;f=m.ha(b,c,e,f);f<n&&(d=a,a=Math.sqrt(f),g[0]=b-a,g[1]=c-a,g[2]=b+a,g[3]=c+a)},void 0);return d};l.p=function(){return this.a.p()};
l.de=function(a){a=a.target;var b=v(a).toString(),c=a.K();null===c?b in this.b||(this.a.remove(a),this.b[b]=a):(c=c.p(),b in this.b?(delete this.b[b],Jl(this.a,c,a)):this.a.update(c,a));this.u()};l.Y=function(){return this.a.Y()&&$b(this.b)};l.Vg=function(a){var b=v(a).toString();b in this.b?delete this.b[b]:this.a.remove(a);this.dd(a);this.u()};l.dd=function(a){var b=v(a).toString();La(this.e[b],K);delete this.e[b];L(this,new Pl("removefeature",a))};
function Pl(a,b){Ic.call(this,a);this.feature=b}E(Pl,Ic);function Rl(a,b){yk.call(this,a,b);this.Eb=!1;this.i=-1;this.g=NaN;this.o=Fe();this.c=null;this.e=qc("CANVAS").getContext("2d")}E(Rl,yk);
Rl.prototype.k=function(a,b,c){var d=Ak(this,a);zk(this,"precompose",c,a,d);var e=this.c;if(null!==e&&!e.Y()){var f;ld(this.a.V,"render")?(this.e.canvas.width=c.canvas.width,this.e.canvas.height=c.canvas.height,f=this.e):f=c;var g=Sl(this);f.globalAlpha=b.opacity;Wk(e,f,a.extent,a.pixelRatio,d,a.view2DState.rotation,g);f!=c&&(zk(this,"render",f,a,d),c.drawImage(f.canvas,0,0))}zk(this,"postcompose",c,a,d)};
Rl.prototype.f=function(a,b,c,d){if(null!==this.c){var e=b.extent,f=b.view2DState.resolution;b=b.view2DState.rotation;var g=this.a,h=Sl(this);return Yk(this.c,e,f,b,a,h,function(a,b){return c.call(d,b,g)})}};function Sl(a){a=a.a.s();if(!t(a))return rd;var b=a.a;switch(b.length){case 0:return rd;case 1:return b[0];default:return function(a){var d,e;d=0;for(e=b.length;d<e;++d)if(!b[d](a))return!1;return!0}}}Rl.prototype.Ig=function(){Qj(this)};
Rl.prototype.b=function(a){var b=this.a,c=b.a;Sj(a.attributions,c.d);Tj(a,c);if(this.Eb||!a.viewHints[0]&&!a.viewHints[1]){var d=a.extent,e=a.view2DState.resolution,f=a.pixelRatio;a=b.c;if(this.Eb||this.g!=e||this.i!=a||!Le(this.o,d)){var g=this.o,h=Ve(d)/4,m=Te(d)/4;g[0]=d[0]-h;g[1]=d[1]-m;g[2]=d[2]+h;g[3]=d[3]+m;Hc(this.c);this.c=null;this.Eb=!1;var n=b.f;t(n)||(n=re);var p=new Vk(e/(2*f),g);c.fc(g,function(a){var b=n(a,e);if(null!=b){var c=e*e/(4*f*f),d,g,h=!1;d=0;for(g=b.length;d<g;++d)h=ul(p,
a,b[d],c,a,this.Ig,this)||h;a=h}else a=!1;this.Eb=this.Eb||a},this);Zk(p);this.g=e;this.i=a;this.c=p}}};function Tl(a,b){ek.call(this,0,b);this.a=qc("CANVAS");this.a.style.width="100%";this.a.style.height="100%";this.a.className="ol-unselectable";uc(a,this.a,0);this.c=!0;this.g=this.a.getContext("2d");this.i=Td()}E(Tl,ek);Tl.prototype.$b=function(a){return a instanceof jk?new Dk(this,a):a instanceof kk?new Ek(this,a):a instanceof lk?new Rl(this,a):null};
function Ul(a,b,c){var d=a.f,e=a.g;if(ld(d.V,b)){var f=c.view2DState,g=c.pixelRatio;bk(a.i,a.a.width/2,a.a.height/2,g/f.resolution,-g/f.resolution,-f.rotation,-f.center[0],-f.center[1]);a=new mk(e,g,c.extent,a.i,f.rotation);L(d,new te(b,d,a,c,e,null));xk(a)}}
Tl.prototype.vc=function(a){if(null===a)this.c&&(Qh(this.a,!1),this.c=!1);else{var b=this.g,c=a.size[0]*a.pixelRatio,d=a.size[1]*a.pixelRatio;this.a.width!=c||this.a.height!=d?(this.a.width=c,this.a.height=d):b.clearRect(0,0,this.a.width,this.a.height);fk(a);Ul(this,"precompose",a);var c=a.layerStates,d=a.layersArray,e=a.view2DState.resolution,f,g,h,m;f=0;for(g=d.length;f<g;++f)h=d[f],m=gk(this,h),h=c[v(h)],!h.visible||(1!=h.ed||e>=h.maxResolution||e<h.minResolution)||(m.b(a,h),m.k(a,h,b));Ul(this,
"postcompose",a);this.c||(Qh(this.a,!0),this.c=!0);ik(this,a);hk(a)}};var Vl=function(){var a;return function(){if(!t(a))if(s.getComputedStyle){var b=qc("P"),c,d={webkitTransform:"-webkit-transform",OTransform:"-o-transform",msTransform:"-ms-transform",MozTransform:"-moz-transform",transform:"transform"};document.body.appendChild(b);for(var e in d)e in b.style&&(b.style[e]="translate(1px,1px)",c=s.getComputedStyle(b).getPropertyValue(d[e]));vc(b);a=c&&"none"!==c}else a=!1;return a}}(),Wl=function(){var a;return function(){if(!t(a))if(s.getComputedStyle){var b=qc("P"),
c,d={webkitTransform:"-webkit-transform",OTransform:"-o-transform",msTransform:"-ms-transform",MozTransform:"-moz-transform",transform:"transform"};document.body.appendChild(b);for(var e in d)e in b.style&&(b.style[e]="translate3d(1px,1px,1px)",c=s.getComputedStyle(b).getPropertyValue(d[e]));vc(b);a=c&&"none"!==c}else a=!1;return a}}();function Xl(a,b){var c=a.style;c.WebkitTransform=b;c.MozTransform=b;c.a=b;c.msTransform=b;c.transform=b;F&&!Cc&&(a.style.transformOrigin="0 0")}
function Yl(a,b){var c;if(Wl()){if(t(6)){var d=Array(16);for(c=0;16>c;++c)d[c]=b[c].toFixed(6);c=d.join(",")}else c=b.join(",");Xl(a,"matrix3d("+c+")")}else if(Vl()){d=[b[0],b[1],b[4],b[5],b[12],b[13]];if(t(6)){var e=Array(6);for(c=0;6>c;++c)e[c]=d[c].toFixed(6);c=e.join(",")}else c=d.join(",");Xl(a,"matrix("+c+")")}else a.style.left=Math.round(b[12])+"px",a.style.top=Math.round(b[13])+"px"};function Zl(a,b,c){Pj.call(this,a,b);this.target=c}E(Zl,Pj);function $l(a,b){var c=qc("DIV");c.style.position="absolute";Zl.call(this,a,b,c);this.c=null;this.e=Vd()}E($l,Zl);$l.prototype.f=function(a,b,c,d){var e=this.a;return e.a.k(b.extent,b.view2DState.resolution,b.view2DState.rotation,a,function(a){return c.call(d,a,e)})};
$l.prototype.b=function(a){var b=a.view2DState,c=b.center,d=b.resolution,e=b.rotation,f=this.c,g=this.a.a,h=a.viewHints;h[0]||h[1]||(b=g.pb(a.extent,d,a.pixelRatio,b.projection),null!==b&&(h=b.state,0==h?(gd(b,"change",this.l,!1,this),Fj(b)):2==h&&(f=b)));if(null!==f){var h=f.p(),m=f.d,b=Td();bk(b,a.size[0]/2,a.size[1]/2,m/d,m/d,e,(h[0]-c[0])/m,(c[1]-h[3])/m);f!=this.c&&(c=f.e(this),c.style.maxWidth="none",c.style.position="absolute",sc(this.target),this.target.appendChild(c),this.c=f);ck(b,this.e)||
(Yl(this.target,b),Wd(this.e,b));Sj(a.attributions,f.g);Tj(a,g)}};function am(a,b){var c=qc("DIV");c.style.position="absolute";Zl.call(this,a,b,c);this.e=!0;this.i=1;this.g=0;this.c={}}E(am,Zl);
am.prototype.b=function(a,b){if(b.visible){var c=a.pixelRatio,d=a.view2DState,e=d.projection,f=this.a,g=f.a,h=Oj(g,e),m=g.ic(),n=yi(h.a,d.resolution,0),p=h.a[n],r=d.center,q;p==d.resolution?(r=Wj(r,p,a.size),q=Se(r,p,d.rotation,a.size)):q=a.extent;var p=Kj(h,q,p),u={};u[n]={};var y=B(g.Ic,g,u,Vj(function(a){return null!==a&&2==a.state},g,c,e)),x=f.f();t(x)||(x=!0);var w=Fe(),z=new eb(0,0,0,0),A,D,I,P;for(I=p.a;I<=p.d;++I)for(P=p.b;P<=p.c;++P)A=g.ib(n,I,P,c,e),D=A.state,2==D?u[n][A.a.toString()]=A:
4==D||3==D&&!x||(D=h.gc(A.a,y,null,z,w),D||(A=h.jc(A.a,z,w),null===A||y(n+1,A)));var J;if(this.g!=g.c){for(J in this.c)x=this.c[+J],vc(x.target);this.c={};this.g=g.c}w=Ma(Zb(u),Number);Wa(w);var y={},U;I=0;for(P=w.length;I<P;++I){J=w[I];J in this.c?x=this.c[J]:(x=Lj(h,r[0],r[1],h.a[J],!1,void 0),x=new bm(h,x),y[J]=!0,this.c[J]=x);J=u[J];for(U in J)cm(x,J[U],m);dm(x)}m=Ma(Zb(this.c),Number);Wa(m);I=Td();U=0;for(w=m.length;U<w;++U)if(J=m[U],x=this.c[J],J in u)if(A=x.g,P=x.f,bk(I,a.size[0]/2,a.size[1]/
2,A/d.resolution,A/d.resolution,d.rotation,(P[0]-r[0])/A,(r[1]-P[1])/A),em(x,I),J in y){for(J-=1;0<=J;--J)if(J in this.c){tc(x.target,this.c[J].target);break}0>J&&uc(this.target,x.target,0)}else a.viewHints[0]||a.viewHints[1]||fm(x,q,z);else vc(x.target),delete this.c[J];b.opacity!=this.i&&(Ph(this.target,b.opacity),this.i=b.opacity);b.visible&&!this.e&&(Qh(this.target,!0),this.e=!0);Uj(a.usedTiles,g,n,p);Xj(a,g,h,c,e,q,n,f.d());Rj(a,g);Tj(a,g)}else this.e&&(Qh(this.target,!1),this.e=!1)};
function bm(a,b){this.target=qc("DIV");this.target.style.position="absolute";this.target.style.width="100%";this.target.style.height="100%";this.e=a;this.b=b;this.f=Ue(Ij(a,b));this.g=a.a[b.a];this.c={};this.a=null;this.d=Vd()}
function cm(a,b,c){var d=b.a,e=d.toString();if(!(e in a.c)){var f=a.e.ja(d.a),g=b.b(a),h=g.style;h.maxWidth="none";var m,n;0<c?(m=qc("DIV"),n=m.style,n.overflow="hidden",n.width=f+"px",n.height=f+"px",h.position="absolute",h.left=-c+"px",h.top=-c+"px",h.width=f+2*c+"px",h.height=f+2*c+"px",m.appendChild(g)):(h.width=f+"px",h.height=f+"px",m=g,n=h);n.position="absolute";n.left=(d.x-a.b.x)*f+"px";n.top=(a.b.y-d.y)*f+"px";null===a.a&&(a.a=document.createDocumentFragment());a.a.appendChild(m);a.c[e]=
b}}function dm(a){null!==a.a&&(a.target.appendChild(a.a),a.a=null)}function fm(a,b,c){var d=Jj(a.e,b,a.b.a,c);b=[];for(var e in a.c)c=a.c[e],d.contains(c.a)||b.push(c);var f,d=0;for(f=b.length;d<f;++d)c=b[d],e=c.a.toString(),vc(c.b(a)),delete a.c[e]}function em(a,b){ck(b,a.d)||(Yl(a.target,b),Wd(a.d,b))};function gm(a,b){ek.call(this,0,b);this.a=qc("DIV");this.a.className="ol-unselectable";var c=this.a.style;c.position="absolute";c.width="100%";c.height="100%";uc(a,this.a,0);this.c=!0}E(gm,ek);gm.prototype.$b=function(a){if(a instanceof jk)a=new $l(this,a);else if(a instanceof kk)a=new am(this,a);else return null;return a};
gm.prototype.vc=function(a){if(null===a)this.c&&(Qh(this.a,!1),this.c=!1);else{var b;b=function(a,b){uc(this.a,a,b)};var c=a.layerStates,d=a.layersArray,e,f,g,h;e=0;for(f=d.length;e<f;++e)g=d[e],h=gk(this,g),b.call(this,h.target,e),g=a.layerStates[v(g)],1==g.ed&&h.b(a,g);for(var m in this.b)m in c||(h=this.b[m],vc(h.target));this.c||(Qh(this.a,!0),this.c=!0);fk(a);ik(this,a);hk(a)}};function hm(){}l=hm.prototype;l.bc=ba();l.Hb=ba();l.Hc=ba();l.Cd=ba();l.Lb=ba();l.Ib=ba();l.Jb=ba();l.Kb=ba();l.cc=ba();l.fb=ba();l.Ea=ba();l.na=ba();l.vb=ba();l.da=ba();function im(){this.g=Td();this.c=void 0;this.a=Td();this.d=void 0;this.b=Td();this.f=void 0;this.e=Td();this.j=void 0;this.i=Td()}
function jm(a,b,c,d,e){var f=!1;t(b)&&b!==a.c&&(f=a.a,Xd(f),f[12]=b,f[13]=b,f[14]=b,f[15]=1,a.c=b,f=!0);if(t(c)&&c!==a.d){f=a.b;Xd(f);f[0]=c;f[5]=c;f[10]=c;f[15]=1;var g=-0.5*c+0.5;f[12]=g;f[13]=g;f[14]=g;f[15]=1;a.d=c;f=!0}t(d)&&d!==a.f&&(f=Math.cos(d),g=Math.sin(d),Ud(a.e,0.213+0.787*f-0.213*g,0.213-0.213*f+0.143*g,0.213-0.213*f-0.787*g,0,0.715-0.715*f-0.715*g,0.715+0.285*f+0.14*g,0.715-0.715*f+0.715*g,0,0.072-0.072*f+0.928*g,0.072-0.072*f-0.283*g,0.072+0.928*f+0.072*g,0,0,0,0,1),a.f=d,f=!0);t(e)&&
e!==a.j&&(Ud(a.i,0.213+0.787*e,0.213-0.213*e,0.213-0.213*e,0,0.715-0.715*e,0.715+0.285*e,0.715-0.715*e,0,0.072-0.072*e,0.072-0.072*e,0.072+0.928*e,0,0,0,0,1),a.j=e,f=!0);f&&(f=a.g,Xd(f),t(c)&&Yd(f,a.b,f),t(b)&&Yd(f,a.a,f),t(e)&&Yd(f,a.i,f),t(d)&&Yd(f,a.e,f));return a.g};function km(a){this.a=a}function lm(a){this.a=a}E(lm,km);lm.prototype.C=ca(35632);function mm(a){this.a=a}E(mm,km);mm.prototype.C=ca(35633);function nm(){this.a="precision mediump float;varying vec2 a;uniform mat4 f;uniform float g;uniform sampler2D h;void main(void){vec4 texColor\x3dtexture2D(h,a);gl_FragColor.rgb\x3d(f*vec4(texColor.rgb,1.)).rgb;gl_FragColor.a\x3dtexColor.a*g;}"}E(nm,lm);fa(nm);function om(){this.a="varying vec2 a;attribute vec2 b;attribute vec2 c;uniform mat4 d;uniform mat4 e;void main(void){gl_Position\x3de*vec4(b,0.,1.);a\x3d(d*vec4(c,0.,1.)).st;}"}E(om,mm);fa(om);
function pm(a,b){this.g=a.getUniformLocation(b,"f");this.d=a.getUniformLocation(b,"g");this.e=a.getUniformLocation(b,"e");this.f=a.getUniformLocation(b,"d");this.b=a.getUniformLocation(b,"h");this.a=a.getAttribLocation(b,"b");this.c=a.getAttribLocation(b,"c")};function qm(){this.a="precision mediump float;varying vec2 a;uniform float f;uniform sampler2D g;void main(void){vec4 texColor\x3dtexture2D(g,a);gl_FragColor.rgb\x3dtexColor.rgb;gl_FragColor.a\x3dtexColor.a*f;}"}E(qm,lm);fa(qm);function rm(){this.a="varying vec2 a;attribute vec2 b;attribute vec2 c;uniform mat4 d;uniform mat4 e;void main(void){gl_Position\x3de*vec4(b,0.,1.);a\x3d(d*vec4(c,0.,1.)).st;}"}E(rm,mm);fa(rm);
function sm(a,b){this.d=a.getUniformLocation(b,"f");this.e=a.getUniformLocation(b,"e");this.f=a.getUniformLocation(b,"d");this.b=a.getUniformLocation(b,"g");this.a=a.getAttribLocation(b,"b");this.c=a.getAttribLocation(b,"c")};function tm(a){this.a=t(a)?a:[]}function um(a,b,c){if(b!=c){var d=a.a,e=d.length,f;for(f=0;f<e;f+=2)if(b<=d[f]){d.splice(f,0,b,c);vm(a);return}d.push(b,c);vm(a)}}tm.prototype.clear=function(){this.a.length=0};function vm(a){a=a.a;var b=a.length,c=0,d;for(d=0;d<b;d+=2)a[d]!=a[d+1]&&(0<c&&a[c-2]<=a[d]&&a[d]<=a[c-1]?a[c-1]=Math.max(a[c-1],a[d+1]):(a[c++]=a[d],a[c++]=a[d+1]));a.length=c}function wm(a,b){var c=a.a,d=c.length,e;for(e=0;e<d;e+=2)b.call(void 0,c[e],c[e+1])}
tm.prototype.Y=function(){return 0===this.a.length};function xm(a,b,c){var d=a.a,e=d.length,f;for(f=0;f<e;f+=2)if(!(c<d[f]||d[f+1]<b)){if(d[f]>c)break;if(b<d[f])if(c==d[f])break;else if(c<d[f+1]){d[f]=Math.max(d[f],c);break}else d.splice(f,2),f-=2,e-=2;else if(b==d[f])if(c<d[f+1]){d[f]=c;break}else if(c==d[f+1]){d.splice(f,2);break}else d.splice(f,2),f-=2,e-=2;else if(c<d[f+1]){d.splice(f,2,d[f],b,c,d[f+1]);break}else if(c==d[f+1]){d[f+1]=b;break}else d[f+1]=b}vm(a)};function ym(a,b,c){this.c=t(a)?a:[];this.a=[];this.b=new tm;a=t(b)?b:this.c.length;a<this.c.length&&um(this.b,a,this.c.length);this.e=this.f=null;this.d=t(c)?c:35044}ym.prototype.add=function(a){var b=a.length,c;a:{c=this.b.a;var d=c.length,e=-1,f,g,h;for(g=0;g<d;g+=2){h=c[g+1]-c[g];if(h==b){c=c[g];break a}h>b&&(-1==e||h<f)&&(e=c[g],f=h)}c=e}xm(this.b,c,c+b);for(d=0;d<b;++d)this.c[c+d]=a[d];a=0;for(d=this.a.length;a<d;++a)um(this.a[a],c,c+b);return c};
ym.prototype.ra=function(){var a=this.b.a,b=a.length,c=0,d;for(d=0;d<b;d+=2)c+=a[d+1]-a[d];return this.c.length-c};ym.prototype.remove=function(a,b){var c,d;um(this.b,b,b+a);c=0;for(d=this.a.length;c<d;++c)xm(this.a[c],b,b+a)};function zm(a,b){Pj.call(this,a,b);this.N=new ym([-1,-1,0,0,1,-1,1,0,-1,1,0,1,1,1,1,1]);this.g=this.ea=null;this.i=void 0;this.s=Td();this.A=Vd();this.fa=new im;this.k=this.j=null}E(zm,Pj);
function Am(a,b,c){var d=a.d.d;if(t(a.i)&&a.i==c)d.bindFramebuffer(36160,a.g);else{b.postRenderFunctions.push(wa(function(a,b,c){a.isContextLost()||(a.deleteFramebuffer(b),a.deleteTexture(c))},d,a.g,a.ea));b=d.createTexture();d.bindTexture(3553,b);d.texImage2D(3553,0,6408,c,c,0,6408,5121,null);d.texParameteri(3553,10240,9729);d.texParameteri(3553,10241,9729);var e=d.createFramebuffer();d.bindFramebuffer(36160,e);d.framebufferTexture2D(36160,36064,3553,b,0);a.ea=b;a.g=e;a.i=c}}
function Bm(a,b,c,d){a=a.a;ld(a.V,b)&&L(a,new te(b,a,new hm,d,null,c))}zm.prototype.n=function(){this.g=this.ea=null;this.i=void 0};function Cm(a,b){zm.call(this,a,b);this.c=null}E(Cm,zm);function Dm(a,b){var c=b.e(),d=a.d.d,e=d.createTexture();d.bindTexture(3553,e);d.texImage2D(3553,0,6408,6408,5121,c);d.texParameteri(3553,10242,33071);d.texParameteri(3553,10243,33071);d.texParameteri(3553,10241,9729);d.texParameteri(3553,10240,9729);return e}Cm.prototype.f=function(a,b,c,d){var e=this.a;return e.a.k(b.extent,b.view2DState.resolution,b.view2DState.rotation,a,function(a){return c.call(d,a,e)})};
Cm.prototype.b=function(a){var b=this.d.d,c=a.view2DState,d=c.center,e=c.resolution,f=c.rotation,g=this.c,h=this.ea,m=this.a.a,n=a.viewHints;n[0]||n[1]||(c=m.pb(a.extent,e,a.pixelRatio,c.projection),null!==c&&(n=c.state,0==n?(gd(c,"change",this.l,!1,this),Fj(c)):2==n&&(g=c,h=Dm(this,c),null===this.ea||a.postRenderFunctions.push(wa(function(a,b){a.isContextLost()||a.deleteTexture(b)},b,this.ea)))));null!==g&&(b=this.d.e.f,Em(this,b.width,b.height,d,e,f,g.p()),d=this.s,Xd(d),$d(d,1,-1),Zd(d,0,-1),this.c=
g,this.ea=h,Sj(a.attributions,g.g),Tj(a,m))};function Em(a,b,c,d,e,f,g){b*=e;c*=e;a=a.A;Xd(a);$d(a,2/b,2/c);ae(a,-f);Zd(a,g[0]-d[0],g[1]-d[1]);$d(a,(g[2]-g[0])/2,(g[3]-g[1])/2);Zd(a,1,1)};function Fm(){this.a="precision mediump float;varying vec2 a;uniform sampler2D e;void main(void){gl_FragColor\x3dtexture2D(e,a);}"}E(Fm,lm);fa(Fm);function Gm(){this.a="varying vec2 a;attribute vec2 b;attribute vec2 c;uniform vec4 d;void main(void){gl_Position\x3dvec4(b*d.xy+d.zw,0.,1.);a\x3dc;}"}E(Gm,mm);fa(Gm);function Hm(a,b){this.b=a.getUniformLocation(b,"e");this.d=a.getUniformLocation(b,"d");this.a=a.getAttribLocation(b,"b");this.c=a.getAttribLocation(b,"c")};function Im(a,b){zm.call(this,a,b);this.X=Fm.Fa();this.U=Gm.Fa();this.c=null;this.G=new ym([0,0,0,1,1,0,1,1,0,1,0,0,1,1,1,0]);this.q=this.e=null;this.o=-1}E(Im,zm);Im.prototype.w=function(){var a=this.d.e,b=a.c,c=v(this.G),d=a.a[c];Qa(d.wd.a,d.ac);b.isContextLost()||b.deleteBuffer(d.buffer);delete a.a[c];Im.D.w.call(this)};Im.prototype.n=function(){Im.D.n.call(this);this.c=null};
Im.prototype.b=function(a){var b=this.d,c=b.e,d=b.d,e=a.view2DState,f=e.projection,g=this.a,h=g.a,m=Oj(h,f),n=yi(m.a,e.resolution,0),p=m.a[n],r=h.Nb(n,a.pixelRatio,f),q=r/m.ja(n),u=p/q,y=h.ic(),x=e.center,w;p==e.resolution?(x=Wj(x,p,a.size),w=Se(x,p,e.rotation,a.size)):w=a.extent;p=Kj(m,w,p);if(null!==this.e&&this.e.a==p.a&&(this.e.b==p.b&&this.e.d==p.d&&this.e.c==p.c)&&this.o==h.c)u=this.q;else{var z=[p.d-p.a+1,p.c-p.b+1],z=Math.max(z[0]*r,z[1]*r),A=Math.pow(2,Math.ceil(Math.log(z)/Math.LN2)),z=
u*A,D=m.Sb(n),I=D[0]+p.a*r*u,u=D[1]+p.b*r*u,u=[I,u,I+z,u+z];Am(this,a,A);d.viewport(0,0,A,A);d.clearColor(0,0,0,0);d.clear(16384);d.disable(3042);A=Jm(c,this.X,this.U);c.Zc(A);null===this.c&&(this.c=new Hm(d,A));Km(c,this.G);d.enableVertexAttribArray(this.c.a);d.vertexAttribPointer(this.c.a,2,5126,!1,16,0);d.enableVertexAttribArray(this.c.c);d.vertexAttribPointer(this.c.c,2,5126,!1,16,8);d.uniform1i(this.c.b,0);c={};c[n]={};var P=B(h.Ic,h,c,Vj(function(a){return null!==a&&2==a.state&&Lm(b.c,a.d())},
h,q,f)),J=g.f();t(J)||(J=!0);var A=!0,I=Fe(),U=new eb(0,0,0,0),aa,ua,ra;for(ua=p.a;ua<=p.d;++ua)for(ra=p.b;ra<=p.c;++ra){D=h.ib(n,ua,ra,q,f);aa=D.state;if(2==aa){if(Lm(b.c,D.d())){c[n][D.a.toString()]=D;continue}}else if(4==aa||3==aa&&!J)continue;A=!1;aa=m.gc(D.a,P,null,U,I);aa||(D=m.jc(D.a,U,I),null===D||P(n+1,D))}P=Ma(Zb(c),Number);Wa(P);var J=new Float32Array(4),Q,qa,ia,Ub,U=0;for(ua=P.length;U<ua;++U)for(qa in ia=c[P[U]],ia)D=ia[qa],Q=Ij(m,D.a,I),ra=2*(Q[2]-Q[0])/z,aa=2*(Q[3]-Q[1])/z,Ub=2*(Q[0]-
u[0])/z-1,Q=2*(Q[1]-u[1])/z-1,Sd(J,ra,aa,Ub,Q),d.uniform4fv(this.c.d,J),Mm(b,D,r,y*q),d.drawArrays(5,0,4);A?(this.e=p,this.q=u,this.o=h.c):(this.q=this.e=null,this.o=-1,a.animate=!0)}Uj(a.usedTiles,h,n,p);var ob=b.i;Xj(a,h,m,q,f,w,n,g.d(),function(a){var c;(c=2!=a.state)||(c=Lm(b.c,a.d()))||(c=a.d()in ob.b);c||si(ob,[a,Mj(m,a.a),m.a[a.a.a],r,y*q])},this);Rj(a,h);Tj(a,h);d=this.s;Xd(d);Zd(d,(x[0]-u[0])/(u[2]-u[0]),(x[1]-u[1])/(u[3]-u[1]));0!==e.rotation&&ae(d,e.rotation);$d(d,a.size[0]*e.resolution/
(u[2]-u[0]),a.size[1]*e.resolution/(u[3]-u[1]));Zd(d,-0.5,-0.5)};function Nm(){this.F=0;this.b={};this.c=this.a=null}l=Nm.prototype;l.clear=function(){this.F=0;this.b={};this.c=this.a=null};function Lm(a,b){return a.b.hasOwnProperty(b)}l.forEach=function(a,b){for(var c=this.a;null!==c;)a.call(b,c.wb,c.pc,this),c=c.ka};function Om(a,b){var c=a.b[b];if(c===a.c)return c.wb;c===a.a?(a.a=a.a.ka,a.a.Ja=null):(c.ka.Ja=c.Ja,c.Ja.ka=c.ka);c.ka=null;c.Ja=a.c;a.c.ka=c;a.c=c;return c.wb}l.ra=k("F");
l.sa=function(){var a=Array(this.F),b=0,c;for(c=this.c;null!==c;c=c.Ja)a[b++]=c.pc;return a};l.xa=function(){var a=Array(this.F),b=0,c;for(c=this.c;null!==c;c=c.Ja)a[b++]=c.wb;return a};function Pm(a){var b=a.a;delete a.b[b.pc];null!==b.ka&&(b.ka.Ja=null);a.a=b.ka;null===a.a&&(a.c=null);--a.F}function Qm(a,b,c){c={pc:b,ka:null,Ja:a.c,wb:c};null===a.c?a.a=c:a.c.ka=c;a.c=c;a.b[b]=c;++a.F};function Rm(a,b){this.f=a;this.c=b;this.a={};this.d={};this.b={};this.e=null;H(this.f,"webglcontextlost",this.nh,!1,this);H(this.f,"webglcontextrestored",this.oh,!1,this)}
function Km(a,b){var c=a.c,d=b.c,e=v(b);if(e in a.a)e=a.a[e],c.bindBuffer(34962,e.buffer),wm(e.ac,function(a,b){var e=d.slice(a,b);c.bufferSubData(34962,a,new Float32Array(e))}),e.ac.clear();else{var f=c.createBuffer();c.bindBuffer(34962,f);c.bufferData(34962,new Float32Array(d),b.d);var g=new tm;b.a.push(g);a.a[e]={wd:b,buffer:f,ac:g}}}l=Rm.prototype;
l.w=function(){Wb(this.a,function(a){Qa(a.wd.a,a.ac)});var a=this.c;a.isContextLost()||(Wb(this.a,function(b){a.deleteBuffer(b.buffer)}),Wb(this.b,function(b){a.deleteProgram(b)}),Wb(this.d,function(b){a.deleteShader(b)}))};l.mh=k("c");function Sm(a,b){var c=v(b);if(c in a.d)return a.d[c];var d=a.c,e=d.createShader(b.C());d.shaderSource(e,b.a);d.compileShader(e);return a.d[c]=e}
function Jm(a,b,c){var d=v(b)+"/"+v(c);if(d in a.b)return a.b[d];var e=a.c,f=e.createProgram();e.attachShader(f,Sm(a,b));e.attachShader(f,Sm(a,c));e.linkProgram(f);return a.b[d]=f}l.nh=function(){ac(this.a);ac(this.d);ac(this.b);this.e=null};l.oh=ba();l.Zc=function(a){if(a==this.e)return!1;this.c.useProgram(a);this.e=a;return!0};function Tm(a,b){ek.call(this,0,b);this.a=qc("CANVAS");this.a.style.width="100%";this.a.style.height="100%";this.a.className="ol-unselectable";uc(a,this.a,0);this.n=qc("CANVAS");this.l=0;this.o=this.n.getContext("2d");this.j=!0;this.d=Ac(this.a,{antialias:!0,depth:!1,Te:!0,preserveDrawingBuffer:!1,stencil:!0});this.e=new Rm(this.a,this.d);H(this.a,"webglcontextlost",this.Jg,!1,this);H(this.a,"webglcontextrestored",this.Kg,!1,this);this.c=new Nm;this.k=null;this.i=new pi(B(function(a){var b=a[1];a=
a[2];var e=b[0]-this.k[0],b=b[1]-this.k[1];return 65536*Math.log(a)+Math.sqrt(e*e+b*b)/a},this),function(a){return a[0].d()});this.q=B(function(){if(!this.i.Y()){ui(this.i);var a=qi(this.i);Mm(this,a[0],a[3],a[4])}},this);this.g=0;Um(this)}E(Tm,ek);
function Mm(a,b,c,d){var e=a.d,f=b.d();if(Lm(a.c,f))a=Om(a.c,f),e.bindTexture(3553,a.ea),9729!=a.Ud&&(e.texParameteri(3553,10240,9729),a.Ud=9729),9729!=a.Vd&&(e.texParameteri(3553,10240,9729),a.Vd=9729);else{var g=e.createTexture();e.bindTexture(3553,g);if(0<d){var h=a.n,m=a.o;a.l!=c?(h.width=c,h.height=c,a.l=c):m.clearRect(0,0,c,c);m.drawImage(b.b(),d,d,c,c,0,0,c,c);e.texImage2D(3553,0,6408,6408,5121,h)}else e.texImage2D(3553,0,6408,6408,5121,b.b());e.texParameteri(3553,10240,9729);e.texParameteri(3553,
10241,9729);e.texParameteri(3553,10242,33071);e.texParameteri(3553,10243,33071);Qm(a.c,f,{ea:g,Ud:9729,Vd:9729})}}l=Tm.prototype;l.$b=function(a){return a instanceof jk?new Cm(this,a):a instanceof kk?new Im(this,a):null};function Vm(a,b,c){var d=a.f;ld(d.V,b)&&L(d,new te(b,d,new hm,c,null,a.e))}l.w=function(){var a=this.d;a.isContextLost()||this.c.forEach(function(b){null===b||a.deleteTexture(b.ea)});Hc(this.e);Tm.D.w.call(this)};
l.Se=function(a,b){for(var c=this.d,d;1024<this.c.ra()-this.g;){d=this.c.a.wb;if(null===d)if(+this.c.a.pc==b.index)break;else--this.g;else c.deleteTexture(d.ea);Pm(this.c)}};l.Jg=function(a){a.L();this.c.clear();this.g=0;Wb(this.b,function(a){a.n()})};l.Kg=function(){Um(this);this.f.H()};function Um(a){a=a.d;a.activeTexture(33984);a.blendFuncSeparate(770,771,1,771);a.disable(2884);a.disable(2929);a.disable(3089);a.disable(2960)}
l.vc=function(a){var b=this.e,c=this.d;if(c.isContextLost())return!1;if(null===a)return this.j&&(Qh(this.a,!1),this.j=!1),!1;this.k=a.focus;Qm(this.c,(-a.index).toString(),null);++this.g;var d=[],e=a.layersArray,f=a.view2DState.resolution,g,h,m,n;g=0;for(h=e.length;g<h;++g)m=e[g],n=a.layerStates[v(m)],n.visible&&(1==n.ed&&f<n.maxResolution&&f>=n.minResolution)&&d.push(m);g=0;for(h=d.length;g<h;++g)m=d[g],e=gk(this,m),n=a.layerStates[v(m)],e.b(a,n);g=a.size[0]*a.pixelRatio;h=a.size[1]*a.pixelRatio;
if(this.a.width!=g||this.a.height!=h)this.a.width=g,this.a.height=h;c.bindFramebuffer(36160,null);c.clearColor(0,0,0,0);c.clear(16384);c.enable(3042);c.viewport(0,0,this.a.width,this.a.height);Vm(this,"precompose",a);g=0;for(h=d.length;g<h;++g){m=d[g];n=a.layerStates[v(m)];c=e=gk(this,m);m=a;e=b;Bm(c,"precompose",e,m);Km(e,c.N);var f=e.c,p=n.brightness||1!=n.contrast||n.hue||1!=n.saturation,r=void 0,q=void 0;p?(r=nm.Fa(),q=om.Fa()):(r=qm.Fa(),q=rm.Fa());r=Jm(e,r,q);q=void 0;p?null===c.j?(q=new pm(f,
r),c.j=q):q=c.j:null===c.k?(q=new sm(f,r),c.k=q):q=c.k;e.Zc(r)&&(f.enableVertexAttribArray(q.a),f.vertexAttribPointer(q.a,2,5126,!1,16,0),f.enableVertexAttribArray(q.c),f.vertexAttribPointer(q.c,2,5126,!1,16,8),f.uniform1i(q.b,0));f.uniformMatrix4fv(q.f,!1,c.s);f.uniformMatrix4fv(q.e,!1,c.A);p&&f.uniformMatrix4fv(q.g,!1,jm(c.fa,n.brightness,n.contrast,n.hue,n.saturation));f.uniform1f(q.d,n.opacity);f.bindTexture(3553,c.ea);f.drawArrays(5,0,4);Bm(c,"postcompose",e,m)}this.j||(Qh(this.a,!0),this.j=
!0);fk(a);1024<this.c.ra()-this.g&&a.postRenderFunctions.push(B(this.Se,this));this.i.Y()||(a.postRenderFunctions.push(this.q),a.animate=!0);Vm(this,"postcompose",a);ik(this,a);hk(a)};var Wm=["webgl","canvas","dom"];
function V(a){M.call(this);var b=Xm(a);this.Cc=t(a.pixelRatio)?a.pixelRatio:Bc.pd;this.Bc=b.ol3Logo;this.q=new jh(this.Gh,void 0,this);Gc(this,this.q);this.xb=Td();this.Ec=Td();this.Ac=0;this.n=this.N=this.d=null;this.b=nc("DIV","ol-viewport");this.b.style.position="relative";this.b.style.overflow="hidden";this.b.style.width="100%";this.b.style.height="100%";this.b.style.msTouchAction="none";Bc.ud&&(this.b.className="ol-touch");this.Na=nc("DIV","ol-overlaycontainer");this.b.appendChild(this.Na);this.A=
nc("DIV","ol-overlaycontainer-stopevent");H(this.A,["click","dblclick","mousedown","touchstart","MSPointerDown"],Jc);this.b.appendChild(this.A);a=new di(this);H(a,Yb(oi),this.$d,!1,this);Gc(this,a);this.Ma=b.keyboardEventTarget;this.s=new th;H(this.s,"key",this.Od,!1,this);Gc(this,this.s);a=new Zh(this.b);H(a,"mousewheel",this.Od,!1,this);Gc(this,a);this.k=b.controls;this.zc=b.deviceOptions;this.j=b.interactions;this.l=b.overlays;this.pa=new b.Ih(this.b,this);Gc(this,this.pa);this.Ce=new ph;H(this.Ce,
"resize",this.G,!1,this);this.U=null;this.o=[];this.Oa=[];this.Pa=new vi(B(this.xf,this),B(this.cg,this));H(this,Gd("layergroup"),this.Kf,!1,this);H(this,Gd("view"),this.gg,!1,this);H(this,Gd("size"),this.ag,!1,this);H(this,Gd("target"),this.bg,!1,this);this.W(b.Sh);this.k.forEach(function(a){a.setMap(this)},this);H(this.k,"add",function(a){a.element.setMap(this)},!1,this);H(this.k,"remove",function(a){a.element.setMap(null)},!1,this);this.j.forEach(function(a){a.setMap(this)},this);H(this.j,"add",
function(a){a.element.setMap(this)},!1,this);H(this.j,"remove",function(a){a.element.setMap(null)},!1,this);this.l.forEach(function(a){a.setMap(this)},this);H(this.l,"add",function(a){a.element.setMap(this)},!1,this);H(this.l,"remove",function(a){a.element.setMap(null)},!1,this)}E(V,M);l=V.prototype;l.De=function(a){this.k.push(a)};l.Ge=function(a){this.j.push(a)};l.He=function(a){this.Sa().Za().push(a)};l.Ie=function(a){this.l.push(a)};
l.ga=function(a){this.H();Array.prototype.push.apply(this.o,arguments)};l.w=function(){vc(this.b);V.D.w.call(this)};l.Wc=function(a,b,c,d,e){if(null!==this.d){a=this.aa(a);a:{var f=this.pa,g=this.d;c=t(c)?c:null;d=t(d)?d:rd;e=t(e)?e:null;var h=f.f.Sa().Kc(),m;for(m=h.length-1;0<=m;--m){var n=h[m];if(n.b()&&d.call(e,n)&&(n=gk(f,n).f(a,g,b,c))){b=n;break a}}b=void 0}return b}};l.Gd=function(a){return this.aa(this.hc(a))};
l.hc=function(a){if(t(a.changedTouches)){a=a.changedTouches.item(0);var b=Lh(this.b);return[a.clientX-b.x,a.clientY-b.y]}a=Kh(a,this.b);return[a.x,a.y]};l.rc=function(){return this.r("target")};V.prototype.getTarget=V.prototype.rc;l=V.prototype;l.aa=function(a){var b=this.d;if(null===b)return null;a=a.slice();return dk(b.pixelToCoordinateMatrix,a,a)};l.Ze=k("k");l.rf=k("l");l.ff=k("j");l.Sa=function(){return this.r("layergroup")};V.prototype.getLayerGroup=V.prototype.Sa;
V.prototype.Dc=function(){var a=this.Sa();if(t(a))return a.Za()};V.prototype.f=function(a){var b=this.d;if(null===b)return null;a=a.slice(0,2);return dk(b.coordinateToPixelMatrix,a,a)};V.prototype.g=function(){return this.r("size")};V.prototype.getSize=V.prototype.g;V.prototype.a=function(){return this.r("view")};V.prototype.getView=V.prototype.a;l=V.prototype;l.yf=k("b");
l.xf=function(a,b,c,d){var e=this.d;if(!(null!==e&&b in e.wantedTiles&&e.wantedTiles[b][a.a.toString()]))return Infinity;a=c[0]-e.focus[0];c=c[1]-e.focus[1];return 65536*Math.log(d)+Math.sqrt(a*a+c*c)/d};l.Od=function(a,b){var c=new ci(b||a.type,this,a);this.$d(c)};l.$d=function(a){if(null!==this.d){this.U=a.coordinate;a.b=this.d;var b=this.j.a,c;if(!1!==L(this,a))for(c=b.length-1;0<=c&&b[c].la(a);c--);}};
l.Yf=function(){var a=this.d,b=this.Pa;if(!b.Y()){var c=16,d=c,e=0;if(null!==a){var e=a.viewHints,f=this.zc;e[0]&&(c=!1===f.loadTilesWhileAnimating?0:8,d=2);e[1]&&(c=!1===f.loadTilesWhileInteracting?0:8,d=2);var e=a.wantedTiles,f=0,g;for(g in e)f++;e=f}c*=e;d*=e;if(b.d<c){ui(b);c=Math.min(c-b.d,d,b.ra());for(d=0;d<c;++d)g=qi(b)[0],gd(g,"change",b.g,!1,b),0==g.state&&(g.state=1,g.e=[gd(g.c,"error",g.k,!1,g),gd(g.c,"load",g.l,!1,g)],g.n(g,g.i));b.d+=c}}b=this.Oa;c=0;for(d=b.length;c<d;++c)b[c](this,
a);b.length=0};l.ag=function(){this.H()};l.bg=function(){var a=this.rc(),a=t(a)?jc(a):null;Ah(this.s);null===a?vc(this.b):(a.appendChild(this.b),uh(this.s,null===this.Ma?a:this.Ma));this.G()};l.cg=function(){this.H()};l.hg=function(){this.H()};l.gg=function(){null!==this.N&&(K(this.N),this.N=null);var a=this.a();null!=a&&(this.N=H(a,"propertychange",this.hg,!1,this));this.H()};l.Lf=function(){this.H()};l.Mf=function(){this.H()};
l.Kf=function(){if(null!==this.n){for(var a=this.n.length,b=0;b<a;++b)K(this.n[b]);this.n=null}a=this.Sa();null!=a&&(this.n=[H(a,"propertychange",this.Mf,!1,this),H(a,"change",this.Lf,!1,this)]);this.H()};function $i(a){if(!xc(document,a.b)||"none"==a.b.style.display)return!1;var b=a.g();if(null==b||0>=b[0]||0>=b[1])return!1;a=a.a();return t(a)&&a.Vc()?!0:!1}l.Hh=function(){var a=this.q;kh(a);a.Bd()};l.H=function(){null!=this.q.R||this.q.start()};l.Bh=function(a){if(t(this.k.remove(a)))return a};
l.Dh=function(a){var b;t(this.j.remove(a))&&(b=a);return b};l.Eh=function(a){return this.Sa().Za().remove(a)};l.Fh=function(a){if(t(this.l.remove(a)))return a};
l.Gh=function(a){var b,c,d,e=this.g();b=this.a();var f=t(b)?this.a().M():void 0,g=null;if(t(e)&&0<e[0]&&0<e[1]&&t(f)&&f.Vc()){g=Sa(b.k);b=this.Sa().Jc();var h=b.layers;d=b.layerStates;var m={},n;b=0;for(c=h.length;b<c;++b)n=h[b],m[v(n)]=d[b];d=Ji(f);g={animate:!1,attributions:{},coordinateToPixelMatrix:this.xb,extent:null,focus:null===this.U?d.center:this.U,index:this.Ac++,layersArray:h,layerStates:m,logos:{},pixelRatio:this.Cc,pixelToCoordinateMatrix:this.Ec,postRenderFunctions:[],size:e,tileQueue:this.Pa,
time:a,usedTiles:{},view2DState:d,viewHints:g,wantedTiles:{}};this.Bc&&(g.logos["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAAHGAAABxgEXwfpGAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAhNQTFRF////AP//AICAgP//AFVVQECA////K1VVSbbbYL/fJ05idsTYJFtbbcjbJllmZszWWMTOIFhoHlNiZszTa9DdUcHNHlNlV8XRIVdiasrUHlZjIVZjaMnVH1RlIFRkH1RkH1ZlasvYasvXVsPQH1VkacnVa8vWIVZjIFRjVMPQa8rXIVVkXsXRsNveIFVkIFZlIVVj3eDeh6GmbMvXH1ZkIFRka8rWbMvXIFVkIFVjIFVkbMvWH1VjbMvWIFVlbcvWIFVla8vVIFVkbMvWbMvVH1VkbMvWIFVlbcvWIFVkbcvVbMvWjNPbIFVkU8LPwMzNIFVkbczWIFVkbsvWbMvXIFVkRnB8bcvW2+TkW8XRIFVkIlZlJVloJlpoKlxrLl9tMmJwOWd0Omh1RXF8TneCT3iDUHiDU8LPVMLPVcLPVcPQVsPPVsPQV8PQWMTQWsTQW8TQXMXSXsXRX4SNX8bSYMfTYcfTYsfTY8jUZcfSZsnUaIqTacrVasrVa8jTa8rWbI2VbMvWbcvWdJObdcvUdszUd8vVeJaee87Yfc3WgJyjhqGnitDYjaarldPZnrK2oNbborW5o9bbo9fbpLa6q9ndrL3ArtndscDDutzfu8fJwN7gwt7gxc/QyuHhy+HizeHi0NfX0+Pj19zb1+Tj2uXk29/e3uLg3+Lh3+bl4uXj4ufl4+fl5Ofl5ufl5ujm5+jmySDnBAAAAFp0Uk5TAAECAgMEBAYHCA0NDg4UGRogIiMmKSssLzU7PkJJT1JTVFliY2hrdHZ3foSFhYeJjY2QkpugqbG1tre5w8zQ09XY3uXn6+zx8vT09vf4+Pj5+fr6/P39/f3+gz7SsAAAAVVJREFUOMtjYKA7EBDnwCPLrObS1BRiLoJLnte6CQy8FLHLCzs2QUG4FjZ5GbcmBDDjxJBXDWxCBrb8aM4zbkIDzpLYnAcE9VXlJSWlZRU13koIeW57mGx5XjoMZEUqwxWYQaQbSzLSkYGfKFSe0QMsX5WbjgY0YS4MBplemI4BdGBW+DQ11eZiymfqQuXZIjqwyadPNoSZ4L+0FVM6e+oGI6g8a9iKNT3o8kVzNkzRg5lgl7p4wyRUL9Yt2jAxVh6mQCogae6GmflI8p0r13VFWTHBQ0rWPW7ahgWVcPm+9cuLoyy4kCJDzCm6d8PSFoh0zvQNC5OjDJhQopPPJqph1doJBUD5tnkbZiUEqaCnB3bTqLTFG1bPn71kw4b+GFdpLElKIzRxxgYgWNYc5SCENVHKeUaltHdXx0dZ8uBI1hJ2UUDgq82CM2MwKeibqAvSO7MCABq0wXEPiqWEAAAAAElFTkSuQmCC"]=
"http://ol3js.org/")}a=this.o;b=e=0;for(c=a.length;b<c;++b)f=a[b],f(this,g)&&(a[e++]=f);a.length=e;null!==g&&(g.extent=Se(d.center,d.resolution,d.rotation,g.size));this.d=g;this.pa.vc(g);null!==g&&(g.animate&&this.H(),Array.prototype.push.apply(this.Oa,g.postRenderFunctions),0!=this.o.length||(g.animate||g.viewHints[0]||g.viewHints[1])||L(this,new bi("moveend",this)));L(this,new bi("postrender",this,g));c=b=this.Yf;this&&(c=B(b,this));na(s.setImmediate)?s.setImmediate(c):(nh||(nh=oh()),nh(c))};
l.Kh=function(a){this.t("layergroup",a)};V.prototype.setLayerGroup=V.prototype.Kh;V.prototype.Da=function(a){this.t("size",a)};V.prototype.setSize=V.prototype.Da;V.prototype.Ae=function(a){this.t("target",a)};V.prototype.setTarget=V.prototype.Ae;V.prototype.Be=function(a){this.t("view",a)};V.prototype.setView=V.prototype.Be;V.prototype.G=function(){var a=this.rc(),a=t(a)?jc(a):null;null===a?this.Da(void 0):(a=Sh(a),this.Da([a.width,a.height]))};
function Xm(a){var b=null;t(a.keyboardEventTarget)&&(b=la(a.keyboardEventTarget)?document.getElementById(a.keyboardEventTarget):a.keyboardEventTarget);var c={},d=t(a.ol3Logo)?a.ol3Logo:!0,e=a.layers instanceof vj?a.layers:new vj({layers:a.layers});c.layergroup=e;c.target=a.target;c.view=t(a.view)?a.view:new S;var e=ek,f;t(a.renderer)?ja(a.renderer)?f=a.renderer:la(a.renderer)&&(f=[a.renderer]):f=Wm;var g,h;g=0;for(h=f.length;g<h;++g){var m=f[g];if("canvas"==m){if(Bc.rd){e=Tl;break}}else if("dom"==
m){if(Bc.ze){e=gm;break}}else if("webgl"==m&&Bc.vd){e=Tm;break}}f=t(a.controls)?ja(a.controls)?new N(Sa(a.controls)):a.controls:Oi();g=t(a.deviceOptions)?a.deviceOptions:{};h=t(a.interactions)?ja(a.interactions)?new N(Sa(a.interactions)):a.interactions:qj();a=t(a.overlays)?ja(a.overlays)?new N(Sa(a.overlays)):a.overlays:new N;return{controls:f,deviceOptions:g,interactions:h,keyboardEventTarget:b,ol3Logo:d,overlays:a,Ih:e,Sh:c}}Bj();function Ym(a){M.call(this);this.o=t(a.insertFirst)?a.insertFirst:!0;this.q=t(a.stopEvent)?a.stopEvent:!0;this.b=qc("DIV");this.b.style.position="absolute";this.a={Zb:"",qc:"",wc:"",yc:"",visible:!0};this.d=null;H(this,Gd("element"),this.Gf,!1,this);H(this,Gd("map"),this.Qf,!1,this);H(this,Gd("position"),this.Wf,!1,this);H(this,Gd("positioning"),this.Xf,!1,this);t(a.element)&&this.qe(a.element);t(a.position)&&this.l(a.position);t(a.positioning)&&this.n(a.positioning)}E(Ym,M);Ym.prototype.j=function(){return this.r("element")};
Ym.prototype.getElement=Ym.prototype.j;Ym.prototype.f=function(){return this.r("map")};Ym.prototype.getMap=Ym.prototype.f;Ym.prototype.k=function(){return this.r("position")};Ym.prototype.getPosition=Ym.prototype.k;Ym.prototype.g=function(){return this.r("positioning")};Ym.prototype.getPositioning=Ym.prototype.g;l=Ym.prototype;l.Gf=function(){sc(this.b);var a=this.j();null!=a&&rc(this.b,a)};
l.Qf=function(){null!==this.d&&(vc(this.b),K(this.d),this.d=null);var a=this.f();null!=a&&(this.d=H(a,"postrender",this.yg,!1,this),Zm(this),a=this.q?a.A:a.Na,this.o?uc(a,this.b,0):rc(a,this.b))};l.yg=function(){Zm(this)};l.Wf=function(){Zm(this)};l.Xf=function(){Zm(this)};l.qe=function(a){this.t("element",a)};Ym.prototype.setElement=Ym.prototype.qe;Ym.prototype.setMap=function(a){this.t("map",a)};Ym.prototype.setMap=Ym.prototype.setMap;Ym.prototype.l=function(a){this.t("position",a)};
Ym.prototype.setPosition=Ym.prototype.l;Ym.prototype.n=function(a){this.t("positioning",a)};Ym.prototype.setPositioning=Ym.prototype.n;
function Zm(a){var b=a.f(),c=a.k();if(t(b)&&null!==b.d&&t(c)){var c=b.f(c),d=b.g(),b=a.b.style,e=a.g();if("bottom-right"==e||"center-right"==e||"top-right"==e){""!==a.a.qc&&(a.a.qc=b.left="");var f=Math.round(d[0]-c[0])+"px";a.a.wc!=f&&(a.a.wc=b.right=f)}else{""!==a.a.wc&&(a.a.wc=b.right="");f=0;if("bottom-center"==e||"center-center"==e||"top-center"==e)f=Nh(a.b).width/2;f=Math.round(c[0]-f)+"px";a.a.qc!=f&&(a.a.qc=b.left=f)}if("bottom-left"==e||"bottom-center"==e||"bottom-right"==e)""!==a.a.yc&&
(a.a.yc=b.top=""),c=Math.round(d[1]-c[1])+"px",a.a.Zb!=c&&(a.a.Zb=b.bottom=c);else{""!==a.a.Zb&&(a.a.Zb=b.bottom="");d=0;if("center-left"==e||"center-center"==e||"center-right"==e)d=Nh(a.b).height/2;c=Math.round(c[1]-d)+"px";a.a.yc!=c&&(a.a.yc=b.top=c)}a.a.visible||(Qh(a.b,!0),a.a.visible=!0)}else a.a.visible&&(Qh(a.b,!1),a.a.visible=!1)};var $m=vb?"webkitfullscreenchange":ub?"mozfullscreenchange":F?"MSFullscreenChange":"fullscreenchange";function an(){var a=gc().a,b=a.body;return!!(b.webkitRequestFullscreen||b.mozRequestFullScreen&&a.mozFullScreenEnabled||b.msRequestFullscreen&&a.msFullscreenEnabled||b.requestFullscreen&&a.fullscreenEnabled)}
function bn(a){a.webkitRequestFullscreen?a.webkitRequestFullscreen():a.mozRequestFullScreen?a.mozRequestFullScreen():a.msRequestFullscreen?a.msRequestFullscreen():a.requestFullscreen&&a.requestFullscreen()}function cn(){var a=gc().a;return!!(a.webkitIsFullScreen||a.mozFullScreen||a.msFullscreenElement||a.fullscreenElement)};function dn(a){a=t(a)?a:{};this.b=t(a.className)?a.className:"ol-full-screen";var b=nc("SPAN",{role:"tooltip"},t(a.tipLabel)?a.tipLabel:"Toggle full-screen"),c=nc("BUTTON",{"class":this.b+"-"+cn()+" ol-has-tooltip"});c.appendChild(b);H(c,["click","touchend"],this.k,!1,this);H(c,["mouseout",Oc],function(){this.blur()},!1);H(s.document,$m,this.d,!1,this);b=nc("DIV",{"class":this.b+" ol-unselectable "+(an()?"":"ol-unsupported")},c);Ki.call(this,{element:b,target:a.target});this.j=t(a.keys)?a.keys:!1}
E(dn,Ki);dn.prototype.k=function(a){an()&&(a.L(),a=this.a,null!==a&&(cn()?(a=gc().a,a.webkitCancelFullScreen?a.webkitCancelFullScreen():a.mozCancelFullScreen?a.mozCancelFullScreen():a.msExitFullscreen?a.msExitFullscreen():a.exitFullscreen&&a.exitFullscreen()):(a=a.rc(),a=jc(a),this.j?a.mozRequestFullScreenWithKeys?a.mozRequestFullScreenWithKeys():a.webkitRequestFullscreen?a.webkitRequestFullscreen():bn(a):bn(a))))};
dn.prototype.d=function(){var a=this.b+"-true",b=this.b+"-false",c=wc(this.element),d=this.a;cn()?Pb(c,b,a):Pb(c,a,b);null===d||d.G()};function en(a){a=t(a)?a:{};var b=nc("DIV",{"class":t(a.className)?a.className:"ol-mouse-position"});Ki.call(this,{element:b,target:a.target});H(this,Gd("projection"),this.N,!1,this);t(a.coordinateFormat)&&this.s(a.coordinateFormat);t(a.projection)&&this.q(kg(a.projection));this.pa=t(a.undefinedHTML)?a.undefinedHTML:"";this.k=b.innerHTML;this.j=this.d=this.b=null}E(en,Ki);
en.prototype.f=function(a){a=a.b;null===a?this.b=null:this.b!=a.view2DState.projection&&(this.b=a.view2DState.projection,this.d=null);fn(this,this.j)};en.prototype.N=function(){this.d=null};en.prototype.l=function(){return this.r("coordinateFormat")};en.prototype.getCoordinateFormat=en.prototype.l;en.prototype.n=function(){return this.r("projection")};en.prototype.getProjection=en.prototype.n;en.prototype.A=function(a){a=Kh(a,this.a.b);this.j=[a.x,a.y];fn(this,this.j)};
en.prototype.G=function(){fn(this,null);this.j=null};en.prototype.setMap=function(a){en.D.setMap.call(this,a);null!==a&&(a=a.b,this.g.push(H(a,"mousemove",this.A,!1,this),H(a,"mouseout",this.G,!1,this)))};en.prototype.s=function(a){this.t("coordinateFormat",a)};en.prototype.setCoordinateFormat=en.prototype.s;en.prototype.q=function(a){this.t("projection",a)};en.prototype.setProjection=en.prototype.q;
function fn(a,b){var c=a.pa;if(null!==b&&null!==a.b){if(null===a.d){var d=a.n();a.d=t(d)?Uf(a.b,d):mg}d=a.a.aa(b);null!==d&&(a.d(d,d),c=a.l(),c=t(c)?c(d):d.toString())}t(a.k)&&c==a.k||(a.element.innerHTML=c,a.k=c)};function gn(a){a=a||{};var b=t(a.className)?a.className:"ol-scale-line";this.j=nc("DIV",{"class":b+"-inner"});this.l=nc("DIV",{"class":b+" ol-unselectable"},this.j);this.n=null;this.k=t(a.minWidth)?a.minWidth:64;this.d=!1;this.A=void 0;this.q="";this.b=null;Ki.call(this,{element:this.l,target:a.target});H(this,Gd("units"),this.N,!1,this);this.G(a.units||"metric")}E(gn,Ki);var hn=[1,2,5];gn.prototype.s=function(){return this.r("units")};gn.prototype.getUnits=gn.prototype.s;
gn.prototype.f=function(a){a=a.b;null===a?this.n=null:this.n=a.view2DState;jn(this)};gn.prototype.N=function(){jn(this)};gn.prototype.G=function(a){this.t("units",a)};gn.prototype.setUnits=gn.prototype.G;
function jn(a){var b=a.n;if(null===b)a.d&&(Qh(a.l,!1),a.d=!1);else{var c=b.center,d=b.projection,b=d.d(b.resolution,c),e=d.oa,f=a.s();"degrees"!=e||"metric"!=f&&"imperial"!=f?"ft"!=e&&"m"!=e||"degrees"!=f?a.b=null:(null===a.b&&(a.b=Uf(d,kg("EPSG:4326"))),c=Math.cos(Sb(a.b(c)[1])),d=Nf.radius,"ft"==e&&(d/=0.3048),b*=180/(Math.PI*c*d)):(a.b=null,c=Math.cos(Sb(c[1])),b*=Math.PI*c*Nf.radius/180);c=a.k*b;e="";"degrees"==f?c<1/60?(e="\u2033",b*=3600):1>c?(e="\u2032",b*=60):e="\u00b0":"imperial"==f?0.9144>
c?(e="in",b/=0.0254):1609.344>c?(e="ft",b/=0.3048):(e="mi",b/=1609.344):"nautical"==f?(b/=1852,e="nm"):"metric"==f?1>c?(e="mm",b*=1E3):1E3>c?e="m":(e="km",b/=1E3):"us"==f&&(0.9144>c?(e="in",b*=39.37):1609.344>c?(e="ft",b/=0.30480061):(e="mi",b/=1609.3472));for(var f=3*Math.floor(Math.log(a.k*b)/Math.log(10)),g,h;;){g=hn[f%3]*Math.pow(10,Math.floor(f/3));h=Math.round(g/b);if(h>=a.k)break;++f}g=g+e;a.q!=g&&(a.j.innerHTML=g,a.q=g);a.A!=h&&(a.j.style.width=h+"px",a.A=h);a.d||(Qh(a.l,!0),a.d=!0)}};function kn(a){Dc.call(this);this.c=a;this.a={}}E(kn,Dc);var ln=[];kn.prototype.ca=function(a,b,c,d,e){ja(b)||(ln[0]=b,b=ln);for(var f=0;f<b.length;f++){var g=H(a,b[f],c||this,d||!1,e||this.c||this);this.a[g.key]=g}return this};
kn.prototype.gd=function(a,b,c,d,e){if(ja(b))for(var f=0;f<b.length;f++)this.gd(a,b[f],c,d,e);else{a:if(e=e||this.c||this,d=!!d,c=cd(c||this),Vc(a))a=a.V.a[b],b=-1,a&&(b=xd(a,c,d,e)),e=-1<b?a[b]:null;else{if(a=id(a,b,d))for(b=0;b<a.length;b++)if(!a[b].Ca&&a[b].ta==c&&a[b].capture==d&&a[b].Ya==e){e=a[b];break a}e=null}e&&(K(e),delete this.a[e.key])}return this};function mn(a){Wb(a.a,K);a.a={}}kn.prototype.w=function(){kn.D.w.call(this);mn(this)};
kn.prototype.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented");};function nn(a,b,c){yd.call(this);this.target=a;this.handle=b||a;this.c=c||new Ch(NaN,NaN,NaN,NaN);this.b=ic(a);this.a=new kn(this);Gc(this,this.a);H(this.handle,["touchstart","mousedown"],this.ue,!1,this)}E(nn,yd);var on=F||ub&&Ib("1.9.3");l=nn.prototype;l.clientX=0;l.clientY=0;l.Kd=0;l.Ld=0;l.Md=0;l.Nd=0;l.jb=0;l.kb=0;l.Dd=!0;l.Xa=!1;l.Rd=0;l.lg=0;l.ig=!1;l.hd=!1;
l.w=function(){nn.D.w.call(this);hd(this.handle,["touchstart","mousedown"],this.ue,!1,this);mn(this.a);on&&this.b.releaseCapture();this.handle=this.target=null};function pn(a){t(a.e)||(a.e=Rh(a.target));return a.e}
l.ue=function(a){var b="mousedown"==a.type;if(!this.Dd||this.Xa||b&&!Tc(a))L(this,"earlycancel");else{qn(a);if(0==this.Rd)if(L(this,new rn("start",this,a.clientX,a.clientY,a)))this.Xa=!0,a.L();else return;else a.L();var b=this.b,c=b.documentElement,d=!on;this.a.ca(b,["touchmove","mousemove"],this.Ef,d);this.a.ca(b,["touchend","mouseup"],this.dc,d);on?(c.setCapture(!1),this.a.ca(c,"losecapture",this.dc)):this.a.ca(b?b.parentWindow||b.defaultView:window,"blur",this.dc);F&&this.ig&&this.a.ca(b,"dragstart",
Kc);this.f&&this.a.ca(this.f,"scroll",this.uh,d);this.clientX=this.Md=a.clientX;this.clientY=this.Nd=a.clientY;this.Kd=a.Pc;this.Ld=a.Qc;this.hd?(a=this.target,b=a.offsetLeft,c=a.offsetParent,c||"fixed"!=Eh(a,"position")||(c=ic(a).documentElement),c?(ub?(d=Vh(c),b+=d.left):F&&8<=Kb&&(d=Vh(c),b-=d.left),a=Rh(c)?c.clientWidth-(b+a.offsetWidth):b):a=b):a=this.target.offsetLeft;this.jb=a;this.kb=this.target.offsetTop;this.d=yc(gc(this.b));this.lg=xa()}};
l.dc=function(a,b){mn(this.a);on&&this.b.releaseCapture();if(this.Xa){qn(a);this.Xa=!1;var c=sn(this,this.jb),d=tn(this,this.kb);L(this,new rn("end",this,a.clientX,a.clientY,a,c,d,b||"touchcancel"==a.type))}else L(this,"earlycancel")};function qn(a){var b=a.type;"touchstart"==b||"touchmove"==b?Rc(a,a.O.targetTouches[0],a.c):"touchend"!=b&&"touchcancel"!=b||Rc(a,a.O.changedTouches[0],a.c)}
l.Ef=function(a){if(this.Dd){qn(a);var b=(this.hd&&pn(this)?-1:1)*(a.clientX-this.clientX),c=a.clientY-this.clientY;this.clientX=a.clientX;this.clientY=a.clientY;this.Kd=a.Pc;this.Ld=a.Qc;if(!this.Xa){var d=this.Md-this.clientX,e=this.Nd-this.clientY;if(d*d+e*e>this.Rd)if(L(this,new rn("start",this,a.clientX,a.clientY,a)))this.Xa=!0;else{this.S||this.dc(a);return}}c=un(this,b,c);b=c.x;c=c.y;this.Xa&&L(this,new rn("beforedrag",this,a.clientX,a.clientY,a,b,c))&&(vn(this,a,b,c),a.L())}};
function un(a,b,c){var d=yc(gc(a.b));b+=d.x-a.d.x;c+=d.y-a.d.y;a.d=d;a.jb+=b;a.kb+=c;b=sn(a,a.jb);a=tn(a,a.kb);return new Tb(b,a)}l.uh=function(a){var b=un(this,0,0);a.clientX=this.clientX;a.clientY=this.clientY;vn(this,a,b.x,b.y)};function vn(a,b,c,d){a.hd&&pn(a)?a.target.style.right=c+"px":a.target.style.left=c+"px";a.target.style.top=d+"px";L(a,new rn("drag",a,b.clientX,b.clientY,b,c,d))}
function sn(a,b){var c=a.c,d=isNaN(c.left)?null:c.left,c=isNaN(c.width)?0:c.width;return Math.min(null!=d?d+c:Infinity,Math.max(null!=d?d:-Infinity,b))}function tn(a,b){var c=a.c,d=isNaN(c.top)?null:c.top,c=isNaN(c.height)?0:c.height;return Math.min(null!=d?d+c:Infinity,Math.max(null!=d?d:-Infinity,b))}function rn(a,b,c,d,e,f,g,h){Ic.call(this,a);this.clientX=c;this.clientY=d;this.d=e;this.left=t(f)?f:b.jb;this.top=t(g)?g:b.kb;this.b=b;this.a=!!h}E(rn,Ic);function wn(a){a=t(a)?a:{};this.b=void 0;this.j=xn;this.k=!1;var b=t(a.className)?a.className:"ol-zoomslider";a=nc("DIV",[b+"-thumb","ol-unselectable"]);b=nc("DIV",[b,"ol-unselectable"],a);this.d=new nn(a);Gc(this,this.d);H(this.d,["drag","end"],this.n,void 0,this);H(b,"click",this.l,!1,this);H(a,"click",Jc);Ki.call(this,{element:b})}E(wn,Ki);var xn=0;wn.prototype.setMap=function(a){wn.D.setMap.call(this,a);null===a||a.H()};
wn.prototype.f=function(a){if(null!==a.b){if(!this.k){var b=this.element,c=wc(b),b=Sh(b),d;d=Jh(c);var e=Nh(c);d=new Ch(d.x,d.y,e.width,e.height);var e=Uh(c,"margin"),f=Vh(c),c=b.width-e.left-e.right-f.left-f.right-d.width;d=b.height-e.top-e.bottom-f.top-f.bottom-d.height;b.width>b.height?(this.j=1,b=new Ch(0,0,c,0)):(this.j=xn,b=new Ch(0,0,0,d));this.d.c=b||new Ch(NaN,NaN,NaN,NaN);this.k=!0}a=a.b.view2DState.resolution;a!==this.b&&(this.b=a,a=-1*(Ii(this.a.a().M())(a)-1),b=this.d,c=wc(this.element),
1==this.j?Fh(c,b.c.left+b.c.width*a):Fh(c,b.c.left,b.c.top+b.c.height*a))}};wn.prototype.l=function(a){var b=this.a,c=b.a().M();a=yn(this,zn(this,a.offsetX,a.offsetY));b.ga(yg({resolution:a,duration:200,easing:sg}));a=c.constrainResolution(a);c.d(a)};function zn(a,b,c){var d=a.d.c,e=0;return e=1===a.j?(b-d.left)/d.width:(c-d.top)/d.height}function yn(a,b){b=-1*(Qb(b,0,1)-1);return Hi(a.a.a().M())(b)}
wn.prototype.n=function(a){var b=this.a,c=b.a().M();"drag"===a.type?(a=yn(this,zn(this,a.left,a.top)),a!==this.b&&(this.b=a,c.d(a))):(b.ga(yg({resolution:this.b,duration:200,easing:sg})),a=c.constrainResolution(this.b),c.d(a))};function An(a){a=t(a)?a:{};this.b=t(a.extent)?a.extent:null;var b=t(a.className)?a.className:"ol-zoom-extent",c=nc("SPAN",{role:"tooltip"},t(a.tipLabel)?a.tipLabel:"Fit to extent"),b=nc("DIV",{"class":b+" ol-unselectable"}),d=nc("BUTTON",{"class":"ol-has-tooltip"});d.appendChild(c);b.appendChild(d);H(d,["touchend","click"],this.d,!1,this);H(d,["mouseout",Oc],function(){this.blur()},!1);Ki.call(this,{element:b,target:a.target})}E(An,Ki);
An.prototype.d=function(a){a.L();a=this.a;var b=a.a().M(),c=null===this.b?b.l().p():this.b;b.Ed(c,a.g())};function Bn(a){M.call(this);this.a=a;H(this.a,["change","input"],this.k,!1,this);H(this,Gd("value"),this.l,!1,this);H(this,Gd("checked"),this.j,!1,this)}E(Bn,M);Bn.prototype.b=function(){return this.r("checked")};Bn.prototype.getChecked=Bn.prototype.b;Bn.prototype.d=function(){return this.r("value")};Bn.prototype.getValue=Bn.prototype.d;Bn.prototype.g=function(a){this.t("value",a)};Bn.prototype.setValue=Bn.prototype.g;Bn.prototype.f=function(a){this.t("checked",a)};Bn.prototype.setChecked=Bn.prototype.f;
Bn.prototype.k=function(){var a=this.a;"checkbox"===a.type||"radio"===a.type?this.f(a.checked):this.g(a.value)};Bn.prototype.j=function(){this.a.checked=this.b()};Bn.prototype.l=function(){this.a.value=this.d()};function Cn(){};var Dn;a:if(document.implementation&&document.implementation.createDocument)Dn=document.implementation.createDocument("","",null);else{if("undefined"!=typeof ActiveXObject){var En=new ActiveXObject("MSXML2.DOMDocument");if(En){En.resolveExternals=!1;En.validateOnParse=!1;try{En.setProperty("ProhibitDTD",!0),En.setProperty("MaxXMLSize",2048),En.setProperty("MaxElementDepth",256)}catch(Fn){}}if(En){Dn=En;break a}}throw Error("Your browser does not support creating new documents");}var Gn=Dn;
function Hn(a,b){return Gn.createElementNS(a,b)}function In(a,b){null===a&&(a="");return Gn.createNode(1,b,a)}var Jn=document.implementation&&document.implementation.createDocument?Hn:In;function Kn(a){return Ln(a,!1,[]).join("")}function Ln(a,b,c){if(4==a.nodeType||3==a.nodeType)b?c.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):c.push(a.nodeValue);else for(a=a.firstChild;null!==a;a=a.nextSibling)Ln(a,b,c);return c}function Mn(a){return a.localName}
function Nn(a){var b=a.localName;return t(b)?b:a.baseName}var On=F?Nn:Mn;function Pn(a){return a instanceof Document}function Qn(a){return oa(a)&&9==a.nodeType}var Rn=F?Qn:Pn;function Sn(a){return a instanceof Node}function Tn(a){return oa(a)&&t(a.nodeType)}var Un=F?Tn:Sn;function Vn(a,b,c){return a.getAttributeNS(b,c)||""}function Wn(a,b,c){var d="";a=Xn(a,b,c);t(a)&&(d=a.nodeValue);return d}var Yn=document.implementation&&document.implementation.createDocument?Vn:Wn;
function Zn(a,b,c){return a.getAttributeNodeNS(b,c)}function $n(a,b,c){var d=null;a=a.attributes;for(var e,f,g=0,h=a.length;g<h;++g)if(e=a[g],e.namespaceURI==b&&(f=e.prefix?e.prefix+":"+c:c,f==e.nodeName)){d=e;break}return d}var Xn=document.implementation&&document.implementation.createDocument?Zn:$n;function ao(a,b,c,d){a.setAttributeNS(b,c,d)}function bo(a,b,c,d){null===b?a.setAttribute(c,d):(b=a.ownerDocument.createNode(2,c,b),b.nodeValue=d,a.setAttributeNode(b))}
var co=document.implementation&&document.implementation.createDocument?ao:bo;function eo(a){return(new DOMParser).parseFromString(a,"application/xml")}function fo(a,b){return function(c,d){var e=a.call(b,c,d);t(e)&&Ta(d[d.length-1],e)}}function go(a,b){return function(c,d){var e=a.call(b,c,d);t(e)&&d[d.length-1].push(e)}}function ho(a){return function(b,c){var d=a.call(void 0,b,c);t(d)&&(c[c.length-1]=d)}}
function io(a){return function(b,c){var d=a.call(void 0,b,c);t(d)&&cc(c[c.length-1],t(void 0)?void 0:b.localName).push(d)}}function W(a,b){return function(c,d){var e=a.call(void 0,c,d);t(e)&&(d[d.length-1][t(b)?b:c.localName]=e)}}function X(a){return function(b,c,d){a.call(void 0,b,c,d);d[d.length-1].node.appendChild(b)}}function jo(a){var b,c;return function(d,e,f){if(!t(b)){b={};var g={};g[d.localName]=a;b[d.namespaceURI]=g;c=ko(d.localName)}lo(b,c,e,f)}}
function ko(a,b){return function(c,d,e){c=d[d.length-1].node;d=a;t(d)||(d=e);e=b;t(b)||(e=c.namespaceURI);return Jn(e,d)}}var mo=ko();function no(a,b){for(var c=b.length,d=Array(c),e=0;e<c;++e)d[e]=a[b[e]];return d}function Y(a,b,c){c=t(c)?c:{};var d,e;d=0;for(e=a.length;d<e;++d)c[a[d]]=b;return c}function oo(a,b,c,d){for(b=b.firstElementChild;null!==b;b=b.nextElementSibling){var e=a[b.namespaceURI];t(e)&&(e=e[b.localName],t(e)&&e.call(d,b,c))}}
function Z(a,b,c,d,e){d.push(a);oo(b,c,d,e);return d.pop()}function lo(a,b,c,d,e,f){for(var g=(t(e)?e:c).length,h,m,n=0;n<g;++n)h=c[n],t(h)&&(m=b.call(f,h,d,t(e)?e[n]:void 0),t(m)&&a[m.namespaceURI][m.localName].call(f,m,h,d))}function po(a,b,c,d,e,f){e.push(a);lo(b,c,d,e,f,void 0);e.pop()};function qo(){}E(qo,Cn);l=qo.prototype;l.C=ca("xml");l.tb=function(a){return Rn(a)?ro(this,a):Un(a)?this.ke(a):la(a)?(a=eo(a),ro(this,a)):null};function ro(a,b){var c=so(a,b);return 0<c.length?c[0]:null}l.va=function(a){return Rn(a)?so(this,a):Un(a)?this.ub(a):la(a)?(a=eo(a),so(this,a)):[]};function so(a,b){var c=[],d;for(d=b.firstChild;null!==d;d=d.nextSibling)1==d.nodeType&&Ta(c,a.ub(d));return c}l.tc=function(a){return Rn(a)?this.e(a):Un(a)?this.j(a):la(a)?(a=eo(a),this.e(a)):null};
l.Ba=function(a){return Rn(a)?this.uc(a):Un(a)?this.bd(a):la(a)?(a=eo(a),this.uc(a)):null};l.ld=function(a){return this.k(a)};l.md=function(a){return this.l(a)};l.od=function(a){return this.n(a)};function to(a){a=Kn(a);return uo(a)}function uo(a){if(a=/^\s*(true|1)|(false|0)\s*$/.exec(a))return t(a[1])||!1}function vo(a){a=Kn(a);if(a=/^\s*(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(Z|(?:([+\-])(\d{2})(?::(\d{2}))?))\s*$/.exec(a)){var b=Date.UTC(parseInt(a[1],10),parseInt(a[2],10)-1,parseInt(a[3],10),parseInt(a[4],10),parseInt(a[5],10),parseInt(a[6],10))/1E3;if("Z"!=a[7]){var c="-"==a[8]?-1:1,b=b+60*c*parseInt(a[9],10);t(a[10])&&(b+=3600*c*parseInt(a[10],10))}return b}}
function wo(a){a=Kn(a);return xo(a)}function xo(a){if(a=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)\s*$/i.exec(a))return parseFloat(a[1])}function yo(a){a=Kn(a);return zo(a)}function zo(a){if(a=/^\s*(\d+)\s*$/.exec(a))return parseInt(a[1],10)}function $(a){a=Kn(a);return Aa(a)}function Ao(a,b){a.appendChild(Gn.createTextNode(b.toPrecision()))}function Bo(a,b){a.appendChild(Gn.createTextNode(b.toString()))}function Co(a,b){a.appendChild(Gn.createTextNode(b))};function Do(){}E(Do,qo);var Eo=[null,"http://www.topografix.com/GPX/1/0","http://www.topografix.com/GPX/1/1"];function Fo(a,b,c){a.push(parseFloat(b.getAttribute("lon")),parseFloat(b.getAttribute("lat")));"ele"in c?(a.push(G(c,"ele")),bc(c,"ele")):a.push(0);"time"in c?(a.push(G(c,"time")),bc(c,"time")):a.push(0);return a}function Go(a,b){var c=b[b.length-1],d=a.getAttribute("href");null!==d&&(c.link=d);oo(Ho,a,b)}
function Io(a,b){var c=Z({flatCoordinates:[]},Jo,a,b);if(t(c)){var d=G(c,"flatCoordinates");bc(c,"flatCoordinates");var e=new kl(null);ll(e,"XYZM",d);d=new O(e);d.W(c);return d}}function Ko(a,b){var c=Z({flatCoordinates:[],ends:[]},Lo,a,b);if(t(c)){var d=G(c,"flatCoordinates");bc(c,"flatCoordinates");var e=G(c,"ends");bc(c,"ends");var f=new ml(null);nl(f,"XYZM",d,e);d=new O(f);d.W(c);return d}}
function Mo(a,b){var c=Z({},No,a,b);if(t(c)){var d=Fo([],a,c),d=new zf(d,"XYZM"),d=new O(d);d.W(c);return d}}
var Oo={rte:Io,trk:Ko,wpt:Mo},Po=Y(Eo,{rte:go(Io),trk:go(Ko),wpt:go(Mo)},void 0),Ho=Y(Eo,{text:W($,"linkText"),type:W($,"linkType")},void 0),Jo=Y(Eo,{name:W($),cmt:W($),desc:W($),src:W($),link:Go,number:W(yo),type:W($),rtept:function(a,b){var c=Z({},Qo,a,b);t(c)&&Fo(G(b[b.length-1],"flatCoordinates"),a,c)}},void 0),Qo=Y(Eo,{ele:W(wo),time:W(vo)},void 0),Lo=Y(Eo,{name:W($),cmt:W($),desc:W($),src:W($),link:Go,number:W(yo),type:W($),trkseg:function(a,b){var c=b[b.length-1];oo(Ro,a,b);G(c,"ends").push(G(c,
"flatCoordinates").length)}},void 0),Ro=Y(Eo,{trkpt:function(a,b){var c=Z({},So,a,b);t(c)&&Fo(G(b[b.length-1],"flatCoordinates"),a,c)}},void 0),So=Y(Eo,{ele:W(wo),time:W(vo)},void 0),No=Y(Eo,{ele:W(wo),time:W(vo),magvar:W(wo),geoidheight:W(wo),name:W($),cmt:W($),desc:W($),src:W($),link:Go,sym:W($),type:W($),fix:W($),sat:W(yo),hdop:W(wo),vdop:W(wo),pdop:W(wo),ageofdgpsdata:W(wo),dgpsid:W(yo)},void 0);
Do.prototype.ke=function(a){if(-1==Ka(Eo,a.namespaceURI))return null;var b=Oo[a.localName];if(!t(b))return null;a=b(a,[]);return t(a)?a:null};Do.prototype.ub=function(a){return-1==Ka(Eo,a.namespaceURI)?[]:"gpx"==a.localName&&(a=Z([],Po,a,[]),t(a))?a:[]};Do.prototype.uc=function(){return kg("EPSG:4326")};Do.prototype.bd=function(){return kg("EPSG:4326")};function To(a,b,c){a.setAttribute("href",b);b=G(c[c.length-1],"properties");po({node:a},Uo,mo,[G(b,"linkText"),G(b,"linkType")],c,Vo)}
function Wo(a,b,c){var d=c[c.length-1],e=d.node.namespaceURI,f=G(d,"properties");co(a,null,"lat",b[1]);co(a,null,"lon",b[0]);switch(G(d,"geometryLayout")){case "XYZM":0!==b[3]&&(f.time=b[3]);case "XYZ":0!==b[2]&&(f.ele=b[2]);break;case "XYM":0!==b[2]&&(f.time=b[2])}b=Xo[e];d=no(f,b);po({node:a,properties:f},Yo,mo,d,c,b)}
var Vo=["text","type"],Uo=Y(Eo,{text:X(Co),type:X(Co)}),Zo=Y(Eo,"name cmt desc src link number type rtept".split(" ")),$o=Y(Eo,{name:X(Co),cmt:X(Co),desc:X(Co),src:X(Co),link:X(To),number:X(Bo),type:X(Co),rtept:jo(X(Wo))}),ap=Y(Eo,"name cmt desc src link number type trkseg".split(" ")),dp=Y(Eo,{name:X(Co),cmt:X(Co),desc:X(Co),src:X(Co),link:X(To),number:X(Bo),type:X(Co),trkseg:jo(X(function(a,b,c){po({node:a,geometryLayout:b.b,properties:{}},bp,cp,b.v(),c)}))}),cp=ko("trkpt"),bp=Y(Eo,{trkpt:X(Wo)}),
Xo=Y(Eo,"ele time magvar geoidheight name cmt desc src link sym type fix sat hdop vdop pdop ageofdgpsdata dgpsid".split(" ")),Yo=Y(Eo,{ele:X(Ao),time:X(function(a,b){var c=new Date(1E3*b),c=c.getUTCFullYear()+"-"+Ha(c.getUTCMonth()+1)+"-"+Ha(c.getUTCDate())+"T"+Ha(c.getUTCHours())+":"+Ha(c.getUTCMinutes())+":"+Ha(c.getUTCSeconds())+"Z";a.appendChild(Gn.createTextNode(c))}),magvar:X(Ao),geoidheight:X(Ao),name:X(Co),cmt:X(Co),desc:X(Co),src:X(Co),link:X(To),sym:X(Co),type:X(Co),fix:X(Co),sat:X(Bo),
hdop:X(Ao),vdop:X(Ao),pdop:X(Ao),ageofdgpsdata:X(Ao),dgpsid:X(Bo)});
Y(Eo,{rte:X(function(a,b,c){var d=b.gb();a={node:a,properties:d};b=b.K();t(b)&&(a.geometryLayout=b.b,b=b.v(),d.rtept=b);b=Zo[c[c.length-1].node.namespaceURI];d=no(d,b);po(a,$o,mo,d,c,b)}),trk:X(function(a,b,c){var d=b.gb();a={node:a,properties:d};b=b.K();t(b)&&(b=b.Lc(),d.trkseg=b);b=ap[c[c.length-1].node.namespaceURI];d=no(d,b);po(a,dp,mo,d,c,b)}),wpt:X(function(a,b,c){var d=c[c.length-1],e=b.gb();d.properties=e;b=b.K();t(b)&&(d.geometryLayout=b.b,Wo(a,b.v(),c))})});function ep(a){a=String(a);if(/^\s*$/.test(a)?0:/^[\],:{}\s\u2028\u2029]*$/.test(a.replace(/\\["\\\/bfnrtu]/g,"@").replace(/"[^"\\\n\r\u2028\u2029\x00-\x08\x0a-\x1f]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:[\s\u2028\u2029]*\[)+/g,"")))try{return eval("("+a+")")}catch(b){}throw Error("Invalid JSON string: "+a);};function fp(){}E(fp,Cn);function gp(a){return oa(a)?a:la(a)?(a=ep(a),t(a)?a:null):null}l=fp.prototype;l.C=ca("json");l.tb=function(a){return hp(gp(a))};l.va=function(a){return this.a(gp(a))};l.tc=function(a){a=gp(a);return ip(a)};l.Ba=function(a){return this.d(gp(a))};l.ld=function(a){return jp(a)};l.md=function(a){var b=[],c,d;c=0;for(d=a.length;c<d;++c)b.push(jp(a[c]));return{type:"FeatureCollection",features:b}};l.od=function(a){return this.b(a)};function kp(a){a=t(a)?a:{};this.c=kg(a.defaultProjection?a.defaultProjection:"EPSG:4326")}E(kp,fp);function ip(a){return null===a?null:(0,lp[a.type])(a)}function mp(a){return(0,np[a.C()])(a)}
var lp={Point:function(a){return new zf(a.coordinates)},LineString:function(a){return new kl(a.coordinates)},Polygon:function(a){return new Hf(a.coordinates)},MultiPoint:function(a){return new ql(a.coordinates)},MultiLineString:function(a){return new ml(a.coordinates)},MultiPolygon:function(a){return new rl(a.coordinates)},GeometryCollection:function(a){a=Ma(a.geometries,ip);return new dl(a)}},np={Point:function(a){return{type:"Point",coordinates:a.v()}},LineString:function(a){return{type:"LineString",
coordinates:a.v()}},Polygon:function(a){return{type:"Polygon",coordinates:a.v()}},MultiPoint:function(a){return{type:"MultiPoint",coordinates:a.v()}},MultiLineString:function(a){return{type:"MultiLineString",coordinates:a.v()}},MultiPolygon:function(a){return{type:"MultiPolygon",coordinates:a.v()}},GeometryCollection:function(a){return{type:"GeometryCollection",geometries:Ma(a.a,mp)}},Circle:function(){return{type:"GeometryCollection",geometries:[]}}};
function hp(a){var b=ip(a.geometry),b=new O(b);t(a.id)&&b.b(a.id);t(a.properties)&&b.W(a.properties);return b}kp.prototype.a=function(a){if("Feature"==a.type)return[hp(a)];if("FeatureCollection"==a.type){var b=[];a=a.features;var c,d;c=0;for(d=a.length;c<d;++c)b.push(hp(a[c]));return b}return[]};kp.prototype.Ba=function(a){a=a.crs;return null!=a?"name"==a.type?kg(a.properties.name):"EPSG"==a.type?kg("EPSG:"+a.properties.code):null:this.c};
function jp(a){var b={type:"Feature"},c=a.R;null!=c&&(b.id=c);c=a.K();null!=c&&(c=mp(c),b.geometry=c);a=a.gb();bc(a,"geometry");$b(a)||(b.properties=a);return b}kp.prototype.b=mp;function op(a){a=pp(a);return Ma(a,function(a){return a.b.substring(a.c,a.a)})}function qp(a,b,c,d){this.b=a;this.c=b;this.a=c;this.d=d}function pp(a){for(var b=RegExp("\r\n|\r|\n","g"),c=0,d,e=[];d=b.exec(a);)c=new qp(a,c,d.index,d.index+d[0].length),e.push(c),c=b.lastIndex;c<a.length&&(c=new qp(a,c,a.length,a.length),e.push(c));return e};function rp(){}E(rp,Cn);l=rp.prototype;l.C=ca("text");l.tb=function(a){return sp(this,la(a)?a:"")};l.va=function(a){a=sp(this,la(a)?a:"");return null===a?[]:[a]};l.tc=function(a){return this.c(la(a)?a:"")};l.Ba=function(){return kg("EPSG:4326")};l.ld=function(a){return this.b(a)};l.md=function(a){return this.d(a)};l.od=function(a){return this.e(a)};function tp(a){a=t(a)?a:{};this.a=t(a.altitudeMode)?a.altitudeMode:"none"}E(tp,rp);var up=/^B(\d{2})(\d{2})(\d{2})(\d{2})(\d{5})([NS])(\d{3})(\d{5})([EW])([AV])(\d{5})(\d{5})/,vp=/^H.([A-Z]{3}).*?:(.*)/,wp=/^HFDTE(\d{2})(\d{2})(\d{2})/;
function sp(a,b){var c=a.a,d=op(b),e={},f=[],g=2E3,h=0,m=1,n,p;n=0;for(p=d.length;n<p;++n){var r=d[n],q;if("B"==r.charAt(0)){if(q=up.exec(r)){var r=parseInt(q[1],10),u=parseInt(q[2],10),y=parseInt(q[3],10),x=parseInt(q[4],10)+parseInt(q[5],10)/6E4;"S"==q[6]&&(x=-x);var w=parseInt(q[7],10)+parseInt(q[8],10)/6E4;"W"==q[9]&&(w=-w);f.push(w,x);"none"!=c&&f.push("gps"==c?parseInt(q[11],10):"barometric"==c?parseInt(q[12],10):0);f.push(Date.UTC(g,h,m,r,u,y)/1E3)}}else if("H"==r.charAt(0))if(q=wp.exec(r))m=
parseInt(q[1],10),h=parseInt(q[2],10)-1,g=2E3+parseInt(q[3],10);else if(q=vp.exec(r))e[q[1]]=Aa(q[2]),wp.exec(r)}d=new kl(null);ll(d,"none"==c?"XYM":"XYZM",f);c=new O(d);c.W(e);return c};function xp(a){function b(a){return ja(a)?a:la(a)?(!(a in d)&&"#"+a in d&&(a="#"+a),b(d[a])):c}a=t(a)?a:{};var c=t(a.defaultStyle)?a.defaultStyle:yp,d={};this.a=d;this.c=function(){var a=this.r("Style");if(t(a))return a;a=this.r("styleUrl");return t(a)?b(a):c}}E(xp,qo);
var zp=["http://www.google.com/kml/ext/2.2"],Ap=[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"],Bp=[255,255,255,1],Cp=new le({color:Bp}),Dp=[2,20],Ep=[32,32],Fp=new Yj({anchor:Dp,anchorXUnits:"pixels",anchorYUnits:"pixels",crossOrigin:"anonymous",rotation:0,scale:1,size:Ep,src:"https://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png"}),Gp=new ne({color:Bp,width:1}),yp=[new pe({fill:Cp,image:Fp,text:null,
stroke:Gp,zIndex:0})],Hp={fraction:"fraction",pixels:"pixels"};function Ip(a){a=Kn(a);if(a=/^\s*#?\s*([0-9A-Fa-f]{8})\s*$/.exec(a))return a=a[1],[parseInt(a.substr(6,2),16),parseInt(a.substr(4,2),16),parseInt(a.substr(2,2),16),parseInt(a.substr(0,2),16)/255]}
function Jp(a){a=Kn(a);for(var b=[],c=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)\s*,\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)(?:\s*,\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?))?\s*/i,d;d=c.exec(a);)b.push(parseFloat(d[1]),parseFloat(d[2]),d[3]?parseFloat(d[3]):0),a=a.substr(d[0].length);return""!==a?void 0:b}function Kp(a){var b=Kn(a);return null!=a.baseURI?fh(a.baseURI,Aa(b)).toString():Aa(b)}function Lp(a,b){return Z(null,Mp,a,b)}
function Np(a,b){var c=Z({h:[],xe:[]},Op,a,b);if(t(c)){var d=c.h,c=c.xe,e,f;e=0;for(f=Math.min(d.length,c.length);e<f;++e)d[4*e+3]=c[e];c=new kl(null);ll(c,"XYZM",d);return c}}function Pp(a,b){var c=Z(null,Qp,a,b);if(t(c)){var d=new kl(null);ll(d,"XYZ",c);return d}}function Rp(a,b){var c=Z(null,Qp,a,b);if(t(c)){var d=new Hf(null);If(d,"XYZ",c,[c.length]);return d}}
function Sp(a,b){var c=Z([],Tp,a,b);if(!t(c))return null;if(0===c.length)return new dl(c);var d=!0,e=c[0].C(),f,g,h;g=1;for(h=c.length;g<h;++g)if(f=c[g],f.C()!=e){d=!1;break}if(d){if("Point"==e){f=c[0];d=f.b;e=f.h;g=1;for(h=c.length;g<h;++g)f=c[g],Ta(e,f.h);c=new ql(null);ef(c,d,e);c.u();return c}return"LineString"==e?(f=new ml(null),pl(f,c),f):"Polygon"==e?(f=new rl(null),tl(f,c),f):"GeometryCollection"==e?new dl(c):null}return new dl(c)}
function Up(a,b){var c=Z(null,Qp,a,b);if(null!=c){var d=new zf(null);Af(d,"XYZ",c);return d}}function Vp(a,b){var c=Z([null],Wp,a,b);if(null!=c&&null!==c[0]){var d=new Hf(null),e=c[0],f=[e.length],g,h;g=1;for(h=c.length;g<h;++g)Ta(e,c[g]),f.push(e.length);If(d,"XYZ",e,f);return d}}
function Xp(a,b){var c=Z({},Yp,a,b);if(!t(c))return null;var d=G(c,"fillStyle",Cp),e=G(c,"fill");t(e)&&!e&&(d=null);var e=G(c,"imageStyle",Fp),f=G(c,"strokeStyle",Gp),c=G(c,"outline");t(c)&&!c&&(f=null);return[new pe({fill:d,image:e,stroke:f,text:null,zIndex:void 0})]}
var Zp=Y(Ap,{value:ho($)},void 0),aq=Y(Ap,{Data:function(a,b){var c=a.getAttribute("name");if(null!==c){var d=Z(void 0,Zp,a,b);t(d)&&(b[b.length-1][c]=d)}},SchemaData:function(a,b){oo($p,a,b)}},void 0),Mp=Y(Ap,{coordinates:ho(Jp)},void 0),Wp=Y(Ap,{innerBoundaryIs:function(a,b){var c=Z(void 0,bq,a,b);t(c)&&b[b.length-1].push(c)},outerBoundaryIs:function(a,b){var c=Z(void 0,cq,a,b);t(c)&&(b[b.length-1][0]=c)}},void 0),dq=Y(zp,{coord:function(a,b){var c=b[b.length-1].h,d=Kn(a);(d=/^\s*([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s+([+\-]?\d+(?:\.\d*)?(?:e[+\-]?\d*)?)\s*$/i.exec(d))?
c.push(parseFloat(d[1]),parseFloat(d[2]),parseFloat(d[3]),0):c.push(0,0,0,0)}},void 0),Op=Y(Ap,{when:function(a,b){var c=b[b.length-1].xe,d=Kn(a);if(d=/^\s*(\d{4})($|-(\d{2})($|-(\d{2})($|T(\d{2}):(\d{2}):(\d{2})(Z|(?:([+\-])(\d{2})(?::(\d{2}))?)))))\s*$/.exec(d)){var e=Date.UTC(parseInt(d[1],10),t(d[3])?parseInt(d[3],10)-1:0,t(d[5])?parseInt(d[5],10):1,t(d[7])?parseInt(d[7],10):0,t(d[8])?parseInt(d[8],10):0,t(d[9])?parseInt(d[9],10):0);if(t(d[10])&&"Z"!=d[10]){var f="-"==d[11]?-1:1,e=e+60*f*parseInt(d[12],
10);t(d[13])&&(e+=3600*f*parseInt(d[13],10))}c.push(e)}else c.push(0)}},dq),Qp=Y(Ap,{coordinates:ho(Jp)},void 0),eq=Y(Ap,{href:W(Kp)},void 0),fq=Y(Ap,{Icon:W(function(a,b){var c=Z({},eq,a,b);return t(c)?c:null}),heading:W(wo),hotSpot:W(function(a){var b=a.getAttribute("xunits"),c=a.getAttribute("yunits");return{x:parseFloat(a.getAttribute("x")),ai:Hp[b],y:parseFloat(a.getAttribute("y")),bi:Hp[c]}}),scale:W(function(a){a=wo(a);if(t(a))return Math.sqrt(a)})},void 0),bq=Y(Ap,{LinearRing:ho(Lp)},void 0),
gq=Y(Ap,{color:W(Ip),width:W(wo)},void 0),Tp=Y(Ap,{LineString:go(Pp),LinearRing:go(Rp),MultiGeometry:go(Sp),Point:go(Up),Polygon:go(Vp)},void 0),hq=Y(zp,{Track:go(Np)},void 0),cq=Y(Ap,{LinearRing:ho(Lp)},void 0),iq=Y(Ap,{Style:W(Xp),key:W($),styleUrl:W(function(a){var b=Aa(Kn(a));return null!=a.baseURI?fh(a.baseURI,b).toString():b})},void 0),kq={ExtendedData:function(a,b){oo(aq,a,b)},MultiGeometry:W(Sp,"geometry"),LineString:W(Pp,"geometry"),LinearRing:W(Rp,"geometry"),Point:W(Up,"geometry"),Polygon:W(Vp,
"geometry"),Style:W(Xp),StyleMap:function(a,b){var c=Z(void 0,jq,a,b);if(t(c)){var d=b[b.length-1];ja(c)?d.Style=c:la(c)&&(d.styleUrl=c)}},address:W($),description:W($),name:W($),open:W(to),phoneNumber:W($),styleUrl:W(Kp),visibility:W(to)},lq=Y(zp,{MultiTrack:W(function(a,b){var c=Z([],hq,a,b);if(t(c)){var d=new ml(null);pl(d,c);return d}},"geometry"),Track:W(Np,"geometry")},void 0),mq=Y(Ap,kq,lq),nq=Y(Ap,{color:W(Ip),fill:W(to),outline:W(to)},void 0),$p=Y(Ap,{SimpleData:function(a,b){var c=a.getAttribute("name");
if(null!==c){var d=$(a);b[b.length-1][c]=d}}},void 0),Yp=Y(Ap,{IconStyle:function(a,b){var c=Z({},fq,a,b);if(t(c)){var d=b[b.length-1],e;e=G(G(c,"Icon",{}),"href");e=t(e)?e:"https://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png";var f,g,h,m=G(c,"hotSpot");t(m)?(f=[m.x,m.y],g=m.ai,h=m.bi):"https://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png"===e?(f=Dp,h=g="pixels"):/^http:\/\/maps\.(?:google|gstatic)\.com\//.test(e)&&(f=[0.5,0],h=g="fraction");var n,m=G(c,"heading");t(m)&&(n=Sb(m));
var c=G(c,"scale"),p;"https://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png"==e&&(p=Ep);f=new Yj({anchor:f,anchorOrigin:"bottom-left",anchorXUnits:g,anchorYUnits:h,crossOrigin:"anonymous",rotation:n,scale:c,size:p,src:e});d.imageStyle=f}},LineStyle:function(a,b){var c=Z({},gq,a,b);t(c)&&(b[b.length-1].strokeStyle=new ne({color:G(c,"color",Bp),width:G(c,"width",1)}))},PolyStyle:function(a,b){var c=Z({},nq,a,b);if(t(c)){var d=b[b.length-1];d.fillStyle=new le({color:G(c,"color",Bp)});var e=G(c,
"fill");t(e)&&(d.fill=e);c=G(c,"outline");t(c)&&(d.outline=c)}}},void 0),jq=Y(Ap,{Pair:function(a,b){var c=Z({},iq,a,b);if(t(c)){var d=G(c,"key");t(d)&&"normal"==d&&(d=G(c,"styleUrl"),t(d)&&(b[b.length-1]=d),c=G(c,"Style"),t(c)&&(b[b.length-1]=c))}}},void 0);l=xp.prototype;l.je=function(a,b){On(a);var c;c={Folder:fo(this.je,this),Placemark:go(this.ad,this),Style:B(this.Ah,this),StyleMap:B(this.zh,this)};c=Y(Ap,c,void 0);c=Z([],c,a,b,this);if(t(c))return c};
l.ad=function(a,b){var c=Z({geometry:null},mq,a,b);if(t(c)){var d=new O,e=a.getAttribute("id");null===e||d.b(e);d.W(c);d.j(this.c);return d}};l.Ah=function(a,b){var c=a.getAttribute("id");if(null!==c){var d=Xp(a,b);t(d)&&(c=null!=a.baseURI?fh(a.baseURI,"#"+c).toString():"#"+c,this.a[c]=d)}};l.zh=function(a,b){var c=a.getAttribute("id");if(null!==c){var d=Z(void 0,jq,a,b);t(d)&&(c=null!=a.baseURI?fh(a.baseURI,"#"+c).toString():"#"+c,this.a[c]=d)}};
l.ke=function(a){if(-1==Ka(Ap,a.namespaceURI))return null;a=this.ad(a,[]);return t(a)?a:null};l.ub=function(a){if(-1==Ka(Ap,a.namespaceURI))return[];var b;b=On(a);if("Document"==b||"Folder"==b)return b=this.je(a,[]),t(b)?b:[];if("Placemark"==b)return b=this.ad(a,[]),t(b)?[b]:[];if("kml"==b){b=[];for(a=a.firstElementChild;null!==a;a=a.nextElementSibling){var c=this.ub(a);t(c)&&Ta(b,c)}return b}return[]};
l.yh=function(a){if(Rn(a))return oq(this,a);if(Un(a))return pq(this,a);if(la(a))return a=eo(a),oq(this,a)};function oq(a,b){var c;for(c=b.firstChild;null!==c;c=c.nextSibling)if(1==c.nodeType){var d=pq(a,c);if(t(d))return d}}
function pq(a,b){var c;for(c=b.firstElementChild;null!==c;c=c.nextElementSibling)if(-1!=Ka(Ap,c.namespaceURI)&&"name"==c.localName)return $(c);for(c=b.firstElementChild;null!==c;c=c.nextElementSibling){var d=On(c);if(-1!=Ka(Ap,c.namespaceURI)&&("Document"==d||"Folder"==d||"Placemark"==d||"kml"==d)&&(d=pq(a,c),t(d)))return d}}l.uc=function(){return kg("EPSG:4326")};l.bd=function(){return kg("EPSG:4326")};function qq(a){this.c=kg((t(a)?a:{}).defaultProjection||"EPSG:4326")}E(qq,fp);function rq(a,b){var c=[],d,e,f;e=0;for(f=a.length;e<f;++e)d=a[e],0<e&&c.pop(),d=0<=d?b[d]:b[~d].slice().reverse(),c.push.apply(c,d);e=0;for(f=c.length;e<f;++e)c[e]=c[e].slice();return c}function sq(a,b,c,d){a=a.geometries;var e=[],f,g;f=0;for(g=a.length;f<g;++f)e[f]=tq(a[f],b,c,d);return e}
function tq(a,b,c,d){var e=a.type,f=uq[e];b="Point"===e||"MultiPoint"===e?f(a,c,d):f(a,b);c=new O;c.ab(b);t(a.id)&&c.b(a.id);t(a.properties)&&c.W(a.properties);return c}
qq.prototype.a=function(a){if("Topology"==a.type){var b,c=null,d=null;t(a.transform)&&(b=a.transform,c=b.scale,d=b.translate);var e=a.arcs;if(t(b)){b=c;var f=d,g,h;g=0;for(h=e.length;g<h;++g)for(var m=e[g],n=b,p=f,r=0,q=0,u=void 0,y=void 0,x=void 0,y=0,x=m.length;y<x;++y)u=m[y],r+=u[0],q+=u[1],u[0]=r,u[1]=q,vq(u,n,p)}b=[];a=Yb(a.objects);f=0;for(g=a.length;f<g;++f)"GeometryCollection"===a[f].type?(h=a[f],b.push.apply(b,sq(h,e,c,d))):(h=a[f],b.push(tq(h,e,c,d)));return b}return[]};
function vq(a,b,c){a[0]=a[0]*b[0]+c[0];a[1]=a[1]*b[1]+c[1]}qq.prototype.Ba=k("c");
var uq={Point:function(a,b,c){a=a.coordinates;t(b)&&t(c)&&vq(a,b,c);return new zf(a)},LineString:function(a,b){var c=rq(a.arcs,b);return new kl($a(c))},Polygon:function(a,b){var c=[],d,e;d=0;for(e=a.arcs.length;d<e;++d)c[d]=rq(a.arcs[d],b);return new Hf(c)},MultiPoint:function(a,b,c){a=a.coordinates;var d,e;if(t(b)&&t(c))for(d=0,e=a.length;d<e;++d)vq(a[d],b,c);return new ql(a)},MultiLineString:function(a,b){var c=[],d,e;d=0;for(e=a.arcs.length;d<e;++d)c[d]=rq(a.arcs[d],b);return new ml(c)},MultiPolygon:function(a,
b){var c=[],d,e,f,g,h,m;h=0;for(m=a.arcs.length;h<m;++h){d=a.arcs[h];e=[];f=0;for(g=d.length;f<g;++f)e[f]=rq(d[f],b);c[h]=e}return new rl(c)}};var wq={"http://www.opengis.net/gml":{featureMembers:ho(function(a,b){var c=On(a),d=b[0],e=G(d,"featureType"),f;"FeatureCollection"==c?f=Z(null,wq,a,b):"featureMembers"==c&&(c={},f={},c[e]=go(xq),f[G(d,"featureNS")]=c,f=Z([],f,a,b));t(f)||(f=[]);return f})}};function yq(a,b){var c=a.firstElementChild.getAttribute("srsName");b[0].srsName=c;c=Z(null,zq,a,b);if(null!=c)return c}
function xq(a,b){var c,d=a.getAttribute("fid")||Yn(a,"http://www.opengis.net/gml","id"),e={},f;for(c=a.firstElementChild;null!==c;c=c.nextElementSibling)if(0===c.childNodes.length||1===c.childNodes.length&&3===c.firstChild.nodeType){var g=Kn(c);/^[\s\xa0]*$/.test(g)&&(g=void 0);e[On(c)]=g}else f=On(c),e[f]=yq(c,b);c=new O(e);t(f)&&c.k(f);d&&c.b(d);return c}function Aq(a,b){oo(Bq,a,b)}function Cq(a,b){oo(Dq,a,b)}function Eq(a,b){oo(Fq,a,b)}function Gq(a,b){oo(Hq,a,b)}function Iq(a,b){oo(Jq,a,b)}
function Kq(a,b){var c=Lq(a,b);if(null!=c){var d=new kl(null);ll(d,"XYZ",c);return d}}function Mq(a,b){var c=Z([null],Nq,a,b);if(t(c)&&null!==c[0]){var d=new Hf(null),e=c[0],f=[e.length],g,h;g=1;for(h=c.length;g<h;++g)Ta(e,c[g]),f.push(e.length);If(d,"XYZ",e,f);return d}}function Oq(a,b){var c=Z([null],Pq,a,b);if(t(c)&&null!==c[0]){var d=new Hf(null),e=c[0],f=[e.length],g,h;g=1;for(h=c.length;g<h;++g)Ta(e,c[g]),f.push(e.length);If(d,"XYZ",e,f);return d}}
function Qq(a,b){var c=Z([null],Rq,a,b);if(t(c)){var d=new kl(null);ll(d,"XYZ",c);return d}}function Lq(a,b){return Z(null,Sq,a,b)}
function Tq(a,b){var c=Kn(a).replace(/^\s*|\s*$/g,""),d=G(b[0],"srsName"),e=a.parentNode.getAttribute("srsDimension"),f="enu";null===d||(f=Sf(kg(d)));c=c.split(/\s+/);d=2;ha(a.getAttribute("srsDimension"))?ha(a.getAttribute("dimension"))?null===e||(d=zo(e)):d=zo(a.getAttribute("dimension")):d=zo(a.getAttribute("srsDimension"));for(var g,h,m=[],n=0,p=c.length;n<p;n+=d)e=parseFloat(c[n]),g=parseFloat(c[n+1]),h=3===d?parseFloat(c[n+2]):0,"en"===f.substr(0,2)?m.push(e,g,h):m.push(g,e,h);return m}
var zq={"http://www.opengis.net/gml":{Point:ho(function(a,b){var c=Lq(a,b);if(null!=c){var d=new zf(null);Af(d,"XYZ",c);return d}}),MultiPoint:ho(function(a,b){var c=Z([],Uq,a,b);if(t(c))return new ql(c)}),LineString:ho(Kq),MultiLineString:ho(function(a,b){var c=Z([],Vq,a,b);if(t(c)){var d=new ml(null);pl(d,c);return d}}),LinearRing:ho(function(a,b){var c=Lq(a,b);if(t(c)){var d=new xf(null);yf(d,"XYZ",c);return d}}),Polygon:ho(Mq),MultiPolygon:ho(function(a,b){var c=Z([],Wq,a,b);if(t(c)){var d=new rl(null);
tl(d,c);return d}}),Surface:ho(Oq),MultiSurface:ho(function(a,b){var c=Z([],Xq,a,b);if(t(c)){var d=new rl(null);tl(d,c);return d}}),Curve:ho(Qq),MultiCurve:ho(function(a,b){var c=Z([],Yq,a,b);if(t(c)){var d=new ml(null);pl(d,c);return d}}),Envelope:ho(function(a,b){var c=Z([null],Zq,a,b);return He(c[1][0],c[1][1],c[2][0],c[2][1])})}},Sq={"http://www.opengis.net/gml":{pos:ho(function(a,b){var c=Kn(a).replace(/^\s*|\s*$/g,""),c=Ma(c.split(/\s+/),parseFloat),d=G(b[0],"srsName"),e="enu";null===d||(e=
Sf(kg(d)));"neu"===e&&(c=c.reverse());d=c.length;2==d&&c.push(0);return 0===d?void 0:c}),posList:ho(Tq)}},Nq={"http://www.opengis.net/gml":{interior:function(a,b){var c=Z(void 0,$q,a,b);t(c)&&b[b.length-1].push(c)},exterior:function(a,b){var c=Z(void 0,$q,a,b);t(c)&&(b[b.length-1][0]=c)}}},Uq={"http://www.opengis.net/gml":{pointMember:go(Aq),pointMembers:go(Aq)}},Vq={"http://www.opengis.net/gml":{lineStringMember:go(Cq),lineStringMembers:go(Cq)}},Yq={"http://www.opengis.net/gml":{curveMember:go(Eq),
curveMembers:go(Eq)}},Xq={"http://www.opengis.net/gml":{surfaceMember:go(Gq),surfaceMembers:go(Gq)}},Wq={"http://www.opengis.net/gml":{polygonMember:go(Iq),polygonMembers:go(Iq)}},Bq={"http://www.opengis.net/gml":{Point:go(Lq)}},Dq={"http://www.opengis.net/gml":{LineString:go(Kq)}},Fq={"http://www.opengis.net/gml":{LineString:go(Kq),Curve:go(Qq)}},Hq={"http://www.opengis.net/gml":{Polygon:go(Mq),Surface:go(Oq)}},Jq={"http://www.opengis.net/gml":{Polygon:go(Mq)}},Pq={"http://www.opengis.net/gml":{patches:ho(function(a,
b){return Z([null],ar,a,b)})}},Rq={"http://www.opengis.net/gml":{segments:ho(function(a,b){return Z([null],br,a,b)})}},Zq={"http://www.opengis.net/gml":{lowerCorner:go(Tq),upperCorner:go(Tq)}},ar={"http://www.opengis.net/gml":{PolygonPatch:ho(function(a,b){return Z([null],Nq,a,b)})}},br={"http://www.opengis.net/gml":{LineStringSegment:ho(function(a,b){return Z([null],Sq,a,b)})}},$q={"http://www.opengis.net/gml":{LinearRing:ho(function(a,b){var c=Z(null,Sq,a,b);if(null!=c)return c})}};
function cr(a,b,c){c=G(c[c.length-1],"srsName");b=b.v();for(var d=b.length,e=Array(d),f,g=0;g<d;++g){f=b[g];var h=e,m=g,n="enu";null!=c&&(n=Sf(kg(c)));h[m]="en"===n.substr(0,2)?f[0]+" "+f[1]:f[1]+" "+f[0]}Co(a,e.join(" "))}function dr(a,b,c){var d=G(c[c.length-1],"srsName");null!=d&&a.setAttribute("srsName",d);d=Jn(a.namespaceURI,"pos");a.appendChild(d);c=G(c[c.length-1],"srsName");a="enu";null!=c&&(a=Sf(kg(c)));b=b.v();Co(d,"en"===a.substr(0,2)?b[0]+" "+b[1]:b[1]+" "+b[0])}
var er={"http://www.opengis.net/gml":{lowerCorner:X(Co),upperCorner:X(Co)}};function fr(a,b,c){var d=G(c[c.length-1],"srsName");null!=d&&a.setAttribute("srsName",d);d=Jn(a.namespaceURI,"posList");a.appendChild(d);cr(d,b,c)}function gr(a,b){var c=b[b.length-1],d=c.node,e=G(c,"exteriorWritten");t(e)||(c.exteriorWritten=!0);return Jn(d.namespaceURI,t(e)?"interior":"exterior")}
function hr(a,b,c){var d=G(c[c.length-1],"srsName");"PolygonPatch"!==a.nodeName&&null!=d&&a.setAttribute("srsName",d);"Polygon"===a.nodeName||"PolygonPatch"===a.nodeName?(b=b.Hd(),po({node:a,srsName:d},ir,gr,b,c)):"Surface"===a.nodeName&&(d=Jn(a.namespaceURI,"patches"),a.appendChild(d),a=Jn(d.namespaceURI,"PolygonPatch"),d.appendChild(a),hr(a,b,c))}
function jr(a,b,c){var d=G(c[c.length-1],"srsName");"LineStringSegment"!==a.nodeName&&null!=d&&a.setAttribute("srsName",d);"LineString"===a.nodeName||"LineStringSegment"===a.nodeName?(d=Jn(a.namespaceURI,"posList"),a.appendChild(d),cr(d,b,c)):"Curve"===a.nodeName&&(d=Jn(a.namespaceURI,"segments"),a.appendChild(d),a=Jn(d.namespaceURI,"LineStringSegment"),d.appendChild(a),jr(a,b,c))}
function kr(a,b,c){var d=c[c.length-1],e=G(d,"srsName"),d=G(d,"surface");null!=e&&a.setAttribute("srsName",e);b=b.Jd();po({node:a,srsName:e,surface:d},lr,mr,b,c)}function nr(a,b,c){var d=c[c.length-1],e=G(d,"srsName"),d=G(d,"curve");null!=e&&a.setAttribute("srsName",e);b=b.Lc();po({node:a,srsName:e,curve:d},or,mr,b,c)}function pr(a,b,c){var d=Jn(a.namespaceURI,"LinearRing");a.appendChild(d);fr(d,b,c)}function qr(a,b,c){var d=rr(b,c);t(d)&&(a.appendChild(d),hr(d,b,c))}
function sr(a,b,c){var d=rr(b,c);t(d)&&(a.appendChild(d),jr(d,b,c))}function tr(a,b,c){var d=dc(c[c.length-1]);d.node=a;po(d,ur,rr,[b],c)}
var lr={"http://www.opengis.net/gml":{surfaceMember:X(qr),polygonMember:X(qr)}},vr={"http://www.opengis.net/gml":{pointMember:X(function(a,b,c){var d=Jn(a.namespaceURI,"Point");a.appendChild(d);dr(d,b,c)})}},or={"http://www.opengis.net/gml":{lineStringMember:X(sr),curveMember:X(sr)}},ir={"http://www.opengis.net/gml":{exterior:X(pr),interior:X(pr)}},ur={"http://www.opengis.net/gml":{Curve:X(jr),MultiCurve:X(nr),Point:X(dr),MultiPoint:X(function(a,b,c){var d=G(c[c.length-1],"srsName");null!=d&&a.setAttribute("srsName",
d);b=b.Id();po({node:a,srsName:d},vr,ko("pointMember"),b,c)}),LineString:X(jr),MultiLineString:X(nr),LinearRing:X(fr),Polygon:X(hr),MultiPolygon:X(kr),Surface:X(hr),MultiSurface:X(kr),Envelope:X(function(a,b,c){var d=G(c[c.length-1],"srsName");t(d)&&a.setAttribute("srsName",d);po({node:a},er,mo,[b[0]+" "+b[1],b[2]+" "+b[3]],c,["lowerCorner","upperCorner"])})}},wr={MultiLineString:"lineStringMember",MultiCurve:"curveMember",MultiPolygon:"polygonMember",MultiSurface:"surfaceMember"};
function mr(a,b){return Jn("http://www.opengis.net/gml",wr[b[b.length-1].node.nodeName])}function rr(a,b){var c=b[b.length-1],d=G(c,"multiSurface"),e=G(c,"surface"),f=G(c,"curve"),c=G(c,"multiCurve");if(ja(a))g="Envelope";else{var g=a.C();"MultiPolygon"===g&&!0===d?g="MultiSurface":"Polygon"===g&&!0===e?g="Surface":"LineString"===g&&!0===f?g="Curve":"MultiLineString"===g&&!0===c&&(g="MultiCurve")}return Jn("http://www.opengis.net/gml",g)};function xr(a){a=t(a)?a:{};this.b=a.featureType;this.a=a.featureNS;this.c=t(a.schemaLocation)?a.schemaLocation:"http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd"}E(xr,qo);xr.prototype.ub=function(a){a=Z(null,wq,a,[{featureType:this.b,featureNS:this.a}]);t(a)||(a=[]);return a};xr.prototype.f=function(a){if(Rn(a))return yr(a);if(Un(a))return Z({},zr,a,[]);if(la(a))return a=eo(a),yr(a)};
xr.prototype.d=function(a){if(Rn(a))return Ar(a);if(Un(a))return Br(a);if(la(a))return a=eo(a),Ar(a)};function Ar(a){for(a=a.firstChild;null!==a;a=a.nextSibling)if(1==a.nodeType)return Br(a)}var Cr={"http://www.opengis.net/gml":{boundedBy:W(yq,"bounds")}};function Br(a){var b={},c=zo(a.getAttribute("numberOfFeatures"));b.numberOfFeatures=c;return Z(b,Cr,a,[])}
var Dr={"http://www.opengis.net/wfs":{totalInserted:W(yo),totalUpdated:W(yo),totalDeleted:W(yo)}},Er={"http://www.opengis.net/ogc":{FeatureId:go(function(a){return a.getAttribute("fid")})}},Fr={"http://www.opengis.net/wfs":{Feature:function(a,b){oo(Er,a,b)}}},zr={"http://www.opengis.net/wfs":{TransactionSummary:W(function(a,b){return Z({},Dr,a,b)},"transactionSummary"),InsertResults:W(function(a,b){return Z([],Fr,a,b)},"insertIds")}};
function yr(a){for(a=a.firstChild;null!==a;a=a.nextSibling)if(1==a.nodeType)return Z({},zr,a,[])}var Gr={"http://www.opengis.net/wfs":{PropertyName:X(Co)}};function Hr(a,b){var c=Jn("http://www.opengis.net/ogc","Filter"),d=Jn("http://www.opengis.net/ogc","FeatureId");c.appendChild(d);d.setAttribute("fid",b);a.appendChild(c)}
var Ir={"http://www.opengis.net/wfs":{Insert:X(function(a,b,c){var d=c[c.length-1],d=Jn(G(d,"featureNS"),G(d,"featureType"));a.appendChild(d);a=b.R;t(a)&&d.setAttribute("fid",a);a=c[c.length-1];var e=G(a,"featureNS"),f=b.a;t(a.$a)||(a.$a={},a.$a[e]={});var g=b.gb();b=[];var h=[],m;for(m in g){var n=g[m];null!==n&&(b.push(m),h.push(n),m==f?m in a.$a[e]||(a.$a[e][m]=X(tr)):m in a.$a[e]||(a.$a[e][m]=X(Co)))}m=dc(a);m.node=d;po(m,a.$a,ko(void 0,e),h,c,b)}),Update:X(function(a,b,c){var d=c[c.length-1];
a.setAttribute("typeName",G(d,"featurePrefix")+":"+G(d,"featureType"));d=b.R;if(t(d)){for(var e=b.sa(),f=[],g=0,h=e.length;g<h;g++){var m=b.r(e[g]);t(m)&&f.push({name:e[g],value:m})}po({node:a},Ir,ko("Property"),f,c);Hr(a,d)}}),Delete:X(function(a,b,c){c=c[c.length-1];a.setAttribute("typeName",G(c,"featurePrefix")+":"+G(c,"featureType"));b=b.R;t(b)&&Hr(a,b)}),Property:X(function(a,b,c){var d=Jn("http://www.opengis.net/wfs","Name");a.appendChild(d);Co(d,b.name);null!=b.value&&(d=Jn("http://www.opengis.net/wfs",
"Value"),a.appendChild(d),b.value instanceof Md?tr(d,b.value,c):Co(d,b.value))}),Native:X(function(a,b){t(b.Th)&&a.setAttribute("vendorId",b.Th);t(b.Jh)&&a.setAttribute("safeToIgnore",b.Jh);t(b.value)&&Co(a,b.value)})}},Jr={"http://www.opengis.net/wfs":{Query:X(function(a,b,c){var d=c[c.length-1],e=G(d,"featurePrefix"),f=G(d,"featureNS"),g=G(d,"propertyNames"),h=G(d,"srsName");a.setAttribute("typeName",(t(e)?e+":":"")+b);t(h)&&a.setAttribute("srsName",h);t(f)&&a.setAttribute("xmlns:"+e,f);b=dc(d);
b.node=a;po(b,Gr,ko("PropertyName"),g,c);d=G(d,"bbox");t(d)&&(g=Jn("http://www.opengis.net/ogc","Filter"),b=G(c[c.length-1],"geometryName"),e=Jn("http://www.opengis.net/ogc","BBOX"),g.appendChild(e),f=Jn("http://www.opengis.net/ogc","PropertyName"),Co(f,b),e.appendChild(f),tr(e,d,c),a.appendChild(g))})}};
xr.prototype.g=function(a){var b=Jn("http://www.opengis.net/wfs","GetFeature");b.setAttribute("service","WFS");b.setAttribute("version","1.1.0");t(a)&&(t(a.handle)&&b.setAttribute("handle",a.handle),t(a.outputFormat)&&b.setAttribute("outputFormat",a.outputFormat),t(a.maxFeatures)&&b.setAttribute("maxFeatures",a.maxFeatures),t(a.resultType)&&b.setAttribute("resultType",a.resultType),t(a.Nh)&&b.setAttribute("startIndex",a.Nh),t(a.count)&&b.setAttribute("count",a.count));co(b,"http://www.w3.org/2001/XMLSchema-instance",
"xsi:schemaLocation",this.c);var c=a.featureTypes;a=[{node:b,srsName:a.srsName,featureNS:t(a.featureNS)?a.featureNS:this.a,featurePrefix:a.featurePrefix,geometryName:a.geometryName,bbox:a.bbox,ie:t(a.ie)?a.ie:[]}];var d=dc(a[a.length-1]);d.node=b;po(d,Jr,ko("Query"),c,a);return b};
xr.prototype.i=function(a,b,c,d){var e=[],f=Jn("http://www.opengis.net/wfs","Transaction");f.setAttribute("service","WFS");f.setAttribute("version","1.1.0");t(d)&&t(d.handle)&&f.setAttribute("handle",d.handle);co(f,"http://www.w3.org/2001/XMLSchema-instance","xsi:schemaLocation",this.c);null!=a&&po({node:f,featureNS:d.featureNS,featureType:d.featureType},Ir,ko("Insert"),a,e);null!=b&&po({node:f,featureNS:d.featureNS,featureType:d.featureType,featurePrefix:d.featurePrefix},Ir,ko("Update"),b,e);null!=
c&&po({node:f,featureNS:d.featureNS,featureType:d.featureType,featurePrefix:d.featurePrefix},Ir,ko("Delete"),c,e);t(d.nativeElements)&&po({node:f,featureNS:d.featureNS,featureType:d.featureType,featurePrefix:d.featurePrefix},Ir,ko("Native"),d.nativeElements,e);return f};function Kr(a){return a.getAttributeNS("http://www.w3.org/1999/xlink","href")};function Lr(){}Lr.prototype.a=function(a){return Rn(a)?Mr(this,a):Un(a)?Nr(this,a):la(a)?(a=eo(a),Mr(this,a)):null};function Or(){this.version=void 0}E(Or,Lr);function Mr(a,b){for(var c=b.firstChild;null!==c;c=c.nextSibling)if(1==c.nodeType)return Nr(a,c);return null}function Nr(a,b){a.version=Aa(b.getAttribute("version"));var c=Z({version:a.version},Pr,b,[]);return t(c)?c:null}function Qr(a,b){return Z({},Rr,a,b)}function Sr(a,b){return Z({},Tr,a,b)}function Ur(a,b){var c=Qr(a,b);if(t(c)){var d=[zo(a.getAttribute("width")),zo(a.getAttribute("height"))];c.size=d;return c}}function Vr(a,b){return Z([],Wr,a,b)}
var Xr=[null,"http://www.opengis.net/wms"],Pr=Y(Xr,{Service:W(function(a,b){return Z({},Yr,a,b)}),Capability:W(function(a,b){return Z({},Zr,a,b)})},void 0),Zr=Y(Xr,{Request:W(function(a,b){return Z({},$r,a,b)}),Exception:W(function(a,b){return Z([],as,a,b)}),Layer:W(function(a,b){return Z({},bs,a,b)})},void 0),Yr=Y(Xr,{Name:W($),Title:W($),Abstract:W($),KeywordList:W(Vr),OnlineResource:W(Kr),ContactInformation:W(function(a,b){return Z({},cs,a,b)}),Fees:W($),AccessConstraints:W($),LayerLimit:W(yo),
MaxWidth:W(yo),MaxHeight:W(yo)},void 0),cs=Y(Xr,{ContactPersonPrimary:W(function(a,b){return Z({},ds,a,b)}),ContactPosition:W($),ContactAddress:W(function(a,b){return Z({},es,a,b)}),ContactVoiceTelephone:W($),ContactFacsimileTelephone:W($),ContactElectronicMailAddress:W($)},void 0),ds=Y(Xr,{ContactPerson:W($),ContactOrganization:W($)},void 0),es=Y(Xr,{AddressType:W($),Address:W($),City:W($),StateOrProvince:W($),PostCode:W($),Country:W($)},void 0),as=Y(Xr,{Format:go($)},void 0),bs=Y(Xr,{Name:W($),
Title:W($),Abstract:W($),KeywordList:W(Vr),CRS:io($),EX_GeographicBoundingBox:W(function(a,b){var c=Z({},fs,a,b);if(t(c)){var d=G(c,"westBoundLongitude"),e=G(c,"southBoundLatitude"),f=G(c,"eastBoundLongitude"),c=G(c,"northBoundLatitude");return t(d)&&t(e)&&t(f)&&t(c)?[d,e,f,c]:void 0}}),BoundingBox:io(function(a){var b=[xo(a.getAttribute("minx")),xo(a.getAttribute("miny")),xo(a.getAttribute("maxx")),xo(a.getAttribute("maxy"))],c=[xo(a.getAttribute("resx")),xo(a.getAttribute("resy"))];return{crs:a.getAttribute("CRS"),
extent:b,res:c}}),Dimension:io(function(a){return{name:a.getAttribute("name"),units:a.getAttribute("units"),unitSymbol:a.getAttribute("unitSymbol"),"default":a.getAttribute("default"),multipleValues:uo(a.getAttribute("multipleValues")),nearestValue:uo(a.getAttribute("nearestValue")),current:uo(a.getAttribute("current")),values:$(a)}}),Attribution:W(function(a,b){return Z({},gs,a,b)}),AuthorityURL:io(function(a,b){var c=Qr(a,b);if(t(c)){var d=a.getAttribute("name");c.name=d;return c}}),Identifier:io($),
MetadataURL:io(function(a,b){var c=Qr(a,b);if(t(c)){var d=a.getAttribute("type");c.type=d;return c}}),DataURL:io(Qr),FeatureListURL:io(Qr),Style:io(function(a,b){return Z({},hs,a,b)}),MinScaleDenominator:W(wo),MaxScaleDenominator:W(wo),Layer:io(function(a,b){var c=b[b.length-1],d=Z({},bs,a,b);if(t(d)){var e=uo(a.getAttribute("queryable"));t(e)||(e=G(c,"queryable"));d.queryable=t(e)?e:!1;e=zo(a.getAttribute("cascaded"));t(e)||(e=G(c,"cascaded"));d.cascaded=e;e=uo(a.getAttribute("opaque"));t(e)||(e=
G(c,"opaque"));d.opaque=t(e)?e:!1;e=uo(a.getAttribute("noSubsets"));t(e)||(e=G(c,"noSubsets"));d.noSubsets=t(e)?e:!1;e=xo(a.getAttribute("fixedWidth"));t(e)||(e=G(c,"fixedWidth"));d.fixedWidth=e;e=xo(a.getAttribute("fixedHeight"));t(e)||(e=G(c,"fixedHeight"));d.fixedHeight=e;La(["Style","CRS","AuthorityURL"],function(a){t(G(c,a))&&cc(d,a)});La("EX_GeographicBoundingBox BoundingBox Dimension Attribution MinScaleDenominator MaxScaleDenominator".split(" "),function(a){t(G(d,a))||(d[a]=G(c,a))});return d}})},
void 0),gs=Y(Xr,{Title:W($),OnlineResource:W(Kr),LogoURL:W(Ur)},void 0),fs=Y(Xr,{westBoundLongitude:W(wo),eastBoundLongitude:W(wo),southBoundLatitude:W(wo),northBoundLatitude:W(wo)},void 0),$r=Y(Xr,{GetCapabilities:W(Sr),GetMap:W(Sr),GetFeatureInfo:W(Sr)},void 0),Tr=Y(Xr,{Format:io($),DCPType:io(function(a,b){return Z({},is,a,b)})},void 0),is=Y(Xr,{HTTP:W(function(a,b){return Z({},js,a,b)})},void 0),js=Y(Xr,{Get:W(Qr),Post:W(Qr)},void 0),hs=Y(Xr,{Name:W($),Title:W($),Abstract:W($),LegendURL:io(Ur),
StyleSheetURL:W(Qr),StyleURL:W(Qr)},void 0),Rr=Y(Xr,{Format:W($),OnlineResource:W(Kr)},void 0),Wr=Y(Xr,{Keyword:go($)},void 0);function ks(a,b){yd.call(this);this.a=new kn(this);var c=a;b&&(c=ic(a));this.a.ca(c,"dragenter",this.qh);c!=a&&this.a.ca(c,"dragover",this.rh);this.a.ca(a,"dragover",this.sh);this.a.ca(a,"drop",this.th)}E(ks,yd);l=ks.prototype;l.Gb=!1;l.w=function(){ks.D.w.call(this);this.a.Fb()};l.qh=function(a){var b=a.O.dataTransfer;(this.Gb=!(!b||!(b.types&&(0<=Ka(b.types,"Files")||0<=Ka(b.types,"public.file-url"))||b.files&&0<b.files.length)))&&a.L()};
l.rh=function(a){this.Gb&&(a.L(),a.O.dataTransfer.dropEffect="none")};l.sh=function(a){this.Gb&&(a.L(),a.Aa(),a=a.O.dataTransfer,a.effectAllowed="all",a.dropEffect="copy")};l.th=function(a){this.Gb&&(a.L(),a.Aa(),a=new Qc(a.O),a.type="drop",L(this,a))};/*
Portions of this code are from MochiKit, received by
The Closure Authors under the MIT license. All other code is Copyright
2005-2009 The Closure Authors. All Rights Reserved.
*/
function ls(a,b){this.a=[];this.f=a;this.e=b||null}l=ls.prototype;l.ec=!1;l.Qb=!1;l.Gc=!1;l.Pe=!1;l.se=!1;l.Qe=0;l.zd=function(a,b){this.Gc=!1;ms(this,a,b)};function ms(a,b,c){a.ec=!0;a.c=c;a.Qb=!b;ns(a)}function os(a){if(a.ec){if(!a.se)throw new ps(a);a.se=!1}}function qs(a,b,c,d){a.a.push([b,c,d]);a.ec&&ns(a)}function rs(a){return Na(a.a,function(a){return na(a[1])})}
function ns(a){a.b&&(a.ec&&rs(a))&&(s.clearTimeout(a.b),delete a.b);a.d&&(a.d.Qe--,delete a.d);for(var b=a.c,c=!1,d=!1;a.a.length&&!a.Gc;){var e=a.a.shift(),f=e[0],g=e[1],e=e[2];if(f=a.Qb?g:f)try{var h=f.call(e||a.e,b);t(h)&&(a.Qb=a.Qb&&(h==b||h instanceof Error),a.c=b=h);b instanceof ls&&(d=!0,a.Gc=!0)}catch(m){b=m,a.Qb=!0,rs(a)||(c=!0)}}a.c=b;d&&(qs(b,B(a.zd,a,!0),B(a.zd,a,!1)),b.Pe=!0);c&&(a.b=s.setTimeout(td(b),0))}function ps(a){ya.call(this);this.a=a}E(ps,ya);ps.prototype.message="Deferred has already fired";
ps.prototype.name="AlreadyCalledError";function ss(a,b){ya.call(this,za("Error %s: %s",b,ts(a)));this.code=a}E(ss,ya);
function ts(a){switch(a){case 1:return"File or directory not found";case 2:return"Insecure or disallowed operation";case 3:return"Operation aborted";case 4:return"File or directory not readable";case 5:return"Invalid encoding";case 6:return"Cannot modify file or directory";case 7:return"Invalid state";case 8:return"Invalid line-ending specifier";case 9:return"Invalid modification";case 10:return"Quota exceeded";case 11:return"Invalid filetype";case 12:return"File or directory already exists at specified path";
default:return"Unrecognized error"}};function us(a,b){Ic.call(this,a.type,b);this.a=a}E(us,Ic);function vs(){yd.call(this);this.ma=new FileReader;this.ma.onloadstart=B(this.a,this);this.ma.onprogress=B(this.a,this);this.ma.onload=B(this.a,this);this.ma.onabort=B(this.a,this);this.ma.onerror=B(this.a,this);this.ma.onloadend=B(this.a,this)}E(vs,yd);vs.prototype.getError=function(){return this.ma.error&&new ss(this.ma.error.code,"reading file")};vs.prototype.a=function(a){L(this,new us(a,this))};vs.prototype.w=function(){vs.D.w.call(this);delete this.ma};
function ws(a){var b=new ls;a.addEventListener("loadend",wa(function(a,b){var e=b.ma.result,f=b.getError();null==e||f?(os(a),ms(a,!1,f)):(os(a),ms(a,!0,e));b.Fb()},b,a));return b};function xs(a){a=t(a)?a:{};Pi.call(this);this.d=t(a.formatConstructors)?a.formatConstructors:[];this.e=t(a.reprojectTo)?kg(a.reprojectTo):null;this.b=null;this.a=void 0}E(xs,Pi);l=xs.prototype;l.w=function(){t(this.a)&&K(this.a);xs.D.w.call(this)};l.Ff=function(a){a=a.O.dataTransfer.files;var b,c;b=0;for(c=a.length;b<c;++b){var d=a[b],e=new vs,f=ws(e);e.ma.readAsText(d,"");qs(f,this.$f,null,this)}};
l.$f=function(a){var b=this.k,c=this.e;null===c&&(c=b.a().M().l());var b=this.d,d=[],e,f;e=0;for(f=b.length;e<f;++e){var g=new b[e],h;try{h=g.va(a)}catch(m){h=null}if(null!==h){var g=g.Ba(a),g=lg(g,c),n,p;n=0;for(p=h.length;n<p;++n){var r=h[n],q=r.K();null===q||q.transform(g);d.push(r)}}}L(this,new ys(zs,this,d,c))};l.la=rd;
l.setMap=function(a){t(this.a)&&(K(this.a),this.a=void 0);null!==this.b&&(Hc(this.b),this.b=null);xs.D.setMap.call(this,a);null!==a&&(this.b=new ks(a.b),this.a=H(this.b,"drop",this.Ff,!1,this))};var zs="addfeatures";function ys(a,b,c,d){Ic.call(this,a,b);this.features=c;this.projection=d}E(ys,Ic);function As(a,b){this.x=a;this.y=b}E(As,Tb);As.prototype.I=function(){return new As(this.x,this.y)};As.prototype.scale=Tb.prototype.scale;As.prototype.add=function(a){this.x+=a.x;this.y+=a.y;return this};function Bs(a){a=t(a)?a:{};Zi.call(this);this.g=t(a.condition)?a.condition:Xi;this.a=this.b=void 0;this.d=0}E(Bs,Zi);Bs.prototype.lb=function(a){var b=a.map,c=b.g();a=a.pixel;a=new As(a[0]-c[0]/2,c[1]/2-a[1]);c=Math.atan2(a.y,a.x);a=Math.sqrt(a.x*a.x+a.y*a.y);var d=b.a().M(),e=Ji(d);b.H();t(this.b)&&Qi(b,d,e.rotation-(c-this.b));this.b=c;t(this.a)&&Si(b,d,this.a*(e.resolution/a));t(this.a)&&(this.d=this.a/a);this.a=a};
Bs.prototype.mb=function(a){a=a.map;var b=a.a();rg(b,-1);var b=b.M(),c=Ji(b),d=this.d-1,e=c.rotation,e=b.constrainRotation(e,0);Qi(a,b,e,void 0,void 0);c=c.resolution;c=b.constrainResolution(c,0,d);Si(a,b,c,void 0,400);this.d=0;return!0};Bs.prototype.nb=function(a){return this.g(a)?(rg(a.map.a(),1),this.a=this.b=void 0,!0):!1};function Cs(a,b){Ic.call(this,a);this.feature=b}E(Cs,Ic);
function Ds(a){Pi.call(this);this.n=t(a.source)?a.source:null;this.l=t(a.features)?a.features:null;this.q=t(a.snapTolerance)?a.snapTolerance:12;this.o=t(a.minPointsPerRing)?a.minPointsPerRing:3;var b=this.i=a.type,c;if("Point"===b||"MultiPoint"===b)c=Es;else if("LineString"===b||"MultiLineString"===b)c=Fs;else if("Polygon"===b||"MultiPolygon"===b)c=Gs;this.a=c;this.b=this.f=this.g=this.e=this.d=null;this.s=4;this.j=new ue({style:t(a.style)?a.style:Hs()})}E(Ds,Pi);
function Hs(){var a={};a.Polygon=[new pe({fill:new le({color:[255,255,255,0.5]})})];a.MultiPolygon=a.Polygon;a.LineString=[new pe({stroke:new ne({color:[255,255,255,1],width:5})}),new pe({stroke:new ne({color:[0,153,255,1],width:3})})];a.MultiLineString=a.LineString;a.Point=[new pe({image:new oe({radius:7,fill:new le({color:[0,153,255,1]}),stroke:new ne({color:[255,255,255,0.75],width:1.5})}),zIndex:1E5})];a.MultiPoint=a.Point;return function(b){return a[b.K().C()]}}
Ds.prototype.setMap=function(a){null===a&&Is(this);this.j.setMap(a);Ds.D.setMap.call(this,a)};
Ds.prototype.la=function(a){if(!$i(a.map))return!0;var b=!0;if("click"===a.type){var b=a.map.hc(a.target.qa),c=a.pixel,d=b[0]-c[0],b=b[1]-c[1],c=!0;if(d*d+b*b<=this.s){if(null===this.d)Js(this,a);else if(this.a===Es||Ks(this,a)){a=Is(this);var e,d=a.K();this.a===Es?e=d.v():this.a===Fs?(e=d.v(),e.pop(),d.J(e)):this.a===Gs&&(this.b[0].pop(),this.b[0].push(this.b[0][0]),d.J(this.b),e=d.v());"MultiPoint"===this.i?a.ab(new ql([e])):"MultiLineString"===this.i?a.ab(new ml([e])):"MultiPolygon"===this.i&&
a.ab(new rl([e]));null===this.l||this.l.push(a);null===this.n||this.n.ce(a);L(this,new Cs("drawend",a))}else a=a.coordinate,e=this.e.K(),this.a===Fs?(this.d=a.slice(),d=e.v(),d.push(a.slice()),e.J(d)):this.a===Gs&&(this.b[0].push(a.slice()),e.J(this.b)),Ls(this);c=!1}b=c}else"mousemove"===a.type?(this.a===Es&&null===this.d?Js(this,a):null!==this.d&&(e=a.coordinate,b=this.e.K(),this.a===Es?(a=b.v(),a[0]=e[0],a[1]=e[1],b.J(a)):(this.a===Fs?d=b.v():this.a===Gs&&(d=this.b[0]),Ks(this,a)&&(e=this.d.slice()),
this.g.K().J(e),a=d[d.length-1],a[0]=e[0],a[1]=e[1],this.a===Fs?b.J(d):this.a===Gs&&(this.f.K().J(d),b.J(this.b))),Ls(this)),b=!0):a.type===fi&&(b=!1);return b};function Ks(a,b){var c=!1;if(null!==a.e){var d=a.e.K(),e=!1,f=[a.d];a.a===Fs?e=2<d.v().length:a.a===Gs&&(e=d.v()[0].length>a.o,f=[a.b[0][0],a.b[0][a.b[0].length-2]]);if(e)for(var d=b.map,e=0,g=f.length;e<g;e++){var h=f[e],m=d.f(h),n=b.pixel,c=n[0]-m[0],m=n[1]-m[1];if(c=Math.sqrt(c*c+m*m)<=a.q){a.d=h;break}}}return c}
function Js(a,b){var c=b.coordinate;a.d=c;var d;a.a===Es?d=new zf(c.slice()):(a.g=new O(new zf(c.slice())),a.a===Fs?d=new kl([c.slice(),c.slice()]):a.a===Gs&&(a.f=new O(new kl([c.slice(),c.slice()])),a.b=[[c.slice(),c.slice()]],d=new Hf(a.b)));a.e=new O(d);Ls(a);L(a,new Cs("drawstart",a.e))}function Is(a){a.d=null;var b=a.e;null!==b&&(a.e=null,a.g=null,a.f=null,a.j.a.clear());return b}function Ls(a){var b=[a.e];null===a.f||b.push(a.f);null===a.g||b.push(a.g);a.j.Tb(new N(b))}
var Es="Point",Fs="LineString",Gs="Polygon";function Ms(a){Zi.call(this);this.d=null;this.i=!1;this.a=this.A=null;this.g=t(a.pixelTolerance)?a.pixelTolerance:20;this.b=null;this.l=new ue({style:a.style});this.s=a.features;H(this.s,"add",this.Ee,!1,this);H(this.s,"remove",this.Ch,!1,this);this.n={Point:this.Zh,LineString:this.ye,LinearRing:this.ye,Polygon:this.$h,MultiPoint:this.Xh,MultiLineString:this.Wh,MultiPolygon:this.Yh,GeometryCollection:this.Vh}}E(Ms,Zi);l=Ms.prototype;
l.setMap=function(a){null===a?this.a=null:null===this.a&&(this.a=new Cl);this.l.setMap(a);Ms.D.setMap.call(this,a)};l.Ee=function(a){a=a.element;var b=a.K();t(this.n[b.C()])&&this.n[b.C()].call(this,a,b);Ns(this,this.A,this.k)};l.Zh=function(a,b){var c=b.v(),c={feature:a,geometry:b,T:[c,c]};Jl(this.a,b.p(),c)};l.Xh=function(a,b){var c=b.v(),d,e,f;e=0;for(f=c.length;e<f;++e)d=c[e],d={feature:a,geometry:b,depth:[e],index:e,T:[d,d]},Jl(this.a,b.p(),d)};
l.ye=function(a,b){var c=b.v(),d,e,f,g;d=0;for(e=c.length-1;d<e;++d)f=c.slice(d,d+2),g={feature:a,geometry:b,index:d,T:f},Jl(this.a,Ee(f),g)};l.Wh=function(a,b){var c=b.v(),d,e,f,g,h,m,n;g=0;for(h=c.length;g<h;++g)for(d=c[g],e=0,f=d.length-1;e<f;++e)m=d.slice(e,e+2),n={feature:a,geometry:b,depth:[g],index:e,T:m},Jl(this.a,Ee(m),n)};l.$h=function(a,b){var c=b.v()[0],d,e,f,g;d=0;for(e=c.length-1;d<e;++d)f=c.slice(d,d+2),g={feature:a,geometry:b,index:d,T:f},Jl(this.a,Ee(f),g)};
l.Yh=function(a,b){var c=b.v(),d,e,f,g,h,m,n;g=0;for(h=c.length;g<h;++g)for(d=c[g][0],e=0,f=d.length-1;e<f;++e)m=d.slice(e,e+2),n={feature:a,geometry:b,depth:[g],index:e,T:m},Jl(this.a,Ee(m),n)};l.Vh=function(a,b){var c,d=b.a;for(c=0;c<d.length;++c)this.n[d[c].C()].call(this,a,d[c])};l.Ch=function(a){var b=a.element;a=this.a;var c,d=[];Fl(a,b.K().p(),function(a){b===a.feature&&d.push(a)});for(c=d.length-1;0<=c;--c)a.remove(d[c]);null!==this.d&&0===this.s.Ia()&&(this.l.Uc(this.d),this.d=null)};
function Os(a,b){var c=a.d;null===c?(c=new O(new zf(b)),a.d=c,a.l.Yd(c)):c.K().J(b)}l.nb=function(){this.b=[];var a=this.d;if(null!==a){var b=[],a=a.K().v(),c=Ee([a]),d=[];Gl(this.a,c,function(a){d.push(a)},void 0);for(var c={},e=0,f=d.length;e<f;++e){var g=d[e],h=g.T;v(g.feature)in c||(c[v(g.feature)]=!0);Ae(h[0],a)?this.b.push([g,0]):Ae(h[1],a)?this.b.push([g,1]):0===Ce(a,xe(a,h))&&b.push([g,a])}for(e=b.length-1;0<=e;--e)this.jg.apply(this,b[e])}return this.i};
l.lb=function(a){a=a.coordinate;for(var b=0,c=this.b.length;b<c;++b){var d=this.b[b],e=d[0],f=e.depth,g=e.geometry,h=g.v(),m=e.T,d=d[1];switch(g.C()){case "Point":h=a;m[0]=m[1]=a;break;case "MultiPoint":h[e.index]=a;m[0]=m[1]=a;break;case "LineString":h[e.index+d]=a;m[d]=a;break;case "MultiLineString":h[f[0]][e.index+d]=a;m[d]=a;break;case "Polygon":h[0][e.index+d]=a;m[d]=a;break;case "MultiPolygon":h[f[0]][0][e.index+d]=a,m[d]=a}g.J(h);f=Ee(m);Os(this,a);this.a.remove(e);Jl(this.a,f,e)}};
l.mb=function(){for(var a,b=this.b.length-1;0<=b;--b)a=this.b[b][0],this.a.update(Ee(a.T),a)};l.la=function(a){var b=a.map.a();Sa(b.k)[1]||(this.j||"mousemove"!=a.type)||(this.A=a.pixel,Ns(this,a.pixel,a.map));Ms.D.la.call(this,a);return!this.i};
function Ns(a,b,c){function d(a,b){return Ce(e,xe(e,a.T))-Ce(e,xe(e,b.T))}var e=c.aa(b),f=c.aa([b[0]-a.g,b[1]+a.g]),g=c.aa([b[0]+a.g,b[1]-a.g]),f=Ee([f,g]);a.i=!1;f=Il(a.a,f);if(0<f.length){f.sort(d);var f=f[0].T,g=xe(e,f),h=c.f(g);if(Math.sqrt(Ce(b,h))<=a.g){b=c.f(f[0]);c=c.f(f[1]);b=Ce(h,b);c=Ce(h,c);10>=Math.sqrt(Math.min(b,c))&&(g=b>c?f[1]:f[0]);Os(a,g);a.i=!0;return}}null!==a.d&&(a.l.Uc(a.d),a.d=null)}
l.jg=function(a,b){var c=a.T,d=a.feature,e=a.geometry,f=a.depth,g=a.index,h;switch(e.C()){case "MultiLineString":h=e.v();h[f[0]].splice(g+1,0,b);break;case "Polygon":h=e.v();h[0].splice(g+1,0,b);break;case "MultiPolygon":h=e.v();h[f[0]][0].splice(g+1,0,b);break;case "LineString":h=e.v();h.splice(g+1,0,b);break;default:return}e.J(h);h=this.a;h.remove(a);var m=v(d),n=[];Fl(this.a,e.p(),function(a){v(a.feature)===m&&n.push(a)});for(var p=0,r=n.length;p<r;++p){var q=n[p];q.geometry===e&&q.index>g&&++q.index}p=
{T:[c[0],b],feature:d,geometry:e,depth:f,index:g};Jl(h,Ee(p.T),p);this.b.push([p,1]);c={T:[b,c[1]],feature:d,geometry:e,depth:f,index:g+1};Jl(h,Ee(c.T),c);this.b.push([c,0])};function Ps(a){Pi.call(this);this.e=t(a.condition)?a.condition:Vi;this.d=t(a.addCondition)?a.addCondition:Xi;var b;if(t(a.layerFilter))b=a.layerFilter;else if(t(a.layer)){var c=a.layer;b=function(a){return a===c}}else if(t(a.layers)){var d=a.layers;b=function(a){return-1!=Ka(d,a)}}else b=rd;this.b=b;this.a=new ue({style:a.style})}E(Ps,Pi);Ps.prototype.f=function(){return this.a.a};
Ps.prototype.la=function(a){if(!this.e(a))return!0;var b=this.d(a),c=a.map,d=this.a.a;b?c.Wc(a.pixel,function(a){-1==Ka(d.a,a)&&d.push(a)},void 0,this.b):(a=c.Wc(a.pixel,function(a){return a},void 0,this.b),t(a)?1==d.Ia()?d.Fd(0)!==a&&d.oe(0,a):(1!=d.Ia()&&d.clear(),d.push(a)):0!==d.Ia()&&d.clear());return!1};Ps.prototype.setMap=function(a){Ps.D.setMap.call(this,a);this.a.setMap(a)};function Qs(a){var b=t(a)?a:{};lk.call(this,b);this.d=null;H(this,Gd("gradient"),this.pa,!1,this);this.U(t(b.gradient)?b.gradient:Rs);a=t(b.radius)?b.radius:8;var c=t(b.blur)?b.blur:15,d=t(b.Mh)?b.Mh:250,b=qc("CANVAS"),e=b.getContext("2d"),f=a+c+1;b.width=b.height=2*f;e.shadowOffsetX=e.shadowOffsetY=d;e.shadowBlur=c;e.shadowColor="#000";e.beginPath();c=f-d;e.arc(c,c,a,0,2*Math.PI,!0);e.fill();a=new Yj({src:b.toDataURL()});this.g(new pe({image:a}));H(this,"render",this.Da,!1,this)}E(Qs,lk);
var Rs=["#00f","#0ff","#0f0","#ff0","#f00"];Qs.prototype.l=function(){return this.r("gradient")};Qs.prototype.getGradient=Qs.prototype.l;Qs.prototype.pa=function(){var a=this.l(),b=qc("CANVAS"),c=b.getContext("2d");b.width=1;b.height=256;for(var b=c.createLinearGradient(0,0,1,256),d=1/a.length,e=0,f=a.length;e<f;++e)b.addColorStop(e*d,a[e]);c.fillStyle=b;c.fillRect(0,0,1,256);this.d=c.getImageData(0,0,1,256).data};
Qs.prototype.Da=function(a){a=a.context;var b=a.canvas,b=a.getImageData(0,0,b.width,b.height),c=b.data,d,e,f;d=0;for(e=c.length;d<e;d+=4)if(f=4*c[d+3])c[d]=this.d[f],c[d+1]=this.d[f+1],c[d+2]=this.d[f+2];a.putImageData(b,0,0)};Qs.prototype.U=function(a){this.t("gradient",a)};Qs.prototype.setGradient=Qs.prototype.U;function Ss(a,b){var c=b||{},d=c.document||document,e=qc("SCRIPT"),f={ne:e,bb:void 0},g=new ls(Ts,f),h=null,m=null!=c.timeout?c.timeout:5E3;0<m&&(h=window.setTimeout(function(){Us(e,!0);var b=new Vs(Ws,"Timeout reached for loading script "+a);os(g);ms(g,!1,b)},m),f.bb=h);e.onload=e.onreadystatechange=function(){e.readyState&&"loaded"!=e.readyState&&"complete"!=e.readyState||(Us(e,c.yd||!1,h),os(g),ms(g,!0,null))};e.onerror=function(){Us(e,!0,h);var b=new Vs(Xs,"Error while loading script "+a);os(g);
ms(g,!1,b)};kc(e,{type:"text/javascript",charset:"UTF-8",src:a});Ys(d).appendChild(e);return g}function Ys(a){var b=a.getElementsByTagName("HEAD");return b&&0!=b.length?b[0]:a.documentElement}function Ts(){if(this&&this.ne){var a=this.ne;a&&"SCRIPT"==a.tagName&&Us(a,!0,this.bb)}}function Us(a,b,c){null!=c&&s.clearTimeout(c);a.onload=ea;a.onerror=ea;a.onreadystatechange=ea;b&&window.setTimeout(function(){vc(a)},0)}var Xs=0,Ws=1;
function Vs(a,b){var c="Jsloader error (code #"+a+")";b&&(c+=": "+b);ya.call(this,c);this.code=a}E(Vs,ya);function Zs(a){this.c=new Pg(a);this.a="jsonp";this.bb=5E3}var $s=0;function at(a){return function(){bt(a,!1)}}function ct(a,b){return function(c){bt(a,!0);b.apply(void 0,arguments)}}function bt(a,b){s._callbacks_[a]&&(b?delete s._callbacks_[a]:s._callbacks_[a]=ea)};function dt(a){return function(b){return null===b?void 0:a.replace("{z}",b.a.toString()).replace("{x}",b.x.toString()).replace("{y}",b.y.toString())}}function et(a){return ft(Ma(a,dt))}function ft(a){return 1===a.length?a[0]:function(b,c,d){return null===b?void 0:a[Rb((b.x<<b.a)+b.y,a.length)].call(this,b,c,d)}}function gt(){}function ht(a,b){var c=new ab(0,0,0);return function(d,e,f){return null===d?void 0:b.call(this,a.call(this,d,f,c),e,f)}}
function it(a){var b=[],c=/\{(\d)-(\d)\}/.exec(a)||/\{([a-z])-([a-z])\}/.exec(a);if(c){var d=c[2].charCodeAt(0),e;for(e=c[1].charCodeAt(0);e<=d;++e)b.push(a.replace(c[0],String.fromCharCode(e)))}else b.push(a);return b};function jt(a){Nm.call(this);this.d=t(a)?a:2048}E(jt,Nm);function kt(a,b){for(var c,d;a.ra()>a.d&&!(c=a.a.wb,d=c.a.a.toString(),d in b&&b[d].contains(c.a));)Pm(a)};function lt(a){Nj.call(this,{attributions:a.attributions,extent:a.extent,logo:a.logo,opaque:a.opaque,projection:a.projection,tileGrid:a.tileGrid});this.tileUrlFunction=t(a.tileUrlFunction)?a.tileUrlFunction:gt;this.crossOrigin=t(a.crossOrigin)?a.crossOrigin:null;this.b=new jt;this.tileLoadFunction=t(a.tileLoadFunction)?a.tileLoadFunction:mt;this.xc=t(a.xc)?a.xc:pg}E(lt,Nj);function mt(a,b){a.b().src=b}l=lt.prototype;l.Yc=function(){return this.b.ra()>this.b.d};l.be=function(a){kt(this.b,a)};
l.ib=function(a,b,c,d,e){var f=this.Ga(a,b,c);if(Lm(this.b,f))return Om(this.b,f);a=new ab(a,b,c);d=this.tileUrlFunction(a,d,e);d=new this.xc(a,t(d)?0:4,t(d)?d:"",this.crossOrigin,this.tileLoadFunction);Qm(this.b,f,d);return d};l.Ub=function(a){this.b.clear();this.tileUrlFunction=a;this.u()};l.we=function(a,b,c){a=this.Ga(a,b,c);Lm(this.b,a)&&Om(this.b,a)};function nt(a){var b=Array(a.maxZoom+1),c,d=2*yj/256;for(c=0;c<=a.maxZoom;++c)b[c]=d/Math.pow(2,c);Gj.call(this,{minZoom:a.minZoom,origin:[-yj,yj],resolutions:b,tileSize:256})}E(nt,Gj);
nt.prototype.c=function(a){a=t(a)?a:{};var b=this.minZoom,c=this.maxZoom,d=t(a.Uh)?a.Uh:!0,e=new ab(0,0,0),f=null;if(t(a.extent)){var f=Array(c+1),g;for(g=0;g<=c;++g)f[g]=g<b?null:Jj(this,a.extent,g)}return function(a,g,n){g=a.a;if(g<b||c<g)return null;var p=Math.pow(2,g),r=a.x;if(d)r=Rb(r,p);else if(0>r||p<=r)return null;a=a.y;return a<-p||-1<a||null!==f&&(e.a=g,e.x=r,e.y=a,!f[g].contains(e))?null:bb(g,r,-a-1,n)}};
nt.prototype.jc=function(a,b){return a.a<this.maxZoom?fb(2*a.x,2*(a.x+1),2*a.y,2*(a.y+1),b):null};nt.prototype.gc=function(a,b,c,d){d=fb(0,a.x,0,a.y,d);for(a=a.a-1;a>=this.minZoom;--a)if(d.a=d.d>>=1,d.b=d.c>>=1,b.call(c,a,d))return!0;return!1};function ot(a){lt.call(this,{crossOrigin:"anonymous",opaque:!0,projection:kg("EPSG:3857"),state:0,tileLoadFunction:a.tileLoadFunction});this.a=t(a.culture)?a.culture:"en-us";var b=new Pg("//dev.virtualearth.net/REST/v1/Imagery/Metadata/"+a.imagerySet),b=new Zs(b),c={include:"ImageryProviders",key:a.key};a=B(this.e,this);var d=c||null,c="_"+($s++).toString(36)+xa().toString(36);s._callbacks_||(s._callbacks_={});var e=b.c.I();if(d)for(var f in d)d.hasOwnProperty&&!d.hasOwnProperty(f)||bh(e,f,d[f]);
a&&(s._callbacks_[c]=ct(c,a),bh(e,b.a,"_callbacks_."+c));f=Ss(e.toString(),{timeout:b.bb,yd:!0});qs(f,null,at(c),void 0)}E(ot,lt);var pt=new gb({html:'\x3ca class\x3d"ol-attribution-bing-tos" target\x3d"_blank" href\x3d"http://www.microsoft.com/maps/product/terms.html"\x3eTerms of Use\x3c/a\x3e'});
ot.prototype.e=function(a){if(200!=a.statusCode||"OK"!=a.statusDescription||"ValidCredentials"!=a.authenticationResultCode||1!=a.resourceSets.length||1!=a.resourceSets[0].resources.length)tj(this,2);else{var b=a.brandLogoUri,c=a.resourceSets[0].resources[0],d=new nt({minZoom:c.zoomMin,maxZoom:c.zoomMax,tileSize:c.imageWidth});this.tileGrid=d;var e=this.a;this.tileUrlFunction=ht(d.c(),ft(Ma(c.imageUrlSubdomains,function(a){var b=c.imageUrl.replace("{subdomain}",a).replace("{culture}",e);return function(a){return null===
a?void 0:b.replace("{quadkey}",db(a))}})));if(c.imageryProviders){var f=Uf(kg("EPSG:4326"),this.l);a=Ma(c.imageryProviders,function(a){var b=a.attribution,c={};La(a.coverageAreas,function(a){var b=a.zoomMin,e=a.zoomMax;a=a.bbox;a=af([a[1],a[0],a[3],a[2]],f);var g,h;for(g=b;g<=e;++g)h=g.toString(),b=Jj(d,a,g),h in c?c[h].push(b):c[h]=[b]});return new gb({html:b,tileRanges:c})});a.push(pt);this.d=a}this.q=b;tj(this,1)}};function qt(a,b,c){if(na(a))c&&(a=B(a,c));else if(a&&"function"==typeof a.handleEvent)a=B(a.handleEvent,a);else throw Error("Invalid listener argument");return 2147483647<b?-1:s.setTimeout(a,b||0)};function rt(){}rt.prototype.a=null;function st(a){var b;(b=a.a)||(b={},tt(a)&&(b[0]=!0,b[1]=!0),b=a.a=b);return b};var ut;function vt(){}E(vt,rt);function wt(a){return(a=tt(a))?new ActiveXObject(a):new XMLHttpRequest}function tt(a){if(!a.c&&"undefined"==typeof XMLHttpRequest&&"undefined"!=typeof ActiveXObject){for(var b=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],c=0;c<b.length;c++){var d=b[c];try{return new ActiveXObject(d),a.c=d}catch(e){}}throw Error("Could not create ActiveXObject. ActiveX might be disabled, or MSXML might not be installed");}return a.c}ut=new vt;function xt(a){yd.call(this);this.A=new Eg;this.j=a||null;this.a=!1;this.i=this.B=null;this.G=this.n="";this.b=0;this.f="";this.c=this.q=this.l=this.k=!1;this.g=0;this.e=null;this.d=yt;this.o=this.N=!1}E(xt,yd);var yt="",zt=/^https?$/i,At=["POST","PUT"];
function Bt(a,b){if(a.B)throw Error("[goog.net.XhrIo] Object is active with another request\x3d"+a.n+"; newUri\x3d"+b);a.n=b;a.f="";a.b=0;a.G="GET";a.k=!1;a.a=!0;a.B=a.j?wt(a.j):wt(ut);a.i=a.j?st(a.j):st(ut);a.B.onreadystatechange=B(a.s,a);try{a.q=!0,a.B.open("GET",b,!0),a.q=!1}catch(c){Ct(a,c);return}var d=a.A.I(),e=Oa(d.sa(),Dt),f=s.FormData&&!1;!(0<=Ka(At,"GET"))||(e||f)||Fg(d,"Content-Type","application/x-www-form-urlencoded;charset\x3dutf-8");Dg(d,function(a,b){this.B.setRequestHeader(b,a)},
a);a.d&&(a.B.responseType=a.d);"withCredentials"in a.B&&(a.B.withCredentials=a.N);try{Et(a),0<a.g&&(a.o=F&&Ib(9)&&ma(a.B.timeout)&&t(a.B.ontimeout),a.o?(a.B.timeout=a.g,a.B.ontimeout=B(a.bb,a)):a.e=qt(a.bb,a.g,a)),a.l=!0,a.B.send(""),a.l=!1}catch(g){Ct(a,g)}}function Dt(a){return"content-type"==a.toLowerCase()}
xt.prototype.bb=function(){"undefined"!=typeof da&&this.B&&(this.f="Timed out after "+this.g+"ms, aborting",this.b=8,L(this,"timeout"),this.B&&this.a&&(this.a=!1,this.c=!0,this.B.abort(),this.c=!1,this.b=8,L(this,"complete"),L(this,"abort"),Ft(this)))};function Ct(a,b){a.a=!1;a.B&&(a.c=!0,a.B.abort(),a.c=!1);a.f=b;a.b=5;Gt(a);Ft(a)}function Gt(a){a.k||(a.k=!0,L(a,"complete"),L(a,"error"))}xt.prototype.w=function(){this.B&&(this.a&&(this.a=!1,this.c=!0,this.B.abort(),this.c=!1),Ft(this,!0));xt.D.w.call(this)};
xt.prototype.s=function(){if(!this.S&&this.a&&"undefined"!=typeof da&&(!this.i[1]||4!=Ht(this)||2!=It(this)))if(this.l&&4==Ht(this))qt(this.s,0,this);else if(L(this,"readystatechange"),4==Ht(this)){this.a=!1;try{if(Jt(this))L(this,"complete"),L(this,"success");else{this.b=6;var a;try{a=2<Ht(this)?this.B.statusText:""}catch(b){a=""}this.f=a+" ["+It(this)+"]";Gt(this)}}finally{Ft(this)}}};
function Ft(a,b){if(a.B){Et(a);var c=a.B,d=a.i[0]?ea:null;a.B=null;a.i=null;b||L(a,"ready");try{c.onreadystatechange=d}catch(e){}}}function Et(a){a.B&&a.o&&(a.B.ontimeout=null);ma(a.e)&&(s.clearTimeout(a.e),a.e=null)}
function Jt(a){var b=It(a),c;a:switch(b){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:c=!0;break a;default:c=!1}if(!c){if(b=0===b)a=Kg(String(a.n))[1]||null,!a&&self.location&&(a=self.location.protocol,a=a.substr(0,a.length-1)),b=!zt.test(a?a.toLowerCase():"");c=b}return c}function Ht(a){return a.B?a.B.readyState:0}function It(a){try{return 2<Ht(a)?a.B.status:-1}catch(b){return-1}}function Kt(a){try{return a.B?a.B.responseText:""}catch(b){return""}}
function Lt(a){try{if(!a.B)return null;if("response"in a.B)return a.B.response;switch(a.d){case yt:case "text":return a.B.responseText;case "arraybuffer":if("mozResponseArrayBuffer"in a.B)return a.B.mozResponseArrayBuffer}return null}catch(b){return null}};function Mt(a){var b=t(a)?a:{};Ml.call(this,{attributions:b.attributions,extent:b.extent,logo:b.logo,projection:b.projection});this.format=b.format;t(b.doc)&&Nt(this,b.doc);t(b.node)&&Nt(this,b.node);t(b.object)&&Nt(this,b.object);t(b.text)&&Nt(this,b.text);t(b.arrayBuffer)&&Nt(this,b.arrayBuffer);if(t(b.url)||t(b.urls)){tj(this,0);a="binary"==this.format.C()&&Bc.qd?"arraybuffer":"text";var c;t(b.url)&&(c=new xt,c.d=a,H(c,"complete",B(this.g,this)),Bt(c,b.url));if(t(b.urls)){var b=b.urls,d,e;d=0;
for(e=b.length;d<e;++d)c=new xt,c.d=a,H(c,"complete",B(this.g,this)),Bt(c,b[d])}}}E(Mt,Ml);Mt.prototype.g=function(a){a=a.target;if(Jt(a)){var b=this.format.C(),c;if("binary"==b&&Bc.qd)c=Lt(a);else if("json"==b)c=a.B?ep(a.B.responseText):void 0;else if("text"==b)c=Kt(a);else if("xml"==b){if(!F)try{c=a.B?a.B.responseXML:null}catch(d){c=null}null!=c||(c=eo(Kt(a)))}Hc(a);null!=c?Nt(this,c):tj(this,2)}else tj(this,2)};
function Nt(a,b){var c=a.format,d=c.va(b),c=c.Ba(b),e=a.l;if(null!==e&&c!==e&&(c.oa!=e.oa||Uf(c,e)!==cg)){var c=lg(c,e),f,e=0;for(f=d.length;e<f;++e){var g=d[e].K();null===g||g.transform(c)}}Nl(a,d);tj(a,1)};function Ot(a){a=t(a)?a:{};Mt.call(this,{attributions:a.attributions,doc:a.doc,extent:a.extent,format:new Do,logo:a.logo,node:a.node,projection:a.projection,text:a.text,url:a.url,urls:a.urls})}E(Ot,Mt);function Pt(a){a=t(a)?a:{};Mt.call(this,{attributions:a.attributions,extent:a.extent,format:new kp({defaultProjection:a.defaultProjection}),logo:a.logo,object:a.object,projection:a.projection,text:a.text,url:a.url,urls:a.urls})}E(Pt,Mt);function Qt(a){a=t(a)?a:{};Mt.call(this,{format:new tp({altitudeMode:a.altitudeMode}),projection:a.projection,text:a.text,url:a.url,urls:a.urls})}E(Qt,Mt);function Rt(a,b,c,d,e){Dj.call(this,a,b,c,2,d);this.a=e}E(Rt,Dj);Rt.prototype.e=k("a");function St(a){Bk.call(this,{attributions:a.attributions,extent:a.extent,logo:a.logo,projection:a.projection,resolutions:a.resolutions,state:a.state});this.A=a.canvasFunction;this.n=null;this.o=0;this.G=t(a.ratio)?a.ratio:1.5}E(St,Bk);St.prototype.pb=function(a,b,c,d){b=Ck(this,b);var e=this.n;if(null!==e&&this.o==this.c&&e.d==b&&e.b==c&&Le(e.p(),a))return e;a=a.slice();Ze(a,this.G);d=this.A(a,b,c,[(a[2]-a[0])/b*c,(a[3]-a[1])/b*c],d);null===d||(e=new Rt(a,b,c,this.d,d));this.n=e;this.o=this.c;return e};function Tt(a){var b=t(a.attributions)?a.attributions:null,c=t(a.crossOrigin)?a.crossOrigin:null,d=a.imageExtent,e=(d[3]-d[1])/a.imageSize[1],f=a.url,g=kg(a.projection);Bk.call(this,{attributions:b,extent:a.extent,logo:a.logo,projection:g,resolutions:[e]});this.a=new Ej(d,e,1,b,f,c)}E(Tt,Bk);Tt.prototype.pb=function(a){return We(a,this.a.p())?this.a:null};function Ut(a){this.e=a.source;this.Lg=t(a.style)?se(a.style):re;this.X=Td();this.a=qc("CANVAS");this.i=this.a.getContext("2d");this.b=[0,0];this.g=null;St.call(this,{attributions:a.attributions,canvasFunction:B(this.s,this),extent:a.extent,logo:a.logo,projection:a.projection,ratio:a.ratio,resolutions:a.resolutions,state:this.e.f});H(this.e,"change",this.fa,void 0,this)}E(Ut,St);
Ut.prototype.s=function(a,b,c,d){var e=new Vk(b/(2*c),a),f=!1;this.e.fc(a,function(a){var d;if(!(d=f))if(d=this.Lg(a,b),null!=d){var m=b*b/(4*c*c),n,p,r=!1;n=0;for(p=d.length;n<p;++n)r=ul(e,a,d[n],m,a,this.Mg,this)||r;d=r}else d=!1;f=d},this);Zk(e);if(f)return null;this.b[0]!=d[0]||this.b[1]!=d[1]?(this.a.width=d[0],this.a.height=d[1],this.b[0]=d[0],this.b[1]=d[1]):this.i.clearRect(0,0,d[0],d[1]);d=bk(this.X,d[0]/2,d[1]/2,c/b,-c/b,0,-Re(a)[0],-Re(a)[1]);Wk(e,this.i,a,c,d,0,rd);this.g=e;return this.a};
Ut.prototype.k=function(a,b,c,d,e){return null===this.g?void 0:Yk(this.g,a,b,0,d,rd,function(a,b){return e(b)})};Ut.prototype.Mg=function(){this.u()};Ut.prototype.fa=function(){tj(this,this.e.f)};function Vt(a){a=t(a)?a:{};Bk.call(this,{attributions:a.attributions,extent:a.extent,logo:a.logo,projection:a.projection,resolutions:a.resolutions});this.X=t(a.crossOrigin)?a.crossOrigin:null;this.g=a.url;this.b=a.params;this.e=!0;Wt(this);this.G=a.serverType;this.fa=t(a.hidpi)?a.hidpi:!0;this.a=null;this.i=[0,0];this.n=null;this.s=NaN;this.A=0;this.o=t(a.ratio)?a.ratio:1.5}E(Vt,Bk);l=Vt.prototype;
l.Ng=function(a,b,c,d){if(t(this.g)&&null!==this.a&&b==this.s&&(c===this.n||(c.oa!=this.n.oa?0:Uf(c,this.n)===cg))){var e=this.a.p(),f=this.a.b,g={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetFeatureInfo",FORMAT:"image/png",TRANSPARENT:!0,QUERY_LAYERS:G(this.b,"LAYERS")};fc(g,this.b,d);b/=f;d=Math.floor((e[3]-a[1])/b);g[this.e?"I":"X"]=Math.floor((a[0]-e[0])/b);g[this.e?"J":"Y"]=d;return Xt(this,e,this.i,f,c,g)}};l.Og=k("b");
l.pb=function(a,b,c,d){if(!t(this.g))return null;b=Ck(this,b);1==c||this.fa&&t(this.G)||(c=1);var e=this.a;if(null!==e&&this.A==this.c&&e.d==b&&e.b==c&&Le(e.p(),a))return e;e={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetMap",FORMAT:"image/png",TRANSPARENT:!0};fc(e,this.b);a=a.slice();var f=(a[0]+a[2])/2,g=(a[1]+a[3])/2;if(1!=this.o){var h=this.o*(a[2]-a[0])/2,m=this.o*(a[3]-a[1])/2;a[0]=f-h;a[1]=g-m;a[2]=f+h;a[3]=g+m}var h=b/c,m=Math.ceil((a[2]-a[0])/h),n=Math.ceil((a[3]-a[1])/h);a[0]=f-h*m/2;a[2]=
f+h*m/2;a[1]=g-h*n/2;a[3]=g+h*n/2;this.i[0]=m;this.i[1]=n;e=Xt(this,a,this.i,c,d,e);this.a=new Ej(a,b,c,this.d,e,this.X);this.n=d;this.s=b;this.A=this.c;return this.a};
function Xt(a,b,c,d,e,f){f[a.e?"CRS":"SRS"]=e.a;"STYLES"in a.b||(f.STYLES=new String(""));if(1!=d)switch(a.G){case "geoserver":f.FORMAT_OPTIONS="dpi:"+(90*d+0.5|0);break;case "mapserver":f.MAP_RESOLUTION=90*d;break;case "carmentaserver":case "qgis":f.DPI=90*d}f.WIDTH=c[0];f.HEIGHT=c[1];c=e.c;f.BBOX=(a.e&&"ne"==c.substr(0,2)?[b[1],b[0],b[3],b[2]]:b).join(",");return Mg(Og([a.g],f))}l.Pg=function(a){a!=this.g&&(this.g=a,this.a=null,this.u())};l.Qg=function(a){fc(this.b,a);Wt(this);this.a=null;this.u()};
function Wt(a){a.e=0<=Ia(G(a.b,"VERSION","1.3.0"),"1.3")};function Yt(a){a=t(a)?a:{};Mt.call(this,{attributions:a.attributions,doc:a.doc,extent:a.extent,format:new xp({defaultStyle:a.defaultStyle}),logo:a.logo,node:a.node,projection:a.projection,text:a.text,url:a.url,urls:a.urls})}E(Yt,Mt);function Zt(a,b,c){return function(d,e,f){return c(a,b,d,e,f)}}function $t(){};function au(a){Bk.call(this,{extent:a.extent,projection:a.projection,resolutions:a.resolutions});this.o=t(a.crossOrigin)?a.crossOrigin:null;this.a=t(a.displayDpi)?a.displayDpi:96;this.i=t(a.url)?Zt(a.url,t(a.params)?a.params:{},B(this.g,this)):$t;this.s=t(a.hidpi)?a.hidpi:!0;this.n=t(a.metersPerUnit)?a.metersPerUnit:1;this.e=t(a.ratio)?a.ratio:1;this.A=t(a.useOverlay)?a.useOverlay:!1;this.b=null}E(au,Bk);
au.prototype.pb=function(a,b,c,d){b=Ck(this,b);c=this.s?c:1;var e=this.b;if(null!==e&&e.d==b&&e.b==c&&Le(e.p(),a))return e;1!=this.e&&(a=a.slice(),Ze(a,this.e));d=this.i(a,[(a[2]-a[0])/b*c,(a[3]-a[1])/b*c],d);return this.b=e=t(d)?new Ej(a,b,c,this.d,d,this.o):null};
au.prototype.g=function(a,b,c,d){var e;e=this.n;var f=Ve(c),g=Te(c),h=d[0],m=d[1],n=0.0254/this.a;e=m*f>h*g?f*e/(h*n):g*e/(m*n);c=Re(c);d={OPERATION:this.A?"GETDYNAMICMAPOVERLAYIMAGE":"GETMAPIMAGE",VERSION:"2.0.0",LOCALE:"en",CLIENTAGENT:"ol.source.MapGuide source",CLIP:"1",SETDISPLAYDPI:this.a,SETDISPLAYWIDTH:Math.round(d[0]),SETDISPLAYHEIGHT:Math.round(d[1]),SETVIEWSCALE:e,SETVIEWCENTERX:c[0],SETVIEWCENTERY:c[1]};fc(d,b);return Mg(Og([a],d))};function bu(a){var b=a.projection||kg("EPSG:3857"),c=new nt({maxZoom:t(a.maxZoom)?a.maxZoom:18});lt.call(this,{attributions:a.attributions,crossOrigin:a.crossOrigin,extent:a.extent,logo:a.logo,projection:b,tileGrid:c,tileLoadFunction:a.tileLoadFunction,tileUrlFunction:gt});this.e=c.c({extent:a.extent});t(a.tileUrlFunction)?this.Ub(a.tileUrlFunction):t(a.urls)?this.Ub(et(a.urls)):t(a.url)&&this.a(a.url)}E(bu,lt);bu.prototype.Ub=function(a){bu.D.Ub.call(this,ht(this.e,a))};bu.prototype.a=function(a){this.Ub(et(it(a)))};function cu(a){a=t(a)?a:{};bu.call(this,{attributions:t(a.attributions)?a.attributions:du,crossOrigin:t(a.crossOrigin)?a.crossOrigin:"anonymous",opaque:!0,maxZoom:a.maxZoom,tileLoadFunction:a.tileLoadFunction,url:t(a.url)?a.url:"//{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png"})}E(cu,bu);
var eu=new gb({html:'Data \x26copy; \x3ca href\x3d"http://www.openstreetmap.org/"\x3eOpenStreetMap\x3c/a\x3e contributors, \x3ca href\x3d"http://www.openstreetmap.org/copyright"\x3eODbL\x3c/a\x3e'}),fu=new gb({html:'Tiles \x26copy; \x3ca href\x3d"http://www.openstreetmap.org/"\x3eOpenStreetMap\x3c/a\x3e contributors, \x3ca href\x3d"http://creativecommons.org/licenses/by-sa/2.0/"\x3eCC BY-SA\x3c/a\x3e'}),du=[fu,eu];function gu(a){a=t(a)?a:{};var b=hu[a.layer];bu.call(this,{attributions:b.attributions,crossOrigin:"anonymous",logo:"//developer.mapquest.com/content/osm/mq_logo.png",maxZoom:b.maxZoom,opaque:!0,tileLoadFunction:a.tileLoadFunction,url:"//otile{1-4}.mqcdn.com/tiles/1.0.0/"+a.layer+"/{z}/{x}/{y}.jpg"})}E(gu,bu);
var iu=new gb({html:'Tiles Courtesy of \x3ca href\x3d"http://www.mapquest.com/" target\x3d"_blank"\x3eMapQuest\x3c/a\x3e'}),hu={osm:{maxZoom:28,attributions:[iu,eu]},sat:{maxZoom:18,attributions:[iu,new gb({html:"Portions Courtesy NASA/JPL-Caltech and U.S. Depart. of Agriculture, Farm Service Agency"})]},hyb:{maxZoom:18,attributions:[iu,eu]}};function ju(){}E(ju,qo);function ku(a,b){var c=a.getAttribute("k"),d=a.getAttribute("v");b[b.length-1].Vb[c]=d}
var lu=[null],mu=Y(lu,{nd:function(a,b){b[b.length-1].ob.push(a.getAttribute("ref"))},tag:ku},void 0),ou=Y(lu,{node:function(a,b){var c=b[b.length-1],d=a.getAttribute("id"),e=[parseFloat(a.getAttribute("lon")),parseFloat(a.getAttribute("lat"))];c.Wd[d]=e;var f=Z({Vb:{}},nu,a,b);$b(f.Vb)||(e=new zf(e),e=new O(e),e.b(d),e.W(f.Vb),c.features.push(e))},way:function(a,b){for(var c=a.getAttribute("id"),d=Z({ob:[],Vb:{}},mu,a,b),e=b[b.length-1],f=[],g=0,h=d.ob.length;g<h;g++)Ta(f,G(e.Wd,d.ob[g]));d.ob[0]==
d.ob[d.ob.length-1]?(g=new Hf(null),If(g,"XY",f,[f.length])):(g=new kl(null),ll(g,"XY",f));f=new O(g);f.b(c);f.W(d.Vb);e.features.push(f)}},void 0),nu=Y(lu,{tag:ku},void 0);ju.prototype.ub=function(a){return"osm"==a.localName&&(a=Z({Wd:{},features:[]},ou,a,[]),t(a.features))?a.features:[]};ju.prototype.uc=function(){return kg("EPSG:4326")};ju.prototype.bd=function(){return kg("EPSG:4326")};function pu(a){a=t(a)?a:{};Mt.call(this,{attributions:a.attributions,doc:a.doc,extent:a.extent,format:new ju,logo:a.logo,node:a.node,projection:a.projection,reprojectTo:a.reprojectTo,text:a.text,url:a.url})}E(pu,Mt);var qu={terrain:{ia:"jpg",opaque:!0},"terrain-background":{ia:"jpg",opaque:!0},"terrain-labels":{ia:"png",opaque:!1},"terrain-lines":{ia:"png",opaque:!1},"toner-background":{ia:"png",opaque:!0},toner:{ia:"png",opaque:!0},"toner-hybrid":{ia:"png",opaque:!1},"toner-labels":{ia:"png",opaque:!1},"toner-lines":{ia:"png",opaque:!1},"toner-lite":{ia:"png",opaque:!0},watercolor:{ia:"jpg",opaque:!0}},ru={terrain:{minZoom:4,maxZoom:18},toner:{minZoom:0,maxZoom:20},watercolor:{minZoom:3,maxZoom:16}};
function su(a){var b=a.layer.indexOf("-"),b=-1==b?a.layer:a.layer.slice(0,b),c=qu[a.layer];bu.call(this,{attributions:tu,crossOrigin:"anonymous",maxZoom:ru[b].maxZoom,opaque:c.opaque,tileLoadFunction:a.tileLoadFunction,url:t(a.url)?a.url:"//{a-d}.tile.stamen.com/"+a.layer+"/{z}/{x}/{y}."+c.ia})}E(su,bu);var tu=[new gb({html:'Map tiles by \x3ca href\x3d"http://stamen.com/"\x3eStamen Design\x3c/a\x3e, under \x3ca href\x3d"http://creativecommons.org/licenses/by/3.0/"\x3eCC BY 3.0\x3c/a\x3e.'}),eu];function uu(a,b){og.call(this,a,2);this.f=a;this.e=b.ja(a.a);this.c={}}E(uu,og);uu.prototype.b=function(a){a=t(a)?v(a):-1;if(a in this.c)return this.c[a];var b=this.e,c=qc("CANVAS");c.width=b;c.height=b;var d=c.getContext("2d");d.strokeStyle="black";d.strokeRect(0.5,0.5,b+0.5,b+0.5);d.fillStyle="black";d.textAlign="center";d.textBaseline="middle";d.font="24px sans-serif";d.fillText(this.f.toString(),b/2,b/2);return this.c[a]=c};
function vu(a){Nj.call(this,{extent:a.extent,opaque:!1,projection:a.projection,tileGrid:a.tileGrid});this.a=new jt}E(vu,Nj);vu.prototype.Yc=function(){return this.a.ra()>this.a.d};vu.prototype.be=function(a){kt(this.a,a)};vu.prototype.ib=function(a,b,c){var d=this.Ga(a,b,c);if(Lm(this.a,d))return Om(this.a,d);a=new uu(new ab(a,b,c),this.tileGrid);Qm(this.a,d,a);return a};var wu=[];C("grid",function(a){wu.push(a)});function xu(a){lt.call(this,{crossOrigin:a.crossOrigin,projection:kg("EPSG:3857"),state:0,tileLoadFunction:a.tileLoadFunction});this.a=Ss(a.url,{yd:!0});qs(this.a,this.e,null,this)}E(xu,lt);
xu.prototype.e=function(){var a=wu.pop(),b=kg("EPSG:4326"),c;if(t(a.bounds)){var d=Uf(b,this.l);this.N=c=af(a.bounds,d)}var e=a.minzoom||0,d=a.maxzoom||22,f=new nt({maxZoom:d,minZoom:e});this.tileGrid=f;this.tileUrlFunction=ht(f.c({extent:c}),et(a.tiles));if(t(a.attribution)){b=t(c)?c:b.p();c={};for(var g;e<=d;++e)g=e.toString(),c[g]=[Jj(f,b,e)];this.d=[new gb({html:a.attribution,tileRanges:c})]}tj(this,1)};function yu(a){a=t(a)?a:{};var b=t(a.params)?a.params:{};lt.call(this,{attributions:a.attributions,crossOrigin:a.crossOrigin,extent:a.extent,logo:a.logo,opaque:!G(b,"TRANSPARENT",!0),projection:a.projection,tileGrid:a.tileGrid,tileLoadFunction:a.tileLoadFunction,tileUrlFunction:B(this.Oh,this)});var c=a.urls;!t(c)&&t(a.url)&&(c=it(a.url));this.A=c;this.g=t(a.gutter)?a.gutter:0;this.a=b;this.i=NaN;this.e=!0;this.j=a.serverType;this.o=t(a.hidpi)?a.hidpi:!0;this.n="";zu(this);this.s=Fe();Au(this)}
E(yu,lt);l=yu.prototype;
l.Rg=function(a,b,c,d){var e=this.i;if(!isNaN(this.i)){var f=this.tileGrid;null===f&&(f=Oj(this,c));b=Lj(f,a[0],a[1],b,!1,void 0);if(!(f.Ta().length<=b.a)){var g=f.a[b.a],h=Ij(f,b,this.s),f=f.ja(b.a),m=this.g;0!==m&&(f+=2*m,h=Ie(h,g*m,h));1!=e&&(f=f*e+0.5|0);m={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetFeatureInfo",FORMAT:"image/png",TRANSPARENT:!0,QUERY_LAYERS:G(this.a,"LAYERS")};fc(m,this.a,d);d=Math.floor((h[3]-a[1])/(g/e));m[this.e?"I":"X"]=Math.floor((a[0]-h[0])/(g/e));m[this.e?"J":"Y"]=d;return Bu(this,
b,f,h,e,c,m)}}};l.ic=k("g");l.Ga=function(a,b,c){return this.n+yu.D.Ga.call(this,a,b,c)};l.Sg=k("a");
function Bu(a,b,c,d,e,f,g){var h=a.A;if(t(h)&&0!=h.length){g.WIDTH=c;g.HEIGHT=c;g[a.e?"CRS":"SRS"]=f.a;"STYLES"in a.a||(g.STYLES=new String(""));if(1!=e)switch(a.j){case "geoserver":g.FORMAT_OPTIONS="dpi:"+(90*e+0.5|0);break;case "mapserver":g.MAP_RESOLUTION=90*e;break;case "carmentaserver":case "qgis":g.DPI=90*e}c=f.c;a.e&&"ne"==c.substr(0,2)&&(c=d[0],d[0]=d[1],d[1]=c,c=d[2],d[2]=d[3],d[3]=c);g.BBOX=d.join(",");return Mg(Og([1==h.length?h[0]:h[Rb((b.x<<b.a)+b.y,a.A.length)]],g))}}
l.Nb=function(a,b,c){a=yu.D.Nb.call(this,a,b,c);return 1!=b&&this.o&&t(this.j)?a*b+0.5|0:a};function zu(a){var b=0,c=[],d;for(d in a.a)c[b++]=d+"-"+a.a[d];a.n=c.join("/")}
l.Oh=function(a,b,c){var d=this.tileGrid;null===d&&(d=Oj(this,c));if(!(d.Ta().length<=a.a)){1==b||this.o&&t(this.j)||(b=1);var e=d.a[a.a],f=Ij(d,a,this.s),d=d.ja(a.a),g=this.g;0!==g&&(d+=2*g,f=Ie(f,e*g,f));e=this.p();if(null===e||We(f,e)&&!$e(f,e))return 1!=b&&(d=d*b+0.5|0),e={SERVICE:"WMS",VERSION:"1.3.0",REQUEST:"GetMap",FORMAT:"image/png",TRANSPARENT:!0},fc(e,this.a),this.i=b,Bu(this,a,d,f,b,c,e)}};l.Tg=function(a){fc(this.a,a);zu(this);Au(this);this.u()};
function Au(a){a.e=0<=Ia(G(a.a,"VERSION","1.3.0"),"1.3")};function Cu(a){a=t(a)?a:{};Mt.call(this,{attributions:a.attributions,extent:a.extent,format:new qq({defaultProjection:a.defaultProjection}),logo:a.logo,object:a.object,projection:a.projection,text:a.text,url:a.url})}E(Cu,Mt);function Du(a){this.c=a.matrixIds;Gj.call(this,{origin:a.origin,origins:a.origins,resolutions:a.resolutions,tileSize:a.tileSize,tileSizes:a.tileSizes})}E(Du,Gj);Du.prototype.g=k("c");
function Eu(a){var b=[],c=[],d=[],e=[],f=kg(a.supportedCRS).b();Wa(a.matrixIds,function(a,b){return b.scaleDenominator-a.scaleDenominator});La(a.matrixIds,function(a){c.push(a.identifier);d.push(a.topLeftCorner);b.push(2.8E-4*a.scaleDenominator/f);e.push(a.tileWidth)});return new Du({origins:d,resolutions:b,matrixIds:c,tileSizes:e})};var Fu="KVP";
function Gu(a){function b(a){a=e==Fu?Mg(Og([a],g)):a.replace(/\{(\w+?)\}/g,function(a,b){return b in g?g[b]:a});return function(b){if(null!==b){var c={TileMatrix:f.c[b.a],TileCol:b.x,TileRow:b.y};fc(c,this.a);b=a;return b=e==Fu?Mg(Og([b],c)):b.replace(/\{(\w+?)\}/g,function(a,b){return c[b]})}}}var c=t(a.version)?a.version:"1.0.0",d=t(a.format)?a.format:"image/jpeg";this.a=a.dimensions||{};this.e="";Hu(this);var e=t(a.requestEncoding)?a.requestEncoding:Fu,f=a.tileGrid,g={Layer:a.layer,style:a.style,
Style:a.style,TileMatrixSet:a.matrixSet};e==Fu&&fc(g,{Service:"WMTS",Request:"GetTile",Version:c,Format:d});c=gt;d=a.urls;!t(d)&&t(a.url)&&(d=it(a.url));t(d)&&(c=ft(Ma(d,b)));var h=Fe(),m=new ab(0,0,0),c=ht(function(b,c){var d=this.tileGrid;if(d.Ta().length<=b.a)return null;var e=b.x,f=-b.y-1,g=Ij(d,b),x=c.p(),w=t(a.extent)?a.extent:x;null!==w&&(c.j&&w[0]===x[0]&&w[2]===x[2])&&(g=Math.ceil((w[2]-w[0])/(g[2]-g[0])),e=Rb(e,g),m.a=b.a,m.x=e,m.y=b.y,g=Ij(d,m,h));return!We(g,w)||$e(g,w)?null:new ab(b.a,
e,f)},c);lt.call(this,{attributions:a.attributions,crossOrigin:a.crossOrigin,extent:a.extent,logo:a.logo,projection:a.projection,tileGrid:f,tileLoadFunction:a.tileLoadFunction,tileUrlFunction:c})}E(Gu,lt);Gu.prototype.g=k("a");Gu.prototype.Ga=function(a,b,c){return this.e+Gu.D.Ga.call(this,a,b,c)};function Hu(a){var b=0,c=[],d;for(d in a.a)c[b++]=d+"-"+a.a[d];a.e=c.join("/")}Gu.prototype.i=function(a){fc(this.a,a);Hu(this);this.u()};function Iu(a){var b=t(a)?a:b;Gj.call(this,{origin:[0,0],resolutions:b.resolutions})}E(Iu,Gj);Iu.prototype.c=function(a){a=t(a)?a:{};var b=this.minZoom,c=this.maxZoom,d=new ab(0,0,0),e=null;if(t(a.extent)){var e=Array(c+1),f;for(f=0;f<=c;++f)e[f]=f<b?null:Jj(this,a.extent,f)}return function(a,f,m){f=a.a;if(f<b||c<f)return null;var n=Math.pow(2,f),p=a.x;if(0>p||n<=p)return null;a=a.y;return a<-n||-1<a||null!==e&&(d.a=f,d.x=p,d.y=-a-1,!e[f].contains(d))?null:bb(f,p,-a-1,m)}};function Ju(a){a=t(a)?a:{};var b=a.size,c=b[0],d=b[1],e=[],f=256;switch(t(a.tierSizeCalculation)?a.tierSizeCalculation:"default"){case "default":for(;c>f||d>f;)e.push([Math.ceil(c/f),Math.ceil(d/f)]),f+=f;break;case "truncated":for(;c>f||d>f;)e.push([Math.ceil(c/f),Math.ceil(d/f)]),c>>=1,d>>=1}e.push([1,1]);e.reverse();for(var f=[1],g=[0],d=1,c=e.length;d<c;d++)f.push(1<<d),g.push(e[d-1][0]*e[d-1][1]+g[d-1]);f.reverse();var f=new Iu({resolutions:f}),h=a.url,b=ht(f.c({extent:[0,0,b[0],b[1]]}),function(a){return null===
a?void 0:h+"TileGroup"+((a.x+a.y*e[a.a][0]+g[a.a])/256|0)+"/"+a.a+"-"+a.x+"-"+a.y+".jpg"});lt.call(this,{attributions:a.attributions,crossOrigin:a.crossOrigin,logo:a.logo,xc:Ku,tileGrid:f,tileUrlFunction:b})}E(Ju,lt);function Ku(a,b,c,d,e){pg.call(this,a,b,c,d,e);this.g={}}E(Ku,pg);
Ku.prototype.b=function(a){var b=t(a)?v(a).toString():"";if(b in this.g)return this.g[b];a=Ku.D.b.call(this,a);if(2==this.state){if(256==a.width&&256==a.height)return this.g[b]=a;var c=qc("CANVAS");c.width=256;c.height=256;c.getContext("2d").drawImage(a,0,0);return this.g[b]=c}return a};function Lu(a){a=t(a)?a:{};this.a=a.font;this.b=a.rotation;this.d=a.scale;this.f=a.text;this.g=a.textAlign;this.i=a.textBaseline;this.c=t(a.fill)?a.fill:null;this.e=t(a.stroke)?a.stroke:null;this.j=t(a.offsetX)?a.offsetX:0;this.k=t(a.offsetY)?a.offsetY:0}l=Lu.prototype;l.bf=k("a");l.hh=k("c");l.ih=k("b");l.jh=k("d");l.kh=k("e");l.lh=k("f");l.uf=k("g");l.vf=k("i");C("ol.Attribution",gb);C("ol.BrowserFeature",Bc);Bc.DEVICE_PIXEL_RATIO=Bc.pd;Bc.HAS_CANVAS=Bc.rd;Bc.HAS_DEVICE_ORIENTATION=Bc.sd;Bc.HAS_GEOLOCATION=Bc.td;Bc.HAS_TOUCH=Bc.ud;Bc.HAS_WEBGL=Bc.vd;C("ol.Collection",N);N.prototype.clear=N.prototype.clear;N.prototype.extend=N.prototype.mg;N.prototype.forEach=N.prototype.forEach;N.prototype.getArray=N.prototype.ng;N.prototype.getAt=N.prototype.Fd;N.prototype.getLength=N.prototype.Ia;N.prototype.insertAt=N.prototype.mc;N.prototype.pop=N.prototype.Xd;
N.prototype.push=N.prototype.push;N.prototype.remove=N.prototype.remove;N.prototype.removeAt=N.prototype.cd;N.prototype.setAt=N.prototype.oe;C("ol.DeviceOrientation",Ld);C("ol.Feature",O);O.prototype.getGeometryName=O.prototype.df;O.prototype.getId=O.prototype.ef;O.prototype.getStyle=O.prototype.tg;O.prototype.getStyleFunction=O.prototype.ug;O.prototype.setGeometryName=O.prototype.k;O.prototype.setId=O.prototype.b;O.prototype.setStyle=O.prototype.j;C("ol.FeatureOverlay",ue);
ue.prototype.addFeature=ue.prototype.Yd;ue.prototype.getFeatures=ue.prototype.og;ue.prototype.getStyle=ue.prototype.pg;ue.prototype.getStyleFunction=ue.prototype.qg;ue.prototype.removeFeature=ue.prototype.Uc;ue.prototype.setFeatures=ue.prototype.Tb;ue.prototype.setMap=ue.prototype.setMap;ue.prototype.setStyle=ue.prototype.sg;C("ol.Geolocation",R);pg.prototype.getImage=pg.prototype.b;C("ol.Kinetic",zg);C("ol.Map",V);V.prototype.addControl=V.prototype.De;V.prototype.addInteraction=V.prototype.Ge;
V.prototype.addLayer=V.prototype.He;V.prototype.addOverlay=V.prototype.Ie;V.prototype.beforeRender=V.prototype.ga;V.prototype.forEachFeatureAtPixel=V.prototype.Wc;V.prototype.getControls=V.prototype.Ze;V.prototype.getCoordinateFromPixel=V.prototype.aa;V.prototype.getEventCoordinate=V.prototype.Gd;V.prototype.getEventPixel=V.prototype.hc;V.prototype.getInteractions=V.prototype.ff;V.prototype.getLayers=V.prototype.Dc;V.prototype.getOverlays=V.prototype.rf;V.prototype.getPixelFromCoordinate=V.prototype.f;
V.prototype.getViewport=V.prototype.yf;V.prototype.removeControl=V.prototype.Bh;V.prototype.removeInteraction=V.prototype.Dh;V.prototype.removeLayer=V.prototype.Eh;V.prototype.removeOverlay=V.prototype.Fh;V.prototype.render=V.prototype.H;V.prototype.renderSync=V.prototype.Hh;V.prototype.updateSize=V.prototype.G;ci.prototype.preventDefault=ci.prototype.L;ci.prototype.stopPropagation=ci.prototype.Aa;C("ol.Object",M);M.prototype.bindTo=M.prototype.Oe;M.prototype.get=M.prototype.r;
M.prototype.getProperties=M.prototype.gb;M.prototype.notify=M.prototype.Tc;M.prototype.set=M.prototype.t;M.prototype.setValues=M.prototype.W;M.prototype.unbind=M.prototype.fd;M.prototype.unbindAll=M.prototype.Rh;C("ol.Observable",Ad);Ad.prototype.dispatchChangeEvent=Ad.prototype.u;Ad.prototype.on=Ad.prototype.ph;Ad.prototype.once=Ad.prototype.vh;Ad.prototype.un=Ad.prototype.Ph;Ad.prototype.unByKey=Ad.prototype.Qh;C("ol.Overlay",Ym);og.prototype.getTileCoord=og.prototype.j;ab.prototype.getZXY=ab.prototype.c;
C("ol.View2D",S);S.prototype.calculateExtent=S.prototype.q;S.prototype.centerOn=S.prototype.Re;S.prototype.constrainResolution=S.prototype.constrainResolution;S.prototype.constrainRotation=S.prototype.constrainRotation;S.prototype.fitExtent=S.prototype.Ed;S.prototype.fitGeometry=S.prototype.Ue;S.prototype.getView2D=S.prototype.M;S.prototype.getZoom=S.prototype.Af;S.prototype.setZoom=S.prototype.A;
C("ol.animation.bounce",function(a){var b=a.resolution,c=t(a.start)?a.start:xa(),d=t(a.duration)?a.duration:1E3,e=t(a.easing)?a.easing:vg;return function(a,g){if(g.time<c)return g.animate=!0,g.viewHints[0]+=1,!0;if(g.time<c+d){var h=e((g.time-c)/d),m=b-g.view2DState.resolution;g.animate=!0;g.view2DState.resolution+=h*m;g.viewHints[0]+=1;return!0}return!1}});C("ol.animation.pan",wg);C("ol.animation.rotate",xg);C("ol.animation.zoom",yg);C("ol.color.asArray",function(a){return ja(a)?a:ge(a)});
C("ol.color.asString",ee);C("ol.control.Attribution",Li);Li.prototype.setMap=Li.prototype.setMap;C("ol.control.Control",Ki);Ki.prototype.getMap=Ki.prototype.U;Ki.prototype.setMap=Ki.prototype.setMap;C("ol.control.FullScreen",dn);C("ol.control.Logo",Mi);Mi.prototype.setMap=Mi.prototype.setMap;C("ol.control.MousePosition",en);en.prototype.setMap=en.prototype.setMap;C("ol.control.ScaleLine",gn);gn.prototype.setMap=gn.prototype.setMap;C("ol.control.Zoom",Ni);Ni.prototype.setMap=Ni.prototype.setMap;
C("ol.control.ZoomSlider",wn);C("ol.control.ZoomToExtent",An);C("ol.control.defaults",Oi);C("ol.coordinate.createStringXY",function(a){return function(b){return De(b,a)}});C("ol.coordinate.format",ze);C("ol.coordinate.fromProjectedArray",function(a,b){var c=b.charAt(0);return"n"===c||"s"===c?[a[1],a[0]]:a});C("ol.coordinate.rotate",Be);C("ol.coordinate.toStringHDMS",function(a){return t(a)?ye(a[1],"NS")+" "+ye(a[0],"EW"):""});C("ol.coordinate.toStringXY",De);C("ol.dom.Input",Bn);
C("ol.easing.bounce",function(a){a<1/2.75?a*=7.5625*a:a<2/2.75?(a-=1.5/2.75,a=7.5625*a*a+0.75):a<2.5/2.75?(a-=2.25/2.75,a=7.5625*a*a+0.9375):(a-=2.625/2.75,a=7.5625*a*a+0.984375);return a});C("ol.easing.easeIn",function(a){return a*a*a});C("ol.easing.easeOut",sg);C("ol.easing.elastic",function(a){return Math.pow(2,-10*a)*Math.sin((a-0.075)*2*Math.PI/0.3)+1});C("ol.easing.inAndOut",tg);C("ol.easing.linear",ug);C("ol.easing.upAndDown",vg);
C("ol.events.condition.altKeyOnly",function(a){a=a.a;return a.ba&&!a.rb&&!a.za});C("ol.events.condition.altShiftKeysOnly",Ui);C("ol.events.condition.always",rd);C("ol.events.condition.noModifierKeys",Wi);C("ol.events.condition.platformModifierKeyOnly",function(a){a=a.a;return!a.ba&&a.rb&&!a.za});C("ol.events.condition.shiftKeyOnly",Xi);C("ol.events.condition.targetNotEditable",Yi);C("ol.extent.boundingExtent",Ee);C("ol.extent.buffer",Ie);
C("ol.extent.containsCoordinate",function(a,b){return a[0]<=b[0]&&b[0]<=a[2]&&a[1]<=b[1]&&b[1]<=a[3]});C("ol.extent.containsExtent",Le);C("ol.extent.createEmpty",Fe);C("ol.extent.equals",Ne);C("ol.extent.extend",Oe);C("ol.extent.getBottomLeft",Qe);C("ol.extent.getBottomRight",function(a){return[a[2],a[1]]});C("ol.extent.getCenter",Re);C("ol.extent.getHeight",Te);C("ol.extent.getSize",function(a){return[a[2]-a[0],a[3]-a[1]]});C("ol.extent.getTopLeft",Ue);
C("ol.extent.getTopRight",function(a){return[a[2],a[3]]});C("ol.extent.getWidth",Ve);C("ol.extent.intersects",We);C("ol.extent.isEmpty",Xe);C("ol.extent.transform",af);C("ol.format.GPX",Do);Do.prototype.readFeature=Do.prototype.tb;Do.prototype.readFeatures=Do.prototype.va;C("ol.format.GeoJSON",kp);kp.prototype.readFeature=kp.prototype.tb;kp.prototype.readFeatures=kp.prototype.va;kp.prototype.readGeometry=kp.prototype.tc;kp.prototype.readProjection=kp.prototype.Ba;kp.prototype.writeFeature=kp.prototype.ld;
kp.prototype.writeFeatures=kp.prototype.md;kp.prototype.writeGeometry=kp.prototype.od;C("ol.format.IGC",tp);tp.prototype.readFeature=tp.prototype.tb;tp.prototype.readFeatures=tp.prototype.va;C("ol.format.KML",xp);xp.prototype.readFeature=xp.prototype.tb;xp.prototype.readFeatures=xp.prototype.va;xp.prototype.readGeometry=xp.prototype.tc;xp.prototype.readName=xp.prototype.yh;xp.prototype.readProjection=xp.prototype.Ba;C("ol.format.TopoJSON",qq);qq.prototype.readFeatures=qq.prototype.va;
qq.prototype.readProjection=qq.prototype.Ba;C("ol.format.WFS",xr);xr.prototype.readFeatureCollectionMetadata=xr.prototype.d;xr.prototype.readFeatures=xr.prototype.va;xr.prototype.readTransactionResponse=xr.prototype.f;xr.prototype.writeGetFeature=xr.prototype.g;xr.prototype.writeTransaction=xr.prototype.i;C("ol.format.WMSCapabilities",Or);Or.prototype.read=Or.prototype.a;C("ol.geom.Circle",bl);bl.prototype.clone=bl.prototype.I;bl.prototype.getCenter=bl.prototype.Xc;bl.prototype.getExtent=bl.prototype.p;
bl.prototype.getRadius=bl.prototype.ae;bl.prototype.getSimplifiedGeometry=bl.prototype.Ua;bl.prototype.getType=bl.prototype.C;bl.prototype.setCenter=bl.prototype.zg;bl.prototype.setCenterAndRadius=bl.prototype.pe;bl.prototype.setRadius=bl.prototype.Lh;bl.prototype.transform=bl.prototype.transform;C("ol.geom.Geometry",Md);Md.prototype.getClosestPoint=Md.prototype.s;Md.prototype.getType=Md.prototype.C;C("ol.geom.GeometryCollection",dl);dl.prototype.clone=dl.prototype.I;dl.prototype.getExtent=dl.prototype.p;
dl.prototype.getGeometries=dl.prototype.cf;dl.prototype.getSimplifiedGeometry=dl.prototype.Ua;dl.prototype.getType=dl.prototype.C;dl.prototype.setGeometries=dl.prototype.re;C("ol.geom.LineString",kl);kl.prototype.appendCoordinate=kl.prototype.Je;kl.prototype.clone=kl.prototype.I;kl.prototype.getCoordinateAtM=kl.prototype.Ag;kl.prototype.getCoordinates=kl.prototype.v;kl.prototype.getLength=kl.prototype.Bg;kl.prototype.getType=kl.prototype.C;kl.prototype.setCoordinates=kl.prototype.J;
C("ol.geom.LinearRing",xf);xf.prototype.clone=xf.prototype.I;xf.prototype.getArea=xf.prototype.Cg;xf.prototype.getCoordinates=xf.prototype.v;xf.prototype.getType=xf.prototype.C;xf.prototype.setCoordinates=xf.prototype.J;C("ol.geom.MultiLineString",ml);ml.prototype.appendLineString=ml.prototype.Ke;ml.prototype.clone=ml.prototype.I;ml.prototype.getCoordinateAtM=ml.prototype.Dg;ml.prototype.getCoordinates=ml.prototype.v;ml.prototype.getLineString=ml.prototype.nf;ml.prototype.getLineStrings=ml.prototype.Lc;
ml.prototype.getType=ml.prototype.C;ml.prototype.setCoordinates=ml.prototype.J;C("ol.geom.MultiPoint",ql);ql.prototype.appendPoint=ql.prototype.Me;ql.prototype.clone=ql.prototype.I;ql.prototype.getCoordinates=ql.prototype.v;ql.prototype.getPoint=ql.prototype.sf;ql.prototype.getPoints=ql.prototype.Id;ql.prototype.getType=ql.prototype.C;ql.prototype.setCoordinates=ql.prototype.J;C("ol.geom.MultiPolygon",rl);rl.prototype.appendPolygon=rl.prototype.Ne;rl.prototype.clone=rl.prototype.I;
rl.prototype.getArea=rl.prototype.Eg;rl.prototype.getCoordinates=rl.prototype.v;rl.prototype.getInteriorPoints=rl.prototype.hf;rl.prototype.getPolygon=rl.prototype.tf;rl.prototype.getPolygons=rl.prototype.Jd;rl.prototype.getType=rl.prototype.C;rl.prototype.setCoordinates=rl.prototype.J;C("ol.geom.Point",zf);zf.prototype.clone=zf.prototype.I;zf.prototype.getCoordinates=zf.prototype.v;zf.prototype.getType=zf.prototype.C;zf.prototype.setCoordinates=zf.prototype.J;C("ol.geom.Polygon",Hf);
Hf.prototype.appendLinearRing=Hf.prototype.Le;Hf.prototype.clone=Hf.prototype.I;Hf.prototype.getArea=Hf.prototype.Fg;Hf.prototype.getCoordinates=Hf.prototype.v;Hf.prototype.getInteriorPoint=Hf.prototype.gf;Hf.prototype.getLinearRing=Hf.prototype.of;Hf.prototype.getLinearRings=Hf.prototype.Hd;Hf.prototype.getType=Hf.prototype.C;Hf.prototype.setCoordinates=Hf.prototype.J;C("ol.geom.SimpleGeometry",cf);cf.prototype.getExtent=cf.prototype.p;cf.prototype.getFirstCoordinate=cf.prototype.af;
cf.prototype.getLastCoordinate=cf.prototype.jf;cf.prototype.getLayout=cf.prototype.kf;cf.prototype.getSimplifiedGeometry=cf.prototype.Ua;cf.prototype.transform=cf.prototype.transform;C("ol.inherits",E);C("ol.interaction.DoubleClickZoom",Ti);C("ol.interaction.DragAndDrop",xs);C("ol.interaction.DragBox",gj);gj.prototype.getGeometry=gj.prototype.K;C("ol.interaction.DragPan",aj);C("ol.interaction.DragRotate",bj);C("ol.interaction.DragRotateAndZoom",Bs);C("ol.interaction.DragZoom",hj);
C("ol.interaction.Draw",Ds);C("ol.interaction.KeyboardPan",ij);C("ol.interaction.KeyboardZoom",jj);C("ol.interaction.Modify",Ms);C("ol.interaction.MouseWheelZoom",kj);C("ol.interaction.Select",Ps);Ps.prototype.getFeatures=Ps.prototype.f;Ps.prototype.setMap=Ps.prototype.setMap;C("ol.interaction.TouchPan",nj);C("ol.interaction.TouchRotate",oj);C("ol.interaction.TouchZoom",pj);C("ol.interaction.defaults",qj);C("ol.layer.Group",vj);C("ol.layer.Heatmap",Qs);C("ol.layer.Image",jk);C("ol.layer.Layer",Cj);
Cj.prototype.getSource=Cj.prototype.Gg;C("ol.layer.Tile",kk);C("ol.layer.Vector",lk);lk.prototype.getStyle=lk.prototype.Ma;lk.prototype.getStyleFunction=lk.prototype.Na;lk.prototype.setStyle=lk.prototype.g;C("ol.proj.METERS_PER_UNIT",Of);C("ol.proj.Projection",Rf);Rf.prototype.getCode=Rf.prototype.i;Rf.prototype.getExtent=Rf.prototype.p;Rf.prototype.getUnits=Rf.prototype.l;C("ol.proj.addProjection",ig);C("ol.proj.common.add",Bj);C("ol.proj.configureProj4jsProjection",function(a){return Vf(a)});
C("ol.proj.get",kg);C("ol.proj.getTransform",lg);C("ol.proj.getTransformFromProjections",Uf);C("ol.proj.transform",function(a,b,c){return lg(b,c)(a)});C("ol.proj.transformWithProjections",function(a,b,c){return Uf(b,c)(a)});C("ol.render.canvas.Immediate",mk);mk.prototype.drawAsync=mk.prototype.bc;mk.prototype.drawCircleGeometry=mk.prototype.Hb;mk.prototype.drawFeature=mk.prototype.Hc;mk.prototype.drawLineStringGeometry=mk.prototype.Ib;mk.prototype.drawMultiLineStringGeometry=mk.prototype.Jb;
mk.prototype.drawMultiPointGeometry=mk.prototype.Kb;mk.prototype.drawPointGeometry=mk.prototype.Lb;mk.prototype.drawPolygonGeometry=mk.prototype.fb;mk.prototype.setFillStrokeStyle=mk.prototype.na;mk.prototype.setImageStyle=mk.prototype.vb;mk.prototype.setTextStyle=mk.prototype.da;C("ol.source.BingMaps",ot);ot.TOS_ATTRIBUTION=pt;C("ol.source.GPX",Ot);C("ol.source.GeoJSON",Pt);C("ol.source.IGC",Qt);C("ol.source.ImageCanvas",St);C("ol.source.ImageStatic",Tt);C("ol.source.ImageVector",Ut);
C("ol.source.ImageWMS",Vt);Vt.prototype.getGetFeatureInfoUrl=Vt.prototype.Ng;Vt.prototype.getParams=Vt.prototype.Og;Vt.prototype.setUrl=Vt.prototype.Pg;Vt.prototype.updateParams=Vt.prototype.Qg;C("ol.source.KML",Yt);C("ol.source.MapGuide",au);C("ol.source.MapQuest",gu);C("ol.source.OSM",cu);cu.DATA_ATTRIBUTION=eu;cu.TILE_ATTRIBUTION=fu;C("ol.source.OSMXML",pu);sj.prototype.getExtent=sj.prototype.p;sj.prototype.getState=sj.prototype.U;C("ol.source.Stamen",su);C("ol.source.Tile",Nj);
Nj.prototype.getTileGrid=Nj.prototype.wf;C("ol.source.TileDebug",vu);C("ol.source.TileJSON",xu);C("ol.source.TileWMS",yu);yu.prototype.getGetFeatureInfoUrl=yu.prototype.Rg;yu.prototype.getParams=yu.prototype.Sg;yu.prototype.updateParams=yu.prototype.Tg;C("ol.source.TopoJSON",Cu);C("ol.source.Vector",Ml);Ml.prototype.addFeature=Ml.prototype.ce;Ml.prototype.addFeatures=Ml.prototype.Fe;Ml.prototype.forEachFeature=Ml.prototype.Ve;Ml.prototype.forEachFeatureInExtent=Ml.prototype.fc;
Ml.prototype.getClosestFeatureToCoordinate=Ml.prototype.Ye;Ml.prototype.getExtent=Ml.prototype.p;Ml.prototype.getFeatures=Ml.prototype.Ug;Ml.prototype.getFeaturesAtCoordinate=Ml.prototype.$e;Ml.prototype.removeFeature=Ml.prototype.Vg;C("ol.source.VectorFile",Mt);C("ol.source.WMTS",Gu);
C("ol.source.WMTS.optionsFromCapabilities",function(a,b){var c=Oa(a.contents.layers,function(a){return a.identifier==b}),d=c.tileMatrixSetLinks[0].tileMatrixSet,e=c.formats[0],f=Pa(c.styles,function(a){return a.isDefault});0>f&&(f=0);var f=c.styles[f].identifier,g={};La(c.dimensions,function(a){var b=a.identifier,c=a["default"];t(c)||(c=a.values[0]);g[b]=c});var h=a.contents.tileMatrixSets[d],m=Eu(h),h=kg(h.supportedCRS),n=a.operationsMetadata.GetTile.dcp.http.get,p,r;switch(Zb(n[0].constraints.GetEncoding.allowedValues)[0]){case "REST":case "RESTful":r=
"REST";p=c.resourceUrls.tile[e];break;case "KVP":r=Fu,p=[],La(n,function(a){a.constraints.GetEncoding.allowedValues.hasOwnProperty(Fu)&&p.push(a.url)})}return{urls:p,layer:b,matrixSet:d,format:e,projection:h,requestEncoding:r,tileGrid:m,style:f,dimensions:g}});Gu.prototype.getDimensions=Gu.prototype.g;Gu.prototype.updateDimensions=Gu.prototype.i;C("ol.source.XYZ",bu);bu.prototype.setUrl=bu.prototype.a;C("ol.source.Zoomify",Ju);C("ol.style.Circle",oe);oe.prototype.getAnchor=oe.prototype.Mb;
oe.prototype.getFill=oe.prototype.Wg;oe.prototype.getImage=oe.prototype.Rb;oe.prototype.getRadius=oe.prototype.Xg;oe.prototype.getSize=oe.prototype.qb;oe.prototype.getStroke=oe.prototype.Yg;C("ol.style.Fill",le);le.prototype.getColor=le.prototype.c;C("ol.style.Icon",Yj);Yj.prototype.getAnchor=Yj.prototype.Mb;Yj.prototype.getImage=Yj.prototype.Rb;Yj.prototype.getSize=Yj.prototype.qb;Yj.prototype.getSrc=Yj.prototype.Zg;C("ol.style.Image",me);me.prototype.getRotation=me.prototype.P;
me.prototype.getScale=me.prototype.o;C("ol.style.Stroke",ne);ne.prototype.getColor=ne.prototype.$g;ne.prototype.getLineCap=ne.prototype.lf;ne.prototype.getLineDash=ne.prototype.ah;ne.prototype.getLineJoin=ne.prototype.mf;ne.prototype.getMiterLimit=ne.prototype.qf;ne.prototype.getWidth=ne.prototype.bh;C("ol.style.Style",pe);pe.prototype.getFill=pe.prototype.dh;pe.prototype.getImage=pe.prototype.eh;pe.prototype.getStroke=pe.prototype.fh;pe.prototype.getText=pe.prototype.gh;pe.prototype.getZIndex=pe.prototype.zf;
C("ol.style.Text",Lu);Lu.prototype.getFill=Lu.prototype.hh;Lu.prototype.getFont=Lu.prototype.bf;Lu.prototype.getRotation=Lu.prototype.ih;Lu.prototype.getScale=Lu.prototype.jh;Lu.prototype.getStroke=Lu.prototype.kh;Lu.prototype.getText=Lu.prototype.lh;Lu.prototype.getTextAlign=Lu.prototype.uf;Lu.prototype.getTextBaseline=Lu.prototype.vf;C("ol.tilegrid.TileGrid",Gj);Gj.prototype.getMinZoom=Gj.prototype.pf;Gj.prototype.getOrigin=Gj.prototype.Sb;Gj.prototype.getResolutions=Gj.prototype.Ta;
Gj.prototype.getTileSize=Gj.prototype.ja;C("ol.tilegrid.WMTS",Du);Du.prototype.getMatrixIds=Du.prototype.g;C("ol.tilegrid.XYZ",nt);C("ol.tilegrid.Zoomify",Iu);C("ol.webgl.Context",Rm);Rm.prototype.getGL=Rm.prototype.mh;Rm.prototype.useProgram=Rm.prototype.Zc;})();
var simulationData = [{
"coords": {
"speed": 1.7330950498580933,
"accuracy": 5,
"altitudeAccuracy": 8,
"altitude": 238,
"longitude": 5.868668798362713,
"heading": 67.5,
"latitude": 45.64444874417562
},
"timestamp": 1394788264972
}, {
"coords": {
"speed": 1.9535436630249023,
"accuracy": 5,
"altitudeAccuracy": 8,
"altitude": 238,
"longitude": 5.868715401744348,
"heading": 69.609375,
"latitude": 45.64446391542036
},
"timestamp": 1394788266115
}, {
"coords": {
"speed": 2.1882569789886475,
"accuracy": 10,
"altitudeAccuracy": 8,
"altitude": 238,
"longitude": 5.868768962105614,
"heading": 67.5,
"latitude": 45.644484995906836
},
"timestamp": 1394788267107
}, {
"coords": {
"speed": 2.4942498207092285,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 237,
"longitude": 5.868825791409117,
"heading": 68.5546875,
"latitude": 45.64450435810316
},
"timestamp": 1394788267959
}, {
"coords": {
"speed": 2.7581217288970947,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 237,
"longitude": 5.868881698703271,
"heading": 69.609375,
"latitude": 45.64452149909515
},
"timestamp": 1394788268964
}, {
"coords": {
"speed": 3.3746347427368164,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 236,
"longitude": 5.868938528006774,
"heading": 70.3125,
"latitude": 45.644536712249405
},
"timestamp": 1394788270116
}, {
"coords": {
"speed": 3.597411870956421,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 236,
"longitude": 5.868992004549009,
"heading": 74.8828125,
"latitude": 45.644547943999655
},
"timestamp": 1394788271158
}, {
"coords": {
"speed": 3.6382505893707275,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 236,
"longitude": 5.869038775568706,
"heading": 73.828125,
"latitude": 45.64456005584974
},
"timestamp": 1394788271893
}, {
"coords": {
"speed": 3.65671443939209,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 236,
"longitude": 5.869091162463528,
"heading": 73.4765625,
"latitude": 45.644572335337884
},
"timestamp": 1394788272903
}, {
"coords": {
"speed": 3.7153592109680176,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 236,
"longitude": 5.869144219910604,
"heading": 73.125,
"latitude": 45.64458671030182
},
"timestamp": 1394788273914
}, {
"coords": {
"speed": 3.8041043281555176,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 236,
"longitude": 5.869205072527629,
"heading": 72.421875,
"latitude": 45.64460313883204
},
"timestamp": 1394788274901
}, {
"coords": {
"speed": 3.9588162899017334,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 236,
"longitude": 5.869268858810765,
"heading": 72.421875,
"latitude": 45.64461990263838
},
"timestamp": 1394788276140
}, {
"coords": {
"speed": 4.152309417724609,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 235,
"longitude": 5.869351252918941,
"heading": 78.046875,
"latitude": 45.64466122542102
},
"timestamp": 1394788276948
}, {
"coords": {
"speed": 4.49971866607666,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 236,
"longitude": 5.869433479389054,
"heading": 79.8046875,
"latitude": 45.64467040360499
},
"timestamp": 1394788277892
}, {
"coords": {
"speed": 4.824056148529053,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.869504055013758,
"heading": 91.40625,
"latitude": 45.64466089014489
},
"timestamp": 1394788279211
}, {
"coords": {
"speed": 5.269814491271973,
"accuracy": 10,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.869575049733621,
"heading": 91.40625,
"latitude": 45.64465967476893
},
"timestamp": 1394788279898
}, {
"coords": {
"speed": 5.4861016273498535,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.86963213049422,
"heading": 95.2734375,
"latitude": 45.64465091568012
},
"timestamp": 1394788280935
}, {
"coords": {
"speed": 5.380503177642822,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.869714859878523,
"heading": 75.5859375,
"latitude": 45.64468792178262
},
"timestamp": 1394788281930
}, {
"coords": {
"speed": 5.276519775390625,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 234,
"longitude": 5.869746124377353,
"heading": 55.1953125,
"latitude": 45.64467706721801
},
"timestamp": 1394788282909
}, {
"coords": {
"speed": 5.212399482727051,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 232,
"longitude": 5.8697939850444625,
"heading": 49.5703125,
"latitude": 45.64467899505574
},
"timestamp": 1394788284221
}, {
"coords": {
"speed": 5.174651622772217,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 232,
"longitude": 5.869789123540623,
"heading": 18.984375,
"latitude": 45.64469378911484
},
"timestamp": 1394788284924
}, {
"coords": {
"speed": 5.211904525756836,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 232,
"longitude": 5.869806222623093,
"heading": 10.1953125,
"latitude": 45.64473896757294
},
"timestamp": 1394788286251
}, {
"coords": {
"speed": 5.254780292510986,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 233,
"longitude": 5.86982952431391,
"heading": 18.6328125,
"latitude": 45.64478381075491
},
"timestamp": 1394788286927
}, {
"coords": {
"speed": 5.329030513763428,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 232,
"longitude": 5.869875792419417,
"heading": 33.75,
"latitude": 45.644830078860416
},
"timestamp": 1394788288221
}, {
"coords": {
"speed": 5.384955883026123,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 232,
"longitude": 5.869927508761985,
"heading": 46.7578125,
"latitude": 45.64486025371183
},
"timestamp": 1394788288935
}, {
"coords": {
"speed": 5.309582233428955,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 232,
"longitude": 5.869972854858143,
"heading": 47.109375,
"latitude": 45.644890596201314
},
"timestamp": 1394788290178
}, {
"coords": {
"speed": 5.250724792480469,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.870029265066488,
"heading": 46.40625,
"latitude": 45.644932673355235
},
"timestamp": 1394788290890
}, {
"coords": {
"speed": 5.3057990074157715,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.870077712466819,
"heading": 39.375,
"latitude": 45.644970224281444
},
"timestamp": 1394788291884
}, {
"coords": {
"speed": 5.431822299957275,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.870133116846783,
"heading": 43.59375,
"latitude": 45.6450097449549
},
"timestamp": 1394788292885
}, {
"coords": {
"speed": 5.542125225067139,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.870186509569986,
"heading": 43.59375,
"latitude": 45.645047421609654
},
"timestamp": 1394788294100
}, {
"coords": {
"speed": 5.647174835205078,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.870246104901535,
"heading": 42.890625,
"latitude": 45.645093647805645
},
"timestamp": 1394788295157
}, {
"coords": {
"speed": 5.735793590545654,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 230,
"longitude": 5.870298156520231,
"heading": 42.5390625,
"latitude": 45.64514368776758
},
"timestamp": 1394788296124
}, {
"coords": {
"speed": 5.809989929199219,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 230,
"longitude": 5.870346436282499,
"heading": 43.59375,
"latitude": 45.64519154843469
},
"timestamp": 1394788296960
}, {
"coords": {
"speed": 5.877871036529541,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 228,
"longitude": 5.87034755932109,
"heading": 42.75193405151367,
"latitude": 45.645270362475216
},
"timestamp": 1394788298177
}, {
"coords": {
"speed": 5.937166690826416,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 228,
"longitude": 5.870402806867787,
"heading": 42.75193405151367,
"latitude": 45.645312142096095
},
"timestamp": 1394788298898
}, {
"coords": {
"speed": 6.071393966674805,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 229,
"longitude": 5.870464520921814,
"heading": 43.183074951171875,
"latitude": 45.64535851937182
},
"timestamp": 1394788299897
}, {
"coords": {
"speed": 6.329115390777588,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 230,
"longitude": 5.8705368384107715,
"heading": 43.183074951171875,
"latitude": 45.645412389093565
},
"timestamp": 1394788300957
}, {
"coords": {
"speed": 6.581554889678955,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 229,
"longitude": 5.870600162706978,
"heading": 43.183074951171875,
"latitude": 45.64545955929912
},
"timestamp": 1394788302211
}, {
"coords": {
"speed": 6.605470180511475,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 230,
"longitude": 5.870657211053185,
"heading": 43.183074951171875,
"latitude": 45.64550205482465
},
"timestamp": 1394788302917
}, {
"coords": {
"speed": 6.623170375823975,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 229,
"longitude": 5.870713613403495,
"heading": 43.183074951171875,
"latitude": 45.64554406917767
},
"timestamp": 1394788303929
}, {
"coords": {
"speed": 6.645580768585205,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 229,
"longitude": 5.870773011629353,
"heading": 43.183074951171875,
"latitude": 45.64558831489415
},
"timestamp": 1394788304902
}, {
"coords": {
"speed": 6.663600444793701,
"accuracy": 5,
"altitudeAccuracy": 4,
"altitude": 229,
"longitude": 5.87083890910435,
"heading": 43.183074951171875,
"latitude": 45.645637401898654
},
"timestamp": 1394788306035
}, {
"coords": {
"speed": 6.664675712585449,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 229,
"longitude": 5.870890033475007,
"heading": 43.183074951171875,
"latitude": 45.64567548463474
},
"timestamp": 1394788307080
}, {
"coords": {
"speed": 6.6489081382751465,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 228,
"longitude": 5.870943189474929,
"heading": 43.183074951171875,
"latitude": 45.645715080460064
},
"timestamp": 1394788308211
}, {
"coords": {
"speed": 6.551820755004883,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 228,
"longitude": 5.871005613698799,
"heading": 43.183074951171875,
"latitude": 45.64576158014743
},
"timestamp": 1394788308904
}, {
"coords": {
"speed": 6.467689514160156,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 229,
"longitude": 5.871058030061249,
"heading": 43.183074951171875,
"latitude": 45.64580062501799
},
"timestamp": 1394788310161
}, {
"coords": {
"speed": 6.3997955322265625,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 229,
"longitude": 5.871062579208228,
"heading": 43.183074951171875,
"latitude": 45.64580401381376
},
"timestamp": 1394788310957
}, {
"coords": {
"speed": 5.799798488616943,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 230,
"longitude": 5.8710817079554545,
"heading": 43.183074951171875,
"latitude": 45.64581826277647
},
"timestamp": 1394788312036
}, {
"coords": {
"speed": 4.424941062927246,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 230,
"longitude": 5.871121835629857,
"heading": 175.4296875,
"latitude": 45.645828271551544
},
"timestamp": 1394788312951
}, {
"coords": {
"speed": 4.3496222496032715,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.8710026017471595,
"heading": 176.484375,
"latitude": 45.645752236602775
},
"timestamp": 1394788315227
}, {
"coords": {
"speed": 5.076380252838135,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 232,
"longitude": 5.871189236646398,
"heading": 176.1328125,
"latitude": 45.64553692475487
},
"timestamp": 1394788316970
}, {
"coords": {
"speed": 5.102786064147949,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.871200384577616,
"heading": 171.2109375,
"latitude": 45.64548554368843
},
"timestamp": 1394788317965
}, {
"coords": {
"speed": 4.705626964569092,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.871210945775612,
"heading": 164.1796875,
"latitude": 45.645453105723156
},
"timestamp": 1394788318956
}, {
"coords": {
"speed": 4.378190040588379,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 231,
"longitude": 5.87124749087344,
"heading": 126.2109375,
"latitude": 45.645433282522156
},
"timestamp": 1394788320197
}, {
"coords": {
"speed": 4.208680152893066,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 233,
"longitude": 5.871283365419014,
"heading": 125.859375,
"latitude": 45.6454103999265
},
"timestamp": 1394788320894
}, {
"coords": {
"speed": 4.072604179382324,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 233,
"longitude": 5.871314043184622,
"heading": 103.359375,
"latitude": 45.645410819021656
},
"timestamp": 1394788322169
}, {
"coords": {
"speed": 3.7680623531341553,
"accuracy": 5,
"altitudeAccuracy": 6,
"altitude": 234,
"longitude": 5.871355114510163,
"heading": 92.4609375,
"latitude": 45.645418111277415
},
"timestamp": 1394788322898
}, {
"coords": {
"speed": 3.537794351577759,
"accuracy": 10,
"altitudeAccuracy": 6,
"altitude": 234,
"longitude": 5.871393922721847,
"heading": 92.4609375,
"latitude": 45.64541693781097
},
"timestamp": 1394788323968
}, {
"coords": {
"speed": 3.3741507530212402,
"accuracy": 10,
"altitudeAccuracy": 6,
"altitude": 234,
"longitude": 5.8714455552453835,
"heading": 75.5859375,
"latitude": 45.645444011358215
},
"timestamp": 1394788324896
}, {
"coords": {
"speed": 3.3729660511016846,
"accuracy": 10,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.87150791660498,
"heading": 70.3125,
"latitude": 45.64547209073384
},
"timestamp": 1394788325971
}, {
"coords": {
"speed": 3.463883876800537,
"accuracy": 10,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.871554352348551,
"heading": 70.3125,
"latitude": 45.64548374157925
},
"timestamp": 1394788327122
}, {
"coords": {
"speed": 3.5247886180877686,
"accuracy": 10,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.871567260479435,
"heading": 67.1484375,
"latitude": 45.645496733529164
},
"timestamp": 1394788328164
}, {
"coords": {
"speed": 3.455146551132202,
"accuracy": 10,
"altitudeAccuracy": 6,
"altitude": 235,
"longitude": 5.871608583262071,
"heading": 68.90625,
"latitude": 45.64550293613751
},
"timestamp": 1394788328985
}, {
"coords": {
"speed": 3.382997989654541,
"accuracy": 10,
"altitudeAccuracy": 8,
"altitude": 236,
"longitude": 5.871640518313154,
"heading": 78.75,
"latitude": 45.6454965658911
},
"timestamp": 1394788329900
}, {
"coords": {
"speed": 3.242330312728882,
"accuracy": 10,
"altitudeAccuracy": 8,
"altitude": 236,
"longitude": 5.871667759498462,
"heading": 92.4609375,
"latitude": 45.64548562750746
},
"timestamp": 1394788331120
}, {
"coords": {
"speed": 3.074465274810791,
"accuracy": 10,
"altitudeAccuracy": 8,
"altitude": 236,
"longitude": 5.871691312646374,
"heading": 110.0390625,
"latitude": 45.645468402696444
},
"timestamp": 1394788332219
}];
@fredj
Copy link
Copy Markdown

fredj commented Mar 6, 2014

The heading value from ol.Geolocation is not implemented on every browser, you could use ol.DeviceOrientation instead

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment