potree
Version:
WebGL point cloud viewer - WORK IN PROGRESS
99 lines (97 loc) • 509 kB
JavaScript
// OpenLayers 3. See http://openlayers.org/
// License: https://raw.githubusercontent.com/openlayers/ol3/master/LICENSE.md
// Version: v3.11.2
(function (root, factory) {
if (typeof exports === "object") {
module.exports = factory();
} else if (typeof define === "function" && define.amd) {
define([], factory);
} else {
root.ol = factory();
}
}(this, function () {
var OPENLAYERS = {};
var l,aa=aa||{},ba=this;function ca(b){return void 0!==b}function u(b,c,d){b=b.split(".");d=d||ba;b[0]in d||!d.execScript||d.execScript("var "+b[0]);for(var e;b.length&&(e=b.shift());)!b.length&&ca(c)?d[e]=c:d[e]?d=d[e]:d=d[e]={}}function da(){}function ea(b){b.Yb=function(){return b.Ng?b.Ng:b.Ng=new b}}
function fa(b){var c=typeof b;if("object"==c)if(b){if(b instanceof Array)return"array";if(b instanceof Object)return c;var d=Object.prototype.toString.call(b);if("[object Window]"==d)return"object";if("[object Array]"==d||"number"==typeof b.length&&"undefined"!=typeof b.splice&&"undefined"!=typeof b.propertyIsEnumerable&&!b.propertyIsEnumerable("splice"))return"array";if("[object Function]"==d||"undefined"!=typeof b.call&&"undefined"!=typeof b.propertyIsEnumerable&&!b.propertyIsEnumerable("call"))return"function"}else return"null";
else if("function"==c&&"undefined"==typeof b.call)return"object";return c}function ga(b){return"array"==fa(b)}function ha(b){var c=fa(b);return"array"==c||"object"==c&&"number"==typeof b.length}function ia(b){return"string"==typeof b}function ja(b){return"number"==typeof b}function ka(b){return"function"==fa(b)}function ma(b){var c=typeof b;return"object"==c&&null!=b||"function"==c}function w(b){return b[na]||(b[na]=++oa)}var na="closure_uid_"+(1E9*Math.random()>>>0),oa=0;
function pa(b,c,d){return b.call.apply(b.bind,arguments)}function qa(b,c,d){if(!b)throw Error();if(2<arguments.length){var e=Array.prototype.slice.call(arguments,2);return function(){var d=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(d,e);return b.apply(c,d)}}return function(){return b.apply(c,arguments)}}function ra(b,c,d){ra=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?pa:qa;return ra.apply(null,arguments)}
function sa(b,c){var d=Array.prototype.slice.call(arguments,1);return function(){var c=d.slice();c.push.apply(c,arguments);return b.apply(this,c)}}var ta=Date.now||function(){return+new Date};function y(b,c){function d(){}d.prototype=c.prototype;b.da=c.prototype;b.prototype=new d;b.prototype.constructor=b;b.zp=function(b,d,g){for(var h=Array(arguments.length-2),k=2;k<arguments.length;k++)h[k-2]=arguments[k];return c.prototype[d].apply(b,h)}};var ua,va;function wa(){};function xa(b){if(Error.captureStackTrace)Error.captureStackTrace(this,xa);else{var c=Error().stack;c&&(this.stack=c)}b&&(this.message=String(b))}y(xa,Error);xa.prototype.name="CustomError";var ya;function Aa(b,c){var d=b.length-c.length;return 0<=d&&b.indexOf(c,d)==d}function Ba(b,c){for(var d=b.split("%s"),e="",f=Array.prototype.slice.call(arguments,1);f.length&&1<d.length;)e+=d.shift()+f.shift();return e+d.join("%s")}var Ca=String.prototype.trim?function(b){return b.trim()}:function(b){return b.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")};
function Da(b){if(!Fa.test(b))return b;-1!=b.indexOf("&")&&(b=b.replace(Ga,"&"));-1!=b.indexOf("<")&&(b=b.replace(Ha,"<"));-1!=b.indexOf(">")&&(b=b.replace(Ia,">"));-1!=b.indexOf('"')&&(b=b.replace(Ja,"""));-1!=b.indexOf("'")&&(b=b.replace(La,"'"));-1!=b.indexOf("\x00")&&(b=b.replace(Ma,"�"));return b}var Ga=/&/g,Ha=/</g,Ia=/>/g,Ja=/"/g,La=/'/g,Ma=/\x00/g,Fa=/[\x00&<>"']/,Na=String.prototype.repeat?function(b,c){return b.repeat(c)}:function(b,c){return Array(c+1).join(b)};
function Oa(b){b=ca(void 0)?b.toFixed(void 0):String(b);var c=b.indexOf(".");-1==c&&(c=b.length);return Na("0",Math.max(0,2-c))+b}
function Pa(b,c){for(var d=0,e=Ca(String(b)).split("."),f=Ca(String(c)).split("."),g=Math.max(e.length,f.length),h=0;0==d&&h<g;h++){var k=e[h]||"",m=f[h]||"",n=RegExp("(\\d*)(\\D*)","g"),p=RegExp("(\\d*)(\\D*)","g");do{var q=n.exec(k)||["","",""],r=p.exec(m)||["","",""];if(0==q[0].length&&0==r[0].length)break;d=Qa(0==q[1].length?0:parseInt(q[1],10),0==r[1].length?0:parseInt(r[1],10))||Qa(0==q[2].length,0==r[2].length)||Qa(q[2],r[2])}while(0==d)}return d}function Qa(b,c){return b<c?-1:b>c?1:0};function Sa(b,c,d){return Math.min(Math.max(b,c),d)}var Ta=function(){var b;"cosh"in Math?b=Math.cosh:b=function(b){b=Math.exp(b);return(b+1/b)/2};return b}();function Ua(b,c,d,e,f,g){var h=f-d,k=g-e;if(0!==h||0!==k){var m=((b-d)*h+(c-e)*k)/(h*h+k*k);1<m?(d=f,e=g):0<m&&(d+=h*m,e+=k*m)}return Va(b,c,d,e)}function Va(b,c,d,e){b=d-b;c=e-c;return b*b+c*c}function Wa(b){return b*Math.PI/180};function Xa(b){return function(c){if(c)return[Sa(c[0],b[0],b[2]),Sa(c[1],b[1],b[3])]}}function Ya(b){return b};var Za=Array.prototype;function $a(b,c){return Za.indexOf.call(b,c,void 0)}function ab(b,c){Za.forEach.call(b,c,void 0)}function bb(b,c){return Za.filter.call(b,c,void 0)}function db(b,c){return Za.map.call(b,c,void 0)}function eb(b,c){return Za.some.call(b,c,void 0)}function fb(b,c){var d=gb(b,c,void 0);return 0>d?null:ia(b)?b.charAt(d):b[d]}function gb(b,c,d){for(var e=b.length,f=ia(b)?b.split(""):b,g=0;g<e;g++)if(g in f&&c.call(d,f[g],g,b))return g;return-1}
function hb(b,c){var d=$a(b,c),e;(e=0<=d)&&Za.splice.call(b,d,1);return e}function ib(b){return Za.concat.apply(Za,arguments)}function jb(b){var c=b.length;if(0<c){for(var d=Array(c),e=0;e<c;e++)d[e]=b[e];return d}return[]}function lb(b,c){for(var d=1;d<arguments.length;d++){var e=arguments[d];if(ha(e)){var f=b.length||0,g=e.length||0;b.length=f+g;for(var h=0;h<g;h++)b[f+h]=e[h]}else b.push(e)}}function mb(b,c,d,e){Za.splice.apply(b,nb(arguments,1))}
function nb(b,c,d){return 2>=arguments.length?Za.slice.call(b,c):Za.slice.call(b,c,d)}function ob(b,c){b.sort(c||pb)}function qb(b){for(var c=rb,d=0;d<b.length;d++)b[d]={index:d,value:b[d]};var e=c||pb;ob(b,function(b,c){return e(b.value,c.value)||b.index-c.index});for(d=0;d<b.length;d++)b[d]=b[d].value}function sb(b,c){if(!ha(b)||!ha(c)||b.length!=c.length)return!1;for(var d=b.length,e=tb,f=0;f<d;f++)if(!e(b[f],c[f]))return!1;return!0}function pb(b,c){return b>c?1:b<c?-1:0}
function tb(b,c){return b===c}function ub(b){for(var c=[],d=0;d<arguments.length;d++){var e=arguments[d];if(ga(e))for(var f=0;f<e.length;f+=8192)for(var g=nb(e,f,f+8192),g=ub.apply(null,g),h=0;h<g.length;h++)c.push(g[h]);else c.push(e)}return c};function vb(b,c){return 0<=b.indexOf(c)}function wb(b,c,d){var e=b.length;if(b[0]<=c)return 0;if(!(c<=b[e-1]))if(0<d)for(d=1;d<e;++d){if(b[d]<c)return d-1}else if(0>d)for(d=1;d<e;++d){if(b[d]<=c)return d}else for(d=1;d<e;++d){if(b[d]==c)return d;if(b[d]<c)return b[d-1]-c<c-b[d]?d-1:d}return e-1};function xb(b){return function(c,d,e){if(void 0!==c)return c=wb(b,c,e),c=Sa(c+d,0,b.length-1),b[c]}}function yb(b,c,d){return function(e,f,g){if(void 0!==e)return e=Math.max(Math.floor(Math.log(c/e)/Math.log(b)+(0<g?0:0>g?1:.5))+f,0),void 0!==d&&(e=Math.min(e,d)),c/Math.pow(b,e)}};function zb(b){if(void 0!==b)return 0}function Ab(b,c){if(void 0!==b)return b+c}function Bb(b){var c=2*Math.PI/b;return function(b,e){if(void 0!==b)return b=Math.floor((b+e)/c+.5)*c}}function Cb(){var b=Wa(5);return function(c,d){if(void 0!==c)return Math.abs(c+d)<=b?0:c+d}};function Db(b,c,d){this.center=b;this.resolution=c;this.rotation=d};var Eb;a:{var Fb=ba.navigator;if(Fb){var Gb=Fb.userAgent;if(Gb){Eb=Gb;break a}}Eb=""}function Hb(b){return-1!=Eb.indexOf(b)};function Ib(b,c,d){for(var e in b)c.call(d,b[e],e,b)}function Jb(b,c){for(var d in b)if(c.call(void 0,b[d],d,b))return!0;return!1}function Kb(b){var c=0,d;for(d in b)c++;return c}function Lb(b){var c=[],d=0,e;for(e in b)c[d++]=b[e];return c}function Mb(b){var c=[],d=0,e;for(e in b)c[d++]=e;return c}function Nb(b,c){return c in b}function Ob(b,c){for(var d in b)if(b[d]==c)return!0;return!1}function Pb(b,c){for(var d in b)if(c.call(void 0,b[d],d,b))return d}
function Qb(b){for(var c in b)return!1;return!0}function Rb(b){for(var c in b)delete b[c]}function Sb(b,c,d){return c in b?b[c]:d}function Tb(b,c){var d=[];return c in b?b[c]:b[c]=d}function Ub(b){var c={},d;for(d in b)c[d]=b[d];return c}function Vb(b){var c=fa(b);if("object"==c||"array"==c){if(ka(b.clone))return b.clone();var c="array"==c?[]:{},d;for(d in b)c[d]=Vb(b[d]);return c}return b}var Wb="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
function Xb(b,c){for(var d,e,f=1;f<arguments.length;f++){e=arguments[f];for(d in e)b[d]=e[d];for(var g=0;g<Wb.length;g++)d=Wb[g],Object.prototype.hasOwnProperty.call(e,d)&&(b[d]=e[d])}};var Yb=Hb("Opera")||Hb("OPR"),Zb=Hb("Trident")||Hb("MSIE"),$b=Hb("Edge"),ac=Hb("Gecko")&&!(-1!=Eb.toLowerCase().indexOf("webkit")&&!Hb("Edge"))&&!(Hb("Trident")||Hb("MSIE"))&&!Hb("Edge"),bc=-1!=Eb.toLowerCase().indexOf("webkit")&&!Hb("Edge"),cc=Hb("Macintosh"),dc=Hb("Windows"),ec=Hb("Linux")||Hb("CrOS");function fc(){var b=Eb;if(ac)return/rv\:([^\);]+)(\)|;)/.exec(b);if($b)return/Edge\/([\d\.]+)/.exec(b);if(Zb)return/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/.exec(b);if(bc)return/WebKit\/(\S+)/.exec(b)}
function gc(){var b=ba.document;return b?b.documentMode:void 0}var hc=function(){if(Yb&&ba.opera){var b;var c=ba.opera.version;try{b=c()}catch(d){b=c}return b}b="";(c=fc())&&(b=c?c[1]:"");return Zb&&(c=gc(),c>parseFloat(b))?String(c):b}(),ic={};function jc(b){return ic[b]||(ic[b]=0<=Pa(hc,b))}var kc=ba.document,lc=kc&&Zb?gc()||("CSS1Compat"==kc.compatMode?parseInt(hc,10):5):void 0;var mc=!Zb||9<=lc,nc=!Zb||9<=lc,oc=Zb&&!jc("9");!bc||jc("528");ac&&jc("1.9b")||Zb&&jc("8")||Yb&&jc("9.5")||bc&&jc("528");ac&&!jc("8")||Zb&&jc("9");function pc(){0!=qc&&(rc[w(this)]=this);this.ia=this.ia;this.oa=this.oa}var qc=0,rc={};pc.prototype.ia=!1;pc.prototype.Ec=function(){if(!this.ia&&(this.ia=!0,this.X(),0!=qc)){var b=w(this);delete rc[b]}};function tc(b,c){var d=sa(uc,c);b.ia?d.call(void 0):(b.oa||(b.oa=[]),b.oa.push(ca(void 0)?ra(d,void 0):d))}pc.prototype.X=function(){if(this.oa)for(;this.oa.length;)this.oa.shift()()};function uc(b){b&&"function"==typeof b.Ec&&b.Ec()};function vc(b,c){this.type=b;this.g=this.target=c;this.i=!1;this.Qh=!0}vc.prototype.b=function(){this.i=!0};vc.prototype.preventDefault=function(){this.Qh=!1};function wc(b){b.b()}function xc(b){b.preventDefault()};var yc=Zb?"focusout":"DOMFocusOut";function zc(b){zc[" "](b);return b}zc[" "]=da;function Ac(b,c){vc.call(this,b?b.type:"");this.relatedTarget=this.g=this.target=null;this.u=this.j=this.button=this.screenY=this.screenX=this.clientY=this.clientX=this.offsetY=this.offsetX=0;this.A=this.f=this.c=this.B=!1;this.state=null;this.l=!1;this.a=null;if(b){var d=this.type=b.type,e=b.changedTouches?b.changedTouches[0]:null;this.target=b.target||b.srcElement;this.g=c;var f=b.relatedTarget;if(f){if(ac){var g;a:{try{zc(f.nodeName);g=!0;break a}catch(h){}g=!1}g||(f=null)}}else"mouseover"==d?
f=b.fromElement:"mouseout"==d&&(f=b.toElement);this.relatedTarget=f;null===e?(this.offsetX=bc||void 0!==b.offsetX?b.offsetX:b.layerX,this.offsetY=bc||void 0!==b.offsetY?b.offsetY:b.layerY,this.clientX=void 0!==b.clientX?b.clientX:b.pageX,this.clientY=void 0!==b.clientY?b.clientY:b.pageY,this.screenX=b.screenX||0,this.screenY=b.screenY||0):(this.clientX=void 0!==e.clientX?e.clientX:e.pageX,this.clientY=void 0!==e.clientY?e.clientY:e.pageY,this.screenX=e.screenX||0,this.screenY=e.screenY||0);this.button=
b.button;this.j=b.keyCode||0;this.u=b.charCode||("keypress"==d?b.keyCode:0);this.B=b.ctrlKey;this.c=b.altKey;this.f=b.shiftKey;this.A=b.metaKey;this.l=cc?b.metaKey:b.ctrlKey;this.state=b.state;this.a=b;b.defaultPrevented&&this.preventDefault()}}y(Ac,vc);var Bc=[1,4,2];function Cc(b){return(mc?0==b.a.button:"click"==b.type?!0:!!(b.a.button&Bc[0]))&&!(bc&&cc&&b.B)}Ac.prototype.b=function(){Ac.da.b.call(this);this.a.stopPropagation?this.a.stopPropagation():this.a.cancelBubble=!0};
Ac.prototype.preventDefault=function(){Ac.da.preventDefault.call(this);var b=this.a;if(b.preventDefault)b.preventDefault();else if(b.returnValue=!1,oc)try{if(b.ctrlKey||112<=b.keyCode&&123>=b.keyCode)b.keyCode=-1}catch(c){}};var Dc="closure_listenable_"+(1E6*Math.random()|0);function Ec(b){return!(!b||!b[Dc])}var Fc=0;function Gc(b,c,d,e,f){this.listener=b;this.a=null;this.src=c;this.type=d;this.ad=!!e;this.je=f;this.key=++Fc;this.Tc=this.Ud=!1}function Hc(b){b.Tc=!0;b.listener=null;b.a=null;b.src=null;b.je=null};function Ic(b){this.src=b;this.a={};this.c=0}Ic.prototype.add=function(b,c,d,e,f){var g=b.toString();b=this.a[g];b||(b=this.a[g]=[],this.c++);var h=Jc(b,c,e,f);-1<h?(c=b[h],d||(c.Ud=!1)):(c=new Gc(c,this.src,g,!!e,f),c.Ud=d,b.push(c));return c};Ic.prototype.remove=function(b,c,d,e){b=b.toString();if(!(b in this.a))return!1;var f=this.a[b];c=Jc(f,c,d,e);return-1<c?(Hc(f[c]),Za.splice.call(f,c,1),0==f.length&&(delete this.a[b],this.c--),!0):!1};
function Kc(b,c){var d=c.type;if(!(d in b.a))return!1;var e=hb(b.a[d],c);e&&(Hc(c),0==b.a[d].length&&(delete b.a[d],b.c--));return e}function Lc(b,c,d,e,f){b=b.a[c.toString()];c=-1;b&&(c=Jc(b,d,e,f));return-1<c?b[c]:null}function Mc(b,c,d){var e=ca(c),f=e?c.toString():"",g=ca(d);return Jb(b.a,function(b){for(var c=0;c<b.length;++c)if(!(e&&b[c].type!=f||g&&b[c].ad!=d))return!0;return!1})}
function Jc(b,c,d,e){for(var f=0;f<b.length;++f){var g=b[f];if(!g.Tc&&g.listener==c&&g.ad==!!d&&g.je==e)return f}return-1};var Nc="closure_lm_"+(1E6*Math.random()|0),Oc={},Pc=0;function C(b,c,d,e,f){if(ga(c)){for(var g=0;g<c.length;g++)C(b,c[g],d,e,f);return null}d=Qc(d);return Ec(b)?b.Qa(c,d,e,f):Sc(b,c,d,!1,e,f)}
function Sc(b,c,d,e,f,g){if(!c)throw Error("Invalid event type");var h=!!f,k=Tc(b);k||(b[Nc]=k=new Ic(b));d=k.add(c,d,e,f,g);if(d.a)return d;e=Uc();d.a=e;e.src=b;e.listener=d;if(b.addEventListener)b.addEventListener(c.toString(),e,h);else if(b.attachEvent)b.attachEvent(Vc(c.toString()),e);else throw Error("addEventListener and attachEvent are unavailable.");Pc++;return d}
function Uc(){var b=Wc,c=nc?function(d){return b.call(c.src,c.listener,d)}:function(d){d=b.call(c.src,c.listener,d);if(!d)return d};return c}function Xc(b,c,d,e,f){if(ga(c)){for(var g=0;g<c.length;g++)Xc(b,c[g],d,e,f);return null}d=Qc(d);return Ec(b)?b.zb.add(String(c),d,!0,e,f):Sc(b,c,d,!0,e,f)}function Yc(b,c,d,e,f){if(ga(c))for(var g=0;g<c.length;g++)Yc(b,c[g],d,e,f);else d=Qc(d),Ec(b)?b.Vf(c,d,e,f):b&&(b=Tc(b))&&(c=Lc(b,c,d,!!e,f))&&Zc(c)}
function Zc(b){if(ja(b)||!b||b.Tc)return!1;var c=b.src;if(Ec(c))return Kc(c.zb,b);var d=b.type,e=b.a;c.removeEventListener?c.removeEventListener(d,e,b.ad):c.detachEvent&&c.detachEvent(Vc(d),e);Pc--;(d=Tc(c))?(Kc(d,b),0==d.c&&(d.src=null,c[Nc]=null)):Hc(b);return!0}function Vc(b){return b in Oc?Oc[b]:Oc[b]="on"+b}function $c(b,c,d,e){var f=!0;if(b=Tc(b))if(c=b.a[c.toString()])for(c=c.concat(),b=0;b<c.length;b++){var g=c[b];g&&g.ad==d&&!g.Tc&&(g=ad(g,e),f=f&&!1!==g)}return f}
function ad(b,c){var d=b.listener,e=b.je||b.src;b.Ud&&Zc(b);return d.call(e,c)}
function Wc(b,c){if(b.Tc)return!0;if(!nc){var d;if(!(d=c))a:{d=["window","event"];for(var e=ba,f;f=d.shift();)if(null!=e[f])e=e[f];else{d=null;break a}d=e}f=d;d=new Ac(f,this);e=!0;if(!(0>f.keyCode||void 0!=f.returnValue)){a:{var g=!1;if(0==f.keyCode)try{f.keyCode=-1;break a}catch(m){g=!0}if(g||void 0==f.returnValue)f.returnValue=!0}f=[];for(g=d.g;g;g=g.parentNode)f.push(g);for(var g=b.type,h=f.length-1;!d.i&&0<=h;h--){d.g=f[h];var k=$c(f[h],g,!0,d),e=e&&k}for(h=0;!d.i&&h<f.length;h++)d.g=f[h],k=
$c(f[h],g,!1,d),e=e&&k}return e}return ad(b,new Ac(c,this))}function Tc(b){b=b[Nc];return b instanceof Ic?b:null}var bd="__closure_events_fn_"+(1E9*Math.random()>>>0);function Qc(b){if(ka(b))return b;b[bd]||(b[bd]=function(c){return b.handleEvent(c)});return b[bd]};function cd(){pc.call(this);this.zb=new Ic(this);this.Nd=this;this.eb=null}y(cd,pc);cd.prototype[Dc]=!0;l=cd.prototype;l.addEventListener=function(b,c,d,e){C(this,b,c,d,e)};l.removeEventListener=function(b,c,d,e){Yc(this,b,c,d,e)};
l.o=function(b){var c,d=this.eb;if(d)for(c=[];d;d=d.eb)c.push(d);var d=this.Nd,e=b.type||b;if(ia(b))b=new vc(b,d);else if(b instanceof vc)b.target=b.target||d;else{var f=b;b=new vc(e,d);Xb(b,f)}var f=!0,g;if(c)for(var h=c.length-1;!b.i&&0<=h;h--)g=b.g=c[h],f=dd(g,e,!0,b)&&f;b.i||(g=b.g=d,f=dd(g,e,!0,b)&&f,b.i||(f=dd(g,e,!1,b)&&f));if(c)for(h=0;!b.i&&h<c.length;h++)g=b.g=c[h],f=dd(g,e,!1,b)&&f;return f};
l.X=function(){cd.da.X.call(this);if(this.zb){var b=this.zb,c=0,d;for(d in b.a){for(var e=b.a[d],f=0;f<e.length;f++)++c,Hc(e[f]);delete b.a[d];b.c--}}this.eb=null};l.Qa=function(b,c,d,e){return this.zb.add(String(b),c,!1,d,e)};l.Vf=function(b,c,d,e){return this.zb.remove(String(b),c,d,e)};
function dd(b,c,d,e){c=b.zb.a[String(c)];if(!c)return!0;c=c.concat();for(var f=!0,g=0;g<c.length;++g){var h=c[g];if(h&&!h.Tc&&h.ad==d){var k=h.listener,m=h.je||h.src;h.Ud&&Kc(b.zb,h);f=!1!==k.call(m,e)&&f}}return f&&0!=e.Qh}function ed(b,c,d){return Mc(b.zb,ca(c)?String(c):void 0,d)};function fd(){cd.call(this);this.c=0}y(fd,cd);function gd(b){Zc(b)}l=fd.prototype;l.s=function(){++this.c;this.o("change")};l.L=function(){return this.c};l.H=function(b,c,d){return C(this,b,c,!1,d)};l.M=function(b,c,d){return Xc(this,b,c,!1,d)};l.K=function(b,c,d){Yc(this,b,c,!1,d)};l.N=gd;function hd(b,c,d){vc.call(this,b);this.key=c;this.oldValue=d}y(hd,vc);function id(b){fd.call(this);w(this);this.B={};void 0!==b&&this.I(b)}y(id,fd);var jd={};function kd(b){return jd.hasOwnProperty(b)?jd[b]:jd[b]="change:"+b}l=id.prototype;l.get=function(b){var c;this.B.hasOwnProperty(b)&&(c=this.B[b]);return c};l.O=function(){return Object.keys(this.B)};l.P=function(){var b={},c;for(c in this.B)b[c]=this.B[c];return b};
function ld(b,c,d){var e;e=kd(c);b.o(new hd(e,c,d));b.o(new hd("propertychange",c,d))}l.set=function(b,c,d){d?this.B[b]=c:(d=this.B[b],this.B[b]=c,ld(this,b,d))};l.I=function(b,c){for(var d in b)this.set(d,b[d],c)};l.R=function(b,c){if(b in this.B){var d=this.B[b];delete this.B[b];c||ld(this,b,d)}};function md(b,c,d){void 0===d&&(d=[0,0]);d[0]=b[0]+2*c;d[1]=b[1]+2*c;return d}function nd(b,c,d){void 0===d&&(d=[0,0]);d[0]=b[0]*c+.5|0;d[1]=b[1]*c+.5|0;return d}function od(b,c){if(ga(b))return b;void 0===c?c=[b,b]:(c[0]=b,c[1]=b);return c};function pd(b,c){var d=b%c;return 0>d*c?d+c:d}function qd(b,c,d){return b+d*(c-b)};function rd(b,c){b[0]+=c[0];b[1]+=c[1];return b}function sd(b,c){var d=b[0],e=b[1],f=c[0],g=c[1],h=f[0],f=f[1],k=g[0],g=g[1],m=k-h,n=g-f,d=0===m&&0===n?0:(m*(d-h)+n*(e-f))/(m*m+n*n||0);0>=d||(1<=d?(h=k,f=g):(h+=d*m,f+=d*n));return[h,f]}function td(b,c){var d=pd(b+180,360)-180,e=Math.abs(Math.round(3600*d));return Math.floor(e/3600)+"\u00b0 "+Oa(Math.floor(e/60%60))+"\u2032 "+Oa(Math.floor(e%60))+"\u2033 "+c.charAt(0>d?1:0)}
function ud(b,c,d){return b?c.replace("{x}",b[0].toFixed(d)).replace("{y}",b[1].toFixed(d)):""}function vd(b,c){for(var d=!0,e=b.length-1;0<=e;--e)if(b[e]!=c[e]){d=!1;break}return d}function wd(b,c){var d=Math.cos(c),e=Math.sin(c),f=b[1]*d+b[0]*e;b[0]=b[0]*d-b[1]*e;b[1]=f;return b}function xd(b,c){var d=b[0]-c[0],e=b[1]-c[1];return d*d+e*e}function yd(b,c){return xd(b,sd(b,c))}function zd(b,c){return ud(b,"{x}, {y}",c)};function Ad(b){this.length=b.length||b;for(var c=0;c<this.length;c++)this[c]=b[c]||0}Ad.prototype.a=4;Ad.prototype.set=function(b,c){c=c||0;for(var d=0;d<b.length&&c+d<this.length;d++)this[c+d]=b[d]};Ad.prototype.toString=Array.prototype.join;"undefined"==typeof Float32Array&&(Ad.BYTES_PER_ELEMENT=4,Ad.prototype.BYTES_PER_ELEMENT=Ad.prototype.a,Ad.prototype.set=Ad.prototype.set,Ad.prototype.toString=Ad.prototype.toString,u("Float32Array",Ad,void 0));function Bd(b){this.length=b.length||b;for(var c=0;c<this.length;c++)this[c]=b[c]||0}Bd.prototype.a=8;Bd.prototype.set=function(b,c){c=c||0;for(var d=0;d<b.length&&c+d<this.length;d++)this[c+d]=b[d]};Bd.prototype.toString=Array.prototype.join;if("undefined"==typeof Float64Array){try{Bd.BYTES_PER_ELEMENT=8}catch(b){}Bd.prototype.BYTES_PER_ELEMENT=Bd.prototype.a;Bd.prototype.set=Bd.prototype.set;Bd.prototype.toString=Bd.prototype.toString;u("Float64Array",Bd,void 0)};function Cd(b,c,d,e,f){b[0]=c;b[1]=d;b[2]=e;b[3]=f};function Dd(){var b=Array(16);Ed(b,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);return b}function Fd(){var b=Array(16);Ed(b,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);return b}function Ed(b,c,d,e,f,g,h,k,m,n,p,q,r,t,x,z,B){b[0]=c;b[1]=d;b[2]=e;b[3]=f;b[4]=g;b[5]=h;b[6]=k;b[7]=m;b[8]=n;b[9]=p;b[10]=q;b[11]=r;b[12]=t;b[13]=x;b[14]=z;b[15]=B}
function Gd(b,c){b[0]=c[0];b[1]=c[1];b[2]=c[2];b[3]=c[3];b[4]=c[4];b[5]=c[5];b[6]=c[6];b[7]=c[7];b[8]=c[8];b[9]=c[9];b[10]=c[10];b[11]=c[11];b[12]=c[12];b[13]=c[13];b[14]=c[14];b[15]=c[15]}function Hd(b){b[0]=1;b[1]=0;b[2]=0;b[3]=0;b[4]=0;b[5]=1;b[6]=0;b[7]=0;b[8]=0;b[9]=0;b[10]=1;b[11]=0;b[12]=0;b[13]=0;b[14]=0;b[15]=1}
function Id(b,c,d){var e=b[0],f=b[1],g=b[2],h=b[3],k=b[4],m=b[5],n=b[6],p=b[7],q=b[8],r=b[9],t=b[10],x=b[11],z=b[12],B=b[13],A=b[14];b=b[15];var v=c[0],O=c[1],K=c[2],I=c[3],G=c[4],la=c[5],Ea=c[6],L=c[7],za=c[8],Ra=c[9],Ka=c[10],kb=c[11],cb=c[12],Rc=c[13],sc=c[14];c=c[15];d[0]=e*v+k*O+q*K+z*I;d[1]=f*v+m*O+r*K+B*I;d[2]=g*v+n*O+t*K+A*I;d[3]=h*v+p*O+x*K+b*I;d[4]=e*G+k*la+q*Ea+z*L;d[5]=f*G+m*la+r*Ea+B*L;d[6]=g*G+n*la+t*Ea+A*L;d[7]=h*G+p*la+x*Ea+b*L;d[8]=e*za+k*Ra+q*Ka+z*kb;d[9]=f*za+m*Ra+r*Ka+B*kb;d[10]=
g*za+n*Ra+t*Ka+A*kb;d[11]=h*za+p*Ra+x*Ka+b*kb;d[12]=e*cb+k*Rc+q*sc+z*c;d[13]=f*cb+m*Rc+r*sc+B*c;d[14]=g*cb+n*Rc+t*sc+A*c;d[15]=h*cb+p*Rc+x*sc+b*c}
function Jd(b,c){var d=b[0],e=b[1],f=b[2],g=b[3],h=b[4],k=b[5],m=b[6],n=b[7],p=b[8],q=b[9],r=b[10],t=b[11],x=b[12],z=b[13],B=b[14],A=b[15],v=d*k-e*h,O=d*m-f*h,K=d*n-g*h,I=e*m-f*k,G=e*n-g*k,la=f*n-g*m,Ea=p*z-q*x,L=p*B-r*x,za=p*A-t*x,Ra=q*B-r*z,Ka=q*A-t*z,kb=r*A-t*B,cb=v*kb-O*Ka+K*Ra+I*za-G*L+la*Ea;0!=cb&&(cb=1/cb,c[0]=(k*kb-m*Ka+n*Ra)*cb,c[1]=(-e*kb+f*Ka-g*Ra)*cb,c[2]=(z*la-B*G+A*I)*cb,c[3]=(-q*la+r*G-t*I)*cb,c[4]=(-h*kb+m*za-n*L)*cb,c[5]=(d*kb-f*za+g*L)*cb,c[6]=(-x*la+B*K-A*O)*cb,c[7]=(p*la-r*K+t*
O)*cb,c[8]=(h*Ka-k*za+n*Ea)*cb,c[9]=(-d*Ka+e*za-g*Ea)*cb,c[10]=(x*G-z*K+A*v)*cb,c[11]=(-p*G+q*K-t*v)*cb,c[12]=(-h*Ra+k*L-m*Ea)*cb,c[13]=(d*Ra-e*L+f*Ea)*cb,c[14]=(-x*I+z*O-B*v)*cb,c[15]=(p*I-q*O+r*v)*cb)}function Kd(b,c,d){var e=b[1]*c+b[5]*d+0*b[9]+b[13],f=b[2]*c+b[6]*d+0*b[10]+b[14],g=b[3]*c+b[7]*d+0*b[11]+b[15];b[12]=b[0]*c+b[4]*d+0*b[8]+b[12];b[13]=e;b[14]=f;b[15]=g}
function Ld(b,c,d){Ed(b,b[0]*c,b[1]*c,b[2]*c,b[3]*c,b[4]*d,b[5]*d,b[6]*d,b[7]*d,1*b[8],1*b[9],1*b[10],1*b[11],b[12],b[13],b[14],b[15])}function Md(b,c){var d=b[0],e=b[1],f=b[2],g=b[3],h=b[4],k=b[5],m=b[6],n=b[7],p=Math.cos(c),q=Math.sin(c);b[0]=d*p+h*q;b[1]=e*p+k*q;b[2]=f*p+m*q;b[3]=g*p+n*q;b[4]=d*-q+h*p;b[5]=e*-q+k*p;b[6]=f*-q+m*p;b[7]=g*-q+n*p}new Float64Array(3);new Float64Array(3);new Float64Array(4);new Float64Array(4);new Float64Array(4);new Float64Array(16);function Nd(b){for(var c=Od(),d=0,e=b.length;d<e;++d)Pd(c,b[d]);return c}function Qd(b,c,d){var e=Math.min.apply(null,b),f=Math.min.apply(null,c);b=Math.max.apply(null,b);c=Math.max.apply(null,c);return Rd(e,f,b,c,d)}function Sd(b,c,d){return d?(d[0]=b[0]-c,d[1]=b[1]-c,d[2]=b[2]+c,d[3]=b[3]+c,d):[b[0]-c,b[1]-c,b[2]+c,b[3]+c]}function Td(b,c){return c?(c[0]=b[0],c[1]=b[1],c[2]=b[2],c[3]=b[3],c):b.slice()}
function Ud(b,c,d){c=c<b[0]?b[0]-c:b[2]<c?c-b[2]:0;b=d<b[1]?b[1]-d:b[3]<d?d-b[3]:0;return c*c+b*b}function Vd(b,c){return Wd(b,c[0],c[1])}function Xd(b,c){return b[0]<=c[0]&&c[2]<=b[2]&&b[1]<=c[1]&&c[3]<=b[3]}function Wd(b,c,d){return b[0]<=c&&c<=b[2]&&b[1]<=d&&d<=b[3]}function Yd(b,c){var d=b[1],e=b[2],f=b[3],g=c[0],h=c[1],k=0;g<b[0]?k=k|16:g>e&&(k=k|4);h<d?k|=8:h>f&&(k|=2);0===k&&(k=1);return k}function Od(){return[Infinity,Infinity,-Infinity,-Infinity]}
function Rd(b,c,d,e,f){return f?(f[0]=b,f[1]=c,f[2]=d,f[3]=e,f):[b,c,d,e]}function Zd(b,c){var d=b[0],e=b[1];return Rd(d,e,d,e,c)}function $d(b,c,d,e,f){f=Rd(Infinity,Infinity,-Infinity,-Infinity,f);return ae(f,b,c,d,e)}function be(b,c){return b[0]==c[0]&&b[2]==c[2]&&b[1]==c[1]&&b[3]==c[3]}function ce(b,c){c[0]<b[0]&&(b[0]=c[0]);c[2]>b[2]&&(b[2]=c[2]);c[1]<b[1]&&(b[1]=c[1]);c[3]>b[3]&&(b[3]=c[3]);return b}
function Pd(b,c){c[0]<b[0]&&(b[0]=c[0]);c[0]>b[2]&&(b[2]=c[0]);c[1]<b[1]&&(b[1]=c[1]);c[1]>b[3]&&(b[3]=c[1])}function ae(b,c,d,e,f){for(;d<e;d+=f){var g=b,h=c[d],k=c[d+1];g[0]=Math.min(g[0],h);g[1]=Math.min(g[1],k);g[2]=Math.max(g[2],h);g[3]=Math.max(g[3],k)}return b}function de(b,c,d){var e;return(e=c.call(d,ee(b)))||(e=c.call(d,fe(b)))||(e=c.call(d,ge(b)))?e:(e=c.call(d,he(b)))?e:!1}function ie(b){var c=0;je(b)||(c=ke(b)*le(b));return c}function ee(b){return[b[0],b[1]]}
function fe(b){return[b[2],b[1]]}function me(b){return[(b[0]+b[2])/2,(b[1]+b[3])/2]}function ne(b,c,d,e){var f=c*e[0]/2;e=c*e[1]/2;c=Math.cos(d);d=Math.sin(d);f=[-f,-f,f,f];e=[-e,e,-e,e];var g,h,k;for(g=0;4>g;++g)h=f[g],k=e[g],f[g]=b[0]+h*c-k*d,e[g]=b[1]+h*d+k*c;return Qd(f,e,void 0)}function le(b){return b[3]-b[1]}function oe(b,c,d){d=d?d:Od();pe(b,c)&&(d[0]=b[0]>c[0]?b[0]:c[0],d[1]=b[1]>c[1]?b[1]:c[1],d[2]=b[2]<c[2]?b[2]:c[2],d[3]=b[3]<c[3]?b[3]:c[3]);return d}function he(b){return[b[0],b[3]]}
function ge(b){return[b[2],b[3]]}function ke(b){return b[2]-b[0]}function pe(b,c){return b[0]<=c[2]&&b[2]>=c[0]&&b[1]<=c[3]&&b[3]>=c[1]}function je(b){return b[2]<b[0]||b[3]<b[1]}function qe(b,c){var d=(b[2]-b[0])/2*(c-1),e=(b[3]-b[1])/2*(c-1);b[0]-=d;b[2]+=d;b[1]-=e;b[3]+=e}function re(b,c,d){b=[b[0],b[1],b[0],b[3],b[2],b[1],b[2],b[3]];c(b,b,2);return Qd([b[0],b[2],b[4],b[6]],[b[1],b[3],b[5],b[7]],d)};function se(b){return function(){return b}}var te=se(!1),ue=se(!0),ve=se(null);function we(b){return b}function xe(b){var c;c=c||0;return function(){return b.apply(this,Array.prototype.slice.call(arguments,0,c))}}function ye(b){var c=arguments,d=c.length;return function(){for(var b,f=0;f<d;f++)b=c[f].apply(this,arguments);return b}}function ze(b){var c=arguments,d=c.length;return function(){for(var b=0;b<d;b++)if(!c[b].apply(this,arguments))return!1;return!0}};/*
Latitude/longitude spherical geodesy formulae taken from
http://www.movable-type.co.uk/scripts/latlong.html
Licensed under CC-BY-3.0.
*/
function Ae(b){this.radius=b}Ae.prototype.c=function(b){for(var c=0,d=b.length,e=b[d-1][0],f=b[d-1][1],g=0;g<d;g++)var h=b[g][0],k=b[g][1],c=c+Wa(h-e)*(2+Math.sin(Wa(f))+Math.sin(Wa(k))),e=h,f=k;return c*this.radius*this.radius/2};Ae.prototype.a=function(b,c){var d=Wa(b[1]),e=Wa(c[1]),f=(e-d)/2,g=Wa(c[0]-b[0])/2,d=Math.sin(f)*Math.sin(f)+Math.sin(g)*Math.sin(g)*Math.cos(d)*Math.cos(e);return 2*this.radius*Math.atan2(Math.sqrt(d),Math.sqrt(1-d))};
Ae.prototype.offset=function(b,c,d){var e=Wa(b[1]);c/=this.radius;var f=Math.asin(Math.sin(e)*Math.cos(c)+Math.cos(e)*Math.sin(c)*Math.cos(d));return[180*(Wa(b[0])+Math.atan2(Math.sin(d)*Math.sin(c)*Math.cos(e),Math.cos(c)-Math.sin(e)*Math.sin(f)))/Math.PI,180*f/Math.PI]};var Be=new Ae(6370997);var Ce={};Ce.degrees=2*Math.PI*Be.radius/360;Ce.ft=.3048;Ce.m=1;Ce["us-ft"]=1200/3937;
function De(b){this.a=b.code;this.c=b.units;this.j=void 0!==b.extent?b.extent:null;this.i=void 0!==b.worldExtent?b.worldExtent:null;this.g=void 0!==b.axisOrientation?b.axisOrientation:"enu";this.f=void 0!==b.global?b.global:!1;this.b=!(!this.f||!this.j);this.B=void 0!==b.getPointResolution?b.getPointResolution:this.dk;this.l=null;var c=Ee,d=b.code;if("function"==typeof proj4&&void 0===c[d]){var e=proj4.defs(d);if(void 0!==e){void 0!==e.axis&&void 0===b.axisOrientation&&(this.g=e.axis);void 0===b.units&&
(b=e.units,void 0===e.to_meter||void 0!==b&&void 0!==Ce[b]||(b=e.to_meter.toString(),Ce[b]=e.to_meter),this.c=b);for(var f in c)b=proj4.defs(f),void 0!==b&&(c=Fe(f),b===e?Ge([c,this]):(b=proj4(f,d),He(c,this,b.forward,b.inverse)))}}}l=De.prototype;l.Fj=function(){return this.a};l.J=function(){return this.j};l.wm=function(){return this.c};l.Jc=function(){return Ce[this.c]};l.pk=function(){return this.i};function Ie(b){return b.g}l.cl=function(){return this.f};
l.No=function(b){this.f=b;this.b=!(!b||!this.j)};l.xm=function(b){this.j=b;this.b=!(!this.f||!b)};l.Vo=function(b){this.i=b};l.Mo=function(b){this.B=b};l.dk=function(b,c){if("degrees"==this.c)return b;var d=Je(this,Fe("EPSG:4326")),e=[c[0]-b/2,c[1],c[0]+b/2,c[1],c[0],c[1]-b/2,c[0],c[1]+b/2],e=d(e,e,2),d=Be.a(e.slice(0,2),e.slice(2,4)),e=Be.a(e.slice(4,6),e.slice(6,8)),e=(d+e)/2,d=this.Jc();void 0!==d&&(e/=d);return e};l.getPointResolution=function(b,c){return this.B(b,c)};var Ee={},Ke={};
function Ge(b){Le(b);b.forEach(function(c){b.forEach(function(b){c!==b&&Me(c,b,Ne)})})}function Pe(){var b=Qe,c=Re,d=Se;Te.forEach(function(e){b.forEach(function(b){Me(e,b,c);Me(b,e,d)})})}function Ue(b){Ee[b.a]=b;Me(b,b,Ne)}function Le(b){var c=[];b.forEach(function(b){c.push(Ue(b))})}function Ve(b){return b?ia(b)?Fe(b):b:Fe("EPSG:3857")}function Me(b,c,d){b=b.a;c=c.a;b in Ke||(Ke[b]={});Ke[b][c]=d}function He(b,c,d,e){b=Fe(b);c=Fe(c);Me(b,c,We(d));Me(c,b,We(e))}
function We(b){return function(c,d,e){var f=c.length;e=void 0!==e?e:2;d=void 0!==d?d:Array(f);var g,h;for(h=0;h<f;h+=e)for(g=b([c[h],c[h+1]]),d[h]=g[0],d[h+1]=g[1],g=e-1;2<=g;--g)d[h+g]=c[h+g];return d}}function Fe(b){var c;b instanceof De?c=b:ia(b)?(c=Ee[b],void 0===c&&"function"==typeof proj4&&void 0!==proj4.defs(b)&&(c=new De({code:b}),Ue(c))):c=null;return c}function Xe(b,c){return b===c?!0:b.a===c.a?b.c===c.c:Je(b,c)===Ne}function Ye(b,c){var d=Fe(b),e=Fe(c);return Je(d,e)}
function Je(b,c){var d=b.a,e=c.a,f;d in Ke&&e in Ke[d]&&(f=Ke[d][e]);void 0===f&&(f=Ze);return f}function Ze(b,c){if(void 0!==c&&b!==c){for(var d=0,e=b.length;d<e;++d)c[d]=b[d];b=c}return b}function Ne(b,c){var d;if(void 0!==c){d=0;for(var e=b.length;d<e;++d)c[d]=b[d];d=c}else d=b.slice();return d}function $e(b,c,d){return Ye(c,d)(b,void 0,b.length)}function af(b,c,d){c=Ye(c,d);return re(b,c)};function bf(){id.call(this);this.A=Od();this.C=-1;this.j={};this.u=this.i=0}y(bf,id);l=bf.prototype;l.pb=function(b,c){var d=c?c:[NaN,NaN];this.mb(b[0],b[1],d,Infinity);return d};l.ng=function(b){return this.rc(b[0],b[1])};l.rc=te;l.J=function(b){this.C!=this.c&&(this.A=this.Vd(this.A),this.C=this.c);var c=this.A;b?(b[0]=c[0],b[1]=c[1],b[2]=c[2],b[3]=c[3]):b=c;return b};l.yb=function(b){return this.sd(b*b)};l.kb=function(b,c){this.mc(Ye(b,c));return this};function cf(b,c,d,e,f,g){var h=f[0],k=f[1],m=f[4],n=f[5],p=f[12];f=f[13];for(var q=g?g:[],r=0;c<d;c+=e){var t=b[c],x=b[c+1];q[r++]=h*t+m*x+p;q[r++]=k*t+n*x+f}g&&q.length!=r&&(q.length=r);return q};function df(){bf.call(this);this.b="XY";this.a=2;this.v=null}y(df,bf);function ef(b){if("XY"==b)return 2;if("XYZ"==b||"XYM"==b)return 3;if("XYZM"==b)return 4}l=df.prototype;l.rc=te;l.Vd=function(b){return $d(this.v,0,this.v.length,this.a,b)};l.Jb=function(){return this.v.slice(0,this.a)};l.ja=function(){return this.v};l.Kb=function(){return this.v.slice(this.v.length-this.a)};l.Lb=function(){return this.b};
l.sd=function(b){this.u!=this.c&&(Rb(this.j),this.i=0,this.u=this.c);if(0>b||0!==this.i&&b<=this.i)return this;var c=b.toString();if(this.j.hasOwnProperty(c))return this.j[c];var d=this.Kc(b);if(d.ja().length<this.v.length)return this.j[c]=d;this.i=b;return this};l.Kc=function(){return this};l.ra=function(){return this.a};function ff(b,c,d){b.a=ef(c);b.b=c;b.v=d}
function gf(b,c,d,e){if(c)d=ef(c);else{for(c=0;c<e;++c){if(0===d.length){b.b="XY";b.a=2;return}d=d[0]}d=d.length;c=2==d?"XY":3==d?"XYZ":4==d?"XYZM":void 0}b.b=c;b.a=d}l.mc=function(b){this.v&&(b(this.v,this.v,this.a),this.s())};l.Oc=function(b,c){var d=this.ja();if(d){var e=this.ra(),f=d.length,g=d?d:[],h=0,k,m;for(k=0;k<f;k+=e)for(g[h++]=d[k]+b,g[h++]=d[k+1]+c,m=k+2;m<k+e;++m)g[h++]=d[m];d&&g.length!=h&&(g.length=h);this.s()}};function hf(b,c,d,e){for(var f=0,g=b[d-e],h=b[d-e+1];c<d;c+=e)var k=b[c],m=b[c+1],f=f+(h*k-g*m),g=k,h=m;return f/2}function jf(b,c,d,e){var f=0,g,h;g=0;for(h=d.length;g<h;++g){var k=d[g],f=f+hf(b,c,k,e);c=k}return f};function kf(b,c,d,e,f,g,h){var k=b[c],m=b[c+1],n=b[d]-k,p=b[d+1]-m;if(0!==n||0!==p)if(g=((f-k)*n+(g-m)*p)/(n*n+p*p),1<g)c=d;else if(0<g){for(f=0;f<e;++f)h[f]=qd(b[c+f],b[d+f],g);h.length=e;return}for(f=0;f<e;++f)h[f]=b[c+f];h.length=e}function lf(b,c,d,e,f){var g=b[c],h=b[c+1];for(c+=e;c<d;c+=e){var k=b[c],m=b[c+1],g=Va(g,h,k,m);g>f&&(f=g);g=k;h=m}return f}function mf(b,c,d,e,f){var g,h;g=0;for(h=d.length;g<h;++g){var k=d[g];f=lf(b,c,k,e,f);c=k}return f}
function nf(b,c,d,e,f,g,h,k,m,n,p){if(c==d)return n;var q;if(0===f){q=Va(h,k,b[c],b[c+1]);if(q<n){for(p=0;p<e;++p)m[p]=b[c+p];m.length=e;return q}return n}for(var r=p?p:[NaN,NaN],t=c+e;t<d;)if(kf(b,t-e,t,e,h,k,r),q=Va(h,k,r[0],r[1]),q<n){n=q;for(p=0;p<e;++p)m[p]=r[p];m.length=e;t+=e}else t+=e*Math.max((Math.sqrt(q)-Math.sqrt(n))/f|0,1);if(g&&(kf(b,d-e,c,e,h,k,r),q=Va(h,k,r[0],r[1]),q<n)){n=q;for(p=0;p<e;++p)m[p]=r[p];m.length=e}return n}
function of(b,c,d,e,f,g,h,k,m,n,p){p=p?p:[NaN,NaN];var q,r;q=0;for(r=d.length;q<r;++q){var t=d[q];n=nf(b,c,t,e,f,g,h,k,m,n,p);c=t}return n};function pf(b,c){var d=0,e,f;e=0;for(f=c.length;e<f;++e)b[d++]=c[e];return d}function qf(b,c,d,e){var f,g;f=0;for(g=d.length;f<g;++f){var h=d[f],k;for(k=0;k<e;++k)b[c++]=h[k]}return c}function rf(b,c,d,e,f){f=f?f:[];var g=0,h,k;h=0;for(k=d.length;h<k;++h)c=qf(b,c,d[h],e),f[g++]=c;f.length=g;return f};function sf(b,c,d,e,f){f=void 0!==f?f:[];for(var g=0;c<d;c+=e)f[g++]=b.slice(c,c+e);f.length=g;return f}function tf(b,c,d,e,f){f=void 0!==f?f:[];var g=0,h,k;h=0;for(k=d.length;h<k;++h){var m=d[h];f[g++]=sf(b,c,m,e,f[g]);c=m}f.length=g;return f};function uf(b,c,d,e,f,g,h){var k=(d-c)/e;if(3>k){for(;c<d;c+=e)g[h++]=b[c],g[h++]=b[c+1];return h}var m=Array(k);m[0]=1;m[k-1]=1;d=[c,d-e];for(var n=0,p;0<d.length;){var q=d.pop(),r=d.pop(),t=0,x=b[r],z=b[r+1],B=b[q],A=b[q+1];for(p=r+e;p<q;p+=e){var v=Ua(b[p],b[p+1],x,z,B,A);v>t&&(n=p,t=v)}t>f&&(m[(n-c)/e]=1,r+e<n&&d.push(r,n),n+e<q&&d.push(n,q))}for(p=0;p<k;++p)m[p]&&(g[h++]=b[c+p*e],g[h++]=b[c+p*e+1]);return h}
function vf(b,c,d,e,f,g,h,k){var m,n;m=0;for(n=d.length;m<n;++m){var p=d[m];a:{var q=b,r=p,t=e,x=f,z=g;if(c!=r){var B=x*Math.round(q[c]/x),A=x*Math.round(q[c+1]/x);c+=t;z[h++]=B;z[h++]=A;var v=void 0,O=void 0;do if(v=x*Math.round(q[c]/x),O=x*Math.round(q[c+1]/x),c+=t,c==r){z[h++]=v;z[h++]=O;break a}while(v==B&&O==A);for(;c<r;){var K,I;K=x*Math.round(q[c]/x);I=x*Math.round(q[c+1]/x);c+=t;if(K!=v||I!=O){var G=v-B,la=O-A,Ea=K-B,L=I-A;G*L==la*Ea&&(0>G&&Ea<G||G==Ea||0<G&&Ea>G)&&(0>la&&L<la||la==L||0<la&&
L>la)||(z[h++]=v,z[h++]=O,B=v,A=O);v=K;O=I}}z[h++]=v;z[h++]=O}}k.push(h);c=p}return h};function wf(b,c){df.call(this);this.g=this.l=-1;this.ma(b,c)}y(wf,df);l=wf.prototype;l.clone=function(){var b=new wf(null);xf(b,this.b,this.v.slice());return b};l.mb=function(b,c,d,e){if(e<Ud(this.J(),b,c))return e;this.g!=this.c&&(this.l=Math.sqrt(lf(this.v,0,this.v.length,this.a,0)),this.g=this.c);return nf(this.v,0,this.v.length,this.a,this.l,!0,b,c,d,e)};l.Yl=function(){return hf(this.v,0,this.v.length,this.a)};l.Y=function(){return sf(this.v,0,this.v.length,this.a)};
l.Kc=function(b){var c=[];c.length=uf(this.v,0,this.v.length,this.a,b,c,0);b=new wf(null);xf(b,"XY",c);return b};l.V=function(){return"LinearRing"};l.ma=function(b,c){b?(gf(this,c,b,1),this.v||(this.v=[]),this.v.length=qf(this.v,0,b,this.a),this.s()):xf(this,"XY",null)};function xf(b,c,d){ff(b,c,d);b.s()};function D(b,c){df.call(this);this.ma(b,c)}y(D,df);l=D.prototype;l.clone=function(){var b=new D(null);b.ba(this.b,this.v.slice());return b};l.mb=function(b,c,d,e){var f=this.v;b=Va(b,c,f[0],f[1]);if(b<e){e=this.a;for(c=0;c<e;++c)d[c]=f[c];d.length=e;return b}return e};l.Y=function(){return this.v?this.v.slice():[]};l.Vd=function(b){return Zd(this.v,b)};l.V=function(){return"Point"};l.Da=function(b){return Wd(b,this.v[0],this.v[1])};
l.ma=function(b,c){b?(gf(this,c,b,0),this.v||(this.v=[]),this.v.length=pf(this.v,b),this.s()):this.ba("XY",null)};l.ba=function(b,c){ff(this,b,c);this.s()};function yf(b,c,d,e,f){return!de(f,function(f){return!zf(b,c,d,e,f[0],f[1])})}function zf(b,c,d,e,f,g){for(var h=!1,k=b[d-e],m=b[d-e+1];c<d;c+=e){var n=b[c],p=b[c+1];m>g!=p>g&&f<(n-k)*(g-m)/(p-m)+k&&(h=!h);k=n;m=p}return h}function Af(b,c,d,e,f,g){if(0===d.length||!zf(b,c,d[0],e,f,g))return!1;var h;c=1;for(h=d.length;c<h;++c)if(zf(b,d[c-1],d[c],e,f,g))return!1;return!0};function Bf(b,c,d,e,f,g,h){var k,m,n,p,q,r=f[g+1],t=[],x=d[0];n=b[x-e];q=b[x-e+1];for(k=c;k<x;k+=e){p=b[k];m=b[k+1];if(r<=q&&m<=r||q<=r&&r<=m)n=(r-q)/(m-q)*(p-n)+n,t.push(n);n=p;q=m}x=NaN;q=-Infinity;t.sort();n=t[0];k=1;for(m=t.length;k<m;++k){p=t[k];var z=Math.abs(p-n);z>q&&(n=(n+p)/2,Af(b,c,d,e,n,r)&&(x=n,q=z));n=p}isNaN(x)&&(x=f[g]);return h?(h.push(x,r),h):[x,r]};function Cf(b,c,d,e,f,g){for(var h=[b[c],b[c+1]],k=[],m;c+e<d;c+=e){k[0]=b[c+e];k[1]=b[c+e+1];if(m=f.call(g,h,k))return m;h[0]=k[0];h[1]=k[1]}return!1};function Df(b,c,d,e,f){var g=ae(Od(),b,c,d,e);return pe(f,g)?Xd(f,g)||g[0]>=f[0]&&g[2]<=f[2]||g[1]>=f[1]&&g[3]<=f[3]?!0:Cf(b,c,d,e,function(b,c){var d=!1,e=Yd(f,b),g=Yd(f,c);if(1===e||1===g)d=!0;else{var q=f[0],r=f[1],t=f[2],x=f[3],z=c[0],B=c[1],A=(B-b[1])/(z-b[0]);g&2&&!(e&2)&&(d=z-(B-x)/A,d=d>=q&&d<=t);d||!(g&4)||e&4||(d=B-(z-t)*A,d=d>=r&&d<=x);d||!(g&8)||e&8||(d=z-(B-r)/A,d=d>=q&&d<=t);d||!(g&16)||e&16||(d=B-(z-q)*A,d=d>=r&&d<=x)}return d}):!1}
function Ef(b,c,d,e,f){var g=d[0];if(!(Df(b,c,g,e,f)||zf(b,c,g,e,f[0],f[1])||zf(b,c,g,e,f[0],f[3])||zf(b,c,g,e,f[2],f[1])||zf(b,c,g,e,f[2],f[3])))return!1;if(1===d.length)return!0;c=1;for(g=d.length;c<g;++c)if(yf(b,d[c-1],d[c],e,f))return!1;return!0};function Ff(b,c,d,e){for(var f=0,g=b[d-e],h=b[d-e+1];c<d;c+=e)var k=b[c],m=b[c+1],f=f+(k-g)*(m+h),g=k,h=m;return 0<f}function Gf(b,c,d,e){var f=0;e=void 0!==e?e:!1;var g,h;g=0;for(h=c.length;g<h;++g){var k=c[g],f=Ff(b,f,k,d);if(0===g){if(e&&f||!e&&!f)return!1}else if(e&&!f||!e&&f)return!1;f=k}return!0}
function Hf(b,c,d,e,f){f=void 0!==f?f:!1;var g,h;g=0;for(h=d.length;g<h;++g){var k=d[g],m=Ff(b,c,k,e);if(0===g?f&&m||!f&&!m:f&&!m||!f&&m)for(var m=b,n=k,p=e;c<n-p;){var q;for(q=0;q<p;++q){var r=m[c+q];m[c+q]=m[n-p+q];m[n-p+q]=r}c+=p;n-=p}c=k}return c}function If(b,c,d,e){var f=0,g,h;g=0;for(h=c.length;g<h;++g)f=Hf(b,f,c[g],d,e);return f};function E(b,c){df.call(this);this.g=[];this.D=-1;this.G=null;this.T=this.S=this.U=-1;this.l=null;this.ma(b,c)}y(E,df);l=E.prototype;l.lj=function(b){this.v?lb(this.v,b.ja()):this.v=b.ja().slice();this.g.push(this.v.length);this.s()};l.clone=function(){var b=new E(null);b.ba(this.b,this.v.slice(),this.g.slice());return b};
l.mb=function(b,c,d,e){if(e<Ud(this.J(),b,c))return e;this.S!=this.c&&(this.U=Math.sqrt(mf(this.v,0,this.g,this.a,0)),this.S=this.c);return of(this.v,0,this.g,this.a,this.U,!0,b,c,d,e)};l.rc=function(b,c){return Af(this.ac(),0,this.g,this.a,b,c)};l.am=function(){return jf(this.ac(),0,this.g,this.a)};l.Y=function(b){var c;void 0!==b?(c=this.ac().slice(),Hf(c,0,this.g,this.a,b)):c=this.v;return tf(c,0,this.g,this.a)};l.Ab=function(){return this.g};
function Jf(b){if(b.D!=b.c){var c=me(b.J());b.G=Bf(b.ac(),0,b.g,b.a,c,0);b.D=b.c}return b.G}l.Oj=function(){return new D(Jf(this))};l.Tj=function(){return this.g.length};l.Bg=function(b){if(0>b||this.g.length<=b)return null;var c=new wf(null);xf(c,this.b,this.v.slice(0===b?0:this.g[b-1],this.g[b]));return c};l.ae=function(){var b=this.b,c=this.v,d=this.g,e=[],f=0,g,h;g=0;for(h=d.length;g<h;++g){var k=d[g],m=new wf(null);xf(m,b,c.slice(f,k));e.push(m);f=k}return e};
l.ac=function(){if(this.T!=this.c){var b=this.v;Gf(b,this.g,this.a)?this.l=b:(this.l=b.slice(),this.l.length=Hf(this.l,0,this.g,this.a));this.T=this.c}return this.l};l.Kc=function(b){var c=[],d=[];c.length=vf(this.v,0,this.g,this.a,Math.sqrt(b),c,0,d);b=new E(null);b.ba("XY",c,d);return b};l.V=function(){return"Polygon"};l.Da=function(b){return Ef(this.ac(),0,this.g,this.a,b)};
l.ma=function(b,c){if(b){gf(this,c,b,2);this.v||(this.v=[]);var d=rf(this.v,0,b,this.a,this.g);this.v.length=0===d.length?0:d[d.length-1];this.s()}else this.ba("XY",null,this.g)};l.ba=function(b,c,d){ff(this,b,c);this.g=d;this.s()};function Kf(b,c,d,e){var f=e?e:32;e=[];var g;for(g=0;g<f;++g)lb(e,b.offset(c,d,2*Math.PI*g/f));e.push(e[0],e[1]);b=new E(null);b.ba("XY",e,[e.length]);return b}
function Lf(b){var c=b[0],d=b[1],e=b[2];b=b[3];c=[c,d,c,b,e,b,e,d,c,d];d=new E(null);d.ba("XY",c,[c.length]);return d}function Mf(b,c,d){var e=c?c:32,f=b.ra();c=b.b;for(var g=new E(null,c),e=f*(e+1),f=[],h=0;h<e;h++)f[h]=0;g.ba(c,f,[f.length]);Nf(g,b.vd(),b.yf(),d);return g}function Nf(b,c,d,e){var f=b.ja(),g=b.b,h=b.ra(),k=b.Ab(),m=f.length/h-1;e=e?e:0;for(var n,p,q=0;q<=m;++q)p=q*h,n=e+2*pd(q,m)*Math.PI/m,f[p]=c[0]+d*Math.cos(n),f[p+1]=c[1]+d*Math.sin(n);b.ba(g,f,k)};function Of(b){id.call(this);b=b||{};this.b=[0,0];var c={};c.center=void 0!==b.center?b.center:null;this.g=Ve(b.projection);var d,e,f,g=void 0!==b.minZoom?b.minZoom:0;d=void 0!==b.maxZoom?b.maxZoom:28;var h=void 0!==b.zoomFactor?b.zoomFactor:2;if(void 0!==b.resolutions)d=b.resolutions,e=d[0],f=d[d.length-1],d=xb(d);else{e=Ve(b.projection);f=e.J();var k=(f?Math.max(ke(f),le(f)):360*Ce.degrees/Ce[e.c])/256/Math.pow(2,0),m=k/Math.pow(2,28);e=b.maxResolution;void 0!==e?g=0:e=k/Math.pow(h,g);f=b.minResolution;
void 0===f&&(f=void 0!==b.maxZoom?void 0!==b.maxResolution?e/Math.pow(h,d):k/Math.pow(h,d):m);d=g+Math.floor(Math.log(e/f)/Math.log(h));f=e/Math.pow(h,d-g);d=yb(h,e,d-g)}this.a=e;this.i=f;this.f=g;g=void 0!==b.extent?Xa(b.extent):Ya;(void 0!==b.enableRotation?b.enableRotation:1)?(e=b.constrainRotation,e=void 0===e||!0===e?Cb():!1===e?Ab:ja(e)?Bb(e):Ab):e=zb;this.j=new Db(g,d,e);void 0!==b.resolution?c.resolution=b.resolution:void 0!==b.zoom&&(c.resolution=this.constrainResolution(this.a,b.zoom-this.f));
c.rotation=void 0!==b.rotation?b.rotation:0;this.I(c)}y(Of,id);l=Of.prototype;l.Wd=function(b){return this.j.center(b)};l.constrainResolution=function(b,c,d){return this.j.resolution(b,c||0,d||0)};l.constrainRotation=function(b,c){return this.j.rotation(b,c||0)};l.Ta=function(){return this.get("center")};l.Zc=function(b){var c=this.Ta(),d=this.$(),e=this.Ea();return ne(c,d,e,b)};l.Il=function(){return this.g};l.$=function(){return this.get("resolution")};
function Pf(b){var c=b.a,d=Math.log(c/b.i)/Math.log(2);return function(b){return c/Math.pow(2,b*d)}}l.Ea=function(){return this.get("rotation")};function Qf(b){var c=b.a,d=Math.log(c/b.i)/Math.log(2);return function(b){return Math.log(c/b)/Math.log(2)/d}}function Rf(b){var c=b.Ta(),d=b.g,e=b.$();b=b.Ea();return{center:[Math.round(c[0]/e)*e,Math.round(c[1]/e)*e],projection:void 0!==d?d:null,resolution:e,rotation:b}}
l.qk=function(){var b,c=this.$();if(void 0!==c){var d,e=0;do{d=this.constrainResolution(this.a,e);if(d==c){b=e;break}++e}while(d>this.i)}return void 0!==b?this.f+b:b};
l.jf=function(b,c,d){b instanceof df||(b=Lf(b));var e=d||{};d=void 0!==e.padding?e.padding:[0,0,0,0];var f=void 0!==e.constrainResolution?e.constrainResolution:!0,g=void 0!==e.nearest?e.nearest:!1,h;void 0!==e.minResolution?h=e.minResolution:void 0!==e.maxZoom?h=this.constrainResolution(this.a,e.maxZoom-this.f,0):h=0;var k=b.ja(),m=this.Ea(),e=Math.cos(-m),m=Math.sin(-m),n=Infinity,p=Infinity,q=-Infinity,r=-Infinity;b=b.ra();for(var t=0,x=k.length;t<x;t+=b)var z=k[t]*e-k[t+1]*m,B=k[t]*m+k[t+1]*e,
n=Math.min(n,z),p=Math.min(p,B),q=Math.max(q,z),r=Math.max(r,B);k=[n,p,q,r];c=[c[0]-d[1]-d[3],c[1]-d[0]-d[2]];c=Math.max(ke(k)/c[0],le(k)/c[1]);c=isNaN(c)?h:Math.max(c,h);f&&(h=this.constrainResolution(c,0,0),!g&&h<c&&(h=this.constrainResolution(h,-1,0)),c=h);this.Ub(c);m=-m;g=(n+q)/2+(d[1]-d[3])/2*c;d=(p+r)/2+(d[0]-d[2])/2*c;this.jb([g*e-d*m,d*e+g*m])};
l.qj=function(b,c,d){var e=this.Ea(),f=Math.cos(-e),e=Math.sin(-e),g=b[0]*f-b[1]*e;b=b[1]*f+b[0]*e;var h=this.$(),g=g+(c[0]/2-d[0])*h;b+=(d[1]-c[1]/2)*h;e=-e;this.jb([g*f-b*e,b*f+g*e])};function Sf(b){return!!b.Ta()&&void 0!==b.$()}l.rotate=function(b,c){if(void 0!==c){var d,e=this.Ta();void 0!==e&&(d=[e[0]-c[0],e[1]-c[1]],wd(d,b-this.Ea()),rd(d,c));this.jb(d)}this.te(b)};l.jb=function(b){this.set("center",b)};function Tf(b,c){b.b[1]+=c}l.Ub=function(b){this.set("resolution",b)};
l.te=function(b){this.set("rotation",b)};l.Wo=function(b){b=this.constrainResolution(this.a,b-this.f,0);this.Ub(b)};function Uf(b){return Math.pow(b,3)}function Vf(b){return 1-Uf(1-b)}function Wf(b){return 3*b*b-2*b*b*b}function Xf(b){return b}function Yf(b){return.5>b?Wf(2*b):1-Wf(2*(b-.5))};function Zf(b){var c=b.source,d=b.start?b.start:Date.now(),e=c[0],f=c[1],g=void 0!==b.duration?b.duration:1E3,h=b.easing?b.easing:Wf;return function(b,c){if(c.time<d)return c.animate=!0,c.viewHints[0]+=1,!0;if(c.time<d+g){var n=1-h((c.time-d)/g),p=e-c.viewState.center[0],q=f-c.viewState.center[1];c.animate=!0;c.viewState.center[0]+=n*p;c.viewState.center[1]+=n*q;c.viewHints[0]+=1;return!0}return!1}}
function ag(b){var c=b.rotation?b.rotation:0,d=b.start?b.start:Date.now(),e=void 0!==b.duration?b.duration:1E3,f=b.easing?b.easing:Wf,g=b.anchor?b.anchor:null;return function(b,k){if(k.time<d)return k.animate=!0,k.viewHints[0]+=1,!0;if(k.time<d+e){var m=1-f((k.time-d)/e),m=(c-k.viewState.rotation)*m;k.animate=!0;k.viewState.rotation+=m;if(g){var n=k.viewState.center;n[0]-=g[0];n[1]-=g[1];wd(n,m);rd(n,g)}k.viewHints[0]+=1;return!0}return!1}}
function bg(b){var c=b.resolution,d=b.start?b.start:Date.now(),e=void 0!==b.duration?b.duration:1E3,f=b.easing?b.easing:Wf;return function(b,h){if(h.time<d)return h.animate=!0,h.viewHints[0]+=1,!0;if(h.time<d+e){var k=1-f((h.time-d)/e),m=c-h.viewState.resolution;h.animate=!0;h.viewState.resolution+=k*m;h.viewHints[0]+=1;return!0}return!1}};function cg(b,c,d,e){return void 0!==e?(e[0]=b,e[1]=c,e[2]=d,e):[b,c,d]}function dg(b,c,d){return b+"/"+c+"/"+d}function eg(b){var c=b[0],d=Array(c),e=1<<c-1,f,g;for(f=0;f<c;++f)g=48,b[1]&e&&(g+=1),b[2]&e&&(g+=2),d[f]=String.fromCharCode(g),e>>=1;return d.join("")}function fg(b){return dg(b[0],b[1],b[2])};function gg(b,c,d,e){this.a=b;this.f=c;this.c=d;this.b=e}gg.prototype.contains=function(b){return hg(this,b[1],b[2])};function hg(b,c,d){return b.a<=c&&c<=b.f&&b.c<=d&&d<=b.b}function ig(b,c){return b.a==c.a&&b.c==c.c&&b.f==c.f&&b.b==c.b}function jg(b){return b.b-b.c+1}function kg(b){return b.f-b.a+1}function lg(b,c){return b.a<=c.f&&b.f>=c.a&&b.c<=c.b&&b.b>=c.c};function mg(b){this.c=b.html;this.a=b.tileRanges?b.tileRanges:null}mg.prototype.b=function(){return this.c};function ng(b,c,d){vc.call(this,b,d);this.element=c}y(ng,vc);function og(b){id.call(this);this.a=b?b:[];pg(this)}y(og,id);l=og.prototype;l.clear=function(){for(;0<this.$b();)this.pop()};l.tf=function(b){var c,d;c=0;for(d=b.length;c<d;++c)this.push(b[c]);return this};l.forEach=function(b,c){this.a.forEach(b,c)};l.sl=function(){return this.a};l.item=function(b){return this.a[b]};l.$b=function(){return this.get("length")};l.ke=function(b,c){mb(this.a,b,0,c);pg(this);this.o(new ng("add",c,this))};
l.pop=function(){return this.Rf(this.$b()-1)};l.push=function(b){var c=this.a.length;this.ke(c,b);return c};l.remove=function(b){var c=this.a,d,e;d=0;for(e=c.length;d<e;++d)if(c[d]===b)return this.Rf(d)};l.Rf=function(b){var c=this.a[b];Za.splice.call(this.a,b,1);pg(this);this.o(new ng("remove",c,this));return c};l.Jo=function(b,c){var d=this.$b();if(b<d)d=this.a[b],this.a[b]=c,this.o(new ng("remove",d,this)),this.o(new ng("add",c,this));else{for(;d<b;++d)this.ke(d,void 0);this.ke(b,c)}};
function pg(b){b.set("length",b.a.length)};var qg=/^#(?:[0-9a-f]{3}){1,2}$/i,rg=/^(?:rgb)?\((0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2})\)$/i,sg=/^(?: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 tg(b){return ga(b)?b:ug(b)}function vg(b){if(!ia(b)){var c=b[0];c!=(c|0)&&(c=c+.5|0);var d=b[1];d!=(d|0)&&(d=d+.5|0);var e=b[2];e!=(e|0)&&(e=e+.5|0);b="rgba("+c+","+d+","+e+","+b[3]+")"}return b}
var ug=function(){var b={},c=0;return function(d){var e;if(b.hasOwnProperty(d))e=b[d];else{if(1024<=c){e=0;for(var f in b)0===(e++&3)&&(delete b[f],--c)}var g,h;qg.exec(d)?(h=3==d.length-1?1:2,e=parseInt(d.substr(1+0*h,h),16),f=parseInt(d.substr(1+1*h,h),16),g=parseInt(d.substr(1+2*h,h),16),1==h&&(e=(e<<4)+e,f=(f<<4)+f,g=(g<<4)+g),e=[e,f,g,1]):(h=sg.exec(d))?(e=Number(h[1]),f=Number(h[2]),g=Number(h[3]),h=Number(h[4]),e=[e,f,g,h],e=wg(e,e)):(h=rg.exec(d))?(e=Number(h[1]),f=Number(h[2]),g=Number(h[3]),
e=[e,f,g,1],e=wg(e,e)):e=void 0;b[d]=e;++c}return e}}();function wg(b,c){var d=c||[];d[0]=Sa(b[0]+.5|0,0,255);d[1]=Sa(b[1]+.5|0,0,255);d[2]=Sa(b[2]+.5|0,0,255);d[3]=Sa(b[3],0,1);return d};var xg=!Zb||9<=lc;!ac&&!Zb||Zb&&9<=lc||ac&&jc("1.9.1");Zb&&jc("9");function yg(b,c){this.x=ca(b)?b:0;this.y=ca(c)?c:0}l=yg.prototype;l.clone=function(){return new yg(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(b,c){var d=ja(c)?c:b;this.x*=b;this.y*=d;return this};function zg(b,c){this.width=b;this.height=c}l=zg.prototype;l.clone=function(){return new zg(this.width,this.height)};l.oj=function(){return this.width*this.height};l.Ka=function(){return!this.oj()};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(b,c){var d=ja(c)?c:b;this.width*=b;this.height*=d;return this};function Ag(b){return b?new Bg(Cg(b)):ya||(ya=new Bg)}function Dg(b){var c=document;return ia(b)?c.getElementById(b):b}function Eg(b,c){Ib(c,function(c,e){"style"==e?b.style.cssText=c:"class"==e?b.className=c:"for"==e?b.htmlFor=c:Fg.hasOwnProperty(e)?b.setAttribute(Fg[e],c):0==e.lastIndexOf("aria-",0)||0==e.lastIndexOf("data-",0)?b.setAttribute(e,c):b[e]=c})}
var Fg={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",v